@charset "UTF-8";

@media (min-width: 480px) {
  .row:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
  }
  .column {
  width: 100%;
  float: left;
  box-sizing: border-box;
	-webkit-box-sizing : border-box ;
	-moz-box-sizing : border-box ;
  }
  .column {
  margin-left: 4%;
  }
  .column:first-child {
  margin-left: 0;
  }

  .three.column { width: 22%; }
  .four.column { width: 30.6666666667%; }
  .five.column { width: 39.3333333333%; }
  .six.column { width: 48%; }
  .seven.column { width: 56.6666666667%; }
  .eight.column { width: 65.3333333333%; }
  .nine.column { width: 74.0%; }
}

body {
  font-size: 1.4rem;
  overflow: hidden;
}
h1 {
  font-size: 1.6rem;
  font-weight: 600;
}
@media (min-width: 480px) {
  h1 {
  font-size: 1.8rem;
  }
}
h2 {
  font-size: 1.6rem;
}
@media (min-width: 480px) {
  h2 {
  font-size: 1.8rem;
  }
}
h3 {
  font-size: 1.6rem;
}
h4 {
  font-size: 1.6rem;
}
h5 {
  font-size: 1.4rem;
}
.txt_center.txt_sm_left {
  text-align: left;
}

/* col_list */
.col_list li {
  padding: 1em 0;
}
.col_list li:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

/* 汎用スタイル */
.sec_title {
  font-size:2rem;
}
@media (min-width: 480px) {
  .sec_title {
  }
}
@media (min-width: 767px) {
  .sec_title {
  }
}

/* .more_info */
.more_info.btn a {
  font-size: 1.3rem;
}
.more_info.btn.sm-btn a {
  font-size: 1.2rem;
}

/* ページトップへ戻る */
.pagetop,
.pagetop a,
.pagetop a i {
  display: none;
}

/* header */
header {
  background: #fff;
  height:64px;
  transition: 0.5s all ease;
}
@media (min-width: 480px) {
  header{
  height:80px;
  }
}
header .container{
  position:relative;
}
header h1 img {
  width:90%;
  max-width:360px;
  transition: 0.5s all ease;
}
header .fixheader {
  transition: 0.5s all ease;
  position: fixed;
  top: 0;
  background: #108ccf;
  box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, .2);
  z-index: 9998;
  width: 100%;
  padding-top: 0px;
}

header .header_icon {
  width: 50px;
}

/* topic_path */
.topic_path {
  margin-left: 0px;
  margin: 0 auto 3.6em;
}
.topic_path li {
  font-size: 1.2rem;
}

/* nav */
nav.header_nav {
  display: none;
}
nav.sub_nav ul {
  margin: 0 auto;
}
nav.sub_nav .container {
  padding: 0 0px;
}
nav.sub_nav:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}
nav.sub_nav li {
  font-size: 1.2rem;
  width: 50%;
  border-left:rgba(0,0,0,.06) 1px solid;
  border-right:rgba(0,0,0,.06) 1px solid;
  border-bottom:rgba(0,0,0,.06) 1px solid;
  padding: 0em;
  float: left;
  box-sizing: border-box;
	-webkit-box-sizing : border-box ;
	-moz-box-sizing : border-box ;
}
nav.sub_nav li a {
  padding: .5em .5em;
}

/* contents */
.container {
  padding: 0 15px;
}

section {
  margin-bottom: 4em;
  margin-top: 2em;
}

/* footer */
footer .container {
  padding: 40px 10px 10px;
}
footer .footer_inq h2 {
  font-size: 1.4rem;
}
footer .footer_inq p {
  font-size: 1.2rem;
}
@media (min-width: 480px) {
  footer .footer_inq h2 {
  font-size: 1.6rem;
  }
}
footer img {
  width: 96px;
  transition: 0.5s all ease;
}
footer .footer_bn_links li{
	width:24%;
}
@media (max-width: 640px) {
  footer .footer_bn_links{
  flex-wrap: wrap;
  }
  footer .footer_bn_links li{
  width:49%;
  margin-bottom: 2%;
  }
}

/* footer .footer_links */
footer .footer_links {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  list-style-type: none;
  max-width: 960px;
  border-top: 1px dotted rgba(255,255,255,.5);
}
footer .footer_links li {
  box-sizing: border-box;
  -webkit-box-sizing : border-box ;
  -moz-box-sizing : border-box ;
  text-align: center;
  flex: 0 0 50%;
  flex-grow:0;
  flex-shrink:0;
  flex-basis:50%;
  max-width:50%;
  padding: 1em;
  position: relative;
  border-right: 1px dotted rgba(255,255,255,.5);
  border-bottom: 1px dotted rgba(255,255,255,.5);
}
footer .footer_links li:nth-child(even) {
  border-right: none;
}
@media (max-width: 640px) {
  footer .footer_links li a {
  font-size: 1.1rem;
  }
}

