@charset utf-8;
/* ==============
Theme Name: mita
================= */

/* ------------
 basis
-------------- */

html{
  verflow-x: hidden;
}
body {
  padding-top: 90px!important;
  color: #707070;
  overflow-x: hidden;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",sans-serif;
}
.cf::after {
  content: "";
  display: table;
  clear: both;
}
p {
  font-size: 14px;
  line-height: 24px;
}
a:hover {
  text-decoration: none;
}
a:link {
  text-decoration: none;
}
a:focus {
  outline: none;
}
a:hover img{
  opacity: 0.85;
}

.mincho{
  font-family: "Hiragino Mincho Pro W3","ヒラギノ明朝 Pro W3",serif;
}

@media screen and (max-width:767px) {
  *{
    box-sizing: border-box;
    max-width:100%;
  }
  body {
    width: 100vw;
    padding-top: 60px!important;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
    border: none;
    word-wrap : break-word;
    overflow-wrap : break-word;
  }
  img {
    max-width : 100%;
    height : auto;
  }
  .row{
    margin-left:0px;
    margin-right:0px;
  }
}

/* ----------------------
 container
------------------------- */

.contents {
  margin-left: 30px;
  margin-right: 30px;
}
.contents_1140{
  width:1200px;
  margin: 0 auto;
}

@media screen and (min-width:1240px) {
  .container{
  width: 1240px;
  }
}
@media screen and (min-width: 768px) {
  .contents_750 {
    width: 750px;
    margin: auto;
  }
}
@media screen and (max-width:767px) {
  .container{
    width: 100%;
    padding:0 20px;
  }
}

/* common Title */
.w_ttl{
  text-align: center;
  color: #272727;
  margin: 0px 0 30px;
}
.w_ttl .main{
  position: relative;
  display: inline-block;
  line-height: 1;
  margin: 0 auto 20px;
  font-size: 36px;
}
.w_ttl .low{
  line-height: 1;
  font-size: 24px;
}
.w_ttl .main::before,
.w_ttl .main::after{
  position: absolute;
  content: "";
  bottom: -10px;
  width: 80px;
  height: 1px;
  background: #272727;
}
.w_ttl .main::before{
  left: -60px;
}
.w_ttl .main::after{
  right: -60px;
}
.w_ttl.wht{
  color: #fff;
}
.w_ttl.wht .main::before,
.w_ttl.wht .main::after{
  background: #fff;
}

@media screen and (max-width:767px) {
  .w_ttl .main{
    font-size: 22px;
    margin-bottom: 16px;
  }
  .w_ttl .low{
    font-size: 14px;
  }
  .w_ttl .main::before,
  .w_ttl .main::after{
    width:50px;
    bottom: -9px;
  }
  .w_ttl .main::before{
    left: -30px;
  }
  .w_ttl .main::after{
    right: -30px;
  }
}

/* breadcrumb */

.breadcrumb {
  background-color: #fff;
  font-size: 13px;
  color: #777;
  margin-left: 10%;
  padding: 10px 0px;
}
.breadcrumb > li > a {
  color: #777;
}
.bc_hr {
  border-color: #ddd;
  width: 40px;
  height: 2px;
  text-align: left;
  margin-left: 10%;
  margin-bottom: 10px;
}
.caption > * {
  text-align: left;
}

 /* ----------------------
  main_navbar
------------------------- */

.main_nav {
   position: fixed;
   top: 0;
   width: 100%;
   z-index: 1030;
}
.navbar-brand-center {
  position: absolute;
  top: 20px;
  left: 0;
  right: 0;
  width: 182px;
  text-align: center;
  margin: auto;
}
.navbar-brand-center >img {
    width: 100%;
}
.sitelogo{
  width: 100%;
  margin: 0;
  padding: 0;
}
.sitelogo img {
  width: 100%;
}

.navbar-collapse{
  height: 90px;
  padding: 25px 0 0;
  background: #fff;
  box-shadow: 0 1px 3px 0 rgba(0,0,0,0.1);
}
.navbar-nav{
  width: 41%;
  margin: 0 auto;
}
.navbar-nav li{
  padding: 10px 5%;
}
.navbar-nav.navbar-left li{
  float: right;
}
.navbar-nav li a {
  padding: 0 0 10px;
  color: #272727;
  font-size:13px;
}
.navbar-nav li a:hover,
.navbar-nav li a:focus,
.navbar-nav li a.on {
  border-bottom: #D92323 3px solid;
  background: #fff;
  color: #D92323;
  outline:none;
}

@media screen and (max-width:1024px){
  .navbar-nav li {
    padding: 10px 16px;
  }
}

@media screen and (max-width:767px) {
  .navbar-collapse {
  height: 60px;
  background: #fff;
  box-shadow: 0px 1px 3px 0px rgba(0,0,0,0.1);
  }
  .navbar-brand-center{
    top: 8px;
    width: 145px;
  }
  button#responsive-menu-button{
    top: 3px !important;
  }
  .is-active{
    background-color: #d92323!important;
  }
  .is-active > .responsive-menu-box > .responsive-menu-inner::before,
  .is-active > .responsive-menu-box > .responsive-menu-inner::after,
  .is-active > .responsive-menu-box > .responsive-menu-inner{
    background-color: #ffffff!important;
  }
}

@media screen and (max-width: 991px){
  .navbar-nav {
    display :none;
  }
}


.row-eq-height {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
}

/* ----------------------
 footer
------------------------- */

