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

*{
	margin: 0; padding:0;
	z-index: 1;
	letter-spacing: 0.08em;
	line-height: 1.8em;

	}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
* {
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
* {
	font-family: 'Noto Serif JP', serif;
	letter-spacing: 0.05em; 
	line-height: 1.7em;
}

iframe {
	vertical-align: bottom;
}


/* ===  1 共通 === */
html {height: 100%; background: #f9f8f4;}
body{margin: 0;padding: 0;border: 0;outline: 0;-webkit-text-size-adjust: 100%; overflow-x: hidden; height: 100%;}
img{ max-width:100%;  vertical-align: bottom;}
video { vertical-align: bottom; }

/*文字サイズ*/
p {
	font-size: 16px; 
	margin-bottom: 24px; 
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	letter-spacing: 0.08em;
	line-height: 2em;
	
}

a {
	color: #222;
	transition: .4s;
}


.h3_mini {
	font-size: 18px;
}
/*文字サイズ END*/

/*色を白に変更*/
.font_white {
	color: #fff !important;
}
.border_b_white {
	border-bottom: 1px solid #fff !important;
}
.line_w::before {
	content: "";
	position: relative;
	top: -6px;
	left: -0px;
	display: inline-block;
	width: 20px;
	height: 1px;
	background-color: #fff !important;
	margin-right: 16px;
}
/*色を白に変更 END*/


/*BASIC*/
.ml32 {margin-left: 32px;}
.mt32 {margin-top: 32px;}
.mt64 {margin-top: 64px;}
.mt128 {margin-top: 128px !important;}
.mt-128 {margin-top: -128px !important;}

.mb40 {margin-bottom: 40px;}
.mb64 {margin-bottom: 64px;}
.mb80 {margin-bottom: 80px;}
.mb128 {margin-bottom: 128px;}
.pt32 {padding-top: 32px !important;}
.p32 {padding: 32px;}
.pl32_nosp {padding-left: 32px;}
.pr32_nosp {padding-right: 32px;}

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

/*font*/
.font14 {font-size: 14px;}
.font16 {font-size: 16px;}
.font32 {font-size: 32px;}
/*FLEX*/
.flex {
	display: flex;
	justify-content: flex-start;
	flex-direction: row;
	flex-wrap:wrap;
}
.flex_bet {
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap:wrap;
}
.flex_center {
	display: flex;
	justify-content: center;
	flex-direction: row;
	flex-wrap:wrap;
}
.flex_end {
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	flex-wrap:wrap;
}
.ai_flex_start { align-items: flex-start; }
.ai_center { align-items: center; }

.z-index99 {
	position: relative;
	z-index: 99;
}


.w1140 {
	max-width: 1140px;
	width: auto;
	margin-left: auto;
	margin-right: auto;
}

.w1340 {
	max-width: 1340px;
	width: auto;
	margin-left: auto;
	margin-right: auto;
}

.w50per {width: 50%;}
.w50per-24px {
	width:calc(50% - 48px);
	padding: 24px;
}

.tex_l {text-align: left !important;}
.tex_r {text-align: right !important;}
.font15s {font-size: 15px !important;
		font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 1.7em;
}


.Minion {
	font-family: "minion-pro", serif;
	font-weight: 700;
	font-style: normal;
}
.entry-content {
	text-align: left;
}
.entry-content h2 {
	border-bottom: 1px solid #000;
	padding: 0 0 8px 0;
	margin: 16px 0 16px 0;
}

.entry-content p {
	margin: 0 0 16px 0 !important;
}



table{
	width: 100%;
	margin: 16px 0;
	padding: 16px;
	background: #e9e9e9;
	border-radius: 8px;
}

table th{
	position: relative;
	text-align: left;
	width: 15%;
}

table th:after{
	display: block;
	content: "";
	width: 16px;
	height: 2px;
	background-color: #333;
	position: absolute;
	top:calc(50% - 1px);
	right:-15px;
}

table td{
	text-align: left;
	padding:7px 0 7px 30px;
	width: 85%;
}




/* ===  2 HEADER === */

header{
	width: 100%;
	padding :0px 0px 0px 32px;
	text-align: left;
	z-index: 9;
	height: 60px;
	min-width: 280px;
	position: absolute;
	-moz-transition: .4s;
	-webkit-transition: .4s;
	-o-transition: .4s;
	-ms-transition: .4s;
	transition: .4s;
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap:wrap;
	align-items: flex-start;

}

header a { display: inline-block; }

.logo_ttls {
	background: #171615;
	padding: 24px;
	display: inline-block;
	margin: 0;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 99;
}

.logo_ttls a img {
	width: 80px; 
}

.header_l {
	display: flex;
	justify-content: flex-start;
	flex-direction: row;
	flex-wrap:wrap;
	color: #fff;
	font-size: 16px;
	padding-top: 16px;
}
.header_l a {
	color: #fff;
	font-size: 24px;
	display: inline-block;
	padding: 0 4px;
}
.header_l a:hover {
	color: #fff;
	font-size: 24px;
	display: inline-block;
	padding: 0 4px;
	text-decoration: underline;
}
.header_r {
	display: flex;
	justify-content: flex-end;
	flex-direction: row;
	flex-wrap:wrap;
	background: #171615;
	padding: 0;
	margin: 0;
	width: 190px;
	position: fixed !important;
	top:0;
	right: 0;
	z-index: 10;
}
.header_r a {
	color: #fff !important;
}

.header_r2 {
	padding: 16px 32px;
	justify-content: center;
	align-items: center;
	border-right: 1px solid #fff;
	font-size: 14px;
	margin-right: 64px;
	color: #fff;
}

.header_r2:hover {
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
}


/*　ハンバーガーボタン　*/
.hamburger {
	display : block;
	position: fixed;
	z-index : 999;
	right : 10px;
	top   : 7px;
	width : 42px;
	height: 42px;
	cursor: pointer;
	text-align: center;
}
.hamburger span {
	display : block;
	position: absolute;
	width   : 24px;
	height  : 2px ;
	left    : 9px;
	background : #fff;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition   : 0.3s ease-in-out;
	transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(1) {
	top: 10px;
}
.hamburger span:nth-child(2) {
	top: 20px;
}
.hamburger span:nth-child(3) {
	top: 30px;
}

/* ナビ開いてる時のボタン */
.hamburger.active span{
	background :#fff;
}
.hamburger.active span:nth-child(1) {
	-webkit-transform: translateY(6px);
	-moz-transform   : translateY(6px);
	transform        : translateY(6px);
}
.hamburger.active span:nth-child(2){
-webkit-transform: translateY(-4px);
	-moz-transform   : translateY(-4px);
	transform        : translateY(-4px);
}  

.hamburger.active span:nth-child(3) {
	-webkit-transform: translateY(-14px);
	-moz-transform   : translateY(-14px);
	transform        : translateY(-14px);
}

nav.globalMenuSp {
	position: absolute;
	z-index : -999;
	top  : 0;
	left : 0;
	color: #fff;
	background: #dbd0c6;
	text-align: center;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: opacity .6s ease, visibility .6s ease;
	transition: .2s;
	
	
}

.globalMenuSp_in {
	display: flex;
	justify-content: flex-start;
	flex-direction: row;
	flex-wrap:wrap;
	width: 70%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);

}

.globalMenuSp_in1 {
	width: 240px;
	margin: 0 40px 0 0;
}

.globalMenuSp_in2 {
	width:calc(100% - 320px);
	margin: 0 0 0 0;
}

.globalMenuSp_in2 b {
	margin-left: 16px;
	font-size: 14px;
	font-weight: normal;
}


nav.globalMenuSp ul li {
	list-style-type: none;
	padding: 0;
	width: 100%;
	transition: .4s all;
}
nav.globalMenuSp ul li:last-child {
	padding-bottom: 0;
}


.globalMenuSp_in1 a {
	display: block;
	color: #222;
	padding: 8px 0;
	text-decoration :none;
	font-size: 40px;
	text-align: left;
	transition: .2s;
}

.mini_menu {
	font-size: 32px !important;
	padding-left: 24px !important;
	display: block !important;
}

.globalMenuSp_in1 a:hover{
	color: #fff;
	transition: .2s;
}

.globalMenuSp_in1 a span {
	display: block;
	font-size: 14px !important;
}

.globalMenuSp_in2 a {
	display: block;
	color: #222;
	padding: 8px 0;
	text-decoration :none;
	font-size: 40px;
	text-align: left;
	transition: .2s;
}

.globalMenuSp_in2 a:hover{
	color: #fff;
	transition: .2s;
	
}

.globalMenuSp_in2 a span {
	display: block;
	font-size: 14px !important;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
	opacity: 100;
	position: fixed;
	z-index : 998;

}

.menu_insta {
	line-height: 14px !important;
}

/* ===3 FV ===*/
.main_text {
	/* top と left に 50% を指定して、要素の左上を中央にする. */
	position: absolute;
	top:  calc(100% - 160px);
	left: calc(50% + 32px);

		/* tarnslate で要素の縦横それぞれ50%分の長さを動かすことで、要素を中央にする. */
	transform: translate(-50%, -50%);
	text-align: left;
	z-index: 3;
	width: auto;
}

.main_tex_indent {
 padding-top: 8px;
}

.main_text h4 {
 font-family: "minion-pro", serif;
	 font-weight: 700;
	 font-style: normal;
	 font-size: 100px;
	 line-height: 1.3em !important;
	 color: #fff;
	 
}
.main_text h5 {
 font-family: "minion-pro", serif;
	 font-weight: 700;
	 font-style: normal;
	 font-size: 50px;
	 display: inline-block;
	 line-height: 1.3em !important;
	 color: #fff;
}
.main_text h6 {
 font-size: 16px;
 padding: 8px 16px;
 border: 1px solid #fff;
 border-radius: 8px;
 display: inline-block;
 color: #fff;
 margin-left: 32px;
 position: relative;
 bottom: 8px;
}

.mov {
	position: absolute;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: #111;
}

.mov img {
	min-width: 100%;
	min-height: 100%;
	object-fit: cover;
	position: relative;
	z-index: 1;
}
.zoom_btn {
	border-radius: 16px;
	background: url(imgs/zoom.png) no-repeat left 24px center #d90101;
	background-size: 60px;
	padding: 16px 32px 16px 106px;
	font-size: 18px;
	font-weight: bold;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	color: #fff;
	position: relative;
	top: 32px;
	border: 1px solid #fff;
	min-width: 340px;
	display: inline-block;
}
.zoom_btn:hover {
	border-radius: 16px;
	background: url(imgs/zoom.png) no-repeat left 24px center #111;
	background-size: 60px;
	padding: 16px 32px 16px 106px;
	font-size: 18px;
	font-weight: bold;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	color: #fff;
	position: relative;
	top: 32px;
	border: 1px solid #fff;
	min-width: 340px;
	display: inline-block;
}




/* === 4 !Footer ===*/

footer {
		background: #121111;
		padding: 64px 32px;
		font-size: 11px;
		color: #fff;
		text-align: center;
}
.footer_menu {
			display: flex;
			justify-content: flex-end;
			flex-direction: row;
			flex-wrap:wrap;
			margin-top: 32px;
}
.footer_menu a {
		color: #fff;
		font-size: 13px;
		margin-left: 24px;
}
.footer_logo {
	background: #fff;
	padding: 24px;
	margin-right: 24px;
}
.footer_logo img {
	width: 80px;
}
 

.main_text2 {
		text-align: left;
		z-index: 3;
		width:calc(100% - 158px);
}
	
.main_tex_indent {
	 padding-top: 8px;
}
	
.main_text2 h4 {
	 font-family: "minion-pro", serif;
		 font-weight: 700;
		 font-style: normal;
		 font-size: 100px;
		 line-height: 1.3em !important;
		 color: #fff;
		 
}
.main_text2 h5 {
	 font-family: "minion-pro", serif;
		 font-weight: 700;
		 font-style: normal;
		 font-size: 50px;
		 display: inline-block;
		 line-height: 1.3em !important;
		 color: #fff;
}
.main_text2 h6 {
	 font-size: 16px;
	 padding: 8px 16px;
	 border: 1px solid #fff;
	 border-radius: 8px;
	 display: inline-block;
	 color: #fff;
	 margin-left: 32px;
	 position: relative;
	 bottom: 8px;
}


/* == 5 TOP Content ===*/
.top_first {
	
}
.mid_img {
	background: url(http://psvk.jp/wp-content/uploads/2024/09/mid2_img.jpg) no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 480px;
	margin: 64px 0 256px;
}


/* ===  6 PLAN ===*/



.plan_content_box {
		display: flex;
		justify-content: space-between;
		flex-direction: row;
		flex-wrap:wrap;
		padding-left: 32px;
		padding-right: 32px;
}
.plan1_content1 {
	width:calc(50% - 48px);
}
.plan1_content1 img {
	width: 65%;
	max-width: 520px;
	min-width: 220px;
}
.plan1_content2 {
	width:calc(50% - 48px);
}
.plan_ttl {
	max-width: 580px;
	border-bottom: 1px solid #222;
	margin-bottom: 24px;
}

.plan_ttl2 {
	font-size: 48px;
	margin-bottom: 48px;
}

.plan_ttl img {
	position: relative;
	top: 24px;
}
.h2_enjoy {
	max-width: 250px;
}
.h2_relax {
	max-width: 270px;
}
.h2_bon {
	max-width: 500px;
}

.box_reverse {
	flex-direction: row-reverse; /* 横並び逆順 */
}

.h0text {
	font-family: "minion-pro", serif;
	font-weight: 700;
	font-style: normal;
	height: 0;
	width: 0;
	font-size: 128px;
	overflow: visible;
	position: relative;
	bottom: 64px;
	z-index: 99;
	line-height: 1em !important;
	right: 128px;
}




/* ===  10 topics ===*/

.topics_ttl {
	text-align: center;
	padding: 80px 32px;
	background: url("img/topics_ttl.png") no-repeat center top;
	background-size: 90%;
	color: #fff;
	font-size: 24px;
}
.topics_wrap {
	width: 100%;
	margin: 88px auto 0;
	padding: 88px 48px 24px;
	background: url("img/topics_bg.jpg") no-repeat;
	background-size: cover;
}
.topics_wrap1 {
	width:calc(33.333% - 32px);
	margin-bottom: 40px;
}
.topics_wrap1_img {
	width: 100%;
	height: 240px;
	overflow: hidden;
}
.topics_wrap1_img a {
	display: block;
}
.topics_wrap1_img a img {
	object-fit: cover;
	width: 100%;
	height: 240px;
}

.topics_wrap1_ttl {
	padding: 32px 0;
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap:wrap;
}
.topics_wrap1_ttl1 {
	font-size: 16px;
	line-height: 32px;
	display: block;
	width: 100%;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	color: #fff;
	letter-spacing: 0.1em;
}
.topics_wrap1_ttl1:hover {
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
}

.flex_center {
	display: flex;
	justify-content: center;
	flex-direction: row;
	flex-wrap:wrap;
}

/* ===  11 Daily schedule ===*/


.daily_ttl {
	text-align: center;
	padding: 128px 32px 80px 32px;
	background: url("img/daily_ttl.png") no-repeat center top;
	background-size: 650px;
	color: #121212;
	font-size: 24px;
}
.daily_wrap {
	width: 100%;
	margin: 0 auto 0 auto;
	padding: 128px 48px 80px;
	background: url("img/daily_bg.jpg") repeat;
	background-size: cover;
}

.daily01 {
	background: url(img/daily01.jpg) no-repeat center center;
	background-size: cover;
	padding: 128px 40px;
	margin: 64px 0;
	width: 100%;
}
.daily02 {
	background: url(img/daily02.jpg) no-repeat center center;
	background-size: cover;
	padding: 128px 40px;
	margin: 64px 0;
	width: 100%;
}
.daily03 {
	background: url(img/daily03.jpg) no-repeat center center;
	background-size: cover;
	padding: 128px 40px;
	margin: 64px 0;
	width: 100%;
}

.position_right_40px {
	position: relative;
	right: 40px;
}

.qa_wrap {
	
}

.w850 {
	width: 850px;
}

.w100per-900px {
	width:calc(100% - 900px);
}
.heading2 {
		font-family: "minion-pro", serif;
		font-weight: 700;
		font-style: normal;
		font-size: 128px;
		overflow: visible;
		position: relative;
		z-index: 100;
		line-height: 1.7em !important;
}


/*12 Q&A*/
/*=========
accordion
=========*/

.accordion_area {}
.accordion_area .accordion_one .ac_header {
	background-color: #ffffff;
	padding: 1.5rem 4rem 1.5rem 2rem;
	position: relative;
	z-index: +1;
	cursor: pointer;
	transition: .2s;
}

.accordion_one {
	margin-bottom: 32px !important;
}
.accordion_area .accordion_one .ac_header:not(.open):hover {
	background-color: #fff;
}
.accordion_area .accordion_one:nth-child(odd) .ac_header {
	background-color: #fff;
}
.accordion_area .accordion_one:nth-child(odd) .ac_header:not(.open):hover {
	background-color: #fff;
}
.accordion_area .accordion_one .ac_header .i_box {
	position: absolute;
	top: 50%;
	right: 2rem;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	background: #121212;
	padding: 8px;
	border-radius: 100px;
}
.accordion_area .accordion_one .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after {
	position: absolute;
	content: "";
	margin: auto;
	box-sizing: border-box;
	vertical-align: middle;
}
.accordion_area .accordion_one .ac_header .i_box:before {
	border-top: 2px solid #fff;
	width: 20px;
	height: 0;
	top: 0;
	bottom: 0;
	right: 10px;
}
.accordion_area .accordion_one .ac_header .i_box:after {
	border-left: 2px solid #fff;
	width: 0;
	height: 20px;
	top: 0;
	bottom: 0;
	right: 19px;
	transition: .3s;
}
.accordion_area .accordion_one .ac_header.open .i_box:after {
	height: 0;
}
.accordion_area .accordion_one .ac_inner {
	display: none;
	padding: 1.5rem 2rem 1.5rem 2rem;
	box-sizing: border-box;
	background: #fff;
}

/*=========
faq
=========*/

.p-faq__headinner {
	display: block;
	padding-left: 64px;
	position: relative;
	line-height: 1.5;
}
.p-faq__headinner::before {
	font-family: "minion-pro", serif;
	font-weight: 700;
	font-style: normal;
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	content: "Q．";
	color: #121212;
	font-size: 48px;
	font-weight: bold;
	line-height: 0.8em !important;
}
.p-faq__headinner p.p-faq__q-txt {
	font-size: 18px;
	margin: 0 !important;
}

.p-faq__a-txt {
	margin: 0 !important;
}


/*13 Gallery*/

.gall_bg {
	background: url("img/topics_bg.jpg") no-repeat;
	background-size: cover;
	padding: 0 0 0 0;
	margin: -560px 0 0 0 !important;
	height: 560px;
	z-index: 0;
	position: relative;
	
	
}

.gall_bg_img {
	width: 36%;
	max-width: 600px;
	height: 720px;
	position: relative;
	z-index: 99;
}
.gall_bg_img img {
	width: auto;
	height: 720px;
	object-fit: cover;
}














/* === 0 共通 ===*/
/* ===  1 背景色切り替え === */
/* ===  2 HEADER === */
/* ===3 FV ===*/
/* === 4 Footer ===*/
/* === 5 about ===*/
/* ===  6 PLAN ===*/
/* ===  7 schedule ===*/
/* ===  8 recommend ===*/
/* ===  9 pickup ===*/
/* ===  10 topics ===*/
/* ===  11 Reservation ===*/
/* ===  12 JS Animation ===*/


/* === お問合せ ===*/
input[type="text"] {
	padding: 8px;
	border: 1px solid #999;
	border-radius: 8px;
	margin: 8px 0;
	display: block;
	width: 100%;
}
input[type="email"] {
	padding: 8px;
	border: 1px solid #999;
	border-radius: 8px;
	margin: 8px 0;
	display: block;
	width: 100%;
}
input[type="tel"] {
	padding: 8px;
	border: 1px solid #999;
	border-radius: 8px;
	margin: 8px 0;
	display: block;
	width: 100%;
}


textarea {
	padding: 8px;
	border: 1px solid #999;
	border-radius: 8px;
	margin: 8px 0;
	display: block;
	resize: none;
	height: 160px;
	width: 100%;
}

#your-zip {
	width: 160px;
}

.layer_ttls h4 {
		font-family: "minion-pro", serif;
		font-weight: 700;
		font-style: normal;
		font-size: 100px;
		line-height: 1.3em !important;
		color: #232323;
		font-size: 48px;
}


.pick_wrap_mini {
	max-width: 640px;
	margin:  0 auto;
	text-align: center;
}

.pick_wrap_mini p {
	text-align: left !important;
	margin: 0 0 4px !important;
}

.pick_wrap_mini label {
	text-align: left !important;
}

.form_btn {
	margin-top: 16px;
	text-align: center;
}

input[type="submit"] {
	padding: 8px;
	border: 1px solid #999;
	border-radius: 8px;
	margin: 8px auto;
	display: block;
	width: 120px;
}

input[type="submit"]:hover {
	padding: 8px;
	border: 1px solid #999;
	border-radius: 8px;
	margin: 8px auto;
	display: block;
	width: 120px;
	
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	cursor: pointer;
}




/* === 下層ページ ===*/

.contents_wrapper {
	position: relative;
	z-index: 2;
}
.layer_ttls {
	margin-bottom: 64px;
	padding: 200px 40px 40px 40px;
	text-align: center;
}

.kaso_wrap {
	background: url(img/kaso_about_img_07.jpg) no-repeat;
	background-size: cover;
	width: 100%;
	margin: 64px 0 64px 0;
	padding: 48px;
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap:wrap;
}
.kaso_wrap1 {
	width:calc(100% - 360px);
	max-width: 630px;
	padding: 32px;
	background: #fff;
}

.kaso_wrap_enjoy {
	background: url(img/enjoy1.jpg) no-repeat !important;
	background-size: cover;

}
.kaso_wrap_relax {
	background: url(img/relax_img1.jpg) no-repeat !important;
	background-size: cover;

}
.kaso_wrap_bon {
	background: url(img/bon1.jpg) no-repeat !important;
	background-size: cover;

}

.kaso_wrap_plans {
	background: url(img/enjoy1.jpg) no-repeat right bottom !important;
	background-size: cover;

}


.kaso_ttl_img {
	width: 100%;
	max-width: 640px;
}
.kaso_ttl_img2 {
	width: 100%;
	max-width: 400px;
}

.kaso_wrap2 {
	background: url(img/kaso_about_img_20.jpg) no-repeat;
	background-size: cover;
	width: auto;
	margin: 64px 0 64px 0;
	padding: 48px;
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap:wrap;
	height: 560px;
}


.plan1_content1b {
	width:calc(50% - 48px);
	text-align: center;
}
.plan1_content1b img {
	width: 90%;
	max-width: 320px;
	min-width: 260px;
	margin: 0 auto;
}

.minimini {
	font-size: 12px;
	margin: 0;
	padding: 0;
	display: block;
}

.topics_wrap1_ttl_b {
	height: 100px;
	padding: 24px 24px;
	background: #fff; 
}

.plan1_content1c {
	width:calc(50% - 48px);
	text-align: center;
}
.plan1_content1c img {
	width: 100%;
	max-width: 800px;
	min-width: 320px;
	margin: 0 auto;
}

.plan_menu_border {
	background: url(img/plan_menu_border.png) repeat-x left bottom;
	background-size: auto 200px;
}

.datedate {
	height: 0;
	text-align: right;
	position: relative;
	overflow: visible;
}
.datedate span {
	border: 1px solid #222;
	background: #fff;
	border-radius: 100px;
	font-size: 12px;
	text-align: center;
	padding: 8px 16px;
	position: relative;
	bottom: 48px;
	right: 16px;
}
.batch {
	height: 0;
	overflow: visible;
	text-align: left;
	z-index: 99;
	position: relative;
	bottom: 40px;
	left: 8px;
}
.batch img {
	max-width: 100px;
}

.plan_dates {
	height: 0;
	position: relative;
	overflow: visible;
	float: right;
	border: 1px solid #222;
	background: #fff;
	border-radius: 100px;
	font-size: 12px;
	text-align: center;
	padding: 8px 16px;
	height: 36px;
}

.prices {
	font-size: 20px;
}

.plan_lists {
		display: flex;
		justify-content: flex-start;
		flex-direction: row;
		flex-wrap:wrap;
	border-bottom: 1px solid #222;
	padding: 8px 0 8px;
	margin: 0;
}
.plan_lists span {
	display: inline-block;
	width: 160px;
	font-size: 14px;
}
.plan_lists p {
	display: inline-block;
	font-size: 14px;
	width:calc(100% - 180px);
	margin: 0;
}

.serv_contain {
	padding: 0px 24px 24px;
	border: 1px solid #222;
	margin: 16px 0;
	width: 100%;
}
.serv_contain p {
	margin-bottom: 0;
	font-size: 14px;
}
.serv_contain h6 {
	margin: 0 0 -16px 0;
	padding: 4px 8px;
	font-size: 14px;
	position: relative;
	bottom: 16px;
	display: inline-block;
	background: #fff;

}

.reserve_btn {
	display: block;
	padding: 8px 16px;
	border: 1px solid #222;
	text-align: center;
	font-size: 14px;
	border-radius: 100px;
	margin: 32px auto 32px auto;
	background: #222;
	color: #fff;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	max-width: 640px;
	
}



.reserve_btn:hover {
	display: block;
	padding: 8px 16px;
	border: 1px solid #222;
	text-align: center;
	font-size: 14px;
	border-radius: 100px;
	margin: 32px auto 32px auto;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	background: #fff;
	color: #222;
	max-width: 640px;
	
}


.fff {
	background: #fff;
}



.sietview {
	max-width: 1000px;
	margin: 24px auto;
	width: 100%;
	
}



























/* ===  8 recommend ===*/
.recommend_wrap {
	width: 100%;
	margin: 64px auto;
	padding: 48px;
}
.recommend_wrap1 {
	width:calc(33.333% - 32px);
	/*box-shadow: 0px 0px 12px rgba(26, 108, 161, 0.16);*/
	margin-bottom: 64px;
	text-align: center;
	padding: 32px;
}
.recommend_wrap1_ttl {
	max-width: 580px;
	border-bottom: 1px solid #222;
	margin-bottom: 24px;
}
.recommend_wrap1_ttl img {
	position: relative;
	top: 16px;
}

.recommend_wrap1_ttl2 {
	max-width: 240px;
	margin: 0 auto 24px;
}
.recommend_wrap1_ttl3 {
	font-size: 16px !important;
	font-weight: 700;
}
.recommend_wrap1 p {
	text-align: left;
	font-size: 14px;
}





/* ===  9 pickup ===*/

.pick_wrap {
	padding: 32px;
	margin: 64px auto 128px;
	border: 1px solid #222;
	width:calc(100% - 64px);
	background: #fff;
	
}
.pick_ttl {
	height: 0;
	position: relative;
	bottom: 88px;
	right: 24px;
}
.pick_ttl img {
	max-width: 480px;
}
.pick_wrap2 p {
	margin-bottom: 0 !important;
}

.pick_wrap1 {
	width: 280px;
}
.pick_wrap2 {
	width:calc(100% - 320px);
}












/* ===  12 JS Animation ===*/
/* ===MAINTEXT ===*/
.effect-fade {
opacity : 0;
transform : translate(0, 75px);
transition : all 1000ms;
-webkit-filter: blur(60px);
	filter: blur(60px);
}
.effect-fade.effect-scroll {
opacity : 1;
transform : translate(0, 0);
-webkit-filter: blur(0px);
	filter: blur(0px);
}
/*MAINTEXT END*/

/*DELAY ANIMATION*/

.effect-fade {
opacity : 0;
transform : translate(0, 75px);
transition : all 1000ms;
-webkit-filter: blur(60px);
	filter: blur(60px);
	
}

.effect-fade.effect-scroll {
opacity : 1;
transform : translate(0, 0);
-webkit-filter: blur(0px);
	filter: blur(0px);
}
/*DELAY ANIMATION END*/



/*LEFT TO RIGHT*/

.motion-txt {
	display: inline-block;
	position: relative;
	overflow: hidden;
	padding: 0px;
}

.motion-txt:after {
	content: '';
	position: absolute;
	opacity: 1;
	left: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	background-color: #000;
	-webkit-transform: translate3d(-101%, 0, 0);
			transform: translate3d(-101%, 0, 0);
}

.js-scroll.show .motion-txt:after {
	transition-property: opacity, -webkit-transform;
	transition-property: transform, opacity;
	transition-property: transform, opacity, -webkit-transform;
	transition-duration: 0.5s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-transform: translate3d(0, 0, 0);
			transform: translate3d(0, 0, 0);
}

.js-scroll.done .motion-txt:after {
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	transition-duration: 0.5s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-transform: translate3d(103%, 0, 0);
			transform: translate3d(103%, 0, 0);
}

.motion-txt .motion-inner {
	display: inline-block;
	opacity: 0;
}

.js-scroll.done .motion-txt .motion-inner {
	opacity: 1;
}

/* LEFT TO RIGHT END*/

/*RIGHT TO LEFT*/

.motion-txt2 {
	display: block;
	position: relative;
	overflow: hidden;
	padding: 0px;
}

.motion-txt2:after {
	content: '';
	position: absolute;
	opacity: 1;
	left: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	background-color: #000;
	-webkit-transform: translate3d(101%, 0, 0);
			transform: translate3d(101%, 0, 0);
}

.js-scroll2.show2 .motion-txt2:after {
	transition-property: opacity, -webkit-transform;
	transition-property: transform, opacity;
	transition-property: transform, opacity, -webkit-transform;
	transition-duration: 0.5s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-transform: translate3d(0, 0, 0);
			transform: translate3d(0, 0, 0);
}

.js-scroll2.done2 .motion-txt2:after {
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	transition-duration: 0.5s;
	transition-delay: 0s;
	transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-transform: translate3d(-103%, 0, 0);
			transform: translate3d(-103%, 0, 0);
}

.motion-txt2 .motion-inner2 {
	display: block;
	opacity: 0;
}

.js-scroll2.done2 .motion-txt2 .motion-inner2 {
	opacity: 1;
}

/*RIGHT TO LEFT*/






/* BUTTON 5 */
.btn5, .btn5:link, .btn5:visited {
	border: none;
	outline: none;
}
.btn5:hover, .btn5:focus, .btn5:link:hover, .btn5:link:focus, .btn5:visited:hover, .btn5:visited:focus {
	transition-timing-function: cubic-bezier(0.6, 4, 0.3, 0.8);
	-webkit-animation: gelatine 0.5s 1;
			animation: gelatine 0.5s 1;
}

@-webkit-keyframes gelatine {
	from,to {
	-webkit-transform: scale(1, 1);
	}
	25% {
	-webkit-transform: scale(0.9, 1.1);
	}
	50% {
	-webkit-transform: scale(1.1, 0.9);
	}
	75% {
	-webkit-transform: scale(0.95, 1.05);
	}
	from,to {
	-webkit-transform: scale(1, 1);
	}
	25% {
	-webkit-transform: scale(0.9, 1.1);
	}
	50% {
	-webkit-transform: scale(1.1, 0.9);
	}
	75% {
	-webkit-transform: scale(0.95, 1.05);
	}
}
@keyframes gelatine {
	from,to {
	-webkit-transform: scale(1, 1);
	transform: scale(1, 1);
	}
	25% {
	-webkit-transform: scale(0.9, 1.1);
	transform: scale(0.9, 1.1);
	}
	50% {
	-webkit-transform: scale(1.1, 0.9);
	transform: scale(1.1, 0.9);
	}
	75% {
	-webkit-transform: scale(0.95, 1.05);
	transform: scale(0.95, 1.05);
	}
	from,to {
	-webkit-transform: scale(1, 1);
	transform: scale(1, 1);
	}
	25% {
	-webkit-transform: scale(0.9, 1.1);
	transform: scale(0.9, 1.1);
	}
	50% {
	-webkit-transform: scale(1.1, 0.9);
	transform: scale(1.1, 0.9);
	}
	75% {
	-webkit-transform: scale(0.95, 1.05);
	transform: scale(0.95, 1.05);
	}
}






















/*---旧コード---*/


/*------------------------LAODING START------------------------*/

/* ブラウザのスクロールバーを常に表示させることでカクカクッとなるのを防ぐ */

 
/* ローディング関係ない部分のCSS */

 
/* ローディングの背景部分のCSS */
.loader{
	background: #ffffff;
	height:100%;
	left:0;
	position:fixed;
	top:0;
	width:100%;
	z-index:11110;
}
 
/* ローディングのアニメーション部分のCSS  */
.loader-animation,
.loader-animation:before,
.loader-animation:after {
	background:#141513;
	-webkit-animation:load1 1s infinite ease-in-out;
	animation:load1 1s infinite ease-in-out;
	width:1em;
	height:4em;
}
.loader-animation {
	height:10px;
	left:50%;
	margin:-5px 0 0 -5px;
	position:absolute;
	top:50%;
	width:10px;
	color:#141513;
	text-indent:-9999em;
	font-size:10px;
	-webkit-transform:translateZ(0);
	-ms-transform:translateZ(0);
	transform:translateZ(0);
	-webkit-animation-delay:-0.16s;
	animation-delay:-0.16s;
}
.loader-animation:before,
.loader-animation:after {
	position:absolute;
	top:0;
	content:'';
}
.loader-animation:before {
	left:-1.5em;
	-webkit-animation-delay:-0.32s;
	animation-delay:-0.32s;
}
.loader-animation:after {
	left:1.5em;
}
@-webkit-keyframes load1 {
	0%,
	80%,
	100% {
	box-shadow:0 0;
	height:4em;
	}
	40% {
	box-shadow:0 -2em;
	height:5em;
	}
}
@keyframes load1 {
	0%,
	80%,
	100% {
	box-shadow:0 0;
	height:4em;
	}
	40% {
	box-shadow:0 -2em;
	height:5em;
	}
}

/*-------------------------LAODING END-------------------------*/

/*-------------------------SANDAL-------------------------*/
.sp680 {display: none;}
main { width: 100%; height: 100%; background: #f7f8fa;   z-index: 0; overflow: hidden; }












/* General styling for the links */
.sns a {
	text-decoration: none;
	font-size: 18px;
	display: inline-block;
	margin: 20px auto;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	width: 50px;
	
}
/* BUTTON 5 */







/*CARD*/

.card_body {
	padding: 1rem 1.75rem;
}

.floating {
	font-family: Inconsolata; 
	margin: auto; 
	width: 453px;
	height: 280px;
	box-shadow: -10px 14px 54px rgba(0, 0, 0, 0.2) !important;
	font-size: 18px;
	border-radius: 30px;
	transform-style: preserve-3d;
	transform-origin: 50% 50%;
	background: linear-gradient(145deg, #fff, #eee);
	transform: rotateX(17deg) rotateY(18deg);
}

.logo {
	height: 60px;
	transform: translateZ(30px);
	text-shadow: 0 0 2px rgba(0, 0, 0, 0.3) !important;
	margin: 0;
	font-weight: normal;
	filter: drop-shadow(-3px 3px 4px rgba(0, 0, 0, 0.3));
	z-index: 20;
	font-family: futura-pt,sans-serif;
	font-weight: 700;
	font-style: normal;
	letter-spacing: 0.1em;
	font-size: 24px;
	}


.paypal_center {
	height: 200px;
	width: 300px;
	position: absolute;
	top: 40px;
	left: 47%;
	transform: translateZ(5px);
	margin-left: -75px;
	z-index: 1;
	filter: drop-shadow(-6.4px 6.2px 8px rgba(0, 0, 0, 0.1));
	font-family: futura-pt,sans-serif;
	font-weight: 700;
	font-style: normal;
	letter-spacing: 0.1em;
	font-size: 20px;
	
}

.holder {
	position: absolute;
	text-shadow: 0 0 2px rgba(0, 0, 0, 0.3) !important;
	margin: 0;
	font-weight: normal;
	filter: drop-shadow(-3px 3px 4px rgba(0, 0, 0, 0.3));
	z-index: 20;
	font-family: futura-pt,sans-serif;
	font-weight: 700;
	font-style: normal;
	letter-spacing: 0.1em;
	font-size: 24px;
	bottom: 20px;
	left: 30px;
	z-index: 20;
	letter-spacing: 2px;
	transform: translateZ(50px);
}

.fontmini {font-size: 12px; margin-right: 90px; text-align: left !important; 
	font-family:"Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif !important; font-weight: 400; 
	}

.thickness {
	width: 453px;
	height: 280px;
	border-radius: 30px;
	position: absolute;
	background: linear-gradient(145deg, #ebebeb, #e2e2e2);
	transform: translateZ(-4px);
}
.thickness:nth-child(2) {
	transform: translateZ(-8px);
}
.thickness:nth-child(3) {
	transform: translateZ(-11px);
}


/*CARD END*/






/*-------------------------SANDAL END-------------------------*/



/* 13 */
.post-thumbnail {
	max-width: 640px;
	margin: 0 auto 32px auto;
	
}

.post-thumbnail img {
	width: auto !important;
	height: auto !important;
}

.pick_wrap_post {
	padding: 24px;
	margin: 0px auto 64px;
	border: 1px solid #222;
	width: calc(100% - 48px);
	max-width: 1140px;
}









/*テンプレート*/
.font11 {font-size: 11px !important;}
.lhshort {line-height: 1.1em !important;}
.p0 {padding: 0 !important;}





.w48per {width: 48%;}


.w50perpc {width: 50%;}

.left {float: left;}
.right {float: right;}

.m0 {margin: 0 !important;}
.mt0 {margin-top: 0px !important;}
.mt10 {margin-top: 10px !important;}
.mt20 {margin-top: 20px !important;}
.mt30 {margin-top: 30px !important;}
.mt40 {margin-top: 30px !important;}
.mt50 {margin-top: 50px !important;}
.mt60 {margin-top: 60px !important;}
.mt70 {margin-top: 70px !important;}
.mt80 {margin-top: 80px !important;}
.mt90 {margin-top: 90px !important;}
.mt100 {margin-top: 100px !important;}



.mr20 {margin-right: 20px !important;}
.mb0 {margin-bottom: 0px !important;}
.mb30 {margin-bottom: 30px;}
.mb100 {margin-bottom: 100px !important;}
.mb60 {margin-bottom: 60px !important;}
.pt100 {padding-top: 100px !important;}
.pt120 {padding-top: 120px;}
.p20{padding: 20px;}
.p30{padding: 30px;}
.p50{padding: 50px;}
.p0p30p20 {padding: 0px 30px 20px;}

.p0 {padding: 0 !important;}
.pb0 {padding-bottom: 0 !important;}
.pt30 {padding-top: 30px;}

.pb30 {padding-bottom: 30px;}
.pt50 {padding-top: 50px !important;}
.pt60 {padding-top: 60px !important;}
.bgw {background: #fff;}
.pt130 {padding-top: 130px;}
.pt180 {padding-top: 180px;}
.ptpb180 {padding-top: 180px; padding-bottom: 180px;}
.pb60 {padding-bottom: 60px;}
.font12 {font-size: 12px !important;}
.font14 {font-size: 14px;}
.font15 {font-size: 15px;}
.font16 {font-size: 16px;}
.font18 {font-size: 18px;}
.font64 {font-size: 64px;}
.pt0 {padding-top: 0 !important;}
.pt50pb20 {
	padding: 50px 0px 20px;
}

.pt300 {padding-top: 300px !important;}

.w150 {width: 150px;}
.w350 {width: 350px;}

.w30per {width: 30%;}
.w65per {width: 65%;}

.w20per {width: 20%;}
.w75per {width: 75%;}

.w15per {width: 15%;}
.w40per {width: 40%;}

.mw600 {max-width: 600px;}
.w600 {width: 600px; margin: 0 auto;}
.w660 {width: 640px;}
.w540 {width: 540px;}
.w400 {width: 400px; margin: 0 auto;}
.w200 {width: 200px; display: inline-block;}
.posib10 {position: relative; bottom: 12px;}

.p5030 {padding: 50px 30px;}

.ma {margin: auto !important;}

.bordert1 {border-top: 1px solid #333;}
.borderb1 {border-bottom: 1px solid #333;}

.p20_1160{padding: auto;}  

.dib {display: inline-block;}

.height0 {height: 0; overflow: visible;}

.decounder {text-decoration: underline;}
.decounder:hover {text-align: none;}

.bold1 {font-weight: 400;}

.pt60_2 {padding-top: 60px;}








.fontw {color: #fff;}
.fontm {color: #58638c;}

.w480 {max-width: 480px !important; width: auto; margin: 0 auto;}
.w1000 {max-width: 1000px !important; width: auto; margin: 0 auto;}
.w1300 {max-width: 1240px !important; width: auto; margin: 0 auto;}
.z9999 {z-index: 9999; position: relative;}

/*テンプレート END*/

.w800 {max-width: 800px; margin: 10px auto;}
.team {
	background: #fff;
	-moz-transition: .4s;
-webkit-transition: .4s;
-o-transition: .4s;
-ms-transition: .4s;
transition: .4s;
color: #121212;
height: 280px;
}
.team h3 {font-family: futura-pt,sans-serif; font-size: 18px; padding: 20px 0 5px; 
-moz-transition: .4s;
-webkit-transition: .4s;
-o-transition: .4s;
-ms-transition: .4s;
transition: .4s;
}
.team p {font-size: 14px;
	-moz-transition: .4s;
-webkit-transition: .4s;
-o-transition: .4s;
-ms-transition: .4s;
transition: .4s;
}
.team img {max-width: 100px;
	-moz-transition: .4s;
-webkit-transition: .4s;
-o-transition: .4s;
-ms-transition: .4s;
transition: .4s;
border-radius: 500px;
overflow: hidden;
}

.team:hover {
	background: #3026f2;
	background: -moz-linear-gradient(-45deg, #26f268 0%, #1bf6ce 100%);
	background: -webkit-linear-gradient(-45deg, #26f268 0%,#1bf6ce 100%);
	background: linear-gradient(135deg, #26f268 0%,#1bf6ce 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#26f268', endColorstr='#1bf6ce',GradientType=1 );
	-moz-transition: .4s;
-webkit-transition: .4s;
-o-transition: .4s;
-ms-transition: .4s;
transition: .4s;


}
.team:hover h3 {font-family: futura-pt,sans-serif; font-size: 18px; padding: 20px 0 5px; 
-moz-transition: .4s;
-webkit-transition: .4s;
-o-transition: .4s;
-ms-transition: .4s;
transition: .4s;
color: #fff;
}
.team:hover p {font-size: 14px;
	-moz-transition: .4s;
-webkit-transition: .4s;
-o-transition: .4s;
-ms-transition: .4s;
transition: .4s;
color: #fff;
}
.team:hover img {max-width: 110px;
	-moz-transition: .4s;
-webkit-transition: .4s;
-o-transition: .4s;
-ms-transition: .4s;
transition: .4s;
}


.contacts {
	background: #e5c8e5;
	background: -moz-linear-gradient(-45deg, #e4c9e6 0%, #d8dafb 100%);
	background: -webkit-linear-gradient(-45deg, #e4c9e6 0%,#d8dafb 100%);
	background: linear-gradient(135deg, #e4c9e6 0%,#d8dafb 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e4c9e6', endColorstr='#d8dafb',GradientType=1 );
	padding: 50px 20px;
	margin-top: 100px;
}

/*ボタン*/

/* Mixins */
/* bg shortcodes */
.bg-gradient1 span,
.bg-gradient1:before {
	background: #52A0FD;
	background: linear-gradient(to right, #52A0FD 0%, #00e2fa 80%, #00e2fa 100%);
}

.bg-gradient2 span,
.bg-gradient2:before {
	background: #44ea76;
	background: linear-gradient(to right, #44ea76 0%, #39fad7 80%, #39fad7 100%);
}

.bg-gradient3 span,
.bg-gradient3:before {
	background: #fa6c9f;
	background: linear-gradient(to right, #fa6c9f 0%, #ffe140 80%, #ffe140 100%);
}


a {
	text-decoration: none;
}
a:hover, a:focus, a:active {
	text-decoration: none;
}

.fontfutura {
	font-family: futura-pt,sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size: 38px;

}

.minw200 {min-width: 200px;}




.li100 {width: 100% !important;}






.contactbtn {border: 5px solid #333; padding: 20px 40px; color: #333; text-align: center; font-size: 18px; font-weight: bold; letter-spacing: 0.05em; line-height: 1.7em; margin: 30px auto; display: inline-block;  -moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	display: block;
	max-width: 300px;
}

.contactbtn:hover {border: 5px solid #fff; padding: 20px 40px; color: #fff; text-align: center; font-size: 18px; font-weight: bold; letter-spacing: 0.05em; line-height: 1.7em; margin: 30px auto; display: inline-block;  -moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	display: block;
	max-width: 300px;
}



.bl1 {border-right: 1px solid #fff;}


.w1160 {width: 1200px; margin: 0 auto;}
.ttl2 {display: inline-block; padding: 38px 0; float: left;}
.ttl2in {width: 200px; display: inline-block;}



.topnews {background: rgba(4, 4, 4, 0.7) ; padding: 20px; position: absolute; width: 400px; top: 580px; right: 50px;}
.topnews_l {width: 98px; height: 98px; overflow: hidden; float: left; }
.topnews_r {width: 280px; height: 98px; overflow: hidden; float: left; margin-left: 20px; background: url(img/ya.png) no-repeat bottom 0px right 0px; background-size: 10px;}
.topnews_r span {font-size: 12px; color: #fff; display: block; margin-bottom: 10px;}
.topnews_r p {font-size: 13px; color: #fff;}
.topnews_r p a {font-size: 13px; color: #fff;}
.topnews_r p a:hover {font-size: 13px; color: #fff; text-decoration: underline;}


@-webkit-keyframes bgroop {
	from {
		background-position: 0  0;
	}
	to {
		background-position: -1956px 0;
	}
}
@keyframes bgroop {
	from {
		background-position: 0 0;
	}
	to {
		background-position: -1956px 0;
	}
}




.bann {text-align: right; overflow: visible; position: relative; bottom: 50px;}
.bann img { width: 370px; float: right;}



img{border: none;}

a{margin:0; padding:0;text-decoration: none;}
a img:hover{}
#wrapper{min-width: 640px;  min-height:100px;}


::selection {
	background: #000;
	color: #fff;
}

//Firefox
::-moz-selection {
	background: #000;
	color: #fff;
}




.tex_c {text-align: center !important;}

img {max-width: 100%;}

.sp {display: none;}

.overimg:hover {
filter:alpha(opacity=70);
-moz-opacity: 0.7;
opacity: 0.7;
-moz-transition: .2s;
-webkit-transition: .2s;
-o-transition: .2s;
-ms-transition: .2s;
transition: .2s;
}

.supportbox {position: relative; bottom: 50px;}



.kakumaru {border-radius: 20px; overflow: hidden;}
.kakumaru50 {border-radius: 50px;}








.news {background: rgba(255, 255, 255, 0.13); padding: 10px 20px; z-index: 9; position: relative; bottom: 130px; 
-moz-transition: .2s;
-webkit-transition: .2s;
-o-transition: .2s;
-ms-transition: .2s;
transition: .2s;
}
.news:hover {background: rgba(255, 255, 255, 0.83); padding: 10px 20px; z-index: 9; position: relative; bottom: 130px; 
-moz-transition: .2s;
-webkit-transition: .2s;
-o-transition: .2s;
-ms-transition: .2s;
transition: .2s;
}
.news {font-size: 13px; letter-spacing: 0.05em; line-height: 1.6em; font-weight: 400; height: 24px; }
.news span {font-size: 14px; letter-spacing: 0.05em; line-height: 1.6em; padding: 0 20px 0 0; margin: 0 20px 0 0; font-weight: 400; border-right: 1px solid #333;   }



.wid {background: url(img/top_b2.png) no-repeat left top; background-size: cover; padding: 0px 0 50px; }




/* For modern browsers */
.cf:before,
.cf:after {
	content:"";
	display:table;
}
 
.cf:after {
	clear:both;
}
 
/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom:1;
}

.pc {display: block;}
.sp {display: none;}







/*FORM*/
.top_contact_tbl {
	width: 100%;
	max-width: 800px;
	margin: 16px 0 0;
	padding: 0;
}
.top_contact_tbl p {

	
}
.min_h64 {
	height: 64px;
}

.top_contact_tbl th {
	padding: 8px 0;
}
.top_contact_tbl td {
	padding: 8px 0;
}

.top_contact_tbl th {
 min-width: 120px;
 font-size: 13px;
 line-height: 1.7em;
}

.hissu {
	background: #bb2a21;
	color: #fff;
	font-size: 10px;
	padding: 4px 8px;
	border-radius: 8px;
	display: inline-block;
	line-height: 1em;
	position: relative;
	bottom: 5px;
}

.hissu2 {
	background: #bb2a21;
	color: #fff;
	font-size: 10px;
	padding: 4px 8px;
	border-radius: 8px;
	display: inline-block;
	line-height: 1em;
	position: relative;
	bottom: 0px;
	left: 5px;
}

.nini2 {
	background: #50acf5;
	color: #fff;
	font-size: 10px;
	padding: 4px 8px;
	border-radius: 8px;
	display: inline-block;
	line-height: 1em;
	position: relative;
	bottom: 0px;
	left: 5px;
}

.top_contact_tbl td {
	padding-left: 16px;
}



.top_contact_tbl p {
	font-size: 13px;
	margin-bottom: 8px;
	letter-spacing: 0.01em !important;
}

.top_contact_tbl select {
	background: url(img/arrow_bottom.png) no-repeat right 24px center #dcdcd9;
	background-size: 10px;
	padding: 8px 32px 8px 16px;
	border-radius: 4px;
	margin-top: 0;
	width: auto;
	margin-bottom: 24px;
	font-size: 14px;
	min-width: 200px;
}
.top_contact_tbl p {
	margin: 0 !important;
}
.top_contact_tbl input[type="date"] {
	padding: 8px 16px 8px 16px;
	border-radius: 4px;
	margin-top: 0;
	width: auto;
	margin-bottom: 24px;
	font-size: 14px;
	min-width: 200px;
	border: 1px solid #555;
}
.top_contact_tbl input[type=text] {
	background: #fbfbf8;
	border: 1px solid #bbbec4;
	padding: 8px;
	border-radius: 8px;
	width: 100%;
	margin-bottom: 16px;
	
}
.top_contact_tbl input[type=email] {
	background: #fbfbf8;
	border: 1px solid #bbbec4;
	padding: 8px;
	border-radius: 8px;
	width: 100%;
	margin-bottom: 16px;
	
}
.top_contact_tbl input[type=tel] {
	background: #fbfbf8;
	border: 1px solid #bbbec4;
	padding: 8px;
	border-radius: 8px;
	width: 100%;
	margin-bottom: 16px;
	
}
.top_contact_tbl textarea {
	background: #fbfbf8;
	border: 1px solid #bbbec4;
	padding: 8px;
	border-radius: 8px;
	width: 100%;
	height: 100px;
	resize: none;
	position: relative;
}
/*safari用*/
_::-webkit-full-page-media,_:future,:root .top_contact_tbl textarea {
	bottom: 28px;
}


::placeholder {
	color: #bcbcbc;
	font-size: 0.9em;
}
.arrow {
	background: url(img/arrow.png) no-repeat right center;
	background-size: 8px;
	width: 160px;
	height: auto;
	position: relative;
	top: 0px;
	margin-top: 16px;
}

/*input[type="checkbox"] {
	position: relative;
	width: 20px;
	height: 20px;
	border: 1px solid #999da7;
	background: #fbfbf8;
	margin-right: 8px;
}*/


.top_contact_form label {
	letter-spacing: 0.1em;
	line-height: 1em;
	margin-left: 8px;
	font-size: 14px;
	position: relative;
	top: 0px;
}

.top_contact_form label span {
	position: relative;
	top: 4px;
}

.privacy_box {
	height: 200px;
	max-width: 640px;
	margin: 0 0 32px 0;
	width: auto;
	min-width: 260px;
	overflow: scroll;
	border: 1px solid #111;
	background: #fff;
	padding: 16px;
}
.privacy_box li {
	font-size: 13px;
	line-height: 1.7em;
	letter-spacing: 0.05em;
	margin-bottom: 8px;
}
.privacy_box li span {
	font-weight: 700;
}
.wpcf7-spinner {
	display: none !important;
}



.btn_send {


}


input[type="submit"] {
	background: url(img/arrow_white.png) no-repeat right 16px center #bb2a21;
	background-size: 8px;
	border-radius: 100px;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	padding: 10px 32px 10px 32px;
	width: 160px;
	text-align: center;
	height: auto;
	margin: 0 auto 24px;
	display: inline-block;
}
input[type="submit"]:hover {
	background: url(img/arrow_white.png) no-repeat right 16px center #bb2a21;
	background-size: 8px;
	border-radius: 100px;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	padding: 10px 32px 10px 32px;
	width: 160px;
	text-align: center;
	height: auto;
	margin: 0 auto 24px;
	display: inline-block;
	
}


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

#zip {
	width: 160px;
}
.wpcf7-not-valid-tip {
	color: #dc3232;
	font-size: 11px !important;
	font-weight: normal;
	display: block;
}

.wpcf7-list-item {
	min-width: 110px;
}
.pps .wpcf7-list-item-label {
	display: none !important;
}

.form_box h2 {
	margin-bottom: 32px;
	font-size: 24px;
	font-weight: 600;
	border-bottom: 1px solid #dadada;
	padding-bottom: 2px;
}
.form_box h3 {
	margin-bottom: 32px;
	font-size: 18px;
	font-weight: 600;
	padding-bottom: 2px;
}

.wpcf7-form-control-wrap {
	position:inherit !important;
}




















@media screen and (max-width: 1200px){
.qa_wrap {
	padding: 0 32px;
}
.w100per-900px {
		width: calc(100% - 0px);
}
.w850 {
		width: 100%;
}
}

@media screen and (max-width: 999px){
.main_text h4 {
		font-size: 10vw;
}
.main_text h5 {
		font-size: 7vw;
}
.main_text h6 {
		font-size: 1.7vw;
}
.main_text2 h4 {
		font-size: 7vw;
}
.main_text2 h5 {
		font-size: 5vw;
}
.main_text2 h6 {
		font-size: 1.5vw;
}
.footer_menu {
	margin-top: 48px !important;
}

.w50per-24px {
		width: calc(100% - 48px);
		padding: 24px;
}
.sp_flex_start {
		display: flex;
		justify-content: flex-start !important;
}

.mid_img {
		background: url(img/mid_img.jpg) no-repeat center center;
		background-size: cover;
		width: 100%;
		height: 400px;
		margin: 64px 0 128px;
}

.plan1_content1 {
		width: calc(35% - 24px);
}
.plan1_content2 {
		width: calc(65% - 24px);
}
.h0text {
		font-family: "minion-pro", serif;
		font-weight: 700;
		font-style: normal;
		height: 0;
		width: 0;
		font-size: 10vw;
		overflow: visible;
		position: relative;
		bottom: 64px !important;
		z-index: 99;
		line-height: 1em !important;
		right: 0;
}
.sp_font_mini {
	font-size: 6vw;
	bottom: 32px !important;
}
.plan_ttl2 {
		font-size: 32px;
		margin-bottom: 32px;
}
.topics_wrap1_img {
	width: 100%;
	height: auto;
	overflow: hidden;
}
.topics_wrap1_img a {
	display: block;
}
.topics_wrap1_img a img {
	object-fit: cover;
	width: 100%;
	height: auto;
}
.topics_wrap1 {
		width: calc(50% - 32px);
		margin-bottom: 32px;
}
.position_right_40px {
		position: relative;
		right: 0px;
}
.daily01 {
	background: url(img/daily01.jpg) no-repeat center center;
	background-size: cover;
	padding: 64px 32px;
	margin: 48px 0;
	width: 100%;
}
.daily02 {
	background: url(img/daily02.jpg) no-repeat center center;
	background-size: cover;
	padding: 64px 32px;
	margin: 48px 0;
	width: 100%;
}
.daily03 {
	background: url(img/daily03.jpg) no-repeat center center;
	background-size: cover;
	padding: 64px 32px;
	margin: 48px 0;
	width: 100%;
}
.gall_bg_img {
	height: 560px;
}
.gall_bg_img img {
		height: 560px;
}
.gall_bg {
	display: none;
}
}


@media screen and (max-width: 799px){
.logo_ttls a img {
		width: 64px;
}
.main_text {
		position: absolute;
		top: calc(100% - 160px);
		left: calc(50% + 16px);
		transform: translate(-50%, -50%);
		text-align: left;
		z-index: 3;
		width: auto !important;
}
.main_text h6 {
		font-size: 14px;
		padding: 8px 16px;
		border: 1px solid #fff;
		border-radius: 8px;
		display: inline-block;
		color: #fff;
		margin-left: 0;
		position: relative;
		bottom: 0;
		margin: 16px 0 0 0;
}


.mid_img {
		background: url(http://psvk.jp/wp-content/uploads/2024/09/mid2_img.jpg) no-repeat center center;
		background-size: cover;
		width: 100%;
		height: 320px;
		margin: 64px 0 128px;
}
.font32 {
		font-size: 28px;
}
.w50per-24px {
	width: 100%;
	padding: 24px;
}

.plan1_content1 img {
		width: 65%;
		max-width: 320px;
		min-width: 220px;
}

.plan_content_box {
		display: flex;
		justify-content: space-between;
		flex-direction: row;
		flex-wrap: wrap;
		padding-left: 24px;
		padding-right: 24px;
}
.plan1_content1 {
		width: 100%;
}
.plan1_content2 {
		width: 100%;
		margin-top: 40px;
}

.topics_ttl {
		text-align: center;
		padding: 80px 32px;
		background: url(img/topics_ttl.png) no-repeat center top;
		background-size: 100%;
		color: #fff;
		font-size: 24px;
}
		.topics_wrap1 {
		width: 100%;
		margin-bottom: 32px;
}
.daily_wrap {
		width: 100%;
		margin: 0 auto 0 auto;
		padding: 128px 24px 80px;
		background: url(img/daily_bg.jpg) repeat;
		background-size: cover;
}
.daily_ttl {
		text-align: center;
		padding: 128px 32px 64px 32px;
		background: url(img/daily_ttl.png) no-repeat center top;
		background-size: 90%;
		color: #121212;
		font-size: 24px;
}
.daily01 {
	background: url(img/daily01.jpg) no-repeat center center;
	background-size: cover;
	padding: 48px 16px;
	margin: 32px 0;
	width: 100%;
}
.daily02 {
	background: url(img/daily02.jpg) no-repeat center center;
	background-size: cover;
	padding: 48px 16px;
	margin: 32px 0;
	width: 100%;
}
.daily03 {
	background: url(img/daily03.jpg) no-repeat center center;
	background-size: cover;
	padding: 48px 16px;
	margin: 32px 0;
	width: 100%;
}
.accordion_area .accordion_one .ac_header {
		background-color: #ffffff;
		padding: 16px 16px;
		position: relative;
		z-index: +1;
		cursor: pointer;
		transition: .2s;
}
.p-faq__headinner p.p-faq__q-txt {
		font-size: 16px;
		margin: 0 !important;
}
.topics_wrap1_img {
		width: 100%;
		height: auto;
		overflow: hidden;
}
.topics_wrap1_img img {
	width: 100%;
}


.top_contact_tbl th {
 width: auto;
 display: block;
}
.top_contact_tbl td {
 width: auto;
 display: block;
 padding-left: 0px;
}


}

@media screen and (max-width: 599px){
	.pick_wrap {
			padding: 16px;
			margin: 64px auto 128px;
			border: 1px solid #222;
			width: calc(100% - 32px);
			background: #fff;
	}

	
	.plan1_content1 img {
			width: 65%;
			max-width: 260px;
			min-width: 220px;
	}
	.font64 {
			font-size: 40px;
	}
	.font16 {
			font-size: 14px;
	}
	.accordion_area .accordion_one .ac_header .i_box {
			position: absolute;
			top: 50%;
			right: 1rem;
			width: 24px;
			height: 24px;
			margin-top: -20px;
			background: #121212;
			padding: 8px;
			border-radius: 100px;
	}
	.accordion_area .accordion_one .ac_header .i_box:before {
			border-top: 2px solid #fff;
			width: 10px;
			height: 0;
			top: 0;
			bottom: 0;
			right: 6px;
	}
	.accordion_area .accordion_one .ac_header .i_box:after {
			border-left: 2px solid #fff;
			width: 0;
			height: 10px;
			top: 0;
			bottom: 0;
			right: 10px;
			transition: .3s;
	}
	.heading2 {
			font-family: "minion-pro", serif;
			font-weight: 700;
			font-style: normal;
			font-size: 70px;
			overflow: visible;
			position: relative;
			z-index: 100;
			line-height: 1.7em !important;
	}
	.gall_bg_img {
			height: 400px;
			width: 50%;
	}

	.gall_bg_img img {
			height: 400px;
	}
	.footer_logo {
			background: #fff;
			padding: 24px;
			margin-right: auto;
			margin-left: auto;
			margin-bottom: 32px;
	}
	.main_text2 {
		margin-top: 32px;
			text-align: left;
			z-index: 3;
			width: 100%;
	}
	.main_text2 h6 {
		margin-top: 8px;
		font-size: 12px;
		margin-left: 0;
		bottom:0;
	}
	.footer_menu a {
			color: #fff;
			font-size: 13px;
			margin-left: 0;
			display: block;
	}
	.mt-128 {
			margin-top: -32px !important;
	}
	.globalMenuSp_in {
			display: flex;
			justify-content: flex-start;
			flex-direction: row;
			flex-wrap: wrap;
			width: 80%;
			position: absolute;
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%);
	}
	.globalMenuSp_in2 {
			width: 100%;
			margin: 0 0 0 0;
	}

	
}

#envirabox-title-float-wrap {
	background: none !important; 
}
#envirabox-wrap {
		padding: 0px !important;

}
.btn a {
	border-radius: 100px;
	border: 1px solid #222;
	padding: 16px 24px;
	display: inline-block;
}
.btn a:hover {
	border-radius: 100px;
	border: 1px solid #222;
	padding: 16px 24px;
	display: inline-block;
	background: #222;
	color: #fff;
	opacity: 0.5;
	transition-duration: .3s;
}

.fg-panel.fg-light, .fg-panel.fg-light .fg-panel-thumb:is(.fg-idle,.fg-loading,.fg-error) .fg-panel-thumb-media {
		background-color: rgba(0, 0, 0, 0.722) !important;
}