@charset "utf-8";
/* CSS Document */

/* =tags
-------------------------------------------------------------- */

body,h1,h2,h3,h4,h5,h6,ul,li,dl,dt,dd,table,tr,th,td,p,a,div,span,address,hr,time{margin: 0; padding: 0;}
ul,li{list-style: none;}
address,em{font-style: normal;}
div,img,a{border: none;}
img,a{transition: 0.25s ease-in-out;}

html{width: 100%; height: 100%; overflow-y: scroll;}

body{
	width: 100%;
	height: 100%;
	color: #006;
	font-family: noto-sans-cjk-jp, sans-serif;
	font-weight: 400;
	font-size: 14px;
}





/* =container
-------------------------------------------------------------- */

#container{width: 100%;height: 100%;}





/* =header
-------------------------------------------------------------- */

#header{
	margin: 0 auto;
	width: 100%;
	min-width: 768px;
	max-width: 1200px;
	aspect-ratio: 2 / 1;
	background: url(../../img/ob/he_img.png) ;
	background-position: center;
	background-size: cover;
	position: relative;
}

#header a#spbt img,
#header nav ul li img
{width: 100%;opacity: 1;}
#header a#spbt img:hover,
#header nav ul li img:hover
{opacity: 0.66;}

#header a#spbt,
#header p,
#header nav ul{position: absolute;}

#header a#spbt{
	width: 15%;
	background: url(../../img/bt/he_spbt_bg.png);
	background-size: contain;
	display: block;
	right: 4%;
	bottom: 3%;
}

#header p{
	width: 12.5%;
	background:#fff;
	left: 21.5%;
	bottom: 2%;
}
#header p img{width: 100%; display: block;}

#header nav ul{
	width: 136px;
	display: flex;
	justify-content: space-between;
	right: 40px;
	bottom: -64px;
	z-index: 100;
}
#header nav ul li{width: 40px;height: 40px;background: #fff;}
#header nav ul li,
#header nav ul li img{border-radius: 50%;}





/* =contents
-------------------------------------------------------------- */

#contents{width: 100%;}

#contents .content_wrap{
	width: 100%;
	height: 100%;
}

#contents .content_wrap .content{
	margin: 0 auto;
	padding:0 40px 64px 40px;
	max-width: 1120px;
	min-width: 688px;
	position: relative;
}

#contents .content_wrap,
#contents .content_wrap .content{
	background-image: url(../../img/bg/gl_bg_odd.png);
	background-color: #e9e6e3;
	background-size: 200px;
}

#contents .content_wrap:nth-child(even),
#contents .content_wrap:nth-child(even) .content{
	background-image: url(../../img/bg/gl_bg_even.png);
	background-color: #cde;
	background-size: 160px;
}

#contents .content_wrap:last-child,
#contents .content_wrap:last-child .content{
	background-image: url(../../img/bg/gl_bg_last.png);
	background-color: #05d;
	background-size: 240px;
}



#contents .content_wrap .content .text_wrap{box-shadow:0 0 8px rgba(0, 0, 0, 0.05),0 8px 24px rgba(0, 0, 0, 0.1)}

#contents .content_wrap .content .text_wrap,
#contents .content_wrap .content .text_wrap .text_head,
#contents .content_wrap .content .text_wrap .text_foot{background-size: 100%;}

#contents .content_wrap .content .text_wrap{background-image: url(../../img/bg/gl_text_bg_wrap.png); border-radius: 4px;}
#contents .content_wrap .content .text_wrap .text_head{background-image: url(../../img/bg/gl_text_bg_head.png); border-radius: 4px 4px 0 0;}
#contents .content_wrap .content .text_wrap .text_foot{background-image: url(../../img/bg/gl_text_bg_foot.png); border-radius: 0 0 4px 4px; background-position:bottom;}

#contents .content_wrap .content .text_wrap .text_midd,
#contents .content_wrap .content .text_wrap .text_head,
#contents .content_wrap .content .text_wrap .text_foot{position: relative;}

#contents .content_wrap .content .text_wrap .text_midd{
	margin: -4.5% auto;
	width: 85.7%;
	text-align: justify;
	z-index: 100;
}

#contents .content_wrap .content .text_wrap .text_head,
#contents .content_wrap .content .text_wrap .text_foot{
	width: 100%;
	aspect-ratio: 10 / 1;
	z-index: 50;
}



#contents .content_wrap .content img{width: 100%;}
#contents .content_wrap .content em{font-weight: 700;color: #05d;}



