@charset "UTF-8";
/*　====================== 基本設定 ======================　*/
*,
*::before,
*::after {
-webkit-box-sizing: inherit;
box-sizing: border-box;
}
html {
-webkit-box-sizing: border-box;
box-sizing: border-box;
scroll-behavior: smooth;
}
body{
margin:0;
padding: 0;
color: #111;
background-color: #fff;
}
.container{
  width: 80%;
  max-width: 1080px;
  margin: 0 auto;
}
ul,ol {
list-style: none;
padding: 0;
margin: 0;
}
img{
width:100%;
max-width:100%;
display: block;
}
/*　====================== フォント設定 ======================　*/
h1,h2,h3,h4,h5,h6{
font-weight: 500;
line-height: 1.2;
font-family: "Noto Sans JP", sans-serif;}
p,a,div,ul,ol,dl{
font-size: 16px;
font-weight: 400;
letter-spacing: 0.08em;
line-height: 1.5;
font-family: "Noto Sans JP", sans-serif;
color: #111;}
input,textarea{
font-size: 16px;
padding: 5px;}
/*　====================== レスポンシブ設定 ======================　*/
.pc-only {
display: block;
}
.sp-only {
display: none;
}
@media screen and (max-width:768px){
.pc-only {
display: none;
}
.sp-only {
display: block;
}
}
/*　====================== コンテンツ幅設定 ======================　*/
section{
padding-top: 100px;
padding-bottom: 100px;
}
.container{
margin: 0 auto;
width: 90%;
max-width: 1080px;
}
@media screen and (max-width:768px){
section{
padding-top: 80px;
}
}
/*　====================== flexデフォルト設定 ======================　*/
.flex {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
/*　====================== 共通設定 ======================　*/
h2.h2-title{
font-size: 40px;
font-weight: 700;
color: #38502F;
margin: 0 auto 50px;
text-align: center;
}
.page-link-button{
  display: block;
  margin: 50px auto 0;
  font-size: 25px;
  color:#fff;
  font-weight: 600;
  line-height: 1;
  padding: 20px 30px;
  background-color: #38502F;
  -webkit-box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.25);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  letter-spacing: 0.25em;
  transition: 0.5s;
}
.page-link-button:hover{
   transform: translateY(-3px);  
}
a.hakushin::after{
content: '';
width: 10px;
height: 10px;
display: inline-block;
background-image: url(../img/gaibu-link.webp);
background-size: contain;
vertical-align: middle;
margin-left: 5px;
}
a{
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
a:hover{
  opacity: 0.9;
}
@media screen and (max-width:768px){
h2.h2-title{
font-size: 30px;
margin: 0 auto 30px;
}
.page-link-button{
  font-size: 20px;
}
}
/*　====================== lorder ======================　*/
.loader {
position: fixed;
width: 100%;
height: 100%;
background-color:#38502F;
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
z-index: 555;
top: 0;
left: 0;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.loader p.txt{
width: 10%;
}
@media screen and (max-width:768px){  
.loader p.txt{
width: 20%;
}
}
/*　====================== lorder ======================　*/
/*　====================== header ======================　*/
header{
padding: 50px 10px;    
background-color: #38502F;
width: 30%;
top:0;
left: 0;
z-index: 90;
height: 100vh;
}
header h1 img{
width: 200px;
}
header h1 p{
  color:#fff;
  font-size:10px;
  text-align: center;
  margin-bottom: 5px;
}
header>div.flex{
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack:end;
      -ms-flex-pack:end;
          justify-content:end;
  gap: 30px;
}
header .nav.flex,header .nav.flex .nav1.flex,header .nav.flex .btn.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
gap:30px;
}
header a{
  color: #fff;
}
header .btn.flex{
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
header .nav.flex .btn.flex li a{
  transition: 0.5s;
}
header .nav.flex .btn.flex li a:hover{
  transform: translateY(-3px);
}
header .contact-btn a{
  background-color: #6D8324;
  padding: 15px;
  display: block;
}
header .contact-btn a p:first-child{
  font-size: 12px;
  padding: 2px 10px;
  border-radius: 15px;
  line-height: 1;
  background-color:#fff;
  text-align: center;
}
header .contact-btn a p:nth-child(2){
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  color:#fff;
  margin-top: 5px;
}
header .tel-btn a{
  background-color: #fff;
  padding: 15px;
  gap:5px;
}
header .tel-btn .img{
  width: 30px;
}
header .tel-btn a p:first-child{
  font-size: 25px;
  color: #38502F;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}
header .tel-btn a p:nth-child(2){
  font-size: 12px;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width:1080px){
header{
padding: 50px 10px;    
width: 30%;
}
header .contact-btn a p:nth-child(2){
  font-size: 18px;
}
}
@media screen and (max-width:768px){
header .tel-btn a {
    padding: 15px;
}}
/*　====================== header ======================　*/
/*　====================== hamburger ======================　*/
@media screen and (max-width:768px){
header{
  height: auto;
  width: 250px;
  padding: 5px 0;
  background-color: #38502f00;
  position: absolute;
}
header>.flex{
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center;
}
.hamburger {
background-color: #38502F;
border-radius: 5px;
position: fixed;
top: 20px;
right: 10px;
z-index: 100;
width: 48px;
height: 48px;
cursor: pointer;
}
.hamburger__line {
position: absolute;
left: 10px;
width: 26px;
height: 1px;
background-color: #fff;
-webkit-transition: all .4s;
-o-transition: all .4s;
transition: all .4s;
}
.hamburger__line:nth-of-type(1) {
top: 14px;
}
.hamburger__line:nth-of-type(2) {
top: 23px;
}
.hamburger__line:nth-of-type(3) {
top: 32px;
}
/* メニューオープン時 */
.hamburger.active .hamburger__line:nth-of-type(1) {
-webkit-transform: translateY(9px) rotate(-45deg);
    -ms-transform: translateY(9px) rotate(-45deg);
        transform: translateY(9px) rotate(-45deg);
}
.hamburger.active .hamburger__line:nth-of-type(2) {
opacity: 0;
}
.hamburger.active .hamburger__line:nth-of-type(3) {
-webkit-transform: translateY(-9px) rotate(45deg);
    -ms-transform: translateY(-9px) rotate(45deg);
        transform: translateY(-9px) rotate(45deg);
}
.nav {
position: fixed;
top: 0;
left: 0;
width: 350px;
height: 100vh;
background-color: #38502F;
-webkit-box-shadow: 2px 0 4px rgba(0,0,0,0.1);
        box-shadow: 2px 0 4px rgba(0,0,0,0.1);
-webkit-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
        transform: translateX(-100%);
-webkit-transition: -webkit-transform .4s;
transition: -webkit-transform .4s;
-o-transition: transform .4s;
transition: transform .4s;
transition: transform .4s, -webkit-transform .4s;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
-webkit-box-pack: center;
    -ms-flex-pack: center;
        justify-content: center; 
row-gap: 15px;
}
.nav.active {
-webkit-transform: translateX(0);
    -ms-transform: translateX(0);
        transform: translateX(0);
}
.nav__list {
margin: 0;
padding: 100px 0 0;
list-style: none;
}
.nav__item {
padding: 0 20px;
}
.nav__link {
display: block;
padding: 15px 0;
color: #333;
text-decoration: none;
border-bottom: 1px solid #eee;
}
header .right.flex .btn.flex a {
padding: 15px;
}
}
/*　====================== header ======================　*/
/*　====================== firstview ======================　*/
#firstview{
width: 70%;
height: 100vh;
overflow: hidden;
position: relative;
}
#firstview .slick-dots{
  position: absolute;
  bottom: 30px;
}
#firstview .slider1,#firstview .slick-list,
#firstview .slick-track{  
  height: 100%;
}
#firstview .slider1 li img{
  position: relative;
  height: 100%;  
  width: auto;
  max-width: fit-content;
}
#firstview .slider1 li img.sp-only{
  display: none;
}
#firstview .txt{
position: absolute;
height: 90%;
top: 5%;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
z-index: 10;
}
#firstview .text-wrap{
position: absolute;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
-webkit-transform: translate(-50%, -50%);
-ms-transform: translate(-50%, -50%);
}
#firstview .text-wrap p.text2,#firstview .text-wrap p.text3{
  background-color: #fff;
  line-height: 1;
  padding: 10px;
  font-family: "Noto Serif JP", serif;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
  font-size: 30px;
  font-weight: 700;
  margin-top: 15px;
}
@media screen and (max-width:768px){
#firstview {
    width: 100%;
    height: 85vh;
}
#firstview .slider1 li img.pc-only{
  display: none;
}
#firstview .slider1 li img.sp-only{
  display: block;
}
#firstview .text-wrap p.text2, #firstview .text-wrap p.text3 {
  font-size: 20px;
}
#firstview .text-wrap{
  width: 95%;
  margin: 0 auto;
}
#firstview .text-wrap p.text2, #firstview .text-wrap p.text3 {
    font-size: 18px;
    margin-top: 8px;
    padding: 8px;
}
#news-wrap ul li a.flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
}
/*　====================== firstview ======================　*/
/*　====================== news ======================　*/
#news-wrap{
-webkit-box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.25);
        box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.25);
