@charset "utf-8";
/*
Theme Name: レイラニデンタルサロン
Theme URI: https://www.lailani-ds.com/
Description: Versions 1.0.x
Version: 1.0
Author: Dental Promotion
Tags: mantle color, variable width, two columns, widgets

This is just a basic layout, with only the bare minimum defined.
Please tweak this and make it your own. :)
*/

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

div.ticker{width: calc(100% - 20px);}

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, dialog, figure, footer, header,hgroup, menu, nav, section,time, mark, audio, video {	margin:0;	padding:0;	border:0;	outline:0;	font-size:100%;	vertical-align:baseline;	background:transparent;}body {	line-height:1;}article, aside, dialog, figure, footer, header,hgroup, nav, section {	display:block;}nav ul {	list-style:none;}blockquote, q {	quotes:none;}blockquote:before, blockquote:after,q:before, q:after {	content:'';	content:none;}a {	margin:0;	padding:0;	border:0;	font-size:100%;	vertical-align:baseline;	background:transparent;}ins {	background-color:#ff9;	color:#000;	text-decoration:none;}mark {	background-color:#ff9;	color:#000;	font-style:italic;	font-weight:bold;}del {	text-decoration: line-through;}abbr[title], dfn[title] {	border-bottom:1px dotted #000;	cursor:help;}table {	border-collapse:collapse;	border-spacing:0;}hr {    display:block;    height:1px;    border:0;    border-top:1px solid #cccccc;    margin:1em 0;    padding:0;}input, select {	vertical-align:middle;}



html{
/*    max-width: 1440px;*/
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 768px) {
html{
	font-size:62.5%;
	-webkit-text-size-adjust: 100%;
}
}


body{
	width: 100%;
	margin:0;
	padding:0;
	text-align:center;
	background: #fff;
	color: #000;
	font-family: "Yu Gothic", YuGothic, "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Godthic Pro W3", HiraKakuPro-W3, Osaka,  "ＭＳ Ｐゴシック", sans-serif;
	font-size: 16px;
	line-height: 1.8em;
	letter-spacing: 1.6pt;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

	animation: fadeIn 2s ease 0s 1 normal;
	-webkit-animation: fadeIn 2s ease 0s 1 normal;
}
.lp_body{
	background: #f8f8ed;
}
@media screen and (max-width: 768px) {
body {
	min-width: 100%;
	font-size: 1.6rem;
	position: relative;
}
}

h1,h2,h3,h4,h5,h6{
	margin: 0;
	font-weight: 100;
}

*, *:before, *:after{
	box-sizing: border-box;
}

::selection {
	background: rgba(53,138,170,1);
	color: rgba(255,255,255,1);
	text-shadow: 1px 1px 2px rgba(240, 240, 200, 1);
}
::-moz-selection {
	background: rgba(53,138,170,1);
	color: rgba(255,255,255,1);
	text-shadow: 1px 1px 2px rgba(240, 240, 200, 1);
}

a{
	text-decoration:none;
	outline:none;

	-webkit-backface-visibility: hidden;
    backface-visibility: hidden;

	-webkit-transition:all .3s linear;
	-moz-transition:all .3s linear;
	transition:all .3s linear;
}
a:link, a:visited{
	color: #12c;
}
a:active, a:hover{
	color: #538076;
	text-decoration: none;
}

a:link img, a:visited img{
	-webkit-transition: opacity .5s ease-out;
	-moz-transition: opacity .5s ease-out;
	-ms-transition: opacity .5s ease-out;
	transition: opacity .5s ease-out;
}
.swiper-container a:link img, .swiper-container a:visited img{
	-webkit-transition: opacity .5s ease-out;
	-moz-transition: opacity .5s ease-out;
	-ms-transition: opacity .5s ease-out;
	transition: opacity .5s ease-out;
}

.swiper-container a:hover img{
	opacity: 1;
	-webkit-opacity: 1;
	-moz-opacity: 1;
	filter: alpha(opacity=100);	/* IE lt 8 */
	display: inline-block;
	backface-visibility: hidden;
}
a:hover img{
	opacity: .7;
	-webkit-opacity: .7;
	-moz-opacity: .7;
	filter: alpha(opacity=70);	/* IE lt 8 */
	-ms-filter: "alpha(opacity=70)"; /* IE 8 */
	display: inline-block;
	backface-visibility: hidden;
}

p{margin:0;}
table{border-collapse:collapse;}
td{vertical-align:middle;}
i,em{font-style:normal;}
img{
    max-width: 100%;
    height: auto;
    border:none;
    vertical-align:middle;
}

ul, ol, li{
	margin:0;
	padding:0;
	list-style:none;
}

.cf{zoom:100%;}
.cf:after{
    content:"";
    clear:both;
    height:0;
    display:block;
    visibility:hidden;
}

.udl{
	text-decoration:underline;
}
.oz{
	overflow: hidden;
	_zoom: 1;
}

.al{text-align:left;}
.ac{text-align:center;}
.ar{text-align:right;}

.imgL, .s_imgL, .txtL{float:left;}
.imgR, .s_imgR, .txtR{float:right;}
.co{clear:both;}


.fwb{font-weight:700;}

.su{
    opacity:0;
    transform: translateY(8px);
    -ms-filter: blur(2px);
    filter: blur(2px);
}
.fiu{
    transition: all .2s ease-in;
    transform: translateY(0);
    opacity: 1 !important;
    -ms-filter: blur(0);
    filter: blur(0);
}


.w10{width: 10%;margin-left: auto;margin-right: auto;}.w20{width: 20%;margin-left: auto;margin-right: auto;}
.w30{width: 30%;margin-left: auto;margin-right: auto;}
.w40{width: 40%;margin-left: auto;margin-right: auto;}
.w50{width: 50%;margin-left: auto;margin-right: auto;}
.w60{width: 60%;margin-left: auto;margin-right: auto;}
.w70{width: 70%;margin-left: auto;margin-right: auto;}
.w80{width: 80%;margin-left: auto;margin-right: auto;}
.w90{width: 90%;margin-left: auto;margin-right: auto;}
@media screen and (max-width: 767px) {
.w20,.w30,.w40,.w50,.w60,.w70,.w80,.w90{width: 100%;}}



.mt8{margin-top:8px;}
.mt16{margin-top:16px;}
.mt24{margin-top:24px;}
.mt32{margin-top:32px;}
.mt40{margin-top:40px;}
.mt72{margin-top:72px;}

.mb0{margin-bottom:0!important;}
.mb4{margin-bottom:4px;}
.mb8{margin-bottom:8px;}
.mb16{margin-bottom:16px;}
.mb24{margin-bottom:24px;}
.mb32{margin-bottom:32px;}
.mb40{margin-bottom:40px;}
.mb48{margin-bottom:48px;}
.mb56{margin-bottom:56px;}
.mb64{margin-bottom:64px;}
.mb72{margin-bottom:72px;}
.mb80{margin-bottom:80px;}
.mb88{margin-bottom:88px;}
.mb96{margin-bottom:96px;}
.mb120{margin-bottom:120px;}
.mb136{margin-bottom:136px;}
.mb144{margin-bottom:144px;}
.mb160{margin-bottom:160px;}
.mb200{margin-bottom:200px;}
@media screen and (max-width: 767px) {
}
.pt16{padding-top:16px;}
.pt24{padding-top:24px;}
.pt32{padding-top:32px;}
.pt40{padding-top:40px;}


.fwb{font-weight: 700;}
.fs12{font-size: 12px;}
.fs13{font-size: 13px;}
.fs14{font-size: 14px;}
.fs15{font-size: 15px;}
.fs17{font-size: 17px;}
.fs18{font-size: 18px;}
.fs19{font-size: 19px;}
.fs20{font-size: 20px;}
.fs21{font-size: 21px;}
.fs22{font-size: 22px;}
.fs23{font-size: 23px;}
.fs24{font-size: 24px;}

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



.fb-like-box,.fb-like-box span, .fb-like-box iframe {
 width: 100% !important;
}

.ic_grn{
    color: #659a6c;
}
.ic_yel{
    color: #d9b12a;
}
.ic_blue{
    color: #2a4793;
}
.ic_pink{
    color: #c1617d;
}
.fc_red{
    color: #F00;
}
.fc_gold{
    color: #a67e33;
}
.more a{
    border-radius: 24px;
    position: relative;
	display: block;
    margin: auto;
    padding: 16px 8px;
/*    background: #9dd99b;*/
/*    background: #47619d;*/
    background-image: linear-gradient(180deg, #47619d, #1d315f);
    color: #fff;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.2;
}
.more a::after{
    content: '';
    border: 0;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg);
}
.more a:hover{
    background-image: linear-gradient(180deg, #3b5287, #1d315f);
    color: #fff;
}
@media screen and (max-width: 768px) {
.more a{
    width: 100%;
}
}



.upper_btns{
    width: 100%;
    max-width: 1080px;
    margin: 0 auto 24px;
    padding-top: 16px;
}
.upper_btns .btns{
    width: calc(50% - 4px);
}
.upper_btns .btn_l a{
    display: block;
    padding: 8px;
    background: #e5e5e5;
    color: #000;
    letter-spacing: 0;
    text-align: center;
    border: 1px solid #c9c9c9;
    border-radius: 8px;
}
.upper_btns .btn_l a:hover{
    background: #c7bcd1;
}
.upper_btns .btn_r a{
    display: block;
    padding: 8px;
    background: #e0e9f5;
    color: #000;
    letter-spacing: 0;
    text-align: center;
    border: 1px solid #c9c9c9;
    border-radius: 8px;
}
.upper_btns .btn_r a:hover{
    background: #aabdd6;
}
@media screen and (max-width: 1280px) {
.upper_btns{
    width: 92%;
    max-width: 960px;
    margin-right: auto;
    margin-left: auto;
}
@media screen and (max-width: 540px) {
.upper_btns{
    width: 92%;
    max-width: 960px;
    margin-right: auto;
    margin-left: auto;
}
}
}



.upper_banners{
    width: 100%;
    max-width: 1080px;
    margin-right: auto;
    margin-left: auto;
}
@media screen and (max-width: 540px) {
.upper_banners{
    width: 92%;
}
}


a.icon_pdf{
    padding-right: 24px;
	background: url(img/common/svg/pdf.svg) no-repeat right;
    background-size: 16px auto;
}

.spc{
	display: none;
}
@media screen and (max-width: 768px) {
.dn{
	display: none;
}
.spc{
	display: inherit;
}
}


.clickable{
	position: relative;
	-webkit-transition:all .5s linear;
	-moz-transition:all .5s linear;
	transition:all .5s linear;
}
.clickable:hover{
	color:rgba(0,169,158,.7);
}
.clickable img{
	-webkit-transition:all .5s linear;
	-moz-transition:all .5s linear;
	transition:all .5s linear;
}
.clickable:hover img{
	opacity: .5;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
}




header{
	position: -webkit-sticky;
	position: sticky;
	width: 100%;
	text-align: left;
    top: 0;
    z-index: 9800;
    background: #fff;
}
#upper{
    position: relative;
    width: 100%;
    max-width: 1280px;
    height: 200px;
    margin: auto;
    transition: all .5s ease-in;
}
/* 休診記載の高さ
#upper{
    position: relative;
    width: 100%;
    height: 280px;
    margin: auto;
    transition: all .5s ease-in;
    background: #fff;
}
*/
#logo{
    position: absolute;
    width: 186px;
    height: 114px;
    margin: auto;
    top: 10px;
    left: 0;
    right: 0;
    text-align: center;
}
.kokuchi{
    position: absolute;
    width: 100%;
    height: 56px;
    margin: 0 auto;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 20px;
    font-weight: 600;
    color: deepskyblue;
}
#upper_phone{
    position: absolute;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 320px;
    height: 80px;
    margin: auto 0;
    top: 10px;
    right: 50px;
}
.attention{
    width: 240px;
}
.ig_icon_for_pc{
    width: 56px;
    padding: 13px 0 0;
}
@media screen and (max-width: 1024px) {
#upper{
    height: 140px;
}
.attention{
    width: 192px;
}
.ig_icon_for_pc{
    width: 56px;
}
@media screen and (max-width: 1023px) {
#upper_phone{
    display: none;
}
@media screen and (max-width: 540px) {
header{
    height: 100px;
}
#upper{
    height: 100px;
}
/* 休診記載の高さ
header{
    height: 140px;
}
#upper{
    height: 140px;
}
*/
#logo{
    width: 128px;
    height: 80px;
}
.kokuchi{
    height: 30px;
    bottom: 10px;
    font-size: 16px;
    letter-spacing: 0;
}
@media screen and (max-width: 320px) {
.kokuchi{
    font-size: 13px;
}
}
}
}
}


