body {
	line-height:1.6;
	color: #022D54;
	font-size: medium;
	font-family: "Kosugi Maru","Noto Sans JP","メイリオ", Meiryo, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	word-wrap: break-word;
	overflow-wrap: break-word;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
	margin: 0;
	padding: 0;
}

.anchor {
	margin-top: -10px;
    position: relative;
    top: -80px;
    visibility: hidden;
	height: 1em;
}
a {
  text-decoration: none;
}
a:hover {
	text-decoration:underline;
}
a:visited {
	color:#0000ff;
}

#wrapper {
	margin: 0px auto;
	width:1600px;
	background: #FFFFFF;
	overflow-x: hidden;
}

.contents {
    padding-top: 0px;
    border-top: 87px solid transparent;
    height: auto !important;
    min-height: 0;
	overflow-x: hidden;
	/*border: 3px solid black;*/
}

.header-container {
	box-shadow: 0px 10px 10px -5px rgba(0, 0, 0, 0.25);
	background-color: #fff;
	align-self: stretch;
	width: 1600px;
	height: 87px;
	position: fixed;
	z-index: 1000;	
}

.column {
	float: left;
	/*border: 3px solid blue;*/
}

.menus-wrapper {
	margin-top: 1.6em;
	/*margin-left: 2em;*/
	display: flex;
	/*flex-grow: 1;*/
	/*justify-content: space-between;*/
	gap: 10px;
	list-style-type:none;
}

.header_img {
	position:relative;
	width: 100%;
	height: 140px;
	background-image: url("../img/header.png");
	background-position:bottom; 
	background-repeat: no-repeat;
}

.logo {
	margin-top: 20px;
	margin-left: 30px;
	/*aspect-ratio: 700 / 114;*/
	object-fit: contain;
	object-position: center;
	width: 290px;
	overflow: hidden;
	max-width: 100%;
	float: left;
}
.logo2 {
	margin-top: 33px;
	margin-left: 20px;
	/*aspect-ratio: 700 / 114;*/
	object-fit: contain;
	object-position: center;
	width: 180px;
	overflow: hidden;
	max-width: 100%;
	float: left;
}
/** ------------------------------------------------------------
 * navi
 */
.navi {
	margin-top: 0px;
	margin-left: 280px;
	padding: 0 0 1em;
	line-height: 1.4;
	font-size: small;
}

.wrap .navi {
  margin: 0 10px;
}

.navi,
.navi li {
  list-style-type: none;
}

.navi li {
  margin-left: 0;
  display: inline;
}
.navi li a{
	text-decoration: none;
}

.navi_now{
	font-weight: bold;	
}

.navi li + li:before {
	content: " ＞ ";
	margin: 0 0 0 0;
	font-weight:normal;
}

.title_txt{
	float: left;
	color:#022D54;
    font-size:220%;
    font-weight: bold;
	letter-spacing:0.1em;
}

.title_txt:before {
	content: "　";
    border-radius: 50%;
    background: #F4B0C8;
	opacity: 0.45;
	margin-top: 10px;
	margin-left: 280px;
	margin-right: 10px;
}

.flex_box {
    display: flex;
}

/* mapinfo用 */
.block0{
	float:left;
	width: 350px;
	margin-left: 260px;
}
.block3{
	float:left;
	box-shadow: 10px 10px 10px -5px rgba(0, 0, 0, 0.25);
	margin-top: 0.5em;
	margin-left: 0;
	/*margin-right: 30px;*/
	/*width: 300px;*/
	background-color:#fff;
	padding:0.2em;
	/*margin-right:10px;*/
}
.block3 img{
	width: 300px;
	object-fit: cover;
}
.block5{
	float:left;
	margin-top: 0px;
	margin-left: 0px;
	color:#022D54;
	width:750px;
	font-size:110%;
}

.block1{
	float: left;
    box-shadow: 10px 10px 10px -5px rgba(0, 0, 0, 0.25);
    margin-top: 0.5em;
    margin-left: 280px;
    width: 300px;
    background-color: #fff;
    padding: 0.2em;
}
.block1 img{
	width: 300px;
	object-fit: cover;
}

.block2{
	float:left;
	margin-top: 0px;
	margin-left: 25px;
	color:#022D54;
	width:750px;
	font-size:110%;
}

.clicktxt{
	float:left;
	padding-top: 0.5em;
	padding-left: 0.5em;
}
/** ------------------------------------------------------------
/* TOPページ　*/