/* call_nav */
.call_nav {
  display: inline-block;
  border: solid 1px rgba(0, 56, 147, .8);
  background: rgba(0, 56, 147, 0);
  padding: .4em .5em;
  font-size: 1.3rem;
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -20px;
  color: rgba(0, 56, 147, .8);
  font-weight: 600;
  letter-spacing: .06em;
}
.call_nav:hover {
  cursor: pointer;
  border: solid 1px rgba(0, 56, 147, .8);
  background: rgba(0, 56, 147, .8);
}
.call_nav i {
  margin-right: .3em;
  color: rgba(0, 56, 147, .8);
}

.call_nav:hover,
.call_nav:hover i {
  color: #fff;
  transition:all 0.5s ease;
  opacity:0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
  -moz-opacity:0.8;
  -khtml-opacity: 0.8;
  zoom:1;
}

#index .call_nav {
  border: solid 1px rgba(255, 255, 255, .8);
  background: rgba(0, 56, 147, 0);
  color: rgba(255, 255, 255, .8);
}
#index .call_nav:hover {
  border: solid 1px rgba(255, 255, 255, .8);
  background: rgba(255, 255, 255, .8);
  color: rgba(0, 56, 147, .8);
}
#index .call_nav i {
  color: rgba(255, 255, 255, .8);
}
#index .call_nav:hover i {
  color: rgba(0, 56, 147, .8);
}


#drawer{
  position: fixed;
  top: 0;
  right: -280px;
  width: 280px;
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch; 
  -webkit-transition: all .2s;
   -moz-transition: all .2s;
     -o-transition: all .2s;
      transition: all .2s;
  background:rgba(0, 56, 147, .9);
  color:#FFF;
  z-index: 9999;
}

.drawer-close {
  text-align: right;
}

#drawer.open{
  -webkit-transform: translate3d(-280px, 0, 0);
   -moz-transform: translate3d(-280px, 0, 0);
      transform: translate3d(-280px, 0, 0);
  box-shadow: 0px 0px 20px rgba(0,0,0,0.4);
}
.lte-ie9 #wrap.open {
  right: 280px;
}
 
.lte-ie9 #wrap.open {
  right: 0;
}
#drawer a{
  display: block;
  color: #FFF;
  text-decoration: none;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 48px;
  padding-left: 1.5em;
}
#drawer ul{
  list-style:none;
  margin:2.4em auto 2.4em;
  border-bottom: solid 1px rgba(195, 183, 166, .5);
  padding:1em 0;
}
#drawer li{
  list-style:none;
  margin:0;
}
#drwawer_main_nav{}
#drwawer_sns_nav img{
  vertical-align:middle;
  margin-right:1em;
}
#drawer ul + small a {
  font-weight: 500;
}
#drawer li:hover,
#drawer ul + small a:hover {
  background: rgba(255,255,255,.5)
}

.drawer-close{
  position:absolute;
  top:10px;
  right:10px;
  color:#FFF;
  line-height:1;
  width:1.0em;
  font-size:2.0rem;
  text-align:center;
  cursor:pointer;
  font-weight: 600;
}

/* hero */
.hero .hero_copy {
  background-size: cover;
}
.hero .hero_copy {
  padding: 4.2em 0 0;
}
.hero.bg_top_img {
  background: url('./images/bg_top_img.png') no-repeat center center;
  background-size: cover;
}
@media (min-width: 480px) {
  .hero .hero_copy {
  padding: 7.2em 0;
  }
}

/* category_list */
.category_list ul li {
  flex: 0 0 100%;
  padding: 0 1em;
  position: relative;
}
@media (min-width: 480px) {
  .category_list ul li {
  flex: 0 0 50%;
  padding: 1em;
  position: relative;
  }
}

/* sns_box */
.sns_box {
  width: 80%;
  margin: 1em auto;
  max-height: 300px;
  overflow: hidden;
}
.sns_box iframe {
  height: 300px;
}
@media (min-width: 480px) {
  .sns_box {
  width: 80%;
  margin: 1em auto;
  max-height: 480px;
  overflow: hidden;
  }
  .sns_box iframe {
  height: 480px;
  }
}

/* トップ画像 */
.top_img_wrap p.top_copy small {
  position: relative;
  padding: 5px 15px;
}
.top_img_wrap p.top_copy {
  font-size: 2.4rem;
}
@media (min-width: 768px) {
  .top_img_wrap p.top_copy {
  font-size: 3.6rem;
  }
}
@media (max-width: 767px) {
  .top_img_wrap p.top_copy small {
  width: 98%;
  display: table;
  }
  .top_img_wrap p.top_copy small + br {
  display: none;
  }
}

/* メインボタン */
.top_btn_wrap ul li {
  flex: 0 0 100%;
  position: relative;
}
.top_btn_wrap ul li a {
  font-size: 1.8rem;
}
.top_btn_wrap ul li a img.head {
  width: 48px;
}
@media (min-width: 767px) {
  .top_btn_wrap ul li {
  flex: 0 0 50%;
  position: relative;
  }
  .top_btn_wrap ul li a {
  font-size: 2.4rem;
  }
  .top_btn_wrap ul li a img.head {
  width: 72px;
  }
}

