@charset "UTF-8";

body {margin: 0;
    font-family: 'M PLUS Rounded 1c', sans-serif;}
    
body{
  background-color : #ECF4E0;
  background-image :
      repeating-linear-gradient(to bottom,
                                rgba(212, 232, 190, 0.50),
                                rgba(212, 232, 190, 0.50) 23px,
                                rgba(0, 0, 0, 0) 0,
                                rgba(0, 0, 0, 0) 46px),
      repeating-linear-gradient(to right,
                                rgba(212, 232, 190, 0.50),
                                rgba(212, 232, 190, 0.50) 23px,
                                rgba(0, 0, 0, 0) 0,
                                rgba(0, 0, 0, 0) 46px);
}

body,h1,h2,h3,ul,li,a,p  {color: #484848}

/* ナビゲーションメニュー */
.menu   {position: sticky;
        position: -webkit-sticky;
        bottom:0;
        z-index:2}

.menu    {margin: 0;
            padding: 0;
            list-style: none;
            background-color: #5CB53C;}
            
            
.menu a  {display: flex;
  justify-content: center;
  align-items: center;
            padding: 20px;
            color: #fff;
            font-size: 14px;
            font-weight: bold;
            text-decoration: none;
            text-align: center;
            border: 1px solid #fff;
            border-top: 2px solid #fff;
            border-bottom: 2px solid #fff;}
            
.menu a:hover    {background-color: #34930C}

/* ヘッダー */
.simu-header-pc    {width: 100%;
            vertical-align: bottom}
.simu-header-sp    {width: 100%;
            vertical-align: bottom}
            
.simu-header-pc { display: block !important; }
.simu-header-sp { display: none !important; }
            

/* 料金シミュレーション */
.simu    {margin: 100px 0;
               padding: 0;
               background-color: #fff;
                text-align: center}
.simu-message {margin: 0;
                padding: 0 20px 50px;
                text-align: center;
               font-weight: 500;
              font-size: 22px;}
             
.radiobox   {margin: 10px　0;
            padding: 0;
            text-align: center;
            font-size: 30px;
            color: #5CB53C;
            }
            
.radiobox-message p {margin: 50px 0 0 0;
            padding-left: 10px;
            font-size: 15px;
            text-align: left}
            
.radiobox-message02 p {margin: 50px 0 0 0;
            padding-left: 5px;
            font-size: 12px;
            text-align: center}
            
.radiobox-message03 p {margin: 10px 0 0 0;
            padding-left: 10px;
            font-size: 15px;
            text-align: center}

.radiobox-message04 {visibility: hidden;}
.radiobox-message04 p {margin: 50px 0 0 0;
            padding-left: 5px;
            font-size: 12px;
            text-align: center}

.radiobox-all03 {margin: 0 200px;}
          
.radiobutton01 {display: none;}
.radiobutton01 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 80px;
}

.radiobutton01 + label    {cursor: pointer;}

.radiobutton01:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}
.radiobutton02 {display: none;}
.radiobutton02 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 90px;
}

.radiobutton02 + label    {cursor: pointer;}

.radiobutton02:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobutton03 {display: none;}
.radiobutton03 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 90px;
}

.radiobutton03 + label    {cursor: pointer;}

.radiobutton03:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}
.kikan      {margin: 0;
            padding: 50px 0}
.kikan-box  {
        margin: 0;
        padding: 20px 0;
        font-size: 30px}
            
.btn02      {margin: 50px 280px;
            padding: 30px;
            border: 3px solid #34930C}
.btn02 a      {display: block;
                text-decoration: none;
                font-size: 30px;
                color: #5CB53C}
.radiobox01   {
            padding: 30px 0;
            text-align: center;
            font-size: 30px;
            color: #5CB53C;
            }              
.radiobutton07 {display: none;}
.radiobutton07 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 180px;
}

.radiobutton07 + label    {cursor: pointer;}

.radiobutton07:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobox02   {
            margin: 10px　0;
            padding: 30px 0;
            text-align: center;
            font-size: 30px;
            color: #5CB53C;
            }              
.radiobutton05 {display: none;}
.radiobutton05 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 40px;
}

.radiobutton05 + label    {cursor: pointer;}

.radiobutton05:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobox03   {
            padding: 30px 0;
            text-align: center;
            font-size: 30px;
            color: #5CB53C;
            }              
.radiobutton06 {display: none;}
.radiobutton06 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 180px;
}

.radiobutton06 + label    {cursor: pointer;}

.radiobutton06:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobutton12 {display: none;}
.radiobutton12 + label{
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 60px;
}

.radiobutton12 + label    {cursor: pointer;}

.radiobutton12:checked + label {
background-color: #5CB53C;
color: #fff;

}


.radiobox04   {
            margin: 10px　0;
            padding: 30px;
            text-align: center;
            font-size: 30px;
            color: #5CB53C;
            }              
