@charset "utf-8";
/*■■■■■■■■■■■■■■■■■■■■■■■■■
　	トップページ用
　■■■■■■■■■■■■■■■■■■■■■■■■■*/

@import url(//fonts.googleapis.com/css?family=Courgette);


/* ▼▼▼▼▼ ＰＣレイアウト : 1200 px以上。 ▼▼▼▼▼ */
	.bnr-wp {
		margin-top: 50px;
		text-align: center;
	}
	.bnr-wp a {
		display: block;
		margin-bottom: 20px;
	}


main{
	padding: 0 20px;
}
a.btn{
	display: inline-block;
	width: 80px;
	box-sizing: border-box;
	text-align: center;
	padding: 8px 5px 8px 0;
	color: #333;
	font-size: 14px;
	line-height: 1.4em;
	border-bottom: 1px solid #333;
	text-align: right;
}
a.btn:after{
	content: "";
	display: inline-block;
	background: url(../img/common/icon_links.png) no-repeat right center;
	background-size: 100% 100% !important;
	width: 9px;
	height: 9px;
	margin-left: 5px;
}
a.btn:hover{
	opacity: 0.7;
	text-decoration: none;
	color: #000;
}
/* ■■■■■■ ヘッダー ■■■■■■ */
header {
	background: rgba(255,255,255,0.9);
	background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(255,255,255,0.7) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(255,255,255,0.7) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,255,255,0.7) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#b3ffffff',GradientType=0 ); /* IE6-9 */
}

h1{
	position: absolute;
	left: 0;
	top: 0;
	margin: 0 0 0 280px;
	padding: 20px;
	text-shadow: #036 0 0 3px, #036 0 0 8px, #036 0 0 15px;
	z-index: 5;
	font-size: 13px;
	line-height: 1.3em;
	color: #fff;
}
h1 a{
	display: block;
	padding: 20px;
	margin: -20px;
	color: #fff !important;
}

/* ================ */
/* ■■■■■ top_gallery ■■■■■ */
#top_image {
	position: relative;
	margin: 0 -20px;
}
#top_image ul{
	position: relative;
}
#top_image ul li{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	opacity: 0;
	-webkit-transition: all 0.5s linear;
	-moz-transition: all 0.5s linear;
	-ms-transition: all 0.5s linear;
	-o-transition: all 0.5s linear;
	transition: all 0.5s linear;
}
#top_image ul li.on{
	position: relative;
	opacity: 1;
	z-index: 1;
	-webkit-transition: all 0.5s linear;
	-moz-transition: all 0.5s linear;
	-ms-transition: all 0.5s linear;
	-o-transition: all 0.5s linear;
	transition: all 0.5s linear;
}
#top_image > div{
	position: absolute;
	bottom: 10px;
	left: 0;
	width: 100%;
	text-align: center;
	z-index: 2;
}
#top_image > div a{
	display: inline-block;
	width: 13px;
	height: 13px;
	border: 1px solid #fff;
	background: rgba(255,255,255,0.5);
	margin: 0 4px;
	border-radius: 50%;
}
#top_image > div a:hover,
#top_image > div a.on{
	background: #fff;
	box-shadow: #fff 0 0 6px;
}
#top_image .next,
#top_image .prev{
	display: block;
	position: absolute;
	top: 0;
	width: 80px;
	height: 100%;
	cursor: pointer;
	z-index: 2;
}
#top_image .next{
	background: url(../img/common/slide_r.png) no-repeat center center;
	right: 0;
}
#top_image .prev{
	background: url(../img/common/slide_l.png) no-repeat center center;
	left: 0;
}
#top_image > img[src*="main_text"] {
	position: absolute;
	right: 30px;
	bottom: 30px;
	z-index: 2;
	max-width: 60%;
}

/* */
.top_gallery{
	margin: 0 0 5%;
}
.top_gallery figure{
	overflow: hidden;
}
.top_gallery figure > img{
	width: 33.33333%;
	float: left;
	margin: 0;
}
.top_gallery a.btn{
	clear: both;
	display: block;
	width: 224px;
	margin: 20px auto 5%;
}