.top_title{
	float:left;
	margin-left: 280px;
	color:#51a295;
	width:1320px;
	
}
.top_title1{
	font-weight: bold;
	font-size:200%;
}
.top_title2{
	font-size:120%;
}
.top_block1{
	float:left;
	margin-top: 2em;
	margin-left: 280px;
	color:#022D54;
	width:530px;
	font-size:110%;
}
.top_block2{
	float:left;
	margin-top: 1em;
	margin-left: 2em;
	margin-bottom: 3em;
}
.top_block2 img{ /*TOPページ　地図画像*/
	width: 512px;
	object-fit: cover;
}

/* topics ************/
.topics {
	margin: 1em auto;
	padding-top: 3em;
	padding-bottom: 3em;
    width:100%; 
	background-color:#effaf9;
	height: 100%;
}
.topic_flex {
    display: flex;
}
.topic_wrap {
	margin:0 auto;
	width:800px; 
	/*background-color:#effaf9;*/
}
.topics_left {
	float:left;	
}
.topics_left img{
	height:430px;
}
.topics_right {
	float:left;
	margin-top: 1em;
	margin-left: 3em;
}

.topic {	
	padding:0.2em;
	margin-top:1em;
	position: relative;
	width: 500px;
	height: 10px;
	margin: 0 auto;
	display: block;
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
}

.main_contents{
	height: auto;
	margin: 3em auto;
	padding-top: 2em;
    width:100%; 
	background-color:#effaf9;
}
.main_contents_wrap{
	height: auto;
	padding: 30px 0 80px 0;
	margin: 0px auto;
}



/** ------------------------------------------------------------
/* 取組　*/

.school {
	box-shadow: 10px 10px 10px -5px rgba(0, 0, 0, 0.25);
	border-radius: 10px;
	width:1050px;
  	background-color: #fefaf2;
	margin-bottom: 30px;
	padding: 20px 20px 20px 20px;
	display: block;
	align-items: center;
}
.school-arrow {
	background-image: url("../img/arrow.png");
	background-repeat: no-repeat;
	background-position: 97% center;
    width:1050px;
	height: auto;
}
.school img{
	width: 248px;
	object-fit: cover;
}
.school_txt{
	font-size:200%;
	margin-left: 40px;
	color:#022D54;
}


.summary_link{
	width:1100px;
	margin: 0px auto;
	/*border: 1.7px solid #B3B3B3;*/
}
.summary_link p{
	text-align: center;
}

.summary_link a:hover{
	text-decoration: none;
	
}
/** ------------------------------------------------------------
/* 教材　*/

.material {
	box-shadow: 10px 10px 10px -5px rgba(0, 0, 0, 0.25);
	border-radius: 10px;
	width:1030px;
  	background-color: #fefaf2;
	margin: 0px auto;
	/*margin-left: 280px;*/
	margin-bottom: 20px;
	padding: 30px;
}
.material_wrap {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
	font-weight: bold;
}
.material_box{
	display: flex;
}
.btn_dl{
	float: left;
	background-color: #FB8EB5;
	width:250px;
	padding: 10px;
	text-align: center;
	font-size:130%;
	letter-spacing:0.3em;
	font-weight: bold;
}
.btn_dl2{
	float: left;
	background-color: #FB8EB5;
	width:450px;
	padding: 10px;
	text-align: center;
	font-size:130%;
	letter-spacing:0.3em;
	font-weight: bold;
}
.title1{
	margin: 5px 0 10px 15px;
	font-size:130%;
	letter-spacing:0.1em;
	font-weight:bold;
}
.title2{
	margin: 5px 0 10px 30px;
	font-size:110%;
	font-weight:bold;
}
.links{
	margin: 5px 0 10px 45px;
	font-size:110%;
	font-weight:bold;
}

.links2{
	margin: 5px 0 10px 45px;
	font-size:110%;
}
.links3{
	margin: 5px 0 10px 15px;
	font-weight:normal;
}

.block_left{
	float:left;
	margin-left: 45px;
	width: 305px;
}
.block_right{
	float:left;
	margin-top: 0.5em;
	margin-left: 2em;
	width: 600px;
	font-size:110%;
}

.thum_block{
	width: 300px;
	background-color:#000;
	padding:0.2em;
	margin-bottom: 10px;
}
.thum_block img{
	width: 300px;
	object-fit: cover;
}

.thum_block2{
	width: 400px;
	margin-bottom: 10px;
}
.thum_block2 img{
	width: 400px;
	object-fit: cover;
}
.thum_block3{
	float:left;
	width: 200px;
	margin-bottom: 10px;
	border: 1px solid #ccc;
}
.thum_block3 img{
	width: 200px;
	object-fit: cover;
}


