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

/*共通*/
*, *::before, *::after{box-sizing: border-box;}

html{font-size: 62.5%; height: 100%; position: relative;}

body{font-family:"source-han-sans-japanese",sans-serif,"heisei-kaku-gothic-std","kozuka-gothic-pro" , "游ゴシック" ,YuGothic, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", HelveticaNeue-CondensedBold , Helvetica , Avenir , roboto;font-size: 14px;font-size: 1.4rem;color: #000;max-width: 2000px;margin: 0 auto;}

img,iframe {max-width: 100%;}

a{text-decoration: none;color: #fff;}
a:hover{opacity: 0.7;}

p{line-height: 1.5;}

.bold{font-weight: bold;}

.clear{clear: both;}

/*フォントスタイルここから*/
.fpt{font-family: futura-pt-condensed, sans-serif;}
/*フォントスタイルここまで*/

/*見出し共通共通ここから*/
.ttl {text-align:center; }
.ttl h3{font-size:4rem;font-weight: bold;font-style: italic;color:#2562b1;}
.ttl hr{width: 50px;background: #2562b1;padding: 2px 0;border: 0;}
/*見出し共通共通ここまで*/

/*カラースタイルここから*/
.blue{color:#2562b1;}
.c_grn{color: #236441;}
.c_red{color: #f00;}
.bg_blk{background: #000 !important; }
/*カラースタイルここまで*/

/*詳しく見るボタンここから*/
a.more_line{clear: both;overflow: hidden;position: relative;display: block;border: 2px solid #000;width: 330px;text-align: center;margin: 0 auto;padding: 18px 0;color: #000;font-weight: bold;}
a.more_line:hover{opacity: 1;}
a.more_line:after{content: '';display: block;position: absolute;top: 40%;right: 8%;width: 0.5em;height: 0.5em;border-top: #000 2px solid;border-right: #000 2px solid;transform: rotate(45deg);transition: all .1s;}
a.more_line:hover:after{right: 1.5em;}
/*詳しく見るボタンここから*/

/*詳しく見るボタンここから*/
a.more{clear: both;overflow: hidden;position: relative;display: block;background:#2562b1;width: 330px;text-align: center;margin: 0 auto;padding: 18px 0;color: #fff;font-weight: bold;}
a.more:hover{opacity: 1;}
a.more:after{content: '';display: block;position: absolute;top: 40%;right: 8%;width: 0.5em;height: 0.5em;border-top: #fff 2px solid;border-right: #fff 2px solid;transform: rotate(45deg);transition: all .1s;}
a.more:hover:after{right: 1.5em;}
/*詳しく見るボタンここから*/

.btn_box{display: flex;width: 750px;margin:0 auto; }
@media screen and (max-width: 960px) {
	.btn_box{display:block;width:auto;text-align:center; }
	.btn_box a{margin-bottom:5%;}
}


/*共通ここまで*/

/*デバイス切り替え*/
@media screen and (max-width: 960px) {
	.pc {display:none !important;}
}
@media print,screen and (min-width: 961px) {
	.sp {display:none !important;}
}

/*ヘッダーここから*/
header{position: relative;}
header .header_wrap{width:100%;height:90px;position: relative;background: rgba(27, 77, 160, 0.91);overflow: hidden;z-index: 9999;}
header h1{font-size: 10px;color:#fff;padding: 2px 0 2px 315px;}
header nav{font-size:14px;letter-spacing: 1px;}
header nav ul{text-align:center;margin-top: 28px;position: relative;}
header nav ul li{display: inline-block;padding: 0 20px 0 20px;}
header nav ul li+li{border-left:1px solid #fff;}
header nav a {color: #fff;position: relative;display: inline-block;text-decoration: none;}
header nav a:hover {opacity: 1;}
header nav a::after {position: absolute;bottom: -8px;left: 0;content: '';width: 100%;height: 3px;background: #0390d8;transform: scale(0, 1);transform-origin: right top;transition: transform .3s;}
header nav a:hover::after {transform-origin: left top;transform: scale(1, 1);}
header .contact{position:absolute; top:6px;right:30px;text-align: center;color: #fff;}
header .contact p.txt{font-size: 12px;}
header .contact p.txt:first-child{margin-top:3px;}
header .contact p.number{font-style: italic;font-size: 35px;font-weight: bold;background-size: 25px;line-height: 1;padding: 1px 0;}
header .contact p.number small{display: block;font-size: 2rem;}
header h2{width: 300px;position: absolute;top:0;left:0;z-index: 9999;}
header h2 a:hover{opacity: 1;}
@media screen and (max-width: 960px) {
	header nav a::after {position: static;}
	header nav ul li+li{border-left:0;}
}
/*ヘッダーここまで*/

main{margin-top: -90px;}
@media screen and (max-width: 960px) {
	main{margin-top: 0px;}
}

/*下層メイン画像共通*/
.mainvisual{position: relative;}
.mainvisual h2{font-size: 65px;font-size:6rem;color: #fff;text-align: center;position: absolute;top:80px;left: 0;right: 0;bottom: 0;margin: auto;width:100%;height:65px;}
/*下層メイン画像共通*/

/*下層メイン見出し共通*/
h3.intro{font-size: 3rem;font-weight: bold;}
h3.intro span{font-weight:bold;}
h3.intro span.sm{font-size:2.5rem;}
/*下層メイン見出し共通*/

/*パンくずここから*/
.bread_wrap{width: 100%;padding-bottom: 10px;border-bottom: 1px solid #ccc; margin: 10px 0;}
.bread_wrap ol{list-style-type: none;width:100%;margin:0 auto;font-size: 12px; }
.bread_wrap	ol li{display: inline-block;}
.bread_wrap ol li:first-child{background-image: url(../img/common/icon_bread.png);background-repeat: no-repeat;background-position: left center;background-size: contain;padding-left:18px;margin-left: 20px;}
.bread_wrap ol li:after{content:" - ";}
.bread_wrap	ol li:last-child:after{content:"";}
.bread_wrap ol li a{color: #000;}
/*パンくずここまで*/

/*フッターここから*/
footer{clear: both; background-color: #000;color: #fff;}
footer .contact_area{background-color: #2562b1;padding: 30px 0;}
footer .contact_area_inner{width: 1200px;margin:0 auto;overflow: hidden;}
footer .contact_area h4{float: left;margin-left: 30px;font-size: 2rem;}
footer .contact_area h4 span{font-size: 6rem;margin-right: 30px;font-weight: bold;font-style: italic;}
footer .contact_area a{border: 1px solid #fff;background: #2562b1 url(../img/common/icon_mail.svg) center left 44px no-repeat;display: block;width: 220px;text-align: center;float: right;padding: 15px 0px 15px 20px;background-size: 23px;margin: 7px 30px 0 0;}
footer .footer_wrap{background:url(../img/common/footer_bg.jpg) center no-repeat;height: 233px;}
footer .footer_wrap h3{font-size: 24px;font-weight: bold;text-align: center;padding: 25px 0 10px;width: auto;}
footer .footer_wrap hr{width: 250px;}
footer .footer_wrap .footer_wrap_inner{ display: flex;max-width: 800px;margin: 40px auto;justify-content: space-around;}
footer .footer_wrap .add{text-align: center;}
footer .footer_wrap .add h5{font-size:18px;position: relative;}
footer .footer_wrap .add h5:before{position: absolute;top: 0;bottom: 0;left: 66px;margin: auto;content: "";vertical-align: middle;box-sizing: border-box;width: 0;height: 0;border-style: solid;border-width: 0 20px 20px 0;border-color: transparent;border-right-color: #2262b2;transform: rotate( -90deg );}
footer .footer_wrap .add address{font-style: normal;line-height: 1.6;margin-top: 15px;}
footer p.copy{font-size: 10px;text-align: center;padding: 5px 0; background-color: #2562b1;color: #fff;clear: both;}
/*フッターここまで*/

/*トップに戻るボタンここから*/
.gotop{position: fixed;right: 0;bottom: -50px;}
.gotop a{padding: 1px 40px 1px 60px;display: block;background-color:#2562b1;position: relative;}
.gotop a:before{position: absolute;top: 5px;bottom: 0;left: 30px;margin: auto;content: "";vertical-align: middle;width: 10px;height: 10px;border-top: 2px solid #fff;border-right: 2px solid #fff;-webkit-transform: rotate(-45deg);transform: rotate(-45deg);}
/*トップに戻るボタンここまで*/

@media screen and (max-width: 960px) {
	body{font-size: 1.3rem;}

	a.more{width:80%;}

	/*ヘッダーここから*/
	header{height:60px;position: relative;overflow: hidden;}
	header h1{padding: 0;width: 25%;margin: 7px auto 0;}
	header .contact_btn{width: 60px;height: 60px;background-color:#2562b1;position: absolute;top: 0;right: 0;}
	header .contact_btn img{display: block;margin:15px auto 0;width: 30px; }
	header nav ul li{position:relative;display: block;padding: 0;border-bottom: 1px solid #fff;margin-bottom: 15px;}
    header nav ul li:after{content: '';display: block;position: absolute;top: 15%;right: 8%;width: 0.5em;height: 0.5em;border-top: #fff 2px solid;border-right: #fff 2px solid;transform: rotate(45deg);transition: all .1s;}
	/*ヘッダーここまで*/

	/*下層メイン画像共通*/
	.mainvisual h2{font-size: 4rem;top: 10%;}
	/*下層メイン画像共通*/

	/*フッターここから*/
	footer .footer_wrap{width:auto;}
	footer .footer_wrap{background:#323232 url(../img/common/sp/footer_bg.jpg) center top 30% no-repeat;height: auto;background-size: contain;}
	footer .footer_wrap h3{margin: 0 15%;}
	footer .footer_wrap .footer_wrap_inner{ display:block;}
	footer .footer_wrap .add{margin-bottom: 5%}
	footer .footer_wrap ul{margin-top:6%;float:none;}
	footer .footer_wrap ul li{display: block;border-bottom: 1px solid #fff;border-right:0;font-size: 1.4rem;padding: 0;position: relative;}
	footer .footer_wrap ul li:after{content: '';display: block;position: absolute;top: 40%;right: 8%;width: 0.5em;height: 0.5em;border-top: #fff 2px solid;border-right: #fff 2px solid;transform: rotate(45deg);transition: all .1s;}
	footer .footer_wrap ul li:first-child{border-top: 1px solid #fff;}
	footer .footer_wrap ul li a{display: block;padding: 4% 0 4% 4%;}
	footer p.copy{padding: 10px 0;}
	/*フッターここまで*/

	/*トップに戻るボタンここから*/
	/*.gotop a{width: 20px;}*/
	/*トップに戻るボタンここまで*/
}