#contents .content_wrap#cont_ab .content p{text-align: center;}
#contents .content_wrap#cont_ab .content p:first-child{line-height: 175%;}

#contents .content_wrap#cont_ab .content nav ul{
	margin-top: 4%;
	width: 100%;
	display: flex;
	justify-content: space-between;
}

#contents .content_wrap#cont_ab .content nav ul li{width:30%;}

#contents .content_wrap#cont_ab .content nav ul li p{
	margin-top: 5%;
	font-size: 20px;
	font-weight: 700;
}

#contents .content_wrap#cont_ab .content nav ul li a,
#contents .content_wrap#cont_ab .content nav ul li a img{
	background: #006;
	border-radius: 8px;
	display: block;
	overflow: hidden;
}

#contents .content_wrap#cont_ab .content nav ul li a img:hover{opacity: 0.8;transform: scale(1.05, 1.05);}



#contents .content_wrap#cont_ch .content .text_wrap .text_midd{margin: -64px auto;width: 92.85%;}



#contents .content_wrap#cont_tx .content .text_wrap .text_head h3{
	padding: 6px 12px;
	font-size: 100%;
	font-weight: 400;
	color: #fff;
	background: #006;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border-radius: 4px;
	position: absolute;
	right: 7.14%;
	top:-8px;
}
#contents .content_wrap#cont_tx .content .text_wrap .text_head h3 span{color: #ca8;}

#contents .content_wrap#cont_tx .content .text_wrap .text_midd li{
	padding: 3% 6%;
	border: solid #ca8 1px;
	border-radius: 10px;
	position: relative;
}
#contents .content_wrap#cont_tx .content .text_wrap .text_midd li+li{margin-top: 24px;}

#contents .content_wrap#cont_tx .content .text_wrap .text_midd li h3{
	margin-top:-20px;
	margin-left: -20px;
	width: 40px;
	position: absolute;
	top: 50%;
	left: 0;
}
#contents .content_wrap#cont_tx .content .text_wrap .text_midd li h3 img{background: #006;border-radius: 50%;}
#contents .content_wrap#cont_tx .content .text_wrap .text_midd li+li h3 img{background: #05d;}
#contents .content_wrap#cont_tx .content .text_wrap .text_midd li p{margin-top: 0.75em;}
#contents .content_wrap#cont_tx .content .text_wrap .text_midd li h3+p{margin-top: 0;}

#contents .content_wrap#cont_tx .content .text_wrap .text_midd li p span{background: #fd0;}



#contents .content_wrap#cont_bo .content p{text-align: center;}

#contents .content_wrap#cont_bo .content nav ul{
	margin: 0 auto;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	row-gap:40px;
	justify-content: space-between;
}

#contents .content_wrap#cont_bo .content nav ul li{width:22.5%; border-radius: 4px;}
#contents .content_wrap#cont_bo .content nav ul li a{box-shadow:0 1px 3px rgba(0, 0, 0, 0.15);}
#contents .content_wrap#cont_bo .content nav ul li a,
#contents .content_wrap#cont_bo .content nav ul li a img{border-radius: 4px;display: block;}
#contents .content_wrap#cont_bo .content nav ul li.bo_second{margin-left: 13%;}
#contents .content_wrap#cont_bo .content nav ul li.bo_second+li+li{margin-right: 13%;}

#contents .content_wrap#cont_bo .content nav ul li p{margin-top: 5%;font-size: 20px;font-weight: 700;}



#contents .content_wrap#cont_st .content p{margin-top: 1em;}
#contents .content_wrap#cont_st .content h3+p{margin-top: 2em;}



#contents .content_wrap#cont_ga .content nav ul{
	margin: 0 auto;
	width: 74.16%;
	display: flex;
	justify-content: space-between;
}
#contents .content_wrap#cont_ga .content nav ul+ul{margin-top: 3.33%; width: 51.56%;}
#contents .content_wrap#cont_ga .content nav ul li{width:30%;}
#contents .content_wrap#cont_ga .content nav ul+ul li{width:100%;}
#contents .content_wrap#cont_ga .content nav ul li a,
#contents .content_wrap#cont_ga .content nav ul li img{display: block;}
#contents .content_wrap#cont_ga .content nav ul li a img:hover{opacity: 0.5;}


#contents .content_wrap#cont_cp .content nav ul{
	margin-top: 3%;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
}

#contents .content_wrap#cont_cp .content nav ul li{margin-top: 1%;width:19.166%;}

