/*=============================================================
  common.css
---------------------------------------------------------------

01. common layout
02. header
03. footer
04. home
05. concept
06. yk-design
07. facility
08. reform
09. example
10. company
11. contact
12. mail
13. thanks
14. electricity
15. privacy
16. media query
17. mobile
18. helper

===============================================================
01. common layout
=============================================================*/

.preload * {
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    transition: none !important;
}

.pc,
.pc-alt {
	display: inline-block;
}

.sp,
.sp-alt {
	display: none;
}

.central {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    -webkit-transform: translateX( -50% ) translateY( -50% );
    -moz-transform: translateX( -50% ) translateY( -50% );
    -ms-transform: translateX( -50% ) translateY( -50% );
    transform: translateX( -50% ) translateY( -50% );
}

.central-x {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    -webkit-transform: translateX( -50% );
    -moz-transform: translateX( -50% );
    -ms-transform: translateX( -50% );
    transform: translateX( -50% );
}

.central-y {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
    -webkit-transform: translateY( -50% );
    -moz-transform: translateY( -50% );
    -ms-transform: translateY( -50% );
    transform: translateY( -50% );
}

.ta-c-sp-l {
    text-align: center;
}

img {
    display: inline-block;
    width: 100%;
}

p {
    margin-bottom: 15px;
}

p:last-of-type {
    margin-bottom: 0;
}

p.mb-default {
    margin-bottom: 15px;
}

p.mb-plus {
    margin-bottom: 25px;
}

p.mb-super-plus {
    margin-bottom: 35px;
}

p.mb-super-plus-more {
    margin-bottom: 45px;
}

p.mb-minus {
    margin-bottom: 10px;
}

p.mb-super-minus {
    margin-bottom: 5px;
}

p.bold {
    font-size: 20px;
    font-weight: bolder;
}

.oragne-text,
.oragne-text a {
    color: #f68b1f;
    font-size: 30px;
}

.mini {
    font-size: 14px;
    margin-bottom: 4px;
}

p.mini-gry-text {
	font-size: 14px;
	color: #444444;
}


#loading-layer {
    width: 100%;
    height: 100%;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 30;
    transition: all ease 800ms;
}

.loaded #loading-layer {
    opacity: 0;
    visibility: hidden;
}

.mass {
    padding-bottom: 75px;
}

.mass.pt-plus {
    padding-top: 70px;
}

.mass.pt-little-plus {
    padding-top: 40px;
}

.mass.pb-minus {
    padding-bottom: 50px;
}

iframe {
    vertical-align: bottom;
}

.inner {
    width: 90%;
    margin: 0 auto;
}

#contents {
    position: relative;
    top: 0;
    left: 0;
    z-index: 2;
}

#visual,
#bg {
    width: 100%;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
}

.bg-fix-area {
    padding-top: 40px;
}

#visual {
    position: relative;
}

#visual #icon-scroll,
#visual #icon-scroll #scroll-inner #bar {
    height: 140px;
}

#visual #icon-scroll {
    width: 22px;
    padding-left: 19px;
    top: auto;
    bottom: 0;
    overflow: hidden;
    transition: all ease 1500ms;
    opacity: 0;
}

.loaded #visual #icon-scroll {
    opacity: 0.99999;
}

#visual #icon-scroll #scroll-inner {
    width: 100%;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

#visual #icon-scroll #scroll-inner #bar {
    width: 2px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

#visual #icon-scroll #scroll-inner img,
#visual #icon-scroll #scroll-inner #bar::before,
#visual #icon-scroll #scroll-inner #bar::after {
    position: absolute;
    top: 0;
    z-index: 1;
}

#visual #icon-scroll img {
    width: 13px;
    top: 3px;
    right: 0;
}

#visual #icon-scroll #scroll-inner #bar::before,
#visual #icon-scroll #scroll-inner #bar::after {
    display: block;
    content: "";
    width: 100%;
    left: 0;
    overflow: hidden;
}

#visual #icon-scroll #scroll-inner #bar::before {
    height: 100%;
    background: #f68b1f;
}

#visual #icon-scroll #scroll-inner #bar::after {
    height: 30px;
    background: rgba( 255,255,255,1 );
    animation: icon-scroll ease infinite 3000ms;
}

@keyframes icon-scroll {
    0%{ top: -50px; }
    90%{ top: calc( 100% + 20px ); }
    100%{ top: calc( 100% + 20px ); }
}

#bg {
    position: fixed;
}

.wrapper-shadow {
    width: 100%;
    padding: 6px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: rgba( 255,255,255,0.0 );
    box-shadow: 0 0 10px rgba( 0,0,0,0.05 );
}

.wrapper-shadow .inner-wrapper {
    padding: 30px;
    background: rgba( 255,255,255,0.7 );
}

.tit-01 {
    margin-bottom: 35px;
    font-size: 36px;
    letter-spacing: 6px;
    line-height: 1.6;
    text-align: center;
}

.tit-01.pt-plus {
    padding-top: 10px;
}

.tit-01.mb-plus {
    margin-bottom: 55px;
}

.tit-01.mb-plus-little {
    margin-bottom: 43px;
}

.tit-01.mb-minus {
    margin-bottom: 22px;
}

.tit-01.mb-super-minus {
    margin-bottom: 3px;
}

.tit-02 {
    margin-bottom: 15px;
    font-size: 26px;
    letter-spacing: 3px;
    line-height: 1.6;
    text-align: left;
}

.tit-02.mb-minus {
    margin-bottom: 10px;
}

.white-base,
.top-line {
    padding-top: 40px;
}

.white-base {
    background: #fff;
}

.top-line {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.top-line.pt-plus {
    padding-top: 70px;
}

.top-line::before {
    display: inline-block;
    content: "";
    width: 0;
    height: 1px;
    background: #f68b1f;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 1;
    transition: all ease 800ms;
    transform: translateY( 20px );
}

.active.top-line::before,
.active .top-line::before {
    width: 100%;
    left: 0;
    transform: translateY( 0 );
}

strong {
    font-weight: bold;
}

strong.with-underline,
strong.with-underline span {
    font-size: 18px;
}

strong.with-underline {
    display: inline-block;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    white-space: nowrap;
}

strong.with-underline::before {
    display: inline-block;
    content: "";
    width: 100%;
    height: 5px;
    background: #f78b1e;
    position: absolute;
    bottom: 3px;
    left: 0;
    z-index: 1;
}

strong.with-underline span {
    display: inline-block;
    content: "";
    position: relative;
    top: 0;
    left: 0;
    z-index: 2;
    font-weight: bold;
}

/*
 * basic motion
 */

.elem-00,
.elem-01,
.elem-02,
.elem-03,
.elem-04,
.elem-05,
.elem-06,
.elem-07 {
    transition: all ease 800ms;
    transform: translateY( 20px );
    opacity: 0;
}

.elem-01 {
    transition-delay: 200ms;
}

.elem-02 {
    transition-delay: 400ms;
}

.elem-03 {
    transition-delay: 600ms;
}

.elem-04 {
    transition-delay: 800ms;
}

.elem-05 {
    transition-delay: 1000ms;
}

.elem-06 {
    transition-delay: 1200ms;
}

.elem-07 {
    transition-delay: 1400ms;
}

.active .elem-00,
.active .elem-01,
.active .elem-02,
.active .elem-03,
.active .elem-04,
.active .elem-05,
.active .elem-06,
.active .elem-07 {
    transform: translateY( 0 );
    opacity: 0.99999;
}

/*
* pages visual
*/

.pages #visual::before {
    display: block;
    content: "";
    width: 100%;
    height: 100%;
    background: #f78b1e;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    transition: all ease 1400ms;
    transition-delay: 800ms;
}

.pages.loaded #visual::before {
    height: 0;
}

.pages #visual #pages-img-scale {
    width: 100%;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
    transition: all ease 2400ms;
    transition-delay: 600ms;
    transform: scale( 1.4 );
}

.pages.loaded #visual #pages-img-scale {
    transform: scale( 1.00001 );
}

.pages #visual .central {
    width: 65%;
    top: 49%;
    z-index: 3;
}

.pages #visual .central #visual-tit {
    padding: 18% 0 14%;
    position: relative;
    top: 0;
    left: 0;
    z-index: 3;
}

.pages #visual .central .deco {
    position: absolute;
    z-index: 1;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    transition: all ease 600ms;
    transition-delay: 600ms;
    opacity: 0;
    overflow: hidden;
} 

.pages.loaded #visual .central .deco {
    opacity: 0.8;
}

.pages #visual .central .deco::before {
    display: inline-block;
    content: "";
    width: 100%;
    height: 100%;
    background: #f78b1e;
    position: absolute;
    top: 0%;
    left: 0%;
    z-index: 1;
    transition: all ease 1400ms;
    transition-delay: 800ms;
}

.pages.loaded #visual .central .deco::before {
    height: 0;
}

.pages #visual .central #deco-01 {
    width: 23%;
    padding-top: 35%;
    top: 13%;
    left: 26%;
    z-index: 2;
}

.pages #visual .central #deco-02 {
    width: 28%;
    height: 100%;
    top: 0;
    left: 44%;
}

.pages #visual .central #visual-tit img {
    vertical-align: top;
    overflow: hidden;
    transition: all ease 1800ms;
    transition-delay: 800ms;
    transform: scale( 0.8 );
    opacity: 0;
}

.pages.loaded #visual .central #visual-tit img {
    transform: scale( 0.99999 );
    opacity: 0.99999;
}

/*
* .table-01
*/

.table-01,
.table-01 tr {
    width: 100%;
}