z-index: 5;
position: relative;
}
#news-wrap ul li a.flex{
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap:15px;
  padding: 20px;
}
#news-wrap ul li a time{
  background-color: #38502F;
  color: #ffffff;
  font-size: 16px;
  line-height: 1;
  padding: 5px 10px;
  border-radius: 15px;
  font-family:"Inter", sans-serif;
}
@media screen and (max-width:768px){
#news-wrap ul li a.flex {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 5px;
    padding: 10px;
}
#news-wrap ul li a time{
  background-color: #38502F;
  color: #ffffff;
  font-size: 13px;
  line-height: 1;
  padding: 3px 10px;
  border-radius: 15px;
  font-family:"Inter", sans-serif;
}
}
/*　====================== news ======================　*/
/*　====================== section1 ======================　*/
#sec1{
background-image: url(../img/sec1-back-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
padding: 150px 0;
}
#sec1 h2.h2-title{
font-family: "Noto Serif JP", serif;
line-height: 1.5em;
font-weight: 900;
}
#sec1 .content-wrap p.message{
  text-align: center;
  line-height: 2em;
}
#sec1 .name-img{
  width: 30%;
  margin: 20px auto 0;
}
@media screen and (max-width:768px){
#sec1{
background-image: url(../img/sec1-back-sp.webp);
padding: 200px 0;
}
#sec1 .name-img{
  width: 70%;
  margin: 20px auto 0;
}
#sec1 .content-wrap p.message {
  text-align: left;
  line-height: 1.5em;
}
#sec1 h2.h2-title{
font-size: 20px;
}
}
/*　====================== section1 ======================　*/
/*　====================== cta ======================　*/
#cta{
background-image: url(../img/cta-back-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover;
padding: 50px 0;
}
#cta .btn.flex{
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 30px;
  transition: 0.5s;
}
#cta .btn.flex a:hover{
transform: translateY(-3px);
}
#cta .contact-btn a{
  background-color: #6D8324;
  padding: 15px 25px;
  display: block;
}
#cta .contact-btn a p:first-child{
  font-size: 16px;
  padding: 5px 10px;
  border-radius: 15px;
  line-height: 1;
  background-color:#fff;
  text-align: center;
}
#cta .contact-btn a p:nth-child(2){
  font-size: 35px;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  color:#fff;
  margin-top: 5px;
  letter-spacing: 0.01em;
}
#cta .tel-btn a{
  background-color: #fff;
  padding:15px;
  gap:5px;
}
#cta .tel-btn .img{
  width: 40px;
}
#cta .tel-btn a p:first-child{
  font-size: 39px;
  color: #38502F;
  font-family: "Inter", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}
