@charset "UTF-8";
/*
	SP Style	Responsive - Mobile first
**************************************************************************************************** */
/* -------------------------------------------------
	BASE
------------------------------------------------- */
/* Reset */
html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure,footer, header, hgroup, menu, nav, section, summary,time, mark, audio, video {margin:0;padding:0;border:0;outline:0;font-size:100%;font-style: normal;font-weight: normal;vertical-align:baseline;background:transparent;}
body {line-height:1;-webkit-text-size-adjust: 100%;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {display:block;}
ul,ol {list-style:none;}
img {border: 0;}
a {margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}
a:link, a:visited, a:active {text-decoration: underline;}
a:hover {text-decoration: none;}
table {border-collapse:collapse;border-spacing:0;}
input, select {vertical-align:middle;}
textarea {resize: vertical;}

html {
	overflow-y: scroll;
	font-size: calc(100vw / 3.75);
}
body {
	color: #4D4D4D;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",YuGothic,"游ゴシック",sans-serif;
	position: relative;
	text-align: center;
	width: 100%;
	font-size: 0.16rem;
	font-feature-settings:'palt';
	padding: 2.3em 0 4em;
	overflow-x: hidden;
}
h1,h2,h3,h4,h5,h6,p,ul,dl {
	line-height: 1;
}
a {
	color: inherit;
	outline: none;
}
img {
	width: 100%;
	max-width: 100%;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
}

@media screen and (min-width : 600px) {
html {
	font-size: 62.5%;
}
body {
	font-size: 1.8rem;
}
}

@media screen and (min-width : 768px) {
body {
	padding: 0;
}
}

/* -------------------------------------------------
	LAYOUT
------------------------------------------------- */
.header {
	top: 0;
	width: 100%;
	left: 0;
	z-index: 100;
}
.header h1,
.header p {
	display: none;
}
.header__clinic img {
	width: auto;
}
.header .header__nav__menu {
	width: 100%;
}
.header .header__nav__menu li a {
	display: block;
	width: auto;
	color: #fff;
	text-decoration: none;
}
.footer {
	margin-top: 3em;
}
.footer small {
	display: block;
	color: #fff;
	background: #D1C2B1;
	padding: 15px;
	font-size: 0.75em;
}
.footer small span {
	font-size: 1.7em;
	vertical-align: middle;
}

.footer .pagetop {
	position: fixed;
	bottom: 4em;
	right: 3%;
	width: 3em;
	height: 3em;
	text-indent: -9999px;
	z-index: 100;
}
.footer .pagetop a {
	outline: none;
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background: rgba(196,196,196,0.2);
	text-decoration: none;
}
.footer .pagetop a::after {
	position: absolute;
	content: "";
	top: 0.6em;
	left: 0.8em;
	width: 0;
	height: 0;
	border-left: 0.7em solid transparent;
	border-right: 0.7em solid transparent;
	border-bottom: 1.3em solid #808080;
}

.cv {
	margin: 0.3em auto 4em;
}
.cv img {
	width: auto;
}
.cv p {
	text-align: center;
	line-height: 1;
}
.cv .cv__bgtxt {
	font-size: 1.5em;
	line-height: 1.3;
	color: #824b1b;
	padding: 3.3em 0;
	background: url(../img/cv__bgtxt01.jpg) no-repeat 50% 0, url(../img/cv__bgtxt02.jpg) no-repeat 50% 100%;
	background-size: 100% auto, 100% auto;
}
.cv__info {
	position: relative;
	height: 100%;
	padding: 6.2em 0 3.5em;
}
.cv .cv__info img {
	height: 1.2em;
}
.cv .cv__info::after {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	background: url(../img/cv__info--bg.png) no-repeat calc(100% + 4em) calc(100% + 0.5em);
	background-size: auto 11.6em;
	height: 100%;
	left: 0;
	top: 0;
}
.cv .cv__info .cv__info__idt {
	background: #D2AF8A;
	background: linear-gradient(180deg, #D2C09E 0%, #D2C09E 50%, #C4AE84 50%, #C4AE84 100%);
	padding: 0.65em 2.5em 0.75em 0;
	margin: 0 2.5em 0 0;
}
.cv .cv__contact {
	background: #F5F0E6;
	padding: 1em 0 1.5em;
	color: #85623F; 
	font-weight: 500;
	margin-bottom: 1em;
	overflow-x: hidden;
}
.cv .cv__contact .cv__contact__txt {
	margin: 0 auto 0.5em;
	padding: 0;
	line-height: 1.4;
	font-size: 1.2em;
}
.cv .cv__contact .cv__contact__tel strong {
	display: block;
}
.cv .cv__contact .cv__contact__tel img {
	height: 2em;
	margin: 0 0 0.6em;
}
.cv .cv__contact .cv__contact__btn {
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
	width: 94%;
	margin: 1em auto 0;
}
.cv .cv__contact .cv__contact__btn li {
	width: 49.2%;
	line-height: 1.4;
}
.cv .cv__contact .cv__contact__btn li a {
	display: block;
	border-radius: 2px;
	padding: 0.3em 0;
	text-decoration: none;
	color: #FFF;
	text-shadow: 1px 1px 0 rgba(0,0,0,0.3);
	font-size: 1.42em;
	background: rgba(171,139,90,1);
	background : linear-gradient(0deg, rgba(168,129,85, 1) 12.6%, rgba(162,128,84, 1) 26.21%, rgba(180,148,97, 1) 69.18%, rgba(190,159,106, 1) 90.93%, rgba(192,161,108, 1) 94%, rgba(224,198,156, 1) 96%, rgba(211,183,137, 1) 96.44%, rgba(192,161,108, 1) 97%, rgba(144,112,74, 1) 100%);
}
.cv .cv__contact .cv__contact__btn li span {
	display: block;
	font-size: 0.68em;
}
.cv .cv__txt {
	line-height: 1.6;
}
.monitor img {
	width: auto;
	height: 1.2em;
	margin-bottom: 1em;
}


@media screen and (max-width : 767px) {
body {
	padding: 2.3em 0 4em;
}
.header__clinic {
	background: #D1C2B1;
	position: fixed;
	top: 0;
	width: 100%;
	left: 0;
	z-index: 100;
}
.header__clinic a {
	height: 2.3em;
	display: flex;
    align-items: center;
	justify-content: center;
	background: url(../img/header__clinic__logo.png) no-repeat calc(50% - 10.3em) 50%;
	background-size: 1.5em auto;
	padding: 0 3em 0 1.8em;
}
.header__clinic img {
	height: 1.1em;
}
.header__clinic img:nth-of-type(2) {
	height: .8em;
	margin-left: 0.4em;
}
.header .header__nav__btn {
	position: fixed;
	right: 0;
	top: 0;
	background: #AD967D;
	display: block;
	font-size: 1em;
	width: 3em;
	height: 2.3em;
	padding-bottom: 0.35em;
	border: none;
	cursor: pointer;
	color: #fff;
	outline: none;
	z-index: 100;
}
.header .header__nav__btn span img {
	width: auto;
	height: 0.7em;
}
.header .header__nav__btn span {
	height: 100%;
	display: flex;
    justify-content: center;
    align-items: flex-end;
}
.header .header__nav__btn::before,
.header .header__nav__btn::after,
.header .header__nav__btn span::before {
	position: absolute;
	content: "";
	display: block;
	width: 1.2em;
	height: 1.5px;
	background: #fff;
	left: calc(50% - 0.6em);
}
.header .header__nav__btn::before {top: 0.6em;}
.header .header__nav__btn::after {top: 1.05em;}
.header .header__nav__btn span::before {top: 1.5em;}
.header .active::before {
	transform: rotate(45deg);
	top: 1.05em;
}
.header .active::after {
	transform: rotate(-45deg);
	top: 1.05em;
}
.header .active span::before {
	display: none;
}
.header .header__nav__menu {
	display: none;
	background: rgba(173,150,125,0.9);
	position: fixed;
	left: 0;
	top: 2.3em;
	text-align:  left;
	z-index: 200;
}
.header .header__nav__menu li a {
	color: #fff;
	text-decoration: none;
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	padding: 0.8em 5%;
	cursor: pointer;
	letter-spacing: 0;
}
.header .header__nav__menu li:last-of-type a {
	border-bottom: none;
}

.contact li {
	width: 25%;
	text-indent: -9999px;
	position: fixed;
	bottom: 0;
	z-index: 100;
}
.contact li.contact__mail { left: 0%;}
.contact li.contact__reserve { left: 25%;}
.contact li.contact__tel { left: 50%;}
.contact li.contact__menu { left: 75%;}
.contact li a {
	background: #D1C2B1;
	height: 3em;
	display: flex;
	outline: none;
	background-size: auto 82%;
	background-position: 50% 40%;
	background-repeat: no-repeat;
	border-right: 1px solid #FFF;
}
.contact li.contact__mail a {
	background-image: url(../img/contact__mail.png);
}
.contact li.contact__reserve a {
	background-image: url(../img/contact__reserve.png);
}
.contact li.contact__tel a {
	background-image: url(../img/contact__tel.png);
}
.contact li.contact__menu a {
	background-image: url(../img/contact__menu.png);
	border-right: none;
}
.cv .cv__txt span.ib:first-of-type {
	letter-spacing: -.05em;
}
.inner {
	padding-left: 3%;
	padding-right: 3%;
}
}

@media screen and (min-width : 600px) {
html {
	font-size: 62.5%;
}
body {
	font-size: 1.8rem;
}
.cv .cv__bgtxt {
	padding: 5% 0;
	background: url(../img/cv__bgtxt01.jpg) no-repeat 0 0, url(../img/cv__bgtxt02.jpg) no-repeat 100% 0;
	background-size: 50% auto, 50% auto;
}
.cv .cv__info::after {
	background: url(../img/cv__info--bg.png) no-repeat calc(100% + 3em) calc(100% + 0.5em);
	background-size: auto 11.5em;
}
.cv .cv__info .cv__info__idt {
	padding-right: 0;
}
}

@media screen and (min-width : 768px) {
.header--pcfix {
	z-index: 1000;
	background: #D1C2B1;
	padding-bottom: 1px;
}
.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
}
.header .wrap {
	background: none;
	padding-top: 10px;
	padding-bottom: 10px;
}
.header h1 {
	display: block;
	font-size: 0.7em;
	padding: 8px 0;
}
.header h1,
.header p {
	display: block;
}
.header__clinic {
	display: flex;
	align-items: center;
	height: 3vw;
	max-height: 30px;
	width: 47%;
	max-width: 470px;
	float: left;
	margin-left: 1%;
}
.header__clinic img {
	height: 2.5vw;
	max-height: 28px;
	vertical-align: middle;
}
.header__clinic img:nth-of-type(2) {
	margin-left: 0.6em;
	height: 2vw;
	max-height: 20px;
}
.header__clinic a {
	background: url(../img/header__clinic__logo.png) no-repeat 0 100%;
	padding: .5em 0 0 7%;
	background-size: auto 80%;
}
.contact li a {
	text-decoration: none;
	color: #fff;
	float: right;
}
.contact li.contact__mail a,
.contact li.contact__reserve a {
	display: block;
	margin-right: 1%;
	padding: 0.5em 1%;
	font-size: 2.1vw;
	border-radius: 3px;
	background: #AD967D;
}
.contact li.contact__tel {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	height: calc(3.4vw + 1em);
	font-size: 2.6vw;
	max-height: 38px;
}
.contact li.contact__tel a {
	padding: 0 3% 0 1.2em;
	letter-spacing: 0.5px;
	font-family: sans-serif;
	font-weight: bold;
	line-height: 0.85;
	background: url("../img/header__tel__icon.png") no-repeat 0 50%;
	background-size: auto 100%;

}
.contact li.contact__menu {
	display: none;
}
.header .header__nav__btn {
	display: none;
}
.header .hm--sp {
	display: table !important;
}
.header .header__nav__menu {
	clear: both;
	display: table;
	z-index: 10000;
	position: static;
	background: none;
	max-width: 1000px;
	margin: 0 auto 10px;
}
.header .header__nav__menu li {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	line-height: 1.2;
}
.header .header__nav__menu li span {
	display: inline-block;
}
.header .header__nav__menu li:nth-child(1) { width: 17.5%;}
.header .header__nav__menu li:nth-child(2) { width: 16.5%;}
.header .header__nav__menu li:nth-child(3) { width: 14%;}
.header .header__nav__menu li:nth-child(4) { width: 13%;}
.header .header__nav__menu li:nth-child(5) { width: 13%;}
.header .header__nav__menu li:nth-child(6) { width: 15%;}
.header .header__nav__menu li:nth-child(8) { width: 11%;}
.header .header__nav__menu li a {
	font-size: 0.8em;
	border-left: 1px solid #FFF;
	border-right: 1px solid #FFF;
	margin-left: -1px;
	padding: 0.8em 1%;
}
.header .header__nav__menu li:nth-child(1) a { 
	margin-left: 0;
	border-left: none;
}
.header .header__nav__menu li:nth-child(8) a {
	border-right: none;
}

.footer .pagetop {
	bottom: 40px;
}
.footer .pagetop a {
	width: 70px;
	height: 70px;
}
.footer .pagetop a::after {
	top: 20px;
	left: 20px;
	border-left-width: 15px;
	border-right-width: 15px;
	border-bottom-width: 25px;
}

.wrap {
	max-width: 1000px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.inner {
	padding-left: 10%;
	padding-right: 10%;
}
.cv .cv__info {
	padding-bottom: 4em;
}
.cv .cv__info::after {
	background-position: 100% 100%;
}
.cv .cv__info .cv__info__idt {
	padding: 0.7em 0 0.7em 3em;
	margin-right: 5.5em;
}
.cv .cv__contact .cv__contact__btn {
	width: 80%;
	max-width: 800px;
}
.cv .cv__txt {
	margin: 0 10%;
}
}

@media screen and (min-width : 1000px) {
.header__clinic {
	margin-left: 0;
}
.contact li.contact__mail a,
.contact li.contact__reserve a {
	font-size: 20px;
}
.contact li.contact__tel {
	font-size: 25px;
}
.contact li.contact__mail a {
	margin-right: 0;
}
.header .header__nav__menu {
	width: calc(100% - 2px);
	border-left: 1px solid #FFF;
	border-right: 1px solid #FFF;
}
.cv .cv__bgtxt {
	padding: 2em 0;
	font-size: 1.6em;
	width: min(100%,1000px);
	margin: auto;
}
}

.sec {
	margin-bottom: 3em;
}
.sec img {
	width: auto;
}
.sec figure {
	margin: .8em auto;
	text-align: center;
}
.sec p {
	margin-bottom: 0.7em;
	text-align: justify;
}
.sec p,.sec ul,.sec ol,.sec dl,.sec table {
	line-height: 1.6;
}
.sec h3.gf--sm {
	background: #DAC8B6;
	color: #FFF;
	padding: 0.6em 0 0.7em;
	font-size: 1.45em;
	margin: 0 0 0.5em;
}
.sec h3.gf--sm span {
	display: block;
	margin-bottom: 0.55em;
}
.sec h3.gf--sm span img {
	height: 1.025em;
}

.sec .sec__box {
	margin: 1em auto;
}
.sec .sec__box dt {
	background: #DAC8B6;
	color: #FFF;
	border-radius: .4em .4em 0 0;
	border: 1px solid #DAC8B6;
	padding: .3em 0;
	font-size: 1.1em;
}
.sec .sec__box dd {
	border: 1px solid #DAC8B6;
	border-radius: 0 0 .4em .4em;
	text-align: left;
	padding: .3em 3% 1em;
}
.sec .sec__box dd li {
	display: inline;
	margin-right: 1em;
}
.sec .sec__box dd li::before {
	content: "";
	border-radius: 50%;
	display: inline-block;
	width: .7em;
	height: .7em;
	margin: 0 .3em 0 0;
	background: #DEC9BB;
}
.sec .credit img {
	height: 6.55vw;
	margin: .5em .1% 0 .1%;
}
.sec .credit img:nth-of-type(n + 10) {
	margin-left: .3%;
}

#sec__intro {
	background: url(../img/mvbg01.png) no-repeat -2em 0, url(../img/mvbg02.png) no-repeat 97% 6.5em;
	background-size: 13em auto, 12em auto;
}
#sec__intro h2 {
	padding: .5em 2% 2.8em;
	margin: auto;
	width: min(96%, 700px);
}
#sec__intro h2 strong {
	display: block;
	margin: 0 0 -.5em 20%;
}
#sec__intro .sec__intro__txtimg {
	background: url(../img/sec__intro__img.png) no-repeat 50% 100%;
	background-size: auto 2em;
	padding-bottom: 1.8em;
	text-align: center;
	line-height: 1;
}
#sec__intro .sec__intro__txtimg span {
	display: block;
	background : linear-gradient(0deg, #AC8962 12.6%, #A58760 26.21%, #B79A6F 46.25%, #C2A478 56.39%, #E3C8A4 71.16%, #D5B992 77.55%, #C2A478 85.16%, #967856 100%, #EBDDC3 100%);
	border-radius: .5em;
	padding: .6em 0;
	margin: 1em auto;
	width: min(90%,600px);
}
#sec__intro .sec__intro__txtimg span img {
	height: 1.1em;
}
#sec__intro h3 {
	font-size: 1.4em;
	color: #997656;
	line-height: 1.4;
	letter-spacing: -.1em;
	margin-top: .5em;
}
#sec__intro #movie {
    margin: 1em auto;
    width: min(100%,640px);
    height: min(53vw,360px);
}
#sec__intro #movie video {
	width: 100%;
}
#sec__intro .sec__intro__price {
	background: #C9BAA6;
	color: #FFF;
	font-size: 1.25em;
	padding: .8em 0;
	text-align: center;
	border-radius: .2em;
	line-height: 1;
	letter-spacing: -.1em;
	position: relative;
	margin: .3em auto;
	width: min(100%, 500px);
}
#sec__intro .sec__intro__price::after {
	content: "";
	position: absolute;
	display: block;
	width: calc(100% - .8em - 2px);
	border: 1px solid #FFF;
	height: calc(100% - .8em - 2px);
	left: .4em;
	top: .4em;
	border-radius: .1em;	
}
#sec__intro .sec__intro__price strong {
	font-size: 2em;
	display: inline-block;
    transform: scale(.8, 1);
	margin: 0 -.2em;
	font-style: italic;
	letter-spacing: -.05em;
	vertical-align: middle;
}
#sec__intro .sec__intro__price span {
	display: inline-block;
	vertical-align: bottom;
	font-size: .8em;
	font-style: italic;
	letter-spacing: -.1em;
	margin-bottom: .3em;
}
#sec__intro .monitor {
	line-height: 1.8;
}
#sec__intro .menu {
	margin: 1.5em auto 2em;
	width: 80%;
	max-width: 500px;
}
#sec__intro .menu dt {
	font-size: 1.1em;
	color: #717171;
	border: 1px solid #E5E5E5;
	background: #FAFAFA;
	padding:  0.5em 0;
}
#sec__intro .menu dt::before {
	content: "";
    display: inline-block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-color: #707070 transparent transparent transparent;
    border-width: 0.8em 0.6em 0 0.6em;
    margin: 0 0.3em 0.1em 0;
    vertical-align: middle;
}
#sec__intro .menu dt.close::before {
	border-color: transparent transparent #707070 transparent;
	border-width: 0 0.6em 0.8em 0.6em;
	margin: 0 0.3em 0.2em 0;
}
#sec__intro .menu dd {
	border-bottom: 1px solid #E5E5E5;
	border-left: 1px solid #E5E5E5;
	border-right: 1px solid #E5E5E5;
	padding: 0 5% 1em;
}
#sec__intro .menu ul {
	text-align: left;
}
#sec__intro .menu li a {
	display: block;
	text-decoration: none;
	border-bottom: 1px dashed #4D4D4D;
	padding: 0.5em 3%;
}
#sec__intro .menu li a::before {
	content: "・";
}
.sec__tx h3 {
	font-size: 2.3em;
	color: #c3996d;
	padding: .6em 0;
	position: relative;
}
.sec__tx h3::after {
	content: "";
	display: block;
	width: 100%;
	height: calc(100% - .6em);
	left: 0;
	top: .3em;
	position: absolute;
	background: rgba(255,255,255,.3);
}
#sec__pico h3 {
	background: url(../img/hlbg01.jpg) no-repeat 20% 15%;
	background-size: auto 170%;
}
#sec__pmu h3 {
	background: url(../img/hlbg02.jpg) no-repeat 85% 0%;
	background-size: auto 160%;
}
.sec__tx h4.gf--sm {
	background: #DAC8B6;
	color: #FFF;
	padding: .8em 0;
	font-size: 1.2em;
	letter-spacing: -.05em;
	margin: 1.5em 0 .5em;
}
.sec__tx h4.gf--sm span {
	display: inline-block;
	transform: rotate(20deg)
}
.sec__tx .sec__tx__tbl {
	width: 100%;
	margin: 1.5em auto 1em;
	border: 1px solid #2C425D;
	font-size: .95em;
}
.sec__tx .sec__tx__tbl th,
.sec__tx .sec__tx__tbl td {
	padding: .4em 2%;
	text-align: left;
}
.sec__tx .sec__tx__tbl th {
	color: #FFF;
	background: #DAC8B6;
	width: 22%;
}
.sec__tx .sec__tx__tbl tr:not(:last-child) th {
	border-bottom: 1px solid #FFF;
}
.sec__tx .sec__tx__tbl td {
	border-bottom: 1px solid #2C425D;
}
.sec__tx .sec__tx__price {
	width: 100%;
	margin: 1.5em auto 1em;
	border-left: .6em solid #D4BCA2;
	position: relative;
}
#sec__pmu .sec__tx__price {
	margin-bottom: .3em;
}
.sec__tx .sec__tx__price::before {
	content: "";
	position: absolute;
	top: 1px;
	left: .3em;
	display: block;
	width: calc(100% - .4em - 2px);
	height: calc(100% - .4em - 2px);
	border: .2em solid #FFF;
	border-left: none;
	z-index: -1;
	background: #F9F4F1;
}
.sec__tx .sec__tx__price th,
.sec__tx .sec__tx__price td {
	vertical-align: middle;
	letter-spacing: -.06em;
	border-top: 1px solid #D4BCA2;
	border-bottom: 1px solid #D4BCA2;
}
.sec__tx .sec__tx__price th {
	text-align: left;
	font-size: 1.3em;
	height: 2em;
	padding-left: 3%;
}
.sec__tx .sec__tx__price th span {
	font-size: 1.3em;
	letter-spacing: -.1em;
}
.sec__tx .sec__tx__price td {
	text-align: right;
	padding-right: 3%;
	font-size: .9em;
	border-right: 1px solid #D4BCA2;
}
.sec__tx .sec__tx__price td span {
	font-size: 2.3em;
	display: inline-block;
	transform: scale(.8, 1);
	margin-right: -.3em;
	letter-spacing: -.05em;
}
#sec__pico .figflex {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: .7em auto;
	width: 90%;
}
#sec__pico figure.figflex img {
	width: 49%;
	margin-bottom: 1.5%;
}
#sec__pico figure.mt0 + figure.figflex img {
	width: 80%;
	margin: .5em auto 0;
}
#sec__pico div.figflex {
	width: 85%;
}
#sec__pico div.figflex figcaption {
	color: #FFF;
	background: #A1A1A1;
	padding: .8em 0;
}
#sec__pico div.figflex figure:nth-of-type(2) figcaption {
	background: #C5B6A3;
}
#sec__pico .inner:nth-of-type(2) figure:nth-of-type(2) {
	width: 70%;
}
#sec__pico figcaption.gf--sm {
	font-size: 1.1em;
	color: #b40808;
	margin-bottom: 1em;
}
#sec__pmu figure:first-of-type {
	width: 70%;
}

