@charset "utf-8";


body {
	margin: 0px;
	padding: 0px;
	color: #333333;
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: .1em;
	font-feature-settings : "palt";
	text-align: left;
	background-color: #fff;
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	/*font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif;*/
	-webkit-text-size-adjust: none;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
@media screen\0 {
	body {
		letter-spacing: normal;
		font-family: "YakuHanJP", 'Noto Sans JP', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	}
}
@media print {
	body {
		zoom: 0.68;
		-webkit-print-color-adjust: exact;
	}
}
/* IE10以上 */
@media print and (-ms-high-contrast: none) {
	/* @pageの指定いらないかも */
	@page {
		size: A4;
		margin: 12.7mm 9.7mm;
	}

	body {
		zoom: 1.8;
		width: 1200px;
		transform: scale(0.5);
		transform-origin: 0 0;
	}
}
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, button, textarea, select, p, blockquote, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	margin: 0px;
	padding: 0px;
	text-align: left;
}
main {
	display: block;
}
table {
	font-size: inherit; /* モダンブラウザ向け */
	font: 100%; /* Win IE 5-5.5､6(後方互換モード)向け */
}
fieldset, img {
	border:0;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style:normal;
	font-weight:normal;
}
ol, ul {
	list-style:none;
}
caption, th {
	text-align:left;
}
h1, h2, h3, h4, h5, h6 {
	font-size:100%;
	font-weight:normal;
	letter-spacing: .1em;
}
p {
	letter-spacing: .1em;
}
q:before, q:after {
	content:'';
}
abbr, acronym {
	border:0;
}
input,
button {
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
input[type="radio"],input[type="checkbox"],label,button,input[type="submit"] {
	cursor: pointer;
}
input[type="submit"] {
	cursor: pointer;
}
input[type="text"], input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="password"], input[type="date"], input[type="number"] {
	height: 50px;
	padding: 5px 20px;
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
	font-weight: bold;
	border: 3px solid #dddddd;
	box-sizing: border-box;
	border-radius: 0;
	-webkit-text-size-adjust: none;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}
select {
	height: 50px;
	padding: 5px 10px;
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
	font-weight: bold;
	border: 3px solid #dddddd;
	box-sizing: border-box;
	border-radius: 0;
}
textarea {
	height: 150px;
	padding: 15px 20px;
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 16px;
	font-weight: bold;
	border: 3px solid #dddddd;
	box-sizing: border-box;
	border-radius: 0;
	vertical-align: top;
}
/* Webkit */
::-webkit-input-placeholder {
	color: #b8b8b8;
	opacity: 1;
}
/* Firefox 18 以前 */
:-moz-placeholder {
	color: #b8b8b8;
}
/* Firefox 19 以降 */
::-moz-placeholder {
	color: #b8b8b8;

	/* Firefox 19 以降のデフォルトでは */
	/* color ではなく opacity で色合いを調整しているため */
	/* 文字色を指定する場合、opacity を 1 にする必要がある */
	opacity: 1;
}
/* IE 10 以降 */
:-ms-input-placeholder {
	color: #b8b8b8 !important;
}
/* CSS4では以下のような名前の擬似クラスになるらしい */
/* おそらく今のところ対応ブラウザはない */
:placeholder-shown {
	color: #b8b8b8;
}
/* Android chrome対策 */
div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, button, textarea, select, p, blockquote, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	max-height:999999px;
}

.clear {
	clear: both;
}
.clearfix {
	zoom: 100%;
}
.clearfix:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}
a {
	text-decoration: none;
}
a:link {
	color: #333333;
}
a:visited {
	color: #333333;
}
a.normal:link {
	color: #333333;
}
a.normal:visited {
	color: #333333;
}
a:hover {
	text-decoration: none;
}
a:active {
}
a.noline {
	text-decoration: none;
}
a.reverse {
	text-decoration: none;
}
a.reverse:hover {
	text-decoration: underline;
}
.linkBox {
	cursor: pointer;
}
body {
	text-align: center;
}
img {
	max-width: 100%;
	width: auto;
	height: auto;
	vertical-align: middle;
	-webkit-backface-visibility: hidden;
}
a { /* FireFox リンク選択時の点線を消す　*/
    overflow: hidden;
    outline: none;
}
.ov {
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}
.ov:hover {	
	opacity:0.7;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}