.table-01 th,
.table-01 td {
    padding: 20px;
    text-align: left;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.table-01 th {
    width: 27%;
}

.table-01 td {
    width: 73%;
}

.table-01 tr:nth-child( odd ) th {
    background: rgba( 247,139,30,0.9 );
}

.table-01 tr:nth-child( odd ) td {
    background: rgba( 255,255,255,0.8 );
}

.table-01 tr:nth-child( even ) th {
    background: rgba( 254,158,61,0.9 );
}

.table-01 tr:nth-child( even ) td {
    background: rgba( 255,255,255,0.6 );
}

/*
* a.arrow-orange
*/

a.arrow-orange {
    display: inline-block;
    color: #aaa;
    transition: all ease 200ms;
}

a.arrow-orange:hover {
    color: #f68b1f;
}

a.arrow-orange::before {
    display: inline-block;
    content: "";
    width: 8px;
    height: 25px;
    margin-right: 8px;
    background: url( /common/img/shared/arrow-orange.png ) center center no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
    vertical-align: top;
    position: relative;
    top: 2px;
    left: 0;
    z-index: 1;
}

/*
* .link-text-black
*/

a.link-text-black {
    color: #333;
    text-decoration: underline;
    transition: all ease 250ms;
}

a.link-text-black:hover {
    color: #f78b1e;
}

/*
* .btn-01
*/

.btn-01 {
    display: inline-block;
    width: 100%;
    max-width: 580px;
    padding: 54px 0;
    margin-bottom: 30px;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
    color: #f68b1f;
    text-align: center;
    line-height: 0;
    font-size: 24px;
    transition: all ease 300ms;
    font-weight: bold;
}

.btn-01:hover {
    color: #fff;
}

.btn-01 .text {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.btn-01::before {
    display: inline-block;
    content: "";
    width: calc( 100% - 26px );
    height: 0;
    background: #f68b1f;
    position: absolute;
    top: calc( 100% - 13px );
    left: 13px;
    z-index: 1;
    animation: btn-01-base-hidden ease forwards 400ms;
    opacity: 0;
}

.btn-01:hover::before {
    animation: btn-01-base-visible ease forwards 400ms;
}

@keyframes btn-01-base-visible {
    0%{ top: calc( 100% - 13px ); height: 0; opacity: 0; }
    100%{ top: 13px; height: calc( 100% - 26px ); opacity: 0.99999; }
}

@keyframes btn-01-base-hidden {
    0%{ top: 13px; height: calc( 100% - 26px ); opacity: 0.99999; }
    100%{ top: 13px; height: 0; opacity: 0; }
}

.btn-01 .lines-01::before,
.btn-01 .lines-01::after,
.btn-01 .lines-02::before,
.btn-01 .lines-02::after {
    display: inline-block;
    content: "";
    background: #f68b1f;
    position: absolute;
    z-index: 1;
}

.btn-01 .lines-01::before {
    width: 60%;
    height: 1px;
    top: 8px;
    left: 0;
}

.btn-01:hover .lines-01::before {
    animation: line-01-before ease forwards 1000ms;
}

@keyframes line-01-before {
    0%{ left: 0; width: 60%;}
    50%{ left: 100%; width: 100%;}
    51%{ left: 0; width: 0;}
    100%{ left: 0; width: 60%;}
}

.btn-01 .lines-01::after {
    width: 1px;
    height: 50px;
    top: 0;
    left: 8px;
}

.btn-01:hover .lines-01::after {
    animation: line-01-after ease forwards 1000ms;
}

@keyframes line-01-after {
    0%{ top: 0; height: 50px;}
    50%{ top: 100%; height: 100%;}
    51%{ top: 0; height: 0;}
    100%{ top: 0; height: 50px;}
}

.btn-01 .lines-02::before {
    width: 60%;
    height: 1px;
    bottom: 8px;
    right: 0;
}

.btn-01:hover .lines-02::before {
    animation: line-02-before ease forwards 1000ms;
}

@keyframes line-02-before {
    0%{ right: 0; width: 60%;}
    50%{ right: 100%; width: 100%;}
    51%{ right: 0; width: 0;}
    100%{ right: 0; width: 60%;}
}

.btn-01 .lines-02::after {
    width: 1px;
    height: 50px;
    right: 8px;
    bottom: 0;
}

.btn-01:hover .lines-02::after {
    animation: line-02-after ease forwards 1000ms;
}

@keyframes line-02-after {
    0%{ bottom: 0; height: 50px;}
    50%{ bottom: 100%; height: 100%;}
    51%{ bottom: 0; height: 0;}
    100%{ bottom: 0; height: 50px;}
}

/*
* .btn-02 and 03 common style
*/

.btn-02,
.btn-03 {
    display: inline-block;
    width: 30%;
    max-width: 400px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 20px 0;
    border: none;
    transition: all ease 300ms;
    font-size: 17px;
    letter-spacing: 2px;
    cursor: pointer;
    overflow: hidden;
}

/*
* .btn-02
*/

.btn-02 {
    background: #f78b1e;
    color: #fff;
}

.btn-02:hover {
    background: #45a4e4;
}

/*
* .btn-03
*/

.btn-03 {
    background: none;
    border: solid 1px #f78b1e;
    color: #f78b1e;
}

.btn-03:hover {
    border: solid 1px #45a4e4;
    color: #45a4e4;
}

/*
* .btn-04
*/

.btn-04 {
    display: inline-block;
    width: 100%;
    max-width: 600px;
    padding: 20px 0;
    border: solid 3px #f78b1e;
    border-radius: 300px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #f78b1e;
    text-align: center;
    font-size: 21px;
    transition: all ease 300ms;
}

.btn-04:hover {
    background: #f78b1e;
    color: #fff;
}

/*
* .colomn-xx common style
*/

ul.colomn-02,
ul.colomn-03,
ul.colomn-04 {
    text-align: center;
    margin-bottom: 40px;
}

ul.colomn-02 li,
ul.colomn-03 li,
ul.colomn-04 li {
    display: inline-block;
    vertical-align: top;
}

ul.colomn-02 li .box-text,
ul.colomn-03 li .box-text {
    padding: 0 10px;
}

/*
* .colomn-02
*/

ul.colomn-02 li {
    width: 50%;
}

ul.colomn-02 li .box-img {
    padding-top: 75%;
    margin-bottom: 23px;
}

/*
* .colomn-03
*/

ul.colomn-03 li {
    width: 33.33333%;
}

ul.colomn-03 li .box-img {
    padding-top: 100%;
    margin-bottom: 28px;
}

/*
* .colomn-04
*/

ul.colomn-04 li {
    width: 25%;
}

ul.colomn-04 li a {
    color: #333;
}

ul.colomn-04 li .tit-02 {
    margin-bottom: 0;
    font-size: 24px;
    text-align: center;
}

ul.colomn-04 li .box-img {
    padding-top: 145%;
    margin-bottom: 15px;
}

/*
* .box-img
*/

.box-img {
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.box-img .ov {
    width: calc( 100% - 20px );
    height: 0;
    background: rgba( 247,139,31,0.85 );
    position: absolute;
    bottom: 50%;
    left: 10px;
    z-index: 1;
    transition: all ease 400ms;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

a:hover .box-img .ov {
    height: calc( 100% - 20px );
    bottom: 10px;
}

.box-img .ov .central-y {
    width: 100%;
    text-align: center;
    font-size: 25px;
    letter-spacing: 5px;
    /* color: rgba( 255,255,255,0.95 ); */
    color: #fff;
    letter-spacing: 0;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.box-img .ov .central-y::before,
.box-img .ov .central-y::after {
    display: inline-block;
    content: "";
    width: 0;
    height: 1px;
    /* background-color: rgba( 255,255,255,0.85 ); */
    background-color: #fff;
    position: absolute;
    top: calc( 50% - 1px );
    z-index: 1;
    transition: all ease 300ms;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

a:hover .box-img .ov .central-y::before,
a:hover .box-img .ov .central-y::after {
    width: calc( 50% - 2.5em );
    transition-delay: 400ms;
}

.box-img .ov .central-y::before {
    left: 0;
}

.box-img .ov .central-y::after {
    right: 0;
}

.box-img .ov span {
    display: inline-block;
    transition: all ease 300ms;
    /* transform: translateY( 15px ); */
    /* opacity: 0; */
    padding: 0 0.1em;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    vertical-align: bottom;
}

a:hover .box-img .ov span {
    /* transform: translateY( 0 ); */
    /* opacity: 0.99999; */
}

a:hover .box-img .ov span:nth-of-type( 1 ) {
    transition-delay: 200ms;
}

a:hover .box-img .ov span:nth-of-type( 2 ) {
    transition-delay: 300ms;
}

a:hover .box-img .ov span:nth-of-type( 3 ) {
    transition-delay: 400ms;
}

a:hover .box-img .ov span:nth-of-type( 4 ) {
    transition-delay: 500ms;
}

/*
* .row-divi and row
*/

.row,
.row-divi,
.row-inner,
.row-left-divi {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row-divi {
    padding-bottom: 80px;
}

.row-divi .box-pictorial {
    width: 45%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
}

.row-divi.pictrial-left .box-pictorial {
   left: 0; 
}

.row-divi.pictrial-right .box-pictorial {
   right: 0; 
}

.row-divi .box-pictorial::before {
    display: block;
    content: "";
    width: 20%;
    height: 50%;
    background-position: center center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    position: absolute;
    top: 25%;
    z-index: 1;
    opacity: 0;
}

.row-divi.pictrial-left .box-pictorial::before {
   left: 0; 
}

.row-divi.pictrial-right .box-pictorial::before {
   right: 0; 
}

.row-divi .box-text {
    width: 55%;
    padding: 50px 0;
}

.row-divi .box-text .text-wrapper {
    padding: 0 10%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.row-divi .box-text .tit-01 {
    padding: 0 0 4% 10%;
    margin: 0 0 5% 0;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    text-align: left;
}

.row-divi .box-text .tit-01::before {
    display: block;
    content: "";
    width: 0;
    height: 1px;
    background: #f68b1f;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

.row-divi .box-img {
    width: 80%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
}

.row-divi.pictrial-left .box-img {
    left: 20%;
}

.row-divi.pictrial-right .box-img {
    left: 0;
}

.row-divi.pictrial-left .box-text {
    margin-left: 45%;
}

.row-divi .box-pictorial::before,
.row-divi .box-text .tit-01::before {
    transition: all ease 800ms;
    transform: translateY( 20px );
    transition-delay: 200ms;
}

.active.row-divi .box-pictorial::before {
    transform: translateY( 0 );
    opacity: 0.99999;
}

.active.row-divi .box-text .tit-01::before {
    width: 100%;
    transform: translateY( 0 );
}

/*
* .row-left-divi
*/

.row-left-divi {
    overflow: hidden;
}

.row-left-divi .inner-left-divi {
    padding-right: 5%;
}

.row-left-divi .box-img {
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.row-left-divi .box-text {
    width: 44%;
    margin-left: 56%;
}

/*
* .row-img-fit
*/

.row-img-fit {
    margin-bottom: 75px;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row-img-fit .box-img {
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
}

.row-img-fit.img-left .box-img {
    left: 0;
}

.row-img-fit.img-right .box-img {
    left: 50%;
}

.row-img-fit .box-text {
    width: 50%;
}

.row-img-fit.img-left .box-text {
    margin-left: 50%;
}

/*
* .row-double-img
*/

.row-double-img {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row-double-img ul li:nth-of-type( 1 ) {
    width: 51%;
    float: left;
}

.row-double-img ul li:nth-of-type( 2 ) {
    width: 45%;
    float: right;
    position: relative;
    top: -60px;
    left: 0;
    z-index: 1;
}

.row-double-img .box-img {
    width: 100%;
    height: 0;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row-double-img ul li:nth-of-type( 1 ) .box-img {
    padding-top: 63%;
    left: 0;
}

.row-double-img ul li:nth-of-type( 2 ) .box-img {
    padding-top: 70%;
    left: 0;
}

/*
* .row-double-img-alt
*/

.row-double-img-alt {
    margin-bottom: 40px;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row-double-img-alt ul li:nth-of-type( 1 ) {
    width: 51%;
    float: left;
}

.row-double-img-alt ul li:nth-of-type( 2 ) {
    width: 45%;
    margin-top: 3%;
    float: right;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row-double-img-alt .box-img {
    width: 100%;
    height: 0;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

.row-double-img-alt ul li:nth-of-type( 1 ) .box-img {
    padding-top: 63%;
    left: 0;
}

.row-double-img-alt ul li:nth-of-type( 2 ) .box-img {
    padding-top: 58%;
    left: 0;
}

/*
* #part-contact
*/

#part-contact {
    padding-bottom: 40px;
}

#part-contact .btn-01 {
    margin-bottom: 0;
}

#part-contact img {
    width: 90%;
    margin: 0 auto;
}

#part-contact .mt-plus {
    margin-top: 20px;
} 


/*=============================================================
02. header
=============================================================*/

#main-header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
}

#main-header h1 a img {
    width: auto;
    height: 100px;
}

#main-header #icon-menu,
#main-header #icon-close {
    width: 100px;
    height: 100px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    top: 0;
    right: 0;
    z-index: 1;
    cursor: pointer;
    overflow: hidden;
}

#main-header #icon-menu {
    position: fixed;
    background: #f68b1f;
    background: url( /common/img/shared/icon-menu-base.jpg ) center center no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
}

#main-header #icon-menu::before {
    display: inline-block;
    content: "";
    background: rgba( 255,255,255,0.2 );
    width: 100%;
    height: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

#main-header #icon-menu:hover::before {
    animation: ov-icon-menu ease forwards 1000ms;
}

@keyframes ov-icon-menu {
    0%{ height: 0; top: 100%; }
    50%{ height: 100%; top: 0; }
    100%{ height: 0; top: 0; }
}

#main-header #icon-close {
    position: absolute;
    background: rgba( 255,255,255,0.05 );
}

/*
* global nav
*/

#main-header #nav-wrapper,
#main-header #nav-wrapper #close-layer,
#main-header #nav-wrapper #nav-bg {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

#main-header #nav-wrapper {
    position: fixed;
    z-index: 20;
    overflow: hidden;
    visibility: hidden;
    opacity: 0;
    transition: all ease 300ms;
}

.nav-open #main-header #nav-wrapper {
    visibility: visible;
    opacity: 0.99999;
}

#main-header #nav-wrapper #close-layer {
    position: absolute;
    z-index: 1;
}

#main-header #nav-wrapper #nav-bg {
    background: url( /common/img/shared/nav-bg.jpg ) center center no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    position: absolute;
    z-index: 1;
    transition: all ease 1000ms;
    transform: scale( 1.15 );
}

.nav-open #main-header #nav-wrapper #nav-bg {
    transform: scale( 1.00001);
}

#main-header #nav-wrapper .central {
    width: 95%;
    max-width: 1800px;
    left: 53%;
}

#main-header #nav-wrapper #nav-box {
    transition: all ease 1000ms;
    transform: scale( 0.85 );
    visibility: hidden;
    opacity: 0;
}

.nav-open #main-header #nav-wrapper #nav-box {
    opacity: 0.99999;
    transform: scale( 0.99999 );
    visibility: visible;
}

#main-header #nav-wrapper #nav-box ul {
    display: block;
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#main-header #nav-wrapper #nav-box nav {
    display: flex;
}

#main-header #nav-wrapper #nav-box ul:nth-of-type( 1 ) {
    padding-right: 1%;
}

