@charset "utf-8";

.fo-din {
	font-family: "din-condensed", sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: .8
}
.bg-grey {
	background-color: #f2f2f2!important;
}
.ttlBox {
	text-align: left;
	font-size: 2rem;
	letter-spacing: .1em;
	margin-bottom: 2rem;
}
.ttlBox h2 {
	font-size: 5.2rem;
}
.ttlBox.alncenter {
	text-align: center;
}
.ttlBox.mb00 {
	margin-bottom: 0;
}
.txt {
	font-size: 2rem;
	line-height: 1.8
}
.menuIcon {
	display: none;
}

/*header
---------------------------------------------------------*/
#header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 9995;
	transition: .5s
}
#header.scrollClass {
	background: #fff;
	border-bottom: 1px solid #f9f9f9;
}
.hLogo {
	max-width: 38rem;
}
.hWrap {
	padding: 5rem 2rem 1.5rem;
	position: relative;
}
.hLft {
	text-align: left;
}
.hTxt {
	font-size: 1.6rem;
	font-weight: 500;
	margin-bottom: 2rem;
	position: absolute;
	top: 1rem;
	left: 2rem;
}
.hRht {
	padding-top: 3.5rem;
}
.hNav li {
	font-size: 2.2rem;
	margin-left: 5rem;
}
.hNav a {
	transition: .4s;
	position: relative;
	z-index: 1;
}
.hNav a::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 0;
	height: .2rem;
	background: #971c22;
	transition: .4s ease-out;
	z-index: -1;
}
.hNav a:hover::after {
	width: 100%;
}
.fixNav {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 9999;
}
.fixNav a {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	background: #606060;
	font-size: 2.2rem;
	padding: 1.5rem 3rem;
	height: 7rem;
}
.fixNav ._contact a::before {
	content: "";
	display: block;
	background: url("../img/icon_mail.svg") center center no-repeat;
	background-size: contain;
	width: 3.1rem;
	height: 2.1rem;
	margin-right: 1.5rem;
}
.fixNav ._hacomono a {
	background: #164793;
}
.fixNav ._hacomono a img {
	max-height: 2.2rem;
	margin-right: 1.5rem;
	opacity: 1!important;
}
.fixNav a:hover {
	background-color: #971c22;
}

/*index*/
#index #header:not(.scrollClass),#index #header:not(.scrollClass) .hNav a {
	color: #fff;
}

/*footer
---------------------------------------------------------*/
#footer {
	padding: 4rem 0 2rem
}
.fLogo {
	margin-bottom: 4rem;
}
.fLogo img {
	width: 43rem
}
#nav {
	padding: 5rem 0;
	text-align: left;
	border-top: 1px solid #e6e6e6;
	border-bottom: 1px solid #e6e6e6;
}
.nav ul + ul {
	margin-left: 16rem;
}
.nav li:not(:first-of-type) {
	margin-top: 1.5rem;
}
.nav a {
	position: relative;
}
.nav li a::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 0;
	height: 1px;
	background: #971c22;
	transition: .4s ease-out;
}
.nav li a:hover::after {
	width: 100%;
}
.fBox {
	margin-top: 4rem;
}
.fLft {
	text-align: left;
	margin-right: 3rem;
}
.fLft big {
	font-size: 112.5%;
	font-weight: bold
}
.fLft p:not(:first-of-type) {
	margin-top: 1rem;
}
.useTxt {
	text-align: center;
	background: #f2f2f2;
	padding: .5rem;
	margin-bottom: 4rem;
}
.tokuyaku {
	background: #000;
	padding: 1.5rem;
	max-width: 29rem;
	text-align: center;
}
.fRht {
	width: 50%;
}
.fLink li {
	width: 48.5%;
	height: 14.2rem;
}
.fLink li img {
	opacity: 1!important;
	width: 31.7rem;
}
.fLink li:nth-of-type(2) img {
	width: 23.9rem;
}
.fLink a {
	border: 1px solid #e6e6e6;
	width: 100%;
	height: 100%;
	padding: 0 1rem;
}
.fLink a span {
	display: block;
	margin-top: 1rem;
}
.fLink a:hover {
	background: #f9f9f9
}
.scl li:not(:first-of-type) {
	margin-left: 2rem;
}

