@charset "utf-8";


/*//////////////////////////////////////////////////
全体
//////////////////////////////////////////////////*/

::selection {color: #fff; background-color: #132747;}
::-moz-selection {color: #fff; background-color: #132747;}
@font-face {font-family: ShipporiMincho-M; src: url('font/ShipporiMincho-Medium.ttf') format("truetype");}
@font-face {font-family: Spectral-SB; src: url('font/Spectral-SemiBold.ttf') format("truetype");}

html {width: 100%; height: 100%; font-size: 62.5%; scroll-padding: 120px 0 0;}
body {width: 100%; height: 100%; min-width: 375px; position: relative; z-index: 1; left: 0; top: 0; background-image: url("../img/common/common_tex-2.jpg"); background-position: center top;}
header, main, footer, #loading_cover, #modal_menu, #header_fix, #humb_wrap, #humb_wrap_fix, #pagetop, input, textarea, select, button, #lang_fix {
	font-size: 1.4rem; line-height: 2.0; color: #212121; font-weight: 500; letter-spacing: .1rem; -webkit-text-size-adjust: 100%; word-wrap: break-word; overflow-wrap: break-word; -moz-hyphens: auto; -webkit-hyphens: auto; hyphens: auto; -webkit-font-smoothing: antialiased;
	font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif;
}
header, main, footer {width: 100%; overflow: hidden;}
main, img, video {display: block;}
img {flex-shrink: 0;}
input, textarea, select, button {outline: none;}
input[type="submit"], input[type="button"], input[type="radio"], input[type="checkbox"], select, button {cursor: pointer;}
:-ms-input-placeholder {color: #757575;}
::-moz-placeholder {color: #757575;}
::-webkit-input-placeholder {color: #757575;}
a {text-decoration: none; }
a:link, a:visited, a:hover {color: #212121;}
pre {white-space: pre-wrap;}

.gothic {font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif!important; font-weight: 500!important;}
.min {font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;}
.en {font-family: 'Spectral-SB', serif!important; font-weight: 600!important;}

.underline {text-decoration: underline;}
.l-space-n {letter-spacing: normal;}
.l-space-1 {letter-spacing: .1rem;}
.l-space-2 {letter-spacing: .2rem;}
.l-space-4 {letter-spacing: .4rem;}
.l-space-8 {letter-spacing: .8rem;}
.cf:after {content: ''; display: block; clear: both;}
.fit-img img {width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;';}
.fit-img-2 img {width: 100%; height: 100%; object-fit: contain; font-family: 'object-fit: contain;';}
.scroll-style {overflow: scroll; -ms-overflow-style: none; scrollbar-width: none;}
.scroll-style::-webkit-scrollbar {display: none;}
.vertical-txt {-ms-writing-mode: tb-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; text-orientation: upright;}
.keep-txt {word-break: keep-all; white-space: nowrap;}
.trans_t{ white-space: unset!important;}
.margin-0 {margin: 0!important;}
.marker {background: linear-gradient(transparent 68%, #ffff00 0); color: #212121;}
.gra-1 {background: linear-gradient(135deg, #757575, #212121);}

.color-white {color: #fff!important;}
.color-font {color: #212121!important;}
.color-subfont {color: #757575!important;}
.color-line {color: #e0e0e0!important;}
.color-blue {color: #132747!important;}

.title-lg {font-size: 2.4rem!important;}
.x-lg {font-size: 2.0rem!important;}
.x-lg-2 {font-size: 1.8rem!important;}
.lg {font-size: 1.6rem!important;}
.md {font-size: 1.4rem!important;}
.sm {font-size: 1.2rem!important;}
.x-sm {font-size: 1.0rem!important;}

@media only screen and (min-width: 640px) {
	header, main, footer, #loading_cover, #modal_menu, #header_fix, #humb_wrap, #humb_wrap_fix, #pagetop, input, textarea, select, button, #lang_fix {
		font-size: 1.5rem;
	}
	.title-lg {font-size: 3.0rem!important;}
    .x-lg {font-size: 2.4rem!important;}
	.x-lg-2 {font-size: 2.1rem!important;}
	.lg {font-size: 1.8rem!important;}
	.md {font-size: 1.5rem!important;}
	.sm {font-size: 1.3rem!important;}
	.x-sm {font-size: 1.1rem!important;}
}

@media only screen and (min-width: 960px) {
	header, main, footer, #loading_cover, #modal_menu, #header_fix, #humb_wrap, #humb_wrap_fix, #pagetop, input, textarea, select, button, #lang_fix {
		font-size: 1.6rem;
	}
    .title-lg {font-size: 3.6rem!important;}
	.x-lg {font-size: 2.8rem!important;}
	.x-lg-2 {font-size: 2.4rem!important;}
	.lg {font-size: 2.0rem!important;}
	.md {font-size: 1.6rem!important;}
	.sm {font-size: 1.4rem!important;}
	.x-sm {font-size: 1.2rem!important;}
}

@media (hover: hover) {
	.hover-48 {transition: opacity .4s;}
	.hover-48:hover {opacity: .48;}
	.hover-64 {transition: opacity .4s;}
	.hover-64:hover {opacity: .64;}
}


/*//////////////////////////////////////////////////
共通
//////////////////////////////////////////////////*/

.ol-1 {
	line-height: 1.7; display: inline-block; text-align: left;
}
.ol-1 li {
	list-style: none; counter-increment: cnt; position: relative; z-index: 1; left: 0; top: 0; padding: 0 0 0 24px; margin: 8px 0 0;
}
.ol-1 li:first-of-type {
	margin: 0;
}
.ol-1 li::before {
	content: counter(cnt)"． "; display: inline-block; position: absolute; z-index: 1; left: 0; top: 0;
}

.ul-1 {
	line-height: 1.7; display: inline-block; text-align: left;
}
.ul-1 li {
	list-style: none; position: relative; z-index: 1; left: 0; top: 0; padding: 0 0 0 14px; margin: 8px 0 0;
}
.ul-1.attention li {
	padding: 0 0 0 16px;
}
.ul-1 li:first-of-type {
	margin: 0;
}
.ul-1 li::before {
	content: ''; display: inline-block; background-color: #212121; width: 8px; height: 8px; border-radius: 50%; position: absolute; z-index: 1; left: 0; top: 7px;
}
.ul-1.color-white li::before {
	background-color: #fff;
}
.ul-1.md li::before {
    top: 8px;
}
.ul-1.attention li::before {
	content: '※'; background: none; width: auto; height: auto; border-radius: 0; top: 0!important;
}
.ul-1 span {
	display: inline-block;
}

.table-1 {
	line-height: 1.7; border: solid 2px #132747; border-radius: 12px; overflow: hidden; background-color: #fff;
}
.table-1 table {
    width: 100%;
}
.table-1 tr {
	border-top: solid 1px #132747;
}
.table-1 tr:first-of-type {
	border: none;
}
.table-1 th {
    padding: 12px; text-align: left; vertical-align: top; border-right: dashed 1px #132747;
}
.table-1 th span {
	display: inline-block;
}
.table-1 td {
    padding: 12px;
}
.table-1 td span {
	display: inline-block;
}

#pagetop {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 40px; height: 40px; border-radius: 4px 0 0 0; position: fixed; z-index: 10; right: 0; bottom: -40px; cursor: pointer; opacity: 0; transition: all .4s; background-color: #132747;
}
#pagetop .arrow {
	display: block; background-image: url("../img/common/common_arrow-white.svg"); background-size: cover; width: 6px; height: 6px; transform: rotate(-90deg);
}

#lang_fix {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 128px; height: 29px; border-radius: 2px; background-color: #132747; position: fixed; z-index: 10; left: 6vw; bottom: 32px; box-shadow: 0 1px 1px 0 rgba(0, 0, 0, .16);
}
#lang_fix .g-translate-wrap {
    width: 100%!important; height: 100%!important; position: absolute; z-index: 2; left: 0; top: 0;
}
#lang_fix .gtranslate_wrapper {
    width: 100%!important; height: 100%!important;
}
#lang_fix select {
    font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;
    font-size: 1.6rem; cursor: pointer; transform: scale(0.8);
}

.btn-1 {
    line-height: 1; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 200px; height: 56px; background-image: url("../img/common/common_tex-1.jpg"); background-size: 320px; background-position: center; border-radius: 4px;
}
.btn-1 .txt {
    color: #fff; display: inline-block;
}

.header-under {
    height: 320px; position: relative; z-index: 2; left: 0; top: 0;
}
.header-under h1 {
    line-height: 1; width: 100%; padding: 32px 6%; box-sizing: border-box; background-color: rgba(0, 0, 0, .32); position: absolute; z-index: 2; left: 0; bottom: 0;
}
.header-under h1::before {
    content: ''; display: block; width: 100%; height: 60px; position: absolute; z-index: 1; left: 0; bottom: 100%; background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, .32));
}
.header-under h1 .en {
    display: block;
}
.header-under h1 .ja {
    display: block; margin: 16px 0 0;
}
.header-under .img {
    height: 100%; position: relative; z-index: 1; left: 0; top: 0;
}

.title-layout-1 {
    line-height: 1.7; text-align: center;
}
.title-layout-1 .en {
    display: block;
}
.title-layout-1 .ja {
    display: block; margin: 4px 0 0;
}

@media only screen and (min-width: 640px) {
	.ol-1 li {
		padding: 0 0 0 26px;
	}
	
	.ul-1 li {
		padding: 0 0 0 16px;
	}
	.ul-1.attention li {
		padding: 0 0 0 18px;
	}
	.ul-1 li::before {
		top: 7.5px;
	}
    .ul-1.md li::before {
        top: 9px;
    }
	
    .table-1 {
	    border-radius: 14px;
    }
	.table-1 th {
		padding: 14px;
	}
	.table-1 td {
		padding: 14px;
	}
	
	#pagetop {
		width: 44px; height: 44px; bottom: -44px;
	}
    #pagetop .arrow {
	    width: 7px; height: 7px;
    }
    
    #lang_fix {
        width: 129px; height: 31px; left: 5vw; bottom: 40px;
    }
    
    .btn-1 {
        width: 220px; height: 60px;
    }
    
    .header-under {
        height: 480px;
    }
    .header-under h1 {
        padding: 40px 5%;
    }
    .header-under h1::before {
        height: 90px;
    }
    .header-under h1 .ja {
        margin: 20px 0 0;
    }
    
    .title-layout-1 .ja {
        margin: 6px 0 0;
    }
}

@media only screen and (min-width: 960px) {
	.ol-1 li {
		padding: 0 0 0 28px;
	}
	
	.ul-1 li {
		padding: 0 0 0 18px;
	}
	.ul-1.attention li {
		padding: 0 0 0 20px;
	}
	.ul-1 li::before {
		top: 8px;
	}
    .ul-1.md li::before {
        top: 10px;
    }
	
    .table-1 {
	    border-radius: 16px;
    }
	.table-1 th {
		padding: 16px;
	}
	.table-1 td {
		padding: 16px;
	}
    
	#pagetop {
		width: 48px; height: 48px; bottom: -48px;
	}
    #pagetop .arrow {
	    width: 8px; height: 8px;
    }
    
    #lang_fix {
        width: 130px; height: 33px; left: 4vw; bottom: 48px;
    }
    
    .btn-1 {
        width: 240px; height: 64px;
    }
    
    .header-under {
        height: 640px;
    }
    .header-under h1 {
        padding: 48px 4%;
    }
    .header-under h1::before {
        height: 120px;
    }
    .header-under h1 .ja {
        margin: 24px 0 0;
    }
    
    .title-layout-1 .ja {
        margin: 8px 0 0;
    }
}

