@charset "utf-8";

/*
Theme Name: wed-ave
Author: minoru kubota
Version: 1.0
*/

/*
----------------------------------------
layout
----------------------------------------
*/

#wrapper {
	width: 100%;
	margin: 0 auto;
}

br.sp {
	display: block;
}

br.pc {
	display: none;
}

.mov .wrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

.mov .wrap iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

.notice {
	display: inline-block;
	text-align: center;
	margin: 0 5px;
	border: solid 1px #000;
	padding: 5px;
	width: 100%;
}




/*
----------------------------------------
header
----------------------------------------
*/

.head-txt {
	background: #eee;
	text-align: center;
	margin-top: 50px;
	padding: 8px 5px;
}

.head-txt .wrap {
	margin: 0 auto;
	position: relative;
}

.head-txt h1 {
	font-family: 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', '游ゴシック', YuGothic, sans-serif;
	text-align: center;
	font-size: 10px;
}

#head-nav, #g-nav {
	display: none;
}

#wrapper > header {
	background: #fff;
	z-index: 99999;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	max-height: 100vh;
}

#wrapper > header.fixed {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	max-height: 100vh;
}

#wrapper > header.fixed.show {
	top: 0;
	animation: show .4s;
}

@keyframes show {
	0% { top: -80px; }
	100% { top: 0; }
}

#wrapper > header.fixed.hide {
	top: -80px;
	animation: hide .4s;
}

@keyframes hide {
	0% { top: 0; }
	100% { top: -80px; }
}

#wrapper > header .pc {
	display: none;
}

#wrapper > header .sp {
	display: flex;
	width: 100%;
	height: 50px;
	align-items: center;
}

#wrapper > header .sp .logo {
	padding: 10px 25px 0;
}

#wrapper > header .sp .logo img {
	width: 165px;
}

#wrapper > header .sp .logo p {
	font-size: 10px;
	line-height: 1;
	transform: scale(0.8) translateY(-2px);
}

#wrapper > header .sp .logo-sub {
	padding-top: 10px;
}

#wrapper > header .sp .logo-sub img {
	height: 25px;
}

#wrapper > header #identity {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	text-align: center;
	height: 50px;
}

#wrapper > header #identity a {
	margin: 0 auto;
}

#wrapper > header #identity img {
	max-width: 145px;
	margin: 0 auto;
}

#wrapper > header .head-tel {
	display: none;
}


/*
----------------------------------------
g-nav
----------------------------------------
*/

#g-nav {
	position: absolute;
	top: 100%;
	right: 0;
	width: 240px;
	height: calc(100vh - 50px);
	overflow: scroll;
	border-top: solid 1px #ccc;
	background: #fff;
}

#g-nav .g-nav-pc {
	display: none;
}

#g-nav .g-nav-sp {
	display: block;
}

#g-nav .g-nav-sp > ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	padding-bottom: 25px;
}

#g-nav li {
	width: 100%;
}

#g-nav li.half {
	width: 50%;
	border-bottom: solid 0.5px rgba(0,0,0,.2);
	border-right: solid 0.5px rgba(0,0,0,.2);
	box-sizing: border-box;
}

#g-nav a {
	position: relative;
	display: block;
	padding: 14px 0;
	font-size: 1.2rem;
	border-bottom: solid 1px #ccc;
	color: #000;
}

#g-nav li.half a {
	font-size: 1rem;
	border: none;
	padding: 10px 7.5px;
}

#g-nav li {
	width: 100%;
}

#g-nav li.parent > a::after {
	content: '\f107';
	font-family: FontAwesome;
	position: absolute;
	right: 15px;
	top: 50%;
	margin-top: -10px
}

#g-nav li.parent > a.active::after {
	content: '\f106';
}

/* sub-menu */

#g-nav li ul {
	width: 100%;
	background: #333;
	z-index: 999999;
	display: none;
}

#g-nav li:last-child ul {
	right: 0;
	left: auto;
}

#g-nav li ul a {
	display: block;
	padding: 12px;
	font-size: 1rem;
	white-space: nowrap;
	color: #fff;
}

#g-nav li ul li ul a {
	background: #686868;
}

#g-nav .g-nav__contact a {
	color: #000;
}

#g-nav .g-nav-info {
	display: block;
	padding-bottom: 90px;
}

#g-nav .g-nav-info__reserve {
	padding: 0 20px;
	margin-bottom: 20px;
}

#g-nav .g-nav-info__reserve a {
	border: solid 1px #d82b4c;
	line-height: 1.3;
	font-size: 12px;
	padding: 6px 0;
	position: relative;
	color: #d82b4c;
	font-weight: 700;
}

#g-nav .g-nav-info__reserve a::before {
	content: '';
	display: inline-block;
	width: 12px;
	height: 12px;
	vertical-align: -1px;
	margin-right: 4px;
	background: url('./img/common/mail-icon.png') center / contain no-repeat;
}

#g-nav .g-nav-info__reserve a::after {
	content: '';
	position: absolute;
	width: 6px;
	height: 6px;
	border-right: solid 1px #d82b4c;
	border-bottom: solid 1px #d82b4c;
	right: 15px;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
}

#g-nav .g-nav-info__contact {
	margin-bottom: 15px;
}

#g-nav .g-nav-info__tel a {
	padding: 0;
	font-size: 20px;
	font-family: 'GFS Didot', serif;
	letter-spacing: .08em;
	font-weight: 700;
	border: none;
	line-height: 1.2;
}

#g-nav .g-nav-info__tel a::before {
	content: '';
	display: inline-block;
	width: 14px; 
	height: 14px;
	background: url('./img/common/sp-icon.png') center / contain no-repeat;
	margin-right: 3px;
}

#g-nav .g-nav-info__txt {
	margin-bottom: 15px;
}

#g-nav .g-nav-info__sns {
	display: flex;
	justify-content: center;
}

#g-nav .g-nav-info__sns-item {
	flex: 0 0 30px;
	margin: 0 5px;
}

#g-nav .g-nav-info__sns-item a {
	padding: 0;
	border: none;
}

/*
----------------------------------------
sp-btn
----------------------------------------
*/

#sp-btn {
	display: block;
	width: 50px;
	height: 50px;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 99999;
}

#sp-btn a,
#sp-btn a span {
	display: inline-block;
	box-sizing: border-box;
	transition: all .4s;
}

#sp-btn a {
	position: relative;
	width: 100%;
	height: 100%;
	background-color: #000;
}

#sp-btn a span {
	position: absolute;
	left: 14px;
	width: 22px;
	height: 1px;
	background: #fff;
}

#sp-btn a span:nth-of-type(1) {
	top: 10px;
}

#sp-btn a span:nth-of-type(2) {
	top: 18px;
}

#sp-btn a span:nth-of-type(3) {
	top: 26px;
}

#sp-btn a p {
	position: absolute;
	top: 28px;
	left: 10px;
	color: #fff;
	font-family: 'Josefin Sans', sans-serif !important;
	font-size: 10px;
    text-transform: uppercase;
	transform: scale(0.8);
}

#sp-btn a.active span:nth-of-type(1) {
	-webkit-transform: translateY(5px) rotate(-45deg);
	transform: translateY(8px) rotate(-45deg);
}

#sp-btn a.active span:nth-of-type(2) {
	opacity: 0;
}

#sp-btn a.active span:nth-of-type(3) {
	-webkit-transform: translateY(-5px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
}


/*
----------------------------------------
page-ttl
----------------------------------------
*/

#page-ttl {
	background: #eee;
	padding: 40px 20px;
}

#page-ttl .box {
	display: inline-block;
	background: rgba( 255,255,255,.9 );
	padding: 20px 40px;
	line-height: 1.4;
}

#page-ttl .box h2 {
	font-size: 3rem;
	font-weight: normal;
}

#page-ttl .box h2.en {
	font-size: 4rem;
}

#page-ttl .box p {
	font-size: 1.5rem;
}

#page-ttl .box p.en {
	font-size: 2rem;
}


/*
----------------------------------------
topic-path
----------------------------------------
*/

.topic-path {
	padding: 10px 0;
	margin-bottom: 20px;
	background: #fafafa;
}

.topic-path .wrap {
	text-align: left;
}





/* Custum */



@media screen and (max-width: 749px) {

	.mov iframe {
		width: 100% !important;
   height: 200px !important;
	}

	.cat-nav > ul {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}

	.cat-nav > ul > li {
		/*flex: 0 0 100%;
		max-width: calc(100% - 6px);
		margin: 0 3px;*/
		position: relative;
		width: 30%;
		margin: 10px 3px 0;
	
	}

	.cat-nav li.sp-half {
		flex: 30%;
		/* max-width: calc(50% - 6px); */
	}

	.cat-nav li.w50 {
		flex: 50%;
		max-width: calc(50% - 6px)
	}

	.cat-item:nth-child(5) > a {
    margin-bottom: 0;
  }

	.cat-item.cat-item-5 {
    display: none;
  }

	.cat-nav li a {
    display: block;
		/*background: #000;*/
		background: #a7c6d8;
		color: #fff;
		/*margin: 5px auto 0;*/
		/*padding: 10px 0;*/
		/*padding: 5px 20px;*/
    transition: all .2s;
		/*width: 100%;*/
		width: auto;
		/*margin: 5px;*/
		padding: 4px;
		transition: all .2s;
		border-radius: 8px;
	
	}
	
	.cat-nav li a span{
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 10.3px;
		border: 1px solid #FFF;
		border-radius: 8px;
		padding: 15px 0;
	}

	.cat-nav ul li a span .small{
		border: none;
		padding: 0;
		font-size: 10px;
		line-height: 1;
	}
	
	.cat-nav li.location-spot a span{
		display: block;
	}

	.children .cat-item {
    width: 100%;
    float: left;
    border-collapse: collapse;
	}
	
	.cat-nav .cat-all li {
    width: 100%;
	}

	.cat-nav .cat-all li a span{
    padding: 8px 0;
	}

	.cat-nav li.current-cat a, .cat-nav .cat-item-12 > a:hover {
    background: #4085a8;
		padding: 4px;
  }

	.children {
    width: 100%;
    margin: auto;
  }

	.children .cat-item > a {
    background: white;
    color: #232323;
    border-bottom: 1px solid grey;
    box-sizing: border-box;
    margin: 0;
		width: 100%;
		border-radius: 0;
  }

	.children .cat-item:nth-child(odd) > a {
    border-right: 1px solid grey;
    border-left: 1px solid grey;
    box-sizing: border-box;
  }

	.children .cat-item:nth-child(even) > a {
		border-right: 1px solid grey;
		border-left: 1px solid grey;
}


}












/*
----------------------------------------
container
----------------------------------------
*/

.cat-nav {
	/*-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;*/
	text-align: center;
	justify-content: center;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 15px 4px;
	box-sizing: border-box;
}

.cat-nav li.current-cat a,
.cat-nav li a:active {
	/*background: #cca37a;*/
	background: #4085a8;

}