#contents .content_wrap#cont_cp .content nav ul li a{
	width: 100%;
	text-decoration: none;
	font-weight: 700;
	color: #ca8;
	background: #006;
	aspect-ratio: 4 / 1;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 4px;
}
#contents .content_wrap#cont_cp .content nav ul li a:hover{background: #05d;}
#contents .content_wrap#cont_cp .content nav ul li a.close{color: #66a;}
#contents .content_wrap#cont_cp .content nav ul li a.close:hover{background: #006;}


#contents .content_wrap#cont_sp .content{padding-top: 64px;position:}

#contents .content_wrap#cont_sp .content a{
	margin: 0 auto ;
	width: 57.14%;
	background: #006;
	display: block;
	border-radius: 8px;
}
#contents .content_wrap#cont_sp .content a:hover{
	background: #03b;
}

#contents .content_wrap#cont_sp .content div,
#contents .content_wrap#cont_sp .content address{position: absolute;}

#contents .content_wrap#cont_sp .content div.sp_sd_01{width: 24.16%; top: -5%;right:0;}
#contents .content_wrap#cont_sp .content div.sp_sd_02{width: 22.41%; top: -9.5%;left:3.33%;}

#contents .content_wrap#cont_sp .content address{font-size: 11px;color: #c0c6cc;bottom: 20px;}


#contents .content_wrap#cont_ic .content nav ul{
	margin-top: 1%;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#contents .content_wrap#cont_ic .content nav ul li,
#contents .content_wrap#cont_ic .content nav ul li a,
#contents .content_wrap#cont_ic .content nav ul li a img{	border-radius: 10px;}

#contents .content_wrap#cont_ic .content nav ul li{
	margin-top: 3%;
	width:22.5%;
	border: solid 1px #ca8;
	position: relative;
}

#contents .content_wrap#cont_ic .content nav ul li a,
#contents .content_wrap#cont_ic .content nav ul li a img{
	background: #fff;
	display: block;
	overflow: hidden;
}

#contents .content_wrap#cont_ic .content nav ul li a img:hover{opacity: 0.8;transform: scale(1.05, 1.05);}

#contents .content_wrap#cont_ic .content nav ul li a img.ic_dl{
	padding: 6px;
	width: 20px;
	height: 20px;
	position: absolute;
	bottom: -1px;
	right: -1px;
	background: #ca8;
	border-radius: 2px 0 10px 0;
}

#contents .content_wrap#cont_ic .content p{
	margin: 4% auto 0 auto;
	width: 48.33%;
}
#contents .content_wrap#cont_ic .content p a{
	width: 100%;
	height: 48px;
	color: #006;
	text-decoration: none;
	background-image: url(../../img/ob/ic_dl.png);
	background-repeat: no-repeat;
	background-size: 20px;
	background-position: 24px 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	border: solid 1px #006;
	border-radius: 24px;
}
#contents .content_wrap#cont_ic .content p a:hover{background-color: #ca8;}

#contents .content_wrap#cont_ic .content ul.ic_att{margin-top: 4%; color: #ca8;}
#contents .content_wrap#cont_ic .content ul.ic_att li{margin-top: 0.5em;}





/* =footer
-------------------------------------------------------------- */

#footer_wrap{
	width: 100%;
	background: #006;
	position: relative;
	z-index: 100;
}

#footer{
	margin: 0 auto;
	padding:40px;
	max-width: 1120px;
	min-width: 688px;
	color: #a3a3bd;
	background: #006;
}

#footer nav{
	font-size: 11px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#footer nav ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-evenly;
}

#footer nav ul li{margin-left: 1.5em;}

#footer nav ul li a{
	font-weight: 400;
	color: #a3a3bd;
	text-decoration: none;
	display: inline-block;
	position: relative;
}

#footer nav ul a:hover{color:#ca8;}





/* =nazenani
-------------------------------------------------------------- */

body.nazenani{background: #006;}

#nn_header_wrap{
	width: 100%;
}

#nn_header_wrap #nn_header{
	margin: 0 auto;
	padding:0 40px;
	max-width: 1120px;
	min-width: 688px;
	position: relative;
}

#nn_header_wrap,
#nn_header_wrap #nn_header{
	background-color: #006;
}

#nn_header_wrap #nn_header img{width: 100%;}

#nn_header_wrap #nn_header div,
#nn_header_wrap #nn_header address{position: absolute;}

#nn_header_wrap #nn_header div.sp_sd_01{width: 24.16%; top: 13%;left:3.33%;}
#nn_header_wrap #nn_header div.sp_sd_02{width: 22.41%; top: 6%;right:4.54%;}

