@charset "UTF-8";
/* =====================
  MV
===================== */
.footer{
    padding-top: 1em;
    background: #f6f4f1;
}
main .contents-inner .headstyle::after{
    width: 22px;
    height: 5px;
}

/* =====================
  MV
===================== */
.mv{
    min-width:var(--min-width);
    height: 385px;
    background : linear-gradient( 180deg, white 0px, white 122px, #f6f4f1 123px, #f6f4f1 99%, #f6f4f1 100% );
}
.mv .article{
    margin-left: 9.2%;
    height: inherit;
}
.mv .img{
    position: relative;
    background-position: center top;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
         -o-background-size: cover;
            background-size: cover;
    height: 311px;
    -webkit-border-radius: 0 0 0 150px;
    border-radius: 0 0 0 150px;
}
.mv h1{
    position: relative;
    z-index: 3;
    padding-right: 144px;
    padding-left: 144px;
    text-align: center;
    display: inline-flex;
    -webkit-justify-content: center;
            justify-content: center;
    -webkit-align-items: center;
            align-items: center;
    height: inherit;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    color: #fff;
    font-weight: bold;
    font-size: var(--fz-middle);
}
.flow-contents .mv h1{
    padding-left: 73px;
}
.mv h1::before{
    line-height: 1;
    content: attr(data-en);
    font-size: 60px;
    display: block;
    font-family: var(--ff-amiri);
    color: #fff;
    font-weight: normal;
    letter-spacing: 0.06em;
    margin-bottom: 8px;
}
.mv .text{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    opacity: 0.4;
}
.mv .text path{
    fill : none;
}
.mv .text.on path{
    stroke: #FED36B;
    fill:#FED36B;
}

/* business */
.business-contents .mv .img{background-image: url("../../img/business/mv.png");}
.business-contents .mv .text{
    top: 112px;
    left: 58px;
}
.business-contents .mv .text svg{
    width: 346px;
    height: 74px;
}
.business-contents .mv .text.on path{
    stroke-dasharray: 2386;
    animation: drawText-business 2500ms var(--easeOutExpo) forwards 0ms;
}
@keyframes drawText-business {
    0% {
        stroke-width: 1;
        stroke-dashoffset: 2386;
        fill:transparent;
    }
    50% {
        fill:transparent;
    }
    100% {
        stroke-width: 0;
        stroke-dashoffset: 0;
    }
}

/* company */
.company-contents .mv .img{background-image: url("../../img/company/mv.png");}
.company-contents .mv .text{
    top: 113px;
    left: 36px;
}
.company-contents .mv .text svg{
    width: 413px;
    height: 131px;
}
.company-contents .mv .text.on path{
    stroke-dasharray: 2951;
    animation: drawText-company 2500ms var(--easeOutExpo) forwards 0ms;
}
@keyframes drawText-company {
    0% {
        stroke-width: 1;
        stroke-dashoffset: 2951;
        fill:transparent;
    }
    50% {
        fill:transparent;
    }
    100% {
        stroke-width: 0;
        stroke-dashoffset: 0;
    }
}

/* flow */
.flow-contents .mv .img{background-image: url("../../img/flow/mv.png");}
.flow-contents .mv .text{
    top: 118px;
    left: 64px;
}
.flow-contents .mv .text svg{
    width: 231px;
    height: 68px;
}
.flow-contents .mv .text.on path{
    stroke-dasharray: 1444;
    animation: drawText-flow 2500ms var(--easeOutExpo) forwards 0ms;
}
@keyframes drawText-flow {
    0% {
        stroke-width: 1;
        stroke-dashoffset: 1444;
        fill:transparent;
    }
    50% {
        fill:transparent;
    }
    100% {
        stroke-width: 0;
        stroke-dashoffset: 0;
    }
}

/* work */
.work-contents .mv .img{background-image: url("../../img/work/mv.png");}
.work-contents .mv .text{
    top: 98px;
    left: 82px;
}
.work-contents .mv .text svg{
    width: 252px;
    height: 87px;
}
.work-contents .mv .text.on path{
    stroke-dasharray: 1820;
    animation: drawText-work 2500ms var(--easeOutExpo) forwards 0ms;
}
@keyframes drawText-work {
    0% {
        stroke-width: 1;
        stroke-dashoffset: 1820;
        fill:transparent;
    }
    50% {
        fill:transparent;
    }
    100% {
        stroke-width: 0;
        stroke-dashoffset: 0;
    }
}

/* contact */
.contact-contents .mv .img{background-image: url("../../img/contact/mv.png");}
.contact-contents .mv .text{
    top: 113px;
    left: 93px;
}
.contact-contents .mv .text svg{
    width: 286px;
    height: 76px;
}
.contact-contents .mv .text.on path{
    stroke-dasharray: 1962;
    animation: drawText-contact 2500ms var(--easeOutExpo) forwards 0ms;
}
@keyframes drawText-contact {
    0% {
        stroke-width: 1;
        stroke-dashoffset: 1962;
        fill:transparent;
    }
    50% {
        fill:transparent;
    }
    100% {
        stroke-width: 0;
        stroke-dashoffset: 0;
    }
}

/* policy */
.policy-contents .top .text{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    opacity: 0.4;
}
.policy-contents .top .text path{
    fill : none;
}
.policy-contents .top .text.on path{
    stroke: #FED36B;
    fill:#FED36B;
}
.policy-contents .top .text{
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);
}
.policy-contents .top .text svg{
    width: 660px;
    height: 127px;
}
.policy-contents .top .text.on path{
    stroke-dasharray: 4777;
    animation: drawText-policy 2500ms var(--easeOutExpo) forwards 0ms;
}
@keyframes drawText-policy {
    0% {
        stroke-width: 1;
        stroke-dashoffset: 4777;
        fill:transparent;
    }
    50% {
        fill:transparent;
    }
    100% {
        stroke-width: 0;
        stroke-dashoffset: 0;
    }
}

/* sitemap */
.sitemap-contents .top .text{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    opacity: 0.8;
}
.sitemap-contents .top .text path{
    fill : none;
}
.sitemap-contents .top .text.on path{
    stroke: #FED36B;
    fill:#FED36B;
}
.sitemap-contents .top .text{
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);
}
.sitemap-contents .top .text svg{
    width: 380px;
    height: 124px;
}
.sitemap-contents .top .text.on path{
    stroke-dasharray: 2701;
    animation: drawText-sitemap 2500ms var(--easeOutExpo) forwards 0ms;
}
@keyframes drawText-sitemap {
    0% {
        stroke-width: 1;
        stroke-dashoffset: 2701;
        fill:transparent;
    }
    50% {
        fill:transparent;
    }
    100% {
        stroke-width: 0;
        stroke-dashoffset: 0;
    }
}

