@charpet"UTF-8";

/* 
***********************************************************
* Copyright(C) CIDARIO Inc.
* URI:http://cidario.co.jp
* Editor:Hiromi Yoshino
***********************************************************
*/

/* html body
========================================================================================================
*/
html{
	font-size:62.5%;
}

body{
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 500;
  font-size: 1.6rem;
  /*font-feature-settings:"palt";*/
  /*line-height: 2em;*/
  color: #0b0b0b;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%
}

@media print, screen and (min-width:640px) {
  body{
   font-size: 1.6rem;
  }
}

@media print, screen and (max-width:640px) {
  body{
   font-feature-settings:"palt";
  }
}

/* layout
========================================================================================================
*/

/*========= home =========*/

#home article{ 
  position:relative;
  width:100%;
  margin:0 auto;
}

/* header
========================================================================================================
*/

header{
  width:100%;
  height:60px;
  background: #FFF;
  padding:0;
  margin:0;
}

@media print, screen and (min-width:960px) {
header{
  width:100%;
  height: 160px;
  background: linear-gradient(180deg, #FFF 0%, #FFF 50%, #6DC50E 50%, #6DC50E 100%);
  padding:0;
  margin:0;
  }
}

header a{
  text-decoration: none;
}

header .header-wrap01{
  width:100%;
  height: 60px; 
  display: grid;
  align-items: center;
  margin: 0 auto;
}

@media print, screen and (min-width:960px) {
header .header-wrap01{
  width:100%;
  max-width: 1400px;
  height: 80px;
  display: grid;
  grid-template-columns: 1fr 420px;
  align-items: center;
  margin: 0 auto;
  }
}

#home header .header-wrap01 h1,
#second header .header-wrap01 h1{  
  position: relative;  
  width:27%;
  min-width:190px;
  padding: 0 0 0 5px;
  margin: 0;
}

@media print, screen and (min-width:960px) {
#home header .header-wrap01 h1,
#second header .header-wrap01 h1{
  width:265px;
  padding: 0 0 0 15px;
  margin: 0;
  }
}

@media print, screen and (min-width:1400px) {
#home header .header-wrap01 h1,
#second header .header-wrap01 h1{
  width:265px;
  padding: 0;
  margin: 0;
  }
}

#home header .header-wrap01 h1 a,
#second header .header-wrap01 h1 a{
  display: block;
  width:100%;
  height: 100%;
}

#home header div h1 a img,
#second header div h1 a img{
  display: block;
  width:100%;
}

/*-----------------------------------------------------------------------------
                                  navigation
-------------------------------------------------------------------------------*/

header .header-wrap01 div{
  display: none;
}

@media print, screen and (min-width:960px) {
header .header-wrap01 div{
  height: 100%;
  display: flex;
  flex-flow: column wrap;
  align-items: flex-end;
  }
}

header .header-wrap01 .global-nav02{
  width:200px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 0 1px;
}

.global-nav02 li{
  height: 28px;
}

.global-nav02 li a{
  width: 100%;
  height: 100%;  
  display: flex;
  align-items: center;
  justify-content: center;
  background: #EEE;
  transition: 1s;
}

.global-nav02 li span{
  font-size: 1.4rem;
  color: #666;
  font-weight: 700;  
  transition:1s;
}

.global-nav02 li a:hover{
  background:#313140;
}

.global-nav02 li a:hover span{
  color: #FFF;
}

header .header-wrap01 .global-nav03{
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  justify-content: flex-end;
  column-gap: 30px;
  padding: 0 15px 0 0;
  margin: 15px 0;
}

@media print, screen and (min-width:1400px) {
header .header-wrap01 .global-nav03{
  padding: 0;
 }
}

.global-nav03 li a{
  font-size: 1.4rem;
  color: #666;
  font-weight: 600;
  transition: 1s;
}

.global-nav03 li a:hover{
  color: #6DC50E;
}

/*-----------------------------------------------------------------------------
                                 header-wrap02
-------------------------------------------------------------------------------*/

header .header-wrap02{
  display: none;
}

@media print, screen and (min-width:960px) {
header .header-wrap02{ 
  display: block;
  width:100%;
  max-width: 1400px;
  margin: 0 auto;
  }
}

nav .global-nav01{
  width:100%;
  height: 80px;
  display: grid;
  grid-template-columns: repeat(7, 1fr);
}

nav .global-nav01 li a{
  width:100%;
  height: 100%;
  display: flex;
  font-size:clamp(1.4rem, 1.2vw, 1.6rem);
  font-weight: 600;  
  color: #FFF;
  transition: 1s;
}

nav .global-nav01 li.g-nav01 a{
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center;
  background: #6DC50E;
}

nav .global-nav01 li.g-nav01 a span{
  display: block;
  font-size: 1.1rem; 
  font-weight: 500;
  margin:5px 0 0 0;
}

nav .global-nav01 li.g-nav02 a,
nav .global-nav01 li.g-nav03 a{
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
}

nav .global-nav01 i.material-symbols-outlined {
  position: relative;
  font-family: 'Material Symbols Outlined';
  font-weight:400;
  font-style: normal;
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  color: #FFF;
  margin: 0 10px 0 0;
}

.g-nav02 i::before{
  content: "storefront";
}

.g-nav03 i::before{
  content: "calendar_month";
}

nav .global-nav01 li.g-nav01 a{
  background: #6DC50E;
}

nav .global-nav01 li.g-nav02 a{
  background: #0E1A63;
}

nav .global-nav01 li.g-nav03 a{
  background: #E82D9A;
}

nav .global-nav01 li.g-nav01 a:hover{
  background: #92EE42;
}

nav .global-nav01 li.g-nav02 a:hover{
  background: #003AE8;
}

nav .global-nav01 li.g-nav03 a:hover{
  background: #F45EB8;
}

/*
=================================================================
                          spn-nav     
=================================================================
*/

.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}

aside.spn-nav{
  position: relative;
  padding: 0;
  margin: 0;
}

@media print, screen and (min-width:960px) {
 aside.spn-nav{
   display: none;
  }
}

aside.spn-nav input.drawer-checkbox{
  display: none;
}

/* ハンバーガーアイコン */
label.drawer-icon{
  cursor: pointer;
  display: block;
  width: 50px;
  height: 50px;
  position:fixed;
  bottom:13px;
  left:5px;
}

/* ハンバーガーアイコンの中の線 */
label span.drawer-icon-parts,
label span.drawer-icon-parts:before,
label span.drawer-icon-parts:after{
  background-color: #FFF;   
  display: block;
  width: 6%;
  min-width: 22px;
  height: 1px;
  position: absolute;
  top: 0px;
  right: 0;
  left: 0;
  bottom: 0;
  margin: auto;
}

label span.drawer-icon-parts:before,
label span.drawer-icon-parts:after{
  content: " ";
}

label span.drawer-icon-parts:before{
  top: 16px
}

label span.drawer-icon-parts:after{
  top: -16px
}

/* ドロワーメニュー開いた時のメインエリアを暗く*/
label.drawer-overlay{
    background: #000;
    opacity: 0;
    pointer-events: none; /*ポインタの動作全部無効化*/
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
}

/* ドロワーメニュー*/  

aside.spn-nav div.drawer-menu{
    background: #FFF;
    font-feature-settings : "palt";
    color: #000;
    width: 80%;
    height: 100vh;
    overflow-y: auto; /*スクロール*/
    -webkit-overflow-scrolling: touch; /*スクロール（SP）*/
    position: fixed;
    top: 2px;
    left: -80%;
    padding: 0 ;
  }