#sec__wry h3 {
	line-height: 1.3;
	font-size: 1.4em;
	color: #824b1b;
	background: url(../img/sec__wry__bg02.png) no-repeat calc(100% + 2em) 100%, url(../img/sec__wry__bg01.png) no-repeat -2em 50%;
	background-size: auto 7.5em, auto 11em;
	padding: 4.3em 0 .4em;
}
#sec__wry ul {
	line-height: 1;
	margin: 1em auto;
	width: min(100%, 500px);
}
#sec__wry li {
	text-align: right;
	margin: .5em 0;
}
#sec__wry li:nth-of-type(even) {
	text-align: left;
}
#sec__wry li span {
	display: inline-block;
	border: 1px solid #A08D78;
	border-radius: .5em;
	padding: .4em 5%;
}
#sec__wry li img {
	height: 1.3em;
}
#sec__wry .sec__wry__dr {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 1em auto 0;
	position: relative;
	width: min(100%, 500px);
}
#sec__wry .sec__wry__dr::after {
	position: absolute;
	bottom: -.1em;
	left: -3%;
	content: "";
	display: block;
	width: 110%;
	height: 100%;
	background: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 5%, rgba(255, 255, 255, 0) 25%);;
	z-index: 5;
}
#sec__wry .sec__wry__dr figure {
	width: 50%;
	position: relative;
	margin: 0;
}
#sec__wry .sec__wry__dr figcaption {
	position: absolute;
	display: block;
	bottom: .5em;
	left: 0;
	right: 0;
	margin: auto;
	text-align: center;
}
#sec__wry .sec__wry__dr figcaption img {
	height: 2.5em;
	position: relative;
	z-index: 10;
}
#sec__wry .sec__wry__dr figure:first-of-type > img {
	transform: scale(-1, 1);
	margin: .3em -1em 0 0;
}
#sec__wry .sec__wry__dr figure:nth-of-type(2) > img {
	margin-right: -3.5em;
}

