@charset "utf-8";
/*
Theme Name: しのぶ歯科
Theme URI: https://www.implant-418.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}
}

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{
	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:auto;
	padding:0;
	text-align:center;
	background:#fff;
	color: #000;
	font-family: "メイリオ", Meiryo, 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: 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: #0a1d7f;
}
a:active, a:hover{
	color: #0a1d7f;
	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;
}

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;}
i,em{font-style:normal;}
img{
    max-width: 100%;
    height: auto;
    border:none;
    vertical-align:middle;
}
svg{
    max-width: 100%;
    height: auto;
}
ul, ol, li{
	margin:0;
	padding:0;
	list-style:none;
}

.cf{zoom:100%;}
.cf:after{
    content:"";
    clear:both;
    height:0;
    display:block;
    visibility:hidden;
}
.fx,
.two_blocks_fx,
.two_columns_fx,
.three_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;
}
.two_columns_fx .box{
    width: calc(50% - 12px);
}
.three_columns_fx .box{
    width: calc(33% - 8px);
}
.two_blocks_fx .box{
    width: calc(50% - 4px);
}
@media screen and (max-width: 540px) {
.two_columns_fx .box,
.three_columns_fx .box{
    width: 100%;
}
}
.checklists li{
    padding-left: 1.5em;
    background:  url("img/common/svg/check.svg") no-repeat 0 center;
    background-size: 14px auto;
}




.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;}
.fs17{font-size:17px;}
.fs18{font-size:18px;}
.fs19{font-size:19px;}
.fs20{font-size:20px;}

.bb_line{
    padding-bottom: 8px;
    border-bottom: 1px dashed;
}


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

.mb0{margin-bottom:0;}
.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;}


.pt24{padding-top:24px;}


.pl24{padding-left:24px;}

.fwb{font-weight: 700;}


.mh120{min-height: 120px;}
.mh160{min-height: 160px;}
.mh240{min-height: 240px;}

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

.ic_wine{color: #80001b;}
.ic_red{
    color: #d33930;
}
.ic_blue{
    color: #0067ac;
}
.ic_gold{
    color: #bba700;
}
.ic_brown{
    color: #c68d0d;
}

.more a{
	display: block;
    margin-left: auto;
    margin-right: auto;
    padding: 16px 8px;
    background: #fff url("img/common/svg/arrow_b.svg") no-repeat 97% center;
    background-size: 24px auto;
    color: #000;
    border: 3px solid #000;
    font-size: 17px;
    font-weight: 700;
    text-align: center;
    line-height: 1;
}
.more a:hover{
    background: #000 url("img/common/svg/arrow_w.svg") no-repeat 99% center;
    background-size: 24px auto;
    color: #fff;
}
.link__arrow a{
	display: block;
    margin-left: auto;
    margin-right: auto;
    padding: 16px 8px;
    background: #fff url("img/common/svg/arrow_b.svg") no-repeat 0 center;
    background-size: 24px auto;
    color: #80001b;
    font-size: 17px;
    font-weight: 700;
    text-align: center;
    line-height: 1;
    border-bottom: 1px solid;
}
.link__arrow a:hover{
    background: url("img/common/svg/arrow_b.svg") no-repeat 2% center;
    background-size: 24px auto;
    color: #520213;
}
.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;}

@media screen and (max-width: 768px) {
.more a{width: 100%;}
.w20,
.w30,
.w40,
.w50,
.w60,
.w70,
.w80
{
    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;
}
}
.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)";
}
.sr{
    visibility: hidden;
}

.effect-fade.effect-scroll {
　opacity : 1;
　transform : translate(0, 0);
}






#upper_toggle{
    display: none;
}
.modal_wrap{
    position: relative;
    display: none;
}
.close_button{
    position: fixed;
    top: 20px;
    right: 15px;
    font-size: 40px;
    cursor: pointer;
    color: #fff;
}
@media screen and (max-width: 1024px) {
#upper_toggle{
    display: block;
    position: fixed;
    width: 40px;
    height: 40px;
    top: 10px;
    right: 10px;
    z-index: 9999;
    cursor: pointer;
}
#upper_toggle span{
    display: block;
    position: absolute;
    height: 2px;
    width: 60%;
    margin: auto;
    background: #000;
    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: 10px;
}
#upper_toggle span:nth-child(2) {
    top: 18px;
}
#upper_toggle span:nth-child(3) {
    top: 26px;
}
.modal_wrap{
    display: block;
}
.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.4);
    opacity: 0;
    transition: opacity .5s, transform 0s .5s;
    transform: scale(0);
}
.modal_trigger{
    position: absolute;
    width: 100%;
    height: 100%;
}
.modal_content{
    position: relative;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    margin: 0;
    padding: 32px 0 0;
    box-sizing: border-box;
    background: #efebea;
    line-height: 1.4em;
    transform: translateY(-30%);
    transition: .3s;
}



.sp_logo{
    width: 92%;
    margin: 0 auto 16px;
    text-align: left;
}
.gototop a{
    display: block;
    width: 70%;
    margin: 0 auto 24px;
    padding: 8px;
    background: #fff;
    color: #aa0014;
    border: 1px solid;
    text-align: center;
    border-radius: 8px;
}

.tab{
    width: 100%;
    margin: 0 auto;
    border-bottom: 1px solid #ccc;
}
.tab li{
    width: calc(33% - 1px);
    padding: 0;
    text-align: center;
    font-weight: bold;
    color: #fff;
}
.tab_sub{
    width: 100%;
    margin: 0;
    padding:0;
    display: flex;
    list-style: none;
}
.tab_sub::after{
    content: '';
    display: block;
    width: calc(33% - 2px);
}
.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{
    width: 92%;
    margin: 16px auto;
    padding: 24px 16px;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #e9e9d8;
}
.childnav_clinic{
    border: 1px solid #fcaa2c;
}
.childnav_guide{
    border: 1px solid #58b8a8;
}
.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_content .logo{
    margin-bottom: 16px;
    text-align: center;
}
.modal_content ul{
    width: 92%;
    margin: auto;
    text-align: center;
}
.modal_content ul li{
}
.modal_content ul li:last-of-type{
}
.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_nav label{
    position: relative;
    display: block;
    margin: 0 0 5px;
    padding: 1em;
    color: #000;
    border-bottom: 1px solid #46517b;
    border-radius: 1px;
    cursor :pointer;
    transition: all .5s ease;
/*    font-weight: 600;*/
    letter-spacing: 0;
    text-align: left;
}
.modal_nav label a{
    display: block;
    color :#000;
}
.modal_nav label span{
    font-size: 12px;
}
@media screen and (max-width: 540px) {
#upper_toggle{
    width: 40px;
    height: 40px;
    top: 12px;
    right: 10px;
}
#upper_toggle span{
    height: 2px;
    width: 60%;
}
@media screen and (max-width: 360px) {
#upper_toggle{
    width: 32px;
    height: 32px;
}
}
}
}

.sitelinks{
    padding: 40px 0 0;
    background: #fff;
    letter-spacing: 0;
    color: #000;
    font-size: 14px;
}
.modal_content .sitelinks{
/*    margin-top: 40px;*/
    background: #efebea;
}
.sitelinks .four_columns{
    width: 100%;
    max-width: 1280px;
    margin: auto;
}
.sitelinks .four_columns .box{
    width: 25%;
    padding: 8px 24px;
}
.sitelinks li a::before{
    content: "- ";
}
.sitelinks li a{
    position: relative;
    display: inline-block;
    padding: 4px 0;
    color: #000;
    text-decoration: none;
    letter-spacing: 0;
}
.sitelinks li a::after{
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #80001b;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform .3s;
}
.sitelinks li a:hover::after{
    transform-origin: left top;
    transform: scale(1, 1);
}
.sitelinks li img{
    vertical-align: baseline;
}
@media screen and (max-width: 820px) {
.sitelinks .four_columns .box{
    width: 33%;
    padding: 8px;
}
@media screen and (max-width: 540px) {
.sitelinks{
    font-size: 15px;
}
.sitelinks .four_columns{
    width: 92%;
}
.sitelinks .four_columns .box{
    width: 100%;
    padding: 0;
    border-right: 0;
}
}
}


