@charset "UTF-8";
/******************************* Preface ***************************************/
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1+Code:wght@100..700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");
a:hover { color: #77BE85; }

/********************************* body ***************************************/
body { /******************************** header **************************************/ /********************************  Main Content ******************************/ /***********************************  footer ********************************/ /*========= ページトップのためのCSS ===============*/ /*リンクの形状*/ /*　上に上がる動き　*/ /*　下に下がる動き　*/ /*=============== アニメーション ===============*/ }

body header .items { height: 70px; padding: 0rem 1rem; }

body header .items .header_logo { width: 50%; }

body header .items .header_logo img { width: 100%; }

body header .items .menu_wrapper .sub-nav { display: flex; padding-right: 4rem; }

body header .items .menu_wrapper .sub-nav a { width: 35px; height: 35px; }

body header .items .menu_wrapper .sub-nav a img { display: block; width: 50%; }

body header .items .menu_wrapper .nav { display: block; position: fixed; top: 0; right: -100%; bottom: 0; width: 100%; padding: 1.5rem; padding-top: 20%; background: #ffffff; overflow-x: hidden; overflow-y: auto; -webkit-overflow-scrolling: touch; transition: all .5s; z-index: 3; opacity: 0; margin-right: 0; }

body header .items .menu_wrapper .nav .menu-header_menu-container { width: 100%; flex-direction: column; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu { max-width: 100%; width: 100%; margin-bottom: 3rem; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu li::after { content: ''; display: inline-block; width: 20px; height: 20px; right: 5px; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu li a { padding: 2rem 1rem; font-size: 1.4rem; }

body header .items .menu_wrapper .nav .menu-header_menu-container .nav-foot { width: 100%; margin-right: 0; text-align: center; }

body header .items .menu_wrapper .nav .menu-header_menu-container .nav-foot .logo { margin: 0 auto 2rem auto; width: 65%; }

body header .items .menu_wrapper .nav .menu-header_menu-container .nav-foot .com_name { font-size: 1.2rem; }

body header .items .menu_wrapper .nav .menu-header_menu-container .nav-foot .add { font-size: 1.1rem; }

body header .items .menu_wrapper .toggle_btn { display: block; position: fixed; top: 20px; right: 1.5rem; width: 35px; height: 30px; transition: all .5s; cursor: pointer; z-index: 3; }

body header .items .menu_wrapper .toggle_btn span { display: block; position: absolute; left: 0; width: 35px; height: 4px; background-color: #fff; transition: all .5s; }

body header .items .menu_wrapper .toggle_btn span:nth-child(1) { top: 0; left: 0; right: 0; margin: 0 auto; }

body header .items .menu_wrapper .toggle_btn span:nth-child(2) { top: 14px; left: 0; right: 0; margin: 0 auto; }

body header .items .menu_wrapper .toggle_btn span:nth-child(3) { bottom: 0; left: 0; right: 0; margin: 0 auto; }

body header .items .menu_wrapper #mask { display: none; transition: all .3s; }

body header .items .menu_wrapper.open .nav { right: 0; opacity: 1; }

body header .items .menu_wrapper.open .toggle_btn { top: 20px; right: 1.5rem; }

body header .items .menu_wrapper.open .toggle_btn span { background-color: #fff; }

body header .items .menu_wrapper.open .toggle_btn span:nth-child(1) { -webkit-transform: translateY(15px) rotate(-315deg); transform: translateY(15px) rotate(-315deg); }

body header .items .menu_wrapper.open .toggle_btn span:nth-child(2) { opacity: 0; }

body header .items .menu_wrapper.open .toggle_btn span:nth-child(3) { -webkit-transform: translateY(-12px) rotate(315deg); transform: translateY(-12px) rotate(315deg); }

body header .items .menu_wrapper.open #mask { display: block; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: #000; opacity: .8; z-index: 2; cursor: pointer; }

body header .vi_wrapper { min-width: 100%; }

body header .vi_wrapper.vi_wrapper_top .mainVi { width: 100%; height: 100vh; }

body header .vi_wrapper.vi_wrapper_top .mainVi #mv_slide { margin-bottom: 2rem; }

body header .vi_wrapper.vi_wrapper_top .mainVi #mv_slide li { height: 100vh; background-size: cover !important; }

body header .vi_wrapper.vi_wrapper_top .ttl { width: 100%; top: 46%; margin: auto; padding-left: 1.5rem; }

body header .vi_wrapper.vi_wrapper_top .ttl h2 { font-size: 2.4rem; line-height: 1.8; }

body header .vi_wrapper.vi_wrapper_top .ttl h2 span { font-size: 1rem; }

body header .vi_wrapper.vi_wrapper_backpart .mainVi { height: 35vh; z-index: -1; }

body header .vi_wrapper.vi_wrapper_backpart .mainVi .mv_backpart { position: fixed; top: 0; left: 0; width: 100%; height: 35vh; background-size: cover !important; background-position: center; z-index: -2; }

body header .vi_wrapper.vi_wrapper_backpart .ttl { top: auto; bottom: 0; left: 0; transform: translate(0, 0); margin: auto; padding: 2rem; }

body header .vi_wrapper.vi_wrapper_backpart .ttl h2 { font-size: 2rem; color: white; font-weight: bold; }

body header .vi_wrapper.vi_wrapper_backpart .ttl h2 > span { display: inline-block; font-size: 1rem; font-weight: 500; padding-left: .5rem; }

body .breadcrumb-wrap { padding: 0; }

body .breadcrumb-wrap ul { padding: 1em 1.5rem; }

body .content-wrap { padding: 3rem 0; }

body .content-wrap .inner { padding: 0 1.5rem; }

body .content-wrap .inner .inner { padding: 0; }

body .content-wrap .inner.inner-l { width: 100%; max-width: 100%; margin: 0 auto; }

body .content-wrap .inner.inner-m { width: 100%; max-width: 100%; margin: 0 auto; }

body .content-wrap .inner.inner-s { width: 100%; max-width: 100%; margin: 0 auto; }

body .content-wrap .inner.contact_backpart { padding: 6rem 1.5rem; margin-bottom: 10%; }

body .content-wrap .inner.service_backpart { padding-bottom: 0; margin-bottom: 0; }

body .content-wrap.bg_design_img { position: relative; overflow: visible; padding-bottom: 25%; }

body .content-wrap.bg_design_img .design_img_item { position: absolute; bottom: -2%; left: 50%; transform: translateX(-50%); width: 100%; z-index: 2; }

body .content-wrap.bg_design_img .design_img_item img { display: block; width: 100%; margin: 0 auto; }

body .content-wrap.sec_design_img { position: relative; overflow: visible; }

body .content-wrap.sec_design_img .design_img_company { position: absolute; bottom: -12%; left: 50%; transform: translateX(-50%); width: 100%; z-index: 2; }

body .content-wrap.sec_design_img .design_img_company img { display: block; width: 100%; margin: 0 auto; }

body .content-wrap.sec_design_img .design_img_service { position: absolute; bottom: -40%; left: 50%; transform: translateX(-50%); width: 90%; z-index: 2; }

body .content-wrap.sec_design_img .design_img_service img { display: block; width: 100%; margin: 0 auto; }

body .content-wrap.sec_design_img .design_img_recruit { position: absolute; top: 0; left: 50%; transform: translate(-50%, -30%); width: 100%; z-index: 2; }

body .content-wrap.sec_design_img .design_img_recruit img { display: block; width: 100%; margin: 0 auto; }

body .content-wrap.bg_service { position: relative; overflow: hidden; padding-bottom: 30%; z-index: 1; }

body .content-wrap.bg_service::after { content: ''; display: block; position: absolute; top: 0; left: 0; background-image: url(../img/bg_service.svg); background-position: center; background-repeat: no-repeat; background-size: 100%; height: 100%; width: 92%; }

body .content-wrap.bg_service::before { content: ""; position: absolute; top: 0; right: 0; width: 8%; height: 100%; background: white; }

body .content-wrap.bg_service .text-img { display: none; position: absolute; z-index: 2; overflow: visible; top: -10%; left: -10%; }

body .content-wrap.bg_service .text-img img { display: block; width: 100%; height: 100%; }

body .content-wrap.bg_company { position: relative; }

body .content-wrap.bg_company::before { content: ""; position: absolute; top: 0; left: 0; width: 8%; height: 100%; background: #F9F9F7; }

body .content-wrap.bg_recruit { position: relative; padding-bottom: 10%; }

body .content-wrap.bg_recruit::before { content: ""; position: absolute; top: 0; right: 0; width: 8%; height: 100%; background: #F9F9F7; }

body .content-wrap h1.section-title, body .content-wrap h2.section-title, body .content-wrap h3.section-title, body .content-wrap h4.section-title, body .content-wrap h5.section-title, body .content-wrap h6.section-title { margin-bottom: 3rem; }

body .content-wrap h1.section-title span.main, body .content-wrap h2.section-title span.main, body .content-wrap h3.section-title span.main, body .content-wrap h4.section-title span.main, body .content-wrap h5.section-title span.main, body .content-wrap h6.section-title span.main { font-size: 2.3rem; }

body .content-wrap h1.section-title span.sub, body .content-wrap h2.section-title span.sub, body .content-wrap h3.section-title span.sub, body .content-wrap h4.section-title span.sub, body .content-wrap h5.section-title span.sub, body .content-wrap h6.section-title span.sub { font-size: 1.1rem; }

body .content-wrap h1.section-title-02, body .content-wrap h2.section-title-02, body .content-wrap h3.section-title-02, body .content-wrap h4.section-title-02, body .content-wrap h5.section-title-02, body .content-wrap h6.section-title-02 { margin-bottom: 3rem; }

body .content-wrap h1.section-title-02 span, body .content-wrap h2.section-title-02 span, body .content-wrap h3.section-title-02 span, body .content-wrap h4.section-title-02 span, body .content-wrap h5.section-title-02 span, body .content-wrap h6.section-title-02 span { display: block; }

body .content-wrap h1.section-title-02 span.main, body .content-wrap h2.section-title-02 span.main, body .content-wrap h3.section-title-02 span.main, body .content-wrap h4.section-title-02 span.main, body .content-wrap h5.section-title-02 span.main, body .content-wrap h6.section-title-02 span.main { font-size: 2rem; font-weight: bold; color: #77BE85; }

body .content-wrap h1.content-title, body .content-wrap h2.content-title, body .content-wrap h3.content-title, body .content-wrap h4.content-title, body .content-wrap h5.content-title, body .content-wrap h6.content-title { margin-bottom: 2.5rem; }

body .content-wrap h1.content-title.boder-left-01, body .content-wrap h2.content-title.boder-left-01, body .content-wrap h3.content-title.boder-left-01, body .content-wrap h4.content-title.boder-left-01, body .content-wrap h5.content-title.boder-left-01, body .content-wrap h6.content-title.boder-left-01 { font-size: 1.3rem; }

body .content-wrap h1.section-ttl-img::before, body .content-wrap h2.section-ttl-img::before, body .content-wrap h3.section-ttl-img::before, body .content-wrap h4.section-ttl-img::before, body .content-wrap h5.section-ttl-img::before, body .content-wrap h6.section-ttl-img::before { width: 45px; height: 45px; }

body .content-wrap .header-ttl-ui { display: block; margin-bottom: 3rem; }

body .content-wrap .header-ttl-ui .section-title { margin-bottom: 2rem; }

body .content-wrap .intro-ttl-img { margin-top: -25%; margin-bottom: 2rem; }

body .content-wrap .intro-ttl-img img { max-width: 80px; }

body .content-wrap .top-intro-wrap { padding: 5rem 0; }

body .content-wrap .top-intro-wrap .intro-text { text-align: center; }

body .content-wrap .top-intro-wrap .intro-text h4 { font-weight: bold; font-size: 1.8rem; padding-bottom: 3rem; line-height: 1.8; }

body .content-wrap .top-intro-wrap .intro-text p { font-size: 0.9rem; padding-bottom: 2rem; }

body .content-wrap .top-service-intro { width: 95%; text-align: center; }

body .content-wrap .top-service-intro .main-ttl { background: white; padding: 1rem; width: 90%; margin: 2rem auto; font-size: 1.8rem; }

body .content-wrap .top-service-intro img { display: block; margin-top: -10%; margin-left: -5%; width: 100px; }

body .content-wrap .top-service-intro h4 { font-size: 2rem; padding-bottom: 2rem; }

body .content-wrap .top-service-intro p { font-weight: 500; }

body .content-wrap .top-service-thumb { position: relative; z-index: 99; margin-top: -20%; }

body .content-wrap .top-service-thumb img { display: block; width: 100%; }

body .content-wrap .top-service-thumb .design-icon { display: flex; align-items: flex-end; justify-content: space-between; margin-top: -20%; }

body .content-wrap .top-service-thumb .design-icon img.left { width: 120px; margin-left: -10%; }

body .content-wrap .top-service-thumb .design-icon img.right { width: 100px; margin-right: -10%; }

body .content-wrap .top-service-text { display: flex; justify-content: space-between; }

body .content-wrap .top-service-text .text { width: 45%; }

body .content-wrap .top-service-text .text .sub { padding-bottom: .3rem; }

body .content-wrap .top-service-text .text .main { font-weight: bold; font-size: 1.3rem; border-top: 1px solid; border-bottom: 1px solid; line-height: 2; }

body .content-wrap .top-service-text .text .main span { font-size: .9rem; font-weight: normal; }

body .content-wrap .news-list-wrap li a { padding-right: 2.5rem; }

body .content-wrap .news-list-wrap li a .category { padding: .5rem 1rem; }

body .content-wrap .news-list-wrap li a .date { font-weight: 500; font-size: .9rem; }

body .content-wrap .news-list-wrap li a .title { width: 100%; padding-top: 1rem; padding-right: 0; }

body .content-wrap .article-detail .ttl h2 { font-size: 1.3rem; }

body .content-wrap .ac_point { display: block; margin-top: 1rem; }

body .content-wrap .ac_point .naikan { width: 100%; aspect-ratio: 4/3; }

body .content-wrap .ac_point .naikan iframe { width: 100%; height: 100%; }

body .content-wrap .ac_point .gaikan { width: 100%; margin-top: 1rem; margin-left: 0; }

body .content-wrap#s-map .s-map_ttl { width: 50%; }

body .content-wrap#s-map .s_04 .accordion_one { margin-bottom: 1.5rem; }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header { font-size: 1.6rem; padding: 1rem 1.5rem; }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header .i_box { display: flex; justify-content: center; align-items: center; position: absolute; top: 50%; right: 1.5rem; width: 40px; height: 40px; margin-top: -20px; box-sizing: border-box; -webkit-transform: rotate(45deg); transform: rotate(45deg); transform-origin: center center; transition-duration: 0.2s; }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header.stay .i_box { -webkit-transform: rotate(0deg); transform: rotate(0deg); }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header .i_box .one_i { display: block; width: 18px; height: 18px; -webkit-transform: rotate(45deg); transform: rotate(45deg); transform-origin: center center; transition-duration: 0.2s; position: relative; }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header.stay .i_box .one_i { -webkit-transform: rotate(0deg); transform: rotate(0deg); }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header.stay.open .i_box .one_i { -webkit-transform: rotate(45deg); transform: rotate(45deg); }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header.open .i_box { -webkit-transform: rotate(-360deg); transform: rotate(-360deg); }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header.stay.open .i_box { -webkit-transform: rotate(315eg); transform: rotate(315deg); }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header .i_box .one_i:before, body .content-wrap#s-map .s_04 .accordion_one .accordion_header .i_box .one_i:after { display: flex; content: ''; background-color: #fff; border-radius: 10px; width: 18px; height: 4px; position: absolute; top: 7px; left: 0; -webkit-transform: rotate(0deg); transform: rotate(0deg); transform-origin: center center; }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header .i_box .one_i:before { width: 4px; height: 18px; top: 0; left: 7px; }

body .content-wrap#s-map .s_04 .accordion_one .accordion_inner { display: none; padding: 2rem 1rem; }

body .content-wrap#s-map .box_one .area { margin-bottom: 4rem; }

body .content-wrap#s-map .box_one .area .ac_in_ttl { font-size: 1.5rem; padding-bottom: .8rem; margin-bottom: 2rem; }

body .content-wrap#s-map .box_one .area .con_box { margin-bottom: 3.5rem; }

body .content-wrap#s-map .box_one .area .con_box .con_ttl { font-size: 1.2rem; margin-bottom: 1rem; padding-left: 1rem; }

body .content-wrap#s-map .box_one .area .con_box table { width: 100%; }

body .content-wrap#s-map .box_one .area .con_box table tr th { width: 25%; padding: .2rem; }

body .content-wrap#s-map .box_one .area .con_box table tr td { padding: .2rem; }

body .content-wrap .contact-wrap { padding: 3rem 1.5rem; background: white; margin-bottom: 10%; }

body .content-wrap .contact-wrap h3.content-title span { font-size: 1.6rem; line-height: 1.6; }

body .content-wrap .contact-wrap .contact-link a { display: flex; align-items: stretch; justify-content: center; line-height: 1; }

body .content-wrap .contact-wrap .contact-link a .sub { display: flex; justify-content: center; align-items: center; width: 30%; background: #FBDB53; font-size: 1rem; font-weight: bold; padding: 1.5rem; }

body .content-wrap .contact-wrap .contact-link a .main { display: flex; align-items: center; justify-content: center; width: 70%; background: #46ABE1; color: white; font-weight: bold; font-size: 1.2rem; padding: 1.5rem; }

body .content-wrap .contact-wrap .contact-link a .main img { display: block; width: 25px; margin-right: .5rem; }

body .content-wrap .contact-wrap .tel { padding: 1.5rem 0; flex-wrap: wrap; }

body .content-wrap .contact-wrap .tel a { display: block; font-weight: bold; font-size: 2.5rem; transition: all .3s; margin: 0 1.5rem; width: 100%; text-align: center; }

body .content-wrap .contact-wrap .tel a span { font-size: 1.2rem; }

body .content-wrap .contact-wrap .contact-footer { border-top: 2px dashed #B5A5A4; border-bottom: 2px dashed #B5A5A4; padding: .5rem 0; }

body .content-wrap .service-wrap { margin-top: 4rem; display: block; }

body .content-wrap .service-wrap .item { width: 100%; margin-bottom: 3rem; text-align: center; }

body .content-wrap .service-wrap .item .ttl { font-size: 1.8rem; padding: 1rem 0; }

body .content-wrap .service-wrap .item .sub { font-size: 1.5rem; font-weight: bold; padding: 1.5rem 0; }

body .content-wrap .service-text-box { padding: 4rem 0; }

body .content-wrap .service-text-box h3 { font-size: 1.5rem; padding-bottom: 3rem; }

body .content-wrap .service-text-box h4 { font-size: 1.3rem; padding: 1.5rem 0; margin-bottom: 3rem; border: 1px solid white; }

body .content-wrap .data-wrap { display: flex; flex-wrap: wrap; }

body .content-wrap .data-wrap .item { width: calc((100% - 2rem) / 2); margin-right: 1rem; margin-bottom: 1rem; }

body .content-wrap .data-wrap .item:nth-child(2n) { margin-right: 0; }

body .content-wrap .data-wrap .item.bg-img { position: relative; background-position: center; background-repeat: no-repeat; background-size: 80%; }

body .content-wrap .data-wrap .item .ttl { border-left: 8px solid #411516; font-weight: bold; padding-left: .5rem; margin-bottom: .5rem; font-size: 1.3rem; line-height: 1; }

body .content-wrap .data-wrap .item .detail { font-size: 4rem; }

body .content-wrap .data-wrap .item .detail > span { font-size: 1.5rem; }

body .content-wrap .recruit-link-wrap.flex-link { display: block; margin-bottom: 3rem; }

body .content-wrap .recruit-link-wrap.flex-link a { width: 100%; display: flex; align-items: center; color: white; font-weight: bold; padding: 1.5rem 3rem; margin-bottom: 1.5rem; }

body .content-wrap .recruit-link-wrap.flex-link a .icon { width: 30%; }

body .content-wrap .recruit-link-wrap.flex-link a .icon img { display: block; width: 100%; height: 100%; }

body .content-wrap .recruit-link-wrap.flex-link a .ttl { width: 70%; padding-left: 1.5rem; font-size: 1.4rem; }

body .content-wrap .recruit-link-wrap.flex-link a:first-child { background: #F5A47C; }

body .content-wrap .recruit-link-wrap.flex-link a:last-child { background: #77BE85; }

body .content-wrap .recruit-link-wrap.recruit-link a { display: flex; align-items: center; justify-content: center; padding: 1.5rem; background: #5D3411; color: white; }

body .content-wrap .recruit-link-wrap.recruit-link a .icon img { display: block; width: 35px; height: 40px; }

body .content-wrap .recruit-link-wrap.recruit-link a .ttl { padding-left: 1.5rem; font-size: 1.4rem; font-weight: bold; }

body .content-wrap .company-profile li { padding: 1.5rem; }

body .content-wrap .box-1col.box-1col-01 { display: block; padding-bottom: 5rem; }

body .content-wrap .box-1col.box-1col-01 .thumb { width: 90%; margin-right: 0; }

body .content-wrap .box-1col.box-1col-01 .thumb img { display: block; width: 100%; object-fit: cover; aspect-ratio: 16/9; }

body .content-wrap .box-1col.box-1col-01 .text { width: 100%; padding-right: 3rem; padding-top: 2rem; }

body .content-wrap .box-1col.box-1col-01 .text .section-title span { font-size: 2.3rem; }

body .content-wrap .box-1col.box-1col-02 { display: block; }

body .content-wrap .box-1col.box-1col-02 .thumb { width: 90%; margin-right: 0; }

body .content-wrap .box-1col.box-1col-02 .thumb img { display: block; width: 100%; object-fit: cover; aspect-ratio: 592 / 520; height: 100%; max-height: 520px; }

body .content-wrap .box-1col.box-1col-02 .text { width: 100%; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; padding: 2rem 0 0 4rem; }

body .content-wrap .box-1col.box-1col-02 .text h3.section-title { margin-bottom: 3rem; }

body .content-wrap .box-1col.box-1col-02 .text > p { font-size: .9rem; }

body .content-wrap .box-1col.box-1col-02.reverse { flex-direction: row; }

body .content-wrap .box-1col.box-1col-02.reverse .thumb { margin-right: 0; margin-left: -40%; }

body .content-wrap .box-1col.box-1col-02.reverse .text { padding-right: 0; padding-left: 3rem; }

body .content-wrap .box-1col.box-1col-03 { display: block; }

body .content-wrap .box-1col.box-1col-03 .thumb { width: 90%; }

body .content-wrap .box-1col.box-1col-03 .thumb img { display: block; width: 100%; object-fit: cover; aspect-ratio: 1/1; }

body .content-wrap .box-1col.box-1col-03 .text { width: 100%; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; padding: 2rem 4rem 0 1rem; }

body .content-wrap .box-1col.box-1col-03 .text > p { font-size: 1rem; font-weight: 500; }

body .content-wrap .box-1col.box-1col-03.reverse { flex-direction: row; }

body .content-wrap .box-1col.box-1col-03.reverse .thumb { margin-right: 0; margin-left: -40%; }

body .content-wrap .box-1col.box-1col-03.reverse .text { padding-right: 0; padding-left: 3rem; }

body .content-wrap .box-1col.box-1col-04 { display: block; }

body .content-wrap .box-1col.box-1col-04 .thumb { width: 100%; }

body .content-wrap .box-1col.box-1col-04 .thumb img { aspect-ratio: 16/10; }

body .content-wrap .box-1col.box-1col-04 .text { width: 100%; padding: 1.5rem; }

body .content-wrap .box-1col.box-1col-04.reverse { flex-direction: row-reverse; }

body .content-wrap .box-1col.box-1col-05 { display: block; margin-bottom: 4rem; }

body .content-wrap .box-1col.box-1col-05 .thumb { width: 100%; }

body .content-wrap .box-1col.box-1col-05 .thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }

body .content-wrap .box-1col.box-1col-05 .text { width: 100%; padding-left: 0; padding: 1.5rem 0; }

body .content-wrap .box-1col.box-1col-05 .text .name { font-weight: bold; font-size: 1.3rem; padding-bottom: 2rem; }

body .content-wrap .box-1col.box-1col-05.reverse .text { padding-left: 0; padding-right: 0; }

body .content-wrap .box.box-2 .item { display: block; }

body .content-wrap .box.box-2 .item.reverse { flex-direction: row-reverse; }

body .content-wrap .box.box-2 .item.reverse .text { padding-right: 0; padding-left: 0; }

body .content-wrap .box.box-2 .item > * { width: 100%; }

body .content-wrap .box .thumb img { display: block; width: 100%; margin: 0 auto; aspect-ratio: 16/10; object-fit: cover; }

body .content-wrap .box .store-map { aspect-ratio: 16/10; }

body .content-wrap .box .store-map iframe { width: 100%; height: 100%; }

body .content-wrap .box .text { padding: 1.5rem 0; }

body .content-wrap .box .text p { font-size: 1rem; }

body .content-wrap .box .text .main { font-weight: bold; font-size: 1.2rem; margin-bottom: 1rem; }

body .content-wrap .box .text .address > p, body .content-wrap .box .text .address a { font-size: .9rem; }

body .content-wrap .box .text .store-banner a { display: block; }

body .content-wrap .box .text .store-banner a img { margin: 0 auto; }

body .content-wrap .box-2col.box-2col-01 { display: block; }

body .content-wrap .box-2col.box-2col-01 .item { width: 100%; margin-right: 0; margin-bottom: 1.5rem; }

body .content-wrap .box-3col.box-3col-01 ul.list li { width: 100%; margin-right: 0; margin-bottom: 5%; border-right: none; margin-right: 0; padding-right: 0; }

body .content-wrap .box-4col.box-4col-01 ul.list { display: flex; flex-wrap: wrap; }

body .content-wrap .box-4col.box-4col-01 ul.list li { width: calc((100% - 2rem) / 2); margin-right: 2rem; margin-bottom: 2rem; }

body .content-wrap .box-4col.box-4col-01 ul.list li:nth-child(2n) { margin-right: 0; }

body .content-wrap .box-4col.box-4col-01 ul.list li a { display: block; transition: all .3s; }

body .content-wrap .box-4col.box-4col-01 ul.list li .thumb img { display: block; width: 100%; aspect-ratio: 1/1; object-fit: cover; }

body .content-wrap .box-4col.box-4col-02 ul.list { display: flex; flex-wrap: wrap; }

body .content-wrap .box-4col.box-4col-02 ul.list li { width: calc((100% - 2rem) / 2); margin-right: 2rem; margin-bottom: 2rem; }

body .content-wrap .box-4col.box-4col-02 ul.list li:nth-child(2n) { margin-right: 0; }

body .content-wrap .box-4col.box-4col-02 ul.list li .thumb img { display: block; width: 100%; aspect-ratio: 1/1; object-fit: cover; border-radius: 15px; }

body .content-wrap .box-4col.box-4col-02 ul.list li .text { padding: 1rem 0; }

body .content-wrap .box-4col.box-4col-02 ul.list li .text .name { font-size: 1.1rem; font-weight: bold; padding-bottom: 1rem; }

body .content-wrap .box-4col.box-4col-02 ul.list li .text .faq { font-weight: 500; font-size: .9rem; }

body .content-wrap .box-4col.box-4col-02 ul.list li .text .faq span { display: block; font-weight: normal; }

body .content-wrap .link-btn { width: 100%; }

body .content-wrap .table-01-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }

body .content-wrap .table-01-wrap .table-01 { min-width: 500px; }

body .content-wrap .table tr th { width: 28%; padding: 1.5rem; }

body .content-wrap .table tr td { padding: 1.5rem; }

body .content-wrap form { width: 100%; max-width: 100%; margin: 0 auto; }

body .content-wrap form .row { border-bottom: 1px solid #eef3f1; }

body .content-wrap form .row:first-child { border-top: 1px solid #eef3f1; }

body .content-wrap form .row .col-12 { display: block; flex-wrap: wrap; padding: 1rem 0; }

body .content-wrap form .row .col-12 label { width: 100%; font-size: 16px; }

body .content-wrap form .row .col-12 label.reqire::after { content: "*"; color: red; font-size: 1.2rem; }

body .content-wrap form .row .col-12 select, body .content-wrap form .row .col-12 input, body .content-wrap form .row .col-12 textarea { width: 100%; font-size: 16px; }

body .content-wrap form .link-btn a, body .content-wrap form .link-btn input[type=submit] { width: 80%; }

body .content-wrap .map { aspect-ratio: 1/1; }

body .content-wrap .map iframe { width: 100%; height: 100%; max-height: 100%; }

body footer.footer { position: relative; border-top: 4px solid #5D3411; }

body footer.footer .footer-catch { background-image: url(../img/bg_footer.jpg); background-position: center; background-repeat: no-repeat; background-size: cover; padding: 10% 0 40%; }

body footer.footer .footer-catch img { display: block; width: 100%; max-width: 280px; margin: 0 auto; }

body footer.footer .inner { background: #5D3411; padding-top: 10%; }

body footer.footer .inner .flex-wrap { position: absolute; bottom: 12%; left: 50%; transform: translateX(-50%); width: 100%; max-width: 80%; margin: 0 auto; display: block; background: white; padding: 2rem; }

body footer.footer .inner .flex-wrap .info { width: 100%; }

body footer.footer .inner .flex-wrap .info .logo img { display: block; padding-bottom: 1rem; width: 100%; max-width: 200px; margin: 0 auto; }

body footer.footer .inner .flex-wrap .tail { width: 100%; }

body footer.footer .inner .flex-wrap .tail nav .menu-footer-container { display: flex; width: 100%; justify-content: flex-end; }

body footer.footer .inner .flex-wrap .tail nav .menu-footer-container .list-wrap { width: calc(100% / 3); }

body footer.footer .inner .flex-wrap .tail nav .menu-footer-container .list-wrap:first-child { margin-left: 0; }

body footer.footer .inner .flex-wrap .tail nav .menu-footer-container .list-wrap .menu .menu-item a { display: block; font-weight: bold; padding-bottom: 1rem; transition: all .3s; }

body footer.footer .inner .flex-wrap .tail nav .menu-footer-container .list-wrap .menu .menu-item a:hover { opacity: .7; }

body footer.footer .inner .copyright { padding: 1.5rem; }

body #page-top { display: none; position: fixed; top: auto; left: auto; bottom: 1.5rem; right: 1.5rem; transition: opacity 0.5s ease-in-out; z-index: 2; }

body #page-top a { width: 75px; height: 75px; }

body #page-top a::before { content: url(../img/aroow_top.svg); font-size: .7rem; }

body #page-top.UpMove { animation: UpAnime 0.5s forwards; }

@keyframes UpAnime { from { opacity: 0;
				transform: translateY(100px); }
		to { opacity: 1;
				transform: translateY(0); } }

body #page-top.DownMove { animation: DownAnime 0.5s forwards; }

@keyframes DownAnime { from { opacity: 1;
				transform: translateY(0); }
		to { opacity: 1;
				transform: translateY(100px); } }

body #logo_wrapper { width: 100%; margin: 0 auto; }

body #logo_wrapper svg { width: 65%; }

body #sb_instagram { margin-top: 2.5rem; margin-bottom: 1.5rem; }

body .coming { width: 80%; margin: 0 auto; }
