@charset "utf-8";

.chk-cookie, .chk-vars {padding:2rem; background:hotpink; line-height:1.5;}
.chk-cookie span, .chk-vars span {	font-size:2rem;}


h2.en span.jp-sub {
	display:block;
	margin-top:-1rem;
	font-family:var(--wabun);
	font-size:1.1rem;
	font-weight:700;
	font-style:normal;
}


@media(min-width:1077px) {
	.toppage #common-header {position:relative; background:transparent;}
	.toppage #common-header::before {
		position:absolute; top:1.25em; left:0; right:0; 
		content:""; height:2.5em; width:100vw;
		background:rgba(255,255,255,0.7);
		z-index:-1;
	}
	/* 
	.toppage #sticker {background:transparent;} 
	.toppage #sticker:not(.fixed) .logo {width:auto; margin:0.25em 0 1.25em;}
	*/
	#header-navi-btns {margin:0 1em;}
	#header-navi-btns a.btn-slim {
		display:inline-block; width:7em !important; 
		margin:0.25em 0.25em !important; padding:0.125em 0 !important;
		font-size:90%; font-weight:bold;
		text-align:center; font-feature-settings:"palt";
	}
}

#main-visual {
	position:relative;
	top:0; right:0; left:0;
	width:100%; height:clamp(600px,90vh,1200px);
	z-index:0;
}

#mv-midlayer {
	position:absolute; top:0; right:0; bottom:0; left:0;
	width:100%; height:100%;
	/* background:linear-gradient(-90deg, rgba(41,171,226,0.5) 11.8%, rgba(41,171,226,0.5) 87.55%); */
	z-index:1; 
	overflow:hidden;
}




#onslide-logo {
	position:absolute; top:1rem; left:1.5rem; width:500px; height:auto; text-align:left;
	z-index:4; 
	/*mix-blend-mode: difference;/*exclusion;/* color-burn;*/	
}
#onslide-logo a {display:block; text-align:left;}
#onslide-logo .logo {
	width:auto; height:150px;
	margin:0;
}
 
#onslide-catch {
	display:block;
	position:absolute; top:50%; left:0; right:0; 
	text-align:center; 
	z-index:4; 
	color:#fff;
	width:min(97%, 1400px);
	height:auto;
	font-family:var(--eisuuji); 
	font-size:clamp(3.5em,7.6vw,6rem);
	font-weight:800;
	font-style:italic;
	margin-inline:auto;
	transform:translateY(-2rem); /*-3rem*/
	text-shadow:0 0 4px rgba(0,0,0,0.15), 0 0 7px rgba(0,0,0,0.25);
}
#onslide-catch span {
	display: inline-block;
	/* margin-block:1rem; */
	opacity: 0;
	transform: translate(165%, 17.5%) scale(2.75);
	transition: 0.625s ease-in-out;
}
#onslide-catch span.reveal {
	opacity: 1;
	transform: translate(0, 0) scale(1);
	transition: 0.625s ease-in-out;
}
@media (max-width:500px) {
	#onslide-catch {line-height:1.15; transform:translateY(-3rem);}
}



#onslide-headline {
	position:absolute; left:0; bottom:0; 
	padding:0.8em 1em; width:100%;
	mix-blend-mode: difference;
	transform: translate3d(0,0,0); /* Safari BugFix */
	z-index:2;
}
.toppage h1 {
	margin:0; padding:0; color:#fff; font-size:0.9rem;
	opacity:0.85;
	text-align:right;	
}
.toppage h1 span {display:inline-block;}
.info-tel {
	margin:0 0.5rem -0.5rem; color:#fff;
	text-shadow:0 0 4px rgba(0,0,0,0.15), 0 0 7px rgba(0,0,0,0.25);
	opacity:0.66; 
}
.info-tel .icon.call {
	margin-right:0.375rem;
	width:24px; height:auto;
	filter:drop-shadow( 0 0 4px rgba(0,0,0,0.25) );
}
.info-tel .tel-number {
	display:inline-block;
	font-family:var(--eisuuji);
	font-size: 185%;
	letter-spacing: 0em;
	font-weight: 800;
	font-style: italic;
}
.info-tel .tel-caption {
	display:inline-block;
	font-size: 0.85rem;
	font-family:var(--wabun);
	transform:translate(4.25em,-0.5em);
}
@media (max-width:840px) {
	.info-tel {display:none;}
}
@media (max-width:552px) {
	.toppage h1 span:last-child {margin-left:1.5em;}
	.toppage h1 span:nth-child(2) {display:none;}
}
@media (max-width:480px) {
	.toppage h1 {font-size:0.8rem; line-height:1.5;}
}



#introduction {
	padding:0;
	background:linear-gradient(90deg, var(--bg-white) 0%, var(--bg-white) 60%, var(--acc-color) 60.1%, var(--acc-color) 100%);
}
#introduction #information {background:var(--bg-white);}
.info-board {
	width:min(97%,640px);
	height:min(80vh,505px); /*565px*/
	margin:1rem auto; padding:0.5rem;
	border:1px solid var(--waku-color); background:#fff;
	border-radius:var(--radius-waku);
	overflow-y:auto; overflow-x:hidden;
	font-size:1rem;
	text-align:left;
}
.info-board a {text-decoration:underline;}
.info-board h2 {font-size:2rem; margin:2rem 0 0.5rem;}
.info-board h3 {font-size:1.5rem; margin:2rem 0 0.5rem;}
.info-board h4 {font-size:1.25rem; margin:1.5rem 0 0.5rem;}
.info-board ul li:not([class]) {list-style:square; margin:0.75em 0.5em;}
.info-board table :is(th,td) {border-top:none; border-bottom:1px solid var(--waku-color); border-inline:none; line-height:1.4; padding-block:0.75em; font-feature-settings:"palt";}
.info-board table tr td:first-child a {display:inline-block; margin-left:0.375em;}
.info-board table tr td:last-child {min-width:25%; padding-left:0; padding-right:0.25em;}
@media (max-width:640px) {
	.info-board {height:min(70vh,485px);}
	.info-board table tr td {font-size:0.9em;}
	.info-board table tr td:first-child {padding:1em 0.75em 1em 0;}
	.info-board table tr td:last-child {padding:1em 0;}
}
@media (max-width:480px) {
	.info-board table tr td {letter-spacing:-0.025em;}
	.info-board table tr td:first-child a {display:block; margin-left:0;}
	.info-board table tr td:last-child {min-width:5em; width:5em;}
}

#introduction #search-menu {background:var(--acc-color);}

.toppage .search-menu.btns-wrapper {text-align:center;}
.subpage .search-menu.btns-wrapper {text-align:center;}
.toppage .search-menu.btns-wrapper a.gbtn-white {
	display:block;
	width:290px;
	margin:1rem auto;
	font-size:1.25rem;
}
.subpage .search-menu.btns-wrapper a.gbtn-white {
	display:inline-block;
	width:290px;
	margin:1rem;
	font-size:1.25rem;
}
.search-menu.btns-wrapper a.gbtn-white .icon {
	display:inline-block;
	width:auto; height:60px;
	margin-right:1rem;
	margin-left:-2rem;
}
.search-menu.btns-wrapper a.gbtn-white .icon.calendar {scale:0.9; transform-origin:0 center;}
.search-menu.btns-wrapper a.gbtn-white .icon.nihon {scale:1.35; transform-origin:75% center;}
.search-menu.btns-wrapper a.gbtn-white .icon.mountain {scale:1.23; transform-origin:75% center;}

#introduction #search-menu .filter-search {margin-top:-1rem;}


.f-search span {display:flex; max-width:215px; border:1px solid var(--moji-color); overflow:hidden; border-radius:var(--radius-search); }
:is(.tac,footer) .f-search span {margin:0 auto;} 

.f-search span input.f {width:calc(100% - 40px); height:40px !important; padding-left:1em; border:none !important; border-radius:0;}
.f-search span input.f::placeholder {color:#9f9f9f !important; font-size:0.825rem !important;}
.f-search span input.filtersubmit {
	width:40px; height:40px !important; margin:0 !important; padding:6px 12px; border:none !important;
	background:#666 url(./img/icon/search-wh.svg) no-repeat 0 0; background-size:contain !important; color:transparent;
	transition:all 0.22s linear 0s;
	border-radius:0;
	cursor:pointer;
}
.f-search span input.filtersubmit:hover {
	background:var(--moji-color) url(./img/icon/search-wh.svg) no-repeat 0 0;
	transition:all 0.14s linear 0s;
}

#introduction #search-menu .f-search span {margin:0 auto;}


@media (max-width:768px) {
	.f-search span {margin:0 auto; width:100%;}
}



@media (max-width:1579px) {
	#main-visual {max-height:auto;}
}
	
}

@media (max-width:1169px) {
	#onslide-logo {top:0.5rem; left:0.75rem;}
	#onslide-logo .logo {height:120px;}
	#onslide-menu {transform:translateY(-27.5%) scale(0.925);}	
	#introduction #greetings h2 {font-size: 2.75em;}
}

@media (min-width:1077px) {
	#main-visual {height:clamp(600px,55vw,864px);} 
}
@media (max-width:1076px) {
	#main-visual {height:clamp(600px,55vw, 800px);}
	/*
	#introduction #greetings h2 {margin:0.35em 0; padding:0; font-size:clamp(2em,5.8vmin,2.75em);}
	*/
}
@media (min-width:769px) and (max-width:1099px) {
	#introduction #greetings h2 {margin:0.35em 0; padding:0; font-size:clamp(1.9em,5vmin,2.15em);}
}
@media (min-width:900px) {
	#introduction :is(#information, #search-menu) {padding:5em 3em 1em;}
}
@media (max-width:899px) {
	#onslide-logo .logo {width:500px; height:auto;}
	#onslide-menu {transform:translateY(-25%) scale(0.875);}	
	#introduction {background:var(--acc-color);}
	#introduction :is(#information, #search-menu) {padding:5em 1em;}
}
@media (max-width:800px) {
	#main-visual {height:clamp(50vmax,800px,200vmin);} 
	#introduction #greetings h2 {margin:0.5em 0;}
}
@media (min-width:801px) and (max-height:800px) {
	#onslide-logo .logo {height:120px;}
	#onslide-menu {transform:translateY(-27.5%) scale(0.85);}	
}
@media (max-width:700px) {
	#main-visual {height:clamp(600px,60vmax,200vmin);} 
}
@media (max-width:768px) {
	#onslide-logo .logo {width:400px; height:auto;}
	#onslide-catch {font-size:clamp(3em,4.5vw,6rem);}
	#introduction #greetings h2 {margin:0.35em 0; padding:0; font-size:clamp(2em,5.7vmin,2.75em);}
}
@media (max-width:600px) {
	#onslide-logo {top:0.75rem; left:0.75rem; width:auto;}
	#onslide-logo .logo {width:340px; height:auto;}
	
	#onslide-menu {transform:translateY(-27.5%) scale(0.8);}	
	
	#introduction #greetings h2 {margin:0.35em 0; padding:0; font-size:6vmin;}
}
@media (max-width:480px) {
	#main-visual  {height:clamp(440px,120vmin,60vmax);}
	#onslide-logo .logo {width:260px; height:auto;}
	#onslide-catch {font-size:clamp(3em,13vw,6rem);}	
	#onslide-menu {transform:translateY(-25%) scale(0.95);}
	#onslide-menu .menu-wrapper {
		width:min(98%, 360px);
	}
	#onslide-menu .inner {
		width:110px; height:auto;
		aspect-ratio:2 / 3;
	}
	#onslide-menu .inner .icon {width:60px; height:auto; margin:1rem auto 0.75rem;}
	#onslide-menu .inner span.en {font-size:1.3rem; margin:0 auto;}
	#onslide-menu .inner span.jp {font-size:0.85rem; margin:0.35rem auto 0; font-weight:700;}

	#onslide-menu .caption {font-size:1.1rem; line-height:1.35;}
	#onslide-menu .caption span {display:inline-block; margin:0.25rem;}	

	#introduction h2 {margin:0.35em 0 1em; padding:0; font-size:clamp(2.7rem,11.5vmin,4rem); line-height:1.5;}
	h2.en span.jp-sub {margin-top:0;}
}
@media (max-width:359px) {
	#main-visual {height:clamp(424px,120vmin,60vmax);} 

	#onslide-menu .inner {
		width:98px; height:auto;
		aspect-ratio:3 / 5;
	}
	#onslide-menu .inner .icon {width:58px; height:auto; margin:1rem auto 0.75rem;}
	#onslide-menu .inner span.en {font-size:1.2rem; margin:0 auto;}
	#onslide-menu .inner span.jp {font-size:0.8rem; margin:0.35rem auto 0; font-weight:700;}

	h2.en span.jp-sub {font-size:1rem; font-feature-settings:"palt";}

}


