@charset "utf-8";


body {
	margin: 0px;
	padding: 0px;
	color: #202020;
	font-size: 18px;
	line-height: 1.8;
	letter-spacing: .07em;
	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: .07em;
}
p {
	letter-spacing: .07em;
}
q:before, q:after {
	content:'';
}
abbr, acronym {
	border:0;
}
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: #202020;
}
a:visited {
	color: #202020;
}
a.normal:link {
	color: #202020;
}
a.normal:visited {
	color: #202020;
}
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;
}
.Oswald {
	font-family: "YakuHanJP", 'Oswald', 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;
}
.red {
	color: #ff3f00;
}
.blue {
	color: #ff7f00;
}
.yellow {
	color: #ffff00;
}
.bgYellow {
	background-color: #fff100;
}
.marker {
	background: linear-gradient(transparent 70%, #ffff00 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: 1060px;
	margin: 0 auto;
}


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

	.define_wrap {
		padding: 0 4.310344827586207%;
	}
}


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

	.define_wrap {
		padding: 0 4.66666667%;
	}
}

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

 layout

***********************************/
body {
	height: auto !important;
}
body.is-fixed {
	position: fixed;
	width: 100%;
	/*height: 100%;*/
}
.l-wrap {
	padding-bottom: 100px;
	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: #ff7f00;
	/*background-color: rgba(0,0,0,.9);*/
	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: 140px;
	right: 40px;
	z-index: 5;
}

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

	.l-wrap {
		padding-bottom: 8.818vw;
	}

	.l-pageTop {
		bottom: calc(8.818vw + 40px);
	}

}

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

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

	.l-pageTop {
		bottom: calc(8.818vw + 24px);
	}
}

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

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

	.l-wrap {
		padding-bottom: 50px;
	}

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


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

 l-humberger

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

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

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

	.l-humberger a.is-active {
		/*background-color: #000;*/
	}

	.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: #ff7f00;
	}
	.menu-trigger.is-active span {
		background-color: #fff;
	}
	.menu-trigger span:nth-of-type(1) {
		width: 25px;
		top: 20px;
	}
	.menu-trigger span:nth-of-type(2) {
		width: 14px;
		top: 29px;
	}
	.menu-trigger span:nth-of-type(3) {
		width: 20px;
		bottom: 20px;
	}

	.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: absolute;
		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: 60px;
	}

	.l-drawerMenu__inner ul {
		padding-top: 10px;
		font-size: 21px;
	}

	.l-drawerMenu__inner ul li {
		margin-bottom: 20px;
		font-weight: bold;
	}

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

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


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

 l-header

***********************************/
.l-header {
	background: #fff;
}

.l-header__inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 1200px;
	height: 110px;
}

.l-header__inner-logo {
	width: 96px;
	margin-top: 10px;
}

.l-header__inner-right {
	display: flex;
	align-items: center;
}

.l-header__inner-right nav {

}

.l-header__inner-right nav ul {
	display: flex;
	font-size: 16px;
	font-weight: bold;
}

.l-header__inner-right nav ul li {
	margin-right: 25px;
}

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

.l-header__inner-right-reserve {
	margin-left: 25px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
}

.l-header__inner-right-reserve a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 244px;
	height: 54px;
	color: #fff;
	text-align: center;
	background-color: #ff7c11;
	border-radius: 100px;
}

.l-header__inner-right-reserve a span {
	padding-left: 36px;
	position: relative;
	z-index: 1;
}

.l-header__inner-right-reserve a span:before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon_reserve01.png) no-repeat center;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

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

	.l-header__inner {
		width: 92.308vw;
		height: 8.462vw;
	}

	.l-header__inner-logo {
		width: 7.385vw;
		margin-top: 0.769vw;
	}

	.l-header__inner-right nav ul {
		font-size: 1.231vw;
	}

	.l-header__inner-right nav ul li {
		margin-right: 1.923vw;
	}

	.l-header__inner-right-reserve {
		margin-left: 1.923vw;
		font-size: 1.385vw;
	}

	.l-header__inner-right-reserve a {
		width: 18.769vw;
		height: 4.154vw;
	}

	.l-header__inner-right-reserve a span {
		padding-left: 2.769vw;
	}

	.l-header__inner-right-reserve a span:before {
		width: 1.846vw;
		height: 1.846vw;
	}
}

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

	.l-header__inner {
		display: flex;
		justify-content: center;
		align-items: center;
		width: auto;
		height: 60px;
	}

	.l-header__inner-logo {
		width: 48px;
		margin-top: 0;
	}

	.l-header__inner-right {
		display: none;
	}
}

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

 l-fixed-contents-pc

***********************************/
.l-fixed-contents-pc {
	width: 100%;
	background-color: #fff;
	border-top: 3px solid #ff7f00;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 10;
}

.l-fixed-contents-pc__inner {
	width: 1000px;
	height: 97px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.l-fixed-contents-pc__left {
	display: flex;
	align-items: center;
	margin-right: 30px;
}

.l-fixed-contents-pc__left-logo {
	width: 76px;
	margin-right: 30px;
}

.l-fixed-contents-pc__left-desc {
	color: #999999;
	font-size: 12px;
	line-height: 1.6;
}

.l-fixed-contents-pc__right {
	display: flex;
	align-items: center;
}

.l-fixed-contents-pc__right-tel {
	display: flex;
	align-items: center;
	margin-right: 30px;
}

.l-fixed-contents-pc__right-tel .box {

}

.l-fixed-contents-pc__right-tel .box .num {
	margin-bottom: 8px;
	color: #ff7f00;
	font-size: 36px;
	font-weight: 900;
	letter-spacing: .05em;
	line-height: 1;
	white-space: nowrap;
}

.l-fixed-contents-pc__right-tel .box .num a {
	padding-left: 30px;
	color: #ff7f00;
	position: relative;
	z-index: 1;
}

.l-fixed-contents-pc__right-tel .box .num a:before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon_tel02.png) no-repeat center;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.l-fixed-contents-pc__right-tel .box .time {
	padding: 4px 10px;
	font-size: 11px;
	line-height: 1.5;
	text-align: center;
	border: 1px solid #dddddd;
	border-radius: 100px;
}

.l-fixed-contents-pc__right-download {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
}

