@charset "utf-8";
/*
Theme Name: こたに歯科
Theme URI: https://www.kotani-dental.com/
Description: Versions 1.0.x
Version: 1.0
Author: Dental Promotion
*/

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

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

.box17{
    position: relative;
    margin: 24px 0;
    padding: 24px;
    border-top: solid 2px #253a3d;
    border-bottom: solid 2px #253a3d;
    color: #253a3d;
}
.box17:before, .box17:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 2px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: #253a3d;
}
.box17:before {left: 10px;}
.box17:after {right: 10px;}
.box17 p {
    margin: 0; 
    padding: 0;
}
.box17 div{
    margin: 0 0 8px; 
    font-size: 22px;
    font-weight: bold;
}
@media screen and (max-width: 540px) {
.box17{
    text-align: left;
}
.box17 div{
    text-align: center;
}
}



html{
	overflow: auto;
}
@media screen and (max-width: 768px) {
html{
	font-size:62.5%;
	-webkit-text-size-adjust: 100%;
}
}


body {
	width: 100%;
    max-width: 1440px;
	margin:0 auto;
	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;
	overflow: hidden;

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

	animation: fadeIn 2s ease 0s 1 normal;
	-webkit-animation: fadeIn 2s ease 0s 1 normal;
}
@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: #3c95a3;
	color: rgba(255,255,255,1);
	text-shadow: 1px 1px 2px rgba(240, 240, 200, 1);
}
::-moz-selection {
	background: #3c95a3;
	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: #3c95a3;
}
a:active, a:hover{
	color: #007cbb;
	text-decoration: underline;
}

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

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;
}
.fx,
.two_columns_fx,
.two_block_fx,
.three_columns_fx,
.four_columns_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;
}

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

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





.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: 768px) {
.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;}

.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) {
}


.fwb{font-weight: 700;}
.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;}

.su{
    opacity:0;
    transform: translateY(60px);
}
.fiu{
    transition: all 0.5s ease-in;
    transform: translateY(0);
    opacity: 1 !important;
}
.blocklink{
    position: relative;
}
.blocklink a{
    position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
.blocklink a:hover{
    opacity: .5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
}




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

.ic_mc{color: #249dab;}




.more a{
	display: block;
    margin: auto;
    padding: 1em .5em;
    background: #2c4548 url("../../../img/common/svg/arrow.svg") no-repeat 98% center;
    background-size: 20px auto;
    color: #fff;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.2;
}
.more a:hover{
    background: #1d252c url("../../../img/common/svg/arrow.svg") no-repeat 99% center;
    background-size: 20px auto;
    color: #fff;
    text-decoration: none;
}
@media screen and (max-width: 768px) {
.more a{
    width: 100%;
}
}


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





#upper_toggle{
/*    display: none;*/
}
#upper_toggle{
    display: inherit;
    position: fixed;
    width: 40px;
    height: 40px;
/*    top: 0;*/
    top: 1%;
    left: 1%;
    cursor: pointer;
    background: rgba(74,118,72,.9);
    z-index: 10;
}
#upper_toggle .open_button{
/*
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 200px;
    height: 30px;
    margin: auto;
    padding: 8px 16px;
    color: #444;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
    box-shadow: 0 1px 3px rgba(0,0,0,0.6);
    border-radius: 16px;
    cursor: pointer;
*/
}
#upper_toggle span{
    display: block;
    position: absolute;
    height: 2px;
    width: 80%;
    margin: auto;
    background: #fff;
    left: 0;
    right: 0;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
}
#upper_toggle span:nth-child(1) {
    top: 8px;
}
#upper_toggle span:nth-child(2) {
    top: 18px;
}
#upper_toggle span:nth-child(3) {
    top: 28px;
}
.modal_logo{
    margin: 0 0 1em;
    text-align: center;
}
.modal_logo img{
    max-width: 70%;
    height: auto;
}
.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 .5s, transform 0s .5s;
    transform: scale(0);
}
.modal_trigger{
    position: absolute;
    width: 100%;
    height: 100%;
}
.modal_content{
/*    align-self: center;*/
    width: 100%;
    height: 100%;
    overflow-y: auto;
    margin: auto;
    padding: 40px 0 16px;
    text-align: left;
    box-sizing: border-box;
    background: #fff;
    line-height: 1.4em;
    transform: scale(0.3);
    transition: 0.5s;
}
.close_button{
    position: absolute;
    top: 14px;
    right: 16px;
    font-size: 24px;
    cursor: pointer;
}
.close_button_b{
    width: 32px;
    position: absolute;
    bottom: 10;
    left: 0;
    right: 0;
    margin: auto;
    font-size: 24px;
    cursor: pointer;
}
.tab{
    width: 92%;
    margin: 0 auto;
}
.tab li{
    width: calc(33% - 1px);
    margin-bottom: 16px;
    padding: 16px 8px;
    color: #fff;
    font-weight: bold;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    font-size: 13px;
    min-height: 77px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
.tab li::before {
    position: absolute;
    bottom: -15px;
    width: 30px;
    height: 15px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
}
.tab li:nth-child(1),
.tab li:nth-child(1)::before{
    background: #786250;
}
.tab li:nth-child(2),
.tab li:nth-child(2)::before{
    background: #3c95a3;
}
.tab li:nth-child(3),
.tab li:nth-child(3)::before{
    background: #1d6ca4;
}

.tab_sub{
    width: 100%;
    margin: 0 auto;
    padding: 0;
    display: flex;
    list-style: none;
}
.tab_sub li{
    width: calc( 33% - 4px );
    margin-bottom: 8px;
    text-align: center;
}
.tab_sub::after{
    content: "";
    display: block;
    width: calc( 33% - 4px );
}
.tab_sub li.active{
} 
.list{
    width: 92%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 8px;
}

.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-bottom: 8px;
    padding: 16px 8px;
    border-radius: 8px;
    border: 2px solid #bcbcb5;
}
.childnav_box{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}
.childnav_box .grid{
    width: calc(33% - 4px);
    margin-bottom: 8px;
}
.childnav_box::after{
    content: "";
    display: block;
    width: calc( 33% - 4px );
}
.accordion {
    display: flex;
    flex-direction: column;
}
.accordion-item-header {
    cursor: pointer;
}
.accordion-item-body{
    display: none;
}




