@charset "utf-8";
/* *******************************************************************************
-------------------------------------------------------------
■ PC
-------------------------------------------------------------
 1. title
 ├ 1-1. h2
 ├ 1-2. h3
 └ 1-3. h4 
 2. bt
 3. base template
 4. SNS
 5. table
 ├ 5-1. default
 ├ 5-3. table01	
 ├ 5-3. table02 
 └ 5-4. hours
 6. 汎用プロパティ
 ├ 6-1. float
 ├ 6-2. margin
 ├ 6-3. text-align
 ├ 6-4. 画像の配置
 ├ 6-5. 画像の装飾
 └ 6-6. rollover（透過）
 7. その他テンプレート
 ├ 7-1. ビフォーアフター
 ├ 7-2. list
 ├ 7-3. flow
 └ 7-4. qa
 8. MAP
 9. 管理画面
 10. pc sp change
 11. others
 12. 下層TPL
 13. お問い合わせバナー(フッター下部固定)

------------------------------------------------------------- 
■ Tablet
-------------------------------------------------------------
 3. base template
 └ 3-1. top bn
 
------------------------------------------------------------- 
■ SmartPhone
-------------------------------------------------------------
 2. bt
 3. base template
 └ 3-1.画像横並び
 5. table
 └ 5-4. hours
 7. その他テンプレート
 └ 7-1. ビフォーアフター
 8. MAP
 10. pc sp change

******************************************************************************* */
/* ----------------------------------------------------------
■ PC
----------------------------------------------------------- */

/*--------------------------------------
　　　　　　　　流れ
--------------------------------------*/
.flowList {
    background: #e7fdc8;
    position: relative;
    padding: 25px;
}
.flowList:before {
    content: "";
    display: block;
    border-left: 35px solid transparent;
    border-right: 35px solid transparent;
        border-top: 18px solid #9ad840;
    position: absolute;
    left: 50%;
    bottom: -36px;
    margin-left: -35px;
}
.flowList.last:before {
    display: none;
}
.flowList .flow_title {
    font-size: 20px;
    line-height: 1.4;
    position: relative;
    margin-bottom: 15px;
     color: #74b713;
    font-weight: bold;
}
.flowList .flow_title span {
    vertical-align: top;
    background: #74b713;
    color: #fff;
    display: inline-block;
    width: 28px;
    height: 28px;
    text-align: center;
    line-height: 30px;
    font-size: 18px;
    margin-right: 10px;
    letter-spacing: 0;
    margin-top: -1px;
}


/* =====================================
 1. title (h2,h3,h4)
===================================== */
/* 1-1. h2 -------------------------- */
.gnv_tmp_h2_bg {
    border: 1px solid #b3e36d;
    position: relative;
    background: #c1ec84;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #c1ec84), color-stop(0.00, #d4f2a8));
	background: -webkit-linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	background: -moz-linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	background: -o-linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	background: -ms-linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	background: -linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	text-shadow: 0 1px #fff;
}
.gnv_tmp_h2_bg:before {
	content:"";
	height: 25px;
	width: 25px;
	display: block;
	position: absolute;
	top: 25%;
	left: 10px;
	background:url(/asset/h2_bg.png) no-repeat 0 0;
	z-index: 1;
}
.gnv_tmp_h2_bg h2 {
	font-size: 140%;
        padding: 13px 15px 10px 45px;
	line-height: 1.2;
}
/* h2 titleBg */
h2.titleBg,
#blogBody .contentArea h3 {
    border: 1px solid #b3e36d;
    background: #c1ec84;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #c1ec84), color-stop(0.00, #d4f2a8));
	background: -webkit-linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	background: -moz-linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	background: -o-linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	background: -ms-linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	background: linear-gradient(top, #d4f2a8 0%, #c1ec84 100%);
	font-size: 130%;
    line-height: 1.2;
      padding: 15px 15px 10px 45px;
	border-radius: 0;
    position: relative;
	text-shadow: 0 1px #fff;
}
h2.titleBg:before {
	content:"";
	height: 24px;
	width: 25px;
	display: block;
	position: absolute;
	top: 50%;
	left: 10px;
	background:url(/asset/h2_bg.png) no-repeat 0 0;
	z-index: 1;
        margin-top: -12px;
}

#blogBody .contentArea h3:before {
    content: "";
    position: absolute;
        background: #89c139;

    top: 50%;
    left: 12px;
    margin-top: -4px;
    height: 9px;
    width: 9px;
    border-radius: 30%;
}