.sitelinks dl{
    padding: 0 0 8px;
    border-bottom: 1px solid #ddd;
}
.sitelinks div a,
.sitelinks p a{
    position: relative;
    display: inline-block;
    display: block;
    margin-bottom: 16px;
    padding: 0 0 8px;
    font-weight: 600;
    color: #000;
    border-bottom: 1px solid #ddd;
    text-align: left;
}
.modal_content .ft_hd,
.modal_content .sitelinks div a,
.modal_content .sitelinks p a,
.modal_content .sitelinks li a{
    color: #333;
    font-weight: 600;
}
.sitelinks div a::after,
.sitelinks p a::after{
    position: absolute;
    bottom: -2px;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #80001b;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform .3s;
}
.sitelinks div a:hover::after,
.sitelinks p a:hover::after{
    bottom: -1px;
    transform-origin: left top;
    transform: scale(1, 1);
}
.sitelinks li a{
    margin: 0;
    padding-bottom: 0;
    border-bottom: 0;
/*    font-weight: 100;*/
}


.ft_nav{
    margin-bottom: 16px;
    padding: 0 0 8px;
    color: #000;
    text-align: left;
}
.ft_hd{
	position: relative;
	padding: 0;
    font-weight: 600;
    color: #000;
    text-align: left;
}
.ft_btn{
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	background: #fff;
	display: block;
	width: 32px;
	height: 32px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	border-radius: 50%;
    transition:all .3s linear;
}
.modal_content .ft_btn{
	background: #efebea;
}
.ft_nav dd{
    padding: 8px 16px;
    font-weight: 600;
}
.ft_nav dd li li{
    padding-left: 16px;
}
@media screen and (max-width: 540px) {
.sitelinks div a,
.sitelinks p a{
    padding: 0 0 8px;
}
.sitelinks ul,
.sitelinks ol{
    padding-top: 8px;
}
.sitelinks ol ol{
    padding-top: 0;
}
.ft_nav{
    border-bottom: 1px solid #f1f1f1;
}
.ft_btn:before, .ft_btn:after{
	display: block;
	content: '';
	background: #e0c7bc;
	position: absolute;
	width: 10px;
	height: 2px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.modal_content .ft_btn:before, .modal_content .ft_btn:after{
	background: #333;
}
.ft_hd{
	cursor: pointer;
}
.ft_btn:before{
	width: 2px;
	height: 10px;
}
.ft_hd.selected .ft_btn:before {
	content: normal;
}
.ft_nav dd{
	display: none;
}
}



header{
	position: -webkit-sticky;
	position: sticky;
	top: 0;
    z-index: 1000;
    width: 100%;
    margin: auto;
    text-align: left;
    background: rgba(255,255,255,.95);

}
#upper{
    position: relative;
    width: 100%;
    max-width: 1280px;
    height: 160px;
    margin: auto;
}
.logo{
    position: absolute;
    width: 360px;
    height: 57px;
    margin: auto;
    top: 16px;
    left: 0;
}
.corona{
    position: absolute;
	width: 280px;
    height: 35px;
    margin: auto;
    top: 24px;
    left: 400px;
}
.phone_icon{
    display: none;
}
.upper_phone{
    position: absolute;
    width: 216px;
    height: 56px;
    margin: auto;
    top: 16px;
    right: 0;
}
#upper_phone{
	padding: 24px 8px;
	text-align: center;
	color: #0a1d7f;
}
#upper_phone span{
    padding-bottom: 4px;
	font-size: 20px;
	display: block;
}
#upper_phone dt,
#upper_phone dd
{
    width: calc(50% - 1px);
}
@media screen and (max-width: 1024px) {
header{
	position: inherit;
    background: rgba(255,255,255,0);
}
@media screen and (max-width: 960px) {
.logo{
    width: 50%;
    max-width: 360px;
    height: inherit;
    margin: 0 auto;
    top: 16px;
    left: 10px;
}
.corona{
    position: absolute;
	width: 200px;
    height: 35px;
    margin: auto;
    top: 24px;
    left: 400px;
}
@media screen and (max-width: 820px) {
#upper{
    height: 80px;
}
.upper_phone{
    display: none;
}
@media screen and (max-width: 540px) {
#upper{
    height: 120px;
}
.logo{
    width: 70%;
}
.corona{
	width: 100%;
	margin-top: 0;
	margin-left: 0;
	text-align: center;
	margin-bottom: 8px;
    top: inherit;
    left: 0;
    bottom: 0;
}
.phone_icon{
    display: block;
	position: fixed;
	right: 56px;
	top: 12px;
	width: 20px;
	height: 26px;
	z-index: 999;
}
}
}
}
}



/*

#top-head .upper_phone{
    position: absolute;
    width: 216px;
    height: 56px;
    margin: auto;
    top: 0;
    right: 0;
    bottom: 0;
}
#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;
}

#header{
	display: none;
}
@media screen and (max-width: 768px) {
#upper{
    width: 36%;
}
}
*/



/*
#gnav{
	width: 100%;
    max-width: 1280px;
	margin: 8px auto;
    padding: 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: 12.5%;
	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: #efebea;
	text-decoration: none;
	color: #000;
}
#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: #efebea;
    color: #333;
	text-decoration: none;
    text-align: left;
}
#gnav nav ul li li a:hover{
	padding: 8px;
    background: #cbb9b5;
	color: #333;
}
*/



#gnav{
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    text-align: center;
/*    font-weight: 600;*/
}
#gnav ul{
    width: 100%;
    height: 64px;
    margin: auto;
    letter-spacing: 0;
}
#gnav ul li{
    position: relative;
    width: calc(100% / 8);
    margin: auto;
    letter-spacing: 0;
    text-align: center;
    transition:all .3s linear;
}
#gnav .implant_navs,
#gnav .guide_navs{
    width: 550px !important;
}
#gnav .implant_navs li,
#gnav .guide_navs li{
    width: 50%;
}
#gnav ul li a{
    position: relative;
    display: inline-block;
}
#gnav ul li a::after{
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #80001b;
    transform: scale(0, 1);
    transform-origin: right top;
    transition: transform .3s;
}
#gnav ul li a:hover::after{
    transform-origin: left top;
    transform: scale(1, 1);
}
#gnav ul::after{
    display: block;
    clear: both;
    content: '';
}
#gnav ul li:not(:first-child){
    border-left: none;
}
#gnav ul li a{
    width: 100%;
    display: block;
    padding: 16px 0;
    color: #333;
    text-align: center;
}
#gnav ul li a:hover,
#gnav ul li a.ov{
    text-decoration: none;
}
#gnav ul li li a{
    padding: 8px;
    background: #fff;
/*    font-weight: 100;*/
    text-decoration: none;
    text-align: left;
}
#gnav ul li:nth-child(3) ul li a{
    width: 280px;
}

#gnav ul li li a:hover{
    padding: 8px;
}
#gnav ul ul{
    position: absolute;
    top: 100%;
    height: inherit;
    left: -1px;
    border-left: 0;
/*    background: #f7e7cd;*/
}
#gnav ul ul li{
    display: block;
    width: 240px;
    border: 0;
}
#gnav > ul > li:nth-child(2) > ul > li{
    width: 320px;
}
#gnav ul ul li a{
    display: block;
    border: 0;
}
#gnav ul ul li:not(:first-child) {
    border-top: none;
}
#gnav ul ul ul{
    position: absolute;
    top: -2px;
    left: 100%;
}
#gnav ul ul{
    visibility: hidden;
    opacity: 0;
    transition: .3s ease-in-out;
    transform: translateY(-10px);
    z-index: 50;
}
#gnav ul li:hover > ul {
    visibility: visible;
    opacity: 1;
    transform: translateY(0);
}
@media screen and (max-width: 1024px) {
#gnav{
    display: none;
}
}