.footer_menu {
  background-color: #D92323;
  color: #fff;
  text-align: center;
  margin-bottom: 0px;
  font-size: 13px;
}
.footer {
  background-color: #D92323;
  color: #fff;
  text-align: center;
  margin-bottom: 0px;
}
.goback {
  margin-top: -120px;
}
a:hover .goback{
  opacity:1;
}
.copyright {
  width: 90%;
  margin: 0 auto;
  background-color: #D92323;
  color: #fff;
  text-align: center;
  border-top : 1px solid rgba(255,255,255,.25);
  padding: 10px;
}

@media screen and (max-width:767px) {
  .goback {
    margin-top: -90px;
  }
  .copyright{
    width: 100%;
  }
  .copyright small{
    font-size: 10px
  }
}

.inline {
  text-align: center;
}
.inline li {
  display: inline-block;
  margin: 14px 2em;
}
.inline li > a {
  color: #fff;
}
.inline li > a:hover {
  text-decoration: none;
}

.btn_red {
  display: inline-block;
  margin-bottom: 20px;
  line-height: 60px;
  background: #fff;
  border-radius: 3px;
  border: 2px #D92323 solid;
  font-size: 14px;
  font-weight: bold;
  color: #D92323;
  text-align: center;
}
.btn_red:hover,
.btn_red:focus {
  background-color: #D92323;
  color: #fff;
  outline:none;
}

/* ---------------
 TOP
---------------- */

.banner_menu {
  height: 200px;
  background-image: url(/wp-content/images/index/menu.jpg);
  background-size: 100% auto;
  background-position: 0px -170px;
}
.banner_brand {
  height: 200px;
  background-image: url(/wp-content/images/index/brand.jpg);
  background-size: 100% auto;
  background-position: 0px -300px;
}
.banner_shoplist {
  height: 200px;
  background-image: url(/wp-content/images/index/shop.jpg);
  background-size: 100% auto;
  background-position: 0px -300px;
}
.banner_international {
  height: 200px;
  background-image: url(/wp-content/images/index/international.jpg);
  background-size: cover;
  background-position: center;
}

@media screen and (max-width:767px) {
  .banner_menu {
    height: 300px;
    background-size: auto 100%;
    background-position: -140px -300px;
  }
  .banner_brand {
    height: 300px;
    background-size: 120% auto;
    background-position: 0px;
  }
  .banner_shoplist {
    height: 300px;
    background-size: 120% auto;
    background-position: 0px;
  }
}

.index_carousel {
  max-width: 1240px;
  padding: 0;
  margin: 0 auto;
  overflow: hidden;
}
.index_notice {
  background-color: #F8F8F8;
}
.index_notice .container{
  padding-top: 50px;
  padding-bottom: 50px;
  text-align:center;
}
.index_notice .w_ttl {
  margin-bottom:45px;
}

.index_notice .btn_red{
  width:225px;
  margin:50px auto 0;
}
.index_bnr_menu{
  max-width: 1240px;
  padding-bottom: 100px;
  margin-left: auto;
  margin-right: auto;
}

.index_bnr_menu a:hover > div{
  opacity:0.85;
}
.index_bnr_menu .jumbotron{
  padding-top: 185px;
  height: 450px;
  background-size: cover;
  background-position: center;
  text-align: center;
}
.index_menu {
  background-image: url(/wp-content/images/index/menu.jpg);
}
.index_brand {
  background-image: url(/wp-content/images/index/brand.jpg);
}
.index_recruit {
  background-image: url(/wp-content/images/index/recruit.jpg);
}
.index_shop {
  background-image: url(/wp-content/images/index/shop.jpg);
}

/* App */
.index_app {
  position: relative;
  background-image: url(/wp-content/images/index/app.jpg);
  padding-top: 100px;
  overflow: hidden;
}
.index_app .iphone{
  position: absolute;
  height: 80%;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  z-index:0;
}
.index_app .icon{
  position: absolute;
  width:150px;
  left: 10%;
  top: calc(50% - 75px);
  margin: auto;
  z-index: 1;
}
a:hover .index_app .iphone img,
a:hover .index_app .icon img{
  opacity:1;
}
.index_app .iphone img{
  height: 100%;
}
.index_app .icon img{
  width: 100%;
}
.app_area{
  position: relative;
}
.app_area .w_ttl{
  position: relative;
  z-index:1;
}
.app_area .app_store{
  position: absolute;
  display: inline-block;
  bottom: 16%;
  left: 0;
  right: 0;
  margin:0 auto;
  padding: 0;
  text-align: center;
}
.app_area .app_store li{
  display: inline-block;
  width: 180px;
  margin: 0 12px;
  list-style: none;
}
.app_area .app_store li a{
  display: block;
}
.app_area .app_store li a:hover{
  opacity: .85;
}
.app_area .app_store li a img{
  width: 100%;
}

@media screen and (max-width:767px) {
  .index_notice .container{
    padding-top: 30px;
    padding-bottom: 40px;
  }
  .index_notice .w_ttl {
    margin-bottom:25px;
  }
  .index_notice .btn_red{
    width:150px;
    margin:10px auto 0;
    line-height:38px;
    font-size: 13px;
  }
  .index_carousel > .row > div{
    padding-left:0px;
    padding-right:0px;
  }
  .index_bnr_menu .jumbotron{
    padding-top: 90px;
    height: 240px;
  }
  .index_app .iphone{
    height: 90%;
    right: -90px;
    bottom: 0;
    margin: 0 auto;
  }
  .index_app .icon{
    width: 60px;
    left: 0;
    right:0;
    top:20px;
    margin: auto;
  }
  .app_area .app_store{
    bottom: 8%;
  }
  .app_area .app_store li{
    width: 36%;
    max-width: 160px;
    margin: 0 3%;
    list-style: none;
  }
}