/* + - + - + - + - + - + - + - + - + - +   swiper  + - + - + - + - + - + - + - + - + - + - +*/

.swiper-slide {display:inline-block; height:100% !important; margin:0; text-align:center;}
.swiper-slide img { width:100%; margin:0 auto;} 

.swiper-button-prev, .swiper-button-next {
	opacity:1; transition:all 0.3s linear 0s;
}
.swiper-button-prev.swiper-button-disabled, .swiper-button-next.swiper-button-disabled {opacity:0 !important; transition:all 0.3s linear 0s;}
.swiper-pagination { text-align: right; padding: 5px 0;}
.swiper-pagination-bullet {margin-right:8px;}
.swiper-pagination-switch {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 8px;
	margin: 0 4px;
	background-color: #000;
	border: 1px solid #f4b;/*#188A77;*/
	cursor: pointer;
	transition: all .25s linear;
}
.swiper-active-switch {background-color: #16AC94;}

.swiper-slide > a {display:block; text-align:left;}


.swiper-container {position:relative;}
.swiper-container1 .post-card-wrapper {padding:1.5em 8px;}

.swiper-container1 .swiper-button-prev {background-image: url("./img/icon/swiper-prev-green.svg");}
.swiper-container1 .swiper-button-next {background-image: url("./img/icon/swiper-next-green.svg");}

.swiper-container2.swiper-container {overflow:visible;}
.swiper-container2 :is(.swiper-button-prev, .swiper-button-next) {
	mix-blend-mode: difference;
	transform: translate3d(0,0,0); /* Safari BugFix */
	opacity:0.9;
}
.swiper-container2 .swiper-button-prev {background-image: url("./img/icon/swiper-prev-white.svg");}
.swiper-container2 .swiper-button-next {background-image: url("./img/icon/swiper-next-white.svg");}







.subpage #information {padding:5em 0;}
.info-photo {
	width:min(100%,630px);
	height:min(100vmin,400px);
	object-fit:cover;
}
.info-caption {margin:0.75rem 0 1.5rem; font-size:0.85em; text-align:center;}




#dont-miss-it {
	padding:6em 0 5em;
	background:var(--bg-white);
}
#dont-miss-it .taxo-terms {float:right; font-family:var(--wabun); font-size:0.8rem;}
#dont-miss-it .taxo-terms .each-term {
	display:inline-block; margin-left:0.375rem; margin-block:1px; padding:0 0.5em 1px; line-height:1.4; 
	background:rgba(255,255,255,0.6); color:var(--acc-color); font-weight:700;
	border-radius:3px;
}


#nihon-chizu {background:var(--acc-gra-u2d); position:relative;}
.toppage #nihon-chizu {padding:12em 0 9em;}
.subpage #nihon-chizu {padding:12em 0 9em;}

.chizu-container {position:relative; text-align:center;}
.chizu-wrapper {position:relative; width:100%; max-width:760px; height:600px; margin:auto;}
.chizu-fig {
	position:absolute; top:0; right:0; bottom:0; left:0; 
	width:96%; margin:auto; max-width:760px;
	padding-top:5rem;
}

#nihon-chizu h2 {position:absolute; top:-10%; left:5%;}
#nihon-chizu .filter-search {position:absolute; bottom:-1em; right:1em; width:215px;}
#monthly-list .f-search span {max-width:215px; border:1px solid var(--acc-color); margin:0 0 0 auto;}



#nihon-chizu .area {
	text-align:center; font-size:1.05rem; font-feature-settings:"palt"; font-weight:bold;
}
#nihon-chizu .area span,
#nihon-chizu .area a {
	display:inline-block; width:auto;
	text-align:left; margin:0.175em; padding:0 0.5em;
	background:rgba(235,235,235,0.95); 
	border:1px solid var(--link-color); border-radius:3px;
	font-weight:bold; font-size:0.8em;
	line-height:1.65;
	transition:all 0.14s linear 0s;
}
#nihon-chizu .area span.disabled {
	background:rgba(155,155,155,0.4);
	color:rgba(255,255,255,0.6);
	border:1px solid var(--sub-color);
}

#nihon-chizu .area {position:absolute; text-align:center;}


@media (hover: hover) {
	#nihon-chizu .area a:hover {background:rgba(55,55,55,0.8); filter:saturate(200%); box-shadow:0 0 3px 0 #4fb; transition:all 0.1s linear 0s;}
}
#nihon-chizu .area.hokkaido {top:1.5%; right:16.5%;}
#nihon-chizu .area.tohoku {top:31.0%; right:27.5%;}
#nihon-chizu .area.kanto {top:56.5%; right:31.5%;}
#nihon-chizu .area.koshinetsu {top:52%; right:34.5%;}
#nihon-chizu .area.kita-alps {top:47.5%; right:40.5%;}
#nihon-chizu .area.chuo-alps {top:52%; right:42.5%;}
#nihon-chizu .area.minami-alps {top:56.5%; right:38.5%;}
#nihon-chizu .area.tokai-hokuriku {top:64.5%; right:41%;}
#nihon-chizu .area.kinki {top:62%; right:55%;}
#nihon-chizu .area.chugoku-shikoku {top:64.5%; left:22.5%;}
#nihon-chizu .area.kyushu-okinawa {top:79.5%; left:5%;}
#nihon-chizu .area.kaigai {top:30%; left:-20%;}

@media (max-width:600px) {
	.chizu-fig {
		top:0%; right:-5%; bottom:-10%; left:-10%;
		width:115%;
	}
	#nihon-chizu .area.hokkaido {top:8.5%; right:13.5%;}
	#nihon-chizu .area.tohoku {top:35.0%; right:24.5%;}
	#nihon-chizu .area.kanto {top:62.5%; right:29.0%;}
	#nihon-chizu .area.koshinetsu {top:57.5%; right:33.0%;}
	#nihon-chizu .area.kita-alps {top:52.5%; right:39.5%;}
	#nihon-chizu .area.chuo-alps {top:57.5%; right:43.5%;}
	#nihon-chizu .area.minami-alps {top:62.5%; right:37.5%;}
	#nihon-chizu .area.tokai-hokuriku {top:68.5%; right:42.5%;}
	#nihon-chizu .area.kinki {top:67.5%; right:56.5%;}
	#nihon-chizu .area.chugoku-shikoku {top:68.5%; left:17.5%;}
	#nihon-chizu .area.kyushu-okinawa {top:84.5%; left:2.5%;}
	#nihon-chizu .area.kaigai {top:24.0%; left:4.5%;}	
}

@media (max-width:480px) {
	.chizu-fig {
		top:-8%; right:-10%; bottom:-10%; left:-15%;
		width:125%;
	}
	#nihon-chizu .area.hokkaido {top:19.5%; right:16.5%;}
	#nihon-chizu .area.tohoku {top:38.0%; right:15.5%;}
	#nihon-chizu .area.kanto {top:58.75%; right:25.0%;}
	#nihon-chizu .area.koshinetsu {top:53.0%; right:27.0%;}
	#nihon-chizu .area.kita-alps {top:47.2%; right:35.5%;}
	#nihon-chizu .area.chuo-alps {top:53.0%; right:44.0%;}
	#nihon-chizu .area.minami-alps {top:58.7%; right:38.5%;}
	#nihon-chizu .area.tokai-hokuriku {top:64.3%; right:34%;}
	#nihon-chizu .area.kinki {top:64.3%; right:56.0%;}
	#nihon-chizu .area.chugoku-shikoku {top:62.5%; left:8.5%;}
	#nihon-chizu .area.kyushu-okinawa {top:72.5%; left:2.5%;}
	#nihon-chizu .area.kaigai {top:30%; left:2.5%;}	
}





/* ***********************
　Tour List (Parent page : mt, snow )
*/
.toppage #monthly-list {
	padding:6em 0;
	/*background:var(--bg-slight); /*var(--lgray-color);*/ 
}
.subpage #monthly-list {padding:0 0 5.5em;}
#monthly-list a.prev,
#monthly-list a.next {display:inline-block; margin:0 1em;}
#monthly-list + #block-editor-body {padding: 0 0 4em;}


iframe#iframed-list {
	width:100%; height:auto;
	min-height:200px;
	/* max-height:800px; */
	/* padding:0.5rem; */
	border:none;
	/* border:1px solid var(--waku-color); border-radius:var(--radius-waku); */
}

iframe#calendar-body, iframe#calendar-list {
	width:100%; height:auto; min-height:80vh; border:none; box-shadow:0 0 3px 1px rgba(0,0,0,0.25);
}


a.help-info {
	position:relative;
	display:inline-block;
	width:1rem; height:1rem;
	line-height:1;
	margin:0 0 0 0.125rem; padding:0.125rem;
	background:rgba(0,133,104,0.5);
	border-radius:100%;
	overflow:hidden;
}
a.help-info::after{
	position:absolute; top:0; right:0; bottom:0; left:0;
	content:"?";
	padding:0.125rem;
	font-family:'SosaIcon'; font-size:0.8rem; color:#fff;
	line-height:1;
}