#sec__reason h3 {
	padding: .6em 0;
	position: relative;
	background: url(../img/hlbg01.jpg) no-repeat 35% 0;
	background-size: auto 140%;
}
#sec__reason h3::after {
	content: "";
	display: block;
	width: 100%;
	height: calc(100% - .6em);
	height: calc(100% - 1.4em);
	left: 0;
	top: .3em;
	top: .7em;
	position: absolute;
	background: rgba(255,255,255,.3);
}
#sec__reason h3 img {
	width: min(87%,450px);
	z-index: 10;
	position: relative;
}
#sec__reason .sec__reason__list {
	text-align: left;
	border-radius: .5em;
	border: 1px solid #c3996d;
	padding: .5em 3% .5em 0;
	margin: 1em auto;
}
#sec__reason .sec__reason__list strong {
	border-bottom: 1px solid #c3996d;
	display: block;
	margin-bottom: .3em;
	padding-bottom: .2em;
	color: #C09D76;
	font-size: 1.3em;
}
#sec__reason .sec__reason__list li {
	margin: .5em 0;
	position: relative;
	padding-left: 3.8em;
}
#sec__reason .sec__reason__list li::before,
#sec__reason .sec__reason__list li::after {
	content: "";
	position: absolute;
	display: block;
}
#sec__reason .sec__reason__list li::before {
	background-size: auto 1.2em, auto !important;
	width: 3.5em;
	height: 2em;
	top: .3em;
	left: -.4em;
}
#sec__reason .sec__reason__list li::after {
	width: .4em;
	height: 1.1em;
	background: #CFB598;
	clip-path: polygon(100% 0, 0 50%, 100% 100%);
	top: 1.7em;
	left: -.4em;
	z-index: -1;
}
#sec__reason .sec__reason__list li:nth-of-type(1)::before {
	background: url(../img/sec__reason__list--no1.png) no-repeat 50%,linear-gradient(-29deg,#CFB598 0%, #CFB598 50%, #D9C3AC 0%, #D9C3AC 100%);
}
#sec__reason .sec__reason__list li:nth-of-type(2)::before {
	background: url(../img/sec__reason__list--no2.png) no-repeat 50%,linear-gradient(-29deg,#CFB598 0%, #CFB598 50%, #D9C3AC 0%, #D9C3AC 100%);
}
#sec__reason .sec__reason__list li:nth-of-type(3)::before {
	background: url(../img/sec__reason__list--no3.png) no-repeat 50%,linear-gradient(-29deg,#CFB598 0%, #CFB598 50%, #D9C3AC 0%, #D9C3AC 100%);
}
#sec__reason .sec__reason__list li:nth-of-type(4)::before {
	background: url(../img/sec__reason__list--no4.png) no-repeat 50%,linear-gradient(-29deg,#CFB598 0%, #CFB598 50%, #D9C3AC 0%, #D9C3AC 100%);
}
#sec__reason .sec__reason__list li:nth-of-type(5)::before {
	background: url(../img/sec__reason__list--no5.png) no-repeat 50%,linear-gradient(-29deg,#CFB598 0%, #CFB598 50%, #D9C3AC 0%, #D9C3AC 100%);
}
#sec__reason .sec__reason__list li:nth-of-type(6)::before {
	background: url(../img/sec__reason__list--no6.png) no-repeat 50%,linear-gradient(-29deg,#CFB598 0%, #CFB598 50%, #D9C3AC 0%, #D9C3AC 100%);
}