.children{
	display: none;
}

.addtoany_shortcode {
	margin-top: 10px;
}

#container {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-direction: row;
	text-align: left;
	margin-top: 20px;
	padding-bottom: 60px;
}


/*
----------------------------------------
sidebar
----------------------------------------
*/

#sidebar .back-link a {
	display: block;
	padding: 15px;
	font-size: 1.6rem;
	text-align: center;
	border: solid 1px #ccc;
	border-radius: 5px;
	margin-bottom: 30px;
	transition: all .2s;
}

#sidebar .back-link a:hover {
	background: #000;
	color: #fff;
}

#sidebar .back-link a:before {
	font-family: 'FontAwesome';
	content: '\f104';
	margin-right: 1rem;
	position: relative;
	left: 0;
	transition: all .2s;
}

#sidebar .back-link a:hover:before {
	color: #fff;
	left: -5px;
}

#sidebar .bnr {
	margin-bottom: 15px;
}

#sidebar .bnr figure {
	margin-bottom: 10px;
}

#sidebar .bnr figcaption {
	text-align: left;
}

#sidebar > div {
	margin-bottom: 15px;
}

.side-menu h2 {
	font-size: 1.6rem;
	border-bottom: solid 2px #000;
	padding-bottom: 5px;
	position: relative;
}

.side-menu h2 .en {
	font-size: 1.4rem;
	position: absolute;
	right: 0;
	bottom: 5px;
}

.side-menu > ul {
	margin-bottom: 30px;
}

.side-menu > ul > li {
	border-bottom: solid 1px #ccc;
}

.side-menu li li {
	border-top: solid 1px #ccc;
}

.side-menu a {
	display: block;
	padding: 10px;
	position: relative;
	transition: all .2s;
}

.side-menu a:hover {
	background: #fafafa;
}

.side-menu a:after {
	font-family: 'FontAwesome';
	content: '\f105';
	position: absolute;
	right: 15px;
	bottom: 10px;
	transition: all .2s;
}

.side-menu a:hover:after {
	right: 10px;
}

.side-menu li li a:before {
	content: '-';
	margin-right: 10px;
}

.side-menu.box-menu {
	border: solid 1px #ddd
	padding: 20px;
}


/*
----------------------------------------
footer
----------------------------------------
*/

#wrapper footer {
	padding-bottom: 60px;
}

footer .plan-box h2 {
	font-family: 'Cinzel', serif;
	font-size: 2rem;
	margin: 15px;
}

footer .plan-box,
footer .plan-nav {
	max-width: 1200px;
	margin-left: 20px auto;
}

footer .plan-box .data-icon:before {
	width: 90px;
	height: 90px;
	background: url( img/common/data-icon.png ) left top no-repeat;
	background-size: contain;
}

/* bnr-box */

.bnr-box {
	max-width: 1200px;
	margin: 0 auto 40px auto;
}

.bnr-box h2 span {
	font-size: 2rem;
}

.bnr-box figure {
	padding: 20px;
}

/* insta-box */

.insta-box {
	padding: 30px 0;
}

.insta-box h2 {
	margin-bottom: 10px;
}

.insta-box .insta {
	position: relative;
}

.insta-box .insta .follow-btn {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 120px;
	height: 120px;
	transform: translate( -50%,-50% );
	z-index: 999;
}

footer .voice-box {
	background: transparent;
	max-width: 1200px;
	margin: 0 auto;
}

footer .voice-box .pic {
	width: 100%;
	height: 200px;
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	text-align: center;
	color: #fff;
	background: #eee url( img/common/voice-ttl.png ) center center no-repeat;
	background-size: cover;
}

footer .voice-box .heading-01 span {
	border-bottom-color: #fff;
}

footer .voice-box .pic .wrap {
	flex: 1;
}

#bottom-info .sitemap {
	display: none;
}

.address-box {
	padding: 15px;
}

.address-box img {
	width: 174px;
	height: auto;
	margin-bottom: 20px;
}

.sns-btn {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	margin: 20px 15px;
}

.sns-btn img {
	width: 24px;
	margin: 0 5px;
}

.map-box h3 {
	font-size: 2rem;
	margin-bottom: 15px;
}

#map {
	width: 100%;
	height: 200px;
}

.map {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

.map iframe,
.map object,
.map embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.copyright {
	font-family: 'GFS Didot', serif;
	padding: 30px 15px;
}


#bottom-fix {
	position: fixed;
	z-index: 9999;
}

#bottom-fix .pc {
	display: block;
}
#bottom-fix .sp,
#bottom-fix .spfix {
	display: none;
}

#page-top a {
	display: none;
	width: 3rem;
	height: 3rem;
	border-radius: 1.5rem;
	line-height: 2.4rem;
	font-size: 2rem;
	background: #fff;
	text-align: center;
	transition: all .2s;
	padding: 0;
	color: #000000;
}

#page-top a:hover {
	background: #333;
	color: #fff;
}


@media screen and ( max-width: 749px ) {
	#bottom-fix {
		display: flex;
		justify-content: center;
		font-family: 'Josefin Sans', sans-serif;
		width: 100%;
		padding-bottom: 10px;
		background: rgba(255, 255, 255, 0.61);
		color: #fff;
		left: 0;
		right: 0;
		bottom: -10px;
		z-index: 999;
	}

	#bottom-fix .pc {
		display: none;
	}
	#bottom-fix .sp {
		display: block;
	}


	#bottom-fix .spfix {
		display: flex;
		box-sizing: border-box;
		column-gap: 1.88vw;
    padding: 2.6vw 1vw;
    width: 100%;
	}
	
	#bottom-fix .spfix .reserve {
		flex: 1 0 0;
		height: 10.83vw;
    line-height: 1.5;
    font-size: 3.5vw;
	}

	#bottom-fix .spfix .reserve a {
    padding-top: 0.8vw;
		background: url('img/common/footer-reserve.png') center left 4vw / auto 9vw no-repeat #D22D25;
		color: #fff;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
    border-radius: 5px;
    box-sizing: border-box;
    padding-left: 10vw;
	}

	#bottom-fix .spfix .reserve a .txt1 {
    font-size: 2.4vw;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	#bottom-fix .spfix .reserve a .txt1 span {
    font-family: 'Cinzel', serif;
    font-size: 3vw;
    margin-right: 1vw;
		transform: none;
	}
	
	#bottom-fix .spfix .btn {
		flex: 0 0 10.83vw;
		width: 10.83vw;
		height: 10.83vw;
    font-size: 2vw;
	}

	#bottom-fix .spfix .btn a {
		background: #000;
		color: #fff;
		display: block;
		width: 100%;
		height: 100%;
    border-radius: 5px;
    padding-top: 7vw;
    box-sizing: border-box;
		position: relative;
	}

	#bottom-fix .spfix .btn a::after {
		content: '';
		position: absolute;
		top: 1.5vw;
		left: 50%;
		transform: translateX(-50%);
	}

	#bottom-fix .spfix .btn--chat a::after {
    width: 6vw;
    height: 6vw;
		background: url(img/common/footer-line.png) center top / contain no-repeat;
	}

	#bottom-fix .spfix .btn--contact a::after {
    width: 6vw;
    height: 6vw;
		background: url(img/common/footer-contact.png) center top / contain no-repeat;
	}

	#bottom-fix .spfix .btn--tel a::after {
		top: .5vw;
    width: 6.8vw;
    height: 6.8vw;
		background: url(img/common/footer-tel.png) center top / contain no-repeat;
	}

	#bottom-fix ul {
		display: table;
		border-collapse: separate;
		border-spacing: 2vw calc(1rem + (2 - 1) * ((100vw - 32rem) / (75 - 32)));
	}
	
	#bottom-fix li {
		vertical-align: bottom;
		display: table-cell;
	}
	
	#bottom-fix li a {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: flex-end;
		border: none;
		border-radius: 5px;
		color: #ffffff;
		background: #000000;
		box-sizing: border-box;
		font-size: 12px;
		font-weight: normal;
	}

	#bottom-fix .reservation a {
		display: flex;
		align-items: center;
		background : #D22D25;
		font-size: calc(1.4rem + (2.6 - 1.4) * ((100vw - 32rem) / (75 - 32)));	/* 14px @ 320px increasing to 26px @ 750px */
		min-width: 260px;
		width: calc(22rem + (54 - 22) * ((100vw - 32rem) / (75 - 32)));	/* 220px @ 320px increasing to 540px @ 750px */
		height: calc(4rem + (8 - 4) * ((100vw - 32rem) / (75 - 32)));	/* 40px @ 320px increasing to 80px @ 750px */
	}

	#bottom-fix .contact a,
	#bottom-fix .tel a {
		font-size: 2vw;
		width: calc(4rem + (8 - 4) * ((100vw - 32rem) / (75 - 32)));	/* 40px @ 320px increasing to 80px @ 750px */
		height: calc(4rem + (8 - 4) * ((100vw - 32rem) / (75 - 32)));	/* 40px @ 320px increasing to 80px @ 750px */
	}
	
	#bottom-fix .contact a:before {
		background: no-repeat url(img/common/footer-contact.png);
		background-size: contain;
		position: absolute;
		content: '';
		width: calc(2.2rem + (4.5 - 2.2) * ((100vw - 32rem) / (75 - 32)));
		height: calc(2.2rem + (4.5 - 2.2) * ((100vw - 32rem) / (75 - 32)));
		top: 10%;
		left: 50%;
		transform: translate(-50%,0%);
	}
	
	#bottom-fix .tel a:before {
		background: no-repeat url(img/common/footer-tel.png);
		background-size: contain;
		position: absolute;
		content: '';
		width: calc(2.5rem + (5 - 2.5) * ((100vw - 32rem) / (75 - 32)));
		height: calc(2.5rem + (5 - 2.5) * ((100vw - 32rem) / (75 - 32)));
		top: 7%;
		left: 50%;
		transform: translate(-50%,0%);
	}
}

@media screen and ( max-width: 510px ) {
	#bottom-fix li a span {
		transform: scale(0.7);
	}

	#bottom-fix .reservation a {
		font-size: 14px;
	}
	#bottom-fix .spfix .reserve {
		height: 12vw;
	}

	#bottom-fix .spfix .btn {
		flex: 0 0 12vw;
		width: 12vw;
		height: 12vw;
	}

	#bottom-fix .spfix .btn a {
		padding-top: 8vw;
	}

	#bottom-fix .spfix .btn span {
		transform: scale(.7);
		display: block;
	}

	#bottom-fix .spfix .btn a::after {
    width: 7vw;
    height: 7vw;
	}

	#bottom-fix .spfix .btn--tel a::after,
	#bottom-fix .spfix .btn--chat a::after {
		width: 7.5vw;
		height: 7.5vw;
		top: 1vw;
	}
}


/*
----------------------------------------
font
----------------------------------------
*/

.acf-input {
	font-size: 62.5%;
}