.carousel-indicators li {
  border-width: 2px;
  width: 12px;
  height: 12px;
  margin: 0px;
  margin-right: 10px;
}
.carousel-indicators li.active {
  background-color: #D92323;
  border: none;
  margin-right: 10px;
}
.index_carousel .carousel-control {
  width: 10%;
  padding-top: 23%;
  background-image: none;
}
.index_carousel .carousel-control .ion-ios-arrow-forward:before {
  content: '';
  width: 35px;
  height: 35px;
  border-top: 2px solid #f5f5f5;
  border-right: 2px solid #f5f5f5;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.index_carousel .carousel-control .ion-ios-arrow-back:before {
  content: '';
  width: 35px;
  height: 35px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(-135deg);
}
.carousel-inner {
  overflow: inherit;
}

.carousel-inner .item a:hover img{
  opacity:0.85;
}
.carousel-inner .item img{
  width:100%;
}

@media screen and (max-width:767px) {
  .index_carousel .carousel-control .ion-ios-arrow-forward:before {
    width: 15px;
    height: 15px;
  }
  .index_carousel .carousel-control .ion-ios-arrow-back:before {
    width: 15px;
    height: 15px;
  }
}

/*Responsive menu*/
#responsive-menu-container #responsive-menu > li.responsive-menu-item:first-child > a{
  border-top: none!important;
}

#responsive-menu-container #responsive-menu-wrapper{
  background: #d92323!important;
  padding-top: 50px;
}
#responsive-menu-container #responsive-menu, #responsive-menu-container #responsive-menu ul{
  width: 90%!important;
    margin-left: 5%!important;
}
li.responsive-menu-item > a::after{
  content: "\f125";
  font-family: ionicons!important;
  float: right!important;
}


/* ----------------------
 menu
------------------------- */

.list-menu > li {
  padding:0;
  margin:0 15px 15px 0 ;
}
.list-menu > li > a {
  display: inline-block;
  border: 2px #DADADA solid;
  width: 206px;
  text-align: center;
  padding: 10px;
  border-radius: 3px;
  color: #707070;
}
.list-menu > li:last-child {
  margin-right: 0;
}
.list-menu > li > a:hover, .list-menu > li > a.on {
  color: #fff;
  background-color: #D92323;
  text-decoration: none;
  border: 2px solid #D92323;
}
.menu_content .w_ttl{
  margin-top:60px;
}

.menu_content .menu_img {
  position: relative;
  margin: 0 auto;
  text-align: center;
  z-index: 2;
}
.menu_content .menu_img img{
  position: relative;
  max-height: 225px;
  z-index: 3;
}
.menu_content .menu_ttl{
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: #DADADA 1px solid;
  text-align: center;
  color: #272727;
  font-size: 20px;
}

/* MENU_INNER */
.menu_content .menu_inner {
  background-color: #FAFAFA;
  padding: 50px 15px 30px;
  margin: 0 auto;
}
.menu_content .menu_block{
  max-width: 300px;
  margin: 0 auto;
  text-align: center;
}
.menu_content .menu_block .txt{
  min-height: 3.25em;
}

/* PRICE */
.menu_block1 .price{
    margin: 14px 0 8px 4px;
    color: #707070;
    font-size: 17px;
    font-weight: bold;
    text-align: left;
}
.menu_block .price,
.menu_block3 .price,
.menu_block4 .price{
  text-align: center;
  font-weight:bold;
  color: #707070;
}

/* MENU NOTICE */
.menu_note{
  display: block;
  margin: 0 auto 20px;
  padding: 0 30px 0 0;
  line-height: 1.75;
  font-size: 13px;
  float: left;
}

/* MENU_EX_LINK */
.menu_ex_link{
  float:right;
  margin: 0 10px 0 0;
  text-align:center;
}
.menu_ex_link.sp{
  float: none;
  margin: 0 auto 60px
}
.menu_ex_link .btn{
  display: inline-block;
  min-width: 180px;
  line-height: 28px;
  background: #fff;
  border-radius: 3px;
  border: 2px #D92323 solid;
  font-size: 13px;
  font-weight: bold;
  color: #D92323;
  text-align: center;
}
.menu_ex_link .btn:hover{
  background-color: #D92323;
  color: #fff;
}

/* MENU PAGE FIX BUTON */
#menupageTop {
  position: fixed;
  bottom: 20px;
  right: 0;
  z-index: 99;
  display: none;
}
#menupageTop a {
  display: block;
}
#menupageTop a:hover {
  opacity: 0.7;
}
#menupageTop a >img {
  width: 70%;
}

/* menu_block1 */
#menu1 .row{
  padding: 0 40px 40px;
}
.menu_block1 {
  margin: 60px auto 0;
  background-color: #fff;
  padding: 20px;
}
.menu_block1 .menu_inner{
  background:#fff;
  padding: 0;
}
.menu_block1 .menu_img img{
  max-height:300px;
}
.menu_block_doc{
  position: relative;
  background-color: #fff;
  padding: 20px;
  border: #D92323 1px solid;
  z-index: 1;
}
.menu_block_doc .menu_ttl{
  border-bottom: #D92323 1px solid;
  text-align:left;
}
.menu_block1 .menu_block_doc {
  z-index: 1;
  padding: 80px 40px 40px;
}
.menu_block1 .menu_block_doc .menu_ttl{
  font-size: 32px;
}
.menu_block1_2 {
  margin: 0 auto 40px;
}
.menu_block1_2 .menu_inner{
  background:#fff;
  padding: 35px;
}
.menu_block1_2 .menu_img{
  margin-bottom: -95px;
  text-align: center;
}
.menu_block1_2 .menu_img img{
  max-width:100%;
}
.menu_block1_2 .menu_block_doc{
  padding-top: 80px;
}
.menu_block1_2 .menu_block_doc .txt{
  min-height: 3.25em;
}
.menu_block_doc .btn_red{
  width:auto;
  padding: 15px 25px;
  margin-top: 2em;
  border-width: 1px;
  line-height: 1.8;
  color: #D92323;
  font-weight:normal;
}
.menu_block_doc .btn_red:hover{
  background: #fff;
}

