﻿
@media screen and (min-width: 761px) {


}

/*-------------------------*/
/* SPレイアウト 760px*/
/*-------------------------*/
@media screen and (max-width: 760px) {
*, *:before, *:after {
  box-sizing: border-box;
}

body {
	width:100%;
	min-width:100%!important;
	-webkit-text-size-adjust: 100%;
	font-size:14px;
}
img {
	max-width:100%;
	height:auto;
}
a:hover,
a:active {
	text-decoration: none;
	color: #222;
}

.sn{ display:none;}
.pn{ display:block;}

section { width: 100%;}

/*-------sp_menu--------*/
.menu-trigger,
.menu-trigger span {
	float: right;
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
	z-index:9990;
	position:fixed;
	right:0px;
}
.menu-trigger {
	width: 55px;
	height: 55px;
	text-align: center;
	margin: 0;
}
.menu-trigger span {
	position: absolute;
	left: 0;
	width: 30px;
	height: 2px;
	background-color: #ff6f00;
}
.menu-trigger span:nth-of-type(1) {
	top: 19px;
	left: 15px;
}
.menu-trigger span:nth-of-type(2) {
	top: 26px;
	left: 15px;
}
.menu-trigger span:nth-of-type(3) {
	bottom:27px;
	left: 15px;
}
.menu-trigger span:nth-of-type(4) {
	bottom:20px;
	left: 15px;
}

.menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(20px) rotate(-45deg);
	transform: translateY(8px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) ,
.menu-trigger.active span:nth-of-type(3)  {
	left: 200%;
	opacity: 0;
	-webkit-transform: translateY(0px);
	transform: translateY(5px);
	-webkit-animation: active-menu-bar02 .8s forwards;
	animation: active-menu-bar02 .8s forwards;
}
@-webkit-keyframes active-menu-bar02 {
	100% {
		height: 0;
	}
}
@keyframes active-menu-bar02 {
	100% {
		height: 0;
	}
}
.menu-trigger.active span:nth-of-type(4) {
	-webkit-transform: translateY(-30px) rotate(45deg);
	transform: translateY(-5px) rotate(45deg);
}

header nav.sp{
	position:absolute;
	top:0;
	width:100%;
	text-align:center;
	z-index:9000;
	height:auto;
	left:0;
	padding: 30px 40px 50px;
	background:#fff;
	box-shadow: 0px 7px 15px -5px rgba(0, 0, 0, 0.2);
}

header nav.sp ul{}
header nav.sp ul li{
	background:#f6f6f6;
	overflow:hidden;
	font-size:16px;
	width: 100%;
	border-bottom: 1px solid #a5a4a4;
}

header nav.sp li:last-child {border-bottom:none;}

header nav.sp li a{
	padding:12px 0;
	display:block;
}
.logo {margin-bottom:10px;}
.tel {
	width:100%;
	float:none;
	text-align:center;
	margin:20px auto 0;
	border: #949494 2px solid;
	border-radius: 3em;
	padding: 15px;
}


/*=============================
	Layout-Base
===============================*/
/* header
-------------------------*/
header {}
#wrap-head {
	 position:static;
	 z-index:100;
	 width:100%;
	 top:0;
	 background:#fff;
}
#header {
	width: 96%;
	margin: 0 auto;
	padding:6px 0;
	position:static;
	z-index:0;
	text-align:left;
}
	.siteTitle {
		float:none;
		margin-top:0;
	}
.head_Txt {
	background:#f6f6f6;
	height:auto;
}
	.head_Txt p {
		font-size:12px;
		color:#020202;
		line-height:20px;
		font-weight:normal;
		letter-spacing:-1px;
	}
		.head_Txt p span {
			font-size:8px;
		}

/* main-visual
-------------------------*/
#visual {
	width:100%;
	height: auto;
	position:relative;
	z-index:0;
	margin-top:0;
}
	
	/* top image and slideshow */
	.slides {
		height: auto;
		overflow: hidden;
	}

#sub-visual {
	width:100%;
	height: auto;
	position:relative;
	z-index:0;
	margin-top:0;
}

	#sub-visual h2 {
		padding:2em 0;
	}