@media print, screen and (min-width:640px) and (max-width:960px){
    aside.spn-nav div.drawer-menu{
     background: #FFF;
     font-feature-settings : "palt";
     color: #000;
     width: 50%;
     height: 100vh;
     overflow-y: auto; /*スクロール*/
     -webkit-overflow-scrolling: touch; /*スクロール（SP）*/
     position: fixed;
     top: 0;
     left: -50%;
     padding: 0;
  }
}

/* z-indexの指定 */  
.drawer-icon{
    z-index: 704;
  }

.drawer-menu{
    z-index: 703;
  }

.drawer-overlay{
    z-index: 702;
  }
  
 /*  チェックが入ったら（アイコンクリックしたら）*/ 
.drawer-checkbox:checked ~ .drawer-icon span.drawer-icon-parts{
    background: transparent;
}

.drawer-checkbox:checked ~ .drawer-icon{
  left:80%;
  /*background: rgba(0,0,0,0.6);*/
}

@media print, screen and (min-width:640px) and (max-width:960px){
  .drawer-checkbox:checked ~ .drawer-icon{
   left:50%;
  }
}

.drawer-checkbox:checked ~ .drawer-icon span.drawer-icon-parts:before{
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 0;
}

.drawer-checkbox:checked ~ .drawer-icon span.drawer-icon-parts:after{
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 0;
}
  
.drawer-checkbox:checked ~ label.drawer-overlay{
      opacity: 0.8;
      pointer-events: auto;
}

.drawer-checkbox:checked ~ .drawer-menu {
      left: 0;
}

/*動きをスムーズに*/ 
  .drawer-icon,
  .drawer-icon-parts,
  .drawer-icon-parts:after,
  .drawer-icon-parts:before,
  .drawer-overlay,
  .drawer-menu{
  -webkit-transition: all .5s ;
  transition: all .5s ;
}

/*================== ドロワーメニュー コンテンツ ==================*/

div.drawer-menu div.sp-nav-head{
  width:100%;
  border: 10px solid #5BBC14;
  padding: 0;
  margin: 0;
}

/*--- ロゴ ---*/
div.drawer-menu div.sp-nav-head img{
  display: block;
  width:57%;
  max-width:260px;
  margin:0 auto;
}

div.drawer-menu div.sp-nav-head p{
  width:100%;
  font-size: 16px; font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  margin: 25px 0 20px 0;
  line-height: 150%;
}

div.drawer-menu div.sp-nav-head p.sp-reserve-txt{
  font-size: 16px; font-size: 1.8rem;
  margin: 15px 0 20px 0;
}

div.sp-nav-head a.sp-reserve-btn{
  display: block;
  width:80%;
  background-color: #F0209D;
  border-radius: 10px;
  font-size: 20px; font-size: 2.0rem;
  font-weight: 700;
  color: #FFF;
  text-align: center;
  text-decoration: none;
  padding: 10px 0;
  margin: 30px auto 0 auto;
}

div.sp-nav-head a.sp-reserve-btn span{
  display: block;
  padding: 0;
  margin:8px auto 5px auto;
}

div.sp-nav-head a.sp-reserve-btn img{
  display: block;
  width:7%;
  min-width: 21px;
  height: auto;
  margin: 5px auto 0 auto;
}

/*----  sp-search-rv  ----*/

div.sp-nav-head div.sp-search-rv{
  background-color: #FFF;
  padding: 10px 0 30px 0;
}

div.sp-nav-head div.sp-search-rv a.sp-shop-btn{
  display: block;
  width:80%;
  background-color: #5BBC14;
  border-radius:50px;
  font-size: 18px; font-size: 1.8rem;
  text-decoration: none;
  text-align: center;
  color: #FFF;
  padding:20px 0;
  margin: 0 auto;
}

/*----  sp-search  ----*/

div.sp-nav-head div.sp-search{
  background-color: #EEE;
  padding: 30px 0 15px 0;
}

div.sp-nav-head div.sp-search a.sp-shop-btn{
  display: block;
  width:80%;
  background-color: #5BBC14;
  border-radius:50px;
  font-size: 18px; font-size: 1.8rem;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  color: #FFF;
  padding:20px 0;
  margin: 0 auto;
}

div.sp-nav-head div.sp-search h2{
  font-size: 16px; font-size: 1.6rem;
  color: #000;
  text-align: center;
  padding: 0;
  margin: 30px 0 15px 0;
}

div.sp-nav-head div.sp-search div{
  width:90%;
  position: relative;
  display: flex;
  flex-flow: row nowrap;
  border-radius: 5px;
  margin: 0 auto;
}

div.sp-nav-head div.sp-search div input[type=text] {
  -webkit-appearance: none;
  border-radius: 0;
}

div.sp-nav-head div.sp-search div input.freeword{
  width:80%;
  height: 50px;
  /* 右上のみ角丸 */
 border-top-left-radius: 6px;
 -webkit-border-top-left-radius: 6px;
 -moz-border-radius-topleft: 6px;
  /* 右下のみ角丸 */
 border-bottom-left-radius: 6px;
 -webkit-border-bottom-left-radius: 6px;
 -moz-border-radius-bottomleft: 6px;
  border-top: 1px solid #CCC;
  border-left: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
  border-right: 0;
  font-size: 16px; font-size: 1.6rem;
  padding: 0 10px;
}

div.sp-nav-head div.sp-search div input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}

div.sp-nav-head div.sp-search div input.h-search-btn{
  display: block;
  position: relative;
  width:20%;
  height: 50px;
  background: url(/common/images/sp-nav-icon02.png) no-repeat 50% 50% #5BBC14;
  background-size: 28px 28px;
  border: 1px solid #5BBC14;
  border: 0;
  /* 右上のみ角丸 */
  border-radius: 0;
  border-top-right-radius: 6px;
  -webkit-border-top-right-radius: 6px;
  -moz-border-radius-topright: 6px;
  /* 右下のみ角丸 */
  border-bottom-right-radius: 6px;
  -webkit-border-bottom-right-radius: 6px;
  -moz-border-radius-bottomright: 6px;
  color:transparent;
  cursor: pointer;
}

div.sp-nav-head div.sp-search span{
  display: block;
  width:90%;
  font-size: 12px; font-size: 1.2rem;
  line-height: 130%;
  text-align: center;
  padding: 0;
  margin: 10px auto;
}

div.drawer-menu p.sp-nav-bn{
  width:90%;
  margin: 30px auto;
}

div.drawer-menu p.sp-nav-bn img{
  width:100%;
}

div.drawer-menu .spn-swiper{
  margin: 30px auto;
}

div.drawer-menu .spn-swiper .swiper-slide{
  width:80%; 
}

div.drawer-menu .spn-swiper img{
  width:100%;
}

/*--- nav01 ---*/

aside.spn-nav div.drawer-menu nav ul.sp-nav01{
  width:100%;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
  padding: 0;
  margin:20px 0 0 0;
}

@media print, screen and (min-width:640px) and (max-width:960px){
  aside.spn-nav div.drawer-menu nav ul.sp-nav01{
   margin:30px 0 0 0;
  }
}

div.drawer-menu nav ul.sp-nav01 li{ 
  position: relative;
  width:calc( ( 100% - 1px ) / 2 );
  height: 60px;
  background-color: #313140;
  padding:0;
  margin: 0;
}

