@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

body{
  max-width: 750px;
  width: 100%;
  margin: auto;
  font-family: "Noto Sans JP", sans-serif;
  background: #fff;
}
body::before,
body::after{
  content: "";
  position: fixed;
  left: 0;
  width: 100%;
  height: 10%;
}
body::before{
  background: url(../img/bg_top.png) top no-repeat;
  background-size: 100%;
  top: 0;
}
body::after{
  background: url(../img/bg_bottom.png) bottom no-repeat;
  background-size: 100%;
  bottom: 0;
}
main{
  position: relative;
  z-index: 1;
  background: #fff;
}
p{
  margin: 0;
}
img{
  vertical-align: middle;
  max-width: 100%;
  width: 100%;
}
h1,h2,h3,h4,h5,h6{
  margin: 0;
  padding: 0;
}

header{
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  max-width: 750px;
  z-index: 10;
  width: 100%;
}
.header_content{
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  padding: 4% 5% 8%;
  display: flex;
  align-items: center;
  gap: 5%;
  box-sizing: border-box;
}
.header_text{
  width: 65%;
}
.header_instagram{
  width: 8%;
}
.header .nav_btn{
  width: 60px;
  height: 60px;
  background: #f0e7d9;
  color: #3a577c;
  font-weight: 900;
  font-size: 16px;
  text-align: center;
  display: flex;
  flex-flow: column;
  align-items: center;
  justify-content: center;
  position: fixed;
  right: 0;
  top: 0;
  gap: 5px;
  line-height: 1;
  cursor: pointer;
  z-index: 100;
}
.header .nav_btn .toggle{
  position: relative;
  height: 20px;
  width: 40px;
  transition: 0.3s;
}
.header .nav_btn .toggle span,
.header .nav_btn .toggle::before,
.header .nav_btn .toggle::after{
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background-color: #3a577c;
  left: 0;
  transition: 0.3s;
}
.header .nav_btn .toggle::before{
  top: 0;
}
.header .nav_btn .toggle span{
  top: 50%;
  transform: translateY(-50%);
}
.header .nav_btn .toggle::after{
  bottom: 0;
}

.header .nav_btn.active .toggle span{
  display: none;
}
.header .nav_btn.active .toggle::before,
.header .nav_btn.active .toggle::after{
}
.header .nav_btn.active .toggle{
  width: 30px;
}
.header .nav_btn.active .toggle::before{
  transform: rotate(45deg);
  top: 50%;
}
.header .nav_btn.active .toggle::after{
  transform: rotate(-45deg);
  bottom: auto;
  top: 50%;
}

.header .headerOuter{
  position: relative;
  z-index: 5;
}

.header .nav{
  display: none;
  position: fixed;
  width: calc(100% - 10px - 12%);
  height: 100%;
  left: 0;
  top: 0;
  background: #F0E7D9;
  border-left: #3a577c solid 10px;
  padding: 25% 6% 0 6%;
  max-width: calc(750px - 10px - 12%);
  right: 0;
  margin: auto;
}
@media screen and (min-width:768px){
  .header .nav{
    padding: 13em 4em 0 4em;
    width: calc(100% - 10px - 8em);
    max-width: calc(750px - 10px - 8em);
  }
}
/* .header .nav.open{
  display: block;
} */
footer{
  position: relative;
  z-index: 1;
  background: #fff;
}
.secKv{
  position: relative;
  z-index: 2;
}
.secKv img:nth-child(1){
  position: relative;
  z-index: 2;
}
.secKv img:nth-child(2){
  margin-top: -15%;
}

.header .nav .title{
  font-weight: 900;
  color: #3a577c;
  font-size: 90%;
}
.header .nav .navMenu{
  counter-reset: listnum;
  list-style: none;
  padding: 0;
  margin-top: 0.5em;
  font-weight: 900;
  color: #3a577c;
  font-size: clamp(14px,3vw,20px);
}
.header .nav .navMenu > li{
  counter-increment: mycounter;
}
.header .nav .navMenu > li:nth-of-type(n+2){
  margin-top: 0.8em;
}
.header .nav .navMenu > li:before{
  content: counter(mycounter, decimal-leading-zero);
  margin-right: 1em;
}
.header .nav .navMenu li a{
  color: #3a577c;
}
.header .nav .navMenu > li ul{
  padding-left: 3em;
}
.header .nav .navMenu > li ul li{
  list-style: none;
  margin-top: 0.2em;
}
.header .nav .navMenu > li ul li a{
  text-decoration: none;
}
.header .nav .navMenu > li ul li:before{
  content: "-";
}
.header .navBtm{
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-top: -7%;
}
.header .navBtm .Instagram {
}
.header .navBtm .Instagram img{
  width: 28%;
  max-width: 50px;
}
.header .navBtm .Instagram a{
  font-weight: 900;
  color: #3a577c;
  text-decoration: none;
  display: flex;
  align-items: flex-end;
  gap: 10px;
}
.header .navBtm .logo{
  width: 50%;
  max-width: 100px;
}

