@charset "utf-8";


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

::selection {color: #fff; background-color: #009139;}
::-moz-selection {color: #fff; background-color: #009139;}
@font-face {font-family: ShipporiMincho-M; src: url('font/ShipporiMincho-Medium.ttf') format("truetype");}
@font-face {font-family: NotoSansJP-R; src: url('font/NotoSansJP-Regular.otf') format("truetype");}
@font-face {font-family: Spectral-M; src: url('font/Spectral-Medium.ttf') format("truetype");}
html {width: 100%; height: 100%; font-size: 62.5%;}
body {width: 100%; height: 100%; min-width: 320px; position: relative; z-index: 1; left: 0; top: 0; background-color: #fbfaf5;}
header, main, footer, #loading_cover, #modal_menu, #header_fix, #humb_wrap, #humb_wrap_fix, #pagetop, input, textarea, select, button {
	font-size: 1.4rem; line-height: 2.0; color: #424242; 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: subpixel-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: 0; transition: all .4s;}
input[type="submit"], input[type="button"], input[type="radio"], input[type="checkbox"], select, button {cursor: pointer;}
:-ms-input-placeholder {color: #616161;}
::-moz-placeholder {color: #616161;}
::-webkit-input-placeholder {color: #616161;}
a {text-decoration: none; transition: all .4s;}
a:link, a:visited, a:hover {color: #424242;}
pre {white-space: pre-wrap;}
.gothic {font-family: 'NotoSansJP-R', "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif!important; font-weight: 400!important;}
.min {font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;}
.en {font-family: 'Spectral-M', sans-serif!important; font-weight: 500!important;}
.it {font-style: italic;}
.underline {text-decoration: underline;}
.l-space-n {letter-spacing: normal;}
.l-space-1 {letter-spacing: .1rem;}
.l-space-2 {letter-spacing: .2rem;}
.cf:after {content: ''; display: block; clear: both;}
.fit-img img {width: 100%; height: 100%; object-fit: cover; font-family: 'object-fit: cover;';}
.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;}
.keep-txt {word-break: keep-all; white-space: nowrap;}
.margin-0 {margin: 0!important;}
.marker {background: linear-gradient(transparent 0%, #dfc8bf 0%);}

.color-white {color: #fff!important;}
.color-font {color: #424242!important;}
.color-subfont {color: #757575!important;}
.color-line {color: #757575!important;}
.color-back {color: #fbfaf5!important;}
.color-back-2 {color: #f1eede!important;}
.color-green {color: #cee4ae!important;}
.color-green-2 {color: #009139!important;}
.color-brown {color: #baa684!important;}

.xx-lg {font-size: 2.4rem!important;}
.x-lg {font-size: 2.0rem!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 {
		font-size: 1.5rem;
	}
	.xx-lg {font-size: 3.0rem!important;}
    .x-lg {font-size: 2.4rem!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 {
		font-size: 1.6rem;
	}
    .xx-lg {font-size: 3.6rem!important;}
	.x-lg {font-size: 2.8rem!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;}
	.hover-48, .hover-64 {transition: all .4s;}
	.hover-48:hover {opacity: .48;}
	.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: #baa684; width: 8px; height: 8px; border-radius: 50%; position: absolute; z-index: 1; left: 0; top: 7px;
}
.ul-1.attention li::before {
	content: '※'; background: none; width: auto; height: auto; border-radius: 0; top: 0;
}

.table-1 {
	line-height: 1.7; width: 100%;
}
.table-1 th {
	display: block; vertical-align: top; text-align: left; padding: 12px; background-color: #f1eede;
}
.table-1 th.title {
	text-align: center; border-bottom: solid 1px #baa684;
}
.table-1 th span {
	display: inline-block;
}
.table-1 td {
	display: block; padding: 12px; background-color: #fff;
}
.table-1 td span {
	display: inline-block;
}

.title-layout-1 {
	line-height: 1.7; text-align: center; position: relative; z-index: 1; left: 0; top: 0;
}
.title-layout-1 .txt {
	position: relative; z-index: 2; left: 0; top: 0;
}
.title-layout-1::after {
	content: ''; display: block; background-image: url("../img/common/common_deco-4.png"); background-size: cover; width: 200px; height: 67.19px; position: absolute; z-index: 1; left: 50%; top: 50%; transform: translate(-50%, -50%); opacity: .48;
}

.title-layout-2 {
	padding: 44px 0; position: relative; z-index: 1; left: 0; top: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start;
}
.title-layout-2 h2 {
	display: inline-block; letter-spacing: .4rem; position: relative; z-index: 2; left: 0; top: 32px; opacity: 0; transition: all 1.6s;
}
.title-layout-2 h2.active {
	top: 0; opacity: 1;
}
.title-layout-2::after {
	content: ''; display: block; background-image: url("../img/common/common_deco-4-white.png"); background-size: cover; width: 200px; height: 67.19px; position: absolute; z-index: 1; left: 50%; top: 50%; transform: translate(-50%, -50%); opacity: .24;
}
.title-layout-2 .img {
	width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0;
}

.btn-1 {
	line-height: 1; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 240px; height: 40px; border: solid 1px #bdbdbd; position: relative; z-index: 1; left: 0; top: 0; background-color: #fbfaf5;
}
.btn-1 span {
	display: inline-block; position: relative; z-index: 2; left: 0; top: 0;
}
.btn-1::after {
	content: ''; display: block; background-image: url("../img/common/common_arrow-subfont.png"); background-size: cover; width: 3px; height: 6px; position: absolute; z-index: 2; right: 16px; top: 50%; transform: translate(0, -50%);
}

.back-green {
	line-height: 1; display: inline-block; background-color: #cee4ae; padding: 8px 12px; margin: 0 8px 8px 0;
}

.header-under {
	line-height: 1.7; height: 240px; position: relative; z-index: 1; left: 0; top: 0;
}
.header-under h1 {
	padding: 32px 8vw; width: 100%; box-sizing: border-box; position: absolute; z-index: 1; left: 0; bottom: 0; background-color: rgba(0, 0, 0, .64);
}
.header-under h1::before {
	content: ''; display: block; background-image: url("../img/common/common_deco-4-white.png"); background-size: cover; width: 200px; height: 67.19px; position: absolute; z-index: 1; left: -16px; top: 50%; transform: translate(0, -50%); opacity: .24;
}
.header-under h1 span {
	position: relative; z-index: 2; left: 0; top: 0;
}
.header-under .img {
	height: 100%; position: relative; z-index: 1; left: 0; top: 0;
}

.intro-layout-1 {
	padding: 60px 0;
}
.intro-layout-1 .inner {
	width: 84%; margin: 0 auto;
}
.intro-layout-1 .title-wrap {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; position: relative; z-index: 1; left: 0; top: 0;
}
.intro-layout-1 .title-wrap.active {
	top: 0; opacity: 1;
}
.intro-layout-1 .title-wrap h2 {
	display: inline-block; letter-spacing: .4rem; position: relative; z-index: 2; left: 0; top: 32px; opacity: 0; transition: all 1.6s;
}
.intro-layout-1 .title-wrap h2.active {
	top: 0; opacity: 1;
}
.intro-layout-1 .title-wrap::after {
	content: ''; display: block; background-image: url("../img/common/common_deco-5.png"); background-size: cover; width: 160px; height: 97.33px; position: absolute; z-index: 1; left: 50%; top: 50%; transform: translate(-50%, -50%); opacity: .48;
}
.intro-layout-1 .note {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; margin: 32px 0 0;
}
.intro-layout-1 .note span {
	line-height: 1; display: inline-block; background-color: #f1eede; padding: 8px 12px;
}
.intro-layout-1 .wrap {
	margin: 44px 0 0;
}
.intro-layout-1 .txt-wrap .img {
	height: 56vw; margin: 44px 0 0; border: solid 1px #fbfaf5; box-sizing: border-box;
}
.intro-layout-1 .img-l {
	height: 56vw; border: solid 1px #fbfaf5; box-sizing: border-box;
}

.item-layout-1 {
	margin: 44px 0 0;
}
.item-layout-1 .txt-wrap {
	position: relative; z-index: 1; left: 0; top: 0;
}
.item-layout-1 .txt-wrap h3 {
	line-height: 1.7; text-align: center; padding: 32px 0 0;
}
.item-layout-1 .txt-wrap::before {
	content: ''; background-image: url("../img/common/common_kakko.png"); background-size: cover; width: 24px; height: 24px; position: absolute; z-index: 1; left: 0; top: 0;
}
.item-layout-1 .txt-wrap .table-1 {
	margin: 32px 0 0;
}
.item-layout-1 .txt-wrap p {
	margin: 32px 0 0;
}
.item-layout-1 .img-wrap {
	margin: 40px 0 0;
}
.item-layout-1 .img-wrap .img {
	border: solid 1px #fbfaf5; box-sizing: border-box;
}

.item-layout-2 {
	max-width: 900px; margin: 44px auto 0; background-color: #f1eede; padding: 24px; box-sizing: border-box;
}
.item-layout-2 h3 {
	line-height: 1.7; text-align: center; position: relative; z-index: 1; left: 0; top: 0;
}
.item-layout-2 h3::after {
	content: ''; display: block; width: 100%; height: 1px; background-color: #bdbdbd; position: absolute; z-index: 1; left: 0; top: 50%; transform: translate(0, -50%);
}
.item-layout-2 h3 span {
	display: inline-block; background-color: #f1eede; padding: 0 12px; position: relative; z-index: 2; left: 0; top: 0;
}
.item-layout-2 .txt-wrap {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center; margin: 16px 0 0;
}
.item-layout-2 .txt-wrap.first {
	margin: 20px 0 0;
}
.item-layout-2 .txt-wrap .sum-txt {
	display: inline-block;
}

@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;
	}
	
	.table-1 {
		border-top: solid 1px #baa684;
	}
	.table-1 tr {
		border-bottom: solid 1px #baa684;
	}
	.table-1 th {
		display: table-cell; width: 25%; padding: 14px;
	}
	.table-1 td {
		display: table-cell; padding: 14px;
	}
	
	.title-layout-1::after {
		width: 260px; height: 93.17px;
	}
	
	.title-layout-2 {
		padding: 66px 0;
	}
	.title-layout-2 h2 {
		top: 40px;
	}
	.title-layout-2::after {
		width: 260px; height: 93.17px;
	}
	
	.btn-1 {
		height: 44px;
	}
	.btn-1::after {
		width: 4px; height: 8px; right: 20px;
	}
	
	.back-green {
		padding: 10px 14px;
	}
	
	.header-under {
		height: 360px;
	}
	.header-under h1 {
		padding: 40px 6vw;
	}
	.header-under h1::before {
		width: 260px; height: 93.17px; left: -20px; 
	}
	.header-under h1 br {
		display: none;
	}
	
	.intro-layout-1 {
		padding: 90px 0;
	}
	.intro-layout-1 .inner {
		width: 88%;
	}
	.intro-layout-1 .title-wrap h2 {
		top: 40px;
	}
	.intro-layout-1 .title-wrap::after {
		width: 200px; height: 121.67px;
	}
	.intro-layout-1 .note {
		margin: 40px 0 0;
	}
	.intro-layout-1 .note span {
		padding: 10px 14px;
	}
	.intro-layout-1 .wrap {
		margin: 66px 0 0; position: relative; z-index: 1; left: 0; top: 0;
	}
	.intro-layout-1 .txt-wrap {
		width: calc(50% - 33px);
	}
	.intro-layout-1 .txt-wrap .img {
		height: auto; margin: 66px 0 0; border: none;
	}
	.intro-layout-1 .img-l {
		width: calc(50vw - 33px); height: 400px; border: none; position: absolute; z-index: 1; left: calc(50% + 33px); top: 50%; transform: translate(0, -50%);
	}
	
	.item-layout-1 {
		margin: 66px 0 0;
	}
	.item-layout-1 .txt-wrap h3 {
		padding: 40px 0 0;
	}
	.item-layout-1 .txt-wrap h3 br {
		display: none;
	}
	.item-layout-1 .txt-wrap .table-1 {
		margin: 40px 0 0;
	}
	.item-layout-1 .txt-wrap p {
		margin: 40px 0 0;
	}
	.item-layout-1 .img-wrap {
		margin: 52px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
	}
	.item-layout-1 .img-wrap .img {
		width: 50%;
	}
	
	.item-layout-2 {
		margin: 66px auto 0; padding: 36px;
	}
	.item-layout-2 h3 span {
		padding: 0 14px;
	}
	.item-layout-2 .txt-wrap {
		margin: 20px 0 0;
	}
	.item-layout-2 .txt-wrap.first {
		margin: 26px 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;
	}
	
	.table-1 th {
		padding: 16px;
	}
	.table-1 td {
		padding: 16px;
	}
	
	.title-layout-1::after {
		width: 320px; height: 107.5px;
	}
	
	.title-layout-2 {
		padding: 88px 0;
	}
	.title-layout-2 h2 {
		top: 48px;
	}
	.title-layout-2::after {
		width: 320px; height: 107.5px;
	}
	
	.btn-1 {
		height: 48px;
	}
	.btn-1 span {
		transition: opacity .4s;
	}
	.btn-1::after {
		width: 5px; height: 10px; right: 24px; transition: opacity .4s;
	}
	.btn-1:hover span {
		opacity: .48;
	}
	.btn-1:hover::after {
		opacity: .48;
	}
	
	.back-green {
		padding: 12px 16px;
	}
	
	.header-under {
		height: 480px;
	}
	.header-under h1 {
		padding: 48px 4vw;
	}
	.header-under h1::before {
		width: 320px; height: 107.5px; left: -24px; 
	}
	
	.intro-layout-1 {
		padding: 120px 0;
	}
	.intro-layout-1 .inner {
		width: 92%;
	}
	.intro-layout-1 .title-wrap h2 {
		top: 48px;
	}
	.intro-layout-1 .title-wrap::after {
		width: 240px; height: 146px;
	}
	.intro-layout-1 .note {
		margin: 48px 0 0;
	}
	.intro-layout-1 .note span {
		padding: 12px 16px;
	}
	.intro-layout-1 .wrap {
		margin: 88px 0 0;
	}
	.intro-layout-1 .txt-wrap {
		width: calc(50% - 44px);
	}
	.intro-layout-1 .txt-wrap .img {
		margin: 88px 0 0;
	}
	.intro-layout-1 .img-l {
		width: calc(50vw - 44px); height: 480px; left: calc(50% + 44px);
	}
	
	.item-layout-1 {
		margin: 88px 0 0;
	}
	.item-layout-1 .txt-wrap {
		display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
	}
	.item-layout-1 .txt-wrap h3 {
		padding: 0 44px; width: calc(50% - 88px);
	}
	.item-layout-1 .txt-wrap h3 br {
		display: block;
	}
	.item-layout-1 .txt-wrap .table-1 {
		width: calc(50% - 88px); margin: 0 44px!important;
	}
	.item-layout-1 .txt-wrap p {
		width: calc(50% - 88px); margin: 0 44px;
	}
	.item-layout-1 .img-wrap {
		margin: 64px 0 0;
	}
	
	.item-layout-2 {
		margin: 88px auto 0; padding: 48px;
	}
	.item-layout-2 h3 span {
		padding: 0 16px;
	}
	.item-layout-2 .txt-wrap {
		margin: 24px 0 0;
	}
	.item-layout-2 .txt-wrap.first {
		margin: 32px 0 0;
	}
}

@media only screen and (min-width: 1280px) {
	.header-under h1 span {
		display: block; width: 1200px; margin: 0 auto;
	}
	.header-under h1::before {
		left: 50%; transform: translate(-624px, -50%);
	}
	
	.intro-layout-1 .inner {
		width: 1200px;
	}
	
	.item-layout-1 .txt-wrap h3 br {
		display: none;
	}
}


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

@keyframes logo {
	0% {opacity: .48;}
	50% {opacity: 1;}
	100% {opacity: .48;}
}
.loading-logo {
	animation: logo 4s infinite;
}


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

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

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

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


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

#humb_wrap {
	line-height: 1; width: 36px; position: fixed; z-index: 10; right: 0; top: 0; cursor: pointer; background-color: #fbfaf5; padding: 12px;
}
#humb_wrap .humb {
	width: 100%; height: 17px; position: relative; z-index: 1; left: 0; top: 0;
}
#humb_wrap .humb span {
	display: block; width: 100%; height: 1px; background-color: #424242; position: absolute; z-index: 1; right: 0;
}
#humb_wrap .humb span:nth-of-type(1) {
	top: 0;
}
#humb_wrap .humb span:nth-of-type(2) {
	top: 8px; width: 88%;
}
#humb_wrap .humb span:nth-of-type(3) {
	bottom: 0; width: 76%;
}
#humb_wrap .txt {
	text-align: right; display: block; margin: 8px 0 0;
}

@media only screen and (min-width: 640px) {
	#humb_wrap {
		width: 38px; padding: 14px;
	}
	#humb_wrap .humb {
		height: 19px;
	}
	#humb_wrap .humb span:nth-of-type(2) {
		top: 9px;
	}
	#humb_wrap .txt {
		margin: 9px 0 0;
	}
}

@media only screen and (min-width: 960px) {
	#humb_wrap {
		width: 40px; padding: 16px;
	}
	#humb_wrap .humb {
		height: 21px;
	}
	#humb_wrap .humb span:nth-of-type(2) {
		top: 10px; transition: width .4s;
	}
	#humb_wrap:hover .humb span:nth-of-type(2) {
		width: 100%;
	}
	#humb_wrap .humb span:nth-of-type(3) {
		transition: width .4s;
	}
	#humb_wrap:hover .humb span:nth-of-type(3) {
		width: 100%;
	}
	#humb_wrap .txt {
		margin: 10px 0 0;
	}
}