.ovImg:hover img {	
	opacity:0.7;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
}
.nowrap {
	white-space: nowrap;
}
.mincho {
	font-family: "YakuHanMP", YuMincho, '游明朝', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho ProN','メイリオ',"HGS明朝E", 'MS P 明朝', 'MS PMincho', serif;
}
@media screen\0 {
	.mincho {
		font-family: "YakuHanMP", 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho ProN','メイリオ',"HGS明朝E", 'MS P 明朝', 'MS PMincho', serif;
	}
}
.gothic {
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
@media screen\0 {
	.gothic {
		font-family: "YakuHanJP", 'Noto Sans JP', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	}
}
.Lato {
	font-family: "YakuHanJP", 'Lato', sans-serif;
}
* {
	box-sizing: border-box;
}


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

	body {
		font-size: 14px;
	}
	input[type="text"], input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="password"], input[type="date"], input[type="number"] {
		height: 44px;
		padding: 5px 10px;
		font-size: 16px;
		border: 2px solid #dddddd;
	}
	select {
		height: 44px;
		padding: 5px 10px;
		font-size: 16px;
		border: 2px solid #dddddd;
	}
	textarea {
		height: 34.6666666vw;
		padding: 5px 10px;
		font-size: 16px;
		border: 2px solid #dddddd;
	}
}

/**********************************

 general

***********************************/
.imgMax {
	max-width: none;
	width: 100%;
}
.floatL {
	float: left;
}
.floatR {
	float: right;
}
.alignC {
	text-align: center;
}
.alignR {
	text-align: right;
}
.alignL {
	text-align: left;
}
.veralignT {
	vertical-align: top;
}
.veralignM {
	vertical-align: middle;
}
.veralignB {
	vertical-align: bottom;
}
.indent {
	text-indent: -1em;
	padding-left: 1em;
}
.bold {
	font-weight: bold;
}
.white {
	color: #fff;
}
.red {
	color: #ff3f00;
}
.blue {
	color: #4370ab;
}
.yellow {
	color: #ffff00;
}
.bgYellow {
	background-color: #fff100;
}
.marker {
	background: linear-gradient(transparent 70%, #ffbf00 70%);
}
@media screen\0 {
	.marker {
		font-family: "YakuHanJP", Lato, メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}
}
.underline {
	text-decoration: underline;
}

@media screen and (min-width:768px){
	.sp {
		display: none !important;
	}
}
@media screen and (max-width:767px){
	.pc {
		display: none !important;
	}
}

/**********************************

 parts

***********************************/
.define_wrap {
	padding: 0 50px;
}

.define_inner {
	max-width: 100%;
	width: 1000px;
	margin: 0 auto;
}


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

	.define_wrap {
		padding: 0 4.545454545454545%;
	}
}


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

	.define_wrap {
		padding: 0 7.333333333333333%;
	}
}

/**********************************

 layout

***********************************/
body {
	height: auto !important;
}
body.is-fixed {
	position: fixed;
	width: 100%;
	/*height: 100%;*/
}
.l-wrap {
	padding-top: 150px;
	position: relative;
	overflow: hidden;
}

.l-wrap.is-noneActive .l-main,
.l-wrap.is-noneActive .l-footer {
	pointer-events: none;
}

.l-cover {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 15;
	background-color: #fff;
	pointer-events: none;
	opacity: 0;
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.l-cover.is-active {
	opacity: 1;
	pointer-events: auto;
}

.l-main {
}

.l-pageTop {
	display: none;
	position: fixed;
	bottom: 40px;
	right: 40px;
	z-index: 5;
}

@media screen and (min-width:768px){
	.l-cover {
		display: none !important;
	}
}

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

	.l-pageTop {
		width: 60px;
		bottom: 24px;
		right: 24px;
	}
}