.l-fixed-contents-pc__right-download a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 248px;
	height: 66px;
	color: #fff;
	background-color: #ff7c11;
	border-radius: 100px;
	position: relative;
	z-index: 1;
	overflow: visible;
}

.l-fixed-contents-pc__right-download a span {
	padding-left: 36px;
	position: relative;
	z-index: 1;
}

.l-fixed-contents-pc__right-download a span:before {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon_reserve02.png) no-repeat center;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

@media screen and (max-width:1099px){
	.l-fixed-contents-pc {
		border-top: 3px solid #ff7f00;
	}

	.l-fixed-contents-pc__inner {
		height: 8.818vw;
	}

	.l-fixed-contents-pc__left {
		margin-right: 2.727vw;
	}

	.l-fixed-contents-pc__left-logo {
		width: 6.909vw;
		margin-right: 2.727vw;
	}

	.l-fixed-contents-pc__left-desc {
		font-size: 1.091vw;
	}

	.l-fixed-contents-pc__right-tel {
		margin-right: 2.727vw;
	}

	.l-fixed-contents-pc__right-tel .box .num {
		margin-bottom: 0.727vw;
		font-size: 3.273vw;
	}

	.l-fixed-contents-pc__right-tel .box .num a {
		padding-left: 2.727vw;
	}

	.l-fixed-contents-pc__right-tel .box .num a:before {
		width: 2.182vw;
		height: 2.182vw;
	}

	.l-fixed-contents-pc__right-tel .box .time {
		padding: 0.364vw 0.909vw;
		font-size: 1vw;
	}

	.l-fixed-contents-pc__right-download {
		font-size: 1.636vw;
	}

	.l-fixed-contents-pc__right-download a {
		width: 22.545vw;
		height: 6vw;
	}

	.l-fixed-contents-pc__right-download a span {
		padding-left: 3.273vw;
	}

	.l-fixed-contents-pc__right-download a span:before {
		width: 2.182vw;
		height: 2.182vw;
	}

}

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

 l-fixed-contents-sp

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

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

	.l-fixed-contents-sp {
		width: 100%;
		height: 50px;
		display: flex;
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 10;
	}

	.l-fixed-contents-sp__tel {
		width: 50%;
	}

	.l-fixed-contents-sp__tel a {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
		height: 50px;
		background-color: #fff;
	}

	.l-fixed-contents-sp__tel a .num {
		margin-bottom: 3px;
		color: #ff7f00;
		font-size: 18px;
		font-weight: 900;
		white-space: nowrap;
		text-align: center;
		line-height: 1;
	}

	.l-fixed-contents-sp__tel a .num span {
		padding-left: 15px;
		position: relative;
		z-index: 1;
	}

	.l-fixed-contents-sp__tel a .num span:before {
		content: "";
		display: block;
		width: 12px;
		height: 12px;
		background: url(../images/icon_tel02.png) no-repeat center;
		background-size: contain;
		position: absolute;
		top: 50%;
		left: 0;
		z-index: 1;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}

	.l-fixed-contents-sp__tel a .time {
		font-size: 9px;
		text-align: center;
		line-height: 1.3;
	}

	.l-fixed-contents-sp__reserve {
		width: 50%;
		font-size: 16px;
		font-weight: bold;
	}

	.l-fixed-contents-sp__reserve a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 50px;
		color: #fff;
		background-color: #ff8000;
	}

	.l-fixed-contents-sp__reserve a span {
		padding-left: 23px;
		position: relative;
		z-index: 1;
	}

	.l-fixed-contents-sp__reserve a span:before {
		content: "";
		display: block;
		width: 17px;
		height: 17px;
		background: url(../images/icon_reserve02.png) no-repeat center;
		background-size: contain;
		position: absolute;
		top: 50%;
		left: 0;
		z-index: 1;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}
}


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

 l-footer

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

}

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

.l-footer__inner-logo {
	margin-bottom: 25px;
	text-align: center;
}

.l-footer__inner-copy {
	color: #b8b8b8;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
}

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

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

	.l-footer__inner-logo {
		width: 48px;
		margin: 0 auto 12px;
	}

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

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

 c-bgDot01

***********************************/
.c-bgDot01 {
	background: url(../images/bg_dot01.png) repeat;
}

@media screen and (max-width:767px){
	.c-bgDot01 {
		background-size: 10px 10px;
	}
}

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

 c-bgStripe01

***********************************/
.c-bgStripe01 {
	background: url(../images/bg_stripe01.png) repeat;
}

@media screen and (max-width:767px){
	.c-bgStripe01 {
		background-size: 30px 5px;
	}
}

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

 c-bgStripe02

***********************************/
.c-bgStripe02 {
	background: url(../images/bg_stripe02.png) repeat;
}

@media screen and (max-width:767px){
	.c-bgStripe02 {
		background-size: 30px 5px;
	}
}

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

 c-bgStripe03

***********************************/
.c-bgStripe03 {
	background: url(../images/bg_stripe03.png) repeat;
}

@media screen and (max-width:767px){
	.c-bgStripe03 {
		background-size: 15px 15px;
	}
}

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

 c-title01

***********************************/
.c-title01 {
	margin-top: -.3em;
	margin-bottom: 50px;
	color: #ff7f00;
	font-size: 42px;
	font-weight: bold;
	text-align: center;
}

@media screen and (max-width:1159px){
	.c-title01 {
		margin-bottom: 4.31vw;
		font-size: 3.621vw;
	}
}

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

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

 c-subHero

***********************************/
.c-subHero {
	background-color: #d1ff03;
}

.c-subHero__inner {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 300px;
}

.c-subHero__inner__ttl {
	color: #000;
	font-size: 36px;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.5;
	text-align: center;
}

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

	.c-subHero__inner {
		height: 150px;
	}

	.c-subHero__inner__ttl {
		font-size: 18px;
	}
}

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

 c-btn01

