@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;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-feature-settings:'palt';
	overflow-x: hidden;
}
a {
	color: inherit;
	outline: none;
}
img {
	width: auto;
	max-width: 100%;
	vertical-align: bottom;
	-webkit-backface-visibility: hidden;
}
h1,h2,h3,h4,h5,h6 {
	line-height: 1;
}
p,ul,ol,table {
	line-height: 1.6;
}

/* ------------------------------------------------------------
	Layout
------------------------------------------------------------ */
body {
	font-size: 0.16rem;
}
.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: #F184A1;
	padding: 1.2em 0;
	font-size: 0.8em;
}
.footer small span {
	font-size: 1.7em;
	vertical-align: middle;
}
.footer p {
	position: fixed;
	right: 3%;
	text-indent: -9999px;
	outline: none;
	width: 2.6em;
	height: 2.6em;
	background: rgba(255,255,255,.4);
	z-index: 100;
}
.footer p a {
	display: block;	
	width: 100%;
	height: 100%;
}
.footer p::before,
.footer p a::before,
.footer p a::after {
	content: "";
	display: inline-block;
	width: 2em;
	position: absolute;
	left: .3em;
	background: rgba(0,0,0,.1);
}
.footer .tomenu {
	bottom: 6.5em;
}
.footer .tomenu::before,
.footer .tomenu a::before,
.footer .tomenu a::after {
	height: .2em;
	border-radius: .2em;
}
.footer .tomenu::before {
	top: .5em;
}
.footer .tomenu a::before {
	top: 1.1em;
}
.footer .tomenu a::after {
	top: 1.7em;
}
.footer .pagetop {
	bottom: 3.5em;
	border-radius: 50%;
}
.footer .pagetop a::after {
	height: 1.5em;
	clip-path: polygon(0 100%, 50% 0, 100% 100%);
	top: .3em;
}

@media screen and (max-width : 767px) {
body {
	padding: 2.35em 0 4em;
}
.inner {
	padding-left: 3%;
	padding-right: 3%;
}

.header__clinic {
	background: #F184A1;
	position: fixed;
	top: 0;
	width: 100%;
	left: 0;
	z-index: 100;
}
.header__clinic a {
	height: 2.35em;
	display: flex;
    align-items: center;
	padding: 0 3em 0 4%;
}
.header__clinic img {
	height: 1.6em;
}
.header__clinic img:nth-of-type(2) {
	height: .8em;
	margin-left: 0.5em;
}
.header .header__nav__btn {
	position: fixed;
	right: 0;
	top: 0;
	background: #F2AAB3;
	display: block;
	font-size: 1em;
	width: 3em;
	height: 2.35em;
	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.3em;
	height: 1.5px;
	background: #fff;
	left: calc(50% - 0.65em);
}
.header .header__nav__btn::before {top: 0.65em;}
.header .header__nav__btn::after {top: 1.1em;}
.header .header__nav__btn span::before {top: 1.55em;}
.header .active::before {
	transform: rotate(45deg);
	top: 1.1em;
}
.header .active::after {
	transform: rotate(-45deg);
	top: 1.1em;
}
.header .active span::before {
	display: none;
}
.header .header__nav__menu {
	display: none;
	background: rgba(242,170,179,0.9);
	position: fixed;
	left: 0;
	top: 2.35em;
	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__line { left: 50%;}
.contact li.contact__tel { left: 75%;}
.contact li a {
	background: #F184A1;
	height: 3.2em;
	display: flex;
	outline: none;
	background-size: auto 80%;
	background-position: 50% 45%;
	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__line a {
	background-image: url(../img/contact__line.png);
}
.contact li.contact__tel a {
	background-image: url(../img/contact__tel.png);
	border-right: none;
}
}

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

@media screen and (min-width : 768px) {
.wrap {
	width: min(100%,1000px);
	margin-left: auto;
	margin-right: auto;
}
.inner {
	padding-left: 10%;
	padding-right: 10%;
}

.header--pcfix {
	z-index: 1000;
	background: #F184A1;
	padding-bottom: 1px;
}
.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
}
.header .wrap {
	background: none;
	padding: .5em 1%;
	width: 98%;
}
.header h1 {
	display: block;
	font-size: 0.7em;
	padding: 8px 0;
}
.header h1,
.header p {
	display: block;
}
.header__clinic {
	float: left;
}
.header__clinic img {
	height: min(4.5vw,40px);
	vertical-align: middle;
}
.header__clinic img:nth-of-type(2) {
	height: min(2.3vw,20px);
	margin: .2em 0 0 0.5em;
}
.contact li a {
	text-decoration: none;
	color: #fff;
	float: right;
}
.contact li.contact__mail a,
.contact li.contact__reserve a {
	display: block;
	margin-left: 1.5%;
	padding: 0.2em 1%;
	font-size: min(2.4vw,18px);
	border-radius: 3px;
	background: #DAB7A4;
}
.contact li.contact__tel a {
	padding: 0 0 0 1.5em;
	line-height: 1.8;
	background: url("../img/header__tel__icon.png") no-repeat 0;
	background-size: auto 80%;
	text-indent: -9999px;
}
.contact li.contact__line {
	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%;}
.header .header__nav__menu li:nth-child(2) { width: 16%;}
.header .header__nav__menu li:nth-child(3) { width: 19%;}
.header .header__nav__menu li:nth-child(7) { width: 11%;}
.header .header__nav__menu li:nth-child(8) { width: 11%;}
.header .header__nav__menu li:nth-child(9) { width: 13%;}
.header .header__nav__menu li:nth-child(10) { width: 13%;}
.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(10) a {
	border-right: none;
}
}

@media screen and (min-width : 1000px) {
.header .wrap {
	padding: .5em 0;
	width: min(100%, 1000px);
}
.contact li.contact__tel a {
	padding: 0 0 0 1.2em;
	background: url("../img/header__tel__icon.png") no-repeat 0;
	background-size: auto 60%;
	font-family: sans-serif;
	font-weight: bold;
	line-height: 1.5;
	text-indent: 0;
	font-size: 26px;
}
.header .header__nav__menu {
	width: calc(100% - 2px);
	border-left: 1px solid #FFF;
	border-right: 1px solid #FFF;
}
}

.cv {
	margin: 0.3em auto 4em;
}
.cv img {
	width: auto;
}
.cv p {
	text-align: center;
	line-height: 1;
}
.cv .cv__info {
	position: relative;
	height: 100%;
	padding: 2.6em 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__txt {
	padding: 0 5em 0 0;
	margin: 0 0 1.1em;
}
.cv .cv__info .cv__info__txt img {
	height: 1.15em;
}
.cv .cv__info .cv__info__txt span {
	display: block;
	margin: 0 0 0.8em;
}
.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: #FAF6F3;
	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.8em;
	padding: 0;
	line-height: 1.4;
	font-size: 1.2em;
}
.cv .cv__contact .cv__contact__txt span {
	display: inline-block;
	margin: 0 -0.5em 0 0;
	letter-spacing: -0.01em;
}
.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, .9) 12.6%, rgba(162,128,84, .9) 26.21%, rgba(180,148,97, .9) 69.18%, rgba(190,159,106, .9) 90.93%, rgba(192,161,108, .9) 94%, rgba(224,198,156, .9) 96%, rgba(211,183,137, .9) 96.44%, rgba(192,161,108, .9) 97%, rgba(144,112,74, .9) 100%);
}
.cv .cv__contact .cv__contact__btn li span {
	display: block;
	font-size: 0.68em;
}
.cv .cv__txt {
	line-height: 1.6;
	font-size: .95em;
}
.cv .cv__line {
	margin: .8em auto;
	width: min(94%, 800px);
}
.cv .cv__line img {
	height: 1.2em;
}
.cv .cv__line dt {
	border: 1px solid #42B532;
	background: #42B532;
	padding: .7em 0;
	font-size: .9em;
}
.cv .cv__line dd {
	border: 1px solid #42B532;
	text-align: center;
	padding: .8em 0;
}
.cv .cv__line dd a {
	display: block;
	background: url(../img/cv__line-icon.png) no-repeat calc(50% - 2.5em) 50% #42B532;
	background-size: auto 1.5em;
	padding: .6em .5em .6em 2.5em;
	font-size: 1.3em;
	color: #FFF;
	border-radius: .2em;
	margin: .6em auto;
	width: 5.5em;
}
.cmn {
	margin: 2em auto 0;
	width: min(100%, 550px) !important;
}


