@charset "utf-8";
@import url("import.css");
/* 共通
-------------------------------------------------------------*/
.sp {
	display: none;
}
.switch {
	visibility: hidden;
}
html, body {
	width: 100%;
}
body {
	font-family: Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	-webkit-text-size-adjust: 100%;
	color: #595757;
	font-size: 15px;
	text-align: center;
}
/* 2019/12/04 - [要望]行間詰めて欲しい */
/* p { line-height: 2; } */

#outer {
	width: 100%;
	overflow: hidden;
}
#___plusone_0 {
	width: 65px !important;
}
.wrapper {
	width: 980px;
	margin: 0px auto;
	text-align: left;
}
.inner15 {
	width: 930px;
	margin: 0px 15px 0;
}
.inner75 {
	width: 830px;
	margin: 0px 75px 0;
}
.inner110 {
	width: 760px;
	margin: 0px 110px 0;
}
img.fit {
	width: 100%;
	height: auto;
}
a {
	outline: none;
}
p.line1 {
	width: 32px;
	height: 1px;
	background: #595757;
	margin: 16px auto 64px;
}
.bg_gray1 {
	background: #f6f8f9;
}
.bg_gray2 {
	background: #e6e6e6;
}
a {
	color: #595757;
}
a:link {
	color: #595757;
}
/* ヘッダー
-------------------------------------------------------------*/
.slider {
	height: 530px;
	overflow: hidden;
	position: relative;
	padding-bottom: 10px;
}
.flexslider {
	height: 1040px;
}
/* メディアクエリが効かない旧ブラウザ */
.slider {
	height: 610px;
}
.slider li img {
	min-width: 1100px\9;
}
header {
	position: absolute;
	top: 8%;
	left: 50%;
	width: 558px;
	margin-left: -279px;
	z-index: 9999;
}
header h1 {
	width: 450px;
	margin: 0 auto;
	margin: 0 auto 40px;
}
header h1 img {
	width: 100%;
	height: auto;
}
header p.t1 {
	width: 450px;
	margin: 0 auto 20px;
}
header p.t1 img {
	width: 100%;
	height: auto;
}
header p.t2 {
	margin: 0 auto 30px;
}
header p.btn {
	width: 180px;
	margin: 0 auto 25px;
}
header p.btn img {
	width: 100%;
	height: auto;
}
 @media(min-width:1870px) {
.slider {
	height: 1040px;
}
header {
	position: absolute;
	top: 30%;				/*20160831変更36-30*/
	left: 50%;
	width: 558px;
	margin-left: -279px;
	z-index: 9999;
}
header h1 {
	margin: 0 auto 80px;
}
header p.t1 {
	margin: 0 auto 25px;
}
header p.t2 {
	margin: 0 auto 35px;
}
header p.btn {
	margin: 0 auto 25px;
}
}
@media(max-width:1869px) and (min-width: 1600px) {
.slider {
	height: 890px;
}
header {
	position: absolute;
	top: 28%;
	left: 50%;
	width: 558px;
	margin-left: -279px;
	z-index: 9999;
}
header h1 {
	margin: 0 auto 50px;
}
header p.t1 {
	margin: 0 auto 25px;
}
header p.t2 {
	margin: 0 auto 35px;
}
header p.btn {
	margin: 0 auto 25px;
}
}
 @media(max-width:1599px) and (min-width: 1400px) {
.slider {
	height: 750px;
}
header {
	position: absolute;
	top: 10%;
	left: 50%;
	width: 558px;
	margin-left: -279px;
	z-index: 9999;
}
header h1 {
	margin: 0 auto 100px;
}
header p.t1 {
	margin: 0 auto 25px;
}
header p.t2 {
	margin: 0 auto 35px;
}
header p.btn {
	margin: 0 auto 25px;
}
}
 @media(max-width:1399px) and (min-width: 1300px) {
.slider {
	height: 700px;
}
header {
	position: absolute;
	top: 10%;
	left: 50%;
	width: 558px;
	margin-left: -279px;
	z-index: 9999;
}
header h1 {
	margin: 0 auto 60px;
}
header p.t1 {
	margin: 0 auto 25px;
}
header p.t2 {
	margin: 0 auto 35px;
}
header p.btn {
	margin: 0 auto 25px;
}
}
@media(max-width:1299px) and (min-width: 1100px) {
.slider {
	height: 610px;
}
header {
	position: absolute;
	top: 8%;
	left: 50%;
	width: 558px;
	margin-left: -279px;
	z-index: 9999;
}
header h1 {
	width: 450px;
	margin: 0 auto;
	margin: 0 auto 40px;
}
header h1 img {
	width: 100%;
	height: auto;
}
header p.t1 {
	width: 450px;
	margin: 0 auto 20px;
}
header p.t1 img {
	width: 100%;
	height: auto;
}
header p.t2 {
	margin: 0 auto 30px;
}
header p.btn {
	margin: 0 auto 25px;
}
}
@media(max-width:1099px) {
.slider {
	height: 580px;
}
.slider li img {
	min-width: 980px;
}
header {
	position: absolute;
	top: 20%;
	left: 50%;
	width: 558px;
	margin-left: -279px;
	z-index: 9999;
}
header h1 {
	width: 450px;
	margin: 0 auto;
	margin: 0 auto 40px;
}
header h1 img {
	width: 100%;
	height: auto;
}
header p.t1 {
	width: 450px;
	margin: 0 auto 40px;
}
header p.t1 img {
	width: 100%;
	height: auto;
}
header p.t2 {
	display: none;
}
header p.btn {
	margin: 0 auto 25px;
}
}
@media(max-width:1040px) {
.slider {
	height: 550px;
}
}
/* nav
-------------------------------------------------------------*/
.gnav {
	width: 100%;
	padding: 25px 0 10px;
	background: #fff;
}
.gnav h2 {
	width: 190px;
	float: left;
}
.gnav nav {
	/*width: 660px;			20160902変更*/
	display: block;
	float: left;
}
.gnav nav ul {
}
.gnav nav ul li {
	float: left;
}
.gnav nav ul li a {
	display: block;
	padding: 10px 12px 0;
}
.gnav p.reservation {
	width: 101px;
	float: right;
	padding-left: 20px;
	margin-top: 10px;
	border-left: 1px solid #595757;
}
#change {
	position: fixed;
	top: 0px;
	left: 0px;
	display: none;
	z-index: 9999;
	width: 100%;
	padding-top: 10px;
}
* html #change {
	background: none;
	text-indent: -9999px;
}