.modal_wrap input:checked ~ .modal_overlay{
    opacity: 1;
    transform: scale(1);
    transition: opacity 0.5s;
}
.modal_wrap input:checked ~ .modal_overlay .modal_content{
    transform: scale(1);
}
/*
.modal_wrap li{
    margin-bottom: 1em;
    padding: 5px 0 5px 32px;
    border-bottom: 1px solid #eee;
    letter-spacing: 0;
}
*/
.modal_wrap ol{
    margin-bottom: 1em;
    padding: 8px 0 0;
}
.modal_wrap li li{
    float: left;
    width: 25%;
    margin-bottom: 4px;
    border-bottom: 1px solid #eee;
}
.modal_wrap li li:nth-of-type(4n+1){
    clear: both;
}
.modal_wrap li a{
    display: block;
}
@media screen and (max-width: 768px) {
.modal_wrap li li{
    width: 33%;
}
.modal_wrap li li:nth-of-type(4n+1){
    clear: none;
}
.modal_wrap li li:nth-of-type(3n+1){
    clear: both;
}
@media screen and (max-width: 480px) {
.modal_wrap li li{
    float: none;
    width: 100%;
}
}
}




.acd-check{
    display: none;
}
.acd-label{
    background: #333;
    color: #fff;
    display: block;
    margin-bottom: 1px;
    padding: 10px;
}
.acd-content{
    border: 1px solid #333;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.acd-check:checked + .acd-label + .acd-content{
    height: 40px;
    opacity: 1;
    padding: 10px;
    visibility: visible;
}



#head_contact_area{
    margin-bottom: 1em;
    padding: 2em;
    background: #253a3d url("../../../img/common/contactbg.jpg") no-repeat center center;
    background-size: 100% auto;
    color: #fff;
    text-align: center;
}
#head_contact_area .hd{
    margin-bottom: 1em;
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
}
#head_contact_area .btn{
    padding: .5em;
    background: rgba(255,255,255,.7);
    text-align: center;
}
#head_contact_area .btn a{
    display: block;
}
@media screen and (max-width: 767px) {
#head_contact_area{
    padding: 1em;
    background: #253a3d url("../../../img/common/contactbg.jpg") no-repeat center center;
    background-size: 100% auto;
    color: #fff;
    text-align: center;
}
}





header{
	width: 100%;
	margin: 0 auto;
	text-align: left;
    background: #fff;
}
#upper{
    position: relative;
    background: #fff;
    width: 100%;
    height: 80px;
    margin: auto;
    z-index: 20;
}
#logo{
    position: absolute;
    width: 300px;
    height: 42px;
    margin: auto;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
#upperform{
    position: absolute;
    width: 300px;
    height: 57px;
    right: 2%;
    top: 0;
}
@media screen and (max-width: 768px) {
#logo{
    width: 200px;
    height: 28px;
    margin: auto;
/*    left: 1em;*/
}
#upper{
    height: 64px;
    z-index: 1;
}
}



#gnav{
	width: 92%;
    max-width: 1280px;
	margin: 8px auto 0;
}
#gnav nav{
	width: 100%;
	margin: 0;
}
#gnav nav ul{
	position: relative;
	padding: 0;
    font-weight: 700;
}
#gnav nav ul::after {
	display: block;
	clear: both;
	content: '';
}
#gnav nav ul li{
	position: relative;
	float: left;
	width: calc(100% / 7);
	letter-spacing: 0;
    text-align: center;
}
#gnav nav ul li:not(:first-child) {
	border-left: none;
}
#gnav nav ul li a{
	display: block;
	color: #333;
	text-align: center;
    border-bottom: 3px solid #fff;
}
#gnav nav ul li a:hover,
#gnav nav ul li a.ov{
	text-decoration: none;
    border-bottom: 3px solid #3c95a3;
}
#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: #f2eae5;
    color: #333;
	text-decoration: none;
    text-align: left;
}
#gnav nav ul li li a:hover{
	padding: 8px;
    background: #c9c4ca;
	color: #333;
}









#mv{
    padding: 0 0 1.5em;
}
/*
#mv a:hover img{
	opacity: 1;
	-webkit-opacity: 1;
	-moz-opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	display: inline-block;
	backface-visibility: hidden;
}
*/

#mv .dn{
	display: inherit;
}
#mv .spc{
	display: none;
}
#submv{
    padding: 5em 0;
    background: #3ec3d4;
    color: #fff;
    text-align: center;
    font-size: 25px;
}
@media screen and (max-width: 768px) {
#mv{
    background: none;
    background-size: 100% auto;
}
@media screen and (max-width: 767px) {
#mv .dn{
	display: none;
}
#mv .spc{
	display: inherit;
}
#submv{
    padding: 2em 1em;
    font-size: 23px;
}
}
}


.swiper-container{
    margin-left: auto;
    margin-right: auto;
}
.index___ct{
    width: 92%;
    max-width: 764px;
    margin: 0 auto;
    padding: 0 0 40px;
}
.index___ct .grid{
    width: calc(50% - 4px);
    text-align: center;
}
@media screen and (max-width: 767px) {
.index___ct .grid{
    width: 100%;
    margin-bottom: 8px;
}
}





#top p{
    margin-bottom: 24px;
}
#top h2{
    margin: 0 0 24px;
    font-size: 24px;
}
#top h3{
    margin: 0 0 16px;
    font-size: 23px;
}





#fv{
    padding: 4em 8em 15em;
    background: #f5f5f5 url("../../../img/fvbg_pc.jpg") no-repeat center bottom;
    background-size: 110% auto;
    text-align: left;
}
#fv h1{
    margin: 0 0 1.3em;
    padding: 2em 0 0;
    background: url("../../../img/common/svg/kdc.svg") no-repeat center 0;
    background-size: 240px auto;
    font-size: 25px;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
    text-align: center;
}