/*top
---------------------------------------------------------*/
.mainArea {
	background: url("../img/top/main_bg.jpg") center center no-repeat;
	background-size: cover;
	padding-top: 27rem;
	color: #fff;
	margin-bottom: 3rem;
	overflow: hidden;
}
.mainTtl {
	text-align: left;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 9rem 0 17.5rem;
}
.mainTtl .fo-din {
	font-size: 4rem
}
.mainTtl .fo-din span {
	display: block;
	font-size: 152.5%;
	color: #164793;
	margin: 1.5rem 0 1rem;
}
.mainLft .tokuyaku {
	background: #4d4d4d;
}
.mainImgWrap {
	width: 55.7%;
	max-width: 880px;
	position: relative;
	padding-bottom: 14.5rem;
	margin-right: 6rem;
}
.mainImg {
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: 0;
	width: 62.9545454%;
	z-index: 5
}
.mainPic ul {
	width: 39.8%;
	max-width: 350px;
	display: flex;
	flex-wrap: wrap;
}
.mainPic ul._02 {
	width: 45.23%;
	max-width: 398px;
	padding-top: 8rem;
}
.mainPic ul::after {
	content: "";
	display: block;
	clear: both;
}
.mainPic li {
	margin: .5rem;
}
.mainPic ul._01 li:nth-of-type(1) {
	width: 48%;
	margin-left: 21%;
}
.mainPic ul._01 li:nth-of-type(2) {
	width: 53.7142857%;
}
.mainPic ul._01 li:nth-of-type(3) {
	width: 38.2857142%;
	margin-top: 35%;
}
.mainPic ul._02 li:nth-of-type(1) {
	width: 51.5463917%;
	margin-left: 9%;
}
.mainPic ul._02 li:nth-of-type(2) {
	width: 35.0515463%;
	display: flex;
	align-items: flex-end;
}
.mainPic ul._02 li:nth-of-type(3) {
	width: 35.0515463%;
}
.mainPic ul._02 li:nth-of-type(4) {
	width: 45.8762886%;
}
.newsTtl {
	width: 20%;
	position: relative;
	display: flex;
	align-items: center;
}
.newsTtl::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100vw;
	height: 100%;
	background: #f2f2f2;
	z-index: -1;
}
.newsArea .newsWrap {
	width: 72%;
}
.newsWrap a {
	padding: 1.5rem 0;
	text-align: left;
	position: relative;
	padding-right: 4rem;
}
.newsWrap a::after {
	content: "";
	display: block;
	background: url("../img/arrow.svg") center center no-repeat;
	background-size: contain;
	width: 1.6rem;
	height: 1rem;
	position: absolute;
	right: 2rem;
	bottom: 3.5rem;
}
.newsWrap li {
	border-bottom: 1px solid #e6e6e6;
}
.newsWrap li:first-of-type {
	border-top: 1px solid #e6e6e6;
}
.thumb {
	text-align: center;
	position: relative;
	overflow: hidden;
	padding: 0;
	height: 9.5rem;
	width: 15rem;
	min-width: 15rem;
	margin-right: 3rem;
}
.thumb img {
	height: 100%;
	min-width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	transition: .4s;
	opacity: 1!important;
}
.thumb:hover img {
	transform: scale(1.1)
}
.newsCont {
	font-size: 112.5%;
}
.newsCont .d-flex {
	margin-bottom: 1rem;
}
.date {
	font-size: 1.4rem;
	color: #999;
}
.newIcon {
	display: inline-block;
	background: #000;
	color: #fff;
	text-align: center;
	font-size: 1.3rem;
	padding: .2rem 1rem;
	line-height: 1;
	margin-left: 1.5rem;
}
.newsCont .ttl {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}
.newsWrap a:hover {
	color: #ed1c24;
}
.pager {
	width: 100%;
	text-align: center;
	margin-top: 4rem;
}
.pager span, .pager a {
	display: inline-block;
	padding: .3rem 1rem;
	margin: 2px;
	transition: .1s;
}
.pager .next,.pager .prev {
	border: none;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.pager .current {
	background: #000;
	color: #fff;
}
span.page-numbers.dots {
	border: none;
	padding: 0;
}
.contList {
	display: -ms-grid;
	display: grid;
	gap: 2rem;
}
.contBox {
	-ms-grid-column: 2;
	-ms-grid-column-span: 1;
	grid-column: 2 / 3;
	-ms-grid-row: 1;
	-ms-grid-row-span: 1;
	grid-row: 1 / 2;
	overflow: hidden;
	position: relative;
	min-height: 33rem;
}
.contBox._03,.contBox._05 {
	-ms-grid-column: 3;
	-ms-grid-column-span: 1;
	grid-column: 3 / 4;
}
.contBox._04,.contBox._05 {
	-ms-grid-row: 2;
	-ms-grid-row-span: 1;
	grid-row: 2 / 3;
}
.contBox._01 {
	-ms-grid-column: 1;
	-ms-grid-column-span: 1;
	grid-column: 1 / 2;
	-ms-grid-row: 1;
	-ms-grid-row-span: 2;
	grid-row: 1 / 3;
}
.contBox img {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	min-width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	transition: .4s;
	opacity: 1!important;
}
.contBox:hover img {
	transform: scale(1.05)
}
.contBox .ttl {
	position: absolute;
	left: 1.5rem;
	bottom: 1rem;
	z-index: 1;
	color: #fff;
	font-size: 2rem;
	line-height: 1;
}
.contBox .ttl h3 {
	font-size: 3.6rem;
	margin-right: 1.5rem;
}
.contBox.coming {
	pointer-events: none;
}
.contBox.coming::after {
	content: "";
	display: block;
	width: 26rem;
	height: 5rem;
	background: #164793 url("../img/comingsoon.svg") center center no-repeat;
	background-size: 75% auto;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	z-index: 5;
}
.aboutImg {
	width: 55%;
}
.aboutBox {
	width: 45%;
	text-align: left;
}
.aboutBox h3 {
	font-size: 3.6rem;
	margin: 3rem 0;
}
.tag {
	margin-top: 7rem;
}
.tag li {
	width: 11rem;
	color: #fff;
	position: relative;
	font-size: 2rem;
	text-align: center;
	padding: 1rem 0;
	margin: .2rem 0 .2rem 1.2rem;
	letter-spacing: .05em;
	line-height: 1;
}
.tag li::before {
	content: "";
	display: block;
	background: #000;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: -1;
	-webkit-transform: skewX(-25deg);
	-ms-transform: skewX(-25deg);
	transform: skewX(-25deg);
}
.coachImg {
	width: 55%;
}
.coachImg li {
	width: 50%;
	padding: .5rem;
	text-align: left;
}
.coachImg li._01 {
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
}
.coachImg li._01 img,.coachImg li._02 img {
	width: 70%;
}
.coachBox {
	text-align: left;
}
.coachBox .ttlBox {
	margin-bottom: 6rem;
}
.reserveWrap > * {
	width: 50%;
	position: relative;
}
.reserveBox {
	padding: 6rem 2rem;
	background: #f2f2f2;
}
.reserveBox .ttlBox h2 {
	margin: 2rem 0
}
.btn-hacomono {
	max-width: 24rem;
	margin: 2rem auto 0;
}
.btn-hacomono a {
	display: block;
	background: #164793;
	padding: 1.5rem 1rem;
}
.btn-hacomono a img {
	margin-right: 1rem;
	max-height: 2.2rem;
}
.reserveImg {
	font-size: 2.2rem;
	color: #fff;
	background: #000 url("../img/top/reserve_img.jpg") top left 20rem no-repeat;
	background-size: 51.2rem auto;
	letter-spacing: .2em;
}
.porterWrap figure {
	width: 50%;
}
.porterWrap figure img {
	width: 48rem;
}
.porterBox {
	width: 49%;
	text-align: left;
}
.porterBox h2 {
	font-size: 2rem;
	margin-bottom: 5rem;
}
.porterBox h3 {
	font-size: 2.4rem;
	margin-bottom: 2rem;
}

/*comingsoon
---------------------------------------------------------*/
#comingArea {
	background: url("../img/top/coming_bg.jpg") center center no-repeat;
	background-size: cover;
	padding: 0 8rem;
}

/*subPage
---------------------------------------------------------*/
.pageTtlArea {
	background: #f2f2f2;
	height: 30.5rem;
}
.pageTtl {
	text-align: left;
	width: 90%;
	height: 100%;
	max-width: 1256px;
	margin: 0 auto;
	background: url("../img/pagettl_icon.svg") right center no-repeat;
	background-size: 48.3rem auto;
	display: flex;
	justify-content: center;
	flex-direction: column;
	font-size: 2.3rem;
	font-weight: bold;
}
.pageTtl h1 {
	font-size: 6.8rem;
	margin-bottom: .5rem;
}
.pageTtlWrapArea {
	overflow: hidden;
}
.pageTtlWrap {
	width: 90%;
	max-width: 1320px;
	margin: 0 auto;
}
.pageTtlWrap .img {
	width: 70%;
	height: 64rem;
	position: relative;
}
.pageTtlWrap .img::before {
	content: "";
	display: block;
	background: url("../img/how/pagettl.jpg") left center no-repeat;
	background-size: cover;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 64.5vw;
	height: 100%;
	min-width: 120rem
}
.pageTtlWrap .pageTtl {
	display: block;
	width: 30%;
	background: none;
}

/*news
---------------------------------------------------------*/
#newsArea {
	max-width: 900px;
}
.newsDetail {
	text-align: left;
}
.newsHeader {
	padding-bottom: 3rem;
	margin-bottom: 3rem;
	border-bottom: 1px solid #e6e6e6;
}
.newsHeader h2 {
	margin-top: 2rem;
	font-size: 2.4rem;
}
.newsConttents .img {
	margin-bottom: 5rem;
	text-align: center;
}
.newsConttents a {
	color: #0E6AD8;
	text-decoration: underline;
}
.newsDetail .btn {
	margin-top: 6rem;
}
.btn {
	margin-top: 5rem;
	text-align: center;
}
.btn a {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	background: #164793;
	padding: 1rem 2.5rem .7rem
}
.btn a::after {
	content: "";
	display: block;
	background: url("../img/arrow_wh.svg") center center no-repeat;
	background-size: contain;
	width: 1.6rem;
	height: 1rem;
	margin-left: 1.5rem;
}
.btn a:hover {
	background-color: #971c22;
}

