@charset "utf-8";

@font-face {
	font-family: 'YuMincho';
	src: local('YuMincho-Demibold'),
		/* for Win */
		local('YuMincho Demibold');
	/* for Mac */
}

html,
body {
	height: 100%;
}

body {
	font-family: "游明朝 Medium", 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-size: 1.15vw;
	/*background: url(../img/common/backimage.jpg) repeat top left;*/
	letter-spacing: .1em;
	line-height: 1;
}

a,
a img {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

a:hover,
a img:hover {
	cursor: pointer;
	opacity: 0.6;
	filter: alpha(opacity=60);
	text-decoration: none !important;
}

#w_standard {
	width: 100%;
	height: auto;
}

@media screen and (max-width:1280px) {
	#w_standard {
		width: 1280px;
		height: auto;
	}
}

img {
	backface-visibility: hidden !important;
	-moz-backface-visibility: hidden !important;
	-webkit-backface-visibility: hidden !important;
}

.fadein {
	opacity: 0;
}

.tar {
	text-align: right;
	display: block;
}

.underline {
	text-decoration: underline;
}

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

#loader-bg {
	width: 100%;
	height: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
}

.bg_white {
	background: url(../img/common/backimage.jpg) repeat top left;
	overflow: hidden;
}

.bg_gold {
	background: url(../img/shukubou/honkan/back_img_gold.jpg) repeat top left;
	overflow: hidden;
}

/******** 20240304追記 **********/
.bg_white2 {
	background: url(../img/common/backimage2.jpg) repeat top left;
	overflow: hidden;
}

.bg_gra_yellow {
	background: linear-gradient(to bottom, #fff 0%, #fff 20%, rgba(205, 177, 59, 0.3) 60%, rgba(205, 177, 59, 0) 100%)
}

.bgc_darkgreen {
	position: relative;
}

.bgc_darkgreen>* {
	z-index: 1;
	position: relative;
}

.bgc_darkgreen::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	mix-blend-mode: multiply;
	z-index: 0;
	background-color: #476740;
}

.bgc_lightgreen {
	background-color: rgb(71, 136, 58, .06);
}

.bgc_orive {
	position: relative;
}

.bgc_orive>* {
	z-index: 1;
	position: relative;
}

.bgc_orive::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	mix-blend-mode: multiply;
	z-index: 0;
	background-color: #7A7648;
}

.bgc_lightorive {
	background-color: rgb(205, 177, 59, .06);
}

.bgc_white {
	background-color: #fff;
}


/* end of 20240304追記 **********/

#honkan .bg_gold {
	background: url(../img/shukubou/honkan/back_img_gold.jpg) repeat top -6vw left;
}

.honkan-1floor .bg_offwhite {
	background: url(../img/shukubou/honkan/back_img_offwhite.jpg) repeat top left;
}

#wrapper {
	opacity: 0;
	width: 100%;
	height: auto;
	overflow: hidden;
}

header {
	width: 100%;
	height: 80px;
	background: rgba(0, 0, 0, 0.85);
	color: #fff;
	position: fixed;
	z-index: 9999;
	zoom: 1;
	top: -80px;
}

header #logo {
	position: absolute;
	left: 32px;
	top: 14px;
}

header nav {
	text-align: center;
}

header nav ul li {
	display: inline-block;
	height: 80px;
}

header nav ul li::after {
	content: "｜";
	font-size: 13px;
	color: #999;
}

header nav ul li:last-child::after {
	content: "";
}

header nav>ul li {
	padding-top: 30px;
	font-size: 0;
	box-sizing: border-box;
}

header nav ul li a {
	display: inline-block;
	vertical-align: middle;
	color: #fff;
	font-size: 14px;
	padding-bottom: 4px;
	line-height: 1.5;
	margin: 0 4px 0 2px;
	text-indent: 0em;
}

@-moz-document url-prefix() {
	header nav ul li a {
		line-height: 1;
	}
}

.btn_shukubou a br,
header nav ul li:nth-of-type(4) a br,
header nav ul li:nth-of-type(5) a br {
	display: none;
}

@media screen and (max-width: 1400px) {
	/* header nav>ul li {
		padding-top: 20px;
	} */

	.btn_shukubou a br,
	header nav ul li:nth-of-type(4) a br,
	header nav ul li:nth-of-type(5) a br {
		display: block;
	}
}

header nav ul li a:hover,
header nav ul li.active a {
	color: #cdb13b;
	opacity: 1;
	background: url(../img/common/border.gif) repeat-x left bottom;
}

header #phone_number {
	position: absolute;
	right: 32px;
	top: 20px;
}

/********** 20241003追記 **********/
header #btn_conact_area {
	position: absolute;
	top: 10px;
	right: 24px;
	width: 150px;
	letter-spacing: 0.05em;
}

header #btn_conact_area a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 25px;
	color: #fff;
	font-size: 14px;
	border: 1px solid #fff;
}

header #btn_conact_area a:first-child {
	margin-bottom: 5px;
}

header #btn_conact_area a.sp {
	display: none;
}

/* end of 20241003追記 **********/

header .sub_nav {
	display: none;
	position: absolute;
	top: 80px;
	left: 0;
	width: 100%;
	padding: 0px 0 24px;
	background: rgba(0, 0, 0, 0.85);
	border-top: 2px solid #7e7037;
}

header .sub_nav li {
	height: auto;
	width: 230px;
	text-align: center;
	margin: 0;
}

header .sub_nav li a {
	height: auto;
	line-height: 1.5;
	letter-spacing: normal;
	margin: 0;
	width: 100%;
	background: none !important;
}

header .sub_nav li a:hover {
	background: none !important;
}

header .sub_nav li a span {
	display: block;
	margin-top: 8px;
}

header nav ul li.active .sub_nav a {
	color: #fff;
}

header nav ul li.active .sub_nav a:hover {
	color: #cdb13b;
	opacity: 1;
	background: none !important;
}

header .sub_nav li::after {
	content: "" !important;
}

footer {
	width: 100%;
	height: auto;
	background: #000;
	overflow: hidden;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

footer #page_top {
	position: relative;
	height: 65px;
	text-align: center;
	cursor: pointer;
	border-bottom: 2px solid #4d4d4d;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

footer #page_top:hover {
	background: #333;
}

footer #page_top img {
	display: block;
	position: absolute;
	top: 24px;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 34px;
}

footer a {
	color: #fff;
	font-size: 13px;
	letter-spacing: normal;
}

footer .footer_details {
	padding: 0 32px;
	height: auto;
	overflow: hidden;
	margin: 32px auto 40px;
	text-align: left;
	color: #fff;
	font-size: 13px;
}

footer .footer_logo {
	float: left;
	display: inline-block;
	line-height: 50px;
}

footer .footer_logo img {
	display: inline-block;
	margin-right: 40px;
	width: 120px !important;
}

footer .sns {
	float: right;
	margin-right: 5px;
}

footer .sns li {
	display: inline-block;
	width: 157px;
	height: 41px;
	text-align: center;
	background: #333;
	margin-right: 13px;
}

footer .sns li a {
	display: block;
	background: #333;
	height: 41px;
}

footer .sns .twitter a:hover {
	background: #1da1f2;
	opacity: 1;
}

footer .sns .instagram {
	position: relative;
}

footer .sns .instagram::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	opacity: 0;
	background: -webkit-linear-gradient(45deg, rgba(254, 212, 117, 1) 0%, rgba(229, 61, 93, 1) 50%, rgba(194, 49, 134, 1) 70%, rgba(156, 56, 187, 1) 100%);
	background: linear-gradient(45deg, rgba(254, 212, 117, 1) 0%, rgba(229, 61, 93, 1) 50%, rgba(194, 49, 134, 1) 70%, rgba(156, 56, 187, 1) 100%);
	transition: opacity .3s;
	z-index: 1;
}

footer .sns .instagram:hover::after {
	opacity: 1;
}

footer .sns .instagram a {
	position: relative;
	background: none;
	z-index: 2;
}

footer .sns .instagram a:hover {
	opacity: 1;
}

footer .sns .facebook a:hover {
	background: #3b579d;
	opacity: 1;
}

footer .sns a img {
	width: 41px !important;
}

footer .sns a img:hover {
	opacity: 1;
}

footer .footer_nav,
footer .footer_nav li,
footer .copyright {
	display: inline-block;
}

footer .footer_nav {
	flot: left;
}

footer .footer_nav li {
	display: inline-block;
	line-height: 1.5;
}

footer .footer_nav li::after {
	content: "|";
	color: #999;
	padding-left: 10px;
}

footer .copyright {
	float: right;
	font-size: 11px;
	line-height: 1.5;
	letter-spacing: .1em;
	margin-top: 20px;
}

footer .phone_number_sp,
footer .footer_logo_sp {
	display: none;
}

.sp {
	display: none !important;
}

/* index */
/*------------------------------------------*/
#index .attention_text {
	display: none;
	width: 100%;
	position: absolute;
	font-size: 0.8vw;
	line-height: 1.5;
	top: 80px;
	left: 0;
	right: 0;
	margin: 0 auto;
	background: #fff;
	color: #FF0004;
	font-weight: bold;
}

#index .attention_text p {
	text-indent: -1em;
	margin-left: 1em;
	padding: 0.5vw;
}

#index .attention_text a {
	text-decoration: underline;
}

#index .attention_text a:hover {
	text-decoration: none;
}

#index #main_img {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}

#index #main_img ul {
	width: 100%;
	height: 100%;
	position: relative;
	display: table-cell;
}

#index #main_img ul li {
	position: absolute;
	width: 100%;
	height: 100vh;
}

#index #main_img .img_1 {
	opacity: 0;
	background: url(../img/top/img_main_1.jpg) no-repeat center;
	background-size: cover;
}

#index #main_img .img_2 {
	opacity: 0;
	background: url(../img/top/img_main_2.jpg) no-repeat center;
	background-size: cover;
}

#index #main_img .img_3 {
	opacity: 0;
	background: url(../img/top/img_main_3.jpg) no-repeat center;
	background-size: cover;
}

#index #main_img .img_4 {
	opacity: 0;
	background: url(../img/top/img_main_4.jpg) no-repeat center;
	background-size: cover;
}

#index #main_img .img_5 {
	opacity: 0;
	background: url(../img/top/img_main_5.jpg) no-repeat center;
	background-size: cover;
}

#index #main_img .img_6 {
	opacity: 0;
	background: url(../img/top/img_main_6.jpg) no-repeat center;
	background-size: cover;
}

#index #main_img .img_7 {
	opacity: 0;
	background: url(../img/top/img_main_7.jpg) no-repeat center;
	background-size: cover;
}

#index #main_img .img_8 {
	opacity: 0;
	background: url(../img/top/img_main_8.jpg) no-repeat center;
	background-size: cover;
}

#index #main_img .img_9 {
	opacity: 0;
	background: url(../img/top/img_main_9.jpg) no-repeat center;
	background-size: cover;
}

#index #main_img .catchphrase {
	opacity: 0;
	width: 12vw;
	height: auto;
	position: absolute;
	top: 30vh;
	left: 12.5vw;
	z-index: 30;
}


/* news_list */
#news_list {
	position: absolute;
	bottom: 0;
	left: 0;
	opacity: 0;
	width: 100%;
	display: flex;
	justify-content: center;
	background: rgba(0, 0, 0, 0.8);
	transform: translateY(130px);
	transition: 1s;
	z-index: 100;
}

#news_list.on {
	opacity: 1;
	transform: translateY(0px);
}

#news_list li {
	padding: 10px 15px;
}

#news_list li img.sp {
	display: none;
}

#news_list li img {
	width: auto !important;
	/* height: 100px; バナー2つ*/
	height: 5.4vw;　/*バナー3つ*/
}

@media screen and (max-width: 1130px) {
	#news_list li {
		padding: 0.88vw;
	}

	#news_list li img {
		/* height: 8.8vw; バナー2つ*/
	}
}

#news_list li:hover {
	background-color: rgba(229, 203, 93, 0.7);
}

#news_list li a img:hover {
	opacity: 1;
}

/* news_list_b2 */
#news_list_b2 {
	position: absolute;
	text-align: right;
	bottom: 140px;
	right: 20px;
	width: 100%;
	transition: 1s;
	z-index: 100;
}
#news_list_b2 img {
	width: auto !important;
	height: 100px;
}

#news_list_b2 img:hover{
	opacity: 0.9 !important;
}

@media screen and (max-width: 1130px) {
	#news_list_b2 {
		bottom: 12.2vw;
	}

	#news_list_b2 img {
		height: 8.8vw;
	}
}


/* contents */
#index .contents img {
	width: 100%;
}

.panel {
	width: 100%;
	height: 100vh;
	display: table;
}

.panel.active {
	opacity: 1;
}

.panel h2.animatable {
	width: 16.6vw;
	height: 17vw;
	margin: 0 auto 6vh;
	text-align: top;
	position: relative;
}

.panel h2.animatable img {
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: opacity 1s ease 0.5s, -webkit-transform 1s ease 0.5s;
	-ms-transition: opacity 1s ease 0.5s, -ms-transform 1s ease 0.5s;
	transition: opacity 1s ease 0.5s, transform 1s ease 0.5s;
}

.panel.active h2.animatable img {
	opacity: 1;
}

#syojinryori h2.animatable {
	color: #000;
}

.panel h2.animatable span {
	opacity: 0;
	position: absolute;
	z-index: 10;
	font-size: 2vw;
	letter-spacing: .2em;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	-webkit-transition: opacity 1s ease 2s, -webkit-transform 1s ease 2s;
	-ms-transition: opacity 1s ease 2s, -ms-transform 1s ease 2s;
	transition: opacity 1s ease 2s, transform 1s ease 2s;
	display: block;
	width: 2vw;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;

}

/* IE10 */
.panel h2.animatable span:not(:target) {
	line-height: 1.5em\9;
}

/* IE11 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
	.panel h2.animatable span:not(:target) {
		line-height: 1.5em;
	}
}

.panel.active h2.animatable span {
	opacity: 1;
}

#ichijoin h2.animatable span {
	margin-top: 3.2vw;
}

#gosyukuhaku h2.animatable span {
	width: 5vw;
	line-height: 1.4;
	text-indent: -2.5vw;
	padding-top: 5.5vw;
}

#syojinryori h2.animatable span {
	margin-top: 4.6vw;
}

.panel .read {
	display: table-cell;
	width: 22vw;
	color: #fff;
	line-height: 2;
	letter-spacing: normal;
	vertical-align: middle;
}

#syojinryori .read {
	color: #000;
}

.panel .read div {
	width: 22vw;
	margin-left: 9vw;
}

.panel .read p {
	position: relative;
	padding: 4vh 2vw 4vh;
	overflow: hidden;
}

.panel .read p span.border_top {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	height: 2px;
	width: 100%;
	background: #cdb13b;
	-webkit-transform: translateX(-22vw);
	-ms-transform: translateX(-22vw);
	transform: translateX(-22vw);
	-webkit-transition: opacity 1.5s ease 0.5s, -webkit-transform 1.5s ease 0.5s;
	-ms-transition: opacity 1.5s ease 0.5s, -ms-transform 1.5s ease 0.5s;
	transition: opacity 1.5s ease 0.5s, transform 1.5s ease 0.5s;
}

.panel .read p span.text {
	opacity: 0;
	-webkit-transition: opacity 1s ease 2s, -webkit-transform 1s ease 2s;
	-ms-transition: opacity 1s ease 2s, -ms-transform 1s ease 2s;
	transition: opacity 1s ease 2s, transform 1s ease 2s;
}

.panel .read p span.border_bottom {
	position: absolute;
	bottom: 0;
	right: 0;
	display: block;
	height: 2px;
	width: 100%;
	background: #cdb13b;
	-webkit-transform: translateX(22vw);
	-ms-transform: translateX(22vw);
	transform: translateX(22vw);
	-webkit-transition: opacity 1.5s ease 0.5s, -webkit-transform 1.5s ease 0.5s;
	-ms-transition: opacity 1.5s ease 0.5s, -ms-transform 1.5s ease 0.5s;
	transition: opacity 1.5s ease 0.5s, transform 1.5s ease 0.5s;
}

.panel.active .read p span.border_top {
	-webkit-transform: translateX(0vw);
	-ms-transform: translateX(0vw);
	transform: translateX(0vw);
}

.panel.active .read p span.text {
	opacity: 1;
}

.panel.active .read p span.border_bottom {
	-webkit-transform: translateX(0vw);
	-ms-transform: translateX(0vw);
	transform: translateX(0vw);
}

.panel .btn_contents {
	opacity: 0;
	margin-left: 0 !important;
	-webkit-transition: opacity 1s ease 2s, -webkit-transform 1s ease 2s;
	-ms-transition: opacity 1s ease 2s, -ms-transform 1s ease 2s;
	transition: opacity 1s ease 2s, transform 1s ease 2s;
}

.panel.active .btn_contents {
	opacity: 1;
}

.panel .btn_contents a {
	display: block;
	padding: 2.5vh 0;
	width: auto;
	background: #cdb13b url(../img/common/arrow.svg) no-repeat right 1.5vw center;
	line-height: 10%;
	text-align: center;
	margin: 5vh auto 0;
	color: #fff;
	font-weight: bold;
	font-size: 1.3vw;
	position: relative;
	line-height: 1.3;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

/* IE10 */
.panel .btn_contents a:not(:target) {
	padding: 3vh 0 2vh\9;
}