#cta .tel-btn a p:nth-child(2){
  font-size: 16px;
  text-align: center;
}
#cta .container>p{
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #fff;
  line-height: 1;
  padding: 10px 20px;
  border-radius: 40px;
  margin: 0 auto 20px auto;
  font-size: 20px;
}
#cta .container>p span{
  font-weight: 900;
}
#cta .container>div.img{
  width: 50%;
  margin: 0 auto 20px auto;
}
@media screen and (max-width:768px){
#cta{
background-image: url(../img/cta-back-sp.webp);
}
#cta .container>p {
  padding: 10px;
  font-size: 16px;  
  letter-spacing: 0.04em;
}
#cta .container>div.img{
  width: 100%;
}
#cta .contact-btn a p:nth-child(2) {
  font-size: 32px;
}
#cta .btn.flex {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#cta .tel-btn a p:first-child {
    font-size: 35px;
}
#cta .btn.flex {
    gap: 15px;
}
#cta .tel-btn a{
  width: 100%;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
}
@media screen and (max-width:350px){
      #cta .tel-btn a p:first-child {
        font-size: 33px;
    }
}
/*　====================== cta ======================　*/
/*　====================== section2 ======================　*/
#sec2 .container p{
  text-align: center;
  margin-bottom: 50px;
}
#sec2 ul.servise-wrap li{
width: 20%;  
}  
#sec2 ul.servise-wrap li a{
position: relative;
display: block;
width: 100%;
}
#sec2 ul.servise-wrap li a .img{
  opacity: 0.5;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