@media only screen and (min-width: 1280px) {
	#humb_wrap {
		top: -80px; opacity: 0; transition: all .4s;
	}
	#humb_wrap.fix {
		top: 0; opacity: 1;
	}
}


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

#modal_menu {
	display: none; line-height: 1; text-align: center; width: 100%; min-width: 320px; height: 100vh; background-color: #fbfaf5; position: fixed; z-index: 100; left: 0; top: 0;
}
#modal_menu::before, #modal_menu::after {
	content: ''; display: block; width: 100%; height: 88px; position: absolute; z-index: 3; left: 0; top: 0; background: linear-gradient(to top, rgba(251, 250, 245, 0), rgba(251, 250, 245, 1));
}
#modal_menu::after {
	top: auto; bottom: 0; background: linear-gradient(to bottom, rgba(251, 250, 245, 0), rgba(251, 250, 245, 1));
}
#modal_menu .deco {
	width: 480px; height: 186.5px; background-image: url("../img/common/common_deco-1.png"); background-size: cover; position: absolute; z-index: 1; left: 0; top: 0; transform: translate(0, -25%); opacity: .32;
}
#modal_menu .deco-2 {
	left: auto; right: 0; top: auto; bottom: 0; transform: translate(0, 25%) scale(-1,-1);
}
#modal_menu .img {
	display: none;
}
#menu_close {
	position: absolute; z-index: 4; right: 0; top: 0; cursor: pointer; background-color: #fbfaf5; padding: 12px;
}
#menu_close .close {
	width: 27px; height: 27px; margin: 0 auto; position: relative; z-index: 1; left: 0; top: 0;
}
#menu_close .close span {
	display: block; width: 100%; height: 1px; background-color: #424242; position: absolute; z-index: 1; left: 0;
}
#menu_close .close span:nth-of-type(1) {
	top: 0; transform: translateY(13px) rotate(-45deg);
}
#menu_close .close span:nth-of-type(2) {
	bottom: 0; transform: translateY(-13px) rotate(45deg);
}
#menu_close .txt {
	text-align: center; display: block; margin: 4px 0 0;
}
#modal_menu .inner {
	height: 100vh; position: relative; z-index: 2; left: 0; top: 0;
}
#modal_menu .wrap {
	width: 84%; margin: 0 auto; padding: 120px 0;
}
#modal_menu .logo a {
	display: inline-block;
}
#modal_menu .logo p {
	line-height: 1.7; display: inline-block;
}
#modal_menu .logo img {
	width: 120px; height: auto; margin: 12px auto 0;
}
#modal_menu nav li {
	margin: 14px 0 0;
}

li.sub_pages,
li.sub_pages *{
    box-sizing: border-box;
}

li.sub_pages {
	display:grid;
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: center;
    font-size: 14px;
    margin-top: 0px;
    margin-bottom:10px;
}
li.sub_pages > *{
    padding: 5px 5px;
    background: rgba(125,159,0,0.20);
    display: grid;
    place-items: center;
    width:100%;
    height: 100%;
    text-align: center;
    line-height: 1.3;
/*    align-items: start;*/
}
#modal_menu nav li.sub_pages a{
    padding: 5px 5px;
}
#modal_menu nav li.sub_pages, 
footer li.sub_pages {
    width:min(90%,450px);
    margin-top:30px;
}
#modal_menu nav li.sub_pages, 
footer li.sub_pages{
    margin-bottom: 0px;    
}
@media screen and (min-width: 640px){
li.sub_pages {
    grid-template-columns: repeat(2, 1fr);
    gap: 2px;
}
    footer li.sub_pages {
    grid-template-columns: repeat(4, auto);
    gap: 2px;
}
li.sub_pages > *{
    padding: 5px 5px;
}
}
@media only screen and (min-width: 1120px){
li.sub_pages {
    grid-template-columns: repeat(4, auto);
}
}
#modal_menu nav li a, #modal_menu nav li .active {
	display: inline-block; position: relative; z-index: 1; left: 0; top: 0; padding: 12px 0;
}
#modal_menu nav li a::after, #modal_menu nav li .active::after {
	content: ''; display: block; width: 0; height: 2px; background-color: #009139; position: absolute; z-index: 1; left: 50%; bottom: 0; transform: translate(-50%, 0);
}
#modal_menu nav li .active {
	color: #009139;
}
#modal_menu nav li .active::after {
	width: 100%;
}
#modal_menu nav li a.exlink {
	padding: 12px 26px 12px 0;
}
#modal_menu nav li a.exlink::before {
	content: ''; display: block; background-image: url("../img/common/common_exlink.png"); background-size: cover; width: 18px; height: 10px; position: absolute; z-index: 1; right: 0; top: 50%; transform: translate(0, -50%);
}
#modal_menu nav li a.exlink::after {
	content: none;
}
#modal_menu nav .sub {
	margin: 32px 0 0; padding: 32px 0 0; border-top: solid 1px #bdbdbd;
}
#modal_menu nav .sub .devider {
	display: block; height: 1px; border-top: dotted 1px #bdbdbd; margin: 32px 0;
}
#modal_menu nav .lang {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 240px; height: 40px; background-color: #fbfaf5; position: relative; z-index: 1; left: 0; top: 0; margin: 32px auto 0; border: solid 1px #bdbdbd;
}
#modal_menu nav .lang select {
	-moz-appearance: none; -webkit-appearance: none; appearance: none; margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none;
}
#modal_menu nav .lang select {
	width: 240px; height: 100%; padding: 0 80px; position: relative; z-index: 2; left: 0; top: 0;
}
#modal_menu nav .lang option {
	color: #424242;
}
#modal_menu nav .lang::before {
	content: ''; display: block; background-image: url("../img/common/common_lang.png"); background-size: cover; width: 12px; height: 12px; position: absolute; z-index: 1; right: 66px; top: 50%; transform: translate(0, -50%);
}

@media only screen and (min-width: 640px) {
	#modal_menu {
		text-align: left;
	}
	#modal_menu .deco {
		left: 50%;
	}
	#modal_menu .deco-2 {
		left: auto; right: 0;
	}
	#modal_menu .img {
		display: block; width: 50%; height: 100%; position: absolute; z-index: 4; left: 0; top: 0;
	}
	#menu_close {
		padding: 14px;
	}
	#menu_close .close {
		width: 29px; height: 29px;
	}
	#menu_close .close span:nth-of-type(1) {
		transform: translateY(14px) rotate(-45deg);
	}
	#menu_close .close span:nth-of-type(2) {
		transform: translateY(-14px) rotate(45deg);
	}
	#menu_close .txt {
		margin: 5px 0 0;
	}
	#modal_menu .inner {
		width: 50%; padding: 0 0 0 50%;
	}
	#modal_menu .wrap {
		width: 100%; margin: 0; padding: 120px 6vw; box-sizing: border-box;
	}
	#modal_menu .logo {
		margin: 0;
	}
	#modal_menu .logo img {
		width: 160px; margin: 14px 0 0;
	}
	#modal_menu nav li a, #modal_menu nav li .active {
		padding: 14px 0;
	}
	#modal_menu nav li a::after, #modal_menu nav li .active::after {
		left: 2px; transform: translate(0, 0);
	}
	#modal_menu nav li a.exlink {
		padding: 14px 26px 14px 0;
	}
	#modal_menu nav .lang {
		height: 44px; margin: 32px 0 0;
	}
	#modal_menu nav .lang select {
		padding: 0 75px;
	}
}

@media only screen and (min-width: 960px) {
	#menu_close {
		padding: 16px;
	}
	#menu_close .close {
		width: 31px; height: 31px; transition: opacity .4s;
	}
	#menu_close .close span:nth-of-type(1) {
		transform: translateY(15px) rotate(-45deg);
	}
	#menu_close .close span:nth-of-type(2) {
		transform: translateY(-15px) rotate(45deg);
	}
	#menu_close .txt {
		margin: 6px 0 0; transition: opacity .4s;
	}
	#menu_close:hover  .close {
		opacity: .48;
	}
	#menu_close:hover .txt {
		opacity: .48;
	}
	#modal_menu .wrap {
		padding: 120px 80px;
	}
	#modal_menu .logo img {
		width: 200px; margin: 16px 0 0;
	}
	#modal_menu nav li a, #modal_menu nav li .active {
		padding: 16px 0;
	}
	#modal_menu nav li a::after {
		transition: width .4s;
	}
	#modal_menu nav li a:hover {
		color: #009139;
	}
	#modal_menu nav li a:hover::after {
		width: 100%;
	}
	#modal_menu nav li a.exlink {
		padding: 16px 26px 16px 0;
	}
	#modal_menu nav .lang {
		height: 48px;
	}
	#modal_menu nav .lang select {
		padding: 0 70px;
	}
	#modal_menu nav .lang:hover select {
		opacity: .48;
	}
	#modal_menu nav .lang::before {
		transition: opacity .4s;
	}
	#modal_menu nav .lang:hover::before {
		opacity: .48;
	}
}


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