#reserve{
    position: fixed;
    width: 40px;
/*    height: 300px;*/
    top: 0;
    right: 0;
    z-index: 9900;
    border: 1px solid rgba(255,200,80,1);
}
@media screen and (max-width: 1024px) {
#reserve{
    position: fixed;
    width: 40px;
/*    height: 300px;*/
    top: 220px;
    right: 0;
}
@media screen and (max-width: 768px) {
#reserve{
    position: fixed;
    width: 40px;
/*    height: 300px;*/
    top: 220px;
    right: 0;
}
@media screen and (max-width: 540px) {
#reserve{
    top: 141px;
}
@media screen and (max-width: 360px) {
#reserve{
    width: 32px;
}
@media screen and (max-width: 320px) {
#reserve{
    top: 110px;
}
}
}
}
}
}
.scroll-down{
  display: none;
}




.ig_icon,
.phone_icon{
    display: none;
}

@media screen and (max-width: 540px) {
.ig_icon{
    display: block;
    position: fixed;
    left: 10px;
	top: 10px;
	width: 36px;
	height: 36px;
	z-index: 9999;
    padding: 0;
}
.ig_icon a{
	display: block;
	padding: 6px 0 0;
	text-align: center;
}
.phone_icon{
    display: block;
    position: fixed;
    left: 50px;
	top: 6px;
	width: 36px;
	height: 36px;
	z-index: 9999;
}
.phone_icon a{
	display: block;
	padding: 8px 0 0;
	text-align: center;
}
}





#top-head .upper{
    float: right;
    width: 390px;
}
#top-head .upper dt{
    float: left;
    width: 217px;
    padding: 16px 0 0;
}
#top-head .upper dd{
    float: left;
    width: 172px;
    text-align: right;
}





#gnav{
    position: absolute;
	width: 100%;
    max-width: 1280px;
	margin: 8px auto;
    padding: 0;
/*	background: rgba(255,255,255,1);*/
    left: 0;
    right: 0;
    bottom: 0;
}
#gnav nav{
	width: 100%;
	margin: 0;
}
#gnav nav ul{
	position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
	padding: 0;
    font-weight: 700;
}
#gnav nav ul::after {
	display: block;
	clear: both;
	content: '';
}
#gnav nav ul li{
	position: relative;
	width: 16.666%;
	letter-spacing: 0;
    text-align: center;
}
#gnav nav ul li:not(:first-child) {
	border-left: none;
}
#gnav nav ul li a{
	padding: 8px 0;
	color: #333;
	text-align: center;
	display: block;
}
#gnav nav ul li a:hover,
#gnav nav ul li a.ov{
	padding: 8px 0;
    background: #3d61a2;
	color: #fff;
	text-decoration: none;
}
#gnav nav ul ul{
	position: absolute;
	top: 100%;
	left: -1px;
    border-left: 0;
}
#gnav nav ul ul li{
	float: none;
	width: 240px;
    border: 0;
}
#gnav nav ul ul li:not(:first-child) {
	border-top: none;
}
#gnav nav ul ul ul{
	position: absolute;
	top: -2px;
	left: 100%;
}
#gnav nav ul ul{
	visibility: hidden;
	opacity: 0;
	transition: .2s ease-in-out;
	transform: translateY(-20px);
	z-index: 50;
    letter-spacing: 0;
}
#gnav nav ul li:hover > ul {
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
}
#gnav nav ul li li a{
	padding: 8px;
    background: #4e72b4;
    color: #fff;
	text-decoration: none;
    text-align: left;
}
#gnav nav ul li li a:hover{
	padding: 8px;
    background: #3d61a2;
	color: #fff;
}
#gnav nav ul li li ul,
#gnav nav ul li li li{
    width: 100%;
}
#gnav > nav > ul > li:nth-child(3) > ul > li:nth-child(10) > ul{
    width: 460px;
}
@media screen and (max-width: 1023px) {
#gnav{
    display: none;
}
}


@media screen and (max-width: 768px) {
#header{
	margin: 0;
/*	padding: 0 0 2px;*/
	text-align: left;
	display: inherit;
    background: rgba(255,255,255,1);
}
#top-head{
	width: 100%;
    margin: 0;
	padding: 0;
    line-height: 1;
	top: 0;
	position: absolute;
    z-index: 999;
	transition: .5s;
}
#top-head a{
    color: #1c6c36;
    text-decoration: none;
}
#top-head .inner{
	width: 100%;
	padding: 0;
    position: relative;
}
#top-head .logo{
	position: absolute;
	left: 10px;
	top: 10px;
}
#top-head .logo img{
	max-width: 180px;
	height: auto;
}
#global-nav{
	width: 100%;
	padding: 0;
    background: #2a4995;
	text-align: center;
	top: -500px;
	position: absolute;
	-webkit-transition: .7s ease-in-out;
	-moz-transition: .7s ease-in-out;
	transition: .7s ease-in-out;
}
nav{
	padding-bottom: 0;
	border-bottom: 0;
}
nav ul{
	width: 100%;
	margin: auto;
	padding: 0;
	border-left: 0;
}
nav ul ul{
    padding: 8px;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
#global-nav ul{
	width: 100%;
	list-style: none;
	position: static;
	right: 0;
	bottom: 0;
}
#global-nav ul li{
    position: static;
}
#global-nav ul li a{
	width: 100%;
	display: block;
	color: #fff;
    border-bottom: 1px dashed;
	padding: 16px 0;
}
#global-nav ul li li a{
	padding: 4px 0;
}
#mobile-head{
	width: 100%;
	height: 120px;
	z-index: 999;
	position: relative;
}
#top-head.fixed{
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 0;
    height: 64px;
    -webkit-overflow-scrolling: touch;
    background: rgba(255,255,255,1);
    transition: top .65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
    z-index: 9999;
}
#nav-toggle{
	padding: 4px 0 0;
	text-align: center;
	display: block;
	position: absolute;
	right: 10px;
	top: 16px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 999;
}
#nav-toggle div{
    position: relative;
}
#nav-toggle span{
    display: block;
    position: absolute;
    height: 2px;
    width: 90%;
    background: #2a4793;
    left: 2px;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
}
#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 10px;
}
#nav-toggle span:nth-child(3) {
    top: 20px;
}
.open #nav-toggle span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open #nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #nav-toggle span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
.open #global-nav {
	-moz-transform: translateY(700px);
	-webkit-transform: translateY(700px);
	transform: translateY(700px);
    z-index: 9999;
}
.wth{
    position: absolute;
    top: 56px;
    left: 0;
    right: 0;
    width: 96%;
    margin: auto;
    letter-spacing: 0;
}
.wth a{
    position: absolute;
    top: 10px;
    width: 100%;
    display: block;
    padding: 1em;
    background: #bb0083;
    color: #e4d68f !important;
    border: 1px solid;
    text-align: center;
}
.wth a:hover{
    background: #82045c;
}

@media screen and (max-width: 414px) {
#mobile-head{
	height: 64px;
}
@media screen and (max-width: 320px) {
.wth{
    top: 56px;
    left: 0;
    font-size: 15px;
    letter-spacing: 0;
}
#top-head .logo img{
	max-width: 160px;
	height: auto;
}
}
}
}


#upper_toggle{
    display: none;
}
.modal_wrap{
    display: none;
}
@media screen and (max-width: 1024px) {
#upper_toggle{
    display: block;
    position: fixed;
    width: 60px;
    height: 60px;
    top: 10px;
    right: 10px;
    z-index: 9999;
    cursor: pointer;
    background: #eee;
}
#upper_toggle span{
    display: block;
    position: absolute;
    height: 5px;
    width: 80%;
    margin: auto;
    background: #333;
    left: 0;
    right: 0;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
#upper_toggle span:nth-child(1) {
    top: 15px;
}
#upper_toggle span:nth-child(2) {
    top: 28px;
}
#upper_toggle span:nth-child(3) {
    top: 42px;
}
.modal_wrap{
    display: block;
}
.modal_wrap .box{
    float: left;
    width: 33.333%;
}
.modal_wrap input{
    display: none;
}
.modal_overlay{
    display: flex;
    justify-content: center;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.7);
    opacity: 0;
    transition: opacity 0.5s, transform 0s 0.5s;
    transform: scale(0);
}
.modal_trigger{
    position: absolute;
    width: 100%;
    height: 100%;
}
.modal_content{
    width: 100%;
    height: 100%;
    overflow-y: auto;
    margin: 0 auto;
    padding: 3em 1em 0;
    box-sizing: border-box;
    background: #fff;
    line-height: 1.4em;
    transform: translateY(-10%);
    transition: .5s;
}
.modal_content .logo{
    width: 80%;
    max-width: 320px;
    margin: auto;
    margin-bottom: 24px;
    text-align: center;
}
.close_button{
    position: absolute;
    top: 14px;
    right: 16px;
    font-size: 36px;
    cursor: pointer;
}