#main-header #nav-wrapper #nav-box ul:nth-of-type( 2 ) {
    padding-left: 1%;
}

#main-header #nav-wrapper #nav-box ul li a {
    display: block;
    padding: 3% 0 3% 17%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

#main-header #nav-wrapper #nav-box ul li a::before {
    display: block;
    content: "";
    width: 9%;
    height: 100%;
    background: url( /common/img/shared/arrow-nav.png ) center center no-repeat;
    -webkit-background-size: contain;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    transition: all ease 200ms;
    opacity: 0;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

#main-header #nav-wrapper #nav-box ul li a:hover::before {
    left: 6%;
    opacity: 0.99999;
}

/*=============================================================
03. footer
=============================================================*/

#main-footer {
    padding: 50px 0 60px;
    border-top: solid 1px #eee;
    background: #fff;
    text-align: center;
    font-size: 16px;
    color: #aaa;
}

#main-footer aside {
    margin-bottom: 12px;
}

#main-footer nav {
    margin-bottom: 5px;
}

#main-footer aside ul li {
    display: inline-block;
    width: 58px;
}

#main-footer aside ul li a {
    display: block;
    padding: 0 4px;
}

#main-footer aside ul li a:hover img {
    transform: translateY( -10px );
}

#main-footer aside ul img {
    padding: 10px;
    border: solid 1px #f68b1f;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-border-radius: 300px;
    border-radius: 300px;
    transition: all ease 200ms;
    overflow: hidden;
}

#main-footer aside ul li:nth-of-type( 2 ) img {
    padding: 9px;
}

/*=============================================================
04. home
=============================================================*/

#home #bg {
    background-image: url( /common/img/home/bg.jpg );
    background-position: center top;
}

#home #visual #img-scale {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background: url( /common/img/home/visual.jpg ) center bottom no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
}

#home #visual #visual-img {
    width: 90%;
    max-width: 1400px;
}

#home #part-about.row-divi .box-pictorial .box-img {
    background-image: url( /common/img/home/img-about.jpg );
}

#home #part-about.row-divi .box-pictorial::before {
    background-image: url( /common/img/home/pict-deco-01.jpg );
}

#home #part-about.row-divi .box-text {
    padding-bottom: 35px;
}

#home #part-about .btn-01 {
    margin-bottom: 0;
}

#home #part-about .row-inner {
    margin-bottom: 4%;
}

#home #part-about .row-double-img ul li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/home/img-about-house.jpg );
    background-position: top center;
}

#home #part-about .row-double-img ul li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/home/img-about-welfare.jpg );
}

#home #part-event {
    padding-bottom: 0;
}

#home #part-event ul li article {
    background: #f68b1f;
}

#home #part-event .box-img {
    width: 40%;
    height: 100%;
    /* background-image: url( /common/img/home/img-event-01.jpg ); */
	/* background-image: url( /common/img/home/img-event-new-year.jpg );*/
	background-image: url( /common/img/home/img-news-recruit.jpg?v05 );
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

#home #part-event .box-text {
    width: 60%;
    padding: 4% 5%;
    margin-left: 40%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: url( /common/img/home/event-bg.jpg?v01 ) center top no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
}

#home #part-event a.line-btn {
    width: 20%;
    display: block;
    margin: 0 0 15px;
}

#home #part-event p > a {
    text-decoration: underline;
}

#home #part-crossBox h2 {
    width: 50%;
    margin: 40px auto 80px;
}

#home #part-crossBox .flex-box {
    margin-top: 0px;
}

#home #part-crossBox .flex-box ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#home #part-crossBox .flex-box ul li {
    width: calc(100% / 3 - 30px);
    padding: 0 2% 2%;
    border: 1px #000 solid;
    border-radius: 20px;
    box-sizing: border-box;
    font-family: "M PLUS 1", sans-serif;
    margin-right: 10px;
    margin-bottom: 50px;
}

#home #part-crossBox .flex-box ul li.select {
    margin-right: 0;
}

#home #part-crossBox .flex-box ul li .point-icon {
    width: 90px;
    height: 90px;
    background-color: #000;
    border-radius: 50%;
    position: relative;
    top: -40px;
    left: 10px;
}

#home #part-crossBox .flex-box ul li .point-icon p {
    color: #fff;
    text-align: center;
    font-weight: 800;
    padding-top: 25px;
    line-height: 1.4;
    letter-spacing: 0.5;
}

#home #part-crossBox .flex-box ul li h3 {
    font-size: clamp(13px, 1.6vw, 1.7vw);
    margin-top: -40px;
    margin-bottom: 15px;
    background:linear-gradient(transparent 50%, #ff6 50%);
    text-align: center;
    font-weight: 700;
}

#home #part-crossBox .flex-box ul li p {
    font-size: 16px;
}

#home #part-crossBox a {
    display: block;
    width: 70%;
    margin: 0 auto;
}

#home #part-business ul.colomn-04 {
    margin-bottom: 0;
}

#home #part-business ul.colomn-04 li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/home/img-design-house.jpg );
}

#home #part-business ul.colomn-04 li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/home/img-yk-design.jpg );
}

#home #part-business ul.colomn-04 li:nth-of-type( 3 ) .box-img {
    background-image: url( /common/img/home/img-electric.jpg );
}

#home #part-business ul.colomn-04 li:nth-of-type( 4 ) .box-img {
    background-image: url( /common/img/home/img-facility.jpg );
}

#home #part-cases .box-img {
    height: 86%;
    background-image: url( /common/img/home/img-cases-01.jpg );
}

#home #part-cases.row-divi .box-pictorial::before {
    height: 40%;
    background-image: url( /common/img/home/pict-deco-02.jpg );
}

#home #part-cases .box-text {
    padding-bottom: 0;
}

#home #part-cases .text-wrapper .box-img {
    width: 100%;
    padding-top: 63%;
    background-image: url( /common/img/home/img-cases-02.jpg );
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

#home #part-zeh .zeh-img {
	text-align: center;
}

#home #part-zeh img {
	width: 55%;
}

/*=============================================================
05. concept
=============================================================*/

#concept #visual #pages-img-scale {
    background-image: url( /common/img/concept/visual.jpg );
}

#concept #visual .central #deco-01 {
    background-image: url( /common/img/concept/visual-tit-deco-01.jpg );
}

#concept #visual .central #deco-02 {
    background-image: url( /common/img/concept/visual-tit-deco-02.jpg );
}

#concept #bg {
    background-image: url( /common/img/concept/bg.jpg );
    background-position: center bottom;
}

#concept #part-material.row-divi .box-pictorial .box-img {
    background-image: url( /common/img/concept/img-01.jpg );
}

#concept #part-material.row-divi .box-pictorial::before {
    background-image: url( /common/img/concept/pict-deco-01.jpg );
}

#concept #part-material .text-wrapper img {
    padding-bottom: 15px;
}

#concept #part-muku .colomn-04 {
    margin-bottom: 20px;
}

#concept #part-muku .colomn-04 li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#concept #part-muku .colomn-04 li:nth-of-type( 1 ) {
    padding-right: 2%;
}

#concept #part-muku .colomn-04 li:nth-of-type( 2 ),
#concept #part-muku .colomn-04 li:nth-of-type( 3 ) {
    padding: 0 1%;
    position: relative;
}

#concept #part-muku .colomn-04 li:nth-of-type( 2 ) {
    left: -0.35%;
}

#concept #part-muku .colomn-04 li:nth-of-type( 3 ) {
    left: 0.35%;
}

#concept #part-muku .colomn-04 li:nth-of-type( 4 ) {
    padding-left: 2%;
}

#concept #part-muku .colomn-04 li .box-img {
    padding-top: 100%;
}

#concept #part-muku .colomn-04 li:nth-of-type( 1 ) .box-img  {
    background-image: url( /common/img/concept/img-sugi.jpg );
}

#concept #part-muku .colomn-04 li:nth-of-type( 2 ) .box-img  {
    background-image: url( /common/img/concept/img-paine.jpg );
}

#concept #part-muku .colomn-04 li:nth-of-type( 3 ) .box-img  {
    background-image: url( /common/img/concept/img-hinoki.jpg );
}

#concept #part-muku .colomn-04 li:nth-of-type( 4 ) .box-img  {
    background-image: url( /common/img/concept/img-oku.jpg );
}

#concept #part-muku .colomn-02 {
    margin-bottom: 0;
}

#concept #part-muku .colomn-02 li {
    text-align: left;
}

#concept #part-muku .colomn-02 li h1 {
    text-align: center;
}

#concept #part-muku .colomn-02 li:nth-of-type( 1 ) .box-img  {
    background-image: url( /common/img/concept/img-02.jpg );
}

#concept #part-muku .colomn-02 li:nth-of-type( 2 ) .box-img  {
    background-image: url( /common/img/concept/img-03.jpg );
    background-position: center bottom;
}

#concept #part-muku .colomn-02 li .box-img p {
    width: 90%;
    margin-bottom: 0;
    position: absolute;
    bottom: 5%;
    left: 5%;
    z-index: 1;
}

#concept #part-cost {
    padding-bottom: 0;
}

#concept #part-cost .row-img-fit {
    margin-bottom: 45px;
}

#concept #part-cost .row-img-fit .box-img {
    background-image: url( /common/img/concept/img-04.jpg );
    opacity: 0;
    transition: all ease 800ms;
    transform: translateY( 20px );
}

#concept #part-cost .row-img-fit.active .box-img {
    opacity: 0.99999;
    transform: translateY( 0 );
}

#concept #part-cost .row-img-fit .box-text {
    width: 46%;
    margin-left: 54%;
}

#concept #part-cost .row-img-fit .box-text p {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    margin-bottom: 0;
    line-height: 0;
    overflow: hidden;
}

#concept #part-cost .row-img-fit .box-text p img {
    transition: all ease 1400ms;
}

#concept #part-cost .row-img-fit .box-text p img:nth-of-type( 1 ) {
    height: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

#concept #part-cost .row-img-fit.active .box-text p img:nth-of-type( 1 ) {
    height: 100%;
}

#concept #part-cost .row-img-fit .box-text p img:nth-of-type( 2 ) {
    position: relative;
    top: 0;
    left: 0;
    z-index: 2;
    vertical-align: top;
    opacity: 0;
    transition-delay: 1400ms;
}

#concept #part-cost .row-img-fit.active .box-text p img:nth-of-type( 2 ) {
    opacity: 0.99999;
}

#concept #part-cost .row-wood {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
}

#concept #part-cost .row-wood .box-text {
    width: 64%;
    top: 45%;
}

#concept #part-cost .row-wood .box-text h1,
#concept #part-cost .row-wood .box-text p {
    transition: all ease 800ms;
    transform: translateY( 20px );
    opacity: 0;
}

#concept #part-cost .row-wood .box-text p {
    transition-delay: 200ms;
}

#concept #part-cost .row-wood.active .box-text h1,
#concept #part-cost .row-wood.active .box-text p {
    transform: translateY( 0 );
    opacity: 0.99999;
}

#concept #part-cost .row-wood .box-text h1 {
    text-align: left;
}

#concept #part-cost .row-wood .wood-figure-wrapper {
    width: 33%;
    margin-bottom: 0;
    line-height: 1;
    float: right;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

#concept #part-cost .row-wood .wood-figure-wrapper img {
    vertical-align: top;
}

#concept #part-cost .row-wood .wood-figure-wrapper img:nth-of-type( 1 ),
#concept #part-cost .row-wood .wood-figure-wrapper img:nth-of-type( 2 ) {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    transform: scale( 0.7 ) rotate( 100deg );
    opacity: 0;
}

@keyframes wood-01 {
    0%{ opacity: 0; transform: scale( 0.7 ) rotate( 100deg ); }
    70%{ opacity: 0.99999; transform: scale( 0.99999 ) rotate( 0 ); }
    71%{ opacity: 0.99999; transform: scale( 0.99999 ) rotate( 0 ); }
    100%{ opacity: 0; transform: scale( 0.99999 ) rotate( 0 ); }
}

@keyframes wood-02 {
    0%{ opacity: 0; transform: scale( 0.7 ) rotate( 100deg ); }
    70%{ opacity: 0.99999; transform: scale( 0.99999 ) rotate( 0 ); }
    100%{ opacity: 0.99999; transform: scale( 0.99999 ) rotate( 0 ); }
}

#concept #part-cost .row-wood.active .wood-figure-wrapper img:nth-of-type( 1 ) {
    animation: wood-01 ease forwards 2000ms;
}

#concept #part-cost .row-wood.active .wood-figure-wrapper img:nth-of-type( 2 ) {
    animation: wood-02 ease forwards 2000ms;
}

