/*
Theme Name: 3-column
*/
/*　グリッド　*/
body, html {
    margin: 0;
    padding: 0;
}
* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.shell {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
.shell p {
	margin-bottom: 30px;    
}
.shell figure {
	margin-bottom: 60px;    
}
.shell.reverse {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
}
.shell.nowrap-x {
    flex-wrap: nowrap;
}
.shell.left {
    justify-content: flex-start;
}
.shell.center, .shell.x-center {
    justify-content: center;
}
.shell.right {
    justify-content: flex-end;
}
.shell.fill, .shell.fill-x, .shell.split {
    justify-content: space-between;
}
.shell.equalize {
    justify-content: space-around;
}
.shell.top {
    align-items: flex-start;
}
.shell.middle, .shell.y-center {
    align-items: center;
}
.shell.baseline {
    align-items: baseline;
}
.shell.bottom {
    align-items: flex-end;
}
.shell > .grow-x {
    flex-grow: 1;
}
.stretch, .grow-y {
    align-self: stretch;
}
.solo, .full {
    width: 100%;
}
.duo, .half {
    width: 50%;
}
.trio, .one-third {
    width: calc(100% / 3);
}
.two-thirds {
    width: calc(100% / 3 * 2);
}
.quad, .quarter {
    width: 25%;
}
.three-quarters {
    width: 75%;
}
.penta, .twenty {
    width: 20%;
}
.thirty {
    width: 30%;
}
.forty {
    width: 40%;
}
.sixty {
    width: 60%;
}
.seventy {
    width: 70%;
}
.eighty {
    width: 80%;
}
.solo.gutter, .full.gutter {
    width: 98%;
    margin: 1em 1%;
}
.duo.gutter, .half.gutter {
    width: 48%;
    margin: 1em 1%;
}
.trio.gutter, .one-third.gutter {
    width: calc(94% / 3);
    margin: 1em 1%;
}
.two-thirds.gutter {
    width: calc(97% / 3 * 2);
    margin: 1em 1%;
}
.quad.gutter, .quarter.gutter {
    width: 23%;
    margin: 1em 1%;
}
.three-quarters.gutter {
    width: 73%;
    margin: 1em 1%;
}
.penta.gutter, .twenty.gutter {
    width: 18%;
    margin: 1em 1%;
}
.thirty.gutter {
    width: 28%;
    margin: 1em 1%;
}
.forty.gutter {
    width: 38%;
    margin: 1em 1%;
}
.sixty.gutter {
    width: 58%;
    margin: 1em 1%;
}
.seventy.gutter {
    width: 68%;
    margin: 1em 1%;
}
.eighty.gutter {
    width: 78%;
    margin: 1em 1%;
}
.centering {
    text-align: center;
}
.centering > * {
    margin-left: auto !important;
    margin-right: auto !important;
}
/* Universal Padding Class --- as you like */
.pd-around {
    padding: 1.5em 1.5em;
}
.pd-side {
    padding: 0 1.5em;
}
.pd-top-bottom {
    padding: 1.5em 0;
}
.pd-right {
    padding-right: 1.5em;
}
.pd-left {
    padding-left: 1.5em;
}
/* clearfix --- for use together with legacy float layout */
.clearfix:before, .clearfix:after {
    content: " ";
    display: table;
}
.clearfix:after {
    clear: both;
}
.clearfix {
    *zoom: 1;
}
.clear {
    clear: both;
    display: block;
    overflow: hidden;
    visibility: hidden;
    width: 0;
    height: 0;
}
/*** Media Query ***/
@media only screen and (max-width: 899px) {
    .shell.break900:not(.step) {
        flex-direction: column;
    }
    .shell.break900 > .solo, .shell.break900 > .full, .shell.break900 > .duo, .shell.break900 > .half, .shell.break900 > .trio, .shell.break900 > .one-third, .shell.break900 > .two-thirds, .shell.break900 > .quad, .shell.break900 > .quarter, .shell.break900 > .three-quarters, .shell.break900 > .penta, .shell.break900 > .twenty, .shell.break900 > .thirty, .shell.break900 > .forty, .shell.break900 > .sixty, .shell.break900 > .seventy, .shell.break900 > .eighty {
        width: 100%;
    }
    .shell.break900 > .solo.gutter, .shell.break900 > .full.gutter, .shell.break900 > .duo.gutter, .shell.break900 > .half.gutter, .shell.break900 > .trio.gutter, .shell.break900 > .one-third.gutter, .shell.break900 > .two-thirds.gutter, .shell.break900 > .quad.gutter, .shell.break900 > .quarter.gutter, .shell.break900 > .three-quarters.gutter, .shell.break900 > .penta.gutter, .shell.break900 > .twenty.gutter, .shell.break900 > .thirty.gutter, .shell.break900 > .forty.gutter, .shell.break900 > .sixty.gutter, .shell.break900 > .seventy.gutter, .shell.break900 > .eighty.gutter {
        width: 98%;
        margin: 1em 1%;
    }
    .shell.step {
        flex-direction: row;
        flex-wrap: wrap;
    }
    .shell.step > .duo, .shell.step > .half, .shell.step > .trio, .shell.step > .one-third, .shell.step > .two-thirds, .shell.step > .quad, .shell.step > .quarter, .shell.step > .three-quarters, .shell.step > .penta, .shell.step > .twenty, .shell.step > .thirty, .shell.step > .forty, .shell.step > .sixty, .shell.step > .seventy, .shell.step > .eighty {
        width: 50%;
    }
    .shell.step > .duo.gutter, .shell.step > .half.gutter, .shell.step > .trio.gutter, .shell.step > .one-third.gutter, .shell.step > .two-thirds.gutter, .shell.step > .quad.gutter, .shell.step > .quarter.gutter, .shell.step > .three-quarters.gutter, .shell.step > .penta.gutter, .shell.step > .twenty.gutter, .shell.step > .thirty.gutter, .shell.step > .forty.gutter, .shell.step > .sixty.gutter, .shell.step > .seventy.gutter, .shell.step > .eighty.gutter {
        width: 48%;
        margin: 1em 1%;
    }
}
/* Mobile Single Column ( like 7-10 inch Tablet ) */
@media only screen and (max-width: 768px) {
    .container, .wide-container {
        padding: 0 0.3em;
    } /* as you like */
    .shell.break768:not(.step) {
        flex-direction: column;
    }
    .shell.break768 > .solo, .shell.break768 > .full, .shell.break768 > .duo, .shell.break768 > .half, .shell.break768 > .trio, .shell.break768 > .one-third, .shell.break768 > .two-thirds, .shell.break768 > .quad, .shell.break768 > .quarter, .shell.break768 > .three-quarters, .shell.break768 > .penta, .shell.break768 > .twenty, .shell.break768 > .thirty, .shell.break768 > .forty, .shell.break768 > .sixty, .shell.break768 > .seventy, .shell.break768 > .eighty {
        width: 100%;
    }
    .shell.break768 > .solo.gutter, .shell.break768 > .full.gutter, .shell.break768 > .duo.gutter, .shell.break768 > .half.gutter, .shell.break768 > .trio.gutter, .shell.break768 > .one-third.gutter, .shell.break768 > .two-thirds.gutter, .shell.break768 > .quad.gutter, .shell.break768 > .quarter.gutter, .shell.break768 > .three-quarters.gutter, .shell.break768 > .penta.gutter, .shell.break768 > .twenty.gutter, .shell.break768 > .thirty.gutter, .shell.break768 > .forty.gutter, .shell.break768 > .sixty.gutter, .shell.break768 > .seventy.gutter, .shell.break768 > .eighty.gutter {
        width: 98%;
        margin: 1em 1%;
    }
    .shell:not(.keep) > .solo, .shell:not(.keep) > .full, .shell:not(.keep) > .duo, .shell:not(.keep) > .half, .shell:not(.keep) > .trio, .shell:not(.keep) > .one-third, .shell:not(.keep) > .two-thirds, .shell:not(.keep) > .quad, .shell:not(.keep) > .quarter, .shell:not(.keep) > .three-quarters, .shell:not(.keep) > .penta, .shell:not(.keep) > .twenty, .shell:not(.keep) > .thirty, .shell:not(.keep) > .forty, .shell:not(.keep) > .sixty, .shell:not(.keep) > .seventy, .shell:not(.keep) > .eighty {
        width: 100%;
        margin: 0;
    }
    .shell:not(.keep) > .solo.gutter, .shell:not(.keep) > .full.gutter, .shell:not(.keep) > .duo.gutter, .shell:not(.keep) > .half.gutter, .shell:not(.keep) > .trio.gutter, .shell:not(.keep) > .one-third.gutter, .shell:not(.keep) > .two-thirds.gutter, .shell:not(.keep) > .quad.gutter, .shell:not(.keep) > .quarter.gutter, .shell:not(.keep) > .three-quarters.gutter, .shell:not(.keep) > .penta.gutter, .shell:not(.keep) > .twenty.gutter, .shell:not(.keep) > .thirty.gutter, .shell:not(.keep) > .forty.gutter, .shell:not(.keep) > .sixty.gutter, .shell:not(.keep) > .seventy.gutter, .shell:not(.keep) > .eighty.gutter {
        width: 98%;
        margin: 1em 1%;
    }
    .shell.step {
        flex-direction: row;
        flex-wrap: wrap;
    }
    .shell.step > .duo, .shell.step > .half, .shell.step > .trio, .shell.step > .one-third, .shell.step > .two-thirds, .shell.step > .quad, .shell.step > .quarter, .shell.step > .three-quarters, .shell.step > .penta, .shell.step > .twenty, .shell.step > .thirty, .shell.step > .forty, .shell.step > .sixty, .shell.step > .seventy, .shell.step > .eighty {
        width: 50%;
    }
    .shell.step > .duo.gutter, .shell.step > .half.gutter, .shell.step > .trio.gutter, .shell.step > .one-third.gutter, .shell.step > .two-thirds.gutter, .shell.step > .quad.gutter, .shell.step > .quarter.gutter, .shell.step > .three-quarters.gutter, .shell.step > .penta.gutter, .shell.step > .twenty.gutter, .shell.step > .thirty.gutter, .shell.step > .forty.gutter, .shell.step > .sixty.gutter, .shell.step > .seventy.gutter, .shell.step > .eighty.gutter {
        width: 48%;
        margin: 1em 1%;
    }
    .shell.keep-half:not(.keep), .shell.keep-half:not(.keep) {
        flex-direction: row;
    }
    .shell.keep-half:not(.keep) > .solo, .shell.keep-half:not(.keep) > .full, .shell.keep-half:not(.keep) > .duo, .shell.keep-half:not(.keep) > .half, .shell.keep-half:not(.keep) > .trio, .shell.keep-half:not(.keep) > .one-third, .shell.keep-half:not(.keep) > .two-thirds, .shell.keep-half:not(.keep) > .quad, .shell.keep-half:not(.keep) > .quarter, .shell.keep-half:not(.keep) > .three-quarters, .shell.keep-half:not(.keep) > .penta, .shell.keep-half:not(.keep) > .twenty, .shell.keep-half:not(.keep) > .thirty, .shell.keep-half:not(.keep) > .forty, .shell.keep-half:not(.keep) > .sixty, .shell.keep-half:not(.keep) > .seventy, .shell.keep-half:not(.keep) > .eighty {
        width: 50%;
    }
    .shell.keep-half:not(.keep) > .solo.gutter, .shell.keep-half:not(.keep) > .full.gutter, .shell.keep-half:not(.keep) > .duo.gutter, .shell.keep-half:not(.keep) > .half.gutter, .shell.keep-half:not(.keep) > .trio.gutter, .shell.keep-half:not(.keep) > .one-third.gutter, .shell.keep-half:not(.keep) > .two-thirds.gutter, .shell.keep-half:not(.keep) > .quad.gutter, .shell.keep-half:not(.keep) > .quarter.gutter, .shell.keep-half:not(.keep) > .three-quarters.gutter, .shell.keep-half:not(.keep) > .penta.gutter, .shell.keep-half:not(.keep) > .twenty.gutter, .shell.keep-half:not(.keep) > .thirty.gutter, .shell.keep-half:not(.keep) > .forty.gutter, .shell.keep-half:not(.keep) > .sixty.gutter, .shell.keep-half:not(.keep) > .seventy.gutter, .shell.keep-half:not(.keep) > .eighty.gutter {
        width: 48%;
        margin: 1em 1%;
    }
    /* Universal padding class --- as you like */
    .pd-around {
        padding: 1.5em 1.5em;
    }
    .pd-side {
        padding: 0 1.5em;
    }
    .ttal {
        text-align: left !important;
    }
    .ttal:not(.pd-side) {
        padding: 0 1.5em;
    }
    .pd-around .ttal:not(.pd-side), .pd-side .ttal:not(.pd-side) {
        padding: 0;
    }
}
/* Traditional SmartPhone Portrait Size */
@media only screen and (max-width: 479px) {
    .shell:not(.keep), .shell.step:not(.keep) {
        flex-direction: column;
    }
    .shell.step:not(.keep) > .solo, .shell.step:not(.keep) > .full, .shell.step:not(.keep) > .duo, .shell.step:not(.keep) > .half, .shell.step:not(.keep) > .trio, .shell.step:not(.keep) > .one-third, .shell.step:not(.keep) > .two-thirds, .shell.step:not(.keep) > .quad, .shell.step:not(.keep) > .quarter, .shell.step:not(.keep) > .three-quarters, .shell.step:not(.keep) > .penta, .shell.step:not(.keep) > .twenty, .shell.step:not(.keep) > .thirty, .shell.step:not(.keep) > .forty, .shell.step:not(.keep) > .sixty, .shell.step:not(.keep) > .seventy, .shell.step:not(.keep) > .eighty {
        width: 100%;
        margin: 0;
    }
    .shell.step:not(.keep) > .solo.gutter, .shell.step:not(.keep) > .full.gutter, .shell.step:not(.keep) > .duo.gutter, .shell.step:not(.keep) > .half.gutter, .shell.step:not(.keep) > .trio.gutter, .shell.step:not(.keep) > .one-third.gutter, .shell.step:not(.keep) > .two-thirds.gutter, .shell.step:not(.keep) > .quad.gutter, .shell.step:not(.keep) > .quarter.gutter, .shell.step:not(.keep) > .three-quarters.gutter, .shell.step:not(.keep) > .penta.gutter, .shell.step:not(.keep) > .twenty.gutter, .shell.step:not(.keep) > .thirty.gutter, .shell.step:not(.keep) > .forty.gutter, .shell.step:not(.keep) > .sixty.gutter, .shell.step:not(.keep) > .seventy.gutter, .shell.step:not(.keep) > .eighty.gutter {
        width: 98%;
        margin: 1em 1%;
    }
    /* Single Column --- Universal margin-bottom class */
    .shell.automa > , .shell.automa > .gutter {
        margin-bottom: 1.5em !important;
    }
    /* Universal padding class --- as you like */
    .pd-around {
        padding: 6% 3%;
    }
    .pd-side, .pd-right, .pd-left {
        padding: 0 3%;
    }
    .stal {
        text-align: left !important;
    }
    .stal:not(.pd-side) {
        padding: 0 3%;
    }
    .pd-around .stal:not(.pd-side), .pd-side .stal:not(.pd-side) {
        padding: 0;
    }
}


@charset "utf-8";
/*===========================
add
===========================*/




/* 背景用*/
.btn, a.btn, button.btn {
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}
.btn-wrap-pc-sp {
  max-width: 435px;
  margin: 0 auto 20px;
}
a.btn-pc-sp {
  line-height: 1.4;
  width: 49.5%;
  padding: 1.25rem 0;
  color: #ffff;
}
a.btn--contact {
  font-size: 1.5rem;
  display: block;
  padding: 1.6rem 0 1.6rem 2.2rem;
  color: #fff;
  border-radius: 100vh;
  background: #7A5230; /* ボタン色 */
  -webkit-box-shadow: 0 5px 0 #0b7da4;
  box-shadow: 0 5px 0 #583E30;
  height: 90px;
}
@media screen and (max-width: 600px) {
  a.btn--contact {
    font-size: 0.9rem;
    padding: 2.2rem 0 1.6rem 2.2rem;
  }
}
a.btn--contact i {
  font-size: 2rem;
}
a.btn--contact i.fa-position-left {
  font-size: 3rem;
  left: 2rem;
}
a.btn--contact .number {
  line-height: 1;
  display: inline-block;
  margin-top: 0.5rem;
  padding: 0.25rem 2rem;
  letter-spacing: 0;
  color: #eb6100;
  border-radius: 0.5rem;
  background: #fff;
}
a.btn--contact:hover {
  color: #fff;
}
a.btn--tel {
  display: block;
  /*margin-top: 15px;*/
  padding: 0.5rem 0 1rem 2.2rem;
  color: #fff;
  border-radius: 100vh;
  background: #7A5230; /* ボタン色 */
  -webkit-box-shadow: 0 5px 0 #0b7da4;
  box-shadow: 0 5px 0 #583E30;
  height: 90px;
}
a.btn--tel i {
  font-size: 2rem;
}
a.btn--tel i.fa-position-left {
  font-size: 3rem;
  left: 2rem;
}
a.btn--tel .number {
  line-height: 1;
  display: inline-block;
  margin-top: 0.2rem;
  padding: 0.5rem 2rem;
  letter-spacing: 0;
  color: #7A5230;
  border-radius: 0.5rem;
  background: #fff;
  font-size: 1.6rem;
	margin-bottom: 7px;
}
@media screen and (max-width: 600px) {
  a.btn--tel .number {
    font-size: 1rem;
  }
}
a.btn--tel:hover {
  color: #fff;
}
.fa-position-left {
  position: absolute;
  top: calc(50% - 0.5em);
  left: 1rem;
}
.fa-position-right {
  position: absolute;
  top: calc(50% - 0.5em);
  right: 1rem;
}



/*===========================
add
===========================*/

/* color:var(--basic-color); で利用 */
:root {
    --basic-color:#4f3309;
}

/* color:var(--basic-colorSub); で利用 */
:root {
    --basic-colorSub:#d3ae78;
}

/* color:var(--basic-color2); で利用 */
:root {
    --basic-color2:#4f3309;
}

/*
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);
}

.catch2 {
    color:var(--basic-color);
}

.catch3 {
    color:var(--basic-color);
}

.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-colorSub); /*要調整*/
}