***********************************/
a.c-btn01 {
	display: block;
	width: 100%;
	padding: 20px 15px;
	margin-bottom: 5px;
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
	line-height: 1.5;
	border-radius: 9px;
	box-shadow:0px 5px 0px 0px #802000;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ff531a+0,f23d00+100 */
	background: rgb(255,83,26); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(255,83,26,1) 0%, rgba(242,61,0,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,83,26,1) 0%,rgba(242,61,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,83,26,1) 0%,rgba(242,61,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff531a', endColorstr='#f23d00',GradientType=0 ); /* IE6-9 */
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}


@media screen and (max-width:767px){
	a.c-btn01 {
		padding: 12px 15px;
		margin-bottom: 4px;
		font-size: 17px;
		border-radius: 6px;
		box-shadow:0px 4px 0px 0px #802000;
	}
}

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

 c-form

***********************************/
.c-form {
}

.c-form__content {
	margin-bottom: 55px;
}

.c-form__content dl {
	display: table;
	width: 100%;
	margin-bottom: 34px;
}

.c-form__content dl dt {
	display: table-cell;
	width: 330px;
	padding: 15px 20px 15px 25px;
	vertical-align: middle;
	background-color: #0054b0;
	box-shadow:0px 4px 0px 0px #a9c1db;
}

.c-form__content dl dt .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	line-height: 1.5;
}

.c-form__content dl dt .inner .name {
	color: #fff;
	font-size: 20px;
	font-weight: bold;
}

.c-form__content dl dt .inner .require {
	padding: 3px 5px;
	color: #ffff00;
	font-size: 12px;
	font-weight: bold;
	background-color: #ff3f00;
}

.c-form__content dl dt .inner .any {
	padding: 3px 5px;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	background-color: #00bfff;
}

.c-form__content dl dd {
	display: table-cell;
	padding: 19px;
	line-height: 1.5;
	vertical-align: middle;
	background-color: #fff;
	border-top: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
	box-shadow:0px 4px 0px 0px #d9d9d9;
}

.c-form__submit {
	width: 340px;
	max-width: 100%;
	margin: 0 auto;
}