header {
	line-height: 1; text-align: center; padding: 8vw 0; position: relative; z-index: 1; left: 0; top: 0;
}
header .deco {
	width: 192px; height: 74.6px; background-image: url("../img/common/common_deco-1.png"); background-size: cover; position: absolute; z-index: 1; left: 0; top: 0; transform: translate(0, -25%); opacity: .32;
}
header .deco-2 {
	left: auto; right: 0; top: auto; bottom: 0; transform: translate(0, 25%) scale(-1,-1);
}
header nav {
	display: none;
}
header .inner {
	width: 84%; margin: 0 auto; position: relative; z-index: 2; left: 0; top: 0;
}
header .logo a {
	display: inline-block;
}
header .logo p {
	line-height: 1.7; display: inline-block;
}
header .logo img {
	width: 120px; height: auto; margin: 12px auto 0;
}
h2.otoku{
    width:220px;
    font-size: 16px;
    font-weight: 600; 
    line-height: 1.4; 
    text-align: left;
    padding:5px 15px;
    border:1px solid rgba(0,0,0,0.1);
    background:rgba(255,255,255,0.4);
    position: relative;
    z-index: 100;
}
#top h2.otoku{
    position: absolute;
    top: 30px;
    left:30px;
}

@media only screen and (max-width: 1279px) {
h2.otoku{
    display:none; 
}    
}
@media only screen and (min-width: 640px) {
	header {
		padding: 6vw 0;
	}
	header .deco {
		width: 384px; height: 149.2px;
	}
	header .inner {
		width: 88%;
	}
	header .logo img {
		width: 160px; margin: 14px auto 0;
	}
}

@media only screen and (min-width: 960px) {
	header {
		padding: 4vw 0;
	}
	header .deco {
		width: 576px; height: 223.8px;
	}
	header .inner {
		width: 92%;
	}
	header .logo img {
		width: 200px; margin: 16px auto 0;
	}
}

@media only screen and (min-width: 1280px) {
	header {
		padding: 0; width: 100%; height: 100vh; position: absolute;
	}
	header .deco {
		width: 50vw; max-width: 960px; height: 19.43vw; max-height: 373px;
	}
	header .deco-2 {
		left: 0; right: auto; transform: translate(-25%, 25%) scale(-1,-1);
	}
	header nav {
		display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; position: relative; z-index: 2; left: 0; top: 0;
	}
	header nav .sub {
		width: 100%; padding: 0 4% 0 0; box-sizing: border-box; display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; margin: 24px 0 0;
	}
	header nav .devider {
		width: 1px; height: 16px; border-left: dotted 1px #bdbdbd; margin: 0 16px;
	}
	header nav .lang {
		display: flex; flex-wrap: wrap; justify-content: center; align-items: center; width: 240px; height: 48px; background-color: #fbfaf5; position: relative; z-index: 1; left: 0; top: 0; margin: 0 0 0 32px; border: solid 1px #bdbdbd;
	}
	header nav .lang select {
		-moz-appearance: none; -webkit-appearance: none; appearance: none; margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none;
	}
	header nav .lang select {
		width: 240px; height: 100%; padding: 0 70px; position: relative; z-index: 2; left: 0; top: 0; color: #757575;
	}
	header nav .lang option {
		color: #424242;
	}
	header nav .lang::before {
		content: ''; display: block; background-image: url("../img/common/common_lang-subfont.png"); background-size: cover; width: 12px; height: 12px; position: absolute; z-index: 1; right: 66px; top: 50%; transform: translate(0, -50%);
	}
	header nav .lang:hover select {
		opacity: .48;
	}
	header nav .lang::before {
		transition: opacity .4s;
	}
	header nav .lang:hover::before {
		opacity: .48;
	}
	header nav ul {
		/*width: 100%;*/ padding: 0 4% 0 0; box-sizing: border-box; display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; margin: 12px 0 0;
	}
    header nav ul.subp {
        padding: 0 0% 0 0;
	}
	header nav ul li a, header nav ul li .active {
		display: inline-block; position: relative; z-index: 1; left: 0; top: 0; padding: 16px 0;
	}
	header nav ul li a::after, header nav ul li .active::after {
		content: ''; display: block; width: 0; height: 2px; background-color: #009139; position: absolute; z-index: 1; right: 0; bottom: 0; transition: width .4s;
	}
	header nav ul li a:hover, header nav ul li .active {
		color: #009139;
	}
	header nav ul li a:hover::after, header nav ul li .active::after {
		width: 100%; left: 0; right: auto;
	}
	header nav ul li a.exlink {
		padding: 16px 26px 16px 0;
	}
	header nav ul li a.exlink::before {
		content: ''; display: block; background-image: url("../img/common/common_exlink.png"); background-size: cover; width: 18px; height: 10px; position: absolute; z-index: 1; right: 0; top: 50%; transform: translate(0, -50%);
	}
	header nav ul li a.exlink::after {
		content: none;
	}
	header .inner {
		width: 304px; margin: 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; position: absolute; left: 0; top: 160px;
	}
	header .logo {
		width: 64px;
	}
	header .logo a {
		display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
	}
	header .logo p {
		text-align: left; display: inline-block; -ms-writing-mode: tb-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl;
	}
	header .logo img {
		width: 64px; margin: 32px 0 0;
	}
	
	header.under {
		padding: 38px 4% 38px; 
        height: auto; 
        position: relative; 
        display: flex; 
/*        flex-wrap: wrap; */
        justify-content: space-between; 
        align-items: center; 
        flex-direction: row-reverse; 
        box-sizing: border-box;
	}
	header.under .deco {
		width: 576px; height: 223.8px;
	}
	header.under .deco-2 {
		left: auto; right: 0; transform: translate(0, 25%) scale(-1,-1);
	}
	header.under nav {
		width: 870px;
	}
	header.under nav .sub {
		padding: 0; margin: 0;
	}
	header.under nav ul {
		padding: 0;
	}
	header.under .inner {
		display: block; position: relative; top: 0;
	}
	header.under .logo {
		width: 200px;
	}
	header.under .logo a {
		display: inline-block;
	}
	header.under .logo p {
		-ms-writing-mode: lr-tb; -o-writing-mode: horizontal-tb; -webkit-writing-mode: horizontal-tb; writing-mode: horizontal-tb;
	}
	header.under .logo img {
		width: 200px; margin: 16px 0 0;
	}
}

@media only screen and (min-width: 1440px) {
	header nav .devider {
		margin: 0 24px;
	}
	header.under nav {
		width: 966px;
	}
}


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

#pagetop {
	width: 32px; height: 32px; border-radius: 50%; background-color: #009139; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; position: fixed; z-index: 3; right: 8vw; bottom: -32px; opacity: 0; cursor: pointer; transition: all .4s;
}
#pagetop::before {
	content: ''; display: block; background-image: url("../img/common/common_arrow-white.png"); background-size: cover; width: 3px; height: 6px; transform: rotate(-90deg);
}

footer {
	line-height: 1; background-color: #f1eede; padding: 44px 0 32px;
}
footer .inner {
	width: 84%; margin: 0 auto;
}
footer .bnr-plan {
	max-width: 556px; margin: 0 auto;
}
footer .bnr-plan a {
	display: inline-block; width: 100%;
}
footer .bnr-plan a img {
	width: 100%; height: auto;
}
footer .wrap {
	text-align: center; padding: 44px 0 32px;
}
footer .wrap .logo a {
	display: inline-block;
}
footer .wrap .logo p {
	line-height: 1.7; display: inline-block;
}
footer .wrap .logo img {
	width: 120px; height: auto; margin: 12px auto 0;
}
footer .yado-info {
	line-height: 2;
}
footer .yado-info .addr {
	margin: 16px 0 0;
}
footer .yado-info .addr .space {
	display: none;
}
footer .yado-info .tel-fax {
	margin: 12px 0 0;
}
footer .yado-info .check-inout {
	margin: 12px 0 0;
}
footer .yado-info .only-pc {
	display: none;
}
footer ul {
	width: 100%; display: flex; flex-wrap: wrap; justify-content: center; align-items: center; margin: 20px 0 0;
}
footer ul li {
	margin: 12px;
}
footer ul li a {
	display: inline-block;
}
footer ul li a.exlink {
	padding: 0 26px 0 0; position: relative; z-index: 1; left: 0; top: 0;
}
footer ul li a.exlink::before {
	content: ''; display: block; background-image: url("../img/common/common_exlink.png"); background-size: cover; width: 18px; height: 10px; position: absolute; z-index: 1; right: 0; top: 50%; transform: translate(0, -50%);
}
footer .copy {
	line-height: 1.7; width: 100%; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
footer .copy a {
	display: inline-block; width: 44px; height: 13px; margin: 4px;
}
footer .copy p {
	display: inline-block; margin: 4px;
}

@media only screen and (min-width: 640px) {
	#pagetop {
		width: 40px; height: 40px; right: 6vw; bottom: -40px;
	}
	#pagetop::before {
		width: 4px; height: 8px;
	}
	
	footer {
		padding: 66px 0 40px;
	}
	footer .inner {
		width: 88%;
	}
	footer .wrap {
		padding: 66px 0 52px;
	}
	footer .wrap .logo img {
		width: 160px; margin: 14px auto 0;
	}
	footer .yado-info .addr {
		margin: 20px 0 0;
	}
	footer .yado-info .addr br {
		display: none;
	}
	footer .yado-info .addr .space {
		display: inline;
	}
	footer .yado-info .tel-fax {
		margin: 14px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
	}
	footer .yado-info .check-inout {
		margin: 14px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
	}
	footer .yado-info .only-sp {
		display: none;
	}
	footer .yado-info .only-pc {
		display: block; width: 1px; height: 13px; border-left: dotted 1px #bdbdbd; margin: 0 13px;
	}
	footer ul {
		margin: 26px 0 0;
	}
	footer ul li {
		margin: 14px;
	}
}

@media only screen and (min-width: 960px) {
	#pagetop {
		width: 48px; height: 48px; right: 4vw; bottom: -48px;
	}
	#pagetop::before {
		width: 5px; height: 10px; transition: opacity .4s;
	}
	#pagetop:hover::before {
		opacity: .48;
	}
	
	footer {
		padding: 88px 0 48px;
	}
	footer .inner {
		width: 92%; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start;
	}
	footer .bnr-plan {
		width: calc(50% - 44px); margin: 0;
	}
	footer .wrap {
		text-align: left; width: calc(50% - 44px); padding: 0;
	}
	footer .wrap .logo img {
		width: 200px; margin: 16px 0 0;
	}
	footer .yado-info .addr {
		margin: 24px 0 0;
	}
	footer .yado-info .tel-fax {
		margin: 16px 0 0; justify-content: flex-start;
	}
	footer .yado-info .check-inout {
		margin: 16px 0 0; justify-content: flex-start;
	}
	footer .yado-info .only-pc {
		height: 14px; margin: 0 14px;
	}
	footer ul {
		justify-content: flex-start; align-items: flex-start; margin: 16px 0 0;
	}
	footer ul li {
		margin: 32px 32px 0 0;
	}
	footer ul li a:hover{
		opacity: .48;
	}
	footer .copy {
		margin: 88px 0 0;
	}
}

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


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

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

.front-page .intro {
	padding: 80px 0; position: relative; z-index: 1; left: 0; top: 0;
}
.front-page .intro .img {
	width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0;
}
.front-page .intro::after {
	content: ''; display: block; background-image: url("../img/common/common_deco-2.png"); background-size: cover; background-repeat: no-repeat; background-position: center; width: 100%; height: 100%; position: absolute; z-index: 2; left: 50%; top: 0; transform: translate(-50%, 0); opacity: .16;
}
.front-page .intro .inner {
	width: 84%; margin: 0 auto; position: relative; z-index: 3; left: 0; top: 0;
}
.front-page .intro .txt-wrap .title-wrap {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start;
}
.front-page .intro .txt-wrap h2 {
	display: inline-block; letter-spacing: .4rem;
}
.front-page .intro .txt-wrap p {
	margin: 40px 0 0;
}