.content{
  padding-top: 22%;
}



#sec01Anchor{
  margin-top: -55%;
  padding-top: 25%;
}
/* #sec01 .bg{
  background: #5eb85b;
} */


#sec02Anchor{
  margin-top: -25%;
  padding-top: 25%;
}
#sec02 img:nth-child(1){
  position: relative;
  z-index: 2;
}
#sec02 .sec02Position{
  margin-top: -7%;
  position: relative;
}
#sec02 .sec02Position .line{
  position: absolute;
  top: 22%;
  right: 0;
  left: 51%;
  margin: auto;
  width: 20%;
}
#sec02 .sec02Position .line a{
  display: block;
}

#sec03Anchor{
  margin-top: -45%;
  padding-top: 25%;
}
.AnchorZone{
  margin-top: -20%;
  padding-top: 20%;
}
#sec03 .bg{
  background: url("../img/sec03_bg.png") top no-repeat;
  background-size: cover;
  padding-bottom: 15%;
}
#sec03 .list_area{
  margin-top: -28%;
}
#sec03 .list{
  padding: 0 4vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
}
#sec03 .list .list_item{
  width: calc(50% - 5px);
  box-sizing: border-box;
  background: #405679;
  color: #fff;
  text-decoration: none;
  position: relative;
}
#sec03 .list .list_item::before,
#sec03 .list .list_item::after{
  content: "";
  position: absolute;
  width: 0;
  height: 0;
}
#sec03 .list .list_item::before{
  left: 0;
  top: 0;
  border-style: solid;
  border-width: 15px 15px 0px 0px;
  border-color: #fabf13 transparent transparent transparent;
}
#sec03 .list .list_item::after{
  right: 0;
  bottom: 0;
  border-style: solid;
  border-width: 0px 0px 15px 15px;
  border-color: transparent transparent #fabf13 transparent;
}
#sec03 .list .list_item a{
  display: block;
  padding: 10px 4.5%;
  color: #fff;
  text-decoration: none;
  height: calc(100% - 20px);
}

#sec03 .list .list_img {
  position: relative;
  display: block;
}
#sec03 .list .list_img .mark{
  position: absolute;
  top: -13%;
  right: -4%;
  width: 30%;
}
#sec03 .list.tyusin a::before{
  border-color: #7ecef4 transparent transparent transparent;
}
#sec03 .list.tyusin a::after{
  border-color: transparent transparent #7ecef4 transparent;
}
#sec03 .list.tousin a::before{
  border-color: #ee87b4 transparent transparent transparent;
}
#sec03 .list.tousin a::after{
  border-color: transparent transparent #ee87b4 transparent;
}
#sec03 .list.nansin a::before{
  border-color: #c3d94e transparent transparent transparent;
}
#sec03 .list.nansin a::after{
  border-color: transparent transparent #c3d94e transparent;
}
#sec03 .list .list_item p{
  margin: 0;
}
#sec03 .list .list_item p.list_name{
  font-size: clamp(14px,3vw,20px);
  font-weight: 900;
  margin-bottom: 10px;
}
#sec03 .list .list_item p.list_name span{
  font-size: clamp(12px,1.3vw,14px);
  display: block;
}
#sec03 .list .list_item p.list_text{
  font-size: clamp(11px,2vw,16px);
  margin-top: 5px;
}
#sec03 .list .list_item .list_url{
  font-size: clamp(9px,1vw,14px);
  padding-top: 5px;
  margin-top: 5px;
  border-top: solid 1px #fff;
  color: #fff;
  text-decoration: none;
  display: block;
}

#sec03 .map{
  width: 80%;
  margin: auto;
  position: relative;
  padding-top: 56.25%;
}
#sec03 .map iframe{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}


