@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 ***************************************/
html { scroll-behavior: smooth; }

body { /******************************** header **************************************/ /********************************  Main Content ******************************/ /***********************************  footer ********************************/ /*=============== ページトップのためのCSS ===============*/ /* リンクの形状 */ /*=============== アニメーション ===============*/ /* 初期状態ですべてのパスを線に限定 */ /* fadeUp */ /* スクロールをしたら出現する要素にはじめに透過0を指定　*/ }

body.lock-scroll { overflow: hidden; }

body header { position: relative; overflow: hidden; }

body header.scrolled .items { background-color: rgba(93, 51, 17, 0.8); transition: all linear .2s; }

body header .items { display: flex; flex-wrap: nowrap; flex-direction: row; justify-content: space-between; align-items: center; position: fixed; top: 0; left: 0; width: 100%; padding: .8rem 1.5rem; transition: all linear .2s; z-index: 999; }

body header .items .header_logo { width: 260px; }

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

body header .items .menu_wrapper .sub-nav a { display: flex; flex-direction: column; justify-content: center; align-items: center; background: white; border-radius: 100rem; width: 50px; height: 50px; margin-right: 1rem; transition: all .3s; }

body header .items .menu_wrapper .sub-nav a:hover { opacity: .7; }

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

body header .items .menu_wrapper .nav { position: fixed; top: 0; right: -100%; bottom: 0; width: 100%; padding: 2rem; 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%; display: flex; justify-content: center; align-items: center; flex-direction: row-reverse; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu { display: flex; flex-wrap: wrap; justify-content: space-between; max-width: 700px; width: 100%; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu li { width: 48%; border-bottom: solid 1px white; position: relative; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu li::after { content: ''; display: inline-block; width: 24px; height: 24px; background: url("../img/nav_arrow.svg") no-repeat center center; background-size: contain; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu li a { display: block; color: #fff; font-weight: bold; padding: 1.5rem 1.5rem; transition: .3s; }

body header .items .menu_wrapper .nav .menu-header_menu-container .menu li a:hover { opacity: .5; }

body header .items .menu_wrapper .nav .menu-header_menu-container .nav-foot { margin-right: 3rem; margin-bottom: 0 !important; margin-bottom: 1rem; }

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

body header .items .menu_wrapper .nav .menu-header_menu-container .nav-foot .com_name { font-weight: bold; margin-bottom: 1rem; }

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

body header .items .menu_wrapper .nav .menu-header_menu-container .nav-foot .add a { display: inline-block; margin-top: 1rem; text-decoration: underline; }

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

body header .items .menu_wrapper .toggle_btn span { display: block; position: absolute; left: 0; width: 47px; height: 5px; 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: 18px; 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; background: #5D3411; opacity: .9; }

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

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(19px) rotate(-315deg); transform: translateY(19px) 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(-16px) rotate(315deg); transform: translateY(-16px) 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: 1110px; position: relative; }

body header .vi_wrapper .ttl { position: absolute; transform: translate(0, -50%); }

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: 55%; padding-left: 2.5rem; transform: translateY(-50%); }

body header .vi_wrapper.vi_wrapper_top .ttl h2 { font-size: 4vw; font-weight: bold; color: white; line-height: 1.5; text-shadow: 0 0 20px rgba(0, 0, 0, 0.6); }

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

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

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

body header .vi_wrapper.vi_wrapper_backpart .ttl { display: inline-block; top: auto; bottom: 0; left: 0; transform: translate(0, 0); margin: auto; background: #5D3411; padding: 2rem 60px; }

body header .vi_wrapper.vi_wrapper_backpart .ttl h2 { font-size: 4rem; 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 60px; }

body .breadcrumb-wrap ul { width: 100%; margin: 0 auto; display: flex; flex-wrap: wrap; align-items: center; padding: 1em 0; }

body .breadcrumb-wrap ul li { font-size: .9rem; }

body .breadcrumb-wrap ul li::after { padding: 0 1em; content: url(../img/arrow_black.svg); vertical-align: text-top; }

body .breadcrumb-wrap ul li:last-child::after { content: ''; }

body .breadcrumb-wrap ul li:first-child { color: #5D3411; }

body .breadcrumb-wrap ul li a { text-decoration: none; }

@media screen and (min-width: 678px) and (max-width: 1140px) { body .breadcrumb-wrap { padding: 0 40px; } }

body main { overflow: hidden; }

body .content-wrap { padding: 5rem 0; position: relative; }

body .content-wrap .inner { position: relative; z-index: 1; }

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

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

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

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

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

@media screen and (min-width: 678px) and (max-width: 1150px) { body .content-wrap .inner.inner-s { padding: 0 40px; }
		body .content-wrap .inner.inner-m { padding: 0 40px; }
		body .content-wrap .inner.inner-l { padding: 0 40px; }
		body .content-wrap .inner.contact_backpart { padding: 6rem 40px; }
		body .content-wrap .inner.service_backpart { padding: 0 40px; } }

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: 75%; 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: 75%; 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_company_02 { position: absolute; bottom: -32%; left: 50%; transform: translateX(-50%); width: 80%; z-index: 2; }

body .content-wrap.sec_design_img .design_img_company_02 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: 80%; 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: 75%; 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: 20%; 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 { 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: 4rem; }

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

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: 3rem; font-weight: bold; }

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: .9rem; font-weight: 500; line-height: 1.4; }

body .content-wrap h1.section-title.centerline, body .content-wrap h2.section-title.centerline, body .content-wrap h3.section-title.centerline, body .content-wrap h4.section-title.centerline, body .content-wrap h5.section-title.centerline, body .content-wrap h6.section-title.centerline { display: flex; align-items: baseline; line-height: 1; }

body .content-wrap h1.section-title.centerline span.main, body .content-wrap h2.section-title.centerline span.main, body .content-wrap h3.section-title.centerline span.main, body .content-wrap h4.section-title.centerline span.main, body .content-wrap h5.section-title.centerline span.main, body .content-wrap h6.section-title.centerline span.main { margin-right: 2rem; padding-right: 2rem; }

body .content-wrap h1.section-title.centerline span.sub, body .content-wrap h2.section-title.centerline span.sub, body .content-wrap h3.section-title.centerline span.sub, body .content-wrap h4.section-title.centerline span.sub, body .content-wrap h5.section-title.centerline span.sub, body .content-wrap h6.section-title.centerline 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: 4rem; }

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: 2.2rem; font-weight: bold; color: #77BE85; padding-bottom: 2rem; }

body .content-wrap h1.section-title-02 span.sub, body .content-wrap h2.section-title-02 span.sub, body .content-wrap h3.section-title-02 span.sub, body .content-wrap h4.section-title-02 span.sub, body .content-wrap h5.section-title-02 span.sub, body .content-wrap h6.section-title-02 span.sub { line-height: 1.8; }

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

body .content-wrap h1.border-bottom-01, body .content-wrap h2.border-bottom-01, body .content-wrap h3.border-bottom-01, body .content-wrap h4.border-bottom-01, body .content-wrap h5.border-bottom-01, body .content-wrap h6.border-bottom-01 { position: relative; border-bottom: 3px solid #5D3411; padding: 1rem 0; width: fit-content; }

body .content-wrap h1.border-bottom-01:before, body .content-wrap h2.border-bottom-01:before, body .content-wrap h3.border-bottom-01:before, body .content-wrap h4.border-bottom-01:before, body .content-wrap h5.border-bottom-01:before, body .content-wrap h6.border-bottom-01:before { position: absolute; bottom: -3px; left: 0; width: 2rem; height: 3px; content: ''; }

body .content-wrap h1.border-bottom-01.border-green:before, body .content-wrap h2.border-bottom-01.border-green:before, body .content-wrap h3.border-bottom-01.border-green:before, body .content-wrap h4.border-bottom-01.border-green:before, body .content-wrap h5.border-bottom-01.border-green:before, body .content-wrap h6.border-bottom-01.border-green:before { background: #77BE85; }

body .content-wrap h1.border-bottom-01.border-pink:before, body .content-wrap h2.border-bottom-01.border-pink:before, body .content-wrap h3.border-bottom-01.border-pink:before, body .content-wrap h4.border-bottom-01.border-pink:before, body .content-wrap h5.border-bottom-01.border-pink:before, body .content-wrap h6.border-bottom-01.border-pink:before { background: #E2708A; }

body .content-wrap h1.border-bottom-01.border-blue:before, body .content-wrap h2.border-bottom-01.border-blue:before, body .content-wrap h3.border-bottom-01.border-blue:before, body .content-wrap h4.border-bottom-01.border-blue:before, body .content-wrap h5.border-bottom-01.border-blue:before, body .content-wrap h6.border-bottom-01.border-blue:before { background: #77B3E8; }

body .content-wrap h1.border-bottom-01.border-orange:before, body .content-wrap h2.border-bottom-01.border-orange:before, body .content-wrap h3.border-bottom-01.border-orange:before, body .content-wrap h4.border-bottom-01.border-orange:before, body .content-wrap h5.border-bottom-01.border-orange:before, body .content-wrap h6.border-bottom-01.border-orange:before { background: #F5A47C; }

body .content-wrap h1.border-bottom-01.border-yellow, body .content-wrap h2.border-bottom-01.border-yellow, body .content-wrap h3.border-bottom-01.border-yellow, body .content-wrap h4.border-bottom-01.border-yellow, body .content-wrap h5.border-bottom-01.border-yellow, body .content-wrap h6.border-bottom-01.border-yellow { border-bottom: 3px solid white; }

body .content-wrap h1.border-bottom-01.border-yellow:before, body .content-wrap h2.border-bottom-01.border-yellow:before, body .content-wrap h3.border-bottom-01.border-yellow:before, body .content-wrap h4.border-bottom-01.border-yellow:before, body .content-wrap h5.border-bottom-01.border-yellow:before, body .content-wrap h6.border-bottom-01.border-yellow:before { background: #EADC00; }

body .content-wrap h1.border-bottom-01.border-brown, body .content-wrap h2.border-bottom-01.border-brown, body .content-wrap h3.border-bottom-01.border-brown, body .content-wrap h4.border-bottom-01.border-brown, body .content-wrap h5.border-bottom-01.border-brown, body .content-wrap h6.border-bottom-01.border-brown { border-bottom: 3px solid white; }

body .content-wrap h1.border-bottom-01.border-brown:before, body .content-wrap h2.border-bottom-01.border-brown:before, body .content-wrap h3.border-bottom-01.border-brown:before, body .content-wrap h4.border-bottom-01.border-brown:before, body .content-wrap h5.border-bottom-01.border-brown:before, body .content-wrap h6.border-bottom-01.border-brown:before { background: #5D3411; }

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: 3rem; }

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

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

body .content-wrap h1.content-title span.sub, body .content-wrap h2.content-title span.sub, body .content-wrap h3.content-title span.sub, body .content-wrap h4.content-title span.sub, body .content-wrap h5.content-title span.sub, body .content-wrap h6.content-title span.sub { font-size: .9rem; font-weight: 500; line-height: 1.4; }

body .content-wrap h1.border-left-01, body .content-wrap h2.border-left-01, body .content-wrap h3.border-left-01, body .content-wrap h4.border-left-01, body .content-wrap h5.border-left-01, body .content-wrap h6.border-left-01 { border-left: 8px solid white; padding-left: .5rem; line-height: 1.3; }

body .content-wrap h1.border-left-01 span.main, body .content-wrap h2.border-left-01 span.main, body .content-wrap h3.border-left-01 span.main, body .content-wrap h4.border-left-01 span.main, body .content-wrap h5.border-left-01 span.main, body .content-wrap h6.border-left-01 span.main { font-size: 1.6rem; }

body .content-wrap h1.section-ttl-img, body .content-wrap h2.section-ttl-img, body .content-wrap h3.section-ttl-img, body .content-wrap h4.section-ttl-img, body .content-wrap h5.section-ttl-img, body .content-wrap h6.section-ttl-img { position: relative; padding-top: 5rem; }

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 { content: ''; display: block; position: absolute; top: -20px; left: 50%; transform: translateX(-50%); background-image: url(../img/top_intro_ttl.svg); background-repeat: no-repeat; background-size: contain; width: 55px; height: 55px; }

body .content-wrap h1.lead-text, body .content-wrap h2.lead-text, body .content-wrap h3.lead-text, body .content-wrap h4.lead-text, body .content-wrap h5.lead-text, body .content-wrap h6.lead-text { font-weight: bold; font-size: 1.8rem; line-height: 1.6; }

body .content-wrap .header-ttl-ui { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; margin-bottom: 3rem; }

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

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

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

body .content-wrap .top-intro-wrap .intro-ttl-img img { display: block; width: 100%; max-width: 100px; margin: 0 auto; }

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: 2rem; padding-bottom: 3rem; }

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

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

body .content-wrap .top-service-intro .main-ttl { background: white; padding: 1rem 0; width: 80%; margin: 2rem auto; border-radius: 99px; text-align: center; font-size: 2.8rem; font-weight: bold; }

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

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: 230px; margin-left: -10%; }

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

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

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

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 { border-bottom: 2px dashed #B5A5A4; }

body .content-wrap .news-list-wrap li a { position: relative; display: flex; flex-wrap: wrap; align-items: center; padding: 1rem 0; transition: all .3s; }

body .content-wrap .news-list-wrap li a:hover { text-decoration: none; color: black; opacity: .5; }

body .content-wrap .news-list-wrap li a .category { width: 19%; min-width: 10rem; display: inline-block; color: white; background: #46ABE1; border-radius: 2rem; font-size: .9rem; font-weight: 500; text-align: center; padding: .5rem 2rem; line-height: 1; }

body .content-wrap .news-list-wrap li a .date { width: 9%; font-weight: bold; font-size: .9rem; color: #AFAFAF; margin: 0 1rem; }

body .content-wrap .news-list-wrap li a .title { width: 60%; font-weight: 500; }

body .content-wrap .news-list-wrap.news-backpart li { border-bottom: 2px dashed #B5A5A4; }

body .content-wrap .news-list-wrap.news-backpart li:first-child { border-top: 2px dashed #B5A5A4; }

body .content-wrap .news-list-wrap.news-backpart li a { position: relative; padding: 1.5rem 0; padding-right: 3rem; }

body .content-wrap .news-list-wrap.news-backpart li a::after { content: ''; display: block; position: absolute; top: 50%; right: 2rem; transform: translateY(-50%); background-image: url(../img/arrow_brown.svg); background-repeat: no-repeat; background-size: contain; width: 9px; height: 14px; }

body .content-wrap .article-detail .ttl h2 { font-size: 1.8rem; font-weight: bold; line-height: 1.8; }

body .content-wrap .article-detail .ttl .date { font-family: "Roboto", sans-serif; border-bottom: 2px dashed #B5A5A4; padding-bottom: 1rem; margin-bottom: 2rem; }

body .content-wrap .article-detail .ttl .date > span { font-family: 'Noto Sans JP', sans-serif; display: inline-block; color: white; background: #46ABE1; border-radius: 2rem; font-size: .9rem; font-weight: 500; text-align: center; padding: .5rem 2rem; margin-right: 1rem; line-height: 1; }

body .content-wrap .article-detail .artcle img { display: block; width: 100%; padding: 2rem 0; }

body .content-wrap .article-detail .artcle a { text-decoration: underline; color: #77BE85; }

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

body .content-wrap .ac_point .naikan { width: 49%; aspect-ratio: 16/8; }

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

body .content-wrap .ac_point .gaikan { width: 49%; margin-left: 2%; }

body .content-wrap#s-map .s-map_ttl { width: 32%; margin-bottom: 2rem; }

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

body .content-wrap#s-map .s_04 .accordion_one .accordion_header { background-color: #77BE85; color: #fff; font-size: 1.5rem; font-weight: bold; padding: .6rem 2rem; position: relative; z-index: +1; cursor: pointer; transition-duration: 0.2s; }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header:hover { opacity: .8; }

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_header.stay .i_box .one_i:before { content: none; }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header.open .i_box .one_i:before { content: none; }

body .content-wrap#s-map .s_04 .accordion_one .accordion_header.stay.open .i_box .one_i:before { content: ""; }

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

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

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

body .content-wrap#s-map .s_04 .accordion_one .accordion_inner.stay { display: block; }

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

body .content-wrap#s-map .box_one .area .ac_in_ttl { font-size: 1.5rem; font-weight: bold; border-bottom: 1px solid #B5A5A4; padding-bottom: .6rem; margin-bottom: 1.5rem; }

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

body .content-wrap#s-map .box_one .area .con_box .con_ttl { font-size: 1.2rem; font-weight: bold; margin-bottom: 1rem; border-left: 8px solid #77BE85; line-height: 1.2; 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: 13.5%; padding: .3rem; }

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

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

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

body .content-wrap .contact-wrap .contact-link a:hover { color: #411516; opacity: .7; }

body .content-wrap .contact-wrap .contact-link a .sub { display: flex; justify-content: center; align-items: center; width: 20%; 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: 60%; background: #46ABE1; color: white; font-weight: bold; font-size: 1.4rem; padding: 1.5rem; }

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

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

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

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: flex; justify-content: space-between; }

body .content-wrap .service-wrap .item { width: calc(100% / 2 - 3rem); text-align: center; }

body .content-wrap .service-wrap .item .ttl { border-top: 3px solid #411516; border-bottom: 3px solid #411516; font-size: 2rem; font-weight: bold; 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: 2rem; font-weight: bold; padding-bottom: 3rem; }

body .content-wrap .service-text-box h4 { font-size: 2.4rem; font-weight: bold; border-radius: 100rem; 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: 2rem; margin-bottom: 2rem; }

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.bg-img::after { content: ''; display: block; background: #F9F9F7; position: absolute; top: 0; left: 0; height: 100%; width: 100%; opacity: .7; z-index: -1; }

body .content-wrap .data-wrap .item.bg-01 { background-image: url(../img/data_bg_01.svg); }

body .content-wrap .data-wrap .item.bg-02 { background-image: url(../img/data_bg_02.svg); }

body .content-wrap .data-wrap .item.bg-03 { background-image: url(../img/data_bg_03.svg); }

body .content-wrap .data-wrap .item.bg-04 { background-image: url(../img/data_bg_04.svg); }

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 { text-align: center; font-size: 7rem; font-weight: bold; line-height: 1; }

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

body .content-wrap .recruit-link-wrap a { transition: all .3s; }

body .content-wrap .recruit-link-wrap a:hover { opacity: .7; }

body .content-wrap .recruit-link-wrap.flex-link { display: flex; align-items: center; justify-content: space-between; margin-bottom: 3rem; }

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

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: 98px; height: 110px; }

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: 44px; height: 55px; }

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 { display: flex; background: white; margin-bottom: 1rem; padding: 1.5rem 3rem; }

body .content-wrap .company-profile li .ttl { width: 20%; font-size: 1rem; font-weight: 500; }

body .content-wrap .company-profile li .detail { width: 80%; font-size: 1rem; }

body .content-wrap .box-1col.box-1col-01 { display: flex; flex-direction: row-reverse; justify-content: space-between; align-items: flex-end; padding-bottom: 5rem; }

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

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: 70%; padding-right: 3rem; }

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

body .content-wrap .box-1col.box-1col-02 { position: relative; display: flex; align-items: center; flex-direction: row-reverse; justify-content: space-between; }

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

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: 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 { position: relative; display: flex; align-items: center; flex-direction: row-reverse; justify-content: space-between; }

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

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: 60%; display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; padding: 0 4rem; }

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: flex; align-items: stretch; flex-wrap: wrap; }

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

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

body .content-wrap .box-1col.box-1col-04 .text { width: 50%; padding: 3rem; background: #77BE85; }

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

body .content-wrap .box-1col.box-1col-04 .text p small { font-weight: 500; }

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

body .content-wrap .box-1col.box-1col-05 { display: flex; flex-wrap: wrap; align-items: stretch; justify-content: space-between; margin-bottom: 4rem; }

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

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: 45%; padding-left: 2rem; }

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 { flex-direction: row-reverse; }

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

@media screen and (min-width: 678px) and (max-width: 1200px) { body .content-wrap .box-1col.box-1col-02 .text { margin-left: 3rem; } }

body .content-wrap .box-1col.thumb-1col img { display: block; width: 100%; margin: 0 auto; padding-bottom: 1rem; }

body .content-wrap .box-1col.thumb-1col h4 { font-size: 1.5rem; font-weight: bold; }

body .content-wrap .box.box-2 .item { display: flex; justify-content: space-between; align-items: center; }

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

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

body .content-wrap .box.box-2 .item > * { width: calc(50% - 20px); }

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

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

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

body .content-wrap .box-2col.box-2col-01 { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 2rem 0; }

body .content-wrap .box-2col.box-2col-01 .item { width: 48%; }

body .content-wrap .box-2col.box-2col-01 .item .thumb img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }

body .content-wrap .box-3col.box-3col-01 ul.list { display: flex; flex-wrap: wrap; align-items: stretch; border-top: 2px dashed #B5A5A4; border-bottom: 2px dashed #B5A5A4; padding-top: 2rem; }

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

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

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

body .content-wrap .box-3col.box-3col-01 ul.list li .thumb img { display: block; width: 100%; height: 100%; aspect-ratio: 16/11; border-radius: 10px; object-fit: cover; }

body .content-wrap .box-3col.box-3col-01 ul.list li .text { padding: 1em 0; }

body .content-wrap .box-3col.box-3col-01 ul.list li .text .date { font-weight: bold; font-size: .9rem; color: #AFAFAF; margin-bottom: 1rem; }

body .content-wrap .box-3col.box-3col-01 ul.list li .text .date span { display: inline-block; color: white; background: #46ABE1; border-radius: 2rem; font-size: .9rem; font-weight: 500; padding: .5rem 1rem; margin-right: 1rem; line-height: 1; }

body .content-wrap .box-3col.box-3col-01 ul.list li .text .title { font-size: 1rem; font-weight: bold; }

body .content-wrap .box-3col.blog-backpart ul.list { border: none; }

body .content-wrap .box-3col.blog-backpart ul.list li { border: none; }

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% - 6rem) / 4); margin-right: 2rem; margin-bottom: 2rem; }

body .content-wrap .box-4col.box-4col-01 ul.list li:nth-child(4n) { 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% - 6rem) / 4); margin-right: 2rem; margin-bottom: 2rem; }

body .content-wrap .box-4col.box-4col-02 ul.list li:nth-child(4n) { 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: 300px; }

body .content-wrap .link-btn.center { margin: 0 auto; }

body .content-wrap .link-btn.right { margin-left: auto; }

body .content-wrap .link-btn.main-color a { display: block; background-color: white; border: 2px solid #5D3411; color: #5D3411; }

body .content-wrap .link-btn.reverse-color a { background-color: #fff; border: 2px solid #77BE85; color: #77BE85; }

body .content-wrap .link-btn.reverse-color a:hover { background-color: #77BE85; color: #fff; }

body .content-wrap .link-btn.reverse-color a:hover::after { border-color: #fff; }

body .content-wrap .link-btn a { display: block; transition: .3s; }

body .content-wrap .link-btn.link-btn-01 a { position: relative; padding: 1rem 2rem; font-size: 1rem; font-weight: bold; }

body .content-wrap .link-btn.link-btn-01 a::after { content: ''; position: absolute; top: 50%; right: 20px; transform: rotate(45deg) translateY(-50%); width: 8px; height: 8px; border-width: 2px 2px 0 0; border-style: solid; color: #5D3411; }

body .content-wrap .link-btn.border-none a { border: none; }

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

body .content-wrap .table tr td { padding: 1.5rem 0; color: #411516; }

body .content-wrap .table.table-01 { width: 100%; border-collapse: collapse; font-size: 1rem; }

body .content-wrap .table.table-01 th { width: auto; padding: 0.75rem 1rem; font-weight: bold; border-bottom: 1px solid #411516; border-top: 1px solid #411516; text-align: center; }

body .content-wrap .table.table-01 thead tr { border-bottom: 1px solid #411516; }

body .content-wrap .table.table-01 tbody tr td { padding: 0.75rem 1rem; border: none; text-align: center; }

body .content-wrap .table.table-01 tbody tr:nth-child(odd) { background-color: #F9F9F7; }

body .content-wrap .table.table-02 th { width: 28%; padding: 1.5rem 0; border-top: 2px dashed #B5A5A4; }

body .content-wrap .table.table-02 td { padding: 1.5rem 0; border-top: 2px dashed #B5A5A4; font-weight: 500; }

body .content-wrap .table.table-02:last-child td, body .content-wrap .table.table-02:last-child th { border-bottom: 2px dashed #B5A5A4; }

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

body .content-wrap form .form-control { height: auto; }

body .content-wrap form .row { border-bottom: 2px dashed #B5A5A4; margin: 0; }

body .content-wrap form .row:first-child { border-top: 2px dashed #B5A5A4; }

body .content-wrap form .row .col-12, body .content-wrap form .row .col-6 { display: flex; flex-wrap: wrap; padding: 1.5rem 0; }

body .content-wrap form .row .col-12 label, body .content-wrap form .row .col-6 label { width: 30%; font-size: 1rem; }

body .content-wrap form .row .col-12 label.reqire::after, body .content-wrap form .row .col-6 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, body .content-wrap form .row .col-6 select, body .content-wrap form .row .col-6 input, body .content-wrap form .row .col-6 textarea { width: 70%; background-color: #EEEEEE; border: none; padding: 1em; border-radius: 0.25rem; }

body .content-wrap form .row .col-12 select:hover, body .content-wrap form .row .col-12 select:focus, body .content-wrap form .row .col-12 select:active, body .content-wrap form .row .col-12 input:hover, body .content-wrap form .row .col-12 input:focus, body .content-wrap form .row .col-12 input:active, body .content-wrap form .row .col-12 textarea:hover, body .content-wrap form .row .col-12 textarea:focus, body .content-wrap form .row .col-12 textarea:active, body .content-wrap form .row .col-6 select:hover, body .content-wrap form .row .col-6 select:focus, body .content-wrap form .row .col-6 select:active, body .content-wrap form .row .col-6 input:hover, body .content-wrap form .row .col-6 input:focus, body .content-wrap form .row .col-6 input:active, body .content-wrap form .row .col-6 textarea:hover, body .content-wrap form .row .col-6 textarea:focus, body .content-wrap form .row .col-6 textarea:active { outline: 2px solid #46ABE1; border-color: transparent !important; box-shadow: none !important; }

body .content-wrap form .checkbox-consent { text-align: center; }

body .content-wrap form .checkbox-consent .form-group .form-check { width: 100%; justify-content: center; }

body .content-wrap form .checkbox-consent .form-group .form-check input[type="checkbox"] { position: relative; width: 16px; height: 16px; line-height: 1; padding: 0; margin-right: 10px; display: inline-block; background: white; outline: 1px solid #77BE85; }

body .content-wrap form .checkbox-consent .form-group .form-check input[type="checkbox"]:checked:after { content: "✓"; font-weight: bold; }

body .content-wrap form .checkbox-consent .form-group .form-check label { width: auto; }

body .content-wrap form .checkbox-consent .form-group .form-check label > a { text-decoration: underline; }

body .content-wrap form .checkbox-consent .form-group .form-check span.error { margin-left: 1rem; }

body .content-wrap form .link-btn a, body .content-wrap form .link-btn input[type=submit] { display: block; background-color: #77BE85; color: white; position: relative; text-align: center; padding: 1rem; font-size: 1rem; width: 350px; margin: 0 auto; border-radius: 100rem; }

body .content-wrap form .link-btn a::after, body .content-wrap form .link-btn input[type=submit]::after { content: ''; position: absolute; top: 50%; right: 20px; transform: rotate(45deg) translateY(-50%); width: 8px; height: 8px; border-width: 2px 2px 0 0; border-style: solid; }

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

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

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: 8% 0 14%; }

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

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

body footer.footer .inner .flex-wrap { position: absolute; bottom: 10%; left: 50%; transform: translateX(-50%); width: 100%; max-width: 1110px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; background: white; padding: 3rem 4rem; }

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

body footer.footer .inner .flex-wrap .info .logo img { display: block; padding-bottom: 2rem; width: 100%; max-width: 355px; }

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

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 { position: absolute; top: -100px; left: 50%; transform: translate(-50%); }

body #page-top a { display: flex; flex-direction: column; justify-content: center; align-items: center; background-color: #5D3411; border-radius: 100rem; width: 120px; height: 120px; color: #fff; text-align: center; text-transform: uppercase; text-decoration: none; font-weight: bold; font-size: .9rem; transition: all 0.3s; }

body #page-top a::before { content: url(../img/aroow_top.svg); display: block; }

body #page-top a:hover { opacity: .7; }

body .modal-backdrop { z-index: 0; }

body .main_animetion { background: #F7F0E1; display: flex; justify-content: center; align-items: center; height: 100vh; position: relative; z-index: 9999; }

body #logo_wrapper { position: relative; width: 400px; margin: 0 auto; text-align: center; overflow: visible; }

body #logo_wrapper svg { width: 100%; }

body #catch_copy { display: flex; flex-direction: column; align-items: center; margin-top: 1rem; font-weight: bold; color: #462325; font-size: 2rem; }

body .line { display: flex; justify-content: center; flex-wrap: wrap; margin-bottom: 8px; }

body .letter { opacity: 0; transform: translateY(20px); display: inline-block; }

body #main_logo path { stroke: #000; /* 線 */ stroke-width: 2; fill-opacity: 0; /* 塗りを最初は非表示に */ }

body .fadeIn { animation-name: fadeInAnime; animation-duration: 2.5s; animation-fill-mode: forwards; opacity: 0; }

body .fadeUp { animation-name: fadeUpAnime; animation-duration: 0.8s; animation-fill-mode: forwards; opacity: 0; }

@keyframes fadeInAnime { from { opacity: 0; }
		to { opacity: 1; } }

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

body .fadeUpTrigger, body .fadeTrigger { opacity: 0; }

body .sb_instagram_header { display: none !important; }

body #sbi_load { display: none !important; }

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

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