@charset "UTF-8";
/******************************* Preface ***************************************/
a:hover { color: #85ac4d; }

/********************************* body ***************************************/
html { scroll-behavior: smooth; }

body { /******************************** header **************************************/ /********************************  Main Content ******************************/ /***********************************  footer ********************************/ /*========= ページトップのためのCSS ===============*/ /*リンクの形状*/ /*リンクを右下に固定*/ /*　上に上がる動き　*/ /*　下に下がる動き　*/ /* スクロールダウンの位置 */ /* 線のアニメーション部分 */ /* 線のアニメーション */ /*==================================================
anime
==================================================*/ /* fadeUp */ /* スクロールをしたら出現する要素にはじめに透過0を指定　*/ }

body header { position: relative; }

body header.header.top { height: 92vh; }

body header.header.scrolled .inner { background-color: rgba(255, 255, 255, 0.8); transition: all linear .2s; }

body header.header .inner { position: fixed; top: 0; left: 0; width: 100%; padding: 0 2rem; background: white; z-index: 99; }

body header.header .inner .inr_wrap { max-width: 1120px; margin: 0 auto; display: flex; justify-content: center; align-items: center; }

body header.header .inner .logo { margin-right: auto; }

body header.header .inner .logo a { display: block; }

body header.header .inner .logo a img { height: 1.5rem; width: auto; }

body header.header .inner .menu-wrapper nav.gnav { flex: none; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu { display: flex; align-items: center; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item { position: relative; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item a { display: block; font-weight: 500; font-size: 1rem; padding: .5rem 1.7rem; color: black; text-align: center; line-height: 1.4; transition: all .3s; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item a > span { display: block; color: #85ac4d; font-size: .75rem; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item a:hover { opacity: .7; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button { position: relative; margin-bottom: -1em; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button a { position: relative; display: block; color: white; padding: 1em 2em; z-index: 1; background-image: url("../img/leaf_main.svg"); background-size: contain; background-repeat: no-repeat; background-position: center; width: 200px; height: 100px; display: flex; flex-direction: column; align-items: center; justify-content: center; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button a > span { display: block; color: #f4da77; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button a img { display: block; width: 20px; padding-bottom: .5rem; }

body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button a:hover { background-image: url("../img/leaf_hover.svg"); opacity: 1; }

body header.header .mainvi { height: 100%; width: 100%; position: relative; overflow-x: hidden; }

body header.header .mainvi .slider { height: 100%; }

body header.header .mainvi .slider div { height: 100%; background-repeat: no-repeat; background-position: center; background-size: cover; }

body header.header .mainvi .copy { position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); height: auto; width: 100%; text-shadow: 0 0 20px rgba(0, 0, 0, 0.6); }

body header.header .mainvi .copy h1 { width: 100%; text-align: center; font-size: 4vw; font-weight: bold; line-height: 1.4; color: white; }

body header.header.back-head .mainvi { position: relative; height: 450px; }

body header.header.back-head .mainvi > div { height: 100%; background-repeat: no-repeat; background-position: center; background-size: cover; }

body header.header.back-head .header-title-wrap { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: flex; flex-direction: column; justify-content: space-between; padding: 2.5rem; width: 100%; }

body header.header.back-head .header-title-wrap h1 { font-size: 2rem; font-weight: 500; color: black; text-align: center; line-height: 1; z-index: 1; }

body header.header.back-head .header-title-wrap h1 > span { display: block; font-size: 1.5rem; font-weight: 500; letter-spacing: normal; padding-top: .5rem; color: #85ac4d; text-align: center; }

body header.header.back-head .header-title-wrap .catch { color: white; font-size: 3rem; font-weight: bold; text-align: center; text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.8); }

@media screen and (max-width: 1040px) { body header.header .inner { flex-wrap: wrap; width: 100%; min-width: 100%; }
		body header.header .inner .logo { flex-wrap: wrap; }
		body header.header .inner .logo a img { height: 1rem; }
		body header.header .inner .menu-wrapper nav.gnav { flex: none; }
		body header.header .inner .menu-wrapper nav.gnav .menu-container .menu { display: flex; align-items: center; }
		body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item { position: relative; }
		body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item a { display: block; font-weight: 500; font-size: 1rem; padding: .5rem 1.5rem; color: black; text-align: center; line-height: 1.4; transition: all .3s; }
		body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item a > span { display: block; color: #85ac4d; font-size: .8rem; }
		body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button { position: relative; margin-bottom: 0; }
		body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button a { position: relative; display: block; color: white; padding: 1em 2em; z-index: 1; background-image: url("../img/leaf_main.svg"); background-size: contain; background-repeat: no-repeat; background-position: center; width: 150px; height: 80px; display: flex; flex-direction: column; align-items: center; justify-content: center; }
		body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button a > span { display: block; color: #f4da77; }
		body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button a img { display: block; width: 20px; padding-bottom: .5rem; }
		body header.header .inner .menu-wrapper nav.gnav .menu-container .menu > .menu-item.button a:hover { background-image: url("../img/leaf_hover.svg"); opacity: 1; }
		body header.header .mainvi .copy h1 { width: 100%; }
		body header.header .mainvi .copy h1 span { font-size: 7vw; } }

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

body .content-wrap .inner.inner-l { width: 100%; max-width: 1120px; 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.bg-leaves { position: relative; z-index: 0; }

body .content-wrap .inner.contents-wide-dead { margin-top: -150px; }

@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.contents-wide-dead { margin-top: -12%; } }

@media screen and (min-width: 678px) and (max-width: 1040px) { body .content-wrap .inner.contents-wide-dead { margin-top: -15%; } }

body .content-wrap.spc-pb { padding-bottom: 15%; }

body .content-wrap.spc-pb02 { padding-bottom: 200px; }

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: 2rem; font-weight: 500; padding-bottom: .5rem; }

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

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: #85ac4d; 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.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.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.4rem; font-weight: bold; border-left: 6px solid #85ac4d; padding-left: .7rem; }

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 .left-img-wrap { overflow-x: hidden; position: absolute; bottom: -20%; left: -15%; z-index: 1; }

body .content-wrap .left-img-wrap img { display: block; width: 100%; max-width: 150px; }

body .content-wrap .right-img-wrap { overflow-x: hidden; position: absolute; bottom: -24%; right: -12%; z-index: 1; }

body .content-wrap .right-img-wrap img { display: block; width: 100%; max-width: 170px; }

body .content-wrap .cricle { position: absolute; left: 50%; transform: translateX(-50%); z-index: 0; width: 35%; bottom: -50%; }

body .content-wrap .cricle.cricle02 { width: 360px; bottom: -240px; }

body .content-wrap .cricle img { display: block; width: 100%; }

@media screen and (min-width: 678px) and (max-width: 1040px) { body .content-wrap .cricle { width: 35%; bottom: -33%; }
		body .content-wrap .cricle.cricle02 { width: 30%; bottom: -33%; } }

@media screen and (min-width: 1300px) { body .content-wrap .cricle { width: 360px; bottom: -240px; }
		body .content-wrap .cricle.cricle02 { width: 360px; bottom: -240px; } }

body .content-wrap .company-list li { display: flex; background: white; padding: 1rem 2rem; margin-bottom: 1rem; border-radius: 10px; }

body .content-wrap .company-list li .ttl { width: 15%; font-weight: 500; color: #85ac4d; font-size: 1rem; }

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

body .content-wrap .company-list li .detail a { text-decoration: underline; color: #72853d; }

body .content-wrap .text-content-wrap h3 { font-weight: 500; font-size: 1.5rem; }

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

body .content-wrap .flow-wrap ul.area.table-area { padding: 4rem; margin-bottom: 10%; }

body .content-wrap .flow-wrap ul.area.table-area li.ttl { margin-bottom: 2em; }

body .content-wrap .flow-wrap ul.area.table-area li.ttl h4 { text-align: center; }

body .content-wrap .flow-wrap ul.area.table-area li.ttl h4 > span { color: #85ac4d; font-size: 1.8rem; font-weight: 500; border-bottom: 2px solid #85ac4d; }

body .content-wrap .flow-wrap ul.area.table-area li.table-list { display: flex; align-items: flex-start; padding: 1.5rem; border-bottom: 3px dotted #cccccc; }

body .content-wrap .flow-wrap ul.area.table-area li.table-list p { font-weight: 500; }

body .content-wrap .flow-wrap ul.area.table-area li.table-list .main { position: relative; font-weight: 500; width: 20%; color: #85ac4d; padding-left: 2em; }

body .content-wrap .flow-wrap ul.area.table-area li.table-list .main::before { content: ''; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 1.5rem; height: 1.5rem; background-image: url("../img/icon_leaf.svg"); background-repeat: no-repeat; background-size: contain; }

body .content-wrap .tab-wrapper ul.tab { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; }

body .content-wrap .tab-wrapper ul.tab li { position: relative; width: calc((100% - 6rem) / 4); margin-right: 2rem; margin-bottom: 2rem; display: block; border-radius: 15px; }

body .content-wrap .tab-wrapper ul.tab li:nth-child(3n) { margin-right: 0; }

body .content-wrap .tab-wrapper ul.tab li a { display: block; padding: 1rem 0; text-align: center; font-size: 1.2rem; font-weight: 500; color: white; background: #afcb49; border-radius: 15px; transition: all .3s; }

body .content-wrap .tab-wrapper ul.tab li a:hover { background: #85ac4d; }

body .content-wrap .tab-wrapper .tab li.active a { background: #85ac4d; }

body .content-wrap .tab-wrapper .area { display: none; opacity: 0; }

body .content-wrap .tab-wrapper .area.is-active { display: block; animation: fadeIn 0.5s forwards; }

@keyframes fadeIn { to { opacity: 1; } }

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

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

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% - 30px); }

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

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

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

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

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

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

body .content-wrap .box-2col.box-2col-01 .item .thumb { position: relative; }

body .content-wrap .box-2col.box-2col-01 .item .thumb img { display: block; width: 100%; object-fit: cover; object-position: center; aspect-ratio: 16 / 11; overflow: hidden; }

body .content-wrap .box-2col.box-2col-01 .item .thumb .title { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; color: white; z-index: 2; padding: 2rem; width: 80%; background-image: url("../img/leaf_op80.svg"); background-repeat: no-repeat; background-size: contain; background-position: center; aspect-ratio: 1.6 / 1; display: flex; flex-direction: column; align-items: center; justify-content: center; padding-right: 3rem; }

body .content-wrap .box-2col.box-2col-01 .item .thumb .title .sub-ttl { font-size: 1rem; font-weight: 500; }

body .content-wrap .box-2col.box-2col-01 .item .thumb .title .num { font-size: 3rem; font-weight: bold; line-height: 1; margin-bottom: .5rem; }

body .content-wrap .box-2col.box-2col-01 .item .thumb .title .main-ttl { font-size: 1.6rem; font-weight: 500; line-height: 1.5; }

body .content-wrap .box-2col.box-2col-01 .item .text { padding: 1rem 2rem; line-height: 1.6; }

body .content-wrap .link-btn { width: 350px; }

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, body .content-wrap .link-btn.main-color input[type=submit] { display: block; background-color: #de912f; color: #fff; }

body .content-wrap .link-btn.main-color a:hover, body .content-wrap .link-btn.main-color input[type=submit]:hover { background-color: #f4da77; }

body .content-wrap .link-btn.reverse-color a { background-color: #fff; border: 1px solid #85ac4d; color: #85ac4d; }

body .content-wrap .link-btn.reverse-color a:hover { background-color: #85ac4d; 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, body .content-wrap .link-btn.link-btn-01 input[type=submit] { position: relative; text-align: center; padding: 1rem; font-size: 1.3rem; font-weight: 500; border-radius: 10px; }

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

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

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

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

body .content-wrap form .row { margin-right: 0 !important; margin-left: 0 !important; }

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: 20%; font-size: 1rem; font-weight: bold; color: #85ac4d; }

body .content-wrap form .row .col-12 label.reqire::after, body .content-wrap form .row .col-6 label.reqire::after { content: "※"; color: #de912f; font-size: 1rem; }

body .content-wrap form .row .col-12 .radio-wrap, body .content-wrap form .row .col-6 .radio-wrap { display: flex; flex-wrap: wrap; width: 70%; }

body .content-wrap form .row .col-12 .radio-wrap label, body .content-wrap form .row .col-6 .radio-wrap label { display: flex; align-items: center; width: 100%; padding-bottom: .5rem; }

body .content-wrap form .row .col-12 .radio-wrap input[type="radio"], body .content-wrap form .row .col-6 .radio-wrap input[type="radio"] { position: relative; background: white; padding: 0; margin-right: .5rem; width: 16px; height: 16px; border: 1px solid #ccc; border-radius: 50%; vertical-align: -2px; -webkit-appearance: none; -moz-appearance: none; appearance: none; }

body .content-wrap form .row .col-12 .radio-wrap input[type="radio"]:checked:before, body .content-wrap form .row .col-6 .radio-wrap input[type="radio"]:checked:before { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 12px; height: 12px; border-radius: 50%; background: #000; content: ''; }

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: 80%; background-color: white; border: 1px solid white; padding: .9rem 1rem; border-radius: 10px; }

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 #85ac4d; border-color: transparent !important; box-shadow: none !important; }

body .content-wrap form .row .col-add { width: 70%; display: flex; flex-wrap: wrap; }

body .content-wrap form .row .col-add > div { width: 40%; margin-right: 1.5rem; }

body .content-wrap form .row .col-add input { width: 100%; }

body .content-wrap form .row .col-add #btnAutoAddress { border-radius: 10px; padding: 1rem; }

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 #85ac4d; }

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: #85ac4d; 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 .scroll-wrap { height: 300px; overflow: auto; border: 1px solid #D6D6D6; padding: 1.5rem; background: white; }

body .content-wrap .scroll-wrap h5 { padding-bottom: 1rem; margin-bottom: 0; font-size: 1rem; font-weight: 500; }

body .content-wrap .scroll-wrap p { padding-bottom: 1rem; line-height: 1.8; }

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

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

body .ancor { overflow: visible; }

body .ancor a { display: block; padding-top: 10rem; margin-top: -10rem; }

body footer.footer { position: relative; }

body footer.footer .footer-obi-wrap { position: relative; width: 100%; height: 100%; z-index: 55; }

body footer.footer .footer-obi-wrap .footer-obi-header { background-image: url(../img/footer_obi.png); background-position: center bottom; background-repeat: repeat-x; background-size: cover; width: 100%; height: 300px; margin-top: -5%; }

body footer.footer .inner { width: 100%; margin: 0 auto; padding: 7rem 0 5rem; margin-top: -5%; background: #a6c149; }

@media screen and (min-width: 678px) and (max-width: 1150px) { body footer.footer .inner.inner { padding: 4rem 40px; } }

body footer.footer .inner h3 { font-weight: 500; font-size: 2rem; }

body footer.footer .inner .contact-wrap { position: relative; width: 100%; max-width: 1120px; margin: 0 auto; padding: 2rem 2.5rem; margin: 3rem auto; background: white; border-radius: 10px; }

body footer.footer .inner .contact-wrap .btn-wrap { display: flex; justify-content: space-between; padding: 2rem 0; }

body footer.footer .inner .contact-wrap .btn-wrap a { width: calc(100% / 2 - 1rem); display: flex; justify-content: center; align-items: center; text-align: center; color: white; border-radius: 10px; padding: .5em 0; font-size: 1.7rem; font-weight: 500; line-height: 1; transition: .3s; }

body footer.footer .inner .contact-wrap .btn-wrap a:hover { opacity: .6; }

body footer.footer .inner .contact-wrap .btn-wrap a img { display: block; width: 100%; max-width: 35px; margin-right: .6rem; }

body footer.footer .inner .contact-wrap .btn-wrap a.tel { background: #72853d; font-size: 2rem; letter-spacing: 0.1em; }

body footer.footer .inner .contact-wrap .btn-wrap a.contact { background: #85ac4d; }

body footer.footer .inner .contact-wrap .footer-left-img { overflow: hidden; }

body footer.footer .inner .contact-wrap .footer-left-img img { position: absolute; bottom: -20%; left: -11%; display: block; width: 150px; }

body footer.footer .inner .contact-wrap .footer-right-img { overflow: hidden; }

body footer.footer .inner .contact-wrap .footer-right-img img { display: block; position: absolute; top: -20%; right: -5%; width: 200px; }

body footer.footer .copyright { background: #72853d; padding: 1.5rem 50px; color: white; }

body footer.footer .copyright p { display: block; font-size: .9rem; text-align: center; }

body #page-top { display: none; /* 初期状態では非表示 */ position: fixed; bottom: 50px; right: 50px; /* ここにボタンのスタイルを追加 */ transition: opacity 0.5s ease-in-out; /* フェードイン/フェードアウトのエフェクト */ }

body #page-top a { display: flex; flex-direction: column; justify-content: center; align-items: center; background-color: #85ac4d; border: 1px solid #EBEBEB; border-radius: 100rem; width: 120px; height: 120px; color: #fff; text-align: center; text-transform: uppercase; text-decoration: none; font-weight: 400; font-size: 12px; line-height: 16px; letter-spacing: 0.1em; transition: all 0.3s; }

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

body #page-top a:hover { background: #777; }

body #page-top { position: fixed; right: 40px; bottom: 60px; z-index: 2; opacity: 0; transform: translateY(100px); }

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 .scroll { opacity: 0; position: absolute; right: 15%; top: 55%; writing-mode: vertical-rl; font-weight: bold; color: #fff; font-size: .75rem; text-shadow: 0 0 20px rgba(0, 0, 0, 0.6); transform: translateY(-50%); }

body .scroll::before { animation: scroll 2s infinite; background-color: #fff; top: -115px; content: ""; height: 100px; left: 0; margin: auto; position: absolute; right: 0; width: 1px; }

@keyframes scroll { 0% { transform: scale(1, 0);
				transform-origin: 0 0; }
		50% { transform: scale(1, 1);
				transform-origin: 0 0; }
		51% { transform: scale(1, 1);
				transform-origin: 0 100%; }
		100% { transform: scale(1, 0);
				transform-origin: 0 100%; } }

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(100px); }
		to { opacity: 1;
				transform: translateY(0); } }

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

body #animated-text span { opacity: 0; transition: opacity 0.3s ease; }

body #animated-text { visibility: hidden; }

body .mw_wp_form .error { width: 100%; margin-top: 1rem; text-align: right; }

body .content-wrap-legal { padding-bottom: 12rem; }

body .content-wrap-legal .section-title { margin-bottom: 2rem !important; }

body .content-wrap-legal .legal_box { max-height: 340px; overflow-y: scroll; border-radius: 10px; padding: 2rem; }

body .content-wrap-legal .legal_box .caution { margin-bottom: 2rem; }

body .content-wrap-legal .legal_box .legal_item { margin-bottom: 2rem; }

body .content-wrap-legal .legal_box .legal_item h4 { font-weight: bold; border-bottom: solid 1px #eee; padding-bottom: .5rem; margin-bottom: .5rem; }

body .content-wrap-legal .legal_box .legal_item ul { margin-top: .5rem; }

body .content-wrap-legal .legal_box .legal_item ul li { padding-left: 1rem; text-indent: -1rem; font-size: .9rem; }