.front-page .clink {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center; border: solid 1px #fbfaf5;
}
.front-page .clink .item {
	display: block; width: 50%; height: 400px; border: solid 1px #fbfaf5; box-sizing: border-box; position: relative; z-index: 1; left: 0; top: 0;
}
.front-page .clink .item h2 {
	line-height: 1; letter-spacing: .4rem; width: 80px; height: 320px; padding: 32px 0 0; box-sizing: border-box; position: absolute; z-index: 2; left: 50%; top: 0; transform: translate(-50%, 0); background-color: #fbfaf5; overflow: hidden; display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start;
}
.front-page .clink .item h2::before {
	content: ''; display: block; background-image: url("../img/common/common_arrow-green.png"); background-size: cover; width: 6px; height: 12px; position: absolute; z-index: 2; right: 0; top: -4px; transform: rotate(-45deg);
}
.front-page .clink .item h2::after {
	content: ''; display: block; background-image: url("../img/common/common_deco-3.png"); background-size: cover; width: 105px; height: 60px; position: absolute; z-index: 1; left: 50%; bottom: 0; transform: translate(-50%, 0); opacity: .48;
}
.front-page .clink .item h2 span {
	display: inline-block; position: relative; z-index: 2; left: 0; top: 0; padding: 0;
}
.front-page .clink .item h2 span .first {
	display: inline-block; color: #009139;
}
.front-page .clink .item h2 span .first.alt {
	position: relative; z-index: 1; left: 0; top: 0; transform: translate(8%, 0);
}
@-moz-document url-prefix() {
	.front-page .clink .item h2 span .first.alt {
		transform: translate(-8%, 0);
	}
}
.front-page .clink .item .img {
	height: 100%; position: relative; z-index: 1; left: 0; top: 0; overflow: hidden;
}

.front-page .cancel {
	padding: 44px 0; position: relative; z-index: 1; left: 0; top: 0;
}
.front-page .cancel .img {
	width: 100%; height: 100%; position: absolute; z-index: 1; left: 0; top: 0;
}
.front-page .cancel .inner {
	width: 84%; margin: 0 auto; position: relative; z-index: 2; left: 0; top: 0;
}
.front-page .cancel h2  {
	line-height: 1.7; text-align: center;
}
.front-page .cancel table.pc {
	display: none;
}
.front-page .cancel table {
	width: 100%; margin: 32px 0 0; border-top: solid 1px rgba(255, 255, 255 , .32);
}
.front-page .cancel table tr {
	border-bottom: solid 1px rgba(255, 255, 255 , .32);
}
.front-page .cancel table th {
	width: 50%; padding: 8px; border-bottom: dotted 1px rgba(255, 255, 255 , .32);
}
.front-page .cancel table td {
	width: 50%; text-align: center; padding: 8px;
}

.front-page .news {
	padding: 44px 0;
}
.front-page .news .inner {
	width: 84%; margin: 0 auto;
}
.front-page .news .title-wrap .btn-1 {
	line-height: 1.7; margin: 32px auto 0;
}
.front-page .news #newsWrap {
	margin: 40px 0 0; border-top: dotted 1px #bdbdbd;
}
.front-page .news #newsList li {
	padding: 12px 0; border-bottom: dotted 1px #bdbdbd;
}
.front-page .news #newsList li a {
	display: block; width: 100%;
}
.front-page .news .catName {
	display: none;
}

@media only screen and (min-width: 640px) {
	.front-page .intro {
		padding: 120px 0;
	}
	.front-page .intro::after {
		width: 356.25px; height: 570px; transform: translate(0, 0);
	}
	.front-page .intro .inner {
		width: 100%;
	}
	.front-page .intro .txt-wrap {
		display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; flex-direction: row-reverse;
	}
	.front-page .intro .txt-wrap .title-wrap {
		display: inline-block; margin: 0 0 0 26px; width: 80px; height: 330px;
	}
	.front-page .intro .txt-wrap p {
		 display: inline-block; height: 330px; margin: 0 26px 0 0; -ms-writing-mode: tb-rl; -o-writing-mode: vertical-rl; -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl;
	}
	
	.front-page .clink .item {
		width: 25%; height: 520px;
	}
	.front-page .clink .item h2 {
		width: 100px; height: 400px; padding: 40px 0 0;
	}
	.front-page .clink .item h2::after {
		width: 157.5px; height: 90px;
	}
	
	.front-page .cancel {
		padding: 66px 0;
	}
	.front-page .cancel .inner {
		width: 88%;
	}
	.front-page .cancel table {
		margin: 40px 0 0;
	}
	.front-page .cancel table th {
		padding: 10px;
	}
	.front-page .cancel table td {
		padding: 10px;
	}
	
	.front-page .news {
		padding: 66px 0;
	}
	.front-page .news .inner {
		width: 88%;
	}
	.front-page .news .title-wrap .btn-1 {
		margin: 40px auto 0;
	}
	.front-page .news #newsWrap {
		margin: 52px 0 0;
	}
	.front-page .news #newsList li {
		padding: 14px 0;
	}
}

@media only screen and (min-width: 960px) {
	.front-page .intro {
		padding: 160px 0;
	}
	.front-page .intro::after {
		width: 406.25px; height: 650px;
	}
	.front-page .intro .txt-wrap .title-wrap {
		margin: 0 0 0 32px; width: 90px;
	}
	.front-page .intro .txt-wrap p {
		margin: 0 32px 0 0;
	}
	
	.front-page .clink .item {
		height: 640px;
	}
	.front-page .clink .item h2 {
		width: 120px; height: 480px; padding: 48px 0 0;
	}
	.front-page .clink .item h2::after {
		width: 210px; height: 120px;
	}
	.front-page .clink .item .img img {
		transition: transform 1.2s;
	}
	.front-page .clink .item:hover .img img {
		transform: scale(1.06);
	}
	
	.front-page .cancel {
		padding: 88px 0;
	}
	.front-page .cancel .inner {
		width: 92%;
	}
	.front-page .cancel table.sp {
		display: none;
	}
	.front-page .cancel table.pc {
		display: table;
	}
	.front-page .cancel table {
		margin: 48px 0 0;
	}
	.front-page .cancel table th {
		width: 20%; padding: 12px; border-bottom: none;
	}
	.front-page .cancel table td {
		width: 20%; padding: 12px;
	}
	
	.front-page .news {
		padding: 88px 0;
	}
	.front-page .news .inner {
		width: 92%; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
	}
	.front-page .news .title-wrap {
		width: 320px;
	}
	.front-page .news .title-wrap .btn-1 {
		margin: 48px auto 0;
	}
	.front-page .news #newsWrap {
		width: calc(100% - 384px); margin: 0;
	}
	.front-page .news #newsList li {
		padding: 16px 0;
	}
	.front-page .news #newsList li a:hover {
		opacity: .48;
	}
	.front-page .news .news-copy {
		margin: 0 0 0 384px;
	}
}

@media only screen and (min-width: 1280px) {
	#main_visual {
		width: calc(100vw - 304px); margin: 160px 0 0 304px;
	}
	
	.front-page .cancel .inner {
		width: 1200px;
	}
	
	.front-page .news .inner {
		width: 1200px;
	}
}


/*//////////////////////////////////////////////////
02.客室
//////////////////////////////////////////////////*/

.page-guestroom .intro-layout-1 {
	padding: 60px 0 44px;
}
.page-guestroom .intro-layout-1 .img-wrap {
	margin: 44px 0 0; display: flex; flex-wrap: wrap; justify-content: center;
}
.page-guestroom .intro-layout-1 .img-wrap .img {
	width: 50%; border: solid 1px #fbfaf5; box-sizing: border-box;
}
.page-guestroom .intro-layout-1 .img-wrap .img:first-of-type {
	width: 100%;
}
.page-guestroom .intro-layout-1 .table-1 {
	margin: 44px 0 0;
}

@media only screen and (min-width: 640px) {
	.page-guestroom .intro-layout-1 {
		padding: 90px 0 66px;
	}
	.page-guestroom .intro-layout-1 .img-wrap {
		margin: 66px 0 0;
	}
	.page-guestroom .intro-layout-1 .img-wrap .img {
		width: 33.3%;
	}
	.page-guestroom .intro-layout-1 .img-wrap .img:first-of-type {
		width: 33.4%;
	}
	.page-guestroom .intro-layout-1 .table-1 {
		margin: 66px 0 0;
	}
}

@media only screen and (min-width: 960px) {
	.page-guestroom .intro-layout-1 {
		padding: 120px 0 88px;
	}
	.page-guestroom .intro-layout-1 .img-wrap {
		margin: 88px 0 0;
	}
	.page-guestroom .intro-layout-1 .table-1 {
		margin: 88px 0 0;
	}
}


/*//////////////////////////////////////////////////
03.温泉
//////////////////////////////////////////////////*/

.page-onsen .intro-layout-1 .txt-wrap {
	margin: 138px 0 0; position: relative; z-index: 1; left: 0; top: 0;
}
.page-onsen .intro-layout-1 .fukidashi {
	text-align: center; position: absolute; z-index: 1; left: 0; top: 0; transform: translate(0, -100%); padding: 0 0 44px;
}
.page-onsen .intro-layout-1 .fukidashi::after {
	content: ''; display: block; background-image: url("../img/common/common_fukidashi-1.png"); background-size: cover; width: 240px; height: 32px; position: absolute; z-index: 1; left: 50%; bottom: 12px; transform: translate(-50%, 0);
}

.page-onsen .onsen {
	padding: 0 0 44px;
}
.page-onsen .onsen .inner {
	width: 84%; margin: 0 auto;
}
.page-onsen .onsen .table-1 {
	margin: 44px 0 0;
}

@media only screen and (min-width: 640px) {
	.page-onsen .intro-layout-1 .wrap {
		margin: 166px 0 0; 
	}
	.page-onsen .intro-layout-1 .txt-wrap {
		margin: 0; 
	}
	.page-onsen .intro-layout-1 .fukidashi {
		padding: 0 0 46px;
	}
	.page-onsen .intro-layout-1 .fukidashi::after {
		bottom: 14px;
	}
	
	.page-onsen .onsen {
		padding: 0 0 66px;
	}
	.page-onsen .onsen .inner {
		width: 88%;
	}
	.page-onsen .onsen .table-1 {
		margin: 66px 0 0;
	}
}

@media only screen and (min-width: 960px) {
	.page-onsen .intro-layout-1 .title-wrap {
		height: 360px;
	}
	.page-onsen .intro-layout-1 .wrap {
		margin: 88px 0 0; 
	}
	.page-onsen .intro-layout-1 .fukidashi {
		padding: 0 0 48px;
	}
	.page-onsen .intro-layout-1 .fukidashi::after {
		bottom: 16px;
	}
	
	.page-onsen .onsen {
		padding: 0 0 88px;
	}
	.page-onsen .onsen .inner {
		width: 92%;
	}
	.page-onsen .onsen .table-1 {
		margin: 88px 0 0;
	}
}

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


/*//////////////////////////////////////////////////
04.お料理
//////////////////////////////////////////////////*/