/* 店舗一覧 */
.shop_list ul li {
  flex: 0 0 48%;
  flex-basis: 48%;
  max-width: 48%;
}
.shop_list ul li div.shop_tag ul li {
  font-size: 72%;
}
.shop_list ul li div.shop_wrap {
  padding-bottom: 180px;
}
.shop_list ul li div.shop_img img {
  flex: 0 0 100%;
  flex-basis: 100%;
  max-width: 100%;
}
.shop_list ul li div.shop_detail h3 + p {
  font-size: 88%;
}
.shop_list ul li div.shop_link ul li {
  flex: 0 0 100%;
  flex-basis: 100%;
  max-width: 100%;
}
@media (min-width: 767px) {
  .shop_list ul li {
  flex: 0 0 31.33333333%;
  flex-basis: 31.33333333%;
  max-width: 31.33333333%;
  }
  .shop_list ul li div.shop_detail h3 + p {
  font-size: 92%;
  }
  .shop_list ul li div.shop_link ul li {
  flex: 0 0 100%;
  flex-basis: 100%;
  max-width: 100%;
  }
}

/* SNS投稿 */
.sns_flow_list p.top_copy {
  font-size: 2.4rem;
}
.sns_flow_list ul li {
  flex: 0 0 100%;
  flex-basis: 100%;
  max-width: 100%;
}
.sns_flow_list ul li p {
  font-size: 1.8rem;
}
@media (min-width: 767px) {
  .sns_flow_list p.top_copy {
  font-size: 3.2rem;
  }
  .sns_flow_list ul li p {
  font-size: 2.4rem;
  }
  .sns_flow_list ul li {
  flex: 0 0 31.33333333%;
  flex-basis: 31.33333333%;
  max-width: 31.33333333%;
  }
}

/* 概要 */

.info_table,
.info_table tbody,
.info_table tr,
.info_table th,
.info_table td{
  display:block;
}
.info_place{
  display: block;
  font-size:1.8rem;
  text-align: center;
}
.info_table address{
  text-align: center;
}

.info_table th strong{
  font-size: 2rem;
}
.info_table th{
  font-size: 2rem;
}
.info_table td time{
  font-size: 1.8rem;
}
.info_table td time small{
  font-size:72%;
}

.info_table td .caution_list{
  font-size:1.5rem;
}

/*取扱店リスト*/

#sec_shop .shop_table,
#sec_shop .shop_table tbody,
#sec_shop .shop_table tr,
#sec_shop .shop_table th,
#sec_shop .shop_table td{
  display:block;
}
#sec_shop .shop_table th{
  font-size:1.8rem;
  font-feature-settings: "palt";
  border:none;
  padding-bottom: 0;
}
#sec_shop .shop_table td{
  padding-top: .5em;
  padding-bottom: 1.5em;
  border-bottom-color: #333;
}

#sec_shop .shop_table td a{
  display: block;
  border: solid 1px #666;
  text-align: center;
  padding: .5em 1em;
  margin-top: 1em;
}


/**/
.use_caution{
  margin:0 auto;
  padding: 2em 1em 2em;
}
.use_caution h2{
  font-size:1.8rem;
}
.use_caution h3 {
  font-size: 1.5rem;
}
.use_caution ul,
.use_caution ol{
  font-size:1.3rem;
  padding-left:2em;
}

/* 店舗一覧 */
.shop_list ul li {
  flex: 0 0 48%;
  flex-basis: 48%;
  max-width: 48%;
}
.shop_list ul li div.shop_tag ul li {
  font-size: 72%;
}
.shop_list ul li div.shop_wrap {
  padding-bottom: 135px;
}
.shop_list ul li div.shop_img img {
  flex: 0 0 100%;
  flex-basis: 100%;
  max-width: 100%;
}
.shop_list ul li div.shop_detail h3 + p {
  font-size: 88%;
}
.shop_list ul li div.shop_link ul li {
  flex: 0 0 100%;
  flex-basis: 100%;
  max-width: 100%;
}
@media (min-width: 767px) {
  .shop_list ul li {
  flex: 0 0 31.33333333%;
  flex-basis: 31.33333333%;
  max-width: 31.33333333%;
  }
  .shop_list ul li div.shop_detail h3 + p {
  font-size: 92%;
  }
  .shop_list ul li div.shop_link ul li {
  flex: 0 0 100%;
  flex-basis: 100%;
  max-width: 100%;
  }
}

/*お問い合わせ*/
#sec_contact dl{
  text-align: center;
}
#sec_contact dt{
  font-size: 2rem;
  margin-bottom:.5em;
}
#sec_contact dd{
  font-size: 2.4rem;
}

/* map_box */
.map_box {
  width: 80%;
  margin: 1em auto;
  max-height: 300px;
}
.map_box iframe,
.map_box twitter-timeline {
  height: 300px;
}