/* 1-2. h3 -------------------------- */
.gnv_tmp_h3_bg {
	position: relative;
	background: none #d4f2a8;
	border-bottom: 3px solid #b3e36d;
}
.gnv_tmp_h3_bg:after {
	content: "";
	position: absolute;
	background: #74b713;
	top: 50%;
	left: 10px;
	margin-top: -2px;
	height: 8px;
	width: 8px;
	border-radius: 30%;
}
.gnv_tmp_h3_bg h3 {
	font-size: 120%;
       padding: 15px 15px 7px 25px;
	-moz-box-shadow: 1px 1px 3px #fff;　  
    -webkit-box-shadow: 1px 1px 3px #fff;
	text-shadow: 0 1px #fff;　  
	line-height: 1.2;
}
/* 1-3. h4 -------------------------- */
.gnv_tmp_h4_bg {
	position: relative;
	line-height: 1;
	border-bottom: 1px solid #c1ec84;
	font-weight: bold;
	margin-bottom: 1em !important;
}
.gnv_tmp_h4_bg:before {
	content: "";
	position: absolute;
	background: #74b713;
	top: 50%;
	left: 10px;
	margin-top: -5px;
	height: 8px;
	width: 8px;
	border-radius: 50%;
}
.gnv_tmp_h4_bg h4 {
	line-height: 1.4;
    padding: 10px 5px 10px 25px;
}

.gnv_tmp_h5_bg h5 {
  color: #86bd34;
    font-size: 16px;
    padding-left: 16px;
    position: relative;
    line-height: 1.4;
}
.gnv_tmp_h5_bg h5:before {
    position: absolute;
    content: "";
    display: block;
    left: 0;
    top: 6px;
    height: 8px;
    width: 8px;
        background: #93bf2e;
}
.bold_tle {
       color: #74b713;
    font-weight: bold;
}
/* =====================================
 2. bt
===================================== */
.gnv_tmp_bt a {
	line-height: 1.4;
	display: block;
	padding: 5px 20px;
	text-align: center;
	font-weight: bold;
	color:#fff;
  background: #FFAEAE;
	box-shadow: 0 3px 0 0 #cdcdcd;
	border-radius: 5px;
}
.text_image .gnv_tmp_bt a {
	margin-top: 0.5em;
}
.gnv_tmp_bt a:hover,
.gnv_tmp_detail a:hover {
	text-decoration: none;
	background: #ffa4a4;
}
/* btサイズ指定の場合 */
.gnv_tmp_detail a {
	width: 20%;
	float: left;
}

/* =====================================
 3. base template
===================================== */
.text_box {
	float: left;
	width: 100%;
}
.b_11_2_in span img,
.b_11 .b_11_in span img {
	    margin: 0 0em 20px 20px;
}
.b_01, .b_02 {
	margin: 0 0 1em;
}

/* =====================================
 4. SNS
===================================== */
#line,
#facebook,
.fb-like {
	margin-bottom: 5px;
}