.infotxt1{
	text-indent: -1em;
	padding-left: 1em;
	font-size:110%;
}

.infotxt2{
	text-indent: -1em;
	padding-left: 2em;
	font-size:110%;
}
.infotxt2 img{
	width: 100%;
}

.infotxt3{
	text-indent: -1em;
	padding-left: 3em;
	font-size:110%;
}

.infotxt4{
	text-indent: -1em;
	padding-left: 4em;
	font-size:110%;
	text-decoration: underline;
}
.infotxt5{
	text-indent: -1em;
	padding-left: 5em;
	font-size:110%;
}
.infotxt6{
	padding-left: 2em;
	font-size:90%;
}

.map_thum{
	margin-top: 1em;
	padding-left: 3em;
	text-align: center;
}
.map_thum_txt{
	color: #4472c4;
	margin-top: 0.5em;
}

.btn_qa{
	background-color: #FB8EB5;
	float:left;
	margin-left: 285px;
	margin-bottom:30px;
	width:200px;
	padding: 10px;
	text-align: center;
	font-size:130%;
	letter-spacing:0.2em;
	font-weight: bold;
}

/** ------------------------------------------------------------
/* Q & A　タブ切り替え　*/

.tab_menu {
	clear:both;
    display: flex;
    flex-wrap: wrap;
    max-width: 1030px;
	margin: 0px auto;
}

.tab_menu > label {
    flex: 1 1;
    order: -1;
    position: relative;
    min-width: 70px;
    padding: .7em 1em;
    background-color: #CCCCCC;
    color: #022D54;
    font-size: 110%;
    text-align: center;
    cursor: pointer;
	margin-right: 1em;
	border-radius: 10px 10px 0px 0px;
	font-weight: bold;
}

.tab_menu > label:hover,
.tab_menu label:has(:checked) {
    background-color: #2E75B6;
    color: #fff;
}

.tab_menu label:has(:checked)::before {
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 18px;
    height: 9px;
    background-color: #2E75B6;
    content: '';
    clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.tab_menu input {
    display: none;
}

.tab_menu > div {
    display: none;
    width: 1014px;
    /*padding: 1.5em 1em;*/
}

.tab_menu label:has(:checked) + div {
    display: block;
}
.qa-box {
	margin-top: 15px;	
}

.qa-box > div {
  position: relative;
}

/* No 
.qa-box > div .faqno {
  position: absolute;
  top: 0;
  left: 0;
  width:80px;
  height: 100%;
  padding-top: 0px;
  line-height: 4;	
  text-align: center;
  font-weight: bold;
  color: #fff;
}*/
.qa-box > div div {
  /*padding: 20px 20px 10px 120px;*/
  line-height: 1.6;
}
.qa-box .question {
	box-shadow: 10px 10px 10px -5px rgba(0, 0, 0, 0.25);
	border-radius: 10px;
	width:1014px;
  	background-color: #fefaf2;
	padding: 20px 0 20px 0px;
	font-size:140%;
}
.qa-box .question .question_txt {
	margin-left: 30px;

}
.qa-box .answer {
	margin-top: 10px;
	box-shadow: 10px 10px 10px -5px rgba(0, 0, 0, 0.25);
	border-radius: 10px;
	width:1014px;
  	background-color: #B7F7FF;
	padding: 20px 0px 20px 0px;
	font-size:120%;
}

.qa-box .answer .answer_txt{
	margin-left: 30px;
	margin-right: 30px;
}
.accordion-switch {
	/*padding-right: 35px !important;*/
	background-image: url("../img/arrow_down.png");
	background-repeat: no-repeat;
	background-position: 97% center;
	background-size:50px;
    width:100%;
}
.accordion-switch:hover {
	cursor: pointer;
}
.accordion-switch.open {
	background-image: url("../img/arrow_up.png");
}
.accordion-switch + * {
	display: none;
}

.obi_pink{
	float: left;
	background-color: #FB8EB5;
	width:970px;
	padding: 10px 30px;
	margin-bottom: 1em;
	font-size:130%;
	letter-spacing:0.1em;
	font-weight: bold;
}
.block_left2{
	float:left;
	margin-left: 0px;
	width: 420px;
	/*border: 1px solid #ccc;*/
}
.block_right2{
	float:left;
	width: 580px;
	font-size:110%;
	margin-left: 1em;
	/*border: 1px solid #ccc;*/
}

.waku_yellow{
	border: 3px solid #ff985d;
	width:555px;
	border-radius: 8px;
	text-align: center;
	padding: 8px;
	margin-bottom: 1em;
	font-weight: bold;
}

.balloon2-left {
  position: relative;
  display: inline-block;
  margin: 3em 0 1.5em 15px;
  padding: 7px 0px 7px 10px;
  min-width: 110px;
  max-width: 100%;
  font-size: 110%;
  background: #FFF;
  border: solid 3px #555;
  box-sizing: border-box;
}

.balloon2-left:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 12px solid #FFF;
  z-index: 2;
}