div.drawer-menu nav ul.sp-nav01 li a{ 
  display: block;
  width:100%;
  height: 100%;
  text-decoration: none;
}

div.drawer-menu nav ul.sp-nav01 li span{ 
  display: block;
  position: relative;
  width: 100%;
  font-size:3.2vw;
  line-height: 100%;
  color: #FFF;
  text-align: center;
  top:50%;
  left:0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media print, screen and (min-width:640px) and (max-width:960px){
  div.drawer-menu nav ul.sp-nav01 li span{ 
   font-size:18px; font-size: 1.8rem;
  }
}

div.drawer-menu nav ul.sp-nav01 li span img{ 
  width:10%;
  height: auto;
  margin: 0 5px 0 0;
}

/*--- nav02 ---*/

div.drawer-menu nav ul.sp-nav02{ 
  width:100%;
}

div.drawer-menu nav ul.sp-nav02 li{ 
  position: relative;
  width:100%;
  background-color: #6DC50E;
  border-top: 1px solid #FFF;
  padding: 0 0 0 20px;
  margin: 0;
}

div.drawer-menu nav ul.sp-nav02 li a{ 
  display: block;
  width:100%;
  height: 100%;
  font-size: 4.5vw;
  font-weight: 700;
  color: #FFF;
  text-decoration: none;
  padding:25px 0 20px 0;
}

div.drawer-menu nav ul.sp-nav02 li span{ 
  display: block;
  width:100%;
  font-family: "arial",sans-serif;
  color: #FFFF00;
  font-size: 11px; font-size: 1.1rem;
  margin:10px 0 0 0;
}

@media print, screen and (min-width:640px) and (max-width:960px){
  div.drawer-menu nav ul.sp-nav02 li a{ 
    font-size: 18px; font-size: 1.8rem;
    line-height: 100%;
  }
  
  div.drawer-menu nav ul.sp-nav02 li span{ 
  font-size: 13px; font-size: 1.3rem;
  margin:12px 0 0 0;
  }
}

/*--- nav03 ---*/

div.drawer-menu nav ul.sp-nav03{ 
  width:80%;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  background-color: #FFF;
  padding: 0;
  margin: 30px auto;
}

div.drawer-menu nav ul.sp-nav03 li{ 
  width:50px;
  padding:0;
  margin: 5px;
}

div.drawer-menu nav ul.sp-nav03 li a{ 
  font-size: 14px; font-size: 1.4rem;
  color: #000;
  text-decoration: none;
  line-height: 130%;
  text-align: center;
}

div.drawer-menu nav ul.sp-nav03 li img{ 
  display: block;
  width:100%;
  height: auto;
  margin: 0 auto;
}

/*--- nav04 ---*/

div.drawer-menu nav ul.sp-nav04{ 
  width:100%;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  background-color: #CCC;
  padding: 0;
  margin: 0 auto 30px auto;
}

div.drawer-menu nav ul.sp-nav04 li{ 
  width:calc( ( 100% - 1px ) / 2 );
  background-color: #313140;
  padding:0;
  margin: 0 0 1px 0;
}

div.drawer-menu nav ul.sp-nav04 li.full{ 
  width:100%;
  margin: 0;
}

div.drawer-menu nav ul.sp-nav04 li a{ 
  display: block;
  width:100%;
  height: 100%;
  font-size: 12px; font-size: 1.2rem;
  color: #FFF;
  line-height: 130%;
  text-align: center;
  text-decoration: none;
  padding:20px 0;
  margin: 0;
}

/*--- side-nav-info---*/

div.drawer-menu nav dl.sp-nav-info{ 
  width:100%;
  background-color: #FFF;
  padding: 30px 0;
  margin: 0;
}

@media print, screen and (min-width:640px) and (max-width:960px){
  div.drawer-menu nav dl.sp-nav-info{ 
    padding: 40px 0;
    margin: 0;
  }
}

div.drawer-menu nav dl.sp-nav-info dt{ 
  width:40%;
  min-width: 180px;
  border: 1px solid #1B3F40;
  font-weight: 500;
  font-size: 13px;
  color: #1B3F40;
  text-align: center;
  padding: 10px 0;
  margin: 0 auto 20px auto;
} 

div.drawer-menu nav dl.sp-nav-info dd{ 
  width:90%;
  max-width: 360px;
  font-weight: 500;
  font-size: 12px; font-size: 1.2rem;
  color: #1B3F40;
  text-align: center;
  padding: 0;
  margin: 0 auto;
} 

div.drawer-menu nav dl.sp-nav-info dd img{ 
  display: block;
  width:90%;
  padding: 0;
  margin: 0 auto 10px auto;
}

/*-----------   copyright  ----------*/

div.drawer-menu dl.sp-nav-copyright{
  width:90%;
  padding: 0;
  margin: 0 auto;
}

div.drawer-menu dl.sp-nav-copyright dt{
  font-size: 16px; font-size: 1.6rem;
  text-align: center;
  color: #212121;
  margin: 0 0 20px 0;
}

div.drawer-menu dl.sp-nav-copyright dd{
  font-size: 16px; font-size: 1.6rem;
  margin: 0 0 20px 0;
}

div.drawer-menu dl.sp-nav-copyright dd span{
  display: block;
  font-size: 12px; font-size: 1.2rem;
  line-height: 100%;
  color: #212121;
  text-align: center;
  margin: 0 0 10px 0;  
}

div.drawer-menu dl.sp-nav-copyright dd img{
  display: block;
  width:110px;
  margin: 0 auto;
}

div.drawer-menu small{ 
  display: block;
  width:90%;
  font-size: 11px; font-size: 1.1rem;
  text-align: center;
  line-height: 135%;
  color: #666;
  padding: 0 0 20px 0;
  margin: 0 auto 20px auto;
}

div.drawer-menu nav a.side-bn{ 
  display: block;
  width:100%;
  border-bottom: 1px solid #FFF;
  padding: 0;
  margin: 0 auto;
}

div.drawer-menu nav a.side-bn img{ 
  width:100%;
}

/*-----------   spn-bt-nav  ----------*/

aside.spn-bt-nav{
  display: none;
}

@media print, screen and (max-width:960px) { 
  aside.spn-bt-nav{
    display: block;
    width:100%;
    box-shadow: 2px -2px 4px 4px rgba(0,0,0,0.3);
    position: fixed;
    bottom:0;
    left:0;
    padding: 0;
    margin: 0;  
    z-index: 105;
  }
}

aside.spn-bt-nav div.sp-free-search{
  width:100%;
  background: rgba( 0, 0, 0, 0.7);
  padding: 12px 10px;
  /*-webkit-box-shadow:0 0 6px 2px rgba(0,0,0,0.5);
	-moz-box-shadow:0 0 6px 2px rgba(0,0,0,0.5);*/
}

aside.spn-bt-nav div.sp-free-search div{
  width:100%;
  display: flex;
  flex-flow: row nowrap;
}

aside.spn-bt-nav div.sp-free-search div input[type=text] {
  -webkit-appearance: none;
  border-radius: 0;
}

aside.spn-bt-nav div.sp-free-search div input.freeword{
  display: block;
  width:80%;
  height:50px;
  background: #FFF;
  border: none;
  /* 右上のみ角丸 */
  border-top-left-radius: 6px;
  -webkit-border-top-left-radius: 6px;
  -moz-border-radius-topleft: 6px;
   /* 右下のみ角丸 */
  border-bottom-left-radius: 6px;
  -webkit-border-bottom-left-radius: 6px;
  -moz-border-radius-bottomleft: 6px;
  font-size: 16px; font-size: 1.6rem;
  padding: 0 10px;
  margin: 0;
  cursor: pointer;
}

aside.spn-bt-nav div.sp-free-search div input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}

