@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.5em;
}
.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: 33.3%;
	text-indent: -9999px;
	position: fixed;
	bottom: 0;
	z-index: 100;
}
.contact li.contact__mail { left: 0%;}
.contact li.contact__reserve { left: 33.3%;}
.contact li.contact__tel { left: 66.6%;}
.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__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: 18%;}
.header .header__nav__menu li:nth-child(2) { width: 14.5%;}
.header .header__nav__menu li:nth-child(3) { width: 14.5%;}
.header .header__nav__menu li:nth-child(7) { width: 13%;}
.header .header__nav__menu li:nth-child(8) { width: 13%;}
.header .header__nav__menu li:nth-child(9) { width: 13.5%;}
.header .header__nav__menu li:nth-child(10) { width: 13.5%;}
.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 {
	line-height: 1.3;
}
.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;
}
.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: 4em;
    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 #427FC7;
	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:nth-of-type(5) caption {border-image: linear-gradient(to bottom, #7B97E6 0%, #7B97E6 50%, #B473BB 50%, #B473BB 100%) 1;}
.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 .5%;
	color: #B20808;
	font-size: 1.4em;
	letter-spacing: -0.06em;
	width: 26.5%;
}
.sec__price__tbl td span {
	font-size: 0.5em;
}

.sec .dr {
	position: relative;
}
.sec .dr figcaption {
	border-left: .3em solid #D0A289;
	padding-left: .2em;
	text-align: left;
}
.sec .dr figcaption img {
	width: 16em;
}

.sec .dr .dr__ph {
	position: absolute;
	z-index: -1;
	right: -5.5em;
	width: 16em;
	top: -10em;
}

.sec .paybox {
    border-radius: 0.4em;
    border: 1px solid #D9CABF;
    margin: 1.5em auto 1em;
}
.sec .paybox dt {
	background: #D9CABF;
    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: #D9CABF;
    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: 6.8em;
	top: -4em;
	left: -.7em;
}
#sec__intro .sec__tx__unit--m .sec__tx__unit__ph {
	width: 9em;
	top: -.5em;
	left: -2em;
}
#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;
	background-image: radial-gradient(circle, #999 1px, transparent 1px);
    background-position: -1px 0;
    background-repeat: repeat;
    background-size: 3px 2.5em;
    line-height: 2.5em;
    position: relative;

}
#sec__intro .sec__intro__pricetbl th,
#sec__intro .sec__intro__pricetbl td {
	border-top: 1px solid #E19FB8;
	line-height: 1;
	padding: 0.4em 0;
}
#sec__intro .sec__intro__pricetbl th strong,
#sec__intro .sec__intro__pricetbl td strong {
	display: inline-block;
	background: #FDFCF8;
	padding: 0 0.3em 0 0.5em;
	padding: 0 0.3em 0 1.2em;
	z-index: 1;
	position: relative;
}
#sec__intro .sec__intro__pricetbl td strong {
	padding: 0 calc(.2em + 5%) 0 .2em;
}
#sec__intro .sec__intro__pricetbl th {
	color:#B1225D;
	text-align: left;
	font-size: 1.05em;
/*	padding-left: 4%;*/
	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.4em;
	text-align: right;
	letter-spacing: -0.06em;
}
#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: 4em;
}
.sec__tx .sec__tx__ttl strong {
	display: block;
	margin: 1.5em auto .7em;
	width: min(100%,23em);
}
.sec__tx .sec__tx__ttl strong img {
	height: 4.2em;
}
.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__m22 {
	background: url(../img/sec__m22_bg.jpg) no-repeat calc(50% + 8em) 0;
	background-size: 15em auto;
}
#sec__m22 .sec__tx__ttl strong img {
	margin-right: 6em;
}
#sec__m22 .sec__tx__rcmd dd::before {
	background: url(../img/sec__tx__ph-m-bg.jpg) 100% 3.5em no-repeat;
	background-size: 100% auto;
	right: -2em;
	top: 0em;
	width: 13em;
	height: 25em;
}
#sec__m22 .sec__tx__pt dd p strong {
	display: inline-block;
	background: #CFB49D;
	color: #FFF;
	padding: .2em 1em;
	border-radius: .2em;
	margin: .7em 0 .3em;
}
#sec__m22 .sec__tx__pt dd:first-of-type figure:nth-of-type(n + 2) {
	margin-top: 1.3em;
}
#sec__m22 .sec__tx__pt dd:first-of-type figure img {
	width: min(90%, 500px);
}
#sec__m22 .sec__tx__pt dd figcaption {
	background: #D1C5B6;
	color: #FFF;
	padding: .3em 0;
	width: min(94%, 500px);
	margin: 0 auto;
}
#sec__m22 .sec__tx__pt dd p.f--small {
	border: 1px dashed #9C8466;
	padding: .5em 2%;
}
#sec__m22 .sec__price__tbl {
	margin-bottom: .8em;
}
#sec__m22 .sec__price__tbl caption {
	border-left: none;
	text-align: center;
	padding: 2em 0 5.8em 5.5em;
	margin: 1em 0 0;
	position: relative;
	background: url(../img/sec__price__cap_m22.png) no-repeat calc(50% + 2.7em) 6.8em;
	background-size: auto 3.5em;
}
#sec__m22 .sec__price__tbl caption::before {
	position: absolute;
	left: 0;
	top: 0;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	transform: scale(-1, 1);
	background: url(../img/sec__tx__ph-m-bg.jpg) no-repeat calc(50% + 7.2em) 0;
	background-size: 9.5em auto;
	z-index: -1; 
}
#sec__m22 .sec__price__tbl caption img {
	height: 3.7em;
}