#sec04{
  background: #80784e;
  position: relative;
  padding-bottom: 6%;
}
#sec04 img{
  position: relative;
  z-index: 1;
}
#sec04 .sec04_title{
  font-size: clamp(15px,1.8vw,20px);
  color: #fff;
  position: relative;
  padding: 25px 0 20px;
}
#sec04 .sec04_title img{
  width: 15%;
  min-width: 90px;
  position: absolute;
  bottom: 0;
  right: 0;
}
#sec04 .sec04_text_area{
  width: 90%;
  margin: auto;
  color: #fff;
}
#sec04 .sec04_text_area .sec04_title_sub{
  font-size: clamp(10px,1.5vw,16px);
}
#sec04 .sec04_text_area .sec04_text{
  font-size: clamp(10px,1.5vw,16px);
  padding-left: 1.5em;
}
#sec04 .sec04_text_area ul{
  margin: 0 0 5%;
  padding-left: 1.5em;
}
#sec04 .sec04_text_area ul li{
  font-size: clamp(10px,1.5vw,16px);
}
#sec04 .sec04_note{
  display: flex;
  font-size: clamp(10px,1.5vw,16px);
  align-items: center;
  gap: 10px;
  margin-top: 5%;
}
#sec04 .sec04_note img{
  width: 10%;
}

#sec05Anchor{
  margin-top: -15%;
  padding-top: 15%;
}
#sec05{
  background: #f1e8d9;
  position: relative;
  padding-bottom: 8%;
}
#sec05::before{
  content: "";
  position: absolute;
  width: 100%;
  height: 4%;
  background: #80784e;
}
#sec05 img{
  position: relative;
  z-index: 1;
}
#sec05 .faq{
  width: 83%;
  margin: auto;
}
#sec05 .faq .faq_item{
  background: #fff;
  border: solid 2px #80784e;
  padding: 7px 12px;
}
#sec05 .faq .faq_item .faq_item_q,
#sec05 .faq .faq_item .faq_item_a{
  display: flex;
}
#sec05 .faq .faq_item .faq_item_q{
  font-size: clamp(12px,3.2vw,25px);
  color: #80784e;
  font-weight: 600;
  border-bottom: dotted 2px #80784e;
  margin-bottom: 5px;
  padding-bottom: 5px;
  align-items: center;
  gap: 10px;
}
#sec05 .faq .faq_item .faq_item_q > p{
  line-height: 1.3em;
}
#sec05 .faq .faq_item .faq_item_a{
  font-size: clamp(10px,2.3vw,17.5px);
  color: #52bbc1;
  font-weight: 600;
  gap: 1em;
}
#sec05 .faq .faq_item .faq_item_a span{
  font-size: 80%;
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}
#sec05 .faq .faq_item .faq_item_q .faq_item_icon,
#sec05 .faq .faq_item .faq_item_a .faq_item_icon{
  width: 1.2em;
  min-width: 1.2em;
}
#sec05 .faq .faq_item + .faq_item{
  margin-top: 3%;
}

#sec05 .faq .faq_item .faq_item_a .inline1{
  text-indent: -1em;
  padding-left: 1em;
}

#sec05 .faq .faq_item .faq_item_a ul{
  padding: 0 0 0 1.2em;
  margin: 0;
}

#sec06Anchor{
  margin-top: -15%;
  padding-top: 15%;
}
#sec06{
  background: #405679;
  padding: 3% 0 8%;
}
#sec06 .sec06_text{
  color: #fff;
  padding: 1em;
  margin-left: auto;
}
#sec06 .sec06_title{
  text-align: center;
  font-size: clamp(20px,5vw,36px);
  font-weight: 900;
  margin-bottom: 6%;
}
#sec06 .sec06_title span{
  padding-bottom: 5px;
  border-bottom: solid 2px #fff;
}

#sec06 .sec06_text table{
  font-size: clamp(11px,2.3vw,18px);
  text-align: left;
  font-weight: 600;
  margin-bottom: 5%;
}
#sec06 .sec06_text table tr th,
#sec06 .sec06_text table tr td{
  padding-bottom: 0.3em;
}
#sec06 .sec06_text table tr th{
  min-width: 9em;
}
/* #sec06 .sec06_text table tr:last-child th{
  font-size: clamp(10px,2vw,14px);
} */
#sec06 .sec06_text table tr td{
  /* padding-left: 1%; */
}
#sec06 .sec06_text table tr td a{
  color: #fff;
  text-decoration: none;
}
#sec06 .sec06_text table tr td span{
  font-size: 80%;
}

