@charset "euc-jp";
/* CSS Document */

@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400..900&display=swap');
*{margin:0px; padding:0px;}
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:bottom;
background:transparent;
font-weight:normal;}

body {line-height:1;}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {display:block;}

ul {list-style:none;}

input, select {vertical-align:middle;}

div {display: block;}

h1, h2, h3, h4, h5, h6, p, address{
	display: block;
	font-size: 100%;
	font-weight: normal;
	font-style: normal;}

img {vertical-align: bottom; border: none;}

table{border-collapse:collapse; width:100%;}

a {outline:none;  text-decoration:none; word-break: break-all;}
a:focus {outline:none;}
*:focus {
  outline: none;
  border: none;
}

sup{
  font-size: 0.6em;
  vertical-align:middle;
}
html{
    font-size: 62.5%;
}
body {
	font-family: 'Noto Sans JP', "メイリオ", Meiryo, sans-serif;
	font-size:1.6rem;/* 16px*/
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
  color:#000;
  position: relative;
  }
  
.font_roboto{font-family: "Roboto", sans-serif;}

a,a:visited,a:link,a:active{
  color:#000 !important;
  text-decoration:none !important;}
  
a img{transition: 0.5s all;}
.bold{font-weight: bold !important;}
  
img{
	max-width: 100%;
	height: auto;
}

