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

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	color: #333;
	font-family: "Noto Sans JP","Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-weight: 400;
	line-height: 1.5;
}
a{
	color: #333;
	text-decoration: none;
}
li{
	list-style-type: none;
}
img{
	vertical-align: bottom;
}



.cf:after{
	content: "";
	display: block;
	clear: both;
	visibility: hidden;
}

.no-scroll{
	overflow: hidden;
}
::selection{
    background: #062865;
    color: #fff;
}


::-moz-selection {
    background: #062865;
    color: #fff;
}


@keyframes loading{
	0%{
		transform: translateX(-50%);
	}
	100%{
		transform: translateX(0%);
	}	

}

@keyframes btnLine1{
	0%{
		width: 100%;
	}
	50%{
		width: 0%;
	}
	100%{
		width: 100%;
	}	

}

.loading{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	z-index: 2500;
	opacity: 1;
}
.loading .loading-obj{
	display: inline-block;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%,-50%);
}
.loading .loading-obj img{
	width: 100%;
	height: auto;
}
.loading .loading-line{
	font-size: 0;
	display: inline-block;
	width: 100%;
	overflow: hidden;
}
.loading .loading-line span{
	display: block;
	width: 400%;
	background: linear-gradient(to right, #dce8fe, #062865, #dce8fe ,#062865 ,#dce8fe);
}

.loading.complete .loading-line span{
	background: #062865;
	animation: none;	
}

.loading.hide{
	opacity: 0;
	transition: opacity 300ms ease;
}
.loading.hide.end{
	display: none;
}


.btn-menu-open{
	transform: translate(100%,-100%);
	transition: transform 400ms ease;
}
.btn-menu-open.on{
	transform: translate(0,0);
}


.btn-pt{
	transform: translate(100%,100%);
	transition: transform 400ms ease;
}
.btn-pt.on{
	transform: translate(0,0);
}



.swiper-target .swiper-container{
	overflow: inherit;
}


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

	body {
		font-size: 18px;
		width: 100%;

	}
	.ignore-pc{
		display: none;
	}

	.wrap{
		width: 100%;
		overflow: hidden;
	}

	main{
		display: block;
		margin: 150px auto 150px;
		padding: 0 20px;
		max-width: 1200px;
	}
	#top main{
		margin: 450px auto 0;
	}


/* loading
------------------------------------------------------------*/

	.loading .loading-obj{
		width: 398px;
	}
	.loading .loading-line{
		height: 5px;
	}
	.loading .loading-line span{
		height: 5px;
		animation: loading 1000ms linear infinite;
	}


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

	.section-header{
		position: relative;
		padding: 0 0 60px;
		text-align: center;
	}
	.section-header .header-inner{
		display: inline-block;
	}
	.section-header span{
		position: relative;
		margin: 20px 0 0;
		display: block;
		width: 100%;
		text-align: center;
	}
	.section-header span:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		width: 50%;
		height: 1px;
		background: #af9340;
		z-index: 10;
	}
	.section-header span:after{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		right: 0;
		bottom: 0;
		width: 50%;
		height: 1px;
		background: #af9340;
		z-index: 10;
	}
	.section-header h2 i{
		display: block;
		transform-origin: top left;
	}
	.section-header span i{
		position: relative;
		display: inline-block;
		padding: 0 20px;
		color: #af9340;
		z-index: 20;
	}



/* contents
------------------------------------------------------------*/
	.lower{
		background: #f2f2f2;
	}
	.lower main{
		position: relative;
		z-index: 100;
	}
	.lower section{
		background: #fff;
	}
	.lower section + section{
		margin-top: 80px;
	}

	.sec-title h3{
		position: relative;
		height: 23px;
		line-height: 23px;
	}
	.sec-title h3 i{
		position: relative;
		display: inline-block;
		padding: 0 20px 0 0;
		background: #fff;
		z-index: 20;
	}
	.sec-title h3:after{
		position: absolute;
		content: "";
		display: block;
		margin: auto;
		top:0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background: #000;
		z-index: 10;
	}
	.sec-title h3 img{
		width: auto;
		height: 23px;
	}

	.list-date{
		font-weight: 700;
		color: #042666;
	}
	.sec-bd{
		position: relative;
		height: 23px;
	}
	.sec-bd:after{
		position: absolute;
		content: "";
		display: block;
		margin: auto;
		top:0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 2px;
		background: #f2f2f2;
		z-index: 10;
	}