#concept #part-cost .row-wood .wood-figure-wrapper img:nth-of-type( 3 ) {
    position: relative;
    top: 0;
    left: 0;
    z-index: 2;
    transition: all ease 800ms;
    transition-delay: 1500ms;
    transform: scale( 0.9 );
    opacity: 0;
}

#concept #part-cost .row-wood.active .wood-figure-wrapper img:nth-of-type( 3 ) {
    transform: scale( 0.99999 );
    opacity: 0.99999;
}

#concept #part-long-term.row-divi .box-pictorial .box-img {
    background-image: url( /common/img/concept/img-05.jpg );
}

#concept #part-long-term.row-divi .box-pictorial::before {
    background-image: url( /common/img/concept/pict-deco-02.jpg );
}

#concept #part-design ul li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/concept/img-06.jpg );
}

#concept #part-design ul li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/concept/img-07.jpg );
}

#concept #part-design .box-img.wide {
    margin-bottom: 0;
    background-image: url( /common/img/concept/img-08.jpg );
}

.box-img.wide {
    width: 100%;
    padding-top: 50%;
    margin-bottom: 40px;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

#concept #part-sekkei .colomn-02 {
    margin-bottom: 0;
}

#concept #part-sekkei .colomn-02 li .box-text {
    text-align: left;
}

#concept #part-sekkei .colomn-02 li .box-text h1 {
    text-align: center;
}

#concept #part-sekkei .colomn-02 li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/concept/img-09.jpg );
}

#concept #part-sekkei .colomn-02 li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/concept/img-10.jpg );
}

#concept #part-green li:nth-of-type( 1 ) {
    width: 57%;
}

#concept #part-green li:nth-of-type( 2 ) {
    width: 39%;
    margin-top: 4%;
}

#concept #part-green li:nth-of-type( 1 ) .box-img {
    padding-top: 55%;
    background-image: url( /common/img/concept/img-11.jpg );
}

#concept #part-green li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/concept/img-12.jpg );
}

/*=============================================================
06. yk-design
=============================================================*/

#yk-design .bg-fix-area {
    padding-top: 0;
}

#yk-design #visual #pages-img-scale {
    background-image: url( /common/img/yk-design/visual.jpg );
}

#yk-design #visual .central #deco-01 {
    background-image: url( /common/img/yk-design/visual-tit-deco-01.jpg );
}

#yk-design #visual .central #deco-02 {
    background-image: url( /common/img/yk-design/visual-tit-deco-02.jpg );
}

#yk-design #bg {
    background-image: url( /common/img/yk-design/bg.jpg );
    background-position: center bottom;
}

#yk-design #part-about .row-double-img-alt ul li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/yk-design/img-01.jpg );
}

#yk-design #part-about .row-double-img-alt ul li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/yk-design/img-02.jpg );
}

#yk-design #part-yk-design.row-divi .box-pictorial .box-img {
    background-image: url( /common/img/yk-design/img-03.jpg );
}

#yk-design #part-yk-design.row-divi .box-pictorial::before {
    background-image: url( /common/img/yk-design/pict-deco-01.jpg );
    background-position: center left;
}

#yk-design #part-point ul.colomn-04 li .box-img {
    margin-bottom: 0;
}

#yk-design #part-point ul.colomn-04 li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/yk-design/img-04.jpg );
}

#yk-design #part-point ul.colomn-04 li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/yk-design/img-05.jpg );
}

#yk-design #part-point ul.colomn-04 li:nth-of-type( 3 ) .box-img {
    background-image: url( /common/img/yk-design/img-06.jpg );
}

#yk-design #part-point ul.colomn-04 li:nth-of-type( 4 ) .box-img {
    background-image: url( /common/img/yk-design/img-07.jpg );
}

#yk-design #part-point .wrapper-shadow section h1 {
    text-align: center;
}

#yk-design #part-cases .box-img {
    background-image: url( /common/img/yk-design/img-08.jpg );
}

#yk-design #part-cases.row-divi .box-pictorial::before {
    background-image: url( /common/img/yk-design/pict-deco-02.jpg );
}

#yk-design #part-cases.row-divi .text-wrapper .box-img {
    width: 100%;
    padding-top: 55%;
    background-image: url( /common/img/yk-design/img-09.jpg );
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

/*=============================================================
07. facility
=============================================================*/

#facility #visual #pages-img-scale {
    background-image: url( /common/img/facility/visual.jpg );
}

#facility.loaded #visual .central .deco {
    opacity: 0.9;
}

#facility #visual .central #deco-01 {
    background-image: url( /common/img/facility/visual-tit-deco-01.jpg );
}

#facility #visual .central #deco-02 {
    background-image: url( /common/img/facility/visual-tit-deco-02.jpg );
}

#facility #bg {
    background-image: url( /common/img/facility/bg.jpg );
    background-position: center bottom;
}

#facility #part-01 .row.merit > div {
    width: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
}

#facility #part-01 .row.merit > div:nth-of-type( 1 ) {
    padding-right: 15px;
}

#facility #part-01 .row.merit > div:nth-of-type( 2 ) {
    padding-left: 15px;
}

#facility #part-01 .row.merit > div > section {
    border-radius: 10px;
    overflow: hidden;
}

#facility #part-01 .row.merit > div:nth-of-type( 1 ) > section {
    border: solid 2px #f78b1e;
}

#facility #part-01 .row.merit > div:nth-of-type( 2 ) > section {
    border: solid 2px #2accb3;
}

#facility #part-01 .row.merit > div > section > h1 {
    padding: 25px 25px 28px 25px;
    color: #fff;
    font-size: 140%;
    line-height: 1.4;
}

#facility #part-01 .row.merit > div:nth-of-type( 1 ) > section > h1 {
    background: #f78b1e;
}

#facility #part-01 .row.merit > div:nth-of-type( 2 ) > section > h1 {
    background: #2accb3;
}

#facility #part-01 .row.merit > div > section ul {
    padding: 30px 40px;
}

#facility #part-01 .row.merit > div > section ul li {
    padding-bottom: 20px;
    margin-bottom: 20px;
    border-bottom: dotted 1px #333;
}

#facility #part-01 .row.merit > div > section ul li:last-of-type {
    padding-bottom: 0;
    border-bottom: none;
    margin-bottom: 0;
}

#facility #part-01 .row.merit > div > section ul h1 {
    margin-bottom: 0.1em;
    font-size: 150%;
    line-height: 1.6;
}

#facility #part-01 .row.merit > div > section ul p {
    font-weight: bold;
    line-height: 1.6;
}

#facility #part-01 .row.merit > div > section ul .under-line {
    display: inline-block;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    font-size: 125%;
}

#facility #part-01 .row.merit > div > section ul .under-line::after {
    display: inline-block;
    content: "";
    width: 100%;
    height: 0.2em;
    position: absolute;
    bottom: 0.1em;
    left: 0;
    z-index: 1;
    background: #000;
}

#facility #part-01 .row.merit > div:nth-of-type( 1 ) > section ul .under-line::after {
    background: #f78b1e;
}

#facility #part-01 .row.merit > div:nth-of-type( 2 ) > section ul .under-line::after {
    background: #2accb3;
}

#facility #part-02 .row.flow {
    margin-bottom: 10px;
}

#facility #part-02 .flow-asset {
    max-width: 1600px;
    margin: 0 auto;
}

#facility #part-02 .flow-asset .lefter,
#facility #part-02 .flow-asset .righter {
    width: 49%;
}

#facility #part-02 .flow-asset .lefter .tit-02,
#facility #part-02 .flow-asset .righter .tit-02 {
    font-size: 180%;
}

#facility #part-02 .flow-asset .lefter .base-orange {
    background: #f78b1e;
    padding: 5px;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

#facility #part-02 .flow-asset .lefter h1 {
    color: #f78b1e;
    font-weight: bold;
}

#facility #part-02 .flow-asset .lefter .v-asset {
    width: 77px;
    height: calc( 100% - 10px );
    position: absolute;
    top: 5px;
    left: 0;
    z-index: 1;
    overflow: hidden;
}

#facility #part-02 .flow-asset .lefter .v-asset img {
    width: 100%;
    height: auto;
    position: absolute;
    left: 0;
    z-index: 1;
}

#facility #part-02 .flow-asset .lefter .v-asset img:nth-of-type( 1 ) {
    top: 0;
}

#facility #part-02 .flow-asset .lefter .v-asset img:nth-of-type( 2 ) {
    bottom: 0;
}

#facility #part-02 .flow-asset .lefter .v-asset .bar {
    width: 31px;
    height: 100%;
    text-align: center;
}

#facility #part-02 .flow-asset .lefter .v-asset .bar::before {
    display: inline-block;
    content: "";
    width: 1px;
    height: 100%;
    background: #fff;
    position: absolute;
    top: 0;
    left: 15px;
    z-index: 1;
}

#facility #part-02 .flow-asset .lefter .v-asset p {
    writing-mode: vertical-rl;
    white-space: nowrap;
    padding: 15px 0;
    background: #f78b1e;
    font-size: clamp(14px, 1.9vw, 27px);
    line-height: 1;
}

#facility #part-02 .flow-asset .lefter .v-asset p span {
    color: #fff;
    font-weight: bold;
}

#facility #part-02 .flow-asset .lefter .ch-asset {
    width: calc( 100% - 70px );
    margin-left: 70px;
}

#facility #part-02 .flow-asset .lefter .ch-asset > .box-img {
    padding-top: 60%;
    margin-bottom: 5px;
    background-image: url( /common/img/facility/img-01.jpg );
}

#facility #part-02 .flow-asset .lefter ol li {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
}

#facility #part-02 .flow-asset .lefter ol li .box-img {
    width: 160px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

#facility #part-02 .flow-asset .lefter ol li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/facility/img-02.jpg?v01 );
}

#facility #part-02 .flow-asset .lefter ol li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/facility/img-03.jpg?v01 );
}

#facility #part-02 .flow-asset .lefter ol li:nth-of-type( 3 ) .box-img {
    background-image: url( /common/img/facility/img-04.jpg?v01 );
}

#facility #part-02 .flow-asset .lefter ol li:nth-of-type( 4 ) .box-img {
    background-image: url( /common/img/facility/img-05.jpg?v01 );
}

#facility #part-02 .flow-asset .lefter ol li:nth-of-type( 5 ) .box-img {
    background-image: url( /common/img/facility/img-06.jpg?v01 );
}

#facility #part-02 .flow-asset .lefter ol li:nth-of-type( 6 ) .box-img {
    background-image: url( /common/img/facility/img-07.jpg?v01 );
}

#facility #part-02 .flow-asset .lefter ol li span {
    display: inline-block;
    width: calc( 100% - 165px );
    padding: 30px 0 30px 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: solid 1px #fff;
    margin-left: 165px;
    font-size: clamp(14px, 1.7vw, 24px);
}



#facility #part-02 .flow-asset .lefter .arrow-below-orange {
    width: 100%;
    height: 40px;
    background: url( /common/img/facility/arrow-below-orange.png ) center center no-repeat;
    -webkit-background-size: 100% 100%;
    background-size: 100% 100%;
}

#facility #part-02 .flow-asset .righter {
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

#facility #part-02 .flow-asset .righter ol {
    width: 100%;
    height: calc( 100% - 57px );
    position: absolute;
    top: 57px;
    left: 0;
    z-index: 1;
}

#facility #part-02 .flow-asset .righter ol li {
    width: 100%;
    height: 19%;
    position: absolute;
    left: 0;
    z-index: 1;
    overflow: hidden;
    font-size: 140%;
}

#facility #part-02 .flow-asset .righter ol li:nth-of-type( 1 ) {
    top: 1%;
}

#facility #part-02 .flow-asset .righter ol li:nth-of-type( 2 ) {
    top: 21%;
}

#facility #part-02 .flow-asset .righter ol li:nth-of-type( 3 ) {
    top: 41%;
}

#facility #part-02 .flow-asset .righter ol li:nth-of-type( 4 ) {
    top: 61%;
}

#facility #part-02 .flow-asset .righter ol li:nth-of-type( 5 ) {
    top: 81%;
}

#facility #part-02 .flow-asset .righter ol li::before,
#facility #part-02 .flow-asset .righter ol li::after {
    display: block;
    content: "";
    width: 100%;
    position: absolute;
    left: 0;
    z-index: 1;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#facility #part-02 .flow-asset .righter ol li::before {
    height: calc( 100% - 40px );
    border: solid 1px #000;
    border-bottom: none;
    top: 0;
}