.tab{
    width: 100%;
    margin: 0 auto 24px;
    border-bottom: 1px solid #ccc;
}
.tab li{
    width: calc(50% - 4px);
    padding: 16px 0;
    color: #5c5737;
    text-align: center;
    font-weight: bold;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
}
.tab li:nth-child(1){
    background: #cfc381;
}
.tab li:nth-child(2){
    background: #2a4793;
    color: #fff;
}
.tab_sub{
    width: 100%;
    margin: 0;
    padding:0;
    display: flex;
    list-style: none;
}
.tab_sub li{
    width: calc(33% - 2px);
    margin-bottom: 4px;
    text-align: center;
}
.tab_sub li.active{
}
.list{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 24px;
}
.list .inner,
.list .thirdtree,
.list .inner table{
    display:none;
}
.list .inner.active{
    display: block;
}
.list .inner .thirdtree.active,
.list .inner table.active{
    display: table;
}
.childnav{
    margin: 16px 0;
    padding: 24px 16px;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #e9e9d8;
    overflow-y: auto;
}
.childnav_box{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}
.childnav_box .grid{
    width: calc(33% - 2px);
    margin-bottom: 3px;
}
.childnav_box::after{
    content: "";
    display: block;
    width: calc(33% - 2px);
}







.modal_wrap input:checked ~ .modal_overlay{
    opacity: 1;
    transform: scale(1);
    transition: opacity .3s;
}
.modal_wrap input:checked ~ .modal_overlay .modal_content{
    transform: scale(1);
}
.modal_wrap p {
    margin-bottom: 8px;
}
#modal_sns{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 50%;
    margin: auto;
    margin-bottom: 40px;
}
.modal_nav{
    position: relative;
}

.modal_nav label{
    position: relative;
    display: block;
    margin: 0 0 5px;
    padding: 1em;
    background: linear-gradient(to bottom, #2c3757, #1a2134);
    color: #fff;
    border: 1px solid #1a2134;
    border-radius: 1px;
    cursor :pointer;
    transition: all .5s ease;
    font-weight: bold;
    letter-spacing: 0;
}
.modal_nav label a{
    display: block;
    color :#fff;
}
.modal_nav ol{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: start;
    letter-spacing: 0;
}
.modal_nav ol li{
    width: 45%;
    height: 0;
    margin-left: 1em;
    overflow: hidden;
    text-align: left;
    transition: all .5s;
}
.modal_nav label:nth-of-type(2)::after,
.modal_nav label:nth-of-type(4)::after{
    position: absolute;
    top: 0;
    bottom: 0;
    right: 4%;
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: auto;
    vertical-align: middle;
    box-sizing: border-box;
    border-right: solid 2px #fff;
    border-bottom: solid 2px #fff;
    transform: rotate(45deg);
    transition: 0.2s;
}
#mn_bar_01:checked ~ #mng_01 li,
#mn_bar_02:checked ~ #mng_02 li,
#mn_bar_03:checked ~ #mng_03 li,
#mn_bar_04:checked ~ #mng_04 li{
    height: 36px;
/*    height: 54px;*/
    opacity: 1;
}
#mn_bar_01:checked ~ #mng_01 li:nth-child(n-2),
#mn_bar_02:checked ~ #mng_02 li:nth-child(n-2){
    margin-top: .5em;
}
/*#mn_bar_02:checked ~ #mng_02 li:nth-child(15),*/
#mn_bar_02:checked ~ #mng_02 li:nth-child(17),
#mn_bar_02:checked ~ #mng_02 li:nth-child(18){
    height: 56px;
}

.modal_nav ol li::before{
    content: "- ";
    display: inline;
}
@media screen and (max-width: 540px) {
#upper_toggle{
    width: 40px;
    height: 40px;
}
#upper_toggle span{
    height: 3px;
    width: 60%;
}
#upper_toggle span:nth-child(1) {
    top: 10px;
}
#upper_toggle span:nth-child(2) {
    top: 18px;
}
#upper_toggle span:nth-child(3) {
    top: 26px;
}

#modal_sns{
    width: 100%;
    margin-bottom: 16px;
}
.modal_nav ol li{
    width: 100%;
}
#upper_toggle{
    top: 8px;
    right: 6px;
}
#mn_bar_01:checked ~ #mng_01 li:nth-child(n-3),
#mn_bar_02:checked ~ #mng_02 li:nth-child(n-3),
#mn_bar_03:checked ~ #mng_03 li:nth-child(n-3),
#mn_bar_04:checked ~ #mng_04 li:nth-child(n-3){
    margin-top: 0;
}
#mn_bar_01:checked ~ #mng_01 li:first-of-type,
#mn_bar_02:checked ~ #mng_02 li:first-of-type,
#mn_bar_03:checked ~ #mng_03 li:first-of-type,
#mn_bar_04:checked ~ #mng_04 li:first-of-type{
    margin-top: .5em;
}

#mn_bar_02:checked ~ #mng_02 > li:nth-child(9){
    height: 64px;
}

@media screen and (max-width: 360px) {
#upper_toggle{
    width: 32px;
    height: 32px;
}
}
}
}












#ec{
    background: url("img/botanic_l.jpg") no-repeat left 75%, url("img/botanic_r.jpg") no-repeat right 75%;
    background-size: 19% auto;
}
#ec .dn{
	display: inherit;
}
#ec .spc{
	display: none;
}
#ec div:nth-of-type(1){
    margin-bottom: 40px;
}
#ec div:nth-of-type(3){
    margin-bottom: 40px;
}
#ec h1{
    margin-bottom: 16px;
    padding: 1em 0 0;
    color: #2a4793;
/*    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
    font-size: 25px;
    line-height: 1.6;
}
#ec li{
    float: left;
    width: 20%;
}
@media screen and (max-width: 768px) {
.covid19_btn{
    margin: 0 0 0;
}
#ec{
    background: none;
    background-size: 100% auto;
}
/*
#subec{
    margin: 128px 0 0;
}
*/
#ec div:nth-of-type(1){
    margin-bottom: 0;
}
#ec div:nth-of-type(3){
    background: url("img/botanic.jpg") no-repeat 0 0;
    background-size: 100% auto;
    text-align: left;
}
#ec h1{
    margin-bottom: 16px;
    padding: 220px 18% 0;
    font-size: 23px;
    letter-spacing: 0;
}
#ec .inner{
    padding: 0 15%;
}
@media screen and (max-width: 767px) {
#ec .dn{
	display: none;
}
#ec .spc{
	display: inherit;
}
#ec h1{
    padding: 1em;
    text-align: left;
/*    padding: 120px 15% 0;*/
}
#ec .inner{
    padding: 0 1em 1em;
    text-align: left;
}
#ec div:nth-of-type(3){
    padding: 12em 1em 0;
    background: url("img/botanic.jpg") no-repeat 0 0;
    background-size: 100% auto;
    text-align: left;
}
@media screen and (max-width: 414px) {
.covid19_btn{
    margin: 0 0 0;
}
@media screen and (max-width: 320px) {
.covid19_btn{
    margin: 0 0 0;
}
}
}
}
}




#top{
	text-align: left;
}
#top p{
    margin-bottom: 24px;
}
#top img{
	max-width: 100%;
	height: auto;
}
#top h2{
    margin: 0 0 24px;
    color: #ad9d48;
    text-align: center;
    font-size: 24px;
    line-height: 1.6;
}
#top h3{
    font-size: 29px;
    line-height: 1.2;
}
@media screen and (max-width: 767px) {
#top h2{
    font-size: 25px;
}
#top h3{
    font-size: 23px;
}
}





.covid19_btn a{
    display: block;
    width: 40%;
    margin: 0 auto 8px;
    padding: 1em;
    background: #e5e5e5;
    color: #000;
    letter-spacing: 0;
    text-align: center;
    border: 1px solid #c9c9c9;
    border-radius: 1em;
}
.covid19_btn a:hover{
    background: #c7bcd1;
}
@media screen and (max-width: 768px) {
.covid19_btn a{
    width: 64%;
}
@media screen and (max-width: 540px) {
.covid19_btn a{
    width: 92%;
    margin: 0 auto 16px;
    font-size: 13px;
}
}
}


.invisalign__movie{
    padding: 0;
    text-align: center;
}
.invisalign__movie iframe{
    width: 100%;
    max-width: 800px;
    height: 450px;
    max-height: 450px;
}
@media screen and (max-width: 540px) {
.invisalign__movie iframe{
    max-width: 540px;
    height: 304px;
    max-height: 304px;
}
@media screen and (max-width: 414px) {
.invisalign__movie iframe{
    max-width: 400px;
    height: 225px;
    max-height: 225px;
}
@media screen and (max-width: 375px) {
.invisalign__movie iframe{
    max-width: 360px;
    height: 203px;
    max-height: 203px;
}
}
}
}


#top_ops{
    padding: 4% 8%;
    background: #ecf4f6;
    text-align: center;
}
#top_ops h2{
    padding: 72px 0 0;
    background: url("img/style.png") no-repeat top center;
    background-size: 101px auto;
}
#top_ops .box{
    width: 48%;
    background: #fff;
    text-align: left;
}
#top_ops .box:nth-of-type(odd){
    clear: both;
    float: left;
}
#top_ops .box:nth-of-type(even){
    float: right;
}
#top_ops .inner{
    padding: 5%;
}
#top #top_ops h3{
    margin: 0 0 16px;
}
#top #top_ops h3 span{
    font-size: 17px;
    letter-spacing: 0;
    line-height: 1.2;
    display:block;
}
@media screen and (max-width: 767px) {
#top_ops{
    padding: 8% 4%;
}
#top_ops h2{
    padding: 72px 0 0;
    background: url("img/style.png") no-repeat top center;
    background-size: 101px auto;
}
#top_ops .box{
    width: 100%;
}
#top_ops .box:nth-of-type(odd){
    clear: both;
    float: none;
}
#top_ops .box:nth-of-type(even){
    float: none;
}
#top_ops .inner{
    padding: 5%;
}
}





