@charset "UTF-8";
html {
  font-size: 10px;
}


body {
  background-color: #003416;
  margin: 0;
  -moz-text-size-adjust: none;
       text-size-adjust: none;
  -webkit-text-size-adjust: none;
  font-size: 1.4rem;
  color: #000;
  font-family: "MidashiGoMB31", sans-serif;
  line-height: 1.2;
-webkit-font-smoothing: antialiased;
  font-feature-settings: "palt";
}

img {
  border: none;
  height: auto;
}

p {
  line-height: 1.6em;
  margin-top: 0;
}

p + p {
  margin-top: 1.5em;
}

td, th {
  line-height: 1.5em;
  font-weight:inherit;
}

h1, h2, h3, h4, h5, h6, strong, .b {
  font-weight:inherit;
}

h1, h2, h3, h4, h5, h6 {
  padding: 1rem 0;
}
a{
 text-decoration: none;
}

li {
  line-height: 1.8em;
}

.en {
  font-family: "Helvetica Neue", sans-serif;
  font-weight: 600;
  letter-spacing: 0.03em;
  line-height: 1em;
}
.en2 {
  font-family: "Avenir Next", sans-serif;
  font-weight: 800;
  letter-spacing: 0em;
  line-height: 1em;
}

.jp {
  font-family: "A1", sans-serif;
  font-weight: 400;
}

#container{overflow: hidden;}

.contents {
  z-index: 5;
  position: relative;
}

header a,
 main a{
  color: #023516;
  word-break: break-all;

}

header,
main {background-color: #F7F3E9;
  color: #023516;
}
main{padding-bottom:5em}
footer,
footer a{color:#F7F3E9;}

.section{
  position:relative;
}

.section .inner{
  padding-left: 1.5rem;padding-right: 1.5rem; 
}

.home .section1{
background-color: #023516;
color: #F7F3E9;
}

.home .section1 .col1 h2,
.home .concept h3,
.home .concept ul{color:#E84F3D }

.home .col1 h2 .copy1{font-size: 1.4rem; line-height:1.4}
.home .col1 h2 .copy2{font-size: 2.2rem; }

.home .concept h2{margin-bottom: .8em}
.home .concept h2::before{
  content:''; display:block; 
  width: 1.5em; border-top: .5rem solid;
  margin-bottom: 2em;
}

.home .concept h3{margin-top: 1.6em; border-bottom:1px solid; 
  display:inline-block;
padding: .2rem 0;
}
.home .concept ul{font-size: 1.6rem; margin-top:.8em;}
.home .concept ul li{line-height: 1.5em;}
.home .concept ul+p{margin-top:1.6em;}

.home .section2{padding-top: 0;}
.home .section3{padding-top: 7rem;}
.home .section4{padding-top: 7rem; padding-bottom: 4rem}

.home #info table{margin-bottom: 2rem;}
.home #info table th{font-size:.85em;}
.home #info p{font-size:.85em;}

.home .spec .spec-icon{flex-wrap:wrap;}
.home .spec .spec-icon .icon{width: 8.6rem; text-align:center; margin-bottom: 1.5rem}
.home .spec .spec-icon .icon img{width: 75%; margin-bottom: .3rem;}
.home .spec .spec-list{display:flex; flex-wrap:wrap; margin-top: 1rem; max-width: 37.6rem;}
.home .spec .spec-list li{border:1px solid;
display:block; line-height:1.4;
font-size: 1.3rem;
border-radius:.3rem; padding: .4rem .8rem;
margin:0 .4rem .4rem 0;
}

.home #photo img {
width: 100%;
}

.home #photo .splide__pagination {
bottom: -3rem;
left: 1.5rem;
padding: 0;
position: absolute;
right: auto;
z-index: 1;
}
.home #photo .splide__pagination li {
    margin: 0 1rem 0 0; /* ドット間の余白 */
}
.home #photo .splide__pagination button {
    width: 4rem;
    height: .8rem;
    margin: 0;
    border-radius: 0;
    background-color: #F2BEB2;
    border: none;
    transition: background-color 0.3s;
    opacity:1;
}

.home #photo .splide__pagination__page.is-active {
transform: scale(1);
}
.home #photo .splide__pagination button.is-active  {
    background-color: #E84F3D
}

/*page*/

.page header .logo {text-align:center; padding: 1rem 0;}
.page header .logo img {width: 12rem;}
.page h1 {text-align:center; font-size: 3rem;line-height: 1; padding: 4.6rem 0 5.6rem}
.page h1 span.j{
  font-size: .5em;
}
.page .page-link{text-align:center}
.page .page-link.en2{font-size:2rem; padding: 2em 0 0;}

.page .inner{
  padding-left: 1.5rem;padding-right: 1.5rem; 
  max-width: 90rem; 
  margin-left: auto; margin-right: auto;
}


/*terms*/

.terms main h2{color:#E84F3D;
  font-size: 1.6rem;
  padding: 2.4em 0 .4em;
}

/*law*/

#law h1 span.j{font-size: .8em;}
#law .section .inner {
margin-top: 2rem;
}
#law .btn-reserve{display:none;}

/*newsletter*/

/*btn-reserve*/


.btn-reserve{
  position:fixed;
  top:0; z-index: 50;
}
.btn-reserve a{
  display:block;
  background-color: #E84F3D;
  padding: 1rem 1.4rem .8rem 1.2rem;
  border-bottom-right-radius: 1rem;
  text-align:left;
}
.btn-reserve a .title{
  font-size: 1.8rem;
}
.btn-reserve a .title+p{
  font-size: 1.2rem; margin-top: .1em;
}

/*////////////*/

.blc-form [id^=formbox_screen_subscribe_] {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 !important;
}

.blc-form [class^=formbox-editor_] {
  background-color: transparent !important;
}

.blc-form input[class^=formbox-field_] {
  padding: 0 1rem;
  margin: 0.3rem 0;
  border-radius: .3rem !important;
  border: none;
  border: 0.1rem solid #EEEDE9;
  color: #000;
  height: 3.8rem;
  font-size: 1.4rem !important;
}

.blc-form input[class^=formbox-field_]::-moz-placeholder ,
.blc-form input[class^=formbox-field_]::placeholder {
  color: #555;
  font-size: 1.3rem !important;
}


.blc-form fieldset {
  width: 100%;
  padding: 0 !important;
}

.blc-form fieldset:first-of-type {
  display: none !important;
}

.blc-form fieldset:nth-of-type(2),
.blc-form fieldset:nth-of-type(3) {
  width: calc(50% - .3rem) !important;
}

.blc-form [id^=btnSubmit_] {
  color: #fff !important;
}

.blc-form .email-marketing-by-b {
  display: none;
}

.blc-form [id^=btnSubmit_] {
  font-size: 1.4rem !important;
  margin: 0.5rem 0 0;
  padding: 0 !important;
  width: 100% !important;
  background-color: #E84F3D !important;
  transition:background-color 0.2s ;
  height: 3.8rem;
  border-radius: 0.3rem !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

.blc-form [id^=btnSubmit_]:hover {
  background-color: #d83F2D !important;
}


#transition-overlay {
  position: fixed;
  bottom: 0%;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #023516; /* 好きな色に変更可 */
  z-index: 9999;
  transition: bottom .8s ease-in-out;
}