@media screen and (max-width: 1023px) {
#fv{
    padding: 2em 2em 10em;
    background: #f5f5f5 url("../../../img/fvbg_pc.jpg") no-repeat center bottom;
    background-size: 110% auto;
}
@media screen and (max-width: 767px) {
#fv{
    padding: 2em 1em 10em;
    background: #f5f5f5 url("../../../img/fvbg.jpg") no-repeat center bottom;
    background-size: 100% auto;
}
#fv h1{
    text-align: left;
}
}
}





#index__guide{
    padding: 40px 0 0;
    background: #ebf3f5;
    text-align: left;
}
#index__guide li{
    width: calc(16% - 4px);
}
#index__guide .inner{
    width: 100%;
    max-width: 1080px;
    margin-right: auto;
    margin-left: auto;
    padding: 4em 0;
    background: #ebf3f5;
    text-align: left;
}
#index__guide h2{
    text-align: center;
    font-size: 23px;
    font-weight: 700;
}
@media screen and (max-width: 767px) {
#index__guide .inner{
    width: 92%;
}
#index__guide li{
    width: calc(33% - 4px);
    margin-bottom: 24px;
    text-align: center;
}
}



#patients{
    padding: 4em 8em;
    background: #ebf3f5;
    text-align: left;
}
#patients h2{
    padding: 2em 0 0;
    background: url("../../../img/common/svg/forpatients.svg") no-repeat 0 0;
    background-size: 240px auto;
    color: #3c95a3;
    font-size: 23px;
    font-weight: 700;
}
#patients h2 br{
    display: none;
}
#patients h3{
    color: #3c95a3;
    font-size: 20px;
    font-weight: 700;
}
#patients h3 span{
    display: block;
    color: #b25978;
    font-size: 15px;
    font-weight: 700;
}
#patients .blocklink a:hover{
    background: #ebf3f5;
}
@media screen and (max-width: 1023px) {
#patients{
    padding: 4em 2em;
}
@media screen and (max-width: 767px) {
#patients{
    padding: 3em 0;
}
#patients h2{
    padding: 2em 1em 0;
    background: url("../../../img/common/svg/forpatients.svg") no-repeat 1em 0;
    background-size: 240px auto;
}
#patients h2 br{
    display: block;
}
#patients .inner{
    padding: 0 1em;
}
#patients .more{
    width: 90%;
    margin: auto;
    padding: 0 1em;
}
}
}






#type_of_implant{
    padding: 4em 8em;
    background: #f5efeb;
    text-align: left;
}
#type_of_implant h2{
    padding: 2.4em 0 0;
    background: url("../../../img/common/svg/typeofimplant.svg") no-repeat 0 0;
    background-size: 330px auto;
    color: #3c95a3;
    font-size: 23px;
    font-weight: 700;
}
#type_of_implant h2 br{
    display: none;
}
#type_of_implant h3{
    color: #3c95a3;
    font-size: 20px;
    font-weight: 700;
}
#type_of_implant h3 span{
    display: block;
    color: #b25978;
    font-size: 15px;
    font-weight: 700;
}
#type_of_implant .blocklink a:hover{
    background: #fff;
}
#type_of_implant .box{
    padding: 1em;
    background: #fff;
    border: 1px solid #47a5b2;
}
#type_of_implant ol{
    width: 80%;
    margin: auto;
    text-align: center;
}
#type_of_implant li{
    width: calc(33% - 2px);
    text-align: center;
}
/*
#type_of_implant li{
    float: left;
    width: 25%;
    padding: 0 1em;
}
*/
@media screen and (max-width: 1023px) {
#type_of_implant{
    padding: 4em 2em;
}
#type_of_implant .box{
    padding: 1em;
    background: #fff;
    border: 1px solid #47a5b2;
}
@media screen and (max-width: 767px) {
#type_of_implant{
    padding: 3em 1em;
}
#type_of_implant h2{
    padding: 1.6em 0 0;
    background: url("../../../img/common/svg/typeofimplant.svg") no-repeat 0 0;
    background-size: 80% auto;
}
#type_of_implant h2 br{
    display: block;
}
#type_of_implant li{
    margin-bottom: 16px;
}
}
}



#tokushoku{
    padding: 4em 8em;
    text-align: left;
    background: #fff;
}
#tokushoku h2{
    font-size: 23px;
    text-align: center;
}
#tokushoku h2 span{
    font-size: 18px;
}
#tokushoku .box:nth-of-type(odd){
    float: left;
    width: 40%;
}
#tokushoku .box:nth-of-type(even){
    float: right;
    width: 59%;
}
#tokushoku table{
    width: 100%;
    border-collapse: collapse;
}
#tokushoku td{
    width: 50%;
    text-align: left;
    border: 1px solid #3c95a3;
}
#tokushoku td a{
    display: block;
    padding: 1em 2em 1em 1em;
    background: #fff url("../../../img/common/svg/arrow_green.svg") no-repeat 98% center;
    background-size: 20px auto;
    color: #3c95a3;
}
#tokushoku td a:hover{
    background: #fff url("../../../img/common/svg/arrow_green.svg") no-repeat 99% center;
    background-size: 20px auto;
}
@media screen and (max-width: 1024px) {
#tokushoku{
    padding: 2em;
}
#tokushoku .box:nth-of-type(odd){
    float: none;
    width: 100%;
}
#tokushoku .box:nth-of-type(even){
    float: none;
    width: 100%;
}
@media screen and (max-width: 767px) {
#tokushoku{
    padding: 2em 1em;
}
#tokushoku table{
    width: 100%;
    border-collapse: collapse;
    border-top: 1px solid #3c95a3;
}
#tokushoku td{
    display: block;
    width: 100%;
    text-align: left;
    border: 1px solid #3c95a3;
    border-top: 0;
}
}
}