@media screen and (min-width : 600px) {
.cv .cv__info {
	padding: 3.2em 0 3.5em;
}
.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__txt {
	padding-right: 2.5em;
}
.cv .cv__info .cv__info__idt {
	padding-right: 0;
}
}


@media screen and (min-width : 768px) {
.cv .cv__info {
	padding: 3.2em 0 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%;
}
}


/* ------------------------------------------------------------
	Style
------------------------------------------------------------ */
.sec {
	margin-bottom: 3em;
}
.sec img {
	width: auto;
}
.sec figure {
	margin: 1em auto;
	text-align: center;
}
.sec figure.fg-m {
	width: 75%;
}
.sec figure.fg-s {
	width: 55%;
}
.sec p {
	margin-bottom: 0.5em;
	text-align: justify;
}
.sec p,.sec ul,.sec ol,.sec dl,.sec table {
	line-height: 1.6;
}
.sec h3 {
	background: #CCB2A2;
	color: #FFF;
	padding: 0.6em 0 0.7em;
	font-size: 1.45em;
	margin: 0 0 0.5em;
}
.sec h3 span {
	display: block;
	margin-bottom: 0.55em;
}
.sec h3 span img {
	height: 1.025em;
}
.sec h3 span.ls {
	display: inline-block;
	margin-bottom: 0;
	letter-spacing: -0.1em;
}
.sec h4.gf--sm {
    text-align: left;
    color: #CE1D5E;
    font-size: 1.5em;
    line-height: 1.5;
    margin-top: 5.5em;
    padding-right: 20%;
    letter-spacing: -.05em;
}
.sec .spplan figcaption {
	width: 15em;
	margin: 0 auto 1em;
	text-align: center;
}

.sec .sec__tx__unit .sec__tx__unitwrap {
	position: relative;
	overflow: hidden;
	margin: 0 -3% .8em;
}
.sec .sec__tx__unit__ttl {
	color: #FFF;
	background: #D87493;
	font-size: 1.15em;
	padding: 0.4em 0;
	letter-spacing: -0.1em;
	width: min(100%, 800px);
	margin: 1.5em auto 0;
}
.sec .sec__tx__unit__ph {
	position: absolute;
	margin: 0;
	z-index: 2;
}
.sec .sec__tx__unit__cap {
	padding-left: 5em;
}
.sec .sec__tx__unit__cap img {
	height: 1.8em;
	margin: .6em auto;
}