#facility #part-02 .flow-asset .righter ol li::after {
    height: 40px;
    bottom: 0;
    background: url( /common/img/facility/arrow-below.png ) 0 0 no-repeat;
    -webkit-background-size: 100% 100%;
    background-size: 100% 100%;
}

#facility #part-02 .flow-asset .righter ol li span {
    display: block;
    width: 100%;
    top: 47%;
    text-align: center;
}

#facility #part-02 .customer {
    padding: 1px;
    border: solid 3px #029d85;
    text-align: center;
    line-height: 1.2;
    font-size: clamp( 22px, 1.8vw, 28px  );
}

#facility #part-02 .customer span {
    display: block;
    padding: 30px;
    background: #2accb3;
    color: #333;
}

#facility #part-03 .colomn-03 li .box-img {
    margin-bottom: 0;
    padding-top: 80%;
}

#facility #part-03 .colomn-03 li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/facility/img-08.jpg?v01 );
}

#facility #part-03 .colomn-03 li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/facility/img-09.jpg?v01 );
}

#facility #part-03 .colomn-03 li:nth-of-type( 3 ) .box-img {
    background-image: url( /common/img/facility/img-10.jpg?v01 );
}

/*=============================================================
08. reform
=============================================================*/

#reform .bg-fix-area {
    padding-top: 0;
}

#reform #visual #pages-img-scale {
    background-image: url( /common/img/reform/visual.jpg );
}

#reform #visual .central #deco-01 {
    background-image: url( /common/img/reform/visual-tit-deco-01.jpg );
}

#reform #visual .central #deco-02 {
    background-image: url( /common/img/reform/visual-tit-deco-02.jpg );
}

#reform #bg {
    background-image: url( /common/img/reform/bg.jpg );
    background-position: center bottom;
}

#reform #part-concept .row-double-img-alt ul li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/reform/img-01.jpg );
}

#reform #part-concept .row-double-img-alt ul li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/reform/img-02.jpg );
}

#reform #part-menu {
    padding-bottom: 55px;
}

#reform #part-menu ul.colomn-03 {
    width: calc( 100% + 40px );
    margin-bottom: 0;
    position: relative;
    top: 0;
    left: -20px;
    z-index: 1;
}

#reform #part-menu ul li {
    padding: 0 20px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 40px;
}

#reform #part-menu ul li:nth-of-type( 4 ),
#reform #part-menu ul li:nth-of-type( 5 ) {
    margin-bottom: 0;
}

#reform #part-menu ul li h1.tit-02 {
    margin-bottom: 1px;
    text-align: center;
    line-height: 1.2;
}

#reform #part-menu ul li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/reform/img-kitchen.jpg );
}

#reform #part-menu ul li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/reform/img-bath.jpg );
}

#reform #part-menu ul li:nth-of-type( 3 ) .box-img {
    background-image: url( /common/img/reform/img-toilet.jpg );
}

#reform #part-menu ul li:nth-of-type( 4 ) .box-img {
    background-image: url( /common/img/reform/img-wash.jpg );
}

#reform #part-menu ul li:nth-of-type( 5 ) .box-img {
    background-image: url( /common/img/reform/img-wall.jpg );
}

#reform #part-r-cases .cases-row {
    margin-bottom: 40px;
}

#reform #part-r-cases .inner.divi-row {
    width: 95%;
    margin: 0 0 40px 0;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;

}

#reform #part-r-cases .img-right .inner.divi-row {
    left: 5%;
}

#reform #part-r-cases .box-img.fit {
    width: 52%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
}

#reform #part-r-cases .img-right .box-img.fit {
    left: auto;
    right: 0;
}

#reform #part-r-cases .box-text {
    width: 45%;
}

#reform #part-r-cases .img-left .box-text {
    margin-left: 55%;
}

#reform #part-r-cases .box-text dl {
    border-bottom: solid 1px #f68b1f;
}

#reform #part-r-cases .box-text dl dt,
#reform #part-r-cases .box-text dl dd {
    font-size: 17px;
}

#reform #part-r-cases .box-text dl dt {
    width: 6em;
    padding: 20px 0;
    float: left;
    clear: left;
}

#reform #part-r-cases .box-text dl dd {
    padding: 20px 0 20px 6em;
    border-top: solid 1px #f68b1f;
}

#reform #part-r-cases .zoom-list {
    width: calc( 100% + 8px );
    margin-bottom: 65px;
    margin-left: -4px;
}

#reform #part-r-cases .zoom-list li {
    width: calc( 100% / 6 );
    padding: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
}

#reform #part-r-cases .zoom-list li .box-img .ov .central-y {
    font-size: 18px;
}

#reform #part-r-cases #case-01 .box-img.fit {
    background-image: url( /common/img/reform/cases/01/01.jpg );
}

#reform #part-r-cases #case-02 .box-img.fit {
    background-image: url( /common/img/reform/cases/02/01.jpg );
}

#reform #part-r-cases .colomn-02.b-a-set li .box-img {
    margin-bottom: 0;
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
}

#reform #part-r-cases .colomn-02.b-a-set li .box-img p {
    display: inline-block;
    width: 10em;
    padding: 10px 0;
    position: absolute;
    left: 16px;
    bottom: 10px;
    z-index: 1;
    transform: skew( -15deg );
}

#reform #part-r-cases .colomn-02.b-a-set li .box-img p.before {
    background: #fff;
    color: #333;
}

#reform #part-r-cases .colomn-02.b-a-set li .box-img p.after {
    background: #f68b1f;
    font-weight: bold;
    color: #fff;
}

#reform #part-r-cases #case-02 .colomn-02 li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/reform/cases/02/before.jpg );
}

#reform #part-r-cases #case-02 .colomn-02 li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/reform/cases/02/04.jpg );
}

#reform #part-r-cases #case-03 .box-img.fit {
    background-image: url( /common/img/reform/cases/03/01.jpg );
}

#reform #part-r-cases #case-03 .colomn-02 li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/reform/cases/03/before-01.jpg );
}

#reform #part-r-cases #case-03 .colomn-02 li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/reform/cases/03/before-02.jpg );
}

#reform #part-r-cases #case-03 .colomn-02 li:nth-of-type( 3 ) .box-img {
    background-image: url( /common/img/reform/cases/03/03.jpg );
}

#reform #part-r-cases #case-03 .colomn-02 li:nth-of-type( 4 ) .box-img {
    background-image: url( /common/img/reform/cases/03/04.jpg );
}

#reform #part-r-cases #case-04 .box-img.fit {
    background-image: url( /common/img/reform/cases/04/01.jpg );
}

#reform #part-r-cases #case-05 .box-img.fit {
    background-image: url( /common/img/reform/cases/05/01.jpg );
}

#reform #part-r-cases #case-06 .box-img.fit {
    background-image: url( /common/img/reform/cases/06/01.jpg );
}

#reform #part-r-cases #case-07 .box-img.fit {
    background-image: url( /common/img/reform/cases/07/01.jpg );
}

#reform #part-r-cases #case-08 .box-img.fit .box-img {
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

#reform #part-r-cases #case-08 .box-img.fit .box-img:nth-of-type( 1 ) {
    background-image: url( /common/img/reform/cases/08/01.jpg );
}

#reform #part-r-cases #case-08 .box-img.fit .box-img:nth-of-type( 2 ) {
    background-image: url( /common/img/reform/cases/08/02-central.jpg );
    left: 50%;
}

#reform #part-r-cases section:last-of-type,
#reform #part-r-cases section:last-of-type ul.zoom-list {
    margin-bottom: 0;
}

#reform #part-loan {
    padding-bottom: 60px;
}

#reform #part-loan .colomn-03 {
    margin-bottom: 0;
    text-align: center;
}

#reform #part-loan .colomn-03 img {
    width: 93%;
    margin-bottom: 25px;
}

#reform #part-loan .colomn-03 h1.tit-02 {
    margin-bottom: 5px;
    text-align: center;
}

/*=============================================================
09. example
=============================================================*/

#example .bg-fix-area {
    padding-top: 50px;
}

#example #visual #pages-img-scale {
    background-image: url( /common/img/example/visual.jpg );
}

#example #visual .central #deco-01 {
    background-image: url( /common/img/example/visual-tit-deco-01.jpg );
}

#example #visual .central #deco-02 {
    background-image: url( /common/img/example/visual-tit-deco-02.jpg );
}

#example #bg {
    background-image: url( /common/img/example/bg.jpg );
    background-position: center bottom;
}

#example .box-desc {
    margin-bottom: 40px;
}

#example ul.zoom-list li {
    width: 33.33333%;
    padding: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
}

#example ul.zoom-list li img {
    vertical-align: top;
}

/*=============================================================
10. company
=============================================================*/

#company #visual #pages-img-scale {
    background-image: url( /common/img/company/visual.jpg );
}

#company #visual .central #deco-01 {
    background-image: url( /common/img/company/visual-tit-deco-01.jpg );
}

#company #visual .central #deco-02 {
    background-image: url( /common/img/company/visual-tit-deco-02.jpg );
}

#company #bg {
    background-image: url( /common/img/company/bg.jpg );
    background-position: center bottom;
}

#company #part-msg.row-divi .box-pictorial .box-img p {
    padding: 22px 20px 20px 22px;
    margin-bottom: 0;
    background: rgba( 255,255,255,0.85 );
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    font-size: 15px;
    line-height: 1.5;
}

#company #part-msg.row-divi .box-pictorial .box-img {
    background-image: url( /common/img/company/img-01.jpg?v1 );
}

#company #part-msg.row-divi .box-pictorial::before {
    background-image: url( /common/img/company/pict-deco-01.jpg );
}

#company #part-outline .row-img-fit:nth-of-type( 1 ) {
    margin-bottom: 0;
}

#company #part-outline .row-img-fit:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/company/img-02.jpg );
}

#company #part-outline .row-img-fit:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/company/img-03.jpg );
}

#company #map-01 {
    width: 100%;
    height: 500px;
}

#company #part-group .row-img-fit:nth-of-type( 1 ) {
    margin-bottom: 0;
}

#company .base-white-alpha {
    width: 100%;
    padding: 40px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: rgba( 255,255,255,0.9 );
}

#company #part-group .row-img-fit:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/company/img-04.jpg );
}

/*=============================================================
11. contact
=============================================================*/

#contact #visual #pages-img-scale {
    background-image: url( /common/img/contact/visual.jpg );
}

#contact #visual .central #deco-01 {
    background-image: url( /common/img/contact/visual-tit-deco-01.jpg );
}

#contact #visual .central #deco-02 {
    background-image: url( /common/img/contact/visual-tit-deco-02.jpg );
}

#contact #bg {
    background-image: url( /common/img/contact/bg.jpg );
}

#contact .base-white-alpha {
    width: 100%;
    padding: 40px 60px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: rgba( 255,255,255,0.4 );
}

#contact .required {
    color: #f00;
}

#contact #formWrap {
	width: 100%;
}

#contact #formWrap span.top-adjuster {
    position: relative;
    top: 1px;
    left: 0;
    z-index: 1;
}

#contact table.formTable {
	width:100%;
	margin:0 auto 30px;
	border-collapse:collapse;
}

#contact table.formTable td,
#contact table.formTable th {
	border: 1px solid #fff;
	padding: 20px;
}

#contact table.formTable th {
	width: 31%;
	font-weight: normal;
	background: rgba( 255,255,255,0.5 );
	text-align: left;
    vertical-align: middle;
}

#contact table.formTable select {
    background: #fff;
    font-size: 15px;
}

#contact table.formTable input[type="text"],
#contact table.formTable textarea {
    display: inline-block;
    width: 100%;
    padding: 10px;
    border: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-weight: normal;
    line-height: 1.7;
    font-size: 17px;
    color: #333;
}

#contact table.formTable input[type="text"].short-em {
    width: 12em;
}

#contact table.formTable input[type="text"].short {
    width: 50%;
}

#contact table.formTable label {
    cursor: pointer;
}

#contact table.formTable td .ul-mb {
    margin-bottom: 15px;
}

#contact table.formTable td .ul-li-mb li {
    margin-bottom: 20px;
}

#contact table.formTable td .ul-li-mb li:last-of-type {
    margin-bottom: 0;
}

#contact table.formTable td .colomn-04 {
    margin-bottom: 0;
}

#contact table.formTable td .colomn-04 li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 3px;
    font-size: 15px;
    letter-spacing: 1px;
}

#contact table.formTable td .colomn-04 img {
    background: rgba( 255,255,255,0.6 );
}