/* menu_block2 */
.menu_block2 .menu_img{
  position: absolute;
  top:0;
  left:0;
  right:0;
  margin:0 auto;
}
.menu_block2 .menu_inner{
  margin-top:100px;
  padding-top:90px;
}

/* menu_block3,menu_block4 */
.menu_block3,
.menu_block4{
  padding-top: 15px;
  padding-bottom: 15px;
}
.menu_block4 .menu_block .txt{
  min-height:5.5em;
}

@media screen and (min-width:992px){
  #menu1 .row{
  padding: 20px 90px 0;
  }
  .menu_block1{
    padding: 45px;
  }
  .menu_block1 .menu_img{
    position:absolute;
    margin-left: -290px;
    top: 150px;
  }
  .menu_block1 .menu_block_doc{
    padding: 40px 40px 40px 35%;
  }
}

@media screen and (min-width:768px){
  #menu1 .row{
  background: #fafafa;
  }
  #menu5{
    margin-bottom: 100px;
  }
}

@media screen and (max-width:767px) {
  .list-menu > li {
    padding:0;
    margin:0 5px 10px 0 ;
  }
  .list-menu > li > a {
    width: 105px;
    margin: 0;
  }
  .list-menu > li > a.on {
    color: #fff;
    background-color: #D92323;
    text-decoration: none;
  }
  #menu2, #menu3, #menu4, #menu5, #menu6{
    display: none;
  }
  .menu_content{
    margin-bottom: 40px;
  }
  .menu_content .menu_inner{
    padding:40px 15px 20px;
  }
  .menu_content .menu_ttl{
    font-size:20px;
  }
  #menu1.menu_content .row{
    padding:0;
  }
  .menu_block1 .menu_img{
    position:relative;
    margin: 0 0 -95px;
    top: 0;
  }
  .menu_block1{
    margin-top:0;
  }
  .menu_block1 .menu_inner,
  .menu_block1_2 .menu_inner{
    padding:0;
  }
  .menu_block1 .menu_img img,
  .menu_block1_2 .menu_img img{
    max-height:180px;
  }
  .menu_block1 .menu_block_doc{
    padding: 80px 20px 20px;
  }
  .menu_block1 .menu_block_doc .menu_ttl{
    font-size:20px;
  }
  .menu_block1_2{
    padding: 15px;
    margin: 0;
  }
  .menu_block1_2 .menu_inner{
    padding: 0;
  }

}


/* ----------------------
 brand
------------------------- */

.brand_img {
  object-fit: contain;
  max-width: 100%;
  position: relative;
}
.brand_doc {
  padding-top: 30px;
}
.brand_hr {
  border-color: red;
  width: 54px;
  height: 2px;
  text-align: left;
  margin-left: 0;
}
.brand_doc > p > .btn_red {
  margin-top: 60px;
}
.brand_doc > h2,
.brand_doc > h3 {
  color: #272727;
  line-height: 1.6;
  font-size: 24px;
}
.brand_doc > h2{
  font-size: 34px;
}
.brand_doc > .btn_red{
  padding: 0px 50px;
  margin-top: 40px;
}
.tate_r {
  font-family: "Hiragino Mincho Pro W3","ãƒ’ãƒ©ã‚®ãƒŽæ˜Žæœ Pro W3",serif;
  font-size: 60px;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  z-index: 2!important;
  position: relative;
  float: right;
  margin-right: 50px;
  color: #000;
}
.tate_l {
  font-family: "Hiragino Mincho Pro W3","ãƒ’ãƒ©ã‚®ãƒŽæ˜Žæœ Pro W3",serif;
  font-size: 60px;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr;
  z-index: 2!important;
  position: relative;
  float: left;
  margin-left: 50px;
  color: #000;
}
.circle {
  color: #fff;
  background-color: #D92323;
  padding: 0;
  margin: 0;
  width: 110px;
  height: 110px;
  line-height: 110px;
  text-align: center;
  display: inline-block;
  border-radius: 50%;
}

@media screen and (min-width:768px){
  .after {
    margin-top: -20px;
  }
  .brand_img1 {
    margin-top: -50px;
  }
  .brand_img2 {
    margin-top: -150px;
  }
  .brand_img3 {
    margin-top: -300px;
  }
  .brand_img4 {
    margin-top: -90px;
  }
  .margin_20px {
    margin-top: 40px;
  }
}

@media screen and (max-width:767px) {
  .tate_r {
    font-size: 30px;
    margin-right: 20px;
  }
  .tate_l {
    font-size: 30px;
    margin-left: 20px;
  }
  .circle {
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
  }
  .after {
    margin-top: -12px;
  }
  .brand_img1 {
    margin-top: -30px;
  }
  .brand_img2 {
    margin-top: -80px;
  }
  .brand_img3 {
    margin-top: -150px;
  }
  .brand_img4 {
    margin-top: -50px;
  }
  .margin_20px {
    margin-top: 20px;
  }
  .brand_doc > h3 {
    font-size: 18px;
    color: #272727;
  }
}

/* ----------------------
 brand history
------------------------- */