@media only screen and (min-width: 1280px) {
    .header-under h1 {
        padding: 48px calc(50% - 600px);
    }
}

@media (hover: hover) {
	#pagetop .arrow {
		transition: opacity .4s;
	}
	#pagetop:hover .arrow {
		opacity: .48;
	}
    
    .btn-1 .txt {
		transition: opacity .4s;
    }
    .btn-1:hover .txt {
		opacity: .48;
    }
}


/*//////////////////////////////////////////////////
アニメーション
//////////////////////////////////////////////////*/

.fade-in {
    opacity: 0; transform: translate(0, 48px); transition: all 1.2s;
}
.fade-in.visible {
    opacity: 1; transform: translate(0, 0);
}


/*//////////////////////////////////////////////////
ローディング
//////////////////////////////////////////////////*/

#loading_cover {
	line-height: 1; width: 100%; min-width: 375px; height: 100vh; position: fixed; z-index: 100; left: 0; top: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; background-color: #fff;
}
.loading-logo {
	display: none; width: 120px;
}
.loading-logo img {
	width: 100%; height: auto;
}

@media only screen and (min-width: 640px) {
    .loading-logo {
	    width: 140px;
    }
}

@media only screen and (min-width: 960px) {
    .loading-logo {
	    width: 160px;
    }
}


/*//////////////////////////////////////////////////
ハンバーガーメニュー
//////////////////////////////////////////////////*/

#humb_wrap {
    width: 72px; height: 72px; position: absolute; z-index: 1; right: 0; top: 0; cursor: pointer; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; background-image: url("../img/common/common_tex-1.jpg"); background-size: 320px; background-position: center; transition: all .4s;
}
header.active #humb_wrap {
    width: 55px; height: 55px;
}
#humb_wrap .humb {
    width: 16px; height: 8px; position: relative; z-index: 1; left: 0; top: 0;
}
#humb_wrap span {
	display: block; width: 100%; height: 1px; background-color: #fff; position: absolute; z-index: 1; left: 0;
}
#humb_wrap span:nth-of-type(1) {
	top: 0;
}
#humb_wrap span:nth-of-type(2) {
	bottom: 0;
}

@media only screen and (min-width: 640px) {
    #humb_wrap {
        width: 88px; height: 88px;
    }
    header.active #humb_wrap {
        width: 64px; height: 64px;
    }
    #humb_wrap .humb {
        width: 18px; height: 9px;
    }
}

@media only screen and (min-width: 960px) {    
    #humb_wrap {
        width: 105px; height: 105px;
    }
    header.active #humb_wrap {
        width: 73px; height: 73px;
    }
    #humb_wrap .humb {
        width: 20px; height: 10px;
    }
}

@media only screen and (min-width: 1280px) {
    #humb_wrap {
        display: none;
    }
}

@media (hover: hover) {	
	#humb_wrap span {
		transition: all .4s;
	}
	#humb_wrap:hover span:nth-of-type(1) {
		top: 50%; transform: translate(0, -50%);
	}
	#humb_wrap:hover span:nth-of-type(2) {
		bottom: 50%; transform: translate(0, 50%);
	}
}


/*//////////////////////////////////////////////////
モーダルメニュー
//////////////////////////////////////////////////*/

#modal_cover {
	display: none; width: 100%; min-width: 375px; height: 100vh; background-color: rgba(255, 255, 255, 0); position: fixed; z-index: 99; left: 0; top: 0;
}

#modal_menu {
    line-height: 1; height: 100vh; background-color: #fff; position: fixed; z-index: 100; right: 0; top: 0; transform: translate(100%, 0); transition: transform .4s;
}
#modal_menu::before, #modal_menu::after {
    content: ''; display: block; width: 100%; height: 40px; position: absolute; z-index: 2; left: 0; top: 0; background: linear-gradient(to top, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
}
#modal_menu::after {
    top: auto; bottom: 0; background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
}
#menu_close {
    width: 55px; height: 55px; border-radius: 0 0 0 4px; background-image: url("../img/common/common_tex-1.jpg"); background-size: 320px; background-position: center; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; position: absolute; z-index: 3; right: 0; top: 0; cursor: pointer; 
}
#menu_close .close {
    width: 17px; height: 17px; position: relative; z-index: 1; left: 0; top: 0;
}
#menu_close .close span {
    display: block; width: 100%; height: 1px; background-color: #fff; position: absolute; z-index: 1; left: 0; border-radius: 1px;
}
#menu_close .close span:nth-of-type(1) {
    top: 0; transform: translateY(8px) rotate(-45deg);
}
#menu_close .close span:nth-of-type(2) {
    bottom: 0; transform: translateY(-8px) rotate(45deg);
}
#modal_menu .inner {
    height: 100%; position: relative; z-index: 1; left: 0; top: 0;
}
#modal_menu .wrap {
    padding: 80px;
}
#modal_menu .logo {
    width: 120px; margin: 0 auto;
}
#modal_menu .logo a {
    display: inline-block; width: 100%;
}
#modal_menu .logo a img {
    width: 100%; height: auto;
}
#modal_menu nav {
    margin: 40px 0 0; text-align: center;
}
#modal_menu nav li {
    margin: 32px 0 0;
}
#modal_menu nav li:first-of-type {
    margin: 0;
}
#modal_menu nav li a {
    display: inline-block;
}
#modal_menu nav li a .en {
    display: block; margin: 0 0 12px;
}
#modal_menu .tel-instagram {
display: inline-block; margin: 40px 0 0;
}
#modal_menu .tel {
    display: inline-block; position: relative; z-index: 1; left: 0; top: 0; padding: 0 0 0 22px;
}
#modal_menu .tel::before {
    content: ''; display: block; background-image: url("../img/common/common_tel.svg"); background-size: cover; width: 14px; height: 14px; position: absolute; z-index: 1; left: 0; top: 50%; transform: translate(0, -45%);
}
#modal_menu .instagram {
    display: inline-block; position: relative; z-index: 1; left: 0; top: 0; padding: 0 0 0 22px;
}
#modal_menu .instagram::before {
    content: ''; display: block; background-image: url("../img/common/common_instagram.svg"); background-size: cover; width: 14px; height: 14px; position: absolute; z-index: 1; left: 0; top: 50%; transform: translate(0, -50%);
}
#modal_menu .devider {
    display: block; height: 1px; background-color: #e0e0e0; margin: 12px 0;
}
#modal_menu .rsv {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 200px; height: 56px; border-radius: 4px; margin: 40px auto 0; background-image: url("../img/common/common_tex-1.jpg"); background-size: 320px; background-position: center;
}
#modal_menu .rsv .txt {
    display: inline-block;
}