#sec__pico {
	background: url(../img/sec__pico_bg.jpg) no-repeat calc(50% + 6.5em) .7em;
	background-size: 15em auto;
}
#sec__pico .sec__tx__ttl strong img {
	margin-right: 6.5em;
}
#sec__pico section {
	margin: 3em 0 2em;
}
#sec__pico p q {
	display: block;
	margin: 0.6em 0;
}
#sec__pico p q::before,
#sec__pico p q::after {
	display: none;
}
#sec__pico p q span:nth-of-type(1) { color: #F696BB;}
#sec__pico p q span:nth-of-type(2) { color: #7B97EA;}
#sec__pico p q span:nth-of-type(3) { color: #BA75C0;}
#sec__pico .sec__pico__linkbtn {
	margin: 0 auto 5em;
	justify-content: space-between;
	display: flex;
	flex-wrap: wrap;
}
#sec__pico .sec__tx__rcmd dd::before {
	background: url(../img/sec__tx__ph-p-bg.jpg) 100% .5em no-repeat;
	background-size: 100% auto;
	right: -1.4em;
	top: 0;
	width: 10.5em;
	height: 21em;
}
#sec__pico .sec__pico__linkbtn li {
	width: 92%;
	margin: .5em auto;
}
#sec__pico .sec__pico__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__pico .sec__pico__linkbtn li:nth-of-type(1) a {
	background: #F58CB6;
}
#sec__pico .sec__pico__linkbtn li:nth-of-type(2) a {
	background: #7B97EA;
}
#sec__pico .sec__pico__linkbtn li:nth-of-type(3) a {
	background: #BA75C0;
}
#sec__pico .sec__pico__linkbtn li a strong {
	font-weight: bold;
	margin-right: 1%;
}
#sec__pico .sec__pico__linkbtn li a::after,
#sec__pico .sec__pico__linkbtn li a span::after {
	content: "";
	display: inline-block;
	vertical-align: text-top;
}
#sec__pico .sec__pico__linkbtn li a span::after {
	width: 1.05em;
	height: 1.05em;
	border-radius: 50%;
	background: #FFF;
	margin: 0 0 0 0.3em;
}
#sec__pico .sec__pico__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__pico .sec__pico__linkbtn li:nth-of-type(1) a::after {
	border-color: #F58CB6 transparent transparent transparent;
}
#sec__pico .sec__pico__linkbtn li:nth-of-type(2) a::after {
	border-color: #7B97EA transparent transparent transparent;
}
#sec__pico .sec__pico__linkbtn li:nth-of-type(3) a::after {
	border-color: #BA75C0 transparent transparent transparent;
}
#sec__pico .sec__tx__pt figcaption {
	display: block;
	width: 7em;
	text-align: center;
	background: #A7835C;
	color: #FFF;
	padding: 0.2em 0.5em;
	border-radius: 0.2em;
	margin-bottom: 0.8em;
}
#sec__pico .sec__tx__pt dd:first-of-type figure:nth-of-type(3) figcaption {
	background: #ED84BC;
}
#sec__pico .sec__tx__pt dd:first-of-type figure {
	width: min(96%,600px);
}
#sec__pico h3 {
	border-radius: 2em;
	padding: .5em 0 .6em;
	width: min(65%, 600px);
	margin: .5em auto;
}
#sec__pico h3 img {
	height: 1em;
}
#sec__pico figcaption.gf--nt {
	color: #FFF;
	border-radius: 0.5em 0.5em 0 0;
	padding: 0.5em 0;
	width: min(100%, 400px);
	margin: auto;
}
#sec__pico_s h3,
#sec__pico_s .sec__tx__unit__ttl,
#sec__pico_s figcaption.gf--nt {
	background: #EA7EAB;
}
#sec__pico_t h3,
#sec__pico_t .sec__tx__unit__ttl,
#sec__pico_t figcaption.gf--nt {
	background: #7190E1;
}
#sec__pico_f h3,
#sec__pico_f .sec__tx__unit__ttl,
#sec__pico_f figcaption.gf--nt {
	background: #AE6AB5;
}
#sec__pico_w h3 {
	background: #C46083;
	margin-bottom: 1em;
}
#sec__pico h4 img {
	height: 1.25em;
	margin-bottom: 1em;
}
#sec__pico .sec__tx__unit__ph {
	width: 7.5em;
	bottom: 0;
	left: -1.2em;
}
#sec__pico .sec__tx__unit .sec__tx__unitwrap {
	padding-bottom: 1em;
}
#sec__pico .sec__price__tbl {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
#sec__pico .sec__price__tbl th:not(.f--small) {
	padding-left: 6em;
	text-align: left;
	letter-spacing: -.1em;
}
#sec__pico_s .sec__price__tbl th span.f--tiny {
	margin-left: -.5em;
}
#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: #D9CABF;
	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 {
	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;
	margin-top: 1.5em;
}
#sec__price .sec__price__minors img {
	vertical-align: middle;
	width: 5em;
	margin-right: .5em;
}