.c-form__submit button,
.c-form__confirmBtn__btn .submit {
	display: block;
	width: 100%;
	padding: 20px 15px;
	margin-bottom: 5px;
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
	line-height: 1.5;
	border-radius: 9px;
	box-shadow:0px 5px 0px 0px #802000;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ff531a+0,f23d00+100 */
	background: rgb(255,83,26); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(255,83,26,1) 0%, rgba(242,61,0,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,83,26,1) 0%,rgba(242,61,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,83,26,1) 0%,rgba(242,61,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff531a', endColorstr='#f23d00',GradientType=0 ); /* IE6-9 */
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.c-form__confirmBtn {
	display: flex;
	justify-content: center;
}

.c-form__confirmBtn__btn {
	width: 360px;
}

.c-form__confirmBtn__btn:first-child {
	margin-right: 30px;
}

.c-form__confirmBtn__btn .back {
	display: block;
	width: 100%;
	padding: 20px 15px;
	margin-bottom: 5px;
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
	line-height: 1.5;
	border-radius: 9px;
	box-shadow:0px 5px 0px 0px #333333;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#666666+0,777777+100 */
	background: rgb(102,102,102); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(102,102,102,1) 0%, rgba(119,119,119,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(102,102,102,1) 0%,rgba(119,119,119,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(102,102,102,1) 0%,rgba(119,119,119,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#666666', endColorstr='#777777',GradientType=0 ); /* IE6-9 */
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

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

	.c-form__content {
		margin-bottom: 32px;
	}

	.c-form__content dl {
		display: block;
		width: auto;
		margin-bottom: 30px;
	}

	.c-form__content dl dt {
		display: block;
		width: auto;
		padding: 11px 15px;
		box-shadow: none;
	}

	.c-form__content dl dt .inner {
		display: block;
		width: auto;
		position: relative;
	}

	.c-form__content dl dt .inner .name {
		font-size: 16px;
		text-align: center;
	}

	.c-form__content dl dt .inner .require {
		padding: 3px 5px;
		font-size: 10px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}

	.c-form__content dl dt .inner .any {
		padding: 3px 5px;
		font-size: 10px;
		position: absolute;
		top: 50%;
		right: 0;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}

	.c-form__content dl dd {
		display: block;
		padding: 14px;
		border: 1px solid #dddddd;
		box-shadow: none;
	}

	.c-form__submit {
		width: 240px;
	}

	.c-form__submit button,
	.c-form__confirmBtn__btn .submit {
		padding: 12px 15px;
		margin-bottom: 4px;
		font-size: 17px;
		border-radius: 6px;
		box-shadow:0px 4px 0px 0px #802000;
	}

	.c-form__confirmBtn {
		justify-content: space-between;
	}

	.c-form__confirmBtn__btn {
		width: 47.5%;
	}

	.c-form__confirmBtn__btn:first-child {
		margin-right: 0;
	}

	.c-form__confirmBtn__btn .back {
		padding: 12px 15px;
		margin-bottom: 4px;
		font-size: 17px;
		border-radius: 6px;
		box-shadow:0px 4px 0px 0px #333333;
	}

}


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

 c-faq__inner-list

***********************************/
.c-faq__inner-list {
}

.c-faq__inner-list dl {
	margin-bottom: 63px;
}

.c-faq__inner-list dl:last-child {
	margin-bottom: 0;
}

.c-faq__inner-list dl dt {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 23px;
}

.c-faq__inner-list dl dt .icon {
	width: 80px;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 80px;
	background-color: #ff7f00;
	border-radius: 10px;
	box-shadow: 0 3px 0 rgba(0,0,0,0.05);
}

.c-faq__inner-list dl dt .ttl {
	flex: 1;
	min-height: 80px;
	padding: 22px 30px;
	margin-left: 20px;
	color: #ff7f00;
	font-size: 20px;
	font-weight: bold;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 3px 0 rgba(0,0,0,0.05);
}

.c-faq__inner-list dl dd {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.c-faq__inner-list dl dd .icon {
	width: 80px;
	color: #ff7f00;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 80px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 3px 0 rgba(0,0,0,0.05);
}

.c-faq__inner-list dl dd .cont {
	flex: 1;
	min-height: 80px;
	padding: 23px 30px;
	margin-left: 20px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 3px 0 rgba(0,0,0,0.05);
}

.c-faq__inner-list dl dd .cont p {
}

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

	.c-faq__inner-list {
	}

	.c-faq__inner-list dl {
		margin-bottom: 32px;
	}

	.c-faq__inner-list dl dt {
		margin-bottom: 12px;
	}

	.c-faq__inner-list dl dt .icon {
		width: 40px;
		font-size: 13px;
		line-height: 40px;
		border-radius: 6px;
		box-shadow: 0 2px 0 rgba(0,0,0,0.05);
	}

	.c-faq__inner-list dl dt .ttl {
		flex: 1;
		min-height: 40px;
		padding: 5px 15px;
		margin-left: 10px;
		font-size: 16px;
		border-radius: 6px;
		box-shadow: 0 2px 0 rgba(0,0,0,0.05);
	}

	.c-faq__inner-list dl dd .icon {
		width: 40px;
		font-size: 13px;
		line-height: 40px;
		border-radius: 6px;
		box-shadow: 0 2px 0 rgba(0,0,0,0.05);
	}

	.c-faq__inner-list dl dd .cont {
		min-height: 40px;
		padding: 5px 15px;
		margin-left: 10px;
		border-radius: 6px;
		box-shadow: 0 2px 0 rgba(0,0,0,0.05);
	}

	.c-faq__inner-list dl dd .cont p {
	}

}



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

 c-completeSec

***********************************/
.c-completeSec {

}

.c-completeSec__inner {
	padding: 120px 0;
}

.c-completeSec__inner .intro {
	margin-bottom: 60px;
	font-size: 18px;
	font-weight: bold;
}

.c-completeSec__inner .back {
	max-width: 430px;
	margin: 0 auto;
}


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

	.c-completeSec__inner {
		padding: 60px 0;
	}

	.c-completeSec__inner .intro {
		margin-bottom: 30px;
		font-size: 14px;
	}

	.c-completeSec__inner .back {
		max-width: 215px;
	}
}



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

 c-hero

***********************************/
.c-hero {
	margin-bottom: 80px;
	background: url(../images/top.png) no-repeat right top;
}

.c-hero__inner {
	width: 1200px;
	height: 830px;
	padding-top: 50px;
}

.c-hero__inner-ttl {
	margin-bottom: 60px;
	color: #fff;
	font-size: 47px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: .12em;
	text-align: center;
}

.c-hero__inner-ttl .block {
	display: inline-block;
	padding: 9px 20px;
	/* margin-bottom: 35px; */
	border-radius: 15px;
	/* background-color: #ff7f00; */
	color: #ff7f00;
}
.c-hero__inner-ttl .block_1 {
	display: inline-block;
	padding: 0px 10px;
	/* margin-bottom: 35px; */
	border-radius: 15px;
	background-color: #ff7f00;
}


.c-hero__inner-ttl .block:last-child {
	margin-bottom: 0;
}

.c-hero__inner-copy {
	width: 100%;
	margin-bottom: 75px;
	text-align: center;
}

.c-hero__inner-btn {
	width: 60%;
	margin-left: 19%;
}

.c-hero__inner-btn a {
	display: block;
	padding: 18px 0;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	border-radius: 100px;
	box-shadow: 0px 5px 0px 0px #9b4f00;
	overflow: visible;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ff9b37+0,ff7f00+100 */
	background: rgb(255,155,55); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(255,155,55,1) 0%, rgba(255,127,0,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,155,55,1) 0%,rgba(255,127,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,155,55,1) 0%,rgba(255,127,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9b37', endColorstr='#005183',GradientType=0 ); /* IE6-9 */
	position: relative;
	z-index: 1;
}

.c-hero__inner-btn a:before {
	content: "";
	display: block;
	width: 86px;
	height: 86px;
	margin: -35px -90px 0 0;
	background: url(../images/hero_balloon_pc.png) no-repeat left top;
	background-size: contain;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

.c-hero__inner-btn a span {
	padding-left: 40px;
	position: relative;
	z-index: 1;
}

.c-hero__inner-btn a span:before {
	content: "";
	display: block;
	width: 28px;
	height: 28px;
	background: url(../images/icon_reserve02.png) no-repeat left top;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

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

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

	.c-hero__inner-ttl .inner{
		border-radius: 10px;
		background-color: #ff7f00;
	}

}

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

	.c-hero {
		background: url(../images/top.png) no-repeat center top;
		background-size: cover;
	}

	.c-hero__inner {
		width: 83.333vw;
		height: 57.639vw;
		padding-top: 4.722vw;
	}

	.c-hero__inner-ttl {
		margin-top: 2.208vw;
		margin-bottom: 5.167vw;
		font-size: 3.264vw;
		text-align: left;

	}

	.c-hero__inner-ttl .inner{
		border-radius: 10px;
		background-color: #ff7f00;
	}

	.c-hero__inner-ttl .block {
		padding: 0.625vw 1.389vw;
		/* margin-bottom: 2.431vw; */
		border-radius: 1.042vw;
	}

	.c-hero__inner-ttl .block_1 {
		display: inline-block;
		padding: 0px 10px;
		/* margin-bottom: 35px; */
		border-radius: 15px;
		background-color: #ff7f00;
	}

	.c-hero__inner-copy {
		width: 80%;
		margin-top: 8.208vw;
		margin-bottom: 5.208vw;
		text-align: center;
	}

	.c-hero__inner-btn {
		width: 41.389vw;
		margin-left: 24%;

	}

	.c-hero__inner-btn a {
		padding: 1.25vw 0;
		font-size: 1.667vw;
		box-shadow: 0px 0.347222222222222vw 0px 0px #9b4f00;
	}

	.c-hero__inner-btn a:before {
		width: 5.972vw;
		height: 5.972vw;
		margin: -2.431vw -6.25vw 0 0;
	}

	.c-hero__inner-btn a span {
		padding-left: 2.778vw;
	}

	.c-hero__inner-btn a span:before {
		width: 1.944vw;
		height: 1.944vw;
	}

}

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

	.c-hero {
		margin-bottom: 40px;
		/* background: url(../images/hero_bg01_sp.png) no-repeat right top; */
		background: url(../images/top.png) no-repeat right top;
		background-size: contain;
		position: relative;
		z-index: 1;
	}

	.c-hero__inner {
		width: auto;
		height: auto;
		padding-top: 9.667vw;
		/* padding-bottom: 10.666666666666667vw; */
		text-align: center;
	}

	.c-hero__inner-ttl {
		margin-bottom: 8vw;
		font-size: 4.3vw;
		text-align: center;

	}

	.c-hero__inner-ttl .block {
		display: inline-block;
		padding: 1.067vw 3.2vw;
		margin-bottom: 4.8vw;
		border-radius: 2.133vw;
	}

	.c-hero__inner-copy {
		width: 100%;
		margin-bottom: 9.067vw;
		text-align: center;
	}

	.c-hero__inner-btn {
		width: 65.333vw;
		margin: 0 auto;
		padding-top: 5vw;
	}

	.c-hero__inner-btn a {
		padding: 3.2vw 0;
		font-size: 4.267vw;
		box-shadow: 0px 0.933333333333333vw 0px 0px #9b4f00;
	}

	.c-hero__inner-btn a:before {
		width: 14.667vw;
		height: 14.667vw;
		margin: -8vw -9.333vw 0 0;
		background: url(../images/hero_balloon_sp.png) no-repeat left top;
		background-size: contain;
	}

	.c-hero__inner-btn a span {
		padding-left: 6.133vw;
	}

	.c-hero__inner-btn a span:before {
		width: 4.533vw;
		height: 4.533vw;
	}
}



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

 c-campaign

***********************************/
.c-campaign {

}

.c-campaign__inner {
	padding: 23px 0 40px;
}

.c-campaign__inner-bnr {
	text-align: center;
}

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

	.c-campaign__inner {
		padding: 15px 0 20px;
	}

}



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

 c-cv

***********************************/
.c-cv {

}

.c-cv__inner {
	padding: 40px 0 60px;
}

.c-cv__inner-ttl {
	margin-bottom: 15px;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	letter-spacing: .12em;
}

.c-cv__inner-copy {
	margin-bottom: 30px;
	text-align: center;
}

.c-cv__inner-list {
	display: flex;
	justify-content: center;
}

.c-cv__inner-list-tel {
	width: 380px;
	max-width: 100%;
	margin-right: 40px;
}

.c-cv__inner-list-tel a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	height: 88px;
	background-color: #fff;
	border-radius: 100px;
	box-shadow: 0px 5px 0px 0px #e5dfd9;
}

.c-cv__inner-list-tel a .num {
	margin-bottom: 10px;
	color: #ff7f00;
	font-size: 32px;
	font-weight: 900;
	text-align: center;
	line-height: 1;
	letter-spacing: .08em;
	white-space: nowrap;
}

.c-cv__inner-list-tel a .num span {
	padding-left: 26px;
	position: relative;
	z-index: 1;
}

.c-cv__inner-list-tel a .num span:before {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	background: url(../images/icon_tel01.png);
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.c-cv__inner-list-tel a .time {
	padding: 2px 35px;
	font-size: 10px;
	text-align: center;
	border: 1px solid #eeeeee;
	border-radius: 100px;
}

.c-cv__inner-list-reserve {
	width: 380px;
	max-width: 100%;
}

.c-cv__inner-list-reserve a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 88px;
	padding: 0 10px;
	color: #fff;
	font-size: 27px;
	font-weight: bold;
	text-align: center;
	border-radius: 100px;
	box-shadow: 0px 5px 0px 0px #9b4f00;
	overflow: visible;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ff9b37+0,ff7f00+100 */
	background: rgb(255,155,55); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(255,155,55,1) 0%, rgba(255,127,0,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,155,55,1) 0%,rgba(255,127,0,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,155,55,1) 0%,rgba(255,127,0,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9b37', endColorstr='#005183',GradientType=0 ); /* IE6-9 */
	position: relative;
	z-index: 1;
}

.c-cv__inner-list-reserve a span {
	padding-left: 40px;
	position: relative;
	z-index: 1;
}

.c-cv__inner-list-reserve a span:before {
	content: "";
	display: block;
	width: 28px;
	height: 28px;
	background: url(../images/icon_reserve02.png) no-repeat left top;
	background-size: contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

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

	.c-cv__inner {
		padding: 20px 0 28px;
	}

	.c-cv__inner-ttl {
		margin-bottom: 15px;
		font-size: 16px;
	}

	.c-cv__inner-copy {
		width: 332px;
		margin: 0 auto 20px;
	}

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

	.c-cv__inner-list-tel {
		width: 245px;
		margin: 0 auto 23px;
	}

	.c-cv__inner-list-tel a {
		height: 60px;
		box-shadow: 0px 3px 0px 0px #e5dfd9;
	}

	.c-cv__inner-list-tel a .num {
		margin-bottom: 5px;
		font-size: 21px;
	}

	.c-cv__inner-list-tel a .num span {
		padding-left: 18px;
	}

	.c-cv__inner-list-tel a .num span:before {
		width: 15px;
		height: 15px;
	}

	.c-cv__inner-list-tel a .time {
		padding: 1px 10px;
		font-size: 9px;
	}

	.c-cv__inner-list-reserve {
		width: 245px;
		margin: 0 auto;
	}

	.c-cv__inner-list-reserve a {
		height: 51px;
		padding: 0 10px;
		font-size: 16px;
		box-shadow: 0px 3px 0px 0px #9b4f00;
	}

	.c-cv__inner-list-reserve a span {
		padding-left: 23px;
	}

	.c-cv__inner-list-reserve a span:before {
		width: 17px;
		height: 17px;
	}
}



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

 c-trouble

***********************************/
.c-trouble {
	background: url(../images/trouble_bg01_pc.png) no-repeat center top;
	background-size: cover;
}

.c-trouble__inner {
	padding: 80px 0;
}

.c-trouble__inner-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-top: 25px;
	margin-bottom: -6.60377358490566%;
}

.c-trouble__inner-list-sec {
	width: 28.30188679245283%;
	margin-bottom: 6.60377358490566%;
	position: relative;
	z-index: 1;
}

.c-trouble__inner-list-sec:before {
	content: "";
	display: block;
	width: 30px;
	height: 35px;
	background: url(../images/trouble_icon01.png) no-repeat center;
	background-size: contain;
	position: absolute;
	top: -25px;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.c-trouble__inner-list-sec .pic {
	margin-bottom: 15px;
	text-align: center;
}

.c-trouble__inner-list-sec .ttl {
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

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

	.c-trouble__inner-list-sec .ttl {
		font-size: 1.897vw;
	}
}

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

	.c-trouble {
		background: url(../images/trouble_bg01_sp.png) no-repeat center top;
		background-size: cover;
	}

	.c-trouble__inner {
		padding: 33px 0;
	}

	.c-trouble__inner-list {
		padding: 15px 2.205882352941176% 0;
		margin-bottom: -9.230769230769231%;
	}

	.c-trouble__inner-list-sec {
		width: 46.153846153846154%;
		margin-bottom: 9.230769230769231%;
	}

	.c-trouble__inner-list-sec:before {
		width: 15px;
		height: 17.5px;
		top: -13px;
	}

	.c-trouble__inner-list-sec .pic {
		margin-bottom: 8px;
	}

	.c-trouble__inner-list-sec .ttl {
		font-size: 16px;
	}
}



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

 c-feature

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

}

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

.c-feature__inner-list {

}

.c-feature__inner-list-sec {
	display: flex;
	align-items: center;
	margin-bottom: 70px;
}

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

.c-feature__inner-list-sec:nth-child(even) {
	flex-direction: row-reverse;
}

.c-feature__inner-list-sec .pic {
	width: 47.169811320754717%;
	position: relative;
	z-index: 2;
}

.c-feature__inner-list-sec .content {
	flex: 1;
	padding: 2.830188679245283% 2.830188679245283% 2.830188679245283% 4.716981132075472%;
	background-color: #fff;
	border-radius: 20px;
	box-shadow: 0 5px 0 rgba(0,0,0,0.05);
}

.c-feature__inner-list-sec:nth-child(odd) .content {
	margin-left: -1.886792452830189%;
}

.c-feature__inner-list-sec:nth-child(even) .content {
	margin-right: -1.886792452830189%;
}

.c-feature__inner-list-sec .content .ttl {
	margin-bottom: .5em;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 2.7;
	letter-spacing: .1em;
}

.c-feature__inner-list-sec .content .ttl .inner {
	padding: 7px 15px;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	background-color: #ff7f00;
	border-radius: 10px;
}

.c-feature__inner-list-sec .content .txt01 {
}

@media screen and (max-width:1159px){
	.c-feature__inner-list-sec .content .ttl {
		font-size: 2.069vw;
	}

	.c-feature__inner-list-sec .content .ttl .inner {
		padding: 0.603vw 1.293vw;
		border-radius: 0.862vw;
	}

	.c-feature__inner-list-sec .content .txt01 {
		font-size: 1.552vw;
	}

}

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

	.c-feature__inner {
		padding: 30px 0 38px;
	}

	.c-feature__inner-list {

	}

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

	.c-feature__inner-list-sec .pic {
		width: 73.529411764705882%;
		margin: 0 auto;
		text-align: center;
	}

	.c-feature__inner-list-sec .content {
		flex: 1;
		padding: 25px 4.411764705882353% 3.676470588235294%;
		margin-top: -10px;
		border-radius: 10px;
		box-shadow: 0 3px 0 rgba(0,0,0,0.05);
	}

	.c-feature__inner-list-sec:nth-child(odd) .content {
		margin-left: 0;
	}

	.c-feature__inner-list-sec:nth-child(even) .content {
		margin-right:0;
	}

	.c-feature__inner-list-sec .content .ttl {
		margin-bottom: .3em;
		font-size: 16px;
		text-align: center;
	}

	.c-feature__inner-list-sec .content .ttl .inner {
		padding: 4px 8px;
		border-radius: 6px;
	}

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



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

 c-difference

***********************************/
.c-difference {

}

.c-difference__inner {
	padding: 80px 0 90px;
}

.c-difference__inner-content {
}

.c-difference__inner-content-head {
	display: flex;
}

.c-difference__inner-content-head .ttl {
	width: 50%;
	padding: 20px .5em;
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	line-height: 1.6;
	background-color: #0088d9;
	border-radius: 15px 0 0 0;
}

.c-difference__inner-content-head .ttl:nth-child(2) {
	background-color: #ff7f00;
	border-radius: 0 15px 0 0;
}

.c-difference__inner-content-body {
	padding: 0 4.716981132075472% 4.716981132075472%;
	position: relative;
	z-index: 1;
}

.c-difference__inner-content-body:before {
	content: "";
	display: block;
	width: 50%;
	height: 100%;
	background-color: #f2f9fd;
	border-radius: 0 0 0 15px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.c-difference__inner-content-body:after {
	content: "";
	display: block;
	width: 50%;
	height: 100%;
	background-color: #e8f0f4;
	border-radius: 0 0 15px 0;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
}

.c-difference__inner-content-body-sec {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 60px 0 0;
}

.c-difference__inner-content-body-sec .ttl {
	width: 100%;
	padding: 16px .5em;
	color: #ff7f00;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	background-color: #ffffff;
	border-top: 3px solid #ff7f00;
}

.c-difference__inner-content-body-sec-box {
	width: 44.791666666666667%;
	padding-top: 40px;
	border-top: 3px solid #ff7f00;
	position: relative;
	z-index: 1;
}

.c-difference__inner-content-body-sec-box:before {
	content: "";
	display: block;
	width: 35px;
	height: 19px;
	background: url(../images/difference_arr01.png) no-repeat center;
	background-size: contain;
	position: absolute;
	top: -3px;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.c-difference__inner-content-body-sec-box .pic {
	margin-bottom: 40px;
	text-align: center;
}

.c-difference__inner-content-body-sec-box .muscle {
}

.c-difference__inner-content-body-sec-box .muscle p {
	padding: 13px .5em;
	margin-top: 50px;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	letter-spacing: .12em;
	background-color: #0088d9;
	border-radius: 15px;
	position: relative;
	z-index: 1;
}

.c-difference__inner-content-body-sec-box.personal .muscle p {
	background-color: #ff7f00;
}

.c-difference__inner-content-body-sec-box.personal .muscle p:before {
	content: "";
	display: block;
	width: 26px;
	height: 26px;
	background: url(../images/difference_icon01.png) no-repeat center;
	background-size: contain;
	position: absolute;
	top: -38px;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.c-difference__inner-content-body-sec-box .muscle p:first-child {
	margin-top: 0;
}

.c-difference__inner-content-body-sec-box .muscle p:first-child:before {
	display: none;
}

.c-difference__inner-content-body-sec-box .approach {
}

.c-difference__inner-content-body-sec-box .approach p {
	padding-top: .6em;
	color: #0088d9;
	font-size: 33px;
	font-weight: bold;
	text-align: center;
	line-height: .75;
	letter-spacing: .12em;
}

.c-difference__inner-content-body-sec-box.personal .approach p {
	padding-top: 0;
	color: #ff7f00;
	font-size: 33px;
	font-weight: bold;
}

.c-difference__inner-content-body-sec-box .approach p .Lato {
	font-size: 42px;
	font-weight: 900;
	letter-spacing: .05em;
}

.c-difference__inner-content-body-sec-box.personal .approach p .Lato {
	font-size: 63px;
}

.c-difference__inner-content-body-sec-box .range .pic {
	margin-bottom: 15px;
	text-align: center;
}

.c-difference__inner-content-body-sec-box .range p {
	color: #0087d8;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	letter-spacing: .12em;
}

.c-difference__inner-content-body-sec-box.personal .range p {
	color: #ff7f00;
}

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

	.c-difference__inner-content-head .ttl {
		padding: 1.724vw .5em;
		font-size: 2.241vw;
		border-radius: 1.293vw 0 0 0;
	}

	.c-difference__inner-content-head .ttl:nth-child(2) {
		border-radius: 0 1.293vw 0 0;
	}

	.c-difference__inner-content-body:before {
		border-radius: 0 0 0 1.293vw;
	}

	.c-difference__inner-content-body:after {
		border-radius: 0 0 1.293vw 0;
	}

	.c-difference__inner-content-body-sec {
		padding: 5.172vw 0 0;
	}

	.c-difference__inner-content-body-sec .ttl {
		padding: 1.379vw .5em;
		font-size: 2.069vw;
		border-top: 3px solid #ff7f00;
	}

	.c-difference__inner-content-body-sec-box {
		padding-top: 3.448vw;
		border-top: 3px solid #ff7f00;
	}

	.c-difference__inner-content-body-sec-box:before {
		width: 3.017vw;
		height: 1.638vw;
		top: -0.259vw;
	}

	.c-difference__inner-content-body-sec-box .pic {
		margin-bottom: 3.448vw;
	}

	.c-difference__inner-content-body-sec-box .muscle p {
		padding: 1.379vw .5em;
		margin-top: 4.31vw;
		font-size: 1.897vw;
		border-radius: 1.293vw;
	}

	.c-difference__inner-content-body-sec-box.personal .muscle p:before {
		width: 2.241vw;
		height: 2.241vw;
		top: -3.276vw;
	}

	.c-difference__inner-content-body-sec-box .approach p {
		font-size: 2.845vw;
	}

	.c-difference__inner-content-body-sec-box.personal .approach p {
		font-size: 2.845vw;
	}

	.c-difference__inner-content-body-sec-box .approach p .Lato {
		font-size: 3.621vw;
	}

	.c-difference__inner-content-body-sec-box.personal .approach p .Lato {
		font-size: 5.431vw;
	}

	.c-difference__inner-content-body-sec-box .range .pic {
		margin-bottom: 1.293vw;
	}

	.c-difference__inner-content-body-sec-box .range p {
		font-size: 2.069vw;
	}

}

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

	.c-difference__inner {
		padding: 30px 0 35px;
	}

	.c-difference__inner-content {
	}

	.c-difference__inner-content-head {
		display: flex;
	}

	.c-difference__inner-content-head .ttl {
		padding: 10px .5em;
		font-size: 13px;
		border-radius: 8px 0 0 0;
	}

	.c-difference__inner-content-head .ttl:nth-child(2) {
		border-radius: 0 8px 0 0;
	}

	.c-difference__inner-content-body {
		padding: 0 4.411764705882353% 7.352941176470588%;
	}

	.c-difference__inner-content-body:before {
		border-radius: 0 0 0 8px;
	}

	.c-difference__inner-content-body:after {
		border-radius: 0 0 8px 0;
	}

	.c-difference__inner-content-body-sec {
		padding: 25px 0 0;
	}

	.c-difference__inner-content-body-sec .ttl {
		padding: 9px .5em;
		font-size: 12px;
		border-top: 2px solid #ff7f00;
	}

	.c-difference__inner-content-body-sec-box {
		width: 45.161290322580645%;
		padding-top: 20px;
		border-top: 2px solid #ff7f00;
	}

	.c-difference__inner-content-body-sec-box:before {
		width: 24px;
		height: 13px;
		top: -2px;
	}

	.c-difference__inner-content-body-sec-box .pic {
		margin-bottom: 15px;
	}

	.c-difference__inner-content-body-sec-box .muscle p {
		padding: 6px .5em;
		margin-top: 25px;
		font-size: 13px;
		border-radius: 8px;
	}

	.c-difference__inner-content-body-sec-box.personal .muscle p:before {
		width: 13px;
		height: 13px;
		top: -19px;
	}

	.c-difference__inner-content-body-sec-box .approach {
	}

	.c-difference__inner-content-body-sec-box .approach p {
		padding-top: .4em;
		font-size: 17px;
	}

	.c-difference__inner-content-body-sec-box.personal .approach p {
		font-size: 17px;
	}

	.c-difference__inner-content-body-sec-box .approach p .Lato {
		font-size: 22px;
	}

	.c-difference__inner-content-body-sec-box.personal .approach p .Lato {
		font-size: 32px;
	}

	.c-difference__inner-content-body-sec-box .range .pic {
		width: 62.142857142857143%;
		margin: 0 auto 10px;
	}

	.c-difference__inner-content-body-sec-box .range p {
		font-size: 13px;
	}
}



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

 c-method

***********************************/
.c-method {

}

.c-method__inner {
	padding: 80px 0 90px;
}

.c-method__inner-pic01 {
	margin-bottom: 40px;
	text-align: center;
}

.c-method__inner-content {
	padding: 3.679245283018868%;
	border: 1px solid #eeeeee;
	background-color: #fff;
	border-radius: 15px;
}

.c-method__inner-content-ttl {
	padding: 26px .5em;
	margin-bottom: 40px;
	color: #fff;
	font-size: 36px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	background-color: #ff7f00;
	border-radius: 20px;
	position: relative;
	z-index: 1;
}

.c-method__inner-content-ttl:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 16px 0 16px;
	border-color: #ff7f00 transparent transparent transparent;
	position: absolute;
	top: 100%;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.c-method__inner-content-pic01 {
	margin-bottom: 30px;
	text-align: center;
}

.c-method__inner-content-point {

}

.c-method__inner-content-point .sec {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 30px;
}

.c-method__inner-content-point .sec:last-child {
	margin-bottom: 0;
}

.c-method__inner-content-point .sec .ttl {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 110px;
	height: 66px;
	margin-right: 20px;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
	background-color: #ff7f00;
	border-radius: 10px;
}

.c-method__inner-content-point .sec .cont {
	flex: 1;
	min-height: 66px;
	padding: 14px 20px;
	border: 1px solid #dddddd;
	border-radius: 10px;
}

.c-method__inner-content-point .sec .cont p {
	color: #ff7f00;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.6;
}

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

	.c-method__inner-content-ttl {
		padding: 2.241379310344828vw .5em;
		font-size: 3.103448275862069vw;
	}
}

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

	.c-method__inner {
		padding: 30px 0 35px;
	}

	.c-method__inner-pic01 {
		margin-bottom: 20px;
	}

	.c-method__inner-content {
		padding: 5.735294117647059% 4.264705882352941%;
		border-radius: 10px;
	}

	.c-method__inner-content-ttl {
		padding: 13px .5em;
		margin-bottom: 20px;
		font-size: 16px;
		border-radius: 10px;
	}

	.c-method__inner-content-ttl:before {
		border-width: 8px 8px 0 8px;
	}

	.c-method__inner-content-pic01 {
		margin-bottom: 20px;
	}

	.c-method__inner-content-point {

	}

	.c-method__inner-content-point .sec {
		display: block;
		margin-bottom: 20px;
	}

	.c-method__inner-content-point .sec .ttl {
		display: block;
		width: auto;
		height: auto;
		padding: 6px .5em;
		margin-right: 0;
		margin-bottom: 10px;
		font-size: 12px;
		text-align: center;
		border-radius: 6px;
	}

	.c-method__inner-content-point .sec .cont {
		min-height: auto;
		padding: 2.5% 3.225806451612903%;
		border-radius: 6px;
	}

	.c-method__inner-content-point .sec .cont p {
		font-size: 14px;
	}
}



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

 c-store