@media only screen and (min-width: 640px) {
    #modal_menu::before, #modal_menu::after {
        height: 52px;
    }
    #menu_close {
        width: 64px; height: 64px;
    }
    #menu_close .close {
        width: 19px; height: 19px;
    }
    #menu_close .close span:nth-of-type(1) {
        transform: translateY(9px) rotate(-45deg);
    }
    #menu_close .close span:nth-of-type(2) {
        transform: translateY(-9px) rotate(45deg);
    }
    #modal_menu .wrap {
        padding: 104px;
    }
    #modal_menu .logo {
        width: 140px;
    }
    #modal_menu nav {
        margin: 46px 0 0;
    }
    #modal_menu nav li {
        margin: 36px 0 0;
    }
    #modal_menu .tel-instagram {
        margin: 46px 0 0;
    }
    #modal_menu .tel {
        padding: 0 0 0 23px;
    }
    #modal_menu .tel::before {
        width: 15px; height: 15px;
    }
    #modal_menu .instagram {
        padding: 0 0 0 23px;
    }
    #modal_menu .instagram::before {
        width: 15px; height: 15px;
    }
    #modal_menu .rsv {
        width: 220px; height: 60px; margin: 46px auto 0;
    }
}

@media only screen and (min-width: 960px) {
    #modal_menu::before, #modal_menu::after {
        height: 64px;
    }
    #menu_close {
        width: 73px; height: 73px;
    }
    #menu_close .close {
        width: 21px; height: 21px;
    }
    #menu_close .close span:nth-of-type(1) {
        transform: translateY(10px) rotate(-45deg);
    }
    #menu_close .close span:nth-of-type(2) {
        transform: translateY(-10px) rotate(45deg);
    }
    #modal_menu .wrap {
        padding: 128px;
    }
    #modal_menu .logo {
        width: 160px;
    }
    #modal_menu nav {
        margin: 52px 0 0;
    }
    #modal_menu nav li {
        margin: 40px 0 0;
    }
    #modal_menu .tel-instagram {
        margin: 52px 0 0;
    }
    #modal_menu .tel {
        padding: 0 0 0 24px;
    }
    #modal_menu .tel::before {
        width: 16px; height: 16px;
    }
    #modal_menu .instagram {
        padding: 0 0 0 24px;
    }
    #modal_menu .instagram::before {
        width: 16px; height: 16px;
    }
    #modal_menu .rsv {
        width: 240px; height: 64px; margin: 52px auto 0;
    }
}

@media (hover: hover) {
    #menu_close .close {
        transition: opacity .4s;
    }
    #menu_close:hover .close {
        opacity: .48;
    }
    #modal_menu nav li a {
        transition: opacity .4s;
    }
    #modal_menu nav li a:hover {
        opacity: .48;
    }
    #modal_menu .rsv .txt {
        transition: opacity .4s;
    }
    #modal_menu .rsv:hover .txt {
        opacity: .48;
    }
}


/*//////////////////////////////////////////////////
ヘッダー
//////////////////////////////////////////////////*/

header {
	line-height: 1; padding: 20px 0; width: 100%; min-width: 375px; background-color: #fff; position: fixed; z-index: 10; left: 0; top: 0; transition: all .4s;
}
header.active {
    padding: 12px 0; background-color: rgba(255, 255, 255, .96);
}
header .inner {
	width: 88%; margin: 0 auto;
}
header .logo {
    width: 120px;
}
header .logo a {
	display: inline-block; width: 100%;
}
header .logo img {
	width: 100%; height: auto;
}
header nav {
	display: none;
}

@media only screen and (min-width: 640px) {
    header {
	    padding: 26px 0;
    }
    header.active {
        padding: 14px 0;
    }
    header .inner {
	    width: 90%;
    }
    header .logo {
        width: 140px;
    }
}

@media only screen and (min-width: 960px) {
    header {
	    padding: 32px 0; background-color: rgba(255, 255, 255, .96);
    }
    header.active {
        padding: 16px 0;
    }
    header .inner {
	    width: 92%;
    }
    header .logo {
        width: 160px;
    }
}

@media only screen and (min-width: 1280px) {
    header {
        height: 105px; padding: 0;
    }
    header.active {
        height: 89px; padding: 0;
    }
    header .inner {
        width: 100%; display: flex; flex-wrap: nowrap; justify-content: space-between; align-items: flex-start;
    }
    header .logo {
        margin: 33px 0 0 4%; transition: margin .4s;
    }
    header.active .logo {
        margin: 25px 0 0 4%;
    }
    header nav {
	    display: inline-block;
    }
    header nav ul {
	    text-align: center; display: flex; flex-wrap: nowrap; justify-content: flex-end; align-items: center; gap: 40px; position: absolute; z-index: 1; right: calc(120px + 40px + 146px + 40px); top: 33px; transition: top .4s;
    }
    header.active nav ul {
        top: 25px;
    }
    header nav li a, header nav li .active {
        display: inline-block; position: relative; z-index: 1; left: 0; top: 0;
        word-break: keep-all; white-space: nowrap;
    }
    header nav li a .en, header nav li .active .en {
        display: block; margin: 0 0 12px;
    }
    header nav li .active {
        color: #132747;
    }
    header nav li .active::after {
        content: ''; display: block; width: 100%; height: 4px; background-color: #132747; position: absolute; z-index: 1; left: 50%; bottom: -33px; transform: translate(-50%, 0); transition: bottom .4s;
    }
    header.active nav li .active::after {
        bottom: -25px;
    }
    header .tel-instagram {
        text-align: center; display: inline-block; position: absolute; z-index: 1; right: 160px; top: 25px; transition: top .4s;
    }
    header.active .tel-instagram {
        top: 15px;
    }
    header .tel {
        display: inline-block; position: relative; z-index: 1; left: 0; top: 0; padding: 0 0 0 24px;
    }
    header .tel::before {
        content: ''; display: block; background-image: url("../img/common/common_tel.svg"); background-size: cover; width: 16px; height: 16px; position: absolute; z-index: 1; left: 0; top: 50%; transform: translate(0, -45%);
    }
    header .instagram {
        display: inline-block; position: relative; z-index: 1; left: 0; top: 0; padding: 0 0 0 24px;
    }
    header .instagram::before {
        content: ''; display: block; background-image: url("../img/common/common_instagram.svg"); background-size: cover; width: 16px; height: 16px; position: absolute; z-index: 1; left: 0; top: 50%; transform: translate(0, -50%);
    }
    header .devider {
        display: block; height: 1px; background-color: #e0e0e0; margin: 12px 0;
    }
    header .rsv {
        display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 120px; height: 105px; background-image: url("../img/common/common_tex-1.jpg"); background-size: 320px; background-position: center; position: absolute; z-index: 1; right: 0; top: 0; transition: height .4s;
    }
    header .rsv .txt {
        display: inline-block;
    }
    header.active .rsv {
        height: 89px;
    }
}

@media only screen and (min-width: 1440px) {
    header nav ul {
        gap: 48px; right: calc(120px + 48px + 146px + 48px);
    }
    header .tel-instagram {
        right: 168px;
    }
}

@media (hover: hover) {
    header nav li a {
        transition: opacity .4s;
    }
    header nav li a:hover {
        opacity: .48;
    }
    header .rsv .txt {
        transition: opacity .4s;
    }
    header .rsv:hover .txt {
        opacity: .48;
    }
}


/*//////////////////////////////////////////////////
フッター
//////////////////////////////////////////////////*/

footer {
	line-height: 1;
}
footer .bnr-plan {
	padding: 60px 0 120px; position: relative; z-index: 1; left: 0; top: 0;
}
footer .bnr-plan::before {
	content: ''; display: block; background-image: url("../img/common/common_illust-2.png"); background-size: 100%; background-repeat: no-repeat; background-position: center; width: 88%; max-width: 480px; height: 88px; position: absolute; z-index: 1; left: 50%; bottom: 0; transform: translate(-50%, 0);
}
footer .bnr-plan .txt-wrap {
	width: 88%; margin: 0 auto; position: relative; z-index: 2; left: 0; top: 0;
}
footer .bnr-plan h2 {
    line-height: 1; text-align: center;
}
footer .bnr-plan h2 .txt {
    display: inline-block; position: relative; z-index: 1; left: 0; top: 0;
}
footer .bnr-plan h2 .txt::before, footer .bnr-plan h2 .txt::after {
    content: ''; display: block; width: 24px; height: 1px; background-color: #132747; position: absolute; z-index: 1; left: -36px; top: 50%; transform: translate(0, -50%);
}
footer .bnr-plan h2 .txt::after {
    left: auto; right: -36px;
}
footer .bnr-plan a {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: center; max-width: 480px; height: 72px; margin: 20px auto 0; border-radius: 4px; background-image: url("../img/common/common_tex-1.jpg"); background-size: 480px; background-position: center;
}
footer .bnr-plan a .txt {
    display: inline-block;
}
footer .inner {
    padding: 44px 0 93px; position: relative; z-index: 1; left: 0; top: 0;
}
footer .inner .back-img {
    width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0;
}
footer .inner::before {
    content: ''; display: block; width: 100%; height: 100%; background-color: rgba(0, 0, 0, .64); position: absolute; z-index: 2; left: 0; top: 0;
}
footer .wrap {
    width: 88%; margin: 0 auto; position: relative; z-index: 3; left: 0; top: 0;
}
footer .yado-info {
    text-align: center;
}
footer .yado-info .logo {
    width: 120px; margin: 0 auto;
}
footer .yado-info .logo a {
	display: inline-block; width: 100%;
}
footer .yado-info .logo img {
	width: 100%; height: auto;
}
footer .yado-info .addr {
	margin: 32px 0 0;
}
footer .yado-info .tel {
	margin: 16px 0 0;
}
footer .yado-info .tel {
	display: inline-block;
}
footer .yado-info .check-in-out {
	margin: 16px 0 0;
}
footer .yado-info .check-in {
	display: inline-block;
}
footer .yado-info .check-out {
	display: inline-block; margin: 12px 0 0;
}
footer .yado-info .check-in-out .devider {
	display: none;
}
footer .sitemap {
    margin: 32px 0 0; padding: 32px 0 0; border-top: solid 1px rgba(255, 255, 255, .32);
}
footer .sitemap ul {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; gap: 20px;
}
footer .sitemap li a {
    color: #fff; display: inline-block;
}
footer .sitemap li .instagram {
    background-image: url("../img/common/common_instagram-white.svg"); background-size: cover; width: 14px; height: 14px;
}
footer .copy {
	width: 100%; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px; margin: 44px 0 0;
}
footer .copy a {
	display: inline-block; width: 44px; height: 13px;
}
footer .copy p {
	display: inline-block;
}