/* IE11 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
	.panel .btn_contents a:not(:target) {
		padding: 3vh 0 2vh;
	}
}

.panel .btn_contents a:hover {
	opacity: 1;
	background-color: #e5cb5d;
	background-position: right 1.2vw center;
}

#index #ichijoin {
	background: #000 url(../img/top/page2_img.jpg) no-repeat center;
	background-size: cover;
}

#index #gosyukuhaku {
	background: #000 url(../img/top/page3_img.jpg) no-repeat center;
	background-size: cover;
}

#index #syojinryori {
	background: #000 url(../img/top/page4_img.jpg) no-repeat center;
	background-size: cover;
}

#index #taiken {
	background: #000 url(../img/top/page5_img.jpg) no-repeat center;
	background-size: cover;
}


/* バナーエリア */
#index .bunner {
	background: url(../img/top/bn_backgrond.jpg) no-repeat center top;
	position: relative;
}

#index .bunner_area {
	opacity: 1;
	width: 100%;
	padding-top: 20vh;
	padding-bottom: 10vh;
	overflow: hidden;
	position: relative;
}

#index .bunner_area img {
	width: 100%;
	height: auto;
}

#index .bunner footer {
	position: absolute;
	left: 0;
	bottom: 0;
}

#index .bunner_area a {
	display: block;
	width: 40.7vw;
}

#index .bunner_area .bunner_2 {
	position: absolute;
	right: 0;
	top: 20vh;
}

.panel .bunner_1 {
	opacity: 0;
	-webkit-transform: translateX(-6vw);
	-ms-transform: translateX(-6vw);
	transform: translateX(-6vw);
	-webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
	-ms-transition: opacity 1s ease, -ms-transform 1s ease;
	transition: opacity 1s ease, transform 1s ease;
}

.panel.active .bunner_1 {
	opacity: 1;
	-webkit-transform: translateX(6vw);
	-ms-transform: translateX(6vw);
	transform: translateX(6vw);
}

.panel .bunner_2 {
	opacity: 0;
	-webkit-transform: translateX(6vw);
	-ms-transform: translateX(6vw);
	transform: translateX(6vw);
	-webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
	-ms-transition: opacity 1s ease, -ms-transform 1s ease;
	transition: opacity 1s ease, transform 1s ease;
}

.panel.active .bunner_2 {
	opacity: 1;
	-webkit-transform: translateX(-6vw);
	-ms-transform: translateX(-6vw);
	transform: translateX(-6vw);
}

/*　一階層目のテンプレート
ー-------------------------------------------------*/
#view {
	width: 100%;
	height: 100vh;
	overflow: hidden;
	position: relative;
	display: table;
}

#view h1 {
	margin: 0 auto;
	vertical-align: middle;
	display: table-cell;
	height: 100vh;
	text-align: center;
	position: relative;
}

#view h1 img {
	opacity: 0;
	width: 5.8vw;
	height: auto;
	padding-top: 10vh;
}

#lunch #view h1 img {
	opacity: 0;
	width: 8.7vw;
	height: auto;
	padding-top: 10vh;
}

#page_main_view_blur {
	position: absolute;
	top: 0;
	left: -10%;
	width: 120%;
	height: 100vh;
}

#page_main_view {
	position: absolute;
	top: 0;
	left: -10%;
	width: 120%;
	height: 100vh;
}

.page h2 {
	text-align: center;
	font-size: 2vw;
	line-height: 1.36;
	letter-spacing: .2em;
}

/*　二階層目のテンプレート
ー-------------------------------------------------*/
.page-2 #heading {
	width: 100%;
	height: 225px;
	position: relative;
	background: url(../img/common/backimage.jpg) no-repeat top left;
	background-size: 100% auto;
}

.page-2 #heading .cat {
	opacity: 0;
	position: absolute;
	top: 112px;
	left: 0;
}

.page-2 #heading .cat_red {
	display: inline-block;
	border: 1px solid #c9171e;
	font-size: 16px;
	padding: 2px;
}

.page-2 #heading .cat_green {
	display: inline-block;
	border: 1px solid #007b43;
	font-size: 16px;
	padding: 2px;
}

.page-2 #heading .cat_red span {
	display: inline-block;
	border: 1px solid #c9171e;
	padding: 7px 10px 5px 10px;
	color: #c9171e;
	font-weight: bold;
}

.page-2 #heading .cat_green span {
	display: inline-block;
	border: 1px solid #007b43;
	padding: 7px 10px 5px 10px;
	color: #007b43;
	font-weight: bold;
}

.page-2 #heading h1 {
	font-size: 32px;
	margin: 16px 0 0 12px;
}

.page-2 #heading ul {
	opacity: 0;
	position: absolute;
	bottom: 40px;
	right: 0;
}

.page-2 #heading ul li,
.breadcrums li {
	display: inline-block;
	color: #000;
	font-size: 13px;
	font-weight: bold;
}

.page-2 #heading ul li::after,
.breadcrums li::after {
	content: "/";
	padding: 0 4px 0 12px;
}

.page-2 #heading ul li:last-child::after,
.breadcrums li:last-child::after {
	content: "";
	padding: 0;
}

.page-2 #heading ul li a,
.breadcrums li a {
	color: #777;
	font-weight: bold;
	text-decoration: underline;
}

.page-2 #heading ul li a:hover {
	text-decoration: none;
}

.page-2 .view {
	height: calc(100vh - 225px);
}

/*　モーダルウィンドウ
ー--------------------------------------------------*/
#modal_window {
	display: none;
	position: fixed;
	width: 100%;
	height: 100vh;
	background: rgba(0, 0, 0, 0.7);
	z-index: 99999;
	top: 0;
	left: 0;
}

#modal_window article {
	margin: 0 auto;
	display: table-cell;
	vertical-align: middle;
}

#modal_window article div {
	width: 980px;
	margin: 0 auto;
	background: #fff;
	vertical-align: middle;
	padding: 30px;
}

.honkan-1floor #modal_window article div {
	max-width: 92.167vw;
}

#modal_window article div a.btn_close {
	font-size: 16px;
	float: right;
	color: #f00f18;
	font-weight: bold;
}

#modal_window article div h4 {
	clear: both;
	font-size: 24px;
	text-align: center;
	padding-bottom: 24px;
	border-bottom: 1px solid #ccc;
}

#modal_window article div ol {
	padding: 16px;
}

#modal_window article div ol.scroll {
	height: 60vh;
	overflow-y: scroll;
}

#modal_window article div ol.scroll2 {
	height: 70vh;
	overflow-y: scroll;
}

#modal_window article div figure.scroll3 {
	height: 70vh;
	overflow-y: scroll;
}

#modal_window article div figure>div.img {
	width: 900px;
	padding: 0;
}

#modal_window article div ol li.supplement {
	background: #F6F6F6;
	padding: 40px 32px 8px 24px;
}

#modal_window article div ol li.supplement strong {
	display: block;
	margin-bottom: 24px;
	font-size: 18px;
}

#modal_window article div ol li.supplement ol {
	margin-left: 28px;
	margin-bottom: 32px;
	list-style: disc;
}

#modal_window article div ol li.supplement ol li {
	font-size: 16px;
	line-height: 2;
}


#modal_window article div h5 {
	font-size: 18px;
	margin-bottom: 16px;
}

#modal_window article div p {
	font-size: 16px;
	margin-bottom: 16px;
	line-height: 1.5;
	margin-left: 22px;
}

/*　僧坊の営み
ー-------------------------------------------------*/
#about #page_main_view {
	background: #000 url(../img/about/main_img_about.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#about #page_main_view_blur {
	background: #000 url(../img/about/main_img_about_2.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#about #contents {
	background: url(../img/about/back_img_black.jpg) repeat-y top center;
	height: auto;
	overflow: hidden;
}

#about .column_left_align,
#about .column_right_align {
	opacity: 0;
	display: table;
	width: 100%;
	/*position: relative;*/
	margin-bottom: 10vh;
	overflow: hidden;
	height: auto;
	background: rgba(255, 255, 255, 0.2);
}

#about h2 {
	border-bottom: 2px solid #999;
	padding-bottom: 8vh;
	color: #fff;
	width: 100%;
	margin-bottom: 8vh;
}

#about h2.style01 {
	border-bottom: 2px solid #999;
	padding-bottom: 3vh;
	color: #fff;
	width: 100%;
	margin-bottom: 0;
}

#about h2 span {
	display: block;
	font-size: 0.8vw;
	line-height: 1.5;
	margin-top: 1vh;
	letter-spacing: .1em;
}

#about .column_left_align .img,
#about .column_right_align .img {
	display: table-cell;
	width: 56vw;
	vertical-align: middle;
	overflow: hidden;
}

#about .column_left_align .img img {
	display: block;
	width: 100%;
	margin-left: -10vw;
}

#about .column_right_align .img img {
	display: block;
	width: 100%;
	margin-left: 10vw;
}

#about .column_left_align .text,
#about .column_right_align .text {
	display: table-cell;
	padding: 0 8.5vw;
	vertical-align: middle;
}

#about .column_left_align .detail,
#about .column_right_align .detail {
	width: 24vw;
}

#about .btn_details_red {
	width: 100%;
}

#about .column_left_align .text p,
#about .column_right_align .text p {
	padding: 4vh 0 6vh 0;
	line-height: 2em;
	/*border-top: 1px solid #999;*/
	margin-top: 0.3vh;
	color: #fff;
	width: 100%;
}

#about .column_left_align .text p.center,
#about .column_right_align .text p.center {
	text-align: center;
}

#about .btn_details_red a {
	display: block;
	width: 21vw;
	margin: 0 auto;
	background: #c9171e url(../img/common/arrow.svg) no-repeat right 1.5vw center;
	background-size: 5% auto;
	color: #fff;
	text-align: center;
	font-size: 1.3vw;
	padding: 2.5vh 0;
	letter-spacing: normal;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

/* IE10 */
#about .btn_details_red a:not(:target) {
	padding: 3vh 0 2vh\9;
}

/* IE11 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
	#about .btn_details_red a:not(:target) {
		padding: 3vh 0 2vh;
	}
}

#about .btn_details_red a:hover {
	opacity: 1;
	background-color: #f00f18;
	background-position: right 1.2vw center;
}


/*　お堂・仏像
ー-------------------------------------------------*/
#a_odou .view {
	background: url(../img/about/main_image_odou.jpg) no-repeat bottom center;
	background-size: cover;
}

#a_odou h2 {
	width: 3.5vw;
	height: auto;
	margin: 0 auto 8vh;
	font-size: 2vw;
	letter-spacing: .3em;
	padding: 2vw 1.5vw 0 0;
	background: url(../img/about/border_red.png) repeat-x left top;
}

#a_odou h2 span {
	width: 100%;
	font-size: 2vw;
	letter-spacing: .3em;
	padding-top: 1vw;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	-webkit-transition: opacity 1s ease 2s, -webkit-transform 1s ease 2s;
	-ms-transition: opacity 1s ease 2s, -ms-transform 1s ease 2s;
	transition: opacity 1s ease 2s, transform 1s ease 2s;
}

/* IE10 */
#a_odou h2 span:not(:target) {
	line-height: 1.5em\9;
}

/* IE11 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
	#a_odou h2 span:not(:target) {
		line-height: 1.5;
	}
}

#a_odou .odou {
	opacity: 0;
	padding: 12vh 0;
}

#a_odou .odou .odou_img {
	opacity: 0;
	width: 100vw;
	height: 95vh;
	background: url(../img/about/img_odou_1.jpg) no-repeat center;
	background-size: cover;
	position: relative;
}

#a_odou .odou .odou_img div {
	opacity: 0;
	width: 28vw;
	position: absolute;
	bottom: 8vh;
	left: -4vw;
	line-height: 2;
	color: #fff;
}

#a_odou .odou .odou_img div h3 {
	margin-bottom: 2vh;
	font-size: 2vw;
}

#a_odou .odou .odou_img_2 {
	opacity: 0;
	margin-top: 15vh;
}

#a_odou .odou .odou_img_2 img {
	display: block;
	margin-bottom: 4vh;
}

#a_odou .butsuzo {
	opacity: 0;
}

#a_odou .butsuzo p.center_text {
	opacity: 0;
	width: 55vw;
	margin: 0 auto;
	clear: both;
	line-height: 1.8;
	text-align: center;
	padding: 4vw 0;
}

#a_odou .butsuzo .butsuzo_1,
#a_odou .butsuzo .butsuzo_2 {
	opacity: 0;
	width: 100vw;
	height: 95vh;
	position: relative;
	color: #fff;
}

#a_odou .butsuzo .butsuzo_1 {
	background: url(../img/about/img_butsuzo_1.jpg) no-repeat center;
	background-size: cover;
}

#a_odou .butsuzo .butsuzo_2 {
	background: url(../img/about/img_butsuzo_2.jpg) no-repeat center;
	background-size: cover;
	color: #000;
}

#a_odou .butsuzo .butsuzo_1 .table,
#a_odou .butsuzo .butsuzo_2 .table {
	opacity: 0;
	width: 39vw;
	display: table;
	height: 100%;
}

#a_odou .butsuzo .butsuzo_2 .table {
	position: absolute;
	right: 0;
	top: 0;
}

#a_odou .butsuzo .butsuzo_1 .table div,
#a_odou .butsuzo .butsuzo_2 .table div {
	display: table-cell;
	vertical-align: middle;
}

#a_odou .butsuzo .butsuzo_1 .table div {
	background: url(../img/about/img_butsuzo_1_2.png) no-repeat center;
	background-size: 100% auto;
}

#a_odou .butsuzo .butsuzo_2 .table div {
	background: url(../img/about/img_butsuzo_2_2.png) no-repeat center;
	background-size: 100% auto;
}

#a_odou .butsuzo .table h3 {
	font-size: 2vw;
	margin-bottom: 2vw;
	text-align: center;
}

#a_odou .butsuzo .table h3 span {
	display: block;
	font-size: 1.7vw;
	line-height: 2.5;
}

#a_odou .butsuzo .table p {
	line-height: 2;
	padding: 0 7vw;
}

#a_odou .butsuzo .table p span {
	display: block;
	margin-top: 1vw;
}

#a_odou .butsuzo ul {
	display: table;
	width: 100%;
	table-layout: fixed;
	margin-bottom: 8vh;
}

#a_odou .butsuzo ul li {
	opacity: 0;
	display: table-cell;
	height: 46vw;
	position: relative;
}

#a_odou .butsuzo ul li.butsuzo_3 {
	background: url(../img/about/img_butsuzo_3.jpg) no-repeat bottom center;
	background-size: 100% auto;
}

#a_odou .butsuzo ul li.butsuzo_4 {
	background: url(../img/about/img_butsuzo_4.jpg) no-repeat bottom center;
	background-size: 100% auto;
}

#a_odou .butsuzo ul li.butsuzo_5 {
	background: url(../img/about/img_butsuzo_5.jpg) no-repeat bottom center;
	background-size: 100% auto;
}

#a_odou .butsuzo ul li.butsuzo_6 {
	background: url(../img/about/img_butsuzo_6.jpg) no-repeat bottom center;
	background-size: 100% auto;
}

#a_odou .butsuzo ul li div {
	opacity: 0;
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 3vw 2.5vw;
	color: #fff;
	line-height: 1.8;
	text-align: center;
	width: 100%;
	box-sizing: border-box;
}

#a_odou .butsuzo ul li div h3 {
	font-size: 2vw;
}

#a_odou .butsuzo ul li.butsuzo_4 div {
	background: url(../img/about/img_butsuzo_4_blur.jpg) no-repeat bottom center;
	background-size: 100% auto;
}

#a_odou .butsuzo ul li.butsuzo_5 div {
	background: url(../img/about/img_butsuzo_5_blur.jpg) no-repeat bottom center;
	background-size: 100% auto;
}

/*　十一面・光華観音菩薩入仏開眼法会
ー-------------------------------------------------*/
#a_houe .view {
	background: url(../img/about/main_image_houe.jpg) no-repeat bottom center;
	background-size: cover;
}

#a_houe .read {
	opacity: 0;
	position: relative;
	padding: 10vh 0;
}

#a_houe .read img {
	margin-left: -7vw;
	width: 46vw;
	height: auto;
}

#a_houe .read div {
	opacity: 0;
	position: absolute;
	top: 19vh;
	right: 0;
	width: 37vw;
	height: auto;
}

#a_houe .read div h2 {
	font-size: 1.7vw;
	line-height: 1.8;
	margin-bottom: 6vh;
}

#a_houe .read div h2 span.rubi {
	display: block;
	font-size: 0.8vw;
	letter-spacing: 0.4vw;
	padding-left: 0.2vw;
}

#a_houe .read div h2 span.large {
	display: block;
	font-size: 2.3vw;
	line-height: 1;
}

#a_houe .read div p {
	display: block;
	line-height: 2;
	margin-bottom: 10vh;
}

#a_houe .read div p:last-child {
	margin-bottom: 0;
}

#a_houe .read_2 {
	position: relative;
}

#a_houe .read_2 div {
	display: table;
	table-layout: fixed;
	position: relative;
}

#a_houe .read_2 div figure {
	display: table-cell;
	vertical-align: top;
}

#a_houe .read_2 div figure img {
	width: 100%;
	opacity: 0;
}

#a_houe .read_2 div .img_2 {
	vertical-align: bottom !important;
}

#a_houe .read_2 div .img_2 img {
	margin-top: 17vw;
}

#a_houe .read_2 p.text_1 {
	opacity: 0;
	position: absolute;
	top: 5vw;
	left: 13vw;
	line-height: 1.5;
}

#a_houe .read_2 p.text_2 {
	opacity: 0;
	position: absolute;
	top: 38vw;
	right: 19.5vw;
	line-height: 1.5;
}

#a_houe .read_3 {
	opacity: 0;
	width: 100vw;
	height: 95vh;
	background: url(../img/about/img_houe_4.jpg) no-repeat center;
	background-size: cover;
	margin-top: 10vh;
	position: relative;
}

#a_houe .read_3 p {
	position: absolute;
	left: 4vw;
	bottom: 5vh;
	color: #fff;
}