/* ================ */
#about-service
{	max-width: 1000px;
	margin: 50px auto;
}

/* ----- */
#about-service .top
{	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 20px;
	margin: 0 auto 20px;
}

#about-service .top .img-1
{	grid-column: 1 / 2;
	grid-row: 1 / 2;
}
#about-service .top .img-1 img
{	display: block;
	width: 100%;
}

#about-service .top .text
{	grid-column: 2 / 3;
	grid-row: 1 / 2;
	padding-bottom: 20px;
}
#about-service .top .text h2
{	margin: 0 auto 10px;
	font-size: 170%;
	line-height: 1.3em;
	color: #4d4d4d;
}

#about-service .top .text p
{	margin: 0 auto 20px;
}

/* ----- */
#about-service .img-group-wrap
{	overflow: hidden;
}
#about-service .img-group
{	margin: 0 -10px;
}

#about-service .img-group > div
{	display: inline-block;
	vertical-align: top;
	width: 33.3333%;
	width: calc(100% / 3);
	padding: 0 10px;
	box-sizing: border-box;
}

/* ----- */
#about-service .round-btn
{	display: block;
	box-sizing: border-box;
	margin: 5px auto 0;
	max-width: 150px;
	padding: 10px;
	text-align: center;
	color: #333;
	border: 2px solid #333;
	border-radius: 25px;
}
#about-service .round-btn:after
{	content: " \00226B";
}
#about-service .round-btn:hover
{
	background: #333;
	color: #fff;
	text-decoration: none;
}

/* ■■■■■ .service_info ■■■■■ */
/*
.service_info{
	overflow: hidden;
	margin: 50px auto;
	max-width: 1000px;
}

.service_info li{
	width: 50%;
	box-sizing: border-box;
	clear: left;
	float: left;
	position: relative;
}
.service_info li:nth-child(2n+1){
	clear: both;
	float: right;
}
.service_info li img{
	vertical-align: top;
	width: 100%;
}
.service_info li:nth-child(1){
	padding: 5px 15px 15px;
}
.service_info li:nth-child(3) img{
	width: 400px;
}
.service_info li:nth-child(4){
	text-align: right;
	padding: 15px;
}
.service_info li:nth-child(4) img{
	width: 300px;
}
.service_info li:nth-child(4) p{
	margin: 10px 0 0;
}

.plan_include h2,
.service_info li h2{
	font-size: 170%;
	line-height: 1.3em;
	color: #4d4d4d;
	margin: 0 0 10px;
}
.service_info li:nth-child(1) p a{
	display: block;
	box-sizing: border-box;
	margin: 5px auto 0;
	max-width: 150px;
	padding: 10px;
	text-align: center;
	color: #333;
	border: 2px solid #333;
	border-radius: 25px;
}
.service_info li:nth-child(1) p a:after{
	content: " ≫";
}
.service_info li:nth-child(1) p a:hover{
	background: #333;
	color: #fff;
	text-decoration: none;
}*/

/* ■■■■■ .plan_include ■■■■■ */
/*
.plan_include{
	text-align: center;
	padding: 40px 10px;
	background: #fff0b4;
	margin: 0 -20px;
}
.plan_include .icons{
	margin: 15px 0 0;
}
.plan_include .icons > span{
	display: inline-block;
	max-width: 90px;
	font-size: 13px;
	line-height: 1.2em;
	margin: 5px 5px 10px;
	color: #bdb78e;
	vertical-align: top;
}
.plan_include .icons > span img{
	display: block;
	width: 100%;
	margin: 0 0 5px;
}*/


/* ------ */
.floating-more-btn
{	position: absolute;
	top: 25px;
	right: 0;
	color: #222;
	width: 80px;
	border-bottom: 1px solid;
	text-align: right;
	text-decoration: none;
}

.floating-more-btn::after
{	background-repeat: no-repeat;
	background-position: center center;
	background-image: url("../img/common/icon_links.png");
	background-size: 100% 100%;
	content: "";
	width: 9px;
	height: 10px;
	display: inline-block;
	margin-left: 5px;
}
.floating-more-btn:hover
{	opacity: 0.7;
	color: #333 !important;
	text-decoration: none !important;
}