@media only screen and (min-width: 640px) {
    footer .bnr-plan {
	    padding: 90px 0 180px;
    }
    footer .bnr-plan::before {
	    width: 90%; height: 140px;
    }
    footer .bnr-plan .txt-wrap {
	    width: 90%;
    }
    footer .bnr-plan h2 .txt::before, footer .bnr-plan h2 .txt::after {
        width: 36px; left: -50px;
    }
    footer .bnr-plan h2 .txt::after {
        left: auto; right: -50px;
    }
    footer .bnr-plan a {
        height: 80px; margin: 26px auto 0;
    }
    footer .inner {
        padding: 66px 0 40px;
    }
    footer .wrap {
        width: 90%;
    }
    footer .yado-info .logo {
        width: 140px;
    }
    footer .yado-info .addr {
	    margin: 40px 0 0;
    }
    footer .yado-info .tel {
	    margin: 20px 0 0;
    }
    footer .yado-info .check-in-out {
	    margin: 20px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 14px;
    }
    footer .yado-info .check-out {
	    margin: 0;
    }
    footer .yado-info .check-in-out br {
	    display: none;
    }
    footer .yado-info .check-in-out .devider {
	    display: block; width: 1px; height: 13px; background-color: rgba(255, 255, 255, .32);
    }
    footer .sitemap {
        margin: 40px 0 0; padding: 40px 0 0;
    }
    footer .sitemap ul {
        gap: 26px;
    }
    footer .sitemap li .instagram {
        width: 15px; height: 15px;
    }
    footer .copy {
        margin: 66px 0 0;
    }
}

@media only screen and (min-width: 960px) {
    footer .bnr-plan {
	    padding: 120px 4%; display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: flex-start;
    }
    footer .bnr-plan::before {
        width: 42%; max-width: 600px; height: 100%; left: 4%; transform: translate(0, 0);
    }
    footer .bnr-plan .txt-wrap {
	    width: 50%; margin: 0;
    }
    footer .bnr-plan h2 .txt::before, footer .bnr-plan h2 .txt::after {
        width: 48px; left: -64px;
    }
    footer .bnr-plan h2 .txt::after {
        left: auto; right: -64px;
    }
    footer .bnr-plan a {
        height: 88px; margin: 32px auto 0;
    }
    footer .inner {
        padding: 88px 0 48px;
    }
    footer .wrap {
        width: 92%;
    }
    footer .yado-info .logo {
        width: 160px;
    }
    footer .yado-info .addr {
	    margin: 48px 0 0;
    }
    footer .yado-info .tel {
	    margin: 24px 0 0;
    }
    footer .yado-info .check-in-out {
	    margin: 24px 0 0; gap: 16px;
    }
    footer .yado-info .check-in-out .devider {
        height: 14px;
    }
    footer .sitemap {
        margin: 48px 0 0; padding: 48px 0 0;
    }
    footer .sitemap ul {
        gap: 32px;
    }
    footer .sitemap li .instagram {
        width: 16px; height: 16px;
    }
    footer .copy {
        margin: 88px 0 0;
    }
}

@media only screen and (min-width: 1280px) {
    footer .bnr-plan {
	    padding: 120px calc(50% - 600px);
    }
    footer .bnr-plan::before {
        width: 600px; left: calc(50% - 600px);
    }
    footer .wrap {
        width: 1200px;
    }
}

@media (hover: hover) {
    footer .bnr-plan a .txt {
        transition: opacity .4s;
    }
    footer .bnr-plan a:hover .txt {
        opacity: .48;
    }
    footer .sitemap li a {
        transition: opacity .4s;
    }
    footer .sitemap li a:hover {
        opacity: .48;
    }
}


/*//////////////////////////////////////////////////
01.フロントページ
//////////////////////////////////////////////////*/

#main_visual {
	width: 100%; height: auto; background-image: url("../movie/top.jpg"); background-size: cover; background-position: center center; background-repeat: no-repeat; position: relative; z-index: 2; left: 0; top: 0; overflow: hidden; margin: 71px 0 0;
}
#main_visual::before {
	content: ''; display: block; padding: 56.25% 0 0;
}
#main_movie {
	width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0;
}
#main_movie video {
	width: 101%; height: 101%; position: absolute; z-index: 1; top: 50%; left: 50%; transform: translate(-50%, -50%);
}

.front-page .intro {
    padding: 80px 0 60px; position: relative; z-index: 1; left: 0; top: 0;
}
.front-page .intro::before {
    content: ''; display: block; background-image: url("../img/common/common_illust-1.png"); background-size: cover; width: 240px; height: 298px; position: absolute; z-index: 3; left: 50%; top: -134px; transform: translate(92px, 0);
}
.front-page .intro .txt-wrap {
    position: relative; z-index: 4; left: 0; top: 0;
}
.front-page .intro h2 {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; position: relative; z-index: 1; left: 0; top: 0;
}
.front-page .intro h2 .en {
    display: inline-block; position: absolute; z-index: 1; left: 50%; top: 0; transform: translate(38px, 4px) rotate(90deg); transform-origin: left top;
}
.front-page .intro h2 .ja {
    display: inline-block;
}
.front-page .intro .p-wrap {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; margin: 60px 0 0;
}
.front-page .intro p {
    display: inline-block;
}
.front-page .intro .map {
    height: 240px; overflow: hidden; position: relative; z-index: 1; left: 0; top: 0;
}
.front-page .intro .map img {
    width: 1048px; height: 1200px; position: absolute; z-index: 1; left: 50%; top: 50%; transform: translate(-738px, -428px);
}
.front-page .intro .img {
    width: 88%; margin: 0 auto; border-radius: 20px; overflow: hidden; position: relative; z-index: 2; left: 0; top: 0;
}

.front-page .clink {
    padding: 44px 6%; margin: 4px 0 0; display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: flex-start; position: relative; z-index: 1; left: 0; top: 0;
}
.front-page .clink.first {
    margin: 0;
}
.front-page .clink.reverse {
    justify-content: flex-end;
}
.front-page .clink .txt-wrap {
    max-width: 600px; padding: 44px; border-radius: 20px; box-sizing: border-box; overflow: hidden; position: relative; z-index: 2; left: 0; top: 0;
}
.front-page .clink .txt-wrap::before {
    content: ''; display: block; width: 100%; height: 100%; background-image: url("../img/common/common_tex-2.jpg"); background-position: center top; opacity: .88; position: absolute; z-index: 1; left: 0; top: 0;
}
.front-page .clink .txt-inner {
    position: relative; z-index: 2; left: 0; top: 0;
}
.front-page .clink h2 {
    line-height: 1.7;
}
.front-page .clink h2 .en {
    display: block;
}
.front-page .clink h2 .ja {
    display: block; margin: 4px 0 0;
}
.front-page .clink p {
    margin: 20px 0 0;
}
.front-page .clink .btn-1 {
    margin: 32px 0 0;
}
.front-page .clink .img {
    width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0;
}

@media only screen and (min-width: 640px) {
    #main_visual {
	    margin: 88px 0 0;
    }
    
    .front-page .intro {
        padding: 120px 0 90px;
    }
    .front-page .intro::before {
        width: 360px; height: 446px; top: 120px; transform: translate(216px, 0);
    }
    .front-page .intro .txt-wrap {
        display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; flex-direction: row-reverse; gap: 36px;
    }
    .front-page .intro h2 {
        width: 52px;
    }
    .front-page .intro h2 .en {
        transform: translate(46px, 4px) rotate(90deg);
    }
    .front-page .intro .p-wrap {
        margin: 0; width: 316px;
    }
    .front-page .intro .map {
        height: 360px;
    }
    .front-page .intro .map img {
        width: 1310px; height: 1500px; transform: translate(-923px, -536px);
    }
    .front-page .intro .img {
        width: 90%; border-radius: 26px;
    }
    
    .front-page .clink {
        padding: 66px 5%; margin: 6px 0 0;
    }
    .front-page .clink .txt-wrap {
        padding: 66px; border-radius: 26px;
    }
    .front-page .clink h2 .ja {
        margin: 6px 0 0;
    }
    .front-page .clink p {
        margin: 26px 0 0;
    }
    .front-page .clink .btn-1 {
        margin: 40px 0 0;
    }
}