.history_sect {
  background: #fafafa;
  margin: 100px auto 60px;
  padding: 40px 0;
}
.history_img {
  text-align: center;
  margin: 0 0 90px;
}
.history_doc .lst {
  display: block;
  list-style: none;
  text-shadow: 0 0 #000;
  max-width: 770px;
  margin-left: auto;
}
.history_doc .lst dl {
  display: table-row;
  margin: 0 auto 10px;
  font-weight: normal;
}
.history_doc .lst .date {
  display: table-cell;
  width: 136px;
  font-weight: bold;
  vertical-align: top;
}
.history_doc .lst .text {
  display: table-cell;
  vertical-align: top;
  line-height:1.5em;
}
@media screen and (max-width:767px) {
  .history_doc .lst{
    display: block;
    padding:0;
  }
  .history_doc .lst .date {
    display:block;
    width: auto;
    padding-bottom: 2px;
  }
  .history_doc .lst .text {
    display:block;
    width: auto;
    padding: 0 0 8px;
  }
  .history_doc .lst.latest .date{
    display:none;
  }
}


/* ----------------------
 shop_list
------------------------- */

.shop_list{
  padding:0 0 100px;
}
.shop_list .area_name{
  height: 50px;
  line-height: 50px;
  margin: 0 15px 10px;
  padding: 0 20px;
  border-radius: 3px;
  background-color: #E8E8E8;
  font-size: 18px;
  cursor: pointer;
}
.shop_list .area_name:hover{
  background-color: #D92323;
  color: #ffffff;
}
.shop_list .sub_lst{
  display: none;
}
.shop_list .sub_lst .sub_area_name{
   padding: 20px 5px 8px;
   margin: 0  18px 0;
   border-bottom: 2px solid #dadada;
   font-size: 18px;
}
.shop_list .sub_lst ul + .sub_area_name{
  padding-top:0;
}
.shop_list .sub_lst ul{
  display: block;
  padding: 20px 0 0;
}
.shop_list .sub_lst ul::after {
  content: "";
  display: table;
  clear: both;
}
.shop_list .sub_lst li{
  display: block;
  padding-bottom: 20px;
}
.shop_list .sub_lst li a{
  display: block;
  height: 45px;
  line-height: 45px;
  padding: 0 20px;
  border: #e4e4e4 2px solid;
  border-radius: 3px;
  background-color: #fff;
  color: #707070;
  text-decoration: none;
}
.shop_list .sub_lst li a:hover{
  border: #D92323 2px solid;
  background-color: #D92323;
  color: #ffffff;
}
.shop_list .ion-chevron-right,
.shop_list .ion-plus{
  float: right;
  font-size: 14px;
  color: #707070;
}
.shop_list .area_name:hover .ion-plus,
.shop_list .sub_lst li a:hover .ion-chevron-right{
  color: #fff;
}

@media (max-width: 767px){
 .shop_list .sub_lst ul{
   padding: 10px 0 10px;
 }
  .shop_list .sub_lst li{
    padding-bottom:10px;
  }
}

/* ----------------------
 shop_detail
------------------------- */

.shop_d_img {
  margin: 0 auto 20px;
}
.shop_d_img img{
  width: 100%;
}
.shop_d_info .hd{
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: #D0D0D0 1px solid;
}
.shop_d_info .name {
  float: left;
  margin: 0;
  line-height: 1.5;
  color: #D92323;
  font-size: 28px;
  font-weight:bold;
}
.shop_d_info .name.align {
  max-width: 71%;
}
.shop_d_info .menu {
  float: right;
  display: block;
  padding: 0px 12px 0;
  line-height: 36px;
  font-weight: bold;
  font-size: 12px;
  color: #D92323;
  border: #D92323 2px solid;
  border-radius: 3px;
  overflow: hidden;
}
.shop_d_info .menu .icon{
  display:inline-block;
  width:16px;
  height:19px;
  vertical-align: middle;
  margin-right: 10px;
  background-size: contain;
  line-height: 1;
}
.shop_d_info .menu #svg_ico_pdf{
  fill: #D92323;
}
.shop_d_info .menu span{
  display:inline-block;
}
.shop_d_info .menu:hover{
  background-color: #D92323;
  color: #fff;
}
.shop_d_info .menu:hover #svg_ico_pdf{
  fill: #fff;
}
table.shop_d {
  width: 100%;
}
table.shop_d > tbody > tr > th {
  color: #707070;
  width: 25%;
  padding: 5px 0px;
  vertical-align: top;
}
table.shop_d > tbody > tr > td {
  padding: 5px 0px;
  color: #707070;
}
table.shop_d > tbody > tr > td > p{
  margin: 0px;
}
.fa{
  font-size: 20px!important;
  vertical-align:-2px!important;
  margin-right:5px;
}
.ggmap {
  position: relative;
  height: 400px;
  overflow: hidden;
  margin: 20px 0 100px;
}
.ggmap iframe, .ggmap object, .ggmap embed {
  width: 100%;
  height: 100%;
  border: 0px;
}

@media (min-width: 1200px) {
  .shop_d_img {
    width: 490px;
    height: 490px;
  }
}

@media (min-width: 992px) {
 .shop_d_info {
    padding-left: 75px;
  }
}

@media screen and (max-width:767px) {
  .shop_d_info .name{
    font-size: 22px;
    line-height: 32px;
  }
  .shop_d_info .menu{
    padding: 0 8px;
    line-height: 30px;
    font-size: 10px;
    border-width: 1px;
  }
  .shop_d_info .menu .icon{
    margin-right: 3px;
    margin-bottom: 2px;
  }
  .ggmap {
    height: 240px;
    margin-bottom: 70px;
    overflow:  hidden;
  }
  span.shop_d {
    line-height: 25px;
  }
}


/* ---------------
 top news
---------------- */