#top_guides{
    padding: 80px 8%;
    text-align: center;
}
#top_guides h2{
    padding: 56px 0 0;
    background: url("img/guide.png") no-repeat top center;
    background-size: 62px auto;
}
#top_guides .boxes{
    width: 80%;
    margin: 0 auto 24px;
}
#top_guides .boxes .box{
    float: left;
    width: 14.275%;
    padding: 0 4px;
}
#top_guides .boxes .box:nth-of-type(8){
    margin: 0 0 16px 8%;
}
#top_guides .two_columns_f{
    width: 100%;
    max-width: 1024px;
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
#top_guides{
    padding: 80px 4%;
    text-align: left;
}
#top_guides .boxes{
    width: 100%;
    margin: 0 auto 24px;
}
#top_guides .boxes .box{
    float: left;
    width: 33.333%;
    margin: 0 0 16px;
    padding: 0 2px;
}
#top_guides .boxes .box:nth-of-type(8){
    margin: 0 0 16px;
}
}





#top_dr{
    background: #fff;
}
#top_dr h2{
    padding: 56px 0 0;
    background: url("img/dr.png") no-repeat top center;
    background-size: 62px auto;
}
#top_dr .inner{
    position: relative;
    height: 440px;
    margin: 160px 0 0;
    padding: 4% 8%;
    background:linear-gradient(90deg,#fff 0%,#fff 50%,#f6f6f6 50%,#f6f6f6 100%);
}
#top_dr .photo{
    position: absolute;
    width: 55%;
    top: -140px;
    left: -40px;
    z-index: 20;
}
#top_dr .greeting{
    position: absolute;
    width: 50%;
    padding: 2%;
    background: rgba(255,255,255,.9);
    top: -90px;
    left: 40%;
    z-index: 30;
}
#top #top_dr .greeting h3{
    margin: 0 0 16px;
    font-size: 24px;
}
#drname{
    margin-bottom: .8em;
}
#drname span{
    font-size: 20px;
}
#indiana_univ{
    min-height: 140px;
    margin-top: 1em;
    background: #ecf4f6 url("img/indiana_univ.jpg") no-repeat 0 0;
    background-size: 140px auto;
    letter-spacing: 0;
}
#indiana_univ .box{
    padding: 2em 1em 0 11em;
}

@media screen and (max-width: 1023px) {
#top_dr .inner{
    height: 560px;
}
#top_dr .photo{
    width: 75%;
    top: -150px;
    left: -150px;
}
#top_dr .greeting{
    width: 60%;
    top: -100px;
    left: 40%;
}
#indiana_univ .box{
    padding: 1em 1em 0 10em;
}
@media screen and (max-width: 768px) {
#top_dr .inner{
    position: relative;
    height: 880px;
    margin: 0;
    padding: 0;
    background: #f6f6f6;
}
#top_dr .photo{
    width: 100%;
    top: 0;
    left: 0;
}
#top_dr .greeting{
    width: 88%;
    margin: auto;
    padding: 4%;
    top: 48%;
    left: 0;
    right: 0;
    z-index: 30;
}
#top #top_dr .greeting h3{
    margin: 0 0 16px;
    font-size: 19px;
}
@media screen and (max-width: 480px) {
#top_dr .inner{
    height: 840px;
}
#top_dr .greeting{
    top: 30%;
}
#top #top_dr .greeting h3{
    margin: 0 0 16px;
    font-size: 19px;
}
#indiana_univ{
    min-height: 110px;
    margin-top: 1em;
    background: #ecf4f6 url("img/indiana_univ.jpg") no-repeat 0 0;
    background-size: 110px auto;
    letter-spacing: 0;
}
#indiana_univ .box{
    padding: .6em .5em 0 8em;
    line-height: 1.3;
}
@media screen and (max-width: 376px) {
#top_dr .inner{
    height: 890px;
}
#top_dr .greeting{
    top: 25%;
}
}
}
}
}





#top_concept{
    padding: 4% 12% 0;
/*
    background: url("img/flower_l.jpg") no-repeat left 60%, url("img/flower_r.jpg") no-repeat right 85%;
    background-size: 30% auto, 15% auto;
*/
}
#top_concept h2{
    padding: 56px 0 0;
    background: url("img/concept.png") no-repeat top center;
    background-size: 62px auto;
}
#top_concept .box div{
    margin: 0 0 16px;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
}
#top_concept .three_columns .box{
    float: left;
    width: 32%;
}

#top_concept .three_columns .box:nth-of-type(3n-1){
    margin: 0 0 0 2%;
}
#top_concept .three_columns .box:nth-of-type(3n){
    float: right;
}
@media screen and (max-width: 767px) {
#top_concept{
    padding: 4% 8%;
/*
    background: url("img/flower_l.jpg") no-repeat -25px 11%, url("img/flower_r.jpg") no-repeat 115% 87%;
    background-size: 80% auto, 40% auto;
*/
}
#top_concept .three_columns .box{
    float: none;
    width: 100%;
}
#top_concept .three_columns .box:nth-of-type(3n-1){
    margin: 0;
}
#top_concept .three_columns .box:nth-of-type(3n){
    float: none;
}
}





#top_mov{
    padding: 4% 15%;
    background: #fff;
    text-align: center;
}
#top_mov h2{
    padding: 72px 0 0;
    background: url("img/mov.png") no-repeat top center;
    background-size: 60px auto;
}
@media screen and (max-width: 767px) {
#top_mov{
    padding: 4% 0;
}
#top_mov iframe{
    width: 100%;
    height: 280px;
}
}



.yt_mov_area{
    width: 100%;
    max-width: 880px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 40px;
    text-align: center;
}
.yt_mov iframe{
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
}
.yt_mov_area .hd{
    margin-bottom: 16px;
    font-size: 20px;
    font-weight: 600;
}
@media screen and (max-width: 540px) {
.yt_mov_area{
/*    width: 96%;*/
}
.yt_mov iframe {
    max-width: 100%;
    min-height: 300px;
    max-height: 400px;
}
}



.ud_area{
    width: 80%;
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
    padding: 3em 0;
    background: #fff;
    text-align: center;
}
.ud_area h2{
    padding: 72px 0 0;
    background: url("img/news.png") no-repeat top center;
    background-size: 56px auto;
}
.ud_area .box{
    margin: 0 0 8px;
    padding: 0 0 8px;
/*    padding: 0 8px 8px;*/
/*    border-bottom: 1px solid #ddd;*/
    text-align: left;
}
.ud_area time{
    display: block;
}
.ud_area .more a{
    width: 50%;
}
@media screen and (max-width: 767px) {
.ud_area{
    width: 92%;
}
.ud_area time{
    display: inherit;
}
.ud_area .more a{
    width: 100%;
}
}


















#buttons{
    margin: 0;
}
#buttons .box{
	display: block;
	float: left;
    width: 33.333%;
    border-right: 1px solid #fff;
}
#buttons .box img{
    width: auto;
    height: 64px;
}
#buttons .box:nth-of-type(3){
	float:right;
	border-right: 0;
}
#buttons .box a{
    display: block;
    padding: 16px 0;
    background: #273d66 !important;
    color: black;
	font-size: 16px;
	font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0;
}
#buttons .box:nth-of-type(1) a{
    background: #79acde !important;
}
#buttons .box:nth-of-type(2) a{
    background: #4e72b4 !important;
}








/*
footer{
}
*/
footer .hd{
    margin: 0 0 24px;
    text-align: center;
}
footer .inner{
    width: 72%;
    max-width: 1280px;
    margin: auto;
}
footer .inner .box{
    width: 48%;
}
footer .inner .box p{
    margin-bottom: 24px;
}
footer .inner .box:nth-of-type(odd){
    float: left;
}
footer .inner .box:nth-of-type(even){
    float: right;
    padding: 16px 0 0;
}
dl.sns{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 1em 0;
}
.sns dt{
    width: 48%;
    text-align: right;
}
.sns dd{
    width: 48%;
    text-align: left;
}


@media screen and (max-width: 767px) {
footer{
}
footer .hd{
    margin: 0 0 24px;
    text-align: center;
}
footer .inner{
    width: 92%;
    margin: auto;
}
footer .inner .box{
    width: 100%;
}
footer .inner .box p{
    margin-bottom: 24px;
}
footer .inner .box:nth-of-type(odd){
    float: none;
}
footer .inner .box:nth-of-type(even){
    float: none;
    padding: 16px 0 0;
}
.sns img{
    max-width: 30% !important;
    height: auto;
}
}




#footlinks{
    width: 80%;
	margin: 8px auto;
    padding: 4% 0;
    text-align: left;
}
#footlinks ul{
/*    float: left;*/
    width: 30%;
}
#footlinks ul ul,
#footlinks ul ul ul{
    width: 100%;
    margin-left: 3%;
}
#footlinks li a{
    position: relative;
	display: inline-block;
	transition: .2s;
    color: #12c;
    text-decoration: none;
}
#footlinks li a::before{
    content: ">　";
    font-size: 10px;
}
#footlinks li a::after{
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background: #12c;
	transition: .2s;
    transform: translateX(-50%);
}
#footlinks li a:hover::after{
	width: 100%;
}
@media screen and (max-width: 767px) {
#footlinks{
    display: none;
}

#footlinks ul{
    float: none;
    width: 100%;
    font-size: 14px;
}
}

#copyright{
	padding: 16px 0;
    text-align: center;
    letter-spacing: 0;
}
@media screen and (max-width: 767px) {
#copyright{
	padding: 8px 0;
    text-align: center;
    letter-spacing: 0;
    font-size: 12px;
}
}



.henkou{
    position: fixed;
    width: 400px;
    padding: 1em;
    color: rgba(199,50,52,1.00);
/*    font-size: 18px;*/
    letter-spacing: 0;
    top: 0;
    left: 0;
    background: rgba(255,255,255,.7);
    z-index: 5000;
    text-align: left;
}
.henkou a{
    position: absolute;
    top: 10px;
    width: 100%;
    display: block;
    padding: 1em;
    background: #bb0083;
    color: #e4d68f !important;
    border: 1px solid;
    text-align: center;
}
.henkou a:hover{
    background: #82045c;
}
@media screen and (max-width: 1024px) {
.henkou{
    width: 400px;
}
@media screen and (max-width: 540px) {
.henkou{
    display: none;
}
}
}









/* ▼▼▼▼▼▼▼▼▼▼▼▼ 共通項目 ▼▼▼▼▼▼▼▼▼▼▼▼ */