#layerMenu { display: none; }
/* whitening
-------------------------------------------------------------*/
section.whitening {
	margin: 110px 0 30px;
}
section.whitening h3 {
	width:100%;
	margin:10px 0  30px 0;
	text-align: center;
}
section.whitening .catch {
	text-align: center;
	margin-bottom: 50px;
}
/* 2019/12/04 - [要望]行間詰めて欲しい */
/* section.whitening p { line-height: 2; }*/
section.whitening .btn {
	text-align: center;
	width: 180px;
	margin: 50px auto 100px;
}
section.whitening .btn img {
	width: 100%;
	height: auto;
}
/* flow
-------------------------------------------------------------*/
section.flow {
	padding-top: 80px;
	margin: 0px 0 30px;
}
section.flow h3 {
	width:100%;
	margin:10px 0 50px 0;
	text-align: center;
}
section.flow table {
	vertical-align: top;
	margin-bottom: 80px;
}
section.flow table td {
	vertical-align: top;
}

section.flow table tr td img.flowImage {
	width:180px;
	height:129px;
}

section.flow table td h4 {
	font-size: 20px;
	margin-bottom: 20px;
	margin-left: 50px;
}
section.flow table td p {
	margin-right: 80px;
	margin-left: 50px;
	font-size: 14px;
}
section.flow .btn {
	text-align: center;
	padding-bottom: 100px;
	width: 180px;
	margin: 0 auto;
}
section.flow .btn img {
	width: 100%;
	height: auto;
}
/* == スマホ画面で見た際のSP画像の非表示CSS == */
section.flow tr.spImgRow { display:none; }

