/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Feb 26 2024 | 09:49:30 */
@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;600;700&display=swap');

.custom {
    padding-right: -16px !important;
    padding-left: -16px !important;
    margin-right: -16px !important;
    margin-left: -16px !important;
    font-family: 'Noto Sans JP', sans-serif;
}
.content-style .custom p, .content-style .custom ul {
    margin: 0;
}
/*===■base========================================*/
.custom figure {
    margin-top: 0 !important;
    margin-bottom: 0;
}
.custom p {
    padding-right: 16px;
    padding-left: 16px;	
}
/*===■all=========================================*/
.custom .cl {
    clear: both;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    height: 1px;
    line-height: 0px;
}
.custom .oflow {
    overflow: hidden;
    _zoom: 1;
}
.custom a {
    color: #E51A38;
}
a:hover {
    text-decoration: none;
}
/*===■txt=========================================*/
.custom p.txtbase {
    font-size: 4.1vw;
    line-height:1.7;
    padding-right: 5vw;
    padding-left: 5vw;
}
.custom p.txtright {
    text-align: right;
}
.custom p.txtcenter {
    text-align: center;
}
.custom .txtjs {
    text-align: justify;
    text-justify: inter-ideograph;
}
.custom .txt_ls01 {
    letter-spacing: 0;
}
.custom .txt_ls02 {
    letter-spacing: 0;
}
.custom .txt_ls03 {
    letter-spacing: -0.1em;
}
.custom .txt_ls04 {
    letter-spacing: -0.1em;
}
.custom .txt_ls05 {
    letter-spacing: -0.02em;
}
/*===■section======================================*/
.custom section {
    margin-top: 0;
    margin-bottom: 7vw;
    /*border-top: solid 1px red;
    border-bottom: solid 1px blue;*/
}
.custom section:last-of-type {
    margin-bottom: 0;
}
/*===■fixed========================================*/
.custom .fixed_m {
    margin-top: 1.5em;
}
.custom .fixed_m p.caption {
    text-align: center;
    font-size: 4.5vw;
    line-height:1.6;
    font-weight: 600;
    margin: 0 !important;
}
.centerfx {
    text-align: center;
    margin-bottom: 1em !important;
}
/*===■pc sp========================================*/
.custom .pc {
    display: none;
}
.custom .sp {
    display:block; 
}
/*===■sp===========================================*/
.custom img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
}
/*===■layout=======================================*/
.centerb0 {
    text-align: center;
    margin-bottom: 0 !important;
}
.centerb1 {
    text-align: center;
    margin-bottom: 0.5em !important;
}
.centerb2 {
    text-align: center;
    margin-bottom: 1em !important;
}
.centerb3 {
    text-align: center;
    margin-bottom: 1.5em !important;
}
.centerb4 {
    text-align: center;
    margin-bottom: 2em !important;
}
/*===■txt color=======================================*/
.txtred {
    color: #C03232;
}
/*===■txt w===========================================*/
.txtbold6 {
    font-weight: 600;
}
.txtbold {
    font-weight: 700;
}
/*===■txtsize=========================================*/
.txtmic {
    font-size: 65%;
}
.txtmin {
    font-size: 90%;
}
.txtsmal {
    font-size: 110%;
}
.txtmid {
    font-size: 120%;
}
.txtbig {
    font-size: 130%;
}
.txtlg {
    font-size: 180%;
}
/*===■p caption========================================*/
p.caption {
    text-align: right;
    padding-top: 5px;
    padding-bottom: 10px;
    font-size: 60%;
    margin-top: 0px;
    margin-bottom: 0px;
    margin-right: 10px !important;
    padding-right: 10px !important;
}
/*===■txt family=======================================*/
.txtnoto {
    font-family: 'Noto Serif JP', sans-serif;
}
/*===■txt bg===========================================*/
.txtbg08 { /*薄め黄*/
    background: linear-gradient(transparent 70%, #FFFF84 70%);
    padding: 0 0.2em 0 0.2em;
}
.voice_txtbg01 { /*薄め黄*/
    background: linear-gradient(transparent 70%, #FEF47E 70%);
    padding: 0 0 0 0.1em;
}
/*===■txtborder========================================*/
.txtborder {
    border-bottom: solid 2px #333333;
    padding-bottom: 1px;
}
/*===■table cel========================================*/
table td.cel1 {
    width: 10%;
}
table td.cel2 {
    width: 20%;
}
table td.cel3 {
    width: 30%;
}
table td.cel4 {
    width: 40%;
}
table td.cel5 {
    width: 50%;
}
table td.cel6 {
    width: 60%;
}
table td.cel7 {
    width: 70%;
}
table td.cel8 {
    width: 90%;
}
table td.cel9 {
    width: 90%;
}
table td.nrap {
    white-space: nowrap;
}
table td.do01 {
    border: 1px dotted #EADDB2;
}
/*===div_cf===========================================*/
.custom .div_cf:after {
    content:"";
    display:block;
    clear:both;
}
/*===■img============================================*/
img.img_w00 {/* 100-100*/
    width: 100%;
    height: auto;
}
img.img_w01 {/* 80-70*/
    width: 80%;
    height: auto;
}
img.img_w02 {/* 98-94*/
    width: 98%;
    height: auto;
}
img.img_w03 {/* 100-94*/
    width: 100%;
    height: auto;
}
img.img_w04 {/* 92-91*/
    width: 92%;
    height: auto;
}
img.img_w05 {/* 96-96*/
    width: 96%;
    height: auto;
}
img.img_w06 {/* 96-94*/
    width: 96%;
    height: auto;
}
img.img_w07 {/* 98-94*/
    width: 98%;
    height: auto;
}
img.img_w08 {/* 92-100*/
    width: 92%;
    height: auto;
}
img.img_w09 {/* 94-100*/
    width: 94%;
    height: auto;
}
img.img_w10 {/* 96- 100*/
    width: 96%;
    height: auto;
}
img.img_w15 {/* 96-96*/
    width: 92%;
    height: auto;
}
/*===■img==============================================*/
img.img_block {/* 96-96*/
    display: block;
    margin: 0 auto 0 auto;
}
.title_btm01 {/*h2 h3 h4*/
    margin-bottom: 1em !important;
}
.title_btm02 {
    margin-bottom: 2em !important;
}
.title_btm03 {
    margin-bottom: 3em !important;
}
/*===■hr .content-style hr ============================*/
.costom hr {
    margin: 0px;
    padding: 0px;
    height: 0px;
    border: 0px;
}
/*===■ midashi_title ==================================*/
.midashi_title {
    font-size: 6vw !important;
    line-height: 1.2 !important;
    font-weight: 600;
    margin-bottom: 0.3em !important;
    font-family: 'Noto Serif JP', sans-serif;
}
.midashi_title span { 
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
}
.midashi_title span::before,
.midashi_title span::after {
    content: '' !important;
    width: 0.05em !important;
    height: 2.5em !important;
    background-color: #333333 !important;
}
.midashi_title span::before {
    margin-right: 1em !important;
    transform: rotate(-25deg) !important;
}
.midashi_title span::after {
    margin-left: 1em !important;
    transform: rotate(25deg) !important;
}

/* ######################################################### */
/* #################### ■H2 reset ######################### */
/* ######################################################### */
h2.reset {
    font-size: unset;
    border-top-width: 0px;
    border-bottom-width: 0px;
    border-top-style: none;
    border-bottom-style: none;
    background-color: transparent;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 0;
}
h2.reset::after {
    content: none;
    /*display: none;*/
    background-color: transparent;
}
h2:before {
    content: none;
    /*display: none;*/
    background-color: transparent;
}
h2.title01_img01 {
    margin: 0 auto 0 auto;
} 
h2.title01_img01a {
    width: 94%;
    margin: 0 auto 0.5em auto;
} 

/* ######################################################### */
/* #################### ■H3 reset ######################### */
/* ######################################################### */
h3.reset {
    font-size: unset;
    color: #333;
    border-top-width: 0px;
    border-bottom-width: 0px;
    border-top-style: none;
    border-bottom-style: none;
    background-color: transparent;
    position: relative;
    width: 100%;
    margin: 0px;
    padding: 0px;
    border-radius: initial;
    overflow: visible;
}
h3.reset::after {
    content: none;
    /*display: none;*/
}
h3.title01_img01 {
    margin: 0 auto 0 auto;
}
  
/* ######################################################### */
/* #################### ■H4 reset ######################### */
/* ######################################################### */
h4.reset {
    font-size: unset;
    color: #333;
    font-weight: normal;
    border-top-width: 0px;
    border-bottom-width: 0px;
    border-top-style: none;
    border-bottom-style: none;
    background-color: transparent;
    position: relative;
    width: 100%;
    margin: 0px;
    padding: 0px;
}
h4.reset::after {
    content: none;
}

/*===■main ================================*/
p.note_main {
    font-size: 50%;
    text-align: right;
    padding: 0 1.5em 3em 0 !important;
}

/*=========================================*/
/*=== ■H2 bg_care_headingIN ■汎用2行=====*/
/*=========================================*/
.bg_care_headingIN2 {/*h2*/
    position: relative;
    width: 100%;
    /*height: 0;*/
    margin: 1em auto 0.8em auto;
    background: url(/wpcms/custom/images/bg_catch_title.png) no-repeat left top;
    padding-top: calc(100%*185/730);
    background-size: contain;
}
.bg_care_headingIN2 .care_headingIN2 {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    padding: 0;
    text-align: center;
    font-size: 6vw;
    line-height: 1.5;
    color: #44250C;
    font-weight: 600 !important;
    font-family: 'Noto Serif JP', sans-serif;
}
/*=== ■care02================================*/
.bg_care02 {
    width: 92%;
    margin: 1.2em auto 1.3em auto;
    display: -webkit-flex;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.bg_care02 .items {
    flex: 0 0 48%;
    margin-bottom: 0.8em;
}
.bg_care02 .items img.ph {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}
/* .bg_care02 .items:last-child {
    flex: 0 0 48%;
    margin: auto;
} */
/*===■voice ===============================*/
.voice_title {/*h2*/
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 7.5vw !important;
    line-height: 1.4 !important;
    font-weight: 600;
    text-align: center;
    margin-bottom: 0.5em !important;
}
.voice_title span.txtsmal{
    font-size: 80%;
}
.bg_voice { 
    width: 94%;
    margin: 0 auto 1em auto;
    padding: 0.3em;
    background: url(/wpcms/custom/images/bg_review.png) repeat left;
    background-size: 50px auto;
}
.bg_voice p.note {
    text-align: right;
    padding: 0;
    font-size: 50%;
    margin: 0;
}
.bg_paper {
    width: 100%;
    border: solid 1px #E1E1E1;
    padding: 1em 1em 0.6em 1em;
}
/*===■ voice_flex=======================*/
.voice_flex {
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin: 0 auto 0.5em auto;
}
.voice_flex .itemsL {
    width: 100%;
}
.voice_flex .itemsL img {
    width: 60%;
    margin: 0 auto 0 auto;
    display: block;
}
.voice_flex .itemsL p.name {
    font-size: 3.6vw;
    line-height: 1.5;
    padding: 0.4em 0.2em 0.5em 0.5em;
    margin-top: 0.6em;
    margin-bottom: 0.6em;
    background-color: #FFFFFF;
    text-align: center;
    width: 100%;
}
.voice_flex .itemsR {
    width: 100%;
}
.voice_flex .itemsR p {
    font-size: 3.6vw;
    line-height: 1.7;
    margin: 0;
    padding: 0;
    text-align: justify;
    text-justify: inter-ideograph;
}
.voice_flex .itemsR p:last-of-type {
    /*padding-bottom: 0 !important;*/
}
hr.voice {
 　 background-color:rgba(0,0,0,0);
    background-image: none;
    height:0px;
    border:none;
    border-top-width: 1px !important;
    border-top-style: dotted !important;
    border-top-color: #DCD7D3 !important;
    margin: 1vw auto 1vw auto;
}
/*=== ■bg_review============================*/
.bg_review {
    position: relative;
    width: 94%;
    margin: 1.5em auto 1.5em auto;
}
.bg_review img {
   width: 100%;
}
.bg_review p {
    position: absolute;
    bottom: 3%;
    right: 5%;
    margin:0;
    padding:0;
    font-size: 2vw;
    line-height: 1.4;
}
/*============================================*/
/*=== ■ex01_title ■汎用=====================*/
/*============================================*/
.ex01_title {/*h3*/
    width: 100%;
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 5.7vw !important;
    line-height: 1.4;
    font-weight: 600 !important;
    text-align: center;
    margin-bottom: 0.5em !important;
}
/*============================================*/
/*=== ■frame01 ■汎用========================*/
/*============================================*/
div.frame01 {
    width: 90%;
    margin: 0 auto 1.3em auto;
    box-shadow: inset 0 0 0px 4px rgba(255,255,255,0.5);
    border:1px #E0BD92 solid;
}
div.frame01 img {
    width: 100%;
    position: relative;
    z-index: -1;
}
/*=========================================*/
/*=== ■line_deco ■汎用===================*/
/*=========================================*/
hr.line_deco {
    background-image: none;
    height: 1px;
    background-image: linear-gradient(to right, #E2CE7E, #E2CE7E 2px, transparent 2px, transparent 4px) !important;
    background-repeat: repeat-x !important;
    background-position: left top !important;
    background-size: 4px 1px !important;
    margin: 2vw auto 2vw auto;
}
/*=== ■camp_title============================*/
.camp_title {/*h2*/
    font-size: 5.8vw !important;
    line-height: 1.3 !important;
    font-weight: 600;
    margin-bottom: 0.5em !important;
    font-family: 'Noto Serif JP', sans-serif;
}
.camp_title span {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.camp_title span::before,
.camp_title span::after {
    content: '' !important;
    width: 0.05em !important;
    height: 2.5em !important;
    background-color: #333333 !important;
}
.camp_title span::before {
    margin-right: 0.8em !important;
    transform: rotate(-25deg) !important;
}
.camp_title span::after {
    margin-left: 0.6em !important;
    transform: rotate(25deg) !important;
}
/*=== ■bg_camp============================*/
.bg_camp {
    position: relative;
    width: 94%;
    /*height: 0;*/
    margin: 0 auto 1em auto;
    background: url(/wpcms/custom/images/bg_camp.png) no-repeat left top;
    padding-top: calc(100%*545/730);/*580x0.94=545*/
    background-size: contain;
}
.bg_camp img.btn {/*h2*/
    position: absolute;
    width: 88%;
    top: 83%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
/*=== ■bg_camp_re============================*/
.bg_camp_re {
    position: relative;
    width: 94%;
    /*height: 0;*/
    margin: 0 auto 1em auto;
    background: url(/wpcms/custom/images/bg_camp_re.png) no-repeat left top;
    padding-top: calc(100%*545/730);/*580x0.94=545*/
    background-size: contain;
}
.bg_camp_re img.btn {/*h2*/
    position: absolute;
    width: 88%;
    top: 83%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
/*=== ■txt_trouble01====================================*/
.bg_txt_trouble01 {
    width: 100%;
    margin: 0 auto 0 auto;
    position: relative;
    background: url(/wpcms/custom/images/bg_trouble.png) no-repeat left top;
    background-size: contain;
}
.bg_txt_trouble01:before {
    content: "";
    display: block;
    padding-top: calc(100%*665/730);
}
div.txt_troubleIN01 {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    padding: 0 !important;
    margin: 0 !important;
    width: 94%;
}
.txt_troubleIN01 ul {
    padding: 2vw 2vw 0 8vw;
    margin: 0;
}
.txt_troubleIN01 ul li {
    position: relative;
    font-size: 3.7vw;
    line-height: 1.4;
    list-style-type: none !important;
    padding: 0.6em 0 0.6em 0.5em;
    background-image: linear-gradient(to right, #94A2A9, #94A2A9 2px, transparent 2px, transparent 5px);
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: 5px 2px;
    font-weight: 600;
    text-shadow: 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF;
}
.txt_troubleIN01 ul li:last-of-type {
    border-bottom: 0;
}
.txt_troubleIN01 ul li:before {
    position: absolute;
    content: '';
    display: inline-block;
    background: url(/wpcms/custom/images/txt_check.png) no-repeat left top;
    background-size: contain;
    left: -4.5vw;
    top: 2.4vw;
    width: 4vw;
    height: 4vw;
}
/*==========================================*/
/*=== ■H2 bg_cause_headingIN ■汎用========*/
/*==========================================*/
.bg_cause_headingIN {
    position: relative;
    width: 100%;
    /*height: 0;*/
    margin-right: auto;
    margin-left: auto;
    background: url(/wpcms/custom/images/bg_cause_title.png) no-repeat left top;
    padding-top: calc(100%*210/730);
    background-size: contain;
}
.bg_cause_headingIN .cause_headingIN {/*h2*/
    position: absolute;
    top: 45%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    padding: 0;
    text-align: center;
    width: 100%;
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 7.2vw;
    line-height: 1.4;
    font-weight: 600;
    text-shadow: 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF;
}
/*=== ■bg_approach====================================*/
.bg_approach {
    width: 100%;
    margin: 2em auto 1.5em auto;
    padding: 2em 0;
    background-color: #FEF9ED;
}
.bg_approach span.txtdeco {
    border-top: solid 2px #44250C;
    border-bottom:  solid 2px #44250C;
    padding: 0.3em 0.3em;
    display:inline-block;
    margin-bottom: 0.4em;
}
.bg_approach span.txtbig {
    font-size: 175%;
}
.approach_title {/*h3*/
    width: 100%;
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 5vw !important;
    line-height: 1.3;
    color: #44250C !important;
    font-weight: 600 !important;
    text-align: center;
    margin-bottom: 0.5em !important;
}
.bg_approach p {
    font-size: 4.1vw;
    line-height: 1.7;
    padding-right: 6vw;
    padding-left: 6vw;
    margin-bottom: 1em !important;
}
.bg_approach p:last-of-type {
    margin-bottom: 0 !important;
}
/*=== ■bg_aftercare================================*/
.bg_aftercare {
    width: 100%;
    margin: 0 auto 2em auto;
}
.bg_aftercare span.txtdeco {
    border-top: solid 1px #44250C;
    border-bottom: solid 1px #44250C;
    padding: 0.1em 0.3em;
    display:inline-block;
    margin-bottom: 0.5em;
}
.bg_aftercare span.txtbig {
    font-size: 165%;
}
.aftercare_title {
    width: 100%;
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 5.7vw !important;
    line-height: 1.4;
    font-weight: 600 !important;
    text-align: center;
    margin-bottom: 0.8em !important;
}
.bg_aftercare p {
    font-size: 4.1vw;
    line-height: 1.7;
    padding-right: 5vw;
    padding-left: 5vw;
    margin-bottom: 1em !important;
}
.bg_aftercare p:last-of-type {
    margin-bottom: 0 !important;
}
/*=== ■bg_staff==================================*/
.bg_staff {
    width: 100%;
    margin: 0 auto 2em auto;
}
.bg_staff p {
    font-size: 4.1vw;
    line-height: 1.7;
    margin: 0;
    padding: 0 5vw 1em 5vw;
}
.bg_staff p:last-of-type {
    padding-bottom: 0 !important;
}
/*==========================================*/
/*=== ■H2 bg_reco_headingIN ■汎用========*/
/*==========================================*/
.bg_reco_headingIN {
    position: relative;
    width: 100%;
    /*height: 0;*/
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 0.6em;
    background: url(/wpcms/custom/images/bg_reco_title.png) no-repeat left top;
    padding-top: calc(100%*214/730);/*214*/
    background-size: contain;
}
.bg_reco_headingIN .reco_headingIN {/*h2*/
    position: absolute;
    top: 48%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    text-align: center;
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 5.6vw;
    line-height: 1.4;
    font-weight: 600 !important;
    color: #512E17;
    background: radial-gradient(#947040 0%, #512E17 50%);
    -webkit-background-clip: text; 
    /*-webkit-text-fill-color: transparent;
    width: auto;
    white-space: nowrap;*/
}
span.kaigyo {
    display: inline-block;
}
.bg_reco_headingIN .reco_headingIN span.txtbig {
    font-size: 150%;
}
/*===■ bg_reco============================*/
.bg_reco {
    width: 100%;
    margin: 0 auto 0 auto;
    padding-bottom: 0;
    background: -webkit-linear-gradient(top, #FFF 0%, #fdfcf1 10%, #fdfcf1 90%, #FFFFFF 100%);/*FFF9E9  FCF8ED*/
    background: linear-gradient(#FFF 0%, #fdfcf1 10%, #fdfcf1 90%, #FFFFFF 100%);
}
.bg_recobox { 
    width: 94%;
    margin: 0 auto 1.1em auto;
    padding-bottom: 1em;
    border: solid 2px #C2AF4F;
    background-color: #FDF9EB;
}
.bg_recobox:last-of-type {
    margin-bottom: 1.5em;
}
.bg_recobox p {
    font-size: 3.6vw;
    line-height: 1.7;
    margin: 0;
    padding: 0 1.1em 1em 1.1em;
}
.bg_recobox p:last-of-type {
    padding-bottom: 0 !important;
}
/*===■ bg_res5===========================*/
.bg_res5 {
    width: 100%;
    margin: 0 auto 0 auto;
}
/*----------*/
.bg_res5paper {
    width: 94%;
    margin: 0 auto 2em auto;
    padding: 0 0 1em 0;
    background-color: #FFFFFF;
    box-shadow: 0 0 3px rgba(224,189,146,0.8);
    position: relative;
    z-index: 0;
}
.bg_res5paper:last-of-type {
    margin-bottom: 0;
}
/*----------*/
.bg_res5title {
    width: 100%;
    padding: 13vw 1em 1em 1em;
    background: -webkit-linear-gradient(top, #FEF9ED, #FEF9ED 80%, #FFFFFF 100%);
    background: linear-gradient(#FEF9ED, #FEF9ED 80%, #FFFFFF 100%);
}
.bg_res5paper .itemsL {
    text-align: center;
    position: absolute;
    top: -18px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.bg_res5paper .itemsL img {
    width: 35%;
}
.bg_res5title .itemsR {
    text-align: center;
}
.bg_res5paper .heading_point {/*h3*/
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 5.2vw;
    line-height: 1.3;
    font-weight: 600 !important;
}
.bg_res5paper .heading_point span.txtbig {
    font-size: 120%;
}
.bg_res5paper .heading_point span.txtmin {
    font-size: 90%;
}
.bg_res5paper .heading_point span.txtbold {
    font-weight: 900;
}
/*----------*/
.res5_box {
    width: 92%;
    margin: 0 auto 1em auto;
    box-shadow: inset 0 0 0px 4px rgba(255,255,255,0.5);
    border:1px #E2C39E solid;
}
.res5_box img {
    width: 100%;
    position: relative;
    z-index: -1;
}
/*----------*/
.bg_res5paper .bg_listframe {
    width: 98%;
    margin: 0 auto 0 auto;
}
.bg_listframe p {
    font-size: 3.8vw;
    line-height: 1.7;
    padding: 0 0.8em 0 0.8em;
    margin: 0 !important;
}
.bg_listframe p.btm {
    padding-bottom: 1.4em !important;
}
/*==========================================*/
/*=== ■ bg_point8_headingIN ■汎用2行======*/
/*==========================================*/
.bg_point8_headingIN {/*h2*/
    width: 100%;
    /*height: 0;*/
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 4vw;
    background: url(/wpcms/custom/images/title_btm.png) no-repeat left bottom;
    background-size: 100% auto;
}
.bg_point8_headingIN .point8_headingIN {
    text-align: center;
    font-size: 6vw;
    line-height: 1.3;
    font-weight: 600;
    padding: 0 0 0.4em 0;
}
.bg_point8_headingIN .txtbig{
    font-size: 140%;
}
.bg_point8_headingIN .txtno{
    font-size: 180%;
    vertical-align: -3px;
}
/*=== ■point8================================*/
.bg_point8 {
    width: 100%;
}
.point8_IN {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 92%;
    margin: 0 auto 3.5vw auto;
}
.point8_IN:last-of-type {
    margin-bottom: 0 !important;
}
.point8_IN .items {
    width: 48%;
    border: solid 2px #E2CF7F;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    padding-top: 0.6em;
}
.description {
  flex-grow: 1; 
}
.point8_IN .items img.ph {
    width: 90%;
    height: auto;
    display: block;
    margin: 0 auto 0 auto;
    margin-top: auto;
}
.point8_IN .items .title_box {
    text-align: center;
    padding: 0.5em 0 0.5em 0;
    background-color: #FCF9E5;
    border-radius: 0 0 10px 10px;
}
.point8_IN .items .title_box p.title {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 4.8vw;
    line-height: 1.5;
    color: #333333;
    font-weight: 600;
    padding: 0;
}
/*==========================================*/
/*=== ■ bg_room_headingIN ■汎用2行========*/
/*==========================================*/
.bg_room_headingIN {/*h2*/
    width: 100%;
    /*height: 0;*/
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 4vw;
    background: url(/wpcms/custom/images/title_btm.png) no-repeat left bottom;
    background-size: 100% auto;
}
.bg_room_headingIN .room_headingIN {
    text-align: center;
    font-size: 6vw;
    line-height: 1.4;
    font-weight: 600;
    padding: 0 0 0.5em 0;
}
.bg_room_headingIN .txtmid{
    font-size: 90%;
}
.bg_room_headingIN .txtbig{
    font-size: 140%;
}
/*==========================================*/
/*=== ■ bg_flow_headingIN ■汎用2行======*/
/*==========================================*/
.bg_flow_headingIN {/*h2*/
    width: 100%;
    /*height: 0;*/
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 4vw;
    background: url(/wpcms/custom/images/title_btm.png) no-repeat left bottom;
    background-size: 100% auto;
}
.bg_flow_headingIN .flow_headingIN {
    text-align: center;
    font-size: 8.6vw;
    line-height: 1;
    font-weight: 600;
    padding: 0 0 0.5em 0;
}
.bg_flow_headingIN .txtmid{
    font-size: 50%;
}
/*===■ bg_flow=================================*/
p.flow_info {
    font-size: 4.1vw;
    line-height: 1.4;
    margin: 0 auto 0.6em auto !important;
    padding: 0;
    text-align: center;
}
.flow_IN {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 92%;
    margin: 0 auto 1em auto;
}
.flow_IN:last-of-type {
    margin-bottom: 0;
}
.flow_IN .items {
    width: 46%;
    position: relative;
}
.flow_title {
    width: 100%;
    margin-top: 0.4em;
    text-align: center;
}
.flow_title .txt {
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 4.4vw;
    line-height: 1.3;
    font-weight: 600;
    color: #333333;
}
.flow_title span.txtsmal {
    font-size: 80%;
    line-height: 1.2;
}
.flow_IN .items figure {
    padding: 0;
    margin: 0 0 0.5em 0;
}
.flow_IN .items img.ph {
    width: 100%;
    height: auto;
    box-shadow: 0 0 4px rgba(204,204,204,0.8);
}
.flow_IN .arrow:after {
    position: absolute;
    left: -16%;
    top: 25%;
    content: '';
    background: url(/wpcms/custom/images/flow_arr01.png) no-repeat left top;
    background-size: contain;
    width: 33%;
    height: 33%;
}
/*==■ bg_happy01==========================*/
.bg_happy_color {
    position: relative;
    width: 100%;
    /*height: 0;*/
    background: url(/wpcms/custom/images/bg_happy.png) no-repeat left top;
    background-size: 100% auto;
    padding-bottom: 2em;
}
p.note_happy {
    font-size: 60%;
    text-align: right;
    padding: 0 1.5em 0 0 !important;
    text-shadow: 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF;
}
.bg_happy_color .box01 {
    width: 92%;
    padding: 3.8vw 2vw;
    margin: 0.7em auto 0.7em auto;
    background-color: #FFFFFF;
    box-shadow: 0 0 4px rgba(166,203,129,0.6);
}
.bg_happy_color ul {
    padding: 0 3vw 0 7vw;
    margin: 0;
}
.bg_happy_color ul li {
    font-size: 4.1vw;
    line-height: 1.5;
    list-style-type: none !important;
    font-weight: 600;
    padding: 0.3em 0 0.3em 0.3em;
    position: relative;
    text-shadow: 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF, 0 0 6px #FFFFFF;
    background-image: linear-gradient(to right, #A6CB81, #A6CB81 2px, transparent 2px, transparent 5px);
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: 5px 2px;
}
.bg_happy_color ul li:before {
    content: '';
    display: inline-block;
    background: url(/wpcms/custom/images/txt_check01.png) no-repeat left top;
    background-size: cover;
    width: 4.4vw;
    height: 4.4vw;
    position: absolute;
    top: 2vw;
    left: -4.4vw;
}
.bg_happy_color ul li:last-of-type {
    padding-bottom: 0;
    background-image: none;
}
.bg_happy_color img.end {
    vertical-align: bottom;
}
.bg_happy_color span.ten {
    display: inline !important;
}
/*===■ qa===========================================*/
.faq_title {/*h2*/
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 7.5vw !important;
    line-height: 1.4 !important;
    font-weight: 600;
    text-align: center;
}
.box_qa {
    width: 93%;
    margin: 1em auto 2em auto;
}
.box_qa:last-of-type {
    margin-bottom: 1.5em !important;
}
.box_qa .title_q {/*3*/
    font-family: 'Noto Serif JP', sans-serif;
    font-size: 3.9vw;
    line-height: 1.7;
    position: relative;
    text-align: justify;
    font-weight: 700;
    padding: 0 3vw 0 7vw;
}
.box_qa .title_q::before {
    display: inline-block;
    position: absolute;
    width: 6vw;
    height: 6vw;
    left: 0;
    border-radius: 100%;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 4.5vw;
    line-height: 1.4;
    text-align: center;
}
.box_qa .title_q::before {
    background-color: #EC7E7E;
    content: 'Q';
    font-family: "Arial";
}
.box_qa p {
    font-size: 3.9vw;
    line-height: 1.6;
    position: relative;
    text-align: justify;
    margin: 0;
    padding: 0 3vw 0 7vw;
}
.box_qa p.title_a::before {
    display: inline-block;
    position: absolute;
    width: 6vw;
    height: 6vw;
    left: 0;
    border-radius: 100%;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 4.5vw;
    line-height: 1.4;
    text-align: center;
    background-color: #A8D06C;
    content: 'A';
    font-family: "Arial";
}
hr.qa {
    background-image: none;
    height: 1px;
    background-image: linear-gradient(to right, #E2CE7E, #E2CE7E 2px, transparent 2px, transparent 4px) !important;
    background-repeat: repeat-x !important;
    background-position: left top !important;
    background-size: 4px 1px !important;
    margin: 2vw auto 2vw auto;
}
.btn_qa_more {
    display: block;
    width: 80%;
    /*height: 0;*/
    margin-right: auto;
    margin-left: auto;
}
/*==========================================*/
/*=== ■ bg_access_headingIN ■汎用2行======*/
/*==========================================*/
.bg_access_headingIN {/*h2*/
    width: 100%;
    /*height: 0;*/
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 3.5vw;
    background: url(/wpcms/custom/images/title_btm.png) no-repeat left bottom;
    background-size: 100% auto;
}
.bg_access_headingIN .access_headingIN {
    text-align: center;
    font-size: 	7.5vw;
    line-height: 1.5;
    font-weight: 600;
    font-family: 'Noto Serif JP', sans-serif;
    padding: 0 0 0.5em 0;
}
/*===■ access=================================*/
.access_IN {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 92%;
    margin: 0 auto 1em auto;
}
.access_IN:last-of-type {
    margin-bottom: 0;
}
.access_IN .items {
    width: 46%;
    position: relative;
}
.access_IN .items p.com {
    font-size: 3.5vw;
    line-height: 1.5;
    margin: 0;
    padding: 0;
    text-align: center;
}
.access_IN .items figure {
    padding: 0;
    margin: 0 0 0.5em 0;
}
.access_IN .items img.ph {
    width: 100%;
    height: auto;
    box-shadow: 0 0 4px rgba(204,204,204,0.8);
}
.access_IN .arrow:after {
    position: absolute;
    left: -15%;
    top: 30%;
    content: '';
    background: url(/wpcms/custom/images/flow_arr01.png) no-repeat left top;
    background-size: contain;
    width: 33%;
    height: 33%;
}
/*===■ bg_message===========================================*/
.bg_message {
    width: 94%;
    margin: 0 auto 1em auto;
    /*height: 0;*/
    background: url(/wpcms/custom/images/bg_message.png) repeat-y left top;
    background-size: 100%;
}
.bg_message img.btm {
    vertical-align: bottom;
}
.bg_message .note_paper {
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 0 1.4em 0 1.4em;
}
.bg_message .note_line {
    background: linear-gradient(#F7EDAC 1px, transparent 1px);
    background-size: auto 2rem;
    line-height: 2rem;
    overflow: hidden;
}
.bg_message .note_line p {
    font-size: 3.5vw;
    line-height: 2rem;
    margin: 0 !important;
    padding: 0 !important;
}
.bg_message .note_line p.btm {
    margin-bottom: 0 !important;
}
.bg_message .note_line p:last-of-type {
    margin-bottom: 1em !important;
}








/* ####################################################################### */
/* #### Extra small devices (phones, less than 768px) #################### */
/* ####################################################################### */
/* No media query */
/* Small devices (tablets, 768px and up) */

@media (min-width: 768px) {

h2.title01_img01 {
    /*width: 100%;
    margin-bottom: 0;*/
}
/*===□txt================================================*/
.custom p.txtbase {
    font-size: 2.5vw;
    line-height: 1.6;
}
.custom p.txtcent {
    font-size: 1em;
    padding-top: 0.3em;
    margin-top: 0.3em;
}	
/*===□section===========================================*/
.custom section {
    margin-top: 0px;
    margin-bottom: 2.5em;
}
/*==□pc sp==============================================*/
.custom .pc {
    display: none;/*★汎用　block★*/
}
.custom .sp {
    display: none;/*★汎用　none★　static*/
}
/*=========================================*/
/*=== □H2 bg_care_headingIN □汎用2行=====*/
/*=========================================*/
.bg_care_headingIN2 {/*h2*/
    margin: 1em auto 1em auto;
    /*background: url(/wpcms/custom/images/bg_catch_title.png) no-repeat left top;
    padding-top: calc(100%*185/730);
    background-size: contain;*/
}
.bg_care_headingIN2 .care_headingIN2 {
    font-size: 5vw;
    line-height: 1.5;
}
/*=== □care02===============================*/
.bg_care02 {
    width: 90%;
    margin: 1.5em auto 1.5em auto;
}
.bg_care02 .items {
    margin-bottom: 1.2em;
}
/*===□ voice================================*/
.voice_flex .itemsR p {
    font-size: 2.5vw;
    line-height: 1.6;
}
.voice_flex .itemsL p.name {
    font-size: 2.7vw;
    line-height: 1.5;
}
.bg_paper {
    padding: 1.4em 1.4em 1em 1.4em;
}
/*============================================*/
/*=== □ex01_title □汎用=====================*/
/*============================================*/
.ex01_title {/*h3*/
    width: 100%;
    font-size: 5vw !important;/*2.6*/
    line-height: 1.4;
    margin-bottom: 0.3em !important;
}
/*============================================*/
/*=== □frame01 □汎用========================*/
/*============================================*/
div.frame01 {
    width: 90%;
    margin: 0 auto 1.3em auto;
}
/*=== camp_title==============================*/
.camp_title {/*h2*/
    font-size: 5vw !important;
    line-height: 1.3 !important;
}
/*=== □txt_trouble01====================================*/
.txt_troubleIN01 ul {
    padding: 2vw 2vw 0 6vw;
}
.txt_troubleIN01 ul li {
    position: relative;
    font-size: 1.7rem;
    line-height: 1.4;
    padding: 0.5em 0 0.6em 0.5em;
}
.txt_troubleIN01 ul li:last-of-type {
    border-bottom: 0;
}
.txt_troubleIN01 ul li:before {
    position: absolute;
    content: '';
    display: inline-block;
    background: url(/wpcms/custom/images/txt_check.png) no-repeat left top;
    background-size: contain;
    left: -3.2vw;
    top: 2vw;
    width: 3.7vw;
    height: 3.7vw;
}
/*==========================================*/
/*=== □H2 bg_cause_headingIN □汎用========*/
/*==========================================*/
.bg_cause_headingIN .cause_headingIN {/*h2*/
    font-size: 5.8vw;
    line-height: 1.4;
}
/*=== □bg_approach====================================*/
.bg_approach {
    margin: 2.5em auto 1.5em auto;
    padding: 2.5em 0;
}
.approach_title {/*h3*/
    width: 100%;
    font-size: 4vw !important;
    line-height: 1.3;
    margin-bottom: 0.5em !important;
}
.bg_approach p {
    font-size: 2.5vw;
    line-height: 1.6;
    margin-bottom: 1em !important;
}
.bg_approach p:last-of-type {
    margin-bottom: 0 !important;
}
/*=== □bg_aftercare====================================*/
.bg_aftercare {
    margin: 0 auto 3em auto;
}
.aftercare_title {
    font-size: 5vw !important;
    line-height: 1.4;
    margin-bottom: 0.5em !important;
}
.bg_aftercare p {
    font-size: 2.5vw;
    line-height: 1.6;
    margin-bottom: 1em !important;
}
.bg_aftercare p:last-of-type {
    margin-bottom: 0 !important;
}
/*=== □ bg_staff============================*/
.bg_staff {
    margin: 1em auto 3.5em auto;
}
.bg_staff p {
    font-size: 2.5vw;
    line-height: 1.6;
}
/*==========================================*/
/*=== □H2 bg_reco_headingIN □汎用=========*/
/*==========================================*/
.bg_reco_headingIN .reco_headingIN {/*h2*/
    font-size: 4.9vw;
    line-height: 1.3;
}
/*===□ bg_reco=========================*/
.bg_recobox { 
    width: 94%;
    margin: 0 auto 1.5em auto;
    padding-bottom: 1em;
    border: solid 3px #C2AF4F;
}
.bg_recobox:last-of-type {
    margin-bottom: 1.5em;
}
.bg_recobox p {
    font-size: 2.5vw;
    line-height: 1.7;
    margin: 0;
    padding: 0 1.1em 1em 1.3em;
}
.bg_recobox p:last-of-type {
    padding-bottom: 0 !important;
}
/*===□ bg_res5===========================*/
.bg_res5 {
    /*padding-bottom: 1.5em;*/
}
/*----------*/
.bg_res5paper {
    width: 94%;
    margin: 0 auto 2.5em auto;
    padding: 0 0 1.4em 0;
}
.bg_res5paper:last-of-type {
    margin-bottom: 0;
}
/*----------*/
.bg_res5title {
    width: 100%;
    padding: 5.5em 1em 1em 1em;
}
.bg_res5paper .itemsL {
    position: absolute;
    top: -20px;
    left: 50%;
}
.bg_res5paper .itemsL img {
    width: 50%;
}
.bg_res5paper .heading_point {/*h3*/
    font-size: 4.4vw;
    line-height: 1.3;
}
/*----------*/
.res5_box {
    width: 90%;
    margin: 0 auto 1em auto;
}
/*----------*/
.bg_res5paper .bg_listframe {
    width: 98%;
    margin: 0 auto 0 auto;
}
.bg_listframe p {
    font-size: 2.6vw;
    line-height: 1.7;
    padding: 0 1.2em 0 1.2em;
}
.bg_listframe p.btm {
    padding-bottom: 1.4em !important;
}
/*==========================================*/
/*=== □ bg_point8_headingIN □汎用2行======*/
/*==========================================*/
.bg_point8_headingIN .point8_headingIN {
    font-size: 5vw;
    line-height: 1.2;
}
/*===□ point8================================*/
.point8_IN {
    width: 90%;
    margin: 0 auto 1.5em auto;
}
.point8_IN .items .title_box {
    padding: 0.8em 0 0.8em 0;
}
.point8_IN .items .title_box p.title {
    font-size: 3.1vw;
    line-height: 1.4;
    padding: 0;
}
/*==========================================*/
/*=== □ bg_room_headingIN □汎用2行========*/
/*==========================================*/
.bg_room_headingIN .room_headingIN {
    font-size: 5vw;
    line-height: 1.4;
}
.bg_room_headingIN .txtbig{
    font-size: 135%;
}
/*==========================================*/
/*=== □ bg_flow_headingIN □汎用2行========*/
/*==========================================*/
.bg_flow_headingIN .flow_headingIN {
    font-size: 6.4vw;
    line-height: 1.1;
    padding: 0 0 0.5em 0;
}
/*===□ bg_flow=============================*/
.flow_IN {
    width: 92%;
    margin-bottom: 1.5em;
}
.flow_title .txt {
    font-size: 3.4vw;
    line-height: 1.3;
}
/*===□ bg_happy01==========================*/
.bg_happy_color ul {
    padding: 0 0.5em 0 2.5em;
}
.bg_happy_color ul li {
    font-size: 2.7vw;
    line-height: 1.4;
    padding: 0.5em 0 0.5em 0.3em;
}
.bg_happy_color ul li:before {
    top: 1.5vw;
    left: -3.6vw;
    width: 3.4vw;
    height: 3.4vw;
}
.bg_happy_color span.ten {
    display: none !important;
}
/*===□ qa==================================*/
.faq_title {/*h2*/
    font-size: 6vw !important;
    line-height: 1.4 !important;
}
.box_qa {
    width: 93%;
    margin: 1.5em auto 2em auto;
}
.box_qa .title_q {/*3*/
    font-size: 2.6vw;
    line-height: 1.6;
    padding: 0 0 0 5vw;
}
.box_qa .title_q::before {
    width: 4vw;
    height: 4vw;
    font-size: 2.7vw;
    line-height: 1.6;
}
.box_qa p {
    font-size: 2.6vw;
    line-height: 1.6;
    padding: 0 0 0 5vw;
}
.box_qa p.title_a::before {
    width: 4vw;
    height: 4vw;
    font-size: 2.7vw;
    line-height: 1.6;
}
/*==========================================*/
/*=== □ bg_access_headingIN □汎用2行======*/
/*==========================================*/
.bg_access_headingIN .access_headingIN {
    font-size: 6vw;
    line-height: 1.5;
}
/*===□ access==============================*/
.access_IN {
    width: 96%;
    margin-bottom: 1.5em;
}
.access_IN .items p.com {
    font-size: 2.6vw;
    line-height: 1.5;
}
/*===□ bg_message==========================*/
.bg_message {
    width: 100%;
}
.bg_message .note_paper {
    width: 100%;
    margin: 0 auto 0 auto;
    padding: 0 1.8em 0 1.8em;
}
.bg_message .note_line {
    background-size: auto 3.2rem;
    line-height: 3.2rem;
}
.bg_message .note_line p {
    font-size: 2.6vw;
    line-height: 3.2rem;
    margin-bottom: 3.2rem !important;
    padding: 0 !important;
}
.bg_message .note_line p:last-of-type {
    margin-bottom: 1em !important;
}












}



/* ####################################################################### */
/* #### Medium devices (desktops, 992px and up)  ######################### */
/* ####################################################################### */

@media (min-width: 992px) {

.custom {/*左右調整*/
    padding-right: 0px !important;
    padding-left: 0px !important;
    margin-right: 0px !important;
    margin-left: 0px !important;
    font-feature-settings: normal !important;/*★★★normal */
}	
/*===txt================================================*/
.custom p.txtbase {
    font-size: 1.4rem;
    line-height: 1.7;
    padding-right: 0.8em;
    padding-left: 0.8em;
}
.custom p.txtcent {
    font-size: 1em;
    padding-top: 0.3em;
    margin-top: 0.3em;
}
.custom .txtjs {
    text-align: justify;
    text-justify: inter-ideograph;
}
.custom .txtjs_no {
    text-align: initial;/*none*/
    text-justify: none;
}
.custom .txt_ls01 {
    letter-spacing: -0.5em;
}
.custom .txt_ls02 {
    letter-spacing: -0.15em;
}
.custom .txt_ls03 {
    letter-spacing: -0.1em;
}
.custom .txt_ls04 {
    letter-spacing: -0.4em;
}
.custom .txt_ls05 {
    letter-spacing: -0.08em;
}
/*===section=========================================*/
.custom section {
    margin-top: 0px;
    margin-bottom: 3em;
}
/*===fixed===========================================*/
.custom .fixed_m {
    margin-top: 2em;
}
.custom .fixed_m p.caption {
    font-size: 1.8rem;
    line-height: 1.4;
}
.centerfx {
    text-align: center;
    margin-bottom: 1.5em !important;
}
/*===pc sp===========================================*/
.custom .pc {
    display: block;
}
.custom .sp {
    display: none;/*static*/
}
/*===layout===========================================*/
.centerb0 {
    text-align: center;
    margin-bottom: 0em !important;
}
.centerb1 {
    text-align: center;
    margin-bottom: 1em !important;
}
.centerb2 {
    text-align: center;
    margin-bottom: 2em !important;
}
.centerb3 {
    text-align: center;
    margin-bottom: 3.5em !important;
}
.centerb4 {
    text-align: center;
    margin-bottom: 4.5em !important;
}
.centertxtb1 {
    text-align: center;
    margin-bottom: 1em !important;
}
/*===img===============================================*/
img.img_w01 {/* 80- 70*/
    width: 70%;
    height: auto;
}
img.img_w02 {/* 98- 94*/
    width: 94%;
    height: auto;
}
img.img_w03 {/* 100- 94*/
    width: 94%;
    height: auto;
}
img.img_w04 {/* 92- 91*/
    width: 91%;
    height: auto;
}
img.img_w05 {/* 96- 96*/
    width: 96%;
    margin-right: auto;
    margin-left: auto;
}
img.img_w06 {/* 96- 94*/
    width: 94%;
    height: auto;
}
img.img_w07 {/* 98- 94*/
    height: auto;
    width: 94%;
}
img.img_w08 {/* 92- 100*/
    width: 100%;
    height: auto;
}
img.img_w09 {/* 94- 100*/
    width: 100%;
    height: auto;
}
img.img_w10 {/* 96- 100*/
    width: 100%;
    height: auto;
}
img.img_w15 {/* 96-96*/
    width: 96%;
    height: auto;
}
/*=== midashi_title ===================================*/
.midashi_title {
    font-size: 2.6rem !important;
    line-height: 1.2 !important;
    margin-bottom: 0.3em !important;
}
.midashi_title span { 
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
}
.midashi_title span::before,
.midashi_title span::after {
    content: '' !important;
    width: 0.05em !important;
    height: 2.3em !important;
}
.midashi_title span::before {
    margin-right: 0.8em !important;
    transform: rotate(-25deg) !important;
}
.midashi_title span::after {
    margin-left: 0.5em !important;
    transform: rotate(25deg) !important;
}
/* ######################################################### */
/* #################### H2 reset ########################### */
/* ######################################################### */
h2.main__heading__title {
    /*font-size: 2em !important;*/
}	
h2.title01_img01 {
    width: 100%;
    margin-bottom: 0em;
}
h2.title01_img01a {
    width: 100%;
    margin-bottom: 1em;
}
/* ######################################################### */
/* #################### H3 reset ########################### */
/* ######################################################### */
h3.title01_img01 {
    width: 100%;
    margin-bottom: 0em;
}
/* ######################################################### */
/* #################### H4 reset ########################### */
/* ######################################################### */
h4.title01_img01 {
    width: 100%;
    margin-bottom: 0em;
}
/*===main ================================*/
p.note_main {
    font-size: 65%;
    padding: 0 1.5em 5.5em 0 !important;
}
/*=========================================*/
/*=== H2 bg_care_headingIN 汎用2行=========*/
/*=========================================*/
.bg_care_headingIN2 {/*h2*/
    background: url(/wpcms/custom/images/bg_catch_title.png) no-repeat left top;
    width: 100%;
    margin: 1.5em auto 1.5em auto;
}
.bg_care_headingIN2 .care_headingIN2 {
    position: absolute;
    font-size: 2.8rem;
    line-height: 1.4;
}
/*=== care02================================*/
.bg_care02 {
    width: 100%;
    margin-top: 2em;
    margin-bottom: 3em;
}
.bg_care02 .items {
    flex: 0 0 50%;
    margin-bottom: 1.1em;
}
.bg_care02 .items img.ph {
    width: 345px;
    height: auto;
}
/* .bg_care02 .items:last-child {
    flex: 0 0 100%;
    margin: auto;
} */
/*==========================================*/
/*=== H2 bg_voice_headingIN 汎用============*/
/*==========================================*/
.bg_voice_headingIN {
    position: relative;
    width: 100%;
    margin-bottom: 2em;
}
.bg_voice_headingIN .voice_headingIN {/*h2*/
    position: absolute;
    top: 55%;
    left: 50%;
    font-size: 2.4rem;
    line-height: 1.3;
}
.bg_voice_headingIN .voice_headingIN span.ico_voice::before {
    margin-right: 0.2em;
    width: 4.5rem;
    height: 4.5rem;
}
/*===voice ===============================*/
.voice_title {/*h2*/
    font-size: 3.3rem !important;
    line-height: 1.4 !important;
}
.bg_voice {
    width: 100%;
    padding: 0.4em;
    margin-bottom: 1.5em;
}
.bg_paper {
    width: 100%;
    padding: 1.5em 1.5em 0.5em 1.5em;
}
.bg_voice p.note {
    padding: 0;
    font-size: 60%;
    margin-top: 1em;
    margin-bottom: 0.5em;
}
/*===voice_flex============================*/
.voice_flex {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-direction: row;
    align-items: stretch;
    width: 100%;
    margin: 0 auto 0.5em auto;
}
.voice_flex .itemsL {
    width: 30%;
    display: flex;
    flex-direction: column;
}
.voice_flex .itemsL img {
    width: 100%;
    display: inline;
}
.voice_flex .itemsL p.name {
    font-size: 1.1rem;
    line-height: 1.5 !important;
    padding: 0.6em 0.2em 0.6em 0.2em;
    margin-top: 0.7em;
    margin-bottom: 0 !important;
}
.voice_flex .itemsR {
    flex: 1;
    height: auto;
}
.voice_flex .itemsR p {/*h3*/
    font-size: 1.3rem;
    line-height: 1.6 !important;
    margin: 0;
    padding: 0 0 0 1em !important;
}
hr.voice {
    margin: 1em auto 1em auto !important;
}
/*===voice2 ===============================*/
.voice_title2 {/*h2*/
    font-size: 2rem !important;
    line-height: 1.2 !important;
}
.bg_voice2 {
    width: 98%;
    padding: 1.3em 1em 0.8em 1.2em;
}
.bg_voice2 p.note {
    text-align: right;
    font-size: 65%;
    padding: 0 0.8em 0 0;
}
/*===voice_flex2============================*/
.voice_flex2 {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap:wrap;
    width: 100%;
    margin: 0 auto 0.5em auto;
}
.voice_flex2 .itemsL {
    order: 1;
    width: 65%;
    height: auto;
    padding-right: 1em;
}
.voice_flex2 .itemsL p {
    font-size: 1.4rem;
    line-height: 1.5 !important;
}
.voice_flex2 .itemsR {
    order: 2;
    width: 35%;
    margin-bottom: 0;
}
.voice_flex2 .itemsR img {
    width: 100%;
}
.bg_voice2 .info {
    order: 3;
    width: 100%;
    margin: 0.9em 0 0 0;
    padding: 0.6em 0 0 0;
    background-image: linear-gradient(to right, #EBAF64, #EBAF64 2px, transparent 2px, transparent 4px), none !important;
    background-repeat: repeat-x;
    background-position: left top;
    background-size: 4px 2px;
}
.bg_voice2 .info p.case {
    font-size: 1.4rem;
    line-height: 1.4 !important;
    text-align: right;
}
hr.voice2 {
    margin: 1em auto 1em auto !important;
}
/*=== case_flex===汎用====================*/
.case_flex {
    font-size: 1.2rem;
    margin: 0.2em auto 0 auto;
}
.case_flex span.txtsmal {
    font-size: 100%;
}
/*=== bg_review============================*/
.bg_review {
    width: 100%;
    margin: 2em auto 3em auto;
}
.bg_review p {
    bottom: 4%;
    right: 5%;
    font-size: 0.8rem;
    line-height: 1.4;
}
/*========================================*/
/*=== ex01_title 汎用=====================*/
/*========================================*/
.ex01_title {/*h3*/
    font-size: 2.6rem !important;
    line-height: 1.4;
    margin-bottom: 0.5em !important;
}
/*========================================*/
/*=== frame01 汎用========================*/
/*========================================*/
div.frame01 {
    width: 96%;
    margin: 0 auto 1.3em auto;
    box-shadow: inset 0 0 0px 5px rgba(255,255,255,0.5);
    border:1px #E0BD92 solid;
}
/*=== camp_title==========================*/
.camp_title {/*h2*/
    font-size: 2.6rem !important;
    line-height: 1.3 !important;
    margin-bottom: 0.5em !important;
}
.camp_title span::before {
    margin-right: 0.8em !important;
    transform: rotate(-25deg) !important;
}
.camp_title span::after {
    margin-left: 0.5em !important;
    transform: rotate(25deg) !important;
}
/*=== bg_camp============================*/
.bg_camp {
    width: 100%;
    /*height: 0;*/
    padding-top: calc(100%*580/730);
    margin: 0 auto 1.5em auto;
}
.bg_camp img.btn {
    width: 676px;
    top: 83.5%;
}
/*=== bg_camp_re==========================*/
.bg_camp_re {
    width: 100%;
    /*height: 0;*/
    padding-top: calc(100%*580/730);
    margin: 0 auto 1.5em auto;
}
.bg_camp_re img.btn {
    width: 676px;
    top: 83.5%;
}
/*=== txt_trouble01=======================*/
.bg_txt_trouble01 {
    width: 100%;
    margin: 0 auto 0 auto;
}
div.txt_troubleIN01 {
    width: 90%;
}
.txt_troubleIN01 ul {
    padding: 1em 0 0 2.7em;
    margin: 0;
}
.txt_troubleIN01 ul li {
    position: relative;
    font-size: 1.6rem;
    line-height: 1.4;
    padding-top: 0.55em;
    padding-bottom: 0.6em;
    padding-left: 0.2em;
}
.txt_troubleIN01 ul li:before {
    position: absolute;
    content: '';
    display: inline-block;
    background: url(/wpcms/custom/images/txt_check.png) no-repeat left top;
    background-size: contain;
    left: -2.2rem;
    top: 14px;
    width: 30px;
    height: 30px;
}
/*==========================================*/
/*=== H2 bg_cause_headingIN 汎用============*/
/*==========================================*/
.bg_cause_headingIN .cause_headingIN {/*h2*/
    position: absolute;
    top: 45%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    font-size: 3.3rem;
    line-height: 1.3;
}
/*=== bg_approach===========================*/
.bg_approach {
    margin: 3em auto 2.5em auto;
    padding: 3.5em 0;
}
.bg_approach span.txtdeco {
    border-top: solid 2px #44250C;
    border-bottom:  solid 2px #44250C;
    padding: 0.3em 0.3em;
    margin-bottom: 0.4em;
}
.approach_title {/*h3*/
    font-size: 2.2rem !important;
    line-height: 1.3;
    margin-bottom: 0.5em !important;
}
.bg_approach p {
    font-size: 1.4rem;
    line-height: 1.7;
    padding-right: 1.4em;
    padding-left: 1.6em;
    margin-bottom: 1em !important;
}
.bg_approach p:last-of-type {
    margin-bottom: 0 !important;
}
/*=== bg_aftercare==========================*/
.bg_aftercare {
    margin: 0 auto 3.5em auto;
}
.bg_aftercare span.txtdeco {
    border-top: solid 1px #44250C;
    border-bottom:  solid 1px #44250C;
    padding: 0.1em 0.3em;
    display:inline-block;
    margin-bottom: 0.5em;
}
.bg_aftercare span.txtbig {
    font-size: 165%;
}
.aftercare_title {
    font-size: 2.6rem !important;
    line-height: 1.4;
    margin-bottom: 0.8em !important;
}
.bg_aftercare p {
    font-size: 1.4rem;
    line-height: 1.7;
    padding-right: 1.2em;
    padding-left: 1.2em;
    margin-bottom: 1em !important;
}
.bg_aftercare p:last-of-type {
    margin-bottom: 0 !important;
}
/*=== bg_staff=============================*/
.staff_title {/*h2*/
    font-size: 2.8rem !important;
    line-height: 1.3 !important;
}
/*------*/
.bg_staff {
    margin: 1em auto 3.5em auto;
}
.bg_staff p {
    font-size: 1.4rem;
    line-height: 1.7;
    padding: 0 0.8em 1.5em 0.8em;
}
/*==========================================*/
/*=== H2 bg_reco_headingIN 汎用=============*/
/*==========================================*/
.bg_reco_headingIN {
    width: 100%;
    margin-bottom: 1em;
}
.bg_reco_headingIN .reco_headingIN {/*h2*/
    top: 46%;
    left: 50%;
    font-size: 2.5rem;
    line-height: 1.3;
    width: 100%;
}
/*=== bg_reco=========================*/
.bg_reco {
    padding-bottom: 0;
    margin-bottom: 2em;
}
/*===bg_recobox =======================*/
.bg_recobox { 
    width: 678px;
    margin: 1em auto 1.5em auto;
    padding-bottom: 1.5em;
}
.bg_recobox p {
    font-size: 1.3rem;/*1.2*/
    line-height: 1.7 !important;
    text-align: justify;
    text-justify: inter-ideograph;
    padding: 0 1.3em 1em 1.3em;
}
/*==========================================*/
/*=== H2 bg_res5_headingIN 汎用=============*/
/*==========================================*/
.bg_res5_headingIN {
    width: 100%;
    /*height: 0;*/
    margin-bottom: 1.5em;
}
.bg_res5_headingIN .res5_headingIN {/*h2*/
    font-size: 2.5rem;
    line-height: 1.2;
}
.bg_res5_headingIN .txtno{
    font-size: 180%;
    vertical-align: -3px;
}
/*===bg_res5===============================*/
.bg_res5paper {
    width: 98%;
    margin: 0 auto 3em auto;
    padding-bottom: 1.7em;
}
.bg_res5paper .heading_point {/*h3*/
    font-size: 2.5rem;
    line-height: 1.3;
}
.bg_res5title {
    width: 100%;
    padding: 5em 0 1.5em 0;
}
.bg_res5paper .itemsL {
    top: -30px;
}
.bg_res5paper .itemsL img {
    width: 120px;
    height: 120px;
}
/*------------*/
.bg_res5paper .bg_listframe {
    width: 90%;
    padding: 0 0.1em 0 0;
}
.bg_listframe p {
    font-size: 1.3rem;
    line-height: 1.7;
    padding: 0 !important;
}
.bg_listframe p.btm {
    padding-bottom: 1.4em !important;
}
/*==========================================*/
/*=== H2 bg_point8_headingIN 汎用1行========*/
/*==========================================*/
.bg_point8_headingIN {/*h2*/
    width: 100%;
    margin-bottom: 2em;
}
.bg_point8_headingIN .point8_headingIN {
    font-size: 2.7rem;
    line-height: 1.2;
}
/*=== point8================================*/
.point8_IN {
    width: 95%;
    margin: 0 auto 1.3em auto !important;
}
.point8_IN .items {
    width: 335px;
    border: solid 2px #E2CF7F;
}
.point8_IN .items img.ph {
    width: 320px;
    /*height: auto;*/
}
.point8_IN .items .title_box {
    padding: 1em 0 1em 0;
}
.point8_IN .items .title_box p.title {
    font-size: 1.9rem;
    line-height: 1.4;
    padding: 0;
}
/*==========================================*/
/*=== H2 bg_room_headingIN 汎用1行==========*/
/*==========================================*/
.bg_room_headingIN {/*h2*/
    width: 100%;
    margin-bottom: 2em;
}
.bg_room_headingIN .room_headingIN {
    font-size: 2.7rem;
    line-height: 1.4;
}
.bg_room_headingIN .txtbig{
    font-size: 140%;
}
/*==========================================*/
/*=== H2 bg_flow_headingIN 汎用1行==========*/
/*==========================================*/
.bg_flow_headingIN {/*h2*/
    width: 100%;
    margin-bottom: 2em;
}
.bg_flow_headingIN .flow_headingIN {
    font-size: 3.3rem;
    line-height: 1.1;
    padding-bottom: 0.6em;
}
/*=== bg_flow==============================*/
.flow_IN {
    width: 96%;
    margin-bottom: 2em;
}
.flow_IN .items {
    width: 48%;
}
.flow_title {
    margin-top: 0.7em;
}
.flow_title .txt {
    font-size: 1.8rem;
    line-height: 1.4;
}
.flow_IN .items img.ph {
    width: 330px;
}
.flow_IN .arrow:after {
    left: -9%;
    top: 26%;
    width: 30%;
    height: 30%;
}
/*==bg_happy01=============================*/
p.note_happy {
    font-size: 65%;
}
.bg_happy_color {
}
.bg_happy_color .box01 {
    width: 92%;
    padding: 1.5em 0;
    margin-top: 1em;
    margin-bottom: 1em;
}
.bg_happy_color ul {
    padding: 0 1em 0 3.4em;
}
.bg_happy_color ul li {
    font-size: 1.4rem;
    line-height: 1.5;
    list-style-type: none;
    padding: 0 0 0.7em 0;
    background-image: none;
}
.bg_happy_color ul li:before {
    width: 30px;
    height: 30px;
    position: absolute;
    top: 3px;
    left: -35px;
}
.bg_happy_color span.ten {
    display: none !important;
}
/*=== qa===========================================*/
.faq_title {/*h2*/
    font-size: 3.3rem !important;
    line-height: 1.4 !important;
}
.box_qa {
    width: 94%;
    margin: 1.5em auto 3em auto;
}
.box_qa:last-of-type {
    margin-bottom: 1.5em !important;
}
.box_qa .title_q {
    font-size: 1.5rem;
    padding: 0 0 0 3rem;
}
.box_qa .title_q::before {
    width: 2.5rem;
    height: 2.5rem;
    left: 0;
    font-weight: 700;
    font-size: 1.1em;
    line-height: 1.6;
}
.box_qa p {
    font-size: 1.3rem;
    line-height: 1.6;
    padding: 0 0 0 3rem;
}
.box_qa p.title_a::before {
    width: 2.5rem;
    height: 2.5rem;
    left: 0;
    font-weight: 700;
    font-size: 1.1em;
    line-height: 1.8;
}
hr.qa {
    margin: 1em auto 1em auto;
}
.btn_qa_more {
    width: 556px;
}
/*==========================================*/
/*=== H2 bg_access_headingIN 汎用1行========*/
/*==========================================*/
.bg_access_headingIN {/*h2*/
    width: 100%;
    margin-bottom: 2em;
}
.bg_access_headingIN .access_headingIN {
    font-size: 3.3rem;
    line-height: 1.4;
}
/*=== access ==============================*/
.access_IN {
    width: 96%;
    margin-bottom: 1.7em;
}
.access_IN .items {
    width: 46%;
    border-radius: 10px;
}
.access_IN .items figure {
    margin: 0 0 0.7em 0;
}
.access_IN .items p.com {
    font-size: 1.3rem;
    line-height: 1.5;
}
.access_IN .arrow:after {
    left: -16%;
    top: 30%;
    width: 28%;
    height: 28%;
}
/*=== bg_message============================*/
.bg_message .note_paper {
    margin: 0 auto 0 auto;
    padding: 0 2em 0 2em;
}
.bg_message .note_line {
    background-size: auto 2.5rem;
    line-height: 2.5rem;
    overflow: hidden;
}
.bg_message .note_line p {
    font-size: 1.3rem;
    line-height: 2.5rem !important;
    margin-top: 0 !important;
    margin-bottom: 2.5rem !important;
    padding: 0 0.1rem 0 0.5rem !important;
}
.bg_message .note_line p.btm {
    margin-bottom: 0 !important;
}
.bg_message .note_line p:last-of-type {
    margin-bottom: 1em !important;
}











}