/* gheader
------------------------------------------------------------*/

	#gheader{
		position: relative;
	}
	#gheader h1{
		position: absolute;
		top: 35px;
		left: 35px;
		z-index: 100;
	}


/* gnav
------------------------------------------------------------*/


	.btn-menu-open{
		position: fixed;
		top: 0;
		right: 0;
		width: 90px;
		height: 165px;
		z-index: 1500;
	}
	.btn-menu-open a{
		position: relative;
		display: block;
		width: 90px;
		height: 165px;
		z-index: 10;
	}
	.btn-menu-open:before{
		content: "";
		top: 0;
		right: 0;
		position: absolute;
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 165px 165px 0;
		border-color: transparent #042666 transparent transparent;
		z-index: 10;
	}
	.btn-menu-open a span{
		position: absolute;
		top: 20px;
		right: 20px;
		display: inline-block;
		z-index: 50;
		color: #fff;
		font-size: 12px;
		text-align: center;
	}
	.btn-menu-open a span em{
		position: relative;
		display: block;
		margin: 0 auto 10px;
		width: 30px;
		height: 14px;
	}
	.btn-menu-open a span em i{
		position: absolute;
		left: 0;
		display: block;
		width: 100%;
		height: 3px;
		background: #fff;
	}
	.btn-menu-open a span em i:nth-child(1){
		top: 0;
	}
	.btn-menu-open a span em i:nth-child(2){
		bottom: 0;
	}
	.btn-menu-open a:hover i:nth-child(1){
		animation: btnLine1 ease 400ms 1 100ms;
	}
	.btn-menu-open a:hover i:nth-child(2){
		animation: btnLine1 ease 400ms 1 200ms;
	}

	.btn-menu-close{
		position: fixed;
		top: 0;
		right: 0;
		width: 80px;
		height: 80px;
		z-index: 1500;
	}
	.btn-menu-close a{
		position: relative;
		display: block;
		width: 80px;
		height: 80px;
	}
	.btn-menu-close a span{
		position: absolute;
		margin: auto;
		top: 20px;
		right: 0;
		left: 0;
		display: inline-block;
		width: 100%;
		z-index: 50;
		color: #042666;
		font-size: 12px;
		text-align: center;
	}
	.btn-menu-close a span em{
		position: relative;
		display: block;
		margin: 0 auto 10px;
		width: 30px;
		height: 14px;
	}
	.btn-menu-close a span em i{
		position: absolute;
		left: 50%;
		top: 0;
		bottom: 0;
		width: 100%;
		height: 3px;
		background: #042666;
	}
	.btn-menu-close a span em i:nth-child(1){
		transform: translateX(-50%) rotate(45deg);
	}
	.btn-menu-close a span em i:nth-child(2){
		transform: translateX(-50%) rotate(-45deg);
	}
	.btn-menu-close a:hover i:nth-child(1){
		animation: btnLine1 ease 400ms 1 100ms;
	}
	.btn-menu-close a:hover i:nth-child(2){
		animation: btnLine1 ease 400ms 1 200ms;
	}



	#gnav{
		position: fixed;
		right: 0;
		top: 0;
		width: 530px;
		height: 100%;
		z-index: 2000;
		overflow: auto;
		transform: translateX(100%);
		box-sizing: border-box;
		background: #fff;
		border-left: 1px solid #f2f2f2; 
	}

	#gnav.set{
		transition: transform 300ms ease;
	}
	#gnav.on{
		transform: translateX(0%);
	}
	#gnav .gnav-inner{
		padding: 80px 0;
		background: #fff;		
	}

	#gnav ul a,
	#gnav ul span{
		position: relative;
		display: block;
		height: 50px;
		line-height: 50px;
		padding: 0 0 0 14%;
		color: #062865;
	}
	#gnav ul a.active,
	#gnav ul a:hover{
		color: #fff;
		background: #d51322;
	}
	#gnav ul span{
		opacity: 0.3;
	}
	#gnav ul li + li{
		margin-top: 10px;
	}
	#gnav ul a i{
		position: relative;
		padding: 0 35px 0 0;
	}
	#gnav ul a i:after{
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		margin: -8px 0 0;
		width: 19px;
		height: 16px;
		background: url(../img/icon_blank_bl.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}
	#gnav ul a:hover i:after{
		background: url(../img/icon_blank_wh.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}


	.nav-overlay{
		position: fixed;
		width: 100%;
		height: 100%;
		z-index: 1900;
		display: none;
	}
	.nav-overlay.on{
		display: block;
	}