@media only screen and (min-width: 960px) {
    #main_visual {
	    margin: 0;
    }
    
    .front-page .intro {
        padding: 160px 0 120px;
    }
    .front-page .intro::before {
        width: 480px; height: 595px; top: 160px; transform: translate(238px, 0);
    }
    .front-page .intro .txt-wrap {
        gap: 46px;
    }
    .front-page .intro h2 {
        width: 60px;
    }
    .front-page .intro h2 .en {
        transform: translate(52px, 4px) rotate(90deg);
    }
    .front-page .intro .p-wrap {
        width: 336px;
		
    justify-content: flex-end!important;
    }
    .front-page .intro .map {
        height: 480px;
    }
    .front-page .intro .map img {
        width: 1572px; height: 1800px; transform: translate(-1106px, -644px);
    }
    .front-page .intro .img {
        width: 92%; border-radius: 32px;
    }
    
    .front-page .clink {
        padding: 88px 4%; margin: 8px 0 0;
    }
    .front-page .clink .txt-wrap {
        padding: 88px; border-radius: 32px;
    }
    .front-page .clink h2 .ja {
        margin: 8px 0 0;
    }
    .front-page .clink p {
        margin: 32px 0 0;
    }
    .front-page .clink .btn-1 {
        margin: 48px 0 0;
    }
}

@media only screen and (min-width: 1280px) {
    .front-page .intro::before {
        top: 160px; transform: translate(460px, 0);
    }
    .front-page .intro .txt-wrap {
        padding: 0 0 0 50%; justify-content: flex-end; gap: 46px;
    }
    .front-page .intro .map {
        width: 50%; height: 100%; position: absolute;
    }
    .front-page .intro .map img {
        width: 1834px; height: 2100px; left: auto; right: 0; top: 0; transform: translate(190px, -462px);
    }
    .front-page .intro .img {
        width: 1200px; margin: 120px auto 0;
    }
    
    .front-page .clink {
        padding: 88px calc(50% - 600px);
    }
}


/*//////////////////////////////////////////////////
02.お部屋＆館内
//////////////////////////////////////////////////*/

.page-facilities .rooms {
    padding: 60px 0; position: relative; z-index: 1; left: 0; top: 0;
}
.page-facilities .rooms::before {
    content: ''; display: block; background-image: url("../img/common/common_illust-1.png"); background-size: cover; width: 240px; height: 298px; position: absolute; z-index: 1; right: 6%; top: -184px; transform: translate(50%, 0);
}
.page-facilities .rooms .inner {
    width: 88%; margin: 0 auto; position: relative; z-index: 2; left: 0; top: 0;
}
.page-facilities .rooms .item {
    margin: 60px 0 0;
}
.page-facilities .rooms .item:first-of-type {
    margin: 44px 0 0;
}
.page-facilities .rooms .item .swiper-container {
   max-width: 720px; margin: 0 auto; border-radius: 20px; position: relative; z-index: 1; left: 0; top: 0; overflow: hidden;
}
.page-facilities .rooms .item .swiper-wrapper {
   position: relative; z-index: 1; left: 0; top: 0;
}
.page-facilities .rooms .item .swiper-pagination {
    position: absolute; z-index: 2; left: 0; bottom: 8px; width: 100%; text-align: center;
}
.page-facilities .rooms .item .swiper-pagination-bullet {
    outline: none; background: none; background-color: #fff; opacity: 1; width: 8px; height: 8px; margin: 0 4px;
}
.page-facilities .rooms .item .swiper-pagination-bullet-active {
    background-color: #132747;
}
.page-facilities .rooms .item .txt-wrap {
    max-width: 600px; margin: 32px auto 0;
}
.page-facilities .rooms .item h3 {
    line-height: 1.7;
}
.page-facilities .rooms .item .capacity {
    line-height: 1; text-align: right; display: block; padding: 16px 0 0; margin: 16px 0 0; border-top: solid 1px #757575;
}
.page-facilities .rooms .item p {
    margin: 32px 0 0;
}
.page-facilities .rooms .table-1 {
    max-width: 900px; margin: 60px auto 0;
}

.page-facilities .onsen .onsen-intro {
    padding: 80px 0; position: relative; z-index: 1; left: 0; top: 0;
}
.page-facilities .onsen .onsen-intro::before {
    content: ''; display: block; width: 100%; height: 100%; background-color: rgba(255, 255, 255, .32); position: absolute; z-index: 2; left: 0; top: 0;
}
.page-facilities .onsen .onsen-intro .txt-wrap {
    width: 88%; max-width: 600px; margin: 0 auto; position: relative; z-index: 3; left: 0; top: 0;
}
.page-facilities .onsen .onsen-intro .title-layout-1 {
    text-align: left;
}
.page-facilities .onsen .onsen-intro .time {
    line-height: 1; text-align: right; display: block; padding: 16px 0 0; margin: 16px 0 0; border-top: solid 1px #757575;
}
.page-facilities .onsen .onsen-intro p {
    margin: 32px 0 0;
}
.page-facilities .onsen .onsen-intro .img {
    width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0;
}
.page-facilities .onsen .imgs {
    width: 88%; margin: 44px auto 0; border-radius: 20px; overflow: hidden;
}
.page-facilities .onsen .imgs .img {
    border: solid 1px #f8f4eb; box-sizing: border-box;
}
.page-facilities .onsen .onsen-info {
    width: 88%; margin: 44px auto 0;
}
.page-facilities .onsen .onsen-info .swiper-container {
   max-width: 540px; margin: 0 auto; border-radius: 20px; position: relative; z-index: 1; left: 0; top: 0; overflow: hidden;
}
.page-facilities .onsen .onsen-info .swiper-wrapper {
   position: relative; z-index: 1; left: 0; top: 0;
}
.page-facilities .onsen .onsen-info .swiper-pagination {
    position: absolute; z-index: 2; left: 0; bottom: 8px; width: 100%; text-align: center;
}
.page-facilities .onsen .onsen-info .swiper-pagination-bullet {
    outline: none; background: none; background-color: #fff; opacity: 1; width: 8px; height: 8px; margin: 0 4px;
}
.page-facilities .onsen .onsen-info .swiper-pagination-bullet-active {
    background-color: #132747;
}
.page-facilities .onsen .onsen-info .table-1 {
    max-width: 540px; margin: 44px auto 0;
}

.page-facilities .facilities {
    padding: 60px 0 0;
}
.page-facilities .facilities .inner {
    width: 88%; margin: 0 auto;
}
.page-facilities .facilities .item-wrap {
    max-width: 360px; margin: 40px auto 0; display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: flex-start; gap: 30px;
}
.page-facilities .facilities .item {
    width: 100%; border-radius: 12px; overflow: hidden; background-color: #fff;
}
.page-facilities .facilities .swiper-container {
   width: 100%; border-radius: 12px 12px 0 0; position: relative; z-index: 1; left: 0; top: 0; overflow: hidden;
}
.page-facilities .facilities .swiper-wrapper {
   position: relative; z-index: 1; left: 0; top: 0;
}
.page-facilities .facilities .swiper-pagination {
    position: absolute; z-index: 2; left: 0; bottom: 8px; width: 100%; text-align: center;
}
.page-facilities .facilities .swiper-pagination-bullet {
    outline: none; background: none; background-color: #fff; opacity: 1; width: 8px; height: 8px; margin: 0 4px;
}
.page-facilities .facilities .swiper-pagination-bullet-active {
    background-color: #132747;
}
.page-facilities .facilities h3 {
    line-height: 1.7; padding: 16px; display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start;
}

.page-facilities .cancellation-policy {
    padding: 60px 0 0;
}
.page-facilities .cancellation-policy .inner {
    width: 88%; max-width: 900px; margin: 0 auto;
}
.page-facilities .cancellation-policy .table-1 {
    margin: 40px 0 0;
}
.page-facilities .cancellation-policy .table-1.pc {
    display: none;
}
.page-facilities .cancellation-policy .table-1 th {
    text-align: center; width: 50%;
}
.page-facilities .cancellation-policy .table-1 td {
    text-align: center; width: 50%;
}

.page-facilities .payment {
    padding: 60px 0;
}
.page-facilities .payment .inner {
    width: 88%; max-width: 900px; margin: 0 auto; padding: 32px; border-radius: 12px; box-sizing: border-box; background-color: #fff;
}
.page-facilities .payment h2 {
    line-height: 1.7; text-align: center;
}
.page-facilities .payment .ul-wrap {
    text-align: center; margin: 20px 0 0;
}