.radiobutton04 {display: none;}
.radiobutton04 + label{
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 65px;
}

.radiobutton04 + label    {cursor: pointer;}

.radiobutton04:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobox05   {margin: 10px 0 0 0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton08 {display: none;}
.radiobutton08 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 30px;
}

.radiobutton08 + label    {cursor: pointer;}

.radiobutton08:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobox06   {margin: 10px 0 0 0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton09 {display: none;}
.radiobutton09 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 40px;
}

.radiobutton09 + label    {cursor: pointer;}

.radiobutton09:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobox07 {
  visibility:;
}

.radiobox07   {margin: 10px 0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton10 {display: none;}
.radiobutton10 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 60px;
}

.radiobutton10 + label    {cursor: pointer;}

.radiobutton10:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobox08   {margin: 10px　0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton11 {display: none;}
.radiobutton11 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 65px;
}

.radiobutton11 + label    {cursor: pointer;}

.radiobutton11:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.selectbox01 {
    position: relative;
}

.selectbox01::before,
.selectbox01::after {
    position: absolute;
    content: '';
    pointer-events: none;
}

.selectbox01::before {
    right: 0;
    display: inline-block;
    width: 40px;
    height: 40px;
    border-radius: 0 5px 5px 0;
    background-color: #5cb53c;
    content: '';
}

.selectbox01::after {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(50%, -50%) rotate(45deg);
    width: 5px;
    height: 5px;
    border-bottom: 3px solid #fff;
    border-right: 3px solid #fff;
    content: '';
}

.selectbox01 select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    min-width: 230px;
    height: 40px;
    padding: 5px 25px 5px 15px;
    border: 2px solid #5cb53c;
    border-radius: 5px;
    color: #484848;
    cursor: pointer;
}

.selectbox01 select:focus {
    outline: 1px solid #5cb53c;
}