/* gfooter
------------------------------------------------------------*/

	#gfooter{
		position: relative;
		margin-top: 230px;
		width: 100%;
	}
	.lower #gfooter{
		margin-top: 150px;
	}

/*	.lower .footer-inner-wrap{
		position: relative;
		padding-top: 45px;
		background: #032666;
		z-index: 10;
	}
*/

	.footer-inner-wrap{
		position: relative;
		padding-top: 45px;
		background: #032666;
		z-index: 10;
	}


	#gfooter .footer-inner{
		position: relative;
		margin: auto;
		padding: 0 10px;
		height: 630px;
		max-width: 1200px;
	}

	.footer-main{
		position: relative;
		z-index: 100;
	}
	.footer-logo{
		text-align: center;
	}


	.nav-footer{
		display: flex;
		margin-top: 100px;
	}
	.nav-footer ul{
		padding: 30px 0;
	}
	.nav-footer ul li + li{
		margin-top: 35px;
	}
	.nav-footer ul li a{
		position: relative;
		color: #fff;
		font-size: 16px;
	}
	.nav-footer  ul a i{
		position: relative;
		display: inline-block;
		padding: 0 35px 0 0;
	}
	.nav-footer  ul a i:after{
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		margin: -6px 0 0;
		width: 17px;
		height: 14px;
		background: url(../img/icon_blank_wh.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}


	.nav-footer ul li a:hover{
		text-decoration: underline;
	}
	.nav-footer ul li span{
		color: #5b688c;
		font-size: 16px;

	}
	.nav-footer ul + ul{
		margin-left: 60px;
		padding-left: 60px;
		border-left: 1px solid #2b487c;
	}

	#gfooter .social{
		position: absolute;
		top: 30px;
		right: 0;
		font-size: 0;
	}
	#gfooter .social li{
		display: inline-block;
	}
	#gfooter .social li + li{
		margin-left: 20px;
	}
	#gfooter .social li a{
		display: block;
	}
	#gfooter .social li a:hover{
		opacity: 0.7;
		transition: opacity 300ms ease;
	}
	#gfooter .social li a.tw{
		width: 25px;
		height: 20px;
		background: url(../img/icon_tw.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}
	#gfooter .social li a.fb{
		width: 23px;
		height: 23px;
		background: url(../img/icon_fb.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}
	#gfooter .social li a.insta{
		width: 23px;
		height: 23px;
		background: url(../img/icon_insta.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}

	#gfooter .copy{
		font-family: "Helvetica Neue", Arial, Meiryo, sans-serif;
		position: absolute;
		bottom: 60px;
		width: 100%;
		color: #fff;
		letter-spacing: 1px;
		font-size: 12px;
		text-align: center;
	}


	.btn-pt{
		position: fixed;
/*		position: absolute;
*/		right: 0;
		bottom: 0;
		width: 100px;
		height: 100px;
		z-index: 100;
	}
	.btn-pt a{
		position: relative;
		display: block;
		width: 100%;
		height: 100%;
	}
	.btn-pt a:before{
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 0 100px 100px;
		border-color: transparent transparent #fff transparent;
	}
	.btn-pt a:after{
		position: absolute;
		content: "";
		right: 20px;
		bottom: 20px;
		display: block;
		width: 22px;
		height: 14px;
		background: url(../img/arrow_pt.png) 50% 50% no-repeat;
		background-size: 100% 100%;
		z-index: 50;
		transition: transform 300ms ease;
	}
	.btn-pt a:hover:after{
		transform: translateY(-5px);
	}


	.btn{
		margin: 40px auto 0;
		width: 515px;
		height: 73px;
	}
	.btn a{
		position: relative;
		display: block;
		height: 73px;
		line-height: 73px;
		text-align: center;
		color: #fff;
		background: #d51322;
	}
	.btn a:hover{
		opacity: 0.7;
		transition: opacity 300ms ease;
	}



	.btn-link{
		margin: 40px auto 0;
		width: 515px;
		height: 73px;
	}
	.btn-link a{
		position: relative;
		display: block;
		height: 73px;
		line-height: 73px;
		text-align: center;
		color: #fff;
		background: #d51322;
	}
	.btn-link a:hover{
		opacity: 0.7;
		transition: opacity 300ms ease;
	}

	.btn-blank a:after{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		right: 30px;
		bottom: 0;
		width: 19px;
		height: 16px;
		background: url(../img/icon_blank_wh.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}


	.btn-more{
		margin: 0 auto;
		width: 515px;
		height: 63px;
	}
	.btn-more a{
		position: relative;
		display: block;
		height: 63px;
		line-height: 63px;
		text-align: center;
		color: #fff;
		background: #d51322;
	}
	.btn-more a:hover{
		opacity: 0.7;
		transition: opacity 300ms ease;
	}

	.btn-more a:after{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		right: 30px;
		bottom: 0;
		width: 10px;
		height: 16px;
		background: url(../img/arrow_wh_btn.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}



/* .news-list
------------------------------------------------------------*/

	.news-list{
		box-sizing: border-box;
	}
	.news-list figure{
		margin-top: 10px;
	}
	.news-list img{
		width: 100%;
		height: auto;
	}
	.news-list a{
		display: block;
	}
	.news-list a:hover{
		opacity: 0.7;
		transition: opacity 300ms ease;
	}
	.news-list span{
		font-weight: 700;
		color: #062865;
	}
	.news-list p{
		margin-top: 20px;
		font-weight: 500;
		line-height: 1.8;
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
	}
	.news-list-index .news-wrap{
		display: flex;
		flex-wrap: wrap;
		margin: 0 -15px;
	}
	.news-list-index .news-wrap .news-list{
		width: calc(100% / 3);
		padding: 0 15px;
		box-sizing: border-box;
	}
	.news-list-index .news-wrap .news-list:nth-child(n+4){
		margin-top: 30px;
	}
	.news-list-index .news-wrap .news-list p{
		margin-top: 20px;

	}


/* entry-btmlink
------------------------------------------------------------*/
	
	.entry-btmlink{
		margin-top: 60px;
	}
	.entry-btmlink li + li{
		margin-top: 20px;
	}
	.entry-btmlink li a{
		position: relative;
		padding-left: 60px;
		display: inline-block;
	}
	.entry-btmlink li a:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		display: block;
		width: 30px;
		height: 30px;
		background: #d51322 url(/shared/img/arrow_wh_l.png) 50% 50% no-repeat;
		background-size: 10px 16px;
		z-index: 10;

	}
	.entry-btmlink li a:hover{
		opacity: 0.7;
		transition: opacity 300ms ease;
	}



}