#breadcrumbs{
    width: 92%;
    max-width: 1440px;
    margin: 0 auto 24px;
	text-align: right;
}
#wrap{
    margin: 0;
    padding: 2em 0;
    text-align: left;
    background: #fff;
    overflow-x: hidden;
}
#wrap p{
	margin: 0 0 24px;
}
#wrap strong{
	background: linear-gradient(transparent 70%, #f6f317 70%);
}
#wrap b{
    color: #4e72b4;
}
#wrap article{
    margin: 0 0 80px;
}
#wrap .inner,
#wrap .section{
    width: 100%;
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
}
#wrap h1{
    margin: 0 0 48px;
    color: #ad9d48;
    text-align: center;
    font-size: 23px;
}
#wrap h1#ls{
    padding: 72px 0 0;
    background: url("img/treatment/h_ls.png") no-repeat top center;
    background-size: auto 60px;
}
#wrap h1.h_guide{
    padding: 72px 0 0;
    background: url("img/treatment/h_guide.png") no-repeat top center;
    background-size: auto 60px;
}
#wrap h1.h_clinic{
    padding: 72px 0 0;
    background: url("img/clinic/h_clinic.png") no-repeat top center;
    background-size: auto 60px;
}
#wrap h1.h_dv{
    padding: 72px 0 0;
    background: url("img/device/h_dv.png") no-repeat top center;
    background-size: auto 60px;
}
#wrap h1.h_access{
    padding: 72px 0 0;
    background: url("img/access/h_access.png") no-repeat top center;
    background-size: auto 60px;
}
#wrap h1.h_cp{
    padding: 72px 0 0;
    background: url("img/cp/h_cp.png") no-repeat top center;
    background-size: auto 60px;
}
#wrap h1.h_seminar{
    padding: 72px 0 0;
    background: url("img/clinic/seminar/seminar.jpg") no-repeat top center;
    background-size: auto 60px;
}
#wrap h2{
    margin: 0 0 24px;
    padding: 16px 4%;
    background: #9dcf9e;
    color: #fff;
	font-size: 20px;
    font-weight: 700;
	text-align: center;
    line-height: 1.3;
}
#wrap h2.headding{
    margin: 0 0 48px;
    padding: 64px 5%;
}
#wrap h3{
    position: relative;
	margin: 0 0 24px;
    padding: 16px 8px 16px 24px;
    border-bottom: 1px dashed;
	font-size: 20px;
    line-height: 1;
}
#wrap h3::before{
    content: "";
    position: absolute;
    width: 8px;
    height: 40px;
    margin: auto;
    background: #9dcf9e;
    top: 0;
    bottom: 0;
    left: 0;
}
#wrap .faq h3{
    color: #ad9d48;
    font-weight: 600;
}
#wrap h4{
    position: relative;
	margin-bottom: 16px;
    padding: 0 16px 8px;
    border-bottom: 4px solid #ccc;
	font-size: 20px;
    font-weight: 700;
}
#wrap h4::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: '';
    width: 20%;
    height: 4px;
    background: #9dcf9e;
}


#wrap .waku_hd{
	margin: 0 0 16px;
    padding: 16px;
    border: 1px solid #000;
	font-size: 19px;
    font-weight: 700;
    text-align: center;
}
#wrap .lead_normal{
    margin: 0 0 16px;
	font-size: 23px;
    letter-spacing: 0;
}
#wrap .lead{
    margin: 0 0 16px;
	font-size: 23px;
    color: #ad9e48;
    letter-spacing: 0;
/*    text-align: center;*/
}
#wrap .lead span{
	background: linear-gradient(transparent 90%, #ad9e48 90%);
}
#wrap .boxL{
    float: left;
    width: 47%;
}
#wrap .boxR{
    float: right;
    width: 47%;
}
.two_columns_f,
.two_blocks_f,
.three_columns_f,
.four_columns_fx{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}
.two_columns_f .box,
.two_blocks_f .box{
    width: calc( 50% - 8px);
}
.three_columns_f::after{
    display: block;
    content: "";
    width: calc( 33% - 16px);
}
.three_columns_f .box{
    width: calc( 33% - 16px);
}


#wrap .two_blocks .box{
    width: 49%;
}
#wrap .two_blocks .box:nth-of-type(odd){
    clear: both;
    float: left;
}
#wrap .two_blocks .box:nth-of-type(even){
    float: right;
}
#wrap .two_columns .box{
    width: 48%;
}
#wrap .two_columns .box:nth-of-type(odd){
    clear: both;
    float: left;
}
#wrap .two_columns .box:nth-of-type(even){
    float: right;
}
#wrap .three_columns .box{
    float: left;
    width: 32%;
}
#wrap .three_columns .box:nth-of-type(3n-1){
    margin-left: 2%;
}
#wrap .three_columns .box:nth-of-type(3n){
    float: right;
}
#wrap .three_columns .box .more a{
    width: 90%;
}
#wrap .four_columns .box{
    float: left;
    width: 25%;
    padding: 0 5px;
    text-align: left;
}
.four_columns_fx .box{
    width: calc(25% - 4px);
    text-align: center;
}
#wrap figcaption{
    padding-top: 8px;
}
.oz .imgL,
.oz .s_imgL{
    max-width: 40%;
    margin-right: 24px;
    text-align: center;
}
#wrap .oz .imgL p,
#wrap .oz .s_imgL p{
    margin: 0 0 40px;
}
.oz .imgR,
.oz .s_imgR{
    max-width: 40%;
    margin-left: 16px;
}
.notes{
    padding: 2em;
    text-align: left;
}
.notes_white{
    background: #fff;
}
.notes_grn{
    background: #ebf3ea;
}
.notes_grn span{
    display: block;
    font-size: 18px;
    font-weight: 700;
}
.notes_lgrn{
    background: #fafbe9;
}
.notes_lgrn .hd{
    margin: 0 0 24px;
    padding: 0 0 8px;
    color: #6988ad;
    border-bottom: 1px solid;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}
.notes_lgrn .hd{
    margin: 0 0 24px;
    padding: 0 0 8px;
    color: #6988ad;
    border-bottom: 1px solid;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}
.notes_grn .hd{
    margin: 0 0 16px;
    color: #6988ad;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}
.notes_lgrn .subhd{
    margin: 0 0 16px;
    color: #6988ad;
    font-size: 20px;
}
.notes_beige{
    background: #eeecdf;
    color: #82725b;
}
.notes_lavender{
    background: #f6f6ff;
}
.notes_lavender .hd{
    margin: 0 0 24px;
    padding: 16px;
    background: #b08fdc;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}
.notes_lavender .subhd{
    margin: 0 0 24px;
    padding: 16px;
    color: #b08fdc;
    border-top: 1px solid;
    border-bottom: 1px solid;
    font-size: 17px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}
.notes_lblue{
    background: #e7ebef;
}
.notes_blue{
    background: #80acba;
    color: #fff;
}
.notes_blue .hd{
    margin: 0 0 16px;
    color: #fffb72;
    font-size: 17px;
    font-weight: 700;
    line-height: 1;
    text-align: center;
}
.notes_pink{
    background: #f4e6e4;
}
.notes li{
    margin: 0 0 8px;
}
.notes ol li::before{
    content: "・ ";
}
.notes li{
    margin: 0 0 8px;
}
.notes ol.square li::before{
    content: "■ "!important;
}
.dots_list li{
    margin-bottom: 8px;
}
.dots_list li::before{
    content: "・ "!important;
}
#wrap .bbline{
    padding-bottom: 2%;
    border-bottom: 1px solid #ddd;
}



.foot_c_navs{
    padding: 4% 8%;
    background: #d7e0df;
}
.foot_c_navs ol{
    margin: 16px 0 0;
}
.foot_c_navs li{
    float: left;
    width: 48%;
    margin-bottom: 16px;
    text-align: center;
}
.foot_c_navs li a{
    display: block;
    padding: 24px 0;
    background: #eff3f2;
    color: #333;
    border: 1px solid;
}
.foot_c_navs li a:hover{
    background: #8c9d99;
    color: #fff;
}
.foot_c_navs li:nth-of-type(odd){
    clear: both;
    float: left;
}
.foot_c_navs li:nth-of-type(even){
    float: right;
}
@media screen and (max-width: 1280px) {
@media screen and (max-width: 1023px) {
#wrap .inner,
#wrap .section{
    width: 92%;
}
#breadcrumbs{
	text-align: left;
}
@media screen and (max-width: 767px) {
#wrap h1{
    min-height: inherit;
    padding: 72px 0 16px;
    line-height: 1.2;
}
#wrap .lead{
    text-align: left;
}
.oz .imgL{
    float: none;
    max-width: 100%;
    margin: 0 0 16px;
    text-align: center;
}
#wrap .oz .imgL p{
    margin: 0 !important;
}
/*
#wrap .oz .s_imgL{
    float: left;
    max-width: 30%;
    margin: 0 16px 0 0;
    text-align: left;
}
*/
#wrap .oz .imgR{
    float: none;
    max-width: 100%;
    margin: 0 0 16px;
}
#wrap .oz .imgL p,
#wrap .oz .imgR p{
    margin-bottom: 40px;
}
.notes{
    padding: 1.5em 1em;
}
#wrap .boxL{
    float: none;
    width: 100%;
    margin-bottom: 16px;
}
#wrap .boxR{
    float: none;
    width: 100%;
    margin-bottom: 16px;
}
#wrap .two_columns .box{
    width: 100%;
    margin-bottom: 24px;
}
#wrap .two_columns .box:nth-of-type(odd){
    clear: both;
    float: none;
}
#wrap .two_columns .box:nth-of-type(even){
    float: none;
}
#wrap dl .two_columns .box{
    margin-bottom: 8px;
}
#wrap dl .two_columns .box:nth-of-type(odd){
    clear: both;
    float: left;
    width: 40%;
}
#wrap dl .two_columns .box:nth-of-type(even){
    float: right;
    width: 60%;
}
#wrap .three_columns .box{
    float: none;
    width: 100%;
    margin-bottom: 16px;
}
#wrap .three_columns .box:nth-of-type(3n-1){
    margin-left: 0;
}
#wrap .three_columns .box:nth-of-type(3n){
    float: none;
}
#wrap .four_columns .box{
    float: none;
    width: 100%;
    text-align: left;
    line-height: 1.3;
    letter-spacing: 0;
}
.four_columns_fx .box{
    width: calc(50% - 4px);
}
#wrap .more a{
    width: 100%;
}
.foot_c_navs{
    margin: 40px auto;
    padding: 4%;
}
.foot_c_navs li{
    float: none;
    width: 100%;
    margin: 0 0 16px;
    text-align: left;
}
.foot_c_navs li a{
    padding: 16px 8px 16px 16px;
}
.foot_c_navs li:nth-of-type(odd){
    float: none;
}
.foot_c_navs li:nth-of-type(even){
    float: none;
}
.two_columns_f .box{
    width: 100%;
}
.three_columns_f .box{
    width: 100%;
}


}
}
}