#a_houe .read_4 {
	opacity: 0;
	width: 100vw;
	height: 95vh;
	background: url(../img/about/img_houe_5.png) no-repeat center;
	background-size: cover;
	margin: 10vh 0;
	position: relative;
}

#a_houe .read_4 p {
	opacity: 0;
	position: absolute;
	left: 8vw;
	bottom: 12vh;
	line-height: 2.3;
}

#a_houe .read_3 figure,
#a_houe .read_4 p.sp,
#a_houe .read_4 figure {
	display: none;
}


/*　勤行
ー-------------------------------------------------*/
#a_gongyo .view {
	background: url(../img/about/main_image_gongyo.jpg) no-repeat bottom center;
	background-size: cover;
}

#a_gongyo #contents {
	height: auto;
	background: url(../img/about/back_img_black.jpg) repeat-y left top;
	background-size: 100% auto;
	overflow: hidden;
	padding-bottom: 8vh;
}

#a_gongyo #contents .sp {
	display: none;
}

#a_gongyo #contents ul li {
	opacity: 0;
	width: 100%;
	height: auto;
	padding-top: 20vh;
	margin-top: 3vw;
	display: table;
	color: #fff;
}

#a_gongyo #contents ul li p {
	line-height: 2;
}

#a_gongyo #contents ul li img {
	display: block;
	width: 100%;
	height: auto;
	box-shadow: 0px 0px 25px 5px rgba(255, 255, 255, 0.1);
}

#a_gongyo #contents ul li .text,
#a_gongyo #contents ul li figure {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}

#a_gongyo #contents ul li.anime1 figure {
	width: 53vw;
	padding-right: 3vw;
}

#a_gongyo #contents ul li.anime1 .text {
	width: 44vw;
}

#a_gongyo #contents ul li.anime1 .text h2 {
	margin-bottom: 4vw;
}

#a_gongyo #contents ul li.anime2 figure {
	width: 29vw;
	padding-left: 3vw;
}

#a_gongyo #contents ul li.anime2 .text {
	width: 36vw;
}

#a_gongyo #contents ul li.anime3 figure.img_1 {
	width: 29vw;
	padding-left: 3vw;
}

#a_gongyo #contents ul li.anime3 figure.img_2 {
	width: 44vw;
	padding-right: 3vw;
}

#a_gongyo #contents ul li.anime3 .text {
	width: 21vw;
}

#a_gongyo #contents ul li.anime4 figure.img_1 {
	width: 29vw;
	padding-left: 3.5vw;
	padding-right: 3.5vw;
}

#a_gongyo #contents ul li.anime4 figure.img_2 {
	width: 29vw;
	padding-right: 3vw;
}

#a_gongyo #contents ul li.anime4 .text {
	width: 29vw;
	padding-left: 3vw;
	vertical-align: bottom;
}

#a_gongyo #contents ul li.anime4 .text p {
	padding: 2.6vw 0;
	margin-bottom: 2%;
}

#a_gongyo #contents ul li.anime5 figure {
	width: 53vw;
	padding-left: 3vw;
}

#a_gongyo #contents ul li.anime2 .text {
	width: 44vw;
}

#a_gongyo #contents ul li.anime6 {
	position: relative;
}

#a_gongyo #contents ul li.anime6 img {
	box-shadow: none;
}

#a_gongyo #contents ul li.anime6 p {
	position: absolute;
	bottom: 2.7vw;
	right: 3vw;
}



/*　ご供養・ご祈祷
ー-------------------------------------------------*/
#a_kitou .view {
	background: url(../img/about/main_image_kitou.jpg) no-repeat bottom center;
	background-size: cover;
}

#a_kitou .view2 {
	background: url(../img/about/img_kitou_19.jpg) no-repeat bottom center;
	background-size: cover;
}

/* 2024.03 20240304
#a_kitou article h2{
	margin-bottom:1.7vw;
}

#a_kitou article p{
	line-height:2;
	margin-bottom:2.9vw;
}

#a_kitou article img{
	width:100%;
	height:auto;
}

#a_kitou .box1,
#a_kitou .box2{
	margin:0 0 9.3vw;
}

#a_kitou .box1 .text{
	opacity:0;
	padding:6.25vw 0 3.6vw 5.2vw;
}

#a_kitou .box1 .text p span{
	font-weight:bold;
}

#a_kitou .box1 .img_1{
	opacity:0;
}

#a_kitou .box2,
#a_kitou .box3{
	position:relative;
}

#a_kitou .box2 figure,
#a_kitou .box3 figure{
	width:56.25vw;
	height:auto;
	position:absolute;
	top:0;
}

#a_kitou .box2 .img_2{
	opacity:0;
	right:0;
}
#a_kitou .box2 .text{
	opacity:0;
	width:38vw;
	box-sizing:border-box;
	padding:8.2vw 0 8vw 5.2vw;
}
#a_kitou .box2 .text p.mb5{
	margin-bottom:0;
}

#a_kitou .box3{
	margin:0 0 5.6vw;
}
#a_kitou .box3 .img_3{
	opacity:0;
	left:0;
}
#a_kitou .box3 .text{
	opacity:0;
	width:33vw;
	padding:10.4vw 0 8vw 61.4vw;
}

#a_kitou p.link{
	opacity:0;
	font-size:1.5vw;
	text-align:center;
	line-height:2;
	margin-bottom:5.6vw;
}
#a_kitou p.link a{
	color:#000;
	text-decoration:underline;
}
#a_kitou p.link a:hover{
	text-decoration:none;
}
*/

/******** 20240304追記 **********/

/*animation用*/
#a_kitou #contents .btn_nav,
#a_kitou #contents .section_kuyou h2,
#a_kitou #contents .info_block .box h3,
#a_kitou #contents .info_block .box .text_block,
#a_kitou #contents .info_block .box2 .lists_wrapper,
#a_kitou #contents .info_block .box2-4 h4,
#a_kitou #contents .info_block .box3 .lists_wrapper .item,
#a_kitou #contents .info_block .box4 .lists_wrapper,
#a_kitou #contents .view2 {
	opacity: 0;
}

#a_kitou #contents .info_block .box h3 {
	margin-top: -10vw;
}

#a_kitou #contents .info_block .ihai-lists>.item {
	padding-top: 8vw;
	opacity: 0;
}


/*構成*/
#a_kitou #contents img {
	width: 100%;
}

#a_kitou #contents .btn_block {
	display: flex;
	justify-content: center;
}

#a_kitou #contents .btn_block a {
	display: inline-block;
}

#a_kitou #contents .btn_block a:not(:last-child) {
	/* margin-right: 1em; 20250623*/
}

#a_kitou #contents dl,
#a_kitou dt,
#a_kitou dd {
	margin: 0;
}

/*上部ナビボタン*/
#a_kitou #contents .btn_nav {
	width: 57.8%;
	margin: 6vw auto;
}

#a_kitou #contents .btn_nav a {
	width: 47.7%;
}

/*供養・祈祷ベース*/
#a_kitou .c_sec {
	padding: 6.2vw 10.6vw;
}

#a_kitou h2 {
	width: 78.8%;
	margin: 0 auto;
	text-align: center;
	color: #fff;
	padding-top: 1em;
	font-size: 2.1vw;
}

#a_kitou .info_block {
	margin-top: 2.3vw;
	padding: 5.25vw 7.09vw;
}

#a_kitou .info_block .box {
	display: flex;
	justify-content: space-between;
}

#a_kitou .info_block .box:not(:last-child) {
	margin-bottom: 4.15vw;
}

#a_kitou .info_block .box h3 {
	width: 1em;
	padding: 0.5em 2.94vw 1em 0.79vw;
	border-right: 0.11vw solid #47883A;
	font-size: 1.68vw;
}

#a_kitou .info_block .box h4 {
	font-size: 1.47vw;
	color: #2E6423;
}

#a_kitou .info_block .box .text_block {
	letter-spacing: normal;
	line-height: 2;
	font-size: 0.95vw;
}

#a_kitou .info_block .box>.text_block {
	width: 87.6%;
	display: flex;
	flex-wrap: wrap;
	margin: 0;
}

#a_kitou .info_block .box .lists {
	display: flex;
	flex-wrap: wrap;
	padding-top: 1.5em;
	margin-bottom: 1.5em;
}

#a_kitou .info_block .box .lists .header {
	font-size: 105%;
}

#a_kitou .info_block .box .lists .item {
	margin: 0;
}

#a_kitou .info_block .box .lists_wrapper {
	display: flex;
	justify-content: space-between;
}

#a_kitou .info_block .note {
	color: #2E6423;
	text-indent: -1em;
	padding-left: 1em;
}

#a_kitou .info_block .note_block {
	margin-top: 1em;
}

#a_kitou .info_block .note_block:not(:last-child) {
	margin-bottom: 1em;
}

#a_kitou .info_block .box .contact_lists {
	display: flex;
	align-items: center;
	justify-content: center;
}

#a_kitou .info_block .box .contact_lists .detail .number {
	width: 12.40vw;
}

#a_kitou .info_block .box .contact_box>*:not(:last-child) {
	margin-bottom: 1.58vw;
}

#a_kitou .info_block .box .contact_box .btn_block {
	flex-direction: column;
}

#a_kitou .info_block .box .contact_box .btn_block>a:not(:last-child) {
	margin-bottom: 0.5em;
}

/*御供養のご案内*/
#a_kitou .section_kuyou h2 {
	background: url(../img/about/title_bg1-1.png) center top no-repeat;
	background-size: 2.5em;
}

/*box1 一年間の御供養*/
#a_kitou .info_block .box1 .text_block>*:first-child {
	width: 100%;
}

#a_kitou .info_block .box1 .text_block>*:nth-child(2) {
	width: 59.7%;
	margin-top: 1.47vw;
}

#a_kitou .info_block .box1 .text_block>*:nth-child(3) {
	width: 40%;
}

#a_kitou .info_block .box1 .lists .title {
	width: 15em;
}

#a_kitou .info_block .box1 .lists .title.header {
	width: 5.5em;
	font-weight: bold;
}

#a_kitou .info_block .box1 .lists .item {
	width: calc(100% - 15em);
	margin: 0;
}

#a_kitou .info_block .box1 .lists .item.header {
	width: calc(100% - 5.5em);
	font-weight: bold;
}

/*box2 永代供養*/
#a_kitou .info_block .box2 {
	position: relative;
}

#a_kitou .info_block .box2::before {
	content: "";
	display: inline-block;
	position: absolute;
	right: 3.05vw;
	bottom: 11.14vw;
	width: 29.53vw;
	height: 16.03vw;
	background: url(../img/about/img_kitou_12.png) center no-repeat;
	background-size: contain;
}

#a_kitou .info_block .box2 .text_block {
	z-index: 1;
	margin-top: 1.5em;
	padding-bottom: 1.5em;
}

#a_kitou .info_block .box2 .text_block>*:first-child {
	width: 100%;
}

#a_kitou .info_block .box2 .text_block>*:nth-child(2) {
	width: 100%;
}

#a_kitou .info_block .box2 .btn_kitou_block {
	margin-top: 1.5em;
}

#a_kitou .info_block .box2 .btn_kitou_block>a {
	width: 31.8%;
}

#a_kitou .info_block .box2 .lists_wrapper {
	padding: 3.00vw 2.68vw;
	margin-top: 1.47vw;
}

#a_kitou .info_block .box2 .lists_wrapper .l_box {
	width: 58%;
}

#a_kitou .info_block .box2 .lists_wrapper .r_box {
	width: 38.7%;
}

#a_kitou .info_block .box2 .lists {
	border-top: 1px solid #C5D6B6;
}

/*box2-1 過去帳記載のみの永代供養*/
#a_kitou .info_block .box2-1 .lists .title.header {
	width: 5em;
}

#a_kitou .info_block .box2-1 .lists .title {
	width: 19em;
}

#a_kitou .info_block .box2-1 .lists .title.header {
	width: 100%;
}

#a_kitou .info_block .box2-1 .lists .item {
	width: calc(100% - 19em);
}

/*box2-2 納骨での永代供養*/
#a_kitou .info_block .box2-2 .lists .item.header {
	width: 0;
}

#a_kitou .info_block .box2-2 .lists .title {
	width: 23em;
}

#a_kitou .info_block .box2-2 .lists .item {
	width: calc(100% - 23em);
}

/*box2-4 御位牌の種類と建立費用のご案内*/
#a_kitou .info_block .box2-4 {
	margin-top: 3.47vw;
}

#a_kitou .info_block .ihai-lists {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#a_kitou .info_block .ihai-lists>.item {
	width: 31.8%;
	margin-top: 2.63vw
}

#a_kitou .info_block .ihai-lists>.item:nth-child(1),
#a_kitou .info_block .ihai-lists>.item:nth-child(2),
#a_kitou .info_block .ihai-lists>.item:nth-child(3) {
	margin-top: 1.47vw;
}

#a_kitou .info_block .ihai-lists>.item .name {
	font-size: 1.16vw;
	margin-top: 0.75em;
}

#a_kitou .info_block .ihai-lists>.item .details {
	display: flex;
	flex-wrap: wrap;
	line-height: 1.5;
}

#a_kitou .info_block .ihai-lists>.item .details .title {
	padding-right: 1em;
}

#a_kitou .info_block .ihai-lists>.item .details .detail {
	min-width: 50%;
}

/*box3 永代供養お申込の流れ*/
#a_kitou .info_block .box3 .lists_wrapper {
	flex-direction: column;
}

#a_kitou .info_block .box3 .lists_wrapper>.item {
	display: flex;
	justify-content: space-between;
	padding-bottom: 3.15vw;
	position: relative;
}

#a_kitou .info_block .box3 .lists_wrapper>.item:not(:last-child) {
	margin-bottom: 2.15vw;
	background: url(../img/about/bg_arrow.png) center bottom no-repeat;
	background-size: contain;
}

/* #a_kitou .info_block .box3 .lists_wrapper > .item:not(:last-child)::after{
  content: "";
  background-color: #fff;
  width: 3.42vw;height: 3.42vw;
  border-bottom: 2px solid #81A860;
  border-left: 2px solid #81A860;
  transform: rotate(-45deg) skew(20deg,20deg);
  display: inline-block;
  position: absolute;bottom: -1.82vw;left: calc(50% - 1.71vw);
} */
#a_kitou .info_block .box3 .lists_wrapper .l_box {
	width: 28.4%;
}

#a_kitou .info_block .box3 .lists_wrapper .r_box {
	width: 66.2%;
}

#a_kitou .info_block .box3 .lists_wrapper>.item:not(:nth-child(3)) .l_box {
	margin-top: 1.36vw;
}

#a_kitou .info_block .box3 h4 {
	text-align: center;
	height: 14.36vw;
	width: 15.76vw;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background: url(../img/about/title_bg2.png) center no-repeat;
	background-size: contain;
	letter-spacing: normal;
}

#a_kitou .info_block .box3 h4 .num {
	font-size: 3.15vw;
}

#a_kitou .info_block .box3 h4 .text {
	font-size: 1.17vw;
	margin-top: 0.5em;
}

#a_kitou .info_block .box3 .contact_box {
	margin-top: 1.05vw;
	padding: 1.52vw 4.31vw 1.26vw;
}

#a_kitou .info_block .box3-1 .contact_lists .title {
	width: 30.42%;
	font-size: 0.84vw;
	letter-spacing: normal;
}

#a_kitou .info_block .box3-1 .contact_lists .detail {
	width: 43.78%;
}

#a_kitou .info_block .box3-2 .contact_lists {
	flex-wrap: wrap;
}

#a_kitou .info_block .box3-2 .contact_box {
	position: relative;
}

#a_kitou .info_block .box3-2 .contact_box::after {
	content: "";
	width: 100%;
	height: 1px;
	background-color: rgb(197, 214, 182, .5);
	position: absolute;
	left: 0;
	top: 6.09vw;
}

#a_kitou .info_block .box3-2 .contact_lists .title {
	width: 19%
}

#a_kitou .info_block .box3-2 .contact_lists .detail {
	width: 70%
}

#a_kitou .info_block .box3-2 .contact_lists .line {
	padding-bottom: 1em;
}

#a_kitou .info_block .box3-2 .contact_lists .number {
	padding-top: 1em;
}

#a_kitou .info_block .box3 .lists_wrapper>.item.box3-3,
#a_kitou .info_block .box3 .lists_wrapper>.item.box3-4 {
	align-items: center;
}


/*ご祈祷*/
#a_kitou .section_kitou h2 {
	background: url(../img/about/title_bg1-2.png) center top no-repeat;
	background-size: 2.5em;
}

#a_kitou .section_kitou .info_block .lists_wrapper {
	padding-left: 0;
	padding-right: 0;
	flex-direction: column;
}

#a_kitou .section_kitou .note {
	color: #5C4F1A;
}

#a_kitou .section_kitou .info_block .box h4 {
	color: #5C4F1A;
}

#a_kitou .section_kitou .info_block .lists_wrapper>p:not(:last-child) {
	margin-top: 1em;
}

/*box4 御祈祷のお申込み*/
#a_kitou .info_block .box4 h4 {
	margin-top: 1em;
}

#a_kitou .info_block .box4 .detail_block {
	display: flex;
	align-items: center;
	margin-top: 1em;
}

#a_kitou .info_block .box4 .lists_wrapper:not(:last-child) {
	margin-bottom: 1.52vw;
}

#a_kitou .info_block .box4 .l_box {
	width: 50%;
	display: flex;
	justify-content: center;
}

#a_kitou .info_block .box4 .r_box {
	width: 50%;
}

#a_kitou .info_block .box4-1 .lists {
	width: 45%;
}

#a_kitou .info_block .box4-1 .lists .title {
	width: 4em;
}

#a_kitou .info_block .box4-1 .lists .detail1 {
	width: 4em;
}