.balloon2-left:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #555;
  z-index: 1;
}

.waku_orange{
	border: 3px solid #ff985d;
	width:555px;
	border-radius: 8px;
	text-align: center;
	padding: 8px;
	margin-bottom: 1em;
	font-weight: bold;
}

.balloon-orange {
  position: relative;
  display: inline-block;
  margin-bottom: 40px;
  padding: 12px;
  border: 2px solid #000000;
  border-radius: 8px;
  background-color: #ff985d;
  text-align: center;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  width:550px;
	font-weight: bold;
}

.balloon-orange::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25%;
  border-style: solid;
  border-width: 50px 20px 0 0;
  border-color: #000000 transparent transparent;
  translate: -50% 100%;
  transform: skew(-25deg);
  transform-origin: top;
}

.balloon-orange::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25%;
  border-style: solid;
  border-width: 39.6px 15.8px 0 0;
  border-color: #ff985d transparent transparent;
  translate: calc(-50% - 0.1px) 100%;
  transform: skew(-25deg);
  transform-origin: top;
}



.balloon-yellow {
  position: relative;
  display: inline-block;
  margin-bottom: 40px;
  padding: 12px;
  border: 2px solid #000000;
  border-radius: 8px;
  background-color: #ffc000;
  text-align: center;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  width:550px;
	font-weight: bold;
}

.balloon-yellow::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25%;
  border-style: solid;
  border-width: 50px 20px 0 0;
  border-color: #000000 transparent transparent;
  translate: -50% 100%;
  transform: skew(-25deg);
  transform-origin: top;
}

.balloon-yellow::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25%;
  border-style: solid;
  border-width: 39.6px 15.8px 0 0;
  border-color: #ffc000 transparent transparent;
  translate: calc(-50% - 0.1px) 100%;
  transform: skew(-25deg);
  transform-origin: top;
}

.waku_blue{
	border: 3px solid #33cccc;
	width:555px;
	border-radius: 8px;
	text-align: center;
	padding: 8px;
	margin-bottom: 1em;
	font-weight: bold;
}

.balloon-blue {
  position: relative;
  display: inline-block;
  margin-bottom: 40px;
  padding: 12px;
  border: 2px solid #000000;
  border-radius: 8px;
  background-color: #33cccc;
  text-align: center;
  font-weight: 400;
  line-height: 1.5;
  color: #000000;
  width:550px;
	font-weight: bold;
}

.balloon-blue::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25%;
  border-style: solid;
  border-width: 50px 20px 0 0;
  border-color: #000000 transparent transparent;
  translate: -50% 100%;
  transform: skew(-25deg);
  transform-origin: top;
}

.balloon-blue::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 25%;
  border-style: solid;
  border-width: 39.6px 15.8px 0 0;
  border-color: #33cccc transparent transparent;
  translate: calc(-50% - 0.1px) 100%;
  transform: skew(-25deg);
  transform-origin: top;
}
.tab1{
	margin: 0.5em 0 0 2em;
}
.tab2{
	margin: 0.8em 0 0 3em;
}