.kikan-message01 p   {margin: 20px 0;
  padding: 0;
  font-size: 30px;
  font-weight: 500;
  color: #f76d8e}
.kikan-message02 p   {margin: 20px 0;
  padding: 0;
  font-size: 30px;
  font-weight: 500;
  color: #f76d8e}


.ryoukin      {margin: 0;
            padding: 0}
.ryoukin p  {margin: 0;
            padding: 0;
            font-size: 30px;
            font-weight: 500;
            color: #fff}
            
.ryoukin02  {padding: 50px;
    margin: 100px 300px;
    background-color: #5CB53C;/*背景色*/
    box-shadow: 0 0 0 8px #5CB53C;/*背景色外側*/
    border: 5px dashed #34930C;/*線*/}


/* グループ申込の注意点 */
    
.group_message {
      margin: 2em 4em;
      background: #fff;
      border: #e54366 solid 2px;
  }
.group_message .box-title {
      font-size: 20px;
      background: #e54366;
      padding: 12px;
      text-align: center;
      color: #FFF;
      font-weight: bold;
      letter-spacing: 0.5em;
  }

.group_message_p  {padding: 30px;}
.group_message_p p{
      margin: 0;
      text-align: left;
      line-height: 1.5em;
      font-size: 20px;
      padding-left: 1em;
      font-weight: bold;}

/* コピーライト */
.copyright  {background-color: #5CB53C;
            text-align: center}

.copyright p	{margin: 0;
                padding: 10px;
                color: #fff;
                font-size: 14px;}

/* 文字エフェクト */
.t-yellow   {background:linear-gradient(transparent 60%, #FFF799 60%);}
.t-red   {background:linear-gradient(transparent 60%, #f76d8e 60%);}
.t-red02  {color: #f76d8e;}
.t-big01    {font-size: 52px}
.t-big02    {font-size: 78px}
.t-strong   {font-size: 40px}
.t-small    {font-size: 12px}
.t-small02    {font-size: 20px}


/* お申込みボタン */
.button {
  margin: 50px 0;
  display       : inline-block;
  font-size     : 28pt;        /* 文字サイズ */
  text-align    : center;      /* 文字位置   */
  cursor        : pointer;     /* カーソル   */
  padding       : 50px 150px;   /* 余白       */
  background    : #5cb53c;     /* 背景色     */
  color         : #ffffff;     /* 文字色     */
  line-height   : 1em;         /* 1行の高さ  */
  transition    : .3s;         /* なめらか変化 */
  box-shadow    : 15px 15px #34930C;  /* 影の設定 */
  border        : 3px solid #34930C;    /* 枠の指定 */
}
.button:hover {
  box-shadow    : none;        /* カーソル時の影消去 */
  color         : #5cb53c;     /* 背景色     */
  background    : #ffffff;     /* 文字色     */
}

/* 見出し */
.midashi01 {
background-color: #5CB53C;
margin: 0;
padding: 50px;
color: #fff;
text-align: center;
font-size: 46px
}


.midashi02{
background-color: #34930C;
margin: 100px 0 20px 0;
padding: 30px 0;
color: #fff;
text-align: center;
font-size: 36px
}

.midashi03 {
  position: relative;
  display: inline-block;
  padding: 40px 55px;
  font-size: 36px
}

.midashi03:before,.midashi03:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: black;
}
.midashi03:before {
  left:0;
}
.midashi03:after {
  right: 0;
}

.midashi04  {
            margin: 50px;
            padding: 20px;
            font-size: 26px;
            text-align: center;
            
}

/* 告知 */
.kokuchi    {margin: 0;
  padding: 100px;}
                      
                      
input[type=radio] {
display: none; /* ラジオボタンを非表示にする */}

input[type="radio"]:checked + label {
background: #5cb53c;/* マウス選択時の背景色を指定する */
color: #ffffff; /* マウス選択時のフォント色を指定する */}

.label:hover {
background-color: #dfffdb; /* マウスオーバー時の背景色を指定する */}

.label {
display: block;	/* ブロックレベル要素化する */ 
float: left;	/* 要素の左寄せ・回り込を指定する */ 
margin: 5px 20px;	/* ボックス外側の余白を指定する */
width: 100px;	/* ボックスの横幅を指定する */
height: 45px;	/* ボックスの高さを指定する */
padding-left: 5px;	/* ボックス内左側の余白を指定する */
padding-right: 5px;	/* ボックス内御右側の余白を指定する */
background-color: #fff;
color: #5cb53c;	/* フォントの色を指定 */
text-align: center;	/* テキストのセンタリングを指定する */
line-height: 45px;	/* 行の高さを指定する */
cursor: pointer;	/* マウスカーソルの形（リンクカーソル）を指定する */
border: 2px solid #5cb53c;/* ボックスの境界線を実線で指定する */
border-radius: 5px;	/* 角丸を指定する */}

.message    {
  margin: 0 auto;
  padding: 20px 0}
  
.message p  {margin: 0;
  padding: 10px 0;
  color: #505050;
  font-size: 30px;
  font-weight: 500;}

.message02 p  {margin: 0;
  padding: 10px 0;
  color: #505050;
  font-size: 24px;
  font-weight: 500;
  text-align: left;}
  
.q01    {
  margin: 0 auto;
  padding: 20px 0}
  
.q01 p  {margin: 0;
  padding: 10px 0;
  color: #505050;
  font-size: 20px;
  text-align: justify;
  padding-left: 1em;
  text-indent: -1em;}
  
.q02    {
margin: 0 auto;
padding: 20px 0;
}
  
.q02 p  {margin: 0;
padding-top: 60px;
padding-bottom: 10px;
color: #505050;
font-size: 20px;
text-align: justify;
padding-left: 1em;
text-indent: -1em;}

.q03    {
margin: 0 auto;
padding: 20px 0}
  
.q03 p  {margin: 0;
padding-top: 60px;
padding-bottom: 10px;
color: #505050;
font-size: 20px;
text-align: justify;
padding-left: 1em;
text-indent: -1em;}

.q04    {
margin: 0 auto;
padding: 20px 0}
  
.q04 p  {margin: 0;
padding-top: 60px;
padding-bottom: 10px;
color: #505050;
font-size: 20px;
text-align: justify;
padding-left: 1em;
text-indent: -1em;}

.q05    {
margin: 0 auto;
padding: 20px 0}
  
.q05 p  {margin: 0;
padding-top: 60px;
padding-bottom: 10px;
color: #505050;
font-size: 20px;
text-align: justify;
padding-left: 1em;
text-indent: -1em;}

.q06    {
  margin: 0 auto;
  padding: 20px 0}
    
  .q06 p  {margin: 0;
  padding-top: 60px;
  padding-bottom: 10px;
  color: #505050;
  font-size: 20px;
  text-align: justify;
  padding-left: 1em;
  text-indent: -1em;}

.q07    {
  margin: 0 auto;
  padding: 20px 0}
    
  .q07 p  {margin: 0;
  padding-top: 60px;
  padding-bottom: 10px;
  color: #505050;
  font-size: 20px;
  text-align: justify;
  padding-left: 1em;
  text-indent: -1em;}

.q08    {
  margin: 0 auto;
  padding: 20px 0}
    
  .q08 p  {margin: 0;
  padding-top: 60px;
  padding-bottom: 10px;
  color: #505050;
  font-size: 20px;
  text-align: justify;
  padding-left: 1em;
  text-indent: -1em;}

.q09    {
  margin: 0 auto;
  padding: 20px 0}
    
  .q09 p  {margin: 0;
  padding-top: 60px;
  padding-bottom: 10px;
  color: #505050;
  font-size: 20px;
  text-align: justify;
  padding-left: 1em;
  text-indent: -1em;}



/* グリッド */
body    {display: grid;
        grid-template-columns: [left] minmax(20px, 1fr) [main] minmax(auto, 1280px)[main-end] minmax(20px, 1fr) [right];
        grid-template-rows: [head] auto [simu] auto [foot] auto[bottom]}
        
.simu-header-pc    {grid-column-start: left;
            grid-column-end: right;
        grid-row-start: head;}
        
.simu-header-sp    {grid-column-start: left;
            grid-column-end: right;
            grid-row-start: head;}
            
.simu    {grid-column-start: main;
            grid-row-start: simu;}
            
.radiobox-all  {display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            grid-template-rows: auto;
            grid-row-gap: 20px}
            
.radiobox-all02  {display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            grid-template-rows: auto;
            grid-row-gap: 40px}
            
.radiobox-all03  {display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            grid-template-rows: auto;
            grid-row-gap: 40px}
            
.radiobox-all04  {display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            grid-row-gap: 40px}
            
.radiobox08  {display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            grid-row-gap: 50px}

.kikan-all  {display: grid;
            grid-template-columns: 1fr 1fr;
            grid-template-rows: auto;
            grid-row-gap: 20px}
            
.copyright  {grid-column-start: left;
            grid-column-end: right;
            grid-row-start: foot}
            
.menu  {grid-column-start: left;
        grid-column-end: right;
        grid-row-start: footer-menu;}   
            
.menu       {display: grid;
            grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
            grid-template-rows: auto;
            grid-row-gap:0}


/* ########################### 1480px以下 ##############################*/
@media (max-width: 1480px) {
  

  .ryoukin02 p  {font-size: 30px}
                  
  .ryoukin02  {padding: 30px;
      margin: 50px 300px;
      background-color: #5CB53C;/*背景色*/
      box-shadow: 0 0 0 8px #5CB53C;/*背景色外側*/
      border: 5px dashed #34930C;/*線*/}
      
  .t-big02    {font-size: 60px}

  /* 決済方法 */


 .radiobox-all03 {margin: 0 150px;} 


  .radiobox05   {margin: 10px 0 0;
    padding: 10px;
    text-align: center;
    font-size: 24px;
    color: #5CB53C;
    }              
.radiobutton08 {display: none;}
.radiobutton08 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 30px;
}

.radiobutton08 + label    {cursor: pointer;}

.radiobutton08:checked + label {
background-color: #5CB53C;
color: #fff;

}

.radiobox06   {margin: 10px 0 0 0;
    padding: 10px;
    text-align: center;
    font-size: 24px;
    color: #5CB53C;
    }              
.radiobutton09 {display: none;}
.radiobutton09 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 40px;
}

.radiobutton09 + label    {cursor: pointer;}

.radiobutton09:checked + label {
background-color: #5CB53C;
color: #fff;

}



.radiobox07   {margin: 10px 0;
    padding: 10px;
    text-align: center;
    font-size: 24px;
    color: #5CB53C;
    }              
.radiobutton10 {display: none;}
.radiobutton10 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 60px;
}

.radiobutton10 + label    {cursor: pointer;}

.radiobutton10:checked + label {
background-color: #5CB53C;
color: #fff;

}
  }
            
/* ########################### 1340px以下 ##############################*/
@media (max-width: 1340px) {

 .radiobox-all03 {margin: 0 120px;} 

.radiobox   {font-size: 20px}
.radiobutton01 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 35px;
}
.radiobutton02 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 45px;
}
.radiobutton03 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 45px;
}

.radiobutton06 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 100px;
}
.radiobutton07 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 100px;
}
.radiobox01 {font-size: 21px}
.radiobox02 {font-size: 22px}
.radiobox03 {font-size: 22px}
.radiobox04 {font-size: 16px}

.btn02      {margin: 50px 150px;
            padding: 30px;
            border: 3px solid #34930C}
.btn02 a      {display: block;
                text-decoration: none;
                font-size: 30px;
                color: #5CB53C}
 .button {
  margin: 50px 0;
  display       : inline-block;
  font-size     : 30px;        /* 文字サイズ */
  text-align    : center;      /* 文字位置   */
  cursor        : pointer;     /* カーソル   */
  padding       : 50px 80px;   /* 余白       */
  background    : #5cb53c;     /* 背景色     */
  color         : #ffffff;     /* 文字色     */
  line-height   : 1em;         /* 1行の高さ  */
  transition    : .3s;         /* なめらか変化 */
  box-shadow    : 15px 15px #34930C;  /* 影の設定 */
  border        : 3px solid #34930C;    /* 枠の指定 */
}
.button:hover {
  box-shadow    : none;        /* カーソル時の影消去 */
  color         : #5cb53c;     /* 背景色     */
  background    : #ffffff;     /* 文字色     */
}
              

.menu a  {padding: 10px;
            font-size: 11px}
            

/* お問合せ */
.otoiawase  {margin: 0;
            padding: 100px;}
            
/* q-a */
.acbox{
  width: auto;
  font-size:0px; /* ラベルと開く部分を分離する時は数値を入れる */
  margin:40px 100px; /* ボックス全体の位置調整 */
}

/* 告知 */
.message p  {margin: 0;
  padding: 10px 0;
  color: #505050;
  font-size: 26px;
  font-weight: 500;}


.kokuchi    {margin: 0;
  padding: 80px;}

/* 決済方法 */
.radiobox05   {margin: 10px 0 0 0;
  padding: 10px;
  text-align: center;
  font-size: 24px;
  color: #5CB53C;
  }              
.radiobutton08 {display: none;}
.radiobutton08 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 30px;
}

.radiobutton08 + label    {cursor: pointer;}

.radiobutton08:checked + label {
background-color: #5CB53C;
color: #fff;

}

.radiobox06   {margin: 10px 0 0 0;
  padding: 10px;
  text-align: center;
  font-size: 24px;
  color: #5CB53C;
  }              
.radiobutton09 {display: none;}
.radiobutton09 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 40px;
}

.radiobutton09 + label    {cursor: pointer;}

.radiobutton09:checked + label {
background-color: #5CB53C;
color: #fff;

}


.radiobox07   {margin: 10px 0;
  padding: 10px;
  text-align: center;
  font-size: 24px;
  color: #5CB53C;
  }              
.radiobutton10 {display: none;}
.radiobutton10 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 45px;
}

.radiobutton10 + label    {cursor: pointer;}

.radiobutton10:checked + label {
background-color: #5CB53C;
color: #fff;

}

}

/* ########################### 1080px以下 ##############################*/
@media (max-width: 1080px) {

  .radiobox-all03 {margin: 0 50px;}

}
  



/* ########################### 920px以下 ##############################*/
@media (max-width: 920px) {



  .radiobutton12 + label {
    padding: 30px 35px;
  }

  .radiobutton04 + label {
    padding: 30px 35px;
  }

  .radiobutton05 + label {
    padding: 30px 15px;
  }

  .ryoukin02 p  {font-size: 30px}
                  
.ryoukin02  {padding: 30px;
      margin: 50px 160px;
      background-color: #5CB53C;/*背景色*/
      box-shadow: 0 0 0 8px #5CB53C;/*背景色外側*/
      border: 5px dashed #34930C;/*線*/}
      
  .t-big02    {font-size: 60px}

/* 決済方法 */
.radiobox-all03 {margin: 0 }

.radiobox05   {margin: 10px 0 0 0;
  padding: 10px;
  text-align: center;
  font-size: 20px;
  color: #5CB53C;
  }              
.radiobutton08 {display: none;}
.radiobutton08 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 30px;
}

.radiobutton08 + label    {cursor: pointer;}

.radiobutton08:checked + label {
background-color: #5CB53C;
color: #fff;

}

.radiobox06   {margin: 10px 0 0 0;
  padding: 10px;
  text-align: center;
  font-size: 20px;
  color: #5CB53C;
  }              
.radiobutton09 {display: none;}
.radiobutton09 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 40px;
}

.radiobutton09 + label    {cursor: pointer;}

.radiobutton09:checked + label {
background-color: #5CB53C;
color: #fff;

}



.radiobox07   {margin: 10px 0;
  padding: 10px;
  text-align: center;
  font-size: 20px;
  color: #5CB53C;
  }              
.radiobutton10 {display: none;}
.radiobutton10 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 55px;
}

.radiobutton10 + label    {cursor: pointer;}

.radiobutton10:checked + label {
background-color: #5CB53C;
color: #fff;

}


  
}