.page-cuisine .course {
	padding: 0 0 44px;
}
.page-cuisine .course .inner {
	width: 84%; margin: 0 auto;
}
.page-cuisine .course .item-layout-2 .txt-wrap.first p:nth-of-type(2) {
	margin: 12px 0 0;
}
.page-cuisine .course .gokibou {
	max-width: 900px; margin: 44px auto 0;
}
.page-cuisine .course .gokibou .wrap-1 {
	width: 200px; height: 200px; margin: 0 auto; position: relative; z-index: 1; left: 0; top: 0; background-image: url("../img/common/common_fukidashi-2.png"); background-size: cover; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-cuisine .course .gokibou .wrap-1 p {
	display: inline-block;
}
.page-cuisine .course .gokibou .wrap-2 {
	margin: 32px 0 0;
}
.page-cuisine .course .gokibou .wrap-2 .ul-1 {
	margin: 16px 0 0;
}

.page-cuisine .morning {
	padding: 44px 0 60px; position: relative; z-index: 1; left: 0; top: 0;
}
.page-cuisine .morning::before {
	content: ''; display: block; width: 84%; height: 1px; border-top: dotted 1px #bdbdbd; box-sizing: border-box; position: absolute; z-index: 1; left: 50%; top: 0; transform: translate(-50%, 0);
}
.page-cuisine .morning .inner {
	width: 84%; margin: 0 auto;
}
.page-cuisine .morning .txt-wrap {
	margin: 20px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-cuisine .morning .txt-wrap p br {
	display: none;
}
.page-cuisine .morning .img {
	margin: 32px 0 0;
}

.page-cuisine .koi {
	padding: 0 0 44px;
}
.page-cuisine .koi .inner {
	width: 84%; margin: 44px auto 0;
}
.page-cuisine .koi .wrap-1 .img {
	margin: 44px 0 0;
}
.page-cuisine .koi .wrap-2 {
	max-width: 900px; margin: 44px auto 0; padding: 24px 24px 184px; box-sizing: border-box; border: solid 1px #baa684; position: relative; z-index: 1; left: 0; top: 0; overflow: hidden; background-color: #fff;
}
.page-cuisine .koi .wrap-2::after {
	content: ''; display: block; width: calc(100% - 12px); height: calc(100% - 12px); box-sizing: border-box; border: solid 1px #baa684; position: absolute; z-index: 1; left: 6px; top: 6px;
}
.page-cuisine .koi .wrap-2::before {
	content: ''; display: block; background-image: url("../img/common/common_koi.png"); background-size: cover; width: 240px; height: 240px; position: absolute; z-index: 1; left: 50%; bottom: -24px; transform: translate(-50%, 0);
}
.page-cuisine .koi .wrap-2 h3 {
	line-height: 1.7; text-align: center; position: relative; z-index: 2; left: 0; top: 0;
}
.page-cuisine .koi .wrap-2 h4 {
	margin: 20px 0 0; position: relative; z-index: 2; left: 0; top: 0;
}
.page-cuisine .koi .wrap-2 p {
	margin: 12px 0 0; position: relative; z-index: 2; left: 0; top: 0;
}
.page-cuisine .koi .wrap-2 .ul-1 {
	margin: 12px 0 0; position: relative; z-index: 2; left: 0; top: 0;
}
.page-cuisine .koi .wrap-2 .table-1 {
	margin: 16px 0 0; position: relative; z-index: 2; left: 0; top: 0;
}

.page-cuisine .restaurant {
	padding: 44px 0 0; position: relative; z-index: 1; left: 0; top: 0;
}
.page-cuisine .restaurant::before {
	content: ''; display: block; width: 84%; height: 1px; border-top: dotted 1px #bdbdbd; box-sizing: border-box; position: absolute; z-index: 1; left: 50%; top: 0; transform: translate(-50%, 0);
}
.page-cuisine .restaurant .inner {
	width: 84%; margin: 0 auto;
}
.page-cuisine .restaurant .txt-wrap {
	margin: 20px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-cuisine .restaurant .txt-wrap .ul-1 {
	margin: 16px 0 0;
}
.page-cuisine .restaurant .txt-wrap p br {
	display: none;
}
.page-cuisine .restaurant .img {
	margin: 32px 0 0;
}
.page-cuisine .restaurant .item {
	margin: 44px 0 0;
}
.page-cuisine .restaurant .item:first-of-type {
	margin: 0;
}

@media only screen and (min-width: 640px) {
	.page-cuisine .course {
		padding: 0 0 66px;
	}
	.page-cuisine .course .inner {
		width: 88%;
	}
	.page-cuisine .course .item-layout-2 .txt-wrap.first p:nth-of-type(2) {
		margin: 14px 0 0;
	}
	.page-cuisine .course .gokibou {
		margin: 66px auto 0;
	}
	.page-cuisine .course .gokibou .wrap-1 {
		width: 260px; height: 260px;
	}
	.page-cuisine .course .gokibou .wrap-2 {
		margin: 40px 0 0;
	}
	.page-cuisine .course .gokibou .wrap-2 .ul-1 {
		margin: 20px 0 0;
	}
	
	.page-cuisine .morning {
		padding: 66px 0 90px;
	}
	.page-cuisine .morning::before {
		width: 88%;
	}
	.page-cuisine .morning .inner {
		width: 88%; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
	}
	.page-cuisine .morning .wrap-1 {
		width: calc(50% - 33px);
	}
	.page-cuisine .morning .txt-wrap {
		margin: 26px 0 0;
	}
	.page-cuisine .morning .img {
		width: calc(50% - 33px); margin: 0;
	}
	
	.page-cuisine .koi {
		padding: 0 0 66px;
	}
	.page-cuisine .koi .inner {
		width: 88%; margin: 66px auto 0;
	}
	.page-cuisine .koi .wrap-1 .img {
		margin: 66px 0 0;
	}
	.page-cuisine .koi .wrap-2 {
		margin: 66px auto 0; padding: 36px;
	}
	.page-cuisine .koi .wrap-2::after {
		width: calc(100% - 14px); height: calc(100% - 14px); left: 7px; top: 7px;
	}
	.page-cuisine .koi .wrap-2::before {
		left: auto; right: -36px; bottom: -36px; transform: translate(0, 0);
	}
	.page-cuisine .koi .wrap-2 h3 .only-sp {
		display: none;
	}
	.page-cuisine .koi .wrap-2 h4 {
		margin: 26px 0 0;
	}
	.page-cuisine .koi .wrap-2 p {
		margin: 14px 0 0;
	}
	.page-cuisine .koi .wrap-2 .ul-1 {
		margin: 14px 0 0;
	}
	.page-cuisine .koi .wrap-2 .table-1 {
		width: 75%; margin: 20px 0 0;
	}
	
	.page-cuisine .restaurant {
		padding: 66px 0 0;
	}
	.page-cuisine .restaurant::before {
		width: 88%;
	}
	.page-cuisine .restaurant .inner {
		width: 88%; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start;
	}
	.page-cuisine .restaurant .txt-wrap {
		margin: 26px 0 0;
	}
	.page-cuisine .restaurant .txt-wrap .ul-1 {
		margin: 20px 0 0;
	}
	.page-cuisine .restaurant .img {
		margin: 40px 0 0;
	}
	.page-cuisine .restaurant .item {
		width: calc(50% - 33px); margin: 0;
	}
}

@media only screen and (min-width: 960px) {
	.page-cuisine .course {
		padding: 0 0 88px;
	}
	.page-cuisine .course .inner {
		width: 92%;
	}
	.page-cuisine .course .item-layout-2 .txt-wrap.first p:nth-of-type(2) {
		margin: 16px 0 0;
	}
	.page-cuisine .course .gokibou {
		margin: 88px auto 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-end;
	}
	.page-cuisine .course .gokibou .wrap-1 {
		width: 320px; height: 320px; margin: 0;
	}
	.page-cuisine .course .gokibou .wrap-2 {
		width: calc(100% - 408px); margin: 0;
	}
	.page-cuisine .course .gokibou .wrap-2 .ul-1 {
		margin: 24px 0 0;
	}
	
	.page-cuisine .morning {
		padding: 88px 0 120px;
	}
	.page-cuisine .morning::before {
		width: 92%;
	}
	.page-cuisine .morning .inner {
		width: 92%;
	}
	.page-cuisine .morning .wrap-1 {
		width: calc(50% - 44px);
	}
	.page-cuisine .morning .txt-wrap {
		margin: 32px 0 0;
	}
	.page-cuisine .morning .txt-wrap p {
		text-align: center;
	}
	.page-cuisine .morning .txt-wrap p br {
		display: block;
	}
	.page-cuisine .morning .img {
		width: calc(50% - 44px);
	}
	
	.page-cuisine .koi {
		padding: 0 0 88px;
	}
	.page-cuisine .koi .inner {
		width: 92%; margin: 88px auto 0;
	}
	.page-cuisine .koi .wrap-1 {
		display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
	}
	.page-cuisine .koi .wrap-1 p {
		width: calc(50% - 44px);
	}
	.page-cuisine .koi .wrap-1 .img {
		width: calc(50% - 44px); margin: 0;
	}
	.page-cuisine .koi .wrap-2 {
		margin: 88px auto 0; padding: 48px;
	}
	.page-cuisine .koi .wrap-2::after {
		width: calc(100% - 16px); height: calc(100% - 16px); left: 8px; top: 8px;
	}
	.page-cuisine .koi .wrap-2::before {
		right: -48px; bottom: -48px;
	}
	.page-cuisine .koi .wrap-2 h4 {
		margin: 32px 0 0;
	}
	.page-cuisine .koi .wrap-2 p {
		margin: 16px 0 0;
	}
	.page-cuisine .koi .wrap-2 .ul-1 {
		margin: 16px 0 0;
	}
	.page-cuisine .koi .wrap-2 .table-1 {
		margin: 24px 0 0;
	}
	
	.page-cuisine .restaurant {
		padding: 88px 0 0;
	}
	.page-cuisine .restaurant::before {
		width: 92%;
	}
	.page-cuisine .restaurant .inner {
		width: 92%;
	}
	.page-cuisine .restaurant .txt-wrap {
		margin: 32px 0 0;
	}
	.page-cuisine .restaurant .txt-wrap .ul-1 {
		margin: 24px 0 0;
	}
	.page-cuisine .restaurant .img {
		margin: 48px 0 0;
	}
	.page-cuisine .restaurant .item {
		width: calc(50% - 44px);
	}
}

@media only screen and (min-width: 1280px) {
	.page-cuisine .course .inner {
		width: 1200px;
	}
	
	.page-cuisine .intro-layout-1 {
		padding: 120px 0 156px;
	}
	.page-cuisine .intro-layout-1 .wrap {
		margin: 120px 0 0;
	}
	.page-cuisine .intro-layout-1 .img-l {
		width: 512px; height: 720px; left: calc(50% + 44px);
	}
	
	.page-cuisine .morning::before {
		width: 1200px;
	}
	.page-cuisine .morning .inner {
		width: 1200px;
	}
	
	.page-cuisine .koi .inner {
		width: 1200px;
	}
	
	.page-cuisine .restaurant::before {
		width: 1200px;
	}
	.page-cuisine .restaurant .inner {
		width: 1200px;
	}
}


/*//////////////////////////////////////////////////
05.ご宴会・ご法要
//////////////////////////////////////////////////*/

.page-memorial .memorial-plan {
	padding: 60px 0 44px;
}
.page-memorial .memorial-plan .inner {
	width: 84%; margin: 0 auto;
}
.page-memorial .memorial-plan .intro .title-wrap {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; position: relative; z-index: 1; left: 0; top: 0;
}
.page-memorial .memorial-plan .intro .title-wrap h2 {
	display: inline-block; letter-spacing: .4rem; position: relative; z-index: 2; left: 0; top: 32px; opacity: 0; transition: all 1.6s;
}
.page-memorial .memorial-plan .intro .title-wrap h2.active {
	top: 0; opacity: 1;
}
.page-memorial .memorial-plan .intro .title-wrap::after {
	content: ''; display: block; background-image: url("../img/common/common_deco-5.png"); background-size: cover; width: 160px; height: 97.33px; position: absolute; z-index: 1; left: 50%; top: 50%; transform: translate(-50%, -50%); opacity: .48;
}
.page-memorial .memorial-plan .intro .txt-wrap {
	margin: 44px 0 0;
}
.page-memorial .memorial-plan .intro .txt-wrap .ul-1 {
	margin: 16px 0 0;
}
.page-memorial .memorial-plan .intro .img {
	height: 56vw; margin: 44px 0 0;
}
.page-memorial .memorial-plan .item-wrap .item {
	background-color: #f1eede; padding: 16px; box-sizing: border-box; margin: 44px 0 0;
}
.page-memorial .memorial-plan .item-wrap .item h3 {
	line-height: 1.7; border-bottom: double 3px #baa684;
}
.page-memorial .memorial-plan .item-wrap .item p {
	margin: 12px 0 0;
}
.page-memorial .memorial-plan .item-wrap .item .ol-1 {
	margin: 12px 0 0;
}
.page-memorial .memorial-plan .item-wrap .item .ol-1 span {
	display: inline-block;
}
.page-memorial .memorial-plan .service {
	margin: 44px 0 0; padding: 24px; box-sizing: border-box; border: solid 1px #baa684; position: relative; z-index: 1; left: 0; top: 0;background-color: #fff;
}
.page-memorial .memorial-plan .service::after {
	content: ''; display: block; width: calc(100% - 12px); height: calc(100% - 12px); box-sizing: border-box; border: solid 1px #baa684; position: absolute; z-index: 1; left: 6px; top: 6px;
}
.page-memorial .memorial-plan .service h3 {
	line-height: 1.7; text-align: center;
}
.page-memorial .memorial-plan .service .service-item-wrap {
	margin: 20px 0 0;
}
.page-memorial .memorial-plan .service .item {
	padding: 12px 0; border-bottom: dotted 1px #bdbdbd;
}
.page-memorial .memorial-plan .service .item:first-of-type {
	border-top: dotted 1px #bdbdbd;
}
.page-memorial .memorial-plan .service .item h4 {
	line-height: 1.7;
}
.page-memorial .memorial-plan .service .item p {
	margin: 12px 0 0;
}
.page-memorial .memorial-plan .service .item p span {
	display: inline-block;
}
.page-memorial .memorial-plan .service .item .ul-1 {
	margin: 12px 0 0;
}
.page-memorial .memorial-plan .service .item .ul-1 span {
	display: inline-block;
}

.page-memorial .memorial-1 {
	padding: 120px 0; position: relative; z-index: 1; left: 0; top: 0;
}
.page-memorial .memorial-1::before, .page-memorial .memorial-1::after {
	content: ''; display: block; width: 100%; height: 120px; background-image: url("../img/common/common_deco-6.png"); background-size: 480px; background-repeat: repeat-x; position: absolute; z-index: 1; left: 0; top: 0;
}
.page-memorial .memorial-1::after {
	top: auto; bottom: 0; transform: scale(1, -1);
}
.page-memorial .memorial-1 .inner {
	width: 84%; margin: 0 auto;
}
.page-memorial .memorial-1 h2 {
	text-align: center;
}
.page-memorial .memorial-1 .wrap {
	margin: 40px 0 0;
}
.page-memorial .memorial-1 p {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-memorial .memorial-1 .table-1 {
	margin: 32px 0 0;
}
.page-memorial .memorial-1 .img {
	margin: 44px 0 0;
}

.page-memorial .memorial-2 {
	padding: 44px 0; background-image: url("../img/common/common_tex-purple.jpg");
}
.page-memorial .memorial-2 .inner {
	width: 84%; margin: 0 auto; background-color: #fff; padding: 44px 24px; box-sizing: border-box;
}
.page-memorial .memorial-2 h2 {
	text-align: center;
}
.page-memorial .memorial-2 .devider {
	display: block; height: 1px; border-top: dotted 1px #bdbdbd; box-sizing: border-box; margin: 22px 0;
}
.page-memorial .memorial-2 .wrap-1 {
	margin: 20px 0 0;
}
.page-memorial .memorial-2 .wrap-1 .table-1 {
	margin: 20px 0 0;
}
.page-memorial .memorial-2 .wrap-1 .table-1 td {
	background-color: #fbfaf5;
}
.page-memorial .memorial-2 .wrap-1 .img {
	max-width: 468px; margin: 32px auto 0;
}
.page-memorial .memorial-2 .wrap-2 {
	margin: 20px 0 0;
}
.page-memorial .memorial-2 .wrap-2 .table-1 {
	margin: 20px 0 0;
}
.page-memorial .memorial-2 .wrap-2 .ul-1 {
	margin: 16px 0 0;
}
.page-memorial .memorial-2 .wrap-2 .table-1 td {
	background-color: #fbfaf5;
}
.page-memorial .memorial-2 .wrap-2 .img-wrap {
	margin: 32px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-memorial .memorial-2 .wrap-2 .img-wrap .img {
	width: 50%; border: solid 1px #fbfaf5; box-sizing: border-box;
}

.page-memorial .bento .inner {
	width: 84%; margin: 0 auto;
}
.page-memorial .bento h2 {
	line-height: 1.7; text-align: center;
}
.page-memorial .bento h3 {
	border-bottom: double 3px #baa684;
}
.page-memorial .bento h3::after {
	content: none;
}

.page-memorial .hall {
	padding: 60px 0 0;
}
.page-memorial .hall .inner {
	width: 84%; margin: 0 auto;
}
.page-memorial .hall p {
	margin: 20px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-memorial .hall .img-wrap {
	margin: 32px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-memorial .hall .img-wrap .img {
	border: solid 1px #fbfaf5; box-sizing: border-box;
}

.page-memorial .contact {
	padding: 60px 0 44px;
}
.page-memorial .contact .inner {
	width: 84%; margin: 0 auto; box-sizing: border-box; border: solid 1px #baa684; padding: 24px 24px 144px; position: relative; z-index: 1; left: 0; top: 0; background-color: #fff;
}
.page-memorial .contact h2 {
	line-height: 1.7; text-align: center;
}
.page-memorial .contact p {
	margin: 16px 0 0;
}
.page-memorial .contact p br {
	display: none;
}
.page-memorial .contact .tel {
	margin: 12px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-memorial .contact .tel a {
	display: inline-block;
}
.page-memorial .contact p:nth-of-type(2) {
	margin: 8px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-memorial .contact .img-1 {
	width: 50%; height: 120px; position: absolute; z-index: 1; left: 0; bottom: 0;
}
.page-memorial .contact .img-2 {
	width: 50%; height: 120px; position: absolute; z-index: 1; left: 50%; bottom: 0;
}

@media only screen and (min-width: 640px) {
	.page-memorial .memorial-plan {
		padding: 90px 0 66px;
	}
	.page-memorial .memorial-plan .inner {
		width: 88%;
	}
	.page-memorial .memorial-plan .intro {
		position: relative; z-index: 1; left: 0; top: 0;
	}
	.page-memorial .memorial-plan .intro .title-wrap h2 {
		top: 40px;
	}
	.page-memorial .memorial-plan .intro .title-wrap::after {
		width: 200px; height: 121.67px;
	}
	.page-memorial .memorial-plan .intro .wrap-1 {
		width: calc(50% - 33px);
	}
	.page-memorial .memorial-plan .intro .txt-wrap {
		margin: 66px 0 0;;
	}
	.page-memorial .memorial-plan .intro .txt-wrap .ul-1 {
		margin: 20px 0 0;
	}
	.page-memorial .memorial-plan .intro .img {
		width: calc(50vw - 33px); height: 100%; margin: 0; position: absolute; z-index: 1; left: calc(50% + 33px); top: 0;
	}
	.page-memorial .memorial-plan .item-wrap {
		display: flex; flex-wrap: wrap; justify-content: space-between; align-items: stretch;
	}
	.page-memorial .memorial-plan .item-wrap .item {
		width: calc(50% - 33px); padding: 20px; margin: 66px 0 0;
	}
	.page-memorial .memorial-plan .item-wrap .item p {
		margin: 14px 0 0;
	}
	.page-memorial .memorial-plan .item-wrap .item .ol-1 {
		margin: 14px 0 0;
	}
	.page-memorial .memorial-plan .service {
		margin: 66px 0 0; padding: 36px;
	}
	.page-memorial .memorial-plan .service::after {
		width: calc(100% - 14px); height: calc(100% - 14px); left: 7px; top: 7px;
	}
	.page-memorial .memorial-plan .service h3 .only-sp {
		display: none;
	}
	.page-memorial .memorial-plan .service .service-item-wrap {
		margin: 26px 0 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: stretch;
	}
	.page-memorial .memorial-plan .service .item {
		width: calc(50% - 14px); padding: 14px 0;
	}
	.page-memorial .memorial-plan .service .item:nth-of-type(2) {
		border-top: dotted 1px #bdbdbd;
	}
	.page-memorial .memorial-plan .service .item p {
		margin: 14px 0 0;
	}
	.page-memorial .memorial-plan .service .item .ul-1 {
		margin: 14px 0 0;
	}
	
	.page-memorial .memorial-1 {
		padding: 180px 0;
	}
	.page-memorial .memorial-1::before, .page-memorial .memorial-1::after {
		height: 180px; background-size: 720px;
	}
	.page-memorial .memorial-1 .inner {
		width: 88%;
	}
	.page-memorial .memorial-1 .wrap {
		margin: 52px 0 0;
	}
	.page-memorial .memorial-1 .table-1 {
		margin: 40px 0 0;
	}
	.page-memorial .memorial-1 .img {
		margin: 66px 0 0;
	}
	
	.page-memorial .memorial-2 {
		padding: 66px 0;
	}
	.page-memorial .memorial-2 .inner {
		width: 88%; padding: 44px;
	}
	.page-memorial .memorial-2 h2 br {
		display: none;
	}
	.page-memorial .memorial-2 .devider {
		margin: 33px 0;
	}
	.page-memorial .memorial-2 .wrap-1 {
		margin: 26px 0 0;
	}
	.page-memorial .memorial-2 .wrap-1 .table-1 {
		margin: 26px 0 0;
	}
	.page-memorial .memorial-2 .wrap-1 .img {
		margin: 40px auto 0;
	}
	.page-memorial .memorial-2 .wrap-2 {
		margin: 26px 0 0;
	}
	.page-memorial .memorial-2 .wrap-2 .table-1 {
		margin: 26px 0 0;
	}
	.page-memorial .memorial-2 .wrap-2 .ul-1 {
		margin: 20px 0 0;
	}
	.page-memorial .memorial-2 .wrap-2 .img-wrap {
		margin: 40px 0 0;
	}
	
	.page-memorial .bento .inner {
		width: 88%;
	}
	.page-memorial .bento h2 {
		position: relative; z-index: 1; left: 0; top: 0;
	}
	.page-memorial .bento h2::after {
		content: ''; display: block; width: 100%; height: 1px; background-color: #bdbdbd; position: absolute; z-index: 1; left: 0; top: 50%; transform: translate(0, -50%);
	}
	.page-memorial .bento h2 span {
		display: inline-block; background-color: #f1eede; padding: 0 14px; position: relative; z-index: 2; left: 0; top: 0;
	}
	
	.page-memorial .hall {
		padding: 90px 0 0;
	}
	.page-memorial .hall .inner {
		width: 88%;
	}
	.page-memorial .hall p {
		margin: 26px 0 0;
	}
	.page-memorial .hall .img-wrap {
		margin: 40px 0 0;
	}
	.page-memorial .hall .img-wrap .img {
		width: 50%;
	}
	
	.page-memorial .contact {
		padding: 90px 0 66px;
	}
	.page-memorial .contact .inner {
		width: 88%; padding: 36px 36px 176px;
	}
	.page-memorial .contact h2 br {
		display: none;
	}
	.page-memorial .contact p {
		margin: 20px 0 0;
	}
	.page-memorial .contact .tel {
		margin: 14px 0 0;
	}
	.page-memorial .contact .img-1 {
		height: 140px;
	}
	.page-memorial .contact .img-2 {
		height: 140px;
	}
}

@media only screen and (min-width: 960px) {
	.page-memorial .memorial-plan {
		padding: 120px 0 88px;
	}
	.page-memorial .memorial-plan .inner {
		width: 92%;
	}
	.page-memorial .memorial-plan .intro .title-wrap h2 {
		top: 48px;
	}
	.page-memorial .memorial-plan .intro .title-wrap::after {
		width: 240px; height: 146px;
	}
	.page-memorial .memorial-plan .intro .wrap-1 {
		width: calc(50% - 44px);
	}
	.page-memorial .memorial-plan .intro .txt-wrap {
		margin: 88px 0 0;;
	}
	.page-memorial .memorial-plan .intro .txt-wrap .ul-1 {
		margin: 24px 0 0;
	}
	.page-memorial .memorial-plan .intro .img {
		width: calc(50vw - 44px); left: calc(50% + 44px);
	}
	.page-memorial .memorial-plan .item-wrap .item {
		width: calc(50% - 44px); padding: 24px; margin: 88px 0 0;
	}
	.page-memorial .memorial-plan .item-wrap .item p {
		margin: 16px 0 0;
	}
	.page-memorial .memorial-plan .item-wrap .item .ol-1 {
		margin: 16px 0 0;
	}
	.page-memorial .memorial-plan .service {
		margin: 88px 0 0; padding: 48px;
	}
	.page-memorial .memorial-plan .service::after {
		width: calc(100% - 16px); height: calc(100% - 16px); left: 8px; top: 8px;
	}
	.page-memorial .memorial-plan .service .service-item-wrap {
		margin: 32px 0 0;
	}
	.page-memorial .memorial-plan .service .item {
		width: calc(50% - 16px); padding: 16px 0;
	}
	.page-memorial .memorial-plan .service .item p {
		margin: 16px 0 0;
	}
	.page-memorial .memorial-plan .service .item .ul-1 {
		margin: 16px 0 0;
	}
	
	.page-memorial .memorial-1 {
		padding: 240px 0;
	}
	.page-memorial .memorial-1::before, .page-memorial .memorial-1::after {
		height: 240px; background-size: 960px;
	}
	.page-memorial .memorial-1 .inner {
		width: 92%;
	}
	.page-memorial .memorial-1 .wrap {
		margin: 64px 0 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
	}
	.page-memorial .memorial-1 .txt-wrap {
		width: calc(50% - 44px);
	}
	.page-memorial .memorial-1 .table-1 {
		margin: 48px 0 0;
	}
	.page-memorial .memorial-1 .img {
		width: calc(50% - 44px); margin: 0;
	}
	
	.page-memorial .memorial-2 {
		padding: 88px 0;
	}
	.page-memorial .memorial-2 .inner {
		width: 92%; padding: 88px;
	}
	.page-memorial .memorial-2 .devider {
		margin: 44px 0;
	}
	.page-memorial .memorial-2 .wrap-1 {
		margin: 32px 0 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
	}
	.page-memorial .memorial-2 .wrap-1 .txt-wrap {
		width: calc(50% - 24px);
	}
	.page-memorial .memorial-2 .wrap-1 .table-1 {
		margin: 32px 0 0;
	}
	.page-memorial .memorial-2 .wrap-1 .img {
		width: calc(50% - 24px); margin: 0;
	}
	.page-memorial .memorial-2 .wrap-2 {
		margin: 32px 0 0;
	}
	.page-memorial .memorial-2 .wrap-2 .table-1 {
		margin: 32px 0 0;
	}
	.page-memorial .memorial-2 .wrap-2 .ul-1 {
		margin: 24px 0 0;
	}
	.page-memorial .memorial-2 .wrap-2 .img-wrap {
		margin: 48px 0 0;
	}
	
	.page-memorial .bento .inner {
		width: 92%;
	}
	.page-memorial .bento h2 span {
		padding: 0 16px;
	}
	
	.page-memorial .hall {
		padding: 120px 0 0;
	}
	.page-memorial .hall .inner {
		width: 92%;
	}
	.page-memorial .hall p {
		margin: 32px 0 0;
	}
	.page-memorial .hall .img-wrap {
		margin: 48px 0 0;
	}
	
	.page-memorial .contact {
		padding: 120px 0 88px;
	}
	.page-memorial .contact .inner {
		width: 92%; padding: 48px 48px 208px;
	}
	.page-memorial .contact h2 br {
		display: none;
	}
	.page-memorial .contact p {
		margin: 24px 0 0; text-align: center;
	}
	.page-memorial .contact p br {
		display: block;
	}
	.page-memorial .contact .tel {
		margin: 16px 0 0;
	}
	.page-memorial .contact .img-1 {
		height: 160px;
	}
	.page-memorial .contact .img-2 {
		height: 160px;
	}
}

@media only screen and (min-width: 1280px) {
	.page-memorial .memorial-plan .inner {
		width: 1200px;
	}
	
	.page-memorial .memorial-1 .inner {
		width: 1200px;
	}
	
	.page-memorial .memorial-2 .inner {
		width: 1200px;
	}
	
	.page-memorial .hall .inner {
		width: 1200px;
	}
	
	.page-memorial .contact .inner {
		width: 1200px; padding: 48px 160px;
	}
	.page-memorial .contact .img-1 {
		width: 160px; height: 100%;
	}
	.page-memorial .contact .img-2 {
		width: 160px; height: 100%; left: auto; right: 0;
	}
}


/*//////////////////////////////////////////////////
06.アクセスと周辺観光スポット
//////////////////////////////////////////////////*/

.page-access .map .gmap {
	height: 240px;
}
.page-access .map .info-wrap {
	padding: 60px 8vw; text-align: center; background-color: #f1eede;
}
.page-access .map .info-wrap .logo a {
	display: inline-block;
}
.page-access .map .info-wrap .logo p {
	line-height: 1.7; display: inline-block;
}
.page-access .map .info-wrap .logo img {
	width: 120px; height: auto; margin: 12px auto 0;
}
.page-access .map .info-wrap .yado-info {
	line-height: 2;
}
.page-access .map .info-wrap .yado-info .addr {
	margin: 16px 0 0;
}
.page-access .map .info-wrap .yado-info .addr .space {
	display: none;
}
.page-access .map .info-wrap .yado-info .tel-fax {
	margin: 12px 0 0;
}
.page-access .map .info-wrap .yado-info .check-inout {
	margin: 12px 0 0;
}
.page-access .map .info-wrap .yado-info .only-pc {
	display: none;
}

.page-access .route {
	padding: 60px 0 0;
}
.page-access .route .inner {
	width: 84%; max-width: 900px; margin: 0 auto;
}
.page-access .route .item {
	margin: 40px 0 0;
}
.page-access .route .item h3 {
	line-height: 1.7; position: relative; z-index: 1; left: 0; top: 0; padding: 0 0 0 27px; margin: 0 0 20px;
}
.page-access .route .item.car h3 {
	padding: 0 0 0 35.125px;
}
.page-access .route .item h3::before {
	content: ''; display: block; background-image: url("../img/common/common_bus.png"); background-size: cover; width: 15px; height: 20px; position: absolute; z-index: 1; left: 0; top: 50%; transform: translate(0, -50%);
}
.page-access .route .item.car h3::before {
	background-image: url("../img/common/common_car.png"); width: 23.125px;
}
.page-access .route .item p {
	margin: 0 0 16px;
}
.page-access .route .route-item {
	display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center;
}
.page-access .route .route-item span {
	line-height: 1.4; display: inline-block; background-color: #f1eede; padding: 8px 12px; margin: 0 16px 16px 0; position: relative; z-index: 1; left: 0; top: 0;
}
.page-access .route .route-item span::after {
	content: ''; display: block; width: 16px; height: 2px; background-color: #baa684; position: absolute; z-index: 1; left: 100%; top: 50%; transform: translate(0, -50%);
}
.page-access .route .route-item span.last {
	background-color: #009139; color: #fff;
}
.page-access .route .route-item span.last::after {
	content: none;
}

.page-access .spot {
	padding: 60px 0 44px;
}
.page-access .spot .inner {
	width: 84%; margin: 0 auto;
}
.page-access .spot .item {
	margin: 44px 0 0;
}
.page-access .spot .item .img {
	display: block; position: relative; z-index: 1; left: 0; top: 0;
}
.page-access .spot .item .img img {
	position: relative; z-index: 1; left: 0; top: 0;
}
.page-access .spot .item .img::before {
	content: ''; display: block; background-color: #fff; width: 26px; height: 18px; position: absolute; z-index: 2; right: 0; top: 0;
}
.page-access .spot .item .img::after {
	content: ''; display: block; background-image: url("../img/common/common_exlink.png"); background-size: cover; width: 18px; height: 10px; position: absolute; z-index: 3; right: 4px; top: 4px;
}
.page-access .spot .item .img .time {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center;  position: absolute; z-index: 2; left: 50%; bottom: 0; transform: translate(-50%, 50%); background-color: #009139; color: #fff; width: 160px; height: 28px; border-radius: 14px;
}
.page-access .spot .item .txt-wrap {
	margin: 28px 0 0;
}
.page-access .spot .item .txt-wrap h3 {
	text-align: center;
}
.page-access .spot .item .txt-wrap p {
	line-height: 1.7; margin: 12px 0 0;
}

.page-access .bnrs {
	padding: 44px 0; position: relative; z-index: 1; left: 0; top: 0;
}
.page-access .bnrs .inner {
	width: 84%; margin: 0 auto;
}
.page-access .bnrs::before {
	content: ''; display: block; width: 84%; height: 1px; border-top: dotted 1px #bdbdbd; box-sizing: border-box; position: absolute; z-index: 1; left: 50%; top: 0; transform: translate(-50%, 0);
}
.page-access .bnrs .wrap {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center; margin: 44px 0 0;
}
.page-access .bnrs .wrap:first-of-type {
	margin: 0;
}
.page-access .bnrs a {
	display: flex; flex-wrap: wrap; justify-content: center; align-items: center; background-color: #528ca3; width: 100%; height: 60px; margin: 20px 0 0; position: relative; z-index: 1; left: 0; top: 0;
}
.page-access .bnrs a::before {
	content: ''; display: block; background-image: url("../img/common/common_exlink-white.png"); background-size: cover; width: 18px; height: 10px; position: absolute; z-index: 2; right: 8px; top: 8px;
}
.page-access .bnrs .bnr-2 {
	background-color: #0861ca;
}
.page-access .bnrs .bnr-3 {
	background-color: #11b2df;
}
.page-access .bnrs .bnr-4 {
	background-color: #1b9f34;
}

@media only screen and (min-width: 640px) {
	.page-access .map .gmap {
		height: 360px;
	}
	.page-access .map .info-wrap {
		padding: 90px 6vw;
	}
	.page-access .map .info-wrap .logo img {
		width: 160px; margin: 14px auto 0;
	}
	.page-access .map .info-wrap .yado-info .addr {
		margin: 20px 0 0;
	}
	.page-access .map .info-wrap .yado-info .addr br {
		display: none;
	}
	.page-access .map .info-wrap .yado-info .addr .space {
		display: inline;
	}
	.page-access .map .info-wrap .yado-info .tel-fax {
		margin: 14px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
	}
	.page-access .map .info-wrap .yado-info .check-inout {
		margin: 14px 0 0; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
	}
	.page-access .map .info-wrap .yado-info .only-sp {
		display: none;
	}
	.page-access .map .info-wrap .yado-info .only-pc {
		display: block; width: 1px; height: 15px; border-left: dotted 1px #bdbdbd; margin: 0 15px;
	}
	
	.page-access .route {
		padding: 90px 0 0;
	}
	.page-access .route .inner {
		width: 88%;
	}
	.page-access .route .item {
		margin: 52px 0 0;
	}
	.page-access .route .item h3 {
		padding: 0 0 0 31.5px; margin: 0 0 26px;
	}
	.page-access .route .item.car h3 {
		padding: 0 0 0 42.0625px;
	}
	.page-access .route .item h3::before {
		width: 19.5px; height: 26px;
	}
	.page-access .route .item.car h3::before {
		width: 30.0625px;
	}
	.page-access .route .item p {
		margin: 0 0 20px;
	}
	.page-access .route .route-item span {
		padding: 10px 14px; margin: 0 20px 20px 0;
	}
	.page-access .route .route-item span::after {
		width: 20px;
	}
	
	.page-access .spot {
		padding: 90px 0 66px;
	}
	.page-access .spot .inner {
		width: 88%;
	}
	.page-access .spot .item-wrap {
		margin: 66px 0 0; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start;
	}
	.page-access .spot .item {
		width: calc(50% - 33px); margin: 0;
	}
	.page-access .spot .item .img .time {
		width: 170px; height: 30px; border-radius: 15px;
	}
	.page-access .spot .item .txt-wrap {
		margin: 30px 0 0;
	}
	
	.page-access .bnrs {
		padding: 66px 0;
	}
	.page-access .bnrs .inner {
		width: 88%; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start;
	}
	.page-access .bnrs::before {
		width: 88%;
	}
	.page-access .bnrs .wrap {
		width: calc(50% - 33px); margin: 0;
	}
	.page-access .bnrs a {
		height: 70px; margin: 25px 0 0;
	}
}

@media only screen and (min-width: 960px) {
	.page-access .map {
		display: flex; flex-wrap: wrap; justify-content: center; align-items: stretch;
	}
	.page-access .map .gmap {
		width: 50%; height: auto;
	}
	.page-access .map .info-wrap {
		width: 50%; padding: 120px 4vw 120px 120px; box-sizing: border-box; text-align: left;
	}
	.page-access .map .info-wrap .logo img {
		width: 200px; margin: 16px 0 0;
	}
	.page-access .map .info-wrap .yado-info .addr {
		margin: 24px 0 0;
	}
	.page-access .map .info-wrap .yado-info .addr br {
		display: block;
	}
	.page-access .map .info-wrap .yado-info .addr .space {
		display: none;
	}
	.page-access .map .info-wrap .yado-info .tel-fax {
		margin: 16px 0 0; display: block;
	}
	.page-access .map .info-wrap .yado-info .check-inout {
		margin: 16px 0 0; display: block;
	}
	.page-access .map .info-wrap .yado-info .only-sp {
		display: block;
	}
	.page-access .map .info-wrap .yado-info .only-pc {
		display: none;
	}
	
	.page-access .route {
		padding: 120px 0 0;
	}
	.page-access .route .inner {
		width: 92%;
	}
	.page-access .route .item {
		margin: 64px 0 0;
	}
	.page-access .route .item h3 {
		padding: 0 0 0 36px; margin: 0 0 32px;
	}
	.page-access .route .item.car h3 {
		padding: 0 0 0 48px;
	}
	.page-access .route .item h3::before {
		width: 24px; height: 32px;
	}
	.page-access .route .item.car h3::before {
		width: 36px;
	}
	.page-access .route .item p {
		margin: 0 0 24px;
	}
	.page-access .route .route-item span {
		padding: 12px 16px; margin: 0 24px 24px 0;
	}
	.page-access .route .route-item span::after {
		width: 24px;
	}
	
	.page-access .spot {
		padding: 120px 0 88px;
	}
	.page-access .spot .inner {
		width: 92%;
	}
	.page-access .spot .item-wrap {
		margin: 88px 0 0;
	}
	.page-access .spot .item {
		width: calc(50% - 88px); margin: 0 44px;
	}
	.page-access .spot .item .img img {
		transition: opacity .4s;
	}
	.page-access .spot .item:hover .img img {
		opacity: .64;
	}
	.page-access .spot .item .img .time {
		width: 180px; height: 32px; border-radius: 16px;
	}
	.page-access .spot .item .txt-wrap {
		margin: 32px 0 0;
	}
	
	.page-access .bnrs {
		padding: 88px 0;
	}
	.page-access .bnrs .inner {
		width: 92%;
	}
	.page-access .bnrs::before {
		width: 92%;
	}
	.page-access .bnrs .wrap {
		width: calc(50% - 44px);
	}
	.page-access .bnrs a {
		height: 80px; margin: 30px 0 0;
	}
}

@media only screen and (min-width: 1280px) {
	.page-access .map .info-wrap .yado-info .addr br {
		display: none;
	}
	.page-access .map .info-wrap .yado-info .addr .space {
		display: inline;
	}
	.page-access .map .info-wrap .yado-info .tel-fax {
		 display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center;
	}
	.page-access .map .info-wrap .yado-info .check-inout {
		display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: center;
	}
	.page-access .map .info-wrap .yado-info .only-sp {
		display: none;
	}
	.page-access .map .info-wrap .yado-info .only-pc {
		display: block; height: 16px; margin: 0 16px;
	}
	
	.page-access .spot .inner {
		width: 1200px;
	}
	
	.page-access .bnrs .inner {
		width: 1200px;
	}
	.page-access .bnrs::before {
		width: 1200px;
	}
}


/*//////////////////////////////////////////////////
07-1.新着情報_一覧
//////////////////////////////////////////////////*/

.page-news .inner {
	width: 84%; max-width: 900px; margin: 0 auto; padding: 44px 0;
}
.page-news #newsList {
	margin: 0 0 16px; border-top: dotted 1px #bdbdbd;
}
.page-news #newsList li {
	padding: 12px 0; border-bottom: dotted 1px #bdbdbd;
}
.page-news #newsList li a {
	display: block; width: 100%;
}
.page-news .catName {
	display: none;
}
.page-news .pager {
	width: 100%; margin: 0 0 16px; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
	font-family: 'Spectral-M', sans-serif!important; font-weight: 500!important;
}
.page-news .pager a {
	font-size: 1.2rem; margin: 8px; height: 32px; display: flex; flex-wrap: wrap; justify-content: center; align-items: center;
}
.page-news .pager a.current {
	width: 32px; border-radius: 50%; background-color: #009139; color: #fff;
}

@media only screen and (min-width: 640px) {
	.page-news .inner {
		width: 88%; padding: 66px 0;
	}
	.page-news #newsList {
		margin: 0 0 20px;
	}
	.page-news #newsList li {
		padding: 14px 0;
	}
	.page-news .pager {
		margin: 0 0 20px;
	}
	.page-news .pager a {
		font-size: 1.3rem; margin: 10px; height: 36px;
	}
	.page-news .pager a.current {
		width: 36px;
	}
}

@media only screen and (min-width: 960px) {
	.page-news .inner {
		width: 92%; padding: 88px 0;
	}
	.page-news #newsList {
		margin: 0 0 24px;
	}
	.page-news #newsList li {
		padding: 16px 0;
	}
	.page-news #newsList li a:hover {
		opacity: .48;
	}
	.page-news .pager {
		margin: 0 0 24px;
	}
	.page-news .pager a {
		font-size: 1.4rem; margin: 12px; height: 40px;
	}
	.page-news .pager a.current {
		width: 40px;
	}
	.page-news .pager a:not(.current):hover {
		opacity: .48;
	}
}


/*//////////////////////////////////////////////////
07-2.新着情報_詳細
//////////////////////////////////////////////////*/

.page-news-detail .inner {
	width: 84%; max-width: 900px; margin: 44px auto; background-color: #fff; padding: 24px; box-sizing: border-box;
}
.page-news-detail h2 {
	line-height: 1.7; margin: 20px 0 12px; padding: 0 0 12px; border-bottom: solid 1px #bdbdbd;
}
.page-news-detail #up_ymd {
	text-align: right; margin: 0 0 20px;
}
.page-news-detail .backORcloseBtn .btn-1 {
	background-color: #fff; margin: 32px auto;
}
.page-news-detail .backORcloseBtn .btn-1::after {
	left: 16px; right: auto; transform: translate(0, -50%) scale(-1, 1);
}
.page-news-detail .detailUpfile {
	margin: 16px auto 0; max-width: 600px;
}
.page-news-detail .detailUpfile img {
	width: 100%; height: auto;
}