***********************************/
.c-store {

}

.c-store__inner {
	padding: 80px 0 90px;
}

.c-store__inner-list {

}

.c-store__inner-list dl {
	display: flex;
	padding: 23px 0;
	border-bottom: 1px solid #dddddd;
}

.c-store__inner-list dl:first-child {
	border-top: 1px solid #dddddd;
}

.c-store__inner-list dl dt {
	display: flex;
	align-items: center;
	width: 205px;
	padding-right: 1em;
	font-weight: bold;
}

.c-store__inner-list dl dd {
	flex: 1;
}

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

	.c-store__inner {
		padding: 30px 0 35px;
	}

	.c-store__inner-list {

	}

	.c-store__inner-list dl {
		display: block;
		padding: 12px 0;
	}

	.c-store__inner-list dl dt {
		display: block;
		width: auto;
		padding-right: 0;
		margin-bottom: .25em;
		text-align: center;
	}

	.c-store__inner-list dl dd {
	}

	.c-store__inner-list dl dd.sp-center {
		text-align: center;
	}
}


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

 c-map

***********************************/
.c-map {

}

.c-map iframe {
	display: block;
	width: 100%;
	height: 400px;
}

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

	.c-map iframe {
		height: 53.333333333333333vw;
	}

}


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

 c-flow