#a_kitou .info_block .box4-2 .detail_block {
	flex-direction: column;
	padding: 3.68vw 4.8vw;
}

#a_kitou .info_block .box4-2 .l_box,
#a_kitou .info_block .box4-2 .r_box {
	width: 100%;
}

#a_kitou .info_block .box4-2 .l_box {
	order: 2
}

#a_kitou .info_block .box4-2 .r_box {
	order: 1;
	text-align: center;
}

#a_kitou .info_block .box4-2 .r_box img {
	width: 95%;
}

#a_kitou .info_block .box4-3 .contact_box {
	width: 19.44vw;
}

#a_kitou .info_block .box4-3 .title {
	padding-right: 1em;
}

/* end of 20240304追記 **********/


/*　宿坊のもてなし
ー-------------------------------------------------*/
#shukubou #page_main_view {
	background: #000 url(../img/shukubou/main_img_shukubou.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#shukubou #page_main_view_blur {
	background: #000 url(../img/shukubou/main_img_shukubou_2.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#shukubou .column_left_align,
#shukubou .column_right_align {
	opacity: 0;
	display: table;
	width: 100%;
	margin-bottom: 10vh;
	overflow: hidden;
	height: auto;
}

#shukubou h2 {
	width: 100%;
	margin-bottom: 8vh;
}

#shukubou .column_left_align .img,
#shukubou .column_right_align .img {
	display: table-cell;
	width: 56vw;
	vertical-align: middle;
	overflow: hidden;
}

#shukubou .column_left_align .img img {
	display: block;
	width: 100%;
	/*margin-left: -10vw;*/
}

#shukubou .column_right_align .img img {
	display: block;
	width: 100%;
	/*margin-left: 10vw;*/
}

#shukubou .column_left_align .text,
#shukubou .column_right_align .text {
	opacity: 0;
	display: table-cell;
	padding: 0 7.5vw;
	vertical-align: middle;
	background: url(../img/shukubou/back_img_gradation.png) no-repeat center;
	background-size: cover;
}

#shukubou .column_left_align .detail,
#shukubou .column_right_align .detail {
	width: 28vw;
}

#shukubou .column_left_align .text p,
#shukubou .column_right_align .text p {
	padding: 4vh 0 6vh 0;
	line-height: 2em;
	margin-top: 0.3vh;
	width: 100%;
}

#shukubou .btn_details_green a {
	display: block;
	width: 21vw;
	margin: 0 auto;
	background: #007b43 url(../img/common/arrow.svg) no-repeat right 1.5vw center;
	background-size: 5% auto;
	color: #fff;
	text-align: center;
	font-size: 1.3vw;
	padding: 2.5vh 0;
	letter-spacing: normal;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

/* IE10 */
#shukubou .btn_details_green a:not(:target) {
	padding: 3vh 0 2vh\9;
}

/* IE11 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
	#shukubou .btn_details_green a:not(:target) {
		padding: 3vh 0 2vh;
	}
}

#shukubou .btn_details_green a:hover {
	opacity: 1;
	background-color: #15ad68;
	background-position: right 1.2vw center;
}

/*　本館紹介
ー-------------------------------------------------*/
/* common */
body.renewal * {
	box-sizing: border-box;
}

.renewal img {
	width: 100%;
	height: auto;
}

.renewal sup {
	font-size: 60%;
}

.renewal .tategaki {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

.renewal .txt-yoko {
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: rl-tb;
	writing-mode: rl-tb;
	writing-mode: horizontal-tb;

	display: inline;
	line-height: 1;
}

#mySwiper {
	position: relative;
}

#honkan #mySwiper {
	margin-top: 80px
}

#honkan .swiper {
	overflow: visible;
	height: calc(100vh - 50px - 80px);
}

.honkan-1floor #top-image {
	margin-top: 80px
}

.swiper-slide {
	background-repeat: no-repeat;
	background-position: center;
}

.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
	position: absolute;
	bottom: -35px;
	bottom: -1.84vw;
	margin: 0 !important;

	display: flex;
	justify-content: center;
	align-items: center;
}

.swiper-pagination-bullet {
	width: .521vw;
	height: .521vw;
	margin-right: 2.6042vw !important;
}

.swiper-pagination-bullet-active {
	background: #D9B43D;
	width: 1.042vw;
	height: 1.042vw;
	margin-right: 2.3438vw !important;
}

.swiper-pagination-bullet:last-child {
	margin: 0 !important;
}

/* 本館１ｆ */
.swiper.swiper01 {
	overflow: visible;
	height: auto;
}

.swiper-slide.swiper-slide01 img {
	display: block;
	width: auto;
	height: auto;

	width: 100%;
}

.swiper-button-next,
.swiper-button-prev {
	color: none;
	width: 3.96vw;
}

.swiper-button-next::after,
.swiper-button-prev::after {
	content: '';
	background: url(../img/shukubou/honkan/icon_slider-prev-arrow.svg) no-repeat center;
	width: 3.96vw;
	height: 3.96vw;
	background-size: 3.96vw auto;
}

.swiper-button-prev::after {
	background: url(../img/shukubou/honkan/icon_slider-nxt-arrow.svg) no-repeat center;
	background-size: 3.96vw auto;
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
	left: 16.1vw;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
	right: 16.1vw;
}


/* スライド画像 */
#honkan .swiper-slide.slide01 {
	background-image: url(../img/shukubou/honkan/main_image_honkan01.jpg);
	background-size: cover;
}

#honkan .swiper-slide.slide02 {
	background-image: url(../img/shukubou/honkan/main_image_honkan02.jpg);
	background-size: cover;
}

#honkan .swiper-slide.slide03 {
	background-image: url(../img/shukubou/honkan/main_image_honkan03.jpg);
	background-size: cover;
}

#honkan .swiper-slide.slide04 {
	background-image: url(../img/shukubou/honkan/main_image_honkan04.jpg);
	background-size: cover;
}

#honkan .swiper-slide.slide05 {
	background-image: url(../img/shukubou/honkan/main_image_honkan05.jpg);
	background-size: cover;
}

#honkan .swiper-slide.slide06 {
	background-image: url(../img/shukubou/honkan/main_image_honkan06.webp);
	background-size: cover;
}

#fuji .main-image {
	background: url(../img/shukubou/honkan/main_image_fuji.jpg) no-repeat bottom center;
	background-size: cover;
	height: calc(100vh - 50px - 80px);
}

#take .main-image {
	background: url(../img/shukubou/honkan/main_image_take.jpg) no-repeat bottom center;
	background-size: cover;
	height: calc(100vh - 50px - 80px);
}

#toyama .main-image {
	background: url(../img/shukubou/honkan/main_image_toyama.jpg?20230309) no-repeat bottom center;
	background-size: cover;
	height: calc(100vh - 50px - 80px);
}

#ran .main-image {
	background: url(../img/shukubou/honkan/main_image_ran.jpg) no-repeat bottom center;
	background-size: cover;
	height: calc(100vh - 50px - 80px);
}


/* vertical_header */
.renewal .vertical_header {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 1.25vw;
	font-weight: normal;
	position: relative;
	letter-spacing: .08em;
	line-height: 1;
	padding-top: 4.323vw;
}

.renewal .vertical_header::before {
	position: absolute;
	content: '';
	display: block;
	background: #D9B43D;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 0.209vw;
	height: 3.646vw;
}

.renewal .vertical_header {
	left: 76.11%;
}

.honkan-1floor .vertical_header .cont-center {
	display: flex;
	align-items: center;
}

.honkan-1floor .vertical_header .cont-center .tategaki {
	display: flex;
	flex-direction: column;
}

.honkan-1floor .vertical_header .cont-center .txt-tate {
	display: flex;
}

.honkan-1floor .vertical_header .cont-center .txt-yoko {
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: rl-tb;
	writing-mode: rl-tb;
	writing-mode: horizontal-tb;
	display: inline;
	font-size: 0;
	letter-spacing: normal;

	display: flex;
	align-items: baseline;
	justify-content: center;
}

.honkan-1floor .vertical_header .cont-center .txt-yoko span:first-child {
	font-size: 1.25vw;
}

.honkan-1floor .vertical_header .cont-center .txt-yoko span:last-child {
	font-size: 0.9375vw;
}

.renewal .sec01 {
	max-width: 1520px;
	margin: 0 auto;
}

.renewal .sec01 .sec01-cont .sec01-desc {
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-direction: row-reverse;

	height: 26vw;
	margin-bottom: 6.15vw;
}

#honkan .sec01 .sec01-cont .sec01-desc {
	margin-top: -0.91vw;
	height: 19.2em;
}

.renewal .sec01 .sec01-cont .sec01-desc {
	margin-top: -4.9vw;
}

.honkan-1floor .sec01 .sec01-cont .sec01-desc {
	margin-top: -2.5vw;
	margin-bottom: 5.209vw;
}

#fuji.honkan-1floor .sec01 .sec01-cont .sec01-desc {
	margin-right: 5vw;
}

#take.honkan-1floor .sec01 .sec01-cont .sec01-desc {
	margin-right: 10vw;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc h3 {
	position: relative;
	padding-top: 4vw;
	font-size: 2.865vw;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc h3::before {
	content: '';
	position: absolute;
	top: 1vw;
	left: 0;
	right: 0;
	margin: 0 auto;
}

/* .renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc h3.toyama::before{top: 0;} */
.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc h3.fuji::before {
	background: url(../img/shukubou/honkan/icon_heading-fuji.svg) no-repeat center;
	background-size: 1.83vw auto;
	width: 1.83vw;
	height: 1.83vw;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc h3.take::before {
	background: url(../img/shukubou/honkan/icon_heading-take.svg) no-repeat center;
	background-size: 2.136vw auto;
	width: 2.136vw;
	height: 1.771vw;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc h3.toyama::before {
	background: url(../img/shukubou/honkan/icon_heading-toyama.svg) no-repeat center;
	background-size: 1.906vw auto;
	width: 1.906vw;
	height: 1.906vw;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc h3.toyama {
	padding-top: 3.66vw;
	letter-spacing: normal;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc h3.ran::before {
	background: url(../img/shukubou/honkan/icon_heading-ran.svg) no-repeat center;
	background-size: 1.72vw auto;
	width: 1.72vw;
	height: 1.93vw;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc h3>.sub-title {
	font-size: 1.15vw;
	padding-top: 0.51vw;
}

.renewal .sec01 .sec01-cont .sec01-desc h3 {
	font-size: 1.823vw;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 0.3vw;
}

.renewal .sec01 .sec01-cont .sec01-desc p {
	margin-right: 2.61vw;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc p {
	padding-top: 4vw;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc p.toyama {
	padding-top: 3.646vw;
	margin-right: 2.084vw;
	letter-spacing: normal;
}

.renewal:not(#honkan) .sec01 .sec01-cont .sec01-desc p.ran {
	margin-right: 2.084vw;
	letter-spacing: normal;
}

.renewal .sec01 .sec01-cont .sec01-desc p.note {
	font-size: .938vw;
	letter-spacing: -0.01em;
}

#honkan .sec01 .sec01-cont .sec01-desc p {
	margin-right: 3vw;
}

.renewal .sec01 .sec01-cont .sec01-desc p>span {
	display: inline-block;
	line-height: 2;
}

.renewal .sec01 .sec01-cont .sec01-desc p.toyama>span,
.renewal .sec01 .sec01-cont .sec01-desc p.ran>span {
	display: block;
}

#honkan .sec01 .sec01-cont .sec01-desc p>span:not(:first-child) {
	margin-right: 2.65vw;
}

#honkan .sec01-img {
	position: relative;
	margin-right: calc((100vw - 1520px) / 2);
	width: 79.167vw;
}

#honkan .sec01-img img {
	position: relative;
	z-index: 10;
}

#honkan .sec01-img::before {
	content: '';
	position: absolute;
	background: url(../img/shukubou/honkan/img_sec01-01mark.png) no-repeat;
	background-size: 18.44vw;
	width: 18.44vw;
	height: 18.44vw;
	top: -14.9vw;
	transform: translateY(-10%);
	margin-left: 15.15vw;
	margin-left: 15.05vw;
	z-index: 1;
}

/* 本館１F */
#honkan .common-sec {
	width: 100%;
	margin-top: 7.813vw;
}

#honkan .common-floor {
	position: relative;
}

#honkan .common-floor::before {
	content: '';
	position: absolute;
	top: 0;
	top: -0.1vh;
	left: 0;
	right: 0;
	margin: 0 auto;

	display: block;
	height: .653vh;
	height: 0.313vw;
	width: 5.834vw;
	background-color: #D9B43D;
}

#honkan .common-floor::after {
	content: '';
	position: absolute;
	top: 1.4vh;
	top: 0.521vw;
	left: 0;
	right: 0;
	margin: 0 auto;

	display: block;
	height: 0.436vh;
	height: 0.209vw;
	width: 5.834vw;
	background: #D9B43D;

}

#honkan .common-sec .floor-title {
	margin: 0 auto;
	line-height: 1.5;
	padding-top: 2.188vw;
	font-size: 2.3vw;
	font-weight: normal;
}

#honkan .common-sec .floor-title .cont-center {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

#honkan .common-sec .floor-title .cont-center .txt-yoko {
	-webkit-writing-mode: horizontal-tb;
	-ms-writing-mode: rl-tb;
	writing-mode: rl-tb;
	writing-mode: horizontal-tb;
	display: inline;
	font-size: 0;

	display: flex;
	align-items: baseline;
	justify-content: center;
}

#honkan .common-sec .floor-title .cont-center .txt-yoko span:first-child {
	font-size: 2.344vw;
}

#honkan .common-sec .floor-title .cont-center .txt-yoko span:last-child {
	font-size: 1.563vw;
}

#honkan .common-sec .box {
	display: flex;
	margin-top: 5.21vw;
}

#honkan .common-sec .box.box-right {
	flex-direction: row-reverse;
}

#honkan .common-sec .box .box-img {
	width: 56.511vw;
	height: auto;
}

#honkan .common-sec .box .box-cont {
	display: flex;
	flex-direction: row-reverse;
	padding-top: 1.51vw;
}

#honkan .common-sec .box.box-right .box-cont {
	padding-right: 8.388vw;
	padding-left: 15.365vw;
}

#honkan .common-sec .box.box-left .box-cont {
	/* padding-left: 14.4vw; */
	padding-left: 14.063vw;
	padding-right: 9.688vw;
}

#honkan .common-sec .box.box-right.box-toyama .box-cont {
	padding-left: 14.323vw;
	padding-right: 9.636vw;
}

#honkan .common-sec .box.box-left.box-ran .box-cont {
	padding-left: 12.5vw;
	padding-right: 8.34vw;
}

#honkan .common-sec .box .box-cont .box-title {
	font-size: 2.86vw;
	position: relative;
	padding-top: 2.94vw;
	/* margin-left: 5.20832vw; */
	font-weight: normal;
}

#honkan .common-sec .box .box-cont .box-title.toyama {
	padding-top: 2.605vw;
}

#honkan .common-sec .box .box-cont .box-title.ran {
	padding-top: 2.8vw;
}

#honkan .common-sec .box .box-cont .box-title::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}

#honkan .common-sec .box .box-cont .box-title.fuji::before {
	background: url(../img/shukubou/honkan/icon_heading-fuji.svg) no-repeat center;
	background-size: 1.88vw auto;
	width: 1.88vw;
	height: 1.88vw;
}

#honkan .common-sec .box .box-cont .box-title.take::before {
	background: url(../img/shukubou/honkan/icon_heading-take.svg) no-repeat center;
	background-size: 2.136vw auto;
	width: 2.136vw;
	height: 1.771vw;
}

#honkan .common-sec .box .box-cont .box-title.toyama::before {
	background: url(../img/shukubou/honkan/icon_heading-toyama.svg) no-repeat center;
	background-size: 1.7611vw auto;
	width: 1.7611vw;
	height: 1.7611vw;
}

#honkan .common-sec .box .box-cont .box-title.ran::before {
	background: url(../img/shukubou/honkan/icon_heading-ran.svg) no-repeat center;
	background-size: 1.563vw auto;
	width: 1.563vw;
	height: 1.761vw;
}

#honkan .common-sec .box .box-cont p {
	padding-top: 2.8vw;
	font-size: 1.15vw;
	letter-spacing: 0.0001em;
	position: relative;
	align-self: flex-start;
}
#honkan .common-sec .box.box-take .box-cont p {
	line-height: 2;
}
#honkan .common-sec .box.box-ran .box-cont p {
	line-height: 2;
}

#honkan .common-sec .box .box-cont p>a.btn {
	line-height: 1;
}

#honkan .common-sec .box .box-cont p>a.btn::after {
	content: '詳しく見る';
	background: #D9B43D url(../img/shukubou/honkan/icon_arrow-white.svg) no-repeat bottom 2vh center;
	background-size: 0.652vw auto;
	color: #fff;
	display: inline-block;
	padding: 1.62vw 0.58vw 2.45vw;
	font-size: .94vw;
	right: 1.3vw;
	position: absolute;
	bottom: 0;
	margin-right: 2.605vw;
}
#honkan .common-sec .box.box-take .box-cont p>a.btn::after {
	margin-right: 5.209vw;
}
#honkan .common-sec .box.box-ran .box-cont p>a.btn::after {
	margin-right: 5.209vw;
}

#honkan .common-sec .box.box-left {
	margin-top: 4.17vw;
	margin-bottom: 7.82vw;
}

#honkan .common-sec .box.box-left .box-cont p {
	padding-top: 2.761vw;
	height: 30em;
}

#honkan .common-sec .box.box-right .box-cont p,
#honkan .common-sec .box.box-left .box-cont p {
	margin-right: 5.20832vw;
}

#honkan .sec04 {
	margin-top: 7.82vw;
}