@media only screen and (min-width: 640px) {
    .page-facilities .rooms {
        padding: 90px 0;
    }
    .page-facilities .rooms::before {
        width: 360px; height: 446px; right: 5%; top: -292px;
    }
    .page-facilities .rooms .inner {
        width: 90%;
    }
    .page-facilities .rooms .item {
        margin: 90px 0 0;
    }
    .page-facilities .rooms .item:first-of-type {
        margin: 66px 0 0;
    }
    .page-facilities .rooms .item .swiper-container {
        border-radius: 26px;
    }
    .page-facilities .rooms .item .txt-wrap {
        margin: 40px auto 0;
    }
    .page-facilities .rooms .item .capacity {
        padding: 20px 0 0; margin: 20px 0 0;
    }
    .page-facilities .rooms .item p {
        margin: 40px 0 0;
    }
    .page-facilities .rooms .table-1 {
        margin: 90px auto 0;
    }
    
    .page-facilities .onsen .onsen-intro {
        padding: 120px 0;
    }
    .page-facilities .onsen .onsen-intro .txt-wrap {
        width: 90%;
    }
    .page-facilities .onsen .onsen-intro .time {
        padding: 20px 0 0; margin: 20px 0 0;
    }
    .page-facilities .onsen .onsen-intro p {
        margin: 40px 0 0;
    }
    .page-facilities .onsen .imgs {
        width: 90%; margin: 66px auto 0; border-radius: 26px; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
    }
    .page-facilities .onsen .imgs .img {
        width: 50%;
    }
    .page-facilities .onsen .onsen-info {
        width: 90%; margin: 66px auto 0;
    }
    .page-facilities .onsen .onsen-info .swiper-container {
       border-radius: 26px;
    }
    .page-facilities .onsen .onsen-info .table-1 {
        margin: 66px auto 0;
    }
    
    .page-facilities .facilities {
        padding: 90px 0 0;
    }
    .page-facilities .facilities .inner {
        width: 90%;
    }
    .page-facilities .facilities .item-wrap {
        max-width: 765px; margin: 52px auto 0; gap: 45px;
    }
    .page-facilities .facilities .item {
        width: calc(50% - 23px); border-radius: 14px;
    }
    .page-facilities .facilities .swiper-container {
       border-radius: 12px 12px 0 0;
    }
    .page-facilities .facilities h3 {
        padding: 20px;
    }
    
    .page-facilities .cancellation-policy {
        padding: 90px 0 0;
    }
    .page-facilities .cancellation-policy .inner {
        width: 90%;
    }
    .page-facilities .cancellation-policy .table-1 {
        margin: 52px 0 0;
    }
    .page-facilities .cancellation-policy .table-1.sp {
        display: none;
    }
    .page-facilities .cancellation-policy .table-1.pc {
        display: block;
    }
    .page-facilities .cancellation-policy .table-1 tr {
        border-top: dashed 1px #132747;
    }
    .page-facilities .cancellation-policy .table-1 tr:first-of-type {
	    border: none;
    }
    .page-facilities .cancellation-policy .table-1 th {
        width: 25%; border-right: solid 1px #132747;
    }
    .page-facilities .cancellation-policy .table-1 th:last-of-type {
        border: none;
    }
    .page-facilities .cancellation-policy .table-1 td {
        width: 25%; border-right: solid 1px #132747;
    }
    .page-facilities .cancellation-policy .table-1 td:last-of-type {
        border: none;
    }
    
    .page-facilities .payment {
        padding: 90px 0;
    }
    .page-facilities .payment .inner {
        width: 90%; padding: 40px; border-radius: 14px;
    }
    .page-facilities .payment .ul-wrap {
        margin: 26px 0 0;
    }
}

@media only screen and (min-width: 960px) {
    .page-facilities .rooms {
        padding: 120px 0;
    }
    .page-facilities .rooms::before {
        width: 480px; height: 595px; right: 4%; top: -298px;
    }
    .page-facilities .rooms .inner {
        width: 92%;
    }
    .page-facilities .rooms .item {
        margin: 88px 0 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
    }
    .page-facilities .rooms .item:first-of-type {
        margin: 88px 0 0;
    }
    .page-facilities .rooms .item.reverse {
        flex-direction: row-reverse;
    }
    .page-facilities .rooms .item .swiper-container {
        width: 60%; margin: 0; border-radius: 32px;
    }
    .page-facilities .rooms .item .txt-wrap {
        width: 32.7%; margin: 0;
    }
    .page-facilities .rooms .item .capacity {
        padding: 24px 0 0; margin: 24px 0 0;
    }
    .page-facilities .rooms .item p {
        margin: 48px 0 0;
    }
    .page-facilities .rooms .table-1 {
        margin: 88px auto 0;
    }
    
    .page-facilities .onsen .onsen-intro {
        padding: 160px 0;
    }
    .page-facilities .onsen .onsen-intro .txt-wrap {
        width: 92%; margin: 0 0 0 4%;
    }
    .page-facilities .onsen .onsen-intro .time {
        padding: 24px 0 0; margin: 24px 0 0;
    }
    .page-facilities .onsen .onsen-intro p {
        margin: 48px 0 0;
    }
    .page-facilities .onsen .imgs {
        width: 92%; margin: 88px auto 0; border-radius: 32px;
    }
    .page-facilities .onsen .onsen-info {
        width: 92%; margin: 88px auto 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
    }
    .page-facilities .onsen .onsen-info .swiper-container {
        width: 45%; margin: 0; border-radius: 32px;
    }
    .page-facilities .onsen .onsen-info .table-1 {
        width: 45%; margin: 0;
    }
    
    .page-facilities .facilities {
        padding: 120px 0 0;
    }
    .page-facilities .facilities .inner {
        width: 92%;
    }
    .page-facilities .facilities .item-wrap {
        max-width: 1200px; margin: 64px auto 0; gap: 60px;
    }
    .page-facilities .facilities .item {
        width: calc(33.3% - 40px); border-radius: 16px;
    }
    .page-facilities .facilities .swiper-container {
       border-radius: 16px 16px 0 0;
    }
    .page-facilities .facilities h3 {
        padding: 24px;
    }
    
    .page-facilities .cancellation-policy {
        padding: 120px 0 0;
    }
    .page-facilities .cancellation-policy .inner {
        width: 92%;
    }
    .page-facilities .cancellation-policy .table-1 {
        margin: 64px 0 0;
    }
    
    .page-facilities .payment {
        padding: 120px 0;
    }
    .page-facilities .payment .inner {
        width: 92%; padding: 48px; border-radius: 16px;
    }
    .page-facilities .payment .ul-wrap {
        margin: 32px 0 0;
    }
}

@media only screen and (min-width: 1280px) {
    .page-facilities .rooms::before {
        right: 50%; transform: translate(840px, 0);
    }
    .page-facilities .rooms .inner {
        width: 1200px;
    }
    
    .page-facilities .onsen .onsen-intro .txt-wrap {
        margin: 0 0 0 calc(50% - 600px);
    }    
    .page-facilities .onsen .imgs {
        width: 1200px;
    }
    .page-facilities .onsen .onsen-info {
        width: 1200px;
    }
    
    .page-facilities .facilities .inner {
        width: 1200px;
    }
}


/*//////////////////////////////////////////////////
03.お料理
//////////////////////////////////////////////////*/

.page-cuisine .cuisine-layout {
    padding: 60px 0 0; position: relative; z-index: 1; left: 0; top: 0;
}
.page-cuisine .cuisine-layout.breakfast {
    padding: 60px 0;
}
.page-cuisine .cuisine-layout.dinner::before {
    content: ''; display: block; background-image: url("../img/common/common_illust-3.png"); background-size: cover; width: 300px; height: 332px; position: absolute; z-index: 1; left: 0; top: 0; transform: translate(-62.5%, -62.5%);
}
.page-cuisine .cuisine-layout .txt-wrap {
    width: 88%; max-width: 600px; margin: 0 auto; position: relative; z-index: 2; left: 0; top: 0;
}
.page-cuisine .cuisine-layout .txt-wrap p {
    margin: 32px 0 0;
}
.page-cuisine .cuisine-layout .img-l {
    height: 320px; margin: 44px 0 0;
}
.page-cuisine .cuisine-layout .gallery {
    width: 88%; margin: 44px auto 0; display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: flex-start; border-radius: 20px; overflow: hidden; position: relative; z-index: 2; left: 0; top: 0;
}
.page-cuisine .cuisine-layout .gallery .img {
    width: 50%; border: solid 1px #f8f4eb; box-sizing: border-box;
}
.page-cuisine .cuisine-layout .gallery .img:first-of-type {
    width: 100%;
}
.page-cuisine .cuisine-layout .gallery .img:nth-of-type(2) {
    width: 100%;
}
.page-cuisine .cuisine-layout.breakfast .gallery .img:nth-of-type(2) {
    width: 50%;
}

@media only screen and (min-width: 640px) {
    .page-cuisine .cuisine-layout {
        padding: 90px 0 0;
    }
    .page-cuisine .cuisine-layout.breakfast {
        padding: 90px 0;
    }
    .page-cuisine .cuisine-layout.dinner::before {
        width: 450px; height: 498px;
    }
    .page-cuisine .cuisine-layout .txt-wrap p {
        margin: 40px 0 0;
    }
    .page-cuisine .cuisine-layout .img-l {
        height: 480px; margin: 66px 0 0;
    }
    .page-cuisine .cuisine-layout .gallery {
        width: 90%; margin: 66px auto 0; border-radius: 26px;
    }
    .page-cuisine .cuisine-layout .gallery .img {
        width: 33.3%;
    }
    .page-cuisine .cuisine-layout .gallery .img:first-of-type {
        width: 50%;
    }
    .page-cuisine .cuisine-layout .gallery .img:nth-of-type(2) {
        width: 50%;
    }
    .page-cuisine .cuisine-layout .gallery .img:nth-of-type(5) {
        width: 33.4%;
    }
    .page-cuisine .cuisine-layout .gallery .img:nth-of-type(8) {
        width: 33.4%;
    }
}