@media screen and (min-width: 801px) and (max-width: 1130px) {
	.nav-footer ul + ul{
		margin-left: 40px;
		padding-left: 40px;
	}

}


@media screen and  (min-width: 801px) and (max-width: 1040px) {


	.nav-footer ul{
		width: calc(100% / 4);
	}
	#gfooter .social {
		position: relative;
		top: inherit;
		right: inherit;
		margin-top: 55px;		
	}

	#gfooter .copy{
		position: relative;
		bottom: inherit;
		margin-top: 55px;
		text-align: left;
	}
	#gfooter .footer-inner {
		height: auto;
		padding: 0 20px 20px;
	}

}









@media screen and (max-width: 800px) {

	body {
		width: 100%;
		font-size: 12px;
	}

	.ignore-sp{
		display: none;
	}
	.wrap{
		position: relative;
		width: 100%;
		overflow: hidden;
	}



/* loading
------------------------------------------------------------*/

	.loading .loading-obj{
		width: 200px;
	}
	.loading .loading-line{
		height: 2px;
	}
	.loading .loading-line span{
		height: 2px;
		animation: loading 1000ms linear infinite;
	}



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

	.section-header{
		position: relative;
		padding: 0 0 30px;
		text-align: center;
	}
	.section-header .header-inner{
		display: inline-block;
	}
	.section-header span{
		position: relative;
		margin: 10px 0 0;
		display: block;
		width: 100%;
		text-align: center;
	}
	.section-header span:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		width: 50%;
		height: 1px;
		background: #af9340;
		z-index: 10;
	}
	.section-header span:after{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		right: 0;
		bottom: 0;
		width: 50%;
		height: 1px;
		background: #af9340;
		z-index: 10;
	}

	.section-header span i{
		position: relative;
		display: inline-block;
		padding: 0 10px;
		font-size: 9px;
		color: #af9340;
		z-index: 20;
	}
	.section-header h2 img{
		width: auto;
		height: 26px;
	}