/*------------------------------------------------------*/

	@media (max-width: 1500px) {
		.logo_map{
			display:none;
		}
	}

 	@media (max-width: 1320px) {
		#wrapper {
			width:100%;
		}
		.header-container {
			width: 100%;
			height: 145px;	
		}	
		.contents {
			border-top: 145px solid transparent;
		}
		.navi {
			margin-left: 30px;
		}
		.title_txt{
			font-size:180%;
		}
		.title_txt:before {
			margin-left: 30px;	
		}
		.block1,.block3{
			margin-left: 30px;
		}
		.block2,.block5{
			margin-right: 2em;
			width: 100%;
		}
		.top_title{
			margin-left: 30px;
		}
		.top_block1{
			margin-top: 2em;
			margin-left: 30px;
		}
		.top_block2{
			margin-left: 30px;
		}
		.summary_link{
			display:block;
			width:85%;
		}
		.material {
			display:block;
			width:80%;
		}
		.school {
			display:block;
			width:95%;
		}
		.block0{
			margin-left: 0;
			margin-right: 0;
		}
		.block2, .block5{
			margin-left: 2em;
		}
		.clicktxt{
			margin-left: 1.5em;
		}
		.btn_qa{
			margin-left: 6em;
		}
		.qa-box .question {
			width:100%;
		}
		.qa-box .answer {
			width:100%;
		}	
		.obi_pink{
			display: block;
			width:95%;
			padding: 10px 0px 10px 30px;		
		}
		.balloon-yellow,.balloon-orange,.balloon-blue {
			width:95%;
		}
		
	}

    @media (max-width: 835px) {
		.header-wrapper {
			max-width: 100%;
			margin-top: 0px;
			height: 200px;
			flex-wrap: wrap;
		}
		
		.logo_map_office,.logo_map_portal{
			display:none;
		}
		
		.header-container {
			width: 100%;
			height: 190px;
			position: fixed;
		}
		.menus-wrapper {
			padding-left: 0;
			flex-wrap: wrap;
			gap: 10px;
		}
		.column {
			width: 90%;
			padding-left: 2em;
		}
		.contents {
			border-top: 190px solid transparent;
		}
		.top_block1{
			margin-top: 1em;
		}
		.top_block2{
			margin-top: 1em;
		}
		.topics{
			float:left;
		}
		.topic_wrap {
			display: block;
			width: 100%;
		}
		.topics_left, .topics_right {
			margin-left: 3em;
			width: 100%;
		}
		.topic_flex {
			display: block;
		}
		.main_contents_wrap{
			height: auto;
			padding: 30px 0 80px 0;
			margin: 0px auto;
		}
		.summary_link{
			width:90%;
		}
		.school {
			width:90%;
		}
		.material {
			display:block;
			width:80%;
		}
		.material_box{
			display: block;
		}
		.btn_dl,.btn_dl2{
			text-align: left;
		}
		.block_right{
			width: 100%;
			margin-left:1em; 
		}
		.btn_qa{
			margin-left: 1em;
		}
		.qa-box .question {
			font-size:110%;
		}
		.qa-box .answer {
			font-size:100%;
		}
		.accordion-switch {
			background-size: 35px;
		}
		.question_txt{
			display: block;
			margin-right: 3em;
		}
		.block_right2{
			display: block;
			width: 100%;
			margin-left:0;
			
		}
		.waku_yellow,.waku_orange,.waku_blue{
			width: 95%;
			margin-left:0;
		}
		.balloon-yellow,.balloon-orange,.balloon-blue {
			width:95%;
		}
    }		

    @media (max-width: 533px) {
		.header-container {
			height: 210px;
			position: static;
		}
		.logo {
			margin-left: 20px;  
		}
		.logo2 {
			margin-top: 5px;
			margin-left: 20px;  
		}
		.menus-wrapper {
			margin-top: 0.5em;
			margin-left: 1em;
			padding-left: 0;
		}
		.column {
			width: 95%;
			padding-left: 0;
		}
		.contents {
			border-top: 1.5em solid transparent;
		}
		.header_img{
			display:none;
		}
		.navi {
			margin-left: 0px;
		}
		.title_txt{
			font-size:120%;
			letter-spacing:0.05em;
			padding-left: 1.5em; /* 全体を2文字分右に移動 */
  			text-indent: -1.5em;
		}
		.title_txt:before {
			margin-left: 0px;	
		}

		.contents{
			padding: 0 25px;
		}

		.flex_box {
			display: block;
		}
		
		.block0{
			width: 100%;
		}
		.clicktxt{
			padding-left: 0em;
			font-size:80%;
		}		
		
		.block1, .block2, .block3, .block5{
			margin-left: 0px;
		}
		.top_title, .top_block1, .top_block2{
			margin-left: 0px;
			width:100%;
		}
		.top_block2 img{ /*TOPページ　地図画像*/
			width: 100%;
			object-fit: cover;
		}
		.topics_left,.topics_right {
			margin-left: 1em;
			width:95%;
		}
		.school_txt{
			font-size:150%;
			margin-left: 20px;
		}
		.infotxt2,.infotxt3,.infotxt4,.infotxt5{
			text-indent: -1em;
			padding-left: 2em;
		}
		.thum_block2,.thum_block2 img,.block_left2{
			width:100%;
		}
		.waku_yellow,.waku_orange,.waku_blue{
			text-align: left;
		}
		.balloon-yellow,.balloon-orange,.balloon-blue {
			text-align: left;
		}
		.tab1{
			margin-left:1em;
		}
		.tab2{
			margin-left:1em;
		}
		
    }

    @media (max-width: 410px) {
		.header-container {
			height: 250px;
		}
		.block1, .block3{
			width: 99%;
			margin-left: 0px;
		}
		.block1 img,.block3 img{
			width: 100%;
			object-fit: cover;
		}
		.topics{
			margin-bottom: 1em;
			padding-bottom: 1em;
		}
		.topics_left,.topics_right {
			margin-left: 0.5em;
			width: 90%;
		}
		.topics_left img{
			width: 100%;
		}
		.main_contents_wrap{
			padding: 10px 0 10px 0;
		}
		.summary_link{
			width:95%;
		}
		.main_contents{
			margin-top: 1em;
			margin-bottom: 1em;
			padding-top: 1em;
		}
		.school_txt{
			font-size:110%;
			margin-left:5px;
		}
		.school {
			width:85%;
			padding 10px;
		}
		.material {
			padding: 20px;
			width: 90%;
		}
		.btn_dl{
			width:90%;
		}
		.links,.links2{
			margin-left: 1em;
			font-size:100%;
		}
		.block_left{
			width:100%;
			margin-left: 0;
			font-size:100%;
		}
		.thum_block,.thum_block img{
			width:100%;
		}
		.block_right{
			font-size:100%;
			margin-left:0; 
		}
		.title2{
			margin-left:1em;
			font-size:100%;
		}		
		.infotxt2,.infotxt3,.infotxt4,.infotxt5{
			text-indent: -1em;
			padding-left: 1em;
			font-size:100%;
		}
		.infotxt2 img{
			width: 100%;
		}

		.infotxt6{
			padding-left: 1em;
		}
		.map_thum{
			width: 100%;
			padding-left: 0;
		}
		.map_thum img{
			width: 100%;
		}
		.map_thum_txt{
			font-size:90%;
		}
		.tab_menu > label {
			min-width: 50px;
			padding: .7em .5em;
			font-size: 100%;
			margin-right: .5em;
		}
		.obi_pink{
			width:95%;
			padding: 10px 10px 10px 10px;
			font-size: 100%;
		}
		.waku_yellow,.waku_orange,.waku_blue,.balloon-yellow,.balloon-orange,.balloon-blue{
			width:90%;
			font-size: 100%;
		}
	}