a.line-btn  {
    width: 18%;
    display: block;
    margin: 10px auto;
}

/*=============================================================
12. mail
=============================================================*/

#mail #bg {
    background-image: url( /common/img/mail/bg.jpg );
}

#mail #formWrap {
    padding-top: 120px;
    margin-bottom: 40px;
}

#mail #formWrap .errm-wrapper {
    margin-bottom: 40px;
    border-top: solid 1px #fff;
}

#mail p.error_messe{
	padding: 15px 0;
    border-bottom: solid 1px #fff;
    margin-bottom: 0;
}

#mail #formWrap p.mb-adjust {
    margin-bottom: 40px;
}

#mail #formWrap {
	width: 100%;
	margin:0 auto;
}
#mail table.formTable{
	width:100%;
	margin:0 auto 40px;
	border-collapse:collapse;
}
#mail table.formTable td,
#mail table.formTable th{
	border:1px solid #fff;
	padding:20px;
    word-break: break-all;
}
#mail table.formTable th{
	width:31%;
	font-weight:normal;
	background: rgba( 255,255,255,0.5 );
	text-align:left;
}

#mail #main-footer,
#mail #main-footer a.arrow-orange {
    color: #888;
}

#mail #main-footer {
    border-top: none;
    background: none;
}

/*=============================================================
13. thanks
=============================================================*/

#thanks #bg {
    background-image: url( /common/img/thanks/bg.jpg );
    background-position: left bottom;
}

#thanks #wrapper #contents {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    overflow: hidden;
}

#thanks #thanks-msg {
    width: 60%;
    max-width: 720px;
    min-width: 660px;
    top: 52%;
    text-align: center;
    transition: all ease 800ms;
    transition-delay: 500ms;
    opacity: 0;
    overflow: hidden;
}

#thanks.loaded #thanks-msg {
    top: 46%;
    opacity: 0.99999;
}

#thanks #thanks-msg h1.tit-01 {
    padding: 25px 0;
    margin-bottom: 0;
    background: rgba( 255,255,255,0.7 );
    background: #f78b1e;
    color: #fff;
    -webkit-border-radius: 8px 8px 0 0;
    border-radius: 8px 8px 0 0;
}

#thanks #thanks-msg .msg-detail {
    padding: 30px 5px;
    background: rgba( 255,255,255,0.95 );
    -webkit-border-radius: 0 0 8px 8px;
    border-radius: 0 0 8px 8px;
}

#thanks #thanks-msg .msg-detail .btn-01 {
    margin-bottom: 0;
}

#thanks #main-footer,
#thanks #main-footer a.arrow-orange {
    color: #fff;
}

#thanks #main-footer {
    width: 100%;
    padding: 0 0 35px 0;
    border-top: none;
    background: none;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

#thanks #main-footer aside ul img {
    background: rgba( 255,255,255,0.85 );
    border: none;
}

/*=============================================================
14. electricity
=============================================================*/

#electricity #visual #pages-img-scale {
    background-image: url( /common/img/electricity/visual.jpg );
}

#electricity #visual .central #deco-01 {
    background-image: url( /common/img/electricity/visual-tit-deco-01.jpg );
}

#electricity #visual .central #deco-02 {
    background-image: url( /common/img/electricity/visual-tit-deco-02.jpg );
}

#electricity #bg {
    background-image: url( /common/img/electricity/bg.jpg );
}

#electricity #part-plan ul {
    margin-bottom: 0;
}

#electricity #part-plan ul li .box-text p {
    text-align: left;
}

#electricity #part-plan ul li .box-img {
    padding-top: 85%;
    margin-bottom: 20px;
}

#electricity #part-plan ul li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/electricity/img-01.jpg );
}

#electricity #part-plan ul li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/electricity/img-02.jpg );
}

#electricity #part-price .box-img {
    background-image: url( /common/img/electricity/img-03.jpg );
}

#electricity #part-price .box-text ul li:nth-of-type( 1 ) {
    padding-bottom: 45px;
    border-bottom: solid 1px #f78b1e;
    margin-bottom: 30px;
}

#electricity #part-merit ul {
    margin-bottom: 0;
}

#electricity #part-merit ul li .box-img {
    padding-top: 110%;
    margin-bottom: 28px;
}

#electricity #part-merit ul li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/electricity/img-04.jpg );
}

#electricity #part-merit ul li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/electricity/img-05.jpg );
}

#electricity #part-merit ul li:nth-of-type( 3 ) .box-img {
    background-image: url( /common/img/electricity/img-06.jpg );
}

#electricity #part-merit ul li .box-text h1 {
    text-align: center;
}

#electricity #part-merit ul li .box-text p {
    text-align: left;
}

#electricity #part-safty ul {
    margin-bottom: 0;
}

#electricity #part-safty ul li .box-img {
    padding-top: 110%;
    margin-bottom: 28px;
}

#electricity #part-safty ul li:nth-of-type( 1 ) .box-img {
    background-image: url( /common/img/electricity/img-07.jpg );
}

#electricity #part-safty ul li:nth-of-type( 2 ) .box-img {
    background-image: url( /common/img/electricity/img-08.jpg );
}

#electricity #part-safty ul li:nth-of-type( 3 ) .box-img {
    background-image: url( /common/img/electricity/img-09.jpg );
}

#electricity #part-safty ul li .box-text h1 {
    text-align: center;
}

#electricity #part-safty ul li .box-text p {
    text-align: left;
}

/*=============================================================
15. privacy
=============================================================*/

#privacy #visual {
    margin-bottom: 20px;
}

#privacy #visual #pages-img-scale {
    background-image: url( /common/img/privacy/visual.jpg );
}

#privacy #visual .central #deco-01 {
    background-image: url( /common/img/privacy/visual-tit-deco-01.jpg );
}

#privacy #visual .central #deco-02 {
    background-image: url( /common/img/privacy/visual-tit-deco-02.jpg );
}

#privacy #bg {
    background-image: url( /common/img/privacy/bg.jpg );
    background-position: center bottom;
}

#privacy #part-01 p.mb-super-plus,
#privacy #part-01 section {
    margin-bottom: 40px;
}

#privacy #part-01 section:last-of-type {
    margin-bottom: 0;
}

#privacy #part-01 section h1.tit-02 {
    margin-bottom: 2px;
}

#privacy #part-01 section ol li {
    margin-left: 1.7em;
    text-indent: -1.7em;
}

/*=============================================================
16. media query
=============================================================*/

@media screen and (orientation: portrait) {

    #home #visual #intro #intro-deco-set {
        width: 180%;
        padding-top: 180%;
    }

    #concept #bg {
        background-image: url( /common/img/concept/bg-portrait.jpg );
        background-position: center center;
    }

}

@media screen and (min-width: 1500px) {

    .pages #visual .central {
        width: 58%;
    }

}

@media screen and (max-width: 1480px) {

    #concept #part-cost .row-wood .box-text {
        width: 62%;
    }

    #concept #part-cost .row-wood .wood-figure-wrapper {
        width: 35%;
    }

}

@media screen and (max-width: 1400px) {

    .btn-01 {
        font-size: 22px;
    }

}

@media screen and (max-width: 1366px) {

    #main-header #nav-wrapper .central {
        width: 100%;
    }

}

@media screen and (max-width: 1300px) {

    .row-divi .box-text {
        padding: 20px 0;
    }

    .row-double-img ul li:nth-of-type( 2 ) {
        top: -40px;
    }

    #concept #part-cost .row-wood .box-text {
        width: 59%;
    }

    #concept #part-cost .row-wood .wood-figure-wrapper {
        width: 38%;
    }

}

@media screen and (max-width: 1280px) {

    body {
        font-size: 17px;
    }

    a.arrow-orange::before {
        width: 6px;
        height: 22px;
    }

    strong.with-underline,
    strong.with-underline span {
        font-size: 17px;
    }

    #main-footer {
        font-size: 14px;
    }

    .tit-01 {
        font-size: 30px;
    }

    .tit-02 {
        font-size: 22px;
        letter-spacing: 2px;
    }

    .btn-01 {
        font-size: 20px;
    }

    .row-divi .box-text {
        padding: 0;
    }

    #concept #part-cost .row-wood {
        padding-bottom: 30px;
    }

    #contact .base-white-alpha {
        padding: 32px 40px;
    }

    .btn-02,
    .btn-03 {
        width: 36%;
    }

}

@media screen and (orientation: portrait ) and (max-width: 1024px) {

    #main-header #nav-wrapper .central {
        /* width: 72%; */
    }

    .pages #visual .central {
        width: 82%;
    }

    #privacy #visual #pages-img-scale {
        background-position: 29% center;
    }

}

@media screen and (orientation: portrait ) and (max-width: 767px) {

    #main-header #nav-wrapper .central {
        /* width: 76%; */
    }

    #home #visual #intro #intro-deco-set {
        width: 240%;
        padding-top: 240%;
    }

}

@media screen and (max-width: 1200px) {

    .table-01 th {
        width: 33%;
    }

    #contact #formWrap span.top-adjuster {
        top: 2px;
    }

    #contact table.formTable td .colomn-04 li {
        padding: 0 1px;
        letter-spacing: 0;
        font-size: 13px;
    }

    #contact table.formTable input[type="text"].short {
        width: 100%;
    }

    #mail #formWrap .tit-01.mb-minus {
        margin-bottom: 3px;
    }

    #mail #formWrap p.mb-adjust {
        margin-bottom: 33px;
    }

    #thanks #bg {
        background-position: center bottom;
    }

}