.three_columns_li,
.fx{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}
.fx_c{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.fx_r{
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: space-between;
}
.meritbox{
    padding: 24px;
    background: #f5e9eb;
    text-align: left;
}
.demeritbox{
    padding: 24px;
    background: #e7eefc;
    text-align: left;
}



/* ▲▲▲▲▲▲▲▲▲▲ 共通項目 ▲▲▲▲▲▲▲▲▲▲ */

#wrap .ms_merit{
    width: 88%;
    margin: auto;
}
#wrap .ms_merit .box{
    padding: 2%;
    border: 3px solid #d7e5f7;
    text-align: left;
}
#wrap .ms_merit .box div:nth-of-type(2){
    margin: 0 0 8px;
    color: #8da9cc;
    font-weight: 700;
    text-align: center;
}
@media screen and (max-width: 767px) {
#wrap .ms_merit{
    width: 100%;
    margin: auto;
}
#wrap .ms_merit .box{
    padding: 5%;
}
}



#vitamin_01{
    width: 92%;
    margin: 0 auto 40px;
    padding: 5% 55% 5% 5%;
    background: #7baa80 url("img/treatment/vitamin/02.jpg") no-repeat top right;
    color: #fff;
    background-size: 50% auto;
}
@media screen and (max-width: 414px) {
#vitamin_01{
    width: 100%;
    margin: 0 auto 40px;
    padding: 5% 5% 55% 5%;
    background: #7baa80 url("img/treatment/vitamin/02.jpg") no-repeat bottom center;
    color: #fff;
    background-size: 100% auto;
}
}

#wrap .vitamin_merit{
    padding: 5%;
    background: #f5e9eb;
}
#wrap .vitamin_merit .hd{
    width: 64%;
    margin: 0 auto 24px;
    padding: 2% 0;
    text-align: center;
    font-size: 20px;
    color: #c1617d;
    border-top: 2px solid;
    border-bottom: 2px solid;
}
#wrap .vitamin_merit .box{
    min-height: 280px;
    padding: 2%;
    background: #fff;
    text-align: left;
}
#wrap .vitamin_merit .box div{
    margin: 0 0 8px;
    color: #c1617d;
    text-align: center;
    font-weight: 700;
}
#wrap .vitamin_merit .box p{
    margin: 0;
}
@media screen and (max-width: 767px) {
#wrap .vitamin_merit{
    width: 100%;
    margin: auto;
    padding: 6%;
}
#wrap .vitamin_merit .hd{
    width: 100%;
    padding: 3%;
    text-align: left;
}
#wrap .vitamin_merit .box{
    min-height: inherit;
    padding: 3%;
    background: #fff;
    text-align: left;
}
#wrap .vitamin_merit .box{
    padding: 5%;
}
}


#wrap .microend{
    padding: 5%;
    background: #80acba;
    color: #fff;
}
#wrap .microend .hd{
    margin: 0 0 24px;
    color: #fffb72;
    font-weight: 700;
    text-align: center;
    font-size: 17px;
}





#wrap .metal_allergy dl{
    width: 48%;
    background: #f3efe2;
}
#wrap .metal_allergy dl:first-child{
    float: left;
    min-height: 554px;
}
#wrap .metal_allergy dl:last-child{
    float: right;
}
#wrap .metal_allergy dt{
    padding: 3%;
    background: #d9b12a;
    color: #fff;
    font-size: 20px;
}
#wrap .metal_allergy dd{
    padding: 5%;
}
@media screen and (max-width: 767px) {
#wrap .metal_allergy dl{
    width: 100%;
}
#wrap .metal_allergy dl:first-child{
    float: none;
    min-height: inherit;
    margin-bottom: 40px;
}
#wrap .metal_allergy dl:last-child{
    float: none;
}
}

#perio_merit{
    margin-bottom: 40px;
    padding: 5%;
    background: #f5e9eb;
    text-align: left;
}
#wrap .perio_hd{
    padding: 1%;
    background: #d9b12a;
    color: #fff;
    font-size: 20px;
}
#perio_merit .hd{
    margin-bottom: 4%;
    padding: 2%;
    color: #c1617d;
    border-top: 1px solid;
    border-bottom: 1px solid;
    text-align: center;
    font-size: 20px;
}
#perio_merit .box{
    min-height: 450px;
    background: #fff;
    padding: 4%;
}
#perio_merit .box div:first-of-type{
    margin-bottom: 3%;
    color: #c1617d;
    font-size: 17px;
    font-weight: 700;
    text-align: center;
}
@media screen and (max-width: 767px) {
#perio_merit{
    padding: 10% 5%;
}
#perio_merit .hd{
    margin-bottom: 8%;
}
#perio_merit .box{
    min-height: inherit;
}
}

#wrap .perio_course .box{
    padding: 3%;
    color: #2a4793;
    border: 1px solid;
    text-align: center;
    font-size: 18px;
}
#wrap .perio_kensa .oz{
    padding-bottom: 2%;
    border-bottom: 1px solid #ccc;
}
#wrap .perio_kensa .oz:last-of-type{
    border-bottom: 0;
}




#wrap .maintenance_plan .box:first-of-type .hd{
    padding: 8%;
    background: #ad9d48;
    text-align: center;
}
#wrap .maintenance_plan .box:last-of-type .hd{
    padding: 8%;
    background: #3d444c;
    text-align: center;
}
#wrap .maintenance_plan table{
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: 1px solid #ddd;
}
#wrap .maintenance_plan .dn td{
    padding: 16px;
    border: 1px solid #ddd;
}
#wrap .maintenance_plan .dn td:first-of-type{
    background: #f1f1f1;
    text-align: center;
}
#wrap .maintenance_plan .dn tr:first-of-type td:nth-of-type(2){
    background: #7ea8a6;
    color: #fff;
    text-align: center;
    font-size: 20px;
}
#wrap .maintenance_plan .dn tr:first-of-type td:nth-of-type(3){
    background: #ad9d48;
    color: #fff;
    text-align: center;
    font-size: 20px;
}
#wrap .maintenance_plan .dn tr:first-of-type td:nth-of-type(4){
    background: #3d444c;
    color: #fff;
    text-align: center;
    font-size: 20px;
}

#wrap .maintenance_plan .spc table{
    margin-bottom: 24px;
}

#wrap .maintenance_plan .spc td{
    padding: 8px;
    border: 1px solid #ddd;
}
#wrap .maintenance_plan .spc td:first-of-type{
    width: 34%;
    background: #f1f1f1;
    text-align: left;
}
#wrap .maintenance_plan .spc table:first-of-type tr:first-of-type td:nth-of-type(2){
    padding: 16px 8px;
    background: #7ea8a6;
    color: #fff;
    text-align: center;
    font-size: 20px;
}
#wrap .maintenance_plan .spc table:nth-of-type(2) tr:first-of-type td:nth-of-type(2){
    padding: 16px 8px;
    background: #ad9d48;
    color: #fff;
    text-align: center;
    font-size: 20px;
}
#wrap .maintenance_plan .spc table:last-of-type tr:first-of-type td:nth-of-type(2){
    padding: 16px 8px;
    background: #3d444c;
    color: #fff;
    text-align: center;
    font-size: 20px;
}




#wrap .tsumemono .hd{
    margin: 0 0 16px;
    padding: 16px;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
}
#wrap .tsumemono .mb40:first-of-type .hd{
    background: #97b8d9;
}
#wrap .tsumemono .mb40:last-of-type .hd{
    background: #cf888a;
}
#wrap .tsumemono .more a{
    width: 40%;
    margin: 0 auto 8px;
}


#wrap .s_mp li{
    margin-left: 32px;
    list-style-type: disc;
}

#wrap .yobou_apm .box{
    padding: 16px;
}
#wrap .yobou_apm .box div{
    margin: 0 0 8px;
    color: #b08fdc;
    font-size: 17px;
    font-weight: 700;
    text-align: center;
}


#wrap .shinbi_merit .box dt{
    padding: 16px;
    color: #fff;
    font-size: 17px;
    font-weight: 700;
    text-align: center;
}
#wrap .shinbi_merit .box:first-of-type dt:first-of-type{
    background: #d89894;
}
#wrap .shinbi_merit .box:last-of-type dt:first-of-type{
    background: #8d8c89;
}
#wrap .shinbi_merit dd{
    padding: 16px;
    background: #fff;
}
#wrap .shinbi_merit .box:first-of-type li{
    margin: 0 0 8px;
    padding: 0 0 0 32px;
    background: url("img/treatment/shinbi/o.svg") no-repeat 2px 5px;
    background-size: 20px auto;
}
#wrap .shinbi_merit .box:last-of-type li{
    margin: 0 0 8px;
    padding: 0 0 0 32px;
    background: url("img/treatment/shinbi/x.svg") no-repeat 2px 5px;
    background-size: 20px auto;
}


.implant_nav{
    margin-bottom: 80px;
    padding: 80px 0 40px;
    background: #ecf4f6;
}
.implant_nav .fx{
    width: 88%;
    max-width: 1280px;
    margin: auto;
    color: #514f50;
}
.implant_nav .hd{
    color: #ad9d48;
    margin-bottom: 24px;
    font-size: 22px;
    font-weight: 700;
    text-align: center;
}
.implant_nav .subhd{
    margin-bottom: 24px;
    font-size: 20px;
    font-weight: 700;
}
.implant_nav .subhd span{
    font-size: 16px;
}
.implant_nav .grid{
    width: calc(50% - 24px);
    margin-bottom: 40px;
    background: #fff;
}
.implant_nav .grid_inner{
    padding: 24px 40px 40px;
}
.ao4_md .grid{
    width: calc(50% - 24px);
}
.ao4_md .notes li{
    margin-bottom: 24px;
    padding: 24px;
    background: #fff;
}
.ao4_md .notes li:last-of-type{
    margin-bottom: 0;
}
.ao4_md div:first-of-type{
    margin-bottom: 8px;
    font-size: 16px;
}
.merits div:first-of-type{
    color: #c1617d;
    font-size: 18px;
    font-weight: 600;
}
.demerits div:first-of-type{
    color: #4f5d99;
    font-size: 18px;
    font-weight: 600;
}