/** ------------------------------------------------------------
 * マップ ヘッダー */

.header-container_map {
	box-shadow: 0px 10px 10px -5px rgba(0, 0, 0, 0.25);
	background-color: #fff;
	align-self: stretch;
	width: 100%;
	height: 90px;
	position: fixed;
	z-index: 1000;
}

    .logo_map {
		margin-top: 10px;
		margin-left: 25px;
		object-fit: contain;
		object-position: center;
		overflow: hidden;
		width: 430px;
		max-width: 100%;
		float: left;
    }
    .logo_map_office {
		margin-top:0px;
		margin-right: 65px;
		object-fit: contain;
		object-position: center;
		width: 180px;
		overflow: hidden;
		max-width: 100%;
		float: right;
    }
    .logo_map_portal {
		margin-top: 0px;
		margin-right: 10px;
		object-fit: contain;
		object-position: center;
		width: 230px;
		overflow: hidden;
		max-width: 100%;
		float: right;
    }
    .header-description {
	  float: left;
	  margin-top: 1.3em;	
	  margin-left: 1em;	
      color: #3fb9ef;
      letter-spacing: 3px;
      align-self: center;
	  font-weight: bold;
	  font-size:1.5em;
  }
    
    @media (max-width: 991px) {
      .header-description {
        white-space: initial;
      }
    }
    
    .menus {
      width:118px;
      align-self: start;
    }
    
    @media (max-width: 991px) {
      .menus {
        white-space: initial;
      }
    }

.menus a{
	 color: #000; 
	 text-decoration: none;
	} 
.menu_btn{
	width:118px;
}

#menu_index{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_top_on.png) no-repeat;
}
#menu1{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_top_off.png) no-repeat;
}
#menu1 a{
	width:118px;
	height: 34px;
	display:block;
}
#menu1 a:hover{
	background: url(../img/menu_top_on.png) no-repeat;
}

#menu_effort{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_effort_on.png) no-repeat;
}
#menu2{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_effort_off.png) no-repeat;
}
#menu2 a{
	width:118px;
	height: 34px;
	display:block;
}
#menu2 a:hover{
	background: url(../img/menu_effort_on.png) no-repeat;
}

#menu_material{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_material_on.png) no-repeat;
}
#menu_material a{
	width:118px;
	height: 34px;
	display:block
}

#menu3{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_material_off.png) no-repeat;
}
#menu3 a{
	width:118px;
	height: 34px;
	display:block;
}
#menu3 a:hover{
	background: url(../img/menu_material_on.png) no-repeat;
}