/*contact
---------------------------------------------------------*/
.formTxt {
	font-size: 115%;
	font-weight: bold;
	margin-bottom: 4rem;
}
.formArea h2 {
	font-size: 2rem;
	border-bottom: 1px solid #888d92;
	padding-bottom: 5rem;
	margin-bottom: 5rem;
	letter-spacing: .05em;
}
.formBox dt,.formBox dd {
	width: 30%;
	font-size: 2rem;
	padding: 2rem 2rem 2rem 0;
	text-align: left;
}
.formBox dt::before {
	content: "任意";
	font-size: 85%;
	font-weight: 500;
	padding: .75rem 1rem .5rem;
	display: inline-block;
	background: #999;
	color: #fff;
	line-height: .8;
	margin-right: 1.5rem;
}
.formBox dt.req::before {
	content: "必須";
	color: #fff;
	background: #000
}
.formBox dt:last-of-type,.formBox dd:last-of-type {
/*	border-bottom: 1px solid #ccc;*/
}
.formBox dt {
	padding-top: 4.5rem;
}
.formBox dd {
	width: 70%;
	padding-left: 0;
	padding-right: 0;
}
.formBox dt.mt00,.formBox dt.mt00 + dd {
	margin-top: -.8rem;
	padding-top: 0;
}
.formName > .txt {
	width: 40%;
	display: flex;
	align-items: center;
}
.formName > .txt:first-of-type {
	margin-right: 2%;
}
.formName .txt span {
	display: block;
	white-space: nowrap;
	margin-right: 1rem;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",'Noto Sans JP', sans-serif ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Verdana;
	font-weight: 500;
	font-style: normal;
}
.form-address p {
	text-align: left;
	padding: 5px 0;
}
.formBox input[type="text"],.formBox input[type="tel"],.formBox input[type="email"],.formBox select,.formBox textarea {
	width: 100%;
	padding: 1.3em;
	border: 1px solid #ccc;
	border-radius: 3px;
	color: #000;
	font-size: 100%;
}
.formBox input[type="text"].size-s {
	max-width: 21rem;
}
.formBox label {
}
.formBox select {
	width: auto;
	background: #fff;
	color: #000
}
.formBox option:first-of-type {
	background: #b3b3b3;
	color: #fff;
}
.formBox textarea {
	height: 19rem;
}
.form-birth select {
	width: 12rem;
}
.form-birth select:first-of-type {
/*	width: auto;*/
}
.form-birth select + span {
	margin: 0 .5rem
}
.zipBtn {
	background: #666;
	color: #fff;
	margin-left: 1rem;
	border: none;
	padding: .8rem 2rem;
	cursor: pointer;
	line-height: 1.1;
}
.zipBtn:hover {
	background: #ccc
}
.privacyBox {
	margin-top: 3rem;
	font-size: 1.4rem;
}
.policyTxt a {
	text-decoration: underline;
	font-size: 115%;
	font-weight: bold;
}
.policyTxt a:hover {
	text-decoration: none;
	color: #ffdf00;
}
.policyCheck {
	margin: 2rem 0 3rem;
	font-size: 115%;
	font-weight: bold;
}
.privacyBox a {
	text-decoration: underline;
}
.formBtn {
	margin-top: 3rem;
}
.mw_wp_form_confirm button.button._grey {
	display: block!important;
}
.formWrap input[type="submit"],.formWrap input[type="button"],.formWrap button.button._grey {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic",'Noto Sans JP', sans-serif ,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS P Gothic", Verdana;
	font-weight: 500;
	font-style: normal;
	color: #fff;
	font-size: 2rem;
	letter-spacing: .075em;
	text-indent: .075em;
	background: #164793;
	min-width: 25rem;
	display: block;
	padding: 1rem 2rem;
	margin: 1rem;
	border: 1px solid #fff;
	transition: .2s;
	cursor: pointer;
}
.formWrap input[type="submit"]._green {
	background: #00b4a0;
}
.formWrap input[type="submit"].btn_back,
.formWrap button.button._grey {
	background: #ddd;
	color: #333;
}
.formWrap input[type="submit"]:hover,.formWrap input[type="button"]:hover,.formWrap button.button._grey:hover {
	opacity: .7;
}

.onlyconf,button.button._grey {
	display: none;
}
.mw_wp_form_confirm button.button._grey,
.mw_wp_form_confirm .onlyconf,
#confirm .onlyconf {
	display: block!important;
}
.mw_wp_form .horizontal-item + .horizontal-item {
	margin-left: 0!important;
}
.mw_wp_form_confirm .privacyBox,
.mw_wp_form_confirm .formBox dt::before,
.mw_wp_form_confirm .zipBtn,
.mw_wp_form_confirm .formName .txt span,
.mw_wp_form_confirm .policyTxt,
.mw_wp_form_confirm h2 {
	display: none!important;
}
.mw_wp_form_confirm .formName > .txt {
	width: auto;
}
.thxBox {
	padding: 4rem 1.5rem;
	border: 1px solid #999;
	background: #fff;
	color: #1a1a1a
}
.mw_wp_form .error {
	color: #ff2b2b!important
}

/*access
---------------------------------------------------------*/
.accessMain {
	background: url("../img/access/main.jpg") center center no-repeat;
	background-size: cover;
	height: 71.4rem
}
.accessImg h2 {
	margin-bottom: 2rem;
}
.accessImg .txt {
	margin-top: 3rem;
}
.accessBox {
	width: 42rem;
	text-align: left;
	margin-left: 3rem;
	padding-top: 3.8rem;
}
.accessBox dl {
	border-bottom: 1px solid #e6e6e6;
	padding: 2rem .5rem;
	font-size: 2rem;
}
.accessBox dl:first-of-type {
	border-top: 1px solid #e6e6e6;
}
.accessBox dt {
	font-size: 110%;
	font-weight: bold
}
.parking {
	background: #f2f2f2;
	margin-top: 4.5rem;
	padding: 4rem 1rem;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.2
}
.parking figure {
	margin-left: 3rem;
}
.btmImg {
	margin-top: 11rem;
}
#accessMap {
	padding-bottom: 0;
}
.gMap {
	height: 38.5rem;
}
.gMap iframe {
	width: 100%;
	height: 100%;
	-webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}
#porterArea .ttlBox {
	margin-bottom: 5rem;
}
.porter02Wrap > * {
	width: 46%;
	text-align: left;
}
.porter02Box h3 {
	font-size: 3.6rem;
	margin-bottom: 3rem;
}