.prev-next-control {font-size:140%; font-weight:bold; text-align:center;}
.prev-next-control.above {margin:0; padding:1.5em 0 0.5em;}
.prev-next-control.below {margin:1.5em 0; padding:0;}
.tour-list {margin:1.5em auto 0; /*width:100%; min-width:800px; max-width:1200px;*/} 
/*
@media (min-width:900px) {
	.tour-list:has(table) {min-height:300px;}
}
@media (max-width:899px) {
	.tour-list:has(table) {min-height:300px;}
}
*/


.tour-list table tr th {background:rgba(235,235,235,0.9); white-space:nowrap; word-break:keep-all;}
.tour-list table tr td {background:rgba(255,255,255,0.9); white-space:wrap;  max-width:16em; line-height:1.5;}
.tour-list table tr td.meeting {min-width:8em;}

.tour-list table tr th:first-child,
.tour-list table tr td:first-child {position: sticky; left: 0;}

.tour-list table tr th:first-child::before,
.tour-list table tr td:first-child::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-bottom: 1px solid rgba(0,0,0,0.2);
	pointer-events:none;
}

.tour-list table th,
.tour-list .nowrap {word-break:keep-all; white-space:nowrap;}

.tour-list table th.title {min-width:23em;}
.tour-list table tr td {font-feature-settings:"palt";}

.tour-list span.ib {word-break:keep-all;}
.tour-list span.level {color:#444;}
.tour-list span.physical {color:#444;}
.tour-list span.technique {color:#444;} /*888*/
.tour-list span:is(.data, .msg) {display:inline-block;}
.tour-list td.status {
	span.filled {color:crimson;}
	span.almost {color:darkorange;}
	span.wanted {color:royalblue;}
	span.soldout {color:crimson;}
	span.abort, span.closed {color:gray;}
	span.possibly {color:darkblue;}
	span.seats-left, span.waiting-list {color:hotpink;}
}
.tour-list span.finished {}
.tour-list tr:is(.past,.abort) * {color:#bababa !important;}
.tour-list tr:is(.past,.abort) .title a {color:#678 !important;}
.tour-list tr:is(.past,.abort) img {opacity:0.45;}

/*
.tour-list :is(th,td).feature-icons {width:auto; max-width:124px;}
.tour-list .feature-icons img.icon {display:inline-block; width:27px; margin:2px; opacity:0.9;}
*/

.post-tn-small {position:relative;}
.post-tn-small img {width:100%; height:100%;}
.post-tn-small span.sku {
	display:block;
	position:absolute; right:0; bottom:0; left:0;
	margin:0; padding:3px 0;
	font-size:11px; color:#fff !important; line-height:1.1;
	background:rgba(0,0,0,0.25);
	text-align:center; font-feature-settings:"palt";
}
.post-tn-small span.status-bar {
	display:block;
	position:absolute; right:0; bottom:0; left:0;
	width:100%; height:1.55em; 
	margin:0; padding:2px 0;
}
.post-tn-small span.status-bar {
	span {
		display:block; position:absolute; right:0; bottom:0; left:0; 
		width:100%; height:1.55em; 
		padding:2px 0;
		overflow:hidden;
		font-size:13px; color:#fff !important; line-height:1.1;
		text-align:center; font-feature-settings:"palt";
		opacity:0.88;
	}
	span.filled {background:crimson;}
	span.almost {background:darkorange;}
	span.wanted {background:royalblue;}
	span.soldout {background:crimson;}
	span.abort, span.closed {background:gray;}
	span.possibly {background:darkblue;}
	span.seats-left, span.waiting-list {background:hotpink;}
}

.tour-date a {color:var(--moji-color);}
@media (hover: hover) {
	.tour-date a:hover {color:var(--moji-color);}
}
.include-past .tour-date {text-align:right;}


@media (min-width:1000px) {
	.tour-list td.eyecatch {padding-block:0.25rem; padding-right:0;}
	.post-tn-small {width:84px; height:84px;} /* 100px 100px */
	/* 元
	.post-tn-small span.sku {display:block;}
	.post-tn-small span.status-bar {display:none;}
	*/
	.tour-date a {pointer-events:none;}
	.include-past .tour-date {padding-left:0;}

	.post-tn-small span.sku {display:none;}
	.post-tn-small span.status-bar {display:block;}
	.post-tn-small span.status-bar  span {font-size:0.75rem;} /* 0.66em; 0.9rem; */
	.tour-list table tr :is(th,td):nth-child(6) {padding-right:0.75em;}
	.tour-list table tr :is(th,td):last-child {display:none;}

}
@media (max-width:999px) {
	.post-tn-small {width:90px; height:90px;}
	.post-tn-small span.sku {display:none;}
	.post-tn-small span.status-bar {display:block;}	
	.tour-list table tr td {padding-right:3px;}
	.tour-list table tr :is(th,td):nth-child(6) {padding-right:0.75em;}
	.tour-list table tr :is(th,td):last-child {display:none;}
	.include-past .tour-date {padding-left:0.5em;}	
}
@media (max-width:480px) {

}


.planned-months-list {margin:4rem auto 3rem; padding:0 0.5rem; text-align:center; width:96%; max-width:900px;}
.planned-month {display:inline-block; margin:0.5rem 1rem 1.5rem; font-size:1.25rem; font-weight:bold; text-decoration:underline;}



#select-filter {margin-top:2rem;}
#select-month {text-align:left; padding:0 1rem;}
#monthly-list .filter-search {text-align:right; padding:0 1rem}

select#jumper {width:auto; height:30px !important; border:1px solid var(--moji-color); overflow:hidden; margin:0 auto 0 0; border-radius:var(--radius-btn); color:var(--moji-color); background:#e7e7e7; font-size:0.85rem;}
	

#monthly-list .f-search span {max-width:150px; border:1px solid var(--acc-color); margin:0 0 0 auto;}
#monthly-list .f-search span input.f {width:calc(100% - 30px); height:30px !important; padding-left:1em; }
#monthly-list .f-search span input.filtersubmit {width:30px; height:30px !important; margin:0 !important; padding:6px 12px; border:none !important;}

	

@media (max-width:768px) {
	#select-month {text-align:center; margin-bottom:2rem;}
	#monthly-list .filter-search {text-align:center;}
	#monthly-list .f-search span {max-width:196px; margin:auto;}
}






#check-it-out {
	padding:6em 0 5em;
	background:var(--acc-gra-u2d);
}
#check-it-out .card.bg-dark {
	color:#fff;
}
#check-it-out .card.bg-white {
	color:var(--acc-color);
}
/*
.card-menu .card-container {width:100%; max-width:1600px; margin:auto; padding-inline:1rem;}
*/
.card-menu .card {
	margin:1.25em auto; padding:1.5rem;
	width:1048px;
	cursor:grab;
}
.card-menu .card .inner {display:flex; flex-direction:row-reverse; align-items:center;}
.card .text-side {
	display:flex; flex-direction:column;
	width:calc(50% - 1rem); margin-left:1rem;
	
}
.card h3.title {font-size:240%; text-align:left; font-feature-settings:"palt"; overflow:hidden; white-space:nowrap; word-break:keep-all;}
.card p.excerpt {margin-top:0.5em; text-align:left;}
.card div.kwsk {margin-top:auto;}
.card div.image-side {width:calc(50% - 1rem); aspect-ratio:4 / 3; margin-right:1rem; position:relative; transition:all 0.22s ease 0s;}
.card div.image-side a {}
.card div.image-side img.eyecatch {
	position:absolute; inset:0; display:block; width:100&; height:100%;	object-fit:cover;
}
@media (min-width:960px) and (max-width:1169px) {
	.card-menu .card {
		padding:1.25rem;
		width:clamp(840px,88vw,1048px);
	}
}
@media (max-width:959px) {
	.card-menu .card {width:auto; /* clamp(290px,80vw,720px);*/ overflow:hidden;}
	.card-menu .card .inner {flex-direction:column;}
	.card .text-side {display:contents; width:stretch;}
	.card h3.title {order:1;}
	.card div.image-side {order:2; width:100%; margin:0;}
	.card p.excerpt {order:3; margin-top:1em;}
	.card div.kwsk {order:4; margin-top:auto;}
}
@media (min-width:600px) and (max-width:959px) {
	.card-menu .card {padding-inline:2em;}
	.card div.image-side {aspect-ratio:16 / 9; }
}
@media (max-width:599px) {
	.card-menu .card {padding-inline:1.5em;}
	.card h3.title {font-size:185%;}
	.card div.image-side {aspect-ratio:16 / 9; }
}
@media (max-width:480px) {
	.card h3.title {font-size:175%;}	
	.card p.excerpt {font-size:95%;}
	.card div.image-side {aspect-ratio:16 / 10; }
	.card a.btn-large {margin-block:0;}
}
@media (max-width:360px) {
	.card h3.title {font-size:165%;}	
	.card p.excerpt {font-size:92%; line-height:1.5; font-feature-settings:"palt";}
	.card a.btn-large {width:200px !important;}
}
@media (hover: hover) {
	.card div.image-side:hover {filter:saturate(110%) brightness(115%); transition:all 0.14s ease 0s;}
}



#hospitality {padding:5em 0 5em;}
#hospitality .nougaki h3 {color:var(--acc-color); text-align:center; border-bottom:1px solid var(--mgray-color);}
#hospitality .nougaki p {color:var(--acc-color); text-align:left;}
#hospitality .page-links {margin-top:5em;} 
#hospitality .inner {
	display:block; position:relative;
	color:#fff; padding:1.25em;
	background-repeat:no-repeat; background-size:cover !important; background-position:center center !important;
	border-radius:var(--radius-btn);
}
#hospitality .inner::after {
	content: "";
	width: 12px;
	height: 12px;
	position: absolute;
	right: 14px;
	top: 50%;
	margin-top: -6px;
	border-right: 3px solid #ffffff;
	border-top: 3px solid #ffffff;
	transform: rotate(45deg);
	transition: all 0.14s linear 0s;
}
#hospitality .inner h2 {
	font-size:190%; font-feature-settings:"palt";
	text-shadow:0 0 2px rgba(0,0,0,0.5), 0 0 5px rgba(0,0,0,0.25);
}
#hospitality p.excerpt {margin-top:0.75em; padding-inline:0.5em; font-size:90%; text-align:justify; color:var(--acc-color); line-height:1.7;}

@media (min-width:769px) and (max-width:1279px) {
	#hospitality .inner h2 {font-size:clamp(130%,2vw,190%);}
	#hospitality p.excerpt {font-size:clamp(0.8rem,1.3vw,0.9rem); line-height:1.9;}
}
@media (hover: hover) {
	#hospitality .inner:hover {filter:saturate(110%) brightness(120%);}
	#hospitality .inner:hover::after {right:11px;}
	#hospitality .inner:hover h2 {	text-shadow:0 0 3px rgba(0,0,0,0.7), 0 0 5px rgba(0,0,0,0.4);}
}



#columns-intro {padding:5em 0 3em; background:var(--owhite-color);}
#columns-intro .post-card dt {padding-top:1.25rem; padding-bottom:0; font-size:1.1rem;}
#columns-intro .post-card dd.excerpt {padding-bottom:1.25rem; font-size:0.77rem; line-height:1.5; font-weight:300; color:var(--owhite-color);}