/* 本館１ｆ */
.floor01 {
	position: relative;
}

/* breadcrums */
.honkan-1floor .breadcrums {
	position: absolute;
	top: 1.563vw;
	left: 6.95vw;
}


/* yoyaku button */
.honkan-1floor .yoyaku {
	position: absolute;
	right: 1.46vw;
	top: 2.1vw;
}

.honkan-1floor .yoyaku a {
	display: inline-block;
	background-color: #D9B43D;
	color: #fff;
	font-weight: bold;
	width: 13.91vw;
	height: 3.13vw;
	letter-spacing: normal;

	display: flex;
	justify-content: center;
	align-items: center;
}

.honkan-1floor .yoyaku a .arrow {
	position: relative;
	display: inline-block;
}

.honkan-1floor .yoyaku a .arrow::after {
	content: '';
	position: absolute;
	top: .15vw;
	background: url(../img/shukubou/honkan/icon_arrow-white.svg) no-repeat right center;
	background-size: 0.68vw auto;
	width: 0.68vw;
	height: 0.79vw;
	padding-left: 1.25vw;
}

.honkan-1floor .sec02 {
	margin-bottom: 5.21vw;
	position: relative;
}

.honkan-1floor .sec03 {
	max-width: 1520px;
	width: 100%;
	margin: 0 auto;
}

.honkan-1floor .sec03 .content-block {
	padding: 0 4.17vw;
}

.honkan-1floor .sec03 .content-block .block:not(:last-child) {
	margin-bottom: 3.65vw;
}

.honkan-1floor .sec03 .content-block .block01 {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 3.13vw;
}

.honkan-1floor .sec03 .content-block .block01 .txt {
	width: 57.55vw;
	border-top: 1px solid #000000;
	padding: 1.57vw;
	padding-bottom: 0;

	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 13.51%;
}

.honkan-1floor .sec03 .content-block .block .title {
	font-size: 1.15vw;
	font-weight: bold;
	position: relative;
	padding-left: 1.6vw;
	line-height: 1;
	margin-bottom: 1.05vw;

	font-family: 'YuMincho', 'Hiragino Mincho Pro', serif;
	font-weight: 700;

	display: flex;
	justify-content: flex-start;
	align-items: center;
}

.honkan-1floor .sec03 .content-block .block.block01 .title {
	margin-bottom: 1.57vw;
	font-weight: bold;

	font-family: 'YuMincho', 'Hiragino Mincho Pro', serif;
	font-weight: 700;
}

.honkan-1floor .sec03 .content-block .block .title::before {
	content: '';
	position: absolute;
	left: 0;
	background: url(../img/shukubou/honkan/icon_diamond.svg) no-repeat center;
	background-size: 1.15vw auto;
	width: 1.15vw;
	height: 1.36vw;
}

.honkan-1floor .sec03 .content-block .block01 .txt .desc {
	width: 59.45%;
}

.honkan-1floor .sec03 .content-block .block01 .txt .desc dl {
	margin: 0;
	padding-left: 1.57vw;
}

.honkan-1floor .sec03 .content-block .block01 .txt .desc dl>div {
	display: flex;
	justify-content: space-between;
}

.honkan-1floor .sec03 .content-block .block01 .txt .desc dl>div:not(:last-child) {
	margin-bottom: 1.05vw;
}

.honkan-1floor .sec03 .content-block .block01 .txt .desc dl>div dt {
	font-size: 1.15vw;
	font-weight: bold;
	line-height: 1.2;
	width: 38%;

	font-family: 'YuMincho', 'Hiragino Mincho Pro', serif;
	font-weight: 700;
}

.honkan-1floor .sec03 .content-block .block01 .txt .desc dl>div dd {
	font-size: 1.15vw;
	line-height: 1.2;
	text-align: left;
	width: 56%;
}

.honkan-1floor .sec03 .content-block .block01 .img {
	width: 36.76vw;
}

.honkan-1floor .sec03 .content-block .block01 .txt .map {
	width: 27.04%;
}

.honkan-1floor .sec03 .content-block .block01 .txt .map a {
	display: inline-block;
	border: 1px solid #040404;
	background: #fff;
	color: #000000;
	font-size: 1.02vw;
	font-weight: bold;
	padding-bottom: .53vw;
	width: 100%;

	display: flex;
	flex-direction: column;
	align-items: center;
}

.honkan-1floor .sec03 .content-block .block01 .txt .map a .img {
	width: 2.61vw;
	height: 2.61vw;
	margin: 0.84vw auto 0.79vw;
}

.honkan-1floor .sec03 .content-block .block01 .txt .map a .arrow {
	position: relative;
	padding-right: 0.9vw;
}

.honkan-1floor .sec03 .content-block .block01 .txt .map a .arrow::after {
	content: '';
	position: absolute;
	top: 0.15vw;
	right: 0;
	background: url(../img/shukubou/honkan/icon_arrow-black.png) no-repeat right center;
	background-size: .68vw auto;
	width: .68vw;
	height: .73vw;
}

.honkan-1floor .block .cont {
	padding: 0 1.57vw;
}

.honkan-1floor .block .cont p {
	padding-left: 1.57vw;
	line-height: 2;
	letter-spacing: 0.001em;
}

.honkan-1floor .block03 .amenity-block {
	margin-top: 4.69vw;
}

.honkan-1floor .block03 .amenity-block .row {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: 3.125vw;
}

.honkan-1floor .block03 .amenity-block .amenity {
	width: 33.855vw;
}

.honkan-1floor .block03 .amenity-block .amenity p {
	line-height: 1.5;
	letter-spacing: -.01em;
	margin: .782vw 0 3.125vw;
	font-size: 1.13vw;
}

.honkan-1floor .yoyaku-block {
	max-width: 1520px;
	width: 100%;
	padding-top: 3.65vw;
	padding-bottom: 10.42vw;
	margin: 0 auto;
}

.honkan-1floor .yoyaku-block .btn {
	display: flex;
	justify-content: center;
	align-items: center;
}

.honkan-1floor .yoyaku-block a {
	background-image: linear-gradient(#D9B43D, #C8A229);
	color: #fff;
	font-weight: bold;
	font-size: 2.19vw;
	width: 35.938vw;
	height: 7.03vw;

	display: flex;
	justify-content: center;
	align-items: center;
}

.honkan-1floor .yoyaku-block a .btn-border {
	border: 1px solid #fff;
	width: 35.521vw;
	height: 6.615vw;

	display: flex;
	justify-content: center;
	align-items: center;
}

.honkan-1floor .yoyaku-block a span.arrow {
	position: relative;
	display: inline-block;
}

.honkan-1floor .yoyaku-block a span.arrow::after {
	content: '';
	position: absolute;
	top: .4vw;
	background: url(../img/shukubou/honkan/icon_arrow-white.svg) no-repeat right center;
	background-size: 1.15vw auto;
	width: 1.15vw;
	height: 1.355vw;
	padding-left: 6.52vw;
}

/*　宿坊寺院の佇まい
ー-------------------------------------------------*/
#s_appearance .view {
	background: url(../img/shukubou/main_image_appearance.jpg) no-repeat bottom center;
	background-size: cover;
}

#s_appearance #contents .fadein {
	padding-top: 20vh;

}

#s_appearance #contents ul {
	margin-bottom: 15vw;
}

#s_appearance #contents ul li {
	position: relative;
}

#s_appearance #contents ul li:nth-child(2) {
	margin-top: -14.5vw;
}

#s_appearance #contents ul li:nth-child(3) {
	margin-top: -16.5vw;
}

#s_appearance #contents ul li:nth-child(5) {
	margin-top: -14.5vw;
}

#s_appearance #contents ul li:nth-child(7) {
	margin-top: -47vw;
}

#s_appearance #contents ul li img {
	width: 100%;
}

#s_appearance #contents ul p {
	font-size: 1.5vw;
}

#s_appearance #contents ul p.text_1 {
	opacity: 0;
	width: 49vw;
	position: absolute;
	margin: 17vw 0 0 6vw;
	line-height: 2;
}

#s_appearance #contents ul p.text_2 {
	opacity: 0;
	width: 49vw;
	margin: -8.5vw 0 5vw 42vw;
	line-height: 2;
	position: absolute;
}

#s_appearance #contents ul p.text_3 {
	opacity: 0;
	width: 28vw;
	margin: 6vw 0 5vw 65.5vw;
	line-height: 2;
}

#s_appearance #contents .sp {
	display: none;
}


/*　阿字観・写経・写仏
ー-------------------------------------------------*/
#s_ajikan .view {
	background: url(../img/shukubou/main_image_ajikan.jpg) no-repeat bottom center;
	background-size: cover;
}

#s_ajikan .column_left_align,
#s_ajikan .column_right_align {
	opacity: 0;
	display: table;
	width: 100%;
	margin-bottom: 10vh;
	overflow: hidden;
	height: auto;
}

#s_ajikan h2 span {
	font-size: 1vw;
	vertical-align: middle;
	padding-left: 1vw;
}

#s_ajikan .column_left_align .img,
#s_ajikan .column_right_align .img {
	display: table-cell;
	width: 56vw;
	vertical-align: middle;
	overflow: hidden;
}

#s_ajikan .column_left_align .img img {
	display: block;
	width: 100%;
}

#s_ajikan .column_right_align .img img {
	display: block;
	width: 100%;
}

#s_ajikan .column_left_align .text,
#s_ajikan .column_right_align .text {
	opacity: 0;
	display: table-cell;
	padding: 0 6.5vw;
	padding: 0 6.5vw;
	vertical-align: middle;
}

#s_ajikan .column_left_align .detail,
#s_ajikan .column_right_align .detail {
	width: 32vw;
	padding: 3vw 0 0 1.2vw;
}

#s_ajikan .ajikan .detail {
	background: url(../img/shukubou/h2_ajikan_1.png) no-repeat left top;
	background-size: 8vw auto;
}

#s_ajikan .syakyo .detail {
	background: url(../img/shukubou/h2_ajikan_2.png) no-repeat left top;
	background-size: 8vw auto;
}

#s_ajikan .syabutsu .detail {
	background: url(../img/shukubou/h2_ajikan_3.png) no-repeat left top;
	background-size: 8vw auto;
}

#s_ajikan .column_left_align .text p,
#s_ajikan .column_right_align .text p {
	padding: 4vh 0 6vh 0;
	line-height: 2em;
	margin-top: 0.3vh;
	width: 100%;
}


/*　宿坊での過ごし方
ー-------------------------------------------------*/
#s_flow .view {
	background: url(../img/shukubou/main_image_flow.jpg) no-repeat bottom center;
	background-size: cover;
}

#s_flow .read {
	margin-left: 5vw;
	margin-bottom: 8vh;
}

#s_flow .line_red,
#s_flow .line_blue {
	width: 90vw;
	margin: 0 auto;
}

#s_flow .line_red {
	background: url(../img/shukubou/border_red_blue.gif),
		url(../img/shukubou/border_red.gif);
	background-repeat: no-repeat, repeat-y;
	background-position: 4.7vw bottom, 4.7vw top;
	background-size: 0.4vw auto, 0.4vw auto;
}

#s_flow .line_blue {
	background: url(../img/shukubou/border_blue.gif) no-repeat 4.7vw top;
	background-size: 0.4vw 83%;
}

#s_flow #contents h2 {
	font-size: 2vw;
	color: #fff;
	width: 10vw;
	height: 3vw;
	line-height: 3.3vw;
	text-align: center;
	margin-bottom: 4vw;
}

#s_flow #contents .line_red h2 {
	background: #b83f3f;
}

#s_flow #contents .line_blue h2 {
	opacity: 0;
	background: #3f89b8;
}

#s_flow #contents ul li {
	opacity: 0;
	clear: both;
	overflow: hidden;
	margin-left: 1vw;
	padding-bottom: 1.5vw;
	padding-top: 5vw;
}

#s_flow #contents .time {
	float: left;
	width: 7.7vw;
	height: 7.7vw;
	line-height: 7.8vw;
	text-align: center;
	position: relative;
}

#s_flow #contents .line_red .time {
	background: url(../img/shukubou/time_icon_red.svg) no-repeat center;
	background-size: 100% auto;
}

#s_flow #contents .line_blue .time {
	background: url(../img/shukubou/time_icon_blue.svg) no-repeat center;
	background-size: 100% auto;
}

#s_flow #contents .time span {
	display: inline-block;
	text-align: center;
	font-size: 1.8vw;
	font-weight: bold;
	color: #fff;
	font-family: Arial, sans-serif;
}

#s_flow #contents .text {
	float: left;
	width: 44vw;
	margin: 3.1vw 0 0 2vw;
	position: relative;
}

#s_flow #contents .text_2 {
	clear: both;
	display: table;
	width: 87%;
	padding-left: 13%;
	vertical-align: middle;
}

#s_flow #contents .text_2 p {
	display: table-cell;
	width: 41.5vw;
	vertical-align: middle;
}

#s_flow #contents .text h3 {
	font-size: 2vw;
	font-weight: normal;
	padding: 0 0 0.5vw 1vw;
}

#s_flow #contents .text span {
	font-size: 1.3vw;
	vertical-align: middle;
	letter-spacing: normal;
}

#s_flow .line_red .text h3 {
	color: #b83f3f;
	border-bottom: 1px solid #b83f3f;
}

#s_flow .line_blue .text h3 {
	color: #3f89b8;
	border-bottom: 1px solid #3f89b8;
}

#s_flow #contents .text p {
	padding: 1.5vw 3vw 0 1.5vw;
	line-height: 2;
	font-size: 1.1vw;
}

#s_flow #contents .img {
	float: right;
	width: 36vw;
	margin: 2.3vw 0 0 -1vw;
	position: relative;
}

#s_flow #contents .img img {
	width: 100%;
	height: auto;
}

#s_flow #contents .img img.small,
#s_flow #contents .text_2 img.small {
	width: 65%;
	height: auto;
}

#s_flow #contents ul li img.sp {
	display: none;
}

/*個別*/
#s_flow .flow_2,
#s_flow .flow_3 {
	margin-top: -4vw;
}

#s_flow .flow_2 .time,
#s_flow .flow_3 .time {
	background-size: 90% auto !important;
}

#s_flow .flow_2 .time span,
#s_flow .flow_3 .time span {
	font-size: 1.7vw !important;
}

#s_flow .flow_2 .text h3,
#s_flow .flow_3 .text h3 {
	border: none;
}

#s_flow .flow_2 .img,
#s_flow .flow_3 .img {
	margin-top: 4vw !important;
}

#s_flow .flow_8 .time {
	background-size: 70% auto !important;
}

#s_flow .flow_13 .text img {
	display: block;
	width: 88% !important;
	margin: 2.1vw 0 0 1.5vw;
}

#s_flow .flow_14 .text img {
	display: block;
	width: 88% !important;
	margin: 0.2vw 0 0 1.5vw;
}

/*　客室
ー-------------------------------------------------*/
#s_rooms .view {
	background: url(../img/shukubou/main_image_rooms.jpg) no-repeat bottom center;
	background-size: cover;
}

#s_rooms .renewal-banner {
	opacity: 0;
	width: 93.75vw;
	margin: 4.1667vw auto 5.21vw;
}

#s_rooms .renewal-banner a div {
	position: relative;
}

#s_rooms .renewal-banner a div::before,
#s_rooms .renewal-banner a div::after {
	content: '';
	position: absolute;
	right: 16.3vw;
	bottom: 2.6vw;
	display: block;
	width: 2.6vw;
	height: 9.79vw;
	background: url(../img/shukubou/bnr_honkan_btn.webp) no-repeat left top;
	background-size: 100% auto;
}

#s_rooms .renewal-banner a div::after {
	opacity: 0;
	background: url(../img/shukubou/bnr_honkan_btn2.webp) no-repeat left top;
	background-size: 100% auto;
	transition: opacity .5s;
}

#s_rooms .renewal-banner a:hover div::after {
	opacity: 1;
}

#s_rooms .renewal-banner img {
	width: 100%;
	height: auto;
}

#s_rooms .renewal-banner a:hover,
#s_rooms .renewal-banner a img:hover {
	opacity: 1 !important;
}

/* 客室 */
#s_rooms .rooms_row01 {
	background: url(../img/shukubou/img_rooms_bgpattern_01.png);
	background-size: contain;
	margin-top: 4.17vw;
	height: 42.08vw;
}

#s_rooms .rooms_row01 #head_special,
#s_rooms .rooms_row01 h3 {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: tb-rl;
	writing-mode: vertical-rl;
}

#s_rooms .rooms_row01 #head_special {
	opacity: 0;
	font-size: 1.77vw;
	width: 4.01vw;
	height: 27.7%;
	text-align: center;
	line-height: 4.01vw;
	background: #a73836;
	font-weight: bold;
	color: #ffffff;
}

/* IE10 */
#s_rooms .rooms_row01 #head_special:not(:target) {
	line-height: 4.7vw\9;
}

