@charset "utf-8";
/* Theme Name: sp */
@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);
@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 100;
	src: url(./fonts/NotoSerifCJKjp/NotoSerifCJKjp-ExtraLight.otf) format('opentype');
}
@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 200;
	src: url(./fonts/NotoSerifCJKjp/NotoSerifCJKjp-Light.otf) format('opentype');
}
@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 400;
	src: url(./fonts/NotoSerifCJKjp/NotoSerifCJKjp-Regular.otf) format('opentype');
}
@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 500;
	src: url(./fonts/NotoSerifCJKjp/NotoSerifCJKjp-Medium.otf) format('opentype');
}
@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 600;
	src: url(./fonts/NotoSerifCJKjp/NotoSerifCJKjp-SemiBold.otf) format('opentype');
}
@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 700;
	src: url(./fonts/NotoSerifCJKjp/NotoSerifCJKjp-Bold.otf) format('opentype');
}
@font-face {
	font-family: 'Noto Serif Japanese';
	font-style: normal;
	font-weight: 900;
	src: url(../fonts/NotoSerifCJKjp/NotoSerifCJKjp-Black.otf) format('opentype');
}

/* 共通部分
============================================================================== */
html, body {
	font-size: 3.73vw;
	line-height: 1.7;
	color: #32373c;
	font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
img {
	max-width: 100%;
	height: auto;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
li {
	list-style: none;
}
.inner {
	padding: 0 4%;
}
.inner_wide {
	padding: 0 6.25%;
}
.min {
	font-family: 'Noto Serif Japanese', serif;
}
table {
	table-layout: fixed;
}
td input {
	max-width: 100%;
}
.mb5   { margin-bottom: calc( 5  / 750 * 100vw); }
.mb10  { margin-bottom: calc( 10 / 750 * 100vw); }
.mb15  { margin-bottom: calc( 15 / 750 * 100vw); }
.mb20  { margin-bottom: calc( 20 / 750 * 100vw); }
.mb25  { margin-bottom: calc( 25 / 750 * 100vw); }
.mb30  { margin-bottom: calc( 30 / 750 * 100vw); }
.mb35  { margin-bottom: calc( 35 / 750 * 100vw); }
.mb40  { margin-bottom: calc( 40 / 750 * 100vw); }
.mb45  { margin-bottom: calc( 45 / 750 * 100vw); }
.mb50  { margin-bottom: calc( 50 / 750 * 100vw); }
.mb55  { margin-bottom: calc( 55 / 750 * 100vw); }
.mb60  { margin-bottom: calc( 60 / 750 * 100vw); }
.mb65  { margin-bottom: calc( 65 / 750 * 100vw); }
.mb70  { margin-bottom: calc( 70 / 750 * 100vw); }
.mb75  { margin-bottom: calc( 75 / 750 * 100vw); }
.mb80  { margin-bottom: calc( 80 / 750 * 100vw); }
.mb85  { margin-bottom: calc( 85 / 750 * 100vw); }
.mb90  { margin-bottom: calc( 90 / 750 * 100vw); }
.mb95  { margin-bottom: calc( 95 / 750 * 100vw); }
.mb100 { margin-bottom:calc(100 / 750 * 100vw); }
.mb105 { margin-bottom:calc(105 / 750 * 100vw); }
.mb110 { margin-bottom:calc(110 / 750 * 100vw); }
.mb115 { margin-bottom:calc(115 / 750 * 100vw); }
.mb120 { margin-bottom:calc(120 / 750 * 100vw); }
.mb125 { margin-bottom:calc(125 / 750 * 100vw); }
.mb130 { margin-bottom:calc(130 / 750 * 100vw); }
.mb135 { margin-bottom:calc(135 / 750 * 100vw); }
.mb140 { margin-bottom:calc(140 / 750 * 100vw); }
.mb145 { margin-bottom:calc(145 / 750 * 100vw); }
.mb150 { margin-bottom:calc(150 / 750 * 100vw); }
.flex {
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
.flex.start     { -webkit-justify-content: flex-start; justify-content: flex-start; }
.flex.end       { -webkit-justify-content: flex-end; justify-content: flex-end; }
.flex.center    { -webkit-justify-content: center; justify-content: center; }
.flex.around    { -webkit-justify-content: space-around; justify-content: space-around; }
.flex.between   { -webkit-justify-content: space-between; justify-content: space-between; }
.flex.stretch   { -webkit-align-items: stretch; align-items: stretch; }
.flex.ai_center { -webkit-align-items: center; align-items: center; }
.flex.ai_start  { -webkit-align-items: flex-start; align-items: flex-start; }
.flex.ai_end    { -webkit-align-items: flex-end; align-items: flex-end; }
.flex.nowrap    { -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
.flex.column    { -ms-flex-direction:column; -webkit-flex-direction:column; flex-direction:column; }
.flex.row       { -ms-flex-direction:row; -webkit-flex-direction:row; flex-direction:row; }
.flex.c_reverse { -ms-flex-direction:column-reverse; -webkit-flex-direction:column-reverse; flex-direction:column-reverse; }
.flex.r_reverse { -ms-flex-direction:row-reverse; -webkit-flex-direction:row-reverse; flex-direction:row-reverse; }
.noshrink       { flex: 0 0 auto; }
.grow           { flex: 1 1 auto; }


/* header部分 
============================================================================== */
.head {
	height: calc(125/640*100vw);
	background: #0a1941;
	position: relative;
}

.head h1 {
	position: absolute;
	top: 3.9vw;
	left: 4vw;
	z-index: 3;
}
.head h1 img {
	width: 55.15vw;
}
.head .icn_tel {
	width: 10.93vw;
	position: absolute;
	top: 4.37vw;
	right: 19.53vw;
	z-index: 3;
}
.head .icn_menu {
	width: 10.93vw;
	position: absolute;
	top: 4.37vw;
	right: 4vw;
	z-index: 3;
}

/* ハンバーガーメニュー */
.gnav {
	/*background: rgba(255,255,255,0.6);*/
	position: absolute;
	width: 100%;
	top: 0px;
	display: none;
	z-index: 5;
	padding-top: calc(125/640*100vw);
}
.gnav .icn_close {
	width: 10.93vw;
	position: absolute;
	top: 4.37vw;
	right: 4vw;
}

.gnav ul {
	background: rgba(10,25,65,0.9);
	padding: 0 4% 0%;
	border-top: 2px solid #fff;
}
.gnav ul li.list-normal {
	color: #fff;
	padding: 0 2vw;
	border-bottom: 1px solid #fff;
}
.gnav ul li.list-normal:last-child {
	border-bottom: none;
}
/*.gnav ul li.list-normal:nth-of-type(4) { margin-bottom: 6.25vw;}*/

.gnav li a {
	display: block;
	padding: 5vw 0px 5vw 15px;
	color: inherit;
	line-height: 1;
	position: relative;
}
.gnav li.list-normal a i {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0px;
	font-size: 100%;
	color: #fff;
	font-weight: bold;
}

/* fix 下部フローティングメニュー
========================================================================= */
.fix {
	position: fixed;
	bottom: 0;
	width: 100%;
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display: -webkit-flex;/*--- safari（PC）用 ---*/
	display:flex;
	-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack:justify;/*--- IE10 ---*/
	-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
	justify-content:space-between;
	z-index: 1000;
}
.fix a {
	display: block;
}
.fix_tel {
	width: 80%;
}
.fix_top {
	width: 20%;
}

/* .main_img メイン画像
========================================================================= */
.wrap_main_img {
	position: relative;
}
.main_img {
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center top;
	-webkit-background-size: contain;
	background-size: contain;
	padding-top: 85.93%;
	z-index: 0;
}
.main_img:after {
	content: "";
	width: 100%;
	height: 57.81vw;
	background: url(images/index/propeller_a.png) center bottom no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
}

.txt_main {
	position: absolute;
	left: 6.25vw;
	top: 41.87vw;
	font-size: 170%;
	color: #5a5046;
	line-height: 1.3;
}
.txt_main span {
	display: inline-block;
	font-size: 60%;
	line-height: 1.5;
	margin-top: 2vw;
}

/* #content
======================================================================================== */

/* .greeting_index　ごあいさつ
============================================================================== */
.greeting_index {
	background: url(images/index/bg_greeting_index.png) left 19.53vw no-repeat;
	-webkit-background-size: 92.34vw auto;
	background-size: 92.34vw auto;
	padding-bottom: 9.37vw;
	position: relative;
}
.greeting_index:after {
	content: "";
	width: 100%;
	height: 34.68vw;
	background: url(images/index/propeller_b.png) center top no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
.greeting_index .logo_clinic {
	height: 19.53vw;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}
.greeting_index .logo_clinic img {
	width: 53.75vw;
}
.greeting_index h2 {
	font-size: 250%;
	color: #0a1941;
	line-height: 1.5;
	font-style: italic;
	font-weight: 100;
	text-align: right;
	padding-top: 54.68vw;
	margin-bottom: 5vw;
}
.greeting_index h2 span {
	display: block;
	font-size: 28.57%;
	font-weight: 400;
	margin-top: 2vw;
}

/* インスタグラム index_insta
------------------------------------------------------------------*/
.index_insta {
	background: url("images/index/bg_index_ortho.jpg")no-repeat right 40% top / cover;
	padding: 15vw 0 20vw;
	margin-bottom: 34vw;
}
.index_row_insta01 .col_l {
	max-width: calc(640 / 750*100vw);
	margin-left: auto;
	margin-right: auto;
}
.index_row_insta01 .col_l .copy {
	font-size: 158.33%;
	letter-spacing: 0;
	line-height: 1.7;
	font-weight: 500;
	margin-bottom: 25px;
}
.index_row_insta01 .col_l .txt01 {
	line-height: 2;
	margin-bottom: 20px;
}
.index_row_insta01 .col_l .txt02 {
	line-height: 2;
}
.index_row_insta01 .col_r {
	position: relative;
	width: 100%;
}
.index_btn_insta01 .txt {
	margin-top: 2vw;
}
.index_btn_insta01 {
	width: calc(520 / 640*100vw);
	height: calc(130 / 640*100vw);
	position: absolute;
	right: 0;
	left: 0;
	bottom: -30vw;
	margin: auto;
}
.index_btn_insta01 a {
	display: block;
	background: url("images/index/btn_insta.jpg")no-repeat center / cover;
	width: 100%;
	height: 100%;
	transition: .3s;
}
.index_row_insta01 .col_l .txt01 span {
	background-color: #dfcd8f;
}

/* .point_index　矯正歯科医院を選ぶポイント
============================================================================== */
.point_index {
	background: url(images/index/bg_point_index.png) center top 31.25vw no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	padding-bottom: 10.93vw;
}
.point_index .img_point_index {
	text-align: center;
}
.point_index .icn_point {
	text-align: center;
	margin-bottom: 3.12vw;
}
.point_index .icn_point img {
	width: 20.31vw;
}
.point_index h2 {
	font-size: 135.71%;
	line-height: 1.3;
	text-align: center;
	margin-bottom: 6.25vw;
}
.point_index p {
	font-size: 92.85%;
	margin-bottom: 4.68vw;
}

/* .mind_index　矯正歯科治療にかける想い
============================================================================== */
.mind_index {
	background: url(images/index/bg_mind_index.png) center top 5vw no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	padding-bottom: 10.93vw;
}
.mind_index .img_mind_index {
	text-align: center;
}
.mind_index .icn_mind {
	text-align: center;
	margin-bottom: 3.12vw;
}
.mind_index .icn_mind img {
	width: 20.31vw;
}
.mind_index h2 {
	font-size: 135.71%;
	line-height: 1.3;
	text-align: center;
	margin-bottom: 6.25vw;
}
.mind_index p {
	font-size: 92.85%;
	margin-bottom: 4.68vw;
}

/* .ortho_index　矯正治療について
============================================================================== */
.ortho_index {
	height: 81.87vw;
	background: url(images/index/bg_ortho_index.png) center top 4.68vw no-repeat;
	-webkit-background-size: contain;
	background-size: contain;
	margin-bottom: 6.25vw;
}
.ortho_index h2 {
	font-size: 250%;
	color: #0a1941;
	line-height: 1;
	font-style: italic;
	font-weight: 100;
	text-align: right;
	margin-bottom: 4.5vw;
}
.ortho_index h2 span {
	display: block;
	font-size: 28.57%;
	font-weight: 400;
	margin-top: 2vw;
}
.ortho_index ul li {
	text-align: center;
}
.ortho_index ul li:not(:last-child) {
	margin-bottom: 5.46vw;
}

/* .slider_index　カルーセルスライダー5枚
============================================================================== */
.slider_index {
	overflow:hidden;
	position:relative;
	width:100%;
}
.slide_inner {
	
}
/* デフォルトCSSの無効化 */
.bx-wrapper .bx-viewport {
	-moz-box-shadow: none;
	-webkit-box-shadow:none;
	box-shadow: none;
	border: none;
	left: 0;
}
/* ＜ ＞ボタン */
.custom-prev,
.custom-next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1000;
}
.custom-prev a,
.custom-next a {
	display: block;
	width: 9.37vw;
	height: 15.62vw;
	text-indent: -9999px;
}
.custom-prev { left: 0;}
.custom-next { right: 0;}

.custom-prev a {
	background: url(images/index/arw_prev.png);
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
}
.custom-next a {
	background: url(images/index/arw_next.png);
	-webkit-background-size: 100% auto;
	background-size: 100% auto;
}
/* ページャー */
.bx-wrapper {
	margin-bottom: 0;
}
.bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #fff;
	padding-top: 20px;
	position: absolute;
	bottom: 2vw;
	z-index: 1000;
}
.bx-wrapper .bx-pager.bx-default-pager a { background: #fff;}
.bx-pager.bx-default-pager a.active { background: #0a1941!important;}

/* .clinic_index　監修医院
============================================================================== */
.clinic_index {
	padding: 10.93vw 0 18.75vw;
}
.clinic_index h2 {
	height: 30.31vw;
	background: url(images/index/ttlbg_clinic_index.png) center top no-repeat;
	-webkit-background-size: 59.21vw 30.31vw;
	background-size: 59.21vw 30.31vw;
	padding-top: 7.03vw;
	margin-bottom: 6.25vw;
	
	font-size: 250%;
	color: #0a1941;
	line-height: 1;
	font-style: italic;
	font-weight: 100;
	text-align: center;
}
.clinic_index h2 span {
	display: block;
	font-size: 28.57%;
	font-weight: 400;
	margin-top: 2vw;
}
.clinic_index ul li a {
	color: inherit;
}
.clinic_index ul li:not(:last-child) {
	margin-bottom: 3.12vw;
}
.clinic_index ul li figure {
	text-align: center;
}
.clinic_index ul li p {
	height: 10.62vw;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	
	font-size: 114%;
	text-align: center;
	position: relative;
}
.clinic_index ul li p:after {
	content: "\f105";
	font-family: FontAwesome;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0px;
	font-size: 100%;
	color: #32373c;
}

/* bnrbox_index　バナー2つ
======================================================================== */
.bnrbox_index {
	border-top: 1px solid #b5b7bc;
	padding: 0.78vw 0;
	position: relative;
}
.bnrbox_index ul li:not(:last-child) {
	margin-bottom: 2px;
}

/* フッター総合 
======================================================================================== */

/* .logo_foot　ロゴ
============================================================================== */
.logo_foot {
	height: 62.5vw;
	background: url(images/index/bg_foot.png) center top no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
	padding-top: 10.93vw;
	text-align: center;
}
.logo_foot img {
	width: 67.18vw;
}

/* #map　グーグルマップ
============================================================================== */
#map {
	position: relative;
	width: 100%;
	padding-top: 79.68%;
	overflow: hidden;
}
#map2 {
	position: relative;
	width: 100%;
	padding: 70% 0 0 0;
	overflow: hidden;
	border: 1px solid #333;
}
#map iframe {
	position: absolute;
	top: -30vw;
	left: 0;
	width: 100%;
	height: calc(100% + 30vw + 30vw);
	pointer-events: none;
}
#map2 iframe {
	position: absolute;
	top: -30vw;
	left: 0;
	width: 100%;
	height: calc(100% + 30vw + 30vw);
	pointer-events: none;
}

/* .foot_main　フッター本体
============================================================================== */
.foot_main {
	padding: 7.81vw 0;
}
.foot_main h3 {
	font-size: 160%;
	line-height: 1.3;
	text-align: center;
	margin-bottom: 2.34vw;
}
.foot_main .txt_place {
	font-size: 107.14%;
	text-align: center;
	margin-bottom: 1.87vw;
}
.foot_main .tel_foot {
	text-align: center;
	margin-bottom: 3.12vw;
}

.foot_main .tbl_foot {
	margin-bottom: 1.87vw;
}
.foot_main .tbl_caption {
	font-size: 107.14%;
	line-height: 1.5;
}

/* copyright コピーライト
============================================================================== */
.copyright {
	background: #0a1941;
	padding: 3vw 0 calc(3vw + 110/640*100vw);
	text-align: center;
}
.copyright small {
	font-size: 92.85%;
	color: #fff;
	line-height: 1;
}

.grecaptcha-badge { visibility: hidden; }