.acf-input h2 {
	font-weight: bold !important;
	color: #444;
	background: #F9F9F9;
	border: solid 1px #E1E1E1;
	margin-bottom: 20px !important;
}

.en {
	font-family: 'Cinzel', serif;
}

.gothic {
	font-family: 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', '游ゴシック', YuGothic, sans-serif;
}

.mincho {
	font-family: ’ヒラギノ明朝 ProN W3’, ’Hiragino Mincho ProN’, ’游明朝’, YuMincho, ’ＭＳ Ｐ明朝’, ’ＭＳ 明朝’, serif;
}

strong {
	font-weight: normal;
}

body > iframe {
	position: fixed;
	top: 0;
	left: -9999px;
}

/*
----------------------------------------
h1-h6
----------------------------------------
*/

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
	line-height: 1.5;
}

h1.center,
h2.center,
h3.center,
h4.center,
h5.center,
h6.center {
	text-align: center;
}

/* heading-01 */

.heading-01 {
	font-size: 1.2rem;
	margin: 20px 0;
}

.heading-01 span {
	display: inline-block;
	font-family: 'Cinzel', serif;
	font-size: 2rem;
	border-bottom: solid 1px #000;
	margin-bottom: 5px;
}

/* heading-02 */

.heading-02 {
	font-size: 1.2rem;
	margin: 20px 0;
}

.heading-02 span {
	display: inline-block;
	font-family: 'GFS Didot', serif;
	font-size: 2rem;
	margin-bottom: 2px;
}

/* heading-03 */

.heading-03 {
	font-family: 'Cinzel', serif;
	font-size: 1.4rem;
	margin: 10px 0;
}

.heading-03 span {
	font-family: 'Droid Serif', serif;
	font-style: italic;
	font-size: 2.4rem;
}

/* heading-04 */

.heading-04 {
	font-family: 'Cinzel', serif;
}

.heading-04 span {
	font-family: 'Dancing Script', cursive;
	font-size: 2.4rem;
}

/* heading-05 */

.heading-05 {
	font-size: 1.2rem;
	margin: 20px 0;
}

.heading-05 span {
	display: inline-block;
	font-family: 'Cinzel', serif;
	font-size: 2rem;
	margin-bottom: 2px;
}

/* heading-06 */

.heading-06 {
	margin-bottom: 15px;
}

.heading-06 span {
	font-family: 'Dancing Script', cursive;
	font-size: 2rem;
}

/* heading-07 */

.heading-07 {
	font-size: 1.2rem;
	letter-spacing: 2px;
	background: #333;
	color: #fff;
	padding: 5px 10px;
	margin: 15px 0;
}


/*
----------------------------------------
bottun
----------------------------------------
*/

.btn-01 a,
.btn-02 a,
.btn-03 a,
.btn-04 a {
	text-decoration: none;
	transition: all .2s;
}

.btn-01 {
	margin-top: 20px;
}

.btn-01 a {
	display: inline-block;
	padding: 10px 20px;
	font-family: 'GFS Didot', serif;
	line-height: 1.5;
	border: solid 1px #000;
	font-size: 1.1rem;
}

.btn-01 a:hover {
	background: #000;
	color: #fff;
}

.btn-01 a:hover:after {
	right: 10px;
}

.btn-02 {
	margin-top: 15px;
}

.btn-02 a {
	font-family: 'GFS Didot', serif;
	text-decoration: underline;
	position: relative;
	font-size: 1.1rem;
}

.btn-02 a:after {
	content: ' +';
}

.btn-03 a {
	display: block;
	padding: 10px 20px;
	margin: 15px;
	border: solid 1px #000;
	font-size: 1.2rem;
	line-height: 1.5;
}

.btn-03 a:hover {
	background: #000;
	color: #fff;
}

.btn-03 a span {
	font-family: 'Cinzel', serif;
	font-size: 1rem;
}

.btn-04 {
	margin: 20px 0;
}

.btn-04 a {
	display: inline-block;
	padding: 10px 20px;
	font-family: 'GFS Didot', serif;
	color: #fff;
	line-height: 1.5;
	border: solid 1px #fff;
	font-size: 1.1rem;
}

.btn-04 a:hover {
	background: #fff;
	color: #000;
}

.btn-04 a:hover:after {
	right: 10px;
}

.btn-05 {
	padding: 10px 0;
}

.btn-05 a {
	display: inline-block;
	padding: 10px 20px;
	line-height: 1.5;
	border: solid 1px #000;
	font-size: 1.1rem;
}

.btn-05 a:hover {
	background: #000;
	color: #fff;
}


/*
----------------------------------------
table
----------------------------------------
*/

table caption {
	caption-side: bottom;
	padding-top: 15px;
	font-size: 1.3rem;
}

table.cell-02 th {
	width: 25%;
}

table.cell-02.fixed th,
table.cell-02.fixed td {
	width: 50%;
}

table.cell-03.fixed th,
table.cell-03.fixed td {
	width: 33.3333%;
}

table.cell-04.fixed th,
table.cell-04.fixed td {
	width: 25%;
}

table.cell-05.fixed th,
table.cell-05.fixed td {
	width: 20%;
}

table.cell-06.fixed th,
table.cell-06.fixed td {
	width: 16.6666%;
}

/* table-01 */

.table-01 {
	width: 100%;
	text-align: left;
	margin-bottom: 30px;
}

.table-01 thead th,
.table-01 thead td {
	color: #fff;
	background: #000;
	text-align: center;
	font-family: 'Cinzel', serif;
}

.table-01 th {
	padding: 15px;
	border-top: solid 1px #ccc;
	font-weight: normal;
	vertical-align: top;
}

.table-01 td {
	padding: 15px;
	border-top: solid 1px #ccc;
	vertical-align: top;
}

/* table-03 */

.table-03 {
	width: 100%;
	text-align: left;
	border-top: solid 1px #ccc;
	border-left: solid 1px #ccc;
	margin: 30px 0;
}

.table-03 thead th,
.table-03 thead td {
	color: #fff;
	background: #000;
	text-align: center;
}

.table-03 th {
	padding: 15px;
	border-bottom: solid 1px #ccc;
	border-right: solid 1px #ccc;
	background: #f9f9f9;
	font-weight: normal;
	vertical-align: top;
}

.table-03 td {
	padding: 15px;
	border-bottom: solid 1px #ccc;
	border-right: solid 1px #ccc;
	vertical-align: top;
}

/* table-02 */

.table-02 {
	width: 100%;
	text-align: left;
	border-top: solid 1px #ccc;
	margin: 30px 0;
}

.table-02 th {
	padding: 20px 10px;
	border-bottom: solid 1px #ccc;
	font-weight: normal;
}

.table-02 td {
	padding: 20px 10px;
	border-bottom: solid 1px #ccc;
}


/*
----------------------------------------
form
----------------------------------------
*/

.wpcf7-radio {
	display: block;
	margin: 10px 0;
}

.wpcf7-list-item {
	vertical-align: top;
}

button, select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	outline: none;
}

input, select {
	vertical-align: middle;
}

input[type='text'],
input[type='tel'],
input[type='number'],
input[type='email'],
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	outline: none;
	display: block;
	width: 100%;
	padding: 10px;
	box-sizing: border-box;
	background: #fff;
	border: solid 1px #ccc;
}

input[type='text'].small,
input[type='tel'].small,
input[type='number'].small,
input[type='email'].small {
	display: inline-block;
	width: 50%;
	vertical-align: middle;
	margin-top: 0;
}

input[type='number'].x-small {
	display: inline-block;
	width: 20%;
	vertical-align: middle;
	margin-top: 0;
}

input[type='date'],
select {
	display: inline-block;
	padding: 5px 10px;
	box-sizing: border-box;
	background: #fff;
	border: solid 1px #ccc;
	border-radius: 0;
	min-height: 3rem;
	position: relative;
}

select {
	padding: 5px 35px 5px 10px;
	background: #fff url( img/common/arrow-02.png ) right 10px center no-repeat;
}

input[type='submit'] {
	background: #000;
	color: #fff;
	font-size: 1.6rem;
	padding: 15px 30px;
	cursor: pointer;
	border: none;
	transition: all .2s;
}

input[type='submit']:hover {
	background: #cca37a;
}

textarea {
	border: solid 1px #ddd;
	padding: 5px;
	box-sizing: border-box;
	width: 100%;
}

input::-webkit-input-placeholder {
	color: #aaa;
	font-weight: normal;
}


/*
----------------------------------------
list
----------------------------------------
*/

/* arrow */

.li-arrow-01 ul {
	display: inline-block;
	margin: 0 auto;
	font-size: 1.6rem;
	text-align: left;
}

.li-arrow-01 li {
	position: relative;
	padding: 0 2rem;
}

.li-arrow-01 li:before {
	font-family: 'FontAwesome';
	content: '\f105';
	position: absolute;
	left: 0;
	top: 0;
}

/* check */

.li-check ul {
	display: inline-block;
	margin: 0 auto;
	font-size: 1.6rem;
	text-align: left;
}

.li-check li {
	position: relative;
	padding: 0 2rem;
	line-height: 1.4;
	margin-bottom: 10px;
}

.li-check li:before {
	font-family: 'FontAwesome';
	content: '\f046';
	position: absolute;
	left: 0;
	top: 0;
}


/*
----------------------------------------
dl
----------------------------------------
*/

.dl-01 {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 10px 0 0 0;
}

.dl-01 dt {
	width: 20%;
	font-size: 1.1rem;
	line-height: 2rem;
	text-align: center;
	background: #222;
	color: #fff;
	margin-bottom: 10px;
}

.dl-01 dd {
	width: 77%;
	margin-bottom: 10px;
	line-height: 2rem;
}


/*
----------------------------------------
faq
----------------------------------------
*/

#contents #faq-menu {
	background: #fafafa;
	padding: 20px 10px;
	border: none;
}

#faq-menu h2 {
	border-bottom: solid 1px #000;
	padding-bottom: 5px;
}

#faq-menu h2:before {
	font-family: 'FontAwesome';
	content: '\f111';
	margin-right: 1rem;
	font-size: 1.4rem;
	vertical-align: middle;
	color: #ccc;
}

#faq-menu li a {
	display: block;
	padding: 2px 0;
	font-size: 1.6rem;
}

.faq-01 dt {
	font-size: 2rem;
	padding: 25px 0 10px 5rem;
	border-top: solid 1px #ccc;
	position: relative;
}

.faq-01 dt:first-of-type {
	border-top: none;
	padding-top: 0;
}

.faq-01 dt:first-of-type:before {
	top: 2px;
}

.faq-01 dd {
	padding: 0 0 20px 5rem;
	position: relative;
}

.faq-01 dt:before,
.faq-01 dd:before {
	font-size: 1.4rem;
	font-family: 'Roboto Slab', serif;
	text-align: center;
	line-height: 3.4rem;
	display: inline-block;
	width: 3.4rem;
	height: 3.4rem;
	position: absolute;
	left: 0;
}