.floating-more-btn.white
{	color: #FFF;
}

.floating-more-btn.white::after
{	background-image: url("../img/common/icon_links_w.png");
}
.floating-more-btn.white:hover
{	color: #EEE !important;
}

/* ■■■■■ wedding_plan ■■■■■ */
.wedding_plan
{	background-color: #0074D2;
	background-repeat: no-repeat;
	background-position: center top;
	background-image: -webkit-linear-gradient(left, #0074D2, #00B4D2);
	background-image: linear-gradient(to right, #0074D2, #00b4D2);
	color: #FFF;
	overflow: hidden;
	margin: 0 -20px;
	padding-bottom: 40px;
	
}

.wedding_plan.green
{	background-color: #008B45;
	background-image: -webkit-linear-gradient(left, #008B45, #7AC943);
	background-image: linear-gradient(to right, #008B45, #7AC943);
}

/* */
.wedding_plan .midasi2 {
	color: #fff;
}

/* -------- */
.wedding_plan .include-list
{	margin: 0 auto;
	text-align: center;
}
.wedding_plan .include-list:not(:last-child)
{	margin-bottom: 20px;
}

.wedding_plan .include-list .text
{	margin: 0 auto 10px;
}

.wedding_plan .include-list ul
{	display: inline;
}
.wedding_plan .include-list ul > li
{	display: inline-block;
	vertical-align: top;
	width: 104px;
	padding: 0 5px;
	font-size: 0.95em;
	font-weight: bold;
}

.wedding_plan .include-list ul > li img
{	display: block;
	margin: 0 0 10px;
	width: 100%;
}

.wedding_plan .include-list ul > li p
{	margin: 0;
}


/* -------- */
.wedding_plan .plan-list
{	counter-reset: plan;
}

.wedding_plan .plan-list a.plan_links
{	position: relative;
	display: inline-block;
	vertical-align: top;
	width: 33.33333%;
	width: calc(100% / 3);
	box-sizing: border-box;
	margin: 0 0 10px;
	padding: 10px;
	color: #FFF;
	text-decoration: none !important;
	counter-increment: plan;
	border-radius: 5px;
}

.wedding_plan .plan-list.big-feature a.plan_links:nth-child(-n+2) 
{	width: 50%;
}

.wedding_plan .plan-list a.plan_links:hover 
{	text-shadow: #fff 0 0 7px;
}

/* */
.wedding_plan .plan-list a.plan_links > article 
{	position: relative;
	z-index: 1;
}

/* */
.wedding_plan .plan-list a.plan_links::before
{	background: -webkit-linear-gradient(top, rgba(255,255,255,0.5), rgba(255,255,255,0));
	background: linear-gradient(to bottom, rgba(255,255,255,0.5), rgba(255,255,255,0));
	content: "";
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	width: 0;
	margin: 0 auto;
	border-radius: inherit;
}
.wedding_plan .plan-list a.plan_links:hover::before {
	width: 100%;
	-webkit-transition: width 0.2s linear;
	transition: width 0.2s linear;
}

.wedding_plan .plan-list a.plan_links:hover img{
	opacity: 1;
}

/* */
.wedding_plan .plan-list a.plan_links figure 
{	position: relative;
	margin: 0 0 35px;
}
.wedding_plan .plan-list a.plan_links figure img {
	display: block;
	width: 100%;
}
.wedding_plan .plan-list a.plan_links figure .ok-decal {
	position: absolute;
	top: -45px;
	left: -50px;
	width: 180px;
}
.wedding_plan .plan-list a.plan_links figure::before 
{
	background-color: #80D9E8;
	content: "0"counter(plan);
	display: block;
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 70px;
	height: 70px;
	text-align: center;
	font-size: 36px;
	line-height: 74px;
	color: #FFF;
	border-radius: 50%;
	-webkit-transform: translate(-50%, 50%);
	transform: translate(-50%, 50%);
	z-index: 2;
}

.wedding_plan.green .plan-list a.plan_links figure::before
{	background-color: #A8DB84;
}

.wedding_plan .plan-list a.plan_links:nth-of-type(n+10) figure:before{
	content: counter(plan);
}

/* */
.wedding_plan .plan-list a.plan_links h3
{	margin: 0 auto 10px;
	padding: 15px 0 10px;
	border-bottom: 1px solid;
	font-size: 130%;
	line-height: 1.2em;
	text-align: left;
}
.wedding_plan .plan-list a.plan_links h3 > span
{	display: inline-block;
	vertical-align: middle;
}

/* */
.wedding_plan .plan-list a.plan_links p
{	margin: 10px 0 0;
}
.wedding_plan .plan-list a.plan_links p.price 
{	font-size: 110%;
}
.wedding_plan .plan-list a.plan_links p.price strong
{	display: inline-block;
	margin: 0 5px;
	font-weight: normal;
	font-size: 160%;
	line-height: 1.2em;
}


/* -------- */
.wedding_plan .banner
{	text-align: center;
	margin: 0 auto;
}
.wedding_plan .banner:not(:first-child)
{	margin-top: 40px;
}

.wedding_plan .banner a
{	display: inline-block;
	vertical-align: top;
	text-align: center;
	color: #fff;
	max-width: 48%;
}
.wedding_plan .banner a + a {
	margin-left: 1%;
}

.wedding_plan .banner img
{	width: 100%;
}


/* ------- */
.wedding_plan_gallery
{	background: url("../img/common/stripe_bg_overlay.png") #C4E6F2;
	margin: 0 -20px;
	padding-bottom: 40px;
	overflow: hidden;
}

.wedding_plan_gallery.green
{	background-color: #D7EEC6;
}

/* */
.wedding_plan_gallery .gallery-list-wrap
{	overflow: hidden;
}
.wedding_plan_gallery .gallery-list
{	margin: 0 -5px;
}

/* ----- */
.wedding_plan_gallery .gallery-list > li
{	overflow: hidden;
	width: 25%;
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
	padding: 0 5px;
}

/* ----- */
.gallery-inline-group
{	background-color: #FFF;
	padding: 10px;
}

/* */
.wedding_plan_gallery .gallery-list .img-wrap
{	display: block;
	color: inherit;
	text-decoration: none !important;
	cursor: pointer;
}
.wedding_plan_gallery .gallery-list .img-wrap:hover
{	opacity: 0.8;
}

/* */
.wedding_plan_gallery .gallery-list .img-header
{	margin: 0 auto;
	text-align: left;
	font-size: 1em;
	font-weight: normal;
}
.gallery-inline-group .img-header
{	font-size: 1.1em;
	font-weight: bold;
	margin: 0 auto 5px;
}

.wedding_plan_gallery .gallery-list .img-header > span
{	background-color: #222;
	color: #FFF;
	padding: 5px 10px;
	display: inline-block;
	vertical-align: top;
	box-sizing: border-box;
}

.wedding_plan_gallery .gallery-list .img-header var,
.gallery-inline-group .img-header var
{	display: inline-block;
}

/* */
.wedding_plan_gallery .gallery-list .big-img,
.gallery-inline-group .big-img
{	margin: 0 auto 10px;
	position: relative;
	padding-top: 66%;
	overflow: hidden;
}
.wedding_plan_gallery .gallery-list .big-img img,
.wedding_plan_gallery .gallery-list .small-img img,
.gallery-inline-group .big-img img,
.gallery-inline-group .small-img img
{	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	object-fit: cover;
}
.wedding_plan_gallery .gallery-list .small-img-wrap > div
{	overflow: hidden;
}
.wedding_plan_gallery .gallery-list .small-img,
.gallery-inline-group .small-img
{	margin: 0 -3px;
}
.wedding_plan_gallery .gallery-list .small-img > div,
.gallery-inline-group .small-img > div
{	display: inline-block;
	width: 33.3333%;
	width: calc(100% / 3);
	vertical-align: top;
	padding: 0 3px;
	box-sizing: border-box;
}

.wedding_plan_gallery .gallery-list .small-img .canvas,
.gallery-inline-group .small-img .canvas
{	position: relative;
	padding-top: 66%;
	overflow: hidden;
}


/* ■■■■■ オプション ■■■■■ */
.option_list{
	padding: 80px 10px 60px;
}

/* ■■■■■ .instagram（インスタグラム） ■■■■■ */
.instagram{
	margin: 0 -20px;
	position: relative;
}


/* ■■■■■ アクセス ■■■■■ */
.access{
	padding: 40px 10px;
	margin: 30px -20px 0;
	background: #00b4d2;
	overflow: hidden;
	color: #fff;
}
.access .in{
	margin: 0 auto !important;
}
.access .in .midasi{
	color: #fff;
	margin-top: 0;
}
.access .in > .google_map{
	width: 100%;
}
.access .in > .google_map p{
	margin: 0 0 20px;
}
.access .in > .google_map #gmap{
	height: 420px;
}

/* ■■■■■ News ■■■■■ */
.in.news_box{
	margin: 50px auto;
	padding: 0 10px;
	word-break: break-all;
}
.in.news_box dl{
	border-top: 1px solid #222;
	border-bottom: 1px solid #222;
	overflow: hidden;
	padding: 0 3%;
}
.in.news_box dl dt{
	float: left;
	padding: 20px 0;
	width: 100px;
	font-weight: bold;
}
.in.news_box dl dd{
	padding: 20px 0 20px 100px;
	border-top: 1px dotted #222;
}
.in.news_box dl dd:first-of-type{
	border-top: 0;
}

/* ■■■■■ サロン（salon） ■■■■■ */
.salon_info{
	padding: 40px 10px;
	margin: 0 -20px;
	background: url(../img/common/line_bg.png);
}
.salon_info .in .midasi{
	margin-top: 0;
}
.salon_contents{
	position: relative;
	margin: 0 auto;
	overflow: hidden;
}
.salon_contents article{
	width: 23.5%;
	margin: 0 0 2% 2%;
	float: left;
}
.salon_contents article:nth-child(4n+1){
	clear: left;
	margin-left: 0;
}

.salon_contents article a.image{
	display: block;
	position: relative;
	overflow: hidden;
	margin: 0 0 5px;
}
.salon_contents article a.image:after,
.salon_contents article a.image:before{
	content: "";
	display: block;
	width: 100%;
	height: 0;
}
.salon_contents article a.image img{
	display: block;
	margin: -5% 0;
}
.salon_contents article a.image em{
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	background: #fff;
	width: 80px;
	padding: 5px 0;
	line-height: 1.3em;
	color: #000;
	text-align: center;
}
.salon_contents article a.image em:after{
	content: "";
	display: inline-block;
	background: url(../img/common/icon_links.png) no-repeat right center;
	background-size: 100% 100% !important;
	width: 9px;
	height: 9px;
	margin-left: 5px;
}
.salon_contents article h4{
	font-size: 120%;
	line-height: 1.3em;
	margin: 0 0 5px;
}
.salon_contents article p{
	margin: 0;
}


.original_insta_parts {
	overflow: hidden;
	padding: 0;
	margin: 0 0 40px;
}

.original_insta_parts > li {
	position: relative;
	display: block;
	float: left;
	list-style: none;
	margin: 0;
	width: 33.3333%;
	height: 0;
	padding: 33.3333% 0 0;
	overflow: hidden;
	background: #f0f0f0;
}
.original_insta_parts > li img{
	position: absolute;
	display: block;
	width: 100%;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

/* ■■■■■ Voice ■■■■■ */
.in.voice {
	max-width: 800px;
	margin-bottom: 60px;
}
.in.voice .midasi {
	margin-top: 10px;
}
.in.voice .lead {
	margin-bottom: 10px;
}
.in.voice a.normal {
	position: relative;
	z-index: 2;
}
a.voice_link {
	position: relative;
	display: block;
	padding: 0 10px;
	margin-bottom: -20px;
	color: #444;
	text-decoration: none !important;
}
a.voice_link:hover {
	color: #000;
}
a.voice_link .midasi2 {
	color: #00b4d2;
	margin: 0 auto;
	font-size: 170%;
}
a.voice_link:hover .midasi2 {
	color: #20d4f2;
}
a.voice_link:after {
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 80%;
	background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);
	background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
}

.top-banners
{	padding: 0 10px;
}
.top-banners > a
{	display: block !important;
}
.top-banners > a:not(:last-child)
{	margin-bottom: 20px;
}
.top-banners > a img
{	display: block;
	margin: 0 auto;
	width: 100%;
}


/* ▼▼▼▼▼ タブレットレイアウト : 800 px ～ 1200 px。ＰＣレイアウトからスタイルを継承。 ▼▼▼▼▼ */
@media only screen and (max-width: 1600px){
	.wedding_plan .plan-list a.plan_links figure img[src*="ok.png"] {
		left: -10px;
	}
}
@media only screen and (max-width: 1200px){
	h1 {
		margin-left: 25%;
	}

}
@media only screen and (max-width: 1100px){
	h2{
		font-size: 200%;
	}
	.wedding_plan .plan-list a.plan_links figure img[src*="ok.png"] {
		width: 40%;
	}

	/* ■■■■■ サロン（salon） ■■■■■ */
	.salon_contents article:nth-child(4n+1),
	.salon_contents article{
		width: 32%;
		margin: 0 0 2% 2%;
		float: left;
		clear: none;
	}
	.salon_contents article:nth-child(3n+1){
		clear: left;
		margin-left:0;
	}
	.salon_contents article h4{
		font-size: 115%;
	}

}

@media only screen and (max-width: 1000px)
{
	#about-service .top
	{	display: block;
		margin: 0 auto 20px;
	}
	
	/* ■■■■■ .service_info ■■■■■ */

	.service_info li:nth-child(2n+1),
	.service_info li{
		width: auto;
		clear: none;
		float: none;
	}
	.service_info li:nth-child(4) img,
	.service_info li:nth-child(3) img{
		width: auto;
		max-width: 50%;
		float: left;
	}
	.service_info li:nth-child(4){
		text-align: left;
		padding: 0;
	}
	.service_info li:nth-child(4) p{
		clear: both;
		padding: 10px 0 0;
		text-align: center;
	}


/* ■■■■■ wedding_plan ■■■■■ */
	.wedding_plan .include-list ul
	{	display: block;
	}
	.wedding_plan .include-list ul:not(:last-child)
	{	margin-bottom: 20px;
	}
	.wedding_plan .include-list ul > li
	{	width: 90px;
		font-size: 0.9em;
	}	

	.wedding_plan > .in
	{	margin: 0;
	}
	.wedding_plan .plan-list a.plan_links 
	{	width: 50%;
	}

/* */
	.wedding_plan_gallery .gallery-list > li
	{	width: 50%;
	}
	.wedding_plan_gallery .gallery-list > li:nth-child(n+3)
	{	margin-top: 20px;
	}
}

/* ▼▼▼▼▼ モバイルレイアウト : 799 px およびそれ以下。ＰＣレイアウトからスタイルを継承。 ▼▼▼▼▼ */
@media only screen and (max-width: 799px)
{
	.smt-l
	{
		text-align: justify !important;
		text-justify: inter-ideograph !important;
	}
	main{
		padding: 0;
	}
	h1,
	h1.add_m_img {
		position: static;
		margin: 0 15% 0 0;
		padding: 5px;
		font-size: 12px;
		line-height: 1.2em;
		color: #333;
		text-shadow: none;
	}
	h1 a{
		color: #333 !important;
	}

	/* ■■■■■ .service_info ■■■■■ */
	.service_info li:nth-child(1){
		padding: 5px;
	}
	.service_info {
		padding: 0 10px;
	}
	.plan_include h2,
	.service_info li h2 {
		font-size: 150%;
	}
	.service_info li:nth-child(1) p a{
		margin: 10px auto 15px;
	}

	#about-service
	{	padding: 0 10px;

	}

	/* ■■■■■ top_gallery ■■■■■ */
	#top_image {
		margin: 0 -10px;
	}
	#top_image ul li img{
		max-width: 120%;
		width: 120%;
		margin: 0 -10%;
	}

	#top_image .next,
	#top_image .prev{
		width: 10%;
		background-size: 70% !important;
	}
	.top_gallery{
		margin: 0 0 30px;
	}
	.in{
		margin: 0 !important;
		padding: 0 !important;
	}
	/* ■■■■■ .plan_include ■■■■■ */
	.plan_include{
		margin: 0 -10px;
	}

	/* ■■■■■ wedding_plan ■■■■■ */
	.wedding_plan 
	{	margin: 0;
	}

/* ------- */
	.wedding_plan_gallery
	{	margin-left: 0;
		margin-right: 0;
		padding-left: 10px;
		padding-right: 10px;
	}

	.floating-more-btn
	{	position: static;
		clear: both !important;
		display: block;
		margin: 20px auto 0;
		padding: 10px 0;
		width: 130px;
		text-align: center;
		overflow: hidden;
		border: 2px solid;
		border-radius: 30px;
	}


	/* ■■■■■ .instagram（インスタグラム） ■■■■■ */
	.instagram{
		margin: 0 -10px;
	}

	/* ■■■■■ アクセス ■■■■■ */
	.access{
		margin: 40px 0 0;
		padding: 20px 10px;
	}
	.access .in{
		margin: 30px 0 50px;
	}
	.access .in > figure{
		float: none;
		width: auto;
	}
	.access .in > .google_map{
		float: none;
		width: auto;
	}
	.access .in > .google_map p{
		margin-bottom: 10px;
	}

	/* ■■■■■ サロン（salon） ■■■■■ */
	.salon_info{
		padding: 20px 10px;
		margin: 40px 0;
	}
	.salon_contents article img{
		float: none;
		display:block;
		width: 100%;
		margin: 0 0 10px;
	}
	/* ■■■■■ News ■■■■■ */
	.in.news_box{
		margin: 50px auto;
	}
	/* ■■■■■■ フッター ■■■■■■ */
	footer {
		margin-top: 0;
	}

}


