/* ===============================================
+ リセット
----------------------------------------------- */
/* html5doctor.com Reset Stylesheet v1.6.1 - Last Updated: 2010-09-17 | Author: Richard Clark - http://richclarkdesign.com - Twitter: @rich_clark */
article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section{display:block}a,hr{padding:0}abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:0 0}ins,mark{background-color:#ff9;color:#000}body{line-height:1}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a{margin:0;font-size:100%;vertical-align:baseline;background:0 0}ins{text-decoration:none}mark{font-style:italic;font-weight:700}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{height:1px;border:0;border-top:1px solid #ccc;margin:1em 0}input,select{vertical-align:middle}

/* ===============================================
+ 初期設定
----------------------------------------------- */
html{
	font-size:10px;
	width:100%;
	height:100%;
}
body{
	font-family:Meiryo, sans-serif;
	font-size:1.59rem;
	line-height:1.7;
	color:#333;
	font-feature-settings:"palt" 1;
	-webkit-font-smoothing:antialiased;
	-webkit-text-decoration-skip:none;
	width:100%;
	height:100%;
}
img{
	vertical-align:top;
	border:0;
	width:100%;
	height:auto;
	display:block;
}
sup{
	font-size:60%;
	vertical-align:text-top;
}
sub{
	font-size:60%;
	vertical-align:baseline;
}
b,
strong{
	font-weight:bold;
}
u{
	text-decoration:underline;
}
input, button, textarea, select{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	font-family:inherit;
	font-size:100%;
}
select::-ms-expand{
	display:none;
}
table{
	border-collapse:collapse;
}
a{
	color:#005bac;
	text-decoration:underline;
}
a:visited{
	text-decoration:none;
}
a:hover{
	transition:opacity 0.3s ease 0s;
	opacity: 0.6;
}
.mt30 {
	margin-top: 30px;
}
.mt10 {
	margin-top: 10px;
}
.w50 {
	width: 50%;
}
.ma0 {
	margin: 0 auto;
}

@media (min-width:768px) and (max-width:1260px){
}
@media (max-width:767px){
	body{
		font-size:3.75vw;
		line-height:1.71;
	}
	.lh {
		height: auto;
	}
}


/* ===============================================
+ 基礎パーツ
----------------------------------------------- */
/* ページ
----------------------------------------------- */
.oPage{
	position:relative;
	width:100%;
	height:100%;
	padding-top:75px;
	box-sizing:border-box;
	min-width:1200px;
}
@media (max-width:767px){
	.oPage{
		min-width:320px;
		padding-top:16.93%;
	}
}

/* ヘッダー
----------------------------------------------- */
.oHeader{
	position:fixed;
	left:0;
	right:0;
	top:0;
	z-index:9000;
	width:100%;
	height:74px;
	overflow:visible;
	background:#fff;
	border-bottom:solid 1px #fff;
	box-shadow: 2px 2px 10px 1px rgba(0,0,0,0.2);
}
.oHeader_inner{
	margin:0 auto;
	width:1200px;
	height:100%;
	position:relative;
}
.oHeader_logo{
	position:absolute;
	left:0;
	top:10px;
	width:930px;
}
.oHeader_logo > a{
	position:absolute;
	display:block;
	text-decoration:none;
	color:#333;
	transition:opacity 0.5s ease 0s;
}
.oHeader_logo > a > img{
	width:100%;
	height:auto;
}
.oHeader_logo > a:hover{
	opacity:0.65;
}
.oHeader_logo > a:nth-child(1){
	left:0;
	width:288px;
}
.oHeader_logo > a:nth-child(2){
	display:block;
	right:0;
	top:10px;
	font-weight:bold;
	font-size:2rem;
}
.oHeader_langMenu{
	position:absolute;
	right:0;
	top:15px;
	width: 120px;
	height: 40px;
	display:block;
	background-color: #2a78b4;
}
.oHeader_langMenu > a{
	color: #fff;
	display:flex;
	width:100%;
	height:100%;
	align-items:center;
	justify-content:center;
	text-decoration: none;
}

@media (max-width:767px){
	.oHeader{
		height:0;
		padding-top:16.93%;
		border-bottom:solid 0.313vw #ebebeb;
		box-shadow:0 0 1.25vw 0 rgba(0,0,0,0.1);
	}
	.oHeader_inner{
		margin:0;
		width:100%;
		position:absolute;
		left:0;
		top:0;
	}
	.oHeader_logo{
		left:0;
		top:0;
		width:80%;
		height:100%;
		padding:3.25% 3.25% 0;
		box-sizing:border-box;
	}
	.oHeader_logo > a{
		position:static;
	}
	.oHeader_logo > a:nth-child(1){
		width:50%;
	}
	.oHeader_logo > a:nth-child(2){
		font-size:2.5vw;
		padding-top:0.2em;
	}
	.oHeader_langMenu{
		width:17.19%;
		height:100%;
		position:absolute;
		right:0;
		top:0;
	}
}

/* メニュー
----------------------------------------------- 
.oMenu{
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	z-index:9000;
	overflow:hidden;
	display:none;
}
.oMenu_inner{
	position:absolute;
	right:-100%;
	top:0;
	bottom:0;
	overflow:auto;
	width:100%;
	transition:right 0.5s ease 0s;
	background:#fff;
}
.oMenu.sOpen .oMenu_inner{
	right:0;
}
.oMenu_close{
	background:#fff;
}
.oMenu_close > a{
	margin-left:auto;
	display:flex;
	width:17.19vw;
	height:17.19vw;
	justify-content:center;
	align-items:center;
}
.oMenu_close > a > img{
	width:10vw;
	height:auto;
}
.oMenu_sitemap div{
	position:relative;
}
.oMenu_sitemap a{
	color:#fff;
	display:block;
	text-decoration:none;
	position:relative;
}
.oMenu_sitemap a.sHere{
	background:#1c1c1c !important;
}
.oMenu_sitemap li > a:after{
	content:"";
	position:absolute;
	right:5.6%;
	top:0;
	bottom:0;
	margin:auto 0;
	width:3vw;
	height:100%;
	background:url(../img/ico_arw04.png) no-repeat left center;
	background-size:100% auto;
}
.oMenu_sitemap a.oMenu_sitemap_parent_btn{
	position:absolute;
	display:block;
	height:100%;
	width:15%;
	right:0;
	top:0;
	background:url(../img/ico_plus.png) no-repeat center center;
	background-size:34% auto;
}
.oMenu_sitemap a.oMenu_sitemap_parent_btn.sOpen{
	background-image:url(../img/ico_minus.png);
}
.oMenu_sitemap a.oMenu_sitemap_parent_btn > img{
	display:none;
}
.oMenu_sitemap ul{
	list-style-type:none;
}
.oMenu_sitemap ul ul{
	display:none;
}
.oMenu_sitemap > ul{
	list-style-type:none;
}
.oMenu_sitemap > ul > li{
	border-top:solid 0.313vw #fff;
}
.oMenu_sitemap > ul > li > a,
.oMenu_sitemap > ul > li > div > a:first-child{
	padding:3.91% 0 3.75% 4.69%;
	background:#2a78b4;
}
.oMenu_sitemap > ul > li > ul{
	border-top:solid 0.313vw #fff;
}
.oMenu_sitemap > ul > li > ul > li + li{
	border-top:solid 0.313vw #fff;
}
.oMenu_sitemap > ul > li > ul > li > a,
.oMenu_sitemap > ul > li > ul > li > div > a:first-child{
	background:#76b0dd;
	padding:4.22% 0 3.44% 4.69%;
	font-size:3.75vw;
}
.oMenu_sitemap > ul > li > ul > li > ul{
	border-top:solid 0.313vw #fff;
}
.oMenu_sitemap > ul > li > ul > li > ul > li + li{
	border-top:solid 0.313vw #fff;
}
.oMenu_sitemap > ul > li > ul > li > ul > li > a{
	background:#76b0dd;
	padding:3.75% 0 3.91% 7.81%;
	font-size:3.75vw;
}
@media (min-width:768px){
	.oMenu{
		display:none !important;
	}
}
*/
/* メインコンテンツ
----------------------------------------------- */
.oContents{
	display:block;
}
.oContents > *{
	margin:0 auto;
	width:1180px;
}
@media (max-width:767px){
	.oContents > *{
		width:93.75%;
	}
}

/* ページタイトル
----------------------------------------------- */
.oPt{
	font-size:3rem;
	color:#2a78b4;
	line-height:1.3;
	padding:48px 0 47px;
}
.oPt > span {
	font-size:2rem;
}
@media (max-width:767px){
	.oPt{
		font-size:6.4vw;
		padding:8% 0 7%;
	}
}

/* パンくず
----------------------------------------------- */
.oLocus{
	width:100%;
	background:#e3e3e3;
	font-size:1.4rem;
}
.oLocus a{
	color:#333;
}
.oLocus > p{
	margin:0 auto;
	box-sizing:border-box;
	padding:11px 0;
	width:1180px;
}
.oLocus_into{
	padding:0 0.5em;
}
@media (max-width:767px){
	.oLocus{
		font-size:3.75vw;
	}
	.oLocus a{
		color:#333;
	}
	.oLocus > p{
		width:93.75%;
		padding:2% 0;
	}
	.oLocus_into{
		padding:0 0.5em;
	}
}

/* フッター
----------------------------------------------- */
.oFooter{
    color: #fff;
    margin-top: 15px;
    padding-top: 10px;
    background: #242424;
}
.oFooter a{
	color:#fff;
	text-decoration: none;
}
/*
.oFooter_bnr{
	padding:70px 0 70px;
	border-top:solid 1px #465270;
	background:#fff;
}
*/
.oFooter_bnr > ul{
	list-style-type:none;
	margin:0 auto;
	width:530px;
}
.oFooter_bnr > ul > li{
	width:100%;
}
.oFooter_bnr > ul > li > a{
	display:block;
	transition:opacity 0.5s ease 0s;
}
.oFooter_bnr > ul > li > a:hover{
	opacity:0.65;
}
.oFooter_bnr > ul > li > a > img{
	display:block;
}
.oFooter_sitemap{
	padding: 50px 0;
	overflow: hidden;
	line-height:1.5;
	width:1200px;
	margin: 0 auto;
}
.oFooter_sitemap > ul{
	width:970px;
	list-style-type:none;
	float: left;
	display:-ms-grid;
	display:grid;
	-ms-grid-columns:70% 5% 25%;
	grid-template-columns:70% 5% 25%;
	-ms-grid-rows:auto auto auto auto auto 1fr;
	grid-template-rows:auto auto auto auto auto 1fr;
}

.oFooter_sitemap > ul > li:nth-child(1){
	-ms-grid-column:1;
	-ms-grid-column-span:1;
	grid-column:1 / 2;
	-ms-grid-row:1;
	-ms-grid-row-span:6;
	grid-row:1 / 7;
}
.oFooter_sitemap > ul > li:nth-child(n+2){
	-ms-grid-column:3;
	-ms-grid-column-span:1;
	grid-column:3 / 4;
	padding-bottom:16px;
}
.oFooter_sitemap > ul > li:nth-child(3){
	-ms-grid-row:2;
	-ms-grid-row-span:1;
	grid-row:2 / 3;
}
.oFooter_sitemap > ul > li:nth-child(4){
	-ms-grid-row:3;
	-ms-grid-row-span:1;
	grid-row:3 / 4;
}
.oFooter_sitemap > ul > li:nth-child(5){
	-ms-grid-row:4;
	-ms-grid-row-span:1;
	grid-row:4 / 5;
}
.oFooter_sitemap > ul > li:nth-child(6){
	-ms-grid-row:5;
	-ms-grid-row-span:1;
	grid-row:5 / 6;
}
.oFooter_sitemap > ul > li:nth-child(7){
	-ms-grid-row:6;
	-ms-grid-row-span:1;
	grid-row:6 / 7;
}
.oFooter_sitemap > ul > li > a{
	font-size:1.65rem;
	display:inline-block;
	padding-left:25px;
	background:url(../img/ico_arw02.svg) no-repeat left 0.2em;
	background-size:9px auto;
}
.oFooter_sitemap > ul > li > ul{
	list-style-type:none;
	font-size:1.35rem;
	padding-left:25px;
	margin-top:22px;
	display:flex;
	flex-wrap:wrap;
}
.oFooter_sitemap > ul > li > ul > li{
	width:50%
}
.oFooter_sitemap > ul > li > ul > li:nth-child(n+3){
	padding-top:12px;
}
.oFooter_sitemap > div{
	float: right;
	width: 230px;
}
.oFooter_group{
	margin:30px auto 45px;
	width:1200px;
	font-size:1.02rem;
	box-sizing:border-box;
}
.oFooter_group > ul:first-child{
	border-top:solid 1px #a0a0a0;
	padding-top: 12px;
}
.oFooter_group > ul:last-child{
	border-bottom:solid 1px #a0a0a0;
	padding-bottom: 12px;
}
.oFooter_group > ul{
	list-style-type:none;
	display:flex;
	justify-content:center;
	width:100%;
	padding:5px 0;
}
.oFooter_group > ul > li + li{
	padding-left:1.5em;
}
.oFooter_link{
	margin:0 auto;
	width:1200px;
	font-size:1.4rem;
	padding:30px 0;
}
.oFooter_link > ul{
	list-style-type:none;
	display:flex;
	justify-content:center;
	width:100%;
	line-height:1;
}
.oFooter_link > ul > li + li{
	border-left:solid 1px #fff;
	padding-left:20px;
	margin-left:20px;
}
.oFooter_copy{
	text-align:center;
	color:#fff;
	font-size:1.2rem;
	padding:11px 0 10px;
	background:#2a78b4;
}
.pHome .oFooter{
	margin-top:70px;
}
@media (max-width:767px){
	.oFooter{
		margin-top:15%;
	}
	.oFooter_bnr{
		width:100%;
		padding:10% 0;
		border-top-width:0.313vw;
	}
	.oFooter_bnr > ul{
		list-style-type:none;
		margin:0 auto;
		width:60%;
	}
	.oFooter_bnr > ul > li{
		width:100%;
	}
	.oFooter_bnr > ul > li + li{
		margin-top:5%;
	}
	.oFooter_bnr > ul > li > a{
		display:block;
		transition:opacity 0.5s ease 0s;
	}
	.oFooter_bnr > ul > li > a.vBd{
		border:solid 0.313vw #c2c2c2;
	}
	.oFooter_bnr > ul > li > a:hover{
		opacity:0.65;
	}
	.oFooter_bnr > ul > li > a > img{
		display:block;
	}
	.oFooter_sitemap{
		display:none;
	}
	.oFooter_group{
		margin:0;
		width:100%;
		font-size:3.44vw;
		padding:7% 6.25% 0;
		border-top-width:0.156vw;
		border-bottom-width:0.156vw;
	}
	.oFooter_group > ul:first-child{
		border:none;
	}
	.oFooter_group > ul:last-child{
		border:none;
	}
	.oFooter_group > ul{
		display:block;
		padding:0;
		border:none;
		margin-bottom: 1em;
	}
	.oFooter_group > ul > li + li{
		padding:1em 0 0 0;
	}
	.oFooter_group > ul > li > a,
	.oFooter_group > ul > li > span{
		display:inline-block;
		position:relative;
		padding-left:1.5em;
	}
	.oFooter_group > ul > li > a:before{
		content:"";
		display:block;
		width:0;
		height:0;
		border-left:solid 0.5em #fff;
		border-top:solid 0.4em transparent;
		border-bottom:solid 0.4em transparent;
		position:absolute;
		top:0.45em;
		left:0;
	}
	.oFooter_link{
		width:90%;
		font-size:3.75vw;
		padding:6.25% 0;
	}
	.oFooter_link > ul{
		display:inline-block;
	}
	.oFooter_link > ul > li:first-child{
		border-left:1px solid #fff;
	}
	.oFooter_link > ul > li{
		border-top:1px solid #fff;
		border-right:1px solid #fff;
		padding: 18px 0;
		margin:0;
	}
	.oFooter_link > ul > li:last-child{
		border-bottom:1px solid #fff;
	}
	.oFooter_link > ul > li + li {
		padding-left: 0;
		margin-left: 0;
	}
	.oFooter_link > ul > li a{
		display: block;
		margin-left: 14px;
	}
	.oFooter_copy{
		font-size:2.6vw;
		padding:3.2% 2% 3.13%;
		text-align:left;
		box-sizing:border-box;
	}
	.pHome .oFooter{
		margin-top:10.94%;
	}
}

/* ページトップへ
----------------------------------------------- */
.oGotop{
	position:fixed;
	right:0;
	bottom:0;
	width:50px;
	height:50px;
	z-index:9000;
	transition:opacity 0.5s ease 0s;
}
.oGotop:hover{
	opacity:0.65;
}
.oGotop > a{
	display:block;
	width:100%;
	height:100%;
}
.oGotop > a > img{
	width:100%;
	height:auto;
}
@media (max-width:767px){
	.oGotop{
		width:12.5vw;
		height:12.5vw;
	}
}


/* ===============================================
+ 中面パーツ：メインビジュアル系
----------------------------------------------- */
/* メインビジュアル 01
----------------------------------------------- */
.oMv01{
	position:relative;
	height:442px;
	overflow:hidden;
	width:100%;
	margin-bottom: 80px;
}
.oMv01_img{
	width:1600px;
	position:absolute;
	left:-500px;
	right:-500px;
	top:0;
	margin:0 auto;
}
.oMv01_txt{
	position:relative;
	color:#fff;
	width:1200px;
	margin:0 auto;
	box-sizing:border-box;
	padding:165px 12px 0;
}
.oMv01_txt_01,
.oMv01_txt_02{
	display:block;
}
.oMv01_txt_01{
	font-size:3.8rem;
	text-shadow:
		0 0 0.2em rgba(0,0,0,0.5),
		0 0 0.1em rgba(0,0,0,0.2);
}
.oMv01_txt_02{
	font-size:2.3rem;
	text-shadow:
		0 0 0.2em rgba(0,0,0,0.5),
		0 0 0.1em rgba(0,0,0,0.2);
}
@media (max-width:767px){
	.oMv01{
		position:relative;
		height:auto;
	}
	.oMv01_img{
		width:100%;
		position:static;
	}
	.oMv01_txt{
		position:absolute;
		left:0;
		top:0;
		margin:0;
		padding:0;
		width:100%;
		height:100%;
		display:flex;
		flex-wrap:wrap;
		align-content:center;
	}
	.oMv01_txt_01,
	.oMv01_txt_02{
		width:100%;
		text-align:center;
	}
	.oMv01_txt_01{
		font-size:5.6vw;
	}
	.oMv01_txt_02{
		font-size:4.38vw;
		padding-top:1em;
	}
}


/* ===============================================
+ 中面パーツ：セクション系
----------------------------------------------- */
/* セクション 01
----------------------------------------------- */
.oSct01{
	width:100%;
}
.oSct01 > *{
	margin:0 auto;
	width:1180px;
}
.oSct01 + .oSct01{
	margin-top:90px;
}
.oSct01#News + .oSct01{
	margin-top:50px;
}
.oMv01 + .oSct01{
	margin-top:80px;
}
@media (max-width:767px){
	.oMv01{
		margin-bottom: 6vw;
	}
	.oSct01 > *{
		width:93.75%;
	}
	.oMv01 + .oSct01{
		margin-top:9.38vw;
	}
	.oSct01 + .oSct01{
		margin-top:12vw;
	}
	.oSct01#News + .oSct01{
		margin-top:9.38vw;
	}
}