@media only screen and (min-width: 640px) {
	.page-news-detail .inner {
		width: 88%; margin: 66px auto;
	}
	.page-news-detail h2 {
		margin: 26px 0 14px; padding: 0 0 14px;
	}
	.page-news-detail #up_ymd {
		margin: 0 0 26px;
	}
	.page-news-detail .backORcloseBtn .btn-1 {
		margin: 40px auto;
	}
	.page-news-detail .backORcloseBtn .btn-1::after {
		left: 20px;
	}
	.page-news-detail .detailUpfile {
		margin: 20px auto 0;
	}
}

@media only screen and (min-width: 960px) {
	.page-news-detail .inner {
		width: 92%; margin: 88px auto; padding: 48px;
	}
	.page-news-detail .pNav a:hover {
		opacity: .48;
	}
	.page-news-detail h2 {
		margin: 32px 0 16px; padding: 0 0 16px;
	}
	.page-news-detail #up_ymd {
		margin: 0 0 32px;
	}
	.page-news-detail .backORcloseBtn .btn-1 {
		margin: 48px auto;
	}
	.page-news-detail .backORcloseBtn .btn-1::after {
		left: 24px;
	}
	.page-news-detail .detailUpfile {
		margin: 24px auto 0;
	}
}


/*//////////////////////////////////////////////////
宿泊プラン
//////////////////////////////////////////////////*/