#nn_header_wrap #nn_header address{
	font-size: 11px;
	color: #a3a3bd;
	line-height: 200%;
	top: 20px;
	left:3.33%;
}
#nn_header_wrap #nn_header address em{font-size: 14px;margin-left: 0.5em;}



#nn_contents .nn_content_wrap .nn_content{
	margin: 0 auto;
	padding:0 46px 86px 46px;
	max-width: 1108px;
	min-width: 688px;
	position: relative;
}

#nn_contents .nn_content_wrap,
#nn_contents .nn_content_wrap .nn_content{
	background-image: url(../../img/bg/gl_bg_nn.png);
	background-color: #e9e6e3;
	background-size: 240px;
}

#nn_contents .nn_content_wrap .nn_content{padding-top: 86px;}
#nn_contents .nn_content_wrap .nn_content img{width: 100%;}



#nn_contents .nn_content_wrap .nn_content .nn_text_wrap{
	width: 100%;
	max-height: 128px;
  overflow: hidden;
	background: #fff;
	border-radius: 24px;
	box-shadow:0 0 0 2px rgba(204, 170, 136, 1),0 0 0 6px rgba(255, 255, 255, 1),0 0 8px 6px rgba(0, 0, 0, 0.05),0 8px 24px 6px rgba(0, 0, 0, 0.1);
	transition: 0.5s ease-in-out;
}

#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.open{max-height: 2400px;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.nn_text_wrap_02.open{max-height: 3800px;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.nn_text_wrap_03.open{max-height: 6600px;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.nn_text_wrap_04.open{max-height: 5600px;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.nn_text_wrap_05.open{max-height: 5800px;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.nn_text_wrap_06.open{max-height: 9000px;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.nn_text_wrap_07{max-height: 5800px;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.nn_text_wrap_07.open{max-height: 128px;}

#nn_contents .nn_content_wrap .nn_content .nn_text_wrap+.nn_text_wrap{margin-top: 52px;}

#nn_contents .nn_content_wrap .nn_content .nn_text_wrap h2{
	height:128px;
	background-image: url(../../img/bg/nn_cont_head_bg.png);
	background-size: 100%;
	background-repeat: no-repeat;
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
  transition: 0.25s ease-in-out;
}

#nn_contents .nn_content_wrap .nn_content .nn_text_wrap h2 img{
	background-image: url(../../img/bg/nn_cont_head_cl.png);
  background-repeat: no-repeat;
  background-size: 24px;
  background-position: 95% 50% ;
	border-radius: 24px 24px 0 0;
}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.open h2 img{background-image: url(../../img/bg/nn_cont_head_op.png);}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.nn_text_wrap_02 h2 img{background-image: url(../../img/bg/nn_cont_head_op.png);}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap.nn_text_wrap_02.open h2 img{background-image: url(../../img/bg/nn_cont_head_cl.png);}

#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dl{
	margin: 0 auto;
	padding: 24px 0;
	width: 93.86%;
	border-top: solid #ca8 1px;
}

#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dt,
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd{
	margin: 0 auto;
	width: 86.64%;
	border-radius: 24px;
	position: relative;
}

#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dt{background: #006;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dt span{
	margin-left: -14px;
	width: 28px;
	height: 8px;
	background: url(../../img/ob/nn_cont_arrow.png);
	background-size: 100%;
	display: block;
	position: absolute;
	bottom: -8px;
	left: 50%;
}

#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd{
	margin-top: 24px;
	min-height: 120px;
	color: #fff;
	display: flex;

}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd div{
	width: 240px;
	display: flex;
	align-items: flex-end;
}

#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd p{
	margin: 24px 48px;
	text-align: justify;
	flex: 1;
	display: flex;
	justify-content: center;
	align-items: center;
}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd.ell{background: #c33;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd.mil{background: #33c;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd.sof{background: #2a3;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd.sas{background: #321;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd.org{background: #d38;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd.lee{background: #839;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd.val{background: #925;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd.tit{background: #e80;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd:nth-child(even) p{margin-left: 20px;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd:nth-child(odd) p{margin-right: 20px;}
#nn_contents .nn_content_wrap .nn_content .nn_text_wrap dd:nth-child(odd){flex-direction: row-reverse;}





/* =media queries
-------------------------------------------------------------- */

@media screen and (min-width:768px) {

	#contents .content_wrap .content,
	#contents .content_wrap:nth-child(even) .content,
	#contents .content_wrap:last-child .content,
	#nn_contents .nn_content_wrap .nn_content{background-image: unset; background-color: unset;}

}