#sec__flow .sec__flow__step {
	margin: 1em 0 2em;
}
#sec__flow .sec__flow__step li {
	position: relative;
	margin-bottom: 0.9em;
	padding-bottom: 2.5em;
}
#sec__flow .sec__flow__step li:last-of-type {
	padding-bottom: 0;
}
#sec__flow .sec__flow__step li::after {
	content: ""; 
    display: inline-block;
	position: absolute;
	bottom: 1em;
    width: 1.8em;
    height: 1.8em;
    border-bottom: 1px solid #000;
    border-left: 1px solid #000;
    transform: scale(0.9, 1) translateX(-50%) rotate(-45deg);
}
#sec__flow .sec__flow__step li:last-of-type::after,
#sec__flow .sec__flow__step li li::after {
	display: none;
}
#sec__flow .sec__flow__step li strong {
	display: block;
	background: #DAC8B6;
	width: 70%;
	margin: auto;
	padding: 0.57em 0;
	border-radius: 1.5em;
	line-height: 1;
}
#sec__flow .sec__flow__step li strong img {
	height: 1.16em;
}
#sec__flow .sec__flow__step li figure {
	width: 70%;
	margin-top: 0.75em;
	margin-bottom: 0.6em;
}
#sec__flow .sec__flow__step li:nth-of-type(3) figure {
	width: 80%;
}