/* セクション 02
----------------------------------------------- */
.oSct02{
	width:100%;
}
.oSct02 > *{
	margin:0 auto;
	width:1148px;
}
.oSct02 + .oSct02,
.oTbl03 + .oSct02{
	margin-top:124px;
}
.oLocus + .oSct02,
.oImg + .oSct02{
	margin-top:40px;
}
@media (max-width:767px){
	.oSct02 > *{
		width:93.75%;
	}
	.oSct02 + .oSct02,
	.oTbl03 + .oSct02{
		margin-top:9vw;
	}
	.oLocus + .oSct02,
	.oImg + .oSct02{
		margin-top:6%;
	}
}

/* セクション 03
----------------------------------------------- */
.oSct03{
	width:100%;
}
.oSct03 > *{
	margin:0 auto;
	width:1148px;
}
.oHd02 + .oSct03{
	margin-top:20px;
}
.oLocus + .oSct03{
	margin-top:40px;
}
.oSct03 + .oSct03{
	margin-top:57px;
}
.oSet01 + .oSct03{
	margin-top:124px;
}
@media (max-width:767px){
	.oSct03 > *{
		width:93.75%;
	}
	.oHd02 + .oSct03{
		margin-top:3%;
	}
	.oLocus + .oSct03{
		margin-top:6%;
	}
	.oSct03 + .oSct03{
		margin-top:8%;
	}
	.oSet01 + .oSct03{
		margin-top:9vw;
	}
}