.sec__price__tbl {
	width: 106%;
	border-bottom: 1px solid #B2B2B2;
	margin: 0 -3%;
	position: relative;
}
.sec__price__tbl caption {
	text-align: left;
	border-left: .3em solid #80B15D;
	font-size: 1.17em;
	padding: .1em 0 .1em .5em;
	margin: 1em 3% .5em;
}
.sec__price__tbl:nth-of-type(2) caption { border-left-color: #F396BA;}
.sec__price__tbl:nth-of-type(3) caption { border-left-color: #7B97E6;}
.sec__price__tbl:nth-of-type(4) caption { border-left-color: #B473BB;}
.sec__price__tbl tr {
	border-top: 1px solid #B2B2B2;
}
.sec__price__tbl th {
	vertical-align: middle;
	padding: 0.3em 0;
	border-right: 1px solid #B2B2B2;
	font-size: 1.1em;
}
.sec__price__tbl:nth-of-type(2) th {
	text-align: left;
	padding: 0.3em 3%;
}
.sec__price__tbl th:nth-of-type(2) {
	width: 31%;
}
.sec__price__tbl td {
	text-align: right;
	vertical-align: middle;
	padding: 0.2em 2% 0.2em 1%;
	color: #B20808;
	font-size: 1.5em;
	letter-spacing: -0.05em;
	width: 26%;
}
.sec__price__tbl td span {
	font-size: 0.5em;
}

.sec .dr {
	position: relative;
}
.sec .dr figcaption {
	border-left: .3em solid #D0A289;
	width: min(80%, 320px);
}
.sec .dr figcaption img {
	margin: -.4em 0 -.4em -.3em;
}
.sec .dr .dr__ph {
	position: absolute;
	z-index: -1;
	right: -3.5em;
	width: 13.5em;
	top: -13em;
}

.sec .paybox {
    border-radius: 0.4em;
    border: 1px solid #DCBCAB;
    margin: 1.5em auto 1em;
}
.sec .paybox dt {
	background: #DCBCAB;
    border-radius: 7px 7px 0 0;
    padding: 0.3em 0;
    color: #fff;
    font-size: 1.1em;
    letter-spacing: 0.5px;
}
.sec .paybox dd {
	text-align: left;
    padding: 0.5em 1px 0.5em 3%;
}
.sec .paybox .paybox__list li {
    display: inline;
    position: relative;
	margin-bottom: 0.5em !important;
}
.sec .paybox .paybox__list li:nth-of-type(1) {
    margin-right: 2%;
}
.sec .paybox .paybox__list li::before {
    content: "";
    display: inline-block;
    width: 0.7em;
    height: 0.7em;
    border-radius: 50%;
    background: #DCBCAB;
    margin: 0 0.2em 0 0;
}
.sec .paybox .paybox__list li span {
	font-size: 0.85em;
}
.sec .paybox__credit img {
    height: 1.58em;
	margin: .3em .05% .3em 0;
	vertical-align: middle;
}
.sec .paybox__credit img:nth-of-type(n + 9) {
	margin-right: .3%;
}
.sec .txtbox {
	margin: 2em auto;
	max-width: 600px;
}
.sec .txtbox p {
	border: 0.7em solid #EBA9C2;
	background: #E585A5;
	text-align: center;
	color: #FFF;
	line-height: 2;
	padding: 0.6em 0 1.2em;
	font-size: 1.02em;
	letter-spacing: -0.04em;
	margin-bottom: 0.2em;
	margin-top: 1.5em;
}
.sec .txtbox span {
	display: inline-block;
	border-bottom: 1px dashed #FFF;
	margin-bottom: 0.3em;
	padding: 0;
}
.sec .movie {
    margin: 1em auto;
    width: min(100%,640px);
    height: min(53vw,360px);
}
.sec .movie video {
	width: 100%;
}


#sec__intro h2 {
	font-size: 1.4em;
	color: #FFF;
	background : linear-gradient(0deg, rgba(132, 103, 60, 1) 10.11%, rgba(127, 101, 57, 1) 23.76%, rgba(151, 125, 77, 1) 37.7%, rgba(161, 135, 86, 1) 42.77%, rgba(198, 174, 130, 1) 50%, rgba(161, 135, 86, 1) 85.16%, rgba(108, 82, 45, 1) 100%, rgba(220, 208, 176, 1) 100%);
	padding: 0.5em 0;
	letter-spacing: -0.05em;
	font-weight: 600;
}
#sec__intro h2 span {
	display: block;
	transform: skew(-10deg);
}
#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.7em 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__intro .sec__tx__unit__ph {
	width: 7em;
	top: -2.3em;
	left: -1.6em;
}
#sec__intro .sec__tx__unit--u .sec__tx__unit__ph {
	width: 9.1em;
	top: -1em;
	left: -2.5em;
}
#sec__intro .sec__intro__pricetbl {
	border-bottom: 1px solid #E19FB8;
	width: calc(100% - 5em);
	margin: 0 0 0 5em;
}
#sec__intro .sec__intro__pricetbl tr {
	background: #FDFCF8;
	position: relative;
}
#sec__intro .sec__intro__pricetbl tr::after {
	content: "";
	position: absolute;
	display: block;
	width: 130%;
	top: calc(50% - 1px);
	left: 10%;
	height: 1px;
	border-top: 1px dotted #302A29;
}
#sec__intro .sec__intro__pricetbl th,
#sec__intro .sec__intro__pricetbl td {
	border-top: 1px solid #E19FB8;
	line-height: 1;
	padding: 0.3em 0;
}
#sec__intro .sec__intro__pricetbl th strong,
#sec__intro .sec__intro__pricetbl td strong {
	display: inline-block;
	background: #FDFCF8;
	padding: 0 0.2em 0 0.5em;
	z-index: 1;
	position: relative;
}
#sec__intro .sec__intro__pricetbl td strong {
	padding: 0 calc(.2em + 5%) 0 .1em;
}
#sec__intro .sec__intro__pricetbl th {
	color:#B1225D;
	text-align: left;
	font-size: 1.05em;
	padding-left: 6%;
	position: relative;
	letter-spacing: -0.05em;
	vertical-align: middle;
}
#sec__intro .sec__intro__pricetbl th span {
	font-size: 0.65em;
	display: inline-block;
	vertical-align: middle;
	margin: -0.5em 0 0 -0.3em;
	letter-spacing: -0.05em;
}
#sec__intro .sec__intro__pricetbl td {
	color: #BC0808;
	font-size: 1.5em;
	text-align: right;
	letter-spacing: -0.05em;
}
#sec__intro .sec__intro__pricetbl td span {
	font-size: 0.5em;
}
#sec__intro .sec__intro__morebtn {
	display: block;
	color: #FFF;
	font-size: 1.15em;
	width: 50%;
	margin: 0.8em auto 3em;
	text-decoration: none;
	padding: 0.3em 0;
	border-radius: 0.1em;
	position: relative;
	background : linear-gradient(0deg, rgba(128, 101, 57, 0.9) 22.56%, rgba(151, 125, 76, 0.9) 40.15%, rgba(164, 138, 86, 0.9) 48.43%, rgba(207, 184, 141, 0.9) 60.73%, rgba(188, 164, 117, 0.9) 73.18%, rgba(164, 138, 86, 0.9) 86.75%, rgba(108, 82, 45, 0.9) 100%, rgba(223, 211, 179, 0.9) 100%);
}
#sec__intro .sec__intro__morebtn::after {
	content: "";
	position: absolute;
	bottom: -0.8em;
	left: calc(50% - 1em);
    display: inline-block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-color: #8B754D transparent transparent transparent;
    border-width: 0.9em 1em 0 1em;
}
#sec__intro .sec__piclist {
	margin-top: 2.5em;
}
#sec__intro .sec__piclist dt {
	font-size: 1.2em;
	color: #875420;
	letter-spacing: -.1em;
}
#sec__intro .sec__piclist dt img {
	height: 2.3em;
	margin: .2em 0 1em;
}
#sec__intro .sec__piclist li {
	width: 49%;
	border-radius: 0.3em;
	background-color: #E1C6B8;
	background-repeat: no-repeat;
	background-position: 50% 0;
	background-size: 100.5% auto;
	color: #FFF;
	line-height: 1.3;
	font-size: 1.12em;
	letter-spacing: -0.03em;
	padding: 6em 0 0.45em;
	margin-bottom: 2%;
}
#sec__intro .sec__piclist li span {
	letter-spacing: -0.3em;
	margin-left: -0.3em;
}
#sec__intro .sec__piclist li:nth-of-type(odd) {
	float: left;
}
#sec__intro .sec__piclist li:nth-of-type(even) {
	float: right;
}
#sec__intro .sec__piclist li:nth-of-type(1) {
	background-image: url(../img/sec__piclist01.jpg);
}
#sec__intro .sec__piclist li:nth-of-type(2) {
	background-image: url(../img/sec__piclist02.jpg);
}
#sec__intro .sec__piclist li:nth-of-type(3) {
	background-image: url(../img/sec__piclist03.jpg);
}
#sec__intro .sec__piclist li:nth-of-type(4) {
	background-image: url(../img/sec__piclist04.jpg);
}
#sec__intro .sec__piclist li:nth-of-type(5) {
	background-image: url(../img/sec__piclist05.jpg);
}
#sec__intro .sec__piclist li:nth-of-type(6) {
	background-image: url(../img/sec__piclist06.jpg);
}