#sec__price .sec__price__catch {
	display: flex;
    align-items: center;
	justify-content: space-between;
	margin-bottom: .5em;
}
#sec__price .sec__price__catch li {
	width: 49%;
	background: #F8F4F1;
	color: #B99A7A;
	padding: 0.5em 0;
	line-height: 1;
}
#sec__price .sec__price__catch li strong {
	font-size: 2.8em;
	display: block;
}
#sec__price .sec__price__catch li strong span {
	font-size: .4em;
}
#sec__price .sec__price__tbl {
	width: 106%;
	margin: 1em -3%;
	border-top: 1px solid #768596;
}
#sec__price .sec__price__tbl caption {
	width: 40%;
	margin: 0 auto .5em;
}
#sec__price .sec__price__tbl tr {
	border-bottom: 1px solid #768596;
}
#sec__price .sec__price__tbl th {
	vertical-align: middle;
	border-right: 1px solid #768596;
}
#sec__price .sec__price__tbl th:first-of-type {
	text-align: left;
	padding-left: 2%;
}
#sec__price .sec__price__tbl th:last-of-type {
	text-align: center;
	font-size: .7em;
	padding: 0;
	letter-spacing: -.05em;
	width: 13%;
}
#sec__price .sec__price__tbl th span {
	font-size: .7em;
}
#sec__price .sec__price__tbl td {
	text-align: right;
	font-size: 1.3em;
	color: #b40808;
	letter-spacing: -.05em;
	padding: .3em 2% .3em 0;
	width: 24%;
}
#sec__price .sec__price__tbl td span {
	font-size: .65em;
}
#sec__price .sec__price__underage {
	margin: 1em auto;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
