@charset("UTF-8");

*{
	box-sizing:border-box;
	margin:0;
	padding:0;
}

body{
	font-family:游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo,  sans-serif;
	font-size:14px;
	color:#333;
	font-weight:500;
}

img{
	border:none;
}

ul,ol{
	list-style:none;
}

a{
	text-decoration:none;
	color:#333;
}
table{
	border-collapse:collapse;
	width:100%;
	border-top:1px solid #aaa;
}

.sp{
	display:none !important;
}
.sp-menu{
	display:none;
}

.inner{
	width:1080px;
	margin:0 auto;
	position:relative;	
	padding:0 40px;
}
.outer{
	width:100%;
	min-width:1080px;
	margin:auto;
}
.f-left{
	float:left;
}
.f-right{
	float:right;
}
.ov-hidden{
	overflow:hidden;
}
.clear{
	clear:both;
}

.hover{
	transition:0.3s all ease;
}
.hover:hover{
	opacity:0.6;
	filter:alpha(opacity=60);
}
.u-line{
	text-decoration:underline;
	color:#0d61a9;
}
.u-line:hover{
	text-decoration:none;
}
.mincho{
	font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
}
.j-sans{
	font-family: 'Josefin Sans', 游ゴシック, YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo,  sans-serif;
}

.bg-gray{
	background:#f2f5f7;
}

/* ***********************header************************** */
header{
	padding-top:10px;
	padding-bottom:14px;
	height:97px;
}
header h1{
	font-size:12px;
	font-weight:500;
	line-height:1.1;
	padding-bottom:5px;
}
nav{
	position:absolute;
	right:40px;
	top:30px;
}
nav li{
	margin-left:40px;
}
nav a{
	line-height:3.14;
}
nav li:last-of-type a{
	display:block;
	width:170px;
	text-align:center;
	color:#fff;
	font-weight:600;
	background:#eb4e50;
}
nav li:last-of-type a:before{
	content:"";
	display:inline-block;
	width:18px;
	height:11px;
	background:url(../images/header-icon01.jpg) no-repeat;
	background-position:left center;
	background-size:100% auto;
	vertical-align:baseline;
	margin-right:5px;
}
header .logo{
	display:inline-block;
}

/* **********************sub page main visual******************* */
.main-visual{
	color:#fff;
	background:#234a83;
	height:320px;
	position:relative;
	line-height:1.1;
}
.main-visual::after{
	content:"";
	display:block;
	width:60%;
	height:100%;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:right top;
	position:absolute;
	right:0;
	top:0;
}
.page-title{
	text-align:center;	
	font-size:36px;
	font-weight:500;
	letter-spacing:0.05em;
	width:40%;
	padding-top:120px;
}
.page-title span{	
	font-size:18px;
	font-weight:normal;
	display:block;
	padding-top:0.3em;
}

/* ************************bread crumb********************** */
.bread-crumb li{
	line-height:3;
}
.bread-crumb li::after{
	content:">";	
	display:inline;
	margin-left:0.5em;
	margin-right:0.5em;
}
.bread-crumb li:last-of-type::after{
	display:none;
}
.bread-crumb a{
	color:#234a83;
}

/* ************************main********************** */
main.inner,main.outer{
	display:block;
	margin-bottom:120px;
}

.sec{
	padding-top:80px;
}
.p-txt01{
	line-height:2.5;
}
.sec-title{
	text-align:center;
	font-size:32px;
	line-height:1.1;
	color:#234a83;
	font-weight:500;
	letter-spacing:0.05em;
	margin-bottom:40px;
}
.sec-title span{
	font-size:18px;
	font-weight:normal;
	display:block;
	padding-top:0.3em;
	color:#333;
	font-weight:500;
}

th{
	font-weight:600;
	font-size:16px;
	text-align:left;
	width:30%;
	padding:20px;
	border-bottom:1px solid #aaa;
	line-height:2;
}
td{
	font-size:16px;
	width:70%;
	padding:20px;
	border-bottom:1px solid #aaa;
	line-height:1.5;
}

/* ************************contact banners********************** */
.contact-banners{
	text-align:center;
	background:#fff;
}
.contact-banners p{
	font-size:18px;
	line-height:1.4;
	padding-bottom:1em;
}
.contact-banners ul{
	font-size:0;
}
.contact-banners li{
	display:inline-block;
	padding:0 10px;
	width:360px;
	height:62px;
}
.contact-banners a{
	display:block;
	width:100%;
	line-height:62px;
	color:#fff;
	font-size:16px;	
	font-weight:600;
	letter-spacing:0.075em;
}
.contact-banners li:nth-of-type(1) a{
	background:#0d61a9;
}
.contact-banners li:nth-of-type(2) a{
	background:#eb4e50;
}
.contact-banners li:nth-of-type(1) a::before{
	content:"";
	display:inline-block;
	width:14px;
	height:18px;
	background:url(../images/tel-icon01.jpg) no-repeat;	
	background-position:center top;
	background-size:100% auto;
	vertical-align:middle;
	margin-right:10px;
}
.contact-banners li:nth-of-type(2) a::before{
	content:"";
	display:inline-block;
	width:20px;
	height:13px;
	background:url(../images/mail-icon01.jpg) no-repeat;	
	background-position:center top;
	background-size:100% auto;
	vertical-align:middle;
	margin-right:10px;
}