@media screen and (max-width:767px){
	.l-wrap {
		padding-top: 55px;
	}

	.l-pageTop {
		width: 32px;
		bottom: 15px;
		right: 4%;
	}
}


/**********************************

 l-humberger

***********************************/
@media screen and (max-width:767px){

	.l-humberger {
		width: 55px;
		height: 55px;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 25;
	}

	.l-humberger a {
		display: block;
		width: 55px;
		height: 55px;
		background-color: #fff;
		overflow: visible;
		transition: background 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.l-humberger a.is-active {
		background-color: #fff;
	}

	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.menu-trigger {
		position: relative;
		width: 22px;
		height: 28px;
	}
	.menu-trigger span {
		position: absolute;
		left: 15px;
		width: 100%;
		height: 2px;
		background-color: #4370ab;
		border-radius: 10px;
	}
	.menu-trigger.is-active span {
		background-color: #4370ab;
	}
	.menu-trigger span:nth-of-type(1) {
		width: 25px;
		top: 18px;
	}
	.menu-trigger span:nth-of-type(2) {
		width: 25px;
		top: 27px;
	}
	.menu-trigger span:nth-of-type(3) {
		width: 25px;
		bottom: 17px;
	}

	.menu-trigger.is-active span:nth-of-type(1) {
		width: 25px;
		-webkit-transform: translateY(9px) rotate(-45deg);
		transform: translateY(9px) rotate(-45deg);
	}
	.menu-trigger.is-active span:nth-of-type(2) {
		opacity: 0;
	}
	.menu-trigger.is-active span:nth-of-type(3) {
		width: 25px;
		-webkit-transform: translateY(-9px) rotate(45deg);
		transform: translateY(-9px) rotate(45deg);
	}
}


/**********************************

 l-drawerMenu

***********************************/
@media screen and (max-width:767px){

	.l-drawerMenu {
		display: block;
		width: 100%;
		height: 100vh;
		padding: 0 4.666666666666667%;
		/*background-color: rgba(0,0,0,.9);*/
		opacity: 0;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 20;
		/*transform: translateX(105%);*/
		/*-webkit-transform: translateX(105%);*/
		pointer-events: none;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.l-drawerMenu.is-active {
		opacity: 1;
		pointer-events: auto;
		/*transform: none;*/
		/*-webkit-transform: none;*/
	}

	.l-drawerMenu__inner {
		padding-top: 90px;
	}

	.l-drawerMenu__inner .btn {
		margin-bottom: 30px;
		font-size: 16px;
		font-weight: bold;
	}

	.l-drawerMenu__inner .btn a {
		display: block;
		padding: 11px 15px;
		color: #fff;
		text-align: center;
		border-radius: 100px;
	}

	.l-drawerMenu__inner ul {
		font-size: 16px;
		font-weight: bold;
	}

	.l-drawerMenu__inner ul li {
		margin-bottom: 1.5em;
	}

	.l-drawerMenu__inner ul li:last-child {
		margin-bottom: 0;
	}

	.l-drawerMenu__inner ul li a {
		display: block;
		text-decoration: none;
	}
}




/**********************************

 l-header

***********************************/
.l-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	height: 150px;
	padding: 0 4.166666666666667%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	transition: box-shadow 600ms cubic-bezier(0.165, 0.84, 0.44, 1),
				height 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.l-header.is-scroll {
	height: 75px;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.l-header__logo {
	width: 183px;
}

.l-header__logo a,
.l-header__logo img {
	display: block;
}

.l-header nav {

}

.l-header nav ul {
	display: flex;
	align-items: center;
	font-size: 16px;
	font-weight: bold;
}

.l-header nav ul li {
	margin-right: 35px;
}

.l-header nav ul li:last-child {
	margin-right: 0;
}

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

	.l-header__logo {
		width: 13.5108vw;
	}

	.l-header nav ul {
		font-size: 1.185vw;
	}

	.l-header nav ul li {
		margin-right: 2.593vw;
	}
}

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

	.l-header nav ul li {
		margin-right: 2vw;
	}
}

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

	.l-header {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 55px;
		padding: 0 7.333333333333333%;
	}

	.l-header.is-scroll {
		height: 55px;
	}

	.l-header__logo {
		width: 110px;
	}

	.l-header nav {
		display: none;
	}
}

