@charset "utf-8";
/* =========================================================
基本の設定
========================================================= */

html {
	overflow-y:scroll;
}

body {
	min-width:320px;
	-webkit-text-size-adjust:100%;
	word-break:break-all;
	background:#FFFFFF;
	margin:0px;
	padding:0px;
	color:#000;
	font-size:15px;
	line-height:180%;
	font-family:Meiryo,メイリオ,Arial,"MS PGothic",Osaka,"ヒラギノ角ゴ Pro W3",sans-serif;
}

h1, h2, h3, h4, h5, h6, p, address, ul, ol, li, dl, dt, dd, table, th, td, img, form, iframe, fieldset, label {
	margin:0;
	padding:0;
	border:none;
	font-size:100%;
	line-height:180%;
	list-style-type:none;
	font-style:normal;
	font-weight:normal;
	text-align:left;
}

/* デフォルト状態のインライン要素をブロック要素に指定 */ 
article, aside, figure, figcaption, details, footer, header, hgroup, main, nav, section, summary {
	display:block;
	margin:0;
	padding:0;
}

/* === リンクカラー(通常) === */
/*a:link{text-decoration: underline;color: #666666;}
a:visited{text-decoration: underline;color: #666666;}
a:hover{text-decoration: none;color: #ff9900;}
a:active{text-decoration: none;color:#ff9900;}*/

/* 画像 */
img, video, object {
	max-width:100%;
	height:auto;
	border:none;
	vertical-align:bottom;
	display:block;
}

/* 画像リンクのマウスオーバーに透かし */
@media screen and (min-width:993px) {

	a:hover img {
		-moz-opacity:0.6;
		opacity:0.6;
	}

}

/* clearfix */
.clearfix {
	zoom:1;
}

.clearfix:after {
	content:"";
	display:block;
	clear:both;
}

.clear {
	clear:both;
}

/* fix */
.fixed {
	position:fixed;
	top:0;
	width:100%;
	z-index:10000;
}

/* 共通レイアウト */
#BaseArea {
	padding:0px;
	margin:0px auto;
	width:100%;
	text-align:left;
	background-color:#FFFFFF;
}

/* =========================================================
BOOTATRP対策設定
========================================================= */

.col-space-0 {
	padding-left:0;
	padding-right:0;
}

.col-space-0-left {
	padding-left:0;
}

.col-space-0-right {
	padding-right:0;
}

@media screen and (max-width:992px) {

	.col-space-0-left {
		padding-right:0;
		padding-left:0;
	}

	.col-space-0-right {
		padding-right:0;
		padding-left:0;
	}

}

/* =========================================================
共通設定
========================================================= */

@media screen and (max-width:767px) {

	.smt_none {
		display:none;
	}
}
@media screen and (max-width:767px) {

	.xxs_none {
		display:none;
	}
}
@media screen and (min-width:768px) {

	.pc_none_xxs {
		display:none;
	}
}
@media screen and (min-width:768px) {

	.pc_none {
		display:none;
	}

}
@media screen and (min-width:768px)and (max-width:992px) {

	.ipad_none {
		display:none;
	}
	.ipad_visible {
		display:block;
	}

}


.spacer10 {
	padding:0;
	margin:0;
	height:10px;
}

.spacer20 {
	padding:0;
	margin:0;
	height:20px;
}

.spacer30 {
	padding:0;
	margin:0;
	height:30px;
}

.spacer40 {
	padding:0;
	margin:0;
	height:40px;
}

.spacer60 {
	padding:0;
	margin:0;
	height:60px;
}

.spacer80 {
	padding:0;
	margin:0;
	height:80px;
}

.spacer100 {
	padding:0;
	margin:0;
	height:100px;
}

.center {
	margin:0 auto;
	text-align:center;
}

/* =========================================================
設定
========================================================= */

#HeaderArea {
	box-sizing:border-box;
	padding:0;
	margin:0 auto;
	width:100%;
	text-align:center;
}

.header_line_center {
	box-sizing:border-box;
	padding:20px 10px 20px 10px;
	margin:0 auto;
	text-align:center;
}

.header_line_center img {
	padding:0;
	margin:0 auto;
	max-width:76px;
}



.header_line_right img {
	padding:0;
	margin:0 auto;
	max-width:325px;
}

.text_box01 {
	line-height:180%;
	font-size:22px;
	text-align:center;
}

.text_box02 {
	font-size:22px;
	padding:20px 0 0 0;
	text-align:center;
}

.text_box02 p {
	line-height:160%;
	text-align:center;
}

.img_box01 {
	box-sizing:border-box;
	padding:0 10px 10px 10px;
	margin:0 auto;
}

.img_box01 > p {
	text-align:center;
	font-size:11px;
}