aside.spn-bt-nav div.sp-free-search div input.h-search-btn{
  display: block;
  width:20%;
  min-width:80px;
  height:50px;
  background:#000;
  /* 右上のみ角丸 */
  border-top-right-radius: 6px;
  -webkit-border-top-right-radius: 6px;
  -moz-border-radius-topright: 6px;
  /* 右下のみ角丸 */
  border-bottom-right-radius: 6px;
  -webkit-border-bottom-right-radius: 6px;
  -moz-border-radius-bottomright: 6px;
  border: 1px solid #000;
  font-size: 13px; font-size: 1.3rem;
  color: #FFF;
  padding: 0;
  margin:0;
  cursor: pointer;
}

aside.spn-bt-nav ul{
  width:100%;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  padding: 0;
  margin: 0;
}

aside.spn-bt-nav ul li{
  position: relative;
}

aside.spn-bt-nav ul li.bt-nav01{
  width:60px;
  background-color: #313140;
}

aside.spn-bt-nav ul li.bt-nav02,
aside.spn-bt-nav ul li.bt-nav03,
aside.spn-bt-nav ul li.bt-nav04,
aside.spn-bt-nav ul li.bt-nav05{
  width:calc( (100% - 60px) / 2 );
  height: 60px;
  border-left: 1px solid #FFF;
}

aside.spn-bt-nav ul li.bt-nav06{
  width:calc( 100% - 60px );
  height: 60px;
  border-left: 1px solid #FFF;
}

aside.spn-bt-nav ul li.bt-nav02,
aside.spn-bt-nav ul li.bt-nav04{
  background-color: #0E1A63;
}

aside.spn-bt-nav ul li.bt-nav03,
aside.spn-bt-nav ul li.bt-nav05,
aside.spn-bt-nav ul li.bt-nav06{
  background-color: #F0209D;
}

aside.spn-bt-nav ul li a{
  display: block;
  width:100%;
  height: 100%;
  color: #FFF;
  text-align: center;
}

aside.spn-bt-nav ul li.bt-nav01 a,
aside.spn-bt-nav ul li.bt-nav02 a,
aside.spn-bt-nav ul li.bt-nav03 a{
  font-size:11px; font-size:1.1rem;
}

aside.spn-bt-nav ul li.bt-nav02 a::before,
aside.spn-bt-nav ul li.bt-nav03 a::before{
  content: "";
  width:24px;
  height:24px;
  position: absolute;
  top:10px;
  left:50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

aside.spn-bt-nav ul li.bt-nav02 a::before{
  background: url(/common/images/sp-bt-icon01.png) no-repeat 0 0;
  background-size: 75%;
}

aside.spn-bt-nav ul li.bt-nav03 a::before{
  background: url(/common/images/sp-nav-icon01.png) no-repeat 0 2px;
  background-size: 63%;
}

aside.spn-bt-nav ul li.bt-nav01 span{
  display: inline-block;
  width:100%;
  font-weight: 700;
  text-align: center;
  position: absolute;
  bottom:9px;
  left:50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

aside.spn-bt-nav ul li.bt-nav02 span,
aside.spn-bt-nav ul li.bt-nav03 span{
  display: inline-block;
  width:100%;
  font-size: 16px; font-size:1.6rem;
  font-weight: 700;
  text-align: center;
  position: absolute;
  bottom:9px;
  left:50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

aside.spn-bt-nav ul li.bt-nav04 span,
aside.spn-bt-nav ul li.bt-nav06 span{
  display: inline-block;
  width:100%;
  font-size: 11px; font-size: 1.1rem;
  font-weight: 700;
  text-align: center;
  position: absolute;
  top:50%;
  left:50%;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

aside.spn-bt-nav ul li.bt-nav05 span{
  display: inline-block;
  width:100%;
  font-weight: 700;
  text-align: center;
  position: absolute;
  top:50%;
  left:50%;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

aside.spn-bt-nav ul li.bt-nav04 a span strong,
aside.spn-bt-nav ul li.bt-nav06 a span strong{
  position: relative;
  display: inline-block;
  font-weight: 700;
  padding: 0 0 0 22px;
  margin: 3px 0 0 0;
}

aside.spn-bt-nav ul li.bt-nav04 a span strong::before,
aside.spn-bt-nav ul li.bt-nav06 a span strong::before{
  content: "";
  width: 17px;
  height:17px;
  background:url(/common/images/icon-tel.png) no-repeat 0 0;
  background-size:100%;
  position: absolute;
  top:55%;
  left:0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}


/* contents
========================================================================================================
*/

/*------------------------------------------------------------------------------------------------------------------------
                                                                 breadcrumbs
--------------------------------------------------------------------------------------------------------------------------*/

aside#breadcrumbs{
  width:100%;
  background-color:#000;
}

aside#breadcrumbs nav{
  position: relative;
  width:100%;
  max-width: 1400px;
  height: 40px;
  margin: 0 auto;
}

aside#breadcrumbs nav ol{
  width:98%;
  display: flex;
  flex-flow: row wrap;
  position: absolute;
  top:50%;
  left:50%;
  -webkit-transform: translate(-50%-50%,);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

aside#breadcrumbs nav ol li{
  font-size: 12px; font-size: 1.2rem;
  line-height: 120%;
  color: #FFF;
}

@media print, screen and (min-width:960px) { 
  aside#breadcrumbs nav ol li{ 
    font-size: 14px; font-size: 1.4rem;
  }
}

aside#breadcrumbs nav ol li a::after{
  content: " ／ ";
  width:20px;
  height: 20px;
  color: #FFF;
}

aside#breadcrumbs nav ol li a{
  color: #FFF;
  text-decoration: none;
}

aside#breadcrumbs nav ol li a:hover{
  color: #00BFFF;
}

/*------------------------------------------------------------------------------------------------------------------------
                                                                     contents
--------------------------------------------------------------------------------------------------------------------------*/

#second article h1{
  width:90%;
  font-size:18px; font-size:1.8rem;
  color:#6DB82B;
  line-height:20px;
  padding:0;
  margin:0 auto;  
}

@media print, screen and (min-width:640px) and (max-width:959px){
 #second article h1{
  width:90%;
  font-size:24px; font-size:2.4rem;
  line-height:24px;
  }
}

@media print, screen and (min-width:960px) { 
 #second article h1{
  width:100%;
  font-size:24px; font-size:2.4rem;
  line-height:24px;
 }
}

/* ======== h1 ========*/

h1.title01{
  width:100%;
  background-color:#000;
  font-size:18px; font-size:1.8rem;
  text-align:center;
  color:#FFF;
  padding:20px 0;
}

@media print, screen and (min-width:960px) { 
 h1.title01{
  width:960px;
  height:50px;
  background:url(/common/images/title01.png) no-repeat 0 0;
  font-size:20px; font-size:2.0rem;
  line-height:50px;
  padding:0;
 }
}

h1.title02{
  width:100%;
  background-color:#000;
  font-size:18px; font-size:1.8rem;
  text-align:center;
  color:#FFF;
  padding:20px 0;
}