/* profile
-------------------------------------------------------------*/
section.profile {
	padding-top: 70px;
	padding-bottom:50px;
	margin: 0px 0 20px;
}
section.profile h3 {
	width:100%;
	margin:10px 0 50px 0;
	text-align: center;
}
section.profile .catch {
	text-align: center;
	margin-bottom: 50px;
}
section.profile .info {
}
section.profile .info .photo {
	width: 180px;
	margin-right: 70px;
	float: left;
}
section.profile .info .photo img {
	width: 100%;
	height: auto;
}
section.profile .info .text {
	width: 500px;
	float: left;
	font-size: 14px;
}
section.profile .info .text h4 {
	margin-bottom: 15px;
}
section.profile .info .text h5 {
	margin-bottom: 15px;
}
section.profile .info .text h5 span {
	font-size: 18px;
}
section.profile .info .text p {
}
/* photo_all1
-------------------------------------------------------------*/
.photo_all1 img {
	width: 100%;
	height: auto;
}
/* price
-------------------------------------------------------------*/
section.price {
	margin: 100px 0 100px;
}
section.price h3 {
	width:100%;
	margin:10px 0  20px 0;
	text-align: center;
}
section.price dl.menu {
	font-size: 20px;
	padding-top: 25px;
	margin-bottom: 10px;
}
section.price dl.menu dt {
	padding-top : 10px;
	padding-bottom : 10px;
	padding-left : 10px;
	width : 600px;
	float : left;
	clear : both;
}
section.price dl.menu dd {
	padding-top : 10px;
	padding-left : 10px;
	padding-right : 10px;
	padding-bottom : 10px;
	width : 200px;
	text-align:right;
	margin-left : 600px;
}
section.price dl.menu dd span {
	font-size: 12px;
}
section.price .more {
	width: 340px;
	margin: 0 auto;
	padding: 0px 50px 0;
	border-left: 1px solid #595757;
	border-right: 1px solid #595757;
}
section.price .more p {
	text-align: center;
}
section.price .more dl dt {
	float: left;
	width: 200px;
	line-height: 2.5;
	float : left;
	clear : both;
}
section.price .more dl dd {
	width: 120px;
	text-align: right;
	line-height: 2.5;
	margin-left : 220px;
}
section.price .more dl dd span {
	font-size: 12px;
}
section.price h4 {
	margin: 100px 0 15px;
	font-size: 16px;
}
section.price h5 {
	font-size: 26px;
	margin-top: 65px;
	margin-bottom: 20px;
}
section.price p.f14 {
}
section.price p.f15 {
	font-size: 15px;
	margin-bottom: 15px;
}