@media screen and (max-width: 768px) {
header{
	height: auto;
}
#header{
	margin: 0;
	padding: 0 0 2px;
	text-align: left;
	display: inherit;
    background: rgba(255,255,255,1);
}
header .inner {
    margin: 0;
}
header .inner:after {
    content: "";
    clear: both;
    display: block;
}
#top-head{
	width: 100%;
    margin: 0;
	padding: 0;
    line-height: 1;
	top: 0;
	position: absolute;
    z-index: 999;
	transition: .5s;
}
#top-head a{
    color: #0a1d7f;
    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: 230px;
	height: auto;
}
#global-nav{
	width: 100%;
	padding: 0;
    background: #f0eae9;
	text-align: center;
	top: -1200px;
	position: absolute;
	-webkit-transition: .7s ease-in-out;
	-moz-transition: .7s ease-in-out;
	transition: .7s ease-in-out;
}
nav ul{
	width: 100%;
	margin: auto;
	padding: 0;
	border-left: 0;
}
nav ul ul{
    padding: 8px;
	border-top: 1px solid #0a1d7f;
	border-bottom: 1px solid #0a1d7f;
}
#global-nav ul{
	width: 100%;
    height: 100%;
	list-style: none;
	position: static;
	right: 0;
	bottom: 0;
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
}
#global-nav ul li{
	position: static;
}
#global-nav ul li li{
	width: 49%;
	position: static;
}
#global-nav ul li li:nth-of-type(odd){
    clear: both;
	float: left;
}
#global-nav ul li li:nth-of-type(even){
	float: right;
}
#global-nav ul li a{
	width: 100%;
	display: block;
	color: #0a1d7f;
	padding: 16px 0;
}
#global-nav ul li li a{
    margin: 0 0 4px;
	padding: 16px 0;
    border-radius: 8px;
    border: 1px solid #ddd;
}
#mobile-head{
	width: 100%;
	/*height: 56px;コロナ前*/
	height: 64px;
	z-index: 999;
	position: relative;
}
#top-head.fixed{
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 0;
    height: 56px;
/*    overflow: auto;*/
    -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: 10px;
	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: rgba(0,0,0,1);
    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(1256px);
	-webkit-transform: translateY(1256px);
	transform: translateY(1256px);
    z-index: 9999;
}
}
@media screen and (max-width: 320px) {
#top-head .logo img{
	max-width: 200px;
	height: auto;
}
}


#mv img{
	width: 100%;
    height: auto;
}
#mv{
	width: 100%;
    max-width: 1280px;
    margin: auto;
}
@media screen and (max-width: 768px) {
/*
#mv{
	margin: 56px 0 0;
}
*/
}


.implant__honsu{
    width: 100%;
    max-width: 420px;
    margin: 0 auto 40px;
}
.implant__honsu dl{
    background: #80001b;
    border: 1px solid #80001b;
    font-weight: 600;
}
.implant__honsu dt{
    padding: 16px;
    background: #80001b;
    color: #fff;
    font-size: 22px;
}
.implant__honsu dd{
    padding: 16px;
    background: #fff;
    color: #80001b;
}
.implant__honsu dd span:first-of-type{
    font-size: 24px;
}
.implant__honsu dd span:last-of-type{
    font-size: 14px;
    letter-spacing: 0;
}
.implant__honsu .link__arrow a{
    width: 60%;
}
@media screen and (max-width: 540px) {
.implant__honsu{
    width: 92%;
}
.implant__honsu .link__arrow a{
    width: 80%;
}
}



#top{
    margin: 0;
	text-align: left;
}
#top p{
    margin-bottom: 24px;
}
/*
#top img{
	max-width: 100%;
	height: auto;
}
*/
@media screen and (max-width: 767px) {
}



#fl{
    padding: 80px 0;
    background: #f0eae9 url("img/common/svg/logomark.svg") no-repeat center center;
    background-size: 240px auto;
}
#fl .inner{
    width: 100%;
    margin: 0 auto;
}
#fl p:last-of-type{
    width: 92%;
    max-width: 1120px;
    margin: 0 auto;
}
#fl h1{
    margin: 0 0 24px;
    text-align: center;
    color: #000;
    font-size: 22px;
}
#fl h1 span{
    color: #80001b;
}
@media screen and (max-width: 767px){
#fl{
    padding: 40px 0;
/*    background: #f0eae9 url("img/common/svg/logomark.svg") no-repeat center center;*/
    background-size: 50% auto;
}
#fl .inner{
    width: 92%;
}
#fl h1{
    text-align: left;
}
#fl p:last-of-type{
    width: 100%;
}
}



#top_guide{
    padding: 80px 0;
}
#top_guide h2{
    margin: 0 0 24px;
    padding: 88px 0 0;
    background: url("img/top_guide.svg") no-repeat top center;
    background-size: 60px auto;
    text-align: center;
    font-size: 26px;
}
#top_guide h2 span{
    color: #192859;
}
#top_guide strong{
    padding: 8px;
    background: #eee;
    color: #80001b;
    font-size: 18px;
}
#top_guide .two_columns{
    width: 64%;
    margin: 0 auto 48px;
}
#top_guide .two_columns .box{
    width: 48%;
}
#top_guide .two_columns .box:nth-of-type(odd){
    float: left;
}
#top_guide .two_columns .box:nth-of-type(even){
    float: right;
}

#top_implant{
    width: 100%;
    max-width: 1120px;
    margin: 0 auto 80px;
}
#top_implant .navs .box{
    float: left;
    width: 32%;
    margin-bottom: 2%;
}
#top_implant .navs .box:nth-of-type(2){
    margin-left: 2%;
}
#top_implant .navs .box:nth-of-type(3){
    float: right;
}
#top_implant .navs a{
    display: block;
    color: #80001b;
    font-weight: 600;
}
#top_implant .navs a:hover{
    color: #bf0129;
}
#top_implant .oz .s_imgL{
    float: left;
    width: 80px;
    margin-right: 2%;
}
#top_implant .more a{
    width: 40%;
    margin: auto;
}
@media screen and (max-width: 1023px){
#top_implant .more a{
    width: 60%;
    margin: auto;
}
#top_guide .two_columns{
    width: 88%;
    margin: 0 auto 48px;
}
@media screen and (max-width: 767px){
#top_guide{
    padding: 40px 0;
}
#top_implant{
    width: 92%;
    margin: 0 auto 40px;
}
#top_guide .two_columns{
    width: 100%;
    margin: 0 0 24px;
}
#top_guide .two_columns .box{
    width: 100%;
}
#top_guide .two_columns .box:nth-of-type(odd){
    float: none;
    margin: 0 0 24px;
}
#top_guide .two_columns .box:nth-of-type(even){
    float: none;
}

#top_implant .navs .box{
    float: none;
    width: 100%;
    margin-bottom: 6%;
    padding-bottom: 8px;
    border-bottom: 1px dashed #ccc;
}
#top_implant .navs .box:nth-of-type(2){
    margin-left: 0;
}
#top_implant .navs .box:nth-of-type(3){
    float: none;
}
#top_guide .more a{
    width: 100%;
    margin: auto;
}
}
}