.img_box02 p {
	text-align:right;
	font-size:11px;
	color:#666666;
}

.footer {
	background:#F1EEEC;

}

.logo_box {
	box-sizing:border-box;
	padding:40px 10px 30px 10px;
}

.logo_box02 {
	border-bottom:1px solid #888888;
}

.infor_box {
	box-sizing:border-box;
	padding:40px 10px 40px 10px;
}

.text01 {
	font-size:120%;
	font-weight:bold;
}

.text02 {
	font-size:90%;
}

.relative {
	position:relative;
	box-sizing:border-box;
	padding:0;
	margin:0;
}

.relative div {
	box-sizing:border-box;
	padding:0;
	margin:0;
}

.absolute01 {
	position:absolute;
	top:8px;
	left:4px;
	z-index:2;
	width:100%;
	color:#061390;
	font-size:20px;
	line-height:140%;
	text-shadow:1px 1px 1px #FFF, -1px 1px 1px #FFF, 1px -1px 1px #FFF, -1px -1px 1px #FFF;
	text-align:center;
	font-weight:bold;
}
.absolute01 > span{
	font-size:14px;
	color:#000;
	}

.absolute02 {
	position:absolute;
	top:2px;
	left:4px;
	z-index:2;
	width:100%;
	color:#FFF;
	font-size:13px;
	text-shadow:1px 1px 1px #000, -1px 1px 1px #000, 1px -1px 1px #000, -1px -1px 1px #000;
}

.form_link_box {
	width:300px;
	position:fixed;
	right:30px;
	bottom:10px;
	z-index:100;
}

.form_link {
	padding:0 0 10px 0;
}

.form_link_box_smt {
	width:14vw;
	position:fixed;
	right:2vw;
	top:2vw;
	z-index:100;
}

.form_link_box_smt img {
	width:100%;
}

.smt_top {
	box-sizing:border-box;
	padding:0;
	margin:0;
	width:100%;
}

.top_enter {
	width:75px;
	position:absolute;
	top:80%;
	left:0;
	right:0;
	margin:0 auto;
}

.fixed {
	position:fixed;
	top:0px;
	left:0px;
	z-index:9999;
}

#fixedbox_smt {
	position:fixed;
	bottom:0;
	width:100%;
/*	height:46px;*/
	z-index:9999;
}

.fixedbox_smt_line_left {
	padding:0 2px 0 0px;
	margin:0;
	width:100%;
/*	height:46px;*/
	text-align:center;
	vertical-align:middle;
	box-sizing: border-box;
}

.fixedbox_smt_line_right {
	padding:0 0px 0 2px;
	margin:0;
	width:100%;
/*	height:46px;*/
	text-align:center;
	vertical-align:middle;
	box-sizing: border-box;
}

.fixedbox_smt_line_left img,
.fixedbox_smt_line_right img {
	margin:0 auto;
}

.bg01 {
	background:#f2f2f2;
}

@media screen and (max-width:992px) {

	#fixedbox {
		display:none;
	}

	.infor_box img {
		margin:0 auto;
		text-align:center;
	}

	.absolute01,
	.absolute02 {
		font-size:15px;
	}
	.absolute01 > span{
		font-size:10px;
	}
	.text_box02 p {
		font-size:16px;
		text-align:left;
	}

	.bg01 {
		background:#fff;
	}

}

@media screen and (min-width:768px) {

	#fixedbox_smt {
		display:none;
	}

}

/* =========================================================
設定
========================================================= */

.form_comment {
	font-size:20px;
	font-weight:bold;
	color:#604C3F;
}


.form_comment02 {
	padding:10px 40px 10px 40px;
	font-size:14px;
	text-align: right;
/*font-weight:bold;*/
}

.sp01 {
	font-size:14px;
	color:#CC0000;
	padding-left:36px;
}

.sp02 {
	font-size:14px;
	padding-left:36px;
}

.tab_menu {
	box-sizing:border-box;
	padding:0 10px 0 10px;
	margin:0 auto;
	text-align:center;
}

.tab_menu > ul {
	display:block;
	box-sizing:border-box;
	padding:0;
	margin:0;
	text-align:center;
}

.tab_menu > ul > li {
	box-sizing:border-box;
	padding:0;
	margin:0;
}

.tab_menu > ul > li > a {
	display:block;
	box-sizing:border-box;
	padding:6px 20px 6px 20px;
	margin:0 20px;
	font-size:16px;
	font-weight:bold;
	text-decoration:none;
}

.tab_menu > ul > li > a:link,
.tab_menu > ul > li > a:visited {
	background:#F2F2F2;
	color:#534741;
}

.tab_menu > ul > li > a:hover,
.tab_menu > ul > li > a:active {
	background:#ED1E79;
	color:#FFFFFF;
}