/**********************************

 l-footer

***********************************/
.l-footer {

}

.l-footer__inner {
	padding: 100px 0;
}

.l-footer__inner-logo {
	margin-bottom: 30px;
}

.l-footer__inner-copy {
	color: #bababa;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.5;
}

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

	.l-footer__inner {
		padding: 30px 0;
	}

	.l-footer__inner-logo {
		width: 110px;
		margin: 0 auto 18px;
	}

	.l-footer__inner-copy {
		font-size: 9px;
		text-align: center;
	}
}

/**********************************

 c-anchor

***********************************/
.c-anchor {
	display: block;
	margin-top: -75px;
	padding-top: 75px;
}

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

	.c-anchor {
		margin-top: -55px;
		padding-top: 55px;
	}
}

/**********************************

 c-title01

***********************************/
.c-title01 {
	margin-top: -.25em;
	margin-bottom: 1.19047619047619em;
	font-size: 42px;
	font-weight: bold;
	line-height: 1.6;
}

@media screen and (max-width:1099px){
	.c-title01 {
		font-size: 3.818181818181818vw;
	}
}

@media screen and (max-width:767px){
	.c-title01 {
		font-size: 21px;
	}
}


/**********************************

 c-btn01

***********************************/
a.c-btn01 {
	color: #fff;
	font-weight: bold;
	text-align: center;
	border-radius: 100px;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#779ac8+0,4270aa+50,779ac8+100 */
	background: rgb(119,154,200); /* Old browsers */
	background: -moz-linear-gradient(left,  rgba(119,154,200,1) 0%, rgba(66,112,170,1) 50%, rgba(119,154,200,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  rgba(119,154,200,1) 0%,rgba(66,112,170,1) 50%,rgba(119,154,200,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(119,154,200,1) 0%,rgba(66,112,170,1) 50%,rgba(119,154,200,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#779ac8', endColorstr='#779ac8',GradientType=1 ); /* IE6-9 */
	background-size: 200% 200%;
	background-position: 0% 50%;
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

a.c-btn01:hover {
	background-position: 100% 50%;
}


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



/**********************************

 c-hero

***********************************/
.c-hero {
	background: url(../images/hero_bg01_pc.png) no-repeat center;
}

.c-hero__inner {
	display: flex;
	align-items: center;
	width: 1200px;
	height: 788px;
}

.c-hero__inner-box {
	padding-bottom: 75px;
}

.c-hero__inner-box .ttl {
	font-size: 44px;
	font-weight: bold;
	line-height: 1.8;
}

.c-hero__inner-box .txt01 {
	margin-top: 1.5em;
	font-size: 18px;
	line-height: 2.8;
}

.c-hero__inner-box .btn {
	margin-top: 50px;
	font-size: 24px;
}

.c-hero__inner-box .btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 270px;
	height: 76px;
}

@media screen and (max-width:1299px){
	.c-hero {
		padding: 0 3.846153846153846%;
		background: url(../images/hero_bg01_pc.png) no-repeat center;
		background-size: 165.692vw 60.615vw;
	}

	.c-hero__inner {
		width: 92.308vw;
		height: 60.615vw;
	}

	.c-hero__inner-box {
		padding-bottom: 5.769vw;
	}

	.c-hero__inner-box .ttl {
		font-size: 3.385vw;
	}

	.c-hero__inner-box .txt01 {
		font-size: 1.385vw;
	}

	.c-hero__inner-box .btn {
		margin-top: 3.846vw;
		font-size: 1.846vw;
	}

	.c-hero__inner-box .btn a {
		width: 20.769vw;
		height: 5.846vw;
	}

}

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

	.c-hero {
		padding: 0 7.333333333333333%;
		background: none;
	}

	.c-hero__inner {
		display: block;
		width: auto;
		height: auto;
		padding: 9.333vw 0 16vw;
	}

	.c-hero__inner-box {
		padding-bottom: 0;
	}

	.c-hero__inner-box .ttl {
		margin-top: -.25em;
		font-size: 5.867vw;
		white-space: nowrap;
	}

	.c-hero__inner-box .txt01 {
		margin-top: 1.5em;
		font-size: 3.2vw;
		line-height: 2.8;
		white-space: nowrap;
	}

	.c-hero__inner-box .pic {
		width: 93.125%;
		margin: 6.666666666666667vw auto 0;
		text-align: center;
	}

	.c-hero__inner-box .btn {
		margin-top: 0;
		font-size: 4.267vw;
	}

	.c-hero__inner-box .btn a {
		width: 100%;
		height: 13.333vw;
	}
}



/**********************************

 c-about

***********************************/
.c-about {
	background: #426fab;
}

.c-about__inner {
	padding: 110px 0;
}

.c-about__inner p {
	margin-top: -.3em;
	line-height: 2.8;
}

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

	.c-about__inner {
		padding: 50px 0 60px;
	}

	.c-about__inner p {
		margin-top: -.2em;
		line-height: 2.4;
	}

}



/**********************************

 c-movie

***********************************/
.c-movie {
	background: #426FAB;
}

.c-movie__inner {
	padding: 100px 0 110px;
}

.c-movie__inner-box {
	margin-bottom: 35px;
}

.c-movie__inner-box .movie {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	border-radius: 10px;
	overflow: hidden;
}

.c-movie__inner-box .movie iframe,
.c-movie__inner-box .movie img {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

.c-movie__inner h2 {
	color: #FFF;
}

.c-movie__inner p {
	color: #FFF;
	margin-bottom: 1.25em;
}

.c-movie__inner p:last-child {
	margin-bottom: 0;
}

.c-movie__inner p.small {
	font-size: 16px;
}

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

	.c-movie__inner {
		padding: 50px 0 60px;
	}

	.c-movie__inner-box {
		margin-bottom: 20px;
	}

	.c-movie__inner-box .movie {
		border-radius: 6px;
	}

	.c-movie__inner p.small {
		font-size: 12px;
	}
}



/**********************************

 c-feature

***********************************/
.c-feature {

}

.c-feature__inner {
	padding: 100px 0 120px;
}

.c-feature__inner-list {
	display: flex;
	justify-content: space-between;
}

.c-feature__inner-list-sec {
	width: 30%;
}

.c-feature__inner-list-sec i {
	display: block;
	margin-bottom: 25px;
}

.c-feature__inner-list-sec .ttl {
	margin-bottom: 12px;
	font-size: 22px;
	font-weight: bold;
}

.c-feature__inner-list-sec .txt01 {
	font-size: 16px;
}

.c-feature__inner-list-sec ul {
	margin-top: 20px;
	font-size: 14px;
	font-weight: bold;
}

.c-feature__inner-list-sec ul li {
	padding: 10px 30px 10px;
	margin-bottom: 20px;
	background-color: #eef3f9;
	border-radius: 10px;
	position: relative;
	z-index: 1;
}

.c-feature__inner-list-sec ul li:before {
	content: "";
	display: block;
	width: 11px;
	height: 8px;
	background: url(../images/icon_check01.png) no-repeat center / contain;
	position: absolute;
	top: 19px;
	left:  14px;
}

.c-feature__inner-list-sec ul li:last-child {
	margin-bottom: 0;
}

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

	.c-feature__inner {
		padding: 50px 0 60px;
	}

	.c-feature__inner-list {
		display: block;
	}

	.c-feature__inner-list-sec {
		width: auto;
		margin-bottom: 30px;
	}

	.c-feature__inner-list-sec:last-child {
		margin-bottom: 0;
	}

	.c-feature__inner-list-sec i {
		display: block;
		width: 39px;
		margin-bottom: 12px;
	}

	.c-feature__inner-list-sec .ttl {
		margin-bottom: 8px;
		font-size: 18px;
	}

	.c-feature__inner-list-sec .txt01 {
		font-size: 14px;
	}

	.c-feature__inner-list-sec ul {
		margin-top: 20px;
		font-size: 12px;
	}

	.c-feature__inner-list-sec ul li {
		padding: 10px 15px 10px 20px;
		border-radius: 6px;
	}

	.c-feature__inner-list-sec ul li:before {
		width: 9px;
		height: 6px;
		top: 17px;
		left:  6px;
	}

	.c-feature__inner-list-sec ul li:last-child {
		margin-bottom: 0;
	}
}



/**********************************

 c-flow

***********************************/
.c-flow {
	background: #426fab;
}

.c-flow__inner {
	padding: 100px 0 110px;
}

.c-flow__inner-list {
	display: flex;
	justify-content: space-between;
}

.c-flow__inner-list-sec {
	width: 22%;
}

.c-flow__inner-list-sec i {
	display: block;
	margin-bottom: 15px;
}

.c-flow__inner-list-sec .ttl {
	padding-left: 15px;
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: bold;
	position: relative;
	z-index: 1;
}

.c-flow__inner-list-sec .ttl:before {
	content: "";
	display: block;
	width: 1px;
	height: 1em;
	background-color: #fff;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.c-flow__inner-list-sec .txt01 {
	font-size: 14px;
}

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

	.c-flow__inner {
		padding: 50px 0 60px;
	}

	.c-flow__inner-list {
		display: block;
	}

	.c-flow__inner-list-sec {
		width: auto;
		margin-bottom: 40px;
	}

	.c-flow__inner-list-sec:last-child {
		margin-bottom: 0;
	}

	.c-flow__inner-list-sec i {
		width: 40px;
		margin-bottom: 15px;
	}

	.c-flow__inner-list-sec .ttl {
		padding-left: 10px;
		margin-bottom: 10px;
		font-size: 18px;
	}

	.c-flow__inner-list-sec .txt01 {
		font-size: 14px;
	}
}