.rss-contents {
	padding: 60px 0 0; position: relative; z-index: 2; left: 0; top: 0;
}
.page-cuisine .rss-contents {
	padding: 60px 0 24px;
}
.rss-contents .plan_rss {
	width: 84%; margin: 40px auto 0; padding: 0;
}
.rss-contents .plan_rss .mini {
	margin: 0 0 20px; padding: 0; background-color: #f1eede;
}
.rss-contents .plan_rss .mini .plan_text {
	padding: 12px 24px 24px; box-sizing: border-box;
    word-break: break-word;
}
.rss-contents .plan_rss .mini .plan_text h4 a {
	line-height: 1.7!important; font-size: 1.4rem!important; display: inline-block;
	font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;
}
.rss-contents .plan_rss .mini .plan_text p {
	line-height: 1.7!important; font-size: 1.2rem!important;
	font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;
}

.search-contents input, .search-contents select {
	-moz-appearance: none; -webkit-appearance: none; appearance: none; margin: 0; padding: 0; background: none; border: none; border-radius: 0; outline: none;
}
.search-contents {
	padding: 0 0 44px; position: relative; z-index: 1; left: 0; top: 0;
}
.search-contents .inner {
	width: 84%; margin: 0 auto; background-color: #f1eede; position: relative; z-index: 2; left: 0; top: 0;
}
.search-contents h2 {
	line-height: 1; width: 100%; padding: 40px 0; border: solid 8px #f1eede; box-sizing: border-box; text-align: center; background-image: url("../rss/search_title-back.jpg"); background-size: cover; background-position: center;
}
.search-contents .plan_form {
	width: 100%; padding: 24px; box-sizing: border-box;
}
.search-contents .plan_form .title, .search-contents .plan_form input, .search-contents .plan_form select {
	line-height: 1.7!important; font-size: 1.6rem!important; transform: scale(.8);
	font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;
}
.plan_form input[type="submit"] {
	transform: scale(.9);
}
.search-contents input[type="text"] {
	width: 100%; padding: 0 6px; border: solid 1px #bdbdbd; box-sizing: border-box; background-color: #fff;
}
.search-contents input[type="checkbox"] {
	background-image: url("../rss/search_check.svg"); width: 16px; height: 16px; background-size: cover; transition: none;
}
.search-contents input[type="checkbox"]:checked {
	background-image: url("../rss/search_check-active.svg");
}
.search-contents select {
	width: 100%!important; padding: 0 6px; border: solid 1px #bdbdbd; box-sizing: border-box; background-color: #fff;
}
.search-contents .price_wrap {
	width: 100%;
}
.search-contents .search_btn {
	margin: 16px 0 0;
}
.search-contents input[type="submit"] {
	width: 100%!important; height: 48px!important; background-color: #009139!important; color: #fff!important; border-radius: 24px;
	font-family: 'ShipporiMincho-M', 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, serif!important; font-weight: 500!important;
}