***********************************/
.c-flow {

}

.c-flow__inner {
	padding: 85px 0 95px;
}

.c-flow__inner-list {

}

.c-flow__inner-list-sec {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 3.30188679245283% 3.773584905660377%;
	margin-bottom: 83px;
	background-color: #fff;
	border-radius: 20px;
	box-shadow: 0 5px 0 rgba(0,0,0,0.05);
	position: relative;
	z-index: 1;
}

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

.c-flow__inner-list-sec:before {
	content: "";
	display: block;
	width: 42px;
	height: 28px;
	background: url(../images/flow_arr01.png) no-repeat center;
	background-size: contain;
	position: absolute;
	bottom: -58px;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}

.c-flow__inner-list-sec:last-child:before {
	display: none;
}

.c-flow__inner-list-sec .pic {
	width: 20.408163265306122%;
	padding: 30px;
	background-color: #f6faff;
	border-radius: 10px;
}

.c-flow__inner-list-sec .pic img {
	display: block;
	margin: 0 auto;
}

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

.c-flow__inner-list-sec .content .ttl {
	margin-top: -.25em;
	margin-bottom: .5em;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 2.5;
}

.c-flow__inner-list-sec .content .ttl span {
	padding: 6px 12px;
	background-color: #ff7f00;
	border-radius: 10px;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}

