@charset "UTF-8";
/*common*/
.pc-only { display: block !important; }
.sp-only { display: none !important; }

section, main { position: relative; display: block; }
html, body { width: 100%; overflow-x: hidden; }
img { max-width: 100%; }

@media screen and (max-width: 900px) {
    .pc-only { display: none !important; }
    .sp-only { display: block !important; }
    html, body { width: 100%; overflow-x: hidden; }
}

/*no-js*/
/*.no-js .js-scroll-fade,
.no-js .top_main_txt,
.no-js .top_main_txt .catch,
.no-js .top_main_txt .read,
.no-js .top_main_scroll { opacity: 1!important; }
.no-js body.home #loading { display: none; }
.no-js body#home #header {-webkit-transform: translateY(0);transform: translateY(0);}
.no-js body:not(.home) #loading { display: none; }*/
/*loading*/

body #loading { background: #fff; display: block; height: 100%; left: 0; position: fixed; top: 0; width: 100%; z-index: 100010; pointer-events: none; -webkit-transition: opacity 1.5s cubic-bezier(0.16, 1, 0.3, 1) 0.5s; transition: opacity 1.5s cubic-bezier(0.16, 1, 0.3, 1) 0.5s; }

body #loading.is-animation { opacity: 0; }

/*loop*/
@keyframes loop {
    0% { transform: translateX(100%); }
  to { transform: translateX(-100%); }
}
@keyframes loop2 {
    0% { transform: translateX(0); }
  to { transform: translateX(-200%); }
}

/*fade*/
.js-scroll-fade:not(.top_about_ph):not(.hd_anime) { opacity: 0; }

.isActive:not(.top_about_ph):not(.hd_anime) { -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1); animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1); -webkit-animation-duration: 1.8s; animation-duration: 1.8s; -webkit-animation-name: fadeUp; animation-name: fadeUp; -webkit-animation-fill-mode: forwards; animation-fill-mode: forwards; }

@-webkit-keyframes fadeUp {
    0% { opacity: 0; transform: translateY(50px); }
  10% { opacity: 0; }
  to { opacity: 1; transform: none; trfooter_logo_setansform: none; } 
}
@keyframes fadeUp { 
    0% { opacity: 0; transform: translateY(50px); }
  10% { opacity: 0; }
  to { opacity: 1; transform: none; } 
}