@media print, screen and (min-width:960px) {
 h1.title02{
   width:100%;
   max-width: 750px;
   height:50px;
   background:url(/common/images/title01.png) no-repeat 0 0;
   font-size:20px; font-size:2.0rem;
   line-height:50px;
   padding:0;
 }
}

/* ======== h2 ========*/

#second h2.title01{
  width:100%;
  height:70px;
  background:url(/common/images/guts-mark03.png) no-repeat right 10px  #313140;
  font-size:1.8rem;
  line-height:70px;
  text-align:center;
  color:#FFF;
  font-weight: 700;
  padding:0 10px;
  margin:0 0 20px 0;
  /*margin:20px 0;*/
}

@media print, screen and (min-width:640px) {
 #second h2.title01{
   font-size:2.0rem;
   margin:0 0 30px 0;
   /*margin:30px 0;*/
 }
}
@media print, screen and (min-width:960px) {
 #second h2.title01{
   /*max-width:850px;*/
   margin:0 0 30px 0;
   /*margin:30px 0;*/
 }
}

#second h2.title02{
  width:90%;
  background:url(/common/images/title08.png) no-repeat right 0 #6EB92B;
  font-size:18px; font-size:1.8rem;
  line-height:130%;
  text-align:center;
  color:#FFF;
  padding:5px 0;
  margin:0 auto;  
}

@media print, screen and (min-width:960px) {
 #second h2.title02{
   width:100%;
   max-width:750px;
   height:40px;
   background:url(/common/images/title08.png) no-repeat right 0 #6EB92B;
   font-size:18px; font-size:1.8rem;
   line-height:40px;
   padding:0 0 0 20px;
   margin:0 0 30px 0;  
 }
}

/*------------------------------------------------------------------------------------------------------------------------
                                                                    mc-banner
--------------------------------------------------------------------------------------------------------------------------*/

#second article section p.mc-banner02{
  width:100%;
  position:absolute;
  top:20px;
  left:0;
  padding:0 10px 10px 10px;
}


@media print, screen and (min-width:960px) {
 #second article section p.mc-banner02{
   max-width:690px;
   position:absolute;
   top:40px;
   left:0;
   padding:0;
 }
}

/*------------------------------------------------------------------------------------------------------------------------
                                                                 sc-banner
--------------------------------------------------------------------------------------------------------------------------*/

#second article section  p.sc-banner{
  width:90%;
  margin:0 auto;
}

@media print, screen and (min-width:640px) {
 #second article section  p.sc-banner{
  width:690px;
  margin:0 auto;
 }
}

/* pager
========================================================================================================
*/
#second article section aside#pager{
  width: 100%;
  max-width: 100%;
  padding:0;
  margin:30px auto 50px auto;
}

@media print, screen and (min-width:640px)  { 
  #second article section aside#pager{
    max-width: 100%;  
    margin:50px auto 80px auto;
  }
}

 #second article section aside#pager div{
  width:100%;
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  font-size: 12px; font-size: 1.2rem;
  color: #FFF;
  padding:0;
  margin:0;
}

@media print, screen and (min-width:640px)  { 
  #second article section aside#pager div{
   font-size: 16px; font-size: 1.6rem;
   padding:0;
   margin:0;
 }
}

#second article section aside#pager a.page,
#second article section aside#pager span, 
#second article section aside#pager a.first,
#second article section aside#pager a.last{
  display: block;
  width:25px;
  height: 25px;
  background-color: #BBB;
  border: none;
  border-right:1px solid #FFF; 
  text-align: center;
  line-height: 25px;
  text-decoration: none;
  color: #FFF;
  padding: 0;
  margin: 0 ;
}

@media print, screen and (min-width:640px)  { 
 #second article section aside#pager a.page,
 #second article section aside#pager span,
 #second article section aside#pager a.first,
 #second article section aside#pager a.last{
  display: block;
  width:35px;
  height: 35px;
  background-color: #BBB;
  border: none;
  border-right:1px solid #FFF; 
  text-align: center;
  line-height: 35px;
  color: #FFF;
  padding: 0;
  margin: 0 ;
  }
}

#second article section aside#pager span.current{
  background-color: #5BBC14;
}

#second article section aside#pager a.page:hover,
#second article section aside#pager a.first:hover,
#second article section aside#pager a.last:hover{
  background-color: #5BBC14;
  text-decoration: none;
}

#second article section aside#pager a.previouspostslink,
#second article section aside#pager a.nextpostslink{
  width:25px;
  height: 25px;
  text-align: center;
  line-height:25px;
  color: #000;
  padding: 0;
  margin: 0;
}

@media print, screen and (min-width:640px)  { 
 #second article section aside#pager a.previouspostslink,
 #second article section aside#pager a.nextpostslink{
   width:35px;
   height: 35px;
   text-align: center;
   line-height: 35px;
   padding: 0;
   margin: 0;
   text-decoration: none;
  }
}

#second article section aside#pager span.extend{
  width:25px;
  height: 25px;
  background-color:inherit;
  text-align: center;
  line-height:25px;
  color: #999;
  padding: 0;
  margin: 0;
}

@media print, screen and (min-width:640px)  { 
  #second article section aside#pager span.extend{
  width:35px;
  height: 35px;
  text-align: center;
  line-height: 35px;
  padding: 0;
  margin: 0;
  }
}

/* footer
========================================================================================================
*/

footer{
  position: relative;
	width:100%;
}

footer div.footer01{
  display: none;
}

@media print, screen and (min-width:960px) {
  footer div.footer01{
    display: block;
    position: relative;
	  width:100%;
    background: rgba( 0, 0, 0, 0.85);
    padding: 0 1.5%;
    margin: 0;
    z-index: 1200;
  }
}

footer div.footer02{
  position: relative;
	width:100%;
  background-color: #000;
  color: #FFF;
  padding: 0;
  margin: 0;
}

footer div.footer02 div.f-wrap{
  display: none;
 }

@media print, screen and (min-width:960px) {
 footer div.footer02 div.f-wrap{
   display: block;
   position: relative;
   width:97%;
   max-width:1400px;
   padding:40px 0 0 0;
   margin: 0 auto;
  }
}

/* footer01
--------------------------------------------------------
*/

footer div.footer01 div.ft01{
  display: none;
}

@media print, screen and (min-width:960px) {
  footer div.footer01 div.ft01{
    position: relative;
    width:100%;
    max-width:1400px;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    padding: 25px 0;
    margin: 0 auto;
  }
}

div.ft01 h2{
  width:22%;
  padding: 0;
  margin: 0;
}

div.ft01 h2 img{
  width:68%;
  max-width: 180px;
}

div.ft01 div.ft01-01{
  width:78%;
  padding: 0;
  margin: 0;
}

div.ft01 div.ft01-01 ul.ft01-nav{
  width:100%;
  display:flex;
  flex-flow: row wrap;
  justify-content:space-around;
  padding: 0;
  margin:0 auto;
}

div.ft01 div.ft01-01 ul.ft01-nav li a{
  font-size: 1.2rem;
  color: #FFF;
  font-weight: 600;
  text-decoration: none;
  margin: 0 5px;
  transition: 1s;
}

@media print, screen and (min-width:1000px) {
  div.ft01 div.ft01-01 ul.ft01-nav li a{
   font-size: 1.4rem;
  }
}

div.ft01 div.ft01-01 ul.ft01-nav li a:hover{
  color: #DC2392;
}