.faq-01 dt:before {
	content: 'Q';
	color: #fff;
	background: #000;
	top: 27px;
}

.faq-01 dd:before {
	content: 'A';
	background: #ddd;
	top: 2px;
}

.faq-02 dt {
	font-size: 2rem;
	padding: 5px 0 5px 8rem;
	margin-bottom: 15px;
	border-top: solid 1px #555;
	border-bottom: solid 1px #555;
	position: relative;
}

.faq-02 dd {
	padding: 35px 0 40px 0;
	position: relative;
}

.faq-02 dt:before {
	content: 'Q';
	font-family: 'Roboto Slab', serif;
	background: transparent !important;
	text-align: center;
	display: inline-block;
	width: 6rem;
	border-right: solid 1px #555;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate( 0, -50% );
}

.faq-02 dd:before {
	display: inline-block;
	content: 'Answer';
	font-family: 'Roboto Slab', serif;
	font-size: 1.2rem;
	padding: 2px 20px;
	position: absolute;
	top: 0;
	left: 0;
	background: #333;
	color: #fff !important;
}


/*
----------------------------------------
flow
----------------------------------------
*/

/* flow-column */

.flow-column .flex {
	padding-top: 60px;
	position: relative;
}

.flow-column .flex:after {
	font-family: 'FontAwesome';
	content: '\f107';
	font-size: 5rem;
	line-height: 1;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate( -50%, 0 );
}

.flow-column .flex:first-of-type {
	padding-top: 10px;
}

.flow-column .flex:first-of-type:after {
	display: none;
}

/* flow */

.flow.flex .box {
	padding: 10px 40px;
	position: relative;
}

.flow.flex .box:before {
	font-family: 'FontAwesome';
	content: '\f105';
	font-size: 4rem;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate( -50%, -50% );
}

.flow.flex .box:first-child:before,
.flow.flex.box-02 .box:nth-child(2n+1):before,
.flow.flex.box-03 .box:nth-child(3n+1):before,
.flow.flex.box-04 .box:nth-child(4n+1):before,
.flow.flex.box-05 .box:nth-child(5n+1):before,
.flow.flex.box-06 .box:nth-child(6n+1):before {
	display: none;
}


/*
----------------------------------------
slider
----------------------------------------
*/

.slider .slick-slide img {
	display: inline-block;
}

.slider.thumb-slider {
	margin: 40px 0 0 0;
}

.slider.thumb-slider + .thumb {
	margin-bottom: 40px;
}

.slider.thumb-slider + .thumb figure {
	padding: 0 5px;
	box-sizing: border-box;
}

.slider .slick-dots {
	bottom: -20px;
}

.slick-dots li.slick-active button:before {
	color: #cca37a !important;
}

.slider .slick-prev {
	left: 20px !important;
	z-index: 999;
}

.slider .slick-next {
	right: 20px !important;
	z-index: 999;
}


/*
----------------------------------------
top
----------------------------------------
*/

#top-main-img {
	background: #eee;
	line-height: 1;
}

/*
----------------------------------------
voice
----------------------------------------
*/

#voice .user,
#voice .star {
	display: inline-block;
	margin-bottom: 10px;
}

#voice .user {
	font-size: 1.6rem;
	margin-right: 1rem;
}

#voice .star {
	font-size: 2rem;
	color: #ccc;
	letter-spacing: 3px;
}

#voice .star span {
	color: #D5B376;
}

#voice dl.cat-list {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	margin-bottom: 10px;
	padding: 10px;
	background: #fafafa;
	border-radius: 5px;
}

#voice dl.cat-list dt {
	background: #000;
	color: #fff;
	font-size: 1.2rem;
	padding: 1px 20px;
	margin-right: 10px;
}

#voice dl.cat-list a {
	display: inline-block;
	font-size: 1.4rem;
	margin-right: 10px;
	text-decoration: underline;
}

#voice .faq-list {
	margin: 20px 0 40px 0;
	padding: 20px 20px 0 20px;
	background: #fafafa;
	border-radius: 5px;
}

#voice .comment h2:before {
	font-family: 'FontAwesome';
	content: '\f026';
	margin-right: 1rem;
}

/* archive */

#voice #contents h1 {
	margin-bottom: 10px;
}

#voice .post-archive ul.cat-list {
	margin-bottom: 5px;
}

#voice .post-archive .user {
	font-size: 1.4rem;
}

#voice .post-archive .star {
	font-size: 1.8rem;
}

#voice .post-archive p {
	margin-bottom: 0;
}


/*
----------------------------------------
home
----------------------------------------
*/

/* mainimg */

#home #mainimg {
	width: 100%;
	height: calc(100vh - 20px);
	position: relative;
}

#home #mainimg .pc {
	display: none;
}

#home #mainimg .bg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

#home #mainimg .bg-item {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	visibility: hidden;
	opacity: 0;
	transition: visibility 1s ease, opacity 1s ease;
}

#home #mainimg .bg-item.is-active {
	visibility: visible;
	opacity: 1;
}

#home #mainimg .bg-item img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

#home #mainimg .pic {
	display: flex;
	align-items: center;
	/* background: #ccc url( img/home/mainimg-sp.jpg ) center center no-repeat; */
	background-size: cover;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

#home #mainimg .pic figure {
	width: 100%;
}

#home #mainimg .pic figure img {
	width: 33.3333%;
	min-width: 125px;
	max-width: 250px;
	transition: filter 1s ease;
}

#home #mainimg[data-slide-idx="0"] .pic figure img {
	filter: drop-shadow(0 0 10px black) drop-shadow(0 0 50px black);
}

#home #mainimg .txt {
	position: absolute;
	right: 20px;
	bottom: 35px;
	left: 20px;
	color: #fff;
	transition: text-shadow 1s ease;
}

#home #mainimg[data-slide-idx="1"] .txt {
	text-shadow: 0 0 10px black;
}

#home #mainimg .txt .en {
	font-size: 1.3rem;
}

#home #mainimg .txt .en span {
	font-family: 'Cinzel', serif;
}

#home #mainimg .txt .jp {
	font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
	font-size: .8rem;
	margin-top: 5px;
}

/* campaign */

.campaign-box {
	background: #f3f3f3;
	padding: 20px 0 30px;
}

.campaign-box .ttl h2 {
	font-family: 'Dancing Script', cursive;
	font-size: 2.4rem;
	line-height: 1.2;
	margin: 5px 10px 20px 10px;
	padding-bottom: 15px;
	padding-top: 30px;
	background: url( img/campaign/campaign-ttl-bg.png ) center top no-repeat;
	background-size: 114px;
	position: relative;
}

.campaign-box .ttl h2:after {
	content: '';
	width: 70px;
	height: 1px;
	background: #000;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate( -35px, 0 );
}

.campaign-box .ttl h2 span {
	font-size: 1.2rem;
	font-family: 'Cinzel', serif;
}

.campaign-box .wrap {
	padding: 0 5px;
	margin: 20px 0 35px 0;
}

.campaign-box .slider figure {
	padding: 0 5px 20px 5px;
	line-height: .5;
}

.campaign-box .btn-01 {
	margin-top: 10px;
}

.campaign-box__desc {
	font-size: 13px;
}

/* plan */

.plan-nav {
	background: #f3f3f3;
	margin-bottom: 20px;
	padding: 5px;
}

.plan-nav ul {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	max-width: 1200px;
	margin: 0 auto;
}

.plan-nav li {
	width: 50%;
}

.plan-nav li a {
	display: block;
	position: relative;
	margin: 5px 2px;
	padding: 8px 4px 8px 24px;
	background: #fff;
	border-radius: 5px;
	font-size: .9rem;
	text-align: left;
	line-height: 1.4;
	white-space: nowrap;
	transition: all .2s;
}

.plan-nav li a:hover {
	background: #000;
	color: #fff;
}

/*.plan-nav li a:after {
	font-family: 'FontAwesome';
	content: '\f107';
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY( -50% );
}*/

.plan-nav li a .num {
	font-size: 1.2rem;
	font-family: 'Cinzel', serif;
	position: absolute;
	top: 50%;
	left: 6px;
	transform: translateY( -50% );
}


#home .plan-sec-list {
	max-width: 1200px;
	margin: 0 auto;
}

#home .plan-sec + .plan-sec {
	margin-top: 8px;
}

#home .plan-sec__pic {
	position: relative;
	cursor: pointer;
}

#home .plan-sec__main {
	position: relative;
}

#home .plan-sec__mainbg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#home .plan-sec__mainbg img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

#home .plan-sec__main::before {
	content: '';
	display: block;
	padding-top: 100%;
}

#home .plan-sec__main-inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	color: #fff;
	transition: all .2s;
}

#home .plan-sec__main-inner .pic-ttl {
	width: 100%;
	text-align: center;
	font-family: 'Cinzel', serif;
	font-size: 2rem;
	letter-spacing: 1px;
	line-height: 1.2;
	margin-top: 20px;
}

#home .plan-sec__main-inner .pic-ttl span {
	font-family: 'GFS Didot', serif;
	font-size: 1.2rem;
}

#home .plan-sec__main-inner figure {
	position: absolute;
	left: 10px;
	bottom: 5px;
}

#home .plan-sec__main-inner figure img {
	height: 30px;
	width: auto;
	opacity: .8;
}

#home .plan-sec__details .txt {
	padding: 20px 15px;
	text-align: left;
}

#home .plan-sec__details .txt h3 {
	font-size: 1.4rem;
	margin-bottom: 15px;
}

#home .plan-sec__details .txt h3 span {
	font-family: 'GFS Didot', serif;
	display: block;
}

#home .plan-sec__details .txt h3 span.price {
	display: inline-block;
	margin-left: 5px;
}

#home .plan-sec__details .btn-02 {
	text-align: right;
}

#home .plan-sec__details .btn-02 a {
	padding: 10px 0;
}

#home .plan-sec__subimgs {
	display: none;
}



#home .plan-box {
	margin-bottom: 20px;
}

.plan-box .plan {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
}

.plan-box .plan .pic {
	position: relative;
	width: 100%;
	height: 200px;
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	align-items: center;
	position: relative;
	background: #eee;
	color: #fff;
	transition: all .2s;
}

.plan-box .plan .pic .bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}

.pic[data-type=link],
.ttl[data-type=link] {
	cursor: pointer;
}

.plan-box .data-icon {
	position: relative;
}

.plan-box .data-icon:before {
	content: '';
	width: 90px;
	height: 90px;
	background: url( img/common/data-icon.png ) left top no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 999;
}