/* =====================================
 5. table
===================================== */
/* 5-1. default -------------------------- */
.b_06 table td,
.b_06 table th {
border: 1px solid #bae882;
    padding: 6px 10px 4px !important;
}
.b_06_item {
background: #d9f9b2;
    width: 32%;
    color: #757272;
}
/* 5-2. table01 -------------------------- */
table.gnv_tmp_table01 {
	margin-bottom: 1.5em;
}
table.gnv_tmp_table01 th,
table.gnv_tmp_table01 td {
    text-align: left;
    line-height: 1.4;
    padding: 8px 0 5px;
}
table.gnv_tmp_table01 {
    background: #fff;
	width: 100%;
}
table.gnv_tmp_table01 thead th {
    background: #caea9b;
    color: #6b6b6b;
    border: none;
}
table.gnv_tmp_table01 th {
    background: #e7f9cc;
    border-bottom: 1px solid #bccaa9;
    color: #7d7a7a;
}
table.gnv_tmp_table01 td {
    background: #fff;
       border-bottom: 1px solid #bccaa9;
}
/* 5-3. table02 -------------------------- */
table.gnv_tmp_table02 {
	margin-bottom: 1.5em;
}
table.gnv_tmp_table02 th,
table.gnv_tmp_table02 td {
    text-align: left;
}
table.gnv_tmp_table02 {
	width: 100%;
}
table.gnv_tmp_table02 thead th {
    background: #efefef;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}
table.gnv_tmp_table02 th {
    border-bottom: 1px solid #ccc;
    border-top: 1px solid #ccc;
}
table.gnv_tmp_table02 td {
    border-bottom: 1px solid #ccc;
    border-top: 1px solid #ccc;
}
/* 5-4. hours -------------------------- */
table.gnv_tmp_hours th,
table.gnv_tmp_hours td {
	text-align: center;
}
table.gnv_tmp_hours tbody th {
	width: 20%;
}

/* =====================================
 6. 汎用プロパティ
===================================== */
/* 6-1. float -------------------------- */
.fl { float: left;}
.fr { float: right;}
/* 6-2. margin -------------------------- */
.m00 { margin: 0 !important;}
.m05 { margin: 5px !important;}
.m10 { margin: 10px !important;}
.m15 { margin: 15px !important;}
.m20 { margin: 20px !important;}
.m25 { margin: 25px !important;}
.m30 { margin: 30px !important;}
.m35 { margin: 35px !important;}
.m40 { margin: 40px !important;}
.m45 { margin: 45px !important;}
.m50 { margin: 50px !important;}

.mt00 { margin-top: 0 !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top: 10px !important;}
.mt15 { margin-top: 15px !important;}
.mt20 { margin-top: 20px !important;}
.mt25 { margin-top: 25px !important;}
.mt30 { margin-top: 30px !important;}
.mt35 { margin-top: 35px !important;}
.mt40 { margin-top: 40px !important;}
.mt45 { margin-top: 45px !important;}
.mt50 { margin-top: 50px !important;}

.mr00 { margin-right: 0 !important;}
.mr05 { margin-right: 5px !important;}
.mr10 { margin-right: 10px !important;}
.mr15 { margin-right: 15px !important;}
.mr20 { margin-right: 20px !important;}
.mr25 { margin-right: 25px !important;}
.mr30 { margin-right: 30px !important;}
.mr35 { margin-right: 35px !important;}
.mr40 { margin-right: 40px !important;}
.mr45 { margin-right: 45px !important;}
.mr50 { margin-right: 50px !important;}

.mb00 { margin-bottom: 0 !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb35 { margin-bottom: 35px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb45 { margin-bottom: 45px !important;}
.mb50 { margin-bottom: 50px !important;}

.ml00 { margin-left: 0 !important;}
.ml05 { margin-left: 5px !important;}
.ml10 { margin-left: 10px !important;}
.ml15 { margin-left: 15px !important;}
.ml20 { margin-left: 20px !important;}
.ml25 { margin-left: 25px !important;}
.ml30 { margin-left: 30px !important;}
.ml35 { margin-left: 35px !important;}
.ml40 { margin-left: 40px !important;}
.ml45 { margin-left: 45px !important;}
.ml50 { margin-left: 50px !important;}

/* 6-3. text-align -------------------------- */
.tal { text-align:left;}
.tac { text-align:center;}
.tar { text-align:right;}
/* 6-4. 画像の配置 -------------------------- */
/** 基本設定 **/
/* right */
.b_11_2_in span img,
.b_11 .b_11_in span img {
	float: right;
	margin: 0 0 20px 20px;
}
/** 個別設定 **/
/* left */
.img_l span img {
    float: left !important;
	margin: 0 20px 20px 0 !important;
}
/* right */
.img_r span img {
    float: right !important;
	margin: 0 0 20px 20px !important;
}
/* 6-5. 画像の装飾 -------------------------- */
/* 角丸 */
.image img,
.text_image img,
.gnv_tmp_style img {
	border-radius: 0px;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
}
/* 6-6. rollover（透過） -------------------------- */
.rollover a img:hover,
.rollover span a img:hover,
.rollover .img_r span a img:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

/* =====================================
 7. その他テンプレート
===================================== */
/* 7-1. ビフォーアフター -------------------------- */
.ba_box {
	background: url(/asset/ba_ar.png) no-repeat 49% 55%;
	display: table;
	width: 100%;
}
.ba_box div.column_l,
.ba_box div.column_r {
	display: table-cell;
	width: 30%;
}
.ba_box div.column_l span,
.ba_box div.column_r span {
	width: 100%;
}
.ba_box div.column_l p,
.ba_box div.column_r p,
.ba_box div.column_l span img,
.ba_box div.column_r span img {
	width: 95% !important;
	margin: 0 auto !important;
}
.ba_box .column_r, .ba_box .column_l {
	text-align: center;
	color: #B69440;
    font-size: 120%;
    font-weight: bold;
}
.ba_box .column_r span {
	text-align: right;
}
/* 7-2. list -------------------------- */
/* 通常リスト 01 */
.ic_01 {
	width: 100%;
}
.ic_01 .clearfix {
	padding: 0 5px 0 25px;
}
.ic_01 span {
	position: relative;
	display: block;
}
.ic_01 span:before {
    content: "";
    position: absolute;
    background: #000;
    top: 11px;
    left: -16px;
    height: 7px;
    width: 7px;
    border-radius: 50%;
	
}
/* ul */
.ic_01 li {
	position: relative;
	padding: 0 5px 0 25px;
}
.ic_01 li:before {
	content: "";
	position: absolute;
	background: #a17b66;
	top: 11px;
	left: 9px;
	height: 7px;
	width: 7px;
	border-radius: 50%;
}
/* 通常リスト 02 */
.ic_02 .clearfix {
	padding: 5px 5px 5px 35px;
}
.ic_02 .clearfix span {
	position: relative;
	line-height: 1;
}
.ic_02 span:before{
    content:"\00a0";
    display: block;
    border: solid 9px #000;
    height: 0;
    width: 0;
    position: absolute;
    left: -29px;
    top: 10px;
    margin-top: -8px;
} 
.ic_02 span:after{
    content:"\00a0";
    display:block;
    width: 4px;
    height: 7px; 
    border: solid #fff;
    border-width: 0 2px 2px 0;
    position:absolute;
    left: -23px;
    top: 10px;
    margin-top: -4px;  
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
/* ul */
.ic_02 ul {
	margin: 35px;
}
.ic_02 li {
	position: relative;
	padding: 5px 5px 5px 0;
}
.ic_02 li:before {
    content:"\00a0";
    display: block;
    border: solid 9px #000;
    height: 0;
    width: 0;
    position: absolute;
    left: -29px;
    top: 10px;
	margin-top: -4px;
}
.ic_02 li:after{
    content:"\00a0";
    display:block;
    width: 4px;
    height: 7px; 
    border: solid #fff;
    border-width: 0 2px 2px 0;
    position:absolute;
    left: -23px;
    top: 10px;
    margin-top: 0;  
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}
/* 矢印リスト 01 */
.ic_arrow_01 div {
	padding: 5px 5px 5px 25px;
}
.ic_arrow_01 span {
	position: relative;
}
.ic_arrow_01 span:before {
	display: block;
	content: "";
	position: absolute;
	left: -15px;
	width: 0;
	height: 0;
	margin-top: 6px;
	border: 5px solid transparent;
	border-left: 5px solid #000;
}
.ic_arrow_01 span:hover:before {
	left: -12px;
}
/* ul */
.ic_arrow_01 ul {
	margin: 25px;
}
.ic_arrow_01 li {
	position: relative;
	padding: 5px 5px 5px 0;
}
.ic_arrow_01 li:before {
	display: block;
	content: "";
	position: absolute;
    top: 10px;
	left: -15px;
	width: 0;
	height: 0;
	margin-top: -1px;
	border: 5px solid transparent;
	border-left: 5px solid #000;
}
/* 矢印リスト 02 */
.ic_arrow_02 .clearfix {
	padding: 5px 5px 5px 30px;
}
.ic_arrow_02 span {
	position: relative;
}
.ic_arrow_02 span:before {
	display: block;
	content: "";
	position: absolute;
    top: 10px;
	left: -25px;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	border-radius: 50%;
	background: #999;
}
.ic_arrow_02 span:after {
	display: block;
	content: "";
	position: absolute;
    top: 10px;
	left: -19px;
	width: 0;
	height: 0;
	margin-top: -5px;
	border: 5px solid transparent;
	border-left: 5px solid #fff;
}
.ic_arrow_02 span:hover:before {
	left: -22px;
}
.ic_arrow_02 span:hover:after {
	left: -16px;
}
/* ul */
.ic_arrow_02 ul {
	margin: 30px;
}
.ic_arrow_02 li {
	position: relative;
	padding: 5px 5px 5px 0;
}
.ic_arrow_02 li:before {
	display: block;
	content: "";
	position: absolute;
    top: 10px;
	left: -25px;
	width: 16px;
	height: 16px;
	margin-top: -4px;
	border-radius: 50%;
	background: #999;
}
.ic_arrow_02 li:after {
	display: block;
	content: "";
	position: absolute;
    top: 10px;
	left: -19px;
	width: 0;
	height: 0;
	margin-top: -1px;
	border: 5px solid transparent;
	border-left: 5px solid #fff;
}
.ic_arrow_02 li:hover:before {
	left: -22px;
}
.ic_arrow_02 li:hover:after {
	left: -16px;
}
/* 7-3. flow -------------------------- */
img.gnv_tmp_flow_arrow_01,
img.gnv_tmp_flow_arrow_02 {
	margin: 10px auto 0;
}
/* 7-4. qa -------------------------- */
.gnv_tmp_qa_q {
	border-left: 3px solid #333;
	margin-bottom: 10px;
	padding: 10px;
	display: table;
}
.gnv_tmp_qa_q span.tit {
	font-size: 200%;
	font-weight: bold;
	color: #333;
	padding-right: 20px;
	display: table-cell;
	width: 30px;
}
.gnv_tmp_qa_a {
	border-left: 3px solid #ccc;
	margin-bottom: 10px;
	padding: 10px;
	display: table;
}
.gnv_tmp_qa_a span.tit {
	font-size: 200%;
	font-weight: bold;
	color: #ccc;
	padding-right: 20px;
	display: table-cell;
	width: 30px;
}
.gnv_tmp_qa_a p,
.gnv_tmp_qa_q p {
	display: table-cell;
	width: 100%;
	vertical-align: top;
}

/* =====================================
 8. MAP
===================================== */
.gnv_tmp_map {
  position: relative;
  width: 100%;
  padding-top: 40%;
}
.gnv_tmp_map iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* =====================================
 9. 管理画面
===================================== */
/* 非公開 */
.hikoukai {
	display: none !important;
}
#drag-temp-pre-content .parts.hikoukai {
	display: block !important;
	border: 5px solid #777;
	background: #555;
	padding: 20px 0;
}
/* 管理画面ズレ対応 
div[class*=#drag-temp-pre-content .parts.m] {
	margin: 0!important;
}*/
@media screen and (min-width: 768px) {
	#drag-temp-pre-content .sp {
		margin: 0;
		padding: 0;
		height: 0;
	}
}
/* 新着情報ブロック */
#drag-temp-pre-content .news_list {
	position: relative;
	display: block;
	min-height: 50px;
	background: #777;
}
#drag-temp-pre-content .news_list:before {
	content: "新着情報";
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -.75em;
	margin-left: -4.5em;
	font-size: 20px;
	color: #fff;
	z-index: 10;
}

