@charset "utf-8";
/*===========================
add
===========================*/
/* 商品名の改行（エンター）をサイト上で有効にする */
.item-name-box a {
    white-space: pre-wrap;
}
/* color:var(--basic-color); で利用 */ :root {
    --basic-color: #6cb7f5;
}
/* color:var(--basic-colorSub); で利用 */ :root {
    --basic-colorSub: #E1F0FD;
}
/* color:var(--basic-color2); で利用 */ :root {
    --basic-color2: #F5AA6C;
}
/*
rgba変換ジェネレーター
https://generator.web-alpha.info/rgba/index.php
*/
.fcBasic {
    color: var(--basic-color);
}
ul.fixRightBnr li.ameba a {
    background-color: #fa6218;
}
.boxFrame {
    border: 3px solid var(--basic-color);
    background: rgba(255, 255, 255, .8);
}
@media screen and (max-width: 600px) {
    h4 {
        font-size: 1.1em;
    }
    h4:after {
        bottom: -12px;
        height: 2px;
    }
}
.catch2 {
    color: var(--basic-color);
}
.catch3 {
    color: var(--basic-color);
    font-weight: bold;
}
.catch4 {
    color: #ff2020;
    font-weight: bold;
    font-size: 1.3em;
    margin-bottom: 0.5em;
    line-height: 1.4em;
}
.txtIconBlock {
    background-color: var(--basic-color);
}
.txtIconM {
    background-color: var(--basic-color);
}
.txtIconPoint {
    background-color: var(--basic-color);
}
.txtBnr a {
    background-color: var(--basic-color);
}
.txtBnr2 a {
    background-color: var(--basic-color);
}
.txtBnrBlock a {
    background-color: var(--basic-color2);
}
.txtBnrBlock2 a {
    background-color: var(--basic-color2);
}
.txtBnrTel a {
    background-color: var(--basic-color);
}
/*----------
flow
----------*/
.area_flowC .inner_flow .largeTxt {
    color: var(--basic-color);
}
/*----------
faq
----------*/
.question-title:before {
    background: var(--basic-color); /*要調整*/
}
.answer-text:before {
    background: var(--basic-color2); /*要調整*/
}
/*----------
table
----------*/
/* 普通のtable */
table.table2 th {
    background-color: var(--basic-colorSub); /*要調整*/
    color: #000000; /*要調整*/
}
/* 縦に並ぶtable */
table.table3 th {
    background-color: var(--basic-colorSub); /*要調整*/
    color: #000000; /*要調整*/
}
table td.tdColor {
    background-color: #fffbf8; /*要調整*/
}
table td.price {
    text-align: right;
}
/*----------
list
----------*/
ol.liNum li:before {
    background: var(--basic-color);
}
ol.liNumS li:before, ol.liNumS2 li:before {
    background: var(--basic-color);
}
ul.liCircle li::before, ul.liInline li::before, ul.liInline2Div li::before, ul.liInline3Div li::before, ul.liInline4Div li::before {
    background-color: var(--basic-color);
}
ul.liCheck li:before, ul.liCheckInline li:before, ul.liCheck2Div li:before, ul.liCheck3Div li:before, ul.liCheck4Div li:before {
    color: var(--basic-color);
}
ul.liBox li {
    background-color: var(--basic-color);
}
/*---------------
幅100％Flex画像
---------------*/
.contents-text h3::before {
    color: rgba(29, 42, 124, .2); /* 要調整 */
}
/*---------------
幅100％Flex(旧型)
---------------*/
.flex_box h3 {
    color: var(--basic-color);
}
/*---------------
ビフォーアフター
---------------*/
.imgBF .txtBef {
    background: rgba(187, 152, 70, .7); /* 要調整 */
}
.imgBF .txtAft {
    background: rgba(243, 82, 10, .8); /* 要調整 */
    /*  background: rgba(198,9,23,.8); */
}
/*---------------
施工内容
---------------*/
.boxConst {
    border: dashed 1px #CBB69C; /* 要調整 */
    padding: 1.5em 1.5em 1.2em 1.5em;
    background: rgba(254, 254, 254, .9); /* 要調整 */
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
}
.txtIcoConst {
    color: #FFF;
    background-color: #6A4E2F; /* 要調整 */
}
ul.liConst li {
    background-color: #f9f3d9; /* 要調整 */
}
/*---------------
上下中央揃え
---------------*/
.f-Vcenter-txtLeft {
    display: flex;
    justify-content: left;
    align-items: center;
    text-align: left;
    tbox-sizing: border-box;
}
/*---------------
代表氏名
---------------*/
.ceo_name {
    text-align: right;
    font-size: 110%;
}
/*---------------
特徴（番号付き）
---------------*/
.circle-big::before {
    background-color: var(--basic-color);
}
/*---------------
画像の上にテキストを重ねる
---------------*/
.waterMright {
    /* 背景黒 
    background: rgba(255,255,255,.2);
    */
    /* 背景白 */
    background: rgba(253, 253, 253, .8);
    z-index: 10;
    padding: 2em;
    margin-left: -15%;
    /* 背景黒 
    text-shadow: 0 0 1px #000,0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000,0 0 12px #000, 0 0 14px #000, 0 0 16px #000, 0 0 18px #000;
    */
    /* 背景白 */
    text-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff, 0 0 10px #fff, 0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
    border: 1px solid #f0f0f0;
}
.waterMright2 {
    /* 背景黒 
    background: rgba(255,255,255,.2);
    */
    /* 背景白 */
    z-index: 10;
    padding: 2em;
    margin-left: -15%;
    /* 背景黒 
    text-shadow: 0 0 1px #000,0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000,0 0 12px #000, 0 0 14px #000, 0 0 16px #000, 0 0 18px #000;
    */
    /* 背景白 */
    text-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff, 0 0 10px #fff, 0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
}
.waterMleft {
    /* 背景黒 
    background: rgba(255,255,255,.2);
    */
    /* 背景白 */
    background: rgba(253, 253, 253, .8);
    z-index: 10;
    padding: 2em;
    margin-right: -15%;
    /* 背景黒 
    text-shadow: 0 0 1px #000,0 0 2px #000, 0 0 4px #000, 0 0 6px #000, 0 0 8px #000,0 0 10px #000,0 0 12px #000, 0 0 14px #000, 0 0 16px #000, 0 0 18px #000;
    */
    /* 背景白 */
    text-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff, 0 0 10px #fff, 0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
    border: 1px solid #f0f0f0;
}
.waterMrightFeat {
    background: rgba(253, 253, 253, .9);
    z-index: 10;
    padding: 2em 3em 4em 3em;
    margin-left: -15%;
    text-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff, 0 0 10px #fff, 0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
    border: 1px solid #f0f0f0;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.waterMleftFeat {
    background: rgba(253, 253, 253, .9);
    z-index: 10;
    padding: 2em 3em 4em 3em;
    margin-right: -15%;
    text-shadow: 0 0 1px #fff, 0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff, 0 0 10px #fff, 0 0 12px #fff, 0 0 14px #fff, 0 0 16px #fff, 0 0 18px #fff;
    border: 1px solid #f0f0f0;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
}
.waterFeatTxt {
    writing-mode: vertical-lr;
    color: #999;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 600;
    margin-bottom: 2em;
    font-size: 0.9em;
}
.text-shadow-non {
    text-shadow: none !important;
}
.waterTit {
    font-size: 2.2em;
    line-height: 1.2em;
    margin-bottom: 0.8em;
    padding-left: 1em;
    text-indent: -0.5em;
}
.waterTitMark {
    font-size: 80%;
    color: var(--basic-color);
    display: inline-block;
    padding-right: 0.4em;
    vertical-align: top;
    position: relative;
    top: 0.2em;
}
.boxDummy {
    text-align: center;
    background-color: #CCC;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    box-sizing: border-box;
    padding: 1em;
}
@media screen and (max-width: 768px) {
    .f-item1-2-t1, .f-item1-3-t1, .f-item2-3-t1, .f-item1-4-t1, .f-item3-4-t1, .f-item1-5-t1, .f-item2-5-t1, .f-item3-5-t1, f-item4-5-t1, .f-item1-6-t1 {
        width: 100%;
    }
    .f-item1-3-t2, .f-item1-4-t2, .f-item1-5-t2, .f-item1-6-t2 {
        width: 49%;
    }
    .f-wrap-cen .f-item1-3-t2 {
        margin: 0 3px 30px 3px;
    }
    .f-item1-5-t3, .f-item1-6-t3 {
        width: 31%;
    }
}
@media only screen and (max-width: 600px) {
    .f-item1-2, .f-item1-3, .f-item1-3n2, .f-item2-3, .f-item1-4, .f-item3-4, .f-item1-5, .f-item2-5, .f-item3-5, .f-item4-5, .f-item1-6 {
        width: 100%;
        margin-bottom: 30px;
    }
    .f-wrap-cen .f-item1-3-t2 {
        margin: 0 0 30px 0;
    }
    .f-item1-3-t2, .f-item1-4-t2, .f-item1-5-t2, .f-item1-6-t2, .f-item1-5-t3, .f-item1-6-t3 {
        width: 100%;
        margin-bottom: 30px;
    }
    .f-item1-2-USU {
        box-sizing: border-box;
        margin-bottom: 10px;
    }
    .waterMright, .waterMright2 {
        padding: 1.5em 1em;
        margin-left: 0;
    }
    .waterMleft {
        padding: 1.5em 1em;
        margin-right: 0;
    }
    .waterMrightFeat {
        padding: 1.5em 1em;
        margin-left: 0;
    }
    .waterMleftFeat {
        padding: 1.5em 1em;
        margin-right: 0;
    }
    .waterFeatTxt {
        writing-mode: horizontal-tb;
        margin-bottom: 0.8em;
    }
    .waterTit {
        font-size: 1.6em;
        line-height: 1.2em;
        margin-bottom: 0.8em;
        padding-left: 1em;
        text-indent: -0.5em;
    }
    .spOrder1 {
        order: 1;
    }
    .spOrder2 {
        order: 2;
    }
    .spOrder3 {
        order: 3;
    }
    .spOrder4 {
        order: 4;
    }
    .spOrder5 {
        order: 5;
    }
    .spOrder6 {
        order: 6;
    }
}
/*---------------
box03
---------------*/
.box03 .in01 {
    display: flex;
    border-bottom: #eeeeee solid 2px;
    padding-bottom: 40px;
    margin-bottom: 40px;
}
@media screen and (max-width: 600px) {
    .box03 .in01 {
        display: block !important;
        padding-bottom: 40px;
        margin-bottom: 40px;
    }
}
.box03 .in01:last-child {
    border: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.box03 .st {
    background-color: var(--basic-color);
    width: 130px;
    height: 130px !important;
    text-align: center;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    position: relative;
}
@media screen and (max-width: 600px) {
    .box03 .st {
        width: 100px;
        height: 100px !important;
        margin: 0 auto 30px;
    }
}
.box03 .st .st-box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.box03 .st .st-box p {
    font-size: 3.5em;
    color: #fff;
    font-weight: bold;
}
@media screen and (max-width: 600px) {
    .box03 .st .st-box p {
        font-size: 2.5em;
    }
}
.box03 .st .title {
    font-size: 1.5em !important;
    margin-bottom: 15px;
    margin-top: -20%;
}
@media screen and (max-width: 600px) {
    .box03 .st .title {
        margin-bottom: 0;
        margin-top: -25%;
        font-size: 1.0em !important;
    }
}
.box03 .de01 {
    padding: 0 10px 0;
    margin-left: 50px;
    box-sizing: border-box;
}
@media screen and (max-width: 768px) {
    .box03 .de01 {
        width: 75%;
        margin: 0 0 0 auto;
    }
}
@media screen and (max-width: 600px) {
    .box03 .de01 {
        width: 100%;
        margin: 0 !important;
    }
}
@media screen and (max-width: 600px) {
    .box03 .de01 .catch2 {
        text-align: center;
        font-size: 1.5em;
    }
}
.box03 .contactBtnWrap {
    text-align: left;
}
@media screen and (max-width: 600px) {
    .box03 .contactBtnWrap {
        text-align: center;
    }
}
.box03 .contactBtnWrap .contactBtn {
    margin-bottom: 0;
}
@media screen and (max-width: 768px) {
    .box03 .contactBtnWrap .contactBtn {
        margin-bottom: 10px;
    }
    .box03 .contactBtnWrap .contactBtn:nth-child(n+3) {
        padding-bottom: 0;
    }
}
/*---------------
add
---------------*/
.no_text_shadow {
    text-shadow: none !important;
}
.on_text_shadow {
    text-shadow: 0 0 2px #fff, 0 0 4px #fff, 0 0 6px #fff, 0 0 8px #fff, 0 0 10px #fff, 0 0 12px #fff;
}
.no_box_shadow {
    box-shadow: none !important;
}
a:hover {
    cursor: pointer;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    -moz-opacity: 0.9;
    -khtml-opacity: 0.9;
    opacity: 0.8;
    zoom: 1;
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}
ul.liArrow, ul.liArrowInline, ul.liArrow2Div, ul.liArrow3Div, ul.liArrow4Div {
    padding-left: 1em;
}
ul.liArrow li, ul.liArrowInline li, ul.liArrow2Div li, ul.liArrow3Div li, ul.liArrow4Div li {
    position: relative;
    padding-left: 0.4em;
    display: inline-block;
    vertical-align: top;
}
ul.liArrow li:before, ul.liArrowInline li:before, ul.liArrow2Div li:before, ul.liArrow3Div li:before, ul.liArrow4Div li:before {
    font-family: "Font Awesome 5 Free";
    content: '\f35a';
    color: var(--basic-color);
    position: absolute;
    left: -1em;
    top: 0;
}
ul.liArrowInline li {
    margin-right: 1.5em;
}
ul.liArrow2Div li {
    width: 48%;
}
ul.liArrow3Div li {
    width: 30%;
}
ul.liArrow4Div li {
    width: 22%;
}
@media only screen and (max-width: 600px) {
    ul.liArrowInline li, ul.liArrow2Div li, ul.liArrow3Div li, ul.liArrow4Div li {
        width: 100%;
        box-sizing: border-box;
        margin-right: 0;
    }
}