#sec__faq h4 {
	text-align: left;
	border-left: .3em solid #427FC7;
	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;
	margin: 0 auto 1.3em;
	background-repeat: no-repeat, no-repeat !important;
	background-size: auto 130%, cover !important;
	background: url(../img/dr-ph.png),url(../img/sec__dr__bg.jpg);
	background-position: calc(100% + 3.5em) .3em, 0 0;
	padding: 3em 15% 2em 0;
	color: #c1084d;
}
#sec__dr .sec__dr__msg.nara {
	background: url(../img/dr-ph2.png),url(../img/sec__dr__bg.jpg);
	background-position: calc(100% + 2.5em) .3em, 0 0;
}
#sec__dr .sec__dr__prof {
	text-align: left;
	margin-bottom: 1.5em;
}
#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 .inner > img {
	width: min(65%, 300px);
	margin: auto;
}

#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: 14em;
	margin: 0 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;
	line-height: 1.8;
}
#sec__info .sec__info__tbl th {
	width: 20%;
	min-width: 4.8em;
	padding-left: 1%;
	position: relative;
}
#sec__info .sec__info__tbl tr:last-of-type th {
	letter-spacing: .5em;
}
#sec__info .sec__info__tbl th::after {
	position: absolute;
	content: "：";
	right: .1em;
	letter-spacing: 0 !important;
}
#sec__info .ta--center {
	margin-top: 1.5em;
}
#sec__info .ta--center span {
	display: inline-block;
}
#sec__info #sec__info__access {
	color: #BE9F8B;
	font-size: 1.1em;
	display: block;
	margin: 1.5em 0 0.9em;
	line-height: 1.5;
}
#sec__info iframe {
    margin: 0 auto 1em;
    width: 100%;
    height: 53vw;
    max-height: 360px;
}
#sec__info .sec__info__ph {
	margin: auto;
	width: min(90%,600px);
}

#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: #DCBCAB;
	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__pico p q {
	font-size: .98em;
	letter-spacing: -0.05em;
	margin: 0.6em -2% 0.6em -.2em;
}
#sec__pico_s .sec__price__tbl th {
	padding-left: 5.5em;
	letter-spacing: -.18em !important;
}
#sec__pico_s .sec__price__tbl th span {
	letter-spacing: -.05em !important;
	margin-left: -.3em;
}
#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;
}
}


@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__tx__unit--m .sec__tx__unit__ph {
	left: -1em !important;
}
#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 img {
	margin-right: 0 !important;
}
.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__m22 {
	background: url(../img/sec__m22_bg.jpg) no-repeat calc(50% + 13em) 1em;
	background-size: 17em auto;
}
#sec__m22 .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-m-bg.jpg) 0 3em no-repeat;
	background-size:auto, 9em auto;
	height: calc(100% + 1em);
}
#sec__pico {
	background: url(../img/sec__pico_bg.jpg) no-repeat calc(50% + 11em) 2em;
	background-size: 17em auto;
}
#sec__pico .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-p-bg.jpg) 100% 0 no-repeat;
	background-size:auto, 8em auto;
	height: 100%;
}
#sec__pico .sec__pico__linkbtn li {
	font-size: min(1.5vw,.8em);
	width: 32.5%;
	margin: 1em 0;
}
#sec__pico .sec__tx__unit__ph {
	font-size: 1.05em;
}
#sec__pico .sec__price__tbl th:not(.f--small) {
	padding-left: 12em;
}
#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% + 11em) .5em, 0 0;
	padding-right: 4em;
	padding-top: 2em;
	font-size: 1.2em;
}
#sec__dr .sec__dr__msg.nara {
	background-position: calc(50% + 10.5em) .5em, 0 0;
}
#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;}

.wd40 { width: 40%;}
.wd70 { width: 70%;}
.wd80 { width: 80%;}
.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;
}