#sec__type h3 {
	margin-bottom: 1em;
	background: none;
	padding: 0;
}
#sec__type h3 img {
	height: 1em;
}
#sec__type .sec__cat {
	margin: 1.5em auto 1em;
}
#sec__type .sec__cat li {
	border: 1px solid #A2A2A2;
	border-radius: 0.3em;
	width: calc(49.5% - 2px);
	margin-bottom: 1%;
}
#sec__type .sec__cat li strong {
	display: block;
	line-height: 1;
}
#sec__type .sec__cat li strong img {
	height: 1em;
	margin: 0.6em 0;
}
#sec__type .sec__cat li:nth-of-type(4) strong img {
	height: 2.13em;
	margin: 0.49em 0;
}
#sec__type .sec__cat li figure {
	width: 70%;
	margin: auto;
}
#sec__type .sec__cat li p {
	font-size: 0.85em;
	margin: 0.5em 2.5%;
}
#sec__type .sec__cat li:nth-of-type(odd) {
	float: left;
	clear: both;
}
#sec__type .sec__cat li:nth-of-type(even) {
	float: right;
}
#sec__type .f--small {
	margin-bottom: 3.5em;
}
#sec__type p.ta--center img {
	height: 0.99em;
	margin-bottom: 0.5em;
}
#sec__type .sec__btn {
	display: block;
	background: rgb(186,61,111);
	background: url(../img/sec__btn--bg.png) no-repeat 100% 100%, linear-gradient(0deg, #DF6487 0%, #DF6487 50%, #E5819C 50%, #E5819C 100%);
	background-size: 2.5em auto, auto;
	border-radius: 0.5em;
	padding: 1.1em 2em 1.1em 0;
	margin: 1em auto;
	max-width: 400px;
}
#sec__type .sec__btn img {
	height: 1.25em;
}