#sec2 ul.servise-wrap li a .servise-text::after{
  content: '';
  width: 30px;
  height: 30px;
  display: inline-block;
  background-image: url(../img/right-button.webp);
  background-size: contain;
  position: absolute;
  right: -20px;
  top:70%;
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
#sec2 ul.servise-wrap li a:hover .servise-text::after{
right: -25px;
}
#sec2 ul.servise-wrap li a .servise-text{
  position: absolute;
  bottom:10px;
  left:0;
  width: 90%;
  padding: 10px;
  background-color: #ffffffb4;
}
#sec2 ul.servise-wrap li a .servise-text h3{
  color:#38502F;
  font-weight: 700;
  font-size: 20px;
}
#sec2 ul.servise-wrap li a:hover .img{
  opacity: 1;
}
@media screen and (max-width:1080px){
  #sec2 ul.servise-wrap{
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  }
  #sec2 ul.servise-wrap li{
  width: 33.33333%;
  }  
}
@media screen and (max-width:768px){
#sec2 .container p{
text-align: left;
margin-bottom: 30px;
}
#sec2 ul.servise-wrap li{
width: 100%;
height: 50vh;
}
#sec2 ul.servise-wrap li a {
    height: 100%;
    overflow: hidden;
}
#sec2 ul.servise-wrap li a .servise-text{
  width: 85%;
}
}
/*　====================== section2 ======================　*/
/*　====================== section3 ======================　*/
#sec3{
background-image: url(../img/sec3-back.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover; 
}
#sec3 .h2-title{
color:#fff;
text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.25);
}
#sec3 ul{
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
#sec3 ul li{
width: 30%;
background-color: #fff;
padding:30px 20px;
-webkit-box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.25);
        box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.25);
}
#sec3 ul li h3{
  font-size: 25px;
  color: #38502F;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  line-height: 1.3em;
  margin-bottom: 15px;
  position: relative;
  z-index: 2;
}
#sec3 ul li h3::before{
  position: absolute;
  content: '1';
  font-family: "Inter", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  font-size: 200px;
  color: #38502f42;
  left: 0;
  top:0;
  z-index: 1;
}
#sec3 ul li:nth-child(2) h3::before{
  content: '2';
}
#sec3 ul li:nth-child(3) h3::before{
  content: '3';
}
#sec3 ul li h3 span{
  font-weight: 900;
}
#sec3 ul li .img{
  width: 70%;
  margin: 0 auto 15px;
}
@media screen and (max-width:1080px){
#sec3 ul li h3 {
  font-size: 20px;
}
}
@media screen and (max-width:768px){
#sec3{
background-image: url(../img/sec3-back.webp);
}
#sec3 ul{
  row-gap: 30px;
}
#sec3 ul li{
width: 100%;
background-color: #fff;
padding:15px;
}
}
/*　====================== section3 ======================　*/
/*　====================== section4 ======================　*/
#sec4{
background-image: url(../img/banner-back-pc.webp);
background-repeat: no-repeat;
background-position: center top;
background-size: cover; 
}
#sec4 .container>p{
  text-align: center;
  margin-bottom: 50px;
}
#sec4 .slider2 .slick-slide{
  margin: 0 5px;
}
#sec4 .slider2 .slick-slide>a{
  display: block;
  overflow: hidden;
}
#sec4 .slider2 .slick-slide .wrap{
  position: relative;
  border-radius: 5px;
  overflow: hidden;
}
#sec4 .slider2 .slick-slide a .wrap .img{
position: relative;
border-radius: 5px;
overflow: hidden;
}
#sec4 .slick-slide .img::before{
position: absolute;
content:'';
width: 100%;
height: 100%;
background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, 0)), color-stop(95%, rgba(36, 36, 36, 0.6)));
background-image: -o-linear-gradient(top, rgba(255, 255, 255, 0), rgba(36, 36, 36, 0.6) 95%);
background-image: linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(36, 36, 36, 0.6) 95%);
z-index: 2;
}
#sec4 .slick-slide img{
    position: relative;
    height: 230px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    vertical-align: top;
    z-index: 1;
}
#sec4 .slick-slide .text{
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 5%;
  left: 0;
  top:0;
  z-index: 3;
}
#sec4 .slider2 .slick-slide .category{
  position: absolute;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 14px;
  color: #fff;
  line-height: 1;
  padding: 3px 8px;
  border-radius: 15px;
  background-color: #38502F;
  left: 3%;
  top:5%;
}
#sec4 .slider2 .slick-slide time{
  position: absolute;
  font-size: 14px;
  color: #fff;
  line-height: 1;
  left: 3%;
  bottom:5%;
}
#sec4 .slider2 h3{
  margin-top: 10px;
}
@media screen and (max-width:768px){
  #sec4 .container>p{
  text-align: left;
  margin-bottom: 30px;
}
}
/*　====================== section4 ======================　*/
/*　====================== section5 ======================　*/
#sec5{
background-color: #E3EDDF;
}
#sec5 ul{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap:30px;
}
#sec5 ul li{
border-radius: 10px;
padding: 30px 30px 30px 100px;
background-color: #fff;
-webkit-box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.25);
        box-shadow: 3px 3px 3px 0 rgba(0, 0, 0, 0.25);
}
#sec5 ul li h3{
font-size: 25px;
color:#38502F;
margin-bottom: 10px;
}
#sec5 ul li h3::before{
  content: '?';
  background-color: #fff;
  border:1px solid #38502F;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0;
  padding:3px 15px;
  border-radius: 30px;
  position: relative;
  left:-10px;
}
#sec5 ul li p::before{
  content: 'A';
  line-height: 1;
  letter-spacing: 0;
  font-weight: 300;
  background-color: #38502F;
  color:#fff;  
  padding:2px 10px;  
  border-radius: 30px;
  position: relative;
  left:-4px;
}
@media screen and (max-width:768px){
#sec5 ul li{
padding: 15px 15px 15px 25px;
}
#sec5 ul li h3{
  font-size: 20px;