/* IE11 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
	#s_rooms .rooms_row01 #head_special:not(:target) {
		line-height: 4.7vw;
	}
}

#s_rooms .rooms_row01 h3 {
	opacity: 0;
	padding-top: 5vw;
	font-size: 3.54vw;
	width: 3.54vw;
	display: inline-block;
	margin-right: 3.13vw;
	margin-left: 3.13vw;
}

#s_rooms .rooms_row01 h3 span {
	margin-bottom: 1.56vw;
	font-size: 1.77vw;
}

#s_rooms .rooms_row01 .room_img {
	width: 56.2%;
}

#s_rooms .rooms_row02,
#s_rooms .rooms_row03 {
	flex-wrap: wrap !important;
	justify-content: space-between;
}

#s_rooms .rooms_row02 .row02_child,
#s_rooms .rooms_row03 .row03_child {
	opacity: 0;
	height: 28.65vw;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-flow: row-reverse;
	background: url(../img/shukubou/img_rooms_bgpattern_02.png);
	background-size: contain;
	margin-top: 2.81vw;
	width: 48.4%;
}

#s_rooms .rooms_row02 .room_img,
#s_rooms .rooms_row03 .room_img {
	width: 75.9%;
}

#s_rooms .rooms_row04 {
	background: url(../img/shukubou/img_rooms_bgpattern_04.png);
	background-size: contain;
	height: 42.97vw;
	margin-top: 5.94vw;
	margin-bottom: 5.83vw;
}

#s_rooms .rooms_row04 .room_img {
	height: 76%;
	align-self: center;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-flow: row-reverse;
	margin: 0 3% 0 4.83%;
	max-width: 85%;
}

#s_rooms .rooms_row04 .room_img img {
	width: 38vw;
	height: auto;
	opacity: 0;
}

#s_rooms .rooms_row04 .room_img img:first-child {
	align-self: flex-end;
}

#s_rooms .rooms_row04 .room_img img:last-child {
	align-self: flex-start;
}

#s_rooms .rows {
	opacity: 0;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-flow: row-reverse;
	width: 93.75vw;
	margin-left: auto;
	margin-right: auto;
	align-items: flex-start;
}

#s_rooms .vertical_header {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: tb-rl;
	writing-mode: vertical-rl;
	margin-left: 2.46vw;
	margin-right: 3vw;
	padding-top: 5vw;
	font-size: 2.08vw;
	width: 2.08vw;
	height: 81%;
	position: relative;
	letter-spacing: .2em;
}

/* IE10 */
#s_rooms .vertical_header:not(:target) {
	line-height: 1.4em\9;
}

/* IE11 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
	#s_rooms .vertical_header:not(:target) {
		line-height: 1.4;
	}
}

#s_rooms .rooms_row01 .vertical_header,
#s_rooms .rooms_row01 .vertical_text,
#s_rooms .rooms_row01 .img_box {
	opacity: 0;
}

#s_rooms .vertical_header::before {
	position: absolute;
	content: '';
	display: block;
	width: 0.63vw;
	height: 4.01vw;
	background: #c7b370;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}

#s_rooms .vertical_text {
	margin-top: -2vw;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: tb-rl;
	writing-mode: vertical-rl;
	height: 81%;
	padding-top: 5vw;
	font-size: 1.09vw;
	line-height: 2.55;
	font-weight: bold;
	width: 17.8888%;
}

#s_rooms .img_box {
	align-self: center;
	position: relative;
	margin-left: 2.6vw;
}

#s_rooms .img_box img {
	width: 100%;
	height: auto;
}

#s_rooms .img_box:hover .img_box_popup {
	opacity: 1;
}

#s_rooms .img_box_popup {
	transition: opacity .8s;
	opacity: 0;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0, 95, 42, 0.8);
	cursor: pointer;
}

#s_rooms .img_box_inner {
	position: relative;
}

#s_rooms .img_box_inner .btn {
	width: 22vw;
	margin: 30% auto 0;
	position: relative;
	background: #fff;
	border-radius: 5px;
	transition: opacity .3s;
}

#s_rooms .rooms_row01 .vertical_text {
	margin-top: 0;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: tb-rl;
	writing-mode: vertical-rl;
	height: 81%;
	padding-top: 5vw;
	font-size: 1.8vw;
	line-height: 1.8;
	font-weight: bold;
	width: 17.8888%;
}

#s_rooms .rooms_row02 .img_box_inner .btn,
#s_rooms .rooms_row03 .img_box_inner .btn {
	margin: 27% auto 0;
}

#s_rooms .img_box_inner .btn:hover {
	opacity: .8;
}

#s_rooms .img_box_inner .btn a {
	font-size: 1.56vw;
	color: #005e2a;
	text-align: center;
	display: block;
	padding: 1.2vw 0;
}

/* IE10 */
#s_rooms .img_box_inner .btn a:not(:target) {
	padding-top: 1.4vw\9;
	padding-bottom: 1vw\9;
}

/* IE11 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
	#s_rooms .img_box_inner .btn a:not(:target) {
		padding-top: 1.4vw;
		padding-bottom: 1vw;
	}
}

#s_rooms .img_box_inner .btn::after {
	position: absolute;
	display: block;
	content: '';
	background: url(../img/shukubou/popup_btn_arrow.svg) no-repeat;
	width: 5.2%;
	height: 1.3vw;
	background-size: 90% auto;
	right: 5%;
	top: 50%;
	transform: translateY(-50%);
}

#s_rooms .img_box_inner .popup_text {
	font-size: 1.04vw;
	color: #fff;
	text-align: center;
	margin-top: 1.04vw;
}

#s_rooms .img_box_inner .popup_text a {
	color: #fff;
	text-decoration: underline;
}

/*　お知らせ
ー-------------------------------------------------*/
#news #page_main_view {
	background: #000 url(../img/news/main_img_news.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#news #page_main_view_blur {
	background: #000 url(../img/news/main_img_news_2.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#news #contents {
	height: auto;
	overflow: hidden;
}

#news #contents ul {
	opacity: 0;
	width: 1240px;
	overflow: hidden;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 3.17vh;
}

#news #contents ul li {
	padding: 24px;
	border-top: 1px solid #7a7b7b;
	overflow: hidden;
}

#news #contents ul li:last-child {
	border-bottom: 1px solid #7a7b7b;
	margin-bottom: 10vh;
}

#news #contents ul li a {
	color: #c9171e;
	text-decoration: underline;
}

#news #contents ul li p {
	float: left;
	font-size: 18px;
	line-height: 2;
}

#news #contents ul li p.width960 {
	width: 960px;
}

#news #contents ul li p span {
	display: block;
	padding-bottom: 8px;
}

#news #contents ul li img {
	float: right;
	display: block;
	margin-left: 8px;
}

/*　交通アクセス
ー-------------------------------------------------*/
#access #page_main_view {
	background: #000 url(../img/access/main_img_access.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#access #page_main_view_blur {
	background: #000 url(../img/access/main_img_access_2.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#access #contents {
	height: auto;
	overflow: hidden;
}

#access section.inner {
	width: 90vw;
	border: 1px solid #000;
	box-sizing: border-box;
	line-height: 2;
	position: relative;
	background: rgba(255, 255, 255, 0.5);
	margin-left: auto;
	margin-right: auto;
}

#access section.inner::before {
	content: '';
	display: block;
	height: 0.87vh;
	width: 5.7vw;
	background: #c9171e;
	position: absolute;
	top: -0.1vh;
	left: 0;
	right: 0;
	margin: 0 auto;
}

#access section.inner::after {
	content: '';
	display: block;
	height: 0.38vh;
	width: 5.7vw;
	background: #c9171e;
	position: absolute;
	top: 0.96vh;
	left: 0;
	right: 0;
	margin: 0 auto;
}

#access section.inner h2 {
	font-size: 40px;
	margin-top: 50px;
}

#access section.googlemap {
	opacity: 0;
	margin-bottom: 8vh;
}

#access section.googlemap iframe {
	width: 80%;
	height: 60vh;
	display: block;
	margin: 50px auto 0;
}

#access section.googlemap .address {
	width: 80%;
	margin: 0 auto;
	overflow: hidden;
	margin-top: 2.21vh;
	padding-bottom: 4.81vh;
	font-family: "游ゴシック", sans-serif;
}

#access section.googlemap .address p:first-child {
	display: inline-block;
	font-size: 16px;
	float: left;
}

#access section.googlemap .address p:last-child {
	display: inline-block;
	text-align: right;
	font-size: 16px;
	float: right;
}

#access section.googlemap .address p:last-child a:link,
#access section.googlemap .address p:last-child a:visited {
	color: #e50114;
	text-decoration: underline;
}

#access section.loadmap {
	opacity: 0;
	height: auto;
	margin-bottom: 10vh;
	font-size: 1vw;
	text-align: center;
	padding-bottom: 4vw;
}

#access section.loadmap img {
	height: auto;
	display: block;
	margin: 50px auto 0;
}

#access section.loadmap img.sp {
	display: none;
}

#access section.loadmap h3 {
	color: #c9171e;
	margin-bottom: 1.5vw;
}

#access section.loadmap .btn_root_google {
	display: inline-block;
	margin: 0 auto;
	background: #c9171e url(../img/common/arrow.svg) no-repeat right 1vw center;
	background-size: 3% auto;
	color: #fff;
	text-align: center;
	font-size: 1vw;
	padding: 1vh 2.5vw 1vh 1.5vw;
	letter-spacing: normal;
	border-radius: 0.3vw;
	-webkit-border-radius: 0.3vw;
	-moz-border-radius: 0.3vw;
	margin-top: 1vw;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

#access section.loadmap .btn_root_google:hover {
	opacity: 1;
	background-color: #f00f18;
	background-position: right 0.8vw center;
}

#access section.howto {
	opacity: 0;
	margin-bottom: 13.94vh;
}

#access section.howto .howto_inner {
	width: 1050px;
	margin: 0 auto;
	overflow: hidden;
}

#access section.howto .howto_inner:first-of-type {
	border-bottom: 2px solid #999999;
}

#access section.howto .text_area {
	width: 100%;
}

#access section.howto .text_area div {
	text-align: center;
	margin-bottom: 50px;
	width: auto;
	text-align: center;
	padding: 40px 0;
	background: #fff;
}

#access section.howto .text_area h3 {
	font-size: 26px;
	color: #c9171e;
	padding-top: 50px;
	padding-bottom: 30px;
}

#access section.howto .text_area h4 {
	font-size: 22px;
	font-weight: bold;
	font-family: "游ゴシック", sans-serif;
	padding-bottom: 2.31vh;
}

#access section.howto .text_area p {
	font-size: 16px;
	font-family: "游ゴシック", sans-serif;
	padding-bottom: 50px;
}

#access section.howto .text_area a {
	display: block;
	margin-top: 0.5vw;
	color: #c9171e;
	font-weight: bold;
}

#access section.howto .text_area a.nankai {
	display: inline-block;
	text-indent: 0;
	text-decoration: underline;
}

#access section.howto .text_area a.nankai:hover {
	text-decoration: none;
}

/*　周辺マップ
ー-------------------------------------------------*/
#map #page_main_view {
	background: #000 url(../img/map/main_img_map.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#map #page_main_view_blur {
	background: #000 url(../img/map/main_img_map_2.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#map #contents {
	height: auto;
	overflow: hidden;
	font-size: 0.83vw;
}

#map main {
	width: 1240px;
	margin: 0 auto;
}

#map main::before {
	content: '';
	display: block;
	position: absolute;
}

#map main p {
	font-size: 16px;
	text-align: right;
	padding-top: 1.35vw;
	padding-bottom: 2.5vw;
}

#map main a:link,
#map main a:visited {
	text-decoration: underline;
	color: #c9171e;
}

#map main #map_slideshow {
	position: relative;
	overflow: hidden;
	border: 1px solid #000;
}

#map main #map_slideshow p {
	height: 648px;
	padding: 0;
	border: 6px solid #fff;
	overflow: hidden;
	position: relative;
}

#map main #map_slideshow p img {
	position: absolute;
	left: 0;
	top: 0;
}

#map main .slide_btn {
	width: 43px;
	height: 43px;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.7);
	position: absolute;
	top: 48%;
	box-shadow: 0px 4px 6px -5px #000000;
	-moz-box-shadow: 0px 4px 6px -5px #000000;
	-webkit-box-shadow: 0px 4px 6px -5px #000000;
}

#map main #btn_slide_right {
	right: 24px;
}

#map main #btn_slide_right::after {
	display: block;
	content: '';
	border-left: 2px solid #fff;
	border-top: 2px solid #fff;
	position: absolute;
	height: 15px;
	width: 15px;
	transform: rotate(135deg);
	left: 10px;
	top: 13px;
	z-index: 1;
}

#map main #btn_slide_left {
	left: 24px;
}

#map main #btn_slide_left::after {
	display: block;
	content: '';
	border-left: 2px solid #fff;
	border-top: 2px solid #fff;
	position: absolute;
	height: 15px;
	width: 15px;
	transform: rotate(-45deg);
	left: 16px;
	top: 13px;
	z-index: 1;
}

#map section.inner {
	width: 1240px;
	box-sizing: border-box;
	line-height: 2;
	margin-left: auto;
	margin-right: auto;
	border-top: 1px solid #999999;
}

#map section.time_upside {
	overflow: hidden;
	border-top: none;
	padding-bottom: 3.85vh;
}

#map section.time_upside ul {
	float: left;
	width: 500px;
}

#map section.time_upside ul:last-child {
	width: 520px;
}

#map section.time_upside ul li {
	font-size: 16px;
	padding-left: 1.2vw;
}

#map section.time_upside ul li:first-child {
	font-size: 24px;
	font-weight: bold;
}

#map section.time_downside {
	padding-top: 3.85vh;
	padding-left: 1.2vw;
}

#map section.time_downside h3 {
	font-size: 20px;
	padding-bottom: 2.21vh;
}

#map section.time_downside p {
	font-size: 16px;
	padding-bottom: 3.85vh;
}

#map section.time_table {
	padding-left: 1.2vw;
}

#map section.time_table p {
	font-size: 16px;
	padding-top: 3.85vh;
	padding-bottom: 9.62vh;
}

#map section.time_table a:link,
#map section.time_table a:visited {
	text-decoration: underline;
	color: #c9171e;
}


/*　宿泊のご案内
ー-------------------------------------------------*/
#lodging #page_main_view {
	background: #000 url(../img/lodging/main_img_lodging.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#lodging #page_main_view_blur {
	background: #000 url(../img/lodging/main_img_lodging_2.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#lodging #contents {
	opacity: 0;
	background: #11290f url(../img/lodging/background_lodging.jpg) no-repeat center top;
	background-size: 100% auto;
	font-size: 1.17vw;
	color: #fff;
}

#lodging a:link,
#lodging a:visited {
	color: #fff;
}

#lodging .contents_inner {
	width: 76vw;
	margin: 0 auto;
	clear: both;
	overflow: hidden;
}

#lodging main {
	overflow: hidden;
}

#lodging main ul {
	width: 23vw;
	float: left;
}

#lodging main ul.h2_text {
	width: 30vw;
	float: left;
}

#lodging main li {
	opacity: 0;
}

#lodging main li:not(.main_text) {
	margin-bottom: 2.8vw;
}

#lodging main li:not(.main_text) img {
	width: 100%;
	height: auto;
}

#lodging main li a {
	display: block;
	text-align: center;
}

#lodging main li a:hover {
	opacity: 1;
	background: url(../img/lodging/btn_white.png) no-repeat left top;
	background-size: 100% auto;
}

#lodging main li a:hover img {
	opacity: 0.8;
}

#lodging main li a p {
	display: inline-block;
	margin-top: 1.41vw;
	font-size: 1.46vw;
	font-weight: bold;
	text-shadow: 0 0 0.16vw rgba(0, 0, 0, 0.5);
	position: relative;
	margin-left: 1vw;
}

#lodging main li p span {
	display: block;
	font-size: 1.03vw;
	padding-top: 1.15vh;
	position: relative;
}

#lodging main li a p::before {
	content: '';
	position: absolute;
	display: block;
	background: url(../img/lodging/link_icon.png) no-repeat top center;
	width: 1.67vw;
	height: 1em;
	background-size: 1.67vw auto;
	left: -2vw;
}

#lodging main li.li_4 a p::before {
	left: -1vw;
}

#lodging main h2 {
	margin-top: 1vw;
}

#lodging main h2 img {
	width: 5.7vw;
	height: auto;
}

#lodging section.reservation {
	opacity: 0;
	width: 43.65vw;
	margin: 0 auto;
}

#lodging section.reservation p {
	text-align: center;
	color: #d9b43d;
	line-height: 1.5;
	text-shadow: 0 0 0.16vw rgba(0, 0, 0, 0.5);
	margin-bottom: 0.5vw;
}

#lodging section.reservation p:first-child {
	font-size: 1.5vw;
}

#lodging section.reservation p span a {
	color: #d9b43d;
	text-decoration: underline;
}

#lodging section.reservation p span a:hover {
	text-decoration: none;
}

#lodging section.reservation img {
	display: block;
	max-width: 43.65vw;
	height: auto;
	padding-bottom: 2.12vh;
}

#lodging section.reservation p.attention {
	font-size: 1.1vw;
	color: #fff;
	padding-top: 5vh;
}

#lodging section.bottom_area {
	opacity: 0;
	margin: 5vw 0;
	overflow: hidden;
}

#lodging section.bottom_area .info_bottom {
	width: 36vw;
}

#lodging section.bottom_area .info_bottom h3 {
	font-size: 1.6vw;
	padding-bottom: 2.12vh;
	border-bottom: 1px solid rgba(255, 255, 255, 0.5);
	text-align: center;
	margin-bottom: 3.27vh;
	line-height: 1.5;
}

#lodging section.bottom_area .info_bottom img {
	display: block;
	width: 100%;
	height: auto;
	padding-bottom: 2.4vh;
}

#lodging section.bottom_area .info_bottom:first-child {
	float: left;
}

#lodging section.bottom_area .info_bottom:last-child {
	float: right;
}

#lodging section.bottom_area .info_bottom p {
	font-size: 1.1vw;
	line-height: 1.5;
	text-align: center;
	font-weight: bold;
	text-shadow: 0 0 0.16vw rgba(0, 0, 0, 0.5);
}

#lodging section.bottom_area .info_bottom p span {
	color: #d9b43d;
}


/*　精進料理
ー-------------------------------------------------*/
#shojinryori #page_main_view {
	background: #000 url(../img/shojinryori/main_img_shojinryori.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#shojinryori #page_main_view_blur {
	background: #000 url(../img/shojinryori/main_img_shojinryori_2.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#shojinryori #contents {
	font-size: 1.17vw;
	color: #000;
	width: 100%;
	padding-bottom: 10.96vh;
	/*各季節のスタイル*/
}