.sec__tx .sec__tx__ttl {
	margin: auto;
	padding-top: .5em;
}
.sec__tx .sec__tx__ttl span img {
	height: 3.5em;
}
.sec__tx .sec__tx__ttl strong {
	display: block;
	text-align: left;
	margin: 2em auto 0;
	width: min(100%,23em);
}
.sec__tx .sec__tx__ttl strong img {
	height: 5em;
}
.sec__tx .sec__tx__catch {
	text-align: center;
}
.sec__tx .sec__tx__catch img {
	height: 4.3em;
}
.sec__tx .sec__tx__rcmd {
	margin: 1.5em auto;
	position: relative;
}
.sec__tx .sec__tx__rcmd dt {
	background: #E17999;
	color: #FFF;
	font-size: 1.15em;
    padding: 0.4em 0;
	margin: 0 -3%;
	letter-spacing: -0.13em;
}
.sec__tx .sec__tx__rcmd dd::before {
	content: "";
	position: absolute;
	display: block;
	z-index: -1;
}
.sec__tx .sec__tx__rcmd ul {
	margin: 0.5em 0;
	position: relative;
	z-index: 1;
}
.sec__tx .sec__tx__rcmd li {
	text-align: left;
	background: url(../img/sec__rcmd--icon.png) no-repeat 0 0.3em;
	background-size: auto 1.2em;
	padding: 0 0 0 .8em;
	margin: -0.3em 0;
}
.sec__tx .sec__tx__rcmd img {
	height: 2.1em;
}
.sec__tx .sec__tx__pt dt {
	position: relative;
	margin: 5em -2% 1em;
	width: 104%;
	padding: .7em 0 .9em;
    background: url(../img/sec__tx__pt--bg.png) 50% calc(0% + 0.3em) no-repeat,url(../img/sec__tx__pt--bg2.png) calc(100% + 1px) 50% no-repeat, #DC708A;
	background-size: auto 0.3em, auto calc(100% + 2px), auto;
}
.sec__tx .sec__tx__pt dt img {
	height: 1.3em;
}
.sec__tx .sec__tx__pt dt::after {
	content: "";
	position: absolute;
	top: -1px;
	left: 0;
	display: block;
	width: 100%;
	height: calc(100% + 2px);
    background: url(../img/sec__tx__pt--bg.png) 50% calc(0% + 0.3em) no-repeat,url(../img/sec__tx__pt--bg2.png) calc(100% + 1px) 50% no-repeat;
	background-size: auto 0.3em, auto 100%;
	transform: rotate(-180deg);
}
.sec__tx .sec__tx__pt dt::before {
	position: absolute;
	content: "";
	display: block;
	height: 1em;
	top: -1.5em;
	right: 2%;
	width: 7.5em;
	background-size: contain !important;
}
.sec__tx .sec__tx__pt dt span {
	position: absolute;
	background: #DC708A;
	border-radius: 6em 6em 0 0;
	width: 5.5em;
	padding: 0.8em 0.5em 0 0;
	height: 2.2em;
	border: 0.3em solid #EDE1CE;
	border-bottom: none;
	top: -3.25em;
	left: calc(50% - 3.3em);
	z-index: -1;
}
.sec__tx .sec__tx__pt dt span img {
	height: 1.8em;
}