/* pagetop
-------------------------*/
#pagetop {}
#totop {
	clear:both;
	position: fixed;
	bottom: 0;
	right: 0;
	z-index:9990;
	width:40px;
}
#totop a {
	display: block;
}


/* footer
-------------------------*/
footer {}
#footer {
	width: 96%;
	margin: 0 auto;
	padding-top:30px;
	font-weight:bold;
}
	.ft_logo {margin-bottom:20px;}
	.ft_nav {}
		.ft_nav ul {}
		.ft_nav li {
			line-height:50px;
			height:50px;
			color:#47b4d7;
			display:block;
			width:48%;
			float:left;
			background:#ff6f00;
			font-size:13px;
			letter-spacing:-1px;
			margin:0 0 10px 0;
			border:1px solid #e2e6eb;
		}
		.ft_nav li a {display:block;}
		.ft_nav li:nth-child(2n){ float:right;}
		.ft_nav li a:link,
		.ft_nav li a:visited,
		.ft_nav li a:hover,
		.ft_nav li a:active { color: #fff;}	
		.ft_nav li:first-child,.ft_nav li:nth-child(9) {background:#ff6f00;}
.copyright {}
	.copyright address {
		line-height:60px;
		font-size:11px;
	}


/*=============================
	TopPage setting
===============================*/
section {
	width:96%;
	margin:0 auto;
}

	/* subcon */
	#wrap-content.subcon {
	}
	
		#wrap-content.subcon section.mainsec {
			width:96%;
			margin:0 auto;
				padding:2em 0 4em;
			text-align:left;
		}
		#wrap-content.subcon section.mainsec h3{
			margin-top:2em;
			padding: 0.5em 0 0.8em 0.5em;
			font-size: 20px;
			line-height: 24px;
		}
		#wrap-content.subcon section.mainsec h3.h3cen{
			font-size: 20px;
			line-height: 24px;
		}
		#wrap-content.subcon section.mainsec h4 {
			font-size:20px;
			line-height:24px;	
		}
		#wrap-content.subcon section.mainsec p{
			padding:1em 0 0;
		}

#greeting {
	background:url(../images/top/bg_greeting.jpg) no-repeat center bottom,#ff6f00;
	height:auto;
	background-size:contain;
}
.greeting {padding:26px 0 60px;}
	.greeting h3 {margin-bottom:14px;}
	.greeting p {
		line-height:24px;
		color:#fff;
		font-weight:normal;
	}
#feature {
	background:url(../images/top/bg_feature.jpg) no-repeat center top,#ff6f00;
	height:auto;
	background-size:cover;
}
.feature {padding:40px 0;}
	.feature h3 {margin-bottom:40px;}
	.feature li {
		width:300px;
		float:none;
		margin:0 auto 22px;
		background:url(../images/top/bg_f_list_btm.png) no-repeat center bottom,
		url(../images/top/bg_f_list_top.png) no-repeat center top;
		background-size:contain,contain;
		height:auto;
		padding:9px 0;
	}
	.feature li:last-child {margin:0 auto;}
	.feature li .f_Txt {
		background:url(../images/top/bg_f_list_rp.png) repeat-y center top;
		background-size:contain;
		padding-bottom:20px;
	}
	.feature h4 {
		font-size:22px;
		line-height:70px;	
	}
		.feature h4 span {color:#ff6f00;}
	.feature .f_img {
		text-align:left;
		margin:0 0 20px 1px;
		width:294px;
	}	
	.feature p {
		line-height:24px;
		width:90%;
		margin:0 auto;
		text-align:left;
	}
		.feature p span {color:#ff6f00;}
	.feature .btn {margin-top:32px;}
	.btn {
		width:220px;
		height:40px;
		line-height:40px;
		background:url(../images/top/arw02.jpg) no-repeat 200px 14px,#ff6f00;
		-moz-border-radius: 30px;
		-webkit-border-radius: 30px;
		-o-border-radius: 30px;
		-ms-border-radius: 30px;
		font-size:18px;	
		margin:0 auto;
	}
		.btn a {
			color:#fff;
			display:block;
			text-decoration:none;
		}
#treatment {
	background:url(../images/top/bg_treatment.jpg) no-repeat center bottom,#f6f6f6;
	height:auto;
	background-size:contain;
}
.treatment {}
	.treatment .t_Txt {
		width:100%;
		padding:68px 0 160px;
	}
	.treatment h3 {margin-bottom:26px;}
	.treatment p {
		line-height:24px;
	}
	.treatment ul {
		width:100%;
		margin:34px auto 0;
	}
	.treatment li {float:left;}
	.treatment li:last-child {float:right;}
	.treatment .btn {
		width:145px;
		background:url(../images/top/arw02.jpg) no-repeat 130px 14px,#ff6f00;
		font-size:16px;
	}
#menu {
	background:url(../images/top/bg_menu.gif) repeat-x bottom;
}
.menu {padding:40px 0 50px;}
	.menu ul {
		width:100%;
		margin:0 auto;
	}
	.menu li {
		background:url(../images/top/bg_menu_arw.gif) no-repeat right bottom,#fff;
		width:100%;
		float:none;
	}
	.menu li:last-child {float:none; margin-top:30px;}
	.menu h4 {
		line-height:60px;
		font-size:26px;
		height:60px;
	}