.plan-box .plan-c01 .pic {
    background: #eee url( img/common/plan-c01-sp.jpg ) center center no-repeat;
    background-size: cover;
}
.plan-box .plan-c02 .pic {
    background: #eee url( img/common/plan-c02-sp.jpg ) center center no-repeat;
    background-size: cover;
}
.plan-box .plan-c03 .pic {
    background: #eee url( img/plan/combination%20Photo_c_01.jpg ) center center no-repeat;
    background-size: cover;
}
.plan-box .plan-c04 .pic {
    background: #eee url( img/plan/combination%20Photo_d_04.jpg ) center center no-repeat;
    background-size: cover;
}
.plan-box .plan-c05 .pic {
    background: #eee url( img/plan/trip%20Photo_a_01.jpg ) center center no-repeat;
    background-size: cover;
}
.plan-box .plan-c06 .pic {
    background: #eee url( img/plan/trip%20Photo_b_01.jpg ) center center no-repeat;
    background-size: cover;
}

.plan-box .world .pic {
	background: url( img/common/world-img.png ) center top no-repeat;
	background-size: cover;
}

.plan-box .plan .pic figure {
	position: absolute;
	left: 30px;
	bottom: 5px;
}

#home .plan-box .plan .pic figure {
	left: 10px;
}

.plan-box .plan .pic figure img {
	height: 30px;
	width: auto;
	opacity: .8;
}

.pic .pic-ttl {
	position: relative;
	width: 100%;
	text-align: center;
	font-family: 'Cinzel', serif;
	font-size: 2rem;
	letter-spacing: 1px;
	line-height: 1.2;
}

#home .pic .pic-ttl {
	margin-top: 20px;
}
#home .plan-c01 .pic .pic-ttl{
	color:#333;
}

.pic .pic-ttl span {
	font-family: 'GFS Didot', serif;
	font-size: 1.2rem;
}

.plan-box .plan .txt {
	width: 100%;
	position: relative;
	text-align: left;
	padding: 20px 30px;
	box-sizing: border-box;
}

#home .plan-box .plan .txt {
	height: 200px;
	padding: 20px 15px;
}
#home .plan-box .plan-c01 .txt,
#home .plan-box .plan-c02 .txt,
#home .plan-box .plan-c03 .txt,
#home .plan-box .plan-c04 .txt,
#home .plan-box .plan-c05 .txt,
#home .plan-box .plan-c06 .txt{
	height: auto;
}
.plan-box .plan .txt h3 {
	font-size: 1.4rem;
	margin-bottom: 15px;
}

.plan-box .plan .txt h3 span {
	font-family: 'GFS Didot', serif;
	font-size: 1.5rem;
	margin-left: 5px;
}
.plan-box .plan-c01 .txt h3 span,
.plan-box .plan-c02 .txt h3 span,
.plan-box .plan-c03 .txt h3 span,
.plan-box .plan-c04 .txt h3 span {
    margin-left: 0;
	display:block;
}
.plan-box .plan-c01 .txt h3 span.price,
.plan-box .plan-c02 .txt h3 span.price,
.plan-box .plan-c03 .txt h3 span.price,
.plan-box .plan-c04 .txt h3 span.price {
    margin-left: 5px;
	display:inline-block;
}
.plan-box .plan .txt .btn-02 {
	text-align: right;
}

.plan-box .plan .txt .btn-02 a {
	padding: 10px 0;
}

.plan-box .slick-prev,
.plan-box .slick-next {
	background: rgba( 0,0,0,.9 ) !important;
	width: 20px !important;
	height: 60px !important;
	z-index: 999;
}

.plan-box .slick-prev {
	left: 0 !important;
	transform: translate( 0, -25px ) !important;
}

.plan-box .slick-next {
	right: 0 !important;
	transform: translate( 0, -25px ) !important;
}

.plan-box .slick-prev:before {
	font-family: 'FontAwesome' !important;
	content: '\f104' !important;
}

.plan-box .slick-next:before {
	font-family: 'FontAwesome' !important;
	content: '\f105' !important;
}

/* world photo */

.plan-box .world {
	background: #000;
	padding: 5px;
}

.plan-box .world .wrap {
	background: #fff;
	position: relative;
}

.plan-box .world .pic {
	height: 250px;
}

.plan-box .world .txt {
	height: 150px;
	position: static;
}

.plan-box .world .txt .ttl-txt {
	position: absolute;
	top: 20px;
	right: 20px;
	font-size: 2.2rem;
	font-family: 'Bilbo Swash Caps', cursive;
	color: #d82b4c;
}

.plan-box .world .txt h2 {
	position: absolute;
	top: 30%;
	left: 0;
	right: 0;
	text-align: center;
	font-family: 'Oswald', sans-serif;
	font-weight: 600;
	font-size: 3.6rem;
	line-height: 1.1;
	color: #D82B4C;
}

.plan-box .world .txt h2 span {
	letter-spacing: 1px;
	transform: translateX( 2px );
}

/*--20190226 追加 */

.bnr-box-home {
	margin: 20px 5px 25px;
border: solid #eee 1px;
border-radius: 5px;
}

.bnr-box-home .contents-wrap {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	max-width:1220px;
	padding:0 15px;
	justify-content: space-around;
	margin-bottom: 10px;
}
.bnr-box-home .contents-wrap > * {
    width: 48%;
}

#home .bnr-box-home p.read{
	margin-top: -10px;
	padding-bottom: 10px;
}

#home .bnr-box-home .heading-02 span{
	font-family: 'Cinzel', serif;
	font-size: 1.9rem;
}

.world .txt {
	text-align: center;
	padding: 15px;
}

.world .txt h2 img {
	width: 272px;
	height: auto;
}

.world .txt ul {
	display: inline-block;
	text-align: left;
}

.world .txt li {
	background: url( img/home/icon-yashi-02.png ) left center no-repeat;
	background-size: 20px;
	padding: 4px 0 4px 25px;
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.world .txt li:first-child {
	background: url( img/home/icon-yashi-01.png ) left center no-repeat;
	background-size: 20px;
}

.world .txt .en {
	font-family: 'Julius Sans One', sans-serif;
}

.world .txt .price {
	font-family: 'Oswald', sans-serif;
	font-weight: 600;
	font-size: 1.6rem;
	margin-left: 10px;
	color: #D82B4C;
}

.world .txt li:first-child .price {
	margin-left: 16px;
}

.plan-box .world .txt .btn-02 {
	text-align: center;
}

.plan-box .world-txt {
	padding: 20px 15px 30px 15px;
}

/* dress */

#home .dress-box {
	margin-bottom: 40px;
}

#home .dress-box .pic {
	height: 600px;
	position: relative;
	margin-bottom: 20px;
}

#home .dress-box .pic h2 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate( -50%, -50% );
	z-index: 999;
}

#home .dress-box .pic h2 img {
	width: 180px;
	height: auto;
}

#home .dress-box .pic .pic-box {
	width: 33.3333%;
	height: 50%;
	position: absolute;
}

#home .dress-box .pic .pic-box img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .dress-box .pic .pic-01 {
	top: 50%;
	left: 0;
}

#home .dress-box .pic .pic-02 {
	top: 50%;
	left: 33.3333%;
}

#home .dress-box .pic .pic-03 {
	top: 0;
	left: 33.3333%;
}

#home .dress-box .pic .pic-04 {
	top: 0;
	left: 0;
}

#home .dress-box .pic .pic-05 {
	top: 0;
	left: 66.6666%;
}

#home .dress-box .pic .pic-06 {
	top: 50%;
	left: 66.6666%;
}

/* hairmake-box */

#home .hairmake-box {
	margin-bottom: 30px;
}

#home .hairmake-box .pic {
	width: 100%;
	height: 200px;
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	align-items: center;
	position: relative;
}

#home .hairmake-box .pic p {
	flex: 1;
	font-size: 1.6rem;
	font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
	color: #fff;
	padding: 15px;
	text-shadow: 2px 2px 2px rgba( 0,0,0,.25 );
	transform: translateY( 2rem );
}

#home .hairmake-box .pic-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

#home .hairmake-box .pic-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .hairmake-box .read {
	padding: 0 15px;
	text-align: left;
}

/* option-box */

#home .option-box {
	margin-bottom: 30px;
}

#home .option-box .pic {
	width: 100%;
	height: 200px;
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	align-items: center;
	position: relative;
	color: #fff;
}

#home .option-box .pic p {
	flex: 1;
	font-size: 1.6rem;
	font-family: '游明朝', YuMincho, 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
	color: #fff;
	padding: 15px;
	text-shadow: 2px 2px 2px rgba( 0,0,0,.25 );
	transform: translateY( 2rem );
}

#home .option-box .pic-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

#home .option-box .pic-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .option-box .read {
	padding: 0 15px;
	text-align: left;
}

/* concept-box */

#home .concept-box {
	margin-bottom: 30px;
	position: relative;
}

#home .concept-box .pic {
	position: relative;
	width: 100vw;
	height: 400px;
	padding: 20px 10px;
	box-sizing: border-box;
	transition: all .2s;
}

#home .concept-box .pic img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#home .concept-box .ttl {
	background: rgba( 120,120,120,.8 );
	color: #fff;
	padding: 5px;
	position: absolute;
	top: 20px;
	left: 10px;
	right: 10px;
}

#home .concept-box .ttl .wrap {
	border: solid 1px #fff;
	padding: 10px;
}

#home .concept-box .ttl .en {
	font-size: 1.8rem;
}

#home .concept-box .ttl .jp {
	font-size: .9rem;
}

/* voice-box */

.voice-box {
	background: #f3f3f3;
	padding: 15px 0 0 0;
}

.voice-box .read {
	padding: 0 10px 10px 10px;
}

.voice-list {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	margin: 0 10px;
}

.voice-post {
	width: 50%;
	transition: all .2s;
}

.voice-post img {
	width: 100%;
}

.voice-post .wrap {
	margin: 0 5px 20px 5px;
	background: #fff;
	box-shadow: 0 4px 4px rgba( 0,0,0,.25 );
	position: relative;
}

.voice-post .movie-box,
#voice .new-post .movie-box {
	position: relative;
	aspect-ratio: 253 / 169;
}

.voice-post .movie-box .movie-thumb,
#voice .new-post .movie-box .movie-thumb {
	position: absolute;
	inset: 0;
	cursor: pointer;
}

.voice-post .movie-box .movie-thumb img,
#voice .new-post .movie-box .movie-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
}

.voice-post .movie-box .movie-thumb__icon,
#voice .new-post .movie-box .movie-thumb__icon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 20%;
	height: auto;
}

#voice .new-post .movie-box .movie-thumb__icon {
	width: 10%;
}

.voice-post .movie-box iframe,
#voice .new-post .movie-box iframe {
	width: 100%;
	height: 100%;
	vertical-align: bottom;
}

.voice-post .cat {
	position: absolute;
	right: -5px;
	top: 10px;
	z-index: 999;
}

.voice-post .cat a {
	display: inline-block;
	background: #cca37a;
	color: #fff;
	padding: 2px 12px;
	transition: all .2s;
	box-shadow: 0 2px 2px rgba( 0,0,0,.25 );
}

.cat.photo-wedding a {
	background: #000;
}

.cat.wedding-party a {
	background: #555;
}