#sec__ug {
	background: url(../img/sec__ug_bg.jpg) no-repeat calc(50% + 8.5em) 0;
	background-size: 13em auto;
}
#sec__ug .sec__tx__rcmd dd::before {
	background: url(../img/sec__tx__ph-ug.png) 100% 100% no-repeat;
	background-size: 100% auto;
	transform: scale(-1, 1);
	right: -.5em;
	top: 1.9em;
	width: 12.5em;
	height: 25em;
}
#sec__ug .sec__tx__pt dd p strong {
	display: inline-block;
	background: #CFB49D;
	color: #FFF;
	padding: .2em 1em;
	border-radius: .2em;
	margin: .7em 0 .3em;
}
#sec__ug .sec__tx__pt dd p.f--small {
	border: 1px dashed #9C8466;
	padding: .5em 2%;
}
#sec__ug .sec__price__tbl {
	margin-bottom: .8em;
}
#sec__ug .sec__price__tbl caption {
	border-left: none;
	text-align: center;
	padding: 2em 0 5em 6.5em;
	margin: 1em 0 0;
	background: url(../img/sec__tx__ph-ug.png) no-repeat calc(50% - 7.3em) 0, url(../img/sec__price__cap_ug.png) no-repeat calc(50% + 2.5em) 6.3em;
	background-size: 10em auto, auto 3.5em;
}
#sec__ug .sec__price__tbl caption img {
	height: 4em;
}
#sec__yag {
	background: url(../img/sec__yag_bg.jpg) no-repeat calc(50% + 7.2em) .5em;
	background-size: 12em auto;
}
#sec__yag section {
	margin: 3em 0 2em;
}
#sec__yag p q {
	display: block;
	letter-spacing: -0.02em;
	margin: 0.6em 0;
}
#sec__yag p q::before,
#sec__yag p q::after {
	display: none;
}
#sec__yag p q span:nth-of-type(1) { color: #F696BB;}
#sec__yag p q span:nth-of-type(2) { color: #7B97EA;}
#sec__yag p q span:nth-of-type(3) { color: #BA75C0;}
#sec__yag .sec__yag__linkbtn {
	margin: 0 auto 5em;
	justify-content: space-between;
	display: flex;
	flex-wrap: wrap;
}
#sec__yag .sec__tx__rcmd dd::before {
	background: url(../img/sec__tx__ph-yag2.png) 100% 100% no-repeat;
	background-size: 100% auto;
	right: -1.5em;
	top: 0;
	width: 10.5em;
	height: 21em;
}
#sec__yag .sec__yag__linkbtn li {
	width: 90%;
	margin: .5em auto;
}
#sec__yag .sec__yag__linkbtn li a {
	display: block;
	text-align: left;
	text-decoration: none;
	color: #FFF;
	font-size: 1.1em;
	padding: 0.6em 0 0.6em 3%;
	border-radius: 0.2em;
}
#sec__yag .sec__yag__linkbtn li:nth-of-type(1) a {
	background: #F58CB6;
}
#sec__yag .sec__yag__linkbtn li:nth-of-type(2) a {
	background: #7B97EA;
}
#sec__yag .sec__yag__linkbtn li:nth-of-type(3) a {
	background: #BA75C0;
}
#sec__yag .sec__yag__linkbtn li a strong {
	font-weight: bold;
	margin-right: 1%;
}
#sec__yag .sec__yag__linkbtn li a::after,
#sec__yag .sec__yag__linkbtn li a span::after {
	content: "";
	display: inline-block;
	vertical-align: text-top;
}
#sec__yag .sec__yag__linkbtn li a span::after {
	width: 1.05em;
	height: 1.05em;
	border-radius: 50%;
	background: #FFF;
	margin: 0 0 0 0.3em;
}
#sec__yag .sec__yag__linkbtn li a::after {
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 0.6em 0.4em 0 0.4em;
	margin: 0.3em 0 0 -0.925em;
}
#sec__yag .sec__yag__linkbtn li:nth-of-type(1) a::after {
	border-color: #F58CB6 transparent transparent transparent;
}
#sec__yag .sec__yag__linkbtn li:nth-of-type(2) a::after {
	border-color: #7B97EA transparent transparent transparent;
}
#sec__yag .sec__yag__linkbtn li:nth-of-type(3) a::after {
	border-color: #BA75C0 transparent transparent transparent;
}
#sec__yag h3 {
	border-radius: 2em;
	padding: .5em 0 .6em;
	width: min(65%, 600px);
	margin: .5em auto;
}
#sec__yag h3 img {
	height: 1em;
}
#sec__yag figcaption.gf--nt {
	color: #FFF;
	border-radius: 0.5em 0.5em 0 0;
	padding: 0.5em 0;
	width: min(100%, 400px);
	margin: auto;
}
#sec__yag_s h3,
#sec__yag_s .sec__tx__unit__ttl,
#sec__yag_s figcaption.gf--nt {
	background: #EA7EAB;
}
#sec__yag_t h3,
#sec__yag_t .sec__tx__unit__ttl,
#sec__yag_t figcaption.gf--nt {
	background: #7190E1;
}
#sec__yag_f h3,
#sec__yag_f .sec__tx__unit__ttl,
#sec__yag_f figcaption.gf--nt {
	background: #AE6AB5;
}
#sec__yag h4 img {
	height: 1.25em;
	margin-bottom: 1em;
}
#sec__yag .sec__tx__unit__ph {
	width: 8.9em;
	top: -3em;
	left: -2.2em;
}
#sec__yag_t .sec__tx__unit__ph,
#sec__yag_f .sec__tx__unit__ph {
	top: 3.07em;
}
#sec__yag .sec__price__tbl {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
#sec__yag .sec__price__tbl th:not(.f--small) {
	padding-left: 6em;
	text-align: left;
	letter-spacing: -.1em;
}
#sec__yag_s .sec__price__tbl th span.f--tiny {
	margin-left: -.5em;
}
#sec__yag_t .sec__tx__unit__cap,
#sec__yag_f .sec__tx__unit__cap {
    padding-left: 0;
}
#sec__flow .sec__flow__step {
	margin-top: 1em;
}
#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: #DABEAD;
	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__price .sec__price__catch li {
	background: #F9F5F2;
	width: 49.5%;
	color: #BA9372;
	border-radius: 0.2em;
	line-height: 1;
	padding: 0.6em 0 0.7em;
	margin: 0 0 0.5em;
	letter-spacing: -0.05em;
	font-size: 1.05em;
}
#sec__price .sec__price__catch li:nth-child(odd) {
	float: left;
}
#sec__price .sec__price__catch li:nth-child(even) {
	float: right;
}
#sec__price .sec__price__catch li span {
	display: block;
}
#sec__price .sec__price__catch li strong {
	font-size: 2.5em;
}
#sec__price .sec__price__tbl {
	margin-top: 1.5em;
	margin-bottom: .8em;
}
#sec__price .sec__price__tbl:first-of-type::after {
	content: "（税込）";
	display: inline-block;
	position: absolute;
	right: 3%;
	top: 1em;
}
#sec__price .sec__price__tbl:nth-of-type(2) th {
	letter-spacing: -.1em;
	padding-right: 0;
}

#sec__price .spplan figcaption {
	width: 8em;
}
#sec__price .f--small.inner {
	margin-bottom: 1.5em;
}
#sec__price .sec__price__minors {
	display: flex;
	align-items: center;
	justify-content: center;
}
#sec__price .sec__price__minors img {
	vertical-align: middle;
	width: 5em;
	margin-right: .5em;
}