#shojinryori #contents .contents_inner {
	display: table;
}

#shojinryori #contents .contents_inner:not(:last-child) {
	margin-bottom: 10.96vh;
}

#shojinryori #contents .img_area {
	display: table-cell;
	width: 50vw;
	vertical-align: middle;
	overflow: hidden;
}

#shojinryori #contents .img_area img {
	width: 100%;
	display: block;
	opacity: 0;
}

#shojinryori .menu_spring .img_area img,
#shojinryori .menu_autumn .img_area img {
	margin-left: -10vw;
}

#shojinryori .menu_summer .img_area img,
#shojinryori .menu_winter .img_area img {
	margin-left: 10vw;
}

#shojinryori #contents .text_area {
	opacity: 0;
	display: table-cell;
	width: 50vw;
	line-height: 2;
	vertical-align: middle;
}

#shojinryori #contents .text_area .text_area_inner {
	width: 34vw;
	margin: 0 auto;
}

#shojinryori #contents .text_area h2 {
	opacity: 0;
	font-size: 5vw;
	background: url(../img/shojinryori/h2_back.png) no-repeat;
	background-position: 12vw 0;
	background-size: 8vw auto;
	width: 100%;
}

#shojinryori #contents .text_area h3 {
	opacity: 0;
	text-align: center;
	width: 100%;
	padding: 1.2vw 0;
	border-top: 1px solid #b0acac;
	border-bottom: 1px solid #b0acac;
	margin: 1.2vw 0;
}

#shojinryori #contents .text_area p {
	opacity: 0;
	width: 100%;
}

#shojinryori #contents .text_area ul {
	opacity: 0;
	overflow: hidden;
	margin-top: 2vw;
	width: 100%;
}

#shojinryori #contents .text_area ul li {
	width: 16vw;
}

#shojinryori #contents .text_area ul li img {
	width: 100%;
	height: auto;
}

#shojinryori #contents .text_area ul li:first-child {
	float: left;
}

#shojinryori #contents .text_area ul li:last-child {
	float: right;
}

#shojinryori #contents .spring {
	background: url(../img/shojinryori/text_bg_spring.png) center top no-repeat;
	background-size: cover;
}

#shojinryori #contents .spring h2 {
	color: #ee827c;
}

#shojinryori #contents .summer {
	background: url(../img/shojinryori/text_bg_summer.png) center top no-repeat;
	background-size: cover;
}

#shojinryori #contents .summer h2 {
	color: #69b2e0;
}

#shojinryori #contents .fall {
	background: url(../img/shojinryori/text_bg_fall.png) center top no-repeat;
	background-size: cover;
}

#shojinryori #contents .fall h2 {
	color: #f39800;
}

#shojinryori #contents .winter {
	background: url(../img/shojinryori/text_bg_winter.png) center top no-repeat;
	background-size: cover;
}

#shojinryori #contents .winter h2 {
	color: #93a1d2;
}


/******** 20240304追記 **********/
#shojinryori #contents .contents_inner.omoi-block {
	margin-bottom: 0;
}

#shojinryori #contents .omoi-block .text_area {
	box-sizing: border-box;
	/* padding: 8.2vw 5.2vw; */
	padding: 6vw 2.5vw 4vw 10vw;
	font-size: 0.95vw;
	width: 49vw;
}

#shojinryori #contents .omoi-block .text_area h2 {
	font-size: 2vw;
	text-align: left;
	margin-bottom: 1em;
	background: none;
}

#shojinryori #contents .omoi-block .text_area h2 .orange {
	color: #EB8B37;
}

#shojinryori #contents .omoi-block .text_area h2 .green {
	color: #47883A;
}

#shojinryori #contents .omoi-block .text_area p:not(:last-child) {
	margin-bottom: 1.25em;
}

#shojinryori #contents .omoi-block .img_area {
	vertical-align: top;
	width: 51vw
}

#shojinryori #contents .nouka-block {
	padding: 0 5vw 5.5vw;
}

#shojinryori #contents .nouka-block .inner {
	background-color: #fff;
	max-width: 1666px;
	padding: 4.5vw 6vw 5vw 6vw;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	line-height: 2;
	font-size: 0.95vw;
}

#shojinryori #contents .nouka-block h2,
#shojinryori #contents .nouka-block .fl1,
#shojinryori #contents .nouka-block .fl2,
#shojinryori #contents .nouka-block .fl3 p,
#shojinryori #contents .nouka-block .fl3 .img-box {
	opacity: 0;
}

#shojinryori #contents .nouka-block h2 {
	font-size: 2vw;
	width: 2em;
	padding-right: 0.5em;
	border-right: 3px solid #CDB13B;
}

#shojinryori #contents .nouka-block img {
	width: 100%;
}

#shojinryori #contents .nouka-block .text-block {
	width: 88%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#shojinryori #contents .nouka-block .fl1 {
	width: 100%;
	margin-bottom: 2em;
}

#shojinryori #contents .nouka-block .fl2 {
	width: 27%;
}

#shojinryori #contents .nouka-block .fl3 {
	width: 69%;
}

#shojinryori #contents .nouka-block .fl3 .img-box {
	display: flex;
	justify-content: space-between;
	margin-top: 1.5em;
}

#shojinryori #contents .nouka-block .fl3 .img {
	width: 32.5%;
}

/* end of 20240304追記 **********/


/*　昼食のご案内
ー-------------------------------------------------*/
#lunch #page_main_view {
	/* background: #000 url(../img/lunch/main_img_lunch.jpg) no-repeat center; 20250723*/
	background: #000 url(../img/lunch/main_img_lunch.jpg) no-repeat center bottom;
	background-size: cover;
	/* background-attachment: fixed; 20250723*/
	top: 0;
	left: 0%;
	width: 100%;
	height: 100vh;
}

#lunch #page_main_view_blur {
	/* background: #000 url(../img/lunch/main_img_lunch_2.jpg) no-repeat center; 20250723*/
	background: #000 url(../img/lunch/main_img_lunch_2.jpg) no-repeat center bottom;
	background-size: cover;
	/* background-attachment: fixed; 20250723*/
	top: 0;
	left: 0%;
	width: 100%;
	height: 100vh;
}

#lunch #contents {
	opacity: 0;
	background-size: cover;
	font-size: 1.17vw;
	color: #000;
	width: 100%;
	line-height: 2;
}

#lunch main {
	height: 89.13vh;
	background: url(../img/lunch/img_middle.jpg) no-repeat top center;
	background-size: cover;
}

#lunch main .text_area {
	width: 34.53vw;
	margin-left: 5.52vw;
}

#lunch main h2 {
	opacity: 0;
	font-size: 2.34vw;
	text-align: left;
	padding-left: 1em;
	text-indent: -1em;
	padding-top: 18.65vh;
	margin-left: -5vw;
}

#lunch main p {
	opacity: 0;
	width: 35.5vw;
	padding-top: 8.08vh;
	margin-left: -5vw;
}

#lunch section.menu_list {
	opacity: 0;
	background: #f0ecec;
	padding-bottom: 10vh;
}

#lunch section.menu_list>p {
	color: #c00000;
	text-align: center;
	padding-top: 7.4vh;
	font-size: 1.03vw;
}

#lunch section.menu_list>p a {
	text-decoration: underline;
}

#lunch section.menu_list>p a:hover {
	text-decoration: none;
}

#lunch section.menu_list>p.catch {
	color: #333;
	font-size: 1.6vw;
}

#lunch section.tuika_copy>p {
	color: #000;
	width: 100%;
	max-width: 1240px;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
	padding-top: 7.4vh;
    padding-bottom: 7.4vh;
	text-align: center;
	font-size: 1.03vw;
}
#lunch section.tuika_copy>p.catch {
	color: #333;
	font-size: 1.6vw;
}

#lunch section.menu_list ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
}

#lunch section.menu_list li {
	opacity: 0;
	width: 33.33vw;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-flow: column;
	align-content: center;
	align-items: center;
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	padding: 9.4vw 0 7.3vw;
}

#lunch section.menu_list li:first-child {
	background-image: url(../img/lunch/text_bg_pink.png);
}

#lunch section.menu_list li:nth-child(2) {
	background-image: url(../img/lunch/text_bg_green.png);
}

#lunch section.menu_list li:last-child {
	background-image: url(../img/lunch/text_bg_yellow.png);
}

#lunch section.menu_list li h3 {
	font-size: 2.34vw;
	text-align: center;
	margin-bottom: 8.8vh;
}

/*
#lunch section.menu_list li p.text {
  width: 24vw;
  margin-bottom: 4.81vh;
  margin-left: auto;
  margin-right: auto;
  letter-spacing: normal;
}
*/
#lunch section.menu_list li p.price {
	text-align: center;
	font-size: 1.03vw;
	padding-bottom: 8.8vh;
}

#lunch section.menu_list li .link_btn {
	width: 22vw;
	margin: 0 auto;
	text-align: center;
	position: relative;
	background-image: linear-gradient(to top, #030000, #444444);
	border-radius: 7px;
	padding-top: 1.44vh;
	padding-bottom: 1.44vh;
	transition: opacity .3s ease-in-out;
}

/* IE10 */
#lunch section.menu_list li .link_btn:not(:target) {
	padding-top: 1.8vh\9;
	padding-bottom: 1vh\9;
}

/* IE11 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
	#lunch section.menu_list li .link_btn:not(:target) {
		padding-top: 1.8vh;
		padding-bottom: 1vh;
	}
}

#lunch section.menu_list li .link_btn a {
	font-size: 1.2vw;
	font-weight: bold;
	color: #fff;
	display: block;
	margin-left: -1em;
}

#lunch section.menu_list li .link_btn a:hover {
	opacity: 1;
}

#lunch section.menu_list li .link_btn::after {
	display: block;
	content: '';
	position: absolute;
	width: 1.3vw;
	height: 2.4vh;
	background: url(../img/lunch/link_btn_icon.png) no-repeat top center;
	background-size: 1.15vw auto;
	right: 5%;
	top: 38%;
}

#lunch section.menu_list li .link_btn:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
}

#lunch .bottom_img {
	opacity: 0;
}

#lunch .bottom_img ul {
	width: 100%;
	height: 15vw;
	overflow: hidden;
}

#lunch .bottom_img ul li {
	height: 15vw;
	width: auto;
	float: left;
}

#lunch .bottom_img ul li img {
	height: 100%;
	width: auto;
}

/* スライダー　20250723 */
#lunch .slider-wrapper {
  width: 100%;  /* 450px × 4枚 */
  height: 300px;
  overflow: hidden;
  position: relative;
  border: 0px;
}

#lunch .slider-track {
  display: flex;
  width: calc(1800px * 2);  /* 2セット分 */
  animation: slide-left 30s linear infinite;
}

#lunch .slider-set {
  display: flex;
}

#lunch .slider-set img {
  width: 450px;
  height: 300px;
  object-fit: cover;
}

/* アニメーション */
@keyframes slide-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-1800px); /* 1セット分を左へ */
  }
}


/*　当サイトについて
ー-------------------------------------------------*/
#site main {
	width: 960px;
	margin: 0 auto 100px;
}

#site main h1 {
	text-align: center;
	font-size: 32px;
	background-repeat: no-repeat;
	background-position: center center;
	letter-spacing: 0;
	padding-top: 100px;
	padding-bottom: 100px;
	background-image: url(../img/common/header_bg/hbg_site.png);
}

#site main h2 {
	font-size: 24px;
	text-align: left;
	margin-bottom: 20px;
}

#site main h3 {
	font-size: 16px;
	line-height: 2;
	margin-bottom: 8px;
}

#site main p {
	font-size: 16px;
	line-height: 2;
	margin-bottom: 50px;
}

#site main p a {
	color: #000000;
	text-decoration: underline;
}

#site main p a:hover {
	text-decoration: none;
}

#site main h2.title01+p {
	margin-bottom: 25px;
}

#site main table {
	width: 100%;
	margin-bottom: 48px;
	border: 1px solid #7e7e7e;
	font-size: 16px;
	text-align: left;
	line-height: 2;
}

#site main table tr {
	border-bottom: 1px solid #7e7e7e;
}

#site main table tr th,
#site main table tr td {
	padding: 16px;
	vertical-align: top;
}

#site main table tr th {
	width: 195px;
	background: url(../img/faq/question_bg.png) repeat-y;
	box-sizing: border-box;
	border-right: 1px solid #7e7e7e;
}

#site main table tr td {
	background-color: #fff;
}


/*　サイトマップ
ー-------------------------------------------------*/

#sitemap main {
	width: 960px;
	margin: 0 auto;
}

#sitemap main h1 {
	text-align: center;
	font-size: 32px;
	background-repeat: no-repeat;
	background-position: center center;
	letter-spacing: 0;
	padding-top: 100px;
	padding-bottom: 100px;
	background-image: url(../img/common/header_bg/hbg_sitemap.png);
}

#sitemap main ul.parent {
	width: 970px;
	margin: 0 auto;
}

#sitemap main ul.parent>li {
	border-top: 1px solid #7e7e7e;
	padding-bottom: 24px;
	padding-top: 23px;
	text-align: center;
}

#sitemap main ul.parent>li:last-child {
	padding-top: 0;
	margin-bottom: 105px;
	border-bottom: 1px solid #7e7e7e;
}

#sitemap main ul.parent li a:link,
#sitemap main ul.parent li a:visited {
	font-weight: bold;
	font-size: 20px;
	text-align: center;
	color: #000;
}

#sitemap main ul.parent ul.child li {
	border: none;
	margin-top: 24px;
}

#sitemap main ul.parent ul.child a {
	font-size: 16px;
}

#sitemap main a:hover {
	color: #c9171e !important;
}

/*　プライバシーポリシー
ー-------------------------------------------------*/
#privacy main {
	width: 960px;
	margin: 0 auto;
}

#privacy main p,
#privacy main ul li,
#privacy .address p {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

#privacy main a:link,
#privacy main a:visited {
	color: #c9171e;
	text-decoration: underline;
}

#privacy main a:link:hover,
#privacy main a:visited:hover {
	text-decoration: none;
}

#privacy main h1 {
	text-align: center;
	font-size: 32px;
	background-repeat: no-repeat;
	background-position: center center;
	letter-spacing: 0;
	padding-top: 100px;
	padding-bottom: 100px;
	background-image: url(../img/common/header_bg/hbg_privacy.png);
}

#privacy main h2 {
	font-size: 24px;
	text-align: left;
	margin-bottom: 30px;
}

#privacy main p {
	font-size: 16px;
	line-height: 2;
	margin-bottom: 20px;
}

#privacy main li {
	font-size: 16px;
	line-height: 2;
	margin-bottom: 20px;
	padding-left: 1em;
	text-indent: -1em;
}

#privacy .address {
	width: 960px;
	margin: 0 auto;
	margin-bottom: 100px;
	padding-top: 20px;
}

#privacy .address h3 {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 18px;
}

#privacy .address p {
	line-height: 2;
	font-size: 16px;
}

#privacy .address p .sp {
	display: none;
}

/*　特定商取引に関する法律
ー-------------------------------------------------*/
#tokusho main {
	width: 960px;
	margin: 0 auto;
}

#tokusho main ul,
#faq main li,
#faq main p {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 16px;
}

#tokusho main h1 {
	text-align: center;
	font-size: 32px;
	padding-top: 100px;
	padding-bottom: 100px;
	line-height: 1.3;
	background-image: url(../img/common/header_bg/hbg_tokusho.png);
	background-repeat: no-repeat;
	background-position: center center;
}

#tokusho main table {
	margin-bottom: 110px;
}

#tokusho main table th,
#tokusho main table td {
	padding: 8px 16px;
	font-size: 16px;
	line-height: 2;
	border: 1px solid #7e7e7e;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

#tokusho main table th {
	text-align: left;
	white-space: nowrap;
	background: url(../img/faq/question_bg.png) repeat-y;
}

#tokusho main table td {
	background-color: #fff;
}

#tokusho main table td a {
	text-decoration: underline;
}

#tokusho main table td a:hover {
	text-decoration: none;
}

/*　疫病退散護摩木奉納　受付中
ー-------------------------------------------------*/
main#corona .image {
	display: flex;
	justify-content: space-between;
	margin-bottom: 44px;
}

main#corona .image img {
	width: 33%;
	height: auto;
}

main#corona h5 {
	font-size: 22px;
}

main#corona p {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 18px;
	line-height: 1.8;
}

/*　よくある質問
ー-------------------------------------------------*/
#faq main {
	width: 960px;
	margin: 0 auto;
}

#faq main ul,
#faq main li,
#faq main p {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 16px;
}

#faq main h1 {
	text-align: center;
	font-size: 32px;
	background-repeat: no-repeat;
	background-position: center center;
	letter-spacing: 0;
	padding-top: 100px;
	padding-bottom: 100px;
	background-image: url(../img/common/header_bg/hbg_faq.png);
}

#faq main h1+p {
	line-height: 2;
	margin-bottom: 30px;
}

#faq main ul {
	margin-bottom: 110px;
}

#faq main li {
	margin-bottom: 25px;
	border: 1px solid #7e7e7e;
}

#faq main li p {
	padding-top: 15px;
	padding-bottom: 15px;
	padding-left: 45px;
	padding-right: 5px;
	position: relative;
	line-height: 1.5;
}

#faq main li p.qes {
	background: url(../img/faq/question_bg.png) repeat-y;
}

#faq main li p.qes::before {
	display: block;
	position: absolute;
	content: 'Q.';
	color: #ff0000;
	font-size: 20px;
	font-weight: bold;
	left: 15px;
	top: 10px;
}