.voice-post .cat a:hover {
	background: #333;
}

.voice-post figure,
#voice .new-post figure {
	line-height: .5;
	aspect-ratio: 253 / 169;
}

.voice-post figure img,
#voice .new-post figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
}

.voice-post .txt {
	padding: 15px 15px 20px 15px;
	text-align: left;
}

.voice-post .txt h3 a {
	text-decoration: underline;
}

.voice-post time {
	color: #777;
}

.voice-post2 {
	width: 100%;
}

.voice-post2 .wrap {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	align-items: center;
	padding: 10px 0;
	border-bottom: solid 1px #ccc;
}

.voice-post2 .wrap figure {
	width: 30%;
	margin-right: 10px;
	line-height: .5;
}

.voice-post2 .wrap .txt {
	text-align: left;
}

.voice-post2 .wrap time {
	margin-right: 5px;
}

.voice-post2 .wrap .cat a {
	display: inline-block;
	background: #cca37a;
	color: #fff;
	font-size: .9rem;
	padding: 1px 5px;
	transition: all .2s;
	transform: translateY( -1px );
}

.voice-post2 .wrap .cat-02 a {
	background: #000;
}

.voice-post2 .wrap .cat a:hover {
	background: #333;
}

.voice-post2 .wrap .txt h3 {
	margin-top: 10px;
}

.voice-post2 .wrap .txt h3 a {
	text-decoration: underline;
}

/* faq */

.faq-box {
	margin-bottom: 40px;
}

.faq-box .pic {
	width: 100%;
	height: 200px;
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	align-items: center;
	position: relative;
	color: #fff;
	background: url( img/information/faq-ttl.png ) center top no-repeat;
	background-size: cover;
}

#home .faq-box .pic {
	background: none;
}

#home .faq-box .pic-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

#home .faq-box .pic-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.faq-box .pic h2 {
	width: 100%;
	color: #fff;
	font-size: 1.2rem;
}

.faq-box .pic h2 span {
	font-family: 'Dancing Script', cursive;
	font-size: 3.2rem;
}

dl.faq {
	text-align: left;
	margin-bottom: 20px;
}

dl.faq a {
	text-decoration: underline;
}

dl.faq dt {
	padding: 15px 15px 10px 45px;
	font-size: 1.4rem;
	position: relative;
}

dl.faq dt .q {
	display: inline-block;
	font-family: 'GFS Didot', serif;
	width: 2.4rem;
	height: 2.4rem;
	line-height: 2.4rem;
	text-align: center;
	font-size: 1rem;
	position: absolute;
	top: 15px;
	left: 15px;
	background: #cca37a;
	color: #fff;
}

dl.faq dd {
	padding: 0 15px 15px 15px;
	border-bottom: solid 1px #ccc;
}

/* flow */

.flow-box {
	padding-bottom: 30px;
}

.flow-box .pic {
	width: 100%;
	height: 200px;
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	align-items: center;
	position: relative;
	color: #fff;
	background: url( img/information/flow-ttl.png ) center top no-repeat;
	background-size: cover;
}

#home .flow-box .pic {
	background: none;
}

#home .flow-box .pic-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

#home .flow-box .pic-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.flow-box .pic h2 {
	width: 100%;
	color: #fff;
	font-size: 1.2rem;
}

.flow-box .pic h2 span {
	font-family: 'Dancing Script', cursive;
	font-size: 3.2rem;
}

.flow-box .read {
	padding: 15px;
	text-align: left;
}

.flow-box .btn-01 {
	margin-top: 10px;
}

ol.flow {
	width: 100%;
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	align-items: center;
	flex-wrap: wrap;
	background: #fafafa;
	margin: 0 0 20px 0;
	position: relative;
}

ol.flow:after {
	content: '';
	width: 94%;
	height: 1px;
	background: #ccc;
	position: absolute;
	top: 50%;
	left: 3%;
}

ol.flow li {
	width: 30%;
	padding: 20px 10px;
	box-sizing: border-box;
	position: relative;
}

ol.flow li:after {
	font-family: 'FontAwesome';
	content: '\f105';
	font-size: 1.6rem;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate( 0,-50% );
}

ol.flow li:first-child:after {
	content: '';
	display: none;
}

ol.flow li:nth-child(3) {
	margin-right: 10%;
}

ol.flow li:nth-child(3):before {
	content: '';
	width: 30px;
	height: 1px;
	transform: rotate( 45deg );
	background: #ccc;
	position: absolute;
	bottom: 10px;
	right: -20px;
}

ol.flow li:nth-child(4) {
	margin-left: 10%;
}

ol.flow li:nth-child(4):before {
	content: '';
	width: 30px;
	height: 1px;
	transform: rotate( 45deg );
	background: #ccc;
	position: absolute;
	top: 10px;
	left: -20px;
}

ol.flow li .step,
ol.flow li h3 {
	font-family: 'Josefin Slab', serif;
}

ol.flow li .step {
	color: #d82b4c;
	font-size: 1rem;
}

ol.flow li h3 {
	font-size: 1.6rem;
}

/* creators-box */

.creators-box {
	background: #f3f3f3;
	padding: 30px 10px;
	color: #895d24;
}

.creator .wrap {
	background: #fff;
	margin: 0 5px 20px 5px;
	padding: 10px 10px 5px 10px;
	box-shadow: 0 4px 4px rgba( 0,0,0,.25 );
}

.creators-box .heading-01 {
	margin-top: 0;
}

.creator .wrap figcaption {
	font-family: 'Reenie Beanie', cursive;
	font-size: 2.2rem;
	line-height: 1.2;
	color: #000;
	padding: 5px 0;
}

.creator .wrap figcaption span {
	font-size: 1.8rem;
}

.creators-box .btn-01 {
	margin-top: 60px;
}

/* hospitality */

.hospitality-list.slick-dotted.slick-slider {
	background: #e9e8e4;
	margin-bottom: 60px;
}

.hospitality-list .pic {
	width: 100%;
	height: 200px;
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	align-items: center;
	position: relative;
}

.hospitality-list .pic-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.hospitality-list .pic-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.hospitality-list .pic figure {
	flex: 1;
}

.hospitality-list .pic figure img {
	width: 141px;
	height: 141px;
	margin: 0 auto;
	transition: all .4s;
}

.hospitality-list .txt .ttl {
	display: none;
}

.hospitality-list .txt h3 {
	font-size: 1.3rem;
	padding: 20px 15px 0 15px;
}

.hospitality-list .txt p {
	padding: 10px 15px 20px 15px;
	text-align: left;
}

.hospitality-box .slider .slick-dots {
	bottom: -35px;
}

/* blog-box */

.blog-box {
	margin-bottom: 40px;
}

.blog-box .cat-nav {
	font-family: 'Oswald', sans-serif;
	padding: 20px 4px 15px;
}

@media (max-width: 749px) {
	.blog-box .cat-nav {
		padding: 8px 4px 15px;
	}
}

.blog-box .cat-nav ul {
	justify-content: center;
}

@media (max-width: 749px) {
	.blog-box .cat-nav ul {
		padding: 0 4px;
    box-sizing: border-box;
	}
}

.blog-box .cat-nav li {
	width: auto;
	margin: 0 7px;
}

@media (max-width: 749px) {
	.blog-box .cat-nav li {
		flex: 1 0 0px;
    margin: 0 2px;
	}
}

.blog-box .cat-nav li a {
	border-radius: 0;
	background: #9c9c9c;
	padding: 5px 18px;
}

@media (max-width: 749px) {
	.blog-box .cat-nav li a {
    padding: 10px 5px;
	}
}

.blog-box .cat-nav li.current-cat a {
	background: #CCA37A;
}

.blog-box .cat-nav li a:hover {
	background: #CCA37A;
}

.cat-nav li a {
	white-space: normal;
	font-size: 1rem;
}

.blog-list {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	position: relative;
	margin: 0 5px;
}

.blog-list .blog-post {
	width: 50%;
}

.blog-list .blog-post .wrap {
	margin: 0 5px 20px 5px;
}

.blog-list .blog-post .ttl {
	position: relative;
}

.blog-list .blog-post figure {
	background: #000;
	line-height: .5;
	margin-bottom: 10px;
}

.blog-list .blog-post figure img {
	width: 100%;
	opacity: .8;
	transition: all .2s;
}

.blog-list .blog-post .ttl:hover figure img {
	opacity: .6;
}

.blog-list .blog-post .ttl .txt {
	position: absolute;
	top: 15%;
	right: 15%;
	bottom: 15%;
	left: 15%;
	border: solid 1px #fff;
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	text-align: center;
}

.blog-list .blog-post .ttl .txt a {
	display: block;
	color: #fff;
	font-family: 'Oswald', sans-serif;
	font-size: 1rem;
	line-height: 1.6;
	flex: 1;
}

.blog-list .blog-post .ttl .txt .cat {
	font-size: 1.4rem;
}

.blog-list .blog-post h3 {
	text-align: left;
}

.blog-list .blog-post h3 a {
	text-decoration: underline;
}

/* 東京 New Open バナー */
#tokyo-open {
	width: 100%;
	margin: 0 auto;
}

#tokyo-open .link {
	display: block;
	width: 100%;
}

#tokyo-open .link img {
	display: block;
	width: 100%;
}

.home-campaign-bnr {
	max-width: 1240px;
	margin: 0 auto;
	padding: 15px 10px 0;	
}

.home-campaign-bnr a {
	transition: .2s;
}

.home-campaign-bnr a:hover {
	opacity: .8;
}

/*
----------------------------------------
blog
----------------------------------------
*/

#blog .page-ttl {
	margin-bottom: 15px;
}

#blog .page-ttl .pic {
	background: url( img/blog/blog-ttl.png ) center center no-repeat;
	background-size: cover;
}

#blog #contents.blog-box {
	padding: 15px 0;
}

#blog .post {
	text-align: left;
	padding: 0 15px 15px 15px;
}

#blog .post-header {
	padding-bottom: 10px;
}

#blog .post-header time {
	color: #777;
}

#blog .post-header h1 {
	font-size: 1.4rem;
}

.cat-list {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	margin-top: 5px;
}

.cat-list li {
	margin-right: 5px;
}

.cat-list a {
	display: inline-block;
	background: #CCA37A;
	color: #fff;
	font-size: 1rem;
	padding: 1px 10px;
	border-radius: 2px;
	transition: all .2s;
}

.cat-list a:hover {
	background: #000;
}

.post .post-contents h2 {
	font-size: 1.3rem;
	background: #f3f3f3;
	padding: 4px 12px;
	border-radius: 2px;
	margin: 10px 0;
}

.post .post-contents h3,
.post .post-contents h4,
.post .post-contents h5,
.post .post-contents h6 {
	font-size: 1.5rem;
	border-bottom: solid 1px #777;
	padding: 0 0 5px 0;
	margin: 10px 0;
}

.post-contents figure {
	text-align: center;
}