/* ===============================================
+ 中面パーツ：見出し系
----------------------------------------------- */
/* 見出し 01
----------------------------------------------- */
.oHd01{
	font-size:3rem;
	color:#2a78b4;
	font-weight:normal;
	max-width:100%;
	box-sizing:border-box;
	font-weight: bold;
}
@media (max-width:767px){
	.oHd01{
		font-size:8.13vw;
	}
}

/* 見出し 02
----------------------------------------------- */
.oHd02{
	font-size:2.5rem;
	width:1180px;
	max-width:100%;
	box-sizing:border-box;
	padding-left:26px;
	background:url(../img/ico_sq01.png) no-repeat left 0.3em;
	background-size:16px auto;
}
@media (max-width:767px){
	.oHd02{
		width:93.75%;
		font-size:5.63vw;
		background-size:0.8em auto;
		padding-left:1.3em;
	}
}

/* 見出し 03
----------------------------------------------- */
.oHd03{
	max-width:100%;
	font-size:1.6rem;
	font-weight:bold;
	border-bottom:solid 1px #1d1d1d;
}
@media (max-width:767px){
	.oHd03{
		font-size:4.6vw;
		border-bottom-width:0.313vw;
	}
}


/* ===============================================
+ 中面パーツ：テキスト系
----------------------------------------------- */
/* テキスト
----------------------------------------------- */
.oTxt{
	max-width:100%;
}
.oHd02 + .oTxt{
	margin-top:10px;
}
.oHd03 + .oTxt{
	margin-top:30px;
}
@media (max-width:767px){
	.oHd02 + .oTxt{
		margin-top:3vw;
	}
	.oHd03 + .oTxt{
		margin-top:3vw;
	}
}