/*reserve
---------------------------------------------------------*/
.akerunFlow h2 {
	font-size: 3rem;
	background: #f2f2f2;
	padding: 1rem;
	margin-bottom: 6rem;
	box-shadow: 1rem 1rem 0 #ddd;
}
.akerunFlow > section {
	padding: 5rem;
	background: #f9f9f9;
	max-width: 90%;
	margin: 0 auto;
}
.akerunFlow > section:not(:first-of-type) {
	margin-top: 5rem;
}
.akerunFlow h3 {
	font-size: 2.4rem;
	margin: 0 auto 4rem;
	position: relative;
	padding-bottom: 3.4rem;
}
.akerunFlow h3::after {
	content: "";
	width: 8rem;
	height: 4px;
	background: #ddd;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
}
.notice {
	font-size: 1.8rem;
	line-height: 1.8;
	text-align: left;
	margin: 0 auto;
	max-width: 100rem;
	position: relative;
	background: #fff;
	padding: 4rem 5rem;
	border: 2px solid #f2f2f2;
	box-shadow: 1rem 1rem 0 #f2f2f2;
}
.notice a {
	text-decoration: underline;
	color: #e50012;
}
.notice a:hover {
	text-decoration: none;
	color: #164793;
}
.reserveTxt {
	margin-bottom: 6rem;
}
.redTxt {
	display: inline-block;
	color: #e50012;
	border: 1px solid #e50012;
	font-size: 1.8rem;
	padding: .5rem 3.5rem;
	margin-top: 1rem;
}
.stepBox {
	width: 27%;
	position: relative;
}
.stepBox:not(:last-of-type)::after {
	content: "";
	display: block;
	width:0;
	height:0;
	border-style:solid;
	border-width: 1.4rem 0 1.4rem 2.4rem;
	border-color: transparent transparent transparent #000000;
	position: absolute;
	right: -7rem;
	top: 22rem
}
.stepNum {
	font-size: 2.8rem;
	margin-bottom: 1.5rem;
}
.stepBox .img {
	border-radius: 5rem 5rem 0 0;
	overflow: hidden;
	box-shadow: 0 0 2.5rem rgba(0,0,0,.05);
	max-width: 31.3rem;
	margin: 0 auto;
	background: #fff;
}
.stepBox .txt {
	font-size: 1.8rem;
	line-height: 1.6;
	text-align: left;
	padding-top: 3rem;
	position: relative;
}
.stepBox .txt::before {
	content: "";
	display: block;
	background: #f2f2f2;
	width: 200vw;
	height: 100%;
	position: absolute;
	left: -100vw;
	top: 0;
	z-index: -50;
}
.akerunFlow .stepBox .txt::before {
	display: none;
}
.stepBox .txt small {
	display: block;
	margin-top: .5rem;
	line-height: 1.6
}
#applyArea {
	padding: 6rem 0;
}
.akerunFlow #applyArea {
	padding-bottom: 0;
}
.applyWrap {
	padding: 2rem 2rem 3rem;
	background: #fff;
	border: 2px solid #f2f2f2;
	box-shadow: 1rem 1rem 0 #f2f2f2;
}
.reTxt {
	font-size: 2rem;
	font-weight: bold;
	background: #f2f2f2;
	padding: 1.2rem 1rem 1rem;
	margin-bottom: 4rem;
}
.applyWrap h4 {
	margin: 3rem auto 1.5rem;
}
img[src*="/logo_akerun.png"] {
	max-height: 4rem;
}
.applyBox {
	margin-top: 3rem;
}
.applyCon {
	width: 50%;
	padding: 0 3rem;
	text-align: left;
}
.applyCon:not(:first-of-type) {
	border-left: 1px solid #ccc;
}
.qr {
	margin-right: 3rem;
}
.applyCon h3 {
	font-size: 2.4rem;
	margin-bottom: 1rem;
}
.applyCon a img {
	max-height: 4.9rem;
}
.applyCon .txt {
	font-size: 1.8rem;
	margin-top: 3rem;
}
.btn._02 a {
	color: #000;
	border: 1px solid #000;
	background: transparent
}
.btn._02 a::after {
	background-image: url("../img/arrow.svg")
}
.btn._02 a:hover {
	background: #ccc;
}
#schedule {
	margin-top: 6rem;
	padding-top: 2rem;
	overflow: visible;
	position: relative;
}
#schedule::before {
	content: "";
	display: block;
	width:0;
	height:0;
	border-style:solid;
	border-width: 3.8rem 5rem 0 5rem;
	border-color: #000000 transparent transparent transparent;
	position: absolute;
	left: 0;
	right: 0;
	top: -10rem;
	margin: 0 auto;
	z-index: 10
}
#schedule h2 {
	font-size: 3rem;
	background: #f2f2f2;
	padding: 1rem;
	margin-bottom: 8rem;
	box-shadow: 1rem 1rem 0 #ddd;
}
.scheduleArea {
	padding: 0 2rem
}
.scheduleWrap {
	position: relative;
}
.scheduleWrap:not(:first-of-type) {
	padding-top: 10rem;
	margin-top: 10rem;
	border-top: 1px solid #e6e6e6;
}
.scheduleWrap:not(:first-of-type)::before {
	content: "";
	display: block;
	width:0;
	height:0;
	border-style:solid;
	border-width: 3.8rem 2.2rem 0 2.2rem;
	border-color: #000000 transparent transparent transparent;
	position: absolute;
	left: 0;
	right: 0;
	top: -2rem;
	margin: 0 auto;
	z-index: 10
}
.scheduleWrap figure {
	width: 35%;
}
.scheduleBox {
	width: 58%;
	text-align: left;
}
.scheduleBox h3 {
	font-size: 3rem;
	margin-bottom: 2rem;
}
.scheduleBox p {
	margin-bottom: 1.5rem;
}
.scheduleBox ol li:not(:first-of-type) {
	margin-top: 2rem;
}
.scheduleBox ol li {
	padding-left: 3.6rem;
	text-indent: -3.6rem;
}
.scheduleBox ol li span {
	background: #000;
	text-align: center;
	color: #fff;
	font-size: 2rem;
	width: 2.6rem;
	height: 2.6rem;
	line-height: 2.7rem;
	display: inline-block;
	margin-right: 1rem;
	text-indent: 0;
}
.scheduleBox .btn {
	margin-top: .5rem;
	text-align: left;
}
.noteWrap {
	background: #f2f2f2;
	padding: 2rem;
	margin-bottom: 1.5rem;
}
.noteWrap h4 {
	border-right: 1px solid #ccc;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2rem;
	padding: 0 4rem;
	margin-right: 3rem;
}
.noteWrap ul {
	padding: 1.5rem 0;
}
.noteWrap li {
	text-indent: -1em;
	padding-left: 1em;
	font-size: 1.8rem;
	margin: .5rem 0;
}



/*how
---------------------------------------------------------*/
#howArea h2,#howArea .icon {
	margin-bottom: 5rem;
}
.linkWrap li {
	width: 49%;
	position: relative;
	overflow: hidden;
	z-index: 1;
}
.linkWrap li a {
	width: 100%;
	height: 32.8rem;
	color: #fff;
	font-size: 3rem;
	font-weight: bold;
}
.linkWrap li a .fo-din {
	font-size: 2.4rem;
	margin-top: 1rem;
}
.linkWrap img {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	min-width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	transition: .4s;
	opacity: 1!important;
	z-index: -1;
}
.linkWrap li:hover img {
	transform: scale(1.05)
}