/* contents
------------------------------------------------------------*/
	.lower{
		background: #f2f2f2;
	}
	.lower main{
		position: relative;
		padding: 0 15px 75px;
		z-index: 100;
	}
	.lower section{
		background: #fff;
		overflow: hidden;
	}
	.lower section + section{
		margin-top: 15px;
	}

	.sec-title h3{
		position: relative;
		height: 13px;
		line-height: 13px;
	}
	.sec-title h3 i{
		position: relative;
		display: inline-block;
		line-height: 1;
		padding: 0 10px 0 0;
		background: #fff;
		z-index: 20;
	}
	.sec-title h3:after{
		position: absolute;
		content: "";
		display: block;
		margin: auto;
		top:0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background: #000;
		z-index: 10;
	}
	.sec-title h3 img{
		width: auto;
		height: 13px;
		vertical-align: top;
	}
	
	.list-date{
		font-weight: 700;
		color: #042666;
		font-size: 13px;		
	}	

	.sec-bd{
		position: relative;
		height: 13px;
	}
	.sec-bd:after{
		position: absolute;
		content: "";
		display: block;
		margin: auto;
		top:0;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 1px;
		background: #f2f2f2;
		z-index: 10;
	}


/* gheader
------------------------------------------------------------*/

	#gheader{
		position: relative;
		height: 75px;
		z-index: 100;
	}
	#gheader h1{
		position: absolute;
		top: 50%;
		left: 15px;
		margin-top: -20px;
		z-index: 200;
	}
	#gheader h1 img{
		width: auto;
		height: 40px;
	}



