/* *******************************************************************************
-------------------------------------------------------------
■ PC
-------------------------------------------------------------
1. text link
2. title (h2,h3,h4)
├ 2-1. h2
├ 2-2. h3
└ 2-3. h4
3. bt
4. base template
5. SNS
6. table
├ 6-1. default
├ 6-3. table01
└ 6-3. table02
7. news
├ 7-1. default
└ 7-2. title change
8. 汎用プロパティ
├ 8-1. float
├ 8-2. margin
├ 8-3. text-align
├ 8-4. 画像の配置
├ 8-5. 画像の装飾
└ 8-6. rollover（透過）
9. other
├ 9-1. before-after
├ 9-2. list
├ 9-3. flow
└ 9-4. qa
10. MAP
11. full
12. inquiry
13. singlebox
├ 13-1. 2 column
├ 13-2. 3 column
└ 13-3. 4 column
14. コンテンツ非表示

-------------------------------------------------------------
■ @media screen and (max-width: 1000px)
-------------------------------------------------------------
11. full

-------------------------------------------------------------
■ @media screen and (max-width: 767px)
-------------------------------------------------------------
3. bt
9. other
└ 9-1. before-after
11. full
13. singlebox
└ 13-4. common column

-------------------------------------------------------------
■ @media screen and (max-width: 600px)
-------------------------------------------------------------
6. table
├ 6-1. default
├ 6-3. table01
└ 6-3. table02
10. MAP

******************************************************************************* */
/* ----------------------------------------------------------
■ PC
----------------------------------------------------------- */
/* =====================================
1. text link
=====================================
a:link    { color: #000; text-decoration: none; }
a:visited { color: #000; text-decoration: none; }
a:hover   { color: #888; text-decoration: underline; }
a:active  { color: #888; text-decoration: underline; } */
/* =====================================
2. title (h2,h3,h4) PC
===================================== */

h2,
h3,
h4,
h5 {
 font-weight: normal;
 font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
}
#news h2,
h2.titleBg,
.static #content h2.titleBg,
.blog #content .contentArea h3 {
 color: #52331c;
 border: none;
 border-top: 5px solid #64540c;
 font-size: 27px;
 font-weight: normal;
 padding: 11px 10px 11px 16px;
 position: relative;
}
/*#news h2:before,
h2.titleBg:before,
.static #content h2.titleBg:before,
.gnv_tmp_h3_bg h3:before,
.blog #content .contentArea h3:before{
   background: none repeat scroll 0 0 #330000;
   content: "";
   height: 26px;
   left: 6px;
   position: absolute;
   top: 8px;
   width: 4px;
}
#news h2:after,
h2.titleBg:after,
.static #content h2.titleBg:after,
.gnv_tmp_h3_bg h3:after,
.blog #content .contentArea h3:after{
   position: absolute;
bottom: 0px;
left: 0px;
content: "";
width: 100%;
height: 3px;
background: #330000;
}*/