@media screen and (max-width: 1000px) {

	.pc {
		display: none;
    }

	.sp {
		display: inline-block;
    }

    #main-header #nav-wrapper #nav-box ul li a {
        /* padding-left: 0; */
    }

    #main-header #nav-wrapper #nav-box ul li a::before {
        display: none;
    }

    #main-footer {
        padding: 43px 0 50px;
    }

    #part-contact .btn-01 {
        margin-bottom: 15px;
    }

    #part-contact img {
        width: 100%;
    }

    .mass {
        padding-bottom: 60px;
    }

    .mass.pt-little-plus {
        padding-top: 20px;
    }

    .inner {
        width: 86%;
    }

    .tit-01.pt-plus {
        padding-top: 4px;
    }

    .btn-01 {
        display: block;
        max-width: initial;
        width: 66%;
        margin: 0 auto;
    }

    .box-img .ov .central-y {
        font-size: 20px;
    }

    ul.colomn-04 li .tit-02 {
        font-size: 18px;
    }

    .row-divi {
        padding-bottom: 55px;
    }

    .row-divi .box-text .tit-01 {
        padding: 0;
        margin-bottom: 15px;
        text-align: center;
    }

    .row-divi .box-text .tit-01::before {
        display: none;
    }

    .row-divi .box-pictorial {
        width: 100%;
        padding-top: 70%;
        margin-bottom: 30px;
        position: relative;
    }

    .row-divi .box-pictorial .box-img {
        width: 86%;
    }

    .row-divi.pictrial-left .box-img,
    .row-divi.pictrial-right .box-img {
        left: 7%;
    }

    .row-divi .box-text {
        width: 86%;
        padding: 0;
    }

    .row-divi.pictrial-left .box-text,
    .row-divi.pictrial-right .box-text {
        margin: 0 auto;
    }

    .row-divi .box-text .text-wrapper {
        padding: 0;
    }

    .row-img-fit .box-img,
    .row-img-fit .box-text {
        width: 100%;
    }

    .row-img-fit .box-img {
        padding-top: 80%;
        position: relative;
        top: 0;
        left: 0;
        z-index: 1;
    }

    .row-img-fit.img-left .box-text {
        margin-left: 0;
    }

    .row-img-fit.img-right .box-img {
        left: 0;
    }

    #home #visual #intro #lines-width #copy img {
        padding: 5% 0;
    }

    #home #visual #intro #lines-vertical {
        width: 16%;
    }

    #home #visual #intro #lines-width {
        padding-top: 15.9%;
    }

    #home #visual #intro #lines-width #logo-big {
        width: 80%;
    }

    #home #part-about.row-divi .box-text {
        margin-bottom: 45px;
    }

    #home #part-cases .box-img {
        height: 100%;
    }

    #home #part-cases.row-divi .box-pictorial::before {
        height: 50%;
    }

    #home #part-cases .text-wrapper .box-img {
        display: none;
    }

    #concept #part-cost .row-img-fit .box-img {
        width: 50%;
        padding-top: 0;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
    }

    #concept #part-cost .row-wood {
        padding-bottom: 45px;
    }

    #concept #part-cost .row-wood .box-text {
        width: 50%;
        position: relative;
        top: 0;
        left: 0;
        z-index: 1;
        -webkit-transform: translateY( 0 );
        transform: translateY( 0 );
    }

    #concept #part-cost .row-wood .wood-figure-wrapper {
        width: 48%;
    }

    #yk-design #part-cases.row-divi .text-wrapper .box-img {
        display: none;
    }

    #reform #part-r-cases .inner.divi-row {
        width: 86%;
        margin: 0 auto;
    }

    #reform #part-r-cases .box-img.fit {
        width: 100%;
        padding-top: 70%;
        margin-bottom: 32px;
        position: relative;
    }

    #reform #part-r-cases .box-text {
        width: 100%;
        margin-bottom: 30px;
    }

    #reform #part-r-cases .img-left .box-text {
        margin-left: 0;
    }

    #reform #part-r-cases .img-right .inner.divi-row {
        left: 0;
    }

    #reform #part-r-cases .b-a-set {
        padding-top: 5px;
        margin-bottom: 32px;
    }

    #reform #part-r-cases .colomn-02.b-a-set li .box-img p {
        width: 7em;
        padding: 5px 0;
        left: 10px;
        bottom: 6px;
        font-size: 14px;
    }

    #reform #part-loan ul.colomn-03 li {
        width: 100%;
        margin-bottom: 40px;
    }

    #reform #part-loan ul.colomn-03 li:last-of-type {
        margin-bottom: 0;
    }

    #reform #part-loan .colomn-03 img {
        width: 100%;
        margin-bottom: 20px;
    }

    #reform #part-loan .colomn-03 h1.tit-02 {
        margin-bottom: 3px;
    }

    #company .row-divi .box-pictorial {
        padding-top: 100%;
    }

    #company #part-msg h1.tit-01 {
        text-align: left;
    }

    #company #part-outline .row-img-fit:nth-of-type( 2 ) .box-img {
        display: none;
    }

    #company #part-outline .row-img-fit {
        margin-bottom: 0;
    }

    #contact table.formTable th {
        width: 34%;
    }

    #contact table.formTable td .colomn-04 li {
        width: 50%;
        margin-bottom: 20px;
    }

    #contact table.formTable td .colomn-04 li:nth-of-type( 3 ),
    #contact table.formTable td .colomn-04 li:nth-of-type( 4 ) {
        margin-bottom: 0;
    }

    #facility #part-01 .row.merit > div {
        width: 100%;
        float: none;
    }

    #facility #part-01 .row.merit > div:nth-of-type( 1 ),
    #facility #part-01 .row.merit > div:nth-of-type( 2 ) {
        padding: 0;
    }

    #facility #part-01 .row.merit > div:nth-of-type( 1 ) {
        margin-bottom: 35px;
    }

    #facility #part-02 .flow-asset .lefter .tit-02,
    #facility #part-02 .flow-asset .righter .tit-02 {
        font-size: 140%;
    }

    #facility #part-02 .flow-asset .lefter {
        width: 68%;
    }

    #facility #part-02 .flow-asset .lefter .v-asset p {
        font-size: clamp( 14px, 2.6vw, 22px );
    }

    #facility #part-02 .flow-asset .lefter ol li span {
        font-size: clamp( 14px, 2vw, 24px );
    }

    #facility #part-02 .flow-asset .righter {
        width: 30%;
    }

    #facility #part-02 .flow-asset .righter ol {
        height: calc( 100% - 45px );
        top: 45px;
    }

    #facility #part-02 .flow-asset .righter ol li {
        font-size: 100%;
    }

    #facility #part-02 .flow-asset .righter ol li::after {
        background: url( /common/img/facility/arrow-below-tab.png ) 0 0 no-repeat;
        -webkit-background-size: 100% 100%;
        background-size: 100% 100%;
    }

    a.arrow-orange::before {
        top: 1px;
    }

}

@media screen and (max-width: 800px) {

    #home #part-crossBox h2 {
        width: 100%;
    }

    #home #part-crossBox .flex-box ul {
        display: block;
    }

    #home #part-crossBox .flex-box ul li {
        width: 100%;
        margin-right: 0;
        padding: 0 4% 6%;
        margin-bottom: 20px;

    }

    #home #part-crossBox .flex-box ul li h3 {
        font-size: 20px;
    }

    #home #part-crossBox a {
        width: 100%;
    }
    
}

