@charset 'UTF-8';
html{
  font-size: 62.5%;
}
@media screen and (max-width: 1024px) {
  html {
      font-size: 55%;
  }
}

body {
  background: #fff;
  color: #333;
  line-height: 1.8;
  text-align: left;
  letter-spacing: 0.05em;
  overflow-y: scroll;
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "YakuHanJP", "noto-sans-cjk-jp", "ヒラギノ角ゴ Pro W3",
    "Hiragino Kaku Gothic Pro", "游ゴシック", "メイリオ", Meiryo, Osaka,
    "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  counter-reset: number 0;
}
header h1 {
  margin-top: 1.5rem;
}
header h1 img {
  max-width: 160px;
}
@media screen and (max-width: 599px) {
  .mainimage {
    width: 100%;
  }
  header h1 {
    margin-top: 1.25rem;
  }
  header .inner h1 {
    text-align: center;
  }
  header .inner h1 img {
    max-width: 120px;
  }
}
.lead h2{
  color: #8dc21f;
  font-size: 60px;
  font-size: 6rem;
  font-weight: bold;
  line-height: 1.4;
  margin-top: 5vw;
}
.lead h2 span{
  display: inline-block;
}
.lead h2 .c-black{
  color: #000;
    font-style:italic;
    font-family: "brandon-grotesque", sans-serif;
    font-weight: 600;
    margin-top: 3vw;
}
@media screen and (max-width: 599px) {
  .lead h2{
    font-size: 8vmin;
    }
}
#header {
  background: #f2ece2;
  padding: 36px 0 32px;
  border-bottom: 1px solid #efefef;
}
footer .copyright {
  text-align: center;
  font-size: 12px;
  margin-top: 5vw;
}
footer .copyright a {
  color: #000;
  text-decoration: none;
}
.FV{
  background: #f2ece2 url(../images/bg.svg) center bottom no-repeat;
  background-size: contain;
  padding-bottom: 15vw;
}
.FV img{
  width: 100%;
  max-width: 600px;
}
.title{
  margin-top: 5vw;
}
.title h1{
  text-align: center;
}
.text-area{
  margin-top: 5vw;
}
.text-area h2{
  text-align: center;
  font-size: 3.6rem;
  font-weight: 600;
}
@media screen and (max-width: 599px) {
  .text-area h2{
    font-size: 3.0rem;
  }
}
.text-area h2 span{
  color: #FFF;
  background: linear-gradient(transparent 5%, #ff896c 0%);
  padding: 0 10px;
}
.text-list{
  text-align: center;
}

.text-list h3 {
  position: relative;
  font-size: 2.0rem;
  font-weight: 600;
  text-align: center;
  padding: 1.5rem 1rem;
  margin: 3vw 0 2vw;
}

.text-list h3:after {
  position: absolute;
  bottom: 0;
  left: calc(50% - 50px);
  width: 100px;
  height: 10px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #c3d600, #c3d600 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #c3d600, #c3d600 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.howto{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 2vw;
}
.howto div{
  width: 43%;
}
.howto div:first-child{
  width: 56%;
}
.flexC {
  display:flex;
  align-items: center;
  justify-content: center;
}

.form-image li{
}
@media screen and (max-width: 599px) {
  .howto{
  display: block;
  }
  .howto div{
    width: 100%;
  }
  .howto div:first-child{
    width: 100%;
  }
  .form-image{
    margin-top: 3vw;
  }
}
/* focus
------------------------------------------ */
.contentHead{
  text-align: center;
  color: #333;
  font-weight: 700;
  margin:3vw 0 2vw;
}
.contentHead h2 .ja{
  display: block;
  font-size: 18px;
}
.contentHead h2 .en {
  font-family: "brandon-grotesque", sans-serif;
  font-style: italic;
  font-weight: 700;
  letter-spacing: 0.05em;
  font-size: 36px;
  line-height: 1;
}
@media screen and (max-width: 599px) {
  .contentHead h2 .ja{
    font-size: 22px;
  }
}
.contentHead h3{
  display: inline-block;
  text-align: center;
  color: #ffffff;
  font-weight: 600;
  background-color: #8dc21f;
  margin:3vw 0 1vw;
  padding: 5px 40px;
}
@media screen and (max-width: 599px) {
  .contentHead h2 .ja{
    font-size: 22px;
  }
  .contentHead h3{
    width: 100%;
  }
}
.focus .column-2__inner{
  align-items: center;
}
.focus .column-2__inner.reverse{
  flex-direction: row-reverse;
}
.focus .column-2__txt{
  font-size: 16px;
}

.focus .column-2__txt.Right{
  margin-left: 3vw;
  margin-right: 0;
}
.focus .column-2__txt h4 {
  font-weight: 600;
  letter-spacing: 0.2em;
  margin-bottom: 2vw;
}
.focus .column-2__txt h4 span {
  display: block;
  font-size: 14px;
  letter-spacing: normal;
}
.focus .column-2__img img{
  width: 70%;
}

/* focus > Media Queries
------------------------------ */
@media screen and (max-width: 599px) {
  .focus .column-2__img{
    text-align: center;
    margin-bottom: 15vw;
  }
  .focus .column-2__img img{
    width: 100%;
  }
  .focus .column-2__txt.Right{
    margin-left: 0;
  }
  .focus .column-2__txt h4 {
    text-align: center;
    margin-top: 10vw;
  }
}
.btn_area{
  margin: 1vw 0 5vw;
  text-align: center;
}
.btn_red{
  background-color: #efefef;
	display: inline-block;
	position: relative;
	width: 450px;
	padding: 0.8em;
	text-align: center;
	text-decoration: none;
	color: #8dc21f;
  font-weight: 600;
        border-radius: 50px;
	border:3px solid #8dc21f;
	-webkit-backface-visibility: hidden; 
	-moz-backface-visibility: hidden;
    backface-visibility: hidden;
  margin-top: 5vw;
}
@media screen and (max-width: 599px) {
  .btn_red{
    width: 100%;
  }
}
.btn_red:hover{
  cursor: pointer;
  text-decoration: none;
 -webkit-animation: btn_red 0.4s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
 -moz-animation: btn_red 0.4s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
         animation: btn_red 0.4s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
        }

        @-webkit-keyframes btn_red{
          0% {
            -webkit-transform: translateY(0);
                    transform: translateY(0);
          }
          100% {
            -webkit-transform: translateY(-5px);
                    transform: translateY(-5px);
          }
        }
        @-moz-keyframes btn_red{
          0% {
            -webkit-transform: translateY(0);
                    transform: translateY(0);
          }
          100% {
            -webkit-transform: translateY(-5px);
                    transform: translateY(-5px);
          }
        }
        @keyframes btn_red {
          0% {
            -webkit-transform: translateY(0);
                    transform: translateY(0);
          }
          100% {
            -webkit-transform: translateY(-5px);
                    transform: translateY(-5px);
          }
        }

.btn-area{
  margin-top: 5vw;
}
.btn-area img{
  width: 100%;
  max-width: 600px;
}
.postcard{
  width: 100%;
  max-width: 500px;
}

.font10 {
  font-size: 10px !important;
  font-size: 0.1rem !important;
}
.font11 {
  font-size: 11px !important;
  font-size: 1.1rem !important;
}
.font12 {
  font-size: 12px !important;
  font-size: 1.2rem !important;
}
.font13 {
  font-size: 13px !important;
  font-size: 1.3rem !important;
}
.font14 {
  font-size: 14px !important;
  font-size: 1.4rem !important;
}
.font15 {
  font-size: 15px !important;
  font-size: 1.5rem !important;
}
.font16 {
  font-size: 16px !important;
  font-size: 1.6rem !important;
}
.font18 {
  font-size: 18px !important;
  font-size: 1.8rem !important;
}
.font20 {
  font-size: 20px !important;
  font-size: 2.0rem !important;
}
.font22 {
  font-size: 22px !important;
  font-size: 2.2rem !important;
}
.font24 {
  font-size: 24px !important;
  font-size: 2.4rem !important;
}
.font26 {
  font-size: 26px !important;
  font-size: 2.6rem !important;
}
.font28 {
  font-size: 28px !important;
  font-size: 2.8rem !important;
}
.font30 {
  font-size: 30px !important;
  font-size: 3.0rem !important;
}