.index_implant_onayami{
    background: rgb(246,246,246);
    background: linear-gradient(60deg, rgba(246,246,246,1) 0%, rgba(242,242,242,1) 100%);
    text-align: center;
}
.index_implant_onayami .inner{
    padding: 40px 0 16px;
    background-size: auto auto;
    background-color: rgba(255, 255, 255, 1);
    background-image: repeating-linear-gradient(140deg, transparent, transparent 10px, rgba(254, 230, 234, 1) 10px, rgba(254, 230, 234, 1) 20px);
}
.index_implant_onayami .inner .first{
    width: 100%;
    max-width: 1120px;
    margin-right: auto;
    margin-left: auto;
    text-align: left;
}
.index_implant_onayami .inner .first .notes{
    margin-bottom: 40px;
    padding: 24px;
    background: #fff;
}
.index_implant_onayami .inner .first .notes span{
    color: #80001b;
    font-weight: 600;
}
.index_implant_onayami ul{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}
.index_implant_onayami ul li{
    width: calc(33% - 8px);
    margin: 0 0 16px;
}
.index_implant_onayami_content{
    padding: 40px 0 0;
    background: #fff;
}
.index_implant_onayami_content .fx{
    width: 100%;
    max-width: 1120px;
    margin: auto;
}
.index_implant_onayami_content .grid{
    width: calc(50% - 24px);
    margin: 0 0 40px;
}
@media screen and (max-width: 767px){
.index_implant_onayami .inner{
    padding: 24px 0 16px;
}
.index_implant_onayami .inner .first{
    width: 92%;
}
.index_implant_onayami ul{
    width: 92%;
}
.index_implant_onayami ul li{
    width: calc(50% - 4px);
    margin: 0 0 8px;
}
.index_implant_onayami_content{
    padding: 40px 0 0;
    background: #fff;
}
.index_implant_onayami_content .grid{
    width: 100%;
    margin: 0 auto 24px;
}
.index_implant_onayami_content .grid:last-of-type{
    width: 92%;
}
}



#top_maro{
    padding: 80px 0;
    background: #eee;
    text-align: center;
}
#top_maro .inner{
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}
#top_maro .mb16{
    color: #00acca;
    font-size: 18px;
    font-weight: 700;
}
@media screen and (max-width: 767px){
#top_maro{
    padding: 10% 5%;
    background: #eee;
    text-align: left;
}
}


#top_invisalign{
    padding: 80px 0;
}
#top_invisalign .inner{
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}
@media screen and (max-width: 767px){
#top_invisalign{
    padding: 40px 0;
}
#top_invisalign .inner{
    width: 92%;
    margin-bottom: 40px;
}
}


#others_guide{
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}
#others_guide ol{
    width: 64%;
    margin: auto;
}
#others_guide li{
    float: left;
    width: 20%;
    margin: 0 0 16px;
}
#others_guide li:nth-of-type(6){
    clear: both;
    margin-left: 10%;
}
@media screen and (max-width: 1280px){
#others_guide ol{
    width: 64%;
}
@media screen and (max-width: 1120px){
#others_guide ol{
    width: 80%;
}
@media screen and (max-width: 1024px){
#others_guide ol{
    width: 88%;
}
@media screen and (max-width: 767px){
#others_guide{
    width: 92%;
}
#others_guide ol{
    width: 100%;
    margin: auto;
}
#others_guide li{
    float: left;
    width: 33.333%;
    margin: 0 0 4px;
    border-right: 4px solid #fff;
}
#others_guide li:nth-of-type(6){
    clear: none;
    margin-left: 0;
}
#others_guide li:nth-child(3n+1){
    clear: both;
}
}
}
}
}




#metalfree{
    width: 100%;
    max-width: 1120px;
    margin: 0 auto 80px;
}
#metalfree h2{
    margin: 0 0 24px;
    padding: 100px 0 0;
    background: url("img/top_metalfree.svg") no-repeat top center;
    background-size: 80px auto;
    text-align: center;
    font-size: 26px;
}
#metalfree .two_columns{
    width: 100%;
    margin: 0 auto 48px;
}
#metalfree .two_columns .box{
    width: 49%;
}

#metalfree .two_columns .box:nth-of-type(odd){
    float: left;
}
#metalfree .two_columns .box:nth-of-type(even){
    float: right;
}
#metalfree .two_columns .box b{
    font-size: 22px;
}
@media screen and (max-width: 767px){
#metalfree{
    width: 92%;
    margin: 0 auto 40px;
}
	
#metalfree .two_columns{
    width: 100%;
    margin: 0 0 24px;
}
#metalfree .two_columns .box{
    width: 100%;
}
#metalfree .two_columns .box:nth-of-type(odd){
    float: none;
    margin: 0 0 24px;
}
#metalfree .two_columns .box:nth-of-type(even){
    float: none;
}
}






#tokuchou{
    width: 100%;
    max-width: 1120px;
    margin: 0 auto 80px;
}
#tokuchou h2{
    margin: 0 0 24px;
    padding: 88px 0 0;
    background: url("img/tokuchou.svg") no-repeat top center;
    background-size: 109px auto;
    text-align: center;
    font-size: 26px;
}
#tokuchou .fx{
    margin: 0 0 48px;
}
#tokuchou .fx .box{
    width: calc(33% - 4px);
    margin-bottom: 24px;
}
#tokuchou .three_columns .box b{
    font-size: 22px;
}
@media screen and (max-width: 767px){
#tokuchou{
    margin: 0 auto;
    padding: 24px 0;
}
#tokuchou .fx{
    width: 92%;
    margin: 0 auto;
}
#tokuchou .fx .box{
    width: 100%;
}
}




#or_area{
    padding: 80px 0;
    background: #f5f5f5;
}
#or_area h2{
    margin: 0 0 24px;
    padding: 96px 0 0;
    background: url("img/or.svg") no-repeat top center;
    background-size: 160px auto;
    text-align: center;
    font-size: 26px;
}
#or_area img{
    width: 100%;
    height: auto;
}
#or_area .inner{
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}
#or_area .inner p:nth-of-type(1){
    margin-bottom: 16px;
    color: #80001b;
    font-size: 22px;
    font-weight: 700;
}
#or_area .inner p:nth-of-type(2){
    margin-bottom: 8px;
    font-size: 18px;
}
#or_area .more{
    width: 40%;
    margin: auto;
}
@media screen and (max-width: 767px){
#or_area{
    padding: 10% 0;
}
#or_area .inner{
    padding: 0;
    text-align: left;
}
#or_area .inner p{
    padding: 0 5%;
}
#or_area .more{
    width: 92%;
    margin: 0 auto;
}
}





.movs{
    width: 56%;
    margin-left: auto;
    margin-right: auto;
}
.movs iframe{
    width: 100%;
}
@media screen and (max-width: 768px){
.movs{
    width: 80%;
}
@media screen and (max-width: 540px){
.movs{
    width: 100%;
}
}
}



#top_clinic{
    padding: 80px 0;
}
#top_clinic h2{
    margin: 0 0 24px;
    padding: 88px 0 0;
    background: url("img/tc.svg") no-repeat top center;
    background-size: 98px auto;
    text-align: center;
    font-size: 26px;
}
#top_clinic .slider{
    width: 100%;
    margin: 0 0 24px;
}
#top_clinic .slider li{
/*
    width: 90%;
    margin: auto;
*/
    text-align: center;
}
#top_clinic .slider img{
    width: 90%;
    height: auto;
}
#top_clinic .box{
    padding: 0 5% 2%;
}
#top_clinic .two_blocks{
    width: 72%;
    margin-left: auto;
    margin-right: auto;
}
#top_clinic .more{
    float: left;
    width: 50%;
    padding: 0 5px;
}
#top_clinic .movs{
    width: 52%;
}
@media screen and (max-width: 767px){
#top_clinic{
    padding: 10% 0;
}
#top_clinic .slider{
    margin: 0 0 24px;
}
#top_clinic .two_blocks{
    width: 100%;
}
#top_clinic .box{
    padding: 0 5% 5%;
}
#top_clinic .more{
    float: none;
    width: 100%;
    padding: 0 5% 2%;
}
#top_clinic .movs{
    width: 92%;
}
}