#price{
    padding: 4em 8em;
    background: #fff url("../../../img/pricebg.jpg") no-repeat center center;
    background-size: cover;
    text-align: left;
}
#price h2{
    padding: 3.2em 0 0;
    background: url("../../../img/common/svg/price.svg") no-repeat 0 0;
    background-size: 150px auto;
    color: #3c95a3;
    font-size: 23px;
    font-weight: 700;
}
#price h2 br{
    display: none;
}
@media screen and (max-width: 1023px) {
#price{
    padding: 2em 2em;
    background: #fff url("../../../img/pricebg.jpg") no-repeat center center;
    background-size: cover;
    text-align: left;
}
@media screen and (max-width: 767px) {
#price{
    padding: 2em 1em;
    background: #fff url("../../../img/pricebg.jpg") no-repeat;
    background-size: cover;
}
#price h2{
    padding: 2em 0 0;
    background: url("../../../img/common/svg/price.svg") no-repeat 0 0;
    background-size: 32% auto;
}
}
}




#greeting{
    padding: 4em 8em;
    background: #ebf3f5;
    text-align: left;
}
#greeting h2{
    padding: 2.4em 0 0;
    background: url("../../../img/common/svg/greeting.svg") no-repeat 0 0;
    background-size: 240px auto;
    color: #3c95a3;
    font-size: 23px;
    font-weight: 700;
}
#greeting .boxL{
    float: left;
    width: 58%;
}
#greeting .boxR{
    float: right;
    width: 40%;
    text-align: center;
}
#greeting dl{
    border: 1px solid #5e9da7;
}
#greeting dt{
    padding: 1em;
    background: #5e9da7;
    color: #fff;
    font-weight: bold;
}
#greeting dd{
    padding: 1em;
    background: #fff;
}
@media screen and (max-width: 1023px) {
#greeting{
    padding: 2em;
    background: #ebf3f5;
    text-align: left;
}
#greeting .boxL{
    float: none;
    width: 100%;
}
#greeting .boxR{
    float: none;
    width: 100%;
}
@media screen and (max-width: 767px) {
#greeting{
    padding: 2em 0;
}
#greeting h2{
    padding: 2.4em 1em 0;
    background: url("../../../img/common/svg/greeting.svg") no-repeat 1em 0;
    background-size: 50% auto;
}
#greeting .inner{
    padding: 0 1em;
}
}
}





#soudan{
    padding: 4em 8em;
    background: #fff url("../../../img/soudanbg.jpg") no-repeat center center;
    background-size: cover;
    text-align: center;
}
#soudan .inner{
    padding: 2em;
    background: rgba(255,255,255,.6);
    text-align: center;
}
#soudan h2{
    position: relative;
    margin-bottom: 1em;
    padding: .75em 1em;
    background: #3c95a3;
    color: #fff;
    font-weight: 700;
    font-size: 23px;
}
#soudan h2::before,
#soudan h2::after {
    content: '';
    position: absolute;
    top: 100%;
    border-style: solid;
    border-color: transparent;
}
#soudan h2::before {
    left: 0;
    border-width: 0 15px 15px 0;
    border-right-color: #1a4046;
}
#soudan h2::after {
    right: 0;
    border-style: solid;
    border-width: 15px 15px 0 0;
    border-top-color: #1a4046;
}

/*

#soudan h2{
    font-size: 23px;
}
*/
#soudan h2 span{
    display: block;
    font-size: 16px;
}
#soudan .box{
    padding: 1em;
    border: 1px dashed;
    text-align: left;
}
@media screen and (max-width: 1023px) {
#soudan{
    padding: 4em 2em;
}
@media screen and (max-width: 767px) {
#soudan{
    padding: 2em 1em;
}
#soudan .inner{
    padding: 1em;
}
}
}





#guidenav{
    padding: 4em 8em;
    background: #fff;
    text-align: center;
}
#guidenav .hd{
    margin-bottom: 1.5em;
    font-size: 23px;
    line-height: 1;
    font-weight: 700;
}
#guidenav .hd span{
    display: block;
    line-height: 2;
    color: #3c95a3;
    font-size: 15px;
    letter-spacing: 0;
    font-family: "Arial Black", Gadget, "sans-serif";
}
#guidenav ol{
    width: 70%;
    margin-right: auto;
    margin-left: auto;
}
#guidenav li{
    float: left;
    width: 16.667%;
    padding: 0 1%;
    text-align: center;
}
@media screen and (max-width: 1023px) {
#guidenav{
    padding: 4em 2em;
}
#guidenav ol{
    width: 100%;
}
@media screen and (max-width: 767px) {
#guidenav{
    padding: 2em 1em;
}
#guidenav li{
    float: left;
    width: 33.333%;
    margin-bottom: 1em;
    padding: 0 1%;
}
#guidenav li:nth-of-type(3n+1){
    clear: both;
}
#guidenav li:nth-of-type(3n){
    float: right;
}
}
}






#column_news .box{
    width: 50%;
}
#column_news .hd{
    margin-bottom: 1.5em;
    font-size: 23px;
    line-height: 1;
    font-weight: 700;
    text-align: center;
}
@media screen and (max-width: 767px) {
#column_news .box{
    width: 100%;
}
}



#column_area{
    padding: 8em 0 0;
    background: #fff url("../../../img/common/columnbg.jpg") no-repeat center 0;
    background-size: 100% auto;
    text-align: left;
}
#column_area .blocklink a:hover{
    background: #fff;
}
#column_area .oz{
    width: 70%;
    margin-right: auto;
    margin-left: auto;
}
#column_area .oz .s_imgL{
    width: 30%;
}
@media screen and (max-width: 1023px) {
#column_area{
    padding: 4em 1em 0;
    background: #fff url("../../../img/common/columnbg.jpg") no-repeat center 0;
    background-size: 100% auto;
    text-align: left;
}
#column_area .oz{
    width: 100%;
}
@media screen and (max-width: 767px) {
#column_area{
    padding: 8em 0 2em;
}
#column_area .oz{
    width: 92%;
    margin-right: auto;
    margin-left: auto;
}
#column_area .more{
    width: 92%;
    margin-right: auto;
    margin-left: auto;
}
}
}