/*room
---------------------------------------------------------*/
#roomPage .pageTtlWrap .img::before {
	background-image: url("../img/room/pagettl.jpg")
}
.featureWrap {
	margin-top: 5rem;
}
.featureWrap .img {
	width: 48%;
	margin-right: -8%;
}
.featureBox {
	width: 50%;
	text-align: left;
}
.featureBox .num {
	min-width: 11.3rem;
	margin-right: 7rem;
}
.featureBox dt {
	font-size: 3rem;
	font-weight: bold;
	margin-bottom: 2rem;
}
#gdr {
	background: url("../img/room/gdr_bg.jpg") center center no-repeat;
	background-size: cover;
}
#gdr h2 {
	max-width: 22.7rem;
	margin: 0 auto 7rem;
}
.gdrBox {
	width: 30%;
	text-align: left;
}
.gdrBox h3 {
	font-size: 2.4rem;
	margin: 3rem 0 1.5rem;
}
.planAncArea {
	background: url("../img/room/plan_bg.jpg") center center no-repeat;
	background-size: cover;
	color: #fff;
	padding: 12rem 0;
}
.planAncArea h2 {
	font-size: 3.6rem;
	margin-bottom: 4rem;
}
.planAnc li {
	width: 48%;
}
.planAnc li a {
	width: 100%;
	height: 100%;
	color: #fff;
	position: relative;
	border: 1px solid #fff;
	padding: 4rem 1rem;
}
.planAnc li a .fo-din {
	font-size: 4.2rem;
	line-height: 1.1;
	margin-right: 5rem;
}
.planAnc li a::after {
	content: "";
	display: block;
	background: url("../img/arrow_wh.svg") center center no-repeat;
	background-size: contain;
	width: 2.6rem;
	height: 2rem;
	position: absolute;
	top: 45%;
	right: 10rem;
	-webkit-transform: rotate(90deg) translateY(-45%);
	-ms-transform: rotate(90deg) translateY(-45%);
	transform: rotate(90deg) translateY(-45%);
}
.planAnc a:hover {
	background: #971c22;
}
.planArea {
	padding: 10rem 0;
}
.plan01Box {
	width: 48%;
	background: #f2f2f2;
	padding: 3rem; 
	margin-bottom: 3rem;
}
.plan01Box > * {
	padding: 2rem 5.5rem;
}
.plan01Box dt {
	width: 45%;
	border-right: 1px solid #ccc;
}
.plan01Box dt h3 {
	font-size: 2.4rem;
	margin-top: 1.5rem;
	line-height: 1.3
}
.plan01Box dt h3 .fo-din {
	font-size: 175%;
	line-height: 1;
	letter-spacing: .05em;
}
.plan01Box dd {
	text-align: left;
	width: 55%;
	font-size: 1.8rem;
	font-weight: bold;
}
.plan01Box dd p {
	margin: 1rem 0;
}
.planStepArea {
	margin-top: 7rem;
}
.planStepArea h3 {
	font-size: 3rem;
	margin-bottom: 5rem;
}
.planStep {
	max-width: 153rem;
	margin: 0 auto;
}
.planStep .stepBox {
	max-width: 26.5rem;
	margin: 0 5.5rem;
}
.planStep .stepBox .img {
	border-radius: 4rem
}
.planStep .stepBox .txt::before {
	display: none;
}
.stepBox .btn {
	margin-top: 1.5rem;
}
.stepBox .btn a {
	width: 100%;
	max-width: 25rem
}
.planStep .stepBox .txt {
	min-height: 9.5rem;
}
.planStep .stepBox:not(:last-of-type)::after {
	top: 26rem
}
.planStepBtm {
	margin-top: 8rem;
	padding-top: 6rem;
	border-top: 1px solid #e6e6e6;
	position: relative;
}
.planStepBtm::before {
	content: "";
	display: block;
	width:0;
	height:0;
	border-style:solid;
	border-width: 3.8rem 2.2rem 0 2.2rem;
	border-color: #164793 transparent transparent transparent;
	position: absolute;
	left: 0;
	right: 0;
	top: -1.9rem;
	margin: 0 auto;
	z-index: 10
}
.planStepBtm .btn {
	margin-top: 3rem;
}
.planSlider {
}
.slick-arrow {
	position: absolute;
	background: #000 url("../img/arrow_wh.svg") center center no-repeat;
	background-size: 1.6rem auto;
	width: 4rem;
	height: 4rem;
	right: -3rem;
	top: 25.5rem;
	z-index: 1;
	cursor: pointer;
	transition: .1s;
}
.slick-arrow.prev {
	right: auto;
	left: -3rem;
	transform: rotate(180deg)
}
.slick-arrow:hover {
	background-color: #164793;
}
.slick-arrow.slick-disabled {
	display: none!important;
}
.planPlice {
	display: inline-flex;
	border: 1px solid #000;
	padding: 1rem 3rem;
	margin-top: 2rem;
	text-align: left
}
.planPlice dt {
	white-space: nowrap;
	margin-right: 1.5rem;
}
.gdrBnr a {
	background: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2rem;
	font-weight: 600;
	padding: 2rem 3rem;
	position: relative;
}
.gdrBnr {
	margin-top: 5rem;
}
.gdrBnr li {
	width: 44.5rem;
	margin: 1rem 1.5rem
}
.gdrBnr a img {
	max-height: 2.8rem;
	margin-right: .5rem;
}
.gdrBnr a::after {
	content: "";
	display: block;
	background: url("../img/icon_pdf.svg") center center no-repeat;
	background-size: contain;
	width: 4.3rem;
	height: 5rem;
	margin-left: 2rem;
}

/*company
---------------------------------------------------------*/
.secTtl {
	background: #606060;
	color: #fff;
	font-size: 2.3rem;
	margin-bottom: 6rem;
	padding: 1rem;
}
.inner {
	max-width: 1100px;
	margin: 0 auto;
}
.tblWrap {
	border-bottom: 1px solid #c8c8c8;
}
.tblWrap dt,.tblWrap dd {
	width: 75%;
	padding: 2rem 1.5rem;
	text-align: left;
	border-top: 1px solid #c8c8c8;
}
.tblWrap dt {
	width: 25%;
	background: #f2f2f2;
	font-weight: bold
}
.tblWrap a {
	text-decoration: underline;
}
.tblWrap a:hover {
	text-decoration: none;
	color: #971c22;
}
.tblWrap .int {
	padding-left: 2.25em;
	text-indent: -2.25em;
}
.profileBtm {
	margin-top: 9rem;
}
.profileBtm .img {
	width: 46%;
}
.profLinks {
	width: 48%;
}
.profLinks .fLink li {
	width: 100%;
	height: 11rem;
	margin-bottom: 2rem;
}
.fLink li:nth-of-type(2) img[src*="link_shop02"] {
	width: 46.3rem;
}
.profLinks .fLink {
	margin-bottom: 5rem;
}
.policyWrap {
	text-align: left;
	line-height: 1.6
}
.policyWrap h3 {
	font-size: 100%;
	margin: 4rem 0 .5rem
}
.policyWrap p {
	margin-bottom: 2em;
}
.policyWrap li {
	margin-bottom: .2em;
}
.policyWrap ul li {
	padding-left: 1em;
	text-indent: -1em;
}
.policyWrap ol h3 {
	padding-left: .75em;
	text-indent: -.75em;
}
ol.num {
	list-style-type: decimal;
	padding-left: 1.5em;
}

/*shop
---------------------------------------------------------*/
#shopPage .pageTtlWrap .img::before {
	background-image: url("../img/shop/pagettl.jpg")
}
.featureArea .featureBox {
	width: 50%;
	padding-left: 10rem;
}
.featureArea .featureWrap .img {
	width: 54%;
}
.featureWrap:not(.row-r) .img {
	margin-right: 0;
	margin-left: -8%;
}
.featureWrap + .featureWrap {
	margin-top: 20rem;
}
.featureBox h3 {
	display: inline-block;
	font-size: 2.4rem;
	text-align: center;
	margin-bottom: 5.5rem;
}
.featureBox h3 big {
	display: block;
	font-size: 383.333%;
	margin-top: .5rem;
}
.linkSec {
	max-width: 1070px;
	margin: 20rem auto 0;
}
.linkSec .scl {
	margin-top: 7rem;
}
.linkSec .fLink li {
	height: 11rem;
}
.linkSec .fLink li span::after {
		content: "";
	display: inline-block;
	background: url("../img/icon_blank03.svg") center center no-repeat;
	background-size: contain;
	width: 1.1rem;
	height: 1.1rem;
	margin-left: .7rem;

}

















/*ieハック*/
@media screen\0  {
}

/*********************************/
/* タブレット用のスタイル記述 */
/*********************************/
@media screen and (max-width: 1750px) {
	html {
		font-size: .5714285vw;
	}
}