line-height: 1.5;
}
#sec5 ul li h3::before {
  padding: 3px 13px;
}
#sec5 ul li h3::before{
  left:-5px;
}
#sec5 ul li p::before{
  left:-2px;
  padding: 2px 9px;
}
}
/*　====================== section5 ======================　*/
/*　====================== section6 ======================　*/
#sec6{
background-repeat: no-repeat;
background-position: center bottom;
background-size: cover; 
}
#sec6 .saiyou-banner{
  margin-bottom: 50px;
}
#sec6 form table{
width: 100%;
}
#sec6 form tr{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-bottom: 30px;
}
#sec6 form tr th{
font-weight: 700;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
height: -webkit-fit-content;
height: -moz-fit-content;
height: fit-content;
margin-top: 10px;
font-size: 20px;
position: relative;
}
#sec6 form tr th.hissu::after{
content: '※必須';
color:#740000;
position: absolute;
top:50%;
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%);
right: -40px;
letter-spacing: 0.1em;
font-size: 12px;
}
#sec6 form td{
width: 68%;
}
#sec6 form td input,#sec6 form td textarea{
width: 100%;
border: none;
font-size: 18px;
line-height: 1.3;
letter-spacing: 0.08em;
padding: 15px;
border-radius: 5px;
-webkit-appearance: none;
font-family: "Noto Sans JP", sans-serif;
background-color: #E3EDDF;
}
#sec6 form td textarea{
height: 150px;
}
#sec6 form .privacy h3{
text-align: center;
font-size: 20px;
margin-bottom: 15px;
font-weight: 900;
}
#sec6 form .privacy .flex.accept{
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
#sec6 .privacy-policy{
background-color:#eeeeee;
border-radius: 5px;
width: 100%;
height: 200px;
padding: 30px;
overflow-y: scroll;
margin-bottom: 15px;
-webkit-box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3);
box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3);
}
#sec6 form .privacy-policy tr{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
#sec6 form .privacy-policy tr th,
#sec6 form .privacy-policy tr td{
width: 100%;
text-align: left;
}
#sec6 form p.button{
margin-top: 30px;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
gap:15px;
}
input.button-design{
font-size: 20px;
padding: 10px 30px;
color:#111;
border: 1px solid #111;
background-color: #fff;
font-family: "Noto Sans JP", sans-serif;
font-weight: 700;
}
@media screen and (max-width:768px){
#sec6 .saiyou-banner{
  margin-bottom: 30px;
}
#sec6 #section1 .content-wrap.flex .menu-wrap {
width: 100%;
padding: 20px;
}
#sec6 form tr {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
gap:5px;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
margin-bottom: 30px;
}
#sec6 form tr td{
text-align: left;
width: 100%;
font-size: 15px;
}
#sec6 form tr th{
font-size: 18px;
margin-top: 0;
}
#sec6 form td input,#sec6 form td textarea {
padding: 10px;
font-size: 15px;
}
form .privacy h3 {
font-size: 20px;
text-align: left;
}
#sec6 p{
font-size: 15px;
}
#sec6 .privacy-policy {
width: 100%;
height: 200px;
padding: 20px;
}
#sec6 form p.button .submit-button{
margin-bottom: 10px;
}
}
/*　====================== section6 ======================　*/
/*　====================== banner-block ======================　*/
#banner-block{
background-image: url(../img/banner-back-pc.webp);
background-repeat: no-repeat;
background-position: left top;
background-size: cover; 
}
#banner-block ul.banner-wrap.flex a{
  display: block;
}
#banner-block ul.banner-wrap.flex{
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 30px;
}
@media screen and (max-width:768px){
#banner-block{
  background-image: url(../img/banner-back-sp.webp);
}
}
/*　====================== banner-block ======================　*/