/* ########################### 840px以下 ##############################*/
@media (max-width: 840px) {
  
.ryoukin02 p  {font-size: 30px}
                  
.ryoukin02  {padding: 30px;
      margin: 50px 120px;
      background-color: #5CB53C;/*背景色*/
      box-shadow: 0 0 0 8px #5CB53C;/*背景色外側*/
      border: 5px dashed #34930C;/*線*/}
      
  .t-big02    {font-size: 60px}


/* 決済方法 */




.radiobox05   {margin: 10px 0 0 0;
  padding: 10px;
  text-align: center;
  font-size: 20px;
  color: #5CB53C;
  }              
.radiobutton08 {display: none;}
.radiobutton08 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 30px;
}

.radiobutton08 + label    {cursor: pointer;}

.radiobutton08:checked + label {
background-color: #5CB53C;
color: #fff;

}

.radiobox06   {margin: 10px 0 0 0;
  padding: 10px;
  text-align: center;
  font-size: 20px;
  color: #5CB53C;
  }              
.radiobutton09 {display: none;}
.radiobutton09 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 40px;
}

.radiobutton09 + label    {cursor: pointer;}

.radiobutton09:checked + label {
background-color: #5CB53C;
color: #fff;

}


.radiobox07   {margin: 10px 0;
  padding: 10px;
  text-align: center;
  font-size: 20px;
  color: #5CB53C;
  }              