#sec__price .sec__price__underage img {
	width: 4.5em;
	margin: 0 0.6em 0.2em 0;
}

#sec__faq .sec__faq__list {
	margin: 1em 0;
}
#sec__faq .sec__faq__list dt {
	text-align: left;
	color: #FFF;
	background: url(../img/sec__faq__list--icon.png) #DAC8B6 no-repeat 2.5% .5em;
	background-size: 1.4em auto;
	padding: 0.5em  calc(2% + 2em) 0.5em calc(2.5% + 2em);
	line-height: 1.4;
	border-radius: 0.2em;
	position: relative;
	margin-bottom: 0.5em;
}
#sec__faq .sec__faq__list dt::after,
#sec__faq .sec__faq__list dt strong::before,
#sec__faq .sec__faq__list dt strong::after {
	content: "";
	display: inline-block;
	position: absolute;
	top: calc(50% - 0.65em);
	right: 2%;
}
#sec__faq .sec__faq__list dt::after {
	background: #FFF;
	border-radius: 50%;
	width: 1.3em;
	height: 1.3em;
}
#sec__faq .sec__faq__list dt strong::before,
#sec__faq .sec__faq__list dt strong::after {
	width: 0.8em;
	height: 2px;
	background: #DAC8B6;
	z-index: 1;
	margin: calc(0.5em + 1px) 0.25em 0 0;
}
#sec__faq .sec__faq__list dt strong::after {
	 transform: rotate(-90deg);
}
#sec__faq .sec__faq__list dt.close strong::after {
	display: none;
}
#sec__faq .sec__faq__list dd {
	text-align: justify;
	line-height: 1.6;
	padding-bottom: 1em;
}
#sec__faq p {
	border-top: 1px solid #999;
	margin: 1em -3% 3em;
	padding: 1em 3% 0;
}

#sec__dr .sec__dr__msg {
	line-height: 1.5;
	margin: 1em auto 1.3em;
	font-size: 1.05em;
	letter-spacing: -.08em;
	background-repeat: no-repeat !important;
	background-size: auto 10.5em, auto, 250% auto !important;
}
#sec__dr .sec__dr__msg span {
	display: inline-block;
}
#sec__dr .sec__dr__msg-d {
	background: url(../img/dr-d2.png), linear-gradient(-180deg, rgba(255,255,255,1) 1.5em, rgba(255,255,255,0) 1.5em),url(../img/sec__dr__bg.jpg);
	background-position: calc(100% + 1.3em) 0, 0 0, 30% 65%;
	padding: 3.5em 16% 2.5em 0;
	color: #4267AE;
}
#sec__dr .sec__dr__msg-s {
	background: url(../img/dr-s.png), linear-gradient(-180deg, rgba(255,255,255,1) 1.5em, rgba(255,255,255,0) 1.5em),url(../img/sec__dr__bg.jpg);
	background-position: calc(100% + .5em) 0, 0 0, 30% 65%;
	padding: 2.5em 27% 1.3em 0;
	color: #BE5589;
}
#sec__dr .sec__dr__msg-s span:last-of-type {
	display: block;
	margin-top: 0.5em;
}
#sec__dr .sec__dr__prof {
	text-align: left;
}
#sec__dr .sec__dr__prof dt {
	margin-bottom: 1em;
}
#sec__dr .sec__dr__prof dd p {
	margin-bottom: 1.2em;
	line-height: 1.7;
}

#sec__info .sec__info__tbl {
	width: 100%;
	margin: 1em auto;
	border-bottom: 1px solid #B2B2B2;
}
#sec__info .sec__info__tbl caption img {
	width: 14em;
	margin: -.3em auto 1em;
}
#sec__info .sec__info__tbl tr {
	border-top: 1px solid #B2B2B2;
}
#sec__info .sec__info__tbl th,
#sec__info .sec__info__tbl td {
	text-align: left;
	vertical-align: middle;
	padding: 0.7em 0;
}
#sec__info .sec__info__tbl th {
	width: 20%;
	min-width: 6.5em;
	padding-left: 2%;
}
#sec__info .sec__info__tbl tr:nth-of-type(4) th {
	letter-spacing: .5em;
}
#sec__info .sec__info__tbl tr:nth-of-type(5) th {
	letter-spacing: 2em;
}
#sec__info .sec__info__tbl td div {
	margin-left: -1em;
}
#sec__info .sec__info__tbl td span {
	display: inline-block;
}
#sec__info .ta--center span {
	display: inline-block;
}
#sec__info .sec__info__map {
	margin: 1em -3%;
}
#sec__info .sec__info__map figcaption {
	color: #ceb197;
	font-size: 1.2em;
	display: block;
	line-height: 1.6;
	margin: 1em 0 0.9em;
}
#sec__info .sec__info__gbtn {
    display: block;
    background: url(../img/sec__info__gbtn.png) no-repeat calc(50% - 5.2em) 50% #CAB8A5;
    background-size: auto 1.2em;
    color: #FFF;
    text-decoration: none;
    padding: 0.8em 0;
    border-radius: 0.8em;
    font-size: 1.2em;
    position: relative;
    width: min(85%, 450px);
    margin: 1em auto 1.5em;
}
#sec__info .sec__info__gbtn::before,
#sec__info .sec__info__gbtn::after {
    content: "";
    position: absolute;
    display: inline-block;
}
#sec__info .sec__info__gbtn::before {
    width: 1.2em;
    height: 1.2em;
    border-radius: 50%;
    background: rgba(255,255,255,0.3);
    top: calc(50% - 0.6em);
    right: calc(50% - 6em);
}
#sec__info .sec__info__gbtn::after {
    width: 0px;
    height: 0px;
    border-style: solid;
    border-color: transparent transparent transparent #FFF;
    border-width: 0.4em 0 0.4em 0.6em;
    top: calc(50% - 0.4em);
    right: calc(50% - 5.8em);
}
#sec__info .sec__info__route dt {
	background: #D3BFAB;
	color: #FFF;
	margin: 0 0 1em;
	padding: .3em 3%;
	font-size: 1.2em;
	text-align: left;
	position: relative;
}
#sec__info .sec__info__route dt::before {
	content: "";
    display: inline-block;
    width: .8em;
    height: .8em;
	background: #FFF;
	margin-right: .3em;
}
#sec__info .sec__info__route dt span::before,
#sec__info .sec__info__route dt span::after {
	content: "";
    display: inline-block;
	position: absolute;
	right: 3%;
	top: calc(50% - .6em);
}
#sec__info .sec__info__route dt span::before {
    width: 1.2em;
    height: 1.2em;
	background: #FFF;
	border-radius: 50%;
}
#sec__info .sec__info__route dt span::after {
    width: 0px;
    height: 0px;
    border-style: solid;
    border-color: #D3BFAB transparent transparent transparent;
    border-width: 0.6em 0.4em 0 0.4em;
	margin: .35em .2em 0 0;
}
#sec__info .sec__info__route dt.close span::after {
    border-color: transparent transparent #D3BFAB transparent;
    border-width: 0 0.4em .6em 0.4em;
	margin-top: .25em;
}
#sec__info .sec__info__route dd figure {
    margin: 0 auto 2em;
	width: min(100%, 450px);
}
#sec__info .sec__info__route dd figcaption {
    text-align: justify;
    margin-top: 0.5em;
	line-height: 1.5;
}
#sec__info .sec__info__ph {
	margin: 3em 0;
}
#sec__info .sec__info__ph figure img {
	width: 86%;
}
#sec__info .sec__info__ph figcaption {
	margin: .8em -2% 2em;
	line-height: 1.5;
}