/* gnav
------------------------------------------------------------*/

	.btn-menu-open{
		position: fixed;
		top: 0;
		right: 0;
		width: 50px;
		height: 100px;
		z-index: 1500;
	}
	.btn-menu-open a{
		position: relative;
		display: block;
		width: 50px;
		height: 100px;
		z-index: 10;
	}
	.btn-menu-open:before{
		content: "";
		top: 0;
		right: 0;
		position: absolute;
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 100px 100px 0;
		border-color: transparent #042666 transparent transparent;
		z-index: 10;
	}
	.btn-menu-open a span{
		position: absolute;
		top: 15px;
		right: 10px;
		display: inline-block;
		z-index: 50;
		color: #fff;
		font-size: 9px;
		text-align: center;
	}
	.btn-menu-open a span em{
		position: relative;
		display: block;
		margin: 0 auto 10px;
		width: 26px;
		height: 9px;
	}
	.btn-menu-open a span em i{
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background: #fff;
	}
	.btn-menu-open a span em i:nth-child(1){
		top: 0;
	}
	.btn-menu-open a span em i:nth-child(2){
		bottom: 0;
	}


	.btn-menu-close{
		position: fixed;
		top: 0;
		right: 0;
		width: 60px;
		height: 60px;
		z-index: 1500;
	}
	.btn-menu-close a{
		position: relative;
		display: block;
		width: 60px;
		height: 60px;
	}
	.btn-menu-close a span{
		position: absolute;
		margin: auto;
		top: 10px;
		right: 0;
		left: 0;
		display: inline-block;
		width: 100%;
		z-index: 50;
		color: #042666;
		font-size: 9px;
		text-align: center;
	}
	.btn-menu-close a span em{
		position: relative;
		display: block;
		margin: 0 auto 5px;
		width: 20px;
		height: 20px;
	}
	.btn-menu-close a span em i{
		position: absolute;
		margin: auto;
		left: 0;
		top: 0;
		bottom: 0;
		width: 100%;
		height: 2px;
		background: #042666;
	}
	.btn-menu-close a span em i:nth-child(1){
		transform: rotate(45deg);
	}
	.btn-menu-close a span em i:nth-child(2){
		transform: rotate(-45deg);
	}



	#gnav{
		position: fixed;
		right: 0;
		top: 0;
		width: calc(100% - 30px);
		height: 100%;
		z-index: 2000;
		overflow: auto;
		transform: translateX(100%);
		box-sizing: border-box;
		background: #fff;
		border-left: 1px solid #f2f2f2; 
	}

	#gnav.set{
		transition: transform 300ms ease;
	}
	#gnav.on{
		transform: translateX(0%);
	}
	#gnav .gnav-inner{
		padding: 60px 0;
		background: #fff;		
	}

	#gnav ul a,
	#gnav ul span{
		display: block;
		height: 36px;
		line-height: 36px;
		padding: 0 0 0 8%;
		color: #062865;
		font-size: 16px;
	}
	#gnav ul a.active{
		color: #fff;
		background: #d51322;
	}
	#gnav ul span{
		opacity: 0.3;
	}
	#gnav ul li + li{
		margin-top: 10px;
	}

	#gnav ul a i{
		position: relative;
		padding: 0 30px 0 0;
	}
	#gnav ul a i:after{
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		margin: -6px 0 0;
		width: 18px;
		height: 14px;
		background: url(../img/icon_blank_bl.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}



	.nav-overlay{
		position: fixed;
		width: 100%;
		height: 100%;
		z-index: 1900;
		display: none;
	}
	.nav-overlay.on{
		display: block;
	}