#news{
    padding: 5em 4em 4em;
    background: #eee;
    text-align: left;
}
#news .blocklink a:hover{
    background: #f2f2f2;
}
#news .blocklink{
    margin-bottom: 1em;
    padding-bottom: .4em;
    border-bottom: 1px solid #fff;
}
#news .blocklink:last-of-type{
    margin-bottom: 0;
}
#news time{
    display: block;
    color: #3c95a3;
    font-size: .8em;
    font-weight: 600;
}
@media screen and (max-width: 1023px) {
#news{
    padding: 2em 2em;
}
@media screen and (max-width: 767px) {
#news{
    padding: 2em 1em;
}
}
}






#contact_area{
    padding: 5em 0;
    background: #253a3d url("../../../img/common/contactbg.jpg") no-repeat center center;
    background-size: 100% auto;
    color: #fff;
    text-align: center;
}
#contact_area .hd{
    margin-bottom: 1.5em;
    font-size: 23px;
    line-height: 1;
    font-weight: 700;
}
#contact_area .wt{
    padding: 2em;
    border: 1px solid;
    text-align: center;
}
#contact_area .btn{
    padding: 1em;
    background: rgba(255,255,255,.7);
    text-align: center;
}
#contact_area .btn a{
    display: block;
}
@media screen and (max-width: 767px) {
#contact_area{
    padding: 2em 1em;
    background: #253a3d url("../../../img/common/contactbg.jpg") no-repeat center center;
    background-size: 100% auto;
    color: #fff;
    text-align: center;
}
#contact_area .inner{
    max-width: 720px;
    width: 92%;
}
#contact_area .wt{
    padding: 1em;
    text-align: left;
}
}











footer{
    padding: 4em 0 0;
    background: #f2eae4;
}
footer .inner{
    max-width: 1440px;
    width: 80%;
    margin-left: auto;
    margin-right: auto;
}
footer .hd{
    margin: 0 0 3em;
    text-align: center;
}
footer .subhd{
    margin: 0 0 1em;
    padding: .5em;
    background: #253a3d;
    color: #fff;
    font-size: 20px;
    text-align: center;
    border-radius: 2em;
}
footer .boxL{
    float: left;
    width: 48%;
    text-align: left;
}
footer .boxR{
    float: right;
    width: 48%;
}
#bytrain{
    min-height: 30px;
    padding: 0 0 0 2em;
    background: url("../../../img/common/svg/train.svg") no-repeat;
    background-size: 20px auto;
}
#bycar{
    min-height: 30px;
    padding: 0 0 0 2em;
    background: url("../../../img/common/svg/car.svg") no-repeat;
    background-size: 24px auto;
}
#bybus{
    min-height: 30px;
    padding: 0 0 0 2em;
    background: url("../../../img/common/svg/bus.svg") no-repeat;
    background-size: 24px auto;
}
@media screen and (max-width: 1023px) {
footer .inner{
    max-width: 960px;
    width: 92%;
}
footer .boxL{
    float: none;
    width: 100%;
    margin-bottom: 2em;
    text-align: left;
}
footer .boxR{
    float: none;
    width: 100%;
}
@media screen and (max-width: 767px) {
footer .inner{
    max-width: 720px;
    width: 92%;
}
footer .hd{
    margin: 0 0 1em;
    text-align: center;
}
}
}






#footlinks{
    background: #fff;
    font-size: 15px;
    letter-spacing: 0;
}
#footlinks ul{
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
}
#footlinks li{
    float: left;
    width: 20%;
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
}
#footlinks li a{
    display: block;
    padding: 1em;
    background: #f2f2f2;
    color: #253a3d;
}
#footlinks li a:hover{
    background: #eee;
}
@media screen and (max-width: 768px) {
#footlinks li{
    float: left;
    width: 50%;
}
#footlinks li:nth-of-type(odd){
    clear: both;
}
#footlinks li a{
    letter-spacing: 0;
    font-size: 14px;
}
}




#copyright{
	padding: 1em 0;
    text-align: center;
    background: #172426;
    color: #fff;
    letter-spacing: 0;
}
#copyright a{
    color: #fff;
}




#bottom{
    position: fixed;
    bottom: 0;
    right: 0;
	line-height: 100%;
	box-sizing: border-box;
    z-index: 300;
}
#bottom .box{
	display: none;
}
#bottom p a{
    float: right;
    width: 64px;
	min-height: 64px;
    padding: 28px 0 0;
    text-align:center;
    background: #3c95a3;
    color: #fff;
    display: block;
	font-size: 40px;
	font-weight: 700;
    text-decoration: none;
    border-radius: 50%;
}
@media screen and (max-width: 767px) {
#bottom{
	width: 100%;
	left: 0;
    bottom: 0;
}
/*
#bottom p{
    display: none;
}
*/
#bottom .box{
	display: block;
	float: left;
    width: 33.333%;
    border-right: 1px solid #fff;
}
#bottom .box img{
    width: auto;
    height: 40px;
}
#bottom .box:nth-of-type(3){
	float:right;
	border-right: 0;
}
#bottom .box a{
    width: 100%;
    display: block;
    padding: 12px 0;
    background: #273d66 !important;
    color: black;
	font-size: 16px;
	font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0;
}
#bottom .box:nth-of-type(1) a{
    background: #79acde !important;
}
#bottom .box:nth-of-type(2) a{
    background: #4e72b4 !important;
}
}









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

