﻿*,
*::before,
*::after {
   box-sizing: border-box;
   background-repeat: no-repeat
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
ul,
dl,
dd {
   margin: 0
}

ul[role=list],
ol[role=list] {
   list-style: none
}

html:focus-within {
   scroll-behavior: smooth
}

body {
   min-height: 100vh;
   text-rendering: optimizeSpeed;
   line-height: 1.5
}

a:not([class]) {
   text-decoration-skip-ink: auto
}

img,
picture {
   max-width: 100%;
   display: block
}

input,
button,
textarea,
select {
   font: inherit
}

@media(prefers-reduced-motion: reduce) {
   html:focus-within {
      scroll-behavior: auto
   }

   *,
   *::before,
   *::after {
      animation-duration: .01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: .01ms !important;
      scroll-behavior: auto !important
   }
}

ul {
   padding: 0
}

button {
   background-color: rgba(0, 0, 0, 0);
   border: none;
   cursor: pointer;
   outline: none;
   padding: 0;
   appearance: none
}

a {
   transition: all .4s ease-in-out
}

body {
   color: #000;
   font-size: 16px;
   font-weight: 400;
   font-family: "Noto Sans JP", sans-serif;
   counter-reset: number 0;
   position: relative
}

body *:not(br) {
   line-height: 1.8
}

br {
   line-height: 1.2
}

ul {
   list-style: none
}

main {
   display: block
}

a {
   text-decoration: none;
   font-weight: 400;
   font-family: "Noto Sans JP", sans-serif;
}

img {
   width: 100%;
   vertical-align: middle
}

hr {
   height: 0;
   margin: 0;
   padding: 0;
   border: 0
}

b {
   font-weight: inherit
}

h1,
h2,
h3,
h4,
h5,
h6 {
   font-weight: 400
}

.tabsp {
   display: none !important
}

@media screen and (max-width: 900px) {
   .tabsp {
      display: block !important
   }
}

@media screen and (max-width: 900px) {
   .tabpc {
      display: none !important
   }
}

.sp {
   display: none !important
}

@media screen and (max-width: 601px) {
   .sp {
      display: block !important
   }
}

@media screen and (max-width: 601px) {
   .pc {
      display: none !important
   }
}

.nosc {
   height: 100vh;
   overflow: hidden !important
}

.heading {
   width: 100%;
   margin: 0 auto
}

.heading h2 {
   font-family: "din";
   font-size: 14px;
   margin-bottom: 1.5rem;
   text-align: center
}

.heading h3 {
   font-weight: 700;
   font-size: 3rem;
   margin-bottom: 3rem;
   text-align: center
}

@media screen and (max-width: 900px) {
   .heading {
      width: 90%
   }

   .heading h2 {
      font-family: "din";
      padding-top: 0rem;
      font-size: 1.2rem;
      margin-bottom: .3rem
   }

   .heading h3 {
      font-weight: 700;
      font-size: 2.2rem;
      width: 85%;
      margin: 0 auto 1.8rem
   }
}

.concept_company .heading h2 {
   text-align: start
}

.concept_company .heading h3 {
   text-align: start
}

@media screen and (max-width: 900px) {
   .concept_company .heading h2 {
      text-align: center
   }

   .concept_company .heading h3 {
      text-align: center
   }
}

.contact .contact_img {
   background-color: #43965e;
   padding: 0;
   margin-bottom: 50px
}

.contact .contact_img figure {
   width: 92%;
   margin: 0 auto
}

.contact .contact_end {
   margin: 0 auto;
   padding-bottom: 12rem
}

.contact .contact_end figure {
   margin-bottom: 5rem
}

@media screen and (max-width: 900px) {
   .contact .contact_end {
      width: 92%
   }
}

@media screen and (max-width: 601px) {
   .contact .contact_end {
      padding-bottom: 6rem
   }
}

.contact .contact_end h4 {
   font-size: 1.6rem
}

@media screen and (max-width: 601px) {
   .contact .contact_end h4 {
      padding-right: 2rem
   }
}

.contact .contact_end>p {
   text-align: center;
   margin-bottom: 5rem
}

.contact .contact_end form>p {
   font-size: 1.4rem;
   max-width: 72rem;
   margin: 0 auto 3rem
}

.contact .contact_end form>p a {
   font-size: 1.4rem;
   color: #604c3f;
   border-bottom: solid 1px #604c3f
}

.contact .contact_end form ul.confirm {
   max-width: 72rem;
   width: 100%;
   margin: 0 auto
}

.contact .contact_end form ul.confirm li {
   display: flex;
   justify-content: center;
   align-items: center;
   margin-bottom: 5rem
}

.contact .contact_end form ul.confirm li:last-child {
   margin-bottom: 0rem
}

.contact .contact_end form ul.item {
   max-width: 72rem;
   width: 100%;
   margin: 0 auto 5rem
}

.contact .contact_end form ul.item li.item_in {
   display: flex;
   justify-content: space-between;
   margin-bottom: 2.5rem
}

.contact .contact_end form ul.item li.item_in ul {
   width: 35%;
   display: flex;
   justify-content: space-between
}

.contact .contact_end form ul.item li.item_in ul li {
   margin-bottom: 0
}

.contact .contact_end form ul.item li.item_in p {
   font-size: 1.3rem;
   width: 65%
}

.contact .contact_end form ul.item li.item_in p.w100 span {
   display: flex;
   flex-direction: column;
   width: 100%
}

.contact .contact_end form ul.item li.item_in p.w100 span input {
   display: flex;
   width: 100%;
   padding: 4px
}

.contact .contact_end form ul.item li.item_in p.w100 span textarea {
   display: flex;
   width: 100%;
   padding: 4px
}

.contact .contact_end form ul.item li.item_in p.w150 span {
   display: flex;
   width: 100%;
   flex-direction: column;
   max-width: 150px
}

.contact .contact_end form ul.item li.item_in p.w150 span input {
   display: flex;
   width: 100%;
   padding: 4px
}

.contact .contact_end form ul.item li.item_in p .old {
   display: flex;
   align-items: center;
   flex-direction: row !important;
   gap: 1rem
}

@media screen and (max-width: 601px) {
   .contact .contact_end form ul.item li.item_in {
      flex-direction: column;
      margin-bottom: 2.5rem
   }

   .contact .contact_end form ul.item li.item_in ul {
      width: 100%;
      justify-content: flex-start;
      margin-bottom: 1.5rem
   }

   .contact .contact_end form ul.item li.item_in p {
      width: 100%
   }
}

.contact .contact_end .required {
   font-size: 1.4rem !important;
   width: 5.3rem !important;
   background-color: #604c3f;
   padding: .3rem 1rem;
   margin-right: .8rem;
   color: #fff;
   display: flex;
   justify-content: center
}

.contact .contact_end ul li p label {
   display: flex;
   align-items: center
}

.contact .contact_end ul li p label span {
   white-space: nowrap
}

.contact .contact_end ul li p input {
   padding: .4rem .8rem;
   width: 18px
}

.contact .contact_end ul li p textarea {
   padding: .4rem .8rem;
   width: 100%
}

.contact .contact_end ul li.number p input {
   width: 40%
}

@media screen and (max-width: 601px) {
   .contact .contact_end ul li.number p input {
      width: 60%
   }
}

.contact .contact_end input.confirm_f {
   position: relative;
   padding: 1.5rem 7rem;
   font-size: 1.6rem;
   background-color: #fff;
   border: solid 1px #5a5a5a;
   color: #5a5a5a;
   border-radius: 1rem;
   width: 100%;
   -webkit-transition: all .3s ease;
   -moz-transition: all .3s ease;
   -o-transition: all .3s ease;
   transition: all .3s ease
}

.contact .contact_end input.confirm_f:hover {
   color: #fff;
   background-color: #604c3f;
   border-color: #604c3f
}

@media screen and (max-width: 601px) {
   .contact .contact_end input.confirm_f:hover {
      color: #5a5a5a;
      background-color: #fff;
      border-color: #5a5a5a
   }
}

.contact .contact_end .input-show {
   font-size: 1.4rem;
   max-width: 72rem;
   margin: 0 auto 3rem
}

.contact .contact_end .input-show p {
   font-size: 1.4rem
}

.contact .contact_end .input-show p a {
   font-size: 1.4rem;
   color: #604c3f;
   border-bottom: solid 1px #604c3f
}

.contact .contact_end .mw_wp_form_complete p {
   text-align: center
}

.contact .contact_end .mw_wp_form_confirm .input-show {
   display: none
}

.contact .contact_end .mw_wp_form_input .input-show2 {
   display: none
}

.contact .contact_end .complete {
   max-width: 72rem;
   width: 100%;
   margin: 0 auto
}

.contact .contact_end .complete .complete_in {
   width: 100%;
   margin-bottom: 60px
}

.contact .contact_end .complete .complete_in p {
   text-align: center
}

input[type=submit],
input[type=button] {
   border-radius: 0;
   -webkit-box-sizing: content-box;
   -webkit-appearance: button;
   appearance: button;
   border: none;
   box-sizing: border-box;
   cursor: pointer
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
   display: none
}

input[type=submit]::focus,
input[type=button]::focus {
   outline-offset: -2px
}

.main {
   overflow-x: hidden
}

/*# sourceMappingURL=map/style.css.map */
