  @charset "utf-8";

/* CSS Document */


/***********
base
************/
html,
body {
  height: 100%;
  min-height: 100%;
  font-size: 13px;
  font-weight: normal;
  font-family: "Zen Maru Gothic",'游ゴシック Medium', 'Yu Gothic Medium','游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  line-height: 1.5;
  letter-spacing: 0.02em;
  background-color: #ede29c;
}

img {
  width: auto;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

a{
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

::selection {
  background: rgba(0, 144, 202, 0.5); /* Safari */
}
::-moz-selection {
  background: rgba(0, 144, 202, 0.5); /* Firefox */
}

@media screen and (min-width:835px) {
  a[href^="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}


/***********************
layout
************************/

/***********
common
************/

.l-relative {  position: relative !important; }

.l-textAlign-center {  text-align: center !important; }
.l-textAlign-right  {  text-align: right !important; }
.l-textAlign-left   {  text-align: left !important; }

.l-bottom-xxsmall {  margin-bottom: 5px  !important; }
.l-bottom-xsmall  {  margin-bottom: 10px !important; }
.l-bottom-small   {  margin-bottom: 15px !important; }
.l-bottom         {  margin-bottom: 20px !important; }
.l-bottom-large   {  margin-bottom: 30px !important; }
.l-bottom-xlarge  {  margin-bottom: 50px !important; }
.l-bottom-xxlarge {  margin-bottom: 80px !important; }

.l-top-xxsmall {  margin-top: 5px  !important; }
.l-top-xsmall  {  margin-top: 10px !important; }
.l-top-small   {  margin-top: 15px !important; }
.l-top         {  margin-top: 20px !important; }
.l-top-large   {  margin-top: 30px !important; }
.l-top-xlarge  {  margin-top: 50px !important; }
.l-top-xxlarge {  margin-top: 80px !important; }

@media screen and (max-width:834px) {

  .l-bottom-xxsmall {  margin-bottom: 5px  !important; }
  .l-bottom-xsmall  {  margin-bottom: 7px !important; }
  .l-bottom-small   {  margin-bottom: 10px !important; }
  .l-bottom         {  margin-bottom: 15px !important; }
  .l-bottom-large   {  margin-bottom: 20px !important; }
  .l-bottom-xlarge  {  margin-bottom: 30px !important; }
  .l-bottom-xxlarge {  margin-bottom: 40px !important; }

  .l-top-xxsmall {  margin-top: 5px  !important; }
  .l-top-xsmall  {  margin-top: 7px !important; }
  .l-top-small   {  margin-top: 10px !important; }
  .l-top         {  margin-top: 15px !important; }
  .l-top-large   {  margin-top: 20px !important; }
  .l-top-xlarge  {  margin-top: 30px !important; }
  .l-top-xxlarge {  margin-top: 40px !important; }

}


/***********
linkWrap
************/

.l-linkWrap{
  padding: 20px 0 20px;
  text-align: center;
}

/***********
btn
************/

.l-btn {
  display: inline-block;
  width: auto;
  min-width: 240px;
  padding: 12px 40px 12px 40px;
  font-size: 16px;
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  color: #000;
  background-color: #ffd800;
  border-radius: 100vw;
  position: relative;
}


/***********
base
************/

.l-base {
  width: auto;
  max-width: 750px;
  background-color: #fff;
  margin-left: auto;
  margin-right: auto;
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.1);
}



/***********
contact
************/

.contact{
  background: #f6f6f6;
  padding: 40px 20px;
}

table tr.js-checkitem{
	display: none;
	opacity: 0;
}
table tr.js-checkitem.is-show{
	display: block;
	opacity: 1;
}


/***********
box
************/

.l-box {
  padding: 40px 20px;
}

/***********
xxxxx
************/

.note {
}
.note-title {
  text-align: center;
  color: #000;
  font-size: 24px;
  letter-spacing: 0.1em;
}
.note-title::after {
  content: "";
  display: block;
  width: 60px;
  height: 2px;
  margin: 20px auto 30px;
  background-color: #ffd800;
}
.note-text {
  font-size: 14px;
  line-height: 1.8;
}

/***********
logo
************/

.logo {
  text-align: center;
}
.logo a {
}
.logo img {
  width: 35%;
}

/***********
notes
************/
.notes{
  background: url(../../img/img08.png) no-repeat top center / 100% auto;
  padding:2em 5% 2em 5%;
  font-size: 26px;
}
.notes ul{
  padding-left: 25px;
}
.notes li{
  list-style: disc;
  margin-top: 2px;
  font-weight: 500;
}
@media screen and (max-width:834px) {
  .notes{
    font-size: 16px;
    line-height: 1.3;
    padding:1.5em 5% 1.5em 5%;
  }
}

/***********
caution
************/
.caution{
  background: #ebebeb;
  padding:4em 5%;
}
.caution_inner{
  border:1px solid #000;
  background: #fff;
  padding:4em 5%;
}
.caution_inner p{
  /*26 - 40*/
  font-size:clamp(1.75rem, 1.18rem + 2.532vi, 2.5rem);
  text-align: center;
  font-weight: bold;
  margin-bottom: 1.5em;
  line-height: 1;
}
.caution_inner li{
  font-size:clamp(1rem, 0.525rem + 2.11vi, 1.625rem);
  line-height: 1.6;
  padding-left:30px;
  position: relative;
  margin-bottom: 20px;
  font-weight: 500;
}
.caution_inner li::before{
  content: '●';
  display: block;
  position: absolute;
  left: 0;
  top:0;
}
@media screen and (max-width:834px) {
  .caution_inner li{
    padding-left:22px;
  }
}




/***********
status
************/

.is-hide {
  display: none;
}

.is-inlineBlock{
  display: inline-block;
}

.is-out{
  position: absolute;
  left: -9999999px;
}

.is-pc-hide {
  display: none;
}

.is-pc-inline ,
.pc-br {
  display: inline;
}

.is-sp-inline ,
.sp-br {
  display: none;
}

.is-pc-noevent {
  pointer-events: none;
}

.is-step > *{
  opacity: 0;
  transition: opacity 1.2s ease;
}
.is-step.is-show > *{
  opacity: 1;
}

.is-block{
  display: block;
}

@media screen and (max-width:834px) {

  .is-pc-hide {
    display: block;
  }

  .is-sp-hide {
    display: none;
  }

  .is-sp-inline ,
  .sp-br {
    display: inline;
  }

  .is-pc-inline ,
  .pc-br {
    display: none;
  }

  .is-pc-noevent {
    pointer-events: auto;
  }

  .is-spGothic {
    font-family: '游ゴシック Medium', 'Yu Gothic Medium','游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', sans-serif;
  }


}