#sec06 .sec06_text dl{
  font-size: clamp(11px,2.3vw,16px);
  display: flex;
  align-items: center;
  gap: 1em;
  margin: 0;
}
#sec06 .sec06_text dl + dl{
  margin-top: 1em;
}
#sec06 .sec06_text dl dt{
  min-width: 2em;
  width: 2em;
  border-right: #fff solid 2px;
  padding: 0 1em;
  min-height: 2.3em;
  display: flex;
  align-items: center;
  justify-content: center;
}
#sec06 .sec06_text dl dd{
  margin-left: 0;
}
#sec06 .img_area{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px;
}
#sec06 .img_area img{
  width: auto;
  max-height: 36px;
  height: 4.8vw;
  /* box-sizing: border-box;
  margin-right: 20px; */
}

#sec06 .sec06_text .note{
  text-align: center;
  font-size: 90%;
  margin-top: 1.5em;
}

.btn_line{
  position: fixed;
  right: 15px;
  bottom: 50px;
  z-index: 50;
  width: 85px;
}
.btn_line a{
  display: block;
}
/*-----------------------------------------------
@keyframes
------------------------------------------------*/
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-moz-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-moz-keyframes fadeInUp {
  0% {
    opacity: 0;
    -moz-transform: translateY(20px);
         transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -moz-transform: translateY(0);
         transform: translateY(0);
  }
}

@-o-keyframes fadeInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(20px);
       transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
       transform: translateY(0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
       -moz-transform: translateY(20px);
         -o-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
       -moz-transform: translateY(0);
         -o-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@-moz-keyframes pulse {
  0% {
    -moz-transform: scale(1);
         transform: scale(1);
  }
  50% {
    -moz-transform: scale(1.1);
         transform: scale(1.1);
  }
  100% {
    -moz-transform: scale(1);
         transform: scale(1);
  }
}

@-o-keyframes pulse {
  0% {
    -o-transform: scale(1);
       transform: scale(1);
  }
  50% {
    -o-transform: scale(1.1);
       transform: scale(1.1);
  }
  100% {
    -o-transform: scale(1);
       transform: scale(1);
  }
}

@keyframes pulse {
  0% {
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
       -moz-transform: scale(1.1);
         -o-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1);
  }
}

@-webkit-keyframes zoomOut {
  0% {
    -webkit-transform: scale3d(1.2, 1.2, 1.2);
            transform: scale3d(1.2, 1.2, 1.2);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

@-moz-keyframes zoomOut {
  0% {
    -moz-transform: scale3d(1.2, 1.2, 1.2);
         transform: scale3d(1.2, 1.2, 1.2);
  }
  100% {
    -moz-transform: scale3d(1, 1, 1);
         transform: scale3d(1, 1, 1);
  }
}

@-o-keyframes zoomOut {
  0% {
    transform: scale3d(1.2, 1.2, 1.2);
  }
  100% {
    transform: scale3d(1, 1, 1);
  }
}

@keyframes zoomOut {
  0% {
    -webkit-transform: scale3d(1.2, 1.2, 1.2);
       -moz-transform: scale3d(1.2, 1.2, 1.2);
            transform: scale3d(1.2, 1.2, 1.2);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
       -moz-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1);
  }
}

@-webkit-keyframes confetti {
  0% {
    opacity: 0;
    -webkit-transform: rotateZ(15deg) rotateY(0deg) translate(0, 0);
            transform: rotateZ(15deg) rotateY(0deg) translate(0, 0);
  }
  25% {
    opacity: 1;
    -webkit-transform: rotateZ(5deg) rotateY(360deg) translate(-5vw, 20vh);
            transform: rotateZ(5deg) rotateY(360deg) translate(-5vw, 20vh);
  }
  50% {
    -webkit-transform: rotateZ(15deg) rotateY(720deg) translate(5vw, 50vh);
            transform: rotateZ(15deg) rotateY(720deg) translate(5vw, 50vh);
  }
  75% {
    -webkit-transform: rotateZ(5deg) rotateY(1080deg) translate(-10vw, 70vh);
            transform: rotateZ(5deg) rotateY(1080deg) translate(-10vw, 70vh);
  }
  86% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: rotateZ(15deg) rotateY(1440deg) translate(10vw, 80vh);
            transform: rotateZ(15deg) rotateY(1440deg) translate(10vw, 80vh);
  }
}