#sns-timeline {
	padding:0;
}
#facebook {
	padding:5em clamp(0.5rem,3%,3rem);
	background:var(--acc-gra-d2u);
	color:#fff;
}
#instagram {
	padding:5em clamp(0.5rem,3%,3rem);
	background:var(--alt-color);
	color:var(--acc-color)f;
}
#instagram .icon {width:64px; height:64px;}
#instagram .inner {width:100%; max-width:600px; margin-inline:auto;}

@media (max-width:768px) {
	#insta-feed {margin-top:1em;}
}
#instagram #sb_instagram {}

#sb_instagram .sb_instagram_header {display:none;}

#sb_instagram div#sbi_images {margin-top:-5px !important; padding:0 !important;}
#sb_instagram div#sbi_images .sbi_item .sbi_photo_wrap {
	padding:5px !important;
}
#sb_instagram div#sbi_images .sbi_item .sbi_photo_wrap a {
	border-radius:none !important;
	overflow:hidden !important;
}
#sb_instagram div#sbi_load {margin-top:0.75rem !important;}


#sb_instagram .sbi_no_avatar .sbi_header_img {background:#aaa !important;}
#sb_instagram a {color:var(--link-color);}
#sb_instagram .sbi_follow_btn a {background:var(--acc-color) !important; border-radius:var(--radius-btn) !important; padding:7px 18px !important;}
#sb_instagram #sbi_load .sbi_load_btn {background:var(--sub-color) !important; border-radius:var(--radius-btn) !important; padding:7px 18px !important;}
@media (hover: hover) {
	#sb_instagram .sbi_follow_btn a:hover {box-shadow: inset 0 0 10px 20px var(--link-color) !important;}
	#sb_instagram #sbi_load .sbi_load_btn:hover {box-shadow: inset 0 0 20px 20px var(--link-color) !important;}	
}




/* ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

	Subpage 

*/
/* ********************************************************************
	Subpage Common 
*/


#subpage-logo {
	position:absolute;
	top:0px; left:0px;
	width:max(20vw, 220px);
	z-index:9990;
	text-align:left;
}
#subpage-logo .logo {
	width:250px; height:auto; margin:0.5rem;
} 

@media (max-width:640px) {
	#subpage-logo {width:auto;}
	#subpage-logo .logo {width:240px; margin:10px;}
}
@media (max-width:480px) {
	#subpage-logo .logo {width:180px; margin:8px 4px;}
}



#page-title {
	position:relative; 
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center center;
	z-index:5;
}

#title-bg-layer {
	position:absolute; top:0; right:0; bottom:0; left:0; width:100%; height:100%;
	content: " ";
	z-index:-1; 
	opacity:1;
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px); 
}
@supports not ((backdrop-filter: blur()) or (-webkit-backdrop-filter: blur())) {
	#title-bg-layer {
		background:rgba(140,140,140,0.35) url(./img/bg/pattern-wh.png) repeat 0 0;
	}
}


#page-title-inner {
	position:absolute; top:0; right:0; bottom:0; left:0; 
	width:100%; height:100%; overflow:hidden;
	background:rgba(12,12,22,0.6);
}

.taxo-suffix {display:inline-block; font-size:40%; margin-left:0.5rem; font-feature-settings:"palt";}

.page-title-sub {
	display:block;
	position:absolute; left:1.5rem; bottom:1.5rem; 
	margin:auto; text-align:center;
	font-family:var(--eisuuji);
	font-size:1.75em; font-weight:400; letter-spacing:0.375em;
	color:#fdfdfd; opacity:0.4; text-shadow:none; z-index:0;
}
@media (max-width:1279px) {
	.page-title-sub {left:1rem; bottom:1rem; font-size:1.675em; letter-spacing:0.3em;}
}
@media (max-width:800px) {
	.page-title-sub {left:0.5rem; bottom:0.5rem; font-size:1.5em; letter-spacing:0.25em;}
}
@media (max-width:480px) {
	.page-title-sub {letter-spacing:0.2em;}
}



@media (min-width: 1078px) {
	#page-title {height:280px;}
	#page-title-inner {position:absolute; top:0; right:0; bottom:0; left:0; height:100%;}
	.toppage #page-title {height:470px;}
	.search #page-title, .taxo #page-title, .error404 #page-title {height:250px;}
}
@media (max-width: 1077px) {
	#page-title {height:307.5px;}
	.toppage #page-title {height:497.5px;}
	.search #page-title, .taxo #page-title, .error404 #page-title {height:220px;}
}
@media (max-width: 480px) {
	/*.search #page-title, .taxo #page-title, .error404 #page-title {height:200px;}*/
}

#page-title h1 {
	margin:0; padding:0;
	color:#fff; line-height:1.4em;
	text-align:center;
}

/*.subpage.fixed-page #page-title h1,*/
.subpage #page-title h1 {
	font-size:235%;
	letter-spacing:0.35em; text-indent:0.35em;
	font-family:'Noto Sans JP', sans-serif, sans;
	font-weight:400;
}
.subpage:not(.fixed-page):not(.shop-detail) #page-title h1 {
	letter-spacing:0.125em; text-indent:0.5em;
}
.subpage.shop-detail #page-title h1 {
	font-size:185%; letter-spacing:0; text-indent:0;
	font-feature-settings:"palt";
}


/*.type--post.subpage.single #page-title h1 {	font-size:160%;}*/

h1 span.post-title {font-feature-settings:"palt";}
h1 span.h1-en-caption {
	margin:auto; text-align:center; font-family:var(--eisuuji); font-size:0.7em; font-weight:300; color:#bbb; opacity:0.7; text-shadow:none; z-index:0;
	padding-left: 0.5em;
}

.paged #page-title h1 {margin-top:1.5em;}


@media (max-width:1279px) {
	.subpage #page-title h1 {font-size:215%; letter-spacing:0.2em; text-indent:0.2em;}
}

@media (max-width:800px) {
	.subpage #page-title h1 {font-size:195%; letter-spacing:0.125em; text-indent:0.125em;}
}
@media (max-width:640px) {

}
@media (max-width:480px) {
	.subpage #page-title-inner h1 {
		padding-top:10px; padding-left:0.25em;
		font-size:160%; text-align:left; 
		text-indent:0 !important;
	}
	.subpage.shop-detail #page-title h1,
	.subpage.single.type--post #page-title h1 {	
		padding-left:1em; padding-right:1em;
		font-size:150%; 
		letter-spacing:0; text-indent:0;
	}
	.subpage.shop-detail #page-title h1 {font-size:130%;}
	
}


.page-std img + p.caption {
	margin:0.5rem 0 1.5rem; padding:0 0.5em;
	font-size:0.85rem; line-height:1.35; text-align:justify;
}


.ancor-link {margin-top:2em;}

.fixed-page #anchor-link {text-align:center;}
.fixed-page #anchor-link .sbtn-accent {
	display:inline-block;
	width:auto;
	position:relative;
	margin:0.5em 0.25em;
	padding:0.5em 1.25em 1.75em;
	font-size:0.9em;
	border:2px solid var(--acc-color);
	background:var(--base-color);
	color:var(--acc-color);
	border-radius:var(--radius-btn);
}
@media (hover: hover) {
	.fixed-page #anchor-link .sbtn-accent:hover {
		color:var(--acc-color);
		border:2px solid var(--acc-color);
		background:var(--alt-color);
		text-shadow:none;
		transition:all 0.14s ease 0s;
	}	
}
.fixed-page .sbtn-accent::after {
    content: "";
    width: 8px; height: 8px;
    position: absolute;
    left: 50%; bottom: 14px; 
    margin-left: -4px;
    border-right: 2px solid var(--acc-color); border-top: 2px solid var(--acc-color);
    transform: rotate(135deg); transition: all 0.14s linear 0s;
}



.hr.container {margin-top:2.25em; padding-top:2.25em;}


.subpage.fixed-page:not(.wooc) :not(.post-body) h3 {border-bottom:1px solid var(--mgray-color);}
/*
.subpage.fixed-page:not(.wooc) .wp-block-table:not(:has(thead)) tbody tr > td:first-child {white-space:nowrap; word-break:keep-all; padding-right:1.5em;}
@media (max-width:480px) {
	.subpage.fixed-page:not(.wooc) .wp-block-table tbody tr > td:first-child {white-space:wrap; word-break:normal; padding-right:0.5em;}
	.subpage.fixed-page.company .wp-block-table tbody tr > td:first-child {width:4.5em;}
}
*/

ul.thumbup {padding-left:0.5rem;}
ul.thumbup li {
    /*font-size: 1.95rem;*/
    margin: 2em 2em 2em 1em;
    list-style: none !important;
    line-height: 1.35em;
    height: auto;
    background: url(./img/icon/thumb-up_16.svg) no-repeat 0 0;
        background-size: auto;
    background-size: 1.75em 1.75em;
    padding: 0.25em 0 0.5em 2.25em;
    margin: 0.75em 0;
}




/* *********************************************************************
　Page has children
*/

#page-intro {text-align:center; font-size:1.4em;}
#page-intro p {}

#child-pages {padding:1.5em 0 6.5em;}

.menu-banner :is(.page-banner, .child-banner) {background:var(--owhite-color); transition:all 0.33s linear 0s;}
.menu-banner dl {display:flex; margin:0; height:100%; min-height:220px; position:relative;}
.menu-banner dl::after {
	content: " ";
	width: 10px;
	height: 10px;
	position: absolute;
	right: 1em;
	top: 50%;
	margin-top: -5px;
	border-right: 2px solid var(--link-color);
	border-top: 2px solid var(--link-color);
	transform: rotate(45deg);
}	
@media (hover: hover) {
	.menu-banner :is(.page-banner, .child-banner):hover {transform:scale(1.03); transition:all 0.14s ease 0s; box-shadow:0 2px 10px rgba(0,0,0,0.35);}
}


.menu-banner dl dt.eyecatch {width:40%;}
.menu-banner dl dd.summary {width:60%; padding:0.75em; color:#222;}
.menu-banner .brief-copy {font-size:85%; margin:1.125em 0 0.75em; padding:0 1em 0 0; line-height:1.5;}
	
	
.menu-banner figure.menu-item {
	position: relative; overflow: hidden;
	width:100%; /*min-width:300px;*/
	height:100%; /*min-height:150px;*/
	color:#fff;
	background-size:cover; background-position:center top;
}
.menu-banner figure.menu-item::before{ content:""; display: block; padding-top: 60%;}
.menu-banner h3 {
	position:static;
	margin:0.75rem 0 0.375em -0.25em; padding:0 0 0.125em 0.125em;
	line-height:1.35;
	font-size:155%; font-weight:700;
	font-feature-settings:"palt";
	border-bottom:1px solid var(--waku-color);
}

.menu-banner h3 span {padding:0; color:var(--acc-color); /*box-shadow:0 -0.5em 0 0 rgba(20,240,124,0.5) inset;*/}


#appendix.menu-banner .page-banner {background:rgba(70,90,31,0.375); /*border:1px solid rgba(244, 255, 195,0.25);*/}
#appendix.menu-banner dl {display:flex; margin:0; height:100%; min-height:220px; position:relative;}
#appendix.menu-banner dl::after {
	content: " ";
	width: 10px;
	height: 10px;
	position: absolute;
	right: 1em;
	top: 50%;
	margin-top: -5px;
	border-right: 2px solid var(--alt-color);
	border-top: 2px solid var(--alt-color);
	transform: rotate(45deg);
}	
#appendix.menu-banner * {color:var(--alt-color);}
#appendix.menu-banner h3 {	border-bottom:1px solid rgba(244, 255, 195,0.4);}