/*********************************/
/* スマートフォン用のスタイル記述 */
/*********************************/
@media screen and (max-width: 780px) {
/*全体レイアウト
---------------------------------------------------------*/
	html {
		font-size: 2.7777777vw;
	}
	body {
		font-size: 1.4rem;
		line-height: 1.5
	}
	body.active {
		overflow: hidden;
	}
	article > section {
		padding: 5rem 0;
	}
	.txt {
		font-size: 1.4rem;
		line-height: 1.6;
	}
	.ttlBox {
		font-size: 1.4rem;
	}
	.ttlBox h2 {
		font-size: 3.4rem;
		margin-bottom: .5rem;
	}
	
	/*header
	-------------------------------------------------------*/
	#header {
		transition: .3s;
	}
	.hWrap {
		padding: 1rem;
	}
	.hNav {
		display: none;
	}
	.hTxt {
		display: none;
	}
	.hLogo img {
		display: block;
		max-height: 2.8rem
	}
	.hRht {
		display: none;
	}
	/*nav
	-----------------------------------------------------*/
	.menuIcon {
		position: fixed;
		top: 1.3rem;
		right: 5%;
		width: 30px;
		height: 22px;
		z-index: 99999;
		cursor: pointer;
		display: block;
		transition: .25s;
	}
	.menuIcon span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background: #971c22;
		z-index: 10;
		transition: .2s;
	}
	.menuIcon span:nth-of-type(1) {top: 0px;}
	.menuIcon span:nth-of-type(2) {top: 10px;	}
	.menuIcon span:nth-of-type(3) {bottom: 0px;	}
	.menuIcon.active span:nth-of-type(1) {
		-webkit-transform: translateY(10px) rotate(45deg);
		transform: translateY(10px) rotate(45deg);
	}
	.menuIcon.active span:nth-of-type(2) {
		opacity: 0;
	}
	.menuIcon.active span:nth-of-type(3) {
		-webkit-transform: translateY(-10px) rotate(-45deg);
		transform: translateY(-10px) rotate(-45deg);
	}
	#nav {
		position: fixed;
		top: 0;
		bottom: 0;
		right: 0;
		z-index: 10;
		width: 100%;
		height: 100%;
		transition: all 0.3s ease-in-out;
		overflow-y: auto;
		overflow-x: hidden;
	 -webkit-overflow-scrolling: touch;
		display: block;
		padding: 6rem 5%;
		background: #fff;
		visibility: hidden;
		opacity: 0;
	}
	#nav.active {
		right: 0;
		opacity: 1;
		-moz-transform: translateX(0);
		-webkit-transform: translateX(0);
		transform: translateX(0);
		visibility: visible;
		z-index: 9990;
	}
	.nav {
		display: block;
	}
	.nav ul + ul {
    margin-left: 0;
	}
	.nav li:not(._contact) {
		border-bottom: 1px solid #f1f1f1;
		margin: 0;
	}
	.nav a {
		font-size: 1.5rem;
		font-weight: 500;
		text-align: left;
		color: #000;
		display: block;
		padding: 1.2rem 1.5rem;
	}
	.nav li a::after {
		display: none;
	}
	.nav li a::before {
		content: "";
		display: block;
		width: .8rem;
		height: .8rem;
		border-top: 1px solid #971c22;
		border-right: 1px solid #971c22;
		position: absolute;
		top: 50%;
		right: 1rem;
		z-index: 1;
		transform: rotate(45deg) translateY(-50%);
	}
	.fixNav {
		position: fixed;
		top: auto;
		left: 0;
		bottom: 0;
		width: 100%;
	}
	.fixNav li {
		width: 50%;
	}
	.fixNav a {
		font-size: 1.4rem;
		padding: 0;
		width: 100%;
		height: 5rem;
		white-space: nowrap;
	}
	.fixNav ._contact a::before {
		width: 2rem;
		margin-right: 1rem;
	}
	.fixNav ._hacomono a img {
		max-height: 1.6rem;
		margin-right: .5rem;
	}
	.fixNav ._hacomono a::after {
		width: 1rem;
		margin-left: .5rem;
	}
	
	/*footer
	-------------------------------------------------------*/
	#footer {
		border-top: 1px solid #f1f1f1;
		padding-bottom: 7rem;
	}
	.fLogo {
		margin-bottom: 2rem;
	}
	.fLogo img {
		width: auto;
		max-height: 3rem;
	}
	.fBox {
		display: block;
		margin-top: 0;
	}
	.fLft {
		margin: 0 0 3rem 0;
	}
	.fLft big {
		font-size: 115%;
	}
	.useTxt {
		margin-bottom: 2rem;
	}
	.fRht {
		width: 100%;
	}
	.fLink {
	}
	.fLink li {
		width: 49%;
		font-size: 1.2rem;
		height: 10rem
	}
	.fLink a {
		padding: 0 1rem;
	}
	.fLft .tokuyaku {
		max-width: 100%;
		padding: 1rem
	}
	.fLft .tokuyaku img {
		max-height: 3rem
	}
	.fBtm {
		display: block;
		margin-top: 3rem;
	}
	.scl {
		padding: 0 2rem;
	}
	.copy {
		border-top: 1px solid #f1f1f1;
		padding-top: 2rem;
		margin: 2rem -5.5% 0;
	}
	
	/*top
	-------------------------------------------------------*/
	.mainArea {
		padding-top: 8rem;
	}
	.mainWrap {
		display: block;
	}
	.mainTtl {
		font-size: 1.2rem;
		margin: 0 0 3rem;
		white-space: nowrap;
	}
	.mainTtl .fo-din {
		font-size: 2.2rem;
	}
	.mainTtl .fo-din span {
		margin: 1rem 0 .5rem;
	}
	.mainLft .tokuyaku {
		max-width: 18rem;
		padding: .7rem 1.5rem .7rem 1rem
	}
	.mainImgWrap {
		width: 100%;
		margin: 4rem 0 0 0;
		padding-bottom: 3rem;
	}
	.mainPic li {
    margin: .2rem;
	}
	.mainPic ul._02 {
		padding-top: 4rem;
	}
	.mainImg {
		width: 65%;
	}
	.newsArea {
		display: block;
	}
	.newsTtl {
		width: 100%;
		padding: 2rem 0;
		margin-bottom: 2rem;
	}
	.newsTtl .ttlBox {
		display: flex;
		align-items: flex-end;
		line-height: 1.1;
	}
	.newsTtl .ttlBox h2 {
		margin-right: 1rem;
	}
	.newsArea .newsWrap {
		width: 100%;
	}
	.thumb {
		width: 42%;
		min-width: 42%;
		height: 8.2rem;
		margin-right: 1.5rem;
	}
	.newsCont {
		font-size: 100%;
	}
	.newsCont .ttl {
		-webkit-line-clamp: 2;
	}
	.newsWrap a {
		padding-right: 3rem;
	}
	.newsWrap a::after {
		right: .5rem;
		bottom: 1.5rem;
	}
	.newsCont .d-flex {
		margin-bottom: .5rem;
	}
	.contList {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 0;
	}
	.contBox {
		width: 48%;
		margin: .5rem 0;
		min-height: 15.552rem;
	}
	.contBox._01 {
		width: 100%;
	}
	.contBox .ttl {
		font-size: 1.2rem;
		text-align: left;
		display: block;
		left: 1rem;
		text-shadow: 0 0 5px rgba(0,0,0,.8)
	}
	.contBox .ttl h3 {
		font-size: 2.6rem;
		margin-bottom: .5rem;
	}
	.contBox.coming::after {
		width: 60%;
		height: 22%;
		background-size: 80% auto;
	}
	.aboutWrap {
		display: block;
	}
	.aboutImg {
		display: block;
		width: 100%;
		margin-bottom: 3rem;
	}
	.aboutBox {
		width: 100%;
	}
	.aboutBox h3 {
		font-size: 1.8rem;
		margin: 2rem 0
	}
	.tag {
		margin-top: 3rem;
	}
	.tag li {
		width: 9rem;
		padding: .7rem 0;
		font-size: 1.6rem
	}
	.coachWrap {
		flex-direction: column-reverse;
	}
	.coachImg {
		width: 100%;
		margin-top: 3rem;
	}
	.coachImg li._01 img, .coachImg li._02 img {
    width: 80%;
	}
	.coachBox .ttlBox {
    margin-bottom: 2rem;
	}
	.reserveWrap {
		display: block;
	}
	.reserveImg {
		width: 100%;
		height: 14rem;
		background-size: 23rem auto;
		background-position: top center;
		font-size: 2rem;
		text-shadow: 0 0 5px rgba(0,0,0,.8);
	}
	.reserveBox {
		width: 100%;
		padding: 2rem 2rem;
	}
	.reserveBox .ttlBox h2 {
		margin: 1rem 0 0;
	}
	.porterWrap {
		display: block;
	}
	.porterBox {
		width: 100%;
	}
	.porterBox h2 {
		margin-bottom: 2rem;
	}
	.porterBox h3 {
		font-size: 1.8rem;
	}
	.porterWrap figure {
		width: 100%;
		margin-bottom: 3rem;
	}
	
	/*comingsoon
	-------------------------------------------------------*/
	#comingArea {
		max-height: 30rem
	}

	/*subPage
	-------------------------------------------------------*/
	.pageTtlArea {
		height: 12rem;
	}
	.pageTtl {
		font-size: 1.4rem;
		background-size: 17rem auto;
	}
	.pageTtl h1 {
		font-size: 4rem;
	}
	.pageTtlWrap {
    display: block;
    position: relative;
	}
	.pageTtlWrap .img {
		width: 100%;
		height: 15.5rem
	}
	.pageTtlWrap .img::before {
		min-width: inherit;
		width: 100vw;
	}
	.pageTtlWrap .pageTtl {
		width: 90%;
		background: #fff;
		padding: 2rem 1.5rem;
		margin: -3rem 0 0;
		position: relative;
		z-index: 10
		
	}
	
	/*news
	-------------------------------------------------------*/
	.newsHeader h2 {
		font-size: 1.6rem;
		margin-top: .5rem;
	}
	.newsHeader {
		padding-bottom: 2rem;
		margin-bottom: 2rem;
	}
	.newsConttents .img {
		margin-bottom: 3rem;
	}
	.newsDetail .btn {
    margin-top: 3rem;
	}
	.btn {
		margin-top: 3rem;
	}
	.btn a {
		font-size: 1.4rem;
	}
	
	/*contact
	-------------------------------------------------------*/
	.formTxt {
		margin-bottom: 2rem;
	}
	.formArea h2 {
		font-size: 1.6rem;
		padding-bottom: 3rem;
		margin-bottom: 3rem;
	}
	.formBox dt,.formBox dd  {
		font-size: 1.4rem;
		width: 100%;
		padding: 1rem 0 0;
		border:none!important
	}
	.formBox dt {
	}
	.formBox dt::before {
		vertical-align: .2em;
		margin-right: 1rem;
	}
	.formBox dd {
		padding-bottom: 2rem;
		margin-bottom: 0;
	}
	.formBox dt.mt00, .formBox dt.mt00 + dd {
    margin-top: 0;
    padding-top: 1rem;
	}
	.formName > .txt {
    width: 100%;
		margin: .5rem 0!important
	}
	.formName .txt span {
		text-align: right
	}
	.zipBtn {
		font-size: 1.2rem;
		padding: 7px;
		margin-left: 2px;
	}
	.contArea {
		padding: 4rem 5%;
	}
	.formBox input[type="text"].size-s {
		max-width: 12rem;
	}
	.formBox label {
		width: 100%;
		margin: 1rem 0 0 0;
	}
	.form-birth select {
		margin: .4rem 0
	}
	.formWrap input[type="submit"], .formWrap input[type="button"], .formWrap button.button._grey {
		font-size: 1.6rem;
	}
	.privacyBox {
		margin-top: 1rem;
	}
	.privacyBox .txt {
		font-size: 1.2rem;
		text-align: left;
	}
	.policyTxt a,.policyCheck {
		font-size: 1.4rem;
	}

	/*access
	-----------------------------------------------------*/
	.accessMain {
		height: 18rem;
	}
	.accessWrap {
		display: block;
	}
	.accessImg h2 {
		font-size: 1.6rem;
		margin-bottom: 1rem;
	}
	.accessImg .txt {
		margin-top: 1rem;
	}
	.accessBox {
		width: 100%;
		padding: 0;
		margin: 3rem 0 0 0
	}
	.accessBox dl {
		font-size: 1.4rem;
		padding: 1rem .5rem;
	}
	.parking {
		padding: 2rem 1rem;
		font-size: 1.6rem;
		margin-top: 2rem;
	}
	.parking figure {
		width: 12rem;
	}
	.btmImg {
		margin-top: 4rem;
	}
	.gMap {
		height: 20rem;
	}
	#porterArea .ttlBox {
		margin-bottom: 3rem;
	}
	.porter02Wrap {
		display: block;
	}
	.porter02Wrap > * {
		width: 100%;
	}
	.porter02Box {
		margin-top: 2rem;
	}
	.porter02Box h3 {
		font-size: 1.8rem;
		margin-bottom: 1rem;
	}
	
	/*reserve
	-----------------------------------------------------*/
	.akerunFlow h2 {
		font-size: 2rem;
		box-shadow: .5rem .5rem 0 #ddd;
		margin-bottom: 3rem;
	}
	.akerunFlow > section {
		max-width: 100%;
		padding: 2rem 5%;
	}
	.akerunFlow h3 {
		font-size: 1.6rem;
		margin-bottom: 2rem;
		padding-bottom: 1.2rem;
	}
	.akerunFlow h3::after {
		height: 2px;
	}
	
	.notice {
		font-size: 1.4rem;
		padding: 2rem;
		line-height: 1.5;
	}
	.reserveTxt .txt {
		text-align: left;
	}
	.redTxt {
		display: block;
		font-size: 1.4rem;
		padding: .5rem;
	}
	.stepBox {
		width: 100%;
		margin-bottom: 6rem;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.stepNum {
		width: 100%;
	}
	.stepBox .img {
		width: 40%;
		border-radius: 2rem 2rem 0 0;
		box-shadow: 0 0 1.5rem rgba(0,0,0,.05);
	}
	.stepBox .txt {
		width: 60%;
		padding: 1.5rem 0 1.5rem 2rem;
		font-size: 1.4rem;
	}
	#reservePage .stepBox:not(:last-of-type)::after {
		right: 0;
		left: 0;
		margin: 0 auto;
		top: auto;
		bottom: -5rem;
		border-width: 2rem 0 2rem 1.6rem;
		-webkit-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
		transform: rotate(90deg);
	}
	#applyArea {
		padding: 4rem 0 5rem;
	}
	.akerunFlow #applyArea {
		padding: 0;
	}
	.reTxt {
		text-align: left;
		font-size: 1.3rem;
		margin-bottom: 3rem;
	}
	img[src*="/logo_akerun.png"] {
    max-height: 3rem;
	}
	.applyBox {
		display: block;
	}
	.applyCon {
		width: 100%;
		padding: 0;
	}
	.applyCon:not(:first-of-type) {
		border: none;
    border-top: 1px solid #ccc;
		padding-top: 3rem;
		margin-top: 3rem;
	}
	.qr {
		display: none;
	}
	.applyCon h3 {
		font-size: 1.6rem
	}
	.applyCon .txt {
		font-size: 1.2rem;
		margin-top: 1.5rem;
	}
	.applyCon dd {
		width: 100%;
		text-align: center;
	}
	#schedule::before,.scheduleWrap:not(:first-of-type)::before {
		border-width: 3rem 4rem 0 4rem;
		top: -7rem;
	}
	.scheduleWrap:not(:first-of-type)::before {
		top: -1.5rem
	}
	#schedule {
		padding-top: 0;
	}
	#schedule h2 {
		font-size: 2rem;
		margin-bottom: 4rem;
		box-shadow: .5rem .5rem 0 #ddd;
	}
	.scheduleArea {
		padding: 0;
	}
	.scheduleWrap {
		display: block;
	}
	.scheduleWrap:not(:first-of-type) {
		padding-top: 5rem;
		margin-top: 5rem;
	}
	.scheduleWrap figure {
		width: 100%;
		margin-bottom: 3rem;
	}
	.scheduleBox {
		width: 100%;
	}
	.scheduleBox h3 {
		font-size: 2rem;
		border-left: 5px solid #f2f2f2;
		padding-left: 1rem;
	}
	.noteWrap {
		display: block;
		text-align: center;
	}
	.noteWrap h4 {
		font-size: 1.6rem;
		margin: 0 0 1rem 0;
		padding: 0 .5rem .2rem;
		border-right: none;
		display: inline-block;
		border-bottom: 1px solid #ccc;
	}
	.noteWrap ul {
		padding: 0;
		text-align: left;
	}
	.noteWrap li {
		font-size: 1.4rem;
	}
	
	/*how
	-----------------------------------------------------*/
	#howArea h2, #howArea .icon {
		margin-bottom: 3rem;
		font-size: 1.5rem;
	}
	.linkWrap {
		display: block;
	}
	.linkWrap li {
		width: 100%;
	}
	.linkWrap li:not(:first-of-type) {
		margin-top: 2rem;
	}
	.linkWrap li a {
		height: 14rem;
		font-size: 1.8rem;
	}
	.linkWrap li a .fo-din {
		font-size: 2rem;
	}
	
	/*room
	-------------------------------------------------------*/
	#shopPage .pageTtlWrap .img::before {
		background-image: url(../img/shop/pagettl_sp.jpg);
    background-size: 142%;
    background-position: bottom left;
	}
	.featureWrap {
		display: block;
		margin: 0;
	}
	.featureWrap .img {
		width: 100%!important;
		margin: 0 0 3rem!important;
	}
	.featureBox {
		position: relative;
		display: block;
		width: 100%!important;
	}
	.featureBox dt {
		font-size: 1.8rem;
		text-align: center;
	}
	.featureBox .num {
    min-width: inherit;
		text-align: center;
		margin: 0 auto 2rem
	}
	.featureBox .num img {
		max-height: 8rem
	}
	#gdr h2 {
		max-width: 15rem;
		margin-bottom: 3rem;
	}
	.gdrWrap {
		display: block;
	}
	.gdrBox {
		width: 100%;
	}
	.gdrBox:not(:first-of-type) {
		margin-top: 3rem;
		padding-top: 4rem;
		border-top: 1px solid #999;
	}
	.gdrBox h3 {
		font-size: 1.8rem;
		text-align: center;
		margin: 2rem 0 1rem;
	}
	.planAncArea h2 {
		font-size: 1.6rem;
		margin-bottom: 2rem;
	}
	.planAncArea {
		padding: 4rem 0;
	}
	.planAnc {
		display: block;
	}
	.planAnc li {
		width: 100%;
		margin-top: 2rem;
	}
	.planAnc li a {
		padding: 2rem 1rem;
	}
	.planAnc li a .fo-din {
		font-size: 2.6rem;
		margin-right: 1.5rem;
	}
	.planAnc li a::after {
		position: static;
		width: 1.8rem;
		right: 1rem;
		margin-bottom: .4rem;
	}
	.planArea {
		padding: 6rem 0;
	}
	.plan01Wrap {
		display: block;
	}
	.plan01Box {
		width: 100%;
		padding: 1rem;
		margin-bottom: 1.5rem;
	}
	.plan01Box > * {
		padding: 1rem
	}
	.plan01Box dt {
		width: 33%;
		padding-left: 0;
	}
	.plan01Box dt img {
		max-height: 4.5rem
	}
	.plan01Box dt h3 {
		font-size: 1.6rem;
		margin-top: 1rem;
	}
	.plan01Box dd {
		width: 67%;
		font-size: 1.4rem;
		padding-right: 0;
	}
	.plan01Box dd p {
		margin: .5rem;
		white-space: nowrap;
	}
	.planStepArea {
		margin-top: 5rem;
	}
	.planStepArea h3 {
		font-size: 2rem;
		margin-bottom: 2rem;
	}
	.planStep .stepBox {
		margin: 0 4rem;
	}
	.planStep .stepBox .img {
		width: 60%;
		border-radius: 2.4rem;
	}
	.planStep .stepBox:not(:last-of-type)::after {
		top: 15rem;
		right: 1.8rem;
		border-width: 1.8rem 0 1.8rem 1.6rem;
	}
	.planStep .stepBox .txt {
		min-height: inherit;
		width: 100%;
		padding: 1.5rem 0 0;
	}
	.slick-arrow {
		top: 15rem;
		width: 3.4rem;
		height: 3.4rem;
	}
	.slick-arrow.next {
		right: 0
	}
	.slick-arrow.prev {
		left: 0;
	}
	.planStepBtm {
		padding-top: 4rem;
		margin-top: 5rem;
	}
	.planStepBtm::before {
		border-width: 3rem 2rem 0 2rem;
    top: -1.5rem;
	}
	.planPlice {
		padding: 1rem;
		display: block;
		text-align: center;
	}
	.planPlice dt {
		margin: 0 0 .2rem
	}
	.gdrBnr li {
		width: 100%;
		margin: 1rem 0
	}
	.gdrBnr a {
		padding: 1.5rem;
		font-size: 1.6rem
	}
	.gdrBnr a img {
		max-height: 2rem;
	}