@media only screen and (min-width: 361px) {
	.search-contents input[type="text"] {
		padding: 0 8px;
	}
	.search-contents input[type="checkbox"] {
		position: relative; z-index: 1; left: 0; top: 7px;
	}
	.search-contents select {
		padding: 0 8px;
	}
	.search-contents .price_wrap {
		display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center;
	}
	.search-contents .price_wrap select {
		width: 33vw!important;
	}
}

@media only screen and (min-width: 640px) {
	.rss-contents {
		padding: 90px 0 0;
	}
	.page-cuisine .rss-contents {
		padding: 90px 0 40px;
	}
	.rss-contents .plan_rss {
		width: 88%; margin: 52px auto 0;
	}
	.rss-contents .plan_rss .mini {
		margin: 0 0 26px;
	}
	.rss-contents .plan_rss .mini .plan_text h4 a {
		font-size: 1.5rem!important;
	}
	.rss-contents .plan_rss .mini .plan_text p {
		font-size: 1.3rem!important;
	}

	.search-contents {
		padding: 0 0 66px;
	}
	.search-contents .inner {
		width: 88%;
	}
	.search-contents .price_wrap select {
		width: 36.8vw!important;
	}
}

@media only screen and (min-width: 768px) {
	.page-cuisine .rss-contents {
		padding: 90px 0 42px;
	}
	.rss-contents .plan_rss {
		min-width: 768px; display: flex; flex-wrap: wrap; justify-content: flex-start; align-items: stretch;
	}
	.rss-contents .plan_rss .mini {
		width: 32%; margin: 0 0 2%;
	}
	.rss-contents .plan_rss .mini:nth-of-type(2) {
		margin: 0 2% 2%;
	}

	.search-contents .inner {
		min-width: 768px;
	}
	.search-contents .plan_form {
		padding: 24px 8px;
	}
	.search-contents input[type="text"] {
		padding: 8px;
	}
	.search-contents select {
		padding: 8px;
	}
	.search-contents .check_in {
		width: 18%;
	}
	.search-contents .undecided {
		width: 10%;
	}
	.search-contents .guests {
		width: 14%;
	}
	.search-contents .type {
		width: 14%;
	}
	.search-contents .price {
		width: 44%;
	}
	.search-contents .price_wrap select {
		width: 16.8vw!important;
	}
	.search-contents .price_wrap span {
		display: inline-block; margin: 0 14px;
	}
	.search-contents .search_btn {
		width: 44vw; min-width: 384px; margin: 16px auto 0;
	}
}

@media only screen and (min-width: 960px) {
	.rss-contents {
		padding: 120px 0 0;
	}
	.page-cuisine .rss-contents {
		padding: 120px 0 64px;
	}
	.rss-contents .plan_rss {
		width: 92%; margin: 64px auto 0;
	}
	.rss-contents .plan_rss .mini a img {
		transition: opacity .4s;
	}
	.rss-contents .plan_rss .mini a:hover img {
		opacity: .64;
	}
	.rss-contents .rss-contents .plan_rss .mini .plan_text h4 a {
		font-size: 1.6rem!important;
	}
	.rss-contents .plan_rss .mini .plan_text h4 a:hover {
		opacity: .48;
	}
	.rss-contents .plan_rss .mini .plan_text p {
		font-size: 1.4rem!important;
	}

	.search-contents {
		padding: 0 0 88px;
	}
	.search-contents .inner {
		width: 92%;
	}
	.search-contents .price_wrap span {
		margin: 0 16px;
	}
	.search-contents input[type="submit"]:hover {
		opacity: .48;
	}
}

@media only screen and (min-width: 1280px) {
	.rss-contents {
		padding: 120px 0 0;
	}
	.rss-contents .plan_rss {
		width: 1200px;
	}

	.search-contents .inner {
		width: 1200px; height: 160px;
	}
	.search-contents h2 {
		float: left; width: 200px; height: 100%; z-index: 1; position: relative; left: 0; top: 0;
	}
	.search-contents h2 span {
		width: 100%; position: absolute; z-index: 1; left: 50%; top: 50%; transform: translate(-50%, -50%);
	}
	.search-contents .plan_form {
		float: left; width: 1000px; height: 100%; padding: 37px 24px;
	}
	.search-contents .check_in {
		width: 130px;
	}
	.search-contents .undecided {
		width: 80px;
	}
	.search-contents .guests {
		width: 100px;
	}
	.search-contents .type {
		width: 100px;
	}
	.search-contents .price {
		width: 330px;
	}
	.search-contents .price_wrap select {
		width: 140px!important;
	}
	.search-contents .search_btn {
		width: 120px; min-width: auto; margin: 0;
	}
}
.tokuten_wrap,.tokuten_wrap *{
    box-sizing: border-box;
}
.tokuten_wrap{
    width: 100%;   
    padding: clamp(50px,8vw,88px) 30px clamp(60px,8vw,88px);
    background: #f1eede;
    margin-bottom: 5px;
    background-color: rgba(255,255,255,0);
    background-image: linear-gradient(0deg, rgba(255,255,255,0) 0%, #f1eede 10%, #f1eede 100%);
}
#top .tokuten_wrap{  
    padding: clamp(50px,8vw,88px) 30px;
    margin-bottom: 0px;
    background-color: #f1eede;
    background-image: #f1eede;
}
.tokuten{
    width: min(100%,1200px);
    margin: 0 auto;
    padding: 20px 4.5vw 30px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0px 10px 15px rgba(0,0,0,0.1);
    border: 1px solid rgba(0,0,0,0.1);
}
.tokuten h3{
    font-size: clamp(26px,3vw,30px);
    font-weight: 600;
    text-align: center;
    margin:0 auto 15px;
    color: rgba(211,22,56,1.00);
    line-height: 1.4;
    position: relative;
    width: fit-content;
    padding-inline: 20px;
}
.tokuten h3:before,
.tokuten h3:after{
    content: url("../img/common/icon-gift.svg");
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width:35px;
    height: 35px;
}
.tokuten h3:before{
    left: calc(clamp(25px,3vw,35px) * -1);
}
.tokuten h3:after{
    right: calc(clamp(25px,3vw,35px) * -1);
}
.tokuten li{
    font-size: 18px;
    padding-left:1em;
    text-indent: -1em;
    line-height: 1.4;
}
.tokuten ul.toku li{
    font-size: 18px;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 7px;
    padding:3px 5px 3px calc(1em + 8px);
    background: rgba(255,208,44,0.20);
}
.tokuten ul.toku li span{
    font-size: calc(100% * 1.1);
/*    background: linear-gradient(transparent 70%, rgba(255,221,45,0.30) 70%);*/
    color: rgba(199,14,60,0.8);
    font-weight: 600;
}
.tokuten ul.toku{
   margin-bottom: 7px;
}
@media screen and (min-width: 481px){
.sp_only{
   display: none; 
}
}
@media screen and (max-width: 480px){
.tokuten h3:before,
.tokuten h3:after{
    top: inherit;
    bottom: 0;
    transform: translateY(0%);
}
}
@media screen and (min-width: 768px){
.sp_on{
   display: none; 
}    
}
@media screen and (max-width: 767px){
.pc_on{
   display: none; 
}    
}

a.underline-hover:hover{
text-decoration: underline;
}