/* =====================================
 10. pc sp change
===================================== */
.pc {
	display: block !important;
}
.sp {
	display: none !important;
}

/* ----------------------------------------------------------
■ Tablet
----------------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 959px) {
/* =====================================
 3. base template
===================================== */
/* 3-1. top bn -------------------------- */
/* 700px bn (1column) */
.b_10.bn01 img {
    width: 75% !important;
}
/* 345px bn (2column) */
.b_10.b_10_column2.bn02 {
    width: 75% !important;
	margin: 0 auto 2em;
}
.b_10.bn02 img {
    width: 100% !important;
}
/* 224px bn (3column) */
.b_10.b_10_column3.bn03 {
    width: 75% !important;
	margin: 0 auto 2em;
}
.b_10.bn03 img {
    width: 100% !important;
}
}

/* ----------------------------------------------------------
■ SmartPhone
----------------------------------------------------------- */
@media screen and (max-width: 767px) {
/* =====================================
 2. bt
===================================== */
.gnv_tmp_detail a {
	width: auto;
	float: none;
}

/* =====================================
 3. base template
===================================== */
.text_box {
	float: none;
	width: 100%;
}
.b_11_3.b_11_3_column3,
.b_11_3.b_11_3_column3 div.column_c,
.b_11_3.b_11_3_column3 div.column_l,
.b_11_3.b_11_3_column3 div.column_r {
	margin: 0 0 1.0em !important;
}
.b_11 .b_11_in span img,
.b_11_2_in span img {
	margin: 0 0 20px;
	width: 100%;
        float: none;
}
/* 3-1.画像横並び -------------------------- */
.b_10.b_10_column2.img_list {
    border: medium none;
    border-collapse: collapse;
    display: table;
    line-height: 1px;
    table-layout: fixed;
    width: 100%;
}
.b_10.b_10_column3.img_list {
	display: table;
}
/* 2列 */
.img_list.b_10.b_10_column2 div.column_l {
    display: table-cell;
    line-height: 1px;
    padding-right: 10px;
    vertical-align: top;
    width: auto;
}
.img_list.b_10.b_10_column2 div.column_r {
    display: table-cell;
    line-height: 1px;
    padding-left: 10px;
    vertical-align: top;
    width: auto;
}
/* 3列 */
.b_10.b_10_column3 div.column_blank {
    display: table-cell !important;
    vertical-align: top;
    width: auto;
}
.img_list.b_10_column3 div.column_c,
.img_list.b_10_column3 div.column_l {
    display: table-cell;
    width: 32%;
	margin-right: 1%;
}
.img_list.b_10_column3 div.column_r {
    display: table-cell;
    width: 32%;
	margin-right: 0;
}

/* =====================================
 5. table
===================================== */
/* 5-4. hours -------------------------- */
table.gnv_tmp_hours th,
table.gnv_tmp_hours td {
	font-size: 70%;
}

/* =====================================
 7. その他テンプレート
===================================== */
/* 7-1. ビフォーアフター -------------------------- */
.ba_box {
	background: url(/asset/ba_ar_sp.png) no-repeat center 50%;
	margin: 0 auto 5em !important;
}
.ba_box div.column_l,
.ba_box div.column_r {
	width: 100%;
	display: block;
}
.ba_box .column_l {
	margin-bottom: 2em!important;
}
.ba_box .column_r span {
	text-align: center;
}

/* =====================================
 8. MAP
===================================== */
.gnv_tmp_map {
  padding-top: 70%;
}
.gnv_tmp_map iframe {
    right: 0;
    width: 100% !important;
}

/* =====================================
 10. pc sp change
===================================== */
.pc {
	display: none !important;
}
.sp {
	display: block !important;
}

}
/* =====================================
 11. others
===================================== */
/* w960 */
.w960 {
	max-width: 960px;
	margin: 0 auto;
	padding: 0 10px;
}
/*----- googlecalender、googleMap、インドアビュー -----*/
.gMap, .calenderWrap, .indoorView {
	position: relative;
}
.gMap iframe, .calenderWrap iframe, .indoorView iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}
.gMap {
	padding-top: 33.25%;
}
.calenderWrap, .indoorView {
	padding-top: 56.25%
}
.calenderWrap iframe {
	min-height: 260px;
}
.indoorView iframe {
	min-height: 240px;
}
@media only screen and (max-width: 480px) {
	.gMap{
		padding-top: 220px;
	}
	.calenderWrap {
		padding-top: 300px;
	}
	.indoorView {
		padding-top: 240px;
	}
}
/*-------------------------------------------------------*/