.su-posts .index_news {
  margin-bottom: 20px;
}
.su-posts .index_news .su-post{
  width: 100%;
  margin: 0;
  padding: 0;
  background: #fff;
}
.su-posts .index_news .su-post-thumbnail img {
  padding: 0;
  border: none;
  border-radius: 0;
  height: 100%;
}
.su-posts .index_news .su-post-thumbnail {
  width: 100%;
  height: auto;
  margin: 0;
}

.su-posts .index_news .su-post-thumbnail > div{
  height: auto;
  padding: 0;
  overflow: hidden;
}
.news_catch {
  text-align: left;
  height: 106px;
  padding: 15px 20px;
  background-color: #fff;
}
h4.news,
h4.news > a {
  margin: 0;
  color: #D92323;
  font-size: 14px;
  line-height: 1.5;
  font-weight: bold;
  height: 3em;
  overflow: hidden;
}
.su-post-meta {
  margin: 10px 0 0;
  font-size: 13px;
  color: #adadad;
}

@media screen and (max-width:767px) {
  .su-posts .index_news{
    padding: 0;
  }
  .su-posts .index_news .su-post {
    padding: 0;
    margin: 0;
    border:0;
  }
  .su-post-thumbnail > div {
    height:75px;
    margin: 0;
    padding: 0;
    overflow: hidden;
  }
  .news_catch {
    height: 75px;
    padding: 10px 10px 10px 15px;
  }
  h4.news, h4.news > a {
    font-size: 12px;
    margin: 0 auto 4px;
    height: auto;
  }
  .su-post-meta {
    font-size: 11px;
    margin: 0;
  }
}

@media screen and (min-width:768px) {
  .su-posts .index_news .su-post-thumbnail > div{
    height:90px;
  }
}

@media screen and (min-width: 992px) {
  .su-posts .index_news .su-post-thumbnail > div{
    height:auto;
  }
}


/* ----------------------
 news_list
------------------------- */

.news_list{
  margin: 50px auto 80px;
}
.news_list .su-post .su-post-thumbnail {
  display: block;
  float: left;
  width: auto;
  height: auto;
  margin-bottom: 20px;
  margin-right: 1em;
}
.news_list .su-post .su-post-thumbnail img {
  max-width: none;
  height: 100%;
  max-height: none;
  width: 100%;
}
.news_list  .su-post {
  padding-bottom: 30px;
  margin-bottom: 2.5em;
  line-height: 1.5;
  border-bottom: #DEDEDE 1px solid;
  display: block;
}
.news_list h4.news{
  height: auto;
}
.news_list h4.news a{
  font-size: 18px;
}
.news_list .su-post .su-post-meta{
  opacity:1;
  font-size: 14px;
  margin-bottom: 0.7em;
}
.su-post .su-post-excerpt {
   margin-bottom: 0.5em
}
.su-post .su-post-excerpt p{
  margin-bottom: 0;
}

.more {
  display: block;
  width: 225px;
  margin: 0 auto;
  justify-content: center;
  align-items: center;
}
.more:hover{
  background-color: #D92323;
  color: #ffffff;
  cursor: pointer;
}

.archive_ttl{
  margin: 0 auto 60px;
  text-align: center;
  color: #272727;
  font-size:32px;
}
.year_archive_link{
  margin: 40px auto 80px;
  text-align:center;
}
.year_archive_link .btn a {
  display: inline-block;
  border: 2px #D92324 solid;
  width: 206px;
  text-align: center;
  padding: 10px;
  border-radius: 3px;
  color: #D92323;
}
.year_archive_link .btn:last-child {
  margin-right: 0;
}
.year_archive_link .btn a:hover,.year_archive_link .btn a.on {
  color: #fff;
  background-color: #D92323;
  text-decoration: none;
  border: 2px solid #D92323;
}

@media screen and (max-width: 767px) {
  .news_list .su-post .su-post-thumbnail {
    margin-right: 0;
    float: none;
  }
  .archive_ttl{
    font-size: 22px;
    margin: 0 auto 40px;
  }
}


/* SNS */
.maru {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  flex-flow: column;
  vertical-align: top;
  color: #ffffff;
  background: #adadad;
  width: 2em;
  height: 2em;
  float: right;
  margin-left: 10px;
  color: #ffffff;
}
.maru > a,
.maru > a:hover {
  display:block;
  width: 100%;
  height: 100%;
  text-align: center;
  line-height: 2;
  color: #ffffff;
}
.maru:hover {
  background: #00aced;
}
.maru + .maru:hover {
  background: #3B5998;
}

/* ----------------------
 news_detail
------------------------- */
.news_detail {
  width:808px;
  margin-bottom: 70px;
}
.news_detail > div{
  padding:0;
}
.news_detail h4.news {
  font-size:18px;
  height: auto;
}
.news_img > img {
  width: 100%!important;
  height: auto!important;
  margin-bottom: 20px!important;
  margin-top: 20px;
}
.news_detail .news_nav {
  text-align: center;
  padding: 0 5px;
}
.news_nav > a {
  display: block;
  height: 50px;
  line-height: 46px;
  padding: 0 10px;
  border: #DADADA 2px solid;
  border-radius: 3px;
  color: #707070;
  text-align: center;
  width: 80%;
  margin: 20px auto 0;
}
.news_nav > a:hover {
    color: #D92323;
  border: #D92323 2px solid;
    text-decoration: none;
}
.news_nav > a > span {
  font-size: 14px;
}

@media screen and (max-width:767px) {
  .news_nav > a {
    width: 100%;
    font-size: 12px;
  }
}
.news_nav_right > a {
  float: right;
}
.news_nav_left > a {
  float: left;
}
.news_nav_left > a > span {
  float: left;
}
.news_nav_right > a > span {
  float: right;
}
.news_d > p > a {
  color: #27B9E9;
}
.news_d > p > a:hover {
  text-decoration: underline;
}