/* 注記テキスト
----------------------------------------------- */
.oTxtNote{
	max-width:100%;
	display:table;
}
.oTxtNote > span{
	display:table-cell;
	white-space:nowrap;
}
.oTxtNote > span:last-child{
	width:100%;
	white-space:normal;
}
.oHd02 + .oTxtNote{
	margin-top:10px;
}
.oHd03 + .oTxtNote{
	margin-top:30px;
}
@media (max-width:767px){
	.oHd02 + .oTxtNote{
		margin-top:3vw;
	}
	.oHd03 + .oTxtNote{
		margin-top:3vw;
	}
}

/* テキストリスト
----------------------------------------------- */
.oTxtList{
	list-style-type:none;
	max-width:100%;
}
.oTxtList > li{
	padding-left:1em;
	position:relative;
}
.oTxtList > li:before{
	content:"\02022";
	display:block;
	position:absolute;
	top:0;
	left:0;
}
.oTbl02 .oTxtList:nth-child(n+2){
	margin-top:0.5em;
}
.oHd02 + .oTxtList{
	margin-top:10px;
}
@media (max-width:767px){
	.oTxtList{
		max-width:100%;
		margin-top: 5px;
		margin-bottom: 5px;
	}
	.oHd02 + .oTxtList{
		margin-top:3vw;
	}
}