.gdrBnr a::after {
	width: 3rem;
	height: 3.8rem;
	margin-left: 1rem;
}

	/*company
	-----------------------------------------------------*/
	.secTtl {
		font-size: 1.8rem;
		margin-bottom: 3rem;
	}
	.tblWrap {
		display: block;
		border: none;
	}
	.tblWrap dt, .tblWrap dd {
		width: 100%;
		padding: 1rem 1.5rem;
		border-top: none;
	}
	.tblWrap dd {
		word-break: break-all;
		padding-bottom: 2rem;
	}
	.profileBtm {
		margin-top: 4rem;
		display: block;
	}
	.profileBtm .img {
		width: 100%;
	}
	.profLinks {
		width: 100%;
		margin-top: 3rem;
	}
	.profLinks .fLink {
		display: flex;
		justify-content: space-between;
		margin-bottom: 1rem;
	}
	.profLinks .fLink li {
		width: 49%;
	}
	.policyWrap h3 {
		margin-top: 3rem;
	}
	
	/*shop
	-----------------------------------------------------*/
	.featureArea .featureBox {
		padding: 0;
	}
	.featureBox h3 {
		display: block;
		font-size: 1.6rem;
		margin-bottom: 3rem;
	}
	.featureWrap + .featureWrap {
    margin-top: 6rem;
	}
	.linkSec {
		margin-top: 8rem;
	}
	.linkSec .scl {
    margin-top: 4rem;
	}
	
	
}