#breadcrumbs{
    padding: 3% 5%;
	text-align: right;
}
#wrap{
    margin: 0;
    text-align: left;
    background: #fff;
}
#wrap p{
	margin: 0 0 24px;
}
#wrap strong{
	background: linear-gradient(transparent 70%, #f6f317 70%);
}
#wrap .kyouchou span{
	background: linear-gradient(transparent 70%, #f6f317 70%);
}
#wrap b{
    color: #4e72b4;
}
#wrap article{
    padding: 5em 0;
}
#wrap section,
.section
{
    max-width: 1280px;
/*    max-width: 1024px;*/
    width: 92%;
    margin-left: auto;
    margin-right: auto;
}
#wrap article h1{
    position: relative;
    margin: 0 0 2em;
    padding: 0 0 .8em;
    color: #4e4e4e;
    text-align: center;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.4;
}
#wrap article h1::after {
    position: absolute;
    width: 10%;
    height: 4px;
    margin: auto;
    bottom: -4px;
    left: 0;
    right: 0;
    background: #253a3d;
    z-index: 2;
    content: '';
}
#wrap article h2{
    margin-bottom: 1em;
    padding: .75em 1em;
    background-color: #253a3d;
    color: #fff;
    font-weight: 700;
    font-size: 23px;
}
/*
#wrap article h2{
    position: relative;
    margin-bottom: 1em;
    padding: .75em 1em;
    background-color: #253a3d;
    color: #fff;
    font-weight: 700;
    font-size: 23px;
}
#wrap article h2::before,
#wrap article h2::after {
    content: '';
    position: absolute;
    top: 100%;
    border-style: solid;
    border-color: transparent;
}
#wrap article h2::before {
    left: 0;
    border-width: 0 15px 15px 0;
    border-right-color: #000;
}
#wrap article h2::after {
    right: 0;
    border-style: solid;
    border-width: 15px 15px 0 0;
    border-top-color: #000;
}
*/
#wrap article h2 a{
    color: #fff;
    display: block;
}
/*
#wrap article h3{
    margin-bottom: 1em;
    padding: 1em;
    background: #fff;
    border-bottom: 6px double #3c95a3;
}
*/
#wrap article h3{
	position: relative;
	margin: 0 0 24px;
	padding: 2% 3%;
    background: #e7f3f4;
    color: #249dab;
	font-size: 20px;
    font-weight: 700;
}
#wrap article h3:after {
	position: absolute;
	content: '';
	top: 100%;
	left: 30px;
	width: 0;
	height: 0;
	border: 15px solid transparent;
	border-top: 15px solid #e7f3f4;

}
#wrap article h4{
    position: relative;
	margin-bottom: 16px;
    padding: 0 0 8px;
    border-bottom: 4px solid #ccc;
	font-size: 18px;
    font-weight: 700;
}
#wrap article h4::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: '';
    width: 20%;
    height: 4px;
    background: #3c95a3;
}
#wrap article h5{
	margin-bottom: 16px;
    color: #4c864a;
	font-size: 17px;
    font-weight: 700;
}
.boxL{
    float: left;
    width: 47%;
}
.boxR{
    float: right;
    width: 47%;
}
.two_columns .box{
    width: 48%;
}
.two_block_fx .box,
.two_columns_fx .box{
    width: calc(50% - 8px);
}
.two_columns .box:nth-of-type(odd){
    clear: both;
    float: left;
}
.two_columns .box:nth-of-type(even){
    float: right;
}
.three_blocks .box{
    float: left;
    width: 32%;
}
.three_blocks .box:nth-of-type(3n-1){
    margin-left: 2%;
}
.three_blocks .box:nth-of-type(3n){
    float: right;
}
.three_blocks .box:nth-of-type(3n+1){
    clear: both;
}
.three_columns .box{
    float: left;
    width: 32%;
}
.three_columns .box:nth-of-type(3n-1){
    margin-left: 2%;
}
.three_columns .box:nth-of-type(3n){
    float: right;
}
.three_columns .box:nth-of-type(3n+1){
    clear: both;
}



.four_columns .box{
    float: left;
    width: 25%;
    padding: 0 5px;
    text-align: left;
}
.two_block .box{
    width: 48%;
}
.two_block .box:nth-of-type(odd){
    clear: both;
    float: left;
}
.two_block .box:nth-of-type(even){
    float: right;
}
.four_columns_fx .box{
    width: calc(25% - 8px);
}
.three_columns_fx .box{
    width: calc(33% - 8px);
}
.four_block .box{
    float: left;
    width: 25%;
    padding: 0 .2em;
    text-align: center;
}
.four_block .box:nth-of-type(5){
    clear: both;
}

figcaption{
    padding-top: 1em;
}
.oz .imgL,
.oz .s_imgL{
    max-width: 40%;
    margin-right: 2%;
}
.oz .imgR,
.oz .s_imgR{
    max-width: 40%;
    margin-left: 2%;
}
#wrap .notes{
    padding: 3%;
    text-align: left;
}
#wrap .notes_lb{
    background: #e7f3f4;
}
#wrap .notes_lb span{
    color: #239dab;
    font-size: 17px;
    font-weight: 700;
}
#wrap .notes li{
    margin: 0 0 8px;
}
#wrap .disc_list li{
    margin-left: 0;
}
#wrap .disc_list li::before{
    content: "・ ";
}
#wrap .checkbox li{
    margin-left: 0;
}




#wrap .bbline{
    padding-bottom: 2%;
    border-bottom: 1px solid #ddd;
}
#wrap .step{
    padding-bottom: 4%;
    background-image: url("../../../img/common/svg/next.svg");
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: 40px auto;
}
#wrap dd.square div::before,
#wrap .square li::before
{
    content: "■ ";
}
#wrap .faq dt{
    position: relative;
	margin-bottom: 16px;
    padding: 0 0 8px;
    border-bottom: 4px solid #ccc;
	font-size: 18px;
    font-weight: 700;
}
#wrap .faq dt::before{
    content: "Q. ";
    font-size: 18px;
}
#wrap .faq dt::after{
    position: absolute;
    bottom: -4px;
    left: 0;
    z-index: 2;
    content: '';
    width: 20%;
    height: 4px;
    background: #3c95a3;
}
#wrap .faq dd div:first-of-type::before{
    content: "A. ";
    font-size: 18px;
}



/*
#wrap dt{
    padding: 1% 2%;
    background: #75c9d3;
    color: #fff;
    text-align: center;
}
#wrap dd{
    padding: 2%;
    background: #fff;
    color: #75c9d3;
}
*/
#wrap .merit_demerit ul li::before{
    content: "■ ";
    color: #c46ca1;
}
#wrap .merit_demerit ol li::before{
    content: "■ ";
    color: #5c90c1;
}