.radiobutton10 {display: none;}
.radiobutton10 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 30px 45px;
}

.radiobutton10 + label    {cursor: pointer;}

.radiobutton10:checked + label {
background-color: #5CB53C;
color: #fff;

}  

}



/* ########################### 768px以下 ##############################*/
@media (max-width: 768px) {

.simu-header-pc { display: none !important; }
.simu-header-sp { display: block !important; }

.simu  {grid-column-start: left;
            grid-column-end: right;}
.simu   {margin: 30px 0}
.simu-message {font-size: 18px;}
.kikan-all  {display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            grid-row-gap: 20px}
.menu   {grid-template-columns: 1fr 1fr;}
.menu a  {padding: 10px;
            font-size: 10px;
            border-bottom: 1px}
            
.radiobox-all  {display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            grid-row-gap: 80px;}
            
.radiobox-all02  {display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            grid-row-gap: 100px}
            
.radiobox-all03  {display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            grid-row-gap: 40px}
            
.radiobox-all04  {display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            grid-row-gap: 100px}
            
.radiobox   {margin: 10px　0;
            padding: 0;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton {display: none;}
.radiobutton + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 80px;
}
.radiobox01   {margin: 10px　0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }  
.radiobutton01 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 70px;
}
.radiobutton02 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 80px;
}
.radiobutton03 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 80px;
}