/* ===============================================
+ 中面パーツ：テーブル系
----------------------------------------------- */
/* テーブル 01
----------------------------------------------- */
.oTbl01{
	max-width:100%;
}
.oTbl01 > table{
	width:100%;
	border-collapse:collapse;
}
.oTbl01 > table th,
.oTbl01 > table td{
	vertical-align:top;
	text-align:left;
	border-bottom:solid 1px #1d1d1d;
	padding:0 20px 12px;
}
.oTbl01 > table th{
	font-weight:bold;
	font-size:1.6rem;
	padding-right:10px;
	white-space:nowrap;
}
.oTbl01 > table td{
	width:100%;
}
.oTbl01 > table tr ~ tr th,
.oTbl01 > table tr ~ tr td{
	padding-top:36px;
}
.oHd01 + .oTbl01{
	margin-top:20px;
}
.oHd02 + .oTbl01,
.oLocus + .oTbl01{
	margin-top:27px;
}
@media (max-width:767px){
	.oTbl01 > table,
	.oTbl01 > table tbody,
	.oTbl01 > table tr,
	.oTbl01 > table th,
	.oTbl01 > table td{
		display:block;
		box-sizing:border-box;
	}
	.oTbl01 > table th,
	.oTbl01 > table td{
		padding:0 3.33% 2%;
	}
	.oTbl01 > table th{
		font-size:5vw;
		padding-right:1%;
		border-bottom:0;
	}
	.oTbl01 > table td{
		width:100%;
		padding-bottom:4%;
	}
	.oTbl01 > table tr ~ tr th{
		padding-top:3.6%;
	}
	.oTbl01 > table tr ~ tr td{
		padding-top:0;
	}
	.oHd01 + .oTbl01{
		margin-top:4%;
	}
	.oHd02 + .oTbl01,
	.oLocus + .oTbl01{
		margin-top:3%;
	}
}