section.price .f12 {
	font-size: 12px;
}
section.price ul.mark li{
	padding-left:1em;
	text-indent:-1em;
	line-height:1.8;
}
section.price ul.mark li span.line{
	text-decoration:underline;
}
section.price .commission{
	margin:60px 0 60px 0px;
	border-left:1px solid #000;
	border-right:1px solid #000;
	padding:0 60px;
	text-align:center;
}
section.price .commission .t1{
	font-size:19px;
	border-bottom:1px dashed #000;
	padding-bottom:12px;
	margin-bottom:20px;
	padding-top:5px;
}
section.price .commission .t2{
	font-size:16px;
	display:block;
	padding-bottom:15px;
}
section.price .commission .t3{
	font-size:28px;
	display:block;
	padding-bottom:5px;
}
section.price .credit_img{
	margin-top:35px;
}
/* news
-------------------------------------------------------------*/
section.news {
/* 	background: url(../images/news_bg.jpg) no-repeat top center; */
	padding: 50px 0;
	margin: 0px 0 40px;
}
section.news .inner110 .box {
	padding: 60px 70px 40px;
	background: #fff;
	filter: alpha(opacity=85);
	-moz-opacity: 0.85;
	-khtml-opacity: 0.85;
	opacity: 0.85;
}
section.news h3 {
	width:100%;
	margin:10px 0 50px 0;
	text-align: center;
}
section.news dl {
	margin-bottom: 30px;
}
section.news dl dt {
	padding-top : 10px;
	padding-bottom : 10px;
	padding-left : 10px;
	width : 120px;
	float : left;
	clear : both;
}
section.news dl dd {
	padding-top : 10px;
	padding-left : 10px;
	padding-right : 10px;
	padding-bottom : 10px;
	width : 500px;
	margin-left : 140px;
}
section.news dl dd a {
	text-decoration: none;
}
section.news dl dd a:hover {
	text-decoration: underline;
}
/* news記事ページ
-------------------------------------------------------------*/
#page_news .gnav {
	display: none;
}
article.news {
	margin-top: 160px;
}
article.news h1 {
	text-align: left;
	font-size: 20px;
	margin-bottom: 30px;
}
article.news .post {
	width: 500px;
	margin: 0 auto;
	text-align: left;
	margin-bottom: 30px;
}
article.news .post p {
	margin-bottom: 1em;
}
article.news p.h {
	text-align: center;
}
article.news .post img {
	max-width: 100%;
	height: auto;
}
article.news p.date {
	margin-bottom: 0px;
}
article.news .pager {
	text-align: center;
	margin-bottom: 100px;
}
article.news .pager .prev {
	display: inline-block;
	padding-right: 15px;
	position: relative;
	top: 2px;
}
article.news .pager .num {
	display: inline-block;
	padding-right: 10px;
}
article.news .pager .next {
	display: inline-block;
	position: relative;
	top: 2px;
}
/* access
-------------------------------------------------------------*/
section.access {
	margin: 0;
}
section.access h3 {
	width:100%;
	margin:10px 0  20px 0;
	text-align: center;
	font-size:21px;
}
section.access .left {
	width: 400px;
	float: left;
	position: relative;
}
section.access .left .top {
	width:100%;
	position: absolute;
	top: 0;
	left: 0;
}
section.access .left .bottom {
	position: absolute;
	top: 170px;
	left: 0;
}
section.access .left h4 {
	margin-bottom: 20px;
}
section.access .left p {
	font-size: 14px;
	padding-left: 10px;
	line-height: 2;
}
section.access .left p.btn {
	width: 180px;
}
section.access .left p.btn img {
	width: 100%;
	height: auto;
}
/* == 2019/11/14 - コーディング方法変更により、廃止 ===
section.access .left .time {
	border-top: 1px solid #595757;
	border-bottom: 1px solid #595757;
	padding: 10px 0;
	text-align: center;
	width: 380px;
	margin: 25px 10px 15px;
}
section.access .left .time p {
	font-size: 18px;
	line-height: 1.8;
}
=========================================== */
section.access .right {
	width: 460px;
	min-height: 360px;
	float: right;
	margin-top: 15px;
	margin-right: 30px;
}
/* フッター
-------------------------------------------------------------*/

footer {
	padding: 20px 0 0;
	width: 100%;
	color: #fff;
	background: #64b5c7;
}
footer ul {
	font-size: 0;
}
footer ul li {
	display: inline-block;
	/* IE 6/7 */
	  /display: inline;
 /zoom: 1;
	line-height: 1;
	padding: 0 15px 0px;
	border-right: 1px solid #fff;
}
footer ul li:first-child {
	border-left: 1px solid #fff;
}
footer ul li a {
	font-size: 12px;
	color: #fff !important;
	text-decoration: none;
}
footer ul li a:hover {
	text-decoration: underline;
}
footer .copy {
	font-size: 87%;
	padding-top: 35px;
	padding-bottom: 10px;
}
#page-top a {
	position: fixed;
	bottom: 20px;
	right: 50px;
	z-index: 9999;
	text-align: center;
	text-decoration: none;
	color: #fff;
	display: block;
}

/* 院長紹介文言(上書きで潰されるので絶対ルール適用) */
div.text { width:100%!important; }

/* フレーム調整(文言削除に伴うPos調整) */
section.access div.left div.bottom { top:140px; }

/* 営業時間情報フレーム */
div.time {
	width:380px;
	border-top:solid 1px #595757;
	border-bottom:solid 1px #595757;
	padding:10px 0;
	margin:25px 10px;
	text-align:center;
}
/* 営業時間(CSSがスパゲッティ化している為、絶対ルール適用) */
div.time p {
	font-size: 18px!important;
	line-height: 1.8!important;
}