.tab_active {
	background:#ED1E79;
	color:#FFFFFF;
	font-size:20px;
}

@media screen and (max-width:992px) {

	.tab_menu > ul > li {
		margin-bottom:20px;
	}

	.tab_menu > ul > li > a {		
		-webkit-border-radius: 8px;
		-moz-border-radius: 8px;
		border-radius: 8px;
	}

	.sp01 {
		padding-left:0;
	}

	.sp02 {
		padding-left:0;
	}

	.form_comment02 {
		padding:10px 20px 10px 20px;
	}

}

@media screen and (min-width:993px) {

	.tab_menu > ul {
		border-bottom:1px solid #DCDACB;
	}

	.tab_menu > ul > li {
		display:inline-block;
	}

	.tab_menu > ul > li > a {
		-webkit-border-top-left-radius: 4px;
		-webkit-border-top-right-radius: 4px;
		-moz-border-radius-topleft: 4px;
		-moz-border-radius-topright: 4px;
		border-top-left-radius: 4px;
		border-top-right-radius: 4px;
	}

}

/****/

form {
	box-sizing:border-box;
	padding:20px 0 20px 0;
	margin:0 auto;
	width:100%;
}

form table {
	box-sizing:border-box;
	padding:0;
	margin:0 auto;
	width:90%;
}

form table td {
	box-sizing:border-box;
	padding:0 0 20px 0;
	margin:0;
}

.td01 {
	font-weight:bold;
	color:#604C3F;
	white-space:nowrap;
	padding-right:20px;
}

.td02 {
	color:#604C3F;
}

.td02 input {
	width:100%;
	border:1px solid #DCDACB;
	box-shadow: 0.5px 0.5px 0.5px 0.5px rgba(0,0,0,0.1) ;
}

.td02 select {
	border:1px solid #DCDACB;
	box-shadow: 0.5px 0.5px 0.5px 0.5px rgba(0,0,0,0.1) ;
}

.td02 textarea {
	width:100%;
	height:100px;
	border:1px solid #DCDACB;
	box-shadow: 0.5px 0.5px 0.5px 0.5px rgba(0,0,0,0.1) ;
}

.td02 span {
	margin-right:20px;
}

.td03 {
	font-size:12px;
	color:#CC0000;
}

.com01 {
	padding:10px 0 10px 0;
	font-size:90%;
	color:#555555;
	text-align:left;
}

form input[type="submit"] {
	font-size:20px;
	color:#fff;
	padding:14px 40px;
	border-radius:28px;
	background-color: #D4145A;
	margin:20px auto;
	
}

@media screen and (max-width:992px) {

	.form_comment {
		font-size:16px;
	}

	table, tbody, thead, tfoot, tr, th, td {
		display: block;
	}

	.td01 {
		padding:0 0 2px 0;
	}
}
@media screen and (min-width:780px) {
	.td02{
		width:60%;
	}
}

/* =========================================================
設定
========================================================= */

.contact_end {
	box-sizing:border-box;
	padding:0;
	margin:0 auto;
	width:100%;
	text-align:center;
}

.contact_end h1 {
	padding:80px 10px 40px 10px;
	text-align:center;
	font-size:24px;
	font-weight:bold;
	color:#604C3F;
}


.contact_end div {
	box-sizing:border-box;
	padding:20px;
	margin:0 auto 40px auto;
	width:80%;
	background-color:#F2F2F2;
	border:1px solid #DCDACB;
	border-radius:12px;
	text-align:left;
}

.contact_end p {
	text-align:center;
}

/* =========================================================
設定
========================================================= */

#btn_overlay_close {
	display:none;
}

#overlay {
	display:none;
	width: 100%;
	height:100%;
	text-align: center;
	position: fixed;
	top: 18vw;
	z-index: 100;
	background: rgba(0,0,0,0.76);
}

.main_box {
	display:table;
	box-sizing:border-box;
	padding:10px;
	margin:0 auto;
	width:100%;
	max-width:360px;
}

.main_box .box_left {
	display:table-cell;
	box-sizing:border-box;
	padding:8px;
	margin:0;
	width:80%;
	vertical-align:middle;
}

.main_box .box_right {
	display:table-cell;
	padding:8px;
	margin:0;
	width:20%;
	vertical-align:middle;
}

.tel_title {
	font-size:17px;
	font-weight:bold;
	color:#FFFFFF;
	line-height:140%;
}
.tel_title a{
	color:#FFFFFF;
}
.tel_number {
	font-size:14px;
	color:#FFFFFF;
	line-height:160%;
}

.line {
	box-sizing:border-box;
	padding:0;
	margin:0 auto;
	width:94%;
	height:4px;
	border-radius:2px;
	background:#FFFFFF;
}