#greeting{
    padding: 0 0 80px;
}
#greeting h2{
    margin: 0 0 24px;
    padding: 88px 0 0;
    background: url("img/greeting.svg") no-repeat top center;
    background-size: 65px auto;
    text-align: center;
    font-size: 26px;
}
#greeting h3{
    margin: 0 0 24px;
    color: #80001b;
    font-size: 22px;
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
    font-weight: 700;
}
#greeting .inner{
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}
#greeting .boxL{
    float: left;
    width: 36%;
}
#greeting .boxR{
    float: right;
    width: 60%;
}
#greeting .more a{
    width: 40%;
    margin: auto;
}
@media screen and (max-width: 767px){
#greeting{
    padding: 5% 5% 10%;
}
#greeting .boxL{
    float: none;
    width: 100%;
    margin: 0 0 16px;
}
#greeting .boxR{
    float: none;
    width: 100%;
}
#greeting .more a{
    width: 100%;
    margin: auto;
}
}






footer{
}

.instagram .inner{
    width: 92%;
    max-width: 1080px;
    margin: 0 auto;
    padding: 40px 0 80px;
}

#news_cal{
    padding: 40px 0;
    background: #f5f5f5;
}
#news_cal .cf{
    width: 100%;
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
}

#news_cal .hd{
    margin: 0 0 24px;
    padding: 88px 0 0;
    background: url("img/common/svg/news.svg") no-repeat top center;
    background-size: 37px auto;
    text-align: center;
    font-size: 26px;
    line-height: 1;
}
#news_cal .news{
    float: left;
    width: 47%;
    text-align: left;
}
#news_cal .news div{
    margin: 0 0 16px;
    padding: 0 0 8px;
    border-bottom: 1px solid #7d7d7d;
}
#news_cal .news time{
    color: #aa0014;
}
#news_cal .calendar{
    float: right;
    width: 47%;
}
@media screen and (max-width: 767px) {
#news_cal .cf{
    width: 92%;
}
#news_cal .news{
    float: none;
    width: 100%;
    margin-bottom: 40px;
}
#news_cal .calendar{
    float: none;
    width: 100%;
}
}



#soudan{
    padding: 40px 0;
}
#soudan .grid{
    position: relative;
    width: 50%;
}
#soudan .inner{
    padding: 0 0 3%;
    background: url("img/soudan_bg_pc.jpg") no-repeat;
    background-size: 100% auto;
}
#soudan .inner{
    padding: 0 0 3%;
    background: url("img/soudan_bg_pc.jpg") no-repeat;
    background-size: 100% auto;
}
#soudan .inner .more a{
    width: 50%;
    margin-right: auto;
    margin-left: auto;
}
#soudan .box:nth-of-type(1){
    float: left;
    width: 50%;
    margin-top: 31%;
}
#soudan .box:nth-of-type(2){
    float: right;
    width: 50%;
}
#soudan .soudan_date{
    margin: 0 0 22%;
    padding: 17% 20% 0;
/*    background: url("img/soudan_month_bg.jpg") no-repeat;*/
    background-size: cover;
    color: #fff;
}
#soudan .soudan_date .hd{
    margin-bottom: 8px;
    font-size: 24px;
    font-weight: 700;
}
#soudan .soudan_date dl{
    padding: 5%;
    border: 1px solid #fff;
    text-align: left;
}
#soudan .soudan_date dt{
    float: left;
    width: 30%;
}
#soudan .soudan_date dd{
    float: right;
    width: 68%;
    font-size: 18px;
}
@media screen and (max-width: 768px) {
#soudan{
    padding: 10% 0;
}
#soudan .inner{
    padding: 0 0 3%;
    background: none;
    background-size: auto;
}
#soudan .inner .more a{
    width: 60%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 16px;
}
#soudan .box:nth-of-type(1){
    float: none;
    width: 100%;
    margin: 0;
    padding: 60% 0 0;
    background: url("img/soudan_implant.jpg") no-repeat 0 0;
    background-size: 100% auto;
}
#soudan .box:nth-of-type(2){
    float: none;
    width: 100%;
}
#soudan .soudan_date{
    margin-bottom: 24px;
    padding: 24% 10%;
    background: url("img/soudan_month_bg.jpg") no-repeat;
    background-size: 100% auto;
}
#soudan .soudan_date dl{
    padding: 2%;
}
@media screen and (max-width: 480px) {
#soudan .inner .more a{
    width: 90%;
}
#soudan .box:nth-of-type(1){
    padding: 64% 0 0;
}
#soudan .soudan_date{
    padding: 10% 5%;
    background-size: 100% auto;
}
}
}





#clinic_data{
    width: 100%;
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
    text-align: left;
}
#clinic_data p{
    margin: 0 0 16px;
}
#clinic_data .boxR{
    float: right;
    width: 59%;
    margin-bottom: 24px;
    text-align: left;
}
#clinic_data .boxL{
    float: left;
    width: 40%;
    margin-bottom: 24px;
    text-align: left;
}
#clinic_data .two_columns{
    width: 50%;
    margin: 0 auto 16px;
}
#clinic_data .two_columns .box{
    float: left;
    width: 50%;
    padding: 0 2%;
}
#clinic_data .four_columns{
    width: 64%;
    margin: 0 auto 16px;
}
#clinic_data .four_columns .box{
    float: left;
    width: 25%;
    padding: 0 1% 0 0;
}

#gmap iframe{
    padding: 0;
    vertical-align: bottom;
}
@media screen and (max-width: 767px) {
#clinic_data{
    width: 92%;
}
#clinic_data .boxR{
    float: none;
    width: 100%;
}
#clinic_data .boxL{
    float: none;
    width: 100%;
}
#clinic_data .two_columns{
    width: 80%;
    margin: 0 auto 16px;
}
#clinic_data .two_columns .box{
    float: none;
    width: 100%;
    margin: 0 0 8px;
    padding: 0;
}
#clinic_data .four_columns{
    width: 90%;
    margin: 0 auto 16px;
}
#clinic_data .four_columns .box{
    float: left;
    width: 50%;
    padding: 0 1% 2%;
}
}


#sns div:nth-of-type(odd){
    float: left;
    width: 50%;
    background: #d60027;
}
#sns div:nth-of-type(even){
    float: right;
    width: 50%;
    background: #80001b;
}






#footlinks{
	margin: 0;
    padding: 3% 1%;
    background: #fafafa;
}
#footlinks nav li{
    float: left;
    width: 12.5%;
	padding: 0 1%;
    text-align: center;
    letter-spacing: 0;
}

@media screen and (max-width: 767px) {
#footlinks nav li{
    float: left;
    width: 50%;
	padding: 0 1%;
    text-align: center;
    letter-spacing: 0;
}
}



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



#bottom_nav{
    display: none;
}

@media screen and (max-width: 767px) {
#bottom_nav{
    display: block;
    position: relative;
    width: 100%;
    height: 40px;
    z-index: 5000;
    background: linear-gradient(90deg, #80001b 0%, #80001b 50%, #cfcfd0 50%, #cfcfd0 100%);
}
#bottom_nav ul{
    position: fixed;
    bottom: 0;
    left: 0;
}
#bottom_nav li{
    width: 50%;
}
}



#bottom{
    position: fixed;
    bottom: 0;
    right: 0;
	line-height: 0.8;
    z-index: 9999;
}
#bottom .box{
	display: none;
}
#bottom a{
    width: 88px;
    padding: 28px 0 16px;
    text-align:center;
    background: #0a1d7f;
	color: white;
    display:block;
	font-size: 60px;
	font-weight:700;
    text-decoration:none;
	border-radius: 50%;
}
#bottom a:hover {
    background: #0a1d7f;
	color: white;
}
@media screen and (max-width: 480px) {
#bottom{
    position: fixed;
	width: 100%;
    padding: 0 2%;
    background: #e4ecf1;
    bottom: 0;
    right: 0;
	line-height: 1.5;
    letter-spacing: -1px;
}
#bottom a{
    width: 100%;
    margin: 0;
    padding: 0;
    background: none;
    border-radius: 0;
    border: 0;
}
#bottom .box:nth-of-type(even) a{
    border: 0;
}
#bottom .box{
	float: left;
    width: 32%;
	display: inherit;
}
#bottom .box:nth-of-type(even){
    margin-left: 2%;
}
#bottom .box:nth-of-type(3){
	float: right;
}
}