div.ft01-01 div.ft01-02{
  width:100%;
  display:flex;
  flex-flow: row nowrap;
  background-color: #FFF;
  box-shadow: 0 0 15px #111;
  padding: 20PX;
  margin: 25px 0 0 0;
}

div.ft01-01 div.ft01-02 div.ft01-search{
  width:50%;
  padding: 0;
  margin: 0;
}

div.ft01-01 div.ft01-02 div.ft01-search form div{
  display: flex;
  flex-flow: row wrap;
  padding: 0;
  margin: 0;
}

div.ft01-01 div.ft01-02 div.ft01-search form div input.freeword{
  width:72%;
  height: 50px;
  border: 1PX solid #CCC;
  font-size: 14px; font-size: 1.4rem;
  color: #000;
  padding: 5px;
  margin: 0;
}

div.ft01-01 div.ft01-02 div.ft01-search form div input.h-search-btn{
  width:22%;
  height: 50px;
  background: #6DC50E;
  /*background: #313140;*/
  border-radius: 0;
  border: 0;
  font-size: 1.4rem;
  font-weight: 600;
  color: #FFF;
  text-align: center;
  padding: 0;
  margin: 0;
  cursor: pointer;
  transition: 1s;
}

div.ft01-01 div.ft01-02 div.ft01-search form div input.h-search-btn:hover{
  opacity: inherit;
  background: #92EE42;
}

@media print, screen and (min-width:1000px) {
div.ft01-01 div.ft01-02 div.ft01-search form div input.freeword{
  font-size: 1.6rem;
  }

div.ft01-01 div.ft01-02 div.ft01-search form div input.h-search-btn{
  font-size: 1.6rem;
  }
}

/* ---------ft01-02-rev--------- */

div.ft01-01 div.ft01-02-rev{
  width:100%;
  display: block;
  background-color: #FFF;
  box-shadow: 0 0 15px #111;
  padding: 20PX;
  margin: 25px 0 0 0;
}

div.ft01-01 div.ft01-02-rev ul{
  width:100%;
  display: flex;
  flex-flow: row wrap;
  padding: 0;
  margin: 0 ;
}

div.ft01-01 div.ft01-02-rev ul li{
  position: relative;
  width:50%;
  height: 50px;
  padding: 0;
  margin: 0;
}

/* -------  div.ft01-02  ---------*/

div.ft01-01 div.ft01-02 ul{
  width:50%;
  display: flex;
  flex-flow: row wrap;
  padding: 0;
  margin: 0;
}

div.ft01-01 div.ft01-02 ul li{
  position: relative;
  width:50%;
  padding: 0;
  margin: 0;
}

div.ft01-01 div.ft01-02 ul li a,
div.ft01-01 div.ft01-02-rev ul li a{
  display: block;
  width:100%;
  height: 100%;
}

div.ft01-01 div.ft01-02 ul li span,
div.ft01-01 div.ft01-02-rev ul li span{
  width:100%;
  font-size: 1.4rem;
  color: #FFF;
  font-weight: 600;
  text-align: center;
  position: absolute;
  top:50%;
  left:0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media print, screen and (min-width:1000px) {
div.ft01-01 div.ft01-02 ul li span,
div.ft01-01 div.ft01-02-rev ul li span{
  font-size: 1.6rem;
  }
}

div.ft01-01 div.ft01-02 ul li.ft01-btn01 a,
div.ft01-01 div.ft01-02-rev ul li.ft01-btn01 a{
  background-color: #0E1A63;
  transition: 1s;
}

div.ft01-01 div.ft01-02 ul li.ft01-btn02 a,
div.ft01-01 div.ft01-02-rev ul li.ft01-btn02 a{
  background-color: #F0209D;
  transition: 1s;
}

div.ft01-01 div.ft01-02 ul li.ft01-btn01 a:hover,
div.ft01-01 div.ft01-02 ul li.ft01-btn01-rev a:hover,
div.ft01-01 div.ft01-02-rev ul li.ft01-btn01 a:hover{
  background-color:#003AE8;
}

div.ft01-01 div.ft01-02 ul li.ft01-btn02 a:hover,
div.ft01-01 div.ft01-02 ul li.ft01-btn02-rev a:hover,
div.ft01-01 div.ft01-02-rev ul li.ft01-btn02 a:hover{
 background-color:#F45EB8;
}


/* footer02
--------------------------------------------------------
*/

/*--------------------
    footer-nav01
---------------------*/

div.ft02-nav01{
  width:100%;
  max-width: 1400px;
  height: 40px;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}

div.ft02-nav01 ul.media-link{
  width:300px;
}

div.ft02-nav01 ul.enquiry-link{
  width:56%;
  max-width: 685px;
}

/*------------------------------------------------------------
                                  media-link
-------------------------------------------------------------*/

ul.media-link{
  width:100%;
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
}

ul.media-link li{
  width:28px;
  margin:0 10px 0 0; 
}

ul.media-link li img{
  width:100%;
}

/*------------------------------------------------------------
                                  enquiry-link
-------------------------------------------------------------*/
ul.enquiry-link{
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}

ul.enquiry-link li{
  position: relative;
  width:32%;
  max-width: 215px;
  min-height: 40px;
  background: #252525;
  /*border-radius: 5px;*/
  transition: 1s;
}

ul.enquiry-link li:hover{
  background: #1D1D25;
}

ul.enquiry-link li a{
  display: block;
  width:100%;
  height: 100%;
}

ul.enquiry-link li a span{
  display: block;
  width:100%;
  font-size: 1.5rem;
  font-weight: 600;
  color: #FFF;
  text-align: center;
  position: absolute;
  top:50%;
  left:0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

/*------------------------------------------------------------
                               footer-nav02
-------------------------------------------------------------*/

/*---ul--*/ 

ul.ft-nav02{
  width:95%;
  border-top:1px solid #999;
  font-size:1.2rem;
  padding:15px 0 20px 5px;
  margin:15px auto 20px auto;
}

@media print, screen and (min-width:960px) {
 ul.ft-nav02{
   width:100%;
   border-top:none;
   text-align: right;
   font-size:1.4rem;
   font-weight: 600;
   padding:0;
   margin:60px 0 20px 0;
 }
}

/*---li--*/

ul.ft-nav02 li{
  display:block;
  margin:0 8px 15px 0;
}

@media print, screen and (min-width:960px) {
 ul.ft-nav02 li{
  display:inline-block;
  margin:0 0 0 15px;
 }
}

/*---a--*/

ul.ft-nav02 li a{
  color:#FFF;
  text-decoration:none;
  transition: 1s;
}

ul.ft-nav01 li a:hover,
ul.ft-nav02 li a:hover{
  color:#DC2392;
  text-decoration:none; 
}

/*------------------------------------------------------------
                              footer-section
-------------------------------------------------------------*/
 
@media print, screen and (min-width:960px) {
   footer div.footer02 section{   
    position:relative;
    width:100%;
    max-width:1200px;
    border-bottom:1px solid #333;
    padding:0 0 15px 0;
    margin:40px auto 0 auto;
  }

 footer div.footer02 section h1{
  height:95px;
  border-top:1px solid #333;
  border-bottom:1px solid #333;
  font-size:24px; font-size:2.4rem;
  font-weight: 700;
  text-align:center;
  line-height:95px;
  padding:0;
  margin:0 0 30px 0;
  }
}

/*------------------  shop list -------------------*/
  
 footer div.footer02 section div.list-category01{
   width:100%;
   max-width: 1200px;
   display: flex;
   flex-flow: row nowrap;
   justify-content: space-between;
   margin: 0 0 10px 0;
 }
  
 footer div.footer02 section div.list-category01 div{
   width:calc( 100% - 110px);
   display: flex;
   flex-flow: row wrap;
   justify-content: space-between;
 }
  
 footer div.footer02 section div.list-category01 h2{
   position: relative;
   width:100px;
   height:28px;
   background-color: #313140;
   color: #FFF;
   cursor: pointer;
   transition: 1s;
 }
  
footer div.footer02 section div.list-category01 h2 span{
  display: block;
  width:100%;
  font-size: 14px; font-size: 1.4rem;
  color: #FFF;
  text-align: center;
  position: absolute;
  top:50%;
  left:50%;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}
  
 footer div.footer02 section div.list-category01 h2:hover{   
   background-color: #DC2392;
 }

div.list-category02 h3{
  position: relative;
  width: 85px;
  height: 28px;
  border: 1px solid #313140;
  transition: 1s;
}
  
div.list-category02 h3 span{ 
  display: block;
  width:100%;
  font-size: 13px; font-size: 1.3rem;
  color: #CCC;
  text-align: center;
  position: absolute;
  top:50%;
  left:50%;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}
  
div.list-category02 h3:hover{
  border: 1px solid #DC2392;
  background-color: #DC2392;
}
  
div.list-category02 ul{ 
  width:calc( 100% - 95px );
  display: flex;
  flex-flow: row wrap;
 }

div.list-category02 ul li{ 
  background-color: #1A1A1A;
  padding: 7px 10px;
  margin: 0 2.5px 5px 2.5px;
  cursor: pointer;
  transition: 1s;
}

div.list-category02 ul li span{ 
  display: block;
  width:100%;
  height: 100%;
  font-size: 13px; font-size: 1.3rem;
  font-weight: 400;
  color: #F4F4F4;
  cursor: default;
}
  
div.list-category02 ul li a{ 
  display: block;
  width:100%;
  height: 100%;
  font-size: 13px; font-size: 1.3rem;
  font-weight: 400;
  color: #F4F4F4;
  text-decoration: none;
  transition: 1s;
}
  
div.list-category02 ul li:hover{  
  background-color: #DC2392;
}
 
/*------------------------------------------------------------
                                      ft-spn
-------------------------------------------------------------*/

ul.ft-spn{
  width:100%;
  position:fixed;
  border-top:1px solid #FFF;
  bottom:0;
  left:0;
}

ul.ft-spn li{
  width:50%;
  height:40px;
  float:left;
  opacity:0.9;
}

ul.ft-spn li a{
  display:block;
  text-align:center;
  text-decoration:none;
  line-height:40px;
  color:#FFF;
}

li.ft-spn01{
  border-right:1px solid #FFF;
  background-color:#0046D9;
}

li.ft-spn02{
  border-right:1px solid #FFF;
  background-color:#DC2392;
}

/*----------------------------------------------------------------
                            ft-spn shop-contact
-----------------------------------------------------------------*/

div#shop-contact{
  width:100%;
  display: flex;
  flex-flow: row nowrap;
  background: rgba( 0, 0, 0, 0.85);
  border-bottom: 1px solid #FFF;
  position:fixed;
  bottom:60px;
  left:0;
  padding:10px 0;
  margin: 0;
}

@media print, screen and (min-width:960px) {
  div#shop-contact{
    display: none;
  }
}