@media screen and (max-width: 1280px) {
@media screen and (max-width: 1023px) {
#breadcrumbs{
	text-align: left;
}
#wrap section,
.section
{
    max-width: 960px;
    width: 92%;
    margin-left: auto;
    margin-right: auto;
}
@media screen and (max-width: 767px) {
#wrap article h1::after {
    width: 30%;
}
#wrap article h3{
	padding: 5%;
}
.oz .imgL{
    float: none;
    max-width: 100%;
    margin: 0 0 16px;
    text-align: center;
}
.oz .s_imgL{
    float: left;
    max-width: 30%;
    margin: 0 16px 0 0;
    text-align: left;
}
.oz .imgR{
    float: none;
    max-width: 100%;
    margin: 0 0 16px;
}
.boxL{
    float: none;
    width: 100%;
}
.boxR{
    float: none;
    width: 100%;
}
.two_columns .box{
    width: 100%;
}
.two_columns .box:nth-of-type(odd){
    clear: both;
    float: none;
}
.two_columns .box:nth-of-type(even){
    float: none;
}
.two_columns_fx .box{
    width: 100%;
}
.three_columns .box{
    float: none;
    width: 100%;
}
.three_columns .box:nth-of-type(3n-1){
    margin-left: 0;
}
.three_columns .box:nth-of-type(3n){
    float: none;
}
.three_columns .box:nth-of-type(3n+1){
    clear: none;
}
.four_columns .box{
    width: 49%;
    margin: 0 0 16px;
    text-align: left;
    line-height: 1.3;
    letter-spacing: 0;
}
.three_columns_fx .box,
.four_columns_fx .box{
    width: 100%;
}
.four_columns .box:nth-of-type(odd){
    clear: both;
    float: left;
}
.four_columns .box:nth-of-type(even){
    float: right;
}
#wrap .more a{
    width: 100%;
}
#wrap .notes{
    padding: 5%;
}
.four_block .box{
    float: left;
    width: 50%;
    padding: 0 .2em;
    text-align: center;
}
.four_block .box:nth-of-type(5){
    clear: both;
}


/*
#wrap .foot_c_navs{
    margin: 40px auto;
    padding: 4%;
}
#wrap .foot_c_navs li{
    float: none;
    width: 100%;
    margin: 0 0 16px;
    text-align: left;
}
#wrap .foot_c_navs li a{
    padding: 16px 8px 16px 16px;
}
#wrap .foot_c_navs li:nth-of-type(odd){
    float: none;
}
#wrap .foot_c_navs li:nth-of-type(even){
    float: none;
}
*/


}
}
}

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



#media_pics li{
    float: left;
    width: 33%;
    margin-bottom: 2em;
    padding: 0 .8em;
    text-align: center;
}
#media_pics li:nth-of-type(4){
    margin-left: 10.5em;
}
@media screen and (max-width: 767px) {
#media_pics li{
    float: none;
    width: 88%;
    margin: 0 auto .6em;
    padding: 0;
}
#media_pics li:nth-of-type(4){
    margin-left: auto;
}
}























#wrap .entry{
	margin: 0 0 10vw;
	text-align: left;
}
#wrap .entry h2 a{
    display: block;
    color: #fff;
}
#sitemap_list p{
    margin: 0;
}
#sitemap_list li{
    font-size: 1.1em !important;
}
#sitemap_list li li{
    font-size: .95em !important;
}
#sitemap_list li li li{
    font-size: .9em !important;
}




#wrap .cost table{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    border-top: 1px solid #ccc;
}
#wrap .cost tr{
    border-bottom: 1px solid #ccc;
}
#wrap .cost td{
    padding: .7em;
/*    border-bottom: 1px solid #ccc;*/
}
#wrap .cost td:nth-of-type(odd){
    width: 40%;
    background: #e7f3f4;
}
#wrap .cost td:nth-of-type(even){
    text-align: right;
}
#wrap .hotetsu .fx_c{
    min-height: 80px;
}
#wrap .hotetsu .fx_c div:nth-of-type(odd){
    width: 25%;
}
#wrap .hotetsu .fx_c div:nth-of-type(even){
    width: 75%;
}
@media screen and (max-width: 767px) {
#wrap .cost td{
    display: block;
    width: 100%;
}
#wrap .cost td:nth-of-type(odd){
    width: 100%;
}
#wrap .cost td:nth-of-type(even){
    width: 100%;
    text-align: left;
}
#wrap .hotetsu .fx_c div:nth-of-type(odd){
    width: 30%;
}
#wrap .hotetsu .fx_c div:nth-of-type(even){
    width: 70%;
}
}
#wrap .cost .oc{
    padding: .7em;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
#wrap .cost .oc{
    padding: .7em;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}








#wrap .form{
	text-align: left;
}
#wrap .form table{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    border-top: 1px solid #ccc;
}
#wrap .form table#bui{
    border-top: 0;
}
#wrap .form td{
    padding: 16px;
    border-bottom: 1px solid #ccc;
}
#wrap .form #bui td{
    padding: 0;
    border-bottom: 0;
}
#wrap .form td:nth-of-type(odd){
    width: 40%;
}
/*#wrap .form #bui td:nth-of-type(odd),*/

#wrap .form #bui{
    width: 100%;
}
#wrap .form #bui th:nth-child(1){
    width: 8%;
    background: #c6dee0;
}
#wrap .form #bui th:nth-child(2),
#wrap .form #bui th:nth-child(3){
    width: 46% !important;
    text-align: center;
    background: #c6dee0;
    font-weight: 100;
    line-height: 1;
}
#wrap .form #bui td:nth-child(2),
#wrap .form #bui td:nth-child(3){
    width: 46% !important;
    text-align: center;
}
#wrap .form #bui th,
#wrap .form #bui td{
    padding: 8px 0;
    text-align: center;
    vertical-align: middle;
    font-weight: 100;
    border: 1px solid #ccc;
}
#wrap .form td:nth-of-type(even){
    padding: 16px 8px 16px 32px;
}
#wrap .form em{
    padding: 4px;
    font-size: 14px;
    background: #3ec3d4;
    color: #fff;
    border-radius: 8px;
    line-height: 0;
    letter-spacing: 0;
}
#zip{
    width: 20%;
}
@media screen and (max-width: 767px) {
#wrap .form table{
    width: 100%;
}
#wrap .form td{
    display: block;
    padding: 8px;
}
#wrap .form #bui td{
    display: table-cell;
}
#wrap .form td:nth-of-type(odd){
    width: 100%;
}
#wrap .form td:nth-of-type(even){
    padding: 16px;
}
#wpcf7-f1689-p1688-o1 > form > div.section.mb80.form > table > tbody > tr:nth-child(10) > td:nth-child(2){
    padding: 16px 8px;
}
#wrap .form #bui th,
#wrap .form #bui td{
    vertical-align: center;
    border: 1px solid;
}
#wrap .form #bui th:nth-child(1){
    width: 10% !important;
}
#wrap .form #bui th:nth-child(2),
#wrap .form #bui th:nth-child(3){
    width: 45% !important;
    text-align: center;
}
#wrap .form #bui td:nth-child(2),
#wrap .form #bui td:nth-child(3){
    width: 45% !important;
    text-align: center;
    font-size: 12px;
    padding: 4px 0;
    letter-spacing: 0;
}
#wpcf7-f1689-p1688-o1 > form > div.section.mb80.form > table > tbody > tr:nth-child(10) > td:nth-child(2)
{
    padding: 8px 0;
}