#faq main li p.ans {
	background: #fff;
}

#faq main li p.ans::before {
	display: block;
	position: absolute;
	content: 'A.';
	color: #50874f;
	font-size: 20px;
	font-weight: bold;
	left: 15px;
	top: 10px;
}


/*　お問い合わせ
ー-------------------------------------------------*/
#inquiry main {
	font-size: 16px;
	width: 960px;
	margin: 0 auto;
}

#inquiry main h1 {
	text-align: center;
	font-size: 32px;
	background-repeat: no-repeat;
	background-position: center center;
	letter-spacing: 0;
	padding-top: 100px;
	padding-bottom: 100px;
	background-image: url(../img/common/header_bg/hbg_inquiry.png);
}

#inquiry main button,
#inquiry main input[type="submit"] {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	padding: 10px 30px;
}

#inquiry main hr {
	border: none;
	border-top: 1px solid #7c7d7d;
}

#inquiry p.by_phone {
	font-weight: bold;
	height: 71px;
	border: 1px solid #7c7d7d;
	box-sizing: border-box;
	line-height: 71px;
	text-align: center;
	width: 592px;
	margin: 0 auto;
	background-image: url(../img/inquiry/text_bg_paper.png);
	background-repeat: no-repeat;
	margin-bottom: 40px;
}

#inquiry p.by_phone span {
	display: inline-block;
	margin-left: 35px;
	font-size: 30px;
	vertical-align: middle;
}

#inquiry .form_area {
	width: 915px;
	margin: 0 auto;
}

#inquiry .form_area h2 {
	font-size: 24px;
	margin-top: 40px;
	margin-bottom: 40px;
}

#inquiry .form_area p {
	letter-spacing: 0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

#inquiry .form_area p.caution {
	color: #c9171e;
	line-height: 1.6;
	margin-top: 15px;
}

#inquiry .form_area p.error {
	color: #c9171e;
	line-height: 1.6;
	margin-top: 15px;
	padding: 30px 0 0;
}

#inquiry .form_area input[type=text],
#inquiry .form_area textarea {
	background-image: linear-gradient(to bottom, #e9e9e9, #fff);
	border: 1px solid #767878;
	box-sizing: border-box;
}

#inquiry .form_area input[type=text] {
	height: 40px;
}

#inquiry .form_area textarea {
	resize: none;
}

#inquiry .form_area table {
	width: 100%;
	margin-top: 30px;
}

#inquiry .form_area tr {
	border: 1px solid #767878;
}

#inquiry .form_area th {
	background-image: url(../img/inquiry/text_bg_paper_green.png);
	background-repeat: no-repeat;
	background-color: rgba(201, 255, 165, 0.7);
	border-right: 1px solid #767878;
	text-align: left;
	width: 242px;
	padding-left: 20px;
	box-sizing: border-box;
	line-height: 1.5;
	font-weight: normal;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

#inquiry .form_area th span {
	color: #c9171e;
}

#inquiry .form_area th span.small {
	color: #000000;
}

#inquiry .form_area td {
	padding-top: 10px;
	padding-bottom: 10px;
	background: #fff;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

#inquiry .form_area td.name_area {
	text-align: right;
}

#inquiry .form_area label {
	display: inline-block;
}

#inquiry .form_area label input {
	width: 242px;
	margin-right: 24px;
	margin-left: 10px;
}

#inquiry .form_area td:not(.name_area) input {
	width: 620px;
	display: block;
	margin: 0 auto;
}

#inquiry .form_area td:not(.name_area) textarea {
	display: block;
	margin: 0 auto;
	width: 620px;
}

#inquiry .form_area .btn_area {
	text-align: center;
	padding-top: 30px;
	margin-bottom: 104px;
}

#inquiry .form_area button {
	display: inline-block;
}

#inquiry .form_area button+button {
	margin-left: 20px;
}

/* confirm */
#inquiry .confirm td {
	padding: 20px 12px;
}

#inquiry .confirm td.name_area {
	text-align: left;
}

#inquiry .confirm .btn_area form {
	display: inline-block;
}

#inquiry .confirm .btn_area form+form {
	margin-left: 20px;
}

/* thanks */
#inquiry .thanks p {
	text-align: center;
	font-size: 20px;
	line-height: 2;
	margin: 0 0 200px;
}

/*　採用情報
ー-------------------------------------------------*/
#recruit .anchor_point {
	width: 1px;
	height: 1px;
	background: transparent;
	position: absolute;
}

#recruit #page_main_view {
	background: #000 url(../img/recruit/main_image_recruit.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#recruit #page_main_view_blur {
	background: #000 url(../img/recruit/main_image_recruit_2.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
}

#recruit #content {
	width: 90.83333vw;
	margin: 0 auto;
}

#recruit .main_sections {
	margin-top: 4.16667vw;
	position: relative;
}

#recruit h2 {
	font-size: 2.34375vw;
	letter-spacing: 0.2em;
	text-align: left;
}

#recruit .body_texts {
	margin-top: 1.66667vw;
	font-size: 1.17188vw;
	line-height: 2;
	font-weight: bold;
	letter-spacing: 0.2em;
}

@supports (text-align: justify) {
	#recruit .body_texts {
		text-align: justify;
	}
}

@supports (text-justify: inter-ideograph) {
	#recruit .body_texts {
		text-justify: inter-ideograph;
	}
}

#recruit hr {
	border: none;
	margin-top: 4.16667vw;
	border-top: 1px solid #007b43;
}

#recruit .panels {
	width: 87.8125vw;
	margin: 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-bottom: 8.28125vw;
}

#recruit .panels .panel_items {
	opacity: 0;
	-webkit-transform: translateY(50%);
	-ms-transform: translateY(50%);
	transform: translateY(50%);
	-webkit-transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.8s;
	-o-transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.8s;
	transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.8s;
}

#recruit .panels.inView .panel_items {
	opacity: 1;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}

#recruit .panel_items {
	margin-top: 3.59375vw;
	width: 21.04167vw;
	height: 25.67708vw;
	background: #fff;
	-webkit-box-shadow: 0 0.15625vw 0.20833vw rgba(16, 45, 28, 0.35);
	box-shadow: 0 0.15625vw 0.20833vw rgba(16, 45, 28, 0.35);
	position: relative;
}

#recruit .panel_items::before,
#recruit .panel_items::after {
	content: '';
	display: block;
	position: absolute;
	width: 100%;
	height: 0.29271vw;
	left: 0;
}

#recruit .panel_items::before {
	top: 0;
	background: #d9b43d;
}

#recruit .panel_items::after {
	bottom: 0;
	background: #007b43;
}

#recruit .panel_items .body_texts {
	width: 15.20833vw;
	margin: 1.66667vw auto 0;
	letter-spacing: 0;
}

#recruit .panel_items h3 {
	font-size: 1.75521vw;
	color: #c9171e;
	text-align: center;
	padding-top: 2.5vw;
	letter-spacing: 0.2em;
}

#recruit .panel_items h3.narrow {
	letter-spacing: 0.1em;
}

#recruit .panel_items .button {
	width: 100%;
	position: absolute;
	background: #f5faf5;
	height: 4.61094vw;
	bottom: 0;
}

#recruit .panel_items .button a {
	display: block;
	color: #007b43;
	position: relative;
	height: 100%;
	padding-top: 1.66667vw;
	padding-left: 5.20833vw;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 1.31771vw;
	font-weight: bold;
	letter-spacing: 0.2em;
}

#recruit .panel_items .button a::after {
	position: absolute;
	content: '';
	display: block;
	width: 1.30208vw;
	height: 1.30208vw;
	background-image: url('../img/recruit/arrow_green.svg');
	background-size: contain;
	background-repeat: no-repeat;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 4.0625vw;
}

#recruit .panel_items[data-disabled='true']::after {
	bottom: 0;
	background: #545454;
}

#recruit .panel_items[data-disabled='true'] .button {
	background: #f6f6f6;
	pointer-events: none;
}

#recruit .panel_items[data-disabled='true'] .button a {
	text-align: center;
	color: #777777;
	padding-left: 0;
	font-size: 1.17188vw;
}

#recruit .panel_items[data-disabled='true'] .button a::after {
	display: none;
}

#recruit .panel_items[data-disabled='true'] .button a:hover {
	opacity: 1;
	cursor: default;
}

#recruit .panel_padding {
	width: 21.04167vw;
	height: 25.67708vw;
}

#recruit .main_sections {
	-webkit-transition: all cubic-bezier(0.23, 1, 0.32, 1) 1.8s;
	-o-transition: all cubic-bezier(0.23, 1, 0.32, 1) 1.8s;
	transition: all cubic-bezier(0.23, 1, 0.32, 1) 1.8s;
	opacity: 0;
}

#recruit .main_sections.inView {
	opacity: 1;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}

#recruit .main_sections .anchor_point {
	top: -31.25vw;
}

#recruit .panels .panel_items {
	opacity: 0;
	-webkit-transform: translateY(50%);
	-ms-transform: translateY(50%);
	transform: translateY(50%);
	-webkit-transition: all cubic-bezier(0.23, 1, 0.32, 1) 1.8s;
	-o-transition: all cubic-bezier(0.23, 1, 0.32, 1) 1.8s;
	transition: all cubic-bezier(0.23, 1, 0.32, 1) 1.8s;
}

#recruit .panels .panel_items:nth-child(1) {
	-webkit-transition-delay: 0.1s;
	-o-transition-delay: 0.1s;
	transition-delay: 0.1s;
}

#recruit .panels .panel_items:nth-child(2) {
	-webkit-transition-delay: 0.2s;
	-o-transition-delay: 0.2s;
	transition-delay: 0.2s;
}

#recruit .panels .panel_items:nth-child(3) {
	-webkit-transition-delay: 0.3s;
	-o-transition-delay: 0.3s;
	transition-delay: 0.3s;
}

#recruit .panels .panel_items:nth-child(4) {
	-webkit-transition-delay: 0.4s;
	-o-transition-delay: 0.4s;
	transition-delay: 0.4s;
}

#recruit .panels .panel_items:nth-child(5) {
	-webkit-transition-delay: 0.5s;
	-o-transition-delay: 0.5s;
	transition-delay: 0.5s;
}

#recruit .panels .panel_items:nth-child(6) {
	-webkit-transition-delay: 0.6s;
	-o-transition-delay: 0.6s;
	transition-delay: 0.6s;
}

#recruit .panels .panel_items:nth-child(7) {
	-webkit-transition-delay: 0.7s;
	-o-transition-delay: 0.7s;
	transition-delay: 0.7s;
}

#recruit .panels .panel_items:nth-child(8) {
	-webkit-transition-delay: 0.8s;
	-o-transition-delay: 0.8s;
	transition-delay: 0.8s;
}

#recruit .panels .panel_items:nth-child(9) {
	-webkit-transition-delay: 0.9s;
	-o-transition-delay: 0.9s;
	transition-delay: 0.9s;
}

#recruit .panels.inView .panel_items {
	opacity: 1;
	-webkit-transform: none;
	-ms-transform: none;
	transform: none;
}

/*　採用情報（子ページ）
ー-------------------------------------------------*/

#recruit_subpage #content {
	width: 70.3125vw;
	margin: 5.9375vw auto 8.07292vw;
}

#recruit_subpage h1 {
	font-size: 2.34375vw;
	text-align: center;
	letter-spacing: 0.2em;
	padding-top: 7.55208vw;
	padding-bottom: 7.55208vw;
	background-image: url('../img/common/header_bg/hbg_faq.png');
	background-repeat: no-repeat;
	background-position: center center;
}

#recruit_subpage h2 {
	font-size: 1.75521vw;
	color: #c9171e;
	text-align: left;
	letter-spacing: 0.2em;
	padding-bottom: 0.41667vw;
}

#recruit_subpage .body_texts {
	font-size: 1.30208vw;
	font-weight: bold;
	line-height: 1.8;
}

#recruit_subpage hr {
	border: none;
	margin-top: 0.9375vw;
	margin-bottom: 3.38542vw;
	border-top: 1px solid #007b43;
}

#recruit_subpage .ap_guidelines {
	width: 65.57292vw;
	margin: 2.5vw auto 3.38542vw;
}

#recruit_subpage section {
	width: 65.57292vw;
	margin: 0 auto;
}

#recruit_subpage .guidlines_item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

#recruit_subpage .guidlines_item+.guidlines_item {
	border-top: 1px solid #fff;
}

#recruit_subpage .guidlines_item .guidelines_title {
	background: #007b43;
	width: 15.625vw;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-left: 1.30208vw;
}

#recruit_subpage .guidlines_item h3 {
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 1.17188vw;
	color: #f3fff8;
	text-shadow: 0 0.05208vw 0.05208vw rgba(1, 47, 26, 0.45);
	line-height: 1.8;
}

#recruit_subpage .guidlines_item .guidelines_contents {
	width: 100%;
	-ms-flex-item-align: center;
	align-self: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-left: 1.30208vw;
	padding-right: 1.30208vw;
	padding-top: 1.04167vw;
	padding-bottom: 1.04167vw;
	background: #e4f7ef;
}

#recruit_subpage .guidlines_item .guidelines_contents ul {
	padding-top: 0.41667vw;
	padding-bottom: 0.41667vw;
	padding-left: 0.52083vw;
}

#recruit_subpage .guidlines_item .guidelines_contents li {
	padding-top: 0.41667vw;
	padding-bottom: 0.41667vw;
	color: #444;
	font-weight: bold;
}

#recruit_subpage .guidlines_item .guidelines_contents p {
	font-size: 1.17188vw;
	line-height: 1.8;
	color: #444;
	font-weight: bold;
}

#recruit_subpage .button {
	width: 16.40625vw;
	background: #007b43;
	-webkit-box-shadow: 0 0.05208vw 0.15625vw rgba(1, 47, 26, 0.45);
	box-shadow: 0 0.05208vw 0.15625vw rgba(1, 47, 26, 0.45);
	margin: 3.54167vw auto 0;
}

#recruit_subpage .button a {
	display: block;
	text-align: center;
	font-size: 1.53646vw;
	padding-top: 1.04167vw;
	padding-bottom: 1.04167vw;
	font-weight: bold;
	letter-spacing: 0.2em;
	color: #f3fff8;
}

.goyoyaku {
	padding-top: 3.5vh !important;
	font-size: 0.9vw !important;
}

/* 追加 */
#recruit_subpage._var1 h1 {
	padding-bottom: 3.15vw;
}

#recruit_subpage._var1 .inline-nav {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	margin-bottom: 2.604vw;
}

#recruit_subpage._var1 .inline-nav a {
	color: #000;
	font-weight: bold;
	padding: 0 1.562vw;
	position: relative;
}

#recruit_subpage._var1 .inline-nav a::after,
#recruit_subpage._var1 .inline-nav a:first-of-type::before {
	content: '';
	position: absolute;
	top: 0;
	background-color: #007b43;
	width: 0.1041vw;
	height: 100%;
}

#recruit_subpage._var1 .inline-nav a::after {
	right: 0;
}

#recruit_subpage._var1 .inline-nav a:first-of-type::before {
	left: 0;
}

#recruit_subpage._var1 .ap_guidelines {
	margin: 0 auto;
	padding: 2.5vw 0 3.38542vw;
}

#recruit_subpage._var1 .ap_guidelines#morn {
	padding-bottom: 0.53vw;
}

#recruit_subpage._var1 .inline-link {
	font-weight: bold;
	margin-bottom: 1vw;
	position: relative;
	padding-left: 0.781vw;
}

#recruit_subpage._var1 .inline-link::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-color: #007b43;
	width: 0.208vw;
	height: 100%;
}

/*　お知らせ　パスワード変更
ー-------------------------------------------------*/
#oshirase-passwords main {
	width: 95%;
	max-width: 960px;
	margin: 0 auto 100px;
}

#oshirase-passwords main h1 {
	text-align: center;
	font-size: 32px;
	background-repeat: no-repeat;
	background-position: center center;
	letter-spacing: 0;
	padding-top: 100px;
	padding-bottom: 100px;
	background-image: url(../img/common/header_bg/hbg_site.png);
}

#oshirase-passwords main h2 {
	font-size: 24px;
	text-align: left;
	margin-bottom: 20px;
}

#oshirase-passwords main h3 {
	font-size: 18px;
	line-height: 2;
	margin-bottom: 8px;
	font-weight: bold;
}

#oshirase-passwords main p {
	font-size: 16px;
	line-height: 2;
	margin-bottom: 25px;
}
#oshirase-passwords main img {
	display: block;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 50px;
}

#oshirase-passwords main p a {
	color: #000000;
	text-decoration: underline;
}

#oshirase-passwords main p a:hover {
	text-decoration: none;
}




.mt0 {
	margin-top: 0 !important;
}

.mt5 {
	margin-top: 5px !important;
}

.mt10 {
	margin-top: 10px !important;
}

.mt20 {
	margin-top: 20px !important;
}

.ml15 {
	margin-left: 15vh;
}

.ml-15 {
	margin-left: -15vh;
}

.mb0 {
	margin-bottom: 0 !important
}

.mb64 {
	margin-bottom: 64px !important
}

.mb1vw {
	margin-bottom: 1vw !important
}

.mb2vw {
	margin-bottom: 2vw !important
}

.mb4vw {
	margin-bottom: 4vw !important
}

.mb8vw {
	margin-bottom: 8vw !important
}

.pt8vh {
	padding-top: 8vh;
}

.pt10vh {
	padding-top: 10vh;
}

.pt12vh {
	padding-top: 12vh;
}

.pt15vh {
	padding-top: 15vh;
}

.pt18vh {
	padding-top: 18vh;
}

.pb0 {
	padding-bottom: 0 !important;
}

.pb4vw {
	padding-bottom: 4vw !important;
}

.pb8vw {
	padding-bottom: 8vw;
}