.gnv_tmp_h2_bg {
 padding: 10px 5px 9px 10px;
 background: linear-gradient(to right, #91040c, #ec1c23);
 background: -webkit-linear-gradient(left, #91040c, #ec1c23);
 background: -moz-linear-gradient(left, #91040c, #ec1c23);
 background: -o-linear-gradient(left, #91040c, #ec1c23);
 -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=1,startColorstr='#ef3d43', endColorstr='#ec1c23')";
 border-left: 5px solid #EE343A;
}
.gnv_tmp_h2_bg h2 {
 color: #fff;
 font-size: 130%;
 font-weight: normal;
}
.gnv_tmp_h3_bg h3 {
 background: linear-gradient(to bottom, #ad9172, #957658);
 background: -webkit-linear-gradient(top, #ad9172, #957658);
 background: -moz-linear-gradient(top, #ad9172, #957658);
 background: -o-linear-gradient(top, #ad9172, #957658);
 -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#ad9172', endColorstr='#957658')";
 color: #fff;
 border-radius: 4px;
 border-bottom: 3px solid #4f3d39;
 border: none;
 font-size: 22px;
 font-weight: normal;
 padding: 9px 10px 8px 16px;
 position: relative;
}
.gnv_tmp_h4_bg {
 padding: 4px 5px 4px 24px;
 border-bottom: dotted 1px #ccc;
 position: relative;
}
.gnv_tmp_h4_bg h4 {
 font-weight: normal;
 font-size: 110%;
 line-height: 1.5;
}
.gnv_tmp_h4_bg02 {}
.gnv_tmp_h4_bg02 h4 {
 background: #f7efdb;
 padding: 4px 4px 4px 10px;
 border-radius: 5px;
 font-weight: normal;
 font-size: 110%;
 line-height: 1.5;
}
.gnv_tmp_h4_bg:before {
 border-radius: 50%;
 content: "";
 height: 9px;
 left: 2px;
 border: 3px solid #b8a062;
 position: absolute;
 top: 9px;
 width: 9px;
}
h5 {
 color: #52331c;
 font-weight: normal;
 border-bottom: 1px dashed #52331c;
 padding: 5px;
}
/* =====================================
3. bt PC
===================================== */

.link_btn {
 width: 100%;
 max-width: 260px;
}
.link_btn a {
 line-height: 1.4;
 display: block;
 color: #fff;
 padding: 10px 20px;
 box-sizing: border-box;
 text-align: center;
 position: relative;
 border-radius: 3px;
 background: none #9c7c45;
 background: linear-gradient(to bottom, #b8a062, #9c7c45);
 background: -webkit-linear-gradient(top, #b8a062, #9c7c45);
 background: -moz-linear-gradient(top, #b8a062, #9c7c45);
 background: -o-linear-gradient(top, #b8a062, #9c7c45);
 -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#b8a062', endColorstr='#9c7c45')";
 text-shadow: -1px -1px 1px rgba(0, 0, 0, 0.3);
 box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.2);
 transition: all 0.5s ease 0s;
}
.link_btn a:before {
 border-top: 1px solid #fff;
 border-right: 1px solid #fff;
 content: "";
 display: block;
 height: 8px;
 margin-top: -4px;
 position: absolute;
 right: 10px;
 top: 50%;
 -webkit-transform: rotate(45deg);
 transform: rotate(45deg);
 -ms-transform: rotate(45deg);
 width: 8px;
}
.link_btn a:hover {
 opacity: 0.8;
 filter: alpha(opacity=80);
 -ms-filter: "alpha( opacity=80 )";
 text-decoration: none;
 -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#b8a062', endColorstr='#9c7c45')";
}
/* =====================================
4. base template PC
===================================== */

.text_box {
 float: right;
 width: 62%;
}
.text_box_q {
 float: right;
 width: 92%;
}
.b_11_2_in span img,
.b_11 .b_11_in span img {
 margin: 0 1em 1em 0;
}
/* =====================================
6. table PC
===================================== */
/* 6-1. default -------------------------- */

.b_06 table td,
.b_06 table th {
 border: 1px solid #CCCCCC;
}
.b_06_item {
 background: none repeat scroll 0 0 #EEEEEE;
 width: 30%;
}
/* 6-2. table01 -------------------------- */

table.gnv_tmp_table01 {
 margin-bottom: 1.5em;
 background: #FFFFFF;
 width: 100%;
}
table.gnv_tmp_table01 th,
table.gnv_tmp_table01 td {
 padding: 5px;
 text-align: left;
}
table.gnv_tmp_table01 thead th {
 background: #ddd;
 border-top: 1px dotted #ccc;
}
table.gnv_tmp_table01 th {
 background: #efefef;
 border-top: 1px dotted #ccc;
 border-bottom: 1px dotted #ccc;
}
table.gnv_tmp_table01 td {
 background: #FFFFFF;
 border-bottom: 1px dotted #ccc;
 border-top: 1px dotted #ccc;
}
/* 6-3. table02 -------------------------- */

table.gnv_tmp_table02 {
 margin-bottom: 1.5em;
 width: 100%;
}
table.gnv_tmp_table02 th,
table.gnv_tmp_table02 td {
 padding: 5px;
 text-align: left;
}
table.gnv_tmp_table02 thead th {
 background: #f8f3f0;
 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;
}
/* 6-4. hours -------------------------- */

table.gnv_tmp_hours th,
table.gnv_tmp_hours td {
 text-align: center !important;
}
/* =====================================
7. news PC
===================================== */
/* 7-1. default -------------------------- */
/*#news h2 {
display: block;
padding: 10px;
border-top: 3px solid #000;
background: none;
font-size: 130%;
margin: 0 0 1em !important;
}*/

#news dl {
 border-bottom: 1px dashed #ccc;
}
#news dd a {
 text-decoration: underline;
 color: #555;
}
#news dd a:hover {
 text-decoration: none;
}
#news .ov {
 text-decoration: none;
}
#news .ov:hover {
 text-decoration: underline;
}
#news .newsBt {
 color: #52331c;
 position: absolute;
 right: 10px;
 text-decoration: none;
 top: -42px !important;
 font-size: 100%;
}
#news .newsBt:hover {
 text-decoration: underline;
}
#news dt {
 position: relative;
}
#news dt .newsNew {
 background: #65550c;
 border-radius: 3px;
 color: #fff;
 font-size: 10px;
 left: 115px;
 line-height: 1.4;
 margin: 0 0 0 10px;
 position: absolute;
 top: 3px;
}
/* 7-2. title change -------------------------- */

.gnv_tmp_008_title_block h2.gnv_tmp_news_title {
 padding: 10px;
 font-size: 130%;
 border-bottom: 1px solid #ededed;
 margin-bottom: 1em;
}
/* =====================================
8. 汎用プロパティ PC
===================================== */
/* 8-1. float -------------------------- */

.fl {
 float: left;
}
.fr {
 float: right;
}
/* 8-2. margin -------------------------- */

.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;
}
.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;
}
.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;
}
.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;
}
/* 8-3. text-align -------------------------- */

.tal {
 text-align: left;
}
.tac {
 text-align: center;
}
.tar {
 text-align: right;
}
/* 8-4. 画像の配置 -------------------------- */
/* 基本設定 */
/* right */

.b_11_2_in span img,
.b_11 .b_11_in span img {
 float: right;
 margin: 0 0 20px 2%;
}
/* 個別設定 */
/* left */

.img_l span img {
 float: left !important;
 margin: 0 2% 20px 0 !important;
}
/* right */