.radiobutton12 + label {
  padding: 30px 65px;
}

.radiobutton04 {display: none;}
.radiobutton04 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 65px;
}

.radiobutton04 + label    {cursor: pointer;}

.radiobutton04:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}
.radiobox02   {margin: 10px　0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton05 {display: none;}
.radiobutton05 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 40px;
}

.radiobutton05 + label    {cursor: pointer;}

.radiobutton05:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}
.radiobox03   {margin: 10px　0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton06 {display: none;}
.radiobutton06 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 65px;
}

.radiobutton06 + label    {cursor: pointer;}

.radiobutton06:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}
.radiobox04   {margin: 10px 0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton07 {display: none;}
.radiobutton07 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 65px;
}

.radiobutton07 + label    {cursor: pointer;}

.radiobutton07:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobox05   {margin: 0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton08 {display: none;}
.radiobutton08 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 20px 65px;
}

.radiobutton08 + label    {cursor: pointer;}

.radiobutton08:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}

.radiobox06   {margin: 0;
            padding: 10px;
            text-align: center;
            font-size: 24px;
            color: #5CB53C;
            }              
.radiobutton09 {display: none;}
.radiobutton09 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 20px 75px;
}

.radiobutton09 + label    {cursor: pointer;}

.radiobutton09:checked + label {
  background-color: #5CB53C;
  color: #fff;
  
}



.radiobox07   {margin: 0;
  padding: 10px;
  text-align: center;
  font-size: 24px;
  color: #5CB53C;
  }              
.radiobutton10 {display: none;}
.radiobutton10 + label {
background-color: fff;
border: 3px solid #5CB53C;
padding: 20px 85px;
}

.radiobutton10 + label    {cursor: pointer;}

.radiobutton10:checked + label {
background-color: #5CB53C;
color: #fff;

}  

.radiobox-message02 p {margin: 30px 0 0 0;
  padding-left: 5px;
  font-size: 12px;
  text-align: center}

.radiobox-message04 p {margin: 30px 0 0 0;
            padding-left: 5px;
            font-size: 12px;
            text-align: center}

.radiobutton11 + label {
  background-color: fff;
  border: 3px solid #5CB53C;
  padding: 30px 75px;
}




.intro p    {font-size: 14px}

.t-strong   {font-size: 22px}
.t-big02    {font-size: 38px}
       
.q-a  {grid-column-start: left;
       grid-column-end: right;
       padding: 20px 0 0 0 ;}
       
.otoiawase  {grid-column-start: left;
       grid-column-end: right;
       padding: 20px 0 0 0 ;}
       
.otoiawase img  {width: 90%}

.otoiawase p    {font-size: 18px}

.copyright  {grid-column-start: left;
       grid-column-end: right;
       padding: 20px 0 0 0 ;}
       
/* 9つの補償 */
.hosyou {padding: 10px}

.hosyou-wrap {
            display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            grid-row-gap: 20px}
            
.hosyou-all    {margin: 5px;
                padding: 10px;}
                
.hosyou-box {margin: 0;
            padding: 10px;
            background-color: #fff;
            border-radius: 20px}
                
/* プラン */
.ryoukin-wrap {
            display: grid;
            grid-template-columns: 1fr;
            grid-template-rows: auto;
            grid-row-gap: 20px}
            