div#shop-contact dl.shop-c01{
  width:60%;
  padding:0;
  margin: 0;
}

div#shop-contact dl.shop-c01 dt{
  font-size:12px; font-size:1.2rem;
  color:#FFF;
  text-align:center;
  line-height:100%;
  padding: 0;
  margin: 5px 0;
}

div#shop-contact dl.shop-c01 dd{
  font-size:14px; font-size:1.4rem;
  color:#FFF;
  text-align:center;
  padding: 3px 0 0 0;
  margin: 0;
}

div#shop-contact dl.shop-c01 dd a{
  display: inline-block;
  position: relative;
  font-size:14px; font-size:1.4rem;
  color:#FFF;
  text-align:center;
  text-decoration: none;
  padding: 0 0 0 25px;
}

div#shop-contact dl.shop-c01 dd a:before{ 
  content: "";
  width: 15px;
  height:15px;
  background:url(/common/images/icon-tel.png) no-repeat 0 0;
  background-size:100%;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}


div#shop-contact div.shop-c02{
  width:40%;
  padding:0 5px 0 0;
  margin: 0;
}

div#shop-contact div.shop-c02 a{
  position: relative;
  display: block;
  width:100%;
  height: 38px;
  padding:0;
  margin: 0 auto;
}

div#shop-contact div.shop-c02 a span{
  display: block;
  width:95%;
  font-size: 13px; font-size: 1.3rem;
  text-align: center;
  position: absolute;
  top:50%;
  left:50%;
  -webkit-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
}

/*------------------------------------------------------------
                                ft-spn mypage
-------------------------------------------------------------*/

ul#mypage-nav{
  width:100%;
  position:fixed;
  border-top:1px solid #FFF;
  bottom:0;
  left:0;
  z-index:1000;
}

ul#mypage-nav li{
  width:25%;
  height:48px;
  float:left;
  padding:0;
  background-color:#5BBC14;
  border-right:1px solid #FFF;
}

ul#mypage-nav li:last-child{
  border-right:none;
}

ul#mypage-nav li img{
  width:65px;
  display:block;
  margin:0 auto;
}

/*--------------------
         samall
---------------------*/

footer small{
  display: none;
}

@media print, screen and (min-width:960px) {
 footer small{
  width:100%;
  height:40px;
  display:block;
  background-color:#6DC50E;
  font-size:1.4rem;
  text-align:center;
  line-height:40px;
  margin: 0;
 }
}

/*================ pagetop ================*/

#page-top {
  position: fixed;
  bottom: 70px;
  right: 5px;
  z-index: 1201;
}

#page-top a {
  width: 35px;
  height:35px;
  display: block;
  background:url(/common/images/top.png) no-repeat 50% 48% #000;
	background-size:15.6px 10.8px;
  border-radius: 5px;
	border:1px solid #333;
  text-align: center;
  text-decoration: none;
  color: #fff;
  padding:0;
}

@media print, screen and (min-width:960px) {
 #page-top {
	position: fixed;
  bottom:30px;
  right: 25px;
 }
 #page-top a {
  width: 50px;
  height:50px;
	background:url(/common/images/top.png) no-repeat 50% 50% #000;
	background-size:26px 18px;
 }
}

#page-top a:hover {
  text-decoration: none;
  opacity:0.8;
}

@media print, screen and (min-width:960px) {
	.boxer-content {
	  width:80%;
    height:100%;
	}
}

/*------------------------------------------------------------------------------------------------------------------------
                                                                         recommend
-------------------------------------------------------------------------------------------------------------------------*/

aside#recommend{
  position: relative;
  background: url(/images/home50.jpg) no-repeat 50% 50%;
  background-size: cover;
  width:100%;
  padding: 40px 0 30px 0;
}

@media print, screen and (min-width:640px) {
  aside#recommend{
   padding: 90px 0;
  }
}

aside#recommend div.recommend-ct{
  width:90%;
  margin: 0 auto;
}