/*
span.wpcf7-list-item{
	display: block !important;
}
*/
#zip{
    width: 100%;
}
}
#bui .wpcf7-list-item-label{
    display: flex;
    justify-content: center;
    align-items: center;
}
#bui .wpcf7-list-item-label input[type="checkbox"]{
    width: 20px;
}
#bui .wpcf7-list-item-label::before, #bui .wpcf7-list-item-label::after{
    content: " ";
    display: block;
}
#bui .wpcf7-list-item-label::before{
    padding-left: 2px;
}
.bui_checkbox > .wpcf7-list-item > label{
    flex-direction: column;
    line-height: .5;
}
#bui .wpcf7-list-item{
    margin: 0;
}

.wpcf7-validates-as-date{
	background: #fff;
	color: #333;
	border: 1px solid #ddd;
	font-size: 17px;
	padding: .5em;
	border-radius: 8px;
	box-shadow: 2px 2px 4px rgba(0,0,0,.1) inset;
}
.wpcf7 input{
	-webkit-transition:all .5s linear;
	-moz-transition:all .5s linear;
	transition:all .5s linear;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="tel"],
.wpcf7 textarea{
	background: #fff;
	color: #333;
	width: 80%;
    margin: 0 auto 8px;
	border: 1px solid #ddd;
	font-size: 17px;
	padding: .5em;
	border-radius: 8px;
	box-shadow:2px 2px 4px rgba(0,0,0,.1) inset;
}
#team-name{
	width: 60%;
}
#wrap .form table p{
    margin: 0 !important;
}

.wpcf7 input[type="radio"],
.wpcf7 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;
}
.wpcf7 select{
    margin-bottom: 8px;
	background: #fff;
	color:#333;
	border: 1px solid #ddd;
	font-size: 18px;
	padding: .5em;
	border-radius: 8px;
	box-shadow: 2px 2px 4px rgba(0,0,0,.1) inset;
	line-height: 2;
}



.wpcf7 input[type="submit"]{
	margin: 40px 0 0;
	padding: 8px 0 8px 24px;
    background: #3c95a3;
	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;
}
.wpcf7 input[type="submit"]:hover{
	box-shadow: 0 0 1px rgba(0,0,0,.2) inset;
    background: #1a4046;
    color: #fff;
}
.wpcf7 span.wpcf7-not-valid-tip {
	font-size: 80%;
}

@media screen and (max-width: 540px) {
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 input[type="tel"],
.wpcf7 textarea {
	width: 100%;
    margin: 0 auto 8px;
}
.wpcf7 select{
	width: 100%;
    margin: 0 auto 8px;
}
.wpcf7 input[type="submit"]{
    width: 100%;
}
.wpcf7-list-item{
    letter-spacing: 0;
}
.wpcf7-list-item input[type="checkbox"]{
    width: 12px;
}
}

.wpcf7-form-control.bui_checkbox {
    justify-content: space-evenly;
    column-gap: 0;
    margin-top: 4px;
}



.zygoma .grid{
    width: calc(50% - 16px);
}
@media screen and (max-width: 540px) {
.zygoma .grid{
    width: 100%;
}
}
.zygoma_merit .grid{
    width: calc(33% - 8px);
}
@media screen and (max-width: 540px) {
.zygoma_merit .grid{
    width: 100%;
}
}

.faq_area dl{
    width: calc(50% - 16px);
    margin-bottom: 80px;
}
.faq_area dt{
    position: relative;
    margin-bottom: 24px;
    padding: 1em;
    background: #253a3d;
    color: #fff;
    font-weight: 600;
}
.faq_area dt::after{
    position: absolute;
    content: '';
    top: 100%;
    left: 30px;
    border: 15px solid transparent;
    border-top: 15px solid #253a3d;
    width: 0;
    height: 0;
}
.faq_area dd div:first-of-type{
    position: relative;
    margin-bottom: 24px;
    padding: 1em;
    background: #e7f3f4;
    color: #239dab;
    font-weight: 600;
}
.faq_area dd div:first-of-type::after{
    position: absolute;
    content: '';
    top: 100%;
    left: 30px;
    border: 15px solid transparent;
    border-top: 15px solid #e7f3f4;
    width: 0;
    height: 0;
}
@media screen and (max-width: 540px) {
.faq_area dl{
    width: 100%;
    margin-bottom: 80px;
}
}


.yt_mov iframe,
.yt_mov video{
    width: 100%;
    max-width: 640px;
    aspect-ratio: 16 / 9;
    text-align: center;
    margin: 0 auto;
}

.jisseki_cases{
    width: 100%;
    max-width: 800px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 40px;
}
.jisseki_cases dt{
    margin-bottom: 24px;
    padding: 16px 0;
    border-radius: 32px;
    background: #4b6569;
    color: #fff;
    text-align: center;
    font-size: 18px;
}
.jisseki_cases dd{
    text-align: center;
}
.jisseki_cases dd span:first-child{
    font-size: 40px;
}
.jisseki_cases dd span:nth-child(2){
    font-size: 20px;
    padding-right: 16px;
}


