@charset "utf-8";
/* cssのリセット */@import url("reset.css");

html{ font-size: 10px; }
body{
	font-family: 'Zen Kaku Gothic New', sans-serif;
	-webkit-font-smoothing: antialiased;
	color: #343434;
	font-weight: 500;
	background-color: #f1f3e9;
}
.font-k{
	font-family: ab-kirigirisu, sans-serif;
}
/* オブジェクトタウなどでSVG使用する場合の読み込み用のSVGを非表示にする */
.svg-none{ display: none; }
/* 共通 */
.text-content p + p{ margin-top: 1em; }
p,.txt-size16{
	font-size: 3.7vw;
}
.txt-size20{ font-size: 4.25vw; }
.txt-size18{ font-size: 4vw; }
.txt-size14{ font-size: 3.25vw; }
.txt-size12{ font-size: 3vw; }
@media screen and (min-width: 750px) {
	.txt-size20{ font-size: 1.8rem; }
	.txt-size18{ font-size: 1.6rem; }
	p,.txt-size16{ font-size: 1.4rem; }
	.txt-size14{ font-size: 1.2rem; }
	.txt-size12{ font-size: 1.1rem; }
}
@media screen and (min-width: 1024px) {
	.txt-size20{ font-size: 2rem; }
	.txt-size18{ font-size: 1.8rem; }
	p,.txt-size16{ font-size: 1.6rem; }
	.txt-size14{ font-size: 1.4rem; }
	.txt-size12{ font-size: 1.2rem; }
}
.txt-w400{ font-weight: 400; }
.txt-w500{ font-weight: 500; }
.txt-w600{ font-weight: 600; }
.txt-w700{ font-weight: 700; }

a{
	-moz-transition: .1s;
	-webkit-transition: .1s;
	-o-transition: .1s;
	-ms-transition: .1s;
}
.txt-link{
	display: inline-block;
	text-decoration: underline;
}
.txt-link:hover{ text-decoration: none; }