@media only screen and (max-width: 600px){
	.midasi em{
		font-size: 190%;
	}
	h1,
	h1.add_m_img {
		font-size: 11px;
	}
	/* ■■■■■ top_gallery ■■■■■ */
	.top_gallery > figure img{
		width: 50%;
	}
	.top_gallery > figure img:nth-child(n+9){
		display: none;
	}
	.top_gallery,
	.top_gallery > figure{
		margin-left: 0;
		margin-right: 0;
	}
	/* ■■■■■ .plan_include ■■■■■ */
	.plan_include .icons > span{
		max-width: 70px;
		font-size: 11px;
		margin: 0 2px 10px;
	}
	/* ■■■■■ wedding_plan ■■■■■ */
	.wedding_plan .plan-list a.plan_links
	{	width: auto;
		display: block;
	}
	.wedding_plan .plan-list.big-feature a.plan_links:nth-child(-n+2) 
	{	width: auto;
	}


	/* ■■■■■ サロン（salon） ■■■■■ */
	.salon_contents article h4{
		font-size: 110%;
	}
	.salon_contents article:nth-child(3n+1),
	.salon_contents article:nth-child(4n+1),
	.salon_contents article{
		width: 48.5%;
		margin: 0 0 3% 3%;
		float: left;
		clear: none;
	}
	.salon_contents article:nth-child(2n+1){
		clear: left;
		margin-left:0;
	}

	/* ■■■■■ News ■■■■■ */
	.in.news_box dl dt{
		float: none;
		padding: 10px 0 0;
		width: auto;
		font-weight: bold;
		border-top: 1px dotted #222;
	}
	.in.news_box dl dd{
		padding: 0 0 10px;
		border-top: 0;
	}
	.in.news_box dl dt:first-of-type{
		border-top: 0;
	}
	/* ■■■■■ top_banners ■■■■■ */
	.top_banners{
		margin: 40px auto 20px;
	}

	.original_insta_parts > li {
		width: 50%;
		padding: 50% 0 0;
	}
	/* ■■■■■ Voice ■■■■■ */
	.in.voice p.lead {
		margin-bottom: 10px;
	}
	.wedding_plan .banner a + a,
	.wedding_plan .banner a {
		display: block;
		max-width: none;
		width: auto;
		margin: 15px 10px;
	}
}