#sec__faq h4 {
	text-align: left;
	border-left: .3em solid #80B15D;
	font-size: 1.17em;
	padding: .3em 0 .3em .5em;
	margin-top: 1em;
}
#sec__faq h4:nth-of-type(2) { border-left-color: #F396BA;}
#sec__faq h4:nth-of-type(3) { border-left-color: #7B97E6;}
#sec__faq h4:nth-of-type(4) { border-left-color: #B473BB;}
#sec__faq .sec__faq__list {
	text-align: left;
	margin: 1em auto 2em;
}
#sec__faq .sec__faq__list dt {
	background: url(../img/sec__faq__list--icon.png) no-repeat 2% 0.55em #D1B7A5;
	background-size: 1.35em auto;
	border-radius: 0.2em;
	padding: 0.45em calc(2% + 1.7em);
	color: #FFF;
	margin-bottom: 0.5em;
	position: relative;
	font-size: 1.03em;
	letter-spacing: -0.01em;
}
#sec__faq .sec__faq__list dd {
	text-align: justify;
}
#sec__faq .sec__faq__list dd:nth-last-of-type(n + 2) {
	padding-bottom: 1.4em;
}
#sec__faq .sec__faq__list dt::before {
	content: "＋";
	display: inline-block;
	position: absolute;
	top: .4em;
	right: 2%;
	background: #FFF;
	border-radius: 50%;
	width: 1.2em;
	height: 1.2em;
	color: #D1B7A5;
	font-size: 1.2em;
	line-height: 1.2em;
	text-align: center;
}
#sec__faq .sec__faq__list dt.close::before {
	content: "－";
}
#sec__faq p {
	border-top: 1px solid #999999;
	padding-top: 1.35em;
}

#sec__dr h3 {
	margin-bottom: 0;
}
#sec__dr .sec__dr__msg {
	line-height: 1.5;
	font-size: 1.05em;
	margin: 0 auto 1.3em;
	background-repeat: no-repeat, no-repeat !important;
	background-size: auto 125%, cover !important;
	background: url(../img/dr-ph.png),url(../img/sec__dr__bg.jpg);
	background-position: calc(100% + 2em) 30%, 0 0;
	padding: 2.5em 15% 2em 0;
	color: #E95881;
}
#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: min(100%, 600px);
	margin: 1em auto;
	border-bottom: 1px solid #B2B2B2;
}
#sec__info .sec__info__tbl caption img {
	width: 12em;
	margin: .5em auto 1.3em;
}
#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: top;
	padding: 0.5em 0 0.5em 2%;
	line-height: 1.8;
}
#sec__info .sec__info__tbl th {
	width: 20%;
	min-width: 5em;
	position: relative;
}
#sec__info .sec__info__tbl th::after {
	position: absolute;
	content: "：";
	right: -.2em;
}
#sec__info .ta--center {
	margin-top: 1.5em;
}
#sec__info .ta--center span {
	display: inline-block;
}
#sec__info .sec__info__map {
	margin: 1em -3%;
}
#sec__info .sec__info__map figcaption {
	color: #BE9F8B;
	font-size: 1.1em;
	display: block;
	margin: 1em 0 0.9em;
	line-height: 1.5;
}
#sec__info .sec__info__gbtn {
    display: block;
    background: url(../img/sec__info__gbtn.png) no-repeat calc(50% - 5.2em) 50% #D2B4A5;
    background-size: auto 1.2em;
    color: #FFF;
    text-decoration: none;
    padding: 0.8em 0;
    border: 1px solid #FFF;
    border-radius: 0.8em;
    font-size: 1.2em;
    box-shadow: 0px 3px 2px rgba(195, 177, 153, 0.75);
    position: relative;
    width: min(85%,400px);
    margin: 1em auto 2em;
}
#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 {
	margin: 0 auto 2em;
	width: 94%;
}
#sec__info .sec__info__route dt {
	text-align: left;
	background: #D1B7A5;
	color: #FFF;
	border-radius: .2em;
	padding: .3em 3%;
	font-size: 1.2em;
	margin-bottom: .6em;
}
#sec__info .sec__info__route dt::before {
	content: "";
	background: #FFF;
	display: inline-block;
	width: .7em;
	height: .7em;
	vertical-align: middle;
	border-radius: .1em;
	margin: 0 .2em .2em 0;
}
#sec__info .sec__info__route figure {
	margin: 1.3em auto .5em;
}


@media screen and (max-width : 599px) {
#sec__faq .sec__faq__list:nth-of-type(1) dt:nth-of-type(1),
#sec__faq .sec__faq__list:nth-of-type(3) dt:nth-of-type(4) {
	letter-spacing: -.03em;
}
}


@media screen and (min-width : 600px) {
.mv {
	width: 100%;
	max-width: 1000px;
}
.mv .slick-list {
	margin: auto;
	position: relative;
}
.mv .slick-list::before,
.mv .slick-list::after {
	content: "";
	display: block;
	position: absolute;
	background: #FFF;
	width: 15%;
	height: 100%;
	top: 0;
	z-index: 100;
}
.mv .slick-list::before {
	left: 0;
	background: linear-gradient(to right, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 50%);
}
.mv .slick-list::after {
	right: 0;
	background: linear-gradient(to left, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 50%);
}
.mv .slick-slide {
	opacity: 0.5;
    transition: all 500ms ease;
}
.mv .slick-center {
    opacity: 1;
}
.sec .dr .dr__ph {
    top: -10em;
}


#sec__intro .sec__piclist li {
	padding: 30% 0 0.5em;
}
#sec__type .sec__cat li:nth-of-type(1) br,
#sec__type .sec__cat li:nth-of-type(4) br {
	display: none;
}
#sec__type .sec__cat li:nth-of-type(4) strong img {
	margin: 4.4% 0;
}