@media screen and (max-width: 540px) {
.implant_nav .grid{
    width: 100%;
    margin-bottom: 24px;
}
.implant_nav .grid_inner{
    padding: 0 24px 24px;
}

}







#wrap .access table{
    width: 100%;
    margin: 0 0 8px;
    border-collapse: collapse;
    border-spacing: 0;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
#wrap .access td{
    padding: 16px;
    border-bottom: 1px solid #ccc;
}
#wrap .access td:nth-of-type(odd){
    width: 30%;
    text-align: center;
    background: #f1edd0;
}
@media screen and (max-width: 767px){
#wrap .access td{
    display: block;
    padding: 8px 16px;
}
#wrap .access td:nth-of-type(odd){
    width: 100%;
    text-align: left;
}
}




#wrap .price table{
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    text-align: left;
}
#wrap .price .list_A table{
    border-top: 1px solid #ccc;
}
#wrap .price .list_A table td{
    padding: 16px;
    border-bottom: 1px solid #ccc;
}
#wrap .price .list_A table td:nth-of-type(even){
    text-align: right;
    font-weight: 700;
}


#wrap .price .list_B table{
    border-top: 1px solid #d4d1bf;
    border-right: 1px solid #d4d1bf;
    border-left: 1px solid #d4d1bf;
    text-align: left;
}
#wrap .price .list_B table tr:first-of-type td{
    background: #dcd290;
    font-weight: 700;
}
#wrap .price .list_B table td{
    padding: 16px;
    border-bottom: 1px solid #d4d1bf;
}
#wrap .price .list_B table td:nth-of-type(odd){
    width: 50%;
    background: #f1f1f1;
}
#wrap .price .list_B table td:nth-of-type(even){
    text-align: center;
}

#wrap .price .list_C table{
    border: 2px solid #d4d1bf;
    text-align: left;
}
#wrap .price .list_C table td{
    padding: 16px;
    border: 1px solid #d4d1bf;
    text-align: center;
    font-weight: 700;
}
#wrap .price .list_C table td:nth-of-type(odd){
    width: 50%;
}
@media screen and (max-width: 767px){
#wrap .price table{
    letter-spacing: 0;
}
#wrap .price .list_A table td{
    display: block;
}
#wrap .price .list_A table td:nth-of-type(even){
    text-align: center;
}
#wrap .price .list_B table td:nth-of-type(odd){
    width: 70%;
}
}

ol.implant_price{
    margin-bottom: 16px;
    border-top: 1px solid #ccc;
    border-bottom: 2px solid #ad9d48;
}
ol.implant_price li{
    padding: 8px 0;
    border-bottom: 1px solid #ccc;
}
ol.implant_price li:last-child{
    border-bottom: 0;
}
ol.implant_price li div{
    width: 70%;
    padding: 0 4px;
}
ol.implant_price li div:nth-child(even){
    width: 30%;
    font-weight: 600;
    text-align: right;
}
.implant_price_total{
    text-align: right;
}
.implant_price_total span{
    color: #ad9d48;
    font-weight: 600;
    font-size: 25px;
}
ol.allon4_price{
    margin-bottom: 16px;
    border-top: 2px solid #ad9d48;
    border-bottom: 2px solid #ad9d48;
}
ol.allon4_price li div{
    width: 50%;
    padding: 0 4px;
}
ol.allon4_price li div:nth-child(even){
    width: 50%;
    font-weight: 600;
    text-align: right;
}

ol.allon4_price div span{
    color: #ad9d48;
    font-weight: 600;
    font-size: 25px;
}



#wrap .chuui_box{
    padding: 2em;
    border: 5px solid #d7e5f7;
}











#wrap .entry{
	margin: 0 0 10vw;
	text-align: left;
}
#wrap h2 a{
    display: block;
    color: #fff;
}


#wrap .form{
    width: 92%;
    max-width: 1080px;
    margin: auto;
}
#wrap .form table{
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border-top: 1px solid #ccc;
}
#wrap .form td{
    padding: 16px;
    border-bottom: 1px solid #ccc;
    vertical-align: top;
}
#wrap .form td:nth-of-type(odd){
    width: 40%;
}
#captcha div{margin: auto !important;}

@media screen and (max-width: 767px) {
#wrap .form{
    width: 92%;
}
#wrap .form table{
    width: 100%;
}
#wrap .form td{
    display: block;
    padding: 8px;
}
#wrap .form td:nth-of-type(odd){
    width: 100%;
}
#wrap .form td:nth-of-type(even){
    padding: 16px 8px 24px;
}
.form i{
    font-size: 13px;
    color: #f00;
}
span.wpcf7-list-item{
	display: block !important;
}
}

#wrap .form i{
	color:#900;
}
.wpcf7-validates-as-date{
	background-color: #fff;
	color: #333;
	border: 1px solid #ddd;
	font-size: 17px;
	padding: 0.5em;
	border-radius:8px;
	box-shadow:2px 2px 4px rgba(0,0,0,.1) inset;
}
input{
	-webkit-transition:all .3s linear;
	-moz-transition:all .3s linear;
	transition:all .3s linear;
}
.times{
    margin-bottom: .5em !important;
}
#zip,
#age{
    width: 25%;
    max-width: 80px;
}
#namae01,
#namae02,
#kana01,
#kana02
{
    width: 38%;
}
@media screen and (max-width: 767px) {
#namae01,
#namae02,
#kana01,
#kana02,
#zip,
#age{
    width: 50%;
    max-width: 120px;
}
}


input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
textarea {
	background-color: #fff;
	color: #333;
	width: 80%;
    margin: auto;
	border: 1px solid #ddd;
	font-size: 17px;
	padding: 0.5em;
	border-radius:8px;
	box-shadow:2px 2px 4px rgba(0,0,0,.1) inset;
}

input[type="radio"],
input[type="checkbox"]
{
/*
	-webkit-transform: scale(1);
	-webkit-transform-origin:0 0;
	-moz-transform: scale(1);
	-moz-transform-origin:0 0;
	-ms-transform: scale(1);
	-ms-transform-origin:0 0;
*/
	width: 28px;
	vertical-align: middle;
}

select {
	background: #fff;
	color:#333;
	border: 1px solid #ddd;
	font-size: 18px;
	padding: 0.5em;
	border-radius:8px;
	box-shadow:2px 2px 4px rgba(0,0,0,.1) inset;
	line-height: 2;
}
#bd01,#bd02,#bd03{
    width: 60%;
    margin-bottom: .5em;
}

input[type="submit"] {
	margin: 40px 0 0;
	padding: 8px 0 8px 24px;
    background: #76ABE0;
	color: #fff;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: 32px;
	box-shadow: 0 0 1px rgba(0,0,0,.2);

	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
@media screen and (max-width: 767px) {
input[type="submit"] {
	margin: 40px 0 0;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
textarea {
	width: 90%;
}
}
input[type="submit"]:hover {
	box-shadow: 0 0 1px rgba(0,0,0,.2) inset;
    background: #4D70B6;
    color: #fff;
}
span.wpcf7-not-valid-tip {
	font-size: 80%;
}
select.jikantai{
    width: 36%;
}
input.datepicker{
	width: 36%;
}


#cal{
    margin-top: -200px;
    padding-top: 200px;
}
.calbtn{
    width: 600px;
    margin: 0 auto 24px;
}
@media screen and (max-width: 540px) {
#cal{
    margin-top: -100px;
    padding-top: 100px;
}
.calbtn{
    width: 92%;
    max-width: 300px;
    margin: 0 auto 24px;
}
}

.revision .grid{
    width: calc(50% - 16px);
}
.revision dt{
    width: 14%;
    max-width: 150px;
    margin-bottom: 16px;
}
.revision dd{
    width: 84%;
    margin-bottom: 16px;
}
.rivision_ec img{
    width: 100%;
    height: auto;
}
@media screen and (max-width: 540px) {
.revision .grid{
    width: 100%;
}
.revision .grid:first-of-type{
    margin-bottom: 40px;
}
.revision dt{
    width: 25%;
    max-width: 150px;
    margin-bottom: 16px;
}
.revision dd{
    width: 74%;
    margin-bottom: 16px;
}
.rivision_ec img{
    width: 540px;
    height: auto;
}
}



.hpsccsi table{
    width: 100%;
    margin: 0 0 8px;
    border-collapse: collapse;
    border-spacing: 0;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
.hpsccsi table td{
    padding: 16px;
    border-bottom: 1px solid #ccc;
}
.hpsccsi table td:nth-of-type(odd){
    width: 30%;
    text-align: center;
    background: #f7f7f7;
    color: #62a563;
}
.hpsccsi .grid{
    width: calc(50% - 8px);
}
@media screen and (max-width: 767px){
.hpsccsi table td{
    display: block;
    padding: 8px 16px;
}
.hpsccsi table td:nth-of-type(odd){
    width: 100%;
    text-align: left;
}
.hpsccsi .grid{
    width: 100%;
}
}


.three_columns_li li{
    width: calc(33% - 4px);
}
@media screen and (max-width: 767px){
.three_columns_li li{
    width: 100%;
}
}

#i{
    margin-top: -200px;
    padding-top: 200px;
}
@media screen and (max-width: 767px){
#i{
    margin-top: -100px;
    padding-top: 100px;
}
}




dl.eiseishi_profiles{
    background: #f5f2eb;
}
.eiseishi_profiles dt{
    padding: 24px;
    background: #c28484;
    color: #fff;
    font-size: 18px; 
    text-align: center;
}
.eiseishi_profiles dd{
    padding: 24px;
}
.eiseishi_profiles dd{
    padding: 24px;
}
.eiseishi_profiles dd li::before{
    content: "● ";
    color: #be6969;
}


.op_pos{
    position: relative;
    padding: 50px 0 0;
}
.op_pos .numbers{
    position: absolute;
    width: 176px;
    height: 91px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 24px;
    top: -60px;
    left: 0;
    right: 0;
    text-align: center;
}


.carearea .hd{
    margin-bottom: 24px;
    text-align: center;
    color: #b28752;
    font-size: 20px;
    font-weight: 700;
}
.carearea .subhd{
    margin-bottom: 24px;
    text-align: center;
    color: #000;
    font-size: 18px;
    font-weight: 700;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}


.certificate .box{
    margin-bottom: 8px;
    padding: 16px 0;
    text-align: center;
    background: #f0eff3;
}


.faq .box{
    margin-bottom: 8px;
    padding: 16px 0;
    text-align: center;
    background: #f0eff3;
}