.img_r span img {
 float: right !important;
 margin: 0 0 20px 2% !important;
}
/* 8-5. 画像の装飾 -------------------------- */
/* 角丸 */

.image span img,
.text_image img,
.gnv_tmp_style img {
 border: 1px solid #ccc;
 box-sizing: border-box;
 padding: 3px;
 background: #fff;
 position: relative;
 z-index: 1;
}
.img_reset img {
 border: none!important;
 padding: 0!important;
}
/*.image img:before,
.text_image img:before,
.gnv_tmp_style img:before {
   border: 3px solid #fff;
   box-sizing: border-box;
   content: "";
   height: 100%;
   left: 0;
   opacity: 0.4;
   position: absolute;
   top: 0;
   width: 100%;
   z-index: 100;
}*/
/* 8-6. rollover（透過） -------------------------- */

.rollover:hover {
 opacity: 0.8;
 filter: alpha(opacity=80);
 -ms-filter: "alpha( opacity=80 )";
}
/* =====================================
9. other PC
===================================== */
/* 9-1. before-after -------------------------- */

.ba_box {
 background: url("http://www.ikebukuro-cd.jp/asset/ba_ar.png") no-repeat center 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;
}
/* 9-2. list -------------------------- */
/* 通常リスト 01 */

.ic_01 {
 width: 100%;
}
.ic_01 .clearfix {
 padding: 5px 5px 5px 25px;
}
.ic_01 span {
 position: relative;
 line-height: 1;
}
.ic_01 span:before {
 content: "";
 position: absolute;
 background: #000;
 top: 6px;
 left: -16px;
 height: 7px;
 width: 7px;
 border-radius: 50%;
}
/* ul */

.ic_01 ul {
 margin: 25px;
}
.ic_01 li {
 position: relative;
 padding: 5px 5px 5px 0;
}
.ic_01 li:before {
 content: "";
 position: absolute;
 background: #000;
 top: 14px;
 left: -16px;
 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: 2px;
}
.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: 6px;
 -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;
}
.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: 14px;
 margin-top: 0;
 -webkit-transform: rotate(45deg);
 -moz-transform: rotate(45deg);
 -o-transform: rotate(45deg);
 transform: rotate(45deg);
}
/* 矢印リスト 01 */

.ic_arrow_01 .clearfix {
 padding: 5px 5px 5px 25px;
}
.ic_arrow_01 span {
 position: relative;
}
.ic_arrow_01 span:before {
 display: block;
 content: "";
 position: absolute;
 top: 5px;
 left: -15px;
 width: 0;
 height: 0;
 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: 13px;
 left: -15px;
 width: 0;
 height: 0;
 border: 5px solid transparent;
 border-left: 5px solid #000;
}
.ic_arrow_01 li:hover:before {
 left: -12px;
}
/* 矢印リスト 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: 2px;
 left: -25px;
 width: 16px;
 height: 16px;
 border-radius: 50%;
 background: #999;
}
.ic_arrow_02 span:after {
 display: block;
 content: "";
 position: absolute;
 top: 5px;
 left: -19px;
 width: 0;
 height: 0;
 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;
 border-radius: 50%;
 background: #999;
}
.ic_arrow_02 li:after {
 display: block;
 content: "";
 position: absolute;
 top: 13px;
 left: -19px;
 width: 0;
 height: 0;
 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;
}
/* 9-3. flow -------------------------- */

img.gnv_tmp_flow_arrow_01 {
 margin: 0 auto;
}
img.gnv_tmp_flow_arrow_02 {
 margin: 10px auto 0;
}
/* 9-4. qa -------------------------- */

.gnv_tmp_qa_q {
border-left: 3px solid #715a42;
margin-bottom: 10px;
padding: 10px;
display: table;
}
.gnv_tmp_qa_q span.tit {
font-size: 200%;
font-weight: bold;
color: #715a42;
padding-right: 20px;
display: table-cell;
width: 30px;
}
.gnv_tmp_qa_a {
border-left: 3px solid #b79c55;
margin-bottom: 10px;
padding: 10px;
display: table;
}
.gnv_tmp_qa_a span.tit {
font-size: 200%;
font-weight: bold;
color: #b79c55;
padding-right: 20px;
display: table-cell;
width: 30px;
}
.gnv_tmp_qa_a p {
display: table-cell;
width: 100%;
color: #806a32;
vertical-align: top;
padding-top: 15px;
}
.gnv_tmp_qa_q p{
display: table-cell;
width: 110%;
color: #715a42;
font-weight: bold;
vertical-align: top;
padding-top: 15px;
}
/* =====================================
10. MAP PC
===================================== */

.gnv_tmp_map {
 position: relative;
 padding-bottom: 40%;
 /* これが縦横比 */
 
 height: 0;
 overflow: hidden;
 margin-left: 15px;
 margin-right: 15px;
}
.gnv_tmp_map iframe {
 position: absolute;
 top: 0;
 left: 0;
 width: 100% !important;
 height: 100% !important;
}
/* =====================================
11. full PC
===================================== */