@-moz-keyframes confetti {
  0% {
    opacity: 0;
    -moz-transform: rotateZ(15deg) rotateY(0deg) translate(0, 0);
         transform: rotateZ(15deg) rotateY(0deg) translate(0, 0);
  }
  25% {
    opacity: 1;
    -moz-transform: rotateZ(5deg) rotateY(360deg) translate(-5vw, 20vh);
         transform: rotateZ(5deg) rotateY(360deg) translate(-5vw, 20vh);
  }
  50% {
    -moz-transform: rotateZ(15deg) rotateY(720deg) translate(5vw, 50vh);
         transform: rotateZ(15deg) rotateY(720deg) translate(5vw, 50vh);
  }
  75% {
    -moz-transform: rotateZ(5deg) rotateY(1080deg) translate(-10vw, 70vh);
         transform: rotateZ(5deg) rotateY(1080deg) translate(-10vw, 70vh);
  }
  86% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -moz-transform: rotateZ(15deg) rotateY(1440deg) translate(10vw, 80vh);
         transform: rotateZ(15deg) rotateY(1440deg) translate(10vw, 80vh);
  }
}

@-o-keyframes confetti {
  0% {
    opacity: 0;
    transform: rotateZ(15deg) rotateY(0deg) translate(0, 0);
  }
  25% {
    opacity: 1;
    transform: rotateZ(5deg) rotateY(360deg) translate(-5vw, 20vh);
  }
  50% {
    transform: rotateZ(15deg) rotateY(720deg) translate(5vw, 50vh);
  }
  75% {
    transform: rotateZ(5deg) rotateY(1080deg) translate(-10vw, 70vh);
  }
  86% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: rotateZ(15deg) rotateY(1440deg) translate(10vw, 80vh);
  }
}

@keyframes confetti {
  0% {
    opacity: 0;
    -webkit-transform: rotateZ(15deg) rotateY(0deg) translate(0, 0);
       -moz-transform: rotateZ(15deg) rotateY(0deg) translate(0, 0);
            transform: rotateZ(15deg) rotateY(0deg) translate(0, 0);
  }
  25% {
    opacity: 1;
    -webkit-transform: rotateZ(5deg) rotateY(360deg) translate(-5vw, 20vh);
       -moz-transform: rotateZ(5deg) rotateY(360deg) translate(-5vw, 20vh);
            transform: rotateZ(5deg) rotateY(360deg) translate(-5vw, 20vh);
  }
  50% {
    -webkit-transform: rotateZ(15deg) rotateY(720deg) translate(5vw, 50vh);
       -moz-transform: rotateZ(15deg) rotateY(720deg) translate(5vw, 50vh);
            transform: rotateZ(15deg) rotateY(720deg) translate(5vw, 50vh);
  }
  75% {
    -webkit-transform: rotateZ(5deg) rotateY(1080deg) translate(-10vw, 70vh);
       -moz-transform: rotateZ(5deg) rotateY(1080deg) translate(-10vw, 70vh);
            transform: rotateZ(5deg) rotateY(1080deg) translate(-10vw, 70vh);
  }
  86% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: rotateZ(15deg) rotateY(1440deg) translate(10vw, 80vh);
       -moz-transform: rotateZ(15deg) rotateY(1440deg) translate(10vw, 80vh);
            transform: rotateZ(15deg) rotateY(1440deg) translate(10vw, 80vh);
  }
}

@-webkit-keyframes shine1 {
  0% {
    left: -250%;
  }
  100% {
    left: 450%;
  }
}

@-moz-keyframes shine1 {
  0% {
    left: -250%;
  }
  100% {
    left: 450%;
  }
}

@-o-keyframes shine1 {
  0% {
    left: -250%;
  }
  100% {
    left: 450%;
  }
}

@keyframes shine1 {
  0% {
    left: -250%;
  }
  100% {
    left: 450%;
  }
}

@-webkit-keyframes shine2 {
  0% {
    left: -100%;
  }
  100% {
    left: 500%;
  }
}

@-moz-keyframes shine2 {
  0% {
    left: -100%;
  }
  100% {
    left: 500%;
  }
}

@-o-keyframes shine2 {
  0% {
    left: -100%;
  }
  100% {
    left: 500%;
  }
}

@keyframes shine2 {
  0% {
    left: -100%;
  }
  100% {
    left: 500%;
  }
}