/**********************************

 c-case

***********************************/
.c-case {

}

.c-case__inner {
	padding: 100px 0 110px;
}

.c-case__inner-intro {
	display: flex;
	align-items: flex-end;
}

.c-case__inner-intro p {
	min-width: 73%;
	padding-right: 1.5em;
}

.c-case__inner-intro .navi {
	flex: 1;
	display: flex;
}

.c-case__inner-intro .navi .prev {
	width: 54px;
	height: 54px;
	margin-right: 15px;
	background: url(../images/icon_prev01_pc.png) no-repeat center / contain;
	cursor: pointer;
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.c-case__inner-intro .navi .prev:hover {
	opacity: .7;
}

.c-case__inner-intro .navi .next {
	width: 54px;
	height: 54px;
	background: url(../images/icon_next01_pc.png) no-repeat center / contain;
	cursor: pointer;
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.c-case__inner-intro .navi .next:hover {
	opacity: .7;
}

.c-case__inner-content {
	margin-top: 65px;
	margin-right: calc(500px - 50vw);
	overflow: hidden;
}

.c-case__inner-content-slider {
	width: 330px;
}

.c-case__inner-content-slider .slick-list {
	margin-right: -60px;  /* ガター分ネガティブマージン */
	overflow: visible !important;
}

.c-case__inner-content-slider-slide {
	margin-right: 60px;
}

.c-case__inner-content-slider-slide a {
	display: block;
}

.c-case__inner-content-slider-slide .pic {
	padding-top: 66.666666666666667%;
	margin-bottom: 18px;
	overflow: hidden;
	border-radius: 30px;
	position: relative;
	z-index: 1;
}

.c-case__inner-content-slider-slide .pic img {
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.c-case__inner-content-slider-slide .ttl {
	margin-bottom: 12px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.8;
}

.c-case__inner-content-slider-slide .date {
	margin-bottom: 10px;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.5;
}

.c-case__inner-content-slider-slide .txt01 {
	font-size: 16px;
	line-height: 2;
}

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

	.c-case__inner-content {
		margin-right: -5%;
	}

}

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

	.c-case__inner {
		padding: 50px 0 60px;
	}

	.c-case__inner-intro {
		display: block;
	}

	.c-case__inner-intro p {
		min-width: auto;
		padding-right: 0;
		margin-top: -.3em;
	}

	.c-case__inner-intro .navi {
		display: none;
	}

	.c-case__inner-content {
		margin: 30px 7.03125% 0;
		overflow: visible;
		position: relative;
		z-index: 1;
	}

	.c-case__inner-content .navi {
		flex: 1;
		display: flex;
	}

	.c-case__inner-content .navi .prev {
		width: 7.2vw;
		height: 7.2vw;
		background: url(../images/icon_prev01_sp.png) no-repeat center / contain;
		cursor: pointer;
		position: absolute;
		top: 13.333vw;
		left: -9.867vw;
		z-index: 1;
		transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.c-case__inner-content .navi .prev:hover {
		opacity: .7;
	}

	.c-case__inner-content .navi .next {
		width: 7.2vw;
		height: 7.2vw;
		background: url(../images/icon_next01_sp.png) no-repeat center / contain;
		cursor: pointer;
		position: absolute;
		top: 13.333vw;
		right: -9.867vw;
		z-index: 1;
		transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.c-case__inner-content .navi .next:hover {
		opacity: .7;
	}

	.c-case__inner-content-slider {
		width: auto;
		overflow: hidden;
	}

	.c-case__inner-content-slider .slick-list {
		margin-right: -15px;  /* ガター分ネガティブマージン */
		overflow: hidden !important;
	}

	.c-case__inner-content-slider-slide {
		margin-right: 15px;
	}

	.c-case__inner-content-slider-slide a {
		display: block;
	}

	.c-case__inner-content-slider-slide .pic {
		padding-top: 45.454545454545455%;
		margin-bottom: 10px;
		border-radius: 15px;
	}

	.c-case__inner-content-slider-slide .ttl {
		margin-bottom: 8px;
		font-size: 15px;
	}

	.c-case__inner-content-slider-slide .date {
		margin-bottom: 8px;
		font-size: 11px;
	}

	.c-case__inner-content-slider-slide .txt01 {
		font-size: 13px;
	}
}



/**********************************

 c-plan

***********************************/
.c-plan {
	background-color: #eaf0f7;
}

.c-plan__inner {
	width: 1180px;
	padding: 110px 0;
}

.c-plan__inner-list {
	display: flex;
	justify-content: space-between;
}

.c-plan__inner-list-sec {
	width: 23.728813559322034%;
	padding: 2.457627118644068% 1.610169491525424%;
	background-color: #fff;
	border: 1px solid #426fab;
	border-radius: 10px;
}

.c-plan__inner-list-sec .ttl {
	margin-top: -.25em;
	margin-bottom: .5em;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.6;
}

.c-plan__inner-list-sec .txt01 {
	margin-bottom: 12px;
	font-size: 16px;
}

.c-plan__inner-list-sec .price {
	margin-bottom: 25px;
	font-size: 14px;
	font-weight: bold;
}

.c-plan__inner-list-sec .price .large {
	font-size: 22px;
}

.c-plan__inner-list-sec .btn {
	margin-bottom: 25px;
	font-size: 18px;
}

.c-plan__inner-list-sec .btn a {
	display: block;
	padding: 9px 15px;
}

.c-plan__inner-list-sec ul {
	font-size: 14px;
}

.c-plan__inner-list-sec ul li {
	padding-left: 18px;
	margin-bottom: 14px;
	position: relative;
	z-index: 1;
}

.c-plan__inner-list-sec ul li:last-child {
	margin-bottom: 0;
}

.c-plan__inner-list-sec ul li:before {
	content: "";
	display: block;
	width: 11px;
	height: 8px;
	background: url(../images/icon_check01.png) no-repeat center / contain;
	position: absolute;
	top: .6em;
	left: 0;
	z-index: 1;
}

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

}

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

	.c-plan__inner-list {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin-bottom: -5%;
	}

	.c-plan__inner-list-sec {
		width: 47.5%;
		margin-bottom: 5%;
	}
}

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

	.c-plan__inner {
		padding: 50px 0 60px;
	}

	.c-plan__inner-list {
		display: block;
	}

	.c-plan__inner-list-sec {
		width: auto;
		padding: 6.25% 4.53125%;
		margin-bottom: 30px;
		border-radius: 6px;
	}

	.c-plan__inner-list-sec:last-child {
		margin-bottom: 0;
	}

	.c-plan__inner-list-sec .ttl {
		margin-top: 0;
		margin-bottom: .5em;
		font-size: 18px;
	}

	.c-plan__inner-list-sec .txt01 {
		margin-bottom: 10px;
		font-size: 14px;
	}

	.c-plan__inner-list-sec .price {
		margin-bottom: 20px;
		font-size: 12px;
	}

	.c-plan__inner-list-sec .price .large {
		font-size: 18px;
	}

	.c-plan__inner-list-sec .btn {
		margin-bottom: 20px;
		font-size: 16px;
	}

	.c-plan__inner-list-sec .btn a {
		padding: 8px 15px;
	}

	.c-plan__inner-list-sec ul {
		font-size: 12px;
	}

	.c-plan__inner-list-sec ul li {
		padding-left: 17px;
		margin-bottom: 10px;
	}

	.c-plan__inner-list-sec ul li:before {
		width: 11px;
		height: 8px;
		background: url(../images/icon_check02.png) no-repeat center / contain;
		top: .6em;
	}
}