/* =====================================
	動画テンプレート
===================================== */
/* 動画最大幅
.viemo.b_09, .viemo.b_11_3.b_11_3_column2 {
	max-width: 700px;
	margin: 0 auto;
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, .viemo.b_11_3.b_11_3_column2 {
		width: 700px;
	}
} */
/* youtubeの縦横比 */
.viemo.b_09>div, .viemo.b_11_3.b_11_3_column2 div.column_l>p, .viemo.b_11_3.b_11_3_column2 div.column_r>p {
	position: relative;
	padding-top: 56.25%;
}
/* 絶対費で固定 */
.viemo.b_09 iframe, .viemo.b_11_3.b_11_3_column2 div.column_l iframe, .viemo.b_11_3.b_11_3_column2 div.column_r iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 767px) {
	.viemo.b_11_3.b_11_3_column2 {
		width: 100%;
	}
}
@media screen and (min-width: 700px) and (max-width: 720px) {
	.viemo.b_11_3.b_11_3_column2 {
		width: 100%;
		max-width: 720px;
	}
}
@media screen and (max-width: 720px) {
	.viemo.b_09 {
		padding: 0 10px;
	}
	.viemo.b_11_3.b_11_3_column2 div.column_l {
		padding-left: 10px;
	}
	.viemo.b_11_3.b_11_3_column2 div.column_r {
		padding-right: 10px;
	}
}
@media screen and (max-width: 767px) {
	.viemo.b_11_3.b_11_3_column2 div.column_l, .viemo.b_11_3.b_11_3_column2 div.column_r {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}
	.viemo.b_11_3.b_11_3_column2 div.column_l, .viemo.b_11_3.b_11_3_column2 div.column_r {
		padding: 0 10px;
	}
}