.post-contents .pic {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 10px;
}

.post-contents .pic figure {
	padding: 2px;
	box-sizing: border-box;
	line-height: .5;
}

.post-contents .pic.box-02 figure {
	width: 50%;
}

.post-contents .pic.box-03 figure {
	width: 33.3333%;
}

.post-contents .pic.box-04 figure {
	width: 25%;
}

.post-contents p {
	margin-bottom: 10px;
}

.post-contents ul,
.post-contents ol {
	margin-bottom: 10px;
}

.post-contents ul li {
	list-style: disc;
	margin-left: 20px;
}

.post-contents ol li {
	list-style: decimal;
	margin-left: 20px;
}

.post-contents a {
	text-decoration: underline;
	color: inherit;
}

.post-contents .blog-button {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}

.post-contents .blog-button a {
	border: solid 1px #000;
	font-family: 'Josefin Sans', sans-serif !important;
	font-weight: 500;
	text-transform: uppercase;
	padding: 12px 30px 8px 30px;
	margin-top: 5px;
	position: relative;
	cursor: pointer;
	transition: all .2s;
	font-size: 1.1rem;
	text-decoration: none;
	position: relative;
}

.post-contents .blog-button a:hover {
	background: #000;
	color: #fff;
}

.post-contents .blog-button a::after {
	content: '';
	position: absolute;
	right: 1.5rem;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg);
	width: 0.5rem;
	height: 0.5rem;
	border-right: solid 1px #000;
	border-bottom: solid 1px #000;
}

.post-contents .blog-button a:hover::after {
	border-right-color: #fff;
	border-bottom-color: #fff;
}

.post-contents iframe {
	max-width: 100%!important;
}

.relation-box {
	padding-bottom: 15px;
}

.addtoany_share_save_container {
	text-align: center;
	margin: 20px 0;
}

.addtoany_list a, .widget .addtoany_list a {
	font-size: 1rem;
	line-height: 1;
	padding: 0 6px 0 0 !important;
}

.a2a_svg {
	border-radius: 0 !important;
}

.post-nav {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 60px 0;
}

.post-nav .prev,
.post-nav .next {
	width: 40%;
}

.post-nav a {
	-js-display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	display: flex;
	align-items: center;
	padding: 0 0 0 3rem;
	position: relative;
}

.post-nav .next a {
	flex-direction: row-reverse;
	padding: 0 3rem 0 0;
}

.post-nav a:before {
	font-family: 'FontAwesome';
	position: absolute;
	top: 50%;
	font-size: 3rem;
	transform: translate( 0, -50% );
	transition: all .2s;
}

.post-nav .prev a:before {
	content: '\f104';
	left: 5px;
}

.post-nav .prev a:hover:before {
	left: 0;
}

.post-nav .next a:before {
	content: '\f105';
	right: 5px;
}

.post-nav .next a:hover:before {
	right: 0;
}

.post-nav img {
	width: 30%;
	line-height: 1;
}

.post-nav .prev img {
	margin: 0 15px 0 0;
}

.post-nav .next img {
	margin: 0 0 0 15px;
}

.post-nav .back-link {
	width: 16%;
}

.post-nav .back-link a {
	display: block;
	text-align: center;
	padding: 15px 5px;
	box-sizing: border-box;
	border: solid 1px #ccc;
	border-radius: 5px;
	transition: all .2s;
}

.post-nav .back-link a:hover {
	background: #000;
	color: #fff;
}

.page-nav .wp-pagenavi {
	clear: both;
	text-align: center;
	background: #f3f3f3;
	    padding-bottom: 30px;
}

.page-nav .wp-pagenavi a,
.page-nav .wp-pagenavi span {
	padding: 6px 8px;
	margin: 1px;
	transition: all .4s;
}

.page-nav .wp-pagenavi a:hover,
.page-nav .wp-pagenavi span.current {
	background: #000;
	color: #fff;
}

#contents section.relation-post {
	padding: 0;
}

#contents section.relation-post h2 {
	text-align: center;
	background: #333;
	color: #fff;
	font-size: 1.6rem;
	padding: 5px;
	margin-bottom: 0;
}

#contents section.relation-post .flex {
	padding: 10px;
	margin-bottom: 0;
}

#contents section.relation-post .flex h3 {
	font-size: 1.6rem;
}

#contents section.relation-post ul.cat-list {
	margin-bottom: 5px;
}

#contents section.relation-post ul.cat-list a {
	font-size: 1.1rem;
}

#contents section.relation-post p.user {
	font-size: 1.3rem;
}

.price.bold {
	font-size: 2.2rem !important;
	font-weight: bold;
	position: relative;
}

.price-block {
	display: inline-block;
	/* width: 100px; */
}

.price-block .spprice {
	display: inline-block;
	color: #d82b4c;
}

.price-block .price {
	display: inline-block;
}

.price-block .price.bold::before {
	content: "→";
	position: absolute;
	color: #d82b4c;
	bottom: 5px;
	left: 10px;
	font-size: 16px;
}

@media screen and (max-width: 749px) {
	.price.bold {
		font-size: 1.8rem !important;
		font-weight: bold;
		position: relative;
	}
	.price-block .price.bold::before {
		content: "→";
		position: absolute;
		color: #d82b4c;
		bottom: 5px;
		left: 10px;
		font-size: 12px;
	}
}

@media screen and (min-width: 750px) {
#voice #contents {
	padding-bottom: 0;
}
.area-costomer {
	padding: 50px;
	    margin-bottom: 40px;
	background: #f3f3f3;
}

.area-costomer > img {
	width: 200px;
}

.area-costomer > p {
	padding: 10px;
  margin: 15px;
	font-size: 15px;
}

.area-customer-list {
	display: block;
	margin: 20px auto;
}

.area-customer-list li {
    display: inline-block;
		    margin: 9px 0px;
}

.area-customer-list li a {
	padding: 7px 9px;
	font-size: 14px;
	background: #a2a2a2;
	color: #FFF;
	border-radius: 20px;
	margin: 3px;
}
}

@media screen and (max-width: 749px) {
.area-costomer {
    padding: 50px 20px;
		    background: #f3f3f3;
}

.area-costomer > p {
	padding: 10px 0;
	margin: 5px 0;
	font-size: 12px;
}

.area-costomer > img {
	width: 50%;
}

.area-customer-list {
	display: block;
	margin: 6px auto;
}

.area-customer-list li {
    display: inline-block;
		    margin: 1px 0;
}

.area-customer-list li a {
	padding: 2px 5px 3px;
	font-size: 9px;
	background: #a2a2a2;
	color: #FFF;
	border-radius: 20px;
	margin: 1px;
}
}

.voice-spot-dropdown {
	position: absolute;
	top: calc(100% + 10px);
	right: 0;
	display: flex;
	z-index: 1000;
	width: 400px;
	background: #fff;
	border: solid 1px #eee;
	border-radius: 8px;
	overflow: hidden;
	opacity: 0;
	visibility: hidden;
	transition: opacity .2s ease, visibility .2s ease;
}

@media (max-width: 749px) {
	.voice-spot-dropdown {
		width: 270px;
	}
}

.cat-nav li:hover .voice-spot-dropdown {
	opacity: 1;
	visibility: visible;
}

.voice-spot-dropdown__col {
	flex: 0 0 50%;
	max-width: 50%;
}

.voice-spot-dropdown__ttl {
	background: #98915A;
	color: #fff;
	padding: 1rem 0;
}

.voice-spot-dropdown__col:not(:last-child) ul li {
	border-right: solid 1px #eee;
}

.voice-spot-dropdown__col:not(:last-child) .voice-spot-dropdown__ttl {
	border-right: solid 1px #fff;
}

.cat-nav li .voice-spot-dropdown ul {
	position: static;
	opacity: 1;
	visibility: inherit;
	display: block;
	margin-bottom: -1px;
	transition: none;
}

.cat-nav li .voice-spot-dropdown ul li {
	box-sizing: border-box;
}

.cat-nav li .voice-spot-dropdown ul li {
	border-bottom: solid 1px #eee;
	padding: 0.5rem;
}

.cat-nav li .voice-spot-dropdown ul a {
	margin: 0;
	background: none;
	color: #000;
	border: none;
	transition: opacity .2s ease;
}

.cat-nav li .voice-spot-dropdown ul a:hover {
	opacity: .6;
}
.cat-nav li.cat-item-12 .voice-spot-dropdown .voice-spot-dropdown__col .children .cat-item > a {
	border: none;
}




/* location-spot-box */

.location-spot-box .cat-nav {
	padding: 15px 10px;
	overflow: hidden;
}

.location-spot-box .cat-nav li a {
	background: #000;
	border-radius: 0;
	padding: 10px 0;
}

.location-spot-box .cat-nav .children .cat-item {
	width: 50%;
}

.location-spot-box .cat-nav .children .cat-item:nth-child(odd) > a {
	border-right: 1px solid grey;
	border-left: 1px solid grey;
}

.location-spot-box .cat-nav .children .cat-item:nth-child(even) > a {
	border-right: 1px solid grey;
	border-left: 0px solid grey;
}

.location-spot-box .cat-nav .children .cat-item a {
	background: white;
}

/**
 * PHOTO WEDDING AVE.
 */
.top-large-banner {
	max-width: 1240px;
	margin: 20px auto 0;
}

.top-large-banner a {
	display: block;
	position: relative;
	overflow: hidden;
}

.top-large-banner img {
	display: block;
}

.top-large-banner__txt {
	position: absolute;
	bottom: 0;
	left: 100%;
	color: #fff;
	white-space: nowrap;
	font-size: 3vw;
}



@font-face {
	font-family: 'SerendityScript';
	src: url('fonts/Serendity-Script/Serendity-Script.eot');
	src: url('fonts/Serendity-Script/Serendity-Script.eot?#iefix') format('embedded-opentype'),
		 url('fonts/Serendity-Script/Serendity-Script.woff') format('woff'),
		 url('fonts/Serendity-Script/Serendity-Script.ttf') format('truetype'),
		 url('fonts/Serendity-Script/Serendity-Script.svg#SerendityScript') format('svg');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'quigleywigglyregular';
	src: url('fonts/quigleywiggly_regular_macroman/QUIGLEYW-webfont.eot');
	src: url('fonts/quigleywiggly_regular_macroman/QUIGLEYW-webfont.eot?#iefix') format('embedded-opentype'),
		 url('fonts/quigleywiggly_regular_macroman/QUIGLEYW-webfont.woff') format('woff'),
		 url('fonts/quigleywiggly_regular_macroman/QUIGLEYW-webfont.ttf') format('truetype'),
		 url('fonts/quigleywiggly_regular_macroman/QUIGLEYW-webfont.svg#quigleywigglyregular') format('svg');
	font-weight: normal;
	font-style: normal;
}

#shopinfo header.ttl {
	color: #fff;
	margin-bottom: 35px;
}