@media only screen and (min-width: 960px) {
    .page-cuisine .cuisine-layout {
        padding: 8px 0 0;
    }
    .page-cuisine .cuisine-layout.breakfast {
        padding: 120px 0;
    }
    .page-cuisine .cuisine-layout.dinner::before {
        width: 600px; height: 664px; left: 0; top: 728px; transform: translate(-400px, -50%);
    }
    .page-cuisine .cuisine-layout .inner {
        width: 100%; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
    }
    .page-cuisine .cuisine-layout.breakfast .inner {
        flex-direction: row-reverse;
    }
    .page-cuisine .cuisine-layout .txt-wrap {
        width: 50%; max-width: 50%; margin: 0; padding: 0 7.3% 0 4%; box-sizing: border-box;
    }
    .page-cuisine .cuisine-layout.breakfast .txt-wrap {
        padding: 0 4% 0 7.3%;
    }
    .page-cuisine .cuisine-layout .txt-wrap h2 {
        text-align: left;
    }
    .page-cuisine .cuisine-layout .txt-wrap p {
        margin: 48px 0 0;
    }
    .page-cuisine .cuisine-layout .img-l {
        width: 50%; height: 640px; margin: 0;
    }
    .page-cuisine .cuisine-layout .gallery {
        width: 92%; margin: 88px auto 0; border-radius: 32px;
    }
}

@media only screen and (min-width: 1280px) {
    .page-cuisine .cuisine-layout.dinner::before {
        left: 50%; transform: translate(-1050px, -50%);
    }
    .page-cuisine .cuisine-layout .txt-wrap {
        padding: 0 88px 0 calc(50% - 600px);
    }
    .page-cuisine .cuisine-layout.breakfast .txt-wrap {
        padding: 0 calc(50% - 600px) 0 88px;
    }
    .page-cuisine .cuisine-layout .txt-wrap h2 br {
        display: none;
    }
    .page-cuisine .cuisine-layout .gallery {
        width: 1200px;
    }
}


/*//////////////////////////////////////////////////
04.奥入瀬観光
//////////////////////////////////////////////////*/