#ec{
    min-height: 256px;
    margin: 0 0 40px;
    font-size: 32px;
    text-align: center;
    line-height: 1;
}
@media screen and (max-width: 768px){
#ec{
    min-height: auto;
	margin: 74px 0 0;
    letter-spacing: 0;
}
}

#ec .subec{
    text-align: center;
    padding-top: 7rem;
}
.ec_clinic{
    background: url(img/common/ec/clinic.jpg) no-repeat;
    background-size: cover;
}
.ec_guide{
    background: url(img/common/ec/guide.jpg) no-repeat;
    background-size: cover;
}
.ec_team{
    background: url(img/common/ec/team.jpg) no-repeat;
    background-size: cover;
}
.ec_price{
    background: url(img/common/ec/price.jpg) no-repeat;
    background-size: cover;
}
.ec_access{
    background: url(img/common/ec/access.jpg) no-repeat;
    background-size: cover;
}
.ec_form{
    background: url(img/common/ec/form.jpg) no-repeat;
    background-size: cover;
}
.ec_commons{
    background: url(img/common/ec/commons.jpg) no-repeat;
    background-size: cover;
}
@media screen and (max-width: 768px) {
#ec .subec{
    padding: 5rem 0 5rem;
}
.ec_clinic{
    background: url(img/common/ec/clinic.jpg) no-repeat center center;
}
.ec_guide{
    background: url(img/common/ec/guide.jpg) no-repeat center center;
}
.ec_team{
    background: url(img/common/ec/team.jpg) no-repeat center center;
}
.ec_price{
    background: url(img/common/ec/price.jpg) no-repeat center center;
}
.ec_form{
    background: url(img/common/ec/form.jpg) no-repeat center center;
}
.ec_commons{
    background: url(img/common/ec/commons.jpg) no-repeat center center;
}
}





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

#breadcrumbs{
    width: 100%;
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
    padding: 24px 0;
	text-align: right;
}
#wrap article{
    margin: 0 0 80px;
    text-align: left;
}
#wrap section,
#wrap .section{
    width: 100%;
    max-width: 1280px;
    margin-right: auto;
    margin-left: auto;
}
#wrap p{
	margin: 0 0 24px;
}
#wrap strong{
	background: linear-gradient(transparent 70%, #ffe6da 70%);
}
#wrap b{
/*    color: #cc5d36;*/
    color: #80001b;
}
#wrap h1{
    margin: 0 0 24px;
    padding: 104px 0 0;
    background: url("img/common/svg/hlm.svg") no-repeat top center;
    background-size: auto 88px;
    text-align: center;
    font-size: 23px;
}
#wrap h2{
	margin-bottom: 24px;
    padding: 16px;
    background: #80001b;
    color: #fff;
	font-size: 22px;
    font-weight: 700;
	text-align: left;
}
#wrap h2 a{
    display: block;
    color: #fff;
}
#wrap h3{
	margin-bottom: 16px;
    padding: 0 0 8px;
    border-bottom: 1px dashed #000;
	font-size: 18px;
    font-weight: 700;
	text-align: left;
}
#wrap h4{
	margin-bottom: 16px;
    padding: 0 0 8px;
    border-bottom: 1px dashed #000;
	font-size: 17px;
    font-weight: 500;
	text-align: left;
}
#wrap .boxL{
    float: left;
    width: 48%;
}
#wrap .boxR{
    float: right;
    width: 48%;
}
#wrap .two_blocks .box{
    width: 48%;
}
#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 .box{
    width: 100%;
}
#wrap .two_columns .box:nth-of-type(odd){
    clear: both;
    float: left;
}
#wrap .two_columns .box:nth-of-type(even){
    float: right;
}
#wrap .three_blocks .box{
    float: left;
    width: 32%;
    margin: 0;
}
#wrap .three_blocks .box:nth-of-type(2){
    margin: 0 0 0 2%;
}
#wrap .three_blocks .box:nth-of-type(3){
    float: right;
}
#wrap .three_columns .box{
    float: left;
    width: 32%;
}
#wrap .three_columns .box:nth-of-type(2),
#wrap .three_columns .box:nth-of-type(5),
#wrap .three_columns .box:nth-of-type(8),
#wrap .three_columns .box:nth-of-type(11)
{
    margin-left: 2%;
}
#wrap .three_columns .box:nth-of-type(3),
#wrap .three_columns .box:nth-of-type(6),
#wrap .three_columns .box:nth-of-type(9),
#wrap .three_columns .box:nth-of-type(12)
{
    float: right;
}
#wrap .three_columns .box .more a{
    width: 90%;
}
#wrap .four_columns .box{
    float: left;
    width: 24%;
}
#wrap .four_columns .box:nth-of-type(2),
#wrap .four_columns .box:nth-of-type(3){
    margin-left: 1.3%;
}
#wrap .four_columns .box:last-of-type{
    float: right;
}
#wrap figcaption{
    padding-top: 8px;
}
.oz .imgL,
.oz .s_imgL{
    max-width: 45%;
    margin-right: 2%;
    text-align: center;
}
.oz .imgR,
.oz .s_imgR{
    max-width: 45%;
    margin-left: 16px;
}
#wrap .notes{
    padding: 24px;
}
#wrap .notes_waku{
    border: 1px solid #000;
}
#wrap .notes_beige{
    background: #eae0d1;
}
#wrap .notes_gray{
    background: #eee;
}
#wrap .notes_pink{
    background: #fee6ea;
}
#wrap .notes_pink span{
    color: #6f2b29;
}
#wrap .notes_lightblue{
    background: #e0e7f0;
}
#wrap .notes_lightblue span{
    color: #0067ac;
    font-weight: 700;
    font-size: 17px;
}
#wrap .merit_demerit .box:nth-of-type(odd){
    padding: 3%;
    border: 5px solid #c0d5f0;
}
#wrap .merit_demerit .box:nth-of-type(odd) dt,
#wrap .merit_demerit .box:nth-of-type(odd) li{
    margin: 0 0 8px;
    padding: 0 0 4px 24px;
    background: url("img/common/svg/o.svg") no-repeat 0 5px;
    background-size: 16px auto;
    color: #0d72c0;
    border-bottom: 1px dashed #0d72c0;
}
#wrap .merit_demerit .box:nth-of-type(even),
#wrap .merit_demerit_demerit .box{
    padding: 3%;
    border: 5px solid #dcdcdc;
}
#wrap .merit_demerit .box:nth-of-type(even) dt,
#wrap .merit_demerit_demerit .box dt,
#wrap .merit_demerit .box:nth-of-type(even) li{
    margin: 0 0 8px;
    padding: 0 0 4px 24px;
    background: url("img/common/svg/x.svg") no-repeat 0 5px;
    background-size: 16px auto;
    border-bottom: 1px dashed #333;
}

/* ガイドライン用css */
#wrap .GuidelinesBox{
	background-color: #eae0d1;
	padding: 16px;
	margin-bottom: 48px;
}

#wrap .GuidelinesBox dt{
	color: #80001b;
    font-weight: 700;
}

#wrap .GuidelinesBox dd{
	margin-bottom: 16px;
}

#wrap .GuidelinesBox ul{
	margin-left: 32px;
}

#wrap .GuidelinesBox li{
	list-style: disc;
}


/*
#wrap .notes li{
    margin: 0 0 8px;
}
#wrap .notes ol li::before{
    content: "・ ";
}
#wrap .osusume_box{
    width: 64%;
    margin-right: auto;
    margin-left: auto;
}
#wrap dl{
    width: 64%;
    margin: 0 auto 24px;
    text-align: left;
    border: 1px solid #bbd65a;
}
#wrap dt{
    padding: 16px;
    background: #bbd65a;
    font-size: 18px;
}
#wrap dd{
    padding: 16px;
}
*/