/**********************************

 c-registration

***********************************/
.c-registration {
	background-color: #426fab;
}

.c-registration__inner {
	padding: 100px 0 110px;
}

.c-registration__inner-txt01 {
	font-size: 16px;
}

.c-registration__inner-txt01 a {
	color: #fff;
	font-weight: bold;
}

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

	.c-registration__inner {
		padding: 50px 0 60px;
	}

	.c-registration__inner-txt01 {
		font-size: 14px;
	}
}



/**********************************

 c-faq

***********************************/
.c-faq {

}

.c-faq__inner {
	padding: 100px 0 110px;
}

.c-faq__inner-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: -6%;
}

.c-faq__inner-list-sec {
	width: 47%;
	margin-bottom: 6%;
}

.c-faq__inner-list-sec .question {
	padding-left: 42px;
	margin-bottom: 1em;
	font-weight: bold;
	position: relative;
	z-index: 1;
}

.c-faq__inner-list-sec .question:before {
	content: "Q";
	display: block;
	font-family: "YakuHanJP", 'Lato', sans-serif;
	color: #416eab;
	font-size: 30px;
	font-weight: bold;
	line-height: 1;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.c-faq__inner-list-sec .answer {
	font-size: 16px;
	line-height: 2;
}

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

	.c-faq__inner {
		padding: 50px 0 60px;
	}

	.c-faq__inner-list {
		display: flex;
		justify-content: normal;
		flex-direction: column;
		margin-bottom: -35px;
	}

	.c-faq__inner-list-sec {
		width: auto;
		margin-bottom: 30px;
	}

	.c-faq__inner-list-sec:nth-child(odd) {
		order: 1;
	}

	.c-faq__inner-list-sec:nth-child(even) {
		order: 2;
	}

	.c-faq__inner-list-sec .question {
		padding-left: 28px;
		margin-bottom: 1em;
		font-size: 16px;
	}

	.c-faq__inner-list-sec .question:before {
		font-size: 21px;
		margin-top: .1em;
	}

	.c-faq__inner-list-sec .answer {
		font-size: 14px;
	}
}



/**********************************

 c-contact

***********************************/
.c-contact {
	background-color: #eaf0f7;
}

.c-contact__inner {
	padding: 100px 0 110px;
}

.c-contact__inner-txt01 {
	font-size: 16px;
}

.c-contact__inner-txt01 a {
	color: #3f6cab;
	font-weight: bold;
}

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

	.c-contact__inner {
		padding: 50px 0 60px;
	}

	.c-contact__inner-txt01 {
		font-size: 14px;
	}

}


/**********************************

 xxx

***********************************/

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

}