.voice {padding:50px 0 46px;}
	.voice h3 {margin-bottom:33px;}
	.voice li {
		float: left;
		width:49%;
		margin:0 0 2% 0;
	}
	.voice li:nth-child(2n){float: right;}
	.voice li img {
		width: 100%;
		height: auto;
		border-radius: 50%;
	}
	.voice h4 {
		font-size:24px;
		color:#ff6f00;
		line-height:30px;
	}
	.voice p {line-height:28px;}
	.voice .btn {margin-top:45px;}
#news {background:#f6f6f6;}
.news {padding:50px 0;}	
	.news h3 {
		float:left;
		margin-bottom:12px;
	}
	.news .btn_news {
		line-height:18px;
		float:right;
		margin-top:23px;
		padding-left:25px;
		background:url(../images/top/arw01.jpg) no-repeat left top;
	}
		.btn_news a {
			display:block;
		}
	.news ul {}
		.news li {
			height:auto;
			line-height:20px;
			padding:10px 0;
			overflow:hidden;
			text-align:left;
		}
		.news li span {
			width:100%;
			float:none;
			display:block;
		}
		.news li a {
			width:100%;
			float:none;
			display:block;
			overflow: hidden;
			white-space: nowrap;
			text-overflow: ellipsis;
		}
.info {padding:35px 0;}
	.info h3 {margin-bottom:15px;}
	.info .info_tel {
		width:100%;
		float:none;
		margin:0 auto 30px;
		text-align:center;
	}