/* error */
.error-contents main .contents.static-wrapper{
    padding-top: 73px;
}
.error-contents main .contents.static-wrapper .body{
    margin-top: 57px;
}
.error-contents .top .text{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    opacity: 0.4;
}
.error-contents .top .text path{
    fill : none;
}
.error-contents .top .text.on path{
    stroke: #FED36B;
    fill:#FED36B;
}
.error-contents .top .text{
    top: 0px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
}
.error-contents .top .text svg{
    width: 681px;
    height: 85px;
}
.error-contents .top .text.on path{
    stroke-dasharray: 3629;
    animation: drawText-error 2500ms var(--easeOutExpo) forwards 0ms;
}
@keyframes drawText-error {
    0% {
        stroke-width: 1;
        stroke-dashoffset: 3629;
        fill:transparent;
    }
    50% {
        fill:transparent;
    }
    100% {
        stroke-width: 0;
        stroke-dashoffset: 0;
    }
}

/* =====================
  static
===================== */
main .contents.static-wrapper{
    min-width: var(--min-width);
    background: linear-gradient( 180deg, #fff 0px, #fff 80px, #f6f4f1 81px, #f6f4f1 99%, #f6f4f1 100% );
    padding-top: 35px;
}
main .contents.static-wrapper h1{
    font-weight: bold;
    position: relative;
    z-index: 3;
}
main .contents.static-wrapper h1::before{
    line-height: 1;
    margin-bottom: 0em;
    content: attr(data-en);
    font-size: 60px;
    display: block;
    font-family: var(--ff-amiri);
    color: var(--black);
    font-weight: normal;
    letter-spacing: 0.06em;
}
main .contents.static-wrapper .body{
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 40px;
    padding-left: 40px;
    margin-top: 90px;
}

/* =====================
  コンテンツ
===================== */
main{
    background: #f6f4f1;
}
main .contents{
    padding-top: 75px;
    padding-bottom: 71px;
    background: var(--white);
}
main .contents-inner{
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 40px;
    padding-left: 40px;
}
main .contents + .contents{
    margin-top: 53px;
}

/* =====================
  タブ
===================== */
body.localNavFixed main .tab{
    position: fixed;
    top: 70px;
    left: 0;
    width: 100%;
    background: #eceae7;
    z-index: 2001;
}
body.localNavFixed main .contents-inner{
    padding-top: 70px;
}
main .tab-inner{
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    width: 1120px;
    padding-left: 40px;
    padding-right: 40px;
    margin-left: auto;
    margin-right: auto;
}
main .tab-unit{
    width: 100%;
}
main .tab-unit.on{
    pointer-events: none;
}
main .tab-unit a{
    display: block;
    width: 100%;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    background: #eceae7;
    padding: 20px 1em;
    border-left: 1px solid transparent;
    border-right: 1px solid transparent;
    border-top: 1px solid transparent;
    -webkit-transition: var(--all-animation);
       -moz-transition: var(--all-animation);
        -ms-transition: var(--all-animation);
         -o-transition: var(--all-animation);
            transition: var(--all-animation);
}
main .tab-unit a:hover{
    background: #FFF;
}
main .tab-unit.on a{
    border-left: 1px solid #fff;
    border-top: 1px solid #060606;
    background: #fff;
}
main .tab-unit + .tab-unit{
    border-left: 1px solid #fff;
}

/* =====================
  タブコンテンツ
===================== */
main .tab-contents{
    opacity: 0;
    position: absolute;
    z-index: -1;
    filter: blur(1rem);
    top: 0;
    left: 0;
    height: 0;
    overflow: hidden;
    /* padding-top: 9px; */
}
main .tab-contents.on{
    position: relative;
    height: 100%;
    overflow: visible;
    padding-top: 9px;
    z-index: 1;
    opacity: 1;
    filter: blur(0);
    -webkit-transition: filter 600ms ease 100ms,opacity 600ms ease 100ms;
       -moz-transition: filter 600ms ease 100ms,opacity 600ms ease 100ms;
        -ms-transition: filter 600ms ease 100ms,opacity 600ms ease 100ms;
         -o-transition: filter 600ms ease 100ms,opacity 600ms ease 100ms;
            transition: filter 600ms ease 100ms,opacity 600ms ease 100ms;
}
main .tab-contents-inner{
    padding-bottom: 0;
}
/* =====================
  事業内容
===================== */
.business-contents .contents[data-contents="1"] h2 + p{
    padding: 0 101px;
}
.business-contents .contents[data-contents="1"] ul{
    width: 1041px;
    margin-left: auto;
    margin-right: auto;
    counter-reset: number;
    margin-top: 44px;
}
.business-contents .contents[data-contents="1"] li{
    width: calc( 33.33% - 17px );
    position: relative;
    min-height: 527px;
    box-shadow: 0px 10px 24px 0px rgba(28, 28, 28, 0.1);
}
.business-contents .contents[data-contents="1"] li::before{
    content: "";
    display: block;
    height: 226px;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
         -o-background-size: cover;
            background-size: cover;
    background-position: center;
}
.business-contents .contents[data-contents="1"] li[data-li="1"]::before{background-image: url("../../img/business/01.png");}
.business-contents .contents[data-contents="1"] li[data-li="2"]::before{background-image: url("../../img/business/02.png");}
.business-contents .contents[data-contents="1"] li[data-li="3"]::before{background-image: url("../../img/business/03.png");}
.business-contents .contents[data-contents="1"] li h3::before{
    content: "0"counter(number);
    counter-increment :number;
    display: inline-block;
    font-family: var(--ff-amiri);
    font-size: 43px;
    color: #fbb200;
    vertical-align: middle;
    padding-right: 0.15em;
    line-height: 1;
    font-weight: normal;
}
.business-contents .contents[data-contents="1"] li .item{
    padding-top: 29px;
    padding-left: 34px;
    padding-right: 23px;
    padding-bottom: 32px;
}
.business-contents .contents[data-contents="1"] li h3{
}
.business-contents .contents[data-contents="1"] li p{
    margin-top: 1.05em;
    font-size: var(--fz-middle);
    line-height: 1.867;
}
.business-contents .contents[data-contents="1"] li .anchor{
    margin-top: 1.8em;
}
.business-contents .contents[data-contents="1"] li small{
    margin-top: 0.75em;
    padding: 0.5em 1em;
    background: #f6f4f1;
    color: #9b9b9b;
    font-size: var(--fz-small);
}

/* [data-contents="2"] */
.business-contents .contents[data-contents="2"]{
    padding-top: 56px;
}
.business-contents .contents[data-contents="2"] .item{
    position: relative;
    margin-top: 63px;
    min-height: 421px;
}
.business-contents .contents[data-contents="2"] .item::before{
    content: "";
    z-index: 1;
    pointer-events: none;
    background-image: url("../../img/business/04.png");
    width: 583px;
    height: 421px;
    position: absolute;
    background-repeat: no-repeat;
    -webkit-background-size: contain;
         -o-background-size: contain;
            background-size: contain;
    background-position: center;
}
.business-contents .contents[data-contents="2"] .item .unit{
    position: relative;
    z-index: 2;
    margin-left: auto;
    margin-right: 0;
    width: 551px;
    top: 51px;
    padding: 58.5px 60px 51.8px;
}
.business-contents .contents[data-contents="2"] .item .unit h3{
    font-size: 19px;
}
.business-contents .contents[data-contents="2"] .item .unit h3 + p{
    margin-top: 1.5em;
}
.business-contents .contents[data-contents="2"] .item .unit .anchor{
    margin-top: 46px;
}
.business-contents .contents[data-contents="2"] ul{
    margin-top: 56px;
}
.business-contents .contents[data-contents="2"] li{
    background-repeat: no-repeat;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    background-position: center;
    width: 502px;
    height: 205px;
    padding-top: 50.1px;
}
.business-contents .contents[data-contents="2"] li h4{
    font-size: var(--fz-xlarge);
}
.business-contents .contents[data-contents="2"] li p{
    font-size: var(--fz-small);
    margin-top: 1.1em;
}
.business-contents .contents[data-contents="2"] li[data-li="1"]{background-image: url("../../img/business/05.png");}
.business-contents .contents[data-contents="2"] li[data-li="2"]{background-image: url("../../img/business/06.png");}
.business-contents .contents[data-contents="2"] li[data-li="1"] p{
    text-align: center;
}
.business-contents .contents[data-contents="2"] li[data-li="1"] p::after{
    content: "\A";
    white-space: pre;
}
.business-contents .contents[data-contents="2"] li[data-li="2"] p{
    padding: 0 4em;
}
/* [data-contents="3"] */
.business-contents .contents[data-contents="3"] .contents-inner .headstyle + p{
    margin-top: 22px;
}
.business-contents .contents[data-contents="3"] h3{
    font-size: 21px;
}
.business-contents .contents[data-contents="3"] h3 + p{
    line-height: 1.857;
    margin-top: 35px;
}
.business-contents .contents[data-contents="3"] ul{
    margin-top: 40px;
}
.business-contents .contents[data-contents="3"] li{
    width: calc(33.3% - 6px);
    padding-top: 48px;
    padding-bottom: 58px;
    border: 1px solid #eaeaea;
    -webkit-box-shadow: 3px 3px 0 0px #e5e5e5;
    box-shadow: 3px 3px 0 0px #e5e5e5;
}
.business-contents .contents[data-contents="3"] li[data-li="1"] p{
    padding-right: 29px;
    padding-left: 29px;
}
.business-contents .contents[data-contents="3"] li[data-li="2"] p{
    padding-right: 37px;
    padding-left: 37px;
}
.business-contents .contents[data-contents="3"] li[data-li="3"] p{
    padding-right: 37px;
    padding-left: 37px;
}

/* =====================
  会社概要
===================== */
.company-contents main .contents{
    padding-top: 108px;
}
.company-contents main .contents[data-contents="1"] .top{
    min-height: 526px;
}
.company-contents main .contents[data-contents="1"] .top::before{
    z-index: 1;
    display: block;
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 526px;
    background-image: url("../../img/company/01.png");
    content: "";
    background-repeat:no-repeat;
    background-position: center;
    -webkit-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
.company-contents main .contents[data-contents="1"] .top .item{
    width: 558px;
    position: relative;
    top: -47px;
    margin-left: auto;
    z-index: 2;
    margin-right: auto;
    padding-bottom: 76px;
    padding-top: 74px;
    box-shadow: 0px 10px 24px 0px rgba(28, 28, 28, 0.4);
}
.company-contents main .contents[data-contents="1"] .top .item h2 strong{
    margin-top: 0.25em;
    display: block;
    margin-left: auto;
    text-align: center;
    margin-right: auto;
}
.company-contents main .contents[data-contents="1"] .top .item p{
    margin-top: 2.15em;
    line-height: 2;
    padding: 0 64px;
}
.company-contents main .contents[data-contents="1"] .top .item .anchor{
    margin-top: 37px;
    padding-left: 64px;
    padding-right: 64px;
}
.company-contents main .contents[data-contents="1"] .body{
    padding-top: 75px;
}
.company-contents main .contents[data-contents="1"] .body h2::after{
    margin-left: 0;
}
.company-contents main .contents[data-contents="1"] .body[data-body="1"] .table{
    margin-top: 50px;
}
.company-contents main .contents[data-contents="1"] .body[data-body="1"] table{
    width: 100%;
}
.company-contents main .contents[data-contents="1"] .body[data-body="1"] table th,
.company-contents main .contents[data-contents="1"] .body[data-body="1"] table td{
    border: 1px solid #e6e6e6;
    padding: 1em 1.5em 1em 1.9em;
    line-height: 1.867;
}
.company-contents main .contents[data-contents="1"] .body[data-body="1"] table th{
    border-right: none;
    font-weight: bold;
    background: #f5f5f5;
    vertical-align: top;
    width: 257px;
    padding: 1em 1.5em 1em 1.9em;
}
.company-contents main .contents[data-contents="1"] .body[data-body="1"] table td{
    border-left: none;
    padding: 1em 1.5em 1em 1.7em;
}
.company-contents main .contents[data-contents="1"] .body[data-body="1"] table td .system{
    display: none;
}
.company-contents main .contents[data-contents="1"] .body[data-body="1"] table td .system + span{
    padding-left: 1em;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit-wrap{
    margin-top: 40px;
    padding-left: 12px;
    padding-right: 12px;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit{
    width: calc(50% - 24px);
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit iframe{
    width: 100%;
    height: 274px;
    border: 1px solid #dadce0;
    vertical-align: top;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .head{
    margin-top: 29px;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .head::before{
    content: "";
    position: absolute;
    width: 100%;
    z-index: 1;
    height: 1px;
    background: #dbdbdb;
    bottom: -6px;
    left: 0;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .head::after{
    content: "";
    position: absolute;
    width: 27px;
    z-index: 1;
    height: 1px;
    background: #fbb200;
    bottom: -6px;
    left: 0;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .head a{
    position: absolute;
    color: #fbb200;
    top: 0;
    right: 0;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .head a::before{
    content: "";
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABYAAAAgCAYAAAAWl4iLAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3ZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDYuMC1jMDAyIDc5LjE2NDQ2MCwgMjAyMC8wNS8xMi0xNjowNDoxNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDoxYWQ5ZTczYi1lN2U5LTU4NDQtOGY1ZS01YjM4MDgxYThiMGUiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OTQxQTk1MTE1QkMyMTFFQkI3Mzk4Rjk3NEQ3MTg3MjMiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OTQxQTk1MTA1QkMyMTFFQkI3Mzk4Rjk3NEQ3MTg3MjMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKFdpbmRvd3MpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MWFkOWU3M2ItZTdlOS01ODQ0LThmNWUtNWIzODA4MWE4YjBlIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOjFhZDllNzNiLWU3ZTktNTg0NC04ZjVlLTViMzgwODFhOGIwZSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PiVm2fcAAAIhSURBVHjarJbLK0RRHMfvPcnGLCWLUQpFIakpskAWNsTCwsJKef0RLGxsPPIsMxYkIalhyitFkg0ZC3nEQlJkNYryHt+j3x13rnvOufP41bffPfd3fp8559xzfmf0cDis2dlnQHfBNUK1UAnkptAddAJtQv6U+vCzXb5uBwa0Ba4TqtDkdgB5AZ+RggHMJSBXmubMXqFJ+oGzf2BAU+AOadrx2AXkMZaGmQLdCUC55UM9RoPRaBvg2rXErQOs5shSoBF0MNpT8oWKfjdQHgO0TgGdhcqxdkVceC6FpiT9s6Em/sEqJZ12oVYAP40XeOaza8OAMuHrBHk1jBZdZF1mqDUmycvlYJcgGAL0QpSJGD+BD4Kwm4PfBMF3TDddBEYsFe5FEH7k4HtBMEOxA4qhHBn4UpLso2JkV6B8sq2pf6z+brWgYl/yD7VP7TJoVPHRq2M5IE7tGiowasWQljwb5FvUAC9Ay0mArkPzkSKEX3iHG0sCeAKsUFTZxAt+fPsTgI5Da1Fl02T8a6/EAd3iuRjcty0YgVtakvMYoHw7jiE36jwwmxqwDdcbA3gAOQHrSybovKSouYbNQdN2ASaoXF908x5LoOd0Mz87BhP8CK5PAh5Bnz1RkCmm6hccnA3jIMQFpttjEfqyhBYQe5Ll6qL/bpYyuQNXRc0jQD2qHOZwS3lNz5NOEhyNmEZ9RfdjluSC/VvGGA7CsGndlfYjwABw7LkOWkgsGQAAAABJRU5ErkJggg==");
    background-repeat: no-repeat;
    background-position: center;
    -webkit-background-size: contain;
         -o-background-size: contain;
            background-size: contain;
    width: 10px;
    height: 15px;
    vertical-align: -3px;
    display: inline-block;
    margin-right: 0.5em;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .in-body{
    margin-top: 27px;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .in-body address span{
    line-height: 1.8;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .in-body address .system{
    display: none;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .in-body address .system + span{
    padding-left: 1em;
}
.company-contents main .contents[data-contents="1"] .body[data-body="2"] .unit .in-body p{
    margin-top: 1.6em;
}

/* =====================
  Flow
===================== */
.flow-contents main .contents{
    padding-top: 66px;
}
.flow-contents main .contents[data-contents="1"] ol{
    counter-reset: number;
}
/* left */
.flow-contents main .contents[data-contents="1"] li .left{
    width: 65px;
    overflow: hidden;
}
.flow-contents main .contents[data-contents="1"] li.arrow .right .unit + .unit .img::before{
    content: "";
    display: block;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20id%3D%22SVG_ARROW%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%2021.5%203.9%22%20style%3D%22enable-background%3Anew%200%200%2021.5%203.9%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23SVG_ARROW%20.st0%7Bfill%3Anone%3Bstroke%3A%23060606%3B%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M0%2C3.4h20l-4-3%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E');
    position: absolute;
    top: 49%;
    left: -52px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 23px;
    height: 4px;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
}
.flow-contents main .contents[data-contents="1"] li .left::after{
    content: "";
    width: 1px;
    height: 100%;
    position: absolute;
    background: #696969;
    z-index: 1;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);
}
.flow-contents main .contents[data-contents="1"] li .left span{
    display: block;
    z-index: 2;
    width: 65px;
    height: 65px;
    -webkit-border-radius: var(--radiusCircle);
            border-radius: var(--radiusCircle);
    background: #2d2d2d;
    position: relative;
    border: 5px solid #696969;
}
.flow-contents main .contents[data-contents="1"] li .left span::before{
    content: "STEP"counter(number);
    counter-increment :number;
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    font-weight: bold;
    font-size: 14px;
    line-height: 1;
    -webkit-transform: translate(-50%, -50%);
       -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
         -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}
/* right */
.flow-contents main .contents[data-contents="1"] li .right{
    margin-left: 15px;
}
.flow-contents main .contents[data-contents="1"] li .right .item{
    min-width: 869px;
    padding: 41px 13px 49px 18px;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}
.flow-contents main .contents[data-contents="1"] li[data-li="1"] .right .item{
    min-width: 872px;
}
.flow-contents main .contents[data-contents="1"] li:last-child .right .item{
    padding-bottom: 0;
}

.flow-contents main .contents[data-contents="1"] li .right .unit{
    width: 429px;
}
.flow-contents main .contents[data-contents="1"] li[data-li="1"] .right .unit{
    width: 377px;
}
/* 見出し */
.flow-contents main .contents[data-contents="1"] h2{
    padding-top: 0.5em;
    letter-spacing: 0.05em;
}
/* テキスト */
.flow-contents main .contents[data-contents="1"] li p{
    line-height: 1.867;
}
.flow-contents main .contents[data-contents="1"] li .img + p,
.flow-contents main .contents[data-contents="1"] li h2 + p{
    margin-top: 1.8em;
}
.flow-contents main .contents[data-contents="1"] li small{
    display: block;
    margin-top: 0.25em;
}
/* 画像 */
.flow-contents main .contents[data-contents="1"] li .img{
    width: 377px;
    height: 233px;
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-color: #ddd;
}
.flow-contents main .contents[data-contents="1"] li[data-li="2"] .item{padding-right: 0;min-width: 883px;}
.flow-contents main .contents[data-contents="1"] li[data-li="2"] p{
}
.flow-contents main .contents[data-contents="1"] li[data-li="1"] .unit[data-unit="1"] .img{
    background-image: url("../../img/flow/01-01.png");
}
.flow-contents main .contents[data-contents="1"] li[data-li="1"] .unit[data-unit="2"] .img{
    background-image: url("../../img/flow/01-02.png");
}
.flow-contents main .contents[data-contents="1"] li[data-li="2"] .unit[data-unit="1"] .img{
    background-image: url("../../img/flow/02-01.png");
}
.flow-contents main .contents[data-contents="1"] li[data-li="3"] .unit[data-unit="1"] .img{
    background-image: url("../../img/flow/03-01.png");
}
.flow-contents main .contents[data-contents="1"] li[data-li="4"] .unit[data-unit="1"] .img{
    background-image: url("../../img/flow/04-01.png");
}
.flow-contents main .contents[data-contents="1"] li[data-li="5"] .unit[data-unit="1"] .img{
    background-image: url("../../img/flow/05-01.png");
}
.flow-contents main .contents[data-contents="1"] li .anchor{
    margin-top: 2.5em;
}

/* =====================
  Work
===================== */
.work-contents main .contents{
    padding-bottom: 99px;
}
.work-contents main .breadcrumb{
    padding-bottom: 5px;
    padding-top: 69px;
}
.work-contents main .contents .fixed-img{
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.work-contents main .contents .item + .item{
    margin-top: 40px;
}
.work-contents main .contents .fixed-img .unit{
    width: 50%;
}
.work-contents main .contents .fixed-img .img{
    width: 100%;
    height: 330px;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-position: center;
}
.work-contents main .contents .fixed-img .in-unit-head{
    margin-top: 1.3em;
    font-weight: bold;
    font-size: var(--fz-middle);
}
.work-contents main .contents .item-head{
    font-size: 17px;
    font-weight: bold;
    background: #f5f5f5;
    padding: 18.5px 30px;
    border-left: 3px solid #dddad5;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    margin-bottom: 29px;
}
.work-contents main .contents .beforeatfter-img{
    display: flex;
    -webkit-align-items: flex-end;
            align-items: flex-end;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.work-contents main .contents .beforeatfter-img.single{
    width: 688px;
    margin-left: auto;
    margin-right: auto;
}
.work-contents main .contents .beforeatfter-img + .beforeatfter-img{
    margin-top: 45px;
}
.work-contents main .contents .beforeatfter-img.single + .beforeatfter-img{
    margin-top: 57px;
}
.work-contents main .contents .beforeatfter-img .img{
    background-repeat: no-repeat;
    -webkit-background-size: cover;
         -o-background-size: cover;
            background-size: cover;
    background-position: center;
}
.work-contents main .contents .beforeatfter-img .left::before{
    content: "Before";
    font-family: var(--ff-amiri);
    font-size: 18px;
    display: block;
    margin-bottom: 0em;
}
.work-contents main .contents .beforeatfter-img .right::before{
    display: block;
    margin-bottom: 0em;
    content: "After";
    font-family: var(--ff-amiri);
    font-size: 23px;
    display: block;
}
.work-contents main .contents .beforeatfter-img .right::after{
    content: "";
    display: block;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20version%3D%221.1%22%20id%3D%22SVG_ARROW%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%2021.5%203.9%22%20style%3D%22enable-background%3Anew%200%200%2021.5%203.9%3B%22%20xml%3Aspace%3D%22preserve%22%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23SVG_ARROW%20.st0%7Bfill%3Anone%3Bstroke%3A%23060606%3B%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M0%2C3.4h20l-4-3%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E');
    position: absolute;
    top: 55%;
    left: -57px;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 23px;
    height: 4px;
    background-repeat: no-repeat;
    background-position: center;
    -webkit-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
}

/* left */
.work-contents main .contents .beforeatfter-img .left{width: 321px;padding-left: 15px;}
.work-contents main .contents .beforeatfter-img .left .img{height: 204px;}

/* right */
.work-contents main .contents .beforeatfter-img .right{width: 620px;}
.work-contents main .contents .beforeatfter-img .right .img{height: 395px;}

/* single left */
.work-contents main .contents .beforeatfter-img.single .left,
.work-contents main .contents .beforeatfter-img.single .right{
    width: 297px;
}
.work-contents main .contents .beforeatfter-img.single .left .img,
.work-contents main .contents .beforeatfter-img.single .right .img{
    height: 393px;
}

/* in-article */
.work-contents main .contents .in-article + .in-article{
    margin-top: 84px;
}

/* =====================
  interior
===================== */
.work-contents main .tab-contents[data-id="interior"] .img[data-img="1"]{
    background-image: url("../../img/work/01/01.png");
}
.work-contents main .tab-contents[data-id="interior"] .img[data-img="2"]{
    background-image: url("../../img/work/01/02.png");
}

/* =====================
  glass_film
===================== */
.work-contents main .tab-contents[data-id="glass_film"] .img[data-img="1"]{
    background-image: url("../../img/work/03/01.png");
}
.work-contents main .tab-contents[data-id="glass_film"] .img[data-img="2"]{
    background-image: url("../../img/work/03/02.png");
}
.work-contents main .tab-contents[data-id="glass_film"] .img[data-img="3"]{
    background-image: url("../../img/work/03/03.png");
}
.work-contents main .tab-contents[data-id="glass_film"] .img[data-img="4"]{
    background-image: url("../../img/work/03/04.png");
}

/* =====================
  tile_carpet
===================== */
.work-contents main .tab-contents[data-id="tile_carpet"] .beforeatfter-img .img[data-img="1"]{
    background-image: url("../../img/work/02/01-01.png");
}
.work-contents main .tab-contents[data-id="tile_carpet"] .beforeatfter-img .img[data-img="2"]{
    background-image: url("../../img/work/02/01-02.png");
}
.work-contents main .tab-contents[data-id="tile_carpet"] .beforeatfter-img .img[data-img="3"]{
    background-image: url("../../img/work/02/02-01.png");
}
.work-contents main .tab-contents[data-id="tile_carpet"] .beforeatfter-img .img[data-img="4"]{
    background-image: url("../../img/work/02/02-02.png");
}
.work-contents main .tab-contents[data-id="tile_carpet"] .beforeatfter-img .img[data-img="5"]{
    background-image: url("../../img/work/02/03-01.png");
}
.work-contents main .tab-contents[data-id="tile_carpet"] .beforeatfter-img .img[data-img="6"]{
    background-image: url("../../img/work/02/03-02.png");
}

/* =====================
  dyknock
===================== */
.work-contents main .tab-contents[data-id="dyknock"] .beforeatfter-img .img[data-img="1"]{
    background-image: url("../../img/work/04/01-01.png");
}
.work-contents main .tab-contents[data-id="dyknock"] .beforeatfter-img .img[data-img="2"]{
    background-image: url("../../img/work/04/01-02.png");
}
.work-contents main .tab-contents[data-id="dyknock"] .beforeatfter-img .img[data-img="3"]{
    background-image: url("../../img/work/04/02-01.png");
}
.work-contents main .tab-contents[data-id="dyknock"] .beforeatfter-img .img[data-img="4"]{
    background-image: url("../../img/work/04/02-02.png");
}

/* =====================
  other
===================== */
.work-contents main .tab-contents[data-id="other"] .beforeatfter-img .img[data-img="1"]{
    background-image: url("../../img/work/05/01-01.png");
}
.work-contents main .tab-contents[data-id="other"] .beforeatfter-img .img[data-img="2"]{
    background-image: url("../../img/work/05/01-02.png");
}
.work-contents main .tab-contents[data-id="other"] .beforeatfter-img .img[data-img="3"]{
    background-image: url("../../img/work/05/02-01.png");
}
.work-contents main .tab-contents[data-id="other"] .beforeatfter-img .img[data-img="4"]{
    background-image: url("../../img/work/05/02-02.png");
}
.work-contents main .tab-contents[data-id="other"] .beforeatfter-img .img[data-img="5"]{
    background-image: url("../../img/work/05/03-01.png");
}
.work-contents main .tab-contents[data-id="other"] .beforeatfter-img .img[data-img="6"]{
    background-image: url("../../img/work/05/03-02.png");
}

/* =====================
  contact
===================== */
.contact-contents main .step-inner{
    counter-reset : number;
    width: 501px;
    position: relative;
    z-index: 3;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
}
.contact-contents main .step-inner > div{
    position: relative;
    font-weight: bold;
    color: #b9b9b9;
}
.contact-contents main .step-inner > .on{
    color: var(--black);
}
.contact-contents main .step-inner > div::before{
    content: "";
    display: block;
    width: 50px;
    height: 50px;
    margin-left: auto;
    margin-right: auto;
    background: #dfdfdf;
    -webkit-border-radius: var(--radiusCircle);
            border-radius: var(--radiusCircle);
    margin-bottom: 0.5em;
}
.contact-contents main .step-inner > div:nth-child(1)::before{
    transition: all 500ms ease 1000ms;
}
.contact-contents main .step-inner > div:nth-child(2)::before{
    transition: all 500ms ease 1300ms;
}
.contact-contents main .step-inner > div:nth-child(3)::before{
    transition: all 500ms ease 1600ms;
}
.contact-contents main .step.on[data-step="1"] .step-inner > div:nth-child(1)::before{
    background: #fbb200;
}
.contact-contents main .step.on[data-step="1"] .step-inner > div:nth-child(1){
    color: var(--black);
}
.contact-contents main .step.on[data-step="2"] .step-inner > div:nth-child(1)::before,
.contact-contents main .step.on[data-step="2"] .step-inner > div:nth-child(2)::before{
    background: #fbb200;
}
.contact-contents main .step.on[data-step="2"] .step-inner > div:nth-child(1),
.contact-contents main .step.on[data-step="2"] .step-inner > div:nth-child(2){
    color: var(--black);
}
.contact-contents main .step.on[data-step="3"] .step-inner > div:nth-child(1)::before,
.contact-contents main .step.on[data-step="3"] .step-inner > div:nth-child(2)::before,
.contact-contents main .step.on[data-step="3"] .step-inner > div:nth-child(3)::before{
    background: #fbb200;
}
.contact-contents main .step.on[data-step="3"] .step-inner > div:nth-child(1),
.contact-contents main .step.on[data-step="3"] .step-inner > div:nth-child(2),
.contact-contents main .step.on[data-step="3"] .step-inner > div:nth-child(3){
    color: var(--black);
}

.contact-contents main .step-inner > div::after{
    content: counter(number);
    counter-increment :number;
    line-height: 1;
    color: #FFF;
    position: absolute;
    top: 14px;
    text-align: center;
    display: block;
    margin-left: auto;
    margin-right: auto;
    font-weight: bold;
    font-size: 25px;
    left: 50%;
    -webkit-transform: translateX(-50%);
       -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
         -o-transform: translateX(-50%);
            transform: translateX(-50%);
}
.contact-contents main .step .bar{
    position: absolute;
    width: calc( 100% - ( (51px + 5px ) * 2 ) );
    height: inherit;
    z-index: 2;
    top: 24.5px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 1px;
}
.contact-contents main .step .bar::before{
    content: "";
    width: 100%;
    display: block;
    height: 1px;
    background: #dfdfdf;
    z-index: 1;
    position: relative;
}

.contact-contents main .step .bar::after{
    content: "";
    position: relative;
    top: -1px;
    z-index: 2;
    display: block;
    height: 1px;
    background: #FBB200;
    -webkit-transition: all 600ms linear 800ms;
       -moz-transition: all 600ms linear 800ms;
        -ms-transition: all 600ms linear 800ms;
         -o-transition: all 600ms linear 800ms;
            transition: all 600ms linear 800ms;
    width: 0;
}

/* =====================
  バー1
===================== */
.contact-contents main .step.on[data-step="1"] .bar::after{
    width: 27%;
}
@media all and (max-width: 1036px){
    .contact-contents main .step.on[data-step="1"] .bar::after{
        width: 25%;
    }
}
@media all and (max-width: 980px){
    .contact-contents main .step.on[data-step="1"] .bar::after{
        width: 19%;
    }
}
@media all and (max-width: 820px){
    .contact-contents main .step.on[data-step="1"] .bar::after{
        width: 15%;
    }
}

/* =====================
  バー2
===================== */
.contact-contents main .step[data-step="2"].on .bar::after{width: 48%;}
.contact-contents main .step[data-step="3"].on .bar::after{width: 100%;}

/* =====================
  ドット
===================== */
.contact-contents main .step .dot{
    position: absolute;
    top: 24.5px;
}
.contact-contents main .step .dot circle{fill:#dfdfdf;}

.contact-contents main .step .dot.left circle:nth-child(1){transition: all 300ms ease 50ms;}
.contact-contents main .step .dot.left circle:nth-child(2){transition: all 300ms ease 150ms;}
.contact-contents main .step .dot.left circle:nth-child(3){transition: all 300ms ease 250ms;}
.contact-contents main .step .dot.left circle:nth-child(4){transition: all 300ms ease 350ms;}
.contact-contents main .step .dot.left circle:nth-child(5){transition: all 300ms ease 450ms;}
.contact-contents main .step .dot.left circle:nth-child(6){transition: all 300ms ease 550ms;}
.contact-contents main .step .dot.left circle:nth-child(7){transition: all 300ms ease 650ms;}
.contact-contents main .step .dot.left circle:nth-child(8){transition: all 300ms ease 750ms;}
.contact-contents main .step[data-step="1"].on .dot.left circle,
.contact-contents main .step[data-step="2"].on .dot.left circle,
.contact-contents main .step[data-step="3"].on .dot.left circle{
    fill:#FBB200;
}
.contact-contents main .step .dot.left{
    left: 0;
}
.contact-contents main .step .dot.right{
    right: 0;
}
.contact-contents main .step .dot.right circle:nth-child(1){transition: all 300ms ease 950ms;}
.contact-contents main .step .dot.right circle:nth-child(2){transition: all 300ms ease 1050ms;}
.contact-contents main .step .dot.right circle:nth-child(3){transition: all 300ms ease 1150ms;}
.contact-contents main .step .dot.right circle:nth-child(4){transition: all 300ms ease 1250ms;}
.contact-contents main .step .dot.right circle:nth-child(5){transition: all 300ms ease 1350ms;}
.contact-contents main .step .dot.right circle:nth-child(6){transition: all 300ms ease 1450ms;}
.contact-contents main .step .dot.right circle:nth-child(7){transition: all 300ms ease 1550ms;}
.contact-contents main .step .dot.right circle:nth-child(8){transition: all 300ms ease 1650ms;}
.contact-contents main .step[data-step="3"].on .dot.right circle{
    fill:#FBB200;
}

.contact-contents main .step .dot svg{
    width: 51px;
    height: 2px;
}
.contact-contents main .contents-inner > p{
    margin-top: 3em;
    padding: 0 4em;
    line-height: 1.875;
}

/* =====================
  フォーム
===================== */
.form-table{
    margin-top: 2em;
}
.form-table table{
    font-size: var(--fz-middle);
    width: 100%;
}
.form-table tr.must th::before{
    content: "必須";
    font-weight: normal;
    font-size: 14px;
    color: #e07575;
    padding-right: 1em;
    display: inline-block;
}
.form-table tr.must-blank th::before{
    content: "必須";
    font-weight: normal;
    font-size: 14px;
    padding-right: 1em;
    display: inline-block;
    visibility: hidden;
}
.form-table th{
    width: 272px;
    font-weight: bold;
    padding-left: 1.5em;
    padding-right: 1.5em;
    -webkit-transition: all 250ms ease 0s;
       -moz-transition: all 250ms ease 0s;
        -ms-transition: all 250ms ease 0s;
         -o-transition: all 250ms ease 0s;
            transition: all 250ms ease 0s;
}
.form-table tr.active th {
    color: #fbb200;
}
.form-table th,
.form-table td{
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    border-top: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
}
.form-table th.vat{
    padding-top: 1.5em;
    vertical-align: top;
}
.form-table td{
    padding-right: 25px;
}
.form-table textarea{
    min-height: 267px;
}
.form-table textarea,
.form-table input[type="text"],
.form-table input[type="url"],
.form-table input[type="tel"],
.form-table input[type="email"]{
    background: #f9f9f9;
    width: 100%;
    border: 1px solid #D6D6D6;
    padding: 1.07em 2em;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    transition:
        background 250ms ease 0ms,
        border-top 250ms ease 100ms,
        border-right 250ms ease 200ms,
        border-bottom 250ms ease 300ms,
        border-left 250ms ease 400ms;
}
.form-table textarea:focus,
.form-table input[type="text"]:focus,
.form-table input[type="url"]:focus,
.form-table input[type="tel"]:focus,
.form-table input[type="email"]:focus{
    border: 1px solid #FBB200;
    background: #fff;
}
.form-table .postalcode{
    display: flex;
    -webkit-align-items: center;
            align-items: center;
}
.form-table .postalcode input[type="tel"]{
    width: 153px;
}
.form-table .postalcode span{
    padding-left: 1.25em;
    color: #4e4e4e;
    font-size: var(--fz-small);
}
.form-table td .form-error{
    font-size: var(--fz-small);
    display: block;
    color: #e07575;
    margin-top: 0.25em;
}
.form-table td .form-error:empty{
    display: none;
}

/* =====================
  フォームボタン
===================== */
.form-submit{
    margin-top: 54px;
}
.form-submit .agree{
    margin-bottom: 54px;
}
.form-submit .agree a{
    color: #d9c69b;
}
.form-submit .agree input[type="checkbox"]{
    display: none;
}
.form-submit .agree label{
    cursor: pointer;
    width: 18px;
    height: 18px;
    display: inline-block;
    border: 2px solid #D2D2D2;
    margin-right: 0.5em;
    -webkit-transition: all 250ms ease 0s;
       -moz-transition: all 250ms ease 0s;
        -ms-transition: all 250ms ease 0s;
         -o-transition: all 250ms ease 0s;
            transition: all 250ms ease 0s;
    position: relative;
}
.form-submit .agree input[type="checkbox"]:checked + label{
    border: 2px solid #d9c69b;
}
.form-submit .agree input[type="checkbox"] + label i{
    font-size: 10px;
    background-repeat: no-repeat;
    -webkit-background-size: contain;
         -o-background-size: contain;
            background-size: contain;
    background-position: center;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20aria-hidden%3D%22true%22%20focusable%3D%22false%22%20data-prefix%3D%22fas%22%20data-icon%3D%22check%22%20class%3D%22svg-inline--fa%20fa-check%20fa-w-16%22%20role%3D%22img%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20512%20512%22%3E%3Cpath%20fill%3D%22%23d9c69b%22%20d%3D%22M173.898%20439.404l-166.4-166.4c-9.997-9.997-9.997-26.206%200-36.204l36.203-36.204c9.997-9.998%2026.207-9.998%2036.204%200L192%20312.69%20432.095%2072.596c9.997-9.997%2026.207-9.997%2036.204%200l36.203%2036.204c9.997%209.997%209.997%2026.206%200%2036.204l-294.4%20294.401c-9.998%209.997-26.207%209.997-36.204-.001z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E');
    width: 10px;
    height: 10px;
    position: absolute;
    display: inline-block;
    top: 50%;
    left: 50%;
    opacity: 0;
    -webkit-transform: translate(-50%, -50%) scale(0.1);
    -moz-transform: translate(-50%, -50%) scale(0.1);
    -ms-transform: translate(-50%, -50%) scale(0.1);
    -o-transform: translate(-50%, -50%) scale(0.1);
    transform: translate(-50%, -50%) scale(0.1);
    -webkit-transition: all 250ms cubic-bezier(0.68, -0.55, 0.265, 1.55) 0s;
    -moz-transition: all 250ms cubic-bezier(0.68, -0.55, 0.265, 1.55) 0s;
    -ms-transition: all 250ms cubic-bezier(0.68, -0.55, 0.265, 1.55) 0s;
    -o-transition: all 250ms cubic-bezier(0.68, -0.55, 0.265, 1.55) 0s;
    transition: all 250ms cubic-bezier(0.68, -0.55, 0.265, 1.55) 0s;
    line-height: 1;
}
.form-submit .agree input[type="checkbox"]:checked + label i{
    color: #d9c69b;
    opacity: 1;
    -webkit-transform: translate(-50%, -50%) scale(1);
    -moz-transform: translate(-50%, -50%) scale(1);
    -ms-transform: translate(-50%, -50%) scale(1);
    -o-transform: translate(-50%, -50%) scale(1);
    transform: translate(-50%, -50%) scale(1);
}
.form-submit .u-btn{
    width: 429px;
    margin-left: auto;
    margin-right: auto;
}
.form-submit .cancel{
    margin-top: 22px;
}

/* =====================
  フォーム確認
===================== */
.form-confirm-table{
    margin-top: 2.7em;
    background: #f8f8f8;
    padding: 36px 113px;
}
.form-confirm-table table{
    font-size: var(--fz-middle);
    width: 100%;
}
.form-confirm-table th{
    width: 160px;
    padding-right: 1em;
    font-weight: bold;
    -webkit-transition: all 250ms ease 0s;
       -moz-transition: all 250ms ease 0s;
        -ms-transition: all 250ms ease 0s;
         -o-transition: all 250ms ease 0s;
            transition: all 250ms ease 0s;
}
.form-confirm-table th,
.form-confirm-table td{
    padding-top: 1.25em;
    vertical-align: top;
    padding-bottom: 1.25em;
    line-height: 1.8;
}
.form-confirm-table td span{
    -ms-word-break: break-all;
        word-break: break-all;
}

/* =====================
  フォーム完了
===================== */
.form-complete p{
    text-align: center;
    margin-top: 93px;
}

/* =====================
  ポップアップ
===================== */
/* UI LOCK */
body.popup-on{
    pointer-events: none;
    overflow: hidden;
}
.form-popup{
    z-index: -1;
    opacity: 0;
    pointer-events: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0,0,0,.95);
}
body.popup-on .popup{
    -webkit-transition: opacity 600ms var(--easeOutExpo) 0ms;
       -moz-transition: opacity 600ms var(--easeOutExpo) 0ms;
        -ms-transition: opacity 600ms var(--easeOutExpo) 0ms;
         -o-transition: opacity 600ms var(--easeOutExpo) 0ms;
            transition: opacity 600ms var(--easeOutExpo) 0ms;
    z-index: 2000;
    opacity: 1;
    pointer-events: auto;
}
.popup-inner{
    padding: 2em 1em;
    max-height: 100vh;
    -ms-overflow-y: auto;
        overflow-y: auto;
    text-align: center;
}
.popup-item{
    background: #FFF;
    margin-left: auto;
    margin-right: auto;
    padding: 120px 90px;
    width: 1120px;
    opacity: 0;
    -webkit-transform: scale(0.95);
       -moz-transform: scale(0.95);
        -ms-transform: scale(0.95);
         -o-transform: scale(0.95);
            transform: scale(0.95);
}
body.popup-on .popup-item{
    -webkit-transition: all 600ms var(--easeOutExpo) 250ms;
       -moz-transition: all 600ms var(--easeOutExpo) 250ms;
        -ms-transition: all 600ms var(--easeOutExpo) 250ms;
         -o-transition: all 600ms var(--easeOutExpo) 250ms;
            transition: all 600ms var(--easeOutExpo) 250ms;
    opacity: 1;
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
        -ms-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1);
}
/* 閉じる */
.popup-close{
    position: fixed;
    top: 1em;
    right: 2.5em;
    width: 40px;
    height: 40px;
    border: 2px solid var(--white);
    background: rgba(255,255,255,0.2);
    -webkit-border-radius: var(--radiusCircle);
    border-radius: var(--radiusCircle);
    display: block;
    -webkit-transition: all 250ms ease 0s;
    -moz-transition: all 250ms ease 0s;
    -ms-transition: all 250ms ease 0s;
    -o-transition: all 250ms ease 0s;
    transition: all 250ms ease 0s;
    color: #fff;
}
.popup-close:hover{
    background: rgba(255,255,255,1);
    color: var(--black);
}
.popup-close::before{
    font-family: 'Material Icons';
    font-weight: normal;
    display: inline-flex;
    width: 100%;
    -webkit-align-items: center;
            align-items: center;
    -webkit-justify-content: center;
            justify-content: center;
    height:38px;
    font-size: 20px;
    line-height: 1;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    content: "close";
}

/* =====================
  policy
===================== */
.policy-item-article + .policy-item-article{
    margin-top: 72px;
}
.policy-in-item{
    margin-top: 3.1em;
}
.policy-item-head2::before{
    content: '';
    display: block;
    width: 22px;
    height: 5px;
    margin-left: 1px;
    margin-right: auto;
    margin-bottom: 27px;
    background: var(--black);
}
.policy-item-p{
    -ms-word-break: break-all;
    word-break: break-all;
    padding: 0 2px;
    margin-top: 1.25em;
    line-height: 1.867;
}

/* 下線付き */
.policy-item-head3::before{
    content: "";
    position: absolute;
    width: 100%;
    z-index: 1;
    height: 1px;
    background: #dbdbdb;
    bottom: -6px;
    left: 0;
}
.policy-item-head3::after{
    content: "";
    position: absolute;
    width: 27px;
    z-index: 1;
    height: 1px;
    background: #fbb200;
    bottom: -6px;
    left: 0;
}

/* h4 */
.policy-item-head4{
    margin-top: 1.25em;
}

/* LIST */
.policy-item-ol{
    margin-top: 0.35em;
}
.policy-item-ol li{
    display: flex;
}
.policy-item-ol li > span + span{
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
}

/* 表 */
.policy-item-table{
    width: 100%;
    margin-top: 13px;
}
.policy-item-table th,
.policy-item-table td{
    padding: 0.75em 1.5em;
    vertical-align: top;
    border: 1px solid #d9d9d9;
}
.policy-item-table th{
    background: #fafafa;
    width: 173px;
}
.policy-item-table td{
    background: #fff;
}
.policy-item-table td br{
    display: none;
}
.policy-item-table td > span + span{
    padding-left: 0.75em;
}
.policy-item-table td br + span{
    padding-left: 1em;
}

/* =====================
  sitemap
===================== */
.sitemap-contents main .contents-inner{
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 40px;
    padding-left: 40px;
    margin-top: 60px;
    padding-top: 78px;
    padding-bottom: 96px;
}
.sitemap-contents main .contents-inner ul{
    display: flex;
    -webkit-justify-content: space-between;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}
.sitemap-contents main .contents-inner ul li{
    width: calc( 33.3% - 12.5px );
}
.sitemap-contents main .contents-inner ul li a{
    text-align: left;
    padding-left: 1.6em;
}
.sitemap-contents main .contents-inner ul::after{
    width: calc( 33.3% - 12.5px );
    content: "";
    display: block;
}
.sitemap-contents main .contents-inner ul li:nth-child( n + 4 ) {
    margin-top: 52px;
}

/* =====================
  error
===================== */
.error-contents main .contents-inner{
    max-width: 1120px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 40px;
    padding-left: 40px;
    margin-top: 90px;
    padding-top: 78px;
    padding-bottom: 96px;
}
.error-contents main .contents-inner p{
    line-height: 1.8;
}
.error-contents main .contents-inner .anchor{
    margin-top: 4em;
    width: 429px;
    margin-left: auto;
    margin-right: auto;
}