@media print, screen and (min-width:640px) {
  aside#recommend div.recommend-ct{
   width:95%;
   max-width: 1400px;
   display: flex;
   flex-flow: row wrap;
   justify-content: space-between;
   margin: 0 auto;
  }
}

div.recommend-ct h2{
  width:100%;
  font-size: 24px; font-size: 2.4rem;
  font-weight: 900;
  color: #FFF;
  text-align: center;
  margin: 0 0 40px 0;
}

@media print, screen and (min-width:640px) {
  div.recommend-ct h2{
   font-size: 36px; font-size: 3.6rem;
   margin: 0 0 70px 0;
  }
}

div.recommend-ct dl.rm-ct01{
  width:21%;
}

div.recommend-ct dl.rm-ct01 dt{
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #FFF;
  padding: 20px 0;
  text-align: center;
  font-size: 18px; font-size: 1.8rem;
  font-weight: 700;
  color: #FFF;
}

div.recommend-ct dl.rm-ct01 dd ul{
  width: 100%;
  text-align: center;
  margin:40px 0 0 0;
}

div.recommend-ct dl.rm-ct01 dd ul li + li{
  margin:20px 0 0 0 ;
}


div.recommend-ct dl.rm-ct01 dd ul li a{
  font-size: 1.6rem;
  color: #FFF;
  text-align: center;
  text-decoration: none;
  transition: 1s;
}

div.recommend-ct dl.rm-ct01 dd ul li a:hover{
  color: #00BFFF;
}

div.recommend-ct ul.rm-ct02{
  width:100%;
  /*display: flex;
  flex-flow: row wrap;*/
  margin: 0 auto;
}

@media print, screen and (min-width:460px) {
  div.recommend-ct ul.rm-ct02{  
  width:100%;
  display: flex;
  flex-flow: row wrap;
  margin: 0 auto;
  }
}

@media print, screen and (min-width:960px) {
  div.recommend-ct ul.rm-ct02{  
    display: flex;
    flex-flow: row wrap;
    width:75%;
    margin: 0;
  }
}

div.recommend-ct ul.rm-ct02 li{
  width:100%;
  /*width:calc( ( 100% - 4% ) / 2 );*/
  margin: 0 0 10px 0;
}

@media print, screen and (min-width:460px) {
 div.recommend-ct ul.rm-ct02 li{
   width:100%;
   width:calc( ( 100% - 4% ) / 2 );
   margin: 0 1% 10px 1%;
  }
}

@media print, screen and (min-width:960px) {
  div.recommend-ct ul.rm-ct02 li{
    width:calc( ( 100% - 3% ) / 3 );
    padding: 0;
    margin: 0 1% 10px 0;
  }
}

div.recommend-ct ul.rm-ct02 li a{
  display: inline;
}

div.recommend-ct ul.rm-ct02 li img{
  display: block;
  width: 100%;
}

/*------------------------------------------------------------------------------------------------------------------------
                                                                         app
-------------------------------------------------------------------------------------------------------------------------*/

aside#ft-app{
	width:100%;
	background-color: #F4F4F4;
	padding: 40px 0 100px 0;
	margin: 0;
}

@media print, screen and (min-width:960px) {
 aside#ft-app{
	 padding: 60px 0 180px 0;
	 margin: 0;
	}
}

aside#ft-app div.app{
	position: relative;
	width:100%;
	margin: 0 auto;
}

@media print, screen and (min-width:640px) {
  aside#ft-app div.app{
	  position: relative;
	  width:100%;
    max-width:1200px;
    display: flex;
    flex-flow: row nowrap;
    align-items:flex-end;
    padding: 0 2%;
	  margin: 0 auto;
  }
}

aside#ft-app div.app div.app01{
	width:90%;
  margin: 0 auto;
}

@media print, screen and (min-width:960px) {
aside#ft-app div.app div.app01{
	width:56%;
  padding: 0 0 80px 0;
  }
}

aside#ft-app div.app div.app02{
	width:44%;
}

aside#ft-app div.app01 h2{
  width:100%;
  background-color: #6DC50E;
  font-size: 18px; font-size: 1.8rem;
  font-weight: 900;
  color: #FFF;
  text-align: center;
  padding: 15px 0;
  margin: 0 auto;
}

@media print, screen and (min-width:960px) {
 aside#ft-app div.app01 h2{
   width:100%;
   font-size: 26px; font-size: 2.6rem;
   padding: 15px 0;
  }
}

aside#ft-app div.app01 p{
  width:85%;
  text-align: center;
  line-height: 175%;
  margin: 15px auto 30px auto;
  /*text-align: left;*/
}

@media print, screen and (min-width:960px) {
  aside#ft-app div.app01 p{
    width:100%;
    text-align: center;
    line-height: 175%;
    text-align: center;
    margin: 30px 0 40px 0;
  }
}

aside#ft-app div.app01 ul{
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
}

aside#ft-app div.app01 ul li{
  margin: 0 5px;
}

aside#ft-app div.app01 ul li.btn-app01 img{
  width:134px;
  height: 40px;
}

aside#ft-app div.app01 ul li.btn-app02 img{
  width:109px;
  height: 40px;
}

@media print, screen and (min-width:640px) {
  aside#ft-app div.app01 ul li.btn-app01 img{
    width:168px;
    height: 50px;
  }
  aside#ft-app div.app01 ul li.btn-app02 img{
    width:136px;
    height: 50px;
  }
}

aside#ft-app div.app02 img{
  display: block;
	width:68%;
  margin: 0 0 0 auto;
}

div#contents{
  width:100%;
  max-width:960px;
  margin: 0 auto;
}

div#contents article#member{
  margin: 0;
}

/*---------------side-nav-----------------*/

aside#member-nav section.side-nav{
  padding:0 0 10px 0;
  margin:0;
}

/* ========h1 ========*/

aside#member-nav section.side-nav h1{
  width:100%;
  max-width:240px;
  height:45px;
  background-color:#000;
  font-size:18px; font-size:1.8rem;
  font-weight:normal;
  color:#FFF;
  text-align:center;
  line-height:45px;
}


/* ======== nav ========*/

aside#member-nav section.side-nav nav{
  width:100%;
  max-width:240px;
  border:1px solid #CCC;
  padding:10px 0 5px 0;
  margin:0;
}

aside#member-nav section.side-nav ul.side-nav01{
  max-width:200px;
  padding:0;
  margin:0 auto;
}

aside#member-nav section.side-nav ul.side-nav01 li{
  max-width:200px;
  height:50px;
  background:url(/common/images/icon03.png) no-repeat 95% 17px;
  border-bottom:1px dotted #999;
  padding:0;
}

aside#member-nav section.side-nav ul.side-nav01 li a{
  display:block;
  text-decoration:none;
  color:#000;
  line-height:50px;
}

aside#member-nav section.side-nav ul.side-nav01 li a:hover{
  color:#DC2392;
  text-decoration:none;
}

aside#member-nav section.side-nav ul.side-nav02{
  width:180px;
  padding:0 0 5px 0;
  margin:30px auto 0 auto;
}

aside#member-nav section.side-nav ul.side-nav02 li a{
  width:180px;
  height:36px;
  display:block;
  text-align:center;
  line-height:36px;
  padding:0;
  margin:0 0 5px 0;
}

aside#member-nav section.side-nav ul.side-nav03 li{
  padding:0;
  margin:10px 0 0 0;
}

aside#member-nav section.side-nav ul.side-nav03 li img{
  width:100%;
}