.content_width_full .parts {
 background: #efefef;
}
/* =====================================
12. inquiry PC
===================================== */
/*
■問合せタイトルを付けたい場合
1）下記のコメントアウトを削除する
2）パーツ内の「テキスト」でタイトルを「テキスト」に入力する
*/
/*
body#inquiryBody .message {
display: none;
}
body#inquiryBody .inquiry_textbox {
margin-bottom: 20px;
}
body#inquiryBody .inquiry_textbox:first-child {
   border-bottom: 1px solid #dedede;
background: url("http://www.ikebukuro-cd.jp/asset/h2_bg.gif") no-repeat bottom left;
font-size: 130%;
   line-height: 1.2;
   padding: 15px;
border-radius: 0;
   position: relative;
}
.inquiryFormTable {
border: none;
}
*/
/* =====================================
13. singlebox PC
===================================== */
/* 2-1. 2 column -------------------------- */

.singlebox2 {
 float: left;
 margin-left: 0;
 margin-right: 0;
 padding: 10px;
 width: 47% !important;
}
/* 2-2. 3 column -------------------------- */

.singlebox3 {
 float: left;
 margin-left: 0;
 margin-right: 0;
 padding: 10px;
 width: 30% !important;
}
/* 2-3. 4 column -------------------------- */

.singlebox4 {
 float: left;
 margin-left: 0;
 margin-right: 0;
 padding: 10px;
 width: 22% !important;
}
/* =====================================
14. コンテンツ非表示 PC
===================================== */
/* TOPのみ解除 上書き（解除しない） */

.top .hikoukai {
 display: none !important;
}
.top #drag-temp-pre-content .parts.hikoukai {
 background: none repeat scroll 0 0 #555;
 border: 5px solid #777;
 display: block !important;
 padding: 20px 0;
}
/* =====================================
15.追記
===================================== */