#close{
	display:none;
	padding:5px 10px 5px 10px;
	margin:20px auto;
	width:140px;
	font-size: 15px;
	text-align: center;
	color: #CCCCCC;
	background:#999999;
	border-radius: 6px;
	cursor: pointer;
}

.overlay_table{
	width:90%;
	display: block;
	margin:7px auto 0;
}
.overlay_table td{
	padding:5px 0;
	border-bottom: 1px dotted #fff;
}
.overlay_table small{
	font-size:12px;
}
.overlay_table .tel_number{
	color:#fff;
}
/*20180704追加css*/

.text_box {
	padding:15px 10px;
	line-height:180%;
	font-size:14px;
	text-align: justify;
	max-width:900px;
	margin:20px auto 30px;
}
.red{
	color:red;
	font-weight: bold;
}
.blue{
	color:#0071bc;
	font-weight: bold;
}
.bg_blue{
	background-color:#e0eef7;
	padding:15px;
}
.bg_blue02{
	background-color:#061390;
	padding:15px;
}
.douga{
	display: block;
	margin:20px auto;
}
.sekoujirei_waku{
	width:100%;
}
.sekoujirei img{
	margin:0;
	border: 0;
}
.sekoujirei p{
	font-size:4.5vw;
	text-align:center;
	margin:10px auto 50px;
	font-weight:bold;
	color:#000;
}
.sekoujirei p > span{
	font-size:6.5vw;
	font-weight:bold;
	color:#0071bc;
	border-bottom:1px dotted #0071bc;
	line-height: 150%;
}
.plan_waku > div{
	border:1px solid #fff;
	margin:20px 10px 30px;
}
.howmach_title{
	font-size:18px;
	color:#061390;
	font-weight:bold;
	margin:20px 10px 30px;
	border-radius:5px;
	border:2px dotted #061390;
}
.price_hyou{
	max-width:600px;
	margin:50px auto;
}
.bt_syousai01{
	width:80%;
	max-width:300px;
	display: block;
	margin:0 auto;
	}
.mente_title{
	font-size:20px;
	line-height:160%;
	font-weight: bold;
	color:#061390;
	text-align: center;
	margin:30px auto;
}

.adress_map table{
	width:90%; 
	max-width:700px; 
	display: block; 
	margin:10px auto 50px;
	border-collapse:collapse;
}
.adress_map table td{
	padding:15px 0;
}
.adress_map table td{
	border-bottom:1px dotted #aaa;
}
.shiten_tell{
	padding-left:23px;
	line-height:23px;
	background:url(../img/tell.png) no-repeat;
	background-size:contain;

}




/*iframeをレスポンシブにする*/
.iframe-responsive iframe{
	display: block;
	margin:40px auto 40px;
}
@media screen and (max-width: 560px) {
  .iframe-responsive {
    position: relative;
    width: 100%;
    padding: calc(315 / 560 * 100%) 0 0;
  }
  .iframe-responsive iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
/*ここまで*/
@media screen and (min-width:415px) {
.sekoujirei p{
	font-size:2.5vw;
}
.sekoujirei p > span{
	font-size:4vw;
}
}
@media screen and (min-width:780px) {
.text_box {
	font-size:17px;
	text-align: center;
	margin-top:0;
	padding-top:0;
}
.douga{
	display: block;
	width:560px;
	height:315px;
	margin:20px auto;
}
.sekoujirei_waku{
	max-width:1200px;
	margin:0 auto;
}
.sekoujirei{
	width:33%;
	display: inline-block;
}
.sekoujirei p{
	font-size:18px;
}
.sekoujirei p > span{
	font-size:30px;
}
.bt_syousai01{
	width:70%;	
	}
.plan_waku{
	width:100%;
	max-width:1500px;
	margin:0 auto;	
	}
.plan_waku > div{
	box-sizing: border-box;
	width:23.8%;
	display: inline-block;
	margin:20px 0.4% 30px;
	vertical-align: top;
}
.plan_waku > div:first-child{
	margin:20px 0.4% 30px 0;		
	}	
.plan_waku > div:last-child{
	margin:20px 0 30px 0.4%;		
	}
.howmach_title{
	font-size:22px;
	max-width:900px;
	padding:20px;
	margin:20px auto;
	border-radius:5px;
}
.osusume{
	max-width:1200px;
	margin:0 auto;
	}
.osusume img.smt_none{
	width:32.8%;
	border:0;
	padding:0;
	margin:0;
	display: inline-block;
	}
.adress_map table td{
	padding:15px 10px;
}	
}
@media screen and (min-width:415px)and (max-width:860px) {
.sekoujirei{
	width:32.5%;
	display: inline-block;
}
}