.info .info_tel a img{
	margin: 0 auto 10px;
	display: block;
	padding: 10px;
	background-color: rgba(255, 255, 255 , 0.2);
	border-radius: 3em;
}

	.info table {
		border-collapse:collapse;
		width:100%;
		float:none;
		margin:0 auto;
	}
	.info tr {
		line-height:30px;
		height:30px;
		border-bottom:1px solid #a5a4a4;
		font-size:12px;
	}
	.info tr:last-child {border-bottom:none;}
	.info th {
		background:#f6f6f6;
		border-right:1px solid #a5a4a4;
		font-weight:normal;
	}
	.info th:first-child {
		width:28%;
		font-size:14px;
	}
	.info th:last-child {border-right:none;}
	.info td {
		border-right:1px solid #a5a4a4;
		background:#fff;
	}
	.info td:last-child {border-right:none;}
	.info td.txt01 {color:#ff6f00;}
	.info p {
		color:#fff;
		line-height:24px;
		font-family:"A-OTF 太ゴB101 Pro Bold",'Noto Sans Japanese', serif;
		text-align:left;
	}
#spring { background:url(../images/top/bg_info01.jpg) no-repeat center top; background-size:cover;}
#summer { background:url(../images/top/bg_info02.jpg) no-repeat center top; background-size:cover;}
#autumn { background:url(../images/top/bg_info03.jpg) no-repeat center top; background-size:cover;}
#winter { background:url(../images/top/bg_info04.jpg) no-repeat center top; background-size:cover;}
.season {
  display: none; /* 四季を一括して非表示にしておく */
  height:auto;
}


.season-sub {
/*  background:url(../images/top/bg_info00.jpg) no-repeat center top;*/
	background-size:cover;
  height:auto;
}


/*=============================
	Sub(Lower)Page setting
===============================*/


/* =========================================================
■sitemap.html
========================================================= */
.sitemap-list{
	width:100%;
	margin:0 auto;
}
.sitemap-list li{
	background:url(../images/top/arw01.jpg) no-repeat 10px 34px;
/*	margin:15px 0px 10px 0px;
	padding:2px 0px 10px 30px;*/
	padding:30px 10px 30px 40px;
	margin:2px;
/*	border-bottom: 1px dotted #DFDFDF;*/
		float:left;
			width:45%;
	border-bottom:1px solid #ddd;
}
	.sitemap-list li:nth-child(2n){
		float:right;
	}


/* =========================================================
■guide.html
========================================================= */

.txtbox .imgright{ display: block; width: 100%; float: none;}
.txtbox .imgright img{ margin: 1em auto;}
.txtbox .imgleft{ display: block; width: 100%; float: none;}
.txtbox .imgleft img{ margin: 1em auto;}

.list_box{
	width: 100%;
	margin: 2em 0;
	float: none;
}

.half_box .list_box{
	width: 100%;
	float: none;
}
.half_box .list_box:first-child{ margin-right: 0;}
.half_box .list_box span{ width: 250px;}

/* =========================================================
■begginers.html
========================================================= */

.subcon .feature ul{ width: 100%;}
.subcon .feature h4 {
	font-size:22px;
	line-height:30px;	
}
/* =========================================================
■clinic.html
========================================================= */

.list_gallery ul{}
.list_gallery ul li{
	width: 100%;
	float: none;
	margin: 0 auto;
}

/* =========================================================
■information.html
========================================================= */

.area01{}

/* =========================================================
■contact.html
========================================================= */


/* contact
---------------------------------------------------------*/

p.p_required{
	text-align:left;
}
table.defTable01 {
	border-collapse: collapse;
	width: 100%;
	margin: 15px auto 0;
	letter-spacing:0.1em;
}
	table.defTable01 tr th {
		width: 100%;
		display:block;
		font-weight:normal;
		padding: 20px 0 10px;
		text-align:center;
		font-size:14px;
		color: #000;
		border-bottom: none;
	}
	table.defTable01 tr td {
		width: 100%;
		display:block;
		margin: 0 auto;
		padding: 10px;
		line-height:180%;
		font-size:14px;
		text-align: center;
	}
	table.defTable01 tr td.btn{
		text-align:center;
		background:none;
		padding: 40px 0;
		border-bottom: none;
	}
	table.defTable01 input[type="text"],
	table.defTable01 input[type="tel"],
	table.defTable01 input[type="email"],
	table.defTable01 textarea {
		width: 100%;
		padding:10px;
		color:#2f2f32;
		margin-bottom:5px;
	}
	table.defTable01 input[type="submit"]{
		margin: 0;
		width: 200px;
		background:#FFF;
		padding:1em 0;
	}
	table.defTable01 input[type="submit"]:hover{
	}
	table.defTable01 td.tel_area input {width:30%;}

span.required{
	color: #FF0000;
	padding:3px 8px;
	font-size:13px;
	margin:0 5px;
}
.errBox {
	color: #FF0000;
	margin:20px 0;
	text-align:left;
}



/* ページネーション
------------------------------ */
ul.pagenation {
	margin: 40px 0 40px;
	text-align: center;
	letter-spacing: 0;
}
ul.pagenation li{
	width:38px;
	height:38px;
	display: inline-block;
	margin:3px;
	line-height:38px;
	float:none;
}
ul.pagenation li:nth-child(2n){float: none;}
ul.pagenation li.current span{
	width:38px;
	height:38px;
	display:block;
	color: #fff;
	background: #ff6f00;
	border:#ff6f00 solid 1px;
	font-weight: bold;
	text-decoration: none;
}
ul.pagenation li a{
	width:38px;
	height:38px;
	display:block;
	color: #ff6f00;
	background: #fff;
	border:#ff6f00 solid 1px;
	text-decoration: none;
}
ul.pagenation li a:hover {
	color: #fff;
	background: #ff6f00;
	text-decoration: none;
	border:#ff6f00 solid 1px;
}

}