/* //////////////////
まる矢印
////////////////// */
/* まる矢印 base */
.txt-green{ color: #153472; }
.txt-wh{ color: #fff; }
.bg-green{background: #153472;}
.bg-sub{background: #e0634d;}
.txt-gray{ color: #bbb; }
.txt-sub{ color: #e0634d; }

.circle-icon.bg-green{ background: #153472; }
.circle-icon.bg-none{ background: transparent; border: solid 2px #fff; }
.circle-icon.bg-none{ background: transparent; border: solid 2px #fff; }
.circle-icon{
	box-sizing: border-box;
	position: relative;
	display: block;
	border-radius: 50%;
	width: 18vw;
	height: 18vw;
	background: #343434;
}
.circle-icon.bg-sub{ background-color: #e0634d; }
.arow-solo,
.circle-icon .arow{
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	display: block;
	position: absolute;
	height: 2.625vw;
	width: 2.625vw;
}
/* 右向き */
.arow-solo-r,
.circle-icon.circle-icon-r .arow{
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
}
/* 下向き */
.arow-solo-b,
.circle-icon.circle-icon-b .arow{
	-moz-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
}
.arow-solo:before,
.arow-solo:after,
.circle-icon .arow:before,
.circle-icon .arow:after{
	content: "";
	position: absolute;
	display: block;
	box-sizing: border-box;
	left: 0;
	right: 0;
	margin: auto;
}
.arow-solo:before,
.circle-icon .arow:before{
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	top: 0;
	border-right-width: 0.4vw;
	border-top-width: 0.4vw;
	border-color: #fff;
	border-style: solid;
	width: 1.6vw;
	height: 1.6vw;
}

/* 矢印のみ色 */
.arow-solo:after{ background: #343434; }
.arow-solo:before{ border-color: #343434; }
.arow-solo_green:after{ background: #153472; }
.arow-solo_green:before{ border-color: #153472; }
.arow-solo_wh:after{ background: #fff; }
.arow-solo_wh:before{ border-color: #fff; }

@media screen and (min-width: 750px) {
	.circle-icon{
		width: 80px;
		height: 80px;
	}
	.arow-solo,
	.circle-icon .arow{
		width: 10px;
		height: 12px;
	}
	.arow-solo:before,
	.circle-icon .arow:before{
		border-right-width: 2px;
		border-top-width: 2px;
		width: 8px;
		height: 8px;
	}
	.arow-solo:after,
	.circle-icon .arow:after{ width: 2px; }
	.circle-icon.bg-sub.arow-solo:hover{ background-color: #343434; }

}
@media screen and (min-width: 1024px) {
	.circle-icon .arow,.arow-solo{
		width: 12px;
		height: 12px;
	}
	.circle-icon .arow:after,.arow-solo:after{ width: 2px; }
	.circle-icon{
		width: 100px;
		height: 100px;
	}
	{
		width: 12px;
		height: 12px;
	}
}
/* テキスト付きパターン */
.arow-link{
	display: inline-block; }
.arow-link .arow{
	position: relative;
	display: block;
	height: 8px;
	width: 8px; }
.arow-link .arow:before{
	content: "";
	display: block;
	position: absolute;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	border-right: solid 3px #e0634d;
	border-bottom: solid 3px #e0634d;
}
.arow-link .arow-link__item.bg-sub .arow:before{
	border-right: solid 3px #fff;
	border-bottom: solid 3px #fff; }
.arow-link.txt-wh .arow-link__item { border-color: #fff; }
.arow-link.txt-wh .arow:before{ border-right-color: #fff; border-bottom-color: #fff; }
.arow-link__item{
	border-radius: 30px;
	border: solid 2px #e0634d;
	padding: 15px 30px;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	display: flex;
	align-items: center;
	font-family: ab-kirigirisu, sans-serif; }
.arow-link__item.arow-link__block .txt{ display: inline-block; margin-left: 0; margin-top: 0.5em; }
.arow-link__item.arow-link__block .circle-icon{ margin: 0 auto; }
.arow-link .txt{
	-moz-transition: .2s;
	-webkit-transition: .2s;
	font-weight: 400;
	font-size: 3.725vw;
	margin-right: 1.5em;
}

.arow-link .circle-icon{
	-moz-transition: .2s;
	-webkit-transition: .2s;
}
/* テキスト付きパターン改行あり */
.arow-link__item.arow-link__block{
	display: block;
	align-items: center;
}
/* hover 丸矢印のみ */
/* hover textあり base */
a.arow-link__item:hover { background-color: #e0634d; }
a.arow-link__item:hover .txt{ color: #fff; }
a.arow-link__item:hover .arow:before{ border-right-color: #fff; border-bottom-color: #fff; }
/* hover textあり green */
a.arow-link__item:hover .txt.txt-green{ color: #343434; }
a.arow-link__item:hover .circle-icon.bg-green{ background: #343434; }

/* hover textあり 透明 */
a.arow-link__item:hover .txt.txt-wh{ color: #fff; }
a.arow-link__item:hover .circle-icon.bg-none{ background: transparent; }

a:hover .arow-link__item .circle-icon.bg-green{ background: #343434; }
a:hover .arow-link__item .txt-green{ color: #343434; }

@media screen and (min-width: 750px) {
	.arow-link .txt{ font-size: 1.8rem; }
}
@media screen and (min-width: 1024px) {
	.arow-link .txt{ font-size: 2rem; }
}


/* //////////////////
文字周り
//////////////////*/
/* text-alighn */
.taL{ text-align: left; }
.taC{ text-align: center; }
.taR{ text-align:  right; }
@media screen and (min-width: 750px) {
	.taC_pc{ text-align: center; }
}
/* 行間 */
.lHeight_1{ line-height: 1; }
.lHeight_1_5{ line-height: 1.5; }
.lHeight_1_75{ line-height: 1.75; }
.lHeight_2{ line-height: 2; }
/* インデント */
.l_em1{ text-indent: -1em; padding-left: 1em; }
/* 開業不可 */
.noWrap{
	display: inline-block;
	white-space: nowrap;
}
/* 文字色 */
.txtColor-main{ color: #343434; }/* 本文など */
.txtColor-highlight{ color: #153472; }/* 目立たせたい部分 */
.txtColor-sub01{ color: #7a7a7a; }/* サブのカラー */



/*背景色*/



/* ロゴ */
.logo img{ max-width: 100%; }
.logo span{display: block; margin-top: 0.4em; }
.logo strong{ font-size: 2em; font-weight: 700; }
/* //////////////////
H E A D E R
////////////////// */
header{
	position: relative;
	z-index: 999;
}
.head-inner{
	width: 100%;
	padding: 3vw;
	box-sizing: border-box;
	position: fixed;
	z-index: 1;
	background-color: #f1f3e9;
	top: 0;
}
.head-logo p{ font-size: 2.2vw; }
.head-logo{
	left: 0;
	top: 0;
	z-index: 2;
}
.head-logo:hover{ color: #153472; }
.head-menu{ display: none; }
/* ハンバーガーオープン時の色変更 */
.hamburger-open .head-logo{ color: #fff; }
.hamburger-open .head-logo:hover{ opacity: 0.7; }
@media screen and (min-width: 480px) {}
@media screen and (min-width: 750px) {
	.head-logo{ position: fixed; }
	.head-inner{
		padding: 0;
		left: 0;
		top: 0;
		justify-content: flex-end;
		display: flex;
		width: 100%;
		box-sizing: border-box;
		padding-right: 120px;
		position: fixed;
	}
	.head-logo p{ font-size: 1.2rem; }
	.head-logo{
		left: 3vw;
		top: 10px;
	}

	.flex-menu{ display: flex; }
	.flex-menu__item a:hover{ text-decoration: underline; }
	.flex-menu__item:nth-child(n+2){ margin-left: 1.5em; }
	.flex-menu__contact{
		margin-left: 1em;
		padding-left: 1em;
		border-left: solid 1px #b1b1b1;
	}
	.head-menu{
		padding-top: 35px;
		padding-bottom: 30px;
		margin-right: 20px;
	}
	.flex-menu__item:nth-child(n+2){ margin-left: 1.5em; }
	.flex-menu__item{ font-size: 1.2rem; }
}
@media screen and (min-width: 1024px) {
	.head-logo{
		left: 30px;
		top: 20px;
	}
	.head-logo p{ font-size: 1.3rem; }
	.head-menu{
		padding-top: 50px;
		padding-bottom: 50px;
		margin-right: 30px;
	}
	.flex-menu__item{ font-size: 1.4rem; }
}



/* ハンバーガーボタン */
.hamburger-button{
	width: 12vw;
	height: 12vw;
	text-align: center;
	justify-content: center;
	align-items: center;
	display: flex;
	border-radius: 50%;
	position: fixed;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	z-index: 1;
	/* ハンバーガー背景・テキスト色 */
	right: 18px;
	top: 15px;
	background: #153472;
	color: #fff;
	cursor: pointer; }
.hamburger-button:hover{ background: #343434; }
.hamburger-button p{ line-height: 1; }
.hamburger-line{
	margin: 0 auto;
	padding: 2vw 0;
	position: relative;
	width: 20px;
}
.hamburger-text{ font-size: 2.2vw; }
.hamburger-line span{
	display: block;
	width: 100%;
	height: 2px;
	/* ハンバーガー線の色 */
	background: #fff;
}
.hamburger-line span:before,
.hamburger-line span:after{
	-moz-transition: .2s;
	-webkit-transition: .2s;
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 2px;
	/* ハンバーガー線の色 */
	background: #fff;
}
.hamburger-line span:before{ top: 0; }
.hamburger-line span:after{ bottom: 0; }
.hamburger-button .hamburger-text{
	margin-top: 0.7143em;
}
.hamburger-button .hamburger-text span{
	display: inline-block;
	text-indent: 0.3em;
	letter-spacing: 0.3em;
}

/* ハンバーガーボタン */
/* オープン時 */
.hamburger-open .hamburger-button{
	background: #153472;
	color: #fff;
}
.hamburger-open .hamburger-line span{ background-color: #153472; }
.hamburger-open .hamburger-line span:after,
.hamburger-open .hamburger-line span:before{
	/* ハンバーガー線の色 */
	background: #fff;
	top: 0;
	bottom: 0;
	margin: auto;
}
/* ホバー時 */
.hamburger-open .hamburger-button:hover{ color: #343434; }
.hamburger-open .hamburger-button:hover .hamburger-line span:after,.hamburger-open .hamburger-button:hover .hamburger-line span:before{ background: #e0634d;/* ハンバーガー線の色 */ }
.hamburger-open .hamburger-line span:before{
	-moz-transform: rotate(30deg);
	-webkit-transform: rotate(30deg);
}
.hamburger-open .hamburger-line span:after{
	-moz-transform: rotate(-30deg);
	-webkit-transform: rotate(-30deg);
}
.hamburger-text span.on{ display: none; }
.hamburger-open .hamburger-text span.on{ display: block; }
.hamburger-open .hamburger-text span.off{ display: none; }

/* ハンバーガーメニュー */
.hamburger-content{
	top: 0;
	bottom: 0;
	visibility: hidden;
	opacity: 0;
	width: 100%;
	min-height: 100%;
	position: fixed;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	/* ハンバーガー背景・テキスト色 */
	background: #f1f3e9;
}
.hamburger-nav{
	margin-top: 24vw;
	padding: 0 8vw;
}
.hamburger-list__item span{
	display: block;
	line-height: 1;
}
.hamburger-list__item p{ display: inline-block; font-weight: 400; }
.hamburger-list__item .jp{
	font-size: 6vw;
	font-weight: bold;
}
.hamburger-list__item .en{
	color: #e0634d;
	font-family: ab-kirigirisu, sans-serif;
	margin-bottom: 0.5em;
	font-size: 4.25vw;
}
/* ハンバーガーメニュー */
/* オープン時 */
.hamburger-open{
	overflow: hidden;
}
.hamburger-open .hamburger-content{ visibility: visible; opacity: 1; overflow-x: scroll;  }
.hamburger-foot{
	text-align: center;
	bottom:6vw;
	right: 0;
	left: 0;
	margin: auto;
	margin-top: 20vw;
	margin-bottom: 6vw;
}
.hamburger-foot__nav a{ font-size: 3vw; }
.hamburger-foot .copy{
	font-size: 2.725vw;
	margin-top: 1em;
	font-weight: 500;
}
.hamburger-rowlist li{ margin-top: 2em; }
.hamburger-rowlist li + li{ margin-top: 1.6em; }
.hamburger-list + .hamburger-list{ margin-top: 5.25vw; }
.hamburger-list__item + .hamburger-list__item{ margin-top: 5.25vw; }
.hamburger-rowlist a{
	font-size: 3.25vw;
	display: inline-block;
	padding-left: 1.8em;
	position: relative;
}
.hamburger-list__item a:hover{ opacity: .6; }
.hamburger-rowlist .arow01{
	position: absolute;
	display: block;
	width: 0.4em;
	height: 0.4em;
	left: 1em;
	top: 0;
	bottom: 0;
	margin: auto;
}
.hamburger-rowlist .arow01:before{
	content: "";
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	border-right: solid 2px;
	border-bottom: solid 2px;
	position: absolute;
	box-sizing: border-box;
	width: 100%;
	height: 100%;
}


@media screen and (min-width: 480px) {}
@media screen and (min-width: 750px) {
	.hamburger-button{
		right: 30px;
		top: 30px;
		width: 60px;
		height: 60px;
	}
	.hamburger-line{ width: 20px; padding: 8px 0; }
	.hamburger-text{ font-size: 1.2rem; }
	/* ハンバーガーメニュー */
	.hamburger-list + .hamburger-list{ margin-left: 72px; margin-top: 0; }
	.hamburger-list__item + .hamburger-list__item{ margin-top: 30px; }
	.hamburger-nav{ display: flex; justify-content: center; }
	.hamburger-nav{
		margin-top: 0;
		margin-bottom: 0;
		top: 50%;
		position: relative;
		transform: translateY(-50%);
		-webkit- transform: translateY(-50%);
	}

	.hamburger-foot{
		margin: 0;
		text-align: right;
		position: absolute;
		right: 40px;
		bottom: 40px;
	}
	.hamburger-list__item .en{ font-size: 1.6rem; }
	.hamburger-list__item .jp{ font-size: 2.4rem; }

	.hamburger-foot__nav a{ font-size: 1.4rem; }
	.hamburger-rowlist a{ font-size: 1.3rem; }
	.hamburger-foot .copy{ font-size: 1.1rem; }
}
@media screen and (min-width: 896px) {
	/* ハンバーガーボタン */
	.hamburger-text{ font-size: 1.2rem; }

	/* ハンバーガーメニュー */
	.hamburger-list__item .jp{ font-size: 2.8rem; }
	.hamburger-list__item .en{ font-size: 1.8rem; }
	.hamburger-foot{
		right: 60px;
		bottom: 60px;
	}
}
@media screen and (min-width: 1024px) {
	/* ハンバーガーボタン */
	.hamburger-text{ font-size: 1.4rem; }

	/* ハンバーガーメニュー */
	.hamburger-foot__nav a{ font-size: 1.6rem; }
	.hamburger-rowlist a{ font-size: 1.6rem; }
	.hamburger-foot .copy{ font-size: 1.2rem; }
}

/* //////////////////
F O O T E R
////////////////// */
footer{
	margin-top: 18vw;
	padding: 12vw 6vw 10vw;
	position: relative;
}
footer .top_link{
	top: 0;
	right: 3vw;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
}
footer .top_link:hover{
	background: #343434;
}
footer .flex-menu{ display: none; }
.flex-menu__contact{
	border-left: solid 1px #b1b1b1;
}
.foot-outline{
	margin-top: 1.4286em;
	margin-bottom: 3.4286em;
	line-height: 2;
	font-size: 3.25vw;
	color: #797a7a;
}
.foot-sns{
	display: flex;
}
.foot-sns a:nth-child(n+2){ margin-left: 2vw; }
.foot-logo p{ font-size: 3.725vw; }
footer .copy{
	margin-top: 1.66667em;
	color: #153472;
	font-weight: bold;
	font-size: 3.25vw;
}
footer .top_link{ position: absolute; }
@media screen and (min-width: 480px) {}
@media screen and (min-width: 750px) {
	footer{
		margin-top: 142px;
	}
	footer .top_link{ right: 30px; }
	.foot-sns{
		justify-content: flex-end;
	}
	.foot-sns a:nth-child(n+2){ margin-left: 12px; }

	footer .flex-menu{ display: flex; }
	.foot-bottom{
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}
	.foot-logo p{ font-size: 1.4rem; }
	.foot-outline{ font-size: 1.2rem; }
	footer .copy{ font-size: 1.1rem; }
}
@media screen and (min-width: 896px) {
	footer{
		margin-top: 142px;
	}
	.foot-outline{ font-size: 1.3rem; }

}
@media screen and (min-width: 1024px) {
	footer{
		margin-top: 160px;
		padding: 90px 6vw 80px;
	}
	.foot-logo p{ font-size: 1.6rem; }
	.foot-outline{ font-size: 1.4rem; }
	footer .copy{ font-size: 1.2rem; }
}


/* //////////////////
コンテンツ部分共通
////////////////// */
/* コンテンツ幅など */
.content-wrap{ padding: 0 6vw; }
.content-section{ padding: 16vw 0 18vw; position: relative; }
.content-section:first-child{ padding-top: 26vw; }
.content-section:nth-child(n+2){ border-top: solid 2px #fff; }
.content-section:last-child{ padding-bottom: 0; }
.content-section.brder-none__section{ border-top: none; padding-top: 0; }
.content-inner{
	width: 100%;
	max-width: 1180px; margin: 0 auto; }
@media screen and (min-width: 750px) {
	.content-section{ padding: 120px 0; }
	.content-section:first-child{ padding-top: 160px; }
}
@media screen and (min-width: 1024px) {
	.content-wrap{ padding: 0 4vw; }
	.content-section{ padding: 140px 0; }
}
/* マージン */
.content-item{ margin-bottom: 10vw; }
.content-item0{ margin-bottom: 0; }
.content-item2{ margin-bottom: 14vw; }
.content-item3{ margin-bottom: 7vw; }
.content-item4{ margin-bottom: 18vw; }
.content-item5{ margin-bottom: 16vw; }
@media screen and (min-width: 750px) {
	.content-item{ margin-bottom: 52px; }
	.content-item2{ margin-bottom: 70px; }
	.content-item3{ margin-bottom: 36px; }
	.content-item4{ margin-bottom: 120px; }
	.content-item5{ margin-bottom: 90px; }
}
@media screen and (min-width: 1024px) {
	.content-item{ margin-bottom: 60px; }
	.content-item2{ margin-bottom: 80px; }
	.content-item3{ margin-bottom: 40px; }
	.content-item4{ margin-bottom: 140px; }
	.content-item5{ margin-bottom: 100px; }
}
/* オブジェクトに対するマージン */
.mB_40{ margin-bottom: 7vw; }
.mB_50{ margin-bottom: 9vw; }
.mB_60{ margin-bottom: 10vw; }
.mB_80{ margin-bottom: 14vw; }
@media screen and (min-width: 750px) {
	.mB_40{ margin-bottom: 36px; }
	.mB_50{ margin-bottom: 46px; }
	.mB_60{ margin-bottom: 52px; }
	.mB_80{ margin-bottom: 70px; }
}
@media screen and (min-width: 1024px) {
	.mB_40{ margin-bottom: 40px; }
	.mB_50{ margin-bottom: 50px; }
	.mB_60{ margin-bottom: 60px; }
	.mB_80{ margin-bottom: 80px; }
}


.content-section .content-title01{ margin-bottom: 12vw; }
@media screen and (min-width: 750px) {
	.content-section .content-title01{ margin-bottom: 62px; }
}
@media screen and (min-width: 1024px) {
	.content-section .content-title01{ margin-bottom: 70px; }
}

/* 見出し////////////////// */
/* 見出し01 */
.content-title01{
	font-size: 30px;
	font-weight: 400;
}
.content-title01 .en{
	color: #153472;
	font-family: ab-kirigirisu, sans-serif;
	display: inline-block;
	line-height: 0.9;
	font-size: 0.7777778em; }
.content-title01 .en.text-sub{ color: #e0634d; }
.content-title01 .jp{
	display: block;
	margin-top: 0.5em;
	font-weight: bold;
}
@media screen and (min-width: 750px) {
	.content-title01{ font-size: 3.2rem; }
}
@media screen and (min-width: 1024px) {
	.content-title01{ font-size: 3.6rem; }
}
/* 見出し02 */
.content-title02{
	align-items: center;
	font-size: 3.725vw;
	font-weight: 400;
}
.content-title02 span{ display: block; }
.content-title02 .en{
	margin-bottom: 0.5em;
	position: relative;
	padding-left: 0.75em; }
.content-title02 .en:before{
	content: "";
	display: block;
	left: 0;
	width: 0.4em;
	position: absolute;
	height: 2px;
	top: 0.5em;
	background-color: #84bfda;
}
.content-title02 .jp{
	font-weight: bold;
	font-size: 1.875em;
}
@media screen and (min-width: 750px) {
	.content-title02{ font-size: 1.4rem; }
}
@media screen and (min-width: 1024px) {
	.content-title02{ font-size: 1.6rem; }
}
/* 見出し03 */
.content-title03{
	font-size: 32px;
	font-weight: bold; }
.content-title03 .border-b{ position: relative; }
.content-title03 .border-b:after{
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	background-color: #343434;
	bottom: 0;
	position: absolute; }
@media screen and (min-width: 750px) {
	.content-title03{ font-size: 3.8rem; }
}
@media screen and (min-width: 1024px) {
	.content-title03{ font-size: 4.2rem; }
}
/* 見出し04 */
.content-title04{
	font-size: 3.275vw;
	padding-top: 1.7778em;
	position: relative;
}
.content-title04:before{
	content: "";
	display: block;
	top: 0;
	position: absolute;
	background: #343434;
	width: 2.2223em;
	height: 1px;
}
.content-title04.content-title04__GrayB:before{ background: #bbb; }
.content-title04.content-title04__nonB{ padding-top: 0; }
.content-title04.content-title04__nonB:before{ display: none; }
.content-title04 .title-min{ font-weight: 700; }
.content-title04 .title-normal{ font-size: 1.7778em; }
@media screen and (min-width: 750px) {
	.content-title04{ font-size: 1.6rem; }
}
@media screen and (min-width: 1024px) {
	.content-title04{ font-size: 1.8rem; }
}
/* 見出し05 */
.content-title05{ font-size: 7vw; font-weight: bold; }
.content-title05 span{ display: block; }
.content-title05 .en{
	margin-bottom: 0.5em;
	font-size: 0.5em; }
@media screen and (min-width: 750px) {
	.content-title05{ font-size: 3rem; }
}
@media screen and (min-width: 1024px) {
	.content-title05{ font-size: 3.6rem; }
}
/* 見出し06 */
.content-title06{ font-size: 3.725vw; font-weight: 400; margin: 0.8em 0 0.5em; }
@media screen and (min-width: 750px) {
	.content-title06{ font-size: 1.725rem; }
}
@media screen and (min-width: 1024px) {
	.content-title06{ font-size: 2rem; }
}


/* 画像リンク周り */
.kadomaru-img{
	position: relative;
	overflow: hidden;
	border-radius: 4px;
}
.kadomaru-img10{ border-radius: 10px; }
.kadomaru-img img{ width: 100%; }
/* 画像自体がリンクになるもの（テキストとか矢印載せたり） */
.link-img{ position: relative; }
.link-img .link-img__over{
	/* 基本中央に */
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	background-color: rgba(21,52,114,.25);
	top: 0; bottom: 0; left: 0; right: 0;
	margin: auto;
}
/* hover時暗転 */
.link-img__black:before{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	opacity: 0;
	-moz-transition: .2s;
	-webkit-transition: .2s;
}
/* 常に表示する場合はこれを指定しない */
.link-img__over_off{
	-moz-transition: .2s;
	-webkit-transition: .2s;
	opacity: 0;
}
a:hover .link-img__black:before,
a:hover .link-img__over_off{ opacity: 1; }


/* 画像センタリング */
.flex-img__center{ position: relative; }
.flex-img__center img{
		width: 100%;
}
@media screen and (min-width: 750px) {
	.flex-img__center img{
			top: 50%;
			left: 50%;
			width: 100%;
			height: 100%;
			object-fit: cover;
			position: absolute;
			transform: translateY(-50%) translateX(-50%);
			-webkit- transform: translateY(-50%) translateX(-50%);
	}
}

/* リスト////////////////// */
/* flex-list01 */
.flex-list01{
	flex-wrap: wrap;
	display: flex;
}
.flex-list01 .flex-list__item{ width: 100%; }
.flex-list01 .flex-list__item:nth-child(n+2){ margin-top: 10vw; }

@media screen and (min-width: 750px) {
	.flex-list01 .flex-list__item{ width: 100%; }
	.flex-list01 .flex-list__item{ width: calc((100% - 60px) / 3); margin-right: 30px; }
	.flex-list01 .flex-list__item:nth-child(n+4){ margin-top: 30px; }
	.flex-list01 .flex-list__item:nth-child(3n){ margin-top: 0; margin-right: 0; }
	.flex-list01 .flex-list__item:nth-child(n+2){ margin-top: 0; }
}
@media screen and (min-width: 1024px) {
	.flex-list01 .flex-list__item{ width: calc((100% - 80px) / 3); margin-right: 40px; }
	.flex-list01 .flex-list__item:nth-child(n+4){ margin-top: 40px; }
}


/* 普通のリスト */
.simple-list{
	margin-top: 1.5em;
	padding-left: 1em; }

.simple-list__item{ padding-left: 1.2em; position: relative; }
.simple-list__item:before{
	left: 0;
	position: absolute;
	display: block;
}
.simple-list__item .simple-list{
	margin: 1.2em 0 1.5em;
}
.simple-list__item:nth-child(n + 2){ margin-top: 0.1em; }

/* ドット */
.dots-list__item:before{
	content: "・";
}

/* 数字 */
.nom-list{ counter-reset: item; }
.nom-list__item:before{
	 counter-increment: item;
	content: counter(item)'.';
}


/* お知らせ */
.news-list li + li{ border-top: solid 1px #eeeeee; }
.news-list__item{ font-size: 3vw; }
.news-list__item span{ white-space: nowrap; }
.news-list__item a{
	overflow: hidden;
	position: relative;
	padding: 1.8em 0;
	display: block;
}
.news-cate{
	font-weight: bold;
	min-width: 4em;
	margin-right: 1.25em;
}
.news-list__item h3{ padding-right: 3em; margin-top: 1em; line-height: 1.2;}
.news-data{ margin-right: 2.375em; }
.news-list__item .arow-solo{
	right: 1em;
	position: absolute;
	margin: auto 0;
	left: auto;
}
@media screen and (min-width: 750px) {
	.news-list__item h3{ padding-right: 6em; margin-top: 0;}
	.news-list__item .arow-solo{
		right: 3px;
	}
	.news-list__item{ font-size: 1.4rem; }
	.news-list__item a{ display: flex; align-items: center; }
}
@media screen and (min-width: 1024px) {
	.news-list__item{ font-size: 1.6rem; }
}
/* 矢印付ボタン */
.content-button{
	display: inline-block;
	border-radius: 5em;
	width: 100%;
	background: #343434;
	padding: 1em 6em;
	max-width: 460px;
	position: relative;
	font-size: 3.25vw;
}
.content-button .arow-solo{
	right: 2em;
	left: auto;
}
.content-button:hover{ background: #153472; }
.content-button.bg-green{ background: #153472; }
.content-button.bg-green:hover{ background: #343434; }
@media screen and (min-width: 750px) {
	.content-button{ font-size: 1.6rem; }
}
@media screen and (min-width: 1024px) {
	.content-button{ font-size: 1.8rem; }
}



/* flex-box */
.flex-box__50{/* 常に2分割 */
	display: flex;
	flex-wrap: wrap;
}
.flex-box__50.even-flex{ flex-direction: row-reverse; }
.flex-box__50 .flex-box__item{ width: 47.5%; margin-right: 5%; }
.flex-box__50 .flex-box__item:last-child{ margin-right: 0; }
@media screen and (min-width: 750px) {
	.flex-box__50-750{/* 750まで分割 */
		display: flex;
		flex-wrap: wrap;
	}
	.flex-box__50-750 .flex-box__item{ width: 47.5%; margin-right: 5%; }
	.flex-box__50-750 .flex-box__item:last-child{ margin-right: 0; }
	.flex-box__50 .flex-box__item.flex-item__pd30,
	.flex-box__50-750 .flex-box__item.flex-item__pd30{ padding: 24px 0; }
	.flex-box__50 .flex-box__item.flex-item__pd40,
	.flex-box__50-750 .flex-box__item.flex-item__pd40{ padding: 32px 0; }
	.flex-box__50 .flex-box__item.flex-item__pd50,
	.flex-box__50-750 .flex-box__item.flex-item__pd50{ padding: 44px 0; }
	.flex-box__50 .flex-box__item.flex-item__pd60,
	.flex-box__50-750 .flex-box__item.flex-item__pd60{ padding: 52px 0; }
	/* 反転 */
	.flex-box__50-750.even-flex{ flex-direction: row-reverse; }
	.flex-box__50-750.even-flex .flex-box__item{ margin-right: 0; }
	.flex-box__50-750.even-flex .flex-box__item:last-child{ margin-right: 5%; }
}
@media screen and (min-width: 896px) {
	.flex-box__50-896.even-flex{ flex-direction: row-reverse; }
	.flex-box__50-896{/* 896まで分割 */
		display: flex;
		flex-wrap: wrap;
	}
	.flex-box__50-896 .flex-box__item{ width: 47.5%; margin-right: 5%; }
	.flex-box__50-896 .flex-box__item:last-child{ margin-right: 0; }
	.flex-box__50-896 .flex-box__item.flex-item__pd30{ padding: 24px 0; }
	.flex-box__50-896 .flex-box__item.flex-item__pd40{ padding: 32px 0; }
	.flex-box__50-896 .flex-box__item.flex-item__pd50{ padding: 44px 0; }
	.flex-box__50-896 .flex-box__item.flex-item__pd60{ padding: 52px 0; }
}
@media screen and (min-width: 1024px) {
	.flex-box__50 .flex-box__item.flex-item__pd30,
	.flex-box__50-750 .flex-box__item.flex-item__pd30,
	.flex-box__50-896 .flex-box__item.flex-item__pd30{ padding: 30px 0; }
	.flex-box__50 .flex-box__item.flex-item__pd40,
	.flex-box__50-750 .flex-box__item.flex-item__pd40,
	.flex-box__50-896 .flex-box__item.flex-item__pd40{ padding: 40px 0; }
	.flex-box__50 .flex-box__item.flex-item__pd50,
	.flex-box__50-750 .flex-box__item.flex-item__pd50,
	.flex-box__50-896 .flex-box__item.flex-item__pd50{ padding: 50px 0; }
	.flex-box__50 .flex-box__item.flex-item__pd60,
	.flex-box__50-750 .flex-box__item.flex-item__pd60,
	.flex-box__50-896 .flex-box__item.flex-item__pd60{ padding: 60px 0; }
}
.flex-box__33{/* 常に2分割 */
	display: flex;
	flex-wrap: wrap;
}
.flex-box__33.even-flex{ flex-direction: row-reverse; }
.flex-box__33 .flex-box__item{ width: 31%; margin-right: 3.5%; }
.flex-box__33 .flex-box__item:nth-child(3n){ margin-right: 0; }

.flex-box__33-750 .flex-box__item:nth-child(n + 2),
.flex-box__33-896 .flex-box__item:nth-child(n + 2){ margin-top: 6vw; }
@media screen and (min-width: 750px) {
	.flex-box__33-750{/* 750まで分割 */
		display: flex;
		flex-wrap: wrap;
	}
	.flex-box__33-750 .flex-box__item{ width: 31%; margin-right: 3.5%; }
	.flex-box__33-750 .flex-box__item:nth-child(3n){ margin-right: 0; }

	.flex-box__33-750 .flex-box__item:nth-child(n + 2){ margin-top: 0; }
}
@media screen and (min-width: 896px) {
	.flex-box__33-896{/* 896まで分割 */
		display: flex;
		flex-wrap: wrap;
	}
	.flex-box__33-896 .flex-box__item{ width: 31%; margin-right: 3.5%; }
	.flex-box__33-896 .flex-box__item:nth-child(3n){ margin-right: 0; }
	.flex-box__33-896 .flex-box__item:nth-child(n + 2){ margin-top: 0; }
}

/* テーブル */
.caontent-table01{ width: 100%; }
.caontent-table01 tr:nth-child(n+2) th,
.caontent-table01 tr:nth-child(n+2) td{
	border-top: solid 1px #343434;
}
.caontent-table01 tbody{ max-width: 100%; }
.caontent-table01 th,
.caontent-table01 td{
	box-sizing: border-box; padding: 1.2em 0; }
.caontent-table01 td{
	white-space: wrap;
}
.caontent-table01 th{
	white-space: nowrap;
	padding-right: 1.5em; }
