@import url('https://fonts.googleapis.com/css2?family=Kiwi+Maru&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Klee+One&display=swap');
:root {
  --main-color:#266134;
  --main-font-color: #3e3e3e;
  --f-f-mincho:'游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
  --english-font: "futura-pt", sans-serif;
}
html{
  overflow: auto;
  position: relative;
  min-height: 100%;
  margin-top:0;
  scroll-behavior: smooth;
  scroll-padding-top: 80px;
  font-size:62.5%;
  background-color: #fcfcfc;
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
}
body{
  overflow-x: hidden;
  position:relative;
  font-size: 16px;
  color:#333333;
  font-weight: 400;
  font-style: normal;;
}


#wrap{
  width:100%;
  max-width:1000px;
  margin:0 auto;
}
a:hover{
  opacity: 70%;
}
.over_width{
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);

}
.inner_width{
  width:100%;
  max-width: 1000px;
  margin: 0 auto;
}
.pc_none{
  display: none;
}
/* text-align */
.ta_c{
  text-align: center;
}
.ta_l{
  text-align: left;
}
.ta_r{
  text-align: right;
}

hr.animate_line{
  opacity: 0;
  transition : all 2000ms;
  transform: scale(0, 1);
  margin-top:200px;

}
hr.animate_line.active{
  opacity: 1;
  transform: scale(1, 1);
}

/* header */

.header_content{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding:24px 5%;
  width:100%;
  
}
.header_content a,
.header_content a img{
  width:180px;
  display: block;
}
.header_inner{
  width: 85%;
  margin:0 0 0 auto;
  max-width:1100px;
}
ul.nav{
  display: flex;
  align-items: flex-end;
  justify-content: space-around;
  flex: 0 1 auto;
}
ul.nav li{
  text-align: center;
  /* width:calc(100% / 8); */
  flex: 1 0 auto;
}
ul.nav li:not(:first-child){
  border-left:1px solid #3e3e3e
}
ul.nav li a{
  width:100%;
  text-decoration: none;
  color:var(--main-font-color);
  font-family: var(--f-f-mincho);
  font-size:1.6rem;
}
footer{
  background-color: var(--main-color);
}
.footer_content{
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding:48px 0;
}
.footer_content a,
.footer_content a img{
  width:180px;
  display: block;
}
.footer_inner{
  width:40%;
}
ul.footer_nav{
  display: flex;
  flex-wrap: wrap;
}
ul.footer_nav li{
  width:50%;
  margin-bottom:30px;
  padding-left:2rem;
  border-left:1px solid #fff;
}
ul.footer_nav li a{
  color:#fff;
}
.copy{
  font-size:1.2rem;
  font-family: var(--f-f-mincho);
  padding:1.6rem;
  color:#fff;
}
/* 共通項目 */
.wrapper{
  margin:150px auto 0;
}
h3.sub_title{
  font-size:6rem;
  color:#e8e8e8;
  font-weight:bold;
  margin-bottom:1em;
}
h3.sub_title span{
  font-size:2.4rem;
  padding-left:1em;
  color:#595959;
  font-family:var(--english-font);
}
a.btn{
  display: block;
  width:300px;
  height:80px;
  border-radius: 40px;
  background-color: var(--main-color);
  color:#fff;
  position:relative;
  line-height:80px;
  margin:60px 0 0 auto;
  font-size:2rem;
  font-weight:bold;
}
a.btn::after{
  position:absolute;
  content:"";
  width:16px;
  height:20px;
  background: url(../images/index/arrow.png) center center no-repeat;
  background-size: cover;
  right:3rem;
  top:31px;
  color:#fff;
}