/*closed
---------------------------------------------------------*/
#header {
	position: absolute;
}
#header.scrollClass {
	background: transparent;
}
.mainArea {
	position: relative;
}
.cleseNews {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 990;
	width: 60%;
	text-align: left;
	background: rgba(0,0,0,.8);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.6rem;
}
.cleseNews .box {
	width: 90%;
	max-width: 650px;
	position: relative;
	border: 1px solid #fff;
	padding: 7rem;
	line-height: 1.8;
}
.cleseNews h2 {
	background: #B81C2B;
	font-size: 150%;
	padding: 1rem 2rem;
	position: absolute;
	top: -3rem;
	left: -2rem;
	z-index: 1;
}
.cleseNews h3 {
	font-size: 125%;
	margin-bottom: 2rem;
}
.cleseNews p {
	font-size: max(1.6rem,12px);
}
.nav ul {
	width: 100%;
	gap: 1rem 5rem;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.nav ul li {
	text-align: center;
	margin: 0!important;
}

@media screen and (max-width: 780px) {
	#nav {
		position: static;
		opacity: 1;
		visibility: visible;
		padding: 1rem;
		margin-bottom: 3rem;
		border-top: none;
	}
	.nav ul {
		display: block;
	}
	.nav ul li:last-of-type {
		border-bottom: none;
	}
	.nav a {
		font-size: 1.4rem;
	}
	.mainArea {
		height: 95rem;
	}
	.cleseNews {
		width: 100%;
		top: 23rem;
		font-size: 1.4rem;
	}
	.cleseNews p {
		font-size: 1.4rem;
	}
	.cleseNews .box {
		padding: 4rem 2rem 3rem;
	}
	.cleseNews h2 {
		font-size: 1.8rem;
		padding: .5rem 1rem;
		top: -2rem;
		left: -1rem;
	}
	.cleseNews h3 {
		font-size: 1.6rem;
	}












}