.ryoukin-box {
            padding: 10px;}
            
.tb01 {
    width: 100%;
  }
  table.tb01 th,
  table.tb01 td {
    display: block;
    width: 100%;
    border-bottom:none;
  }
  .tb01 tr:last-child{
    border-bottom: solid 1px #ccc;
  }
 
 /*Q&A*/
.acbox{margin: 10px 0}

.acbox label{font-size: 12px}

/* お申込みボタン */
.btn01  {text-align: center}
.btn-border {margin: 50px 0;
            padding: 0;
            }

a.btn-border {
    padding: 20px 60px;
  border: 2px solid #34930C;
  border-radius: 0;
  background: #5CB53C;
  -webkit-box-shadow: 6px 6px 0 #34930C;
  box-shadow: 6px 6px 0 #34930C;
  font-size: 20px
}

a.btn-border:hover {
  -webkit-box-shadow: -6px -6px 0 #34930C;
  box-shadow: -6px -6px 0 #34930C;
}

.btn02      {margin: 100px 40px;
            padding: 30px 40px;
            border: 3px solid #5CB53C}
.btn02 a      {display: block;
                text-decoration: none;
                font-size: 30px;
                color: #5CB53C}
.button {
  margin: 50px 0;
  display       : inline-block;
  font-size     : 18pt;        /* 文字サイズ */
  text-align    : center;      /* 文字位置   */
  cursor        : pointer;     /* カーソル   */
  padding       : 30px 50px;   /* 余白       */
  background    : #5cb53c;     /* 背景色     */
  color         : #ffffff;     /* 文字色     */
  line-height   : 1em;         /* 1行の高さ  */
  transition    : .3s;         /* なめらか変化 */
  box-shadow    : 10px 10px #34930C;  /* 影の設定 */
  border        : 3px solid #34930C;    /* 枠の指定 */
}
.button:hover {
  box-shadow    : none;        /* カーソル時の影消去 */
  color         : #5cb53c;     /* 背景色     */
  background    : #ffffff;     /* 文字色     */
}

/* 見出し */
.midashi01{margin:20px;
    padding: 20px 0;
    font-size: 28px;
    font-weight: 500}
    
.midashi02{margin: 20px;
    padding: 10px;
    font-size: 30px;
    font-weight: 1000}
.midashi04  {
            margin: 60px 0;
            padding: 10px;
            font-size: 30px;
            text-align: center;
            
}

/* グループ申込の注意点 */  
.group_message {
  margin: 1em 2em;
  background: #fff;
  border: #e54366 solid 2px;
}
.group_message .box-title {
  font-size: 20px;
  background: #e54366;
  padding: 16px;
  text-align: center;
  color: #FFF;
  font-weight: bold;
  letter-spacing: 0.5em;
}

.group_message_p  {padding: 10px;}
.group_message_p p{
  margin: 0;
  text-align: left;
  line-height: 1.5em;
  font-size: 16px;
  text-indent: -1em;
  padding-left: 1em;
  font-weight: bold;}

  /* お申込みボタン */
.button {
  margin: 50px 0;
  display       : inline-block;
  font-size     : 20pt;        /* 文字サイズ */
  text-align    : center;      /* 文字位置   */
  cursor        : pointer;     /* カーソル   */
  padding       : 50px 80px;   /* 余白       */
  background    : #5cb53c;     /* 背景色     */
  color         : #ffffff;     /* 文字色     */
  line-height   : 1em;         /* 1行の高さ  */
  transition    : .3s;         /* なめらか変化 */
  box-shadow    : 10px 10px #34930C;  /* 影の設定 */
  border        : 3px solid #34930C;    /* 枠の指定 */
}
.button:hover {
  box-shadow    : none;        /* カーソル時の影消去 */
  color         : #5cb53c;     /* 背景色     */
  background    : #ffffff;     /* 文字色     */
}

  /* 告知 */
  .message p  {margin: 0;
    padding: 10px 0;
    color: #505050;
    font-size: 26px;
    font-weight: 500;}
.kokuchi    {margin: 0;
  padding: 50px;}    

.ryoukin02 p  {font-size: 30px}
                  
.ryoukin02  {padding: 30px;
      margin: 50px 80px;
      background-color: #5CB53C;/*背景色*/
      box-shadow: 0 0 0 8px #5CB53C;/*背景色外側*/
      border: 5px dashed #34930C;/*線*/}
      
  .t-big02    {font-size: 60px}

}

/* ########################### 640px以下 ##############################*/
@media (max-width: 640px) {

.ryoukin02 p  {font-size: 30px}
                  
.ryoukin02  {padding: 30px;
      margin: 50px 50px;
      background-color: #5CB53C;/*背景色*/
      box-shadow: 0 0 0 8px #5CB53C;/*背景色外側*/
      border: 5px dashed #34930C;/*線*/}
      
  .t-big02    {font-size: 60px}

}

/* ########################### 500px以下 ##############################*/
@media (max-width: 500px) {

/* 見出し */
.midashi01{margin:20px 0;
  padding: 20px 0;
  font-size: 20px;
  font-weight: 500}
  
.midashi02{margin: 20px;
  padding: 10px;
  font-size: 30px;
  font-weight: 1000}
.midashi04  {
          margin: 60px 0;
          padding: 10px;
          font-size: 26px;
          text-align: center;}
/* グループ申込の注意点 */  
.group_message {
  margin: 1em;
}

/* お申込みボタン */
.button {
  margin: 50px 0;
  display       : inline-block;
  font-size     : 20pt;        /* 文字サイズ */
  text-align    : center;      /* 文字位置   */
  cursor        : pointer;     /* カーソル   */
  padding       : 50px 80px;   /* 余白       */
  background    : #5cb53c;     /* 背景色     */
  color         : #ffffff;     /* 文字色     */
  line-height   : 1em;         /* 1行の高さ  */
  transition    : .3s;         /* なめらか変化 */
  box-shadow    : 10px 10px #34930C;  /* 影の設定 */
  border        : 3px solid #34930C;    /* 枠の指定 */
}
.button:hover {
  box-shadow    : none;        /* カーソル時の影消去 */
  color         : #5cb53c;     /* 背景色     */
  background    : #ffffff;     /* 文字色     */
}

/* 告知 */
.message p  {margin: 0;
  padding: 10px 0;
  color: #505050;
  font-size: 26px;
  font-weight: 500;}
.kokuchi    {margin: 0;
  padding: 20px;}

.ryoukin02 p  {font-size: 30px}
                  
.ryoukin02  {padding: 30px;
      margin: 50px 30px;
      background-color: #5CB53C;/*背景色*/
      box-shadow: 0 0 0 8px #5CB53C;/*背景色外側*/
      border: 5px dashed #34930C;/*線*/}
      
  .t-big02    {font-size: 60px}


}          

/* ########################### 330px以下 ##############################*/
@media (max-width: 330px) {

.radiobutton08 + label {
            background-color: fff;
            border: 3px solid #5CB53C;
            padding: 30px 45px;
          } 
.radiobutton09 + label {
            background-color: fff;
            border: 3px solid #5CB53C;
            padding: 30px 55px;
          } 
.radiobutton10 + label {
            background-color: fff;
            border: 3px solid #5CB53C;
            padding: 30px 80px;
          } 
.radiobutton11 + label {
            background-color: fff;
            border: 3px solid #5CB53C;
            padding: 30px 55px;
          } 
.radiobutton01 + label {
            background-color: fff;
            border: 3px solid #5CB53C;
            padding: 30px 45px;
          } 
.radiobutton02 + label {
            background-color: fff;
            border: 3px solid #5CB53C;
            padding: 30px 55px;
          } 
.radiobutton03 + label {
            background-color: fff;
            border: 3px solid #5CB53C;
            padding: 30px 55px;
          } 
.radiobutton12 + label {
            padding: 30px 45px;

          }
.radiobutton04 + label {
            background-color: fff;
            border: 3px solid #5CB53C;
            padding: 30px 45px;
          } 
.radiobutton05 + label {
            background-color: fff;
            border: 3px solid #5CB53C;
            padding: 30px 20px;
          }
.btn02  {margin: 60px 5px;}          
.btn02 a  {margin: 0;
          padding: 0;
          font-size: 20px;}

.ryoukin02  {padding: 50px 20px;
    margin: 10px;}
.button  {padding: 50px 30px;}

/* グループ申込の注意点 */  
.group_message {
  margin: 1em;
  background: #fff;
  border: #e54366 solid 2px;
}
.group_message .box-title {
  font-size: 20px;
  background: #e54366;
  padding: 16px;
  text-align: center;
  color: #FFF;
  font-weight: bold;
  letter-spacing: 0.5em;
}

.group_message_p  {padding: 10px;}
.group_message_p p{
  margin: 0;
  text-align: left;
  line-height: 1.5em;
  font-size: 16px;
  text-indent: -1em;
  padding-left: 1em;
  font-weight: bold;}

}






/* ### IE11以外 ### */
@supports not (display: grid){

html    {background-color: #fff;}

body    {max-width: 1180px;
        margin: 0 auto;
        padding: 10px 20px;
        background-color: #ECF4E0}
        


}


/*### IE11用 ###*/
@media all and (-ms-high-contrast: none), not all and (-ms-high-contrast: none){

html    {background-color: #f7f7f7;}

body    {max-width: 1180px;
        margin: 0 auto;
        padding: 0;
        background-color: #ECF4E0}


.copyright  {background-color: #5CB53C;
            margin: 0;
            padding: 20px}


}