#menu_movie{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_movie_on.png) no-repeat;
}
#menu4{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_movie_off.png) no-repeat;
}
#menu4 a{
	width:118px;
	height: 34px;
	display:block;
}
#menu4 a:hover{
	background: url(../img/menu_movie_on.png) no-repeat;
}

#menu_map{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_map_on.png) no-repeat;
}
#menu5{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_map_off.png) no-repeat;
}
#menu5 a{
	width:118px;
	height: 34px;
	display:block;
}
#menu5 a:hover{
	width:118px;
	background: url(../img/menu_map_on.png) no-repeat;
}
#menu_qa{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_qa_on.png) no-repeat;
}
#menu6{
	float:left;
	width:118px;
	text-indent:-9999px;
	background: url(../img/menu_qa_off.png) no-repeat;
}
#menu6 a{
	width:118px;
	height: 34px;
	display:block;
}
#menu6 a:hover{
	background: url(../img/menu_qa_on.png) no-repeat;
}
.bold{	
	font-weight: bold;
}






/** ------------------------------------------------------------
 * 共通
 */



.clear_both{
	clear: both;
}

.btn_map{
	position: relative;
	float:left;
	margin: 10px 10px 0px 0px;
	width: 450px;
}
.btn_map img{
	width: 450px;
	object-fit: cover;
}

.block4{
	float:left;
	margin-top: 5px;
	margin-left: 25px;
	color:#022D54;
	width:650px;
	font-size:110%;
	/*border: 1.7px solid #B3B3B3;*/
}



.fsize110{font-size:110%;}
.fsize120{font-size:120%;}
.fsize130{font-size:130%;}
.fsize140{font-size:140%;}
.fsize150{font-size:150%;}
.fsize200{font-size:200%;}

.ml30{margin-left: 30px;}
.ml280{margin-left: 280px;}