@media (max-width:599px) {
	.menu-banner dl {min-height:200px;}
}
@media (max-width:480px) {
	.menu-banner dl {min-height:190px;}
	.menu-banner dl::after {right: 0.625em;}	
	.menu-banner dl dd.summary {padding:0.75em 1em 0.75em 0.25em;}	
	.menu-banner h3 {font-size:135%;}
	.menu-banner .brief-copy {font-size:95%;}
	.menu-banner .price-info {padding-left:0; font-size:90%;}

}








/* *********************************************************************
　Tour Search   ( /tour-search/ )
*/

.tour-search #anchor-link {
	margin-top:-1rem;
	padding:0em 0 4em;
	text-align:center;
}
.tour-search #anchor-link .sbtn-accent {
	width:10em; padding-inline:0.375em;
}
@media (max-width:642px) {
	.tour-search #anchor-link {margin-top:0; margin-inline:auto; width:100%; max-width:480px;}
}




.tour-search #category-list {padding:0.25em 0.5rem 0;}

.tour-search .outer .inner {padding-inline:1em;}
@media (max-width:480px) {
	.tour-search .outer .inner {padding-inline:0.375em;}	
}

.product-categories-link:not(.btns) {}
.product-categories-link:not(.btns) :is(h4) {font-weight:normal;}
.product-categories-link:not(.btns) span.no-link {opacity:0.4;}

.product-categories-link.btns {}
.product-categories-link.btns ul {padding:0;}
.product-categories-link.btns ul li {display:inline-block; margin:0; padding:0.25rem; font-weight:normal;}
.product-categories-link.btns ul li a {display:inline-block; padding:0.5em 1.25em 0.625em; background:var(--sub-color); color:#fff;}
.product-categories-link.btns ul li span.no-link {display:inline-block; padding:0.5em 1.25em 0.625em; background:var(--grayout-color); color:#fff;}
.product-categories-link.btns ul li span.count {display:inline-block; margin-left:0.5rem; font-size:0.825em; font-family:var(--eisuuji); font-weight:400; transform:translateY(-0.0875em);}
.product-categories-link.btns h4 {margin:2em 0 0; font-weight:normal;}
.product-categories-link.btns h4 + ul {margin-top:0.5rem;}
@media (hover: hover) {
	.product-categories-link.btns ul li a:hover {background:var(--acc-color);}
}
@media (max-width:480px) {
	.product-categories-link.btns ul li a {padding:0.5em 1.125em 0.625em;}
	.product-categories-link.btns ul li span.count {margin-left:0.375rem;}
}


.tour-search #search-keyword {padding:3.5em 0.5rem 2em;}



#advanced-search .outer {
	padding-inline:clamp(0.5em,5vw,1em);
	text-align:left;
}

#advanced-search .outer .inner {
	padding-inline:clamp(0.5em,5vw,1em);
}

.selection select {display:inline-block; height:40px; padding:0.15em 0.25em; border:1px solid var(--moji-color); border-radius: var(--radius-search);}
.selection :is(select, option) {font-size:1.05em; color:var(--moji-color); background:#fff;}
.selection option.child {}

#advanced-search input[type="submit"] {
    margin:1.5em 1em 0; padding:0.75em 2.15em 1em;
	background:var(--acc-color); border:2px solid var(--acc-color); border-radius:var(--radius-btn);
	font-family:var(--wabun); color:#fff; font-size:1.2rem; font-weight:700;
	cursor:pointer;
	transition: all 0.33s ease 0s;
}
@media (hover: hover) {
	#advanced-search input[type="submit"]:hover { 
		background:var(--base-color); border:2px solid var(--acc-color); color:var(--acc-color); 
		transition: all 0.14s ease 0s;
	}
}

@media (max-width:480px) {
	#advanced-search h2 {margin:2rem auto 0;}
	#advanced-search .outer {margin-top:1.5em;}
	#advanced-search .outer h3 {font-size:1.2rem;}
	#advanced-search .outer .inner {padding-inline:0;}
	.selection :is(select, option) {font-size:0.9em;}	
	#advanced-search input[type="submit"] {margin:0.875em 1em 1.25em;}
}





/* *********************************************************************
　iframe#iframed 
*/

#iframed {background:var(--base-color);}


/* *********************************************************************
　Meizan   ( /peaks-of-region/ )
*/

.peaks-of-region .iframe-wrapper {margin:3em 0 2em;}

/* +++++++++++++
 filtered list in iframe
*/
.switch-cats {margin:auto; text-align:center; padding-inline:0.5rem; max-width:800px;}
@media (max-width:1119px) {
	.switch-cats {text-align:left;}
}
.switch-cats a {display:inline-block; margin:0.25em 0.5em; font-size:0.85em; text-decoration:underline;}
.switch-cats a.current {color:var(--moji-color); text-decoration:none; font-weight:bold;}
.switch-cats span.no-link {display:inline-block; margin:0.25em 0.5em; color:gray; font-size:0.85em;}
.switch-cats span.count {display:inline-block; color:gray; font-size:0.825em; transform:translateY(-0.0875em);}



/* *********************************************************************
　安全登山への手引き
*/
@media (max-width:782px) {
	.safety-instructions .post-body .wp-block-columns .wp-block-column .wp-block-image:not(.illust) img {width:100%; max-width:400px !important;}
	.safety-instructions .post-body .wp-block-columns .wp-block-column .wp-block-image.illust:not(.mini) img {width:100%; max-width:220px !important;}	
	.safety-instructions .post-body .wp-block-columns .wp-block-column .wp-block-image.illust.mini img {width:100%; max-width:160px !important;}		
}



/* *********************************************************************
　FAQ (よくある質問)
*/

.faq #anchor-link {margin:-1em 0 4em;}
.faq #anchor-link .sbtn-accent {width:11em; padding-inline:0.375em;}

.faq .fixed-page-post .wp-block-table:has(thead) thead th {padding-left:3.5rem; position:relative; color:#fff;} 
.subpage.fixed-page.faq .fixed-page-post .wp-block-table:has(thead) tbody tr > td:first-child {padding-left:3.5rem; position:relative; white-space:wrap; word-break:normal;} 
.faq .fixed-page-post .wp-block-table:has(thead) thead th::after {
	content:"Q"; 
	position:absolute; top:0.5rem; left:0.875rem;
	font-family:var(--eisuuji); font-size:2rem; font-weight:700; /* font-style:italic;*/
	color:var(--base-color);
	z-index:2;
	opacity:0.6;
}
.faq .fixed-page-post .wp-block-table:has(thead) tbody tr > td:first-child::after {
	content:"A"; 
	position:absolute; top:0.75rem; left:1rem;
	font-family:var(--eisuuji); font-size:2rem; font-weight:700; /* font-style:italic;*/
	color:var(--sub-color);
	z-index:2;
	opacity:0.6;
}
@media (min-width:1000px) {
	.faq .fixed-page-post .wp-block-table:has(thead) thead th { font-size:110%; }
}
@media (max-width:640px) {
	.faq .fixed-page-post .wp-block-table:has(thead) thead th { font-size:90%; line-height:1.5; padding-block:0.75em; padding-left:3rem;}
	.subpage.fixed-page.faq .fixed-page-post .wp-block-table:has(thead) tbody tr > td:first-child { font-size:95%; line-height:1.6; padding-left:3rem;}
	.faq .fixed-page-post .wp-block-table:has(thead) thead th::after { top:-0.1rem; left:0.675rem;}
	.faq .fixed-page-post .wp-block-table:has(thead) tbody tr > td:first-child::after { top:-0.1rem; left:0.8rem;}
}



/* *********************************************************************
　TOS (利用規約・参加条件)
*/
:is(.tos, .flow) .fixed-page-post .wp-block-table:has(thead) thead th {font-size:1rem; line-height:1.375;}  
@media (max-width:480px) {
	:is(.tos, .flow) .fixed-page-post .wp-block-table:has(thead) thead th {font-size:0.85rem; line-height:1.325; width:auto; min-width:4.25em;}  
	:is(.tos, .flow) .fixed-page-post .wp-block-table:has(thead) tbody td {font-size:0.825rem; line-height:1.375;}  
}


/* *********************************************************************
　Tour Detail (Children page)
*/
.page-std .kakomi .btn-large {margin:1em auto !important;}
.page-std .shelf p {margin:0 0 1em;}
.page-std .shelf h3 {margin:1.5em 0 1.5rem;}


#to-order {
	display: block;
	position: fixed; bottom:50%; right:0px;
	width: 3.5em; height: 15.5em;
	background: rgba(0,133,104,0.9);
	cursor: pointer;
	border-radius:5px 0 0 5px;
	z-index:101;
	transform:translateY(50%);
	transition:all 0.14s linear 0s;
}
#to-order:hover {
	width:4.25em;
	transition:all 0.08s linear 0s;
}
#to-order:hover::after {
	content: "";
	width: 10px;
	height: 10px;
	position: absolute;
	right: 14px;
	top: 50%;
	margin-top: -5px;
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
	transform: rotate(45deg);
	transition: all 0.14s linear 0s;
}		
#to-order .inner {
	position:absolute; top:1.5rem; left:1.25rem;
	display:block; width:1rem; height:100%;
	color:#fff;
	font-family:'Noto Sans JP', sans-serif, sans;
	line-height:1.15;
}

@media (max-width:1077px) {	
	#to-order {transform:translate(10%,50%) scale(0.8);}
}
@media (max-width:599px) {	
	#to-order {display:none;}
}



/* ***********************
　Colomns , Column
*/
.blog-home #home-body,
.archive #home-body {background:var(--bg-slight);}

.single.blog #related-tour-list {
	padding:3em 0 3em;
	text-align:center;
}
.single.blog #related-tour-list h3 {margin-bottom:0; font-feature-settings:"palt";}
.single.blog #related-tour-list span.except {display:inline-block; margin-left:1rem; font-size:0.85rem; font-weight:300; color:gray;}
.single.blog #related-tour-list td.tour-date {text-align:right;}
.single.blog #related-tour-list .tour-list:has(table) {min-height:auto;}
@media (min-width:1036px) {
	.single.blog #related-tour-list td.eyecatch {padding-right:0;}
	.single.blog #related-tour-list td.tour-date {padding-left:0;}
}