/*top*/
header { display: grid; grid-template-columns: 50.0rem 1fr; grid-column-gap: 3.0rem; position: fixed; top: 0; z-index: 10; width: 100%; padding: 7.5rem 9.06% 0 5.68%; box-sizing: border-box; transition: padding 1.2s cubic-bezier(0.16, 1, 0.3, 1); }
header:before { content: ""; display: block; width: 100%; height: 13.0rem; background: #fff; opacity: 0; position: absolute; left: 0; top: 0; transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
header.fixed { padding-top: 4.0rem; }
header.fixed:before { opacity: 0.8; }
.header_logo { position: relative; z-index: 2; }
header.fixed .header_logo svg * { fill: #000; }
.global_nav { width: 100%; display: flex; justify-content: flex-end; position: relative; z-index: 2; }
.global_nav > li { margin-left: 3em; position: relative; }
.global_nav a { font-size: 3.0rem; color: #000; transition: color 0.5s cubic-bezier(0.16, 1, 0.3, 1); }
body.home .global_nav a { color: #fff; }
.global_nav .sub { margin-top: 4.0rem; position: absolute; top: 4.0rem; transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1); }
.global_nav .sub a { font-size: 2.0rem; white-space: nowrap; }
.global_nav .sub li + li { margin-top: 1.5em; }
header.fixed .global_nav a { color: #000; }
header.fixed .global_nav .sub { opacity: 0; pointer-events: none; }

body.philosophy .global_nav > .nav01 > a,
body.product .global_nav > .nav02 > a,
body.post-type-archive-notes .global_nav > .nav03 > a,
body.tax-notes_cat .global_nav > .nav03 > a,
body.single-notes .global_nav > .nav03 > a,
body.order .global_nav > .nav04 > a,
body.contact .global_nav > .nav05 > a { border-bottom: 1px solid #000; }

.btn_humberger,
.op_global_nav{ display: none; }

.hd_en { font-size: 10.0rem; line-height: 1; white-space: nowrap; }

.fv_slide { width: 100%; height: 100vh; }
.fv_slide .swiper-slide img { width: 100%; height: 100vh; object-fit: cover; }

.top_topics > .inner { display: grid; grid-template-columns: repeat(2,1fr);}
.top_topics_item { display: block; position: relative; overflow: hidden; }
.top_topics_item .ph img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }
.top_topics_item .txt { display: flex; align-items: center; position: absolute; bottom: 0; left: 0; padding: 3.5rem; }
.top_topics_item .txt .copy { margin-left: 2.4rem; font-size: 3.0rem; line-height: 1.0; color: #fff; }
.top_topics_item .arrow { width: 9.8rem; position: absolute; right: 0; bottom: 0; }
.top_topics_item .arrow img { width: 100%;}
.top_topics_item .ico { width: 8.9rem; height: 8.9rem; position: relative; border: 1px solid #fff; }
.top_topics_item .ico span { display: block; width: 100%; text-align: center; position: absolute; top: 50%; transform: translateY(-50%); font-size: 3.0rem; color: #fff; }

.top_news { background: #F1F1EB; position: relative; }
.top_news > .inner { padding: 6.0rem 0; }
.top_news a { width: 87.50%; margin: 0 auto; display: flex; align-items: center; }
.top_news .hd_en { line-height: 1; }
.top_news .ttl { font-size: 2.0rem; line-height: 1.5; margin: 0 10.0rem 0 6.0rem; }
.top_news .arrow { width: 9.8rem; position: absolute; right: 0; top: 50%; transform: translateY(-50%); } 
.top_news .arrow svg { width: 100%; }

.sct_philosophy { padding: 24.0rem 0 21.0rem; }
.sct_philosophy > .inner { width: 87.50%; margin: 0 auto; display: flex; justify-content: space-between; }
.sct_philosophy_txt { width: 36.21%; position: relative; z-index: 2; }
.sct_philosophy_ph { width: 57.14%; }
.sct_philosophy_txt .hd_ja { font-size: 2.0rem; line-height: 1; margin: 1.0rem 0 6.5rem; }
.sct_philosophy_txt .arrow {text-align: right; margin-top: 5.0rem; }
.sct_philosophy_txt .arrow a { display: inline-block; width: 9.8rem; }

.top_catalog { background: #B4ACA5; position: relative; margin: 0 3.12%; padding: 6.0rem 0 5.0rem; }
.top_catalog > .inner { width: 87.50%; margin: 0 auto; }
.top_catalog_link a { display: flex; align-items: center; }
.top_catalog * { color: #fff; }
.top_catalog_head { display: flex; justify-content: space-between; flex-wrap: wrap; padding: 0 3.5%; }
.top_catalog_head .hd { margin-right: 3.0rem;}
.top_catalog_head .discription { margin-top: 2.0rem; }
.top_catalog_head .flow { font-size: 3.0rem; line-height: 1.5; }
.top_catalog_head .hd_ja { font-size: 2.0rem; }

.top_catalog_ph { position: relative; margin-top: 5.0rem; box-shadow: 0px 4px 4px 0px #00000040; }
.top_catalog_ph .season { font-size: 3.0rem; line-height: 1; position: absolute; left: 5%; top: 50%; transform: translateY(-50%); }
.top_catalog_ph .num { font-size: 15.0rem; line-height: 1; position: absolute; right: 4.28%; top: 50%; transform: translateY(-50%); }
.top_catalog_ph .ph img { aspect-ratio: 2100 / 480; object-fit: cover; }

.top_catalog_link { display: flex; justify-content: flex-end; margin-top: 5.9rem; }
.top_catalog_link .copy { font-size: 2.0rem; margin-right: 4.5rem; }
.top_catalog_link .arrow { width: 9.8rem; }
.top_catalog_link .arrow img { width: 100%; }

.top_newslist { background: #F1F1EB; margin-top: 5.0rem; }
.top_newslist > .inner { width: 87.50%; margin: 0 auto; padding: 6.0rem 0 12.0rem; }
.top_newslist_list { display: grid; grid-template-columns: repeat(2,1fr); margin-top: 7.0rem; }
.top_newslist_list .cat { font-size: 2.0rem; color: #365555; }
.top_newslist_list .date { font-size: 2.0rem; color: #365555; margin-top: 3.0rem; }
.top_newslist_list .ttl { font-size: 2.0rem; color: #365555; }
.top_newslist_list a { display: block; width: 83.57%; padding-right: 12.0rem; box-sizing: border-box; position: relative; }
.top_newslist_list .arrow { width: 9.8rem; position: absolute; right: 0; bottom: 0; }
.top_newslist_list .arrow svg { width: 100%; }

.top_event { position: relative; }
.top_event .hd_en { color: #365555; }
.top_event > .inner { width: 87.50%; margin: 9.0rem auto 24.0rem; }
.top_event_slidebox { width: 115.88%; margin: 10.0rem -7.94% 0; position: relative; }
.top_event_slide { width: 71.42%; margin: 0 auto; overflow: hidden; }
.post_item .date { font-size: 1.4rem; }
.post_item .ttl { font-size: 2.0rem; }
.post_item .cat { font-size: 1.4rem; position: absolute; right: 0; top: 0; }
.post_item .cat span,
.post_item .cat a { border-bottom: 1px solid #000; }
.post_item .txt { position: relative; margin-top: 1.5rem; }
.post_item .thumb { overflow: hidden; }
.post_item .thumb img { aspect-ratio: 4 / 3; object-fit: cover; }

footer { background: #F1F1EB; padding: 20.0rem 0 5.0rem; margin-top: 0; position: relative; border-top: 1px solid #000; }
body.home footer { border-top: none; }
.footer_nav > ul { display: flex; justify-content: center; }
.footer_nav > ul > li { font-size: 3.0rem; }
.footer_nav > ul > li + li { margin-left: 7.0rem; }
.footer_nav li li { font-size: 2.0rem; }
.footer_nav > ul ul { margin-top: 3.0rem; }
.footer_nav > ul ul li + li { margin-top: 1.5rem; }

.footer_function { margin-top: 22.0rem; }
.footer_function > ul { display: flex; justify-content: center; }
.footer_function > ul > li { font-size: 2.0rem; }
.footer_function > ul > li + li { margin-left: 11.0rem; }

.footer_logo { width: 92.50%; margin: 37.0rem auto 0; }
.footer_logo img { width: 100%; }

.copyrights { font-size: 2.0rem; position: absolute; right: 1.68%; top: 50%; transform: translateY(-50%) rotate(90deg); transform-origin: right top; }

.swiper-button-next:after, .swiper-button-prev:after { display: none; }
.swiper-button-next, .swiper-button-prev { width: 9.8rem; height: 8.9rem; }
.swiper-button-prev { width: 9.8rem; transform: scaleX(-1); }
.swiper-button-next svg, .swiper-button-prev svg { width: 100%; height: auto; }

.fv_slide { position: relative; }
.fv_slide .swiper-button-prev { position: absolute; left: 0; bottom: 0; top: auto; opacity: 1!important; }
.fv_slide .swiper-button-next { position: absolute; right: 0; bottom: 0; top: auto; opacity: 1!important; }

._btop { border-top: 1px solid #000; margin-top: 5.0rem; }
._btop + .top_catalog { margin-top: 5.0rem; }

@media screen and (max-width: 900px) { 
    header { display: grid; grid-template-columns: 40.0rem 1fr; grid-column-gap: 3.0rem; position: absolute; top: 6.3rem; z-index: 10; width: 100%; padding: 0 9.06% 0 5.68%; box-sizing: border-box; }
    .global_nav { width: 100%; display: none; justify-content: flex-end; }

    .hd_en { font-size: 8.0rem; line-height: 1; white-space: nowrap; }
    
    .btn_humberger { display: block; position: fixed; right: 8.33%; top: 5.4rem; z-index: 9999; }
    .btn_humberger .line { display: block; width: 5.0rem; height: 2.0rem; position: relative; }
    .btn_humberger .line span { width: 5.0rem; height: 2px; background: #000; position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); -webkit-transition: transform 1.0s cubic-bezier(0.16, 1, 0.3, 1); transition: transform 1.0s cubic-bezier(0.16, 1, 0.3, 1); }
    .btn_humberger .line span:nth-child(1) { margin-top: -1.0rem; }
    .btn_humberger .line span:nth-child(2) { margin-top: 1.0rem; }
    body.open .btn_humberger .line span:nth-child(1) { margin-top: 0; -webkit-transform: translate(-50%,-50%) rotate(45deg); transform: translate(-50%,-50%) rotate(45deg); }
    body.open .btn_humberger .line span:nth-child(2) { margin-top: 0; -webkit-transform: translate(-50%,-50%) rotate(-45deg); transform: translate(-50%,-50%) rotate(-45deg); }
    body.home .btn_humberger .line span { background: #fff; }
    body.open .btn_humberger .line span { background: #000; }
    
    .op_global_nav { display: block; opacity: 0; pointer-events: none; position: fixed; top: 0; right: 0; z-index: 9998; width: 93.75%; max-width: 60.0rem; height: 100vh; background: rgba(241, 241, 235, 0.9); -webkit-transition: opacity 1.0s cubic-bezier(0.16, 1, 0.3, 1); transition: opacity 1.0s cubic-bezier(0.16, 1, 0.3, 1); overflow-y: scroll; scrollbar-width: none; -ms-overflow-style: none; }
    .op_global_nav::-webkit-scrollbar { display: none; }
    .op_global_nav > .inner { padding: 5.0rem 10% 10%; }
    body.open .op_global_nav { opacity: 1; pointer-events: visible; }
    
    .nav_item .main { width: 8em; font-size: 3.0rem; }
    .nav_item + .nav_item { margin-top: 5.0rem; }
    .nav_item { display: flex; align-items: flex-start; }
    .secondlevel a { display: block; font-size: 2.0rem; padding-top: 0.5rem; }
    .secondlevel a + a { margin-top: 2.0rem; }
    
    body.philosophy .nav01 .toplevel,
    body.product .nav02 .toplevel,
    body.post-type-archive-notes .nav03 .toplevel,
    body.tax-notes_cat .nav03 .toplevel,
    body.single-notes .nav03 .toplevel,
    body.order .nav04 .toplevel,
    body.contact .nav05 .toplevel { border-bottom: 1px solid #000; }
    
    .nav_function { display: flex; justify-content: space-between; width: 80%; font-size: 2.0rem; position: absolute; bottom: 4.6rem; }
    
.fv_slide { width: 100%; height: 100vh; }
.fv_slide .swiper-slide img { width: 100%; height: 100vh; object-fit: cover; }

    .top_topics { margin-top: 0.9rem; }
    .top_topics > .inner { display: grid; grid-template-columns: repeat(1,1fr);}
.top_topics_item { display: block; position: relative; }
.top_topics_item .txt { display: flex; align-items: center; position: absolute; bottom: 0; left: 0; padding: 3.5rem; }
.top_topics_item .txt .copy { margin-left: 2.4rem; font-size: 3.0rem; line-height: 1.0; color: #fff; }
    .top_topics_item .arrow { width: 5.5rem; position: absolute; right: 0; bottom: 0; }
.top_topics_item .arrow img { width: 100%;}
.top_topics_item .ico { width: 8.9rem; height: 8.9rem; position: relative; border: 1px solid #fff; }
.top_topics_item .ico span { display: block; width: 100%; text-align: center; position: absolute; top: 50%; transform: translateY(-50%); font-size: 3.0rem; color: #fff; }

.top_news { background: #F1F1EB; position: relative; }
    .top_news > .inner { padding: 3.5rem 0; }
    .top_news a { width: 90.64%; margin: 0 auto; display: flex; align-items: center; }
.top_news .hd_en { line-height: 1; }
    .top_news .ttl { font-size: 1.6rem; line-height: 1.5; margin: 0 5.0rem 0 3.0rem; }
.top_news .arrow { width: 5.5rem; position: absolute; right: 0; top: 50%; transform: translateY(-50%); } 
.top_news .arrow svg { width: 100%; }
    .top_news .hd_en { font-size: 5.0rem; }

.sct_philosophy { padding: 8.5rem 0 11.0rem; }
    .sct_philosophy > .inner { width: 84.37%; margin: 0 auto; display: block;  }
    .sct_philosophy_txt { width: auto; position: relative; z-index: 2; }
    .sct_philosophy_ph { width: auto; margin: 7.0rem 0 3.0rem; }
    .sct_philosophy_txt .hd_en { margin-left: 5.55%; font-size: 8.0rem; line-height: 1; }
    .sct_philosophy_txt .hd_ja { font-size: 2.0rem; line-height: 1; margin: 1.0rem 0 6.5rem 5.55%; }
    .sct_philosophy_txt .arrow {text-align: right; margin-top: 3.0rem; }
    .sct_philosophy_txt .arrow a { display: inline-block; width: 5.5rem; }

    .top_catalog { background: #B4ACA5; position: relative; margin: 0; padding: 7.0rem 0 6.0rem; }
    .top_catalog > .inner { width: 84.37%; margin: 0 auto; }
.top_catalog a { display: flex; align-items: center; }
.top_catalog * { color: #fff; }
    .top_catalog_head { display: flex; justify-content: space-between; flex-wrap: wrap; padding: 0; }
.top_catalog_head .hd { margin-right: 3.0rem;}
    .top_catalog_head .discription { margin-top: 5.5rem; }
.top_catalog_head .flow { font-size: 3.0rem; }
    .top_catalog_head .hd_ja { font-size: 2.0rem; margin-top: 1.0rem; }
    .top_catalog_head p { line-height: 1.5; margin-top: 3.0rem; }

.top_catalog_ph { position: relative; margin-top: 5.0rem; }
    .top_catalog_ph .season { font-size: 3.0rem; line-height: 1; position: absolute; left: 9.25%; top: 50%; transform: translateY(-50%); }
    .top_catalog_ph .num { font-size: 15.0rem; line-height: 1; position: absolute; right: 0.28%; top: 50%; transform: translateY(-50%); }
    .top_catalog_ph .ph img { width: 100%; aspect-ratio: 135 / 83; object-fit: cover; }

.top_catalog_link { display: flex; justify-content: flex-end; margin-top: 5.9rem; }
.top_catalog_link .copy { font-size: 2.0rem; margin-right: 4.5rem; }
.top_catalog_link .arrow { width: 5.5rem; }
.top_catalog_link .arrow img { width: 100%; }

    .top_newslist { background: #F1F1EB; margin-top: 0; }
    .top_newslist > .inner { width: 84.37%; margin: 0 auto; padding: 6.0rem 0 12.0rem; }
    .top_newslist_list { display: grid; grid-template-columns: repeat(1,1fr); margin-top: 7.0rem; }
.top_newslist_list .cat { font-size: 2.0rem; color: #365555; }
.top_newslist_list .date { font-size: 2.0rem; color: #365555; margin-top: 3.0rem; }
.top_newslist_list .ttl { font-size: 2.0rem; color: #365555; }
    .top_newslist_list a { display: block; width: 100%; padding-right: 12.0rem; box-sizing: border-box; position: relative; }
    .top_newslist_list a + a { margin-top: 10.0rem;}
.top_newslist_list .arrow { width: 5.5rem; position: absolute; right: 0; bottom: 0; }
.top_newslist_list .arrow svg { width: 100%; }

    .top_event { position: relative; margin-bottom: 17.5rem; }
.top_event .hd_en { color: #365555; }
    .top_event > .inner { width: 75%; margin: 6.0rem 0 0 7.50%; }
    .top_event_slidebox { width: 100%; margin: 8.0rem 0 0; position: relative; }
    .top_event_slide { width: 100%; margin: 0 auto; overflow: visible; }
.top_event_slide .date { font-size: 1.4rem; }
.top_event_slide .ttl { font-size: 2.0rem; }
.top_event_slide .cat { font-size: 1.4rem; position: absolute; right: 0; top: 0; }
.top_event_slide .cat span,
.top_event_slide .cat a { border-bottom: 1px solid #000; }
.top_event_slide .txt { position: relative; margin-top: 1.5rem; }

    footer { background: #F1F1EB; padding: 10.0rem 0 5.0rem; margin-top: 0; position: relative; }
    .footer_nav { width: auto; margin: 0 0 0 13.12%;}
    .footer_nav > ul { display: grid; grid-template-columns: repeat(3,1fr); grid-gap: 9.0rem 3.0rem; }
    .footer_nav > ul > li { font-size: 2.4rem; }
    .footer_nav > ul > li + li { margin-left: 0; }
    .footer_nav > ul > li:nth-child(4) { margin-left: 0; }
    .footer_nav li li { font-size: 1.6rem; }
.footer_nav > ul ul { margin-top: 1.0rem; }

    .footer_function { margin: 22.0rem 13.16% 0; }
.footer_function > ul { display: flex; justify-content: space-between;; }
    .footer_function > ul > li { font-size: 1.6rem; }
    .footer_function > ul > li + li { margin-left: 6.0rem; }

    .footer_logo { width: 92.50%; margin: 6.0rem auto 0; }

.copyrights { font-size: 2.0rem; position: absolute; right: 1.68%; top: 50%; transform: translateY(-50%) rotate(90deg); transform-origin: right top; }
    
.swiper-button-next:after, .swiper-button-prev:after { display: none; }
    .swiper-button-next, .swiper-button-prev { width: 5.5rem; height: 5.0rem; bottom: -11.0rem; top: auto; }
    .swiper-button-prev { transform: scaleX(-1); }
.swiper-button-next svg, .swiper-button-prev svg { width: 100%; height: auto; }

.fv_slide { position: relative; }
.fv_slide .swiper-button-prev { position: absolute; left: 0; bottom: 0; top: auto; }
.fv_slide .swiper-button-next { position: absolute; right: 0; bottom: 0; top: auto; }

    ._btop:not(._spbtop) { border-top: none; margin-top: 0; }
    ._btop + .top_catalog { margin-top: 0; }
    
}

/*common*/
.page_head { margin-top: 28.0rem; }
.pagettl { font-size: 10.0rem; line-height: 1.2; color: #B4ACA5; text-align: center; }
.mainph { width: 62.50%; margin: 7.0rem auto 0; position: relative; }
.mainph .hd { width: 17.3%; position: absolute; top: 0; left: 0; transform: translateX(-100%); font-size: 2.0rem; }

@media screen and (max-width: 900px) { 
    .page_head { margin-top: 19.0rem; }
    .pagettl { font-size: 8.0rem; line-height: 1.2; color: #B4ACA5; text-align: center; }
    .mainph { width: 90.62%; margin: 2.0rem auto 0; position: relative; }
    .mainph .hd { width: auto; position: relative; top: auto; left: auto; transform: translateX(0%); margin-bottom: 4.5rem; font-size: 2.0rem; text-align: center; }
    
}

/*philosophy*/
.philosophy_section { text-align: center; }
.philosophy_section + .philosophy_section { margin-top: 20.0rem;}
.philosophy_section .read { font-size: 3.0rem; line-height: 1.5; margin: 13.0rem 0 9.0rem; }

.philosophy_set01 { position: relative; margin-top: 18.0rem; }
.philosophy_set01_ph01 { width: 46.87%; }
.philosophy_set01_ph02 { width: 28.12%; margin: 10% 0 0 27.12%; }
.philosophy_set01_ph03 { width: 28.12%; position: absolute; right: 0; top: 22%; }
.philosophy_set01_map { width: 46.25%; position: absolute; right: -1%; top: -52%; }

.philosophy_item02_ph { margin: 8.0rem 0;}
.philosophy_item02_ph img { width: 100%; }

.philosophy_set02 .ph { width: 46.87%; margin: 10.0rem auto 8.0rem; }
.philosophy_set02 .txt { width: 75%; margin: 0 auto; }
.philosophy_set02 .ph figcaption { font-size: 1.2rem; margin-top: 0.5rem; text-align: left; }

.about_section { background: #F1F1EB; padding: 17.0rem 0 32.0rem; margin-top: 23.0rem; }
.about_section * { color: #365555; }
.about_section > .inner { width: 62.5%; margin: 0 auto; position: relative; }
.about_section .read { margin-bottom: 9.0rem; font-size: 5.0rem; line-height: 1.5; }
.about_section .hd { font-size: 2.0rem; line-height: 1; width: 15%; margin-bottom: 9.0rem; position: absolute; left: 0; top: 1.5rem; transform: translateX(-100%); }
.philosophy_item03_set { margin: 9.0rem 0; display: grid; grid-template-columns: repeat(2,1fr); }
.about_ph03 { width: 40%; margin: 30.0rem auto 0; }

.team_section { background: #F1F1EB; padding: 24.0rem 0 18.0rem; border-top: 1px solid #000; }
.team_section > .inner { width: 62.5%; margin: 0 auto; }
.team_section .head .en { font-size: 10.0rem; line-height: 1.5; color: #365555; }
.team_section .head .ttl { font-size: 2.0rem; color: #365555; }

.team_ph { margin-top: 13.0rem; }
.team_ph figcaption { margin-top: 1.0rem; font-size: 1.4rem; color: #B4ACA5; }
.team_list { display: grid; grid-template-columns: repeat(3,1fr); grid-gap: 4.0rem 5%; width: 73.5rem; margin: 2.0rem auto 0; }
.team_list .name { font-size: 3.0rem; line-height: 1.5; }
.team_list .area { font-size: 2.0rem; color: #B4ACA5; }

@media screen and (max-width: 900px) { 
    .philosophy_section { width: 87.50%; margin: 0 auto; text-align: center; }
.philosophy_section + .philosophy_section { margin-top: 20.0rem;}
    .philosophy_section .read { font-size: 3.0rem; margin: 9.0rem 0; }

.philosophy_set01 { position: relative; margin-top: 18.0rem; }
    .philosophy_set01_ph01 { width: 100%; position: relative; z-index: 2; }
    .philosophy_set01_ph02 { width: 46.87%; margin: 0; }
    .philosophy_set01_ph03 { width: 46.87%; position: relative; right: auto; top: auto; }
    .philosophy_set01_map { width: 100%; margin: -4.0rem 0 0 -14.37%; position: relative; right: auto; top: auto; }
    .philosophy_set01 .ph_set { width: 114.28%; margin: -1px 0 0 -7.14%; display: flex; justify-content: space-between; position: relative; z-index: 2; }

    .philosophy_item02_ph { width: 114.28%; margin: 3.0rem -7.14%;}
    .philosophy_item02_ph img { aspect-ratio: 640 / 300; width: 100%; object-fit: cover; }

    .philosophy_set02 .ph { width: 89.28%; margin: 3.0rem auto; }
    .philosophy_set02 .txt { width: auto; margin: 0 auto; }
.philosophy_set02 .ph figcaption { font-size: 1.2rem; margin-top: 0.5rem; text-align: left; }

    .about_section { background: #F1F1EB; padding: 10.0rem 0 11.0rem; margin-top: 8.5rem; }
.about_section * { color: #365555; }
    .about_section > .inner { width: 84.37%; margin: 0 auto; position: relative; }
    .about_section .read { margin-bottom: 6.0rem; font-size: 4.0rem; line-height: 1.5; text-align: center;}
    .about_section .hd { font-size: 2.0rem; text-align: center; line-height: 1; width: auto; margin: 6.0rem 0 3.5rem; position: relative; left: auto; top: auto; transform: translateX(0%); }
    .philosophy_item03_set { margin: 4.0rem 0; display: grid; grid-template-columns: repeat(2,1fr); }
    .about_ph03 { width: 74.07%; margin: 9.5rem auto 0; }

    .team_section { background: #F1F1EB; padding: 8.0rem 0; border-top: 1px solid #000; }
    .team_section > .inner { width: 100%; margin: 0 auto; }
    .team_section .head { width: 91.25%; margin: 0 auto; }
.team_section .head .en { font-size: 10.0rem; line-height: 1.5; color: #365555; }
.team_section .head .ttl { font-size: 2.0rem; color: #365555; }

    .team_ph { width: 84.37%; margin: 7.0rem auto 0; }
    .team_ph figcaption { margin-top: 1.0rem; font-size: 1.4rem; color: #B4ACA5; }
    .team_list { width: 84.37%; display: grid; grid-template-columns: repeat(3,1fr); grid-gap: 5.0rem 4.97%; margin: 2.5rem auto 0; }
    .team_list .name { font-size: 2.5rem; }
.team_list .area { font-size: 2.0rem; color: #B4ACA5; }
    
}

/*product*/
.product_head { width: 62.50%; margin: 0 auto; text-align: center; }
.product_head .hd_en { margin: 17.0rem 0 12.0rem; font-size: 3.0rem; }

.product_section:nth-child(2n + 1) { margin-left: 15.75%; }
.product_section:nth-child(2n) { margin-right: 15.75%; }

.product_set { display: flex; justify-content: space-between; }
.product_section:nth-child(2n + 1) .product_set { flex-direction: row-reverse; }
.product_section:nth-child(1) { margin-top: 43.0rem; }
.product_section + .product_section { margin-top: 30.7rem; }
.product_section:last-child { margin-bottom: 35.0rem; }
.product_set .ph_l { width: 55.63%; }
.product_set .txt { width: 33.38%; position: relative; }
.product_set .txt .ph { margin-top: 10.0rem; }
.product_section_head { position: absolute; top: -10.0rem; transform: translateY(-100%); }
.product_section_head .num,
.product_section_head .ttl { font-size: 2.0rem; }
.product_section_head .hd_en { font-size: 10.0rem; }

@media screen and (max-width: 900px) { 
    .product_head { width: 90.62%; margin: 0 auto; text-align: center; }
    .product_head .hd_en { margin: 9.5rem 0 3.0rem; font-size: 3.0rem; }

    .product_section:nth-child(2n + 1),
    .product_section:nth-child(2n) { margin: 0 auto; }

    .product_set { display: block; }
    .product_section:nth-child(1) { margin-top: 19.0rem; }
    .product_section + .product_section { margin-top: 19.0rem; }
    .product_section:last-child { margin-bottom: 16.0rem; }
    .product_set .ph_l { width: auto;}
    .product_set .txt { width: 90.62%; margin: 0 auto; position: relative; }
    .product_set .txt .ph { width: 77.58%; margin: 5.0rem auto 0; }
    .product_section_head { margin: 5.0rem 0 4.5rem; position: relative; top: auto; transform: translateY(0%); }
.product_section_head .num,
.product_section_head .ttl { font-size: 2.0rem; }
    .product_section_head .ttl { margin-top: 2.0rem;}
.product_section_head .hd_en { font-size: 8.0rem; }
}

/*order*/
.order_section { width: 62.5%; margin: 0 auto; }
.order_section .hd_en { font-size: 3.0rem; text-align: center; margin-top: 17.0rem; }
.order_flow { display: grid; grid-template-columns: repeat(9,10.0rem);  justify-content: center; margin: 17.0rem 0 11.0rem; }
.order_flow li { font-size: 2.0rem; text-align: center; position: relative; }
.order_flow li .circle { display: block; width: 3.0rem; height: 3.0rem; margin: 0 auto 2.0rem; border: 1px solid #000; border-radius: 50%; }
.order_flow li .line { display: block; height: 1px; background: #000; margin-top: 1.5rem; }
.order_flow .copy { font-size: 1.8rem; white-space: nowrap; }

.order_wideph { width: 100%; max-height: 88.8rem; margin-top: 23.0rem; object-fit: cover; }
.order_slide { margin: 21.0rem 0; }
.order_slide .swiper-wrapper { transition-timing-function: linear !important; }

.top_showroom { position: relative; }
.top_showroom .hd_en { }
.top_showroom .num { font-size: 2.0rem; }
.top_showroom .copy { font-size: 2.0rem; }
.top_showroom > .inner { width: 87.50%; margin: 9.0rem auto 24.0rem; }

.top_showroom_set { display: flex; justify-content: space-between;  width: 74.28%; margin: 12.0rem auto 23.0rem; }
.top_showroom_set .ph { width: 43.26%; }
.top_showroom_set .txt { width: 43.26%; }
.top_showroom_set .txt p { font-size: 1.5rem; }
.top_showroom_set .txt .arrow { text-align: right; }
.top_showroom_set .txt .arrow svg { width: 9.8rem; margin-top: -6.0rem; }

.order_faq { background: #F1F1EB; padding: 9.0rem 0 16.0rem; }
.order_faq > .inner { display: flex; justify-content: space-between; width: 84.56%; margin-left: 5.87%; }
.order_faq * { color: #365555; }
.order_faq_head .copy { font-size: 2.0rem; }
.order_faq_list { width: 48.14%;  }
.faq_item { border-bottom: 1px solid #365555; padding: 5.0rem 0; }
.order_faq_list .faq_q { font-size: 1.5rem; position: relative; cursor: pointer; }
.order_faq_list .faq_q .arrow { position: absolute; right: 0; top: 0; }
.order_faq_list p { font-size: 1.5rem; }
.order_faq_list .faq_a { margin-top: 2.0rem; display: none;}

.faq_q .arrow { transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1); }
.faq_q.is-active .arrow { transform: rotate(90deg); }

@media screen and (max-width: 900px) { 
    .order_section { width: 90.62%; margin: 0 auto; }
.order_section .hd_en { font-size: 3.0rem; text-align: center; margin-top: 9.5rem; }
    .order_flow { display: grid; grid-template-columns: 13em 0 13em 0 13em 0 13em 0 13em; justify-content: center; width: 93.10%; margin: 9.5rem auto 3.5rem; }
    .order_flow li { font-size: 1.8rem; text-align: center; position: relative;}
.order_flow li .circle { display: block; width: 3.0rem; height: 3.0rem; margin: 0 auto 2.0rem; border: 1px solid #000; border-radius: 50%; }
    .order_flow li .line { display: block; min-width: 6vw; height: 1px; background: #000; margin-top: 1.5rem; position: absolute; left: 0; transform: translateX(-50%); }

    .order_wideph { width: 100%; max-height: 88.8rem; margin-top: 8.0rem; object-fit: cover; }
    .order_slide { margin: 14.0rem 0 18.5rem; }
.order_slide .swiper-wrapper { transition-timing-function: linear !important; }
    
.top_showroom { position: relative; }
.top_showroom .hd_en { }
.top_showroom .num { font-size: 2.0rem; }
.top_showroom .copy { font-size: 2.0rem; }
    .top_showroom > .inner { width: 84.37%; margin: 10.0rem auto; }

    .top_showroom_set { display: block; justify-content: space-between;  width: 83.33%; margin: 12.0rem auto 0; }
    .top_showroom_set .ph { width: auto; }
    .top_showroom_set .txt { width: auto; margin-top: 4.0rem; }
.top_showroom_set .txt p { font-size: 1.5rem; }
.top_showroom_set .txt .arrow { text-align: right; }
    .top_showroom_set .txt .arrow svg { width: 5.5rem; margin-top: 6.0rem; }

    .order_faq { background: #F1F1EB; padding: 9.5rem 0 16.0rem; }
    .order_faq > .inner { display: block; justify-content: space-between; width: 84.37%; margin: 0 auto; }
.order_faq * { color: #365555; }
    .order_faq_head { margin-left: 7.96%; }
    .order_faq_list { width: auto; margin-top: 4.0rem; }
.faq_item { border-bottom: 1px solid #365555; padding: 5.0rem 0; }
.order_faq_list .faq_q { font-size: 1.5rem; position: relative; }
.order_faq_list .faq_q .arrow { position: absolute; right: 0; top: 0; }
.order_faq_list p { font-size: 1.5rem; }
.order_faq_list .faq_a { margin-top: 2.0rem; display: none;}

}

@media screen and (max-width: 480px) { 
    .order_flow { display: grid; grid-template-columns: 12em 0 11em 0 11em 0 11em 0 11em; justify-content: center; width: 93.10%; margin: 9.5rem auto 3.5rem; }
    .order_flow li { font-size: 1.6rem; }
}

/*notes*/
.notes_catlist { width: 63.75%; margin: 13.0rem auto 0; display: flex; flex-wrap: wrap; justify-content: center; }
.notes_catlist a { margin: 0 4.0rem; font-size: 3.0rem;}
.notes_catlist .active { border-bottom: 1px solid #000; }

.archive_notes .inner { width: 63.75%; margin: 10.0rem auto 12.0rem; display: grid; grid-template-columns: repeat(2,1fr); grid-gap: 10.0rem 3.92%; }

.wp-pagenavi { display: flex; justify-content: center; margin-bottom: 12.0rem; }
.wp-pagenavi .prev.page-numbers,
.wp-pagenavi .next.page-numbers { margin: 0 1.15rem; font-size: 3.0rem; text-align: center; } 
.wp-pagenavi .page-numbers:not(.prev):not(.next),
.wp-pagenavi .current { margin: 0 1.15rem; font-size: 3.0rem; line-height: 1.5; text-align: center; } 
.wp-pagenavi .current { border-bottom: 1px solid #000; }
.wp-pagenavi .extend { margin: 0 1.15rem; }

@media screen and (max-width: 900px) { 
    .notes_catlist { width: 75%; margin: 10.0rem auto 0; display: grid; grid-template-columns: repeat(3,1fr); grid-gap: 4.0rem 3.92%; text-align: center; }
    .notes_catlist a { margin: 0; font-size: 3.0rem;}

    .archive_notes .inner { width: 75%; margin: 10.0rem auto 12.0rem; display: grid; grid-template-columns: repeat(1,1fr); grid-gap: 10.0rem 3.92%; }
    
}

/*notes single*/
.notes_single { width: 62.50%; margin: 9.0rem auto 29.0rem; }

.notes_single_body { margin-top: 9.0rem; }
.notes_single_body > * + * { margin-top: 5.0rem; }

.notes_single_head .date { font-size: 1.4rem; }
.notes_single_head .ttl { font-size: 3.0rem; }
.notes_single_head .cat { font-size: 1.4rem; position: absolute; right: 0; top: 0; }
.notes_single_head .cat span,
.notes_single_head .cat a { padding-bottom: 0.5rem; border-bottom: 1px solid #000; }
.notes_single_head .cat a + a { margin-left: 1em; }

.notes_single_body h2,
.notes_single_body h3,
.notes_single_body h4,
.notes_single_body h5,
.notes_single_body h6 { font-size: 3.0rem; }
.notes_single_body h2 + *,
.notes_single_body h3 + *,
.notes_single_body h4 + *,
.notes_single_body h5 + *,
.notes_single_body h6 + * { margin-top: 2.5rem; }
.notes_single_body ul,
.notes_single_body ol { font-size: 2.0rem; margin-left: 1.5em; }
.notes_single_body ul li { list-style: disc; }
.notes_single_body ol li { list-style: decimal; }

@media screen and (max-width: 900px) { 
    .notes_single { width: 90.62%; margin: 10.0rem auto 14.0rem; }

.notes_single_body { margin-top: 9.0rem; }
.notes_single_body > * + * { margin-top: 5.0rem; }

.notes_single_head .date { font-size: 1.4rem; }
.notes_single_head .ttl { font-size: 3.0rem; }
.notes_single_head .cat { font-size: 1.4rem; position: absolute; right: 0; top: 0; }
.notes_single_head .cat span,
.notes_single_head .cat a { padding-bottom: 0.5rem; border-bottom: 1px solid #000; }
    
}

/*contact*/
.contact_read { width: 62.5%; margin: 14.0rem auto 0; text-align: center; }
.contact_body { width: 70.0rem; margin: 16.0rem auto 28.0rem; }

.contact_item { display: flex; flex-wrap: wrap; padding: 6.0rem 0 4.0rem; }
.contact_item + .contact_item { border-top: 1px solid #000; }
.contact_item * { font-size: 1.5rem; }
.contact_item .requird { display: inline-block; margin-left: 0.5rem; font-size: 1.2rem; color: #B5B5B6; }

.contact_item .hd { width: 20em; }
.contact_item .input_txt { width: calc(100% - 20em); }
.contact_item .wide { width: 100%; margin-top: 2.0rem; }

.contact_item input[type="text"],
.contact_item textarea { width: 100%; box-sizing: border-box; border: none; }
.contact_item input[type="text"] { padding: 0; }
.contact_item textarea { height: 15.0rem; border: 1px solid #000; padding: 1.0rem 2.0rem; }
.contact_item input[type="text"]::placeholder,
.contact_item textarea::placeholder { color: #ddd; }

.contact_item input[type="radio"] { vertical-align: baseline; }

.type_list { display: grid; grid-template-columns: auto auto; grid-gap: 0.5em; margin-top: 2.0rem; }
.privacy_txt { font-size: 1.5rem; }
.privacy_txt .mwform-checkbox-field-text,
.privacy_txt .error{ display: none!important; }
.privacy_txt .error:last-child { display: block!important;}
.mw_wp_form_confirm .privacy_txt { display: none; }

.btn_submit { display: flex; justify-content: center; text-align: center; margin-top: 7.0rem; }
.btn_submit button,
.btn_submit a { display: flex; align-items: center; border: none; background: none; cursor: pointer; }
.btn_submit button .txt,
.btn_submit a .txt { font-size: 1.5rem; font-weight: 700; margin: 0 9px; }
.btn_back { margin-right: 8.0rem; }

.company_section > .inner { display: flex; width: 75%; margin: 0 auto; padding: 14.0rem 0; }
.company_section .hd { width: 50%; font-size: 10.0rem; line-height: 1.0; }
.company_section .address { width: 50%; margin-top: 3.0rem; }
.company_section .address p { font-size: 1.5rem; line-height: 2; }
.company_section .address p + p { margin-top: 2em; }

.thanks_copy { text-align: center; margin-bottom: 14.0rem; }

.mw_wp_form .horizontal-item + .horizontal-item { margin-left: 0!important; }
.mwform-radio-field-text { font-weight: 700; }

@media screen and (max-width: 900px) { 
    .contact_read { width: 84.37%; margin: 10.0rem auto 0; text-align: center; }
    .contact_body { width: 84.37%; margin: 12.0rem auto 8.0rem; }

.contact_item { display: flex; flex-wrap: wrap; padding: 4.0rem 0; }
.contact_item + .contact_item { border-top: 1px solid #000; }
.contact_item * { font-size: 1.5rem; }
.contact_item .requird { display: inline-block; margin-left: 0.5rem; font-size: 1.2rem; color: #B5B5B6; }

.contact_item .hd { width: 20em; }
    .contact_item .input_txt { width: 100%; margin-top: 2.0rem; }
.contact_item .wide { width: 100%; margin-top: 2.0rem; }

.contact_item input[type="text"],
    .contact_item textarea { width: 100%; box-sizing: border-box; }
    .contact_item textarea { height: 15.0rem; padding: 1.0rem 2.0rem; }

    .type_list { display: grid; grid-template-columns: 1fr; grid-gap: 0.5em; margin-top: 4.0rem; }
.privacy_txt { font-size: 1.5rem; }

.btn_submit { display: flex; justify-content: center; text-align: center; margin-top: 7.0rem; }
.btn_submit button,
.btn_submit a { display: flex; align-items: center; border: none; background: none; cursor: pointer; }
.btn_submit button .txt,
.btn_submit a .txt { font-size: 1.5rem; font-weight: 700; margin: 0 9px; }
    .btn_submit button .arrow,
    .btn_submit a .arrow { width: 5.8rem; }
.btn_back { margin-right: 8.0rem; }

    .company_section > .inner { display: block; width: 85.93%; margin: 0 auto; padding: 5.5rem 0 11.0rem; }
    .company_section .hd { width: auto; font-size: 8.0rem; line-height: 1.0; }
    .company_section .address { width: auto; margin-top: 7.0rem; }
.company_section .address p { font-size: 1.5rem; line-height: 2; }
.company_section .address p + p { margin-top: 2em; }

    .thanks_copy { text-align: center; margin-bottom: 10.0rem; }
    
}


/*link*/
a.link_txt { text-decoration: underline; }

@media (hover: hover) and (pointer: fine) {
    a.link_txt:hover { text-decoration: none; }
    
    .top_topics_item .ph img,
    .top_event_slide,
    .post_item .thumb img { -webkit-transition: transform 1.0s cubic-bezier(0.16, 1, 0.3, 1); transition: transform 1.0s cubic-bezier(0.16, 1, 0.3, 1); }
    .top_topics_item:hover .ph img,
    .post_item:hover .thumb img { -webkit-transform: scale(1.05); transform: scale(1.05); }
    
    .global_nav a,
    .swiper-button-prev,
    .swiper-button-next,
    .top_topics_item .arrow,
    .top_news a .ttl,
    .top_news a .arrow,
    .sct_philosophy_txt .arrow a,
    .top_catalog_link a,
    .top_newslist_list a,
    .footer_nav a,
    .footer_function a { -webkit-transition: opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1); transition: opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1); }
    .global_nav a:hover,
    .swiper-button-prev:hover,
    .swiper-button-next:hover,
    .top_topics_item:hover .arrow,
    .top_news a:hover .ttl,
    .top_news a:hover .arrow,
    .sct_philosophy_txt .arrow a:hover,
    .top_catalog_link a:hover,
    .top_newslist_list a:hover,
    .footer_nav a:hover,
    .footer_function a:hover { opacity: 0.5!important; }

    
}