.shopinfo-fv {
	padding: 30px 0 50px;
	background: center top / cover no-repeat;
}

#shopinfo header.ttl h1 {
	font-size: 1.0rem;
	line-height: 1.6;
}

#shopinfo header.ttl h1 span {
	font-family: 'SerendityScript';
	font-size: 4.8rem;
}

#shopinfo header.ttl p {
	font-size: 1.0rem;
	margin: 10px 0 5px 0;
	color: #fff;
	line-height: 1.5;
}

#shopinfo .sec-01 .inner-box {
	width: calc(100% - 80px);
	background: rgba( 255,255,255, .95 );
	margin: 0 auto;
	max-width: 800px;
	text-align: center;
	box-sizing: border-box;
	transition: all .4s;
	padding: 25px 10px;
}

#shopinfo .sec-01 h2 span {
	display: inline-block;
	background: #000;
	color: #fff;
	width: 16rem;
	padding: 4px 0 0 5px;
	font-size: 1.0rem;
	letter-spacing: 5px;
	font-family: 'Josefin Sans', sans-serif !important;
	font-weight: 300;
	margin-bottom: 20px;
}

#shopinfo .sec-01 h3 {
	font-size: 1.3rem;
	position: relative;
	margin-bottom: 20px;
	padding-bottom: 20px;
}

#shopinfo .sec-01 h3::after {
	content: '';
	width: 9rem;
	height: 1px;
	background: #000;
	position: absolute;
	left: 50%;
	bottom: 0px;
	transform: translateX(-50%);
}

#shopinfo .sec-01 .inner-box p {
	font-size: 1.0rem;
}

#shopinfo .sec-02 {
	background: #fafafa;
}

#shopinfo .sec-02 .inner-box {
	max-width: 1160px;
	margin: 0 auto;
	padding: 30px 10px;
	transition: all .4s;
}


#shopinfo .sec-02 h2 {
	font-size: 2.3rem;
	font-family: 'quigleywigglyregular';
	line-height: 2;
	text-align: center;
}

#shopinfo .sec-02 .inner-box .inner-box__text {
	font-size: 1.0rem;
	margin-bottom: 6px;
	font-family: 'Josefin Sans', '游ゴシック体', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
}

#shopinfo .sec-02 .inner-box > p {
	font-size: 10px;
	margin-bottom: 10px;
}

#shopinfo .sec-02 .inner-box .floor {
	position: relative;
	text-align: left;
	padding: 25px 0;
	border-bottom: solid 1px #777;
}

#shopinfo .sec-02 .inner-box .floor:last-child {
	border-bottom: 0;
}

#shopinfo .sec-02 .inner-box .floor > div {
	box-sizing: border-box;
	position: relative;
}

#shopinfo .sec-02 .inner-box .floor > div:before {
	width: 4rem;
	height: 4rem;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-size: 100% auto !important;
}

#shopinfo .sec-02 .inner-box .floor > div h3 {
	line-height: 1.6;
	margin-bottom: 10px;
	padding: 0 0 0 50px;
	font-size: 1.0rem;
}

#shopinfo .sec-02 .inner-box .floor > div p {
	font-size: 1.0rem;
}

#shopinfo .sec-02 .inner-box img{
	max-width: 100%;
	height: auto;
}

#shopinfo .sec-02 .inner-box .floor > div h3 img {
	display: block;
	margin-bottom: 5px;
	max-height: 45px;
}

#shopinfo .sec-02 .inner-box .floor > figure {
	text-align: center;
	margin-top: 10px;
}

#shopinfo .sec-02 .inner-box .floor > figure img {
	width: 100%;
	max-width: 280px;
	height: auto;
}

#shopinfo .more-01.jp a {
	display: inline-block;
	border: solid 1px #000;
	font-size: 1.0rem;
	font-family: 'Josefin Sans', sans-serif !important;
	font-weight: 500;
	text-transform: uppercase;
	padding: 12px 40px 8px 40px;
	margin-top: 5px;
	position: relative;
	cursor: pointer;
	transition: all .2s;
}

#shopinfo .more-01.jp a::after {
	content: '\f105';
	font-family: FontAwesome;
	position: absolute;
	right: 10px;
	top: 10px;
}

#shopinfo .gallery {
	background: #f3f3f3;
	padding: 20px 0;
	margin: 0;
	max-width: none;
}

#shopinfo .gallery .inner-box {
	padding: 20px 0 40px 0;
}

#shopinfo .gallery .ttl {
	text-align: center;
	padding: 0 0 20px 0;
}

#shopinfo .gallery .ttl h2 {
	font-size: 1.0rem;
	margin-bottom: 10px;
}

#shopinfo .gallery .ttl span.en {
	font-size: 2.3rem;
	font-family: 'quigleywigglyregular';
	line-height: 2;
	text-align: center;
}

#shopinfo .gallery .inner-box ul {
	height: 400px !important;
	margin: 0 auto;
	overflow: auto;
}

#shopinfo .gallery .inner-box .item {
	width: 120px;
}

#shopinfo .gallery .inner-box .item.x2 {
	width: 240px;
}

#shopinfo .gallery .inner-box .item figure {
	padding: 5px;
}

.boxer-image {
	max-width: none;
}

#boxer {
	z-index: 100000;
}

#shopinfo .sec-03 {
	padding: 20px 0;
	background: #eee;
}

#shopinfo .sec-03 .inner-box {
	padding: 20px 10px;
}

#shopinfo .sec-03 h2 {
	font-size: 2.3rem;
	font-family: 'quigleywigglyregular';
	line-height: 2;
	text-align: center;
}

#shopinfo .sec-03 table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: 1px solid #e3e3e3;
	margin: 20px auto;
	background: #fff;
}

#shopinfo .sec-03 table th, #shopinfo .sec-03 table td {
	padding: 5px;
	font-size: 1.0rem;
	border-top: 2px solid #e3e3e3;
	border-bottom: 2px solid #e3e3e3;
}

#shopinfo .sec-03 table th {
	width: 30%;
	background: #fafafa;
	font-weight: 400;
}

#shopinfo .sec-03 table td {
	text-align: left;
}

#shopinfo .sec-03 table td ul {
	list-style: disc;
	padding-left: 12px;	
}

#shopinfo .sec-03 table td a {
	text-decoration: underline;
}

#shopinfo #map {
	width: 100%;
	height: 300px;
}


/**
 * スタジオ一覧
 */
.stlist {
	padding: 15px 15px 0;
}

.stlist__ttl {
	text-align: center;
	margin-bottom: 30px;
}

.stlist__ttl-en {
	font-family: Cinzel, serif;
	line-height: 1.4;
	font-size: 20px;
}

.stlist__ttl-ja {
	font-size: 12px;
}

.stlist__lead {
	line-height: 1.75;
	margin-bottom: 20px;
	font-size: 10px;
}

.stlist__lead.pc {
	display: none;
}

.stlist__list-wrapper {
	margin-bottom: 30px;
}

.stlist__list {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -10px;
}


.stlist-item {
	max-width: calc(50% - 20px);
	flex: 0 0 50%;
	margin: 0 10px 60px;
}

.stlist-item__link {
	display: block;
}

.stlist-item__fig {
	position: relative;
	background: #fafafa;
	margin-bottom: 12px;
}

.stlist-item__fig::before {
	content: '';
	display: block;
	padding-top: 50%;
}

.stlist-item__fig img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
}

.stlist-item__footer {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.stlist-item__footer .pc {
	display: none;
}

.stlist-item__logo {
	flex: 0 0 25px;
	margin-right: 5px;
	align-self: start;
}

.stlist-item__details {
	flex: 1 0 0px;
	line-height: 1.3;
}

.stlist-item__msg {
	color: #9f8f00;
	margin-top: -4px;
	margin-bottom: 5px;
	font-size: 7px;
}

.stlist-item__name {
	font-size: 8px;
}

.stlist-item__name span {
	font-size: 7px;
}

.stlist-item__info {
	flex: 0 0 100%;
	line-height: 2;
	font-size: 7px;
}

.stlist-item__info.sp {
	border-top: solid 0.5px #000;
	margin-top: -1px;
	padding-top: 1px;
}

/* TOP バナー共通 */
.home-bnr-wrap {
	margin: 0 0 25px;
}

.home-bnr-wrap .heading-01 {
	margin-bottom: 5px;
}

.home-bnr-common {
	box-sizing: border-box;
	padding: 15px 10px 0;
}

.home-bnr-common a {
	display: block;
	width: 100%;
	transition: opacity .2s;
}

.home-bnr-common a:hover {
	opacity: .8;
}

.home-bnr-common a img {
	max-width: 100%;
	width: 100%;
	vertical-align: bottom;
}

.bnr-box-home + .home-bnr-wrap .home-bnr-common:first-child {
	padding-top: 0;
}


.adjust-scroll {
	padding-top: 50px;
	margin-top: -50px;
}

.single-anchor {
	display: block;
	margin-top: -70px;
	padding-top: 70px;
}
/* .dress-exlink2 */

.dress-exlink2 {
	margin-top: 50px;
}

.dress-exlink2__accordion {
    max-width: 115px;
	margin: 0 auto;
	position: relative;
}

.dress-exlink2__subject {
	border: solid 1px #000;
	text-align: center;
    font-size: 12px;
    padding: 5px 0 14px;
	position: relative;
	transition: background-color .2s ease, color .2s ease;
	cursor: pointer;
}

.dress-exlink2__subject::after {
	content: '';
	position: absolute;
    bottom: 10px;
	left: 50%;
    width: 4px;
    height: 4px;
	border-bottom: solid 1px #000;
	border-right: solid 1px #000;
	transform: translateX(-50%) rotate(45deg);
	transition: border-color .2s ease;
}

.dress-exlink2__subject:hover {
	background: #000;
	color: #fff;
}

.dress-exlink2__subject:hover::after {
	border-color: #fff;
}

.dress-exlink2__content {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	visibility: hidden;
	opacity: 0;
	z-index: 1;
	transition: visibility .2s ease, opacity .2s ease;
}

.dress-exlink2__accordion.is-open .dress-exlink2__content {
	visibility: visible;
	opacity: 1;
}

.dress-exlink2-item + .dress-exlink2-item {
	border-top: solid 1px #fff;
}

.dress-exlink2-item__link {
	display: block;
	background: #404040;
	color: #fff;
	font-size: 11px;
    padding: 9px 0;
	text-align: center;
	position: relative;
}

.dress-exlink2-item__link::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 20px;
    width: 4px;
    height: 4px;
	border-top: solid 1px #fff;
	border-right: solid 1px #fff;
	transform: translateY(-50%) rotate(45deg);
	transition: transform .2s ease;
}

.dress-exlink2-item__link:hover {
	background: #000;
	color: #fff;
}

.dress-exlink2-item__link:hover::after {
	transform: translate(5px, -50%) rotate(45deg);
}

.dress-exlink2__note {
	margin-top: 15px;
	font-size: 11px;
	text-align: center;
}