.single.blog #related-post {padding:2em 0 2em; background:var(--bg-owhite);}

.single.blog #related-post  h2 {
	font-size:245%; font-weight:300; letter-spacing:0.2em;
	color:var(--acc-color); opacity:0.45;
}
.single.blog #related-post  a {}


#related-post table.blog-rel {margin:0.5rem 0;}
#related-post .blog-rel th, #related-post .blog-rel td {border:none;} 
#related-post .blog-rel th {width:30% !important; min-width:170px !important; max-width:180px !important; padding:10px; text-align:center;}
#related-post .blog-rel td {width:auto !important; padding:10px; text-align:left !important; font-size:90% !important;}
#related-post .blog-rel .post-tn, #related-post .blog-rel .thumb-frame {display:block; width:150px; height:150px; margin:4px auto; background:rgba(0,0,0,0.15); overflow:hidden; border-radius:var(--radius-btn);}
#related-post .blog-rel td span:not(.each-cat) {display:block;}
#related-post .blog-rel td .post-date {color:#534741; font-size:95%; padding-bottom:2px;}
#related-post .blog-rel td .post-title {color:#534741; font-size:130%; font-weight:700; line-height:1.4; font-feature-settings:"palt";} 
#related-post .blog-rel td .post-cats {font-size:82%; font-weight:500; padding:0.75em 0 0.5em;} 
#related-post .blog-rel td .each-cat {
	display:inline-block; margin-right:0.5em; padding:0 0.65em 0.1em; line-height:1.9; 
	background:transparent; color:rgba(83,71,65,0.5); 
	border:1px solid rgba(83,71,65,0.5); border-radius:3px;
	text-shadow:none !important;
	transition:all 0.33s linear 0s;
}
#related-post .blog-rel td :is(.post-date,.post-title,.post-cats) {color:rgba(55,55,55,0.7);}
#related-post .blog-rel td span.each-cat {
	background:transparent; color:rgba(100,100,100,0.7); 
	border:1px solid rgba(100,100,100,0.5); 
}


@media (max-width:599px) {
	#related-post .blog-rel th {width:25% !important; min-width:120px !important; max-width:120px !important; padding:5px;}
	#related-post .blog-rel .post-tn, #related-post .blog-rel .thumb-frame {width:110px; height:110px;}
	#related-post .blog-rel td span.post-date {font-size:100%; padding-bottom:4px;}
	#related-post .blog-rel td span.post-title {font-size:123%; line-height:1.35; font-feature-settings:"palt";} 
	#related-post .blog-rel td span.post-cats {font-size:85%;} 
	#related-post .blog-rel td span.each-cat {margin-right:0.75em; padding:0 0.35em 0.1em; line-height:1.6; margin-right:4px; font-feature-settings:"palt";}
}
@media (max-width:480px) {
	#related-post .blog-rel td span.post-title {font-size:116%; line-height:1.25;}  	
}





/* ***********************
　Custom Post "item" - Post Card
*/

.post-card-wrapper {padding:0.85em 8px;}
.post-card {height:100%;}