.gbt__flow .two_blocks_f{
    margin-bottom: 24px;
    padding: 40px;
    background: #f2f2f2;
}
.gbt__flow .two_blocks_f .box:nth-child(odd){
    width: 20%;
}
.gbt__flow .two_blocks_f .box:nth-child(even){
    width: 80%;
}
.gbt__flow .hd{
    margin-bottom: 8px;
    padding-top: 24px;
    color: #48b3b7;
    font-size: 18px;
    font-weight: 600;
}
@media screen and (max-width: 540px){
.gbt__flow .two_blocks_f{
    padding: 16px 8px;
}
.gbt__flow .two_blocks_f .box:nth-child(odd){
    width: 50%;
}
.gbt__flow .two_blocks_f .box:nth-child(even){
    width: 50%;
}
.gbt__flow .hd{
    padding-top: 8px;
}
}


.fmr_osusume{
    width: 100%;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 540px){
.fmr_osusume .box{
    margin-bottom: 16px;
}
}

.fmr__sejutsu .box:nth-child(odd){
    width: 40%;
}
.fmr__sejutsu .box:nth-child(even){
    width: 60%;
    padding-left: 40px;
}
@media screen and (max-width: 540px){
.fmr_osusume .box{
    margin-bottom: 16px;
}
.fmr__sejutsu .box:nth-child(odd){
    width: 100%;
    margin-bottom: 24px;
}
.fmr__sejutsu .box:nth-child(even){
    width: 100%;
    padding-left: 0;
}
}




.toggle_contents{
    padding: 0 0 8px;
}
.faqarea{
    text-align: left;
}
.toggle_title{
	position: relative;
	padding: 40px 16px;
    background: #e3e9e7	url(img/common/svg/faq_q.svg) no-repeat 0 0;
    background-size: 32px auto;
    font-weight: 600;
}
.toggle_btn{
    display: none;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	background: #e3e9e7;
	width: 32px;
	height: 32px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 50%;
    transition:all .3s linear;
}
.toggle_contents dd{
    padding: 64px 0 0;
    background: #fff url(img/common/svg/faq_a.svg) no-repeat 0 24px;
    background-size: 32px auto;
}
@media screen and (max-width: 800px) {
.faqarea{
    width: 92%;
    max-width: 800px;
    margin-right: auto;
    margin-left: auto;
    text-align: left;
}
.toggle_btn{
    display: block;
}
.toggle_btn:before, .toggle_btn:after{
	display: block;
	content: '';
	background: #000;
	position: absolute;
	width: 18px;
	height: 2px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.toggle_title{
	padding: 40px 40px 16px 16px;
	cursor: pointer;
}
.toggle_btn:before{
	width: 2px;
	height: 18px;
}
.toggle_title.selected .toggle_btn:before{
	content: normal;
}
.toggle_contents dd{
	display: none;
}
section:first-of-type .toggle_contents:first-of-type　dd{
	display: block;
}
.selected{
	display: block;
}
}








.lp_wrap{
    position: relative;
    width: 100%;
    max-width: 1200px;
    margin: -20px auto 0;
    text-align: left;
    z-index: 1000;
}
@media screen and (max-width: 800px) {
.lp_wrap{
    width: 92%;
    margin: -10px auto 0;
}
}


.lp_whiteing_box{
    padding: 80px 40px 40px;
    text-align: left;
    background: #fff;
}
@media screen and (max-width: 800px) {
.lp_whiteing_box{
    padding: 40px 24px 24px;
    text-align: left;
    background: #fff;
}
}


.lp_whiteing_box .inner_box{
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 40px;
}
.lp_whiteing_box .inner_box h2{
    margin: 0 0 24px;
    padding: 24px;
    background: #cbe1d5;
    color: #333;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 20px;
    font-weight: 700;
	text-align: center;
}
.lp_whiteing_box .inner_box h3{
    margin: 0 0 24px;
    padding: 8px 24px 8px 40px;
    background:	url("img/treatment/whitening/lp/kirari.svg") no-repeat 0 8px;
    background-size: 24px auto;
    color: #a67e33;
    border-bottom: 1px solid;
    font-weight: 600;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 20px;
}
@media screen and (max-width: 800px) {
.lp_whiteing_box .inner_box{
    padding: 0;
}
.lp_whiteing_box .inner_box h2{
    padding: 16px 8px;
}
.lp_whiteing_box .inner_box h3{
    padding: 8px 8px 8px 40px;
    background:	url("img/treatment/whitening/lp/kirari.svg") no-repeat 0 center;
    background-size: 24px auto;
}
}

.lp_common_whiteing .hd{
    margin: 0 0 40px;
    font-weight: 500;
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 40px;
    text-align: center;
}
.lp_whiteing_reasons{
/*    margin: 80px 0;*/
    padding: 80px 40px;
    background: #f8f8ed;
}
.lp_whiteing_tokuchou{
/*    margin: 80px 0;*/
}


@media screen and (max-width: 800px) {
.lp_whiteing_reasons{
    padding: 24px 16px;
}
.lp_common_whiteing .hd{
    margin: 0 0 24px;
	font-size: 30px;
    line-height: 1.4;
}
}
.lp_whiteing_flow{
    padding: 80px 40px;
    background: #f8f8ed;
}
.common_steps{
    margin-bottom: 50px;
    padding: 0 0 100px;
    background:	url("img/treatment/whitening/lp/step_arrow.svg") no-repeat center bottom;
    background-size: 100px auto;
}
.common_steps:last-child{
    margin-bottom: 80px;
    padding: 0;
    background:	none;
}
.lp_whiteing_flow .grid:nth-of-type(odd){
    width: 72%;
    padding-right: 24px;
}
.lp_whiteing_flow .grid:nth-of-type(even){
    width: 28%;
}
.lp_whiteing_flow .area:nth-of-type(odd){
    width: 10%;
}
.lp_whiteing_flow .area:nth-of-type(even){
    width: 90%;
    padding-left: 16px;
    font-weight: 600;
}
@media screen and (max-width: 800px) {
.common_steps{
    width: 92%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 32px;
}
.lp_whiteing_flow{
    padding: 24px 16px;
    background: #f8f8ed;
}
.lp_whiteing_flow .grid:nth-of-type(odd){
    width: 100%;
    margin-bottom: 24px;
    padding-right: 0;
}
.lp_whiteing_flow .grid:nth-of-type(even){
    width: 100%;
}
.lp_whiteing_flow .area:nth-of-type(odd){
    width: 15%;
}
.lp_whiteing_flow .area:nth-of-type(even){
    width: 85%;
    padding-left: 16px;
}
}



.mahina__lagoon{
    background: #fff url("img/mahina_lagoon/bg.jpg") repeat 0 0;
	background-size: 372px auto;
}
.mahina__lagoon article{
    width: 100%;
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
	background: #fff;
	padding: 4em 5.6em;
}
.mahina__lagoon section,
.mahina__lagoon .section{
	background: #fff;
}
.mahina__lagoon .first__area{
	width: 100%;
	max-width: 1060px;
	margin: 0 auto 40px;
}
.mahina__lagoon .fx_r .box{
	width: calc(50% - 1.5em);
	margin: 0 0 24px;
	padding: 1.5em;
	background: #f6f1d8;
	text-align: left;
}
.mahina__lagoon .grid:nth-of-type(1){
	width: 85%;
}
.mahina__lagoon .grid:nth-of-type(2){
	width: 15%;
}
.mahina__lagoon .hd{
	font-size: 18px;
	font-weight: bold;
}
.mahina__lagoon .hd br{
	display: none;
}
.mahina__lagoon .checklist li{
	padding: 4px 0 0 24px;
    background: url("img/mahina_lagoon/check.svg") no-repeat 0 9px;
	background-size: 18px auto;
	color: #c5653a;
	font-weight: bold;
}
.mahina__lagoon .two_columns_f .box{
	width: 50%;
	margin-bottom: 24px;
	text-align: left;
}
.mahina__lagoon .two_columns_f .box:nth-child(3){
	width: 44%;
	margin: 0 3%;
	padding-right: 1.7em;
	padding-bottom: 40px;
    background: #fff url("img/mahina_lagoon/cxobg.jpg") no-repeat right bottom;
	background-size: 52px auto;
}
.mahina__lagoon .two_columns_f .box:nth-child(4){
	width: 45%;
	margin-right: 5%;
}
@media screen and (max-width: 540px) {
.mahina__lagoon article{
	width: 92%;
	margin: 40px auto;
	padding: 1.2em;
}
.mahina__lagoon .fx_r .box{
	width: 100%;
}
.mahina__lagoon .grid:nth-of-type(1){
	width: 80%;
	margin-bottom: 16px;
}
.mahina__lagoon .grid:nth-of-type(2){
	width: 20%;
	margin-bottom: 16px;
}
.mahina__lagoon .grid:nth-of-type(2) img{
	width: 100%;
	height: auto;
}
.mahina__lagoon .hd br{
	display: block;
}
.mahina__lagoon .two_columns_f .box{
	width: 100%;
	text-align: center;
}
.mahina__lagoon .two_columns_f .box:nth-child(3){
	width: 100%;
	margin: 0 0 24px;
	padding-right: 0;
	padding-bottom: 80px;
    background: #fff url("img/mahina_lagoon/cxobg.jpg") no-repeat right bottom;
	background-size: 80px auto;
	text-align: left;
}
.mahina__lagoon .two_columns_f .box:nth-child(4){
	width: 100%;
	margin-right: 0;
}
}

.ml__before_after{
	width: 100%;
	max-width: 630px;
	margin: 0 auto 40px;
	text-align: left;
}



.ml__price .box{
	margin-bottom: 24px;
}
.ml__price .three_columns_f .box{
    width: calc( 33% - 8px);
}
 .box{
	margin-bottom: 24px;
}
.ml__price_chushaku{
	color: #c13d02;
	text-align: right;
	font-size: 14px;
	letter-spacing: 0;
}
.ml__price_chushaku br{
	display: none;
}
@media screen and (max-width: 540px) {
.ml__price .three_columns_f .box{
    width: 80%;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.ml__price_chushaku{
	text-align: left;
}
.ml__price_chushaku br{
	display: block;
}
}
.ml__hyalon{
	padding: 3.2em;
	background: #e8eff7;
	text-align: left;
}
.ml__hyalon .hd{
	margin-bottom: 24px;
	color: #384990;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}
@media screen and (max-width: 540px) {
.ml__hyalon{
	padding: 2em;
	background: #e8eff7;
	text-align: left;
}
.ml__hyalon .hd{
	font-size: 20px;
	text-align: left;
}
}





