@charset "utf-8";
/*
Theme Name:Kata Theme
Description:template theme.
*/

/* リセットCSS */

html{-webkit-text-size-adjust:100%;box-sizing:border-box;-moz-tab-size:4;tab-size:4;word-break:normal}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{margin:0;padding:0;border: 0;outline: 0;font-family: source-han-sans-japanese, 'Noto Serif JP',sans-serif;}hr{color:inherit;overflow:visible}details,main{display:block}summary{display:list-item}small{font-size:80%}[hidden]{display:none}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}a{background-color:transparent; cursor:pointer}a:active,a:hover{outline-width:0;}code,kbd,pre,samp{font-family:monospace,monospace}pre{font-size:1em}b,strong{font-weight:bolder}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}iframe{border-style:none}input{border-radius:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}button,select{text-transform:none}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{border-style:none;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button, input:not(input[type="checkbox"]), select, textarea{background-color:transparent;border-style:none;width: 100%;background: #f2f2f2;}a:focus,button:focus,input:focus,select:focus,textarea:focus{outline-width:0}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;color:inherit;font:inherit}[disabled]{cursor:default}img{border-style:none}progress{vertical-align:baseline}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled=true]{cursor:default}
img{max-width:100%;display:block;margin:0 auto;vertical-align:bottom;image-rendering:auto;object-fit: cover;}*{box-sizing:border-box}body{overflow-x:hidden;background: #fff;}p{line-height: 2.6;letter-spacing: 4px;}li{list-style-type:none}figure{margin:0}html{scroll-behavior:smooth}

/*============================
 共通
============================*/
@font-face {
    font-family: "zurich-light-condensed";
    src: url(./font/zurich-light-condensed.otf);
}
@font-face {
    font-family: "Helvetica Neue Light";
    src: url(./font/HelveticaNeueLight.otf);
    font-weight: light;
}
@font-face {
    font-family: "Helvetica Neue";
    src: url(./font/HelveticaNeueMedium.otf);
    font-weight: medium;
}
@font-face {
    font-family: "Helvetica Neue Bold";
    src: url(./font/HelveticaNeueBold.otf);
    font-weight: bold;
}


a{-webkit-transition:all .2s ease;transition:all .2s ease;color: #222;text-decoration: none;}
a img{-webkit-transition:all .2s ease;transition:all .2s ease;display:block}
a:hover img,a:active img{opacity:.7}
.db{display:block}
.ib{display:inline-block}
.center680,.center800,.center1020,.center1100,.center1200,.center1300,.center1400,.center1500,.center1920{margin:0 auto;max-width: 70%;}
.center680{width:680px}
.center800{width:800px}
.center1020{width:1020px}
.center1100{width:1100px}
.center1200{width:1200px}
.center1300{width:1300px}
.center1400{width:1400px}
.center1500{width:1500px}
.center1920{width:1920px}
.flex{display:flex;flex-wrap:wrap}
.grid{display:grid;grid-template-columns: repeat(2, 1fr);}
.mb10{margin-bottom:10px}
.mb20{margin-bottom:20px}
.mb30{margin-bottom:30px}
.mb40{margin-bottom:40px}
.mb50{margin-bottom:50px}
.mb60{margin-bottom:60px}
.mb80{margin-bottom:80px}
.mb100{margin-bottom:100px}
.ptb40{padding:40px 0}
.ptb60{padding:60px 0}
.ptb80{padding:80px 0}
.ptb100{padding:100px 0}
.m0auto{margin:0 auto}
.fwb{font-weight:700}
.tac{text-align:center}
.tar{text-align:right}
.sp{display:none}
.block480{display: none;}
.block550{display: none;}
.block680{display: none;}
.block800{display: none;}
.flex2 > div {max-width: 100%;flex: 1;}
.grid2{display:grid;grid-template-columns:repeat(2,1fr)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr)}
.grid4{display:grid;grid-template-columns:repeat(4,1fr)}
.grid5{display:grid;grid-template-columns:repeat(5,1fr)}
:root{--gothi-font:'Noto Sans JP',sans-serif;--serif-font:'Noto Serif JP',serif;--en-font: 'Helvetica Neue light',sans-serif;--main-color: #333;--bg-color:#eee;--sub-color: #F5A96E;--gray-color: #9f9fa0;}
.white{color:#fff}
.enFont{font-family: var(--en-font);}
.tategaki{-ms-writing-mode:tb-rl;writing-mode:vertical-rl}
.fadein.delay1{transition-delay: .1s;}
.fadein.delay2{transition-delay: .2s;}
.fadein.delay3{transition-delay: .3s;}
.fadein.delay4{transition-delay: .4s;}
.fadein.delay5{transition-delay: .5s;}
.fadein.delay6{transition-delay: .6s;}
.fadein{opacity:0;transform:translate(0,30px);transition:all 1.2s cubic-bezier(0.4, 0.46, 0.46, 0.98) .15s}
.fadein.active{opacity:1;transform:translate(0,0);}
.fadein.no1-left-text,.fadein.no1-center, .fadein.no1-right-text{transition-duration: .8s;}
.smooth {clip-path: inset(0 100% 0 0);display: inline-block;transition: 1.4s cubic-bezier(0.37, 0, 0.63, 1);transition-property: clip-path;}
.smooth.active {clip-path: inset(0);}
.zoomin {opacity: 0;}
.zoomin.active{animation: zoomIn 2s cubic-bezier(0.25, 1, 0.5, 1) forwards;}
@keyframes zoomIn{0%{transform: scale(0.7);opacity: 0;}100%{opacity: 1;transform: scale(1);}}
.zoomin.delay1 { animation-delay: .3s; }
.zoomin.delay2 { animation-delay: .6s; }
.zoomin.delay3 { animation-delay: .9s; }
.zoomin.delay4 { animation-delay: 1.6s; }

/* 円アニメーション */
.circle-animation { stroke-dasharray: 900; stroke-dashoffset: 730; transform: rotate(30deg); transform-origin: 50% 50%; }
.circle-animation.active {animation: dash 1.7s ease-in-out forwards;}
.circle-animation.delay1 { animation-delay: .5s; }
.circle-animation.delay2 { animation-delay: 1s; }
@keyframes dash { to { stroke-dashoffset: 0; } }

.circle-animation.sp {
  display: none;
}
.circle-animation.pc {
  display: block;
}

/*============================
 ヘッダー
============================*/
.header { position: absolute; left: 4%; top: 4%; z-index: 100; }
.header-logo {width: 70px;max-width: 100%;}
.header-inner { display: flex; align-items: flex-start; gap: 120px; }
.sub-header-text { line-height: 1.6; font-size: 12px; font-family: var(--en-font); letter-spacing: 1px; padding: 16px 0 0; }
/*============================
 スマホメニュー
============================*/
.openbtn { position: fixed; width: 50px; height: 50px; cursor: pointer; right: 80px; top: 23px; z-index: 1000; background: none; mix-blend-mode: difference; }
.openbtn span {display: inline-block;transition: all .4s;position: absolute;left: 0;height: 1px;background-color: #fff;}
.openbtn.light-color span{background-color:#222;}
.openbtn span:nth-of-type(1) { top: 22px; width: 100%; }
.openbtn span:nth-of-type(2) {top: 36px;width: 100%;left: auto;right: 0;}
.openbtn span:nth-of-type(3) {top: 50px;width: 100%;left: auto;right: 0;}
.openbtn.active span:nth-of-type(1) { top: 31px; left: 17px; transform: rotate(-45deg); }
.openbtn.active span:nth-of-type(2) { top: 31px; left: 17px; transform: rotate(45deg); width: 100%; }
.openbtn.active span:nth-of-type(3) { right: -200px; }
.mobile-menu {position: fixed;top: 0;right: -550px;width: 550px;max-width: 80%;height: 100vh;background-color: #212020;box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);transition:  all .7s ease;z-index: 10;overflow-y: scroll;opacity: 0;z-index: 100;}
.menu-list { list-style: none; padding: 0; margin: 0 0 80px; position: relative; display: flex; flex-direction: column; gap: 36px; }
.menu-list li { text-align: center; }
.menu-list li a { text-decoration: none; display: block; font-size: 20px; }
.sub-menu{display:none;margin: 20px 0 0;}
.menu-item-has-children > a{cursor:pointer}
.show-menu{right:0;opacity: 1;}
.menu-item-has-children a span{position:relative;color: #333;}
.menu-item-has-children a span::after{content:"";display:inline-block;width:0;height:0;border-style:solid;border-width:8px 0 8px 10px;border-color:transparent transparent transparent var(--main-color);margin:0 0 0 12px;vertical-align:-2px;transform:rotate(90deg)}
.sub-menu > li{border-bottom: 1px solid #222;}
.menu-list .sub-menu li a { padding: 20px 0; }
.mobile-menu .footer {margin: 0;padding: 100px 24px;/* height: 100vh; */}
.mobile-menu .footer-top { margin: 0 0 80px; }
.mobile-menu .logo { margin: 0; margin-inline-start: auto; width: 100px; }
.mobile-menu .company-info p {font-size: 13px;letter-spacing: 3px;position: static;left: 0;}
.company-info p a { color: #fff; pointer-events: none; }
.sns-icon img { width: 32px; }
.mobile-menu .company-info {margin: 0 0 60px;}
.mobile-menu .sns-icon { width: 30px; }
.mobile-menu .sns-icon-wrap { gap: 10px; transform: translateX(-7px); }
.mobile-menu .footer .sns-wrap h2 { font-size: 15px; margin: 0 0 8px; }

/*============================
 フッター
============================*/
.footer {background-color: #212020;color: white;padding: 100px 0 20px;}.footer * {font-family: "source-han-sans-japanese", sans-serif; font-weight: 300;}.footer-container {max-width: 1340px;margin: 0 auto;width: 96%;}.footer-top {display: flex;justify-content: space-between;align-items: flex-start;margin-bottom: -30px;}.footer-buttons {display: flex; flex-direction: column; gap: 18px;}.footbtn {display: inline-block; padding: 32px; text-align: center; min-width: 280px; font-weight: 300;}.footbtn.footbtn-primary {background-color: white; color: #6D6D6D;}.footbtn.footbtn-secondary {color: white; border: 1px solid white;}.footer-nav {display: flex; gap: 100px;}.nav-column ul {list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 32px;}.nav-column .sub-menu > li {border: none;}.nav-column a {color: white;text-decoration: none;font-size: 18px;padding: 4px 0;font-family: var(--en-font);}.nav-column a:hover {text-decoration: underline;}.nav-column ul.sub-menu {gap: 16px; font-size: 14px;}.nav-column ul.sub-menu a {font-size: 15px;color: #c9cacb;}.footer-middle {margin-bottom: 30px;}.footer-logo {display: flex;flex-direction: column;align-items: flex-end;}.logo {font-size: 32px; font-weight: bold; margin: 0 0 48px 0;}.company-info p {margin: 5px 0;font-size: 15px;line-height: 1.4;color: #fff;}.footer-social {margin-bottom: 20px; display: flex; justify-content: flex-end;}.social-icons {display: flex; gap: 15px;}.social-icon {display: flex;align-items: center;justify-content: center;width: 50px;height: 50px;color: white;text-decoration: none;transition: opacity 0.3s;}.social-icon:hover {opacity: 0.7;}.footer-bottom {text-align: center; padding-top: 20px;}.copyright {margin: 0;font-size: 12px;color: #fff;letter-spacing: 2px;font-family: var(--en-font);}
.nav-column ul.sub-menu a::before { content: "-"; margin: 0 4px 0 0; }
.footer-logo .logo { width: 150px; }
.footer .sns-wrap { margin-inline-start: 0; display: block; margin: 0 0 40px; }
.sns-icon-wrap {grid-template-columns: repeat(2, max-content);gap: 10px;transform: translateX(-11px);}
.footer .sns-wrap h2 { color: #fff; margin: 0 0 20px; }
.footer-top-right a {text-decoration: underline;text-underline-offset: 4px;color: #fff;font-size: 21px;display: block;text-align: right;letter-spacing: 2px;font-family: var(--en-font);}
.footer-top-right p:first-child { margin: 0 0 60px; }
.footer-top-right { padding: 10% 0 0; }
.footer-top-right .company-name, .footer-top-right .address { text-align: right; letter-spacing: 2px; }
.footer-top-right .company-name { font-size: 19px; }
.page-top-wrap:hover span.arrow-top {transform: translateY(-20px);transition: all .5s ease;}
.footer-top-right .address {font-size: 14px;line-height: 2;}
.hours {
  position: relative;
  left: 8px;
}

/*============================
 右側固定メニュー
============================*/
.fixed-side-menu {position: fixed;right: 0;top: 20%;z-index: 100000;display: flex;flex-direction: column;gap: 10px;}
.fixed-btn {display: block;-ms-writing-mode: tb-rl;writing-mode: vertical-rl;text-orientation: upright;transition: all 0.3s ease;padding: 30px 20px;height: 200px;font-family: var(--en-font);letter-spacing: 3px;text-align: center;}
.fixed-btn-yellow {background-color: #faed00; color: #333;}
.fixed-btn-yellow:hover {background-color: #f0e000; transform: translateX(-5px);}
.fixed-btn-black {background-color: #000; color: #fff;}
.fixed-btn-black:hover {background-color: #333; transform: translateX(-5px);}



/*============================
 共通
============================*/
.top2::before, .top-work::before, .top4::before, .top5::before, .top6::before, .contact::before,.company::before {content: attr(data-text);position: absolute;left: 12px;top: 0;display: block;font-size: min(9vw, 177px);writing-mode: vertical-rl;font-family: var(--en-font);line-height: 0.5;letter-spacing: -11px;}
.section-title1 { font-size: 17px; font-weight: normal; letter-spacing: 2px; margin: 0 0 100px; }
.section-title1::after { content: attr(data-en); display: block; font-size: 11.5px; letter-spacing: 0; color: #a4a5a5; font-family: var(--en-font); margin: 12px 0 0; }
.more-btn { width: 260px; margin-inline-start: auto; max-width: 100%; }
.more-btn a { font-family: var(--en-font); font-size: 12px; letter-spacing: 1px; border-bottom: 1px solid #656464; padding: 0 0 20px; display: block; position: relative; }
.more-btn a span {position: relative;display: block;font-family: var(--en-font);}
.more-btn a span::before { content: ""; position: absolute; top: 50%; right: 0; width: 0.8rem; height: 0.8rem; transform: translate(-50%, -50%) rotate(45deg); border-top: 1px solid #222; border-right: 1px solid #222; transition: all .4s cubic-bezier(0.29, 0.38, 0.3, 0.89); }
.more-btn a:hover span::before {transform: translate(-50%, -50%) translateX(16px) rotate(45deg);}
.tategaki {font-size: 10px;letter-spacing: 0px;}

/*============================
 トップページ
============================*/
/* メインビジュアル */
.main-visual {position: relative;margin: 0 0 12.3%;}
.main-visual img { max-height: 100vh; width: 100%; object-fit: cover; }
.main-visual-text-wrap {position: absolute;z-index: 100;top: 50px;bottom: 0;left: 2%;margin: auto;height: fit-content;color: #fff;font-weight: bold;letter-spacing: 6px;overflow: hidden;}
.main-visual-text span, .main-visual-text2 span {font-family: var(--en-font);font-size: min(4.1vw, 80px);line-height: 1;}
.main-visual-text-wrap p {/* white-space: nowrap; */}
.main-visual-text-sub {position: absolute;z-index: 100;bottom: 5%;left: 4%;height: fit-content;color: #fff;font-family: var(--en-font);font-size: 18px;/* font-weight: 600; */letter-spacing: 4px;line-height: 2;}
.scroll {position: absolute;right: 10%;bottom: 13.9%;margin: auto;width: fit-content;color: #fff;}
.scroll span {font-size: 12px;font-family: var(--en-font);}
.scroll::before {position: absolute;right: 0;left: 1px;bottom: -213px;margin: auto;width: 1px;height: 180px;background: linear-gradient(0deg, #000 0%, #000 50%, #fff 50%, #fff 100%);content: "";animation: scroll 2s infinite;}
@keyframes scroll { 0% { transform: scale(1, 0); transform-origin: 0 0; } 50% { transform: scale(1, 1); transform-origin: 0 0; } 51% { transform: scale(1, 1); transform-origin: 0 100%; } 100% { transform: scale(1, 0); transform-origin: 0 100%; } }
.main-visual-container { overflow: hidden; }
@keyframes zoomUp { 0% { transform: scale(1); } 100% { transform: scale(1.07); } }
.add-animation { animation: zoomUp 10s linear 0s normal both; }

/* top1 */
.top1 { padding: 0 0 14%; }

/* top2 */
.top2 { padding: 0 0 165px; position: relative; }
.top2-content-sub {white-space: nowrap;font-size: 20px;margin: 0 0 70px;letter-spacing: 10px;line-height: 2.2;}
.top2-content-text {font-size: 14px;letter-spacing: 2px;margin: 0 0 100px;/* line-height: 2.2; */}
.top2-content-left { width: 75%; flex: 1; }

/* top3 */
.top3 { padding: 0 0 80px; }
.top3-content { width: 86%; margin-inline-start: auto; }
.top3 .tategaki {position: absolute;right: 40px;top: 50px;font-family: var(--en-font);line-height: 2;}
.top3 .center1400 { position: relative; }
.top3-content-text { width: 550px; max-width: 90%; font-size: 14px; letter-spacing: 2px; margin: 0 0 100px; }
.top3-content .section-title1 { margin-bottom: 80px; }
.top3-content-list { display: flex; justify-content: flex-end; margin: 0 0 70px; }
.top3-content-list-item { position: relative; }
.top3-content-list-item:hover::after {
  bottom: 100px;
}
.top3-content-list-item-title { position: absolute; left: 0; right: 0; top: 0; bottom: 0; text-align: center; place-content: center; font-size: 20px; letter-spacing: 7px; }
.top3-content-list-item-title::after { content: attr(data-en); display: block; font-family: var(--en-font); letter-spacing: 1px; font-size: 80%; line-height: 2; }
.top3-content-list-item::after { content: ""; position: absolute; bottom: 28%; right: 0; left: 20px; margin: auto; width: 1rem; height: 1rem; transform: translate(-50%, -50%) rotate(135deg); border-top: 1px solid #222; border-right: 1px solid #222; transition: all .4s cubic-bezier(0.29, 0.38, 0.3, 0.89); }
.top3-content-list-item:first-child { left: 140px; }
.top3-content-list-item:nth-child(2) { left: 70px; }


/* WORKセクション  */
#top-work {padding: 8.5% 0 19%;position: relative;}
#top-work .social-icon {color: #6d6d6d;}
#top-work .option-link {width: 330px;max-width: 100%;margin: 0 0 0 auto;}
.new-icon {position: absolute; top: -25px; left: -25px; display: flex; flex-direction: column; align-items: center; justify-content: center; width: 60px; height: 60px; background: #faed00; border-radius: 50%;}
.top-work-bottom {display: flex;flex-direction: column;align-items: flex-end;gap: 100px;width: 1330px;max-width: 92%;margin: 0 auto;}
.top-work-container {margin: 40px 0 0;}
.top-work-des {font-size: 12px; letter-spacing: 1px;}
.top-work-list {display: grid;grid-template-columns: repeat(3, 1fr);gap: 48px 16px;width: 1300px;max-width: 85%;margin: 0 40px 100px auto;}
.top-work-list li {position: relative;}
.top-work-list li:nth-child(n+4) {position: relative;left: -300px;}
.top-work-list figure {margin: 0 0 8px;}
.top-work-list img {height: auto;}
.top-work-list-des span {font-size: 12px;color: #9d9d9e;letter-spacing: 1px;font-family: var(--en-font);}
.top-work-list-title {font-weight: 400;font-size: 14px;letter-spacing: 2px;}
.top-work-tit-wrap {display: grid;grid-template-columns: 100px 250px 0.95fr;align-items: flex-end;width: 1500px;max-width: 90%;margin: 0 auto 0px;}
.top-work-title-en {font-family: 'zurich-light-condensed'; font-size: 90px; letter-spacing: 10px;}
.top-work-title-ja {font-size: 30px; font-weight: 500; letter-spacing: 2px; margin: 0 0 50px 53px;}
.top-work-title-ja span {font-size: 50%; font-weight: 100; letter-spacing: 1px; margin: 16px 0 0; padding: 0 0 0 4px;}
.top-work .section-title1 { width: 1340px; max-width: 85%; margin-inline-start: auto; }
.top-work .tategaki {position: absolute;height: 240px;left: 0;top: 0;font-family: var(--en-font);line-height: 2;}
.top-work .center1400 { position: relative; top: -160px; }
.top-work-list-des { justify-content: space-between; margin: 0 0 12px; }

/* top4 */
.top4 { background: url("/wp-content/uploads/top-img5-1-scaled.jpg") no-repeat center / cover; color: #fff; padding: 12% 0 17%; position: relative; }
.top4-content-left { width: 50%; }
.top4-content-right { width: 50%; padding: 60px 0 0; }
.top4-slider-thumbnails .slick-track {/* transform: unset!important; */}
.top4 .center1400 { position: relative; }
.top4 .tategaki {position: absolute;right: 0;top: -130px;font-family: var(--en-font);line-height: 2;}
.top4-content { gap: 155px; flex-wrap: nowrap; }
.top4 .more-btn a { color: #fff; }
.top4-slider {margin-bottom: 80px;padding: 0 8px;}
.top4-slider-thumbnail-item { padding: 0 8px; }
.top4 .more-btn a span::before { border-color: #fff; }
.top4 .scroll {right: 0;left: 0;bottom: 130px;}
.top4 .scroll::before {height: 180px;bottom: -218px;z-index: 3;}
.top4 .top2-content-sub { font-size: 25px; }
.top4-slider-thumbnail-item img { aspect-ratio: 1.25 / 1; object-fit: cover; }

/* top5 */
.top5 {background: var(--gray-color);padding: 11% 0 310px;position: relative;}
.top5::before, .top6::before { top: 11%; }
.top5 .center1400 { position: relative; }
.top5 .tategaki {position: absolute;right: 0;top: -80px;font-family: var(--en-font);line-height: 2;}
.top5 .section-title1::after { color: #fff; }
.top5-list { position: absolute; left: 40px; top: 55%; display: flex; flex-direction: column; gap: 40px; }
ol.top5-list::before {
  content: "";
  display: block;
  position: absolute;
  left: 300px;
  top: -163px;
  width: 1px;
  height: 180%;
  background: #555353;
  transform: rotate(135deg);
}
.top5-list-item { background: #c9c9ca; width: 320px; color: #fff; text-align: center; padding: 28px; font-size: 14px; counter-increment: counter; counter-reset: auto; position: relative; }
.top5-list-item::before { content: counter(counter); display: block; position: absolute; left: 0; top: -26px; color: #222; font-size: 30px; font-family: var(--en-font); line-height: 1; }
.top5-list-item:nth-child(2) { background: #b5b5b6; left: 110px; }
.top5-list-item:nth-child(3) { background: #898989; left: 220px; }
.top5-list-item:nth-child(4) { background: #898989; left: 330px; }
.top5-list-item:nth-child(5) { background: #727172; left: 440px; }

/* top6 */
.top6 { position: relative; padding: 15% 0 40px; }
.top6-content { position: relative; grid-template-columns: 320px 1fr; margin: 0 0 16.4%; }
.top6-content-text {margin-block-start: auto;font-family: var(--en-font);line-height: 2;}
.top6-content-item { padding: 25% 0 0; }
.top6 .section-title1 { margin: 0 0 125px; }
.top6-list-item a {display: flex;padding: 50px 0;border-bottom: 1px solid var(--gray-color);justify-content: space-between;pointer-events: none;}
.top6-list-item-title {width: fit-content;min-width: 65%;letter-spacing: 2px;font-size: 15px;}
.top6-list-item:first-child a { border-top: 1px solid var(--gray-color); }
.top6-list-item { position: relative; }
.top6-list-item::after {content: "";position: absolute;top: 50%;right: 10%;width: 1.2rem;height: 1.2rem;transform: translate(-50%, -50%) rotate(45deg);border-top: 1px solid #222;border-right: 1px solid #222;transition: all .4s cubic-bezier(0.29, 0.38, 0.3, 0.89);display: none;}
.top6-list-item .date { letter-spacing: 1px; font-family: var(--en-font); }

/* top7 */
.top7 {padding: 7% 0;background: url(/wp-content/uploads/showroom9-scaled.jpg) no-repeat center /cover;background-color: rgb(34 34 34 / 35%);background-blend-mode: overlay;color: #fff;}
.sns-wrap {grid-template-columns: repeat(3, max-content);width: fit-content;margin-inline-start: auto;align-items: center;gap: 8px;position: relative;left: 4px;}
.sns-wrap h2 {font-weight: 100;font-size: 13px;color: #383231;margin: 4px 30px 0 0;font-family: var(--en-font);}
.top7-title { font-size: 22px; font-weight: normal; margin: 0 0 80px; }
.top7-title::before { content: attr(data-en); display: block; font-family: var(--en-font); font-size: 48px; font-weight: normal; }
.top7-content { width: 600px; max-width: 90%; }
.top7-content p { font-size: 13px; letter-spacing: 1px; line-height: 2.5; }
.top7-content-wrap { align-items: center; padding: 0 9% 0 0; }
.top7 .more-btn a { border-color: #fff; }
.top7 .more-btn a span { color: #fff; }
.top7 .more-btn a span::before { border-color: #fff; }

/* contact */
.contact {position: relative;background: #212020;color: #fff;padding: 9% 0 80px;}
.contact::before { color: #fff; }
.contact .section-title1 { margin: 0 0 140px; }
.contact .section-title1::after { color: #fff; }
.contact-content-left, .contact-content-right { display: grid; place-content: center; gap: 42px; text-align: center; }
.contact-content img { width: 50px; }
.contact-content-item-text { letter-spacing: 2px; line-height: 2; font-size: 14px; }
.contact-content-item-title { font-weight: normal; font-size: 21px; }
.contact .more-btn a { color: #fff; border: 0; }
.contact .more-btn a span::before { border-color: #fff; }
.contact .more-btn { margin-inline: 0; }
.page-top-wrap span {color: #fff;font-size: 14px;font-family: var(--en-font);}
.contact-content-wrap { border-bottom: 1px solid #fff; padding: 0 0 90px; }
.contact-content::before { content: ""; position: absolute; display: block; width: 1px; height: 100%; left: 0; right: 0; margin-inline: auto; background: #fff; }
.page-top-wrap { width: fit-content; margin-inline: auto; text-align: center; }
span.arrow-top {border: 1px solid #fff;border-radius: 50%;aspect-ratio: 1 / 1;font-size: 18px;width: 44px;margin-inline: auto;line-height: 2.4;margin-bottom: 16px;transition: all .5s ease;}


/* Contact */
.contact-container { width: 1400px; max-width: 94%; margin: 0 auto; }
.contact-content {margin: 0 0 130px;border-left: 1px solid #fff;border-right: 1px solid #fff;position: relative;}
.contact-left { width: 49%; padding: 0 0 0 5%; }
.contact-main-content { flex: 1; }
.contact-title { font-size: 30px; font-weight: normal; letter-spacing: 2px; color: #222; margin-bottom: 40px; }
.contact-description { font-size: 16px; line-height: 1.8; color: #222; margin-bottom: 90px; }
.contact-right { flex: 1; }
.contact-vertical-text { position: absolute; top: -70px; left: 0; writing-mode: vertical-rl; font-size: 92px; font-family: zurich-light-condensed; font-weight: 100; line-height: 1; letter-spacing: 9px; color: #222; }
.sns-section { display: flex; justify-content: center; align-items: center; gap: 16px; }
.sns-title { position: relative; font-size: 21px; font-family: 'zurich-light-condensed'; font-weight: 100; letter-spacing: 2px; color: #6d6d6d; }
.sns-title::after { content: ""; display: inline-block; width: 40px; height: 1px; background: #b6b6b6; vertical-align: middle; margin: 0 0 0 16px; }
.sns-icons { display: flex; gap: 8px; }
.sns-icon {display: inline-block;width: 36px;height: 36px;/* background-color: #222; */color: #fff;text-decoration: none;border-radius: 50%;display: flex;align-items: center;justify-content: center;font-size: 14px;transition: all 0.3s ease;}
.sns-icon:hover { opacity: 0.7; }
.contact-footer .sns-icons svg { color: #6d6d6d; }


/*============================
 サブページ共通
============================*/
.subpage {padding: 16% 0 0;}
.subpage-title {/* display: flex; *//* align-items: flex-end; *//* gap: 60px; */padding: 0 0 8px;overflow: hidden;}
.subpage-title-ja {font-size: 96px;font-weight: normal;font-family: var(--en-font);line-height: 1;letter-spacing: -2px;display: block;transform: translateY(2.1em);}
.subpage-title-ja.active {animation: pageTitleAnime 1.5s cubic-bezier(0.4, 0.46, 0.46, 0.98) .1s 1 forwards;}
@keyframes pageTitleAnime { 0% {transform: translateY(2.1em);} 100% { transform: translateY(0); } }
.subpage-title-sub { font-size: 13px; letter-spacing: 0px; line-height: 1.8; font-weight: normal; }
.subpage-title-sub-ja {font-size: 17px;/* padding: 0 0 0 30px; */letter-spacing: 3px;line-height: 1;margin: 0 0 140px;padding: 0 0 0 6px;}
.sub-key {padding: 0 0 180px 0;}
.max-200 { max-width: calc(100% - 200px); }
.subpage-title-sub2, .subpage-title-sub3, .subpage-title-sub4 {font-size: 98px;line-height: 1;padding: 0 0 0 24px;letter-spacing: 0px;}

/*============================
 コンセプト
============================*/
#page-118 .subpage-title-sub-ja { margin-bottom: 230px; }
#page-118 .top7 {
  /* background: url(/wp-content/uploads/top-img4-1-scaled.jpg) no-repeat center /cover; */
}
.subpage-title-sub2 span, .subpage-title-sub3 span, .subpage-title-sub4 span {font-family: var(--en-font);font-weight: bold;}
.concept1 { padding: 0 0 24.3em; }
.concept1-content { align-items: center; gap: 174px; margin-bottom: 16em; grid-template-columns: 1fr 0.9fr; }
.concept1-content-tit {font-size: clamp(1.25rem, 0.409rem + 0.96vw, 1.563rem);font-weight: normal;letter-spacing: 7px;line-height: 2.6;}
.concept1-content-text { display: grid; gap: 120px; }
.concept1-content-text p, .concept1-content2-text {font-size: 15px;letter-spacing: 1px;}
.concept1-content2 { align-items: center; gap: 120px; grid-template-columns: 1fr 0.58fr; }
.concept2-tit-wrap { justify-content: space-between; margin: 0 0 70px; }
.concept2-tit { font-size: 19px; font-weight: normal; letter-spacing: 6px; }
/* .concept2-content-item[data-panel="2"], .concept2-content-item[data-panel="3"] { display: none; } */
.tab-btns { align-items: center; gap: 80px; }
.tab-btn { cursor: pointer; font-size: 25px; letter-spacing: -1.6px; }
.tab-btn.active { text-decoration: underline; text-underline-offset: 8px; }
.concept2-content-item { border-top: 1px solid #222; padding: 40px 0 170px; }
.concept2-content-item:last-child {
  border-bottom: 1px solid #222;
}
.concept2 { padding: 0 0 25em; }
.item-num { font-family: var(--en-font); font-weight: bold; font-size: 78px; line-height: 1; padding: 0 0 37px 20px; }
.item-num::after {content: attr(data-tit);font-size: 12px;letter-spacing: 0px;vertical-align: 45px;padding: 0 0 0 16px;font-family: var(--en-font);}
.concept2-content .item-tit-wrap { margin-bottom: 87px; }
.concept2-content .item-text { line-height: 2.3; font-size: 13px; letter-spacing: 2px; }
.concept2-content .item-tit-wrap, .concept2-content .item-text { width: 62%; margin-inline: auto; }
.concept2-content .item-tit { font-size: 19px; font-weight: normal; letter-spacing: 5px; }
.concept2-content .item-tit::after { content: attr(data-en); display: block; letter-spacing: 0; font-family: var(--en-font); padding: 12px 0 0; }
.concept2-content .concept2-content-item:nth-child(2) .item-tit-wrap { display: flex; justify-content: space-between; align-items: self-end; }
.concept2-content .concept2-content-item:nth-child(2) .black-btn a { background: #222; color: #fff; padding: 12px 20px; display: block; width: 250px; letter-spacing: 1px; position: relative; }
.concept2-content .concept2-content-item:nth-child(2) .black-btn a::after { content: ""; position: absolute; top: 50%; right: 20px; width: 0.8rem; height: 0.8rem; transform: translate(-50%, -50%) rotate(45deg); border-top: 1px solid #fff; border-right: 1px solid #fff; transition: all .4s cubic-bezier(0.29, 0.38, 0.3, 0.89); }
.concept2-content .concept2-content-item:nth-child(2) .item-tit-wrap .black-btn a:hover { opacity: .7; }
.company { background: var(--gray-color); padding: 180px 0; position: relative; }
.company::before {color: #fff;top: 30px;letter-spacing: -7px;}
.company .section-title1 {color: #fff;margin: 0 0 120px;}
.company .section-title1::after { color: #fff; }
.company-content {align-items: flex-start;}
.company-content-tit { font-size: 19px; font-weight: normal; letter-spacing: 6px; margin: 0 0 16px; }
.company-content-left-inner1 {margin: 0 0 60px;}
.company-content-left-inner2, .company-content-left-inner4 { margin: 0 0 40px; }
.company-content-left-inner3 { margin: 0 0 20px; }
.company-content-left-inner1 p { line-height: 1.8; }
.company-content-address {margin: 0 0 30px;letter-spacing: 2px;}
.company-content-phone-wrap p { font-size: 19px; }
.company-content-tit2 {font-weight: normal;letter-spacing: 4px;margin: 0 0 10px;font-size: 15px;}
.company-content-tit3 {font-size: 13px;font-weight: normal;letter-spacing: 2px;margin: 0 0 0px;}
.company-content-left-inner3 p, .company-content-left-inner4 p, .company-content-left-inner5 p {font-size: 13px;line-height: 2.2;text-indent: 1em;letter-spacing: 1px;}
.company-content-text {
  line-height: 2;
  letter-spacing: 2px;
}

.company-content-left-inner5 p {
  text-indent: initial;
  line-height: 2;
}

.company-content-left-inner5 .company-content-tit3 {
  padding: 0 0 4px;
}
.company-content-text.coffee {
  line-height: 1.7;
}
/*============================
 FLOW フロー
============================*/
.gray-page { background-color: var(--gray-color); }
#page-562 .subpage-title {/* margin: 0 0 130px; */}
.subpage-title-sub-flow { font-size: 22px; padding: 0 0 50px; letter-spacing: 6px; }
.flow1 { padding: 0 0 200px; }
.flow-sub-text { line-height: 2.2; width: 730px; font-size: 15px; max-width: 80%; letter-spacing: 1px; }
.flow-item-inner { grid-template-columns: 160px 1fr 110px; gap: 30px; padding: 0 60px 0 0; }
.flow-item-num { color: #fff; font-family: var(--en-font); font-size: 90px; font-weight: bold; line-height: 1; }
.flow-item-text { display: grid; grid-template-columns: 130px 1fr; align-items: center; gap: 160px; }
.flow-item-text h3 { font-weight: normal; letter-spacing: 4px; font-size: 21px; }
.flow-item-text p { letter-spacing: initial; font-size: 14px; }
.flow-item-content-list-item { display: flex; align-items: center; gap: 50px; }
.flow-item-content-list {width: 89%;margin-inline-start: auto;/* border-left: 1px solid #222; */padding: 0 0 0 55px;position: relative;display: grid;gap: 32px;position: relative;}
.flow2-slider-thumbnails .slick-track {/* transform: unset !important; */}
.flow-item-button { background: transparent; font-size: 13px; font-family: var(--en-font); color: #222; }
.flow2-slider-item img {
  aspect-ratio: 1.9 /1;
  object-fit: cover;
}
.flow2-infos-list dt, .flow2-infos-list dd { letter-spacing: 2px; }
.arrow-bottom { position: relative; top: -10px; }
.arrow-bottom::after { content: ""; position: absolute; bottom: 0; left: 0; right: 0; margin: auto; width: 1.9rem; height: 1.9rem; transform: translate(0, -30%) rotate(135deg); border-top: 1px solid #fff; border-right: 1px solid #fff; transition: all .4s cubic-bezier(0.29, 0.38, 0.3, 0.89); }
.flow-item-content-list-item h4::before { content: "●"; display: inline-block; margin: 0 30px 0 0; }
.flow-item-content-list-item h4 { border: 1px solid #222; padding: 14px 20px; width: 370px; font-weight: normal; font-size: 15px; letter-spacing: 3px; }
.flow-item-content-list-item p { font-size: 13px; letter-spacing: 1px; flex: 1; line-height: 1.8; }
.flow-item-content-list::before { content: ""; display: block; width: 1px; height: 20px; background: #222; position: absolute; left: -8px; bottom: -3px; transform: rotate(-45deg); }
.flow-item-content-list-item p span { font-size: 12px; }
.flow-item-content-list-item:nth-child(even) h4 { background: #7d7d7d; }
.flow-item { padding: 70px 0 0; border-top: 1px solid #222; }
.flow-list { display: grid; gap: 70px; }
.flow-item:first-child { padding: 54px 0 0; }
.flow-item-content { padding: 176px 0 70px; }
.flow-item-content-list::before {
  content: "";
  right: 0;
  left: 0;
  top: 0;
  width: 1px;
  height: 100%;
  background: #222;
  animation: scroll 2s infinite;
}
.flow2 { background-color: #fff; }
.flow2 { padding: 140px 0 280px; }
.flow2-title { font-weight: normal; font-size: 20px; margin: 0 0 100px; letter-spacing: 6px; }
.flow2-title::before { content: attr(data-en); display: block; font-size: 300%; font-family: var(--en-font); margin: 0 0 30px; letter-spacing: 2px; }
.flow2-slider-thumbnails { width: 550px; margin: 0 auto 100px; max-width: 100%; }
.flow2-slider-thumbnail-item { margin: 0 4px; aspect-ratio: 3 / 2; }
.flow2-slider-thumbnail-item img { height: 100%; }
.flow2-slider { margin: 0 0 80px; }
.flow2-infos-list { display: flex; gap: 8px; align-items: center; }
.flow2-infos-list dt { width: 120px; font-size: 15px; color: #717071; }
.flow2-infos-text { line-height: 2.3; letter-spacing: 3px; font-size: 13px; width: 910px; max-width: 100%; margin-inline: auto; }
.flow2 hr { margin: 90px auto 50px; background: #222; color: #222; height: 1px; max-width: 910px; width: 100%; }
.flow2-infos { display: grid; gap: 6px; margin: 0 auto 160px; width: 910px; max-width: 100%; }
.flow2-infos-item {justify-content: space-between;align-items: center;position: relative;bottom: -9px;}
.flow2-infos-map a { font-size: 12px; letter-spacing: 0px; position: relative; padding: 0 44px 0 0; font-family: var(--en-font); }
.flow2-infos-map a::after { content: ""; position: absolute; background: url("/wp-content/uploads/arrow-r-c.png") no-repeat center / contain; width: 32px; height: 32px; right: 0; top: 0; bottom: 0; margin: auto; }
.flow2-infos-map a:hover { text-decoration: underline; }
.flow2 .more-btn { margin-inline: auto; }


/*============================
 会社概要
============================*/
.company1-content { gap: 90px; align-items: center; }
.message-image { max-width: 500px; }
.message-body { line-height: 3; font-size: 14px; margin: 0 0 60px; }
.message-body2 { font-size: 15px; }
.company1, .company2 { padding: 0 0 12%; }
.liststyle-label { background: #aeafa1; color: #fff; margin: 10px 0 10px; }
.liststyle-row { display: grid; grid-template-columns: 0.8fr 1fr; gap: 60px; }
.liststyle-value { border-bottom: 1px solid #bfbfbf; place-content: center; }
.liststyle-label, .liststyle-value { padding: 16px; text-align: center; letter-spacing: 3px; font-weight: normal; }
.access-info { padding: 110px 0 0; gap: 140px; align-items: center; }
.office-name { font-weight: normal; letter-spacing: 2px; font-size: 20px; margin: 0 0 20px; }
.access-info-text-inner1 p { font-size: 15px; }
.access-info-text-inner1 { margin: 0 0 40px; }
.access-info-text-inner2-title { font-weight: normal; font-size: 15px; }
.access-info-text-inner2-text:first-of-type { margin: 0 0 30px; }
.company3 { padding: 0 0 10%; }
.map iframe { width: 100%; aspect-ratio: 16 / 7; }
.company4 { padding: 0px 0 15%; }

/*============================
 お問い合わせ
============================*/
input[type="text"], input[type="email"], input[type="tel"], input[type="date"], input[type="number"],textarea, select {width: 100%!important;height: auto;display: block;padding: 12px 16px;background-color: #f2f2f2;box-shadow: 0 0;-webkit-transition: all .1s ease-in-out;transition: all .1s ease-in-out;}
input[type="date"] { position: relative; }
input[type="date"]::-webkit-calendar-picker-indicator { opacity: 0; position: absolute; width: 100%; height: 100%; }
/* .contact1 { padding: 0 0 16%; } */
.contact1-title { font-size: 24px; font-weight: normal; letter-spacing: 4px; margin: 0 0 100px; }
.contact1-title::after { content: attr(data-en); display: block; font-size: 14px; letter-spacing: 0px; padding: 16px 0 0; }
.contact1-item { display: grid; grid-template-columns: 50px 190px 1fr; gap: 30px; align-items: center; }
.contact1-item-label label {font-size: 16px;letter-spacing: 2px;}
.hisu {text-align: center;background: #d64747;font-size: 13px;line-height: 1;padding: 4px 0;color: #fff;}
.contact1-content { display: flex; flex-direction: column; gap: 32px; }
.wpcf7-form-control-wrap[data-name="time1"], .wpcf7-form-control-wrap[data-name="time2"], .wpcf7-form-control-wrap[data-name="model"], .wpcf7-form-control-wrap[data-name="date1"], .wpcf7-form-control-wrap[data-name="date2"] { display: block; }
.wpcf7-form-control-wrap[data-name="time1"]::before, .wpcf7-form-control-wrap[data-name="time2"]::before, .wpcf7-form-control-wrap[data-name="model"]::before, .wpcf7-form-control-wrap[data-name="date1"]::before, .wpcf7-form-control-wrap[data-name="date2"]::before { content: ""; position: absolute; right: 21px; top: 24px; z-index: 1111; display: inline-block; color: #222; width: 10px; height: 10px; border: 0.1em solid currentColor; border-left: 0; border-bottom: 0; transform: rotate(135deg); }
select.wpcf7-form-control { position: relative; }
.wpcf7-form-control-wrap[data-name="postal"]::before {content: "〒";position: absolute;left: 14px;top: 9px;display: block;height: fit-content;font-size: 18px;z-index: 1111;color: #333;}
.wpcf7-form-control-wrap[data-name="postal"] input { padding: 12px 16px 12px 64px; }
input[name="doui"] { width: 20px; height: 20px; vertical-align: -4px; margin: 0 30px 0 0; }
.contact1-item.accept { margin: 90px 0 0; }
.accept-title { font-weight: normal; font-size: 18px; margin: 0 0 20px; }
.accept-content p {font-size: 12px;letter-spacing: 2px;}
.accept-content p.accept-btn { font-size: 17px; margin: 40px 0 120px; }
.submit {width: 420px;max-width: 100%;margin-inline: auto;position: relative;}
input.wpcf7-submit {padding: 20px 20px 16px 40px;text-align: left;background: #222!important;border: 1px solid #222!important;width: 270px;max-width: 100%;cursor: pointer;color: #fff;font-size: 18px;font-family: var(--en-font);}
.wpcf7 .wpcf7-submit:disabled { opacity: 0.6; }
.accept-btn .wpcf7-list-item { margin: 0; }
#checks p { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 30px; }
input.wpcf7-submit:hover { opacity: .7; }
.wpcf7-spinner { display: block!important; margin: 20px auto 0!important; }
.wpcf7 form .wpcf7-response-output { width: 600px; max-width: 90%; margin: 40px auto!important; text-align: center; padding: 16px!important; }
.contact1-item input::placeholder {
  color: #c6c6c6;
}

.contact-title-wrap2 {
  max-width: 710px;
  width: 80%;
}

.contact-title-wrap2 h3 {
  font-size: 18px;
  font-weight: normal;
  letter-spacing: 4px;
  margin: 0 0 50px;
}

.contact-title-wrap2 p {
  font-size: 14px;
  letter-spacing: 2px;
}

.contact-arrow {
  position: absolute;
  right: 30px;
  top: 50%;
  bottom: 0;
  display: inline-block;
  width: 1px;
  height: 28px;
  margin: 0 13.5px;
  border-radius: 9999px;
  background-color: #ffffff;
  transform: translateY(-200%) rotate(45deg);
}

.contact-arrow::before, .contact-arrow::after {
  content: "";
  position: absolute;
  top: 0;
  left: calc(50% - 0.5px);
  width: 1px;
  height: 22px;
  border-radius: 9999px;
  background-color: #ffffff;
  transform-origin: 50% 0.5px;
}

.contact-arrow::before {
  transform: rotate(45deg);
}

.contact-arrow::after {
  transform: rotate(-45deg);
}

#page-215 {
  padding: 16% 0px;
}

/*============================
ブログ一覧
============================*/
.blog1 { padding: 0 0 16%; }
.blog-list-tit-wrap { gap: 20px; }
.blog-list-btn { background: #b0b1a3; color: #fff; padding: 24px 28px 24px 46px; display: flex; justify-content: space-between; align-items: center; }
.blog-list-con1 { margin: 0 0 150px; }
.blog-list { display: flex; flex-direction: column; gap: 40px; margin: 0 0 16%; }
.blog-list-item { position: relative; }
.blog-list-item-img { width: 370px; max-width: 40%; position: relative; }
.blog-list-item-img img { object-fit: cover; height: 100%; aspect-ratio: 5 / 3; }
.blog-list-item a { gap: 80px; align-items: center; padding: 0 110px 40px 0; border-bottom: 2px solid #bfbfbf; overflow: visible; }
.blog-list-item a::after, .blog-list-btn::after { display: none; }
.blog-list-item a:hover img { opacity: 1; }
.blog-list-item-content { flex: 1; }
.blog-list-author { justify-content: flex-start; align-items: center; gap: 24px; }
.blog-list-author img { margin: 0; border: 4px solid #f5ea04; border-radius: 50%; width: 75px; height: 75px; }
.blog-list-item-title { font-weight: normal; font-size: 19px; }
.blog-list-item-date {font-size: 14px;letter-spacing: 1.8px;color: #5e5e5e;/* font-family: 'zurich-light-condensed'; *//* font-weight: 600; */margin: 0 0 20px;}
.blog-list-item-excerpt { color: #424242; font-size: 14px; letter-spacing: 0.7px; line-height: 1.6; margin: 0 0 30px; }
.blog-list-author p { color: #424242; font-size: 14px; }
.blog-list-item-category { position: absolute; right: 0; bottom: 0; background: #b0b1a3; color: #fff; font-size: 12px; letter-spacing: 1px; padding: 2px 16px; border-radius: 10px 0 0; }
.blog-list-item-category.column { background: #606060; }
.wp-pagenavi { width: 640px; margin: 0 auto; max-width: 94%; display: flex; gap: 16px; justify-content: center; }
.wp-pagenavi a, .wp-pagenavi span {/* border-radius: 50%; */width: 40px;height: 40px;display: grid;place-content: center;font-size: 16px;font-family: var(--en-font);/* background: #EAEAEA; */line-height: 1;color: var(--gray-color);}
.wp-pagenavi a.nextpostslink, .wp-pagenavi a.previouspostslink { margin: 0 0 0 16px; background: #fff; border: 1px solid #222; }
.wp-pagenavi a.previouspostslink { margin: 0 16px 0 0; }
.wp-pagenavi span.current {color: #222;}

/*============================
ブログ詳細
============================*/
.blog-single-wrap { position: relative; margin: 60px 0 180px; }
.blog-single-author { position: absolute; right: 0; top: -100px; }
.blog-single-author img { width: 115px; border: 4px solid #f5ea04; border-radius: 50%; aspect-ratio: 1 / 1; }
.blog-single-author p { text-align: center; font-size: 13px; color: #5e5e5e; }
.blog-single-title { padding: 0 0 22px 6px; font-size: 30px; font-weight: normal; letter-spacing: 4px; border-bottom: 1px solid #222; margin: 0 0 4px; }
.blog-single-date { color: #5e5e5e; font-size: 14px; padding: 0 0 0 6px; font-family: 'zurich-light-condensed'; }
.blog-single-content-img { margin: 0 0 120px; }
.blog-single-content img { margin: 0; height: auto; aspect-ratio: 3 / 2; }

/*============================
施工事例
============================*/
.works-list-item { position: relative; }
.works-list-item .option-link::after { display: none; }
.works-list-item a { overflow: initial; padding: 0; }
.works-list-item img { height: auto; }
.works-list-item-title {font-size: 17px;font-weight: normal;letter-spacing: 1px;line-height: 2;}
.works-list {gap: 120px 40px;padding: 0 0 260px;}
.works-price { font-size: 12px; font-weight: bold; }
.works-price .num { font-size: 36px; font-weight: bold; font-family: 'zurich-light-condensed'; letter-spacing: 4px; padding: 0 8px 0 0; }
.works-cats { gap: 12px; }
.works-cat {font-size: 15px;width: fit-content;color: var(--gray-color);letter-spacing: 0px;font-family: var(--en-font);line-height: 2;/* padding: 4px 0 0; */}
.works-single-title {font-weight: normal;font-size: 21px;letter-spacing: 3px;/}
.works-single-thumbnail { margin: 0 0 120px; }
.works-single-content { margin: 0 0 120px; }
.works-single img { height: auto; margin: 0; }
.works-garalley-img { margin: 0 0 60px; }
.works-single-gallery { display: grid; gap: 120px; }
.works-single { padding: 0 0 26%; }
.works-single-navi {margin: 24% 0 0;padding: 20px 0 0;display: grid;grid-template-columns: 300px 300px;align-items: center;justify-content: space-between;}
.works-single-navi a {padding: 0;font-size: 14px;position: relative;border-bottom: 1px solid #222;padding: 0 0 28px;font-family: var(--en-font);position: relative;}
.works-single-navi a:first-child {justify-content: flex-end;flex-direction: row-reverse;text-align: right;}
.works-single-navi a:last-child { justify-content: flex-end; gap: 20px; }
.works-single-navi a:first-child span {transform: skew(20deg, -50deg) rotate(-115deg);right: auto;left: 0;}
.works-single-navi .option-arrow {width: 42px;height: 42px;position: absolute;top: 5px;right: 0;width: 0.9rem;height: 0.9rem;transform: translate(-50%, -50%);border-top: 1px solid #222;border-right: 1px solid #222;transition: all .4s
cubic-bezier(0.29, 0.38, 0.3, 0.89);}
.works-cats-wrap:first-of-type { margin: 0 0 60px; }
.works-cats-wrap h3 { color: #505050; font-weight: normal; font-size: 14px; }
.works-cats-wrap { align-items: center; gap: 40px; }
.works-cats-list-item {display: block;padding: 9px 15px;line-height: 1;transition: background-color .4s ease;font-size: 15px;font-family: var(--en-font);color: var(--gray-color);}
.works-cats-list-item:hover { background: #8d8d8d; color: #fff; }
.works-cats-list { flex: 1; justify-content: flex-start; gap: 20px; }
.works-cats-list-item.current {color: #222;pointer-events: none;}
.wp-pagenavi .extend::before { content: "…"; }
.works-list-item-content-inner {justify-content: space-between;align-items: center;padding: 32px 0 8px;gap: 8px;}
.works-list-item-content { width: 100%; }
.works-date-wrap {
  justify-content: space-between;
  align-items: center;
  gap: 4px;
}
.works-date { line-height: 2; color: var(--gray-color); letter-spacing: 1px; font-family: var(--en-font); }
.works-cat::before { content: "-"; margin: 0 16px 0 0; }
.works-single-title-wrap {justify-content: space-between;align-items: center;margin: 0 0 10px;}
.works-single .works-date {/* margin: 0 0 80px; */}
.works-single-content-title { font-weight: normal; font-size: 21px; letter-spacing: 3px; margin: 0 0 80px; }
.works-single .works-date-wrap {
  padding: 0 0 24px;
}
.works-single-content-text { width: 65%; letter-spacing: 2px; font-size: 14px; }
.works-single-gallery-wrap { display: grid; gap: 50px; }
.works-single-gallery-wrap img:nth-child(2), .works-single-gallery-wrap img:nth-child(3) { aspect-ratio: 4 / 5; grid-area: 2 / 1 / 3 / 2; }
.works-single-gallery-wrap img:nth-child(1) { grid-area: 1 / 1 / 2 / 3; }
.works-single-gallery-wrap img:nth-child(2) { grid-area: 2 / 1 / 3 / 2; }
.works-single-gallery-wrap img:nth-child(3) { grid-area: 2 / 2 / 3 / 3; }
.works-single-gallery-wrap img:nth-child(4) { grid-area: 3 / 1 / 4 / 3; }
.works-single-gallery-wrap img:nth-child(5) { grid-area: 4 / 1 / 5 / 3; }
.works-single-navi a::before { content: ""; position: absolute; top: 4px; right: 0; width: 15px; height: 1px; border-radius: 9999px; background-color: #000000; transform-origin: calc(100% - 0.5px) 50%; transform: rotate(22.5deg); }
.works-single-navi a::after { content: ""; position: absolute; top: 4px; right: 0; width: 15px; height: 1px; border-radius: 9999px; background-color: #000000; transform-origin: calc(100% - 0.5px) 50%; transform: rotate(-22.5deg); }
.works-single-navi a:first-child::before { right: auto; left: 0; transform-origin: 0.5px 50%; }
.works-single-navi a:first-child::after { right: auto; left: 0; transform-origin: 0.5px 50%; }
.works-single-navi a:hover { opacity: .6; }


/*============================
 プライバシーポリシー
============================*/
.privacy h2.wp-block-heading { padding: 56px 0 16px; } .privacy h3.wp-block-heading { padding: 40px 0 8px; } .privacy a { display: inline; }


/*============================
 slick
============================*/
.slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}
.slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0}
.slick-list:focus{outline:none}
.slick-list.dragging{cursor:pointer;cursor:hand}
.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}
.slick-track{position:relative;top:0;left:0;display:block;margin-left:auto;margin-right:auto}
.slick-track:before,.slick-track:after{display:table;content:''}
.slick-track:after{clear:both}
.slick-loading .slick-track{visibility:hidden}
.slick-slide{display:none;float:left;height:100%;min-height:1px}
[dir='rtl'] .slick-slide{float:right}
.slick-slide img{display:block}
.slick-slide.slick-loading img{display:none}
.slick-slide.dragging img{pointer-events:none}
.slick-initialized .slick-slide{display:block}
.slick-loading .slick-slide{visibility:hidden}
.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}
.slick-arrow.slick-hidden{display:none}


.slick-prev,.slick-next{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;height:20px;padding:0;-webkit-transform:translate(0,-50%);-ms-transform:translate(0,-50%);transform:translate(0,-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent}
.slick-prev:hover,.slick-prev:focus,.slick-next:hover,.slick-next:focus{color:transparent;outline:none;background:transparent}
.slick-prev:hover:before,.slick-prev:focus:before,.slick-next:hover:before,.slick-next:focus:before{opacity:1}
.slick-prev.slick-disabled:before,.slick-next.slick-disabled:before{opacity:.25}
.slick-prev:before,.slick-next:before{font-family:'slick';font-size:20px;line-height:1;opacity:.75;color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.slick-prev{left:-25px}
[dir='rtl'] .slick-prev{right:-25px;left:auto}
.slick-prev:before{content:'←'}
[dir='rtl'] .slick-prev:before{content:'→'}
.slick-next{right:-25px}
[dir='rtl'] .slick-next{right:auto;left:-25px}
.slick-next:before{content:'→'}
[dir='rtl'] .slick-next:before{content:'←'}
.slick-dotted.slick-slider{margin-bottom:30px;height: 100%;}
.slick-dots{position:absolute;bottom:-45px;right:11.6%;display:block;padding:0;margin:0;list-style:none;text-align:center}
.slick-dots li{position:relative;display:inline-block;width:7px;height:20px;margin:0 5px;padding:0;cursor:pointer}
.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;/* padding:5px; */cursor:pointer;color:transparent;border:0;outline:none;background:transparent}
.slick-dots li button:hover,.slick-dots li button:focus{outline:none}
.slick-dots li button:hover:before,.slick-dots li button:focus:before{opacity:1}
.slick-dots li.slick-active button:before{opacity:.75;color:#000}


@media(max-width:1700px) {
  .top-work-list li:nth-child(n+4) {left: -180px;}
}

@media(max-width:1600px) {
  .top-work .tategaki { left: auto; right: -120px; }
  .top3 { padding: 0 0 180px; }
  .top5 { padding-bottom: 520px; }
  .top5-list-item { width: 260px; }
}

@media(max-width: 1500px) {
  .top2-content-sub { font-size: 18px; letter-spacing: 8px; }
  .top2-content-left { width: 85%; }
  .top-work-list li:nth-child(n+4) { left: -80px; }

  /* コンセプト */
  .concept1-content {
    gap: 140px;
}

.concept1-content-tit {
    letter-spacing: 5px;
}
}

@media(max-width:1400px) {
  .scroll::before {
    bottom: -200px;
}
  .subpage-title-sub2, .subpage-title-sub3, .subpage-title-sub4 {font-size: 6.5vw;}
  .top4-content { gap: 90px; }
  .top6 .center1400 { margin-right: 8%; max-width: 78%; }
  .top6-content { grid-template-columns: 200px 1fr; }

  /* コンセプト */
  .concept2-content .item-tit-wrap, .concept2-content .item-text {
    width: 80%;
}

/* フロー */
.flow-item-text {
  gap: 80px;
}

.flow-item-inner {
  grid-template-columns: 100px 1fr 110px;
  padding: 0 20px 0 0;
}
}

@media(max-width: 1300px) {
  .main-visual-text span { font-size: 4vw; }
  .main-visual-text2 span { font-size: 4vw; }
  .top4-content { gap: 100px; }

  /* コンセプト */
.concept1-content { max-width: 85%; }
.concept1-content2 { max-width: 85%; }
.concept2-wrap { max-width: 85%; }
.company-content { gap: 60px; }

/* フロー */
.flow-item-content-list {width: 100%;}
}

@media(max-width: 1200px) {
  .top2-content { grid-template-columns: 1.2fr 0.8fr; align-items: center; }
#top-about .contact-options { width: 100%; }
.top-event-content { grid-template-columns: 1fr; width: 92%; max-width: 800px; gap: 100px; }
.top-event-right .new-icon { top: -25px; }
.cta-section { flex: auto; max-width: 550px; width: 100%; margin: 0 0 0 auto; }
#top-work { padding: 8% 0 14%; }

/* フロー */
.flow-item-num { font-size: 70px; }
.flow-item-text { gap: 60px; }
.flow-item-inner { grid-template-columns: 80px 1fr 110px; }
.arrow-bottom::after { bottom: -10px; }
}

@media(max-width: 1100px) {
.main-visual-text { font-size: 28px; left: 8%; }
.main-text-section { margin: 0; max-width: initial; }
.top-work .tategaki {right: 0;line-height: 1.8;}

.top-blog .top-blog-list a figure {margin: 0 0 16px auto;max-width: 400px;order: 2;}
.top-blog-list-title { font-size: 20px; order: 3; width: 100%; }
.top-work-tit-wrap { margin-bottom: 50px; }
.top-about-content { gap: 60px; }

/* お問い合わせ */
.contact1-content { padding: 0 32px; }
}

@media(max-width:1024px) {
  .main-visual-text span { font-size: 6vw; }
  .main-visual-text2 span { font-size: 6vw; }
  .scroll { bottom: 14%; }
  .top2-content { grid-template-columns: 1fr; gap: 120px; }
  .top2-content-right { width: 100%; max-width: 320px; margin: 0 0 0 auto; }
  .top4-content {flex-direction: column-reverse;gap: 60px;}
  .top4 .section-title1 { position: absolute; top: -30px; }
  .top2::before { font-size: min(8vw, 177px); letter-spacing: -1px; }
  .top-work::before {font-size: min(8vw, 177px);letter-spacing: -1px;top: 6%;}
  .top4::before { font-size: min(8vw, 177px); letter-spacing: -1px; }
  .top5::before { font-size: min(8vw, 177px); letter-spacing: -1px; }
  .top6::before { font-size: min(8vw, 177px); letter-spacing: -1px; }
  .top3-content { width: 100%; }
  .top3-content .section-title1 { padding: 0 0 0 85px; }
  .top3-content-text { padding: 0 0 0 85px; }
  .top3-content-list-item:nth-child(3) { left: 200px; }
  .top3-content-list { flex-direction: column; width: fit-content; }
  .top3-content-list-item:first-child { left: 0; }
  .top3-content-list-item:nth-child(2) { left: 100px; }
  .top3 .tategaki { right: auto; left: 0; top: 0; }
  .circle-animation.delay2 { animation-delay: 0s; }
  .circle-animation.delay3 { animation-delay: 0s; }
  .top4-content-right { width: 100%; }
  .top4-content-left { width: 100%; margin: 0 0 70px; }
  .top4 .tategaki { top: 0; }
  .top4 .scroll::before { height: 130px; bottom: -150px; }
  .top4 .scroll { bottom: 84px; }
  .top5::before { top: 5.4%; }
  .top6::before { top: 5.4%; }
  .top5 { padding: 100px 0 430px; }
  .top5-list { top: 60%; }
  .blog-list-item a { gap: 40px; }
  .contact::before {
    letter-spacing: 1px;
    top: 3.8%;
}

  /* コンセプト */
  .concept1-content { gap: 100px; }
.concept1-content-tit { letter-spacing: 4px; font-size: 18px; }
.concept1-content-text { gap: 80px; width: 100%; max-width: 680px; }
.concept1-content2 { gap: 80px; grid-template-columns: 1fr 0.82fr; }
.tab-btns { gap: 50px; }
.concept2-tit { font-size: 18px; letter-spacing: 4px; }
.tab-btn { font-size: 22px; letter-spacing: -1px; }
.item-num { font-size: 60px; }
.item-num::after { vertical-align: 31px; }
.concept2 { padding: 0 0 240px; }
.company::before { letter-spacing: -4px; }
.company-wrap { margin-inline-end: 60px; max-width: 80%; }

/* 施工事例 */
.works-single-navi {grid-template-columns: 1fr 1fr;gap: 40%;}

/* フロー */
#page-562 .center1500, .flow1 .center1500 {
  max-width: 90%;
  padding: 0;
  margin: 0 auto;
}

}

@media(max-width: 940px) {
    .openbtn { display: block; }
    .scroll { bottom: 10%; }
    .scroll::before { height: 80px; bottom: -100px; }
    .subpage { padding: 250px 0 0; }
    .top6-content { grid-template-columns: 1fr; }
    .top6-content-text { position: absolute; right: 0; }
    .contact-content {grid-template-columns: 1fr;border: 0;gap: 180px;border-bottom: 1px solid #fff;padding: 100px 0 100px;}
    .contact-content::before {height: 1px;width: 100%;top: 0;bottom: 0;margin: auto;}
    .contact .section-title1 { margin: 0; }
    .contact-content-wrap { border: 0; }
    .top-work-list {grid-template-columns: repeat(2, 1fr);max-width: 92%;margin: 0 auto 60px;}
    .top-work-list li:nth-child(n+4) { left: auto; }
    .blog-list-item a { flex-direction: column; padding: 0 0px 120px 0; }
    .blog-list-item-img { max-width: 100%; width: 740px; }
    .blog-list { width: 740px; max-width: 92%; margin: 0px auto 16%; gap: 60px; }
    .blog-list-item .option-arrow { position: absolute; right: 0; bottom: 120px; }
    .blog-single-wrap { margin: 140px 0 180px; }
    .works-cats .works-cat { font-size: 13px; }

    /* コンセプト */
    .concept1-content { margin-bottom: 200px; }
    .concept1-content, .concept1-content2 { grid-template-columns: 1fr; }
    .concept1-image, .concept1-content2-img { max-width: 550px; margin-inline-start: auto; }
    .concept1 {padding: 0 0 180px;}
    .company-content { grid-template-columns: 1fr; }
    .company-content-right { order: -1; max-width: 550px; margin-inline: auto; }
    .company { padding: 120px 0; }
    .company .section-title1 { margin: 0 0 80px; }

}

@media(max-width:800px) {

  .block800 { display: block; }
  .none800 { display: none; }
  .contact-content { flex-direction: column-reverse; gap: 80px; }
  .contact-description { margin: 0 0 10px; }
  .contact-left { width: 100%; }
  .contact-right { max-width: 320px; margin: 0 0 0 auto; }
  .footer-top {/* flex-direction: column; */gap: 60px;margin: 0 0 80px;}
  .footer-buttons { flex-direction: row; }
  .footer-logo { align-items: center; }
  .footer-social { justify-content: center; }
  .top-about-content { gap: 50px; grid-template-columns: 1fr; }
  .top-about-left { gap: 40px; }
  .top-blog-left, .top-blog-right {width: 46%;}
  .top-blog-list { margin: 0 0 40px; }
  .top-event { padding: 0 0 120px; }
  .top5-list-item { width: 220px; }
  ol.top5-list::before {
    transform: rotate(152deg);
    left: 157px;
    top: -116px;
    height: 157%;
}
  .top5-list-item:nth-child(2) { left: 60px; }
  .top5-list-item:nth-child(3) { left: 120px; }
  .top5-list-item:nth-child(4) { left: 180px; }
  .top5-list-item:nth-child(5) { left: 240px; }
  .top7 { padding: 100px 0; }
  .top7 .center1400 { max-width: 86%; }
  .top7-content { margin-bottom: 80px; }
  .top7-title::before { font-size: 36px; }
  .top7-title { font-size: 18px; }
  .contact-content-wrap { padding: 0; }
  .contact-content { margin-bottom: 90px; }
  .top-work-tit-wrap { grid-template-columns: 100px 250px 0.85fr; }
  #top-work { padding: 100px 0 20%; }

  /* コンセプト */
  .concept2-tit-wrap { flex-direction: column-reverse; gap: 32px; }
  .concept2-tit { font-size: 20px; }
  .concept2-content .concept2-content-item:nth-child(2) .item-tit-wrap { flex-direction: column; gap: 40px; align-items: baseline; }
  .concept2-content .concept2-content-item:nth-child(2) .item-text {
    margin-bottom: 60px;
}

.concept2-content .concept2-content-item:nth-child(2)  .black-btn {
    width: 80%;
    margin-inline: auto;
}

.concept2-content .concept2-content-item:nth-child(2) .black-btn a {
    margin-inline-start: auto;
}

/* フロー */
.flow-item-inner { grid-template-columns: 1fr; gap: 10px; position: relative; }
.flow-item-text { gap: 60px; width: 85%; }
.arrow-bottom { position: absolute; right: 0; top: auto; bottom: 50px; width: fit-content; height: fit-content; }
.arrow-bottom::after { bottom: -40px; }
.flow-item-content-list-item { flex-direction: column; align-items: baseline; gap: 16px; }
.flow-item-content-list { gap: 80px; }

  /* ブログ一覧 */
  .blog-list-tit-wrap { grid-template-columns: 1fr; max-width: 550px; margin: 0 auto; width: 100%; }
  .subpage-title { gap: 40px; }
  .subpage-title-sub { font-size: 12px; }
  .subpage-title-ja {font-size: 55px;letter-spacing: 1px;}
  .subpage-title-sub-ja {font-size: 14px;letter-spacing: 0px;}
}

@media(max-width: 768px) {
  .sub-header-text { font-size: 11px; }
  .header-inner { gap: 80px; }
  .contact-container { padding: 40px 0 0; }
  .contact-content { padding: 8%; }
  .contact-left { flex-direction: column; gap: 20px; }
  .contact-title { margin: 0 0 30px; }
  .contact-vertical-text { font-size: 54px; }
  .cta-section { max-width: 320px; margin: 0 auto; }
  .main-description { font-size: 14px; }
  .main-title { font-size: 24px; }
  .reserve-button { font-size: 10px; padding: 6px 10px; }
  .top-blog-container { padding: 80px 0; }
  .top-blog-content {gap: 4%;}
  .top-blog-title { width: 90%; }
  #top-work { padding: 100px 0 5px; }

  /* ブログ詳細 */
  .blog-single-title { font-size: 24px; }
  .blog-single-wrap { margin: 90px 0 100px; }

  /* FLOW */
  .flow2-infos-item { flex-direction: column; align-items: baseline; gap: 12px; }
  .flow2-infos-map { position: relative; left: 130px; }
  .flow2-infos { gap: 24px; }
  .max-200 { max-width: 100%; }


/* お問い合わせ */
.contact1-item > p:last-child { grid-area: 2 / 1 / 3 / 4; }
.contact1-item.hisunone { display: block; }
.contact1-item.hisunone .contact1-item-label { margin: 0 0 30px; }
.contact1-item.accept { display: block; }
.accept-content p.accept-btn { text-align: center; margin: 40px 0 60px; }
.wpcf7-form-control-wrap[data-name="postal"] input { padding: 12px 16px 12px 50px; }
.wpcf7-form-control-wrap[data-name="postal"]::before { line-height: 1; top: 17px; }
input[name="doui"] { margin: 0 20px 0 0; }
.contact1-item-label label {font-size: 14px;letter-spacing: 2px;}
.hisu { font-size: 12px; }
.contact1-item.address { position: relative; top: -30px; }

/* 施工事例 */
.works-list-item .option-arrow {position: absolute;right: 0;bottom: 0;}
.works-cats-wrap { flex-direction: column; align-items: baseline; gap: 16px; }
.works-cats-list-item { font-size: 14px; }
#page-554 .sub-key, #page-works-type .sub-key, #page-single-works .sub-key {
  padding: 0;
}

}

@media(max-width:680px) {
.pc{display:none}
.sp{display:block}
.mb20{margin-bottom:10px}
.mb40{margin-bottom: 30px;}
.mb60{margin-bottom:30px}
.mb80{margin-bottom:40px}
.mb100{margin-bottom: 60px;}
.ptb60{padding:30px 0}
.ptb80{padding:40px 0}
.ptb100{padding:50px 0}
.fadein.delay1{transition-delay: .1s;}
.fadein.delay2{transition-delay: .2s;}
.fadein.delay3{transition-delay: .3s;}
.fadein.delay4{transition-delay: .4s;}
.fadein.delay5{transition-delay: .5s;}
.fadein.delay6{transition-delay: .6s;}
.fadein.delay7{transition-delay: .7s;}
.block680 {display: block;}

.more-btn {
  width: 220px;
}

.fixed-btn {padding: 24px 16px;font-size: 14px;}
.footer-buttons { flex-direction: column; margin: 0 auto; }
.footer-top { flex-direction: column; }
.footer-top-right {margin-inline-start: auto;padding: 0;display: flex;flex-direction: column;}
.footer-container { max-width: 90%; width: 680px; }
.footer-logo .logo { width: 100px; }
.footer .sns-wrap { margin: 0 0 100px; }
.header-logo {width: 70px;}
.main-visual img { height: 100vh; object-position: 20%; }
.main-visual .main-visual-image1 img { object-position: 30%; }
.main-visual .main-visual-image2 img {object-position: 55%;}
.main-visual .main-visual-image3 img { object-position: 50%; }
.main-visual .main-visual-image4 img { object-position: 30%; }
.main-visual-text { left: 4%; }
.main-visual-text-sub {font-size: 12px;bottom: 30px;line-height: 1.6;letter-spacing: 2px;}
.openbtn { right: 30px; }
.phone-image { width: 100px; }
.phone-section { flex: 1; }
.scroll {font-size: 12px;line-height: 1;bottom: 60px;}
.scroll::before {/* height: 50px; *//* bottom: -60px; */}
.top5-list { position: relative; left: -120px; width: fit-content; margin-inline: auto; }
.top2-content {gap: 0;margin: 0 0 100px;}
.top2 .section-title1 {
  order: -2;
}
.top2-content-right {max-width: 400px;order: -1;margin-bottom: 60px;}
.top2-content-left {width: 100%;display: contents;}
.top3 .center1400 { max-width: 90%; }
.top3 .tategaki {right: 0;line-height: 1.8;}
.top3-content .section-title1, .top3-content-text { padding: 0; }
.top3-content-text { width: 80%; }
.top3-content-list-item:nth-child(2) { left: 50px; }
.top3-content-list-item:nth-child(3) { left: 100px; }
.top5 .tategaki { right: -60px; }
.top5 { padding: 100px 0 70px; }
ol.top5-list::before {
  left: 70px;
  top: -451px;
  height: 220%;
}
.top6-list-item a {flex-direction: column;padding: 30px 0;}
.top6 { padding: 70px 0; }

/* コンセプト */
.sub-key .center1500 { margin: 0; padding: 0 0 0 18px; }
#page-118 .subpage-title-sub-ja {margin-bottom: 160px;}
.subpage-title-sub2, .subpage-title-sub3, .subpage-title-sub4 {font-size: 6vw;}


/* company */
.subpage-title-ja {font-size: 55px;/* letter-spacing: 8px; */}
.subpage-title-sub { font-size: 10px; writing-mode: vertical-rl; }
.subpage-title {justify-content: space-between;padding: 0 0 10px 0;align-items: center;}
.access-info { gap: 60px; }
.map iframe { aspect-ratio: 8 / 7; }

/* 施工事例 */
.blog1 .center1500, .works-single .center1500 { max-width: 90%; }
.works-single-title { font-size: 24px; letter-spacing: 4px; }
.works-single-content { font-size: 14px; }
.works-garalley-text { font-size: 14px; }

/* フロー */
.flow-item-text { gap: 40px; }
.flow-item-text h3 { font-size: 18px; letter-spacing: 3px; }
.flow-item-num { font-size: 60px; }


/* お問い合わせ */
#page-215 .sub-key .center1500 {
  max-width: 92%;
}

.contact-title-wrap2 {
  width: 100%;
}
.contact-title-wrap2 h3 {
  font-size: 16px;
  letter-spacing: 2px;
}

.contact-title-wrap2 p {
  font-size: 12px;
}
.wpcf7-not-valid-tip {
  font-size: 12px!important;
  letter-spacing: 2px;
}

#contact1 textarea{
  font-size: 14px;
}

}

@media(max-width: 550px) {
  .block550 { display: block; }
  .contact-description { margin: 0 0 80px; font-size: 14px; }
  .contact-title { font-size: 24px; }
  .contact-vertical-text { font-size: 40px; }
  .cta-section { order: 2; }
  .fixed-btn { writing-mode: initial; height: auto; }
  .fixed-side-menu {left: 0;margin: auto;top: auto;bottom: 0;display: grid;grid-template-columns: 1fr;gap: 2px;max-width: 100%;}
  .footer-top-right .address {font-size: 13px;text-align: left;line-height: 1.8;}
  .footer-top-right a {font-size: 16px;text-align: left;}
  .footer-top-right .company-name {font-size: 16px;text-align: left;}
  .footer-top-right p:first-child { margin: 16px 0 0; order: 1; }
  .footer-top-right {
    margin-inline-start: 0;
}

.hours {
    left: 0;
}
  .sns-icon-wrap { gap: 7px; }
#page-118 .sub-key {padding: 0 0 100px;}
  .main-description { margin: 0 0 40px; }
  .main-title { margin-bottom: 60px; }
  .main-visual-text {font-size: 21px;line-height: 1.6;letter-spacing: 2px;}
  .main-visual-text2 {font-size: 21px;line-height: 1.6;letter-spacing: 2px;}
  .main-visual-text-wrap { top: -70px; }
  .main-visual { margin: 0 0 120px; }
  .model-house-name { font-size: 26px; padding: 0; }
  .nav-column a {/* font-size: 12px; */font-size: 16px;}
  .nav-column ul.sub-menu a {font-size: 13px;}
  .new-icon { width: 40px; height: 40px; font-size: 12px; top: -20px; left: -20px; }
  .none550 { display: none; }
  #top-work { padding: 130px 0; }
  .top-work-des { font-size: 10px; }
  .top-work-list-des {font-size: 14px;margin: 0;}
  .top-work-list-des span { font-size: 12px; }
  .top-work-list-title {font-size: 13px;}
  .top-work-tit-wrap { grid-template-columns: 50px 240px 0.8fr; }
  .top-work-title-en { font-size: 40px; }
  .top-work-title-ja { margin: 0px 0 40px 30px; font-size: 24px; }
  .top3-content-list svg {height: 240px;width: 240px;}
  .top3-content-list-item-title {
    font-size: 16px;
    letter-spacing: 4px;
}

.top3-content-list-item::after {
    bottom: 22%;
}
  .top1 p {font-size: 13px;line-height: 2.2;}
  .circle-animation.pc { display: none; }
  .circle-animation.sp { display: block; }
  .top3-content-list-item:nth-child(2), .top3-content-list-item:nth-child(3) { left: 0; }
  .circle-animation {stroke-dasharray: 596;stroke-dashoffset: 500;transform: rotate(115deg);}
  .top3-content-list-item:nth-child(2) {top: -38px;}
  .top3-content-list-item:nth-child(3) {top: -77px;}
  .center1400 { margin-right: 36px; }
  .top2-content-text {
    font-size: 13px;
    line-height: 2.2;
}
  .top2-content-left { margin: 80px 0 0; width: auto; }
  .top2-content-sub {white-space: normal;letter-spacing: 4px;font-size: 17px;margin: 0 0 45px;}
  .top1 { padding: 0 0 120px; }
  .top1 .center1400 { max-width: 85%; }
  .section-title1 { font-size: 16px; margin: 0 0 80px; }
  .section-title1::after { font-size: 10px; }
  .top2-content { margin: 0 0 100px; }
  .top3-content-text {margin: 0 0 80px;font-size: 13px;line-height: 2.2;}
  .top3-content-list { margin: 0 auto; }
  .top3 { padding: 0 0 150px; }
  .contact .center1400 { max-width: 80%; }
  .top4::before { top: 10px; }
  .top4-slider { margin: 0 0 40px; }
  .top4-slider-thumbnail-item {/* width: 100% !important; */padding: 8px;}
  .top4 .tategaki {top: -90px;line-height: 1.8;}
  .top4 .top2-content-sub { font-size: 20px; margin: 0 0 50px; }
  .top4 .scroll::before { height: 70px; bottom: -90px; }
  .top4 .scroll { bottom: 57px; }
  .top5::before, .top6::before { top: 40px; }
  .top4 { padding: 100px 0px 120px; }
  .contact { padding: 80px 0; }
  .top3 .center1400 { max-width: 85%; }
  .top2 { padding: 0 0 60px; }
  .top5 .tategaki {right: 0;line-height: 1.8;}
  .top5 .section-title1 { order: -1; }
  .top7-content { max-width: 100%; }
  .contact-content-item-title { font-size: 18px; }
  .contact .section-title1 { padding: 0 0 0 16px; }
  .contact-content { gap: 160px; padding: 60px 0; }
  .top6-content-text { line-height: 1.8; }
  .company-content-left-inner1 p:not(.company-content-phone, .company-content-fax) { margin: 0 0 20px; }
  .company-content-left-inner1 { margin: 0 0 40px; }
  .sns-icon img { width: 24px; }
  .sns-wrap { margin-inline-start: auto; gap: 0px; }
  .top7-content p { line-height: 2.2; }

  /* コンセプト */
  .header-inner { gap: 40px; }
  .sub-header-text { font-size: 9px; }
  .subpage-title-ja { font-size: 48px; }
  .subpage-title-sub-ja { font-size: 12px; padding: 0 0 0 3px; }
  .concept1-content-tit { font-size: 16px; letter-spacing: 2px; order: 0; }

  .concept1-content {margin-bottom: 100px;}
  .concept1-content p, .concept1-content2 p {font-size: 13px;line-height: 2.2;}
  .concept2-tit { font-size: 16px; letter-spacing: 2px; }
  #page-118 .subpage-title-sub-ja { margin-bottom: 100px; }
  .subpage-title-sub2, .subpage-title-sub3, .subpage-title-sub4 {font-size: 7vw;line-height: 1.4;padding: 0 0 0 8px;}
  .concept1-content-text { display: contents; }
  .concept1-image { order: 0; }
  .concept1-content p { order: 1; }
  .tab-btns { gap: 30px; }
  .tab-btn { font-size: 17px; }
  .company-wrap { max-width: 72%; }
  .company { padding: 100px 0; }
  .item-num { font-size: 48px; }
  .item-num::after { font-size: 11px; vertical-align: 25px; }
  .concept2-content .item-tit { font-size: 17px; letter-spacing: 3px; }
  .concept2-content .item-tit::after { font-size: 14px; }
  .concept2-content .item-tit-wrap { margin-bottom: 60px; }
  .concept2-content-item { padding: 40px 0 120px; }
  .concept2 { padding: 0 0 160px; }
  .company::before { letter-spacing: -1px; font-size: 30px; left: 4px; top: 20px; }
  .company-content-tit {font-size: 17px;letter-spacing: 3px;}
  .company-content-left-inner1 p, .company-content-text {font-size: 13px;/* letter-spacing: 3px; */}
  .concept2-content .concept2-content-item:nth-child(2) .item-tit-wrap .black-btn a { width: 240px; font-size: 14px; padding: 8px 16px; }

  /* フロー */
  .flow-item-text { grid-template-columns: 1fr; width: 100%; }
.arrow-bottom { bottom: auto; }
.flow-item-content-list-item p { max-width: 400px; font-size: 12px; }
.flow-item-content { padding: 100px 0 70px; }
.flow-item-num { font-size: 50px; }
.flow-item-text h3 { font-size: 16px; }
.flow-item-text p { font-size: 12px; }
.flow-item-content-list-item h4 { max-width: 400px; width: 100%; letter-spacing: 2px; }
#page-562 .subpage-title {/* padding: 0 0 100px; *//* margin: 0 0 80px; */}
.subpage-title-sub-flow { font-size: 18px; letter-spacing: 4px; padding: 0 0 40px; }
.flow-sub-text { font-size: 13px; max-width: 94%; }
#page-562 .sub-key { padding: 0 0 120px; }
.flow-item-content-list-item h4::before { margin: 0 16px 0 0; }
.flow-item-content-list { padding: 0 0 0 40px; }
.flow2-title::before { font-size: 250%; }
.flow2-title { font-size: 16px; }
.flow1 { padding: 0 0 150px; }
.flow2 { padding: 150px 0 200px; }
.flow2-slider { margin: 0 0 60px; }
.flow2-slider-thumbnails { margin: 0 auto 80px; }
.flow2-infos-text { font-size: 12px; }
.flow2-infos-list dt { font-size: 14px; width: 100px; }
.flow2-infos-list dd { font-size: 12px; flex: 1; }
.flow2-infos-map a::after { width: 20px; height: 20px; bottom: -5px; right: 14px; }
.flow2-infos-map { left: 109px; }

/* ブログ一覧 */
.blog1 { padding: 0 0 160px; }
.blog-list-btn { padding: 24px 28px 24px 46px; }
.blog-list-item a {padding: 0 0 40px;}
.blog-list-item .option-arrow {bottom: 57px;}
.wp-pagenavi { flex-wrap: wrap; }

/* ブログ詳細 */
.blog-single-content-img { margin: 0 0 80px; }
.blog-single p { font-size: 14px; }
.blog-single-author img { width: 70px; }
.blog-single-author p { font-size: 12px; }
.blog-single-title { font-size: 20px; letter-spacing: 3px; padding: 0 0 16px 3px; }

/* お問い合わせ */
.contact1-content {padding: 0;gap: 45px;max-width: 85%;}
input[type="text"], input[type="email"], input[type="tel"], input[type="date"], input[type="number"], select {-webkit-appearance: none;height: 3.5em;font-size: 14px;}
select { height: 4em; }
input[type="date"]::-webkit-date-and-time-value, input[type="time"]::-webkit-date-and-time-value { text-align: left; }

/* 施工事例 */
.works-cats { margin: 0 0 24px; }
.works-cats .works-cat { font-size: 12px; }
.works-price .num { font-size: 28px; padding: 0 4px 0 0; letter-spacing: 3px; line-height: 1; }
.works-price { font-size: 11px; }
.works-list { gap: 30px 12px; padding: 0 0 100px; }
.works-single-navi .option-arrow { width: 35px; height: 35px; }
.works-single-navi {margin: 200px 0 0;}
.works-single { padding: 0 0 200px; }

.works-cats-list-item { padding: 4px 0; }
.works-cats-list {gap: 25px;}
.works-list-item-title {font-size: 14px;}
.works-cat {font-size: 10px;}
.works-cat::before { margin: 0 8px 0 0; }
.works-date {font-size: 10px;}
.works-single-title { font-size: 16px; letter-spacing: 2px; }
.works-single-content-title { font-size: 16px; margin: 0 0 60px; }
.works-single-content-text { width: 100%; font-size: 12px; }
.works-single-gallery-wrap { gap: 40px 20px; }
.works-single-navi a { padding: 0 0 16px; }
.blog-list-con1 { margin: 0 0 80px; }
.works-list-item-content-inner {padding: 16px 0 8px;}

.privacy p {
  line-height: 2;
  letter-spacing: 2px;
}


}

@media(max-width:480px) {
  .arrow { font-size: 16px; }
  .block480 { display: block; }
  .click-text { right: 3px; }
  .contact-content {padding: 80px 0 70px;}
  .contact-left {padding: 0 0 0 36px;}
  .cta-button { width: 40px; height: 40px; }
  .cta-text { font-size: 14px; }
  .footer {padding: 60px 0 20px;/* margin: 40px 0 0; */}
  .footer-nav {gap: 30px;}
  .header { top: 32px; }
  .header-logo {width: 60px;}
  .main-title { font-size: 20px; }
  .none480 { display: none; }
  .openbtn { top: 8px; }
  #top-work .option-link { max-width: 100%; width: 320px; }
  .sns-icon { width: 32px; height: 32px; }
  .sns-wrap h2 {margin: 4px 10px 0 0;}
  /* .sns-wrap { margin-inline: 0; } */
  .top5-list-item { width: 180px; padding: 20px; }
  .top5-list-item:nth-child(2) { left: 40px; }
  .top5-list-item:nth-child(3) { left: 80px; }
  .top5-list-item:nth-child(4) { left: 120px; }
  .top5-list-item:nth-child(5) { left: 160px; }
  .top5-list-item::before { font-size: 22px; top: -20px; }
  .top6-content-text { top: -30px; }
  .top5-list { left: -80px; }
  .top6-list-item .date { font-size: 12px; }
  .top6-list-item-title { font-size: 14px; }
  .top6-list-item::after { width: 0.8rem; height: 0.8rem; right: 10px; }
  ol.top5-list::before {
    height: 273%;
    left: 0px;
    top: -624px;
    transform: rotate(158deg);
}

  /* company */
  .company4 { padding: 0 0 160px; }
  .subpage-title { padding: 0 4% 10px 0; }
  .subpage-title-ja {/* font-size: 50px; */}
  .subpage-title-sub-ja { font-size: 16px; }
  .breadcrumbs { padding: 0 40px 80px 0; }
  .message-body {line-height: 2.5;}
  .liststyle-row { grid-template-columns: 1fr; gap: 0; margin: 0 0 20px; }
  .liststyle-label { margin: 0; }
  .liststyle-value { padding: 30px 0; }
  .liststyle-row:last-child { margin: 0; }
  .office-name { font-size: 18px; }
  .access-info-text-inner1 p { font-size: 14px; }
  .access-info-text-inner2-text { font-size: 14px; }

/* お問い合わせ */
.contact1-title { font-size: 20px; margin: 0 0 80px; letter-spacing: 2px; }
.contact1-title::after { font-size: 12px; padding: 12px 0 0; }

/* 施工事例 */
.works-list-item-title {/* font-size: 15px; */line-height: 1.6;}
.works-single-title {/* font-size: 18px; *//* letter-spacing: 3px; */}

}

@media(max-width:420px) {
  .main-title.main-title { font-size: 18px; }
  .top-work-title-ja { margin: 0px 0 40px 16px; }
}

@media(max-width:380px) {
}


/* ネイティブCSS */
.aligncenter {display: block; margin: 0 auto;}
.alignright {float: right; margin: 0 0 10px 20px;}
.alignleft {float: left; margin: 0 20px 10px 0;}
.wp-caption {border: 1px solid #ddd; text-align: left; background-color: #f3f3f3; padding: 5px; border-radius: 3px;}
.wp-caption img {margin: 0; padding: 0; border: 0 none;}
.wp-caption p.wp-caption-text {font-size: 14px; line-height: 1.5; margin: 0; padding: 0;}
.single p {margin: 0 0 20px;}
.single a {display: inline-block;text-decoration: underline;}
.single strong {font-weight: bold; }
.single em {font-style: italic; }
.single h1 {font-size: 1.8em!important;color: #222;text-align: left;padding: 4px 0 4px 2%;background: linear-gradient(90deg, #e1efff, transparent);}
.single h2 {font-size: 1.5em;margin: 16px 0 8px;}
.single h3 {font-size: 1.25em;margin: 40px 0 10px;padding: 1%;border-left: 5px solid #155CAB;background: #f4f4f4;}
.single h4 {font-size: 1em;margin: 30px 0 10px;border-left: 4px dashed #155CAB;padding: 0 0 0 10px; }
.single h5 {font-size: 0.8em; }
.single h6 {font-size: 0.6em; }
.single ul, .single ol {padding-left: 20px;}
.posts_img {margin: 40px 0 20px;}
blockquote {display: block; -webkit-margin-before: 1em; -webkit-margin-after: 1em; -webkit-margin-start: 40px; -webkit-margin-end: 40px;}
.single li {list-style-type: disc;list-style-position: inside;margin-bottom: 8px;}

@media(max-width: 680px) {
	.single h2 { font-size: 1.2em; }
	.single h3 { font-size: 1.1em; }
	.single p { font-size: 0.9em; }
}