.c-flow__inner-list-sec .content .txt01 {
}

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

	.c-flow__inner {
		padding: 35px 0 37px;
	}

	.c-flow__inner-list {

	}

	.c-flow__inner-list-sec {
		display: block;
		padding: 5.147058823529412% 4.411764705882353% 4.411764705882353%;
		margin-bottom: 45px;
		border-radius: 10px;
		box-shadow: 0 3px 0 rgba(0,0,0,0.05);
	}

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

	.c-flow__inner-list-sec:before {
		width: 26px;
		height: 17px;
		bottom: -32px;
	}

	.c-flow__inner-list-sec:last-child:before {
		display: none;
	}

	.c-flow__inner-list-sec .pic {
		width: 100px;
		padding: 15px;
		margin: 0 auto 15px;
		border-radius: 6px;
	}

	.c-flow__inner-list-sec .pic img {
		height: 33px;
	}

	.c-flow__inner-list-sec .content {
		width: auto;
	}

	.c-flow__inner-list-sec .content .ttl {
		margin-top: -.25em;
		margin-bottom: .5em;
		font-size: 16px;
		text-align: center;
	}

	.c-flow__inner-list-sec .content .ttl span {
		padding: 3px 6px;
		border-radius: 6px;
	}

	.c-flow__inner-list-sec .content .txt01 {
	}
}


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

 c-faq

***********************************/
.c-faq {
	background-color: #f6faff;
}

.c-faq__inner {
	width: 1000px;
	padding: 80px 0 95px;
}

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

	.c-faq__inner {
		padding: 30px 0 37px;
	}

}


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

 xxx

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

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

}