@media screen and (max-width: 1280px) {
@media screen and (max-width: 1023px) {
#breadcrumbs{
	text-align: left;
}
@media screen and (max-width: 767px) {
#breadcrumbs{
    width: 92%;
    letter-spacing: 0;
}
#wrap h1{
    font-size: 23px;
}
#wrap h2{
	margin-bottom: 16px;
    padding: 8px 16px;
    font-size: 19px;
}
#wrap section,
#wrap .section{
    width: 92%;
}
.oz .imgL{
    float: none;
    max-width: 100%;
    margin-right: 0;
}
.oz .imgR{
    float: none;
    max-width: 100%;
    margin-left: 0;
}
#wrap .boxL{
    float: none;
    width: 100%;
    margin-bottom: 16px;
}
#wrap .boxR{
    float: none;
    width: 100%;
    margin-bottom: 16px;
}
#wrap .two_columns .box{
    width: 100%;
}
#wrap .two_columns .box:nth-of-type(odd){
    clear: both;
    float: none;
}
#wrap .two_columns .box:nth-of-type(even){
    float: none;
}
#wrap .three_columns .box{
    float: none;
    width: 100%;
}
#wrap .three_columns .box:nth-of-type(2){
    margin-left: 0;
}
#wrap .three_columns .box:nth-of-type(3){
    float: none;
}
#wrap .three_columns .box:nth-of-type(2),
#wrap .three_columns .box:nth-of-type(5),
#wrap .three_columns .box:nth-of-type(8),
#wrap .three_columns .box:nth-of-type(11)
{
    margin-left: 0;
}
#wrap .three_columns .box:nth-of-type(3),
#wrap .three_columns .box:nth-of-type(6),
#wrap .three_columns .box:nth-of-type(9),
#wrap .three_columns .box:nth-of-type(12)
{
    float: none;
}
#wrap .four_columns .box{
    width: 49%;
    margin: 0 0 16px;
    text-align: left;
    line-height: 1.3;
    letter-spacing: 0;
}
#wrap .four_columns .box:nth-of-type(2),
#wrap .four_columns .box:nth-of-type(3){
    margin-left: 0;
}
#wrap .four_columns .box:nth-of-type(odd){
    clear: both;
    float: left;
}
#wrap .four_columns .box:nth-of-type(even){
    float: right;
}
#wrap .more a{
    width: 100%;
}
#wrap .notes{
    padding: 16px;
}
}
}
}


#wrap .steps{
    min-height: 96px;
    padding: 0 0 0 112px;
}
#wrap .step01{background: url("img/common/svg/step01.svg") no-repeat 0 0;background-size: 96px auto;}
#wrap .step02{background: url("img/common/svg/step02.svg") no-repeat 0 0;background-size: 96px auto;}
#wrap .step03{background: url("img/common/svg/step03.svg") no-repeat 0 0;background-size: 96px auto;}
#wrap .step04{background: url("img/common/svg/step04.svg") no-repeat 0 0;background-size: 96px auto;}
#wrap .step05{background: url("img/common/svg/step05.svg") no-repeat 0 0;background-size: 96px auto;}
#wrap .step06{background: url("img/common/svg/step06.svg") no-repeat 0 0;background-size: 96px auto;}
#wrap .step07{background: url("img/common/svg/step07.svg") no-repeat 0 0;background-size: 96px auto;}
#wrap .step08{background: url("img/common/svg/step08.svg") no-repeat 0 0;background-size: 96px auto;}







#wrap .fcnav{
    padding: 5% 5%;
}
#wrap .fcnav ul{
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
#wrap .fcnav li{
    position: relative;
/*    min-height: 80px;*/
/*    display: inline-block;*/
/*    float: left;*/
    width: 50%;
    border-bottom: 1px solid #ccc;
}
#wrap .fcnav li::after{
    position: absolute;
    top: 50%;
    right: .1em;
    content: '';
    margin-top: -5px;
    border: 7px solid transparent;
    border-top-width: 5px;
    border-bottom-width: 5px;
    border-left-color: #ccc;
    transition: all .2s;
}
#wrap .fcnav li:nth-of-type(odd){
    border-right: 1px solid #ccc;
}
#wrap .fcnav li a{
    display: block;
    padding: 16px;
}
@media screen and (max-width: 767px) {
#wrap .fcnav li a{
/*    min-height: 48px;*/
    padding: 8px;
    letter-spacing: 0;
}
/*
#wrap > div > ul > li:nth-child(11){
    min-height: 80px;
}
*/

}


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

#wrap .faq_box{
    padding: 2%;
    background: #e0e7f0 url("img/common/svg/faq.svg") no-repeat 96% 4%;
    background-size: 20% auto;
}
#wrap .faq_box dt{
    margin: 0 0 8px;
    color: #0d72c0;
    font-weight: 700;
}
#wrap .faq_box dt::before{
    content: "Q. ";
}
/*
#wrap .faq_box dd::before{
    display: block;
    content: "A. ";
    color: #aa0014;
}
#wrap .faqbox{
    margin: 0 0 40px;
    padding: 5%;
    background: #e2ecf2;
}
#wrap .faqbox div:first-of-type{
    min-height: 32px;
    margin: 0 0 16px;
    padding: 0 0 0 24px;
    background: url("img/common/svg/faq_q.svg") no-repeat 0 0;
    background-size: 32px auto;
    color: #002870;
    font-weight: 700;
}
*/
#wrap .faq_box dd div:nth-of-type(1){
    margin: 0 0 8px;
    color: #aa0014;
    font-weight: 700;
}
#wrap .faq_box dd div:nth-of-type(1)::before{
    content: "A. ";
}




#wrap .price_opeflow .box{
    float: left;
    width: 16.666%;
    padding: 0 .25%;
}
@media screen and (max-width: 1024px) {
#wrap .price_opeflow .box{
    float: left;
    width: 33.333%;
    padding: 0 .5%;
}
#wrap .price_opeflow .box:nth-of-type(4){
    clear: both;
}
@media screen and (max-width: 480px) {
#wrap .price_opeflow .box{
    float: left;
    width: 50%;
    padding: 0 1%;
}
#wrap .price_opeflow .box:nth-of-type(4){
    clear: none;
}
#wrap .price_opeflow .box:nth-of-type(odd){
    clear: both;
}
}
}

#wrap .pricelist table{
    width: 100%;
    border-spacing: 0;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
#wrap .pricelist td{
    width: 50%;
    padding: 16px;
    vertical-align: middle;
    border-bottom: 1px solid #ccc;
}
#wrap .pricelist td:nth-of-type(odd){
    background: #f1ebe1;
}
#wrap .pricelist td:nth-of-type(even){
    text-align: right;
}
@media screen and (max-width: 480px) {
#wrap .pricelist td{
    width: 100%;
    display: block;
    padding: 8px;
    vertical-align: middle;
}
}




#wrap .soudan table{
    width: 100%;
    margin: 0 0 40px;
    border-spacing: 0;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
#wrap .soudan td{
    padding: 16px;
    border-bottom: 1px solid #ccc;
    vertical-align: middle;
}
#wrap .soudan td:nth-of-type(odd){
    width: 32%;
    background: #f1ebe1;
    text-align: center;
}
#wrap .soudan_date{
    margin-bottom: 24px;
    padding: 16% 10%;
    background: url("img/soudan_month_bg.jpg") no-repeat;
    background-size: 100% auto;
    color: #fff;
}
#wrap .soudan_date .hd{
    margin-bottom: 8px;
    font-size: 24px;
    font-weight: 700;
    text-align: center;
}
#wrap .soudan_date dl{
    padding: 5%;
    border: 1px solid #fff;
    text-align: left;
}
#wrap .soudan_date dt{
    float: left;
    width: 30%;
}
#wrap .soudan_date dd{
    float: right;
    width: 68%;
    font-size: 18px;
}
@media screen and (max-width: 480px) {
#wrap .soudan td{
    padding: 8px;
    display: block;
}
#wrap .soudan td:nth-of-type(odd){
    width: 100%;
}
#wrap .soudan_date{
    padding: 5%;
    background-size: cover;
}
#wrap .soudan_date dt{
    float: none;
    width: 100%;
}
#wrap .soudan_date dd{
    float: none;
    width: 100%;
    font-size: 16px;
}
}