/* ************************footer********************** */
footer{
	background:#234a83;
	padding-top:60px;
}
footer .inner{
	padding-bottom:40px;
	font-size:12px;
}
footer *{
	color:#fff !important;
}
footer dl{

	margin-left:30px;
}
.copyrights{
	text-align:center;
	font-size:10px;
	line-height:3;
	background:#253964;
}
footer img{
	vertical-align:bottom;
}
.sitemap ul{
	margin-left:40px;
}
.sitemap li{
	margin-bottom:0.8em;
}
.sitemap li::before{
	content:"-";
	display:inline;
	padding-right:0.4em;
}


































/* ********************************************** */
/* **************レスポンシブスタイル************ */
/* ********************************************** */
@media screen and (max-width:767px){
    html {
        font-size: 62.5%;
    }
	

body{
	font-size:1.4rem;
}



.sp{
	display:block !important;
}
.sp-menu{
	display:block;
}
.pc{
	display:none;
}

.inner{
	width:100%;
	margin:0 auto;
	position:relative;	
	padding:0 1.5rem;
}
.outer{
	width:100%;
	min-width:100%;
	margin:auto;
}


/* ***********************header************************** */
header{
	padding-top:0.5rem;
	padding-bottom:1.4rem;
	border-top:0.5rem solid #0d61a9;
	height:7.2rem;
}
header h1{
	font-size:1.0rem;
	line-height:1.4;
	padding-bottom:0.5rem;
}
header .logo{
	width:8rem;
	display:block;
}
header .logo img{
	display:block;
	width:100%;
}

.sp-menu{
	width:2.5rem;
	position:absolute;
	right:1.5rem;
	top:2.8rem;
	z-index:9999;
}
.sp-menu span{
	display:block;
	width:100%;
	height:1px;
	position:relative;
	background:#234a83;
}
.sp-menu span:nth-of-type(2){
	margin-top:0.6rem;
}
.sp-menu span:nth-of-type(3){
	margin-top:0.6rem;
}

nav{
	position:fixed;
	right:-100%;
	top:0;
	background:rgba(255,255,255,0.95);
	width:100%;
	opacity:0;
	filter:alpha(opacity=0);
	height:100%;
	overflow:auto;
	padding:0 1.5rem;
	z-index:9999;
}
nav ul{
	padding-top:6rem;
}
nav li{
	margin-left:0;
	float:none;
	width:100%;
	padding:1.5rem 0;
	border-bottom:1px solid #dfdfdf;
}
nav a{
	line-height:2;
	width:100%;
	display:block;
}
nav li:last-of-type a{
	line-height:3;
	width:100%;
}
nav li:last-of-type a:before{
	content:"";
	display:inline-block;
	width:18px;
	height:11px;
	background:url(../images/header-icon01.jpg) no-repeat;
	background-position:left center;
	background-size:100% auto;
	vertical-align:baseline;
	margin-right:5px;
}
nav li:last-of-type{
	border:none;
}


/* ************************footer********************** */
footer{
	padding-top:2rem;
}
footer .inner{
	padding-bottom:1.5rem;
	font-size:1.2rem;
}
footer .logo{
	width:8rem;
	display:block;
	margin:auto;
	float:none;
}
footer .logo img{
	display:block;
	width:100%;
}
footer dl.f-left{
	margin-top:1.5rem;
	text-align:center;	
	line-height:1.8;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:2.5rem;
	float:none;
}
.copyrights{
	font-size:1rem;
}
footer img{
	vertical-align:bottom;
}
.sitemap{
	float:none;
}
.sitemap ul{
	margin-left:0;
	margin-right:1rem;
	float:none;
	width:100%;
	clear:both;
}
.sitemap li{
	float:left;
	margin-right:2rem;
	margin-bottom:1.5rem;
}
.sitemap li::before{
	content:"-";
	display:inline;
	padding-right:0.4em;
}



/* **********************sub page main visual******************* */
.main-visual{
	height:24rem;
}
.main-visual::after{
	content:"";
	display:block;
	width:100%;
	height:65%;
	background-size:cover;
	background-repeat:no-repeat;
	background-position:right top;
	position:absolute;
	right:0;
	bottom:0;
	top:auto;
}
.page-title{
	text-align:center;	
	font-size:2.2rem;
	width:100%;
	height:35%;
	padding-top:2rem;
}
.page-title span{	
	font-size:1.5rem;
}

/* ************************bread crumb********************** */
.bread-crumb li{
	line-height:3.5;
	font-size:1.2rem;
}

/* ************************main********************** */
main.inner,main.outer{
	margin-bottom:8rem;
}

.sec{
	padding-top:5.5rem;
}
.p-txt01{
	line-height:2;
}

th{
	font-size:1.4rem;
	width:100%;
	display:block;
	padding:1.5rem;
	border-bottom:none;
}
td{
	font-size:1.4rem;
	width:100%;
	display:block;
	padding:0 1.5rem 1.5rem;
}

.sec-title{
	font-size:2.4rem;
	margin-bottom:2rem;
}
.sec-title span{
	font-size:1.4rem;
}


/* ************************contact banners********************** */

.contact-banners p{
	font-size:1.5rem;
	line-height:1.5;
	padding-bottom:0;
}
.contact-banners ul{
	font-size:0;
	padding-top:1.5rem;
}
.contact-banners li{
	display:block;
	padding:0 0 1.5rem;
	width:100%;
	height:auto;

}
.contact-banners a{
	display:block;
	width:100%;
	line-height:5rem;
	font-size:1.4rem;	
}


}