.post-card dl {
	height:100%; position:relative;
	padding:0; margin:0 1.5%;  
	box-shadow:none; transition:all 0.33s linear 0s; 
	background:var(--acc-color);
	color:#fff;
	font-feature-settings:"palt";
} 
@media (hover: hover) {
	a:hover .post-card dl {
		transform:scale(1.025); box-shadow:0 2px 1.15em 2px rgba(0,0,0,0.25); transition:all 0.14s linear 0s; 
	}
}
@media (max-width:480px) {
	.post-card-wrapper {padding:1.5em 0px;}
	/* .post-card dl {margin:0 3.5%; } */
}
/*.post-card dt {width:100%; padding:0.75em 1rem;}*/
.post-card dt h3 {margin:0.5em 0 0.125em; color:#fff; font-size:1.55em; letter-spacing:0.25em;}
.post-card dt {width:100%; padding:0.75em 1rem 0.375em; margin:0; font-size:1rem; letter-spacing:0; color:inherit; line-height:1.4;}
.post-card dd {width:100%; padding:0.75em 1rem;}
.post-card dd:is(.post-date, .tour-date) {width:100%; padding:1rem 1rem 0; font-size:90%; font-family:var(--eisuuji); font-weight:200; color:inherit;}
.post-card dd:is(.post-date, .tour-date) + dt {padding:0.25em 1rem 1.375rem;}
.post-card dd.post-type {width:100%; padding:1rem 1rem 0; font-size:80%; /*font-family:var(--eisuuji);*/ opacity:0.5;}
.post-card dd.post-type + dt {padding:0.25em 1rem 0.75em;}
.post-card dd.excerpt {width:100%; padding:0.75em 1rem; font-size:90%; margin-bottom:1em;}
.post-card dd.eyecatch {position:relative; width:100%; max-width:450px; height:auto;/*200px;*/ background:rgba(243,243,243,1);  overflow:hidden; padding:0; }
.post-card span.imgframe {
	display:block; width:100% !important; min-width:100%; height:auto; margin:0; vertical-align:top; overflow:hidden; 
	background-repeat:no-repeat; background-size:cover; background-position:center 15%;
}
.post-card span.imgframe::after { content:""; display:block; padding-top:100%;}
.post-card dd.eyecatch img {width:auto !important; height:auto !important; vertical-align:middle; margin:0;}
.post-card dd.eyecatch .noimage {position:absolute; top:0; right:0; bottom:0; left:0; margin:0; font-size:28px; text-align:center; padding:2em 0; font-family:var(--eisuuji);}

.extend .post-card dl {position:relative; padding-bottom:3em; line-height:1.5;}
.search .extend .post-card dl {padding-bottom:0.5em;}

.post-card dd.taxo-terms {line-height:1.35;}
.post-card dd.taxo-terms .each-term {
	display:inline-block; margin-right:0.25em; padding:0.125em 0.5em 0.125em; 
	border:1px solid rgba(105,105,105,0.75); color:rgba(105,105,105,0.75);
	font-size:65%;
	/*
	font-family: Verdana, Helvetica, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, "Takao Pゴシック", "TakaoPGothic", sans;	*/
}

.staff .post-card dt {font-size:1.4rem; padding-top:1.25rem; padding-bottom:0;}
.staff .post-card dt span.name-romaji {display:inline-block; margin-left:0.75rem; font-family:var(--eisuuji); font-size:0.9rem; font-weight:300; font-style:italic; opacity:0.8;}
.staff .post-card dd.excerpt {font-size:0.875rem; font-weight:300; line-height:1.7; opacity:0.75; color:var(--alt-color);}
.search .post-card dt {font-size:1.2rem;}
@media (max-width:600px) {
	.search .post-card dt {font-size:1.1rem;}
}
@media (max-width:480px) {
	.search .post-card dt {font-size:1rem;}
}

.post-card dd.staff-spec {padding-top:1rem; padding-bottom:0.25rem;  font-size:1rem;}
.staff-spec div {font-size:0.85em; line-height:1.5; margin:0;}
.post-card dd.staff-spec + dt {padding-top:0 !important; padding-bottom:1rem; font-size:1.2rem !important;}




.taxo-large-button {
	position:relative; 
	display: flex; align-items: center; justify-content:center;
	width:100%; height:80px; 
	background:#fff; border:1px solid #ddd; 
	box-shadow: 0px 3px 5px rgba(20, 20, 20, 0.3);
	font-feature-settings:"pkna";
	transition:all 0.33s linear 0s;
}
.taxo-large-button:hover { transform:translate(2px,2px); transition:all 0.14s linear 0s;}
.taxo-large-button::after {
	content:" "; width:10px; height:10px;
	position:absolute; right:10px; top:50%; margin-top:-5px;
	border-right:2px solid #4bf;	border-top:2px solid #4bf;
	transform:rotate(45deg);
	transition:all 0.14s linear 0s;
}
.taxo-large-button:hover::after {
	content:" "; width:10px; height:10px;
	position:absolute; right:8px; top:50%; margin-top:-5px;
	border-right:2px solid salmon;	border-top:2px solid salmon;
	transform:rotate(45deg);
	transition:all 0.14s linear 0s;
}
.taxo-large-button span {display:block; margin:auto 1.5em; }

.rel-duo-wrapper {width:100px; height:100px; background:rgba(0,0,0,0.2); border-radius:6px; overflow:hidden;}
.rel-duo-wrapper .yoko {width:100px; height:50px;}
.rel-duo-wrapper .tate {width:50px; height:100px;}
.rel-duo-wrapper .yoko, .rel-duo-wrapper .tate {background-repeat:no-repeat; background-size:cover; background-position:center center;}

img.this-case-photo {width:100% !important; max-width:330px !important;}




.taxo-term-list {
	padding:2em auto; margin-bottom:2em; font-size:125%;
 	font-family:'Noto Sans JP', sans-serif, sans; 
	text-align:center;
}
.taxo-term-list ul {padding-left:0; margin-top:0;}
.taxo-term-list ul li {margin:0 0.5em;}
.taxo-term-list a {
	font-size:0.8em; line-height:1;
	padding:0.35em 0.75em 0.5em; 
	background:rgba(25,75,155,0.1);
	border: 1px solid var(--acc-color); 
	color:var(--acc-color);
}
.taxo-term-list  a:hover {
	background:var(--acc-color);
	border:1px solid var(--acc-color);
	color:#fff;
}




/* ***********************
　Staff
*/
.staff #cpt-body,
.type--guide #cpt-body {background:var(--bg-slight);}

.staff .post-card dl, 
.type--guide .post-card dl {padding-bottom:0.25rem;}
.staff .post-card dt,
.type--guide .post-card dt {font-size:1.2rem;}
.staff .post-card dd,
.type--guide .post-card dd {padding-top:0rem;}


.portrait {text-align:center;}
.portrait img {width:100%; max-width:220px; margin:1rem auto;}
.type--guide h3.en {color:#888; font-weight:300;}


.staff #items {padding:2em 0 5em;}


.single.type--guide .each-term {
    display: inline-block;
    margin-right: 0.25em;
    padding: 0.125em 0.5em 0.125em;
    border: 1px solid rgba(105,105,105,0.8);
    color: rgba(105,105,105,0.8);
    background: rgba(105,105,105,0);
}


.spec .profile ul li {list-style: circle;}
.spec h2.hookless {margin:0.75em 0 0.25em;}
.spec h2.hookless span {margin:0 0 0 0.75rem; font-size:1rem; font-weight:normal;}
.spec h2.hookless + p {margin:0 0 2rem; padding-left:0.125em; color:#888;}
.spec .kamoku ul {padding-left:0.75em;}




/* ***********************
　About Icons
*/
span.setsumei {display:inline-block; margin-left:0.25em;}





/* ***********************
  Courses
*/
.page-spl #block-editor-body {padding:4em 0 4em;}
.page-spl #block-editor-body h2:first-child {margin-top:1rem;}

.mt-seminar.page-spl #block-editor-body {padding:1.5em 0 4em;}
.mt-seminar #seminar-list {padding:0 0 5em;}



/* ***********************
  About
*/
.about .wp-block-media-text.alignwide.is-stacked-on-mobile figure {text-align:center;}
.about .wp-block-media-text.alignwide.is-stacked-on-mobile figure img {width:100%; max-width:240px; margin:auto;}
.spec th {white-space:nowrap;}

@media only screen and (min-width: 768px) {
	.spec th {width:8em;}
}



/* ***********************
  Documents
*/
:is(.documents, .download) #page-body a[target="_blank"]:not([class])::after {display:none;}




/* ***********************
  Google map
*/
.map-container {text-align:center; width: 100%;}
.map-container iframe{	display: block; pointer-events: none; position: relative;}
.map-container iframe.clicked{pointer-events: auto;}

.fixed-page .map-container {text-align:center; margin:1.5rem 0;}
.fixed-page .map-container + .wp-block-columns {margin-top:3em;}

#wooc #detail .map-container iframe {height:550px;}

@media only screen and (min-width: 900px) {
	.map-container iframe {width:100%; height:100%; margin:0; border:none !important;}
	.fixed-page .map-container iframe {height:550px;}	
	#wooc #detail .map-container iframe {height:450px;}
}
@media only screen and (max-width: 899px) {
	.map-container iframe {width:96%; height:75vh; max-height:600px; margin:0 2%; border:1px solid #999;}
	.fixed-page .map-container iframe {height:440px;}
	#wooc #detail .map-container iframe {height:340px;}
}



/* ***********************
   contact
*/

.contact .post-body .btn-line {padding:0.65rem 2rem 0.5rem; font-size:1.15rem ;line-height:1;}
.contact .post-body .btn-line img {height:40px; margin:0 8px 0 0;}

.contact .wpcf7-form {background:transparent; padding:0;}
.contact .fixed-page-post {max-width:660px; margin:auto; padding-bottom:3em;} 
#contact-form-wrapper {padding-bottom:4em;}



li.chk-xl {
	line-height:1.35em;
	height: auto; font-size:36px;
	list-style:none; 
	background: url(./img/icon/chk.png) no-repeat 0 0;
	background-size:48px 48px;
	padding: 4px 0 6px 1.5em;
	margin: 0.5em 0;
}
li.chk {
	line-height:1.35em;
	height: auto; font-size:120%;
	background: url(./img/icon/chk.png) no-repeat 0 0;
	background-size:1.75em 1.75em;
	padding: 0.25em 0 0.5em 2.25em;
	margin: 0.75em 0;
}



/* ***********************
   cancel
*/
.cancel .fixed-page-post {max-width:660px; margin:auto; padding-bottom:3em;} 




/* ***********************
   privacy-policy / terms-of-service
*/
.privacy-policy .fixed-page-post,
.tokusho .fixed-page-post,
.mt-tos .fixed-page-post,
.snow-tos .fixed-page-post,
.terms-of-service .fixed-page-post {max-width:770px; margin:auto;}

.privacy-policy h1 span.h1-en-caption,
.terms-of-service h1 span.h1-en-caption {font-size:0.9em;}

.terms-of-service .anchor-links {text-align:center;}
.terms-of-service .anchor-links.at-top {margin:0 0 3em; }
.terms-of-service .anchor-links.at-bottom {margin:3em 0 0; }
.terms-of-service .anchor-link {width:11em; margin:0 0.5em 1em;}

.terms-of-service .kakomi {margin:3em 0 4.5em; border:1px solid #ccc; border-radius:6px; padding:1em 1em 1em;}

/*

*/
.tos-links {text-align:right;}
.tos-links a {display:inline-block; margin:0.25em 0.5em; font-size:0.75rem; text-decoration:underline;}
.tos-links a:hover {color:var(--hover-color);}



#policy ol {margin:2em 0;}
#policy ol li {	line-height:1.7em; font-size:20px; margin:1em 0;}






/* ****************************************
  Taxonomy -- Common
*/

.taxo-list-wrapper {margin:1em 0; padding:0.5em 1em; font-size:90%;}
.term-list {margin:1em 0; padding-left:1em;}
.term-list li {display:inline-block; margin:0.5em 1.5em 0.5em 0;}

.taxo .browseback {margin-top:1.5rem;}




/* ****************************************
  Search Result
*/

h2.c-search-summary {
	margin:0 0 1rem; padding:0 0.5rem;
	font-size:1.3rem; font-weight:700; color:var(--acc-color);
}
h2.c-search-summary span.batten {
	display:inline-block; margin-inline:0.25rem;
	color:var(--gray-color); opacity:0.8; 
	font-size:1rem; font-weight:300;
}
h2.c-search-summary span.suffix {
	display:inline-block; margin-inline:0.5rem;
	color:var(--gray-color); opacity:0.9; 
	font-size:1rem; font-weight:300;
}

.hits {margin:0 0.25rem;font-size:0.9rem; font-weight:normal; color:#fff; padding:0.25em 0.75em; background:#bdbdbd; border-radius:3px; font-feature-settings:"palt"; }
.bg-ivory .hits{color:#FFF5E4; font-weight:bold;}
.showing {margin:0 0 0 0.5rem; font-size:0.8rem; font-weight:normal; color:#bababa; font-feature-settings:"palt"; }
.bg-ivory .hits-indicator {padding:0.75em 0;}
.has-list-filtered .hits-indicator p {margin-top:-0.25em; margin-bottom:0.25em;}

.extend-search {text-align:right;}
.extend-search a {font-size:80%; text-decoration:underline; text-underline-offset:0.25em;}
@media (max-width:1188px) {
	.extend-search {padding-inline:1em;}
}
@media (min-width:768px) {
	div:has(.extend-search) + div:has(.pager) .pager {padding-top:0.5em;}
}

.search #not-found {text-align:left;}
@media (min-width:769px) {
	.search #not-found {margin-top:-3em; margin-bottom:-2em;}
}
@media (max-width:768px) {
	.search #not-found {margin-top:-1em;}
}
#not-found h2 {font-family:var(--eisuuji); font-weight:200; font-size:300%; opacity:0.35; margin-top:0; letter-spacing:0.085em;}
@media (max-width:519px) {
	#not-found h2 {font-weight:400; font-size:clamp(200%,9.5vw,290%);}
}
.search #not-found .currently + .for-past {margin:-0.25em 0 -1em; color:crimson;}

.options {padding:1em 0;}
.main-option, .sub-option {display:inline-block; margin:1rem 0.5rem !important; width:13em !important; text-align:center !important}
#not-found .extend-search {text-align:left; margin:0.375em 1rem 2em; padding-inline:0;}
#not-found .extend-search a {font-size:112%;}
#not-found .extend-search a span {display:inline-block;  text-decoration:underline; text-underline-offset:0.25em;}
#not-found a.go-home {text-decoration:underline; text-underline-offset:0.25em;}

.sub-option .searchform {width:12em; margin:auto;}
.pager {padding:2em 0 3em;}

#search-options {margin: 0 auto; padding: 3em 0; background:#eaeaea;}
:is(#not-found ,#search-options) .f-search-wrapper {display:inline-block; margin-left:1em;}
:is(#not-found ,#search-options)  .f-search {width:100%;}
:is(#not-found ,#search-options) :is(.main-option, .sub-option) {vertical-align:middle;}

@media (max-width:1299px) {
	#not-found > .solo {max-width:580px; margin-inline:auto;}
}



/* ****************************************
  Appendix
*/


.page-std #appendix {padding:4em 0 5em;}
.page-std #appendix h3.taxo-label {margin:1rem 0 2rem;} 
.page-std #appendix .taxo-btn-wrapper {padding-top:1.5rem;}

.page-spl #appendix {padding:4.5em 0 5em; background:var(--acc-gra-d2u);}
.page-spl.snow #appendix {background:var(--bg-mlight);}
.page-spl.mt #appendix {background:var(--bg-mlight-alt);}
.page-spl #appendix h2.en {font-size:280%; color:#fff;}

:is(.page-std, .page-child, .blog-home, .archive, .single.blog) :is(#appendix, .appendix) h2 {
	font-size:245%; font-weight:300; letter-spacing:0.2em;
	color:var(--base-color); opacity:0.35;
}
:is(.page-std, .page-child, .blog-home, .archive, .single.blog) :is(#appendix, .appendix) a {color:var(--base-color);}
@media (hover: hover) {
	:is(.page-std, .page-child, .blog-home, .archive) :is(#appendix, .appendix) a:hover {color:var(--base-color); text-shadow:0 0 3px rgba(0,0,0,0.5);}
}



.search #appendix {/*background:var(--acc-gra-d2u);*/}
:is(.search, .mt-seminar) #appendix h2.en {font-size:200%; color:#fff; font-weight:400; letter-spacing:0.125em; text-indent:0.125em; opacity:0.5;}

@media (min-width:769px) and (max-width:1299px) {
	:is(.search, .mt-seminar) .search-menu.btns-wrapper {max-width:900px; margin-inline:auto;}
}

@media (max-width:768px) {
	#appendix .rel-one {text-align:center;}
	#appendix .rel-one .blog-rel {max-width:500px; margin-inline:auto;}
}



/* ****************************************
  face icon, Bubble
*/


.face-icon {width:25vw; max-width:72px; margin:0.5em !important; border-radius:7px;}
.face-icon.maru {border-radius:100%;}
.face-icon.kaku {border-radius:0%;}


.bubble {display:inline-block; position:relative; padding:1em; border-radius:6px; background:#fff; max-width:555px; margin-top:0.75em !important; margin-bottom:0.75em !important;}
.bubble.to-right::before {position:absolute; left:-32px; bottom:50%; margin-bottom:-16px; content:""; border:16px solid transparent; border-right:16px solid #fff;} 
.bubble.to-left::before {position:absolute; right:-32px; bottom:50%; margin-bottom:-16px;  content:""; border:16px solid transparent; border-left:16px solid #fff;} 
.bubble.bordered {border:1px solid #bababa;} 
.bubble.bordered.to-right::before {position:absolute; left:-32px; bottom:50%; margin-bottom:-16px; content:""; border:16px solid transparent; border-right:16px solid #bababa;} 
.bubble.bordered.to-right::after {position:absolute; left:-31px; bottom:50%; margin-bottom:-16px; content:""; border:16px solid transparent; border-right:16px solid #fff;} 
.bubble.bordered.to-left::before {position:absolute; right:-32px; bottom:50%; margin-bottom:-16px;  content:""; border:16px solid transparent; border-left:16px solid #bababa;} 
.bubble.bordered.to-left::after {position:absolute; right:-31px; bottom:50%; margin-bottom:-16px;  content:""; border:16px solid transparent; border-left:16px solid #fff;} 





/* ****************************************
  fancybox 3
*/

.fancybox-button--close {z-index:99999 !important; background:var(--link-color) !important;}
.fancybox-slide--iframe .fancybox-content {height:auto; max-height:85svh !important;}

.fancybox-active html {overflow:hidden;}

@media (max-width:480px) {
	.fancybox-slide.fancybox-slide--iframe {padding-inline:0.75rem !important;}
}




/********/

#loading {
  margin: 80px auto;
  font-size: 8px;
  position: relative;
  text-indent: -9999em;
  border-top: 1.1em solid rgba(232,232,232,0.32);
  border-right: 1.1em solid rgba(232,232,232,0.32);
  border-bottom: 1.1em solid rgba(232,232,232,0.32);
  border-left: 1.1em solid var(--alt-color); /*rgba(88,88,88,1);*/
  transform: translateZ(0);
  animation: load8 1.1s infinite linear;
}
#loading,
#loading:after {
  border-radius: 50%;
  width: 6.5em;
  height: 6.5em;
}
@keyframes load8 {
  0% { transform: rotate(0deg);}
  100% { transform: rotate(360deg);}
}
#loading{ position:fixed; left:50%; top:40%; margin-left:-3.25em; text-align:center;}



.fuwa-sp {visibility:hidden;}



.powatt {
	animation-fill-mode:both;
	animation-duration:2s;
	animation-name: Powatter;
	visibility: visible !important;
}
@keyframes Powatter {
	0% { opacity: 0; transform: translateY(20px); }
	100% { opacity: 1; transform: translateY(0); }
}

.powatt-short-delay {
	animation-fill-mode:both;
	animation-duration:2s;
	animation-name: Powatter;
	visibility: visible !important;
    animation-delay: 0.8s; 		
}

.powatt-mid-delay {
	animation-fill-mode:both;
	animation-duration:2s;
	animation-name: Powatter;
	visibility: visible !important;
    animation-delay: 1.6s; 		
}

.powatt-mid-delay-2 {
	animation-fill-mode:both;
	animation-duration:2s;
	animation-name: Powatter;
	visibility: visible !important;
    animation-delay: 2.0s; 		
}

.powatt-long-delay {
	animation-fill-mode:both;
	animation-duration:2s;
	animation-name: Powatter;
	visibility: visible !important;
    animation-delay: 2.4s; 		
}

.fuwatt-l2r {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-LtoR;
	visibility: visible !important;
    animation-delay: 0.225s; 			
}
@keyframes Fuwatter-LtoR {
	0% { opacity: 0; transform: translateX(-30px); }
	100% { opacity: 1; transform: translateX(0); }
}

.fuwatt-l2r-short-delay {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-LtoR;
	visibility: visible !important;
    animation-delay: 0.8s; 			
}
.fuwatt-l2r-delay {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-LtoR;
	visibility: visible !important;
    animation-delay: 1.6s; 			
}

.fuwatt-r2l {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-RtoL;
	visibility: visible !important;
    animation-delay: 0.225s; 		
}
@keyframes Fuwatter-RtoL {
	0% { opacity: 0; transform: translateX(30px); }
	100% { opacity: 1; transform: translateX(0); }
}
.fuwatt-r2l-short-delay {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-RtoL;
	visibility: visible !important;
    animation-delay: 0.8s; 		
}
.fuwatt-r2l-short-delay-2 {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-RtoL;
	visibility: visible !important;
    animation-delay: 1.0s; 		
}
.fuwatt-r2l-short-delay-3 {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-RtoL;
	visibility: visible !important;
    animation-delay: 1.2s; 		
}
.fuwatt-r2l-delay {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-RtoL;
	visibility: visible !important;
    animation-delay: 1.6s; 		
}



.fuwatt {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter;
	visibility: visible !important;
}
@keyframes Fuwatter {
	0% { opacity: 0; transform: translateY(-20px); }
	100% { opacity: 1; transform: translateY(0); }
}

.fuwatt-short-delay {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-LD;
	visibility: visible !important;
    animation-delay: 0.4s; 	
}
@keyframes Fuwatter-SD {
	0% { opacity: 0; transform: translateY(-20px); }
	100% { opacity: 1; transform: translateY(0); }
}

.fuwatt-mid-delay {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-LD;
	visibility: visible !important;
    animation-delay: 0.8s; 	
}
@keyframes Fuwatter-MD {
	0% { opacity: 0; transform: translateY(-20px); }
	100% { opacity: 1; transform: translateY(0); }
}

.fuwatt-long-delay {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-LD;
	visibility: visible !important;
    animation-delay: 1.2s; 	
}
@keyframes Fuwatter-LD {
	0% { opacity: 0; transform: translateY(-20px); }
	100% { opacity: 1; transform: translateY(0); }
}


.guwatt {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Guwatter;
	visibility: visible !important;
}
@keyframes Guwatter {
	0% { opacity: 0; transform: translateY(40px); }
	100% { opacity: 1; transform: translateY(0); }
}




.fuwatt-foreside {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-ForeSide;
	visibility: visible !important;
    animation-delay: 0.575s; 			
}
@keyframes Fuwatter-ForeSide {
	0% { opacity: 0; transform: translate(30px,30px); }
	100% { opacity: 1; transform: translate(0,0); }
}

.fuwatt-backside {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-BackSide;
	visibility: visible !important;
    animation-delay: 0.475s; 		
}
@keyframes Fuwatter-BackSide {
	0% { opacity: 0; transform: translate(-30px,-30px); }
	100% { opacity: 1; transform: translate(0,0); }
}

.fuwatt-foreside-sp {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-ForeSide;
	visibility: visible !important;
    animation-delay: 0.025s; 			
}
@keyframes Fuwatter-ForeSide {
	0% { opacity: 0; transform: translate(30px,30px); }
	100% { opacity: 1; transform: translate(0,0); }
}

.fuwatt-backside-sp {
	animation-fill-mode:both;
	animation-duration:1s;
	animation-name: Fuwatter-BackSide;
	visibility: visible !important;
    animation-delay: 0s; 		
}
@keyframes Fuwatter-BackSide {
	0% { opacity: 0; transform: translate(-30px,-30px); }
	100% { opacity: 1; transform: translate(0,0); }
}



.fuwa-sp,
.fuwa-foreside-sp,
.fuwa-backside-sp {visibility:hidden;}



/* =============================================================================
   Media Queries
   ========================================================================== */


@media only screen and (min-width: 1078px) {
	.subpage-eyecatch {background-repeat:no-repeat; background-attachment:scroll; background-size:cover; background-position:center center;}
}
@media only screen and (max-width: 1077px) {
	.subpage-eyecatch {background-repeat:no-repeat; background-attachment:scroll; background-size:cover; background-position:center 10%;}

	.saru-kao {bottom:10%; right:8.5%; width:80px;}
	.saru-serif {bottom:20%; right:4%; width:115px;}
	
}
@media only screen and (min-width: 996px) {

}
@media only screen and (max-width: 995px) {

}

@media only screen and (min-width: 801px) {


	.a-area {background:inherit; transition:all 0.5s linear 0s;}
	.a-area.a-pink:hover {color:#d6c; background:rgba(255,221,232,0.4); transition:all 0.34s linear 0s;}
	.a-area.a-blue:hover {color:#00f; background:rgba(81,201,255,0.15); transition:all 0.34s linear 0s;}
}

@media only screen and (max-width: 800px) {
	
	.subpage-eyecatch { background-attachment:scroll; background-size:cover; background-position:center center;}	

	h1 span.post-title {text-align:left !important; line-height:1.5em !important;}
	
}

@media only screen and (min-width: 769px)  {

}


/* All Mobile Sizes */
@media only screen and (max-width: 768px) {

	#header-inner {height:auto; min-height:100px;}	
	
	#page-title {height:247.5px;}			


	
	/* #body-menu etc --- @ front-page, page-menu*/
	.keep-half.smp-waku {border-top:1px solid #ddd; margin-top:1.5em;}
	.keep-half.smp-waku > div { padding:0.5em; } 
	.keep-half.smp-waku > div {border-bottom:1px solid #ddd;}
	.keep-half.smp-waku > div:nth-child(odd) {border-right:1px solid #ddd;}



	.bubble {width:auto; max-width:408px;}

}

/* Mobile Landscape Size to Tablet Portrait */
@media only screen and (min-width: 481px) and (max-width: 768px) {

	h1 span.post-title {font-size:82.5%; line-height:1.5em !important;}

}


@media only screen and (max-width: 700px) {


}

/* Mobile Portrait Size to Mobile Landscape Size */
@media only screen and (max-width: 480px) {

	.toppage #page-title h1 {font-size:7vmin;}	
	.subpage #page-title h1 {letter-spacing:0.15em;}
	
	.toppage #logo { position:absolute; left:0.5em; top:0; max-width:250px; text-align:left;}	


	#page-title h1 { font-size:220%;} 
	.single #page-title h1 { font-size:175%; line-height:1.1;} 

	h1 span.post-title {letter-spacing:0;}
	h1 span.h1-en-caption { bottom:20px; right: 1%; left:1%; margin:auto; font-size:1em;}
	
	.feature-text {font-size:125%; line-height:1.7em; text-align:left;}

	.motto p {text-align:left;}

	#page-upper a.gbtn-aqua-small {font-size:85%; font-feature-settings:"pkna";}






	#intro-box h2 {font-size:5.2vw; letter-spacing:-0.025em;}

	.keep-half .post-card-wrapper {padding:0.5em 0;}
	.extend .post-card dl {padding-bottom:2.25em; line-height:1.35;}

	.privacy-policy #page-title h1 {font-size:175%;}
	.privacy-policy h1 span.h1-en-caption {font-size:0.95em;}
	.privacy-policy h2.jp {font-size:175%;}
	
	ul.term-list {padding-left:0;}	
	ul.term-list li { font-size:100%; margin-top:0.75em; margin-bottom:0.75em;}
	
	

	.face-icon,
	.face-photo {width:20vw; max-width:80px; margin:0.5em 0;}
	.bubble {padding:0.75em; font-size:90%; max-width:55vw;}
	.bubble.to-right::before {position:absolute; left:-16px; bottom:50%; margin-bottom:-8px; content:""; border:8px solid transparent; border-right:8px solid #fff;} 
	.bubble.to-left::before {position:absolute; right:-16px; bottom:50%; margin-bottom:-8px;  content:""; border:8px solid transparent; border-left:8px solid #fff;} 
	.bubble.bordered {border:1px solid #bababa;} 
	.bubble.bordered.to-right::before {position:absolute; left:-16px; bottom:50%; margin-bottom:-8px; content:""; border:8px solid transparent; border-right:8px solid #bababa;} 
	.bubble.bordered.to-right::after {position:absolute; left:-15px; bottom:50%; margin-bottom:-8px; content:""; border:8px solid transparent; border-right:8px solid #fff;} 
	.bubble.bordered.to-left::before {position:absolute; right:-16px; bottom:50%; margin-bottom:-8px;  content:""; border:8px solid transparent; border-left:8px solid #bababa;} 
	.bubble.bordered.to-left::after {position:absolute; right:-15px; bottom:50%; margin-bottom:-8px;  content:""; border:8px solid transparent; border-left:8px solid #fff;} 	

	
	
}


/* */