/* =====================================
	12. 下層TPL
===================================== */
/*--------------------------------------
	List of Check Design
--------------------------------------*/
ul.listCheck li {
	position: relative;
	padding-left: 2em;
	margin-bottom: 10px;
	font-size: 16px;
}
ul.listCheck li:before {
	display: block;
	content: '';
	position: absolute;
	top: 1px;
	left: 0;
	width: 12px;
	height: 12px;
	background: #fff;
	border: 2px solid #bfbfbf;
}
ul.listCheck li:after {
	display: block;
	content: '';
	position: absolute;
	top: 5px;
	left: 4px;
	width: 7px;
	height: 3px;
	border-left: 2px solid #0061a5;
	border-bottom: 2px solid #0061a5;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/*--------------------------------------
	手順矢印(下)
--------------------------------------*/
.stepArrow {
	position: relative;
	margin-bottom: 3em;
}
.stepArrow:before {
    content: "";
    position: absolute;
    bottom: -50px;
    left: 50%;
    margin-left: -20px;
    display: block;
    width: 0;
    height: 0;
    border: 20px solid transparent;
    border-top-color: #ffb7b7;
    border-right-width: 28px;
    border-left-width: 28px;
}

/*--------------------------------------
	table01
--------------------------------------*/
table.table01,
table .table01 {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border: 1px solid #ccc;
}
.table01 th,
.table01 td {
	padding: 0.5em;
	text-align: center;
	vertical-align: middle;
}
.table01 thead th {
	background: #002e4e;
	color: #fff;
}
.table01 tbody th {
	background: #ddebf1;
}
.table01 th, .table01 td {
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
	table.table01,
	table .table01 {
		font-size: 85%;
	}
	.table01 th,
	.table01 td {
		padding: 0.2em;
	}
}
@media (max-width: 480px) {
	table.table01,
	table .table01 {
		font-size: 70%;
	}
}

/*--------------------------------------
	anchorlinks
--------------------------------------*/
.anchorlinks {
	border: 3px double #333;
	background: #ccc;
	padding: 2em 2em 1em 2em;
	list-style: none;
}
.anchorlinks:after {
	content: "";
	display: block;
	clear: both;
}
.anchorlinks li {
	position: relative;
	width: 33.33%;
	float: left;
	padding: 0 .5em 0 1.2em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 1em;
}
.anchorlinks li:nth-child(3n) {
	padding-right: 0;
}
.anchorlinks li a {
	text-decoration: none;
}
.anchorlinks li a:before {
	content: "";
	position: absolute;
	top: 3px;
	left: 0;
	display: inline-block;
	width: 0;
	height: 0;
	margin-right: .5em;
	border-top: .4em solid transparent;
	border-bottom: .4em solid transparent;
	border-left: .8em solid #333;
	-webkit-transition-duration: .6s;
	-ms-transition-duration: .6s;
	-moz-transition-duration: .6s;
	transition-duration: .6s;
}
.anchorlinks li a:hover:before {
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
}
.anchorlinks li a:hover {
	text-decoration: underline;
}
@media screen and (max-width: 767px) {
	.anchorlinks {
		padding: 1em 1em .5em 1em;
	}
	.anchorlinks li {
		width: 50%;
		margin-bottom: .5em;
	}
	.anchorlinks li:nth-child(even) {
		padding-right: 0;
	}
	.anchorlinks li:nth-child(3n) {
		padding-right: 1em;
	}
}
@media screen and (max-width: 480px) {
	.anchorlinks li {
		width: 100%;
		padding-right: 0;
	}
}

/*--------------------------------------
	症例写真 (クラスに「case_photo」を追加。画像サイズが大きくなり過ぎないように調整)
--------------------------------------*/
/*「テキスト+画像+文章」用*/
.case_photo.b_11_2.b_11_2_column2 div.column_l span img,
.case_photo.b_11_2.b_11_2_column2 div.column_r span img,
.case_photo.b_11_2.b_11_2_column3 div.column_c span img,
.case_photo.b_11_2.b_11_2_column3 div.column_l span img,
.case_photo.b_11_2.b_11_2_column3 div.column_r span img{
	width:100%;
	max-width:240px;
	margin-left:auto;
	margin-right:auto;
}
.case_photo.b_11_2_in span img{
	width:100%;
	max-width:240px;
}
@media (max-width: 767px) {
	.case_photo .b_11_2_in span img{
		max-width:240px;
		float:none;
		margin-left:auto;
		margin-right:auto;
	}
}
/*「画像」パーツ用*/
.case_photo.b_10.column_r span img,
.case_photo.column_c span img,
.case_photo.column_l span img{
	width:240px;
	max-width:100%;
	margin-left:auto;
	margin-right:auto;
}
.case_photo.b_10 img{
	width:100%;
	max-width:240px;
}
@media (max-width: 767px) {
	.case_photo.b_10 img{
		max-width:240px;
	}
}


/* =====================================
	 13. お問い合わせバナー(フッター下部固定)
===================================== */
/*--------------------------------------
    contact boxs
--------------------------------------*/
.contactBox {
  background: #9ec56b;
  padding: 50px 30px 40px;
}
.contactBox .wrap {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
  line-height: 2.5em;
  letter-spacing: .12em;
  font-size: 16px;
  color: #fff;
}
.contactBox .wrap h3 {
  margin: 0 0 .2em;
  line-height: 2.33em;
  letter-spacing: .2em;
  font-size: 30px;
  color: #fff;
}
.contactBox .wrap .bnr {
  margin-top: 28px;
  display: -ms-flexbox;
  -ms-flex-direction: row;
  display: -webkit-flex;
  display: flex;
}
.contactBox .wrap .bnr .box {
  -webkit-flex-grow: 1;
  flex-grow: 1;
  margin-right: 5px;
}
.contactBox .wrap .bnr .box:last-child {
  margin-right: 0;
}
.contactBox .wrap .bnr .box img {
  width: 100%;
  max-width: 100%;
}
.contactBox .tb {
  display: none;
}

@media screen and (max-width: 1060px) {
  .contactBox .tb {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .contactBox {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    background: none;
    padding: 0;
  }
  .contactBox .wrap h3, .contactBox .wrap h3 + p {
    display: none;
  }
  .contactBox .wrap .bnr {
    margin-top: 0;
  }
  .contactBox .wrap .bnr .box {
    margin: 0 1px 0 0;
  }
}


/* =====================================
	 top
===================================== */
/*--------------------------------------
    common
--------------------------------------*/
p.img_box img {
    max-width: 100%;
    margin: 0 auto;
}
.name_txt {
        color: #91c34a;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.7;
}
p {
    margin-bottom: 15px;
}
p:last-child {
    margin-bottom: 0;
}
/*--------------------------------------
   greeting
--------------------------------------*/
.greeting_con .b_11_2_in span img {
    max-width: 250px;
}
@media screen and (max-width: 767px) {
.greeting_con .b_11_2_in span img {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}
}
/* =====================================
	 under
===================================== */
.sub_tle {
    font-size: 20px;
    font-weight: bold;
        color: #83bb33;
    line-height: 1.6;
}
/* 番号リスト */
.num_list {
    counter-reset: li;
}
.num_list li:before {
       background: #9bc75b;
    color: #fff;
    content: counter(li, decimal);
    counter-increment: li;
    display: block;
    font-size: 19px;
    height: 30px;
    left: 0;
    line-height: 32px;
    position: absolute;
    text-align: center;
    top: -2px;
    width: 30px;
    letter-spacing: 0;
} 
.num_list li {
    margin-bottom: 12px;
    padding-left: 40px;
    position: relative;
}
.num_list li:last-child {
    margin-bottom: 0;
}
.bold_txt {
        color: #8eb753;
    font-size: 17px;
    font-weight: bold;
}
.img_auto img {
    max-width: 30%;
    width: auto;
}
table.access_table {
    width: 100%;
}
.access_table th {
    width: 80px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid #48aa2c;
    padding: 8px 0 6px 0;
       color: #5b5b6a;
}
.access_table tr:first-child th {
        border-top: 1px solid #48aa2c;
}
.access_table td {
    border-bottom: 1px solid #ccc;
    padding: 8px 0 6px 0;
    text-align: left;
}
.access_table tr:first-child td {
    border-top: 1px solid #ccc;
}
.map_box p.gnv_tmp_map {
    padding: 0;
    height: 100%;
    width: 100%;
    box-sizing: border-box;
}

@media screen and (max-width: 767px) {
.img_auto img {
    max-width: 100%;
    width: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.height_auto{
    height:auto !important;
}
.map_box p.gnv_tmp_map {
    padding-top: 70%;
}
.b_11_3.b_11_3_column2 div.column_l {
    display: block;
    width: auto;
    margin: 0 0 1em;
    padding-right: 0;
}
.b_11_3.b_11_3_column2 div.column_r {
    display: block;
    width: auto;
    padding-left: 0;
}
}
@media screen and (max-width: 479px) {
.access_table th {
    width: 30%;
}
}	
				