/*----------
table
----------*/

/* 普通のtable */

table.table2 th {
    background-color:var(--basic-colorSub); /*要調整*/
}

/* 縦に並ぶtable */

table.table3 th {
    background-color:var(--basic-colorSub); /*要調整*/
}

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: center;
}
@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 img: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;
}

/* 3カラムここから */
/* 共通 */
.changeCard ul {
	padding: 0;
	list-style: none;
	border: none;
	display: flex;
	/*justify-content: space-between;*/
	justify-content: start;
	flex-wrap: wrap;
	gap: 0;
	margin-top: 20px;
}
.changeItemTxt {
	width: 62%;
}
.changeItemTxt p.itemTitle {
	/*font-size: 1.1rem;*/
	line-height: 1.56;
	margin: 0;
	/*font-weight: bold;*/
	color: #313131;
	margin-bottom: 10px;
}
.changeItemTxt ul.itemTag {
	padding: 0;
	margin: 0;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}
.changeItemTxt ul.itemTag li {
	background: #f1f1f1;
	color: #707070;
	font-size: 0.7rem;
	padding: 2px 10px;
	position: relative;
}
.changeItemTxt ul.itemTag li:before {
	padding-right: 3px;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 1em;
	content: "\f02b";
	vertical-align: baseline;
	color: #aaa;
}
p.itemCat {
	position: relative;
	left: 0px;
	/*top: 38px;*/
	background: #888888;
	color: #FFF;
	border-radius: 9999px;
	/*font-size: 0.7rem;
	display: inline-block;*/
	padding: 1px 12px 0px;
	z-index: 2;
	margin-bottom: 10px;
	text-align: center;
}
/* 共通ここまで */
/* Grid */
li.changeItem.grid {
	width: calc(100% / 3);
	margin-bottom: 5px;
	padding-left: 1%;
	padding-right: 1%;
	box-sizing: border-box;
}
li.changeItem.grid a {
	padding-bottom: 20px;
    padding-top: 20px;
	
	color: #707070;
	height: 100%;
	flex-direction: column;
	display: flex;
	text-decoration: none;/*border-top: solid 1px #eee;*/
}
li.changeItem.grid a p.itemCat {
    display: none;
}
li.changeItem.grid a img, li.changeItem.grid a .changeItemTxt {
	width: 100%;
	height: auto;
	margin: 0;
}
li.changeItem.grid a img {
	margin-bottom: 15px;
	transition: 0.2s ease-in-out;
	box-shadow: 0 2px 4px rgb(0 0 0 / 30%);
}
li.changeItem.grid a:hover {
	background: none;
}
li.changeItem.grid a:hover > img {
	box-shadow: 0 15px 30px -5px rgb(0 0 0 / 25%);
	transform: translateY(-4px);
}

@media screen and (max-width: 767px) {
/* （ここにモバイル用スタイルを記述） */
li.changeItem.grid {
	width: 100%;
	margin-bottom: 30px;
	padding: 0;
}
li.changeItem.grid a {
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
}
li.changeItem.grid:last-child a {
    border-bottom: solid 1px #eee;
}
li.changeItem.grid a img {
	width: 100%;
    /*margin-right: 10px;*/
	height: max-content;margin-bottom: 0;
}
li.changeItem.grid a .changeItemTxt {
    width: calc(100% - 155px);
}
li.changeItem.grid a .changeItemTxt time {
    display: none;
}
li.changeItem.grid a .changeItemTxt .itemTitle {
	font-size: 1rem;
	line-height: 1.5;
	margin: 0;
}
li.changeItem.grid a .changeItemTxt ul.itemTag {
	display: none;
}
}
/* 3カラムここまで */