/* 営業時間注釈(CSSがスパゲッティ化している為、絶対ルール適用) */
div.time p#timeComment { font-size: 12px!important; }

/* ナビゲーションメニュー */
ul.cf li {
	text-align:center;
	font-size:12px;
}

/* ナビゲーションメニューリンク */
ul.cf li a { text-decoration:none; }

/* ナビゲーションメニュー日本語文言 */
ul.cf li a span { font-size:10px; }

/* コンテンツタイトル */
div.inner110 h3, div.inner75 h3 { font-size:21px; }

/* 『WEBご予約』リスト領域 */
li.reserveList { margin:0 30px; }

/* フロント表示『WEBご予約』(SP画面のみ) */
div#topReserveArea { display:none; }

/* ヘッダーロゴエリア */
section.headerLogoArea {
	z-index: 9999;
	width:100%;
	padding:10px 0 0 0;
	background-color:#282772; 
	text-align:center;
	position:fixed;
	top:0;
	left:0;
}
/*
section.headerLogoArea {
	z-index: 9999;
	width:100%;
	padding:10px 0 0 0;
	background-color:#282772;
	text-align:center;
	position:fixed;
	top:0;
	left:0;
}
*/
/*------------------------------------------------------------------------------------------------------------------------*/
/* [ヘッダロゴエリア]コンテンツテーブル */
section.headerLogoArea table { width:50%; margin:0 auto 12px auto; }
/* [ヘッダロゴエリア]コンテンツ左 */
section.headerLogoArea table tr td#contentsLeft { color:#FFFFFF; width:25%; font-size:18px; font-weight:bold; }
/* [ヘッダロゴエリア]コンテンツ右 */
section.headerLogoArea table tr td.contentsRight { width:35%; padding-right:15px; }
/* [ヘッダロゴエリア]コンテンツ右Aタグ */
section.headerLogoArea table tr td.contentsRight a { display:block; background-color:#FFFFFF; border-radius:3px; }
section.headerLogoArea table tr td.contentsRight a.btnText { padding:7px 0; text-decoration:none; }
/*------------------------------------------------------------------------------------------------------------------------*/




/* 住所文字列(改行あり)(CSSがスパゲッティ化している為、絶対ルール適用) */
p.accessDiscript { line-height:18px!important; }

/* サイトマップエリア */
footer#sitemap { background-color:#282772; }

/* 三大特徴説明エリア */
div#characteristicArea {
	margin-bottom:20px;
	padding:10px;
	font-size:18px;
	font-weight:bold;
	background-color:rgba(245,245,245, 1);
	border-radius:8px;
}
/* [三大特徴説明エリア]タイトル */
div#characteristicArea p.areaTitle { margin-bottom:15px; text-align:center;  }
/* [三大特徴説明エリア]詳細テーブル */
/* div#characteristicArea table { margin:5px; } */
/* [三大特徴説明エリア]詳細テーブル 空白行 */
div#characteristicArea table tr.blankCell { height:10px; }
/* [三大特徴説明エリア]詳細テーブル タイトルセル */
div#characteristicArea table tr td.titleCell { vertical-align:top; }
/* [三大特徴説明エリア]詳細テーブル 詳細セル */
div#characteristicArea table tr td.detailCell { padding-left:36px; }

//section.headerLogoArea table { display:none; }
//section#contactArea { display:none; }

/* [院長からの挨拶エリア]画像 */
section.profile img {
	width:30%;
	height:30%;
	margin-left:5px;
	margin-bottom:5px;
	float:right;
}

/* [アクセスエリア]住所 */
section.access p.accessDiscript { text-align:center; }

/* 『詳しい技術』フレーム */
section#detailTechnic { margin:0 auto 20px auto; }
/* 『詳しい技術』ボタン */
section#detailTechnic p.btn { text-align:center; width:180px; margin:0 auto; }
section#detailTechnic p.btn a img { width:100%; height:auto; }

/* [ホワイトニング紹介]キャッチ画像 */
p.pcImgArea { display:block; }
p.spImgArea { display:none; }

/* [治療の流れ]PCとSPで出力する文言の位置を切り替える */
table#flowPcTable { display:block; }
table#flowSpTable { display:none; }