a:focus,
*:focus {
 outline: none;
}
body {
 color: #52331c;
 background: #fff!important;
 line-height: 180%;
 font-size: 16px;
 font-family: "メイリオ", "Meiryo", verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
}
a:hover img {
 opacity: 0.8;
 filter: alpha(opacity=80);
 -ms-filter: "alpha( opacity=80 )";
}
#header h1 a:hover img {
 opacity: 1;
 filter: alpha(opacity=100);
 -ms-filter: "alpha( opacity=100 )";
}
br.br01 {
 display: block;
}
.clearfix:after {
 content: " ";
 display: block;
 visibility: hidden;
 clear: both;
 height: 0.1px;
 font-size: 0.1em;
 line-height: 0;
}
.mb0 {
 margin-bottom: 0!important;
}
.mb_h3 {
 margin-bottom: 17px!important;
}
.mb_h4 {
 margin-bottom: 13px!important;
}
.mb_h5 {
 margin-bottom: 10px!important;
}
.mb_01 {
 margin-bottom: 27px!important;
}
.mb_02 {
 margin-bottom: 50px!important;
}
.mb_03 {
 margin-bottom: 65px!important;
}
.border_box01 {
 background-color: #f8f4ea;
 border-radius: 7px;
 padding: 10px;
}
.text_01 {
 color: #543621;
 font-size: 30px;
 font-weight: bold;
 line-height: 1.7;
 text-align: center;
}
.text_01 span.small{
 font-size: 80%;
}
.text_02 {
 color: #543621;
 font-size: 24px;
 line-height: 1.6;
}
.text_a01 a {
 color: #62530c;
 text-decoration: underline;
}
.text_a01 a:hover {
 color: #62530c;
 text-decoration: none;
}
.ic_01 span:before {
 content: "";
 position: absolute;
 background: #62530c;
 top: 8px;
 left: -11px;
 height: 5px;
 width: 5px;
 border-radius: 50%;
}
ul.ul01 {
 list-style: none;
}
ul.ul01 li {
 padding: 0 0 5px 22px;
 position: relative;
}
.ul01 li:before {
 content: "";
 position: absolute;
 background: #f2b2ae;
 top: 9px;
 left: 11px;
 height: 5px;
 width: 5px;
 border-radius: 50%;
}
ul.ul02 {
 list-style: none;
}
ul.ul02 li {
 padding: 0 0 5px 22px;
 position: relative;
}
.ul02 li:before {
 content: "";
 position: absolute;
 background: #f2b2ae;
 top: 10px;
 left: 11px;
 height: 5px;
 width: 5px;
 border-radius: 50%;
}
ul.sitemap_ic li a {
 font-weight: normal;
}
ul.sitemap_ic li a:hover {
 text-decoration: underline;
}
.blog #content .contentArea h3 a {
 color: #52331c;
}
.blog #content .contentArea .date {
 color: #333;
}
.blogside h3 {
 border-top: 2px solid #52331c;
 color: #52331c;
}
.blogside li:before {
 color: #52331c;
}
#blogBody #pagenation a.active:hover,
.blog #content #pagenation .active a {
 background: #52331c;
}
#blogBody #pagenation a:hover {
 background: #ccc!important;
}
#pagenation .active a,
#pagenation a.active:hover {
 /*新着のページ番号の色*/
 
 background: #52331c;
}
.inquiry #content .backBt,
.inquiry #content .confirmBt,
.inquiry #content .submitBt,
.inquiry #content .topBt {
 -webkit-box-shadow: none;
 -moz-box-shadow: none;
 box-shadow: none;
 border: none;
 background-color: #b8a162;
 border-radius: 5px;
 background: linear-gradient(to bottom, #b8a162, #9c7c45);
 background: -webkit-linear-gradient(top, #b8a162, #9c7c45);
 background: -moz-linear-gradient(top, #b8a162, #9c7c45);
 background: -o-linear-gradient(top, #b8a162, #9c7c45);
 -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#b8a162', endColorstr='#9c7c45')";
}
.inquiry #content .backBt:hover,
.inquiry #content .confirmBt:hover,
.inquiry #content .submitBt:hover,
.inquiry #content .topBt:hover {
 -ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#b8a162', endColorstr='#9c7c45')";
 opacity: 0.8;
 filter: alpha(opacity=80);
 -ms-filter: "alpha( opacity=80 )";
}
.b_11_2_in span img,
.b_11 .b_11_in span img {
 width: 35%;
}
ul.ul_check li {
 padding: 5px 0px 5px 24px;
 position: relative;
}
ul.ul_check li:before {
 background: none repeat scroll 0 0 #f2b2ae;
 border: 1px solid #EE9690;
 border-radius: 3px;
 content: "";
 height: 17px;
 left: 0;
 position: absolute;
 top: 9px;
 width: 17px;
 z-index: 0;
}
ul.ul_check li:after {
 position: absolute;
 top: 9px;
 left: 3px;
 content: "";
 width: 11px;
 height: 4px;
 border: transparent 4px solid;
 border-left: 2px solid #FFFFFF;
 border-bottom: 2px solid #FFFFFF;
 transform: rotate(-40deg);
 -webkit-transform: rotate(-40deg);
 -ms-transform: rotate(-40deg);
 z-index: 10;
}
.flow_box {
 margin: 0 auto;
 max-width: 800px;
}
.flow_box .box_01 {
 background: #fff7e8;
 padding: 10px;
}
p.point_p {
 font-size: 22px;
 font-weight: bold;
 line-height: 1.3;
 padding: 10px 5px 8px 51px;
 position: relative;
 text-shadow: 2px 2px 1px #fff, -2px -2px 1px #fff, 2px -2px 1px #fff, -2px 2px 1px #fff;
 z-index: 1;
}
p.point_p:before {
 content: "";
 position: absolute;
 top: 0;
 left: 0;
 width: 25px;
 height: 25px;
 border: 9px solid #f2b2ae;
 border-radius: 50%;
 z-index: -1;
}
.number_p {
 margin: 0 0 0 0;
 font-size: 19px;
 line-height: 1.4;
 color: #52331c;
 font-weight: bold;
 padding: 0 0 0 33px;
 text-indent: -33px;
}
.number_p.small {
 font-size: 16px;
 font-weight: normal;
 margin: 0 0 10px;
}
.number {
 padding: 0px 6px 0px 6px;
 border-radius: 5px;
 background: #9d7d46;
 font-size: 23px;
 color: #fff;
 margin: 0 6px 0 0;
}
.number_p.small .number {
 font-size: 20px;
}
.arrow_box {
 position: relative;
 height: 40px;
 width: 100%;
}
.arrow_box:before {
 content: "";
 position: absolute;
 background: none;
 top: 10px;
 left: 0px;
 height: 0;
 border-top: dotted #ddd 2px;
 width: 100%;
}
.arrow_box:after {
 display: block;
 content: "";
 position: absolute;
 top: 10px;
 left: 50%;
 margin: 0 0 0 -30px;
 width: 0px;
 height: 0px;
 border: 30px solid transparent;
 border-top: 16px solid #eee8d2;
}
table.table01 {
 border-collapse: collapse;
 background: #FFFFFF;
 width: 100%;
}
table.table01 thead th {
 padding: 1%;
 font-weight: normal;
 text-align: left;
 border: solid 1px #fff;
 background: #9d7d47;
 color: #fff;
 width: 6%
}
table.table01 th {
 padding: 1%;
 font-weight: bold;
 text-align: left;
 border: solid 1px #ccc;
 background: #ECDFC8;
 width: 32%;
}
table.table01 td {
 padding: 1%;
 text-align: left;
 border: 1px solid #ccc;
 background: #fff;
}
.table02 .b_06_item {
 border: none;
 border-bottom: 1px solid #9d7d47;
 background: none;
 width: 38%;
}
.table02 .b_06_content {
 border: none;
 border-bottom: 1px solid #ccc;
 width: auto;
 padding: 1%;
 text-align: left;
}
table.table02 {
 border-collapse: collapse;
 background: none;
 width: 100%;
}
table.table02 th {
 padding: 1%;
 font-weight: normal;
 text-align: left;
 border-bottom: solid 1px #9d7d47;
 width: 38%;
 vertical-align: top;
}
table.table02 td {
 padding: 1%;
 text-align: left;
 border-bottom: solid 1px #ccc;
}
table.table05 {
 width: 100%;
 border-spacing: 2px;
 border-collapse: separate;
}
table.table05 thead th {
 background: #ebdbc4;
 font-weight: bold;
 text-align: center;
}
table.table05 th {
 padding: 0.5%;
}
table.table05 td {
 background: #FFF2DF none repeat scroll 0 0;
 padding: 0.5%;
 text-align: center;
}
table.table05 td.bgwhite {
 background: #fff;
}
.small_img01.b_11_2.b_11_2_column2 {
 display: block;
 max-width: 450px;
 width: 100%;
 margin: 0 auto;
}
.small_img01.b_11_2.b_11_2_column2 div.column_l {
 display: block;
 float: left;
 padding: 0;
 width: 48%;
}
.small_img01.b_11_2.b_11_2_column2 div.column_r {
 width: 48%;
 float: right;
 padding: 0;
 display: block;
}
.img_w_auto01 .b_11_2_in span img,
.img_w_auto01 .b_11 .b_11_in span img {
 width: auto;
}
.m_auto_btn{
margin: 0 auto;
}
.under_btn{
max-width:600px;
width: 100%;
margin: 0 auto;
}
.under_btn .link_btn{
max-width: none;
width: 48%
}
.under_btn .link_btn:first-child{
float: left;
}
.under_btn .link_btn:last-child{
float: right;
}
/*==================content01,02(pc)==================*/

.top_box01 {
 background: url("../asset/top_bg03.png") no-repeat center 0;
 background-size: cover;
 padding: 45px 0;
}
.top_box01_in {
 max-width: 1000px;
 width: 96%;
 margin: 0 auto;
}
.top_box01_in .box_wrap.box_top {
 margin: 0 0 30px 0;
}
.top_box01_in .box_wrap.box_bottom {
 margin: 0 0 40px 0;
}
.top_box01_in .box01 {
 width: 32%;
 margin: 0 2% 0 0;
 background: #fff;
 box-sizing: border-box;
 padding: 10px 10px 20px;
 float: left;
}
.top_box01_in > div > *:first-child+*+* {
 margin: 0;
}
.top_box01_in h2 {
 border-bottom: 3px double #c1ae79;
 color: #52331c;
 display: block;
 font-size: 23px;
 line-height: 1.4;
 margin: 0 0 8px;
 padding: 10px 0;
 text-align: center;
}
.top_box01_in .box_bottom > *:first-child+* h2 {
 font-size: 19px;
 line-height: 1.2;
 padding: 3px 0 4px;
}
.top_box01_in .box01 img {
 width: 100%;
 display: block;
 margin: 0 0 10px;
}
.top ul.ul_check li {
 padding: 5px 0 3px 24px;
}
.top_box01 .ul_check {
 margin: 0 0 20px 0;
}
.top_box01 .box_top .ul_check {
 min-height: 214px;
}
.top_box01 .box_bottom .ul_check {
 min-height: 210px;
}
.top_box01 .ul_check li {
 font-size: 14px;
}
.top_box01 .link_btn {
 margin: 0 auto!important;
 max-width: 250px;
}
.top_box01 .bottom_box01 p {
 margin: 0 0 20px;
}
.top_box02 {
 background: url("../asset/top_bg01.png") no-repeat center 0;
 background-size: cover;
 padding: 100px 0;
}
.top_box02_in {
 max-width: 1000px;
 margin: 0 auto;
 width: 96%;
}
.top_box02_in h2 {
 font-size: 36px;
 line-height: 1.6;
 text-shadow: 1px 1px 0 #fff;
}
.top_box03 {
 background: url("../asset/top_bg04.png") no-repeat center 0;
 background-size: cover;
 padding: 40px 0;
}
.top_box03_in {
 max-width: 1000px;
 width: 96%;
 margin: 0 auto;
}
.top_box03_in .box_wrap {
 margin: 0 0 30px 0;
}
.top_box03_in > *:first-child+*+* {
 margin: 0 0 0px 0;
}
.top_box03_in .box_l {
 width: 48%;
 float: left;
}
.top_box03_in .box_r {
 width: 48%;
 float: right;
}
.top_box03_in .number_box {
 background: #f2b4b0 none repeat scroll 0 0;
 border-radius: 100px 100px 0 0;
 color: #fff;
 font-size: 46px;
 margin: 0 auto;
 padding: 24px 0 10px;
 text-align: center;
 width: 120px;
}
.top_box03 .box01 {
 box-sizing: border-box;
 padding: 20px;
 background: #fff;
}
.top_box03_in > *:first-child .box01 {
 min-height: 305px;
}
.top_box03_in > *:first-child+* .box01 {
 min-height: 330px;
}
.top_box03_in > *:first-child+*+* .box01 {
 min-height: 285px;
}
.top_box03 .box01 img {
 display: block;
 width: 100%;
 margin: 0 0 13px;
}
.top_box03 .box01 p.p01 {
 font-size: 130%;
}
.top_box03 .box01 p.p02 {
 font-size: 14px;
 line-height: 1.6;
}
.top_box04 {
 padding: 100px 0;
 background: url("../asset/top_bg02.png") no-repeat center 0;
 background-size: cover;
}
.top_box04_in {
 max-width: 1000px;
 width: 96%;
 margin: 0 auto;
}
.top_box04_in h2 {
 font-size: 36px;
 text-align: right;
 line-height: 1.6;
}
.top_box05 {
 padding: 45px 0;
 background: url("../asset/top_bg05.png") no-repeat center 0;
 background-size: cover;
}
.top_box05_in {
 max-width: 1000px;
 width: 96%;
 margin: 0 auto;
}
.top_box05 .b_11_2_in span img {
 width: 30%;
}
.top_box05_in .text_box {
 width: 68%;
}
.top_box05 p.p01 {
 margin: 0 0 30px 0;
}
.top_box06_in {
 max-width: 960px;
 width: 96%;
 margin: 0 auto;
}
.top_box06.b_10.b_10_column3 div.column_c,
.top_box06.b_10.b_10_column3 div.column_l,
.top_box06.b_10.b_10_column3 div.column_r {
 display: block;
 float: left;
 width: 31.2%;
 margin: 0px 3.2% 0px 0px;
}
.top_box06.b_10.b_10_column3 div.column_r {
 margin: 0;
}
.top_box07_in {
 max-width: 1000px;
 width: 96%;
 margin: 0 auto;
}
.top_box07_in h2 {
 margin: 0 0 10px 0;
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 1200px)
----------------------------------------------------------- */

@media screen and (max-width: 1200px) {
 /*==================その他(～1200px)==================*/
 /*==================見出し(～1200px)==================*/
 /*==================content01,02(～1200px)==================*/
 
 .top_box02 {
  background: url("../asset/top_bg01.png") no-repeat 70% 0;
  background-size: cover;
 }
 .top_box04 {
  background: url("../asset/top_bg02.png") no-repeat 36% 0;
  background-size: cover;
 }
 /*==================content下層(～1200px)==================*/
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 1000px)
----------------------------------------------------------- */

@media screen and (max-width: 1000px) {
 /* =====================================
11. full 1000px
===================================== */
 
 .content_width_full.under .contents_block {
  margin: 0;
 }
 .content_width_full .parts {
  background: none;
 }
 /*==================追記(～1000px)==================*/
 /*==================content01,02(～1000px)==================*/
 
 .top_box01_in h2 {
  font-size: 19px;
 }
 .top_box01 .box_top .ul_check {
  min-height: 264px;
 }
 .top_box01 .box_bottom .ul_check {
  min-height: 271px;
 }
 .top_box01_in .box_bottom > *:first-child + * h2 {
  font-size: 16px;
 }
 .top_box02_in h2 {
  font-size: 30px;
 }
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 767px)
----------------------------------------------------------- */

@media screen and (max-width: 767px) {
 /* =====================================
3. bt 767px
===================================== */
 
 .gnv_tmp_detail a {
  width: auto;
  margin: 0 auto;
  float: none;
 }
 /* =====================================
4. base template 767px
===================================== */
 
 .text_box {
  float: right;
  width: 67%;
 }
 .b_11_2_in span img,
 .b_11 .b_11_in span img {
  margin: 0 1em 1em 0;
 }
 /* =====================================
9. other 767px
===================================== */
 /* 9-1. before-after -------------------------- */
 
 .ba_box {
  background: url("http://www.ikebukuro-cd.jp/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;
 }
 /* =====================================
11. full 767px
===================================== */
 
 .content_width_full .b_10.b_10_column3 div.column_blank,
 .content_width_full .b_11_2.b_11_2_column3 div.column_blank,
 .content_width_full .b_11.b_11_column3 div.column_blank,
 .content_width_full .b_11_3.b_11_3_column3 div.column_blank {
  display: block !important;
 }
 /* =====================================
13. singlebox 767px
===================================== */
 /* 13-4. common column -------------------------- */
 
 .singlebox2,
 .singlebox3,
 .singlebox4 {
  width: 100% !important;
  padding: 0;
 }
 .singlebox2 .b_11_2_in,
 .singlebox3 .b_11_2_in,
 .singlebox4 .b_11_2_in {
  padding: 5px;
 }
 .singlebox2 .b_11_2_in span img,
 .singlebox3 .b_11_2_in span img,
 .singlebox4 .b_11_2_in span img {
  margin: 0;
 }
 /*==================追記(～767px)==================*/
 
 .mb_h3 {
  margin-bottom: 13px!important;
 }
 .mb_h4 {
  margin-bottom: 10px!important;
 }
 .mb_h5 {
  margin-bottom: 8px!important;
 }
 .mb01 {
  margin-bottom: 20px!important;
 }
 .mb02 {
  margin-bottom: 33px!important;
 }
 .mb03 {
  margin-bottom: 45px!important;
 }
 br.br01 {
  display: none;
 }
 table {
  font-size: 13px;
 }
 ul.ul01 li {
  display: block;
 }
 .b_11_2_in span img,
 .b_11 .b_11_in span img {
  margin: 0 0 10px;
  width: 100%;
 }
 #news h2,
 h2.titleBg,
 .static #content h2.titleBg,
 .gnv_tmp_h3_bg h3,
 .blog #content .contentArea h3 {
  font-size: 19px;
 }
 ul.ul_check {
  display: inline-block;
 }
 .number_p {
  font-size: 17px;
  line-height: 1.8;
  margin: 0;
 }
 .top_img01 a {
  width: 90%;
 }
 .text_box {
  width: 100%;
 }
 .img_w_auto01 .b_11_2_in span img,
 .img_w_auto01 .b_11 .b_11_in span img {
  float: none!important;
  margin: 0 auto 10px;
  width: auto;
 }
 /*==================content01,02(～767px)==================*/
 
 .gnv_tmp_width_1000 {
  width: 96%;
 }
 .top_box01_in {
  max-width: 400px;
  width: 90%;
 }
 .top_box01_in .box01 {
  float: none;
  margin: 0 0 30px;
  width: 100%;
 }
 .top_box01 .box_top .ul_check,
 .top_box01 .box_bottom .ul_check {
  min-height: 0;
 }
 .top_box02_in h2,
 .top_box04_in h2 {
  font-size: 24px;
 }
 .top_box03_in {
  max-width: 400px;
  width: 90%;
 }
 .top_box03_in > *:first-child .box01,
 .top_box03_in > *:first-child+* .box01,
 .top_box03_in > *:first-child+*+* .box01 {
  min-height: 0;
 }
 .top_box03_in .box_l {
  float: none;
  margin: 0 0 30px;
  width: 100%;
 }
 .top_box03_in .box_r {
  float: none;
  margin: 0 0 0px;
  width: 100%;
 }
 .top_box04 {
  background: url("../asset/top_bg02.png") no-repeat scroll 28% 0;
  background: cover;
 }
 .top_box05_in {
  width: 90%;
 }
 .top_box05 .b_11_2_in span img {
  float: none;
  margin: 0 auto 20px;
  max-width: 300px;
  width: 100%;
 }
 .top_box05_in .text_box {
  float: none;
  width: 100%;
 }
 .top_box05_in .text_box .link_btn {
  margin: 0 auto;
 }
 .top_box06_in {
  width: 90%;
 }
 .top_box06.b_10.b_10_column3 div.column_c,
 .top_box06.b_10.b_10_column3 div.column_l,
 .top_box06.b_10.b_10_column3 div.column_r {
  float: none;
  margin: 0 auto 15px;
  max-width: 300px;
  width: 100%;
 }
 .top_box06.b_10.b_10_column3 div.column_r {
  margin: 0 auto;
 }
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 640px)
----------------------------------------------------------- */

@media screen and (max-width: 640px) {
 /*==================その他(～640px)==================*/
 /*==================見出し(～640px)==================*/
 /*==================content01,02(～640px)==================*/
 
 .top .contents01 .col_box .col_content p.lead_txt {
  font-size: 20px;
 }
 /*==================content下層(～640px)==================*/
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 600px)
----------------------------------------------------------- */

@media screen and (max-width: 600px) {
 /* =====================================
10. MAP 600px
===================================== */
 
 .gnv_tmp_map {
  position: relative;
  padding-bottom: 80%;
  /* これが縦横比 */
  
  height: 0;
  overflow: hidden;
  margin-left: 15px;
  margin-right: 15px;
 }
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 560px)
----------------------------------------------------------- */

@media screen and (max-width: 560px) {
 /*==================その他(～560px)==================*/
 /*==================見出し(～560px)==================*/
 /*==================content01,02(～560px)==================*/
 /*==================content下層(～560px)==================*/
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 480px)
----------------------------------------------------------- */

@media screen and (max-width: 480px) {
 /*==================その他(～480px)==================*/
 /*==================見出し(～480px)==================*/
 /*==================content01,02(～480px)==================*/
 
 .top_box02_in h2,
 .top_box04_in h2 {
  font-size: 19px;
 }
 /*==================content下層(～480px)==================*/
 
 .text_01,
 .text_02 {
  font-size: 20px;
 }
 .under_btn .link_btn{
max-width: 340px;
width: 100%;
margin: 0 auto;
}
.under_btn .link_btn:first-child{
float: none;
margin: 0 auto 10px;
}
.under_btn .link_btn:last-child{
float: none;
}
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 420px)
----------------------------------------------------------- */

@media screen and (max-width: 420px) {
 /*==================その他(～420px)==================*/
 /*==================見出し(～420px)==================*/
 /*==================content01,02(～420px)==================*/
 /*==================content下層(～420px)==================*/
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 360px)
----------------------------------------------------------- */

@media screen and (max-width: 360px) {
 /*==================その他(～360px)==================*/
 /*==================見出し(～360px)==================*/
 /*==================content01,02(～360px)==================*/
 /*==================content下層(～360px)==================*/
}
/* --------------------------------------------------------------------------------------------------------------------
■ @media screen and (max-width: 320px)
----------------------------------------------------------- */

@media screen and (max-width: 320px) {
 /*==================その他(～320px)==================*/
 /*==================見出し(～320px)==================*/
 /*==================content01,02(～320px)==================*/
 /*==================content下層(～480px)==================*/
}
/* --------------------------------------------------------------------------------------------------------------------
■ TELタグ設定
----------------------------------------------------------- */

a[href^="tel:"] {
 pointer-events: none;
}
@media screen and (max-width: 1000px) {
 a[href^="tel:"] {
  pointer-events: auto;
 }
}

/* 2025-05-31 */
div.message_box{
  display:flex;
}
div.message_box div.text_box{
  width:calc(70% - 10px);
  margin-right:10px;
  float:none;
}
div.message_box div.img_box{
  width:30%;
  float:none;
}
@media screen and (max-width: 640px){
  div.message_box{
    display:block;
  }
  div.message_box div.text_box{
    width:100%;
    margin-right:0px;
    float:none;
  }
  div.message_box div.img_box{
    width:100%;
    float:none;
  }
}
/* 2025-05-31 */