.page-oirase-stream .oirase .inner-1 {
    padding: 80px 0 40px; position: relative; z-index: 1; left: 0; top: 0;
}
.page-oirase-stream .oirase .inner-1::before {
    content: ''; display: block; background-image: url("../img/common/common_illust-1.png"); background-size: cover; width: 240px; height: 298px; position: absolute; z-index: 1; left: 50%; top: -6px; transform: translate(162px, 0);
}
.page-oirase-stream .oirase .inner-1 h2 {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; position: relative; z-index: 1; left: 0; top: 0;
}
.page-oirase-stream .oirase .inner-1 h2 .en {
    display: inline-block; position: absolute; z-index: 1; left: 50%; top: 0; transform: translate(108px, 2px) rotate(90deg); transform-origin: left top;
}
.page-oirase-stream .oirase .inner-1 h2 .ja {
    display: inline-block;
}
.page-oirase-stream .oirase .inner-1 .img-1 {
    width: 120px; position: absolute; z-index: 2; right: 50%; top: 40px; transform: translate(-132px, 0);
}
.page-oirase-stream .oirase .inner-1 .img-2 {
    width: 180px; position: absolute; z-index: 2; left: 50%; bottom: 0; transform: translate(162px, 0);
}
.page-oirase-stream .oirase .inner-2 {
    padding: 40px 0 0;
}
.page-oirase-stream .oirase .inner-2 .wrap-1 .img-1 {
    height: 320px;
}
.page-oirase-stream .oirase .inner-2 .wrap-1 .img-2 {
    width: 240px; margin: 60px auto 0;
}
.page-oirase-stream .oirase .inner-2 .wrap-2 {
    width: 88%; max-width: 600px; margin: 60px auto 0;
}
.page-oirase-stream .oirase .inner-2 .wrap-2 .img {
    width: 240px; margin: 60px auto 0;
}
.page-oirase-stream .oirase .img-l {
    width: 88%; margin: 60px auto 0; border-radius: 0 0 20px 20px; overflow: hidden;
}
.page-oirase-stream .oirase .img-l::before {
    content: ''; display: block; width: 100%; height: 20px; border-radius: 20px 20px 0 0; background-color: #fff;
}
.page-oirase-stream .sightseeing {
    width: 88%; max-width: 360px; margin: 0 auto; padding: 80px 0 60px; display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: stretch; gap: 30px;
}
.page-oirase-stream .sightseeing .item {
    background-color: #fff; border-radius: 12px; overflow: hidden;
}
.page-oirase-stream .sightseeing .item .img {
    display: block; position: relative; z-index: 1; left: 0; top: 0;
}
.page-oirase-stream .sightseeing .item .img img {
    position: relative; z-index: 1; left: 0; top: 0;
}
.page-oirase-stream .sightseeing .item .img::before {
    content: ''; display: block; width: 36px; height: 36px; background-color: #132747; position: absolute; z-index: 2; right: 0; top: 0;
}
.page-oirase-stream .sightseeing .item .img::after {
    content: ''; display: block; background-image: url("../img/common/common_exlink-white.svg"); background-size: cover; width: 12px; height: 12px; position: absolute; z-index: 3; right: 12px; top: 12px;
}
.page-oirase-stream .sightseeing .item .txt-wrap {
    line-height: 1.7; padding: 16px 16px 20px;
}
.page-oirase-stream .sightseeing .item .txt-wrap h3 {
    display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-oirase-stream .sightseeing .item .txt-wrap h3 a {
    display: inline-block;
}
.page-oirase-stream .sightseeing .item .txt-wrap p {
    margin: 12px 0 0;
}

@media only screen and (min-width: 640px) {
    .page-oirase-stream .oirase .inner-1 {
        padding: 120px 0 60px;
    }
    .page-oirase-stream .oirase .inner-1::before {
        width: 360px; height: 446px; top: -78px; transform: translate(212px, 0);
    }
    .page-oirase-stream .oirase .inner-1 h2 .en {
        transform: translate(128px, 2px) rotate(90deg);
    }
    .page-oirase-stream .oirase .inner-1 .img-1 {
        width: 180px; top: 60px; transform: translate(-208px, 0);
    }
    .page-oirase-stream .oirase .inner-1 .img-2 {
        width: 270px; transform: translate(242px, 0);
    }
    .page-oirase-stream .oirase .inner-2 {
        padding: 60px 0 0;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-1 .img-1 {
        height: 480px;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-1 .img-2 {
        width: 360px; margin: 90px auto 0;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-2 {
        width: 90%; margin: 90px auto 0;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-2 .img {
        width: 360px; margin: 90px auto 0;
    }
    .page-oirase-stream .oirase .img-l {
        width: 90%; margin: 90px auto 0; border-radius: 0 0 26px 26px;
    }
    .page-oirase-stream .oirase .img-l::before {
        height: 26px; border-radius: 26px 26px 0 0;
    }
    .page-oirase-stream .sightseeing {
        width: 90%; max-width: 765px; padding: 120px 0 90px; gap: 45px;
    }
    .page-oirase-stream .sightseeing .item {
        width: calc(50% - 23px); border-radius: 14px;
    }
    .page-oirase-stream .sightseeing .item .txt-wrap {
        padding: 20px 20px 26px;
    }
    .page-oirase-stream .sightseeing .item .txt-wrap p {
        margin: 14px 0 0;
    }
}

@media only screen and (min-width: 960px) {
    .page-oirase-stream .oirase .inner-1 {
        padding: 160px 0;
    }
    .page-oirase-stream .oirase .inner-1::before {
        width: 480px; height: 595px; top: -150px; transform: translate(262px, 0);
    }
    .page-oirase-stream .oirase .inner-1 h2 .en {
        transform: translate(148px, 2px) rotate(90deg);
    }
    .page-oirase-stream .oirase .inner-1 .img-1 {
        width: 240px; top: 80px; transform: translate(-284px, 0);
    }
    .page-oirase-stream .oirase .inner-1 .img-2 {
        width: 360px; transform: translate(322px, 0);
    }
    .page-oirase-stream .oirase .inner-2 {
        padding: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-1 {
        width: 50%;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-1 .img-1 {
        height: 640px;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-1 .img-2 {
        width: 36vw; margin: 120px 0 0 4vw;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-2 {
        width: 50%; max-width: 50%; margin: 0; padding: 120px 4vw 0 10vw; box-sizing: border-box;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-2 .img {
        width: 36vw; margin: 120px 0 0;
    }
    .page-oirase-stream .oirase .img-l {
        width: 92%; margin: 120px auto 0; border-radius: 0 0 32px 32px;
    }
    .page-oirase-stream .oirase .img-l::before {
        height: 32px; border-radius: 32px 32px 0 0;
    }
    .page-oirase-stream .sightseeing {
        width: 92%; max-width: 1200px; padding: 160px 0 120px; gap: 60px;
    }
    .page-oirase-stream .sightseeing .item {
        width: calc(33.3% - 40px); border-radius: 16px;
    }
    .page-oirase-stream .sightseeing .item .txt-wrap {
        padding: 24px 24px 32px;
    }
    .page-oirase-stream .sightseeing .item .txt-wrap p {
        margin: 16px 0 0;
    }
}

@media only screen and (min-width: 1280px) {
    .page-oirase-stream .oirase .inner-1 .img-1 {
        left: 50%; right: auto; transform: translate(-600px, 0);
    }
    .page-oirase-stream .oirase .inner-1 .img-2 {
        left: auto; right: 50%; transform: translate(720px, 0);
    }
    .page-oirase-stream .oirase .inner-2 .wrap-1 .img-2 {
        width: 480px; margin: 120px 0 0 calc(100% - 600px);
    }
    .page-oirase-stream .oirase .inner-2 .wrap-2 {
        padding: 120px calc(50% - 600px) 0 120px;
    }
    .page-oirase-stream .oirase .inner-2 .wrap-2 .img {
        width: 480px;
    }
    .page-oirase-stream .oirase .img-l {
        width: 1200px;
    }
    .page-oirase-stream .sightseeing {
        width: 1200px;
    }
}

@media (hover: hover) {
    .page-oirase-stream .sightseeing .item .img {
        overflow: hidden;
    }
    .page-oirase-stream .sightseeing .item .img img {
        transition: transform .8s;
    }
    .page-oirase-stream .sightseeing .item .img:hover img {
        transform: scale(1.08);
    }
}


/*//////////////////////////////////////////////////
05.アクセス＆お問い合わせ
//////////////////////////////////////////////////*/

.page-access-contact .access {
    padding: 4px 0 0;
}
.page-access-contact .access .gmap {
    height: 320px;
}
.page-access-contact .access .yado-info {
    line-height: 1; text-align: center; padding: 60px 0; background-color: rgba(255, 255, 255, .64);
}
.page-access-contact .access .yado-info .logo {
    width: 120px; margin: 0 auto;
}
.page-access-contact .access .yado-info .logo a {
	display: inline-block; width: 100%;
}
.page-access-contact .access .yado-info .logo img {
	width: 100%; height: auto;
}
.page-access-contact .access .yado-info .addr {
	margin: 32px 0 0;
}
.page-access-contact .access .yado-info .tel {
	margin: 16px 0 0;
}
.page-access-contact .access .yado-info .tel {
	display: inline-block;
}
.page-access-contact .access .yado-info .check-in-out {
	margin: 16px 0 0;
}
.page-access-contact .access .yado-info .check-in {
	display: inline-block;
}
.page-access-contact .access .yado-info .check-out {
	display: inline-block; margin: 12px 0 0;
}
.page-access-contact .access .yado-info .check-in-out .devider {
	display: none;
}
.page-access-contact .contact {
    padding: 60px 0;
}
.page-access-contact .contact .inner {
    width: 88%; margin: 0 auto;
}
.page-access-contact .contact form {
    max-width: 600px; margin: 40px auto 0;
}
.page-access-contact .contact form input, .page-access-contact .contact form textarea {
	-moz-appearance: none; -webkit-appearance: none; appearance: none; margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none;
}
.page-access-contact .contact form input, .page-access-contact .contact form textarea {
	line-height: 1.7!important; font-size: 1.6rem!important; transform: scale(.9); background-color: #fff!important; color: #212121!important; display: block; border: solid 2px #132747; border-radius: 4px; box-sizing: border-box;
	font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;
}
.page-access-contact .contact .form-item label {
	line-height: 1.7!important; font-size: 1.6rem!important; transform: scale(.9); color: #212121!important; display: block; box-sizing: border-box;
	font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;
}
.page-access-contact .contact .form-item sup {
	font-size: 1.2rem!important; color: #f44336!important; vertical-align: top;
}
.page-access-contact .contact .form-item {
	margin: 16px 0 0;
}
.page-access-contact .contact .form-item input[type="text"], .page-access-contact .contact .form-item input[type="email"] {
	margin: 8px 0 0; width: 100%; padding: 12px;
}
.page-access-contact .contact .form-item textarea {
	margin: 8px 0 0; width: 100%; height: 160px; padding: 12px;
}
.page-access-contact .contact input[type="submit"] {
	 line-height: 1; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 240px; height: 56px; border-radius: 4px; margin: 20px auto 0; background-color: #132747!important; color: #fff!important;
	font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;
}

@media only screen and (min-width: 640px) {
    .page-access-contact .access {
        padding: 6px 0 0;
    }
    .page-access-contact .access .gmap {
        height: 480px;
    }
    .page-access-contact .access .yado-info {
        padding: 90px 0;
    }
    .page-access-contact .access .yado-info .logo {
        width: 140px;
    }
    .page-access-contact .access .yado-info .addr {
	    margin: 40px 0 0;
    }
    .page-access-contact .access .yado-info .tel {
	    margin: 20px 0 0;
    }
    .page-access-contact .access .yado-info .check-in-out {
	    margin: 20px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 14px;
    }
    .page-access-contact .access .yado-info .check-out {
	    margin: 0;
    }
    .page-access-contact .access .yado-info .check-in-out br {
	    display: none;
    }
    .page-access-contact .access .yado-info .check-in-out .devider {
	    display: block; width: 1px; height: 13px; background-color: #757575;
    }
    .page-access-contact .contact {
        padding: 90px 0;
    }
    .page-access-contact .contact .inner {
        width: 90%;
    }
    .page-access-contact .contact form {
        margin: 52px auto 0;
    }
    .page-access-contact .contact form input, .page-access-contact .contact form textarea {
        transform: scale(.95);
    }
    .page-access-contact .contact .form-item label {
        transform: scale(.95);
    }
    .page-access-contact .contact .form-item {
	    margin: 20px 0 0;
    }
    .page-access-contact .contact .form-item input[type="text"], .page-access-contact .contact .form-item input[type="email"] {
	    margin: 10px 0 0; padding: 14px;
    }
    .page-access-contact .contact .form-item textarea {
	    margin: 10px 0 0;padding: 14px;
    }
    .page-access-contact .contact input[type="submit"] {
        margin: 34px auto 0;
    }
}

@media only screen and (min-width: 960px) {
    .page-access-contact .access {
        padding: 8px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: stretch;
    }
    .page-access-contact .access .gmap {
        width: 50%; height: auto;
    }
    .page-access-contact .access .yado-info {
        width: 50%; padding: 160px 0;
    }
    .page-access-contact .access .yado-info .logo {
        width: 160px;
    }
    .page-access-contact .access .yado-info .addr {
	    margin: 48px 0 0;
    }
    .page-access-contact .access .yado-info .tel {
	    margin: 24px 0 0;
    }
    .page-access-contact .access .yado-info .check-in-out {
	    margin: 24px 0 0; gap: 16px;
    }
    .page-access-contact .access .yado-info .check-in-out .devider {
	    height: 14px;
    }
    .page-access-contact .contact {
        padding: 120px 0;
    }
    .page-access-contact .contact .inner {
        width: 92%;
    }
    .page-access-contact .contact form {
        margin: 64px auto 0;
    }
    .page-access-contact .contact form input, .page-access-contact .contact form textarea {
        transform: scale(1);
    }
    .page-access-contact .contact .form-item label {
        transform: scale(1);
    }
    .page-access-contact .contact .form-item {
	    margin: 24px 0 0;
    }
    .page-access-contact .contact .form-item input[type="text"], .page-access-contact .contact .form-item input[type="email"] {
	    margin: 12px 0 0; padding: 16px;
    }
    .page-access-contact .contact .form-item textarea {
	    margin: 12px 0 0;padding: 16px;
    }
    .page-access-contact .contact input[type="submit"] {
        margin: 48px auto 0;
    }
}

@media only screen and (min-width: 1280px) {
    .page-access-contact .contact .inner {
        width: 1200px;
    }
}


/*//////////////////////////////////////////////////
gtranslate
//////////////////////////////////////////////////*/

.gt_switcher_wrapper {
	position: static!important;
	width: 100%!important;
    height: 100%!important;
}
.g-translate-wrap .gtranslate_wrapper {
	position: relative;
	line-height: 1;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
	z-index: 2;
	width: 100%!important;
    height: 100%!important;
}
.gtranslate_wrapper select {
	writing-mode: horizontal-tb!important;
	text-rendering: auto;
	letter-spacing: normal;
	word-spacing: normal;
	line-height: 1!important;
	text-transform: none;
	text-indent: 0px;
	text-shadow: none;
	display: inline-block;
	text-align: start;
    -moz-appearance: none; -webkit-appearance: none;
    appearance: none;
    background: none;
    border: none;
    outline: none;
	box-sizing: border-box;
	align-items: center;
	white-space: pre;
	-webkit-rtl-ordering: logical;
	cursor: default;
	margin: 0;
	border-radius: 0;
	padding: 0 0 2px 12px!important;
	width: 160px!important;
    height: 36px!important;
    position: relative;
    z-index: 1; 
    left: -16px!important;
    top: -4px!important;
	color: #fff!important;
    background-color: #132747!important;
}
.gtranslate_wrapper select option {
	color: #212121!important;
    background-color: #fff!important;
}

@media only screen and (min-width: 640px) {
    .gtranslate_wrapper select {
	    width: 161px!important;
        height: 38px!important;
    }
}

@media only screen and (min-width: 960px) {
    .gtranslate_wrapper select {
	    width: 162px!important;
        height: 40px!important;
    }
}