/*　====================== footer ======================　*/
footer{
background-color: #38502F; 
}
footer .container.footer-wrap.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
row-gap: 10px;  
padding: 50px 0;
}
footer p,footer a{
color: #fff;
text-align: center;
}
footer .footer-logo-wrap p{
  font-size: 14px;
  margin: 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
footer .footer-logo-wrap .logo{
  width: 300px;
  margin: 10px  auto 20px;
}
footer .tel a, footer .tel {
font-size: 30px;
font-family: "Inter", sans-serif;
font-weight: 700;
}
footer .company,footer ul{
gap: 30px;
}
footer .footer-instagram{
  padding: 50px 0;
  background-color: #111;
}
footer .copy{
padding: 10px 0;
text-align:center;
color: #fff;
}
@media screen and (max-width:768px){
footer{
background-image: url(../img/footer-back-sp.webp);
/*　====================== footer ======================　*/
}
footer .container.footer-wrap.flex{
padding: 50px 0;
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: flex-start;
gap:30px;
}
footer p,footer a{
color: #fff;
text-align: left;
}
footer .tel a,footer .tel{
font-size: 25px;
}
footer .container.footer-wrap.flex ul.flex{
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
    -ms-flex-direction: column;
        flex-direction: column;
-webkit-box-align: start;
    -ms-flex-align: start;
        align-items: start;
}
}
/*　====================== footer ======================　*/