#btn1{
	text-indent:-9999px;
	background: url(../img/btn_effort_off.png) no-repeat;
	background-size:contain;
	display:block;
	height: 80px;
}
#btn1:hover{
	text-indent:-9999px;
	background: url("../img/btn_effort_on.png") no-repeat;
	background-size:contain;
}
#btn2{	
	text-indent:-9999px;
	background: url(../img/btn_material_off.png) no-repeat;
	background-size:contain;
	display:block;
	height:80px;
}
#btn2:hover{	
	text-indent:-9999px;
	background: url("../img/btn_material_on.png") no-repeat;
	background-size:contain;
}
#btn3{	
	text-indent:-9999px;
	background: url(../img/btn_movie_off.png) no-repeat;
	background-size:contain;
	display:block;
	height:80px;
}
#btn3:hover{	
	text-indent:-9999px;
	background: url("../img/btn_movie_on.png") no-repeat;
	background-size:contain;
}
#btn4{	
	text-indent:-9999px;
	background: url(../img/btn_risk_off.png) no-repeat;
	background-size:contain;
	display:block;
	height:80px;
}
#btn4:hover{	
	text-indent:-9999px;
	background: url("../img/btn_risk_on.png") no-repeat;
	background-size:contain;
}
#btn5{	
	text-indent:-9999px;
	background: url(../img/btn_qa_off.png) no-repeat;
	background-size:contain;
	display:block;
	height:80px;
}
#btn5:hover{	
	text-indent:-9999px;
	background: url("../img/btn_qa_on.png") no-repeat;
	background-size:contain;
}
.topic_subtitle {
	margin-top: 0.2em;
	padding: 0.1em 0;
	text-decoration: none;
	color: #fff;
	text-align: center;
	background-color: #2E75B6;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* info ************/
.info {
	clear: both;
	margin: 1em auto;
	color: #022D54;
	overflow-x: hidden;
}
.tel,.mail{
	text-align: center;	
	font-size:80%;
	font-weight: bold;
	line-height: 10px; 
}
.office{
	margin-top: 1em;
	text-align: center;	
	font-size:100%;
	font-weight: bold;
}

/* footer ************/
.footer { 
	background-image: url("../img/footer.png");
	background-repeat: no-repeat;
	position: relative; 
	display: flex;
	width: 100%;
	height: 217px;
	flex-direction: column; 
	justify-content: center; 
	margin-top: -3em;
	overflow-x: hidden;
} 

	@media (max-width: 991px) { 
	  .footer { 
		max-width: 100%; 
		margin-top: 40px; 
		padding: 0 20px;
	  } 
	@media (max-width: 410px) {
		.footer { 
			width: 90%;
		}
	} 
} 
.copylight{
	display: block;
	text-align: center;
	font-size:90%;
	margin-top: 12em;
	color: #022D54;
	font-weight: bold;
}



.bold{
	font-weight:bold;
}
.c_title{
	color:#4472c4;
}
.info_wrap {
	display: flex;
	align-items: center;
}













/** ------------------------------------------------------------
/* eラーニング　FAQ　*/

.faq {
	margin-left: 0px;
}

.faq a:link {
	color:#0060ac;
	text-decoration:underline;
}
.faq a:hover {
	text-decoration:none;
}



.map_menu{
	width:245px;
	display: flex;
	align-items: flex-start;
	margin-left: -3px;
}
.map_menu>div:last-of-type{
    margin-left: auto;
	margin-right: 8px;
}
.map_checkbox{
	width:15px;
	vertical-align: top;
}
.map_label{
	margin-top:-3px;
}
.map_info{
	cursor:hand;
	cursor:pointer;	
}



table {
  margin: 0 auto;
  width:100%;
  border-collapse: collapse;
  table-layout: fixed;
}

th {
  vertical-align: middle;
  font-weight: normal;
  text-align: center;
  empty-cells: show;
}

td {
  vertical-align: middle;
  empty-cells: show;
}

.tbl {
  width: 95%;
  margin-top:1em;
  margin-bottom:1em;
}
.tbl, .tbl td, .tbl th {
  border: 1.7px solid #B3B3B3;
  padding: 5px !important;
}
.tbl th {
  color:#fff;
  font-weight: bold;
  background-color: #1A69C6 !important;
  height: 2em;
}
.tbl td {
  background-color: #fff !important;
}
.td_center{
	text-align: center;
}
.td_right{
	text-align: right;
}
.td_right a{
	color:#000;
	text-decoration: none;
}
.kyozai-table{
    margin: 0.25rem 1rem;
    padding: 0.5rem;
}
.kyozai-table th,
.kyozai-table td{
	border: 1px solid #ccc;
}
.kyozai-table th{
	width: 67px;
	background-color: #daeef3;
}
.kyozai-table td{
	width: 205px;
	padding: 1px 8px;
}
.kyozai-table a{
	text-decoration: none;
}
.kyozai-dl {
	text-align: center;
	margin: 4px 19px;
	padding: 0px 5px;
	border-radius: 10px;
	background-color: #FFB23A;
	color: #fff;
}
.kyozai-dl:hover {
	background-color: #FF9B00;
	color: #fff;
}


.w-250{
	width:250px;
}
.w-300{
	width:300px;
}
.w-400{
	width:400px;	
}

.pl-3em{
	padding-left: 3em;
}
.pl-30px{
	padding-left: 30px;
}
.mt-1em{
	margin-top: 1em;	
}
.mt-2em{
	margin-top: 2em;	
}
.mt-05em{
	margin-top: 0.5em;	
}
.mt-02em{
	margin-top: 0.2em;	
}
.mt-10px{
	margin-top:10px;
}
.mt-15px{
	margin-top:15px;
}

.ml-12em{
	margin-left: 1.2em;
}
.ml-1em{
	margin-left:1em;
}
.ml-03em{
	margin-left:0.3em;
}
.ml-5px{
	margin-left:5px;
}
.ml-10px{
	margin-left:10px;
}
.mr-5px{
	margin-right:5px;
}
.mr-05em{
	margin-right:0.5em;
}
.ml-285{
	margin-left: 285px
}
.text-center{
	text-align: center;
}
.font-size-80per{
	font-size:80%;	
}
.font-size-110per{
	font-size:110%;	
}
.font-size-08em{
	font-size:0.8em;
}
.va-middle{
	vertical-align:middle;
}
.color-4472c4{
	color:#4472c4;
}

.float-left{
	float:left;
}
.float-right{
	float:right;
}
.font-bold{
	font-weight: bold;
}
.hidden{
	display: none;
}
.clear-both{
	clear: both;
}
.border1_fff{
	border: 1px solid #fff;
}
.border1_gray{
	border: 1px solid gray;
}


.absolute{
	position: absolute;	
}
.top-9999px{
	top: -9999px;
}

.left-9999px{
	left: -9999px;
}

a.tip {
    border-bottom: 1px dashed;
    text-decoration: none
}
a.tip:hover {
    cursor: help;
    position: relative
}
a.tip span {
    display: none
}
a.tip:hover span {
    border: #c0c0c0 1px dotted;
    padding: 5px 20px 5px 5px;
    display: block;
    z-index: 100;
    left: 0px;
    margin: 10px;
    width: 250px;
    position: relative;
    top: -150px;
    text-decoration: none
}

