header{ position: static; transform: none; padding-bottom: 20px; }

.page-main{ height: 390px; background-size: cover; background-repeat: no-repeat; background-image: url(../images/common/page-main01.jpg); display: flex; justify-content: center; align-items: center; }
.page-main.policy{ background-image: url(../images/policy/page-main01.jpg); }

.page-main h1{
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
	font-size: 40px;
	color: #fff;
	text-align: center;
}
.page-main h1 span{ font-family: garamond-premier-pro, serif; font-weight: 400; font-style: normal; display: block; text-align: center; font-size: 30px; color: #d0ad49; position: relative; margin-bottom: 20px; padding-bottom: 8px; }
.page-main h1 span:after{ content: ''; width: 40px; height: 1px; background: #d0ad49; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); }

main{ background: url(../images/common/bg-sand01.jpg); overflow: hidden; display: block; }
main *{ color: #000; line-height: 1.8; }

.pankuzu{ width: 1000px; margin: 12px auto 0; }
.pankuzu li{ font-size: 11px; display: inline-block; }
.pankuzu li:not(:last-of-type):after{ content: '▶︎'; color: #d0ad49; font-size: 8px; }

.container{ width: 700px; margin: 60px auto 120px; }

.container > *:first-child,
.container .side-img .content > *:first-child{ margin-top: 0 !important; }

.container > *:last-child,
.container .side-img .content > *:last-child{ margin-bottom: 0 !important; }

.container h2{
	font-family: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
	font-size: 26px;
	text-align: center;
	border-top: solid 1px;
	border-bottom: solid 1px;
	padding: .5em 0;
	margin: 110px 0 70px;
}
.container h3{ font-size: 22px; font-weight: 500; color: #d0ad49; margin: 35px 0 1em; }
.container h4{ font-size: 18px; font-weight: 500; padding-left: .5em; border-left: solid 4px #d0ad49; line-height: 1.4; margin: 32px 0 1.8em; }
.container p{ margin-bottom: 1em; }
.container p strong{ font-weight: 700; background:linear-gradient(transparent 70%, #d0ad49 70%);}

.container .main-img{ display: block; margin: 50px 0 30px; width: 100%; }

.container .side-img{ display: flex; justify-content: space-between; flex-wrap: wrap; margin: 70px 0; }
.container .side-img .content{ width: 320px; }
.container .side-img.small .content{ width: 450px; }
.container .side-img .img{ width: 320px; }
.container .side-img.small .img{ width: 190px; }
.container .side-img .img img{ display: block; width: 100%; }

.container .staff-box{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.container .staff-box .content{ width: 420px; }
.container .staff-box .content p.staff-name{ font-size: 22px; margin-bottom: 35px; }
.container .staff-box .img{ width: 220px; }
.container .staff-box .img img{ display: block; width: 100%; }

.container table{ width: 100%; margin: 50px 0; }
.container table th{ width: 1px; white-space: nowrap; font-size: 16px; color: #af8c0f; padding: .8em 1em; background: #fff; border-bottom: solid 1px #f2f2f2; border-right: solid 1px #f2f2f2; vertical-align: middle; }
.container table td{ font-size: 16px; padding: .8em 1em; vertical-align: middle; background: #fff; border-bottom: solid 1px #f2f2f2; }


/**** policy ****/

.policy-box .logo{ display: block; width: 140px; margin: 0 auto 40px; }
.policy-box p span{ display: block; font-size: 28px; text-align: center; color: #d0ad49; border-bottom: dotted 2px; line-height: 2.4; }
.policy-box p span:nth-of-type(1){ border-top: dotted 2px; }

.ceo-message{ display: flex; justify-content: space-between; flex-wrap: wrap; }
.ceo-message .img{ width: 220px; }
.ceo-message .img .inner-img img{ width: 100%; display: block; }
.ceo-message .img .inner-img img.sp{ display: none; }
.ceo-message .img dl dt{ margin-top: 1em; }
.ceo-message .img dl dd{ font-size: 22px; }
.ceo-message .content{ width: 420px; }


/**** contact ****/
input,textarea{width: 100%;}
.submit{margin: 0 auto}
.submit{ width: 210px; height: 40px; border-radius: 20px; border: solid 1px; display: flex; justify-content: center; align-items: center; font-size: 12px; position: relative; background: #000; color: #fff; font-weight: bold;}
.submit::after{ content: ''; width: 61px; height: 5px; background: url(../images/common/arrow01.png) no-repeat; background-size: contain; position: absolute; top: 50%; right: -30px; transform: translateY(-50%); }
.submit input[type="submit"]{background: none; color: #fff; font-weight: bold; position: absolute; height: 100%; width: 100%; text-align: center;}