#sec__dr .sec__dr__msg {
	background-position: 100% 30%, 0 0;
	padding-right: 10%;
}
}


@media screen and (min-width : 768px) {
.sec .txtbox p {
	padding: 0.6em 0 1.2em;
	font-size: 1.08em;
	letter-spacing: 0;
	margin-bottom: 0.5em;
	margin-top: 1.5em;
	margin-left: 10%;
	margin-right: 10%;
}
.sec__price__tbl {
	width: 100%;
	margin: 0 auto;
}
.sec__price__tbl caption {
	margin: 1em auto .5em;
}
.sec__price__tbl td {
	padding-right: 4%;
}
.sec__tx__unit .sec__tx__unitwrap {
	margin: 0 auto .8em !important;
}
.sec__tx__unit .sec__tx__unit__ph {
	left: 0 !important;
}

#sec__intro .sec__tx__unit .sec__tx__unitwrap {
	width: min(100%,600px);
}
#sec__intro .sec__intro__pricetbl {
	width: calc(100% - 6.5em);
	margin-left: 6.5em;
}
#sec__intro .sec__intro__pricetbl th {
	font-size: 1.2em;
}
#sec__intro .sec__piclist li {
	width: 32%;
	padding: 19.8% 0 0.5em;
	margin-right: 2%;
}
#sec__intro .sec__piclist li:nth-of-type(odd),
#sec__intro .sec__piclist li:nth-of-type(even) {
	float: left;
}
#sec__intro .sec__piclist li:nth-of-type(3n) {
	margin-right: 0;
}
#sec__type .sec__cat li {
	width: calc(32.6% - 2px);
	margin: 0 1.1% 1% 0;
}
#sec__type .sec__cat li:nth-of-type(odd) {
	clear: none;
}
#sec__type .sec__cat li:nth-of-type(even) {
	float: left;
}
#sec__type .sec__cat li:nth-of-type(3n) {
	float: right;
	margin-right: 0;
}
#sec__type .sec__cat li p {
	font-size: 0.9em;
	margin: 0.5em 3%;
}
.sec__tx .sec__tx__ttl {
	font-size: 1.3em;
}
.sec__tx .sec__tx__ttl strong {
	text-align: center;
}
.sec__tx .sec__tx__pt dt {
	margin: 5em auto 1em;
	width: 100%;
}
.sec__tx .sec__tx__rcmd li {
	float: left;
	width: 47%;
	min-width: 20em;
	margin-bottom: 0;
}
#sec__ug {
	background: url(../img/sec__ug_bg.jpg) no-repeat calc(50% + 13em) 0;
	background-size: 17em auto;
}
#sec__ug .sec__tx__rcmd dd::before {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 75%, rgba(255, 255, 255, 1) 90%), url(../img/sec__tx__ph-ug.png) 0 .5em no-repeat;
	background-size:auto, 12em auto;
	height: 100%;
}
#sec__yag {
	background: url(../img/sec__yag_bg.jpg) no-repeat calc(50% + 13em) 1em;
	background-size: 15em auto;
}
#sec__yag .sec__tx__rcmd dd::before {
	background:  linear-gradient(to bottom, rgba(255, 255, 255, 0) 85%, rgba(255, 255, 255, 1) 100%), url(../img/sec__tx__ph-yag2.png) 100% 1em no-repeat;
	background-size:auto, 10em auto;
	height: 100%;
}
#sec__yag .sec__yag__linkbtn li {
	font-size: min(1.5vw,.8em);
	width: 32.5%;
	margin: 1em 0;
}
#sec__yag .sec__tx__unit__ph {
	font-size: 1.2em;
}
#sec__yag .sec__price__tbl th:not(.f--small) {
	padding-left: 12em;
}
#sec__yag_t .sec__tx__unit__ph,
#sec__yag_f .sec__tx__unit__ph {
	top: 2.5em;
}

#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 .paybox {
	clear: both;
}

#sec__dr .sec__dr__msg {
	background-position: calc(50% + 9em) 30%, 0 0;
	padding-right: 4em;
	font-size: 1.2em;
}
#sec__dr .sec__dr__prof dd p:first-of-type {
	float: left;
	margin-right: 3em;
}
#sec__info .sec__info__route {
	width: 100%;
}
#sec__info .sec__info__route p {
	text-align: center;
}
}



/*	form
============================*/
.form {
	display:grid;
	grid-template-columns: 1fr;
	grid-template-rows: auto 1fr auto;
	min-height: 100vh;
}
.pp section {
	padding-top: 10px;
}
.form {
	padding-bottom: 0;
}
.form h3,
.pp h3 {
	background: #DAB7A4;
}
.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__tbl {
	width: 100%;
	margin: 2em 0 1.5em;
}
.form__tbl caption  {
	width: 80%;
	margin: 1em auto;
	background: #EA8190;
	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: .8em;
	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: #DAB7A4;
	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;
}


/*	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;}

.wd70 { width: 70%;}
.wd85 { width: 85%;}
.wd90 { width: 90%;}

.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;
}
.clear {clear: both;}

.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;
}