@media only screen and (max-width: 500px)
{	.midasi em
	{	letter-spacing: -3px !important:
	}
	/* ■■■■■ wedding_plan ■■■■■ */

	.wedding_plan .plan-list a.plan_links > article h3
	{	font-size: 150%;
	}
}

@media only screen and (max-width: 400px){
	.midasi em{
		font-size: 160%;
	}
	h1,
	h1.add_m_img {
		font-size: 10px;
	}

	/* ■■■■■ top_gallery ■■■■■ */
	.top_gallery{
		font-size: 100%;
	}

	/* ■■■■■ wedding_plan ■■■■■ */
	.wedding_plan .plan-list a.plan_links > article ul li:nth-child(2n+1),
	.wedding_plan .plan-list a.plan_links > article ul li:nth-child(3n+1),
	.wedding_plan .plan-list a.plan_links > article ul li:nth-child(4n+1),
	.wedding_plan .plan-list a.plan_links > article ul li{
		font-size: 10px;
	}
	.wedding_plan .plan-list a.plan_links > article h3{
		font-size: 130%;
	}
	.wedding_plan .plan-list a.plan_links > article p.price{
		font-size: 11px;
		text-align: center;
	}

	/* ■■■■■ News ■■■■■ */
	.news_box > ul > li {
		font-size: 12px;
	}
	.news_box > ul > li h3{
		font-size: 200%;
	}
	.news_box > ul > li a.more{
		padding: 2px 10px;
		margin: 0;
	}
	.news_box > ul > li dl {
		padding: 10px;
	}
	/* ■■■■■ サロン（salon） ■■■■■ */
	.salon_contents article h4 strong{
		font-size: 180%;
	}
	.salon_contents article h5{
		font-size: 130%;
	}
	.salon_contents article nav a{
		font-size: 100%;
	}
	.party_tab > a{
		border-radius: 30px;
		font-size: 95%;
	}
}

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

}