@media screen and (max-width: 700px) {

    .pc-alt,
    .pc-visual {
        display: none;
    }

    .sp-alt {
        display: inline-block;
    }

    .ta-c-sp-l {
        text-align: left;
    }

    .oragne-text,
    .oragne-text a {
        font-size: 24px;
    }

    #main-header #nav-wrapper #nav-box nav {
        display: block;
    }

    #part-contact p.mb-plus {
        margin-bottom: 15px;
    }

    #part-contact img {
        width: 106%;
        margin-bottom: 20px;
        margin-left: -3%;
    }

    #part-contact .btn-01 {
        margin-bottom: 7px;
    }

    a.line-btn {
        width: 60%;
        margin: 15px auto;
    }

    #visual #icon-scroll,
    #visual #icon-scroll #scroll-inner #bar {
        height: 90px;
    }

    #visual #icon-scroll {
        width: 18px;
        padding-left: 15px;
    }

    #visual #icon-scroll img {
        width: 10px;
    }

    #main-header h1 {
        width: 192px;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 1;
    }

    #main-header h1 a img {
        width: 100%;
        height: auto;
    }

    #main-header #icon-menu,
    #main-header #icon-close {
        width: 80px;
        height: 80px;
    }

    #main-header #nav-wrapper .central {
       /*  width: 52%; */
        width: 80%;
        left: 50%;
    }

    #main-header #nav-wrapper #nav-box ul {
        width: 100%;
    }

    #main-header #nav-wrapper #nav-box ul:nth-of-type( 1 ) {
        padding-right: 0;
    }

    #main-header #nav-wrapper #nav-box ul:nth-of-type( 2 ) {
        padding-left: 0;
    }

    #main-header #nav-wrapper #nav-box ul li a {
        padding: 3.5% 0;
    }

    #main-footer {
        padding: 36px 0 44px;
        font-size: 15px;
    }

    #main-footer aside ul li {
        width: 55px;
    }

    .pages #visual .central {
        width: 106%;
    }

    .pages #visual .central #visual-tit {
        padding: 21% 0 17%;
    }

    .pages #visual .central #deco-01 {
        top: 16%;
    }

    .btn-01 {
        width: 100%;
        padding: 40px 0;
        border: solid 3px #f68b1f;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .btn-01:hover {
        color: #f68b1f;
    }

    .btn-01::before,
    .btn-01 .lines-01,
    .btn-01 .lines-02 {
        display: none;
    }

    .mass.pt-plus {
        padding-top: 50px;
    }

    .mass.pb-minus {
        padding-bottom: 35px;
    }

    .white-base,
    .top-line {
        padding-top: 35px;
    }

    p.mb-super-plus {
        margin-bottom: 30px;
    }

    .tit-01 {
        margin-bottom: 30px;
        line-height: 1.4;
        font-size: 27px;
        letter-spacing: 2px;
    }

    .tit-01.mb-plus {
        margin-bottom: 40px;
    }

    .tit-01.mb-minus {
        margin-bottom: 17px;
    }

    ul.colomn-02 li,
    ul.colomn-03 li,
    ul.colomn-04 li {
        width: 100%;
        margin-bottom: 35px;
    }

    ul.colomn-02 li:last-of-type,
    ul.colomn-03 li:last-of-type,
    ul.colomn-04 li:last-of-type {
        margin-bottom: 0;
    }

    ul.colomn-02 li .box-img,
    ul.colomn-03 li .box-img,
    ul.colomn-04 li .box-img {
        padding-top: 110%;
    }

    ul.colomn-04 li .tit-02 {
        font-size: 22px;
    }

    .row-divi .box-pictorial {
        padding-top: 100%;
    }

    .row-double-img {
        width: 86%;
        margin: 0 auto;
    }
    
    .row-double-img ul li:nth-of-type( 1 ),
    .row-double-img ul li:nth-of-type( 2 ) {
        width: 100%;
    }

    .row-double-img ul li:nth-of-type( 1 ) {
        float: none;
    }

    .row-double-img ul li:nth-of-type( 2 ) {
        top: 0;
    }

    .row-double-img-alt {
        width: 86%;
        margin: 0 auto 30px;
    }
    
    .row-double-img-alt ul li:nth-of-type( 1 ),
    .row-double-img-alt ul li:nth-of-type( 2 ) {
        width: 100%;
    }

    .row-double-img-alt ul li:nth-of-type( 1 ) {
        float: none;
    }

    .row-double-img-alt ul li:nth-of-type( 2 ) {
        margin-top: 0;
    }

    .row-double-img-alt ul li:nth-of-type( 1 ) .box-img,
    .row-double-img-alt ul li:nth-of-type( 2 ) .box-img {
        padding-top: 100%;
    }

    .box-img.wide {
        padding-top: 100%;
    }

    #home #visual #intro #lines-width #copy img {
        padding: 5.4% 0;
    }

    #home #visual #intro #lines-vertical {
        width: 17.3%;
    }

    #home #visual #intro #lines-width {
        padding-top: 17.9%;
    }

    #home #visual #intro #lines-width #logo-big {
        width: 89%;
    }

    #home #part-about.row-divi .box-text {
        padding-bottom: 25px;
        margin-bottom: 0;
    }

    #home #part-event .box-img,
    #home #part-event .box-text {
        width: 100%;
    }

    #home #part-event ul li article {
        background: none;
    }

    #home #part-event .box-img {
        padding-top: 100%;
        position: relative;
    }

    #home #part-event .box-text {
        padding: 40px 7% 45px;
        margin-left: 0;
    }

    #home #part-event a.line-btn {
        width: 60%;
        margin: 15px auto;
    }

    #home #part-business {
        padding-bottom: 37px;
        border-bottom: solid 1px #f68b1f;
        margin-bottom: 50px;
    }
	
	#home #part-zeh img {
		width: 100%;
	}
	
    #concept #part-material {
        padding-bottom: 35px;
    }

    #concept #part-muku .colomn-04 {
        margin-bottom: 15px;
    }

    #concept #part-muku .colomn-04 li {
        width: 50%;
        margin-bottom: 15px; 
    }

    #concept #part-muku .colomn-04 li:nth-of-type( 3 ),
    #concept #part-muku .colomn-04 li:nth-of-type( 4 ) {
        margin-bottom: 0;
    }

    #concept #part-muku .colomn-04 li:nth-child( odd ) {
        padding: 0 4px 0 0;
    }

    #concept #part-muku .colomn-04 li:nth-child( even ) {
        padding: 0 0 0 4px;
    }

    #concept #part-muku .colomn-04 li .box-img {
        margin-bottom: 5px;
    }

    #concept #part-muku .colomn-02 li .box-img p {
        width: 100%;
        left: 0;
        bottom: 0;
        background: rgba( 255,255,255,0.6 );
        line-height: 0;
    }

    #concept #part-muku .colomn-02 li .box-img p img {
        padding: 2.5%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    #concept #part-muku .colomn-02 li:nth-of-type( 1 ) .box-img {
        background-position: left center;
    }

    #concept #part-cost .row-img-fit .box-img {
        display: none;
    }

    #concept #part-cost .row-img-fit .box-text {
        width: 100%;
        margin-left: 0;
    }

    #concept #part-cost .row-wood .wood-figure-wrapper,
    #concept #part-cost .row-wood .box-text {
        width: 100%;
    }

    #concept #part-cost .row-wood .wood-figure-wrapper {
        margin-bottom: 25px;
    }

    #concept #part-long-term {
        padding-bottom: 35px;
    }

    #concept #part-sekkei .colomn-02 li:nth-of-type( 1 ) .box-img {
        background-position: left center;
    }

    #concept #part-green li:nth-of-type( 1 ),
    #concept #part-green li:nth-of-type( 2 ) {
        width: 100%;
    }

    #concept #part-green li:nth-of-type( 2 ) {
        margin-top: 0;
    }

    #concept #part-green li:nth-of-type( 1 ) .box-img,
    #concept #part-green li:nth-of-type( 2 ) .box-img {
        padding-top: 60%;
    }

    #yk-design #part-yk-design {
        padding-bottom: 35px;
    }

    #yk-design #part-yk-design.row-divi .box-pictorial::before {
        background-position: center right;
    }

    #yk-design #part-point {
        padding-bottom: 40px;
    }

    #yk-design #part-point .colomn-04 {
        margin-bottom: 30px;
    }

    #yk-design #part-point .colomn-04 li {
        width: 50%;
        margin-bottom: 0;
    }

    #yk-design #part-point ul.colomn-04 li .box-img {
        padding-top: 150%;
    }

    #yk-design #part-cases.row-divi .box-pictorial::before {
        background-position: left center;
    }

    #reform #part-concept {
        padding-top: 45px;
        padding-bottom: 40px;
    }

    #reform #part-concept h1.tit-01 {
        font-size: 26px;
    }

    #reform #part-menu {
        padding-bottom: 30px;
    }

    #reform #part-menu ul.colomn-03 li {
        margin-bottom: 30px;
    }

    #reform #part-menu ul.colomn-03 li:last-of-type {
        margin-bottom: 0;
    }

    #reform #part-menu ul.colomn-03 li .box-img {
        padding-top: 100%;
        margin-bottom: 17px;
    }

    #reform #part-menu ul.colomn-03 li p {
        font-size: 22px;
    }

    #reform #part-r-cases {
        padding-bottom: 50px;
    }

    #reform #part-r-cases .cases-row {
        padding-top: 50px;
        margin-bottom: 45px;
    }

    #reform #part-r-cases #case-01.cases-row {
        padding-top: 0;
    }

    #reform #part-r-cases .box-img.fit {
        padding-top: 100%;
        margin-bottom: 25px;
    }

    #reform #part-r-cases .box-text h1.tit-02 {
        margin-bottom: 10px;
        text-align: center;
    }

    #reform #part-r-cases .zoom-list {
        width: calc( 100% + 8px );
        margin-left: -4px;
        margin-bottom: 0;
    }

    #reform #part-r-cases .zoom-list li {
        width: calc( 100% / 3 );
        padding: 4px;
    }

    #reform #part-r-cases .b-a-set li {
        margin-bottom: 0;
    }

    #reform #part-r-cases .colomn-02.b-a-set li .box-img {
        padding-top: 75%;
    }

    #reform #part-r-cases #case-08 .box-img.fit .box-img {
        width: 100%;
        padding-top: 100%;
        position: relative;
        top: 0;
        left: 0;
        z-index: 1;
    }

    #reform #part-r-cases #case-08 .box-img.fit {
        padding-top: 0;
    }

    #reform #part-r-cases #case-08 .box-img.fit .box-img:nth-of-type( 2 ) {
        left: 0;
    }

    #reform #part-loan {
        padding-bottom: 42px;
    }

    #example .bg-fix-area {
        padding-top: 40px;
    }

    #example .mass {
        padding-bottom: 50px;
    }

    #example .box-desc {
        margin-bottom: 25px;
    }

    #part-msg {
        padding-bottom: 45px;
    }

    .table-01,
    .table-01 tbody,
    .table-01 tr,
    .table-01 th,
    .table-01 td {
        display: block;
        width: 100%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .table-01 tr:nth-child( odd ) th,
    .table-01 tr:nth-child( even ) th {
        background: rgba( 254,158,61,0.9 );
    }
    
    .row-left-divi .inner-left-divi {
        width: 100%;
    }

    .row-left-divi .box-img {
        width: 100%;
        padding-top: 100%;
        margin-bottom: 35px;
        position: relative;
    }

    .row-left-divi .box-text {
        width: 86%;
        margin: 0 auto;
    }

    .btn-04 {
        -webkit-border-radius: 0;
        border-radius: 0;
    }

    #electricity #visual .central {
        width: 96%;
    }

    #electricity #part-yk-electricity {
        padding-bottom: 53px;
    }

    #electricity #part-plan,
    #electricity #part-merit,
    #electricity #part-safty {
        padding-bottom: 42px;
    }

    #electricity #part-price {
        padding-bottom: 50px;
    }

    #electricity #part-price h1.tit-02 {
        text-align: center;
    }

    #electricity #part-safty .indent-adjuster {
        display: inline-block;
        margin-left: 0.7em;
    }

    #contact #part-notion {
        padding-bottom: 25px;
    }

    #contact #part-form {
        padding-bottom: 50px;
    }

    #contact #part-form h1.tit-01.mb-minus {
        margin-bottom: 33px;
        font-size: 29px;
    }

    #contact .base-white-alpha {
        padding: 0;
        background: none;
    }

    #contact table.formTable,
    #contact table.formTable tbody,
    #contact table.formTable tr,
    #contact table.formTable th,
    #contact table.formTable td,
    #mail table.formTable,
    #mail table.formTable tbody,
    #mail table.formTable tr,
    #mail table.formTable th,
    #mail table.formTable td {
        width: 100%;
        display: block;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    #contact table.formTable th,
    #contact table.formTable td,
    #mail table.formTable th,
    #mail table.formTable td {
        border-bottom: none;
    }

    #contact table.formTable tr:last-of-type td,
    #mail table.formTable tr:last-of-type td {
        border-bottom: solid 1px #fff;
    }

    #contact table.formTable td .ul-li-mb li p {
        margin-bottom: 9px;
    }

    #contact p.ta-c input,
    #mail p.ta-c input {
        margin-bottom: 10px;
    }

    #contact p.ta-c input:last-of-type,
    #mail p.ta-c input:last-of-type {
        margin-bottom: 0;
    }

    .btn-02, .btn-03 {
        width: 100%;
    }

    #mail #formWrap {
        padding-top: 105px;
    }

    #mail #formWrap .tit-01.mb-minus {
        margin-bottom: 15px;
    }

    #mail #formWrap p.mb-adjust {
        margin-bottom: 25px;
    }

    #mail #formWrap .ta-c {
        text-align: left;
    }

    #thanks #thanks-msg {
        width: 86%;
        min-width: auto;
        top: 56%;
    }

    #thanks.loaded #thanks-msg {
        top: 50%;
    }

    #thanks #thanks-msg h1.tit-01 {
        padding: 20px 0;
        font-size: 20px;
        letter-spacing: 1px;
    }

    #thanks #thanks-msg .msg-detail {
        padding: 18px 22px 22px 22px;
    }

    #thanks #thanks-msg .msg-detail .btn-01 {
        padding: 30px 0;
        font-size: 20px;
        letter-spacing: 1px;
    }

    #thanks #main-footer aside,
    #thanks #main-footer nav {
        display: none;
    }

    #privacy #visual {
        margin-bottom: 0;
    }

    #privacy #part-01 {
        padding-bottom: 43px;
    }

    #privacy #part-01 p.mb-super-plus,
    #privacy #part-01 section {
        margin-bottom: 25px;
    }

    #facility #part-01 .row.merit > div > section > h1 {
        padding: 21px 25px;
    }

    #facility #part-02 .flow-asset .lefter .tit-02,
    #facility #part-02 .flow-asset .righter .tit-02 {
        font-size: 140%;
        line-height: 1.4;
    }

    #facility #part-02 .flow-asset .righter .tit-02 {
        font-size: clamp( 13px, 3.7vw, 24px );
        letter-spacing: 1px;
        position: relative;
        top: 14px;
        left: 0;
        z-index: 1;
        white-space: nowrap;
    }

    #facility #part-02 .flow-asset .lefter {
        width: 78%;
    }

    #facility #part-02 .flow-asset .lefter .v-asset {
        width: 36px;
    }

    #facility #part-02 .flow-asset .lefter .v-asset .bar {
        width: 19px;
    }

    #facility #part-02 .flow-asset .lefter .v-asset .bar::before {
        left: 9px;
    }

    #facility #part-02 .flow-asset .lefter .v-asset p {
        font-size: clamp( 14px, 3vw, 22px );
    }

    #facility #part-02 .flow-asset .lefter .ch-asset {
        width: calc( 100% - 30px );
        margin-left: 30px;
    }

    #facility #part-02 .flow-asset .lefter .ch-asset > .box-img {
        padding-top: 85%;
    }

    #facility #part-02 .flow-asset .lefter ol li .box-img {
        width: 100px;
    }

    #facility #part-02 .flow-asset .lefter ol li span {
        width: calc( 100% - 100px );
        margin-left: 100px;
        font-size: clamp( 14px, 2vw, 24px );
        letter-spacing: 1px;
    }

    #facility #part-02 .flow-asset .lefter .arrow-below-orange {
        height: 30px;
        background: url( /common/img/facility/arrow-below-orange-sp.png ) center center no-repeat;
        -webkit-background-size: 100% 100%;
        background-size: 100% 100%;
    }

    #facility #part-02 .flow-asset .righter {
        width: 20%;
    }

    #facility #part-02 .flow-asset .righter ol {
        height: calc( 100% - 40px );
        top: 40px;
    }

    #facility #part-02 .flow-asset .righter ol li {
        font-size: 100%;
    }

    #facility #part-02 .flow-asset .righter ol li span {
        display: inline-block;
        width: auto;
        height: 10em;
        writing-mode: vertical-rl;
        line-height: 1.3;
        font-size: 85%;
        letter-spacing: 0;
        top: 49%;
    }

    #facility #part-02 .flow-asset .righter ol li::before {
        height: calc( 100% - 20px );
    }

    #facility #part-02 .flow-asset .righter ol li::after {
        height: 20px;
        background: url( /common/img/facility/arrow-below-sp.png ) 0 0 no-repeat;
        -webkit-background-size: 100% 100%;
        background-size: 100% 100%;
    }

    #facility #part-03 .colomn-03 li {
        margin-bottom: 0;
    }

    a.arrow-orange::before {
        top: 3px;
    }

}

@media screen and (max-width: 600px) {

    #facility #part-01 .row.merit > div > section ul {
        padding: 20px 25px 25px;
    }

    #facility #part-01 .row.merit > div > section ul h1 {
        font-size: 137%;
        letter-spacing: 1px;
    }

    #facility #part-01 .row.merit > div > section ul .under-line {
        font-size: 120%;
    }

}

@media screen and (max-width: 359px) {

    body {
        font-size: 15px;
    }

    .oragne-text,
    .oragne-text a {
        font-size: 20px;
    }

    strong.with-underline,
    strong.with-underline span {
        font-size: 15px;
    }

    #main-header #nav-wrapper #nav-box ul li a {
        padding: 3% 0;
    }

    .tit-01,
    .tit-02 {
        font-size: 20px;
    }

    #contact table.formTable td .colomn-04 li {
        font-size: 11px;
    }

    #thanks #main-footer {
        padding-bottom: 17px;
    }

    #thanks #thanks-msg {
        width: 92%;
    }

    #thanks #thanks-msg .msg-detail {
        padding: 14px 18px 18px 18px;
    }

    #thanks #thanks-msg h1.tit-01 {
        padding: 13px 0;
        font-size: 18px;
    }

    #thanks #thanks-msg .msg-detail p.mb-default {
        margin-bottom: 9px;
    }

    #thanks #thanks-msg .msg-detail .btn-01 {
        padding: 22px 0;
        font-size: 17px;
    }

    #facility #part-02 .flow-asset .lefter ol li .box-img {
        width: 100%;
        height: auto;
        padding-top: 60%;
        margin-bottom: 5px;
        position: relative;
    }

    #facility #part-02 .flow-asset .lefter ol li span {
        width: 100%;
        padding: 0;
        margin-left: 0;
        padding-bottom: 8px;
        border-bottom: none;
        text-align: center;
    }

    #facility #part-02 .flow-asset .lefter ol li:last-of-type span {
        padding-bottom: 0;
    }

    #facility #part-02 .flow-asset .righter ol {
        height: calc( 100% -35px );
        top: 35px;
    }

}

/*=============================================================
17. mobile
=============================================================*/

.mobile #main-header #icon-menu::before {
    display: none;
}

.mobile #main-header #nav-wrapper #nav-box ul li a {
    /* padding-left: 0; */
}

.mobile #main-header #nav-wrapper #nav-box ul li a::before {
    display: none;
}

.mobile .box-img .ov {
    display: none;
}

.mobile #main-footer aside ul li a:hover img {
    transform: translateY( 0 );
}

.mobile a.arrow-orange:hover {
    color: #aaa;
}

.mobile .btn-02:hover {
    background: #f78b1e;
}

.mobile .btn-03:hover {
    border: solid 1px #f78b1e;
    color: #f78b1e;
}

.mobile .btn-04:hover {
    background: none;
    color: #f78b1e;
}

/*=============================================================
18. helper
=============================================================*/

.ta-c {
    text-align: center;
}

.clr {
	clear: both;
}

/*
* clear fix
*/

.cf:before,
.cf:after {
	content:"";
	display: block;
	height: 0;
	overflow: hidden;
}

.cf:after {
	clear: both;
}