.letter3 {
  font-size: 1em;
  line-height: 1.5em;
}


/* ----------------------
 app
------------------------- */

.app .main{
  position: relative;
  margin: 0 auto 50px;
}
.app .head{
  position: relative;
  width:100%;
  height: 613px;
  background-image: url(./images/app/app_mainbg.jpg);
  background-size: cover;
  overflow: hidden;
  text-align: center;
}
.app .head .iphone{
  position: absolute;
  width: 41%;
  right: 5%;
  bottom: 0;
  margin: auto;
}
.app .head .iphone img{
  width: 100%;
}
.app .intro{
  position: absolute;
  bottom: 14%;
  left:5%;
  color: #fff;
  text-align: center;
}
.app .intro .icon{
  width: 170px;
  margin:0 auto;
}
.app .intro .icon img{
  width:100%;
}
.app .intro .subttl{
  margin: 40px auto 20px;
  line-height: 1;
  font-size: 23px;
  font-weight: bold;
}
.app .intro .appttl{
  line-height: 1;
  font-size: 36px;
  letter-spacing: 0.1em;
}
.app .intro .lnk_area{
  padding: 0;
  margin: 45px auto 0;
  display: inline-block;
}
.app .intro .lnk_area li{
  display: inline-block;
  width: 210px;
  margin: 0 18px;
  list-style: none;
}
.app .intro .lnk_area li a{
  display: block;
}
.app .intro .lnk_area li a:hover{
  opacity: .85;
}
.app .intro .lnk_area li a img{
  width: 100%;
}
.app .func_box{
  padding: 50px 0 0;
}
.app .func_box.bg_gry{
  background: #fafafa;
  padding-bottom: 80px;
}
.app .bg_gry + .bg_gry{
  padding-top: 0;
}
.app .func_img{
  text-align: center;
}
.app .func_img img{
  width: 45%;
}
.app .func_doc{
  padding: 0 30px;
  text-align: center;
}
.app .func_doc .ttl{
  text-align: center;
}
.app .func_doc .ttl img{
  height: 100px;
}
.app .func_doc .name{
  margin: 30px auto 20px;
  color: #D92323;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5em;
}
.app .func_doc .lead{
  line-height: 1.5em;
  color: #272727;
  font-size: 32px;
  letter-spacing: 0.2em;
  font-weight: normal;

}
.app .func_doc .app_hr{
  margin: 30px auto 30px;
  box-sizing: border-box;
  height: 3px;
  width: 54px;
  background: #D92323;
}
.app .func_doc .text{
  color: #707070;
  font-size: 14px;
  line-height: 24px;
  text-align: left;
}
.app .func_dtl{
  padding: 60px 0 80px;
}
.app .func_dtl .img_box{
  text-align: center;
  height: 200px;
}
.app .func_dtl .img_box img{
  height: 100%;
}
.app .func_dtl .text{
  margin: 30px auto 0;
  color: #707070;
  font-size: 14px;
  line-height: 24px;
  text-align: left;
}
.app .store{
  padding: 40px 0 0;
  text-align: center;
}
.app .store .lead{
  margin: 0 auto;
  color: #D92323;
  font-size: 36px;
  line-height: 1.6em;
  text-align: center;
}
.app .store .lnk_area{
  display: inline-block;
  margin:0 auto 90px;
  padding:60px 0 0;
}
.app .store .lnk_area li{
  display: inline-block;
  width: 300px;
  margin: 0 30px;
  list-style: none;
}
.app .store .lnk_area li a{
  display: block;
}
.app .store .lnk_area li a:hover{
  opacity: .85;
}
.app .store .lnk_area li a img{
  width: 100%;
}
@media (max-width: 1199px) {
  .app .func_doc .name{
    font-size:18px;
  }
  .app .func_doc .lead{
    font-size: 24px;
  }
  .app .func_dtl .img_box{
    height:150px;
  }

}
@media screen and (max-width:767px) {
  .app .main{
    margin:0 auto;
  }
  .app .head{
    height: 306px;
  }
  .app .head .iphone{
    left:0;
    right:0;
    width: 70%;
  }
  .app .intro{
    position:relative;
    left: initial;
    padding: 40px 0 50px;
    color: #D92323;
  }
  .app .intro::after{
    content:"";
    position:absolute;
    bottom: 0;
    left:0;
    right:0;
    margin:auto;
    width:75%;
    height: 1px;
    background:#dadada;
  }
  .app .intro .icon{
    width:100px;
    margin: 18px auto;
  }
  .app .intro .subttl{
    font-size: 15px;
    margin: 18px auto;
  }
  .app .intro .appttl{
    font-size: 24px;
  }
  .app .intro .lnk_area{
    margin: 0;
    padding: 25px 0 0;
  }
  .app .intro .lnk_area li{
    width: 40%;
    margin: 5px 2%;
  }
  .app .func_dtl{
    padding: 20px 0 0;
  }
  .app .func_dtl .img_box{
    height: 150px;
  }
  .app .func_dtl .text {
    padding: 0 21px 50px;
  }
  .app .func_box.bg_gry{
    padding-bottom: 0;
  }
  .app .func_doc{
    padding: 40px 15px;
  }
  .app .func_doc .ttl img{
  height: 70px;
  }
  .app .func_doc .name{
    margin: 20px auto 10px;
    font-size: 15px;
  }
  .app .func_doc .lead{
    font-size: 20px;
    letter-spacing: 0.1em;
  }
  .app .func_doc .text{
    padding:0 10px;
  }
  .app .info::before,
  .app .cupon::before{
    content:"";
    position:absolute;
    top: 0;
    left:0;
    right:0;
    margin:auto;
    width:75%;
    height: 1px;
    background:#dadada;
  }
  .app .store{
    padding: 30px 0 0;
  }
  .app .store .lead{
    font-size: 20px;
  }
  .app .store .lnk_area{
    margin: 0;
    padding: 20px 0 0;
  }
  .app .store .lnk_area li{
    width: 40%;
    margin: 5px 2%;
  }
}