@media only screen and (orientation:portrait) {

}


.contents_box nav {
	overflow: hidden;
	position: relative;
}
.contents_box nav a {
	display: block;
	box-sizing: border-box;
	padding: 10px;
	overflow: hidden;
	color: #555;
}
.contents_box nav a:hover {
	background: #def;
	color: #000;
	text-decoration: none;
}
.contents_box nav a > figure {
	position: relative;
	overflow: hidden;
	width: 30%;
	height: 0;
	padding-top: 30%;
	float: left;
	margin: 0 10px 0 0;
}
.contents_box nav a > figure img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.contents_box nav a > h3 {
	overflow: hidden;
	font-size: 110%;
	line-height: 1.3em;
	color: #000;
	margin: 0 0 5px;
}
.contents_box nav a > h3 em {
	display: block;
	font-size: 90%;
	background: #777;
	padding: 1px 5px 0;
	margin: 0 0 5px;
	font-weight: normal;
	color: #fff;
}
.contents_box nav a > h3 em.spot {
	background: #954;
}
.contents_box nav a > h3 em.enjoy {
	background: #494;
}
.contents_box nav a > h3 em.activity {
	background: #c32;
}
.contents_box nav a > h3 em.kouri-spot {
	background: #59e;
}
@media only screen and (min-width: 1000px){
	.contents_box nav a {
		width: 50%;
		float: left;
	}
}
@media only screen and (min-width: 500px){
}
@media only screen and (min-width: 600px){
	.contents_box nav a {
		width: 50%;
		float: left;
	}
}
@media only screen and (min-width: 800px){
	.contents_box nav a > figure {
		width: 140px;
		padding-top: 140px;
	}
	.contents_box nav a {
		width: auto;
		float: none;
	}
}
@media only screen and (min-width: 1000px){
	.contents_box nav a {
		width: 50%;
		float: left;
	}
}