/* gfooter
------------------------------------------------------------*/

	#gfooter{
		position: relative;
		margin-top: 75px;
		width: 100%;
		background: #062865;
	}
	#gfooter:after{
		content: "";
		top: -10px;
		display: block;
		position: absolute;
		width: 100%;
		height: 100%;
		background: #062865;
		z-index: 10;
	}

	#top #gfooter{
		margin-top: 10px;
		border-top: 2px solid #fff;
	}



	.footer-inner-wrap{
		position: relative;
		padding-top: 25px;
		z-index: 20;
	}

	#gfooter .footer-inner{
		position: relative;
		margin: auto;
		padding: 0 25px 35px;
		z-index: 30;
	}
	.footer-main{
		position: relative;
		z-index: 100;
	}
	.footer-logo{
		padding: 0 60px;
		text-align: center;
	}
	.footer-logo img{
		width: 100%;
		height: auto;
	}


	.nav-footer{
		margin-top: 40px;
	}
	.nav-footer ul li + li{
		margin-top: 20px;
	}
	.nav-footer ul li a{
		color: #fff;
		font-size: 16px;
	}
	.nav-footer  ul a i{
		position: relative;
		display: inline-block;
		padding: 0 35px 0 0;
	}
	.nav-footer  ul a i:after{
		content: "";
		position: absolute;
		top: 50%;
		right: 0;
		margin: -6px 0 0;
		width: 17px;
		height: 14px;
		background: url(../img/icon_blank_wh.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}


	.nav-footer ul li span{
		color: #5b688c;
		font-size: 16px;

	}
	.nav-footer ul + ul{
		margin-top: 20px;		
	}
	#gfooter .social{
		margin-top: 55px;		
		font-size: 0;
	}
	#gfooter .social li{
		display: inline-block;
	}
	#gfooter .social li + li{
		margin-left: 20px;
	}
	#gfooter .social li a{
		display: block;
	}
	#gfooter .social li a.tw{
		width: 25px;
		height: 20px;
		background: url(../img/icon_tw.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}
	#gfooter .social li a.fb{
		width: 23px;
		height: 23px;
		background: url(../img/icon_fb.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}
	#gfooter .social li a.insta{
		width: 23px;
		height: 23px;
		background: url(../img/icon_insta.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}

	#gfooter .copy{
		font-family: "Helvetica Neue", Arial, Meiryo, sans-serif;
		margin-top: 55px;		
		width: 100%;
		color: #fff;
		letter-spacing: 1px;
		font-size: 12px;
	}


	.btn-pt{
		position: fixed;
/*		position: absolute;
*/		right: 0;
		bottom: 0;
		width: 75px;
		height: 75px;
		z-index: 100;
	}
	.btn-pt a{
		position: relative;
		display: block;
		width: 100%;
		height: 100%;
	}
	.btn-pt a:before{
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 0 75px 75px;
		border-color: transparent transparent #fff transparent;
	}
	.btn-pt a:after{
		position: absolute;
		content: "";
		right: 15px;
		bottom: 20px;
		display: block;
		width: 15px;
		height: 10px;
		background: url(../img/arrow_pt.png) 50% 50% no-repeat;
		background-size: 100% 100%;
		z-index: 50;
		transition: transform 300ms ease;
	}


	.btn-link{
		margin: 20px auto 0;
		width: 100%;
		height: 45px;
	}
	.btn-link a{
		position: relative;
		display: block;
		height: 45px;
		line-height: 45px;
		text-align: center;
		color: #fff;
		background: #d51322;
	}
	.btn-link a:after{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		right: 15px;
		bottom: 0;
		width: 17px;
		height: 14px;
		background: url(../img/icon_blank_wh.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}



	.btn-more{
		margin: 0 auto;
		width: 100%;
		height: 45px;
	}
	.btn-more a{
		position: relative;
		display: block;
		height: 45px;
		line-height: 45px;
		font-size: 13px;
		text-align: center;
		color: #fff;
		background: #d51322;
	}

	.btn-more a:after{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		right: 15px;
		bottom: 0;
		width: 8px;
		height: 12px;
		background: url(../img/arrow_wh_btn.png) 50% 50% no-repeat;
		background-size: 100% 100%;
	}


/* .news-list
------------------------------------------------------------*/


	.news-list figure{
		margin-top: 10px;
	}
	.news-list img{
		width: 100%;
		height: auto;
	}
	.news-list a{
		display: block;
	}

	.news-list span{
		font-weight: 700;
		color: #062865;
	}
	.news-list p{
		margin-top: 20px;
		font-weight: 500;
		line-height: 1.8;
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
	}
	.news-list-index .news-wrap{
		display: flex;
		flex-wrap: wrap;
		margin: 0 -6px;
	}
	.news-list-index .news-wrap .news-list{
		width: calc(100% / 2);
		padding: 0 6px;
		box-sizing: border-box;
	}
	.news-list-index .news-wrap .news-list:nth-child(n+3){
		margin-top: 25px;
	}
	.news-list-index .news-wrap .news-list p{
		margin-top: 10px;
		display: -webkit-box;
		overflow: hidden;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;		
	}
	.news-list-index .news-wrap .news-list .list-date{
		font-size: 10px;
	}
	.news-list-index .news-wrap .news-list figure{
		margin-top: 8px;
	}
	

	
/* entry-btmlink
------------------------------------------------------------*/
	
	.entry-btmlink{
		margin-top: 40px;
	}
	.entry-btmlink li + li{
		margin-top: 15px;
	}
	.entry-btmlink li a{
		position: relative;
		padding-left: 35px;
		display: inline-block;
	}
	.entry-btmlink li a:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		left: 0;
		display: block;
		width: 23px;
		height: 23px;
		background: #d51322 url(/shared/img/arrow_wh_l.png) 50% 50% no-repeat;
		background-size: 8px 12px;
		z-index: 10;

	}


}

@media screen and (max-width: 374px) {


	#gheader h1{
		position: absolute;
		top: 50%;
		left: 15px;
		margin-top: -15px;
	}
	#gheader h1 img{
		width: auto;
		height: 30px;
	}
	#gnav ul a,
	#gnav ul span{
		font-size: 14px;
	}

}