@media screen and (min-width : 600px) {
#sec__intro {
	background: url(../img/mvbg01.png) no-repeat calc(50% - 12em) 0, url(../img/mvbg02.png) no-repeat calc(50% + 9em) 25vw;
	background-size: 13em auto, 13em auto;
}
#sec__intro h2 {
	padding-bottom: 1em;
}
#sec__intro .sec__intro__txtimg {
	font-size: 1.1em;
}
#sec__intro h3 {
	font-size: 1.6em;
}
.sec__tx h3 {
	padding: 1em 0;
}
#sec__pico h3 {
	background: url(../img/hlbg01.jpg) no-repeat 0 15%;
	background-size: 135% auto;
}
#sec__pmu h3 {
	background: url(../img/hlbg02.jpg) no-repeat calc(100% + 1.8em) 0% #FAFBFB;
	background-size: auto 200%;
}
#sec__reason h3 {
	background: url(../img/hlbg01.jpg) no-repeat 0% 20%;
	background-size: 130% auto;
}
}

@media screen and (min-width : 768px) {
.sec .credit img {
	height: min(2.75vw,1.6em);
	margin: .5em 0 0 0 !important;
}
#sec__intro {
	background: url(../img/mvbg01.png) no-repeat calc(50% - 17em) 0, url(../img/mvbg02.png) no-repeat calc(50% + 16em) 10em;
	background-size: 14em auto, 14em auto;
}
#sec__pico .figflex {
	width: 100% !important;
}
#sec__pico figure.figflex img {
	width: 24%;
	margin-bottom: 0;
}
#sec__pico figure.mt0 + figure.figflex img {
	width: 49%;
	margin: 0;
}
#sec__pico div.figflex figure {
	width: 49%;
	margin: 1em 0;
}
#sec__pico figcaption.gf--sm {
	font-size: 1.2em;
}
#sec__wry h3 {
	font-size: 1.6em;
	background: url(../img/sec__wry__bg02.png) no-repeat calc(50% + 9.5em) 60%, url(../img/sec__wry__bg01.png) no-repeat calc(50% - 7em) 40%, linear-gradient(90deg,rgba(238, 233, 235, 1) 0%, rgba(255, 255, 255, 1) 25%, rgba(255, 255, 255, 1) 75%, rgba(240, 240, 240, 1) 100%);
	background-size: auto 7em, auto 10.5em, auto;
	padding: 3em 0 .4em;
}
#sec__wry ul {
	font-size: 1.2em;
}
#sec__flow .sec__flow__step li strong {
	width: 100%;
	margin: 0 auto 1em;
}
#sec__flow .sec__flow__step li figure {
	width: 35% !important;
	float: left;
	margin: 0 3% 1.5em 0;
}
#sec__flow .sec__flow__step li .sec__box {
	clear: both;
}
#sec__price .sec__price__tbl {
	width: 100%;
	margin: 1em auto;
}
#sec__price .sec__price__tbl th:last-of-type {
	font-size: .9em;
}
#sec__price .sec__price__tbl th span {
	font-size: .8em;
}
#sec__dr .sec__dr__msg {
	line-height: 1.8;
	margin: 1em 10% 1.3em;
	font-size: 1.1em;
	background-size: auto 10em, auto, 100% auto !important;
	background-position: calc(100% - 2em) 0, 0 0, 30% 65% !important;
	padding-right: 20%;
}
#sec__dr .sec__dr__msg-d {
	background: url(../img/dr-d2.png), linear-gradient(-180deg, rgba(255,255,255,1) 1.5em, rgba(255,255,255,0) 1.5em),url(../img/sec__dr__bg.jpg);
}
#sec__dr .sec__dr__msg-s {
	background: url(../img/dr-s.png), linear-gradient(-180deg, rgba(255,255,255,1) 1.5em, rgba(255,255,255,0) 1.5em),url(../img/sec__dr__bg.jpg);
}
#sec__dr .sec__dr__prof dd p {
	float: left;
	margin-right: 3em;
}
#sec__dr .sec__dr__prof dd p:last-of-type {
	margin-right: 0;
}
#sec__info .sec__info__ph figure {
	width: 49%;
}
#sec__info .sec__info__ph figure:nth-of-type(odd) {
	float: left;
	clear: left;
}
#sec__info .sec__info__ph figure:nth-of-type(even) {
	float: right;
}
#sec__info .sec__info__ph figure img {
	width: 100%;
}
#sec__info .sec__info__ph figure figcaption {
	font-size: .9em;
	margin: .8em 0 0;
}
}