/* テーブル 02
----------------------------------------------- */
.oTbl02{
	max-width:100%;
}
.oTbl02 > table{
	border-collapse:collapse;
}
.oTbl02 > table + table{
	margin-top:0.5em
}
.oTbl02 > table th{
	font-weight:bold;
	white-space:nowrap;
	padding-right:1em;
	text-align:left;
}
.oTbl02 > table tr ~ tr th,
.oTbl02 > table tr ~ tr td{
	padding-top:0.5em;
}
@media (max-width:767px){
	.oTbl02 > table{
		font-size:3.75vw;
	}
}

/* テーブル 03
----------------------------------------------- */
.oTbl03{
	max-width:100%;
}
.oTbl03 > table{
	width:100%;
	border-collapse:collapse;
}
.oTbl03 > table th,
.oTbl03 > table td{
	border:solid 2px #fff;
	background:#f5f5f5;
	padding:0.5em 1em;
	vertical-align:middle;
	box-sizing:border-box;
}
.oTbl03 > table th{
	font-weight:bold;
	padding-right:1em;
	text-align:left;
}
.oTbl03 > table > thead th{
	background:#2a78b4;
	color:#fff;
	text-align:center;
}
.oTbl03 > table > thead th:nth-child(1){
	width:20%;
}
.oTbl03 > table > thead th:nth-child(2){
	width:30%;
}
.oTbl03 > table > thead th:nth-child(3){
	width:50%;
}
.oHd02 + .oTbl03{
	margin-top:10px;
}
.oSct02 + .oTbl03{
	margin-top:124px;
}
@media (max-width:767px){
	.oTbl03 > table th,
	.oTbl03 > table td{
		border-width:0.313vw;
		padding:0.5em 0.5em;
	}
	.oHd02 + .oTbl03{
		margin-top:3%;
	}
	.oSct02 + .oTbl03{
		margin-top:9%;
	}
}

/* テーブル 04
----------------------------------------------- */
.oTbl04{
	max-width:100%;
}
.oTbl04 > table{
	width:100%;
	border-collapse:collapse;
}
.oTbl04 > table th,
.oTbl04 > table td{
	border:solid 2px #fff;
	background:#f5f5f5;
	padding:0.5em 1em;
	vertical-align:middle;
	box-sizing:border-box;
}
.oTbl04 > table th{
	font-weight:bold;
	padding-right:1em;
	text-align:left;
	background:#2a78b4;
	color:#fff;
	text-align:left;
}
.oTbl04 > table tr:nth-child(1) > th:nth-child(1){
	width:20%;
}
.oTbl04 > table tr:nth-child(1) > th:nth-child(2){
	width:30%;
}
.oTbl04 > table tr:nth-child(1) > th:nth-child(3){
	width:50%;
}
.oHd02 + .oTbl04{
	margin-top:10px;
}
@media (max-width:767px){
	.oTbl04 > table th,
	.oTbl04 > table td{
		border-width:0.313vw;
		padding:0.5em 0.5em;
	}
	.oHd02 + .oTbl04{
		margin-top:3%;
	}
}


