@charset "utf-8";


/*---------------------------------------------------------------------------------------
	大枠設定
----------------------------------------------------------------------------------------*/

body{
	font-family: "Noto Sans JP";
	color:#111;
	text-align:center;
}
.switch{}
a{ color:#111; text-decoration:none; -webkit-transition: all .2s; transition: all .2s;}
a:hover{ opacity: .7; text-decoration:none;}
img.imgalpha, .svg path, .svg polygon{ -webkit-transition: all .2s; transition: all .2s;}
.svg{ vertical-align: middle;}
/* font */
.gothic{ font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;}
.mincho{ font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;}
/* bg */
.bg-yellow{ background: #fbf9ee;}
/* color */
.red{ color: #f00;}
/* move */
.move{ transform: translateY(50px); transition : all 1000ms; opacity: 0;}
.move.move-active{ transform: translateY(0); opacity: 1;}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width:768px){
	body{
		font-size: 16px;
	}
	a:hover{ opacity: 1;}
}






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

header{
	height: 360px;
	padding: 0 3%;
	background: url("../images/header-bg2.png") no-repeat center top, url("../images/header-bg.png") repeat-x center bottom;
}
header div{
	max-width: 1000px;
	margin: 0 auto;
	padding: 22px 0 0;
}
header div h1{
	float: left;
}
header div p{
	padding-top: 15px;
	float: right;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width:768px){
	header{
		height: auto;
		padding: 0 3%;
		background: url("../images/header-bg.png") no-repeat center bottom;
		background-size: 150% auto;
	}
	header div{
		padding: 20px 0 28%;
	}
	header div h1{
		float: none;
		margin-bottom: 5%;
	}
	header div h1 img{
		width: 90%;
		max-width: 428px;
	}
	header div p{
		float: none;
		width: 60%;
		max-width: 282px;
		padding-top: 0;
		margin: 0 auto;
		position: relative;
	}
	header div p a{
		display: inline-block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 30%;
	}
}






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

#contents{}
.wrap{
	clear: both;
	box-sizing: content-box;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 5%;
	padding-right: 5%;
}
/* anc-link */
.anc-link{
	display: flex;
	justify-content: center;
	align-items: flex-end;
	flex-wrap: wrap;
	padding: 80px 1% 0;
	margin-bottom: 60px;
}
.anc-link a{
	color: #736357;
	font-size: 21px;
	font-weight: 600;
	line-height: 1.25;
	width: 230px;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 5px;
	margin: 0 13px 20px;
	border: 1px solid #998675;
	background: url("../images/ic-arrow-bottom.svg") center bottom 8px no-repeat;
}
.anc-link a.pdf{
	font-size: 18px;
	padding-left: 60px;
	background: url("../images/ic-pdf.svg") left 15px center no-repeat;
}
.anc-link a.bnr{
	width: auto;
	height: auto;
	padding: 0;
	border: none;
}
/* anc-ttl */
.anc-ttl{
	padding-top: 25px;
	background: url("../images/anc-link-bd.jpg") center top repeat-x;
	margin-bottom: 85px;
}
/* links */
ul.links{
	padding: 60px 3% 75px;
}
ul.links li{
	display: inline-block;
	width: 50%;
	max-width: 150px;
}
/* cont1 */
#cont1{
	clear: both;
	font-size: 20px;
	padding: 0 3% 100px;
}
#cont1 h2{
	margin-bottom: 50px;
}
/* cont2 */
#cont2{
	padding-top: 60px;
	padding-bottom: 70px;
}
#cont2 h2{
	margin-bottom: 30px;
}
#cont2 ol li{
	text-align: left;
	padding: 12px 0 15px 40px;
}
#cont2 ol li:nth-child(1){ background: url("../images/cont2-1.png") no-repeat left top 17px, url("../images/cont2-line.png") no-repeat center bottom;}
#cont2 ol li:nth-child(2){ background: url("../images/cont2-2.png") no-repeat left top 17px, url("../images/cont2-line.png") no-repeat center bottom;}
#cont2 ol li:nth-child(3){ background: url("../images/cont2-3.png") no-repeat left top 17px, url("../images/cont2-line.png") no-repeat center bottom;}
#cont2 ol li:nth-child(4){ background: url("../images/cont2-4.png") no-repeat left top 17px, url("../images/cont2-line.png") no-repeat center bottom;}
#cont2 ol li:nth-child(5){ background: url("../images/cont2-5.png") no-repeat left top 17px, url("../images/cont2-line.png") no-repeat center bottom;}
#cont2 ol li:nth-child(6){ background: url("../images/cont2-6.png") no-repeat left top 17px, url("../images/cont2-line.png") no-repeat center bottom;}
#cont2 ol li:nth-child(7){ background: url("../images/cont2-7.png") no-repeat left top 17px, url("../images/cont2-line.png") no-repeat center bottom;}
/* cont3 */
#cont3{
	padding-top: 100px;
}
#cont3 h2{
	padding-bottom: 60px;
	margin-bottom: 40px;
	background: url("../images/line-dots.png") repeat-x center bottom;
}
#cont3 .wrap .topbox{
	display: flex;
	padding-bottom: 40px;
	margin-bottom: 40px;
	background: url("../images/line-dots.png") repeat-x center bottom;
}
#cont3 .wrap .bottombox{
	display: flex;
	margin-bottom: 40px;
}
#cont3 .wrap article{
	width: 33.333333%;
	padding: 0 20px;
}
#cont3 .wrap article:not(:last-child){
	background: url("../images/line-dots-tate.png") no-repeat right top;
}
#cont3 .wrap article dd{
	text-align: left;
	line-height: 1.6;
	padding-top: 20px;
}
#cont3 p{
	clear: both;
	font-size: 20px;
	padding: 40px 3% 50px;
	background: url("../images/line-dots.png") repeat-x center top, url("../images/cont3-line.png") repeat-x center bottom;
}
/* cont4 */
#cont4{
	clear: both;
	padding-top: 100px;
}
#cont4 h2{
	padding-bottom: 50px;
}
#cont4 article{
	clear: both;
	margin-bottom: 50px;
}
#cont4 article h3{
	margin-bottom: 30px;
	background: #f1657f;
	border-radius: 100px;
}
#cont4 article h4{
	font-size: 20px;
	font-weight: middle;
	text-align: left;
	margin-bottom: 10px;
}
#cont4 article table{
	width: 100%;
	border-collapse: separate;
	border-spacing: 2px;
	background: url("../images/bg-pinkwall.jpg") repeat;
}
#cont4 article table th{
	padding: 10px;
	line-height: 1.4;
	background: #fbf9ee;
	vertical-align: middle;
}
#cont4 article table td{
	padding: 10px;
	line-height: 1.4;
	background: #fff;
	vertical-align: middle;
}
/* cont5 */
#cont5{
	clear: both;
	padding-top: 80px;
	padding-bottom: 100px;
}
#cont5 h2{
	margin-bottom: 50px;
}
#cont5 figure{
	margin-bottom: 50px;
}
/* cont6 */
#cont6{
	clear: both;
	padding-top: 70px;
	padding-bottom: 70px;
}
#cont6 h2{
	margin-bottom: 50px;
}
#cont6 figure{
	margin-bottom: 40px;
}
/* cont7 */
#cont7{
	clear: both;
	padding-top: 15px;
	padding-bottom: 90px;
}
#cont7 h2{
	margin-bottom: 60px;
}
#cont7 iframe{
	width: 100%;
	height: 300px;
	margin-bottom: 20px;
}
/* cont8 */
#cont8{
	clear: both;
	padding-bottom: 80px;
}
#cont8 h2{
	margin-bottom: 40px;
}
#cont8 dl dd{
	padding-top: 15px;
	margin-bottom: 20px;
}
#cont8 p{
	margin-bottom: 80px;
}
#cont8 ul{
	max-width: 840px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
}
#cont8 ul li{
	width: 31%;
}
#cont9{
	padding-bottom: 80px;
}
#cont9 h2{
	margin-bottom: 40px;
}
#cont10{
	background: #fbf9ee;
	padding: 60px 0 100px;
}
#cont10 h2{
	margin-bottom: 60px;
}
#cont10 ol{
	border-top: 3px solid #ffdcbd;
}
#cont10 ol li{
	text-align: left;
	padding: 12px 0 12px 40px;
	border-bottom: 3px solid #ffdcbd;
	position: relative;
}
#cont10 ol li:nth-child(1){ background: url("../images/cont2-1.png") no-repeat left top 17px}
#cont10 ol li:nth-child(2){ background: url("../images/cont2-2.png") no-repeat left top 17px}
#cont10 ol li:nth-child(3){ background: url("../images/cont2-3.png") no-repeat left top 17px}
#cont10 ol li:nth-child(4){ background: url("../images/cont2-4.png") no-repeat left top 17px}
#cont10 ol li:nth-child(5){ background: url("../images/cont2-5.png") no-repeat left top 17px}
#cont11{
	padding-top: 95px;
	padding-bottom: 115px;
}
#cont11 h2{
	margin-bottom: 50px;
}
#cont12{
	background: #fbf9ee;
	padding: 60px 0 100px;
	margin-bottom: 110px;
}
#cont12 h2{
	margin-bottom: 50px;
}
#cont12 ul.cont12-list{
	border-top: 3px solid #ffdcbd;
}
#cont12 ul.cont12-list > li{
	text-align: left;
	padding: 15px 205px 15px 0;
	border-bottom: 3px solid #ffdcbd;
	position: relative;
}
#cont12 ul.cont12-list li dl dt{
	color: #f1657f;
	font-weight: bold;
}
#cont12 ul.cont12-list li dl dd ul li{
	padding-left: 1em;
	text-indent: -1em;
}
#cont12 ul li figure{
	position: absolute;
	right: 0;
}
#cont12 ul li figure.abs1{
	bottom: 25px;
}
#cont12 ul li figure.abs2{
	bottom: -25px;
}
#cont12 ul li figure.abs3{
	bottom: 10px;
}
#cont12 ul li figure.abs4{
	right: 40px;
	bottom: 5px;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width:768px){
	/* links */
	ul.links{
		padding: 40px 3% 50px;
	}
	ul.links li{
		max-width: 120px;
	}
	/* cont1 */
	#cont1{
		font-size: 16px;
		padding: 0 3% 50px;
	}
	#cont1 h2{
		margin-bottom: 20px;
	}
	h2 img{
		width: 200px;
		max-width: inherit;
	}
	/* cont2 */
	#cont2{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	#cont2 h2{
		margin-bottom: 20px;
	}
	#cont2 ol li{
		text-align: left;
		padding: 10px 0 12px 30px;
		background-size: 20px, 100% 2px!important;
		background-position: left top 14px, center bottom!important;
	}
	/* cont3 */
	#cont3{
		padding-top: 50px;
	}
	#cont3 h2{
		padding-bottom: 40px;
		margin-bottom: 30px;
		background-size: auto 3px!important;
	}
	#cont3 .wrap .topbox{
		display: block;
		padding-bottom: 0;
		margin-bottom: 0;
		background: none;
	}
	#cont3 .wrap .bottombox{
		display: block;
		margin-bottom: 0;
	}
	#cont3 .wrap article{
		clear: both;
		width: auto;
		padding: 30px 0;
		background: url("../images/line-dots.png") repeat-x center bottom!important;
		background-size: auto 3px!important;
	}
	#cont3 .wrap .bottombox article:last-child{
		background: none!important;
	}
	#cont3 .wrap article dt img{
		width: 200px;
		max-width: inherit;
	}
	#cont3 p{
		font-size: 18px;
		text-align: left;
		padding: 40px 3% 50px;
		background-size: auto 3px, 100% 4px!important;
	}
	/* cont4 */
	#cont4{
		padding-top: 60px;
	}
	#cont4 h2{
		padding-bottom: 30px;
	}
	#cont4 article{
		margin-bottom: 30px;
	}
	#cont4 article h3{
		margin-bottom: 15px;
	}
	#cont4 article h3 img{
		width: 100%;
		max-width: 350px;
	}
	#cont4 article h4{
		font-size: 16px;
		margin-bottom: 10px;
	}
	#cont4 article table{
		font-size: 14px;
	}
	#cont4 article table th{
		padding: 10px 2px;
	}
	#cont4 article table td{
		padding: 10px 2px;
	}
	/* cont5 */
	#cont5{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	#cont5 h2{
		margin-bottom: 30px;
	}
	#cont5 figure{
		margin-bottom: 30px;
	}
	/* cont6 */
	#cont6{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	#cont6 h2{
		margin-bottom: 30px;
	}
	#cont6 figure{
		margin-bottom: 20px;
	}
	/* cont7 */
	#cont7{
		padding-top: 0;
		padding-bottom: 60px;
	}
	#cont7 h2{
		margin-bottom: 30px;
	}
	#cont7 iframe{
		margin-bottom: 15px;
	}
	/* cont8 */
	#cont8{
		padding-bottom: 40px;
	}
	#cont8 h2{
		margin-bottom: 20px;
	}
	#cont8 dl dt{
		width: 90%;
		max-width: 427px;
		margin: 0 auto;
		position: relative;
	}
	#cont8 dl dt a{
		display: inline-block;
		position: absolute;
		top: 57%;
		left: 0;
		width: 100%;
		height: 25%;
	}
	#cont8 dl dd{
		margin-bottom: 20px;
	}
	#cont8 p{
		margin-bottom: 50px;
	}
	#cont8 ul{
		max-width: 840px;
		margin: 0 auto;
		overflow: hidden;
	}
	#cont8 ul li{
		float: left;
		width: 48%;
		margin-right: 4%;
		margin-bottom: 4%;
	}
	#cont8 ul li:nth-child(2){ margin-right: 0;}
	/* cont9 */
	#cont9{
		padding-bottom: 40px;
	}
	#cont9 h2{
		margin-bottom: 20px;
	}
	/* cont10 */
	#cont10{
		padding: 30px 0 50px;
	}
	#cont10 h2{
		margin-bottom: 30px;
	}
	#cont10 ol{
		border-top: 2px solid #ffdcbd;
	}
	#cont10 ol li{
		border-bottom: 2px solid #ffdcbd;
		padding: 10px 0 10px 30px;
		background-size: 20px, 100% 2px !important;
		background-position: left top 14px, center bottom !important;
	}
	/* cont11 */
	#cont11{
		padding-top: 45px;
		padding-bottom: 65px;
	}
	#cont11 h2{
		margin-bottom: 25px;
	}
	/* cont12 */
	#cont12{
		padding: 30px 0 50px;
		margin-bottom: 55px;
	}
	#cont12 h2{
		margin-bottom: 25px;
	}
	#cont12 ul.cont12-list{
		border-top: 2px solid #ffdcbd;
	}
	#cont12 ul.cont12-list > li{
		padding: 10px 0;
		border-bottom: 2px solid #ffdcbd;
	}
	#cont12 ul li figure{
		position: static;
		padding-top: 10px;
		text-align: center;
	}
}
@media screen and (max-width:400px){
	/* cont4 */
	#cont4 article table{
		font-size: 12px;
	}
}






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

footer{
	clear: both;
	height: 290px;
	padding-top: 210px;
	font-size: 16px;
	line-height: 80px;
	background: url("../images/footer-bg.png") repeat-x center top;
}

/*------------------------------ responsive ------------------------------*/
@media screen and (max-width:768px){
	footer{
		height: auto;
		padding-top: 28%;
		font-size: 12px;
		line-height: 1.4;
		background-size: 150% auto;
		margin-bottom: 20px;
	}
}


