/*	form
============================*/
.pp section {
	padding-top: 10px;
}
.form {
	padding-bottom: 0;
}
.form .header__nav {
	display: none;
}
.form section {
	padding-top: 10px;
}
.form .inner {
	text-align: left;
}
.form section p {
	margin: 1em 0;
	text-align: left;
}
.form section p span {
	display: inline-block;
}
.form section figure {
	margin: 1em auto;
	width: 84%;
	max-width: 400px;
}
.form .formtel {
	width: 90%;
	max-width: 600px;
	margin: 1em auto;
	text-align: center;
	border: 1px solid #EA7792;
	border-radius: .45em;
}
.form .formtel dt {
	padding: .2em 0;
	color: #FFF;
	background: #EA7792;
	border-radius: .4em .4em 0 0;
	text-shadow: 1px 1px .5px rgba(0,0,0,0.3);
}
.form .formtel dd {
	padding: .7em 0 .5em;
}
.form .formtel dd img {
	height: 1.5em;
}
.form .formtel dd span {
	display: block;
	margin-top: .5em;
}


.form .formcal {
	width: 90%;
	max-width: 600px;
	margin: 1em auto -0.8em;
	border: 1px solid #DAC8B6;
	font-size: .8em;
}
.form .formcal th {
	background: #DAC8B6;
	color: #FFF;
	text-align: center;
	padding: .3em 0;
}
.form .formcal th:nth-of-type(n + 2){
	width: 10%;
	border-left: 1px solid #FFF;
}
.form .formcal td:nth-of-type(n + 2) {
	border-left: 1px solid #DAC8B6;
}
.form .formcal td:nth-of-type(n + 2) {
	font-size: 1.5em;
}
.form .formcal td {
	text-align: center;
	padding: .5em 0;
}
.form .formcal td strong {
	color: #EA7792;
}

.form__tbl {
	width: 100%;
	margin: 2em 0 1.5em;
}
.form__tbl caption  {
	width: 80%;
	margin: 1em auto 30px;
	background: #DAC8B6;
	color: #FFF;
	font-weight: bold;
	padding: 0.2em 0;
	border-radius: 1.5em;
	font-size: 1.1em;
}
.form__tbl th,
.form__tbl td {
	display: block;
	line-height: 1.6;
}
.form__tbl th {
	position: relative;
	background: #EFEFEF;
	padding: .5em 0 .5em calc(40px + 2%);
}
.form__tbl td {
	padding: .3em 0 1.2em 0;
}
.form__tbl span.required,
.form__tbl span.any {
    display: inline-block;
    width: 35px;
    height: 18px;
    font-size: 10px;
    text-align: center;
    line-height: 18px;
    color: #fff;
    vertical-align: middle;
	position: absolute;
	left: 2%;
	top: calc(50% - 9px);
}
.form__tbl span.required {
    background-color: #E17C90;
}
.form__tbl span.any {
    background-color: #808080;
}
.form__tbl div span {
	position: static !important;
	vertical-align: middle;
	margin-bottom: .2em;
}
.form__tbl input[type="text"],
.form__tbl input[type="number"],
.form__tbl input[type="tel"],
.form__tbl input[type="email"],
.form__tbl select,
.form__tbl textarea {
	border: solid 1px #4D4D4D;
	border-radius: 3px;
	box-shadow: none !important;
	padding: 10px 10px;
	margin: 5px 0;
	vertical-align: middle;
	font-size: 16px;
    -webkit-appearance: none;
	font-family: sans-serif;
}
.form__tbl input[type="number"] {
	width: 4.5em;
}
.form__tbl input[type="text"],
.form__tbl input[type="email"] {
	width: 90%;
}
.form__tbl input[type="tel"] {
	width: 50%;
}
.form__tbl input[type="checkbox"] {
	vertical-align: middle;
	line-height: 1;
	margin: 0;
	width: 1em;
	height: 1em;
}
.form__tbl ::placeholder {
	color: #ccc;
}
.form__tbl textarea {
	width: 90% !important;
	height: 10em !important;
}
.form__tbl label {
	display: block !important;
	border: none !important;
	padding: 0 !important;
	margin: 0.2em 20px 0.1em 0 !important;
}
.form__tbl label.ib {
	display: inline-block !important;
}
.form__tbl td div.bd {
	border-top: 1px solid #4d4d4d;
	padding-top: .7em;
	margin-top: .8em;
}

.form__btn {
	text-align: center;
	margin: 0 auto;
}
.form__btn input,
.form__btn input:hover,
.form__btn a,
.form__btn a:hover {
	display: inline-block;
	border: none;
	border-radius: 5px; 
	background: #AD967D;
	color: #fff;
	margin: 20px auto;
	padding: 1em 40px;
	outline: none;
	cursor: pointer;
	text-decoration: none;
	font-size: 1em;
    -webkit-appearance: none;
}

@media screen and (max-width : 767px) {
.form .contact {
	display: none;
}
}

@media screen and (min-width : 768px) {
.form .contact__reserve,
.form .contact__mail {
	display: none;
}
}

/* default customize */
.mfp_ok {
    background-color: #FFF;
}
div.mfp_ok {
	display: none !important;
}
:focus {
	outline-color: #000;
}
form#mailformpro label.mfp_checked {
    padding: 0 !important;
    border: none !important;
    background-color: #FFF !important;
    box-shadow: none !important;
}
.mfp_element_submit {
	text-shadow: none;
}
#mfp_BirthdayElement_mfp_element_8_month {
    margin: 0 .5em;
}

/*	privacy policy
============================*/
.pp__list li {
	list-style: decimal;
	margin: 0 0 1.5em 30px;
	font-weight: bold;
}
.pp__list h4 {
	text-align: left;
	margin: 1.5em 0 0.5em;
	font-size: 1.1em;
	font-weight: bold;
}
.pp__list p {
	margin: 0 0 1em -23px;
}


@media screen and (max-width : 767px) {/* PC only */
.pc { display: none !important;}
}
@media screen and (min-width : 768px) {/* SP only */
.sp { display: none !important; }
}

.mt0 {margin-top: 0 !important;}
.mb0 {margin-bottom: 0 !important;}

.clearfix::after,
.sec::after,
.wrap::after,
.inner::after {
	content: "";
	display: block;
	clear: both;
}
.clearfix::before,
.sec::before,
.wrap::before,
.inner::before {
	content: "";
	display: block;
	clear: both;
}
.clearfix,
.sec,
.wrap,
.inner {
	display: block;
}

.ta--center { text-align: center !important;}
.ta--right { text-align: right!important;}
.f--small { font-size: 0.9em !important;}
.f--tiny{ font-size: 0.85em !important;}
.ib {display: inline-block;}

.gf--nt {font-family: 'Noto Serif JP', serif;}
.gf--sm {font-family: 'Shippori Mincho', serif;}

.f--filter {
	text-shadow: 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 5px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1), 0px 0px 10px rgba(255, 255, 255, 1);
	position: relative;
	z-index: 1;
}