.red{
  color: #e53619;
}
.green{
  color: #04a569;
}
.small{
  font-size: 1.4rem;
}
.Center{
  text-align: center;
}
.Right{
  text-align: right;
}
.Contents{
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}
.Container{
  overflow: hidden;
  background: #e6f1ef;}

section + section{
  margin-top: 100px;
}
article{
  margin-bottom: 100px;
}
article section + section{
  margin-top: 40px;
}

.m_b_10{margin-bottom: 10px;}
.m_b_20{margin-bottom: 20px;}
.m_b_30{margin-bottom: 30px;}
.m_b_40{margin-bottom: 40px;}
.m_b_50{margin-bottom: 50px;}
.m_b_60{margin-bottom: 60px;}

.dot_list li{
  padding-left: 1.5em;
}
.dot_list li:before{
  content: '●';
  color: #04a569;
  font-size: 1rem;
  vertical-align: 2px;
  margin-left: -1.5em;
  margin-right: 0.5em;
}
.pay_list{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  background: #FFF;
}
.pay_list li{
  margin-right: 5px;
}

@media screen and (min-width:768px){
  .pc_hidden{display: none;}
  a:hover{
  border: none !important;
  text-decoration: none !important;
	opacity:0.7 !important;
	transition: 0.5s all;
  color:#000;}}
@media screen and (max-width:767px) {
  .sp_hidden{display: none;}
  .small{
    font-size: 1.2rem;
  }
  body{font-size: 1.4rem;}
  section + section{margin-top: 50px;}}

/*Hack */
.clearfix:after{
    content: ""; 
    display: block; 
    clear: both;}
.clearfix {zoom:1;}


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

/*header*/
.header_info{
  width: 100%;
  padding: 9px;
  box-sizing: border-box;
  background:#e53619;
  color: #FFF;
  font-size: 1.4rem;
  text-align: center;
  height: 40px;
}
.header_info_icon{
  width: 75px;
  vertical-align: -5px;
  margin-right: 5px;
}
.header_info a{
  font-weight: 700;
  color: #FFF !important;
  position: relative;
  padding-right: 20px;
  display: inline-block;
}
.header_info a:after{
  content: '';
  display: block;
  position: absolute;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/arrow_wh.png") no-repeat 0 0;
  background-size: 100%;
  width: 15px;
  height: 14px;
  right: 0;
  top: 4px;
}
header{
  position: absolute;
  width: 100%;
  background: #FFF;
  z-index: 97; 
}
/*header固定*/
    header.is-fixed{
      position: fixed;
      top: 0;
      left: 0;
      box-shadow: 0px 0px 8px -5px rgba(0,0,0,0.8);
/*
      background: rgba(255,255,255,0.5);
      backdrop-filter: blur(10px);
      -webkit-backdrop-filter: blur(10px);
*/
      z-index: 99;
      animation: DownAnime 0.5s forwards;
    } 
    @keyframes DownAnime{
      from {
        opacity: 0;
        transform: translateY(-100px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }  

.shop_logo{
  width: 255px;
  position: absolute;
  top: 25px;
  left: 30px;
}
.shop_logo a{display: block;}

.icon_cart{
  width: 60px;
  height: 60px;
  position: absolute;
  top: 25px;
  right: 30px;
  }
.icon_cart a{
  width: 100%;
  height: 100%;
  background:#04a569;
  border-radius: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  }
  
.icon_cart .cart_count{
  position: absolute;
  width: 30px;
  height: 30px;
  border-radius: 15px;
  bottom: -10px;
  right: -10px;
  background: #e53619;
  color: #FFF;
  display: flex;
  align-items: center;
  justify-content: center;
}  


.Membernav img{
  width: 30px;
}
.Search_inner{
  width: 180px;
  position: relative;
  }
.search_area{
  position: absolute;
  top: 25px;
  right: 80px;
}  
input.Search_txt{
  border: none;
  height: 44px;
  box-sizing: border-box;
  width: 100%;
  padding: 5px 5px 5px 35px;
  border-radius: 22px;
  color: #000;
  background: #e6f1ef;
}
.search_icon{
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 10px;
  background: none;
  border: none;
}
.nav_sns{
  margin: 0 15px;
}
.nav_sns img{
  width: 28px;
}
img.sub_nav_icon {
  width: 40px;
  margin-right: 5px;
  vertical-align: -10px;
}
.sub_nav_ttl{
  font-weight: 900;
}
.sub_nav_planemenu_ttl{
  font-weight: 900;
  
}
.sub_nav_ssttl{
  color: #04a569;
  font-weight: 700;
  font-size: 1.4rem;
  vertical-align: middle;
  margin-left: 10px;
}


@media screen and (min-width: 1181px) {
    .Wrapper{
      margin-top: 190px;
    } 
    body.overlay:after{
      content: '';
      width: 100vw;
      height: 100vh;
      display: block;
      background: rgba(0, 0, 0, 0.5);
      position: fixed;
      top: 0;
      left: 0;
      z-index: 10;
    }
    header{
      height: 190px;
      position: absolute;
      top: 40px;
      left: 0;
    }
      
      header.is-fixed{
        height: 110px;
      }
      header.is-fixed .shop_logo{
        width: 200px;
        top: 10px;
        left: 30px;
      }
    
    .link_head{padding-top: 110px; margin-top: -110px;}
     
     .search_area_close,
     .search_btn{
       display: none;
     }
     .search_area{
       margin-right: 20px;
     }
      header.is-fixed .search_area{
        top: 15px;}
      header.is-fixed input.Search_txt{
        height: 35px;}
      
    .nav-button,
    .sp_logo{
       display: none;
     }
    
    
    
    ul.Gnav{
      width: 100%;
      display: flex;
      position: relative;
      justify-content: center;
      margin-top: 120px;
    }
     header.is-fixed ul.Gnav{
       margin-top: 75px;}
   
    .nav_parent{
      font-size: 1.8rem;
      margin: 0 20px;
      font-weight: 900;
    }
      header.is-fixed .nav_parent{
        font-size: 1.6rem;}
    
    .nav_parent > a:before,
    .nav_parent > span.trigger:before{
      content: '';
      width: 0;
      height: 3px;
      background: #FFF;
      position: absolute;
      bottom: 0;
      transition: 0.5s;
      left: 0;
    }  
    .nav_parent > a:hover{
      opacity: 1 !important; 
    }
    
    .nav_parent > a,
    .nav_parent > span.trigger{
      display: block;
      font-weight: 900;
      position: relative;
      padding-bottom: 8px;
      cursor: pointer;
    }
    .nav_parent > a:hover:before,
    .nav_parent > span.trigger:hover:before{
      width: 100%;
      height: 3px;
      background: #f6a90e;
    }
    
    .nav_parent > span.trigger{
      padding-right: 15px;
      
    }
    .nav_parent > span.trigger:after{
      display: block;
      content: '';
      position: absolute;
      top: 12px;
      right: 0;
      width: 0;
      height: 0;
      border-style: solid;
      border-right: 3px solid transparent;
      border-left: 3px solid transparent;
      border-top: 6px solid #000000;
      border-bottom: 0;
    }
    
    .sub_nav{
      position: absolute;
      top: 35px;
      left:0;
      width: 100vw;
      box-sizing: border-box;
      z-index: 100;
      background: #FFF;
      display: none;
      padding: 20px 0;
     }
     .sub_nav.active{display: block !important; z-index: 0;}
     
     .sub_nav_inner{
       max-width: 1100px;
       margin: 0 auto;
       position: relative;
       
     }
     
     .sub_nav_inner .sub_nav{height: 100%;}
     
     .p-sub_nav .sub_nav_inner:after{
       content: '';
       display: block;
       width: 1px;
       height: 100%;
       position: absolute;
       top: 0;
       left: 32%;
       background: #CCC;
     }
     .sub_nav_inner .trigger{
       width: 30%;
       box-sizing: border-box;
       display: block;
       position: relative;
       cursor: pointer;
       border-radius: 20px;
       padding: 15px 10px
     }
     
     .sub_nav_inner .trigger:hover,
     .sub_nav_inner .trigger.pc_open{
       background: #e6f1ef;
       transition: 0.3s;
     }
     
     .sub_nav_inner p.sub_nav_ttl{
       padding: 15px 10px}
     
     .sub_nav_inner .nav_child-1 .trigger{
       padding: 10px;
     }
     
      .sub_nav_inner .trigger:after{
        content: '';
        display: block;
        position: absolute;
        top:50%;
        transform: translateY(-50%);
        background: url("https://file001.shop-pro.jp/PA01514/654/common/images/arrow_bl.png") no-repeat 0 0;
        background-size: 100%;
        right: 10px;
        width: 16px;
        height: 15px;
       
      }
      
      .nav_child-1 .sub_nav_sttl.trigger{
         margin-left: 45px;
         width: calc(30% - 45px);
         font-weight: 900;
      }
     
     .nav_child-1 .sub_nav_ssttl{
       display: block;
       margin: 0;
       
     }
     
    .sub_nav_inner .sub_nav{
      width: 67%;
      box-sizing: border-box;
      left: calc(32% + 1px);
      padding-left: 5%;
      top: 0;
      
    }
    
    .sub_nav_inner .sub_nav ul,
    .sub_nav_planemenu{
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
    }
    
    .sub_nav_inner .sub_nav ul:after{
      content: '';
      display: block;
      width: 31%;
    }
    
    .sub_nav_inner .sub_nav ul li,
    .sub_nav_planemenu li{
      width: 31%;
      border-bottom: 1px solid #CCC;
      box-sizing: border-box;
      font-size: 1.4rem;
    }
    
    .sub_nav_inner .sub_nav ul li a,
    .sub_nav_planemenu li a{
      padding: 15px 10px;
      display: flex;
      box-sizing: border-box;
      height: 100%;
      align-items: center;
    }
    
    .sub_nav_dropttl{
      font-weight: 900;
      margin-bottom: 20px;
    }
    
    .nav_child-1 .sub_nav_dropttl .sub_nav_ssttl{
      display: inline;
      margin-left: 10px;
    }
    .sub_nav_guide{
      display: flex;
      justify-content: space-between;
    }
    .sub_nav_guide_l{
      width: 70%;
      padding-top: 20px;
      padding-right: 2%;
      box-sizing: border-box;
    }
    .sub_nav_guide_r{
      width: 30%;
      padding-top: 20px;
      box-sizing: border-box;
      padding-left: 2%;
      border-left: 1px solid #CCC;
      font-size: 1.4rem;
    }
    
      header.is-fixed .nav_sns img{
        width: 24px;
      }
    
    .Gnav2{
      display: flex;
      justify-content:flex-end;
      align-items: center;
      position: absolute;
      top: 25px;
      right: 280px;
    }
      header.is-fixed .Gnav2{
        top: 20px;
      }
    
    .Snav{
        display: flex;
      }
    .Snav li{
        margin: 0 10px;
      }
      header.is-fixed .Snav li{font-size: 1.4rem;}
      
      .Membernav{
        display: flex;
        padding: 0 10px;
/*        border-left: 1px solid #CCC;*/
        margin-left: 10px;
      }
      .Membernav li{
        margin: 0 10px;
        text-align: center;
      }
      
     .Membernav span{
       display: block;
       font-size: 1.2rem;
       letter-spacing: -0.05em;
     }
       header.is-fixed .Membernav img{
         width: 25px;
       }
       header.is-fixed .Membernav span{
         display: none;
       }
    
    
  }

@media screen and (max-width: 1180px){
    header{
      height: 55px;
    }
    .link_head{padding-top: 55px; margin-top: -55px;}
    .Wrapper{
      margin-top: 65px;
    }
    
    .sp_logo{
      text-align: center;
      margin-bottom: 30px;
    }  
    .sp_logo img{
      width: 200px;
    }
    .shop_logo{
      top: 8px;
      left: 8px;
      width: 160px;
    }
    
    .sp_logo{
      text-align: center;
    }
    .sp_logo img{
      width: 50vw;
      max-width: 250px;
    }
    .icon_cart{
      right: 56px;
      top: 6px;
      width: 44px;
      height: 44px;
    }
    .icon_cart img{
      width: 22px;
    }
    .icon_cart .cart_count{
      width: 15px;
      height: 15px;
      font-size: 1.1rem;
      bottom: 0px;
      right: -2px;
    }
    .search_btn{
      position: absolute;
      width: 44px;
      height: 44px;
      background: #e6f1ef;
      border-radius: 22px;
      top: 6px;
      right: 105px;
      display: flex;
      align-content: center;
      justify-content: center;
    }
    .search_area{
      display: none;
      background: #FFF;
      width: 100%;
      left: 0;
      top: 55px;
      box-sizing: border-box;
      padding: 10px;
    }
    .Search_inner{
      width: 100%;
    }
    input.Search_txt{
      width: 90%;
    }
    .search_area_close{
      position: absolute;
      top: 12px;
      right: 10px;
      font-size: 2.4rem;
      font-weight: 900;
      width: 10%;
      text-align: center;
    }
    
     /*hamburger*/
	  .nav-button,
	  .nav-button span {
      display: inline-block;
      transition: all 0.4s;
      box-sizing: border-box;}

	  .nav-button {
	  	display: block;
      cursor: pointer;
      z-index: 99999 !important;
      position: absolute;
      top: 15px;
      right:15px;
      width: 30px;
      height: 30px;
      box-sizing: border-box;
      }
       

	  .nav-button span{
      position: absolute;
      left: 0;
      width: 30px;
      height: 1px;
      background-color: #000;}
    
    .nav-button:hover span{
      transition: 0.3s;}

	  .nav-button span:nth-of-type(1) {top: 0;}
	  .nav-button span:nth-of-type(2) {top: 12px;}
	  .nav-button span:nth-of-type(3) {top: 24px;}
    
    .Gnav{margin-bottom: 40px;}
    .Nav_wrapper {
      position: fixed;
      left: 0;
      top: 0;
      opacity: 0;
      visibility: hidden;
      overflow: auto;
      z-index: 9999;
      background:#FFF;
      width: 100%;
      height: 100vh !important;
      padding: 30px 20px 0 20px;
      box-sizing: border-box;
      }
    
	  .Nav_wrapper.close_Nav{opacity: 0;}
	  .Nav_wrapper.open {opacity:1; visibility: visible;}
    
    /*closeボタン*/
    .nav-button.active{
      position: fixed;
      top: 10px;
      right: 10px;
    }
    
	  .nav-button.active span:nth-of-type(1) {
		  transform: translateY(12px) rotate(-45deg);
	  }

	  .nav-button.active span:nth-of-type(2) {opacity: 0;}

	  .nav-button.active span:nth-of-type(3) {
		  transform: translateY(-12px) rotate(45deg);
	  }
    
    .nav-button-txt{
      font-size: 1.4rem;
      font-family: "Roboto", sans-serif;
      font-weight: 900;
      text-align: center;
      position: absolute;
      width: 100%;
      bottom: 0;
      left: 0;
    }
    
  .Snav{
    display: flex;
    justify-content: center;
    font-size: 1.6rem;
    margin-bottom: 40px;
  }
  .Snav li{
    margin: 0 10px;
    font-weight: 700;
  }
  .Membernav{
    display: flex;
    justify-content: center;
    margin-bottom: 20px;
  }
  .Membernav li{
    text-align: center;
    margin: 0 15px;
  }
  .Membernav li span{
    display: block;
    font-size: 1rem;
  }
  
  .sub_nav{
    display: none;
  }
  
  .Gnav{
    text-align: center;
    border-top: 2px solid #CCC;
  }
  .Gnav li.nav_parent{
    border-bottom: 2px solid #CCC;
    
  }
  
  .Gnav li.nav_parent > a,
  .Gnav li.nav_parent > span.trigger{
    display: block;
    font-size: 1.8rem;
    font-weight: 900;
    padding: 15px 10px;
  }
  .sub_nav_inner{
    background: #e6f1ef;
    padding: 0 10px;
  }
  img.sub_nav_icon {width: 34px;}
  .sub_nav_dropttl{display: none;}
  span.trigger{
    position: relative;
    padding-right: 30px;
    display: block;
  }
  span.trigger:after{
    content: '';
    display: block;
    background: url("https://file001.shop-pro.jp/PA01514/654/common/images/acc_open.png") no-repeat 0 0;
    background-size: 100%;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
  }
  
  span.trigger.open:after,
  span.trigger.default_open:after{
    background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/acc_close.png");
  }
  .sub_nav_inner span.trigger.sub_nav_ttl,
  .sub_nav_inner p.sub_nav_ttl{
    padding: 12px 0;
    display: flex;
    font-size: 1.6rem;
    font-weight: 900;
    align-items: center;
  }
  
  .sub_nav_inner span.trigger.sub_nav_sttl{
    font-size: 1.4rem;
    font-weight: 700;
    padding: 10px 0 10px 10px;
  }
  .sub_nav_inner span.trigger:after{
    width: 12px;
    height: 12px;
    right: 5px;
  }
  .sub_nav_inner ul li.nav_child + li.nav_child{
    border-top: 1px solid #CCC;
  }
  
  .nav_parent{
    text-align: left;
  }
  
  .nav_child .sub_nav{
    padding: 10px 2px;
  }
  .nav_child .sub_nav li{
    display: inline-block;
    font-size: 1.2rem;
    margin: 5px 5px 5px 0;
  }
  .nav_child .sub_nav li a{
    display: flex;
    background: #FFF;
    border-radius: 20px;
    padding: 5px 10px ;
    line-height: 1;
    font-size: 1.2rem;
    align-items: center;
  }
  
  .nav_child .sub_nav li img.Ctg_thm{
    width: 20px;
    height: 20px;
    margin-right: 5px;
  }
  
  .sub_nav_planemenu li{
    border-bottom: 1px solid #CCC;
  }
  .sub_nav_planemenu li a{
    display: block;
    padding: 12px;
    font-weight: 900;
  }
  .sub_nav_guide_r{
    padding: 10px 5px;
  }
  .pay_list{
    background: #FFF;
  }
  .nav_sns{
    display: inline-block;
    margin-top: 30px;
    
  }
    
}
@media screen and (max-width: 790px){
    .header_info{
      line-height: 1.2;
      text-align:center;
      font-size: 1.1rem;
      padding: 8px;}
    
    .header_info p{
      display: flex;
      justify-content: center;
      align-items: flex-start;
    }
    
    .header_info_icon{
      width: 40px;
      vertical-align: -20px;
    }
}
/*column_2col*/
.column_2col{
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px 200px 20px;
}
  @media screen and (min-width: 1025px){
    .column_2col{
      display: flex;
      justify-content: space-between;
    }
    .Side{
      width: 240px;
      z-index: 10;
      margin-right: 50px;
    }
    .Main{
      width: calc(100% - 290px);
    }
  }  
  @media screen and (max-width: 1024px){
    .Side{
      display: none;}
  }
  
  @media screen and (max-width: 767px){
    .column_2col{padding-bottom: 100px;}}
  
.Side_Ctg_menuBox{
  background: #FFF;
  border-radius: 20px;
  padding: 15px 20px;
  margin-bottom: 20px;
}
.sub_nav_ttl{
  display: flex;
  align-items: center;
}
.Side_Ctg_icon{
  width: 40px;
  margin-right: 5px;
}
.ac_trigger{
  padding: 20px 0;
  position: relative;
  font-weight: 900;
}
  .Side_Ctg_purpose .ac_trigger{
    border-top: 2px solid #CCC;}
  
  .Side_Ctg_purpose .sub_nav_ttl{
    padding : 10px 0 20px 0;
  }
  

.ac_trigger:after{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/acc_open.png") no-repeat 0 0;
  background-size: 100%;
  width: 20px;
  height: 20px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
.ac_trigger.active:after{
  background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/acc_close.png")
}

.ac_trigger .Side_Ctg_sttl{
  color: #04a569;
  display: block;
  font-weight: 700;
  font-size: 1.4rem;
  margin-top: 5px;
}

.Side_Ctg_menu dd{
  border-top: 2px solid #CCC;
  display: none;
}


ul.Side_Ctg_item li + li{
  border-top: 1px solid #CCC;
}
ul.Side_Ctg_item li{
  font-size: 1.4rem;
}

ul.Side_Ctg_item li a{
  padding: 10px 0 10px 5px;
  display: flex;
  font-weight: 500;
  align-items: center;
}
ul.Side_Ctg_item li a:hover{
  color: #04a569 !important;
  opacity: 1 !important;
}
img.Ctg_thm{
  width: 44px;
  height: 44px;
  margin-right: 10px;
  border-radius: 22px;
}




/*kv*/
.float_bnr{
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 160px;
  z-index: 20;
}
button.float_bnr-close{
  position: absolute;
  top: 0px;
  right: 0px;
  width: 30px;
  height: 30px;
  border: none;
  background: none;
  z-index: 10;
}
button.float_bnr-close:hover{
  font-size: 1.8rem ;
}
.kv{
  padding-bottom: 120px;
  position: relative;
}
.kv:before{
  content: '';
  display: block;
  width: 100%;
  height: 45%;
  background: #E7EEEF;
  position: absolute;
  bottom: 0;
  left: 0;}
  
.slick_kv .slick-slide{
    margin-right: 20px!important;
    margin-left: 20px!important;
    border-radius: 40px;
    overflow: hidden;
}
.slick_kv .arrow_prev,
.slick_kv .arrow_next{
  width: 70px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
.slick_kv .arrow_prev{
  left: 19%;
}
.slick_kv .arrow_next{
  right: 19%;
}
.slick_kv .slick-dots{
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  margin: auto;
}
.slick_kv .slick-dots{
  display: flex;
  justify-content: center;
}
.slick_kv .slick-dots li{
  margin: 0 5px;
 }
.slick_kv .slick-dots button{
  border: none;
  width: 50px;
  height: 4px;
  border-radius: 4px;
  background: #FFF;
  text-indent: -99999px;
  overflow: hidden;
}
.slick_kv .slick-dots li.slick-active button{
  background: #04a569;
  }

  @media screen and (max-width: 1180px){
    .kv{
      padding-bottom: 50px;
    }
    .slick_kv .slick-slide{
      margin-right: 5px!important;
      margin-left: 5px!important;
      border-radius: 10px;}
      
    .slick_kv .slick-dots{
      bottom: -30px;
    }  
    .slick_kv .slick-dots button{
      width: 30px;}
    .slick_kv .arrow_prev,
    .slick_kv .arrow_next{
      width: 35px;
    }
    .slick_kv .arrow_prev{
      left: 5%;
    }
    .slick_kv .arrow_next{
      right: 5%;
    }  
  }

  @media screen and (max-width: 767px){
    .float_bnr{
      bottom: 10px;
      right: 10px;
      width: 120px;
    }
  }
  
/*Recommend*/
.ttl_circle{
  text-align: center;
}
.ttl_circle img{
  width: 200px;
  margin-top: -60px;
}
.Recommend{
  background: #FFF;
  border-radius: 20px;
  margin-top: 60px;
  margin-bottom: 120px;
  padding: 0 40px 40px 40px;
}
.Rec_bnr ul{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.Rec_bnr ul li{
  width: 31.37%;
  margin-bottom: 20px;
}
  @media screen and (max-width: 1024px){
    .Recommend{padding: 0 20px;}
  }
  @media screen and (max-width: 767px){
    .Rec_bnr ul li{width: 100%; }
    .Recommend{
      border-radius: 10px;
      margin-top: 45px;
      margin-bottom: 60px;
      
    }
  }

h2.sttl{
  font-size: 3.6rem;
  text-align: center;
  font-weight: 900;
  margin-bottom: 30px;
}
  @media screen and (max-width: 1024px){
    h2.sttl{
      font-size: 3rem;}
  }
  @media screen and (max-width: 767px){
    .ttl_circle img{
      width: 150px;
      margin-top: -45px;
    }
    
    h2.sttl{
      font-size: 2.4rem;}
  }

/*Top_about*/
.Top_about{
  text-align: center;
  position: relative;
   max-width: 1400px;
  margin: 0 auto 100px auto;
}

.Top_about_img1{
  position: absolute;
  width: 36%;
  left: 0;
  top: -5%;
  max-width: 503px;
}
.Top_about_img2{
  position: absolute;
  width: 28%;
  right: 4%;
  top: -12%;
  max-width: 398px;
}

.Top_about h2{
  font-size: 3.6rem;
  font-weight: 900;
  display: inline-block;
  color: #04a569;
  border-bottom: 4px solid #04a569;
  margin-bottom: 50px;
}
.Top_about_txt{
  font-size: 1.8rem;
  font-weight: 900;
  line-height: 2.5;
  margin-bottom: 40px;
}
  @media screen and (max-width: 1350px){
    .Top_about_img1{
      width: 30%;
      top: 10%;
      left: 10px;
    }
    .Top_about_img2{
      width: 24%;
      top: 10%;
      right: 10px;
    }
  }
  @media screen and (max-width: 1024px){
    .Top_about h2{
      font-size: 3rem;}
      
    .Top_about_img1{
      width: 26%;
      top: 50%;
      left: 5px;
    }  
  }
  @media screen and (max-width: 767px){
    .Top_about_img{
      display: flex;
      justify-content: space-between;
      padding: 0 5px;
      margin-bottom: 5px;
    }
    .Top_about_img1,
    .Top_about_img2{
      position: static;
    }
    .Top_about_img1{
      width: 50%;
    }
    .Top_about_img2{
      width: 40%;
    }
    
    .Top_about h2{
      margin-bottom: 10px;
      font-size: 2.4rem;}
    .Top_about_txt{
      line-height: 1.8;
      margin-bottom: 15px;
      font-size: 1.6rem;}  
  }
/*btn*/
.btn_ye{
  display: inline-block;
  width: 340px;
}
.btn_ye a{
  display: block;
  width: 100%;
  background: #f6a90e;
  color: #FFF !important;
  font-weight: 900;
  line-height: 1;
  padding: 25px 10px;
  border-radius: 100px;
  box-sizing: border-box;
  position: relative;
  text-align: center;
 }
.btn_ye a:after{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/arrow_wh.png") no-repeat 0 0;
  width: 22px;
  height: 20px;
  background-size: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
  transition: 0.3s;
}
.btn_ye a:hover{
  opacity: 1 !important;
  background: #04a569;
}
.btn_ye a:hover:after{
  right: 15px;
  transition: 0.3s;
}  

.btn_arrow{
  display: inline-block;
}
.btn_arrow a{
  display: block;
  padding-right: 40px;
  position: relative;
}
.btn_arrow a:after{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/arrow.png") no-repeat 0 0;
  background-size: 100%;
  width: 30px;
  height: 30px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

  @media screen and (min-width: 768px){
    .btn_ye + .btn_ye{margin-left: 10px;}
    
  }
  @media screen and (max-width: 767px){
    .btn_ye{
      width: 90%;}
    
    .btn_ye a{font-size: 1.6rem;}
  }
/*ttl_line*/
.ttl_line{
  margin-bottom: 30px;
}
  
.ttl_line h2{
  font-size: 3.6rem;
  font-weight: 900;
  margin-bottom: 5px;
} 
.ttl_line .ttl_line_en{
  position: relative;
  padding-left: 65px;
  color: #04a569;
  font-family: "Roboto", sans-serif;
}
.ttl_line .ttl_line_en:before{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/ttl_line.png") no-repeat 0 0;
  width: 56px;
  height: 6px;
  background-size: 100%;
  position: absolute;
  top: 8px;
  left: 0;
}

.ttl_line_center{
  text-align: center;
  position: relative;
  height: 148px;
  padding-top: 30px;
  margin-bottom: 20px;
}
.ttl_line_center_en {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  z-index: 0;
}
.ttl_line_center_en img{
  height: 148px;
  width: auto;
}

.ttl_line_center h2{
  position: relative;
  font-size: 3.6rem;
  display: inline-block;
  font-weight: 900;
  padding-bottom: 15px;}
  
.ttl_line_center h2:after{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/ttl_line.png") no-repeat 0 0;
  width: 56px;
  height: 6px;
  background-size: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
}

  @media screen and (max-width: 1024px){
    .ttl_line h2,
    .ttl_line_center h2{
      font-size: 3rem;}
  }
  @media screen and (max-width: 767px){
    .ttl_line{
      margin-bottom: 20px;
    }
    .ttl_line h2,
    .ttl_line_center h2{
      font-size: 2.4rem;}
    .ttl_line .ttl_line_en{
      padding-left: 50px;
    }  
    .ttl_line .ttl_line_en:before{
      width: 44px;
      height: 5px;}
      
    .ttl_line_center{
      height: 80px;
    }  
    .ttl_line_center_en{
      padding-top: 10px;
    }  
    .ttl_line_center_en img{
      height: 80px;
    }  
  }
/*Topics*/
.Topics_list table{
  border-top: 1px solid #CCC;
}
.Topics_list table td,
.Topics_list table th{
  border-bottom: 1px solid #CCC;
  padding: 20px;
  text-align: left;
  vertical-align: top !important;
}
.Topics_list table td a{
  text-decoration: underline !important;
}
.Topics_list table th{
  color: #04a569;
  vertical-align: middle;
  font-family: "Roboto", sans-serif;
  margin-right: 20px;
  font-size: 1.8rem;
}
.wave{
  margin: 100px 0;
}
.wave2{
  margin: 50px 0 0 0;
}
  
  @media screen and (min-width: 768px){
    .Topics{
      display: flex;
      justify-content: space-between;
    }
    .Topics_ttl{
      white-space: nowrap;
      margin-right: 40px;
    }
    .Topics_list{
      flex: 1;
    }
     
  } 
  @media screen and (max-width: 767px){
    .Topics_list table td,
    .Topics_list table th{
      display: block;
      padding: 10px 0;
    }
    .Topics_list table th{
      border-bottom: none;
      padding-bottom: 0;}
  }
  
.pickup_bnr ul{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}  
.pickup_bnr ul li{
  width: 48%;
  margin-bottom: 40px;
}
.pickup_bnr ul li img{
  border-radius: 20px;
}

  @media screen and (max-width: 767px){
    .pickup_bnr ul li{
      width: 100%;
      margin-bottom: 10px;}
      }

/*.p_list////////////////////*/
.p_list_img{
  border-radius: 20px;
  background: #FFF;
  width: 100%;
  height: 0;
  padding-top: 100%;
  position: relative;
}
.p_list_img img{
  max-height: 90%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%)
}  
  
.p_list_name{
  font-weight: 700;
  font-size: 1.4rem;
  margin: 10px 0;
}
.p_list_nomal_price{
  font-size: 1.2rem;
}
.p_list_price{
  font-size: 1.2rem;
}
.p_list_price span{
  font-family: "Roboto", sans-serif;
  font-size: 1.8rem;
  vertical-align: middle;
  color: #04a569;
  font-weight: 500;
}
.p_list_sold{
  background: #666;
  color: #FFF;
  margin-top: 5px;
  text-align: center;
  padding: 1px 10px;
  border-radius: 20px;
  font-size: 1.2rem;
  display: inline-block;
  font-weight: 500;
}
.p_list_item{
  position: relative;
}
.p_list_icon_fav{
  width: 24px;
  position: absolute;
  bottom: 5px;
  right: 5px;
}
button.favorite-button,
button.list_favorite-button{
  padding: 0;
  cursor: pointer;
  transition: .2s;
  outline: none !important;
  border: none !important;
  background: none !important;
}

.p_list_icon_fav span {
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/icon_fav.svg") no-repeat 0 0;
  background-size: 100%;
  width: 24px;
  height: 24px;
}
.p_list_icon_fav .fav-items span {
  background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/icon_fav_on.svg");
}
    @media screen and (max-width: 1024px){
      .p_list_name{
        font-size: 1.4rem;}
    }

/*c-pager*/
.c-pager{
  margin-top: 60px;
  text-align: center;
}
.c-pager__total{
  margin-bottom: 20px;
}
.c-pager-list{
  display: flex;
  justify-content: center;
  align-items: center;
}
.c-pager-list li{
  display: block;
  margin: 0 5px;
  
}
.c-pager-list li a,
.c-pager-list li span{
  display: block;
  padding: 3px 10px;
  border: 1px solid #CCC;
  border-radius: 5px;
}
.c-pager-list li span.is-current{
  background: #04a569;
  border-color: #04a569;
  color: #FFF;
}
.c-pager-list li a:hover{
  border: 1px solid #04a569 !important;
  
}

.c-pager-list__link.is-prev,
.c-pager-list__link.is-next{
  display: block;
  padding: 0;
  border: none !important;
  width: 16px;
  height: 15px;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/arrow_bl.png") no-repeat 0 0;
  background-size: 100%;
  
}
.c-pager-list__link.is-prev{
  transform: rotate(-180deg);
}
.c-pager-list__link.is-prev:hover,
.c-pager-list__link.is-next:hover{
  border: none !important;
}
.c-pager-list .is-prev.is-disabled,
.c-pager-list .is-next.is-disabled{display: none;}



/*NewItem_list*/
.column_2col_wrap{
  position: relative;
}

.NewItem .ttl_line,
.btn_rank_more{
  position: relative;
  z-index: 2;
}  
.NewItem_list{
  position:relative;}
  
.slick_newitem .slick-slide{
  margin-right: 1%;
}
.slick_newitem .arrow_prev,
.slick_newitem .arrow_next{
  position: absolute;
  top: -105px;
  width: 60px;
  z-index: 10;
  cursor: pointer;
}
.slick_newitem{
}
.slick_newitem .arrow_prev{
  right: 80px;
}
.slick_newitem .arrow_next{
  right: 0;
}
    .slick_newitem .slick-list{
        overflow: visible;
    }

  @media screen and (min-width: 1025px){
    .NewItem_list .btn_rank_more{
      position: absolute;
      top: 20px;
      left: 0;
    }
    .column_2col_wrap:before{
      z-index: 1;
      content: '';
      display: block;
      width: 20%;
      background: #e6f1ef;
      height: 100%;
      top: 0;
      left: 0;
      position: absolute;
    }
    .NewItem_list{
      position: relative;
    }
    .NewItem_list:before{
      z-index: 1;
      content: '';
      display: block;
      width: calc(18% + 50px);
      background: #e6f1ef;
      height: 100%;
      top: 0;
      left: -50px;
      position: absolute;
    }

  }
  @media screen and (min-width: 768px){
    .slick_newitem{
      position: relative;
      
    }
    
    .NewItem_list{
      width: 82%;
      padding-left: 18%;
    }
    
  }

  @media screen and (max-width: 1024px){
    .NewItem_list .btn_rank_more{
      text-align: right;
      margin-top: 40px;
    }
    .NewItem_list{
      width: 100%;
      padding-left: 0;}
    
    .column_2col:before{width: 0px;}
  }
  @media screen and (max-width: 767px){
    .slick_newitem .arrow_prev,
    .slick_newitem .arrow_next{
      top: -75px;}
  }

/*rank_list*/
.rank_list{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
img.new_mark_img2{
  opacity: 0;
}
.p_list_item img.new_mark_img2{
  height: 24px;
  width: auto;
  display: block !important;
  margin-top: 5px !important;
}
.rank_list .p_list_item{
  width: 17.272%;
  margin: 40px 0;
}

.rank_list .p_list_item:before{
  content: '';
  display: block;
  width: 40px;
  height: 40px;
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  top: -20px;
  left: 10px;
  z-index: 10;
}
.rank_list .p_list_item:first-child:before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_1.png"); width:64px; height: 88px; top: -35px;}

.rank_list .p_list_item:nth-child(2):before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_2.png"); width:64px; height: 88px; top: -35px;}

.rank_list .p_list_item:nth-child(3):before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_3.png"); width:64px; height: 88px; top: -35px;}

.rank_list .p_list_item:nth-child(4):before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_4.png");}
.rank_list .p_list_item:nth-child(5):before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_5.png");}
.rank_list .p_list_item:nth-child(6):before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_6.png");}
.rank_list .p_list_item:nth-child(7):before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_7.png");}
.rank_list .p_list_item:nth-child(8):before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_8.png");}
.rank_list .p_list_item:nth-child(9):before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_9.png");}
.rank_list .p_list_item:nth-child(10):before{background-image: url("https://file001.shop-pro.jp/PA01514/654/common/images/rank_10.png");}
  
  
    @media screen and (max-width: 1180px){
      .rank_list .p_list_item:before{width: 30px; height: 30px; top: -15px;}
      .rank_list .p_list_item:first-child:before,
      .rank_list .p_list_item:nth-child(2):before,
      .rank_list .p_list_item:nth-child(3):before{
        width: 48px;
        height: 66px;
        top: -25px;
      }
      .rank_list .p_list_icon_fav{
        bottom: -20px;
      }
    }
    
    @media screen and (max-width: 767px){
      .rank_list .p_list_item{width: 47%; margin: 20px 0 30px 0;}
      .rank_list .p_list_icon_fav{
        bottom: 5px;
      }
    }
/*footer////////////////////////////////*/
.foot_ctg_wrap{
  background: #FFF;
}
.content-container{
  border-bottom: 1px solid #CCC;
  
}
.tab_menu_wrap{
  display: flex;
  justify-content: space-between;
  position: relative;
}
.tab_menu_wrap:before{
  content: '';
  display: block;
  width: 100%;
  height: 2px;
  background: #04a569;
  position: absolute;
  left: 0;
  z-index: 0;
  bottom: 0;
}
.tab_menu{
  position: relative;
  width: 31%;
  cursor: pointer;
  text-align: center;
  border-radius: 20px 20px 0 0;
  font-size: 2.4rem;
  padding: 20px 10px;
  box-sizing: border-box;
  background: #e6f1ef;
  font-weight: 900;
  border-bottom:2px solid #04a569;
}
.tab_menu.active{
  background: #FFF;
  border: 2px solid #04a569;
  border-bottom-color: #FFF;
  z-index: 1;
}

.tab_menu_icon{
  width: 42px;
  margin-right: 5px;
}

.tab_Contents {
    display: none;
    padding: 40px 0;
}
.tab_Contents.show {
    display: block;
    animation:tabAnim ease 1s forwards;
}  

.tab_sttl{
  font-size: 2.4rem;
  font-weight: 900;
  padding-left: 20px;
  position: relative;
  margin-bottom: 20px;
}
.tab_sttl:before{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/ttl_line-v.png") no-repeat 0 0;
  background-size: 100%;
  width: 6px;
  height: 41px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.tab_ssttl{
  vertical-align: middle;
  margin-left: 10px;
  border: 1px solid #CCC;
  padding: 1px 10px;
  font-size: 1.6rem;
  font-weight: 700;
}
.tab_nav{
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
}
.tab_nav li{
  margin-bottom: 15px;
}


.tab_nav li a{
  background: #e6f1ef;
  display: flex;
  align-items: center;
  height: 46px;
  font-size: 1.4rem;
  justify-content: center;
  text-align: center;
  padding: 0 10px;
  line-height: 1.1;
  border-radius: 50px;
}
.tab_nav + .tab_sttl{
  margin-top: 40px;
}
  @media screen and (min-width: 1025px){
    .tab_nav li{
      width: 15.5%;
      margin-right: 1.4%;
    }
    .tab_nav li:nth-child(6n){margin-right: 0;}
  }
  @media screen and (max-width: 1024px){
    .tab_menu{font-size: 2rem;}  
    .tab_menu_icon{
       width: 30px;}
       
    .tab_sttl{
      font-size: 1.8rem;}
    
    .tab_nav li{
      width: 24%;
      margin-bottom: 5px;
      margin-right: 1.3%;
    }
    .tab_nav li:nth-child(4n){margin-right: 0;}
  }
  @media screen and (max-width: 767px){
    .tab_menu{font-size: 1.4rem; padding: 5px; width: 32%; line-height: 1.2; border-radius: 10px 10px 0 0;}  
    .tab_menu_icon{
       width: 20px;
       margin: 0 auto;
       display: block;}
    
    .tab_Contents {
      padding: 20px 0;}
    .tab_sttl{
      padding-left: 10px;
      font-size: 1.6rem;}
    .tab_sttl:before{
      width: 4px;
      height: 32px;}
    
    .tab_ssttl{font-size: 1.4rem}
      
    .tab_nav li{
      width: 49%;
      margin-right: 2%;
    }
    .tab_nav li a{
      font-size: 1.2rem;
      line-height: 1;
      height: 35px;
    }
    
    .tab_nav li:nth-child(2n){margin-right: 0;}
    
    .tab_nav + .tab_sttl{
      margin-top: 20px;
    }
  }
@keyframes tabAnim{
  0%{opacity:0;}
  100%{opacity:1;}
}
.foot_search{
  padding: 60px 0;
}
.foot_search .Search_inner{
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}
.foot_search .Search_inner .Search_txt{
  height: 60px;
  width: 100%;
  font-size: 1.6rem;
  padding: 5px 5px 5px 60px;
  border-radius: 30px;
}
.foot_search .search_icon{
  left: 20px;
}
    @media screen and (max-width: 767px){
      .foot_search{
        padding: 30px 0;
      }
      .foot_search .Search_inner .Search_txt{
          height: 50px;
          font-size: 1.4rem;
          padding: 5px 5px 5px 60px;
          border-radius: 30px;
        }
    }
    
.foot_guide{
  padding-bottom: 150px;
  background: #E6F1EF;}
  
.foot_guide_wrap{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  }
   
.foot_guide_box{
  margin-bottom: 50px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 47%;
}  
.foot_guide_head{
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}  
.foot_guide_ttl{flex: 1;}
.foot_guide_ttl a{
  position: relative;
  display: block;
  box-sizing: border-box;
  padding-right: 40px;
}
.foot_guide_ttl a:after{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/arrow.png") no-repeat 0 0;
  background-size: 100%;
  width: 30px;
  height: 30px;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.foot_guide_icon{
  width: 60px;
  margin-right: 10px;
}
.foot_guide_point{
  font-family: "Roboto", sans-serif;
  font-size: 1.4rem;
  line-height: 1;
}
.foot_guide_point span{
  font-weight: 900;
  font-size: 2.4rem;
  color: #04a569;
  vertical-align: middle;
  margin-left: 5px;
}
.foot_guide_head h3{
  font-size: 2rem;
  font-weight: 900;
}

.foot_guide_box-2{
  background: #FFF;
  border-radius: 20px;
  padding: 30px 40px;
}
    

  @media screen and (min-width: 1025px){
    .foot_guide_box{
      width: 31%;
    }
    .foot_guide_box-2{
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      align-items: center;
    }
    .foot_guide_box-2 .foot_guide_head{
      width: 47%;
      margin: 0;}
    .foot_guide_box-2 .foot_guide_txt{
      width: 50%;
    } 
  }
  
  @media screen and (max-width: 767px){
    .foot_guide{padding-bottom: 100px;}
    .foot_guide_icon{width: 40px;}
    .foot_guide_point{font-size: 1rem; margin-bottom: 5px}
    .foot_guide_point span{font-size: 1.8rem;}
    .foot_guide_head h3{font-size: 1.6rem; line-height: 1.3;}
    .foot_guide_ttl a{
      padding-right: 0;
    }
    .foot_guide_ttl a:after{
      width: 20px;
      height: 20px;
      top: 0;
      right: 0;
      transform: none;
    }
    .foot_guide_box{
      margin-bottom: 20px;}
    .foot_guide_box-2{
      padding: 10px 20px;
    }
    .foot_guide_head{margin-bottom: 10px;}
    .foot_guide_txt{font-size: 1.2rem;}
  }
.foot_contact{
  text-align: center;
  padding-bottom: 50px;
}  
.foot_contact .btn_ye a{
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.foot_contact .btn_ye{
  margin-bottom: 10px;
}

img.foot_contact_icon{
  width: 40px;
  margin-right: 10px;
}
.tel_number{
  font-size: 3rem;
  font-weight: 900;
  letter-spacing: -0.025em;
  font-family: "Roboto", sans-serif;
}
.tel_number span{
  display:block;
  font-size: 1.4rem;
  font-weight: 500;
  font-family: 'Noto Sans JP', "メイリオ", Meiryo, sans-serif;
}
  @media screen and (max-width: 767px){
  .tel_number{
    font-size: 2.6rem;}
  }
.Pagetop{
  text-align: center;
}  
.footer{
  background: #3c4342;
  color: #FFF;
  padding: 60px 0 40px 0;
}  
.footer a{
  color: #FFF !important;
}

.footer_inner{
  margin-bottom: 50px;
}
.foot_logo img{
  max-width: 205px;
}
address{
  font-weight: 500;
  margin: 30px 0;
  line-height: 2;
}
.foot_sns img{
  width: 34px;
}
.foot_sns{
  display: flex;
}
.foot_sns li{
  margin-right: 20px;
}

.ttl_cal{
  font-size: 2rem;
  text-align: center;
  font-weight: 900;
  margin-bottom: 10px;
}
.cal_wrap{
  border-radius: 20px;
  background: #FFF;
  padding: 20px 40px;
  position: relative;  
}
.cal_wrap:before,
.cal_wrap:after{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/calendar.png") no-repeat 0 0;
  background-size: 100%;
  width: 14px;
  height: 36px;
  position: absolute;
  top: -20px;
}
.cal_wrap:before{
  left: 70px;
}
.cal_wrap:after{
  right: 70px;
}


.cal_box{
  position: relative;
  display: flex;
  justify-content: space-between;  
}
.cal_box:after{
  content: '';
  display: block;
  width: 1px;
  height: 100%;
  background: #CCC;
  left: 50%;
  top:0;
  position: absolute;
  
}

.cal_wrap .tbl_calendar{
  width: 45%;
  color: #000;
}


.cal_wrap .tbl_calendar th,
.cal_wrap .tbl_calendar td{
  text-align: center;
  line-height: 1;
  font-size: 1.4rem;
  padding: 8px 0;
}
.cal_wrap .tbl_calendar th,
.cal_wrap .tbl_calendar caption{
  font-weight: 700;
}
.cal_memo{
  margin-top: 10px;
}
.foot_bottom{
  font-size: 1.4rem;
}
.foot_bottom_menu a{
  color: #FFF !important;
}
.foot_bottom_menu li{
  display: inline-block;
  margin-right: 20px;
}
.Copyright{
  font-family: "Roboto", sans-serif;
}

  @media screen and (min-width: 1025px){
    .footer_inner,
    .foot_bottom{
      display: flex;
      justify-content: space-between;
    }
    .foot_cal{
      width: 54%;
    }
    .foot_info{
      width: 45%;
    }
  }
  @media screen and (max-width: 1024px){
    .foot_info,
    .foot_bottom_menu{
      margin-bottom: 40px;
    }
  }
  @media screen and (max-width: 767px){
    .cal_wrap{
      border-radius: 10px;
      padding: 10px;
    }
    .cal_wrap .tbl_calendar th,
    .cal_wrap .tbl_calendar td{
      font-size: 1.2rem;
      padding: 5px 0;
    }
    .cal_wrap:before,
    .cal_wrap:after{
      width: 12px;
      height: 32px;
      position: absolute;
      top: -20px;
    }
    .cal_wrap:before{
      left: 30px;
    }
    .cal_wrap:after{
      right: 30px;
    }
    .foot_bottom_menu li{
      display: block;
      margin-bottom: 10px;}
  }

/*2階層目//////////////////////////*/
.Page_ttl{
  text-align:center;
  margin-bottom: 100px;
  padding: 20px 20px 0 20px;
  position: relative;
  background: #FFF;
}
.Page_ttl h2{
  padding-top: 40px;
  font-size: 3.6rem;
  font-weight: 900;
  position: relative;
}
 
.Page_ttl h2:before{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/ttl_line.png") no-repeat 0 0;
  background-size: 100%;
  width: 56px;
  height: 6px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.Page_ttl:after{
  content: '';
  position: absolute;
  bottom: -40px;
  left: -5%;
  display: inline-block;
  width: 110%;
  height: 40px;
  border-radius: 50% / 0 0 100% 100%;
  background: #FFF;}
  
.Page_ttl .new_mark_img2{
  height: 30px;
  width: auto;
  margin-left: 10px !important;
  vertical-align: middle;
}
  @media screen and (max-width: 1024px){
    .Page_ttl h2{
      font-size: 3rem;}
  }  
  @media screen and (max-width: 767px){
    .Page_ttl{
      margin-bottom: 50px;}
    .Page_ttl:after{
      height: 20px;
      bottom: -20px;}
      
    .Page_ttl h2{
      padding-top: 20px;
      font-size: 2.4rem;}
    .Page_ttl .new_mark_img2{
      height: 24px;
    }  
  }


.common_item_list{
        display: flex;
        flex-wrap: wrap;
      }
      
     .related_item_list{
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
      } 
      .related_item_list .p_list_item{
        width: 31%;
        margin-bottom: 40px;
      }
  @media screen and (min-width: 768px){   
    .common_item_list .p_list_item{
      width: 22%;
      margin-bottom: 40px;
      margin-right: 4%;
    }
    .common_item_list .p_list_item:nth-of-type(4n){
      margin-right: 0;
    }
    .related_item_list:after{
      content: '';
      display: block;
      width: 31%;}
  }
  @media screen and (max-width: 767px){
    .related_item_list .p_list_item{
        width: 47%;
      }
    .common_item_list{
      justify-content: space-between;}
      
    .common_item_list .p_list_item{
      width: 47%;
      margin-bottom: 40px;}
      }
      
/*FreePage////////////////////////////*/
/*guide*/
.freepage{
  line-height: 1.7;
}
.freepage a{
  color: #04a569 !important;
  font-weight: 500;
  text-decoration: underline !important;
}
.free_sttl{
  font-size: 2.4rem;
  font-weight: 900;
  padding-left: 20px;
  position: relative;
  margin-bottom: 30px;
}
.free_sttl:before{
  content: '';
  display: block;
  background: url("https://file001.shop-pro.jp/PA01514/654/common/images/ttl_line-v.png") no-repeat 0 0;
  background-size: 100%;
  width: 6px;
  height: 41px;
  position: absolute;
  bottom: 0;
  left: 0;
}
.free_ssttl{
  font-size: 2.2rem;
  font-weight: 900;
  color: #04a569;
  margin-bottom: 30px;
}

.free_sssttl{
  font-size: 1.8rem;
  font-weight: 900;
  margin-bottom: 20px;
}

.linkhead{
  padding-top: 130px;
  margin-top: -130px;
}
table.List{
  border-top: 1px solid #CCC;
}

table.List th,
table.List td{
  text-align: left;
  vertical-align: top;
  padding: 20px;
  border-bottom: 1px solid #CCC;
}
table.List th{font-weight: 700; white-space: nowrap;}

table.List2{
  border: 1px solid #CCC;
  margin-bottom: 40px;
}
table.List2 caption{
  text-align: left;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 5px;}
  
table.List2 th,
table.List2 td{
  vertical-align: middle;
  padding: 3px 10px;
  box-sizing: border-box;
  border: 1px solid #CCC;
}
table.List2 .b_bold{
  border-bottom-width: 2px;
}

table.List2 th{
  font-weight: 700; white-space: nowrap;
  text-align: center;
  
  background: #f6a90e;}
table.List2 td{
background: #FFF;
}
.freepage .dot_list li{
  margin-bottom: 10px;
}
  @media screen and (max-width: 1024px){
    .free_sttl{font-size: 2rem;}
    .free_ssttl{font-size: 1.8rem;}
    .free_sssttl{font-size: 1.6rem;}
  }

  @media screen and (max-width: 767px){
    .free_sttl{
      padding-left: 10px;
      font-size: 1.8rem;}
    .free_sttl:before{
      width: 4px;
      height: 32px;}
      
    .free_ssttl{font-size: 1.6rem;}
    .free_sssttl{font-size: 1.4rem;}  
      
    .linkhead{
      padding-top: 75px;
      margin-top: -75px;
    }  
    table.List th,
    table.List td{
      padding: 10px 0;
      display: block;
    }
    table.List th{border: none; padding-bottom: 0;}
    table.List2 caption{
      font-size: 1.6rem;}
      
    table.List2 th,
    table.List2 td{
      padding: 3px 5px;
      font-size: 1.2rem;
    }
  }

.guide_menu{
  margin-bottom: 80px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.guide_menu:after{
  content: '';
  display: block;
  width: 31%;
}

.guide_menu li{
  margin-bottom: 20px;
  width: 32%;
  padding-left: 15px;
  box-sizing:border-box;
  position: relative;
}
.guide_menu li:before{
  content: '';
  width: 8px;
  height: 2px;
  display: block;
  background: #04a569;
  position: absolute;
  top: 12px;
  left: 0;
}
.guide_menu li a{
  text-decoration: none !important;
  color: #000!important;
}
.guide_pay_list{
  background: #FFF;
  display: inline-block;
  padding: 5px;
  margin-bottom: 10px;}
.guide_pay_list li{
  vertical-align: middle;
  display: inline-block;
}  

  @media screen and (max-width: 767px){
    .guide_menu li{width: 48%;}
    }

/*OPEN時modal*/
.popup-wrap {
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 999;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8);
  opacity: 0;
  visibility: hidden;
  transition: 0.5s;
  backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.popup-wrap.active {
  opacity: 1;
  visibility: visible;
}
.popup-content {
  position: absolute;
  max-width: 600px;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  padding: 0 20px;
  margin: auto;
}
.popup-content a:hover{
  opacity: 1;
}

.popup-close{
  position: absolute;
  top: -25px;
  right: 0px;
  width: 50px;
  height: 50px;
  cursor: pointer;
}

  
.popup-close:hover{
  opacity: 0.8;
  transition: 0.3s;
}    


  @media screen and (max-width:767px) {
    .popup-close{
      position: absolute;
      top: -15px;
      right: 5px;
      width: 30px;
      height: 30px;
      cursor: pointer;
    }
  }