#hikakudata table{
    width: 100%;
}
#hikakudata td{
    padding: 16px;
    border: 1px solid #c9c9c9;
}
#hikakudata td:nth-of-type(odd){
    width: 25%;
    background: #f1ebe1;
}
@media screen and (max-width: 480px) {
#hikakudata td{
    padding: 8px;
}
#hikakudata td:nth-of-type(odd){
    width: 40%;
}
}






#wrap .guide_points li{
    margin: 0 0 8px;
}
#wrap .guide_points li::before{
    content: "● ";
    color: #80001b;
}




#perionav ol li{
    float: left;
    width: 25%;
    padding: 0 1%;
}
#perionav{
    padding: 3% 10%;
    background: #efebec;
}
@media screen and (max-width: 767px) {
#perionav{
    padding: 10% 5%;
}
#perionav ol li{
    float: left;
    width: 50%;
    margin-bottom: 16px;
    padding: 0 2%;
}
}







#invisalignnav ol li{
    float: left;
    width: 20%;
    padding: 0 1%;
}
#invisalignnav{
    padding: 3% 10%;
    background: #efebec;
}
@media screen and (max-width: 767px) {
#invisalignnav{
    padding: 10% 5%;
}
#invisalignnav ol li{
    float: left;
    width: 50%;
    margin-bottom: 16px;
    padding: 0 2%;
}
}

#wrap .invisa_chigai table{
    width: 100%;
    border-spacing: 0;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
#wrap .invisa_chigai td{
    padding: 16px;
    vertical-align: middle;
    border-bottom: 1px solid #ccc;
}
#wrap .invisa_chigai td:nth-of-type(odd){
    width: 30%;
    background: #f1ebe1;
}
#wrap .invisa_chigai td:nth-of-type(even){
    width: 70%;
}
@media screen and (max-width: 480px) {
}





#wrap .yougo_nav{
    width: 50%;
    margin: 0 auto 40px;
}
#wrap .yougo_nav li{
    float: left;
    width: 10%;
    padding-right: 2px;
    text-align: center;
}
#wrap .yougo_nav li img{
    width: 100%;
    height: auto;
}
#wrap .yougoshu table{
    width: 100%;
    border-spacing: 0;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
#wrap .yougoshu td{
    padding: 16px;
    vertical-align: middle;
    border-bottom: 1px solid #ccc;
}
#wrap .yougoshu td:nth-of-type(odd){
    width: 30%;
    background: #f1ebe1;
}
#wrap .yougoshu td:nth-of-type(even){
    width: 70%;
}
@media screen and (max-width: 480px) {
#wrap .yougo_nav{
    width: 90%;
    margin: 0 auto 40px;
}
#wrap .yougo_nav li img{
    width: 100%;
    height: auto;
}
#wrap .yougoshu td:nth-of-type(odd){
    width: 100%;
    display: block;
}
#wrap .yougoshu td:nth-of-type(even){
    width: 100%;
    display: block;
}
}

#wrap .jobdata table{
    width: 100%;
    border-spacing: 0;
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-left: 1px solid #ccc;
}
#wrap .jobdata td{
    padding: 2%;
    vertical-align: middle;
    border-bottom: 1px solid #ccc;
}
#wrap .jobdata td:nth-of-type(odd){
    width: 20%;
    background: #f1ebe1;
}
#wrap .jobdata td:nth-of-type(even){
    width: 80%;
}
#wrap .jobnav{
    width: 50%;
    margin: auto;
}
#wrap .jobnav li{
    float: left;
    width: 33%;
    padding: 0 .5em;
    text-align: center;
}
#wrap .jobnav li:nth-of-type(3){
    float: right;
}
#wrap .job_voices{
    background: #f1ebe1;
}
#wrap .job_voices .boxL{
    width: 28%;
}
#wrap .job_voices .boxR{
    width: 70%;
}
#wrap .job_voices .hd{
    margin-bottom: .5em;
    padding-bottom: .2em;
    color: #80001b;
    border-bottom: 1px dashed #ccc;
    font-size: 18px;
}
@media screen and (max-width: 767px) {
#wrap .jobdata td{
    vertical-align: middle;
}
#wrap .jobnav{
    width: 100%;
    margin: 0;
}
#wrap .jobnav li{
    width: 50%;
    padding: 0 .2em;
}
#wrap .jobnav li:nth-of-type(3){
    clear: both;
    float: left;
}
#wrap .job_voices .boxL{
    float: none;
    width: 100%;
}
#wrap .job_voices .boxR{
    float: none;
    width: 100%;
}
}


#wrap .kotsuzousei_nav{
    width: 100%;
    max-width: 1080px;
    margin: auto;
}
#wrap .kotsuzousei_nav li{
    width: calc(100% / 5);
    margin-bottom: 16px;
    text-align: center;
}
#wrap .kotsuzousei_osusume li{
    width: calc(50% - 8px);
    margin-bottom: 16px;
}
@media screen and (max-width: 1079px) {
#wrap .kotsuzousei_nav{
    max-width: 820px;
}
#wrap .kotsuzousei_nav li{
    width: calc(20% - 4px);
}
@media screen and (max-width: 540px) {
#wrap .kotsuzousei_nav li{
    width: calc(50% - 2px);
}
#wrap .kotsuzousei_osusume li{
    width: 100%;
}
}
}













a.external_link::after{
    content: " \f35d";
    font-family: FontAwesome;
}
#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;
}














#privacypolicy section{
	margin: 0 0 5vw;
}
@media screen and (max-width: 767px) {
#privacypolicy section{
	margin: 0 0 5vh;
}
}
.form{
    width: 80%;
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
	text-align: left;
}
.form table{
    width: 100%;
    margin: 0 0 40px;
    border-spacing: 0;
    border-top: 1px solid #ccc;
}
.form td{
    padding: 16px;
    border-bottom: 1px solid #ccc;
    vertical-align: middle;
}
.form td:nth-of-type(odd){
    width: 24%;
}
.form td:nth-of-type(even){
    padding: 16px 8px 16px 32px;
}

@media screen and (max-width: 767px) {
.form td{
    display: block;
}
.form td:nth-of-type(odd){
    width: 100%;
    padding: 8px 16px 0;
    border-bottom: 0;
}
.form td:nth-of-type(even){
    padding: 0 16px 8px;
}
span.wpcf7-list-item{
	display: block !important;
}
}
.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;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
textarea {
	background-color: #fff;
	color: #333;
	width: 88%;
	border: 1px solid #ddd;
	font-size: 17px;
	padding: 0.5em;
	border-radius:8px;
	box-shadow:2px 2px 4px rgba(0,0,0,.1) inset;
}
textarea {
	width: 100%;
}
#age{
	width: 12%;
}
#zip{
	width: 24%;
}

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

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


#ortho{
    margin-top: -160px;
    padding-top: 160px;
}
@media screen and (max-width: 820px) {
#ortho{
    margin-top: 0;
    padding-top: 0;
}
}


/*
@media screen and (max-width: 820px) {
#i,
#i-2,
#i-3,
#i-4,
#i-5,
#i-6,
#i-7{
    margin-top: -56px;
    padding-top: 56px;
}
}
*/
#index__honsu{
    margin-top: -160px;
    padding-top: 160px;
}
#index__honsu .honsu__inner{
    width: 92%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 40px 0;
}
@media screen and (max-width: 540px) {
#index__honsu{
    margin-top: 0;
    padding-top: 0;
}
}