/* ----------------------
 header lang swicher
------------------------- */

.ad-header-widget{
  position: absolute;
  top: 25px;
  right: 10px;
  width: 15%;
  z-index: 1040;
  text-align: center;
}
.langsw .btn{
  position: relative;
  width: 110px;
  padding: 4px 6px 4px 5px;
  border: 2px solid #D92323;
  border-radius: 3px;
  background: #fff;
  font-size: 12px;
  font-weight:bold;
  color: #D92323;
  text-align: left;
}
.langsw.open > .dropdown-toggle.btn-default{
  background-color: #fff;
  border-color:#D92323;
  color: #D92323;
}
.langsw .btn .cont{
  display: block;
  color: #D92323;
  line-height: 25px;
  height: 25px;
}
.langsw .btn .cont img{
  width: 24px;
  margin-top: -3px;
  margin-right: 2px;
}
.langsw .btn .caret{
  position: absolute;
  top: 15px;
  right: 6px;
  border-top-width: 5px;
  border-right-width: 5px;
}
.langsw .list{
  width: 150px;
  min-width: auto;
  right: 10px;
  left: auto;
}
.langsw .list li{
  border-bottom: 1px solid #f1f1f1;
}
.langsw .list li:last-child{
  border-bottom: 0;
}
.langsw .list li a{
  padding: 10px 20px 10px 24px;
  font-size: 13px;
  font-weight: bold;
  color: #D92323;
  text-align: left;
}
.langsw .list li a img{
  width:25px;
  margin-right: 4px;
}

@media screen and (max-width:767px) {
  .ad-header-widget{
    top: 16px;
    width: 30%;
    text-align: right;
  }
  .langsw .btn{
    width: 85px;
    padding: 5px 3px;
    border-width: 1px;
  }
  .langsw .btn .cont{
    height:20px;
    line-height: 20px;
    font-size: 10px;
  }
  .langsw .btn .cont img{
    width:18px;
  }
  .langsw .btn .caret{
    top:13px;
    right:5px;
    border-top-width: 4px;
    border-right-width: 4px;
  }
  .langsw .list{
    right: 0;
  }
  .langsw .list li a{
    padding: 8px;
  }
}

/* ----------------------
 index_movie
------------------------- */

.index_movie{
  width: 100%;
  max-width:1240px;
  margin: 80px auto 40px;
  background-position: center;
}
.index_movie .ttl{
  margin: 0 auto 20px;
  font-size:30px;
  color: #272727;
  line-height: 1;
  text-align: center;

}
.index_movie .su-youtube{
  margin:0;
}
.index_movie .su-youtube iframe{
  left: 0;
  right: 0;
  margin:0 auto;
  overflow:hidden;
}

@media (max-width: 767px){
  .index_movie{
    margin: 40px auto 40px;
  }
  .index_movie .ttl{
    font-size: 20px;
  }
}

/* ----------------------
 International stores
------------------------- */
.intrnatnl {
  margin: 0 auto 60px;
}
.intrnatnl p{
  margin:0;
}
.intrnatnl img {
  width: 100%;
}
.intrnatnl .area + .area {
  margin-top: 50px;
}
.intrnatnl .area .box{
  padding: 0;
}
.intrnatnl .area_name {
  font-size: 30px;
  line-height: 1.5;
  border-bottom: 2px solid #dadada;
  margin: 0;
  padding: 0 10px 2px;
  color: #272727;
}
.intrnatnl .list{
  margin:30px auto;
}
.intrnatnl .thumb {
  float:left;
  width: 150px;
  margin:0 30px 0 0;
}
.intrnatnl .info {
  float: left;
}
.intrnatnl .info .name {
  line-height:1.5;
  font-size: 28px;
  color:#da2423;
}
.intrnatnl .info .adrs {
  color: #272727;
}
.intrnatnl .btns{
  margin:20px 0 0;
  text-align:left;
}
.intrnatnl .btns a{
  box-sizing:border-box;
  display: inline-block;
  line-height:46px;
  width: 160px;
  border: 2px solid #D92323;
  border-radius: 3px;
  font-weight:bold;
  color:#da2423;
  text-align:center;
}
.intrnatnl .btns a:hover{
  background:#da2423;
  color:#fff;
}
.intrnatnl .shop{
    margin-right: 10px;
}

@media (min-width: 992px) {
  .intrnatnl .btns{
    text-align:center;
  }
}

@media (max-width: 767px){
  .intrnatnl .area_name {
    font-size: 25px;
  }
  .intrnatnl .list{
    margin: 0 0 30px;
  }
  .intrnatnl .thumb {
    width: 27%;
    margin: 12px 12px 0 0;
  }
  .intrnatnl .info{
    width: 67%;
    margin: 12px 0 0;
  }
  .intrnatnl .info .name{
    margin:0;
    font-size: 20px;
  }
  .intrnatnl .btns{
    margin: 12px 0 0;
  }
  .intrnatnl .btns a{
    width: 120px;
    line-height: 32px;
    font-size:12px;
  }
  .intrnatnl .btns .shop{
    margin-right: 6px;
  }
}


/* ----------------------
 Multilingual
------------------------- */
.page_cs body,
.page_ct body{
  font-family: sans-serif;
}
.page_cs .mincho{
  font-family: "Times New Roman",SimSun,serif;
}
.page_ct .mincho{
  font-family: "Times New Roman",FangSong,serif;
}