/* ===============================================
+ 中面パーツ：リスト系
----------------------------------------------- */
/* リスト 01
----------------------------------------------- */
.oList01{
	max-width:100%;
}
.oList01 > ul{
	list-style-type:none;
	width:100%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.oList01 > ul:before,
.oList01 > ul:after{
	content:"";
	display:block;
	width:24.58%;
	order:100;
}
.oList01 > ul > li{
	width:24.58%;
}
.oList01 > ul > li:nth-child(n+5){
	margin-top:8px;
}
.oList01 > ul > li > a{
	display:block;
	color:#fff;
	text-decoration:none;
}
.oList01 > ul > li > a > img{
	width:100%;
	height:auto;
	display:block;
}
.oList01 > ul > li > a > p{
	width:100%;
	background:#2a78b4;
	padding:10px;
	height:74px;
	box-sizing:border-box;
	font-size: 0.9em;
}
.oList01 > ul > li > a > p > span{
	font-size: 1.2em;
	letter-spacing: 0.05em;
}
.oList01 > ul > li > a > p > span.s{
	font-size: 1.2em;
}
.oHd01 + .oList01{
	margin-top:20px;
}
@media (max-width:767px){
	.oList01 > ul:before{
		display:none;
	}
	.oList01 > ul:after{
		width:49%;
	}
	.oList01 > ul > li{
		width:49%;
	}
	.oList01 > ul > li:nth-child(n+3),
	.oList01 > ul > li:nth-child(n+5){
		margin-top:2%;
	}
	.oList01 > ul > li > a{
		position:relative;
		display:block;
		color:#fff;
		text-decoration:none;
	}
	.oList01 > ul > li > a > img{
		width:100%;
		height:auto;
		display:block;
	}
	.oList01 > ul > li > a > p{
		padding:0.6em 4% 0;
		height:4.9em;
		font-size:2.7vw;
	}
	.oList01 > ul > li > a > p > span{
		font-size:3.5vw;
	}
	.oHd01 + .oList01{
		margin-top:3vw;
	}
}

/* リスト 02
----------------------------------------------- */
.oList02{
	max-width:100%;
}
.oList02 > ul{
	list-style-type:none;
	width:100%;
	display:flex;
	flex-wrap:wrap;
	justify-content: flex-start;
	/*
	justify-content:space-between;
	*/
}
.oList02 > ul > li{
	width:24.0175%;
	margin-right: 1%;
}
.oList02 > ul > li:nth-child(4n){
    margin-right: 0;
}
.oList02 > ul > li:nth-child(n+5){
	margin-top:50px;
}
.oList02_hd{
	font-size:1.6rem;
	font-weight:bold;
	border-bottom:solid 1px #1d1d1d;
}
.vLine_2 .oList02_hd{
	height:3.5em;
}
.vLine_2 .oList02_hd span{
	font-size:1.4rem;
} 
.oList02_img{
	margin-top:25px;
}
.oList02_txt{
	margin-top:14px;
	min-height: 80px;
}
.oList02_link{
	margin-top:14px;
	font-size:1.5rem;
}
.oList02_link > a{
	display:block;
	text-decoration:none;
	color:#fff;
	padding:10px 15px;
	background:#2a78b4 url(../img/ico_arw04.png) no-repeat 98%;
	background-position: right 15px center;
	background-size:9px auto;
	box-sizing:border-box;
	transition:opacity 0.5s ease 0s;
}
.oList02_link > a:hover{
	opacity:0.65;
}
.oHd02 + .oList02{
	margin-top:27px;
}

@media (max-width:767px){
	.oList02 > ul > li{
		width:49%;
	}
	.oList02 > ul > li:nth-child(n+3){
		margin-top:8%;
	}
	.oList02_hd{
		font-size:3.2vw;
		border-bottom-width:0.313vw;
	}
	.oList02_hd > p{
		font-size:2.8vw;
		font-weight:normal;
	}
	.oList02_img{
		margin-top:5%;
	}
	.oList02_txt{
		display:none;
	}
	.oList02_link{
		margin-top:3.13%;
		font-size:2.8vw;
	}
	.oList02_link > a{
		padding:5% 3.13%;
		background-size:0.8em auto;
	}
	.oHd02 + .oList02{
		margin-top:3.8vw;
	}
}


/* ===============================================
+ 中面パーツ：リンク系
----------------------------------------------- */
/* リンク 01
----------------------------------------------- */
.oLink01{
	max-width:100%;
	text-align:right;
}
.oLink01 > a{
	display:inline-block;
	padding-right:28px;
	background:url(../img/ico_arw01.svg) no-repeat right center;
	background-size:19px auto;
	text-decoration:none;
	color:#333;
}
.oTbl01 + .oLink01{
	margin-top:20px;
}
@media (max-width:767px){
	.oLink01 > a{
		padding-right:2em;
		background-size:1.2em auto;
	}
	.oTbl01 + .oLink01{
		margin-top:3.13vw;
	}
}

/* リンク 02
----------------------------------------------- */
.oLink02{
	max-width:100%;
}
.oLink02 > a{
	display:block;
	width: 200px;
	text-decoration:none;
	color:#fff;
	padding:10px 15px;
	background:#2a78b4 url(../img/ico_arw04.png) no-repeat 98%;
	background-size:9px auto;
	background-position: right 15px center;
	box-sizing:border-box;
	transition:opacity 0.5s ease 0s;
}
.oLink02 > a:hover{
	opacity:0.65;
}
.oTbl02 + .oLink02{
	margin-top:14px;
}
@media (max-width:767px){
	.oLink02 > a{
		width: 100%;
		padding:3.5% 3.13%;
		background-position:97% center;
		background-size:0.8em auto;
	}
	.oTbl02 + .oLink02{
		margin-top:3.13%;
	}
}


/* ===============================================
+ 中面パーツ：画像系
----------------------------------------------- */
/* 画像
----------------------------------------------- */
.oImg{
	max-width:100%;
}
.oImg > img{
	display:block;
	width:100%;
	height:auto;
}
.oHd02 + .oImg{
	margin-top:11px;
}
.oLocus + .oImg{
	margin-top:30px;
}
.oTbl02 + .oImg{
	margin-top:1em;
}
@media (max-width:767px){
	.oHd02 + .oImg{
		margin-top:2%;
	}
	.oLocus + .oImg{
		margin-top:5%;
	}
}
/* vBd：罫線付き */
.oImg.vBd{
	box-sizing:border-box;
	border:solid 1px #c2c2c2;
}
@media (max-width:767px){
	.oImg.vBd{
		border-width:0.25vw;
	}
}
/* vW：横幅 */
.oImg.vW_01{
	width:640px;
}
.oImg.vW_02{
	width:780px;
}
@media (max-width:767px){
	.oImg.vW_01,
	.oImg.vW_02{
		width:93.74%;
	}
}


/* ===============================================
+ 中面パーツ：セットパーツ系
----------------------------------------------- */
/* セット 01
----------------------------------------------- */
.oSet01{
	display:flex;
	justify-content:space-between;
}
.oSet01_box01{
	width:27.87%;
}
.oSet01_box02{
	width:68.82%;
}
.oHd02 + .oSet01{
	margin-top:20px;
}
.oHd03 + .oSet01{
	margin-top:30px;
}
@media (max-width:767px){
	.oSet01{
		width:93.75%;
		display:block;
	}
	.oSet01_box01,
	.oSet01_box02{
		width:100%;
	}
	.oSet01_box02{
		margin-top:3vw;
	}
	.oHd02 + .oSet01{
		margin-top:3vw;
	}
	.oHd03 + .oSet01{
		margin-top:3vw;
	}
}


/* ===============================================
+ 中面パーツ：ユニーク系
----------------------------------------------- */
/* ピックアップ
----------------------------------------------- */
.oPickup{
	background:#f6faff;
	border-bottom:solid 5px #2a78b4;
}
.oPickup_hd{
	background:#2a78b4;
	color:#fff;
	font-size:2.4rem;
	border-bottom:solid 5px #2a78b4;
	box-sizing:border-box;
	padding:10px 10px 8px;
	line-height:1;
}
.oPickup_inner{
	padding:35px 0 40px;
}
.oPickup_slider{
	list-style-type:none;
	margin:0 auto;
	width:92.37%;
}
.oPickup_slider a{
	text-decoration:none;
	color:#333;
	text-align:right;
	display:block;
	transition:opacity 0.5s ease 0s;
}
.oPickup_slider a:hover{
	opacity:0.65;
}
.oPickup_slider a > img{
	display:block;
	margin-bottom:11px;
}
.oPickup_slider a > span{
	display:inline-block;
	padding-right:28px;
	font-size:1.4rem;
	background:url(../img/ico_arw01.svg) no-repeat right center;
	background-size:19px auto;
	text-decoration:none;
	color:#333;
}
.oPickup_slider .slick-list{
	margin-right:-10px;
}
.oPickup_slider .slick-slide{
	margin-right:15px;
}
.oPickup_slider .slick-arrow{
	width:40px;
	height:108px;
	background:red;
	border:0;
	overflow:hidden;
	white-space:normal;
	text-indent:10em;
	position:absolute;
	top:-15px;
	z-index:900;
	background:url(../img/ico_arw03_prev.svg) no-repeat center center;
	background-size:120% auto;
	cursor:pointer;
	padding:0;
}
.oPickup_slider .slick-prev{
	left:-40px;
}
.oPickup_slider .slick-next{
	right:-40px;
	background-image:url(../img/ico_arw03_next.svg);
}
.oSct01 + .oPickup{
	margin-top:80px;
}
@media (max-width:767px){
	.oPickup{
		width:93.75%;
		border-bottom-width:0.78vw;
	}
	.oPickup_hd{
		font-size:6vw;
		border-bottom-width:1.25vw;
		box-sizing:border-box;
		padding:2% 3.33%;
	}
	.oPickup_inner{
		padding:3% 0 3.99%;
	}
	.oPickup_slider{
		width:93.33%;
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	.oPickup_slider > li{
		width:49%;
	}
	.oPickup_slider > li:nth-child(n+3){
		margin-top:0.5em;
	}
	.oPickup_slider a > img{
		margin-bottom:0.05em;
	}
	.oPickup_slider a > span{
		padding-right:1.5em;
		background-size:1em auto;
		font-size:2.7vw;
	}
	.oSct01 + .oPickup{
		margin-top:12.5%;
	}
}

/* ===============================================
+ GoogleMap用
----------------------------------------------- */

.google_map{
	margin:15px 0;
	height: 0;
	overflow: hidden;
	padding-bottom: 56.25%;
	position: relative;
}

.google_map iframe{
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}

/* ===============================================
+ オーバーライドクラス
----------------------------------------------- */
/* PCのみ表示
----------------------------------------------- */
@media (max-width:767px){
	.xPC{
		display:none !important;
	}
}

/* スマホのみ表示
----------------------------------------------- */
@media (min-width:768px){
	.xSP{
		display:none !important;
	}
}


/* ===============================================
+ JSプラグイン
----------------------------------------------- */
/* slick
----------------------------------------------- */
.slick-slider{box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:rgba(0,0,0,0)}.slick-list,.slick-slider{position:relative;display:block}.slick-list{overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:0}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-list,.slick-slider .slick-track{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto}.slick-track:after,.slick-track:before{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir='rtl'] .slick-slide{float:right}.slick-slide img{display:block}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}