@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Montserrat:500,700,900|Noto+Sans+JP:500,700,900&subset=japanese");
html {
  font-family: YakuHanJPs, 'Montserrat','Noto Sans JP',"Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",Geneva,Arial,Verdana,sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "palt";
  line-height: 1em;
  color: #f2157f;
}

* {
  margin: 0;
  padding: 0;
}

a {
  color: #f2157f;
  text-decoration: none;
}
a:hover {
  text-decoration: none;
}
a img {
  border: none;
}

.fcl {
  zoom: 100%;
}
.fcl:after {
  content: " ";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}

img,
svg {
  width: 100%;
  vertical-align: middle;
  margin: 0;
  padding: 0;
}

html.webkit img[src$=svg] {
  transform: translate3d(0, 0, 0);
}

ol, ul {
  list-style: none;
}

.css_imagehover {
  position: relative;
  display: block;
  line-height: 0;
}
.css_imagehover .img {
  will-change: opacity;
  -webkit-transition: opacity 0.3s;
  -moz-transition: opacity 0.3s;
  -ms-transition: opacity 0.3s;
  -o-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
.css_imagehover img:nth-of-type(2) {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.onlyPc {
  display: block;
}

img.onlyPc {
  display: inline-block;
}

.onlySp,
img.onlySp {
  display: none;
}

#main .topPage .feature .slide .main,
#main .topPage .banner .img {
  position: relative;
  overflow: hidden;
}

#main .topPage .feature .slide .main .main_inner,
#main .topPage .banner .img .img_inner {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#opening {
  position: fixed;
  top: 0;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 10000;
  overflow: hidden;
}
#opening .off {
  visibility: hidden;
}
#opening .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #f2157f;
}
#opening .bg.pink {
  background-color: #f2157f;
}
#opening .contents-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: #FFF;
}
#opening .contents {
  position: absolute;
  width: 100%;
  height: 100%;
}
#opening .contents .contents-inner {
  position: absolute;
  top: 0;
  left: 50px;
  right: 50px;
  bottom: 0;
}
#opening .contents svg {
  box-sizing: content-box;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  max-width: 691px;
}
#opening .contents svg .pink {
  fill: #f2157f;
}
#opening .contents svg .arrows {
  opacity: 0;
}
#opening .contents svg .outline {
  stroke: #FFF;
  stroke-width: 1.5px;
  fill: none;
}
#opening #lottie {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 11000;
  background-color: #f2157f;
  overflow: auto;
}

.modal .modal_inner {
  position: relative;
}

.modal .bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modal .window {
  position: relative;
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

.modal .close {
  display: block;
  position: absolute;
}

#modal_movie {
  overflow: hidden;
}

#modal_movie .window .youtube_wrap {
  position: relative;
  width: 100%;
  margin: 0 auto;
  z-index: 2;
}

#modal_movie .window .youtube_wrap:before {
  content: '';
  display: block;
  padding: 56.25% 0 0;
  /*450/800*/
}

#modal_movie .window .youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#modal_movie .close {
  top: 0.81em;
  /*13/16*/
  right: 0.81em;
  width: 1.63em;
  /*26.12/16*/
}

@media (min-width: 921px) {
  html[lang="ja"] #header .css_language .jp {
    color: #f8b1d9;
  }

  #header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 8.8666666667rem;
    z-index: 100;
  }
  #header .header_inner_wrap {
    position: relative;
    height: 100%;
    overflow: hidden;
  }
  #header .header_inner_wrap:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9;
    background-color: #ffffff;
    will-change: background;
    -webkit-transition: background-color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: background-color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: background-color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: background-color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: background-color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #header.isPcBgActive .header_inner_wrap:before {
    background-color: #f2157f;
  }
  #header.isPcBgActive .logo a img:nth-of-type(2) {
    opacity: 1;
  }
  #header.isPcBgActive #gnav > ul > li.js-menu_toggle a span:after {
    opacity: 1;
  }
  #header.isPcBgActive #gnav > ul > li.js-menu_toggle:hover a span:after {
    opacity: 0;
  }
  #header.isPcBgActive #gnav > ul > li > a {
    color: #ffffff;
  }
  #header #gnav > ul > li:hover > a, #header.isPcBgActive #gnav > ul > li:hover > a {
    color: #f2157f;
    z-index: 20;
  }
  #header #gnav > ul > li:hover > a:before, #header.isPcBgActive #gnav > ul > li:hover > a:before {
    opacity: 1;
  }
  #header.isPcBgActive #gnav > ul > li.insta > a span:after {
    opacity: 1;
  }
  #header.isPcBgActive #gnav > ul > li.insta:hover > a span:after {
    opacity: 0;
  }
  #header .logo {
    position: absolute;
    top: 35.7142857143%;
    left: 6.25%;
    width: 9.7916666667%;
    z-index: 10;
  }
  #header .logo a {
    will-change: opacity;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #header .logo a:hover {
    opacity: 0.4;
  }
  #header .logo img {
    will-change: opacity;
  }
  #header .logo img:nth-of-type(2) {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    -webkit-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #header #gnav {
    position: absolute;
    top: 0;
    padding: 0 0 0 19.4444444444%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
  }
  #header #gnav > ul {
    display: inline-block;
    letter-spacing: -0.4em;
    height: 100%;
  }
  #header #gnav > ul > li {
    display: inline-block;
    width: 7rem;
    height: 100%;
    vertical-align: top;
  }
  #header #gnav > ul > li:nth-of-type(1) {
    width: 8.3333333333rem;
  }
  #header #gnav > ul > li:nth-of-type(2) {
    width: 5.5rem;
  }
  #header #gnav > ul > li:nth-of-type(3) {
    width: 7.2666666667rem;
  }
  #header #gnav > ul > li:nth-of-type(4) {
    width: 5.6rem;
  }
  #header #gnav > ul > li:nth-of-type(5) {
    width: 5.6rem;
  }
  #header #gnav > ul > li:nth-of-type(6) {
    width: 7rem;
  }
  #header #gnav > ul > li:nth-of-type(7) {
    width: 6rem;
  }
  #header #gnav > ul > li:nth-of-type(8) {
    width: 5.3333333333rem;
  }
  #header #gnav > ul > li > a {
    position: relative;
    z-index: 10;
    display: block;
    height: 100%;
    -webkit-transition: color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: color 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #header #gnav > ul > li > a:before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 8.8666666667rem;
    height: 100%;
    background-color: #ffffff;
    margin: 0 0 0 -4.4333333333rem;
    opacity: 0;
    -webkit-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #header #gnav > ul > li > a > span {
    display: block;
    width: 100%;
    height: 100%;
  }
  #header #gnav > ul > li > a > span > span {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    margin: -0.5em 0 0;
    display: block;
    vertical-align: middle;
    text-align: center;
    font-size: 0.8333333333rem;
    font-weight: 700;
    letter-spacing: 0.125em;
  }
  #header #gnav > ul > li > a.css_language > span {
    font-weight: 500;
  }
  #header #gnav > ul > li.insta a {
    color: rgba(0, 0, 0, 0) !important;
  }
  #header #gnav > ul > li.insta a span {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  #header #gnav > ul > li.insta a span:before, #header #gnav > ul > li.insta a span:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: no-repeat center;
    -webkit-background-size: 59.375% auto;
    background-size: 59.375% auto;
  }
  #header #gnav > ul > li.insta a span:before {
    background-image: url(../img/header_btn_insta.png);
  }
  #header #gnav > ul > li.insta a span:after {
    opacity: 0;
    background-image: url(../img/header_btn_insta_w.png);
    -webkit-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #header #gnav > ul > li.js-menu_toggle > a > span:before, #header #gnav > ul > li.js-menu_toggle > a > span:after {
    content: '';
    position: absolute;
    bottom: 2.5666666667rem;
    left: 50%;
    display: block;
    width: 0.5323rem;
    height: 0.4rem;
    margin: 0rem 0rem 0rem;
    margin-left: -0.26615rem;
    background: no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #header #gnav > ul > li.js-menu_toggle > a > span:before {
    background-image: url(../img/gnav_arrow.svg);
  }
  #header #gnav > ul > li.js-menu_toggle > a > span:after {
    will-change: opacity;
    opacity: 0;
    background-image: url(../img/gnav_arrow_w.svg);
    -webkit-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #header #gnav > ul > li .low_nav {
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    z-index: 5;
    background-color: #f2157f;
    overflow: hidden;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner {
    padding: 8.8666666667rem 0 0 0;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap {
    background-color: #ffffff;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap .ul_wrap + .ul_wrap {
    border-top: 1px solid #d9d9d9;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul {
    width: 81.3541666667%;
    letter-spacing: -0.4em;
    padding: 1.3888888889% 0;
    margin: 0 auto;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li {
    position: relative;
    display: inline-block;
    width: 29.9189073837%;
    padding: 0 1.3888888889%;
    border-right: 1px solid #d9d9d9;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li:last-child {
    border-right: none;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a,
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li .textwrap {
    position: relative;
    display: block;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li .textwrap{
    opacity: 0.7;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a .img,
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li .textwrap .img {
    overflow: hidden;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a .img img {
    -webkit-transition: transform 0.3s;
    -moz-transition: transform 0.3s;
    -ms-transition: transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
    will-change: transform;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a .txt,
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li .textwrap .txt {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a .txt p,
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li .textwrap .txt p  {
    position: relative;
    display: inline-block;
    background-color: #ffffff;
    font-size: 0.8333333333rem;
    letter-spacing: 0.125em;
    font-weight: 700;
    line-height: 1em;
    padding: 3.2810271041% 5.2781740371% 1.4265335235% 1.4265335235%;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a .txt p:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #f2157f;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a .txt p span {
    position: relative;
    display: block;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a:hover .img img {
    -webkit-transform: scale(1.1);
    -moz-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a:hover .txt p {
    color: #ffffff;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a:hover .txt p:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #header.isSubMenuOpen .shop_search {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
  }
  #header .shop_search {
    position: absolute;
    top: 0;
    right: 0;
    width: 18.3680555556%;
    height: 11.0666666667rem;
    background-color: #f2157f;
    color: #fff;
    z-index: 10;
    -webkit-transition: transform 0.3s;
    -moz-transition: transform 0.3s;
    -ms-transition: transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
  }
  #header .shop_search h3 {
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1em;
    padding: 9.0737240076% 0 5.1039697543% 9.0737240076%;
    letter-spacing: 0.085em;
  }
  #header .shop_search h3:before {
    content: '';
    display: inline-block;
    width: 1.2333333333rem;
    height: 1rem;
    background: url(../img/gnav_search_icon_home.svg) no-repeat center top;
    -webkit-background-size: contain;
    background-size: contain;
    vertical-align: bottom;
    margin: 0rem 0.3666666667rem 0rem 0rem;
  }
  #header .shop_search ul li {
    padding: 0 9.8298676749% 0 9.4517958412%;
  }
  #header .shop_search ul li + li {
    padding-top: 2.4574669187%;
  }
  #header .shop_search ul li a {
    position: relative;
    display: block;
    height: 2.7333333333rem;
    font-size: 0.8333333333rem;
    line-height: 2.6rem;
    letter-spacing: 0.145em;
    color: #ffffff;
    padding: 0 0 0 1.9rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 2px solid #ffffff;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #header .shop_search ul li a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #header .shop_search ul li a:hover {
    color: #f2157f;
  }
  #header .shop_search ul li a:hover:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #header .shop_search ul li a .txt {
    position: relative;
  }
  #header .shop_search ul li a .pin, #header .shop_search ul li a .arrow {
    position: absolute;
    top: 0;
    height: 100%;
  }
  #header .shop_search ul li a .pin:before, #header .shop_search ul li a .pin:after, #header .shop_search ul li a .arrow:before, #header .shop_search ul li a .arrow:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: no-repeat center;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
  }
  #header .shop_search ul li a .pin:after, #header .shop_search ul li a .arrow:after {
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #header .shop_search ul li a .pin {
    left: 0.6rem;
    width: 0.7333333333rem;
  }
  #header .shop_search ul li a .pin:before {
    background-image: url(../img/gnav_search_icon_pin.svg);
  }
  #header .shop_search ul li a .pin:after {
    background-image: url(../img/gnav_search_icon_pin_w.svg);
  }
  #header .shop_search ul li a .arrow {
    right: 0.9666666667rem;
    width: 0.5rem;
    -webkit-transition: transform 0.3s;
    -moz-transition: transform 0.3s;
    -ms-transition: transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
  }
  #header .shop_search ul li a .arrow:before {
    background-image: url(../img/gnav_search_icon_arrow.svg);
  }
  #header .shop_search ul li a .arrow:after {
    background-image: url(../img/gnav_search_icon_arrow_w.svg);
  }
  #header .shop_search ul li a:hover .pin:after {
    opacity: 1;
  }
  #header .shop_search ul li a:hover .arrow:after {
    opacity: 1;
  }
  #header .shop_search ul li a:hover .arrow {
    -webkit-transform: translateX(50%);
    -moz-transform: translateX(50%);
    -ms-transform: translateX(50%);
    -o-transform: translateX(50%);
    transform: translateX(50%);
  }
  #header .shop_search ul li .wrap {
    position: relative;
    display: block;
    height: 2.7333333333rem;
    font-size: 0.8333333333rem;
    line-height: 2.6rem;
    letter-spacing: 0.145em;
    color: #ffffff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 2px solid #ffffff;
  }
  #header .shop_search ul li .wrap:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #header .shop_search ul li .wrap:hover:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #header .shop_search ul li .wrap input[type=text] {
    outline: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 0.8333333333rem;
    padding: 0.6666666667rem 2.5rem 0.6666666667rem 0.6666666667rem;
    letter-spacing: 0.145em;
    color: #ffffff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background-color: transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #header .shop_search ul li .wrap input[type=text]::-webkit-input-placeholder {
    color: #ffffff;
  }
  #header .shop_search ul li .wrap input[type=text]:placeholder-shown {
    color: #ffffff;
  }
  #header .shop_search ul li .wrap:hover input[type=text] {
    color: #000000;
  }
  #header .shop_search ul li .wrap:hover input[type=text]::-webkit-input-placeholder {
    color: #cccccc;
  }
  #header .shop_search ul li .wrap:hover input[type=text]:placeholder-shown {
    color: #cccccc;
  }
  #header .shop_search ul li .wrap button {
    position: absolute;
    top: 0;
    right: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background-color: transparent;
    cursor: pointer;
    width: 2.5rem;
    height: 2.5rem;
  }
  #header .shop_search ul li .wrap button > span {
    position: relative;
    display: block;
    width: 45.3333333333%;
    padding: 46.1666666667% 0 0 0;
    margin: 0 auto;
  }
  #header .shop_search ul li .wrap button > span img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  #header .shop_search ul li .wrap button > span img:nth-of-type(2) {
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #header .shop_search ul li .wrap:hover button > span img:nth-of-type(2) {
    opacity: 1;
  }

  #main {
    display: block;
    padding: 9.2361111111% 0 9.7222222222%;
  }
}
@media (min-width: 751px) {
  .modal .onlySp {
    display: none;
  }

  html {
    font-size: 15px;
    font-size: 1.0416666667vw;
    font-weight: 500;
    line-height: 1em;
  }

  html[lang="ja"] #footer .language .jp {
    opacity: 0.8;
  }

  #footer {
    border-top: 3px solid #f4f4f4;
  }
  #footer .inner {
    position: relative;
    width: 87.5%;
    margin: 0 auto;
  }
  #footer .inner .pagetop {
    position: absolute;
    top: -1.2666666667rem;
    right: -0.7666666667rem;
    width: 3.7666666667rem;
    height: 3.7666666667rem;
  }
  #footer .inner .pagetop a {
    display: block;
    width: 100%;
    height: 100%;
  }
  #footer .inner .pagetop a .arrow {
    width: 100%;
    height: 100%;
    padding: 0;
  }
  #footer .inner .pagetop a .arrow span:nth-of-type(1) {
    background-color: #f2157f;
  }
  #footer .inner .pagetop a .arrow span:nth-of-type(2) {
    background-color: #ffffff;
  }
  #footer .inner .logo {
    padding: 6.6666666667% 0 2.1825396825% 0;
  }
  #footer .inner .logo a {
    display: block;
    width: 11.1904761905%;
    will-change: opacity;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #footer .inner .logo a:hover {
    opacity: 0.4;
  }
  #footer .inner .links {
    letter-spacing: -0.4em;
  }
  #footer .inner .links .left, #footer .inner .links .right {
    display: inline-block;
    vertical-align: top;
  }
  #footer .inner .links .left {
    width: 85.7142857143%;
  }
  #footer .inner .links .left a {
    font-size: 0.8666666667rem;
    line-height: 1em;
    letter-spacing: 0.125em;
    display: inline;
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s;
  }
  #footer .inner .links .left a:hover {
    border-bottom-color: #f2157f;
  }
  #footer .inner .links .left ul li {
    display: inline;
    letter-spacing: 0;
    font-size: 0.8666666667rem;
    line-height: 1em;
  }
  #footer .inner .links .left ul li:after {
    content: '/';
    display: inline;
    padding: 0 0.6em;
  }
  #footer .inner .links .left ul li:last-child:after {
    content: '';
  }

  #footer .inner .links .left ul li .disabled{
    color: #f2157f;
    opacity: 0.3;
  }

  #footer .inner .links .left dl {
    padding: 2.3148148148% 0 0 0;
  }
  #footer .inner .links .left dl:last-child {
    padding: 2.3148148148% 0 7.6388888889% 0;
  }
  #footer .inner .links .left dl dt, #footer .inner .links .left dl dd {
    display: inline;
  }
  #footer .inner .links .left dl dt {
    padding: 0rem 1rem 0rem 0rem;
    font-size: 0.8666666667rem;
    line-height: 1em;
    font-weight: 900;
    letter-spacing: 0.125em;
  }
  #footer .inner .links .left dl dd ul {
    display: inline;
  }
  #footer .inner .links .right {
    width: 14.2857142857%;
    text-align: right;
  }
  #footer .inner .links .right dl dt {
    font-size: 1.1392666667rem;
    line-height: 1em;
    letter-spacing: 0.12em;
    font-weight: 700;
    padding: 0 0 13.3333333333% 0;
  }
  #footer .inner .links .right dl dd ul {
    letter-spacing: -0.4em;
  }
  #footer .inner .links .right dl dd ul li {
    display: inline-block;
  }
  #footer .inner .links .right dl dd ul li:nth-of-type(1) {
    width: 16.1111111111%;
  }
  #footer .inner .links .right dl dd ul li:nth-of-type(2) {
    width: 7.2222222222%;
    margin: 0 0 0 18.0555555556%;
  }
  #footer .inner .links .right dl dd ul li:nth-of-type(3) {
    width: 17.2222222222%;
    margin: 0 0 0 18.0555555556%;
  }
  #footer .inner .links .right dl dd ul li a {
    display: block;
    will-change: opacity;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #footer .inner .links .right dl dd ul li a:hover {
    opacity: 0.4;
  }
  #footer .inner .bottom {
    position: relative;
    background: url(../img/footer_line_dot.png) repeat-x center top;
    -webkit-background-size: auto 0.1333333333rem;
    background-size: auto 0.1333333333rem;
    padding: 2.3015873016% 0 2.3015873016% 0;
  }
  #footer .inner .bottom small {
    display: block;
    text-align: center;
    font-size: 0.7333333333rem;
    letter-spacing: 0.065em;
  }
  #footer .inner .bottom .privacy,
  #footer .inner .bottom .language {
    position: absolute;
    top: 50%;
    margin: -0.5em 0 0;
    font-size: 0.7333333333rem;
    line-height: 1em;
    letter-spacing: 0.065em;
  }
  #footer .inner .bottom .privacy {
    left: 0;
    display: inline-flex;
    align-items: center;
  }
  #footer .inner .bottom .privacy li:after{
    content: '　/　';
  }
  #footer .inner .bottom .privacy li:last-child:after{
    display: none;
  }
  #footer .inner .bottom .privacy a {
    display: inline;
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s;
  }
  #footer .inner .bottom .privacy a:hover {
    border-bottom-color: #f2157f;
  }
  #footer .inner .bottom .language {
    right: 0;
  }
  #footer .inner .bottom .language a {
    display: inline;
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s;
  }
  #footer .inner .bottom .language a:hover {
    border-bottom-color: #f2157f;
  }

  .js-rollover .arrow,
  .js-rollover_vertical .arrow {
    overflow: hidden;
    position: absolute;
    bottom: 0;
    right: 0;
    display: block;
    width: 17.7358490566%;
    padding: 17.7358490566% 0 0 0;
  }
  .js-rollover .arrow:before,
  .js-rollover_vertical .arrow:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 1px solid #f2157f;
    z-index: 2;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .js-rollover .arrow span,
  .js-rollover_vertical .arrow span {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;
  }
  .js-rollover .arrow span:nth-of-type(2),
  .js-rollover_vertical .arrow span:nth-of-type(2) {
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%);
  }

  .js-rollover_vertical .arrow span:nth-of-type(2) {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
  }

  #main .topPage .css_arrow {
    position: absolute;
    top: 0;
    left: 0;
    width: 12.7333333333em;
    height: 19.4em;
  }
  #main .topPage .css_arrow > div, #main .topPage .css_arrow:before, #main .topPage .css_arrow:after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    padding: 69.6335078534% 0 0;
    background: url("../img/top_feature_bg_arrow_parts.png") no-repeat center transparent;
    -webkit-background-size: contain;
    background-size: contain;
    opacity: 0;
    -webkit-transform: translateY(20%);
    -moz-transform: translateY(20%);
    -ms-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
  }
  #main .topPage .css_arrow > div {
    -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .css_arrow:before {
    top: 27.3195876289%;
    -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -moz-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -ms-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -o-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  }
  #main .topPage .css_arrow:after {
    bottom: 0;
    -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
    -moz-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
    -ms-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
    -o-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
  }
  #main .topPage .css_arrow.isActive > div, #main .topPage .css_arrow.isActive:before, #main .topPage .css_arrow.isActive:after {
    opacity: 1;
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
  }
  #main .topPage .firstview_wrap {
    position: relative;
  }
  #main .topPage .firstview_wrap .mainvisual {
    position: relative;
    padding: 47.9513888889% 0 0;
  }
  #main .topPage .firstview_wrap .mainvisual:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 18.4375%;
    padding: 57.1875% 0 0;
    background: url(../img/top_mainvisual_bg.png) no-repeat left bottom;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 2;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: none;
    opacity: 0;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .img {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 90.7638888889%;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box h1,
  #main .topPage .firstview_wrap .mainvisual .image_block .box h2 {
    position: absolute;
    top: 60.3910209993%;
    left: 6.25%;
    font-size: 4.5916666667rem;
    line-height: 1.1em;
    font-weight: 500;
    letter-spacing: 0em;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    color: #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box h1 span,
  #main .topPage .firstview_wrap .mainvisual .image_block .box h2 span {
    display: inline-block;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box h1 .bg,
  #main .topPage .firstview_wrap .mainvisual .image_block .box h2 .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #ffffff;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box h1 .txt,
  #main .topPage .firstview_wrap .mainvisual .image_block .box h2 .txt {
    position: relative;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box h1 {
    width: 41.3541666667%;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box h2 {
    font-size: 4.5916666667rem;
    line-height: 1.1em;
    font-weight: 500;
    letter-spacing: 0em;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    color: #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top {
    position: absolute;
    top: 76.1766835626%;
    left: 6.25%;
    font-size: 1.4333333333rem;
    line-height: 1em;
    font-weight: 500;
    letter-spacing: 0.125em;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    padding: 6px 0;
    background-color: #fff;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top a {
    position: relative;
    display: inline-block;
    color: #f2157f;
    padding: 0rem 0rem 0rem 2.6666666667rem;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top a .arrow {
    position: absolute;
    top: 50%;
    left: 0;
    bottom: auto;
    right: auto;
    display: block;
    width: 1.7666666667rem;
    height: 1.7666666667rem;
    margin: -0.8833333333rem;
    padding: 0;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top a .arrow:before {
    border: 1px solid #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top a .arrow span:nth-of-type(1) {
    background-image: url("../img/top_btn_more.svg");
    background-color: #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top a .arrow span:nth-of-type(2) {
    background-image: url("../img/top_btn_more_p.svg");
    background-color: #fff;
  }
  /* #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.3333333333rem;
    background-color: #f2157f;
    margin-bottom: -1rem;
  } */
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top a .arrow {
    margin-left: 0.4rem;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block {
    position: absolute;
    right: 1.2847222222%;
    bottom: -2.9333333333rem;
    width: 16.9444444444%;
    z-index: 2;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li {
    padding-top: 5.1229508197%;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a {
    display: block;
    border: 5px solid #f3f3f3;
    background-color: #ffffff;
    -webkit-transition: border 0.3s;
    -moz-transition: border 0.3s;
    -ms-transition: border 0.3s;
    -o-transition: border 0.3s;
    transition: border 0.3s;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a:hover {
    border-color: #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a:hover .img:after {
    opacity: 0;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img {
    position: relative;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img span {
    display: block;
    position: relative;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img span:before {
    content: '';
    display: block;
    padding: 52.7659574468% 0 0 0;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img span > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color: rgba(228, 0, 127, 0.15);
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a p {
    position: relative;
    height: 2.4666666667rem;
    padding: 0rem 2.5rem 0rem 0rem;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a p .arrow {
    position: absolute;
    top: 50%;
    left: 0;
    bottom: auto;
    right: auto;
    display: block;
    width: 1.7666666667rem;
    height: 1.7666666667rem;
    margin: -0.8833333333rem;
    padding: 0;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a p .arrow:before {
    border: 1px solid #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a p .arrow span:nth-of-type(1) {
    background-image: url("../img/top_btn_more.svg");
    background-color: #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a p .arrow span:nth-of-type(2) {
    background-image: url("../img/top_btn_more_p.svg");
    background-color: #fff;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a p .arrow {
    left: auto;
    right: 0;
    margin-right: 0.3333333333rem;
    margin-left: 0;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a p .txt {
    display: block;
    font-size: 0.7333333333rem;
    line-height: 3.3636363636em;
    font-weight: 500;
    letter-spacing: 0.125em;
    font-weight: bold;
    color: #808080;
    padding-left: 0.6666666667rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li.isActive a {
    border-color: #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li.isActive a .img:after {
    opacity: 0;
  }
  #main .topPage .firstview_wrap .pickup_news {
    padding: 1.0416666667% 0;
  }
  #main .topPage .firstview_wrap .pickup_news ul li {
    padding: 1.0416666667% 0 1.0416666667% 9.2708333333%;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a {
    display: inline-block;
    color: #808080;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl {
    display: table;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl dt, #main .topPage .firstview_wrap .pickup_news ul li a dl dd {
    display: table-cell;
    vertical-align: middle;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl dt {
    font-size: 0.8666666667rem;
    letter-spacing: 0.125em;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl dt:before {
    content: 'NEWS';
    display: inline-block;
    background-color: #f2157f;
    color: #ffffff;
    font-size: 0.7333333333rem;
    letter-spacing: 0.085em;
    line-height: 1em;
    padding: 0.2333333333rem 0.2333333333rem 0.2333333333rem 0.2666666667rem;
    margin: 0rem 0.7666666667rem 0rem 0rem;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl dd {
    padding: 0rem 0rem 0rem 2rem;
    font-size: 1rem;
    letter-spacing: 0.165em;
    line-height: 1em;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl dd span {
    display: inline;
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a:hover dl dd span {
    border-bottom-color: #808080;
  }
  #main .topPage .firstview_wrap .attention_message {
    padding: 1.0416666667% 0 1.0416666667% 9.2708333333%;
  }
  #main .topPage .firstview_wrap .attention_message .wrap {
    width: 78.2666666667rem;
    font-size: 1rem;
    letter-spacing: 0.165em;
    line-height: 1.7333333333em;
    color: #f2157f;
    background-color: #f3f3f3;
    padding: 2rem 2.3333333333rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-top: 2.3rem;
  }
  #main .topPage .firstview_wrap .attention_message .wrap p{
    font-size: 1.4rem;
    line-height: 1.4772727273em;
  }
  #main .topPage .feature .feature_inner {
    position: relative;
    padding: 81.1805555556% 0 0;
  }
  #main .topPage .feature .feature_inner .dec_arrow {
    position: absolute;
    top: 11.0350727117%;
    right: 6.25%;
    width: 13.2638888889%;
    padding: 20.2083333333% 0 0;
  }
  #main .topPage .feature:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 36.2847222222% 0 0;
    background: url(../img/top_feature_bg.jpg) no-repeat left bottom;
    -webkit-background-size: cover;
    background-size: cover;
  }
  #main .topPage .feature h2 {
    position: absolute;
    top: 6.4157399487%;
    left: 9.2361111111%;
    font-size: 1.4333333333rem;
    letter-spacing: 0.085em;
    font-weight: 900;
    z-index: 10;
  }
  #main .topPage .feature .read {
    position: absolute;
    top: 10.0513259196%;
    left: 9.2361111111%;
    font-size: 3.4666666667rem;
    font-weight: 900;
    line-height: 1.3461538462em;
    z-index: 10;
  }
  #main .topPage .feature .read span {
    font-weight: 700;
    font-size: 1.15em;
  }
  #main .topPage .feature .slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
  }
  #main .topPage .feature .slide .main {
    position: absolute;
    top: 20.9580838323%;
    left: 0;
    width: 100%;
    padding: 35.9375% 0 0;
  }
  #main .topPage .feature .slide .main ul, #main .topPage .feature .slide .main li {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  #main .topPage .feature .slide .main ul li .img, #main .topPage .feature .slide .main li li .img {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 66.6666666667%;
  }
  #main .topPage .feature .slide .main ul li .txt, #main .topPage .feature .slide .main li li .txt {
    position: absolute;
    top: 11.0144927536%;
    right: 9.2361111111%;
    width: 27.8819444444%;
    height: 26.7666666667rem;
  }
  #main .topPage .feature .slide .main ul li .txt a, #main .topPage .feature .slide .main li li .txt a {
    position: absolute;
    top: 0;
    left: 0;
    display: table;
    width: 100%;
    height: 100%;
    color: #ffffff;
    overflow: hidden;
    background-color: #f2157f;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #main .topPage .feature .slide .main ul li .txt a:before, #main .topPage .feature .slide .main li li .txt a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .feature .slide .main ul li .txt a:hover:before, #main .topPage .feature .slide .main li li .txt a:hover:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #main .topPage .feature .slide .main ul li .txt a:hover, #main .topPage .feature .slide .main li li .txt a:hover {
    color: #f2157f;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner, #main .topPage .feature .slide .main li li .txt a .inner {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    padding: 0 11.2079701121%;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner h3, #main .topPage .feature .slide .main li li .txt a .inner h3 {
    font-size: 1.4666666667rem;
    letter-spacing: 0.085em;
    font-weight: 900;
    line-height: 1.4772727273em;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner .description, #main .topPage .feature .slide .main li li .txt a .inner .description {
    font-size: 1rem;
    letter-spacing: 0.125em;
    line-height: 1.6666666667em;
    padding: 1.3333333333rem 0rem 2.1666666667rem;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner .detail, #main .topPage .feature .slide .main li li .txt a .inner .detail {
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.125em;
    line-height: 1em;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner .detail span, #main .topPage .feature .slide .main li li .txt a .inner .detail span {
    display: block;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner .detail span + span, #main .topPage .feature .slide .main li li .txt a .inner .detail span + span {
    padding: 0.5666666667rem 0rem 0rem;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner .detail span.onlySp, #main .topPage .feature .slide .main li li .txt a .inner .detail span.onlySp {
    display: none;
  }
  #main .topPage .feature .slide .main ul li .txt a .arrow, #main .topPage .feature .slide .main li li .txt a .arrow {
    position: absolute;
    top: auto;
    bottom: -1px;
    right: -1px;
    padding: 0;
    margin: 0;
    width: 3.7666666667rem;
    height: 3.7666666667rem;
  }
  #main .topPage .feature .slide .main ul li .txt a .arrow:before, #main .topPage .feature .slide .main li li .txt a .arrow:before {
    border: none;
  }
  #main .topPage .feature .slide .main ul li .txt a .arrow span:nth-of-type(1), #main .topPage .feature .slide .main li li .txt a .arrow span:nth-of-type(1) {
    background-image: url(../img/top_feature_icon_btn.svg);
    background-color: #ffffff;
  }
  #main .topPage .feature .slide .main ul li .txt a .arrow span:nth-of-type(2), #main .topPage .feature .slide .main li li .txt a .arrow span:nth-of-type(2) {
    background-image: url(../img/top_feature_icon_btn_p.svg);
    background-color: #f2157f;
  }
  #main .topPage .feature .slide .main .arrow {
    position: absolute;
    top: 50%;
    display: block;
    width: 1.353125%;
    height: 8%;
    margin: -2.7034722222% 0 0;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main .topPage .feature .slide .main .arrow.prev {
    left: 4.1666666667%;
  }
  #main .topPage .feature .slide .main .arrow.next {
    right: 4.1666666667%;
  }
  #main .topPage .feature .slide .main .arrow.off {
    opacity: 0;
  }
  #main .topPage .feature .slide .main .arrow img {
    -webkit-transition: transform 0.3s;
    -moz-transition: transform 0.3s;
    -ms-transition: transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
  }
  #main .topPage .feature .slide .main .arrow.prev:hover img {
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  #main .topPage .feature .slide .main .arrow.next:hover img {
    -webkit-transform: translateX(50%);
    -moz-transform: translateX(50%);
    -ms-transform: translateX(50%);
    -o-transform: translateX(50%);
    transform: translateX(50%);
  }
  #main .topPage .feature .slide .thum {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 28.2638888889% 0 0;
    overflow: hidden;
  }
  #main .topPage .feature .slide .thum ul {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 7.0833333333% 0 0;
    letter-spacing: -0.4em;
    text-align: center;
  }
  #main .topPage .feature .slide .thum ul li {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 13.4375%;
  }
  #main .topPage .feature .slide .thum ul li.icon_new:before {
    content: '';
    position: absolute;
    top: -3.6666666667rem;
    left: 50%;
    display: block;
    width: 3rem;
    height: 3.4rem;
    margin: 0rem 0rem 0rem -1.7rem;
    background: url(../img/top_feature_icon_new.svg) no-repeat center top;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #main .topPage .feature .slide .thum ul li a {
    position: relative;
    display: block;
    color: #808080;
  }
  #main .topPage .feature .slide .thum ul li a .img {
    position: relative;
    width: 83.3766233766%;
    padding: 83.3766233766% 0 0 0;
    margin: 0 auto;
  }
  #main .topPage .feature .slide .thum ul li a .img div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 4px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .feature .slide .thum ul li a .img:before, #main .topPage .feature .slide .thum ul li a .img:after, #main .topPage .feature .slide .thum ul li a .img div:before, #main .topPage .feature .slide .thum ul li a .img div:after {
    content: '';
    position: absolute;
    background-color: #f2157f;
    z-index: 2;
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .feature .slide .thum ul li a .img:before {
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
  }
  #main .topPage .feature .slide .thum ul li a .img:after {
    top: 0;
    right: 0;
    width: 4px;
    height: 100%;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: bottom;
    -moz-transform-origin: bottom;
    -ms-transform-origin: bottom;
    -o-transform-origin: bottom;
    transform-origin: bottom;
  }
  #main .topPage .feature .slide .thum ul li a .img div:before {
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    -o-transform-origin: top;
    transform-origin: top;
  }
  #main .topPage .feature .slide .thum ul li a .img div:after {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
  }
  #main .topPage .feature .slide .thum ul li a p {
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.5em;
    letter-spacing: 0.125em;
    padding: 11.6883116883% 0 0 0;
  }
  #main .topPage .feature .slide .thum ul li a p span {
    display: block;
  }
  #main .topPage .feature .slide .thum ul li a p .txt span {
    display: inline;
    /* border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s; */
  }
  #main .topPage .feature .slide .thum ul li a p .date {
    font-size: 0.6666666667rem;
    line-height: 1em;
    padding: 5.1948051948% 0 0 0;
  }
  #main .topPage .feature .slide .thum ul li.active a .img:before, #main .topPage .feature .slide .thum ul li a:hover .img:before {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
  }
  #main .topPage .feature .slide .thum ul li.active a .img:after, #main .topPage .feature .slide .thum ul li a:hover .img:after {
    -webkit-transform: scaleY(1);
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -o-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    -o-transform-origin: top;
    transform-origin: top;
  }
  #main .topPage .feature .slide .thum ul li.active a .img div:before, #main .topPage .feature .slide .thum ul li a:hover .img div:before {
    -webkit-transform: scaleY(1);
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -o-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: bottom;
    -moz-transform-origin: bottom;
    -ms-transform-origin: bottom;
    -o-transform-origin: bottom;
    transform-origin: bottom;
  }
  #main .topPage .feature .slide .thum ul li.active a .img div:after, #main .topPage .feature .slide .thum ul li a:hover .img div:after {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
  }
  #main .topPage .feature .slide .thum ul li.active a p .txt span, #main .topPage .feature .slide .thum ul li a:hover p .txt span {
    border-bottom-color: #808080;
  }
  #main .topPage .banner {
    padding: 7.9861111111% 0 0;
  }
  #main .topPage .banner ul {
    letter-spacing: -0.4em;
    text-align: center;
  }
  #main .topPage .banner ul li {
    position: relative;
    display: inline-block;
    vertical-align: top;
  }
  #main .topPage .banner ul li a {
    display: block;
    width: 100%;
    height: 100%;
  }
  #main .topPage .banner .slide {
    position: relative;
  }
  #main .topPage .banner .img {
    padding: 11.3472222222% 0 0;
  }
  #main .topPage .banner .img .ul_wrap {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
  }
  #main .topPage .banner .img .ul_wrap ul {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  #main .topPage .banner .img .ul_wrap li {
    display: inline-block;
    height: 82.7%;
    width: 25.8%;
    padding: 0rem 0.6rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .banner .img .ul_wrap li a {
    position: relative;
    display: block;
    margin: 0 auto;
    background-color: #f3f3f3;
    padding: 7px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .banner .img .ul_wrap li a div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 7px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .banner .img .ul_wrap li a:before, #main .topPage .banner .img .ul_wrap li a:after, #main .topPage .banner .img .ul_wrap li a div:before, #main .topPage .banner .img .ul_wrap li a div:after {
    content: '';
    position: absolute;
    background-color: #f2157f;
    z-index: 2;
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .banner .img .ul_wrap li a:before {
    top: 0;
    left: 0;
    width: 100%;
    height: 7px;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
  }
  #main .topPage .banner .img .ul_wrap li a:after {
    top: 0;
    right: 0;
    width: 7px;
    height: 100%;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: bottom;
    -moz-transform-origin: bottom;
    -ms-transform-origin: bottom;
    -o-transform-origin: bottom;
    transform-origin: bottom;
  }
  #main .topPage .banner .img .ul_wrap li a div:before {
    top: 0;
    left: 0;
    width: 7px;
    height: 100%;
    -webkit-transform: scaleY(0);
    -moz-transform: scaleY(0);
    -ms-transform: scaleY(0);
    -o-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    -o-transform-origin: top;
    transform-origin: top;
  }
  #main .topPage .banner .img .ul_wrap li a div:after {
    bottom: 0;
    left: 0;
    width: 100%;
    height: 7px;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
  }
  #main .topPage .banner .img .ul_wrap li a div {
    position: static;
    padding: 0;
    overflow: hidden;
  }
  #main .topPage .banner .img .ul_wrap li a:hover:before {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
  }
  #main .topPage .banner .img .ul_wrap li a:hover:after {
    -webkit-transform: scaleY(1);
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -o-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: top;
    -moz-transform-origin: top;
    -ms-transform-origin: top;
    -o-transform-origin: top;
    transform-origin: top;
  }
  #main .topPage .banner .img .ul_wrap li a:hover div:before {
    -webkit-transform: scaleY(1);
    -moz-transform: scaleY(1);
    -ms-transform: scaleY(1);
    -o-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: bottom;
    -moz-transform-origin: bottom;
    -ms-transform-origin: bottom;
    -o-transform-origin: bottom;
    transform-origin: bottom;
  }
  #main .topPage .banner .img .ul_wrap li a:hover div:after {
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
  }
  #main .topPage .banner .mark {
    padding: 4.4791666667% 0 2.2916666667%;
  }
  #main .topPage .banner .mark ul li {
    width: 0.6944444444%;
    margin: 0 0.2430555556%;
  }
  #main .topPage .banner .mark ul li:before {
    content: '';
    display: block;
    padding: 100% 0 0;
  }
  #main .topPage .banner .mark ul li a {
    position: absolute;
    top: 0;
    left: 0;
    border: 2px solid #f2157f;
    background-color: transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    will-change: opacity;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main .topPage .banner .mark ul li a:hover {
    opacity: 0.4;
  }
  #main .topPage .banner .mark ul li.active a {
    background-color: #f2157f;
  }
  #main .topPage .shop_search {
    position: relative;
    display: flex;
    width: 100%;
    margin-bottom: 6rem;
  }
  #main .topPage .shop_search .left, #main .topPage .shop_search .right {
    padding: 15% 0;
    /* position: absolute;
    top: 0;
    height: 42.842rem; */
  }
  #main .topPage .shop_search .left {
    display: block;
    left: 0;
    width: 50%;
    background-color: #f2157f;
    color: #ffffff;
    z-index: 2;
  }
  #main .topPage .shop_search .left .left_table {
    display: table;
    width: 100%;
    height: 100%;
  }
  #main .topPage .shop_search .left .inner {
    display: table-cell;
    vertical-align: middle;
    padding: 0 0 0 18.4722222222%;
  }
  #main .topPage .shop_search .left .inner h2 {
    font-size: 3.4666666667rem;
    letter-spacing: 0.08em;
    line-height: 1em;
    font-weight: 900;
  }
  #main .topPage .shop_search .left .inner .read {
    font-size: 1rem;
    letter-spacing: 0.125em;
    line-height: 1.6666666667em;
    padding: 3.8330494037% 0 5.9625212947% 0;
  }
  #main .topPage .shop_search .left .inner ul li {
    width: 75.6388415673%;
  }
  #main .topPage .shop_search .left .inner ul li + li {
    padding: 2.8960817717% 0 0 0;
  }
  #main .topPage .shop_search .left .inner ul li a {
    position: relative;
    display: block;
    height: 4.2rem;
    font-size: 1rem;
    line-height: 4.2rem;
    letter-spacing: 0.145em;
    background-color: #ffffff;
    padding: 0rem 0rem 0rem 3.1333333333rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 2px solid #ffffff;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #main .topPage .shop_search .left .inner ul li a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #f2157f;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .shop_search .left .inner ul li a:hover:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #main .topPage .shop_search .left .inner ul li a:before {
    z-index: 2;
  }
  #main .topPage .shop_search .left .inner ul li a:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 4.2rem;
    height: 100%;
    background-color: #f3f3f3;
  }
  #main .topPage .shop_search .left .inner ul li a .txt {
    position: relative;
    z-index: 3;
  }
  #main .topPage .shop_search .left .inner ul li a .pin, #main .topPage .shop_search .left .inner ul li a .arrow {
    position: absolute;
    top: 0;
    height: 100%;
    z-index: 3;
  }
  #main .topPage .shop_search .left .inner ul li a .pin:before, #main .topPage .shop_search .left .inner ul li a .pin:after, #main .topPage .shop_search .left .inner ul li a .arrow:before, #main .topPage .shop_search .left .inner ul li a .arrow:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: no-repeat center;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
  }
  #main .topPage .shop_search .left .inner ul li a .pin:after, #main .topPage .shop_search .left .inner ul li a .arrow:after {
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main .topPage .shop_search .left .inner ul li a:hover {
    color: #ffffff;
  }
  #main .topPage .shop_search .left .inner ul li a:hover .pin:after, #main .topPage .shop_search .left .inner ul li a:hover .arrow:after {
    opacity: 1;
  }
  #main .topPage .shop_search .left .inner ul li a:hover .arrow {
    -webkit-transform: translateX(10%);
    -moz-transform: translateX(10%);
    -ms-transform: translateX(10%);
    -o-transform: translateX(10%);
    transform: translateX(10%);
  }
  #main .topPage .shop_search .left .inner ul li a .pin {
    left: 1.1666666667rem;
    width: 1.1333333333rem;
  }
  #main .topPage .shop_search .left .inner ul li a .pin:before {
    background-image: url(../img/top_search_icon_pin.svg);
  }
  #main .topPage .shop_search .left .inner ul li a .pin:after {
    background-image: url(../img/top_search_icon_pin_w.svg);
  }
  #main .topPage .shop_search .left .inner ul li a .arrow {
    right: 0;
    width: 4.2rem;
    -webkit-transition: transform 0.3s;
    -moz-transition: transform 0.3s;
    -ms-transition: transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
  }
  #main .topPage .shop_search .left .inner ul li a .arrow:before, #main .topPage .shop_search .left .inner ul li a .arrow:after {
    -webkit-background-size: 16.6666666667% auto;
    background-size: 16.6666666667% auto;
  }
  #main .topPage .shop_search .left .inner ul li a .arrow:before {
    background-image: url(../img/top_search_icon_arrow.svg);
  }
  #main .topPage .shop_search .left .inner ul li a .arrow:after {
    background-image: url(../img/top_search_icon_arrow_w.svg);
  }
  #main .topPage .shop_search .left .inner ul li .wrap {
    position: relative;
    display: block;
    height: 4.2rem;
    font-size: 1rem;
    line-height: 4.2rem;
    letter-spacing: 0.145em;
    background-color: #ffffff;
  }
  #main .topPage .shop_search .left .inner ul li .wrap input[type=text] {
    outline: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 1rem;
    padding: 1.6666666667rem 4.2rem 1.6rem 1.3333333333rem;
    letter-spacing: 0.145em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background-color: transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .shop_search .left .inner ul li .wrap input[type=text]::-webkit-input-placeholder {
    color: #cccccc;
  }
  #main .topPage .shop_search .left .inner ul li .wrap input[type=text]:placeholder-shown {
    color: #cccccc;
  }
  #main .topPage .shop_search .left .inner ul li .wrap button {
    position: absolute;
    top: 0;
    right: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background-color: #f3f3f3;
    cursor: pointer;
    width: 4.2rem;
    height: 4.2rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 2px solid #f3f3f3;
  }
  #main .topPage .shop_search .left .inner ul li .wrap button:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #f2157f;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .shop_search .left .inner ul li .wrap button > span {
    position: relative;
    display: block;
    width: 30.9523809524%;
    padding: 31.746031746% 0 0 0;
    margin: 0 auto;
  }
  #main .topPage .shop_search .left .inner ul li .wrap button > span img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  #main .topPage .shop_search .left .inner ul li .wrap button > span img:nth-of-type(2) {
    opacity: 0;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main .topPage .shop_search .left .inner ul li .wrap button:hover:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #main .topPage .shop_search .left .inner ul li .wrap button:hover > span img:nth-of-type(2) {
    opacity: 1;
  }
  #main .topPage .shop_search .left .inner .btn_more {
    padding: 6.8143100511% 0 0 0;
  }
  #main .topPage .shop_search .left .inner .btn_more a {
    position: relative;
    color: #ffffff;
    font-size: 1rem;
    letter-spacing: 0.105em;
    padding: 0rem 0rem 0rem 2.7666666667rem;
  }
  #main .topPage .shop_search .left .inner .btn_more a .txt {
    display: inline;
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s;
  }
  #main .topPage .shop_search .left .inner .btn_more a .txt:hover {
    border-bottom-color: #fff;
  }
  #main .topPage .shop_search .left .inner .btn_more a .arrow {
    position: absolute;
    top: 50%;
    left: 0;
    bottom: auto;
    right: auto;
    display: block;
    width: 1.7666666667rem;
    height: 1.7666666667rem;
    margin: -0.8833333333rem 0;
    padding: 0;
  }
  #main .topPage .shop_search .left .inner .btn_more a .arrow:before {
    border: 1px solid #fff;
  }
  #main .topPage .shop_search .left .inner .btn_more a .arrow span:nth-of-type(1) {
    background-image: url("../img/top_search_icon_more.svg");
    background-color: #fff;
  }
  #main .topPage .shop_search .left .inner .btn_more a .arrow span:nth-of-type(2) {
    background-image: url("../img/top_search_icon_more_w.svg");
    background-color: #f2157f;
  }
  #main .topPage .shop_search .right {
    right: 0;
    width: 50%;
    background: url(../img/top_search_bg.jpg) no-repeat right center;
    -webkit-background-size: auto 100%;
    background-size: auto 100%;
    z-index: 1;
  }
  #main .topPage .shop_search .dec_arrow {
    position: absolute;
    top: 32.2580645161%;
    right: 6.2847222222%;
    width: 13.2638888889%;
    padding: 20.2083333333% 0 0;
    z-index: 2;
  }
  #main .topPage .shop_search .dec_arrow .css_arrow > div, #main .topPage .shop_search .dec_arrow .css_arrow:before, #main .topPage .shop_search .dec_arrow .css_arrow:after {
    background-image: url("../img/top_search_arrow_parts.png");
  }
  #main .topPage .info {
    padding:0;
  }
  #main .topPage .info .info_inner {
    width: 87.5%;
    margin: 0 auto;
  }
  #main .topPage .info .info_inner h2 {
    font-size: 1.4666666667rem;
    letter-spacing: 0.12em;
    font-weight: 900;
    line-height: 1em;
    padding: 0 0 2.7777777778% 0;
  }
  #main .topPage .info .info_inner .nav {
    padding: 0 0 2.9761904762% 0;
  }
  #main .topPage .info .info_inner .nav ul {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  #main .topPage .info .info_inner .nav ul li {
    display: table-cell;
  }
  #main .topPage .info .info_inner .nav ul li a {
    position: relative;
    display: table;
    width: 100%;
    height: 2.9rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 0.8666666667rem;
    line-height: 1.6153846154em;
    letter-spacing: 0.125em;
    border-top: 2px solid #f2157f;
    border-bottom: 2px solid #f2157f;
    border-left: 1px solid #f2157f;
    border-right: 1px solid #f2157f;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #main .topPage .info .info_inner .nav ul li a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #f2157f;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .info .info_inner .nav ul li a:hover:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #main .topPage .info .info_inner .nav ul li a span {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
  }
  #main .topPage .info .info_inner .nav ul li:first-child a {
    border-left-width: 2px;
  }
  #main .topPage .info .info_inner .nav ul li:last-child a {
    border-right-width: 2px;
  }
  #main .topPage .info .info_inner .nav ul li.active a,
  #main .topPage .info .info_inner .nav ul li a:hover {
    color: #ffffff;
  }
  #main .topPage .info .info_inner .nav ul li.active a {
    background-color: #f2157f;
  }
  #main .topPage .info .info_inner .tabs {
    position: relative;
    padding: 17.4603174603% 0 0 0;
    -webkit-transition: padding-top 0.3s;
    -moz-transition: padding-top 0.3s;
    -ms-transition: padding-top 0.3s;
    -o-transition: padding-top 0.3s;
    transition: padding-top 0.3s;
  }
  #main .topPage .info .info_inner .tabs .tab {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: none;
    letter-spacing: -0.4em;
  }
  #main .topPage .info .info_inner .tabs .tab li {
    display: inline-block;
    width: 26.7857142857%;
    height: 14.6666666667rem;
    vertical-align: top;
    background: url(../img/top_info_line_dot.png) repeat-y right top;
    -webkit-background-size: 0.1333333333rem auto;
    background-size: 0.1333333333rem auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .info .info_inner .tabs .tab li:first-child, #main .topPage .info .info_inner .tabs .tab li:last-child {
    width: 23.2142857143%;
  }
  #main .topPage .info .info_inner .tabs .tab li:last-child {
    background: none;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap {
    display: block;
    width: 100%;
    height: 100%;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap .inner {
    padding: 1.8333333333rem 2.6666666667rem 0rem 2.6666666667rem;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap .inner:before {
    content: 'MEDIA';
    font-size: 0.8666666667rem;
    letter-spacing: 0.085em;
    line-height: 1em;
    color: #ffffff;
    background-color: #f2157f;
    padding: 0.1333333333rem 0.3333333333rem;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap .inner p {
    font-size: 1.1333333333rem;
    line-height: 1.5882352941em;
    letter-spacing: 0.165em;
    padding: 0.8333333333rem 0rem 3.3333333333rem;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap .inner p a {
    display: inline;
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap .inner .date {
    display: block;
    font-size: 0.8666666667rem;
    letter-spacing: 0.085em;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap .inner p a:hover {
    border-bottom-color: #f2157f;
  }
  #main .topPage .info .info_inner .tabs .tab li:first-child .wrap .inner {
    padding-left: 0;
  }
  #main .topPage .info .info_inner .tabs .tab li:last-child .wrap .inner {
    padding-right: 0;
  }
  #main .topPage .info .info_inner .tabs .tab li.news .wrap .inner:before {
    content: 'NEWS';
  }
  #main .topPage .info .info_inner .tabs .tab li.important .wrap .inner:before {
    content: '重要なお知らせ';
  }
  #main .topPage .info .info_inner .tabs .tab li.shop .wrap .inner:before {
    content: 'NEW SHOP';
  }
  #main .topPage .info .info_inner .tabs .tab li.media .wrap .inner:before {
    content: 'MEDIA';
  }
  #main .topPage .info .info_inner .tabs .tab li.company .wrap .inner:before {
    content: 'COMPANY';
  }
  #main .topPage .info .info_inner .tabs .tab li.media .wrap .inner:before {
    content: 'MEDIA';
  }
  #main .topPage .info .info_inner .tabs .tab li.csr .wrap .inner:before {
    content: 'CSR';
  }
  #main .topPage .info .info_inner .tabs .tab li.ir .wrap .inner:before {
    content: 'IR';
  }
  #main .topPage .info .info_inner .tabs .tab.active {
    display: block;
  }
  #main .topPage .info .info_inner .more {
    padding: 2.6041666667% 0 2.0833333333%;
    text-align: right;
  }
  #main .topPage .info .info_inner .more ul {
    letter-spacing: -0.4em;
  }
  #main .topPage .info .info_inner .more ul li {
    position: relative;
    display: inline-block;
    width: 6.2rem;
    height: 6.2rem;
    margin: 0 0 0 1px;
  }
  #main .topPage .info .info_inner .more ul li a {
    position: relative;
    display: table;
    width: 100%;
    height: 100%;
    background-color: #f2157f;
    font-size: 0.8666666667rem;
    line-height: 1.7307692308em;
    letter-spacing: 0.125em;
    color: #ffffff;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #main .topPage .info .info_inner .more ul li a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .info .info_inner .more ul li a:hover:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #main .topPage .info .info_inner .more ul li a:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: 2px solid #f2157f;
  }
  #main .topPage .info .info_inner .more ul li a span {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
  }
  #main .topPage .info .info_inner .more ul li a:hover {
    color: #f2157f;
  }
  #main .topPage .recruit {
    padding: 0 0 9.0972222222%;
  }
  #main .topPage .recruit ul {
    letter-spacing: -0.4em;
    text-align: center;
    width: 87.5%;
    margin: 0 auto;
  }
  #main .topPage .recruit ul li {
    display: inline-block;
    width: 50%;
    overflow: hidden;
  }
  #main .topPage .recruit ul li:last-child {
    margin-left: -1px;
  }
  #main .topPage .recruit ul li a {
    position: relative;
    display: table;
    width: 100%;
    height: 100%;
    overflow: hidden;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #main .topPage .recruit ul li a:hover {
    color: #ffffff;
  }
  #main .topPage .recruit ul li a .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
  #main .topPage .recruit ul li a .img img {
    -webkit-transition: transform 0.8s;
    -moz-transition: transform 0.8s;
    -ms-transition: transform 0.8s;
    -o-transition: transform 0.8s;
    transition: transform 0.8s;
    will-change: transform;
  }
  #main .topPage .recruit ul li a:hover .img img {
    -webkit-transform: scale(1.05);
    -moz-transform: scale(1.05);
    -ms-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
  }
  #main .topPage .recruit ul li a .txt {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    padding: 25% 0;
  }
  #main .topPage .recruit ul li a .txt > span {
    position: relative;
    display: inline-block;
    background-color: #ffffff;
    font-size: 1.7333333333rem;
    letter-spacing: 0.08em;
    line-height: 1em;
    font-weight: 900;
    padding: 0.2333333333rem 0.1666666667rem 0.2333333333rem 0.1666666667rem;
  }
  #main .topPage .recruit ul li a .txt > span:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #f2157f;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .recruit ul li a .txt > span span {
    position: relative;
  }
  #main .topPage .recruit ul li a:hover .txt > span:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #main .topPage .recruit ul li a .icon {
    position: absolute;
    bottom: -1px;
    right: -1px;
    width: 3.7666666667rem;
    height: 3.7666666667rem;
    padding: 0;
  }
  #main .topPage .recruit ul li a .icon:before {
    border: none;
  }
  #main .topPage .recruit ul li a .icon span:nth-of-type(1) {
    background-image: url(../img/top_recruit_btn.svg);
    background-color: #f2157f;
  }
  #main .topPage .recruit ul li a .icon span:nth-of-type(2) {
    background-image: url(../img/top_recruit_btn_p.svg);
    background-color: #ffffff;
  }
  #main .topPage .recruit ul li a:hover .icon:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #main .topPage .recruit ul li a:hover .icon div:after {
    opacity: 1;
  }
  #main .topPage .corporate {
    padding: 0 0 3.8194444444%;
  }
  #main .topPage .corporate .ttl {
    position: relative;
    background-color: #f2157f;
    padding: 36.2847222222% 0 0;
  }
  #main .topPage .corporate .ttl h2 {
    position: absolute;
    top: 35.1196172249%;
    left: 9.2361111111%;
    color: #ffffff;
    font-size: 3.4666666667rem;
    line-height: 1.3461538462em;
    font-weight: 900;
    letter-spacing: 0.06em;
  }
  #main .topPage .corporate .ttl h2 span {
    font-weight: 700;
    font-size: 1.15em;
  }
  #main .topPage .corporate .ttl .img {
    position: absolute;
    top: 17.7033492823%;
    right: 6.25%;
    width: 13.2638888889%;
  }
  #main .topPage .corporate .ttl .img .css_arrow > div, #main .topPage .corporate .ttl .img .css_arrow:before, #main .topPage .corporate .ttl .img .css_arrow:after {
    background-image: url("../img/top_corporate_ttl_dec_parts.png");
  }
  #main .topPage .corporate .block {
    position: relative;
    width: 87.5%;
    margin: -4.8611111111% 0 0;
    margin-left: auto;
    margin-right: auto;
    background-color: #f3f3f3;
    letter-spacing: -0.4em;
    text-align: center;
    padding: 2.4305555556% 0 2.7777777778%;
  }
  #main .topPage .corporate .block .box {
    display: inline-block;
    vertical-align: top;
    width: 50%;
    padding: 4.3650793651% 3.5714285714% 3.1746031746%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .corporate .block .box:first-child {
    background: url(../img/top_company_line_dot.png) repeat-y right top;
    -webkit-background-size: 0.1333333333rem auto;
    background-size: 0.1333333333rem auto;
  }
  #main .topPage .corporate .block .box h3 {
    font-size: 1.4666666667rem;
    letter-spacing: 0.08em;
    font-weight: 900;
    line-height: 1em;
    text-align: left;
  }
  #main .topPage .corporate .block .box.detail .left, #main .topPage .corporate .block .box.detail .right {
    display: inline-block;
    vertical-align: top;
  }
  #main .topPage .corporate .block .box.detail .left {
    width: 52.7777777778%;
    text-align: left;
  }
  #main .topPage .corporate .block .box.detail .left p {
    color: #808080;
    font-size: 1rem;
    letter-spacing: 0.125em;
    line-height: 1.6666666667em;
    padding: 9.649122807% 0 6.1403508772% 0;
  }
  #main .topPage .corporate .block .box.detail .left .css_more {
    position: relative;
    font-size: 0.8666666667rem;
    letter-spacing: 0.085em;
    padding: 0rem 0rem 0rem 2.6666666667rem;
  }
  #main .topPage .corporate .block .box.detail .left .css_more .txt {
    display: inline;
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s;
  }
  #main .topPage .corporate .block .box.detail .left .css_more .txt:hover {
    border-bottom-color: #f2157f;
  }
  #main .topPage .corporate .block .box.detail .left .css_more .arrow {
    position: absolute;
    top: 50%;
    left: 0;
    bottom: auto;
    right: auto;
    display: block;
    width: 1.7666666667rem;
    height: 1.7666666667rem;
    margin: -0.8833333333rem 0;
    padding: 0;
  }
  #main .topPage .corporate .block .box.detail .left .css_more .arrow:before {
    border: 1px solid #f2157f;
  }
  #main .topPage .corporate .block .box.detail .left .css_more .arrow span:nth-of-type(1) {
    background-image: url("../img/top_btn_more.svg");
    background-color: #f2157f;
  }
  #main .topPage .corporate .block .box.detail .left .css_more .arrow span:nth-of-type(2) {
    background-image: url("../img/top_btn_more_p.svg");
    background-color: #fff;
  }
  #main .topPage .corporate .block .box.detail .right {
    width: 47.2222222222%;
    text-align: right;
  }
  #main .topPage .corporate .block .box.detail .right img {
    width: 77.0588235294%;
  }
  #main .topPage .corporate .block .box.group ul {
    padding: 6.7592592593% 0 0;
  }
  #main .topPage .corporate .block .box.group ul li {
    display: inline-block;
    width: 50%;
    vertical-align: top;
    padding: 0 0.1851851852%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .corporate .block .box.group ul li a {
    display: block;
    color: #808080;
  }
  #main .topPage .corporate .block .box.group ul li a .img {
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main .topPage .corporate .block .box.group ul li a p {
    text-align: left;
    padding: 4.0740740741% 0 0 0;
    font-size: 0.8rem;
    line-height: 1.5833333333em;
    letter-spacing: 0.125em;
  }
  #main .topPage .corporate .block .box.group ul li a p span {
    display: inline;
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s;
  }
  #main .topPage .corporate .block .box.group ul li a:hover .img {
    opacity: 0.4;
  }
  #main .topPage .corporate .block .box.group ul li a:hover p span {
    border-bottom-color: #808080;
  }
  #main .topPage .other {
    background-color: #f3f3f3;
  }
  #main .topPage .other .other_inner {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  #main .topPage .other .box {
    display: table-cell;
    vertical-align: top;
  }
  #main .topPage .other .box:first-child {
    border-right: 1px solid #d1d1d1;
  }
  #main .topPage .other .box h3 {
    font-size: 1.4666666667rem;
    letter-spacing: 0.12em;
    font-weight: 900;
    line-height: 1em;
  }
  #main .topPage .other .box h3 span {
    font-weight: 700;
    font-size: 1.15em;
  }
  #main .topPage .other .box.contact {
    padding: 9.0277777778% 6.0763888889% 8.5069444444% 6.25%;
  }
  #main .topPage .other .box.contact h3 {
    padding: 0 0 4.8611111111%;
  }
  #main .topPage .other .box.contact ul {
    letter-spacing: -0.4em;
  }
  #main .topPage .other .box.contact ul li {
    display: inline-block;
    width: 50%;
    padding: 0 0.1388888889%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    overflow: hidden;
  }
  #main .topPage .other .box.contact ul li a {
    position: relative;
    display: table;
    width: 100%;
    height: 7.2666666667rem;
    background-color: #ffffff;
    overflow: hidden;
    font-size: 1rem;
    line-height: 1em;
    letter-spacing: 0.085em;
    font-weight: 700;
    -webkit-transition: color 0.3s;
    -moz-transition: color 0.3s;
    -ms-transition: color 0.3s;
    -o-transition: color 0.3s;
    transition: color 0.3s;
  }
  #main .topPage .other .box.contact ul li a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #f2157f;
    -webkit-transform-origin: right;
    -moz-transform-origin: right;
    -ms-transform-origin: right;
    -o-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    -moz-transform: scaleX(0);
    -ms-transform: scaleX(0);
    -o-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .other .box.contact ul li a:hover:before {
    -webkit-transform-origin: left;
    -moz-transform-origin: left;
    -ms-transform-origin: left;
    -o-transform-origin: left;
    transform-origin: left;
    -webkit-transform: scaleX(1);
    -moz-transform: scaleX(1);
    -ms-transform: scaleX(1);
    -o-transform: scaleX(1);
    transform: scaleX(1);
  }
  #main .topPage .other .box.contact ul li a:hover {
    color: #ffffff;
  }
  #main .topPage .other .box.contact ul li a .txt {
    position: relative;
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size:
  }
  #main .topPage .other .box.contact ul li a .arrow {
    position: absolute;
    top: 50%;
    left: 0;
    bottom: auto;
    right: auto;
    display: block;
    width: 1.7666666667rem;
    height: 1.7666666667rem;
    margin: -0.8833333333rem;
    padding: 0;
  }
  #main .topPage .other .box.contact ul li a .arrow:before {
    border: 0 solid #f2157f;
  }
  #main .topPage .other .box.contact ul li a .arrow span:nth-of-type(1) {
    background-image: url("../img/top_btn_more.svg");
    background-color: #f2157f;
  }
  #main .topPage .other .box.contact ul li a .arrow span:nth-of-type(2) {
    background-image: url("../img/top_btn_more_p.svg");
    background-color: #fff;
  }
  #main .topPage .other .box.contact ul li a .arrow {
    top: auto;
    bottom: -1px;
    left: auto;
    right: -1px;
    margin: 0;
  }
  #main .topPage .other .box.weborder {
    padding: 9.0277777778% 6.25% 8.5069444444% 3.125%;
    letter-spacing: -0.4em;
  }
  #main .topPage .other .box.weborder .left, #main .topPage .other .box.weborder .right {
    display: inline-block;
    vertical-align: top;
  }
  #main .topPage .other .box.weborder .left {
    width: 54.7008547009%;
  }
  #main .topPage .other .box.weborder .left p {
    font-size: 1rem;
    line-height: 1.6666666667em;
    letter-spacing: 0.125em;
    padding: 9.375% 0 4.6875%;
  }
  #main .topPage .other .box.weborder .left .css_more {
    position: relative;
    font-size: 0.8666666667rem;
    letter-spacing: 0.085em;
    padding: 0rem 0rem 0rem 2.7666666667rem;
  }
  #main .topPage .other .box.weborder .left .css_more .txt {
    display: inline;
    border-bottom: 1px solid transparent;
    -webkit-transition: border-bottom-color 0.3s;
    -moz-transition: border-bottom-color 0.3s;
    -ms-transition: border-bottom-color 0.3s;
    -o-transition: border-bottom-color 0.3s;
    transition: border-bottom-color 0.3s;
  }
  #main .topPage .other .box.weborder .left .css_more .txt:hover {
    border-bottom-color: #f2157f;
  }
  #main .topPage .other .box.weborder .left .css_more .arrow {
    position: absolute;
    top: 50%;
    left: 0;
    bottom: auto;
    right: auto;
    display: block;
    width: 1.7666666667rem;
    height: 1.7666666667rem;
    margin: -0.8833333333rem 0;
    padding: 0;
  }
  #main .topPage .other .box.weborder .left .css_more .arrow:before {
    border: 1px solid #f2157f;
  }
  #main .topPage .other .box.weborder .left .css_more .arrow span:nth-of-type(1) {
    background-image: url("../img/top_btn_more.svg");
    background-color: #f2157f;
  }
  #main .topPage .other .box.weborder .left .css_more .arrow span:nth-of-type(2) {
    background-image: url("../img/top_btn_more_p.svg");
    background-color: #fff;
  }
  #main .topPage .other .box.weborder .right {
    width: 45.2991452991%;
  }
  #main .topPage .other .box.weborder .right ul {
    letter-spacing: -0.4em;
    text-align: right;
  }
  #main .topPage .other .box.weborder .right ul li {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 7.1666666667rem;
    height: 7.1666666667rem;
    margin: 0 0 0 1px;
    text-align: center;
    background-color: #f2157f;
  }
  #main .topPage .other .box.weborder .right ul li span {
    display: block;
  }
  #main .topPage .other .box.weborder .right ul li .txt {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0 0 13.9534883721%;
    color: #ffffff;
    font-size: 0.7706666667rem;
    letter-spacing: 0.085em;
    font-weight: 900;
  }
  #main .topPage .other .box.weborder .right ul li .img {
    padding: 23.7209302326% 0 0;
    margin: 0 auto;
  }
  #main .topPage .other .box.weborder .right ul li.i1 .img {
    width: 42.6604651163%;
  }
  #main .topPage .other .box.weborder .right ul li.i2 .img {
    width: 57.1395348837%;
  }
}
@media (min-width: 751px) and (min-width: 1440px) {
  html {
    font-size: 15px;
  }

  #header .header_inner {
    position: relative;
    width: 1440px;
    height: 100%;
    margin: 0 auto;
  }

  #header .shop_search {
    width: 264px;
  }

  #header #gnav > ul > li .low_nav .low_nav_inner {
    padding: 133px 0 0;
  }

  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul {
    width: 1440px;
  }

  #main {
    padding: 133px 0 140px;
    overflow: hidden;
  }

  #main .topPage {
    position: relative;
  }
  #main .topPage:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    padding: 691px 0 0;
    background: url(../img/top_bg_loop.png) repeat right bottom;
  }

  #main .topPage .firstview_wrap .attention_message {
    width: 264px;
  }

  #main .topPage .firstview_wrap .firstview_wrap_inner {
    position: relative;
    width: 1440px;
    margin: 0 auto;
  }

  #main .topPage .firstview_wrap .mainvisual:before {
    width: 100%;
    left: 17.7rem;
    background: #ffffff;
  }

  #main .topPage .feature:before {
    padding: 522.5px 0 0;
    background: url(../img/top_bg_loop.png) repeat center bottom;
  }

  #main .topPage .feature .feature_inner {
    position: relative;
    width: 1440px;
    margin: 0 auto;
    padding: 0;
  }
  #main .topPage .feature .feature_inner:before {
    content: '';
    display: block;
    padding: 81.1805555556% 100% 0 0;
  }

  #main .topPage .banner {
    padding: 115px 0 0;
  }

  #main .topPage .banner .banner_inner {
    position: relative;
    width: 1440px;
    margin: 0 auto;
  }

  #main .topPage .shop_search {
    /* padding: 821.5px 0 0; */
  }

  #main .topPage .shop_search .left {
    display: block;
  }

  #main .topPage .shop_search .left .left_table {
    display: table;
    width: 720px;
    height: 100%;
    margin: 0 0 0 auto;
  }

  #main .topPage .info {
    padding: 65px 0 0;
  }

  #main .topPage .info .info_inner {
    width: 1260px;
    margin: 0 auto;
  }

  #main .topPage .recruit {
    padding: 0 0 131px;
  }

  #main .topPage .corporate {
    padding: 0 0 55px;
  }

  #main .topPage .corporate .ttl {
    padding: 0;
  }

  #main .topPage .corporate .ttl .inner {
    position: relative;
    width: 1440px;
    margin: 0 auto;
    padding: 522.5px 0 0;
  }

  #main .topPage .corporate .block {
    width: 1260px;
    margin-top: -70px;
  }

  #main .topPage .other .other_inner {
    width: 1440px;
    margin: 0 auto;
  }

  #footer .inner {
    width: 1260px;
  }
}
@media (max-width: 920px) {
  #header .onlyPc,
  #header img.onlyPc {
    display: none;
  }
  #header .onlySp {
    display: block;
  }
  #header img.onlySp {
    display: inline-block;
  }

  html.isSpNavOpenDelay #header .sp_header .logo img:nth-of-type(2) {
    opacity: 1;
  }
  html.isSpNavOpenDelay #header .sp_header .sp_menu_toggle img:nth-of-type(1) {
    -webkit-transform: rotate(-180deg);
    -moz-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    -o-transform: rotate(-180deg);
    transform: rotate(-180deg);
  }
  html.isSpNavOpenDelay #header .sp_header .sp_menu_toggle img:nth-of-type(2) {
    opacity: 1;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  html.isSpNavOpen {
    background-color: #f2157f;
  }
  html.isSpNavOpen .sp_nav_toggle_target {
    height: 0;
    overflow: hidden;
  }
  html.isSpNavOpen #header {
    position: relative;
    height: auto;
  }
  html.isSpNavOpen #header .sp_header {
    position: fixed;
    z-index: 120;
    background-color: #f2157f;
  }
  html.isSpNavOpen #header .sp_header_menu {
    position: relative;
    height: auto !important;
    overflow: visible;
  }
  html.isSpNavOpen #header .shop_search {
    display: none;
  }

  #header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 6em;
    z-index: 100;
    background-color: #ffffff;
    font-size: 11.5px;
    font-size: 3.0666666667vw;
    -webkit-transition: top 0.5s;
    -moz-transition: top 0.5s;
    -ms-transition: top 0.5s;
    -o-transition: top 0.5s;
    transition: top 0.5s;
  }
  #header.isSlideup {
    top: -6em;
  }
  #header .sp_header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 6em;
    z-index: 110;
  }
  #header .sp_header .logo {
    position: absolute;
    top: 24.6376811594%;
    left: 34.9333333333%;
    width: 29.7333333333%;
  }
  #header .sp_header .logo img:nth-of-type(2) {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    will-change: opacity;
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #header .sp_header .sp_menu_toggle {
    position: absolute;
    top: 39.1304347826%;
    right: 5.6%;
    width: 5.6%;
  }
  #header .sp_header .sp_menu_toggle img:nth-of-type(1) {
    -webkit-transition: transform 0.3s;
    -moz-transition: transform 0.3s;
    -ms-transition: transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
  }
  #header .sp_header .sp_menu_toggle img:nth-of-type(2) {
    position: absolute;
    top: -6.1413793103%;
    left: 11.2357142857%;
    width: 77.5285714286%;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    transform: rotate(180deg);
    opacity: 0;
    will-change: opacity;
    -webkit-transition: transform 0.3s, opacity 0.3s;
    -moz-transition: transform 0.3s, opacity 0.3s;
    -ms-transition: transform 0.3s, opacity 0.3s;
    -o-transition: transform 0.3s, opacity 0.3s;
    transition: transform 0.3s, opacity 0.3s;
  }
  #header .sp_header_menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    overflow: hidden;
    z-index: 105;
    background-color: #f2157f;
  }
  #header #gnav {
    position: relative;
    padding: 18.4% 0 0;
  }
  #header #gnav > ul {
    width: 88.8%;
    margin: 0 auto;
    border-bottom: 1px solid #e94aa2;
  }
  #header #gnav > ul > li {
    border-top: 1px solid #e94aa2;
  }
  #header #gnav > ul > li > a {
    position: relative;
    display: block;
    padding: 4.3543543544% 0;
    font-size: 1.4782608696em;
    letter-spacing: 0.105em;
    line-height: 1em;
    color: #ffffff;
  }
  #header #gnav > ul > li > a:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 0.4347826087em;
    height: 100%;
    background: url(../img/sp/gnav_icon_arrow.svg) no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #header #gnav > ul > li.js-menu_toggle > a:after {
    display: none;
  }
  #header #gnav > ul > li .low_nav {
    border-top: 1px solid #e94aa2;
    padding: 3.7537537538% 0;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a,
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li .textwrap {
    position: relative;
    display: block;
    font-size: 1.2173913043em;
    line-height: 1em;
    letter-spacing: 0.105em;
    color: #ffffff;
    padding: 3.7537537538% 0;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a .img {
    display: none;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li .textwrap{
    opacity: 0.6;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a .txt p,
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li .textwrap .txt p {
    position: relative;
    padding: 0 0 0 6.7567567568%;
  }
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li a .txt p:before,
  #header #gnav > ul > li .low_nav .low_nav_inner .wrap ul li .textwrap .txt p:before {
    content: '';
    position: absolute;
    top: 0;
    left: 2.1021021021%;
    display: block;
    width: 0.2703913043em;
    height: 100%;
    background: url(../img/sp/gnav_icon_sub_arrow.svg) no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #header .other_links {
    width: 88.8%;
    padding: 6% 0 6.6666666667%;
    margin: 0 auto;
  }
  #header .other_links .privacy a,
  #header .other_links .language a {
    color: #ffffff;
    font-size: 1.0434782609em;
    line-height: 1em;
    letter-spacing: 0.085em;
  }
  #header .other_links .privacy {
    padding: 0 0 5.2552552553%;
  }
  #header .other_links .language {
    padding: 0 0 4.5045045045%;
  }
  #header .other_links .sns {
    display: table;
    width: 100%;
    table-layout: fixed;
  }
  #header .other_links .sns dt, #header .other_links .sns dd {
    display: table-cell;
    vertical-align: middle;
  }
  #header .other_links .sns dt {
    font-size: 1.0552173913em;
    line-height: 1em;
    letter-spacing: 0.12em;
    font-weight: 700;
    color: #ffffff;
  }
  #header .other_links .sns dd ul {
    letter-spacing: -0.4em;
    text-align: right;
  }
  #header .other_links .sns dd ul li {
    display: inline-block;
  }
  #header .other_links .sns dd ul li:nth-of-type(1) {
    width: 14.1141141141%;
    margin: 0;
  }
  #header .other_links .sns dd ul li:nth-of-type(2) {
    width: 6.3063063063%;
    margin: 0 0 0 15.9159159159%;
  }
  #header .other_links .sns dd ul li:nth-of-type(3) {
    width: 15.015015015%;
    margin: 0 0 0 15.9159159159%;
  }
  #header .shop_search {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    border-top: 2px solid transparent;
    -webkit-transition: box-shadow 0.3s, border 0.3s;
    -moz-transition: box-shadow 0.3s, border 0.3s;
    -ms-transition: box-shadow 0.3s, border 0.3s;
    -o-transition: box-shadow 0.3s, border 0.3s;
    transition: box-shadow 0.3s, border 0.3s;
  }
  #header .shop_search.isActive {
    -webkit-box-shadow: 0em 0em 0.652173913em 0em rgba(0, 0, 0, 0.15);
    box-shadow: 0em 0em 0.652173913em 0em rgba(0, 0, 0, 0.15);
    border-top-color: #ffffff;
  }
  #header .shop_search .inner {
    position: relative;
    z-index: 2;
    background-color: #f2157f;
    height: 0;
  }
  #header .shop_search .inner h3 {
    display: none;
  }
  #header .shop_search .inner ul {
    padding: 5.3333333333% 0;
  }
  #header .shop_search .inner ul li {
    width: 88.8%;
    margin: 0 auto;
  }
  #header .shop_search .inner ul li:first-child {
    margin-bottom: 2.6666666667%;
  }
  #header .shop_search .inner ul a {
    position: relative;
    display: table;
    width: 100%;
    height: 3.4782608696em;
    color: #f2157f;
    padding: 0 0 0 2.6086956522em;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #ffffff;
  }
  #header .shop_search .inner ul a .txt {
    display: table-cell;
    vertical-align: middle;
    font-size: 1rem;
    line-height: 1em;
    font-weight: 500;
    letter-spacing: 0.145em;
  }
  #header .shop_search .inner ul a .pin, #header .shop_search .inner ul a .arrow {
    position: absolute;
    top: 0;
    display: block;
    height: 100%;
  }
  #header .shop_search .inner ul a .pin {
    left: 0.9565217391em;
    width: 0.9565217391em;
    background: url("../img/sp/gnav_search_icon_pin.svg") no-repeat center transparent;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #header .shop_search .inner ul a .arrow {
    right: 0;
    width: 3.4782608696em;
    background-color: #f3f3f3;
  }
  #header .shop_search .inner ul a .arrow:after {
    content: '';
    position: absolute;
    top: 0;
    right: 1.3913043478em;
    display: block;
    width: 0.5652173913em;
    height: 100%;
    background: url("../img/sp/gnav_search_icon_arrow.svg") no-repeat center transparent;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #header .shop_search .inner ul .wrap {
    position: relative;
    display: block;
    height: 3.4782608696em;
    background-color: #ffffff;
  }
  #header .shop_search .inner ul .wrap input[type=text] {
    display: block;
    width: 100%;
    height: 100%;
    font-size: 1rem;
    line-height: 3.4782608696em;
    font-weight: 500;
    letter-spacing: 0.145em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background-color: transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 3.4782608696em 0 1.0869565217em;
  }
  #header .shop_search .inner ul .wrap input[type=text]::-webkit-input-placeholder {
    color: #cccccc;
  }
  #header .shop_search .inner ul .wrap input[type=text]:placeholder-shown {
    color: #cccccc;
  }
  #header .shop_search .inner ul .wrap button {
    position: absolute;
    top: 0;
    right: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background-color: #f3f3f3;
    width: 3.4782608696em;
    height: 100%;
  }
  #header .shop_search .inner ul .wrap button img {
    width: 1.0869565217em;
  }
  #header .shop_search .inner ul .wrap button img:nth-of-type(2) {
    display: none;
  }
  #header .shop_search .toggle_button {
    position: absolute;
    top: -6.0869565217em;
    right: -1px;
    display: table;
    width: 6.0869565217em;
    height: 6.0869565217em;
    border-top: 2px solid #ffffff;
    border-left: 2px solid #ffffff;
    -webkit-box-shadow: 0em 0em 0.652173913em 0em rgba(0, 0, 0, 0.15);
    box-shadow: 0em 0em 0.652173913em 0em rgba(0, 0, 0, 0.15);
    background-color: #f2157f;
    z-index: 1;
    color: #ffffff;
  }
  #header .shop_search .toggle_button span {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 1rem;
    line-height: 1em;
    font-weight: 700;
    letter-spacing: 0.065em;
  }
  #header .shop_search .toggle_button span:before {
    content: '';
    display: block;
    width: 1.3043478261em;
    height: 1.1304347826em;
    background: url(../img/gnav_search_icon_home.svg) no-repeat center top;
    -webkit-background-size: contain;
    background-size: contain;
    vertical-align: bottom;
    margin: 0 auto 10%;
  }

  #main {
    padding: 18.4% 0 11.3333333333%;
  }
}
@media (max-width: 920px) and (min-width: 751px) and (max-width: 920px) {
  #header {
    height: 3.9130434783em;
  }

  #header .sp_header .logo {
    top: 26.6666666667%;
    left: 42.0652173913%;
    width: 15.8695652174%;
  }

  #header .sp_header .sp_menu_toggle {
    top: 38.8888888889%;
    right: 2.9347826087%;
    width: 3.0434782609%;
  }

  #header .sp_header {
    height: 3.9130434783em;
  }

  #header .shop_search {
    width: 5.2173913043em;
    height: 5.2173913043em;
  }

  #header .shop_search h3 {
    font-size: 0.5em;
  }

  #header #gnav {
    padding-top: 12%;
  }

  #header #gnav > ul,
  #header .other_links {
    width: 440px;
    font-size: 16px;
  }

  #main {
    padding-top: 12%;
  }
}
@media (max-width: 750px) {
  .onlyPc,
  img.onlyPc {
    display: none;
  }

  .onlySp {
    display: block;
  }

  img.onlySp {
    display: inline-block;
  }

  .modal .onlyPc {
    display: none;
  }

  #modal_movie .close {
    top: -2.9em;
    /*54+10/22*/
    right: 0.45em;
    /*10/22*/
    width: 2.37em;
    /*52.24/22*/
  }

  html {
    font-size: 11.5px;
    font-size: 3.0666666667vw;
    font-weight: 500;
    line-height: 1em;
  }

  html[lang="ja"] #footer .language .jp {
    opacity: 0.7;
  }

  #footer {
    border-top: 1px solid #f4f4f4;
  }
  #footer .inner {
    position: relative;
    width: 88.8%;
    margin: 0 auto;
  }
  #footer .inner .pagetop {
    position: absolute;
    top: -1rem;
    right: 0;
    width: 2.6086956522rem;
    height: 2.6086956522rem;
  }
  #footer .inner .pagetop a {
    display: block;
    height: 100%;
    background-color: #f2157f;
  }
  #footer .inner .pagetop a img:nth-of-type(2) {
    display: none;
  }
  #footer .inner .logo {
    padding: 10.5105105105% 0 5.2552552553%;
  }
  #footer .inner .logo a {
    display: block;
    width: 30.9309309309%;
  }
  #footer .inner .links .left a {
    font-size: 0.8695652174rem;
    line-height: 2.1em;
    letter-spacing: 0.125em;
  }
  #footer .inner .links .left ul li {
    display: inline-block;
    letter-spacing: 0;
    font-size: 0.8695652174rem;
    line-height: 2.1em;
  }
  #footer .inner .links .left ul li:after {
    content: '/';
    display: inline;
    padding: 0 0.4em;
  }
  #footer .inner .links .left ul li:last-child:after {
    content: '';
  }
  #footer .inner .links .left ul li .disabled{
    color: #f2157f;
    opacity: 0.3;
  }
  #footer .inner .links .left dl {
    padding: 0.5em 0 0;
  }
  #footer .inner .links .left dl dt {
    font-size: 0.8695652174rem;
    line-height: 2.1em;
    font-weight: 900;
    letter-spacing: 0.125em;
  }
  #footer .inner .links .right dl {
    display: table;
    width: 100%;
    table-layout: fixed;
    margin: 6.006006006% 0 7.5075075075%;
  }
  #footer .inner .links .right dl dt, #footer .inner .links .right dl dd {
    display: table-cell;
    vertical-align: middle;
  }
  #footer .inner .links .right dl dt {
    font-size: 1.0552173913rem;
    line-height: 1em;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
  #footer .inner .links .right dl dd ul {
    letter-spacing: -0.4em;
    text-align: right;
  }
  #footer .inner .links .right dl dd ul li {
    display: inline-block;
  }
  #footer .inner .links .right dl dd ul li:nth-of-type(1) {
    width: 14.1141141141%;
    margin: 0;
  }
  #footer .inner .links .right dl dd ul li:nth-of-type(2) {
    width: 6.3063063063%;
    margin: 0 0 0 15.9159159159%;
  }
  #footer .inner .links .right dl dd ul li:nth-of-type(3) {
    width: 15.015015015%;
    margin: 0 0 0 15.9159159159%;
  }
  #footer .inner .bottom {
    position: relative;
    background: url(../img/sp/footer_line_dot.png) repeat-x center top;
    -webkit-background-size: auto 0.1304347826rem;
    background-size: auto 0.1304347826rem;
    padding: 6.006006006% 0 6.7567567568%;
  }
  #footer .inner .bottom small {
    display: block;
    text-align: left;
    font-size: 0.8260869565rem;
    line-height: 1em;
    letter-spacing: 0.065em;
    padding: 3.3033033033% 0 0;
  }
  #footer .inner .bottom .sp_wrap {
    font-size: 0.8695652174rem;
    line-height: 1em;
  }
  #footer .inner .bottom .sp_wrap .privacy,
  #footer .inner .bottom .sp_wrap .language {
    display: inline-block;
  }
  #footer .inner .bottom .sp_wrap .privacy {
    letter-spacing: 0.085em;
    display: inline-flex;
    flex-wrap: wrap;
  }
  #footer .inner .bottom .sp_wrap .privacy li{
    line-height: 2.1em;
  }
  #footer .inner .bottom .sp_wrap .privacy li:after{
    content: "　/　";
  }
  #footer .inner .bottom .sp_wrap .privacy li:last-child:after{
    display: none;
  }
  #footer .inner .bottom .sp_wrap .language {
    letter-spacing: 0.065em;
    margin: 0rem 1.7391304348rem 0rem 0rem;
  }

  #main .topPage .css_arrow {
    position: absolute;
    top: 0;
    left: 0;
    width: 5.3043478261em;
    height: 8.1739130435em;
  }
  #main .topPage .css_arrow > div, #main .topPage .css_arrow:before, #main .topPage .css_arrow:after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    padding: 70.4918032787% 0 0;
    background: url("../img/top_feature_bg_arrow_parts.png") no-repeat center transparent;
    -webkit-background-size: contain;
    background-size: contain;
    opacity: 0;
    -webkit-transform: translateY(20%);
    -moz-transform: translateY(20%);
    -ms-transform: translateY(20%);
    -o-transform: translateY(20%);
    transform: translateY(20%);
  }
  #main .topPage .css_arrow > div {
    -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    -moz-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    -ms-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  #main .topPage .css_arrow:before {
    top: 27.1276595745%;
    -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -moz-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -ms-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    -o-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.15s;
  }
  #main .topPage .css_arrow:after {
    bottom: 0;
    -webkit-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
    -moz-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
    -ms-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
    -o-transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
    transition: all 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.3s;
  }
  #main .topPage .css_arrow.isActive > div, #main .topPage .css_arrow.isActive:before, #main .topPage .css_arrow.isActive:after {
    opacity: 1;
    -webkit-transform: translateY(0%);
    -moz-transform: translateY(0%);
    -ms-transform: translateY(0%);
    -o-transform: translateY(0%);
    transform: translateY(0%);
  }
  #main .topPage .firstview_wrap {
    position: relative;
    background: url(../img/sp/top_mainvisual_bg.jpg) no-repeat center bottom;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
    padding: 0 0 6%;
  }
  #main .topPage .firstview_wrap .attention_message {
    padding: 4.2666666667% 5.6%;
    background-color: #f3f3f3;
  }
  #main .topPage .firstview_wrap .attention_message .wrap {
    font-size: 1rem;
    letter-spacing: 0.165em;
    line-height: 1.6086956522em;
    color: #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual {
    position: relative;
    padding: 141.7333333333% 0 0;
    background-color: #ffffff;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 100% 0 0;
    z-index: 2;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: none;
    opacity: 0;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .img {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .img:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 78.1333333333%;
    height: 6.9565217391rem;
    background-color: #ffffff;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box h1,
  #main .topPage .firstview_wrap .mainvisual .image_block .box h2 {
    position: absolute;
    bottom: 3.0434782609rem;
    left: 5.3333333333%;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box h1 {
    width: 18.2173913043rem;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box h2 {
    font-size: 2.0869565217rem;
    line-height: 1em;
    font-weight: 500;
    letter-spacing: 0em;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    color: #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top {
    position: absolute;
    bottom: 0.652173913rem;
    left: 5.3333333333%;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top a {
    position: relative;
    display: inline-block;
    font-size: 1rem;
    line-height: 1em;
    font-weight: 500;
    letter-spacing: 0.125em;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    padding: 0rem 0rem 0rem 2.3913043478rem;
  }
  #main .topPage .firstview_wrap .mainvisual .image_block .box .btn__top a:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 1.7391304348rem;
    height: 1.7391304348rem;
    margin: -0.8695652174rem 0rem 0rem;
    background: url(../img/top_btn_more.svg) no-repeat center #f2157f;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block {
    position: absolute;
    right: 0;
    bottom: 0rem;
    width: 100%;
    z-index: 2;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul {
    padding: 0 0 10.6666666667%;
    letter-spacing: -0.4em;
    text-align: center;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li {
    display: inline-block;
    width: 6.7826086957rem;
    margin: 0rem 1.1956521739rem;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a {
    display: block;
    border: 4px solid #f3f3f3;
    background-color: #ffffff;
    -webkit-transition: border 0.3s;
    -moz-transition: border 0.3s;
    -ms-transition: border 0.3s;
    -o-transition: border 0.3s;
    transition: border 0.3s;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img {
    position: relative;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img span {
    display: block;
    position: relative;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img span:before {
    content: '';
    display: block;
    padding: 100% 0 0 0;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img span > img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a .img:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color: rgba(228, 0, 127, 0.15);
    -webkit-transition: opacity 0.3s;
    -moz-transition: opacity 0.3s;
    -ms-transition: opacity 0.3s;
    -o-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li a p {
    display: none;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li.isActive a {
    border-color: #f2157f;
  }
  #main .topPage .firstview_wrap .mainvisual .thum_block ul li.isActive a .img:after {
    opacity: 0;
  }
  #main .topPage .firstview_wrap .pickup_news {
    padding: 5.7333333333% 0 0;
  }
  #main .topPage .firstview_wrap .pickup_news ul li {
    width: 88.8%;
    padding: 0 0 4%;
    margin: 0 auto;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a {
    padding: 3.7537537538% 4.5045045045% 2.7027027027%;
    display: block;
    color: #808080;
    background-color: #ffffff;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl {
    display: table;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl dt, #main .topPage .firstview_wrap .pickup_news ul li a dl dd {
    display: table-cell;
    vertical-align: top;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl dt {
    width: 9.3043478261rem;
    font-size: 0.8695652174rem;
    letter-spacing: 0.085em;
    line-height: 1em;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl dt:before {
    content: 'NEWS';
    display: inline-block;
    background-color: #f2157f;
    color: #ffffff;
    font-size: 0.8695652174rem;
    letter-spacing: 0.085em;
    line-height: 1em;
    padding: 0.2608695652rem 0.1304347826rem 0.2608695652rem 0.1739130435rem;
    margin: 0rem 0.7391304348rem 0rem 0rem;
  }
  #main .topPage .firstview_wrap .pickup_news ul li a dl dd {
    font-size: 1.0030434783rem;
    line-height: 1.4781100997em;
    letter-spacing: 0.165em;
  }
  #main .topPage .firstview_wrap .movie {
    position: relative;
    width: 88.8%;
    margin: 0 auto;
  }
  #main .topPage .firstview_wrap .movie:before {
    content: '';
    display: block;
    padding: 75.0943396226% 0 0;
  }
  #main .topPage .firstview_wrap .movie a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  #main .topPage .firstview_wrap .movie a .arrow {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 17.7358490566%;
    padding: 17.7358490566% 0 0;
    margin: -8.8679245283% 0 0 -8.8679245283%;
    background: url(../img/top_mv_movie_icon_play.svg) no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #main .topPage .feature {
    position: relative;
    padding: 144.9333333333% 0 10%;
  }
  #main .topPage .feature:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 54% 0 0;
    background: url(../img/sp/top_feature_bg.jpg) no-repeat left bottom;
    -webkit-background-size: cover;
    background-size: cover;
  }
  #main .topPage .feature .dec_arrow {
    position: absolute;
    top: 11.3155473781%;
    right: 10.4%;
    width: 16.2666666667%;
    padding: 25.0666666667% 0 0;
    z-index: 10;
  }
  #main .topPage .feature .dec_arrow .css_arrow > div, #main .topPage .feature .dec_arrow .css_arrow:before, #main .topPage .feature .dec_arrow .css_arrow:after {
    background-image: url("../img/top_feature_bg_arrow_parts.png");
  }
  #main .topPage .feature h2 {
    position: absolute;
    top: 6.0717571297%;
    left: 5.8666666667%;
    font-size: 0.8695652174rem;
    letter-spacing: 0.085em;
    font-weight: 900;
    line-height: 1em;
    z-index: 10;
  }
  #main .topPage .feature .read {
    position: absolute;
    top: 10.1195952162%;
    left: 5.8666666667%;
    font-size: 2.0869565217rem;
    font-weight: 900;
    line-height: 1.3966666667em;
    z-index: 10;
  }
  #main .topPage .feature .read span {
    font-weight: 700;
    font-size: 1.15em;
  }
  #main .topPage .feature .slide {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
  }
  #main .topPage .feature .slide .main {
    position: absolute;
    top: 25.6669733211%;
    left: 0;
    width: 100%;
    padding: 90.4% 0 0;
  }
  #main .topPage .feature .slide .main ul, #main .topPage .feature .slide .main li {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  #main .topPage .feature .slide .main ul li .img, #main .topPage .feature .slide .main li li .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  #main .topPage .feature .slide .main ul li.icon_new .txt:before, #main .topPage .feature .slide .main li li.icon_new .txt:before {
    content: '';
    position: absolute;
    top: -4.2608695652rem;
    left: 0;
    display: block;
    width: 3.5217391304rem;
    height: 4rem;
    background: url(../img/top_feature_icon_new.svg) no-repeat center top;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #main .topPage .feature .slide .main ul li .txt, #main .topPage .feature .slide .main li li .txt {
    position: absolute;
    bottom: 0;
    left: 5.6%;
    width: 88.8%;
    background-color: #f2157f;
  }
  #main .topPage .feature .slide .main ul li .txt a, #main .topPage .feature .slide .main li li .txt a {
    position: relative;
    display: block;
    padding: 5.2552552553% 6.3063063063% 6.006006006%;
    color: #ffffff;
    overflow: hidden;
  }
  #main .topPage .feature .slide .main ul li .txt a:before, #main .topPage .feature .slide .main li li .txt a:before {
    content: '';
    position: absolute;
    bottom: -1px;
    right: -1px;
    width: 2.6086956522rem;
    height: 2.6086956522rem;
    background: url(../img/top_feature_icon_btn.svg) no-repeat center #ffffff;
    -webkit-background-size: cover;
    background-size: cover;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner h3, #main .topPage .feature .slide .main li li .txt a .inner h3 {
    font-size: 1.2173913043rem;
    letter-spacing: 0.085em;
    font-weight: 900;
    line-height: 1.4285714286em;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner .description, #main .topPage .feature .slide .main li li .txt a .inner .description {
    font-size: 1rem;
    letter-spacing: 0.125em;
    line-height: 1.3043478261em;
    padding: 0.7826086957rem 0rem 1.5217391304rem;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner .detail .date.onlySp, #main .topPage .feature .slide .main li li .txt a .inner .detail .date.onlySp {
    display: inline-block;
    font-size: 0.8695652174rem;
    line-height: 1em;
    letter-spacing: 0.085em;
    margin: 0rem 1.0869565217rem 0rem 0rem;
  }
  #main .topPage .feature .slide .main ul li .txt a .inner .detail .name, #main .topPage .feature .slide .main li li .txt a .inner .detail .name {
    font-size: 0.9565217391rem;
    font-weight: 700;
    letter-spacing: 0.125em;
    line-height: 1em;
  }
  #main .topPage .feature .slide .main .arrow {
    display: none;
  }
  #main .topPage .feature .slide .thum {
    position: absolute;
    bottom: 7.9116835327%;
    left: 0;
    width: 100%;
  }
  #main .topPage .feature .slide .thum ul {
    letter-spacing: -0.4em;
    text-align: center;
  }
  #main .topPage .feature .slide .thum ul li {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 0.6956521739rem;
    height: 0.6956521739rem;
    margin: 0 0.9009009009%;
  }
  #main .topPage .feature .slide .thum ul li a {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #ffffff;
    border: 2px solid #f2157f;
  }
  #main .topPage .feature .slide .thum ul li a .img,
  #main .topPage .feature .slide .thum ul li a p {
    display: none;
  }
  #main .topPage .feature .slide .thum ul li.active a {
    background-color: #f2157f;
  }
  #main .topPage .banner {
    padding: 11.4666666667% 0 0;
  }
  #main .topPage .banner ul {
    letter-spacing: -0.4em;
    text-align: center;
  }
  #main .topPage .banner ul li {
    position: relative;
    display: inline-block;
    vertical-align: top;
  }
  #main .topPage .banner ul li a {
    display: block;
    width: 100%;
    height: 100%;
  }
  #main .topPage .banner .slide {
    position: relative;
  }
  #main .topPage .banner .img {
    padding: 29.7333333333% 0 0;
  }
  #main .topPage .banner .img .ul_wrap {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    margin: 0 0 0 7.4666666667%;
    width: 83.2173913043rem;
  }
  #main .topPage .banner .img .ul_wrap li {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    height: 100%;
    width: 27.7391304348rem;
    padding: 0rem 0.6086956522rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .banner .img .ul_wrap li a {
    display: block;
    background-color: #f3f3f3;
    padding: 2.1943573668%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .banner .img .ul_wrap li a div{
    max-height: 100%;
    overflow: hidden;
  }
  #main .topPage .banner .mark {
    padding: 4.6666666667% 0 11.4666666667%;
  }
  #main .topPage .banner .mark ul li {
    width: 2.1333333333%;
    margin: 0 0.6666666667%;
  }
  #main .topPage .banner .mark ul li:before {
    content: '';
    display: block;
    padding: 100% 0 0;
  }
  #main .topPage .banner .mark ul li a {
    position: absolute;
    top: 0;
    left: 0;
    border: 2px solid #f2157f;
    background-color: transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .banner .mark ul li.active a {
    background-color: #f2157f;
  }
  #main .topPage .shop_search {
    position: relative;
    padding: 100% 0 0;
    background: url(../img/sp/top_search_bg.jpg) no-repeat center top;
    -webkit-background-size: cover;
    background-size: cover;
  }
  #main .topPage .shop_search .left {
    position: absolute;
    bottom: 5.6%;
    left: 5.6%;
    width: 88.8%;
    background-color: #f2157f;
    color: #ffffff;
    z-index: 2;
  }
  #main .topPage .shop_search .left .inner {
    padding: 7.5075075075% 6.3063063063%;
  }
  #main .topPage .shop_search .left .inner h2 {
    font-size: 1.4782608696rem;
    letter-spacing: 0.08em;
    line-height: 1em;
    font-weight: 900;
  }
  #main .topPage .shop_search .left .inner .read {
    font-size: 1rem;
    letter-spacing: 0.125em;
    line-height: 1.4782608696em;
    padding: 3.4364261168% 0 6.0137457045%;
  }
  #main .topPage .shop_search .left .inner ul li + li {
    padding: 3.4364261168% 0 0;
  }
  #main .topPage .shop_search .left .inner ul li a {
    position: relative;
    display: block;
    height: 3.4782608696rem;
    font-size: 1rem;
    line-height: 3.4782608696rem;
    letter-spacing: 0.145em;
    background-color: #ffffff;
    padding: 0rem 0rem 0rem 2.6086956522rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .shop_search .left .inner ul li a:before, #main .topPage .shop_search .left .inner ul li a:after {
    content: '';
    position: absolute;
    top: 0;
    height: 100%;
    background: no-repeat center;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
  }
  #main .topPage .shop_search .left .inner ul li a:before {
    left: 1rem;
    width: 0.940173913rem;
    background-image: url(../img/top_search_icon_pin.svg);
  }
  #main .topPage .shop_search .left .inner ul li a:after {
    right: 0;
    width: 3.4782608696rem;
    background-image: url(../img/top_search_icon_arrow.svg);
    background-color: #f3f3f3;
    -webkit-background-size: 16.71875% auto;
    background-size: 16.71875% auto;
  }
  #main .topPage .shop_search .left .inner ul li .wrap {
    position: relative;
    display: block;
    height: 3.4782608696rem;
    font-size: 1rem;
    line-height: 3.4782608696rem;
    letter-spacing: 0.145em;
    background-color: #ffffff;
  }
  #main .topPage .shop_search .left .inner ul li .wrap input[type=text] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 1rem;
    padding: 1.3043478261rem 3.4782608696rem 1.3043478261rem 1.0869565217rem;
    letter-spacing: 0.145em;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    background-color: transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .shop_search .left .inner ul li .wrap input[type=text]::-webkit-input-placeholder {
    color: #cccccc;
  }
  #main .topPage .shop_search .left .inner ul li .wrap input[type=text]:placeholder-shown {
    color: #cccccc;
  }
  #main .topPage .shop_search .left .inner ul li .wrap button {
    position: absolute;
    top: 0;
    right: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    background-color: #f3f3f3;
    cursor: pointer;
    width: 3.4782608696rem;
    height: 3.4782608696rem;
  }
  #main .topPage .shop_search .left .inner ul li .wrap button > span {
    display: block;
    width: 31.09375%;
    margin: 0 auto;
  }
  #main .topPage .shop_search .left .inner ul li .wrap button > span img:nth-of-type(2) {
    display: none;
  }
  #main .topPage .shop_search .left .inner .btn_more {
    padding: 6.0137457045% 0 0;
  }
  #main .topPage .shop_search .left .inner .btn_more a {
    position: relative;
    color: #ffffff;
    font-size: 1rem;
    letter-spacing: 0.085em;
    line-height: 1em;
    padding: 0rem 0rem 0rem 2.6956521739rem;
  }
  #main .topPage .shop_search .left .inner .btn_more a:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 1.7391304348rem;
    height: 1.7391304348rem;
    margin: -0.8695652174rem 0rem 0rem;
    background: url(../img/top_search_icon_more.svg) no-repeat center #ffffff;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #main .topPage .shop_search .right {
    display: none;
  }
  #main .topPage .shop_search .dec_arrow {
    position: absolute;
    top: 0;
    right: 5.7333333333%;
    width: 16.2666666667%;
    padding: 25.0666666667% 0 0;
    margin: 13.7333333333% 0 0;
  }
  #main .topPage .shop_search .dec_arrow .css_arrow > div, #main .topPage .shop_search .dec_arrow .css_arrow:before, #main .topPage .shop_search .dec_arrow .css_arrow:after {
    background-image: url("../img/top_search_arrow_parts.png");
  }
  #main .topPage .info {
    padding: 9.8666666667% 0 0;
  }
  #main .topPage .info .info_inner {
    position: relative;
    width: 88.8%;
    margin: 0 auto;
  }
  #main .topPage .info .info_inner h2 {
    font-size: 1.4782608696rem;
    letter-spacing: 0.08em;
    font-weight: 900;
    line-height: 1em;
    padding: 1.951951952% 0 9.3093093093%;
  }
  #main .topPage .info .info_inner .sp_nav {
    position: absolute;
    top: 0;
    right: 0;
    width: 10rem;
    height: 2.9565217391rem;
    background-color: #f3f3f3;
  }
  #main .topPage .info .info_inner .sp_nav:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0.7391304348rem;
    width: 0.652173913rem;
    height: 0.5652173913rem;
    background: url(../img/sp/top_info_icon_arrow.svg) no-repeat center;
    -webkit-background-size: contain;
    background-size: contain;
    margin: -0.2608695652rem 0rem 0rem;
  }
  #main .topPage .info .info_inner .sp_nav select {
    width: 100%;
    height: 100%;
    font-size: 1rem;
    line-height: 1em;
    letter-spacing: 0.085em;
    padding: 0rem 0rem 0rem 1.9565217391rem;
    color: #f2157f;
    background-color: transparent;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
  }
  #main .topPage .info .info_inner .tabs {
    position: relative;
    padding: 84.0840840841% 0 0;
    -webkit-transition: padding-top 0.3s;
    -moz-transition: padding-top 0.3s;
    -ms-transition: padding-top 0.3s;
    -o-transition: padding-top 0.3s;
    transition: padding-top 0.3s;
  }
  #main .topPage .info .info_inner .tabs .tab {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: none;
    letter-spacing: -0.4em;
  }
  #main .topPage .info .info_inner .tabs .tab li {
    display: inline-block;
    width: 50%;
    height: 10.652173913rem;
    margin: 0 0 4.6666666667%;
    vertical-align: top;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .info .info_inner .tabs .tab li:nth-of-type(odd) {
    background: url(../img/sp/top_info_line_dot.png) repeat-y right top;
    -webkit-background-size: 0.1304347826rem auto;
    background-size: 0.1304347826rem auto;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap {
    display: block;
    width: 100%;
    height: 100%;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap .inner:before {
    content: 'MEDIA';
    font-size: 0.8695652174rem;
    letter-spacing: 0.085em;
    line-height: 1em;
    color: #ffffff;
    background-color: #f2157f;
    padding: 0.0869565217rem 0.2173913043rem;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap .inner p {
    font-size: 1rem;
    line-height: 1.4782608696em;
    letter-spacing: 0.165em;
    padding: 0.652173913rem 0rem 1.5217391304rem;
  }
  #main .topPage .info .info_inner .tabs .tab li .wrap .inner .date {
    display: block;
    font-size: 0.8695652174rem;
    line-height: 1em;
    letter-spacing: 0.085em;
  }
  #main .topPage .info .info_inner .tabs .tab li:nth-of-type(odd) .wrap .inner {
    padding: 4.8048048048% 15.015015015% 4.8048048048% 0;
  }
  #main .topPage .info .info_inner .tabs .tab li:nth-of-type(even) .wrap .inner {
    padding: 4.8048048048% 0 4.8048048048% 15.015015015%;
  }
  #main .topPage .info .info_inner .tabs .tab li.news .wrap .inner:before {
    content: 'NEWS';
  }
  #main .topPage .info .info_inner .tabs .tab li.important .wrap .inner:before {
    content: '重要なお知らせ';
  }
  #main .topPage .info .info_inner .tabs .tab li.shop .wrap .inner:before {
    content: 'NEW SHOP';
  }
  #main .topPage .info .info_inner .tabs .tab li.media .wrap .inner:before {
    content: 'MEDIA';
  }
  #main .topPage .info .info_inner .tabs .tab li.company .wrap .inner:before {
    content: 'COMPANY';
  }
  #main .topPage .info .info_inner .tabs .tab li.csr .wrap .inner:before {
    content: 'CSR';
  }
  #main .topPage .info .info_inner .tabs .tab li.ir .wrap .inner:before {
    content: 'IR';
  }
  #main .topPage .info .info_inner .tabs .tab.active {
    display: block;
  }
  #main .topPage .info .info_inner .more {
    padding: 5.2552552553% 0 12.7627627628%;
    text-align: right;
  }
  #main .topPage .info .info_inner .more ul {
    letter-spacing: -0.4em;
  }
  #main .topPage .info .info_inner .more ul li {
    display: inline-block;
    width: 50%;
    height: 3.6956521739rem;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .info .info_inner .more ul li:first-child {
    padding: 0 1px 0 0;
  }
  #main .topPage .info .info_inner .more ul li a {
    display: table;
    width: 100%;
    height: 100%;
    background-color: #f2157f;
    font-size: 1rem;
    line-height: 1em;
    letter-spacing: 0.125em;
    color: #ffffff;
  }
  #main .topPage .info .info_inner .more ul li a span {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
  }
  #main .topPage .recruit {
    padding: 0 0 11.6%;
  }
  #main .topPage .recruit ul li {
    width: 88.8%;
    margin: 0 auto;
  }
  #main .topPage .recruit ul li:first-child {
    padding: 0 0 4%;
  }
  #main .topPage .recruit ul li a {
    position: relative;
    display: table;
    width: 100%;
    height: 16.069565rem;
    overflow: hidden;
  }
  #main .topPage .recruit ul li a .img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
  }
  #main .topPage .recruit ul li a .img img {
    width: 101%;
  }
  #main .topPage .recruit ul li a .txt {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
  }
  #main .topPage .recruit ul li a .txt span {
    position: relative;
    display: inline-block;
    background-color: #ffffff;
    font-size: 1.4782608696rem;
    letter-spacing: 0.08em;
    line-height: 1em;
    font-weight: 900;
    padding: 0.3043478261rem 0.2173913043rem 0.3043478261rem;
  }
  #main .topPage .recruit ul li a:after {
    content: '';
    position: absolute;
    bottom: -1px;
    right: -1px;
    width: 2.6086956522rem;
    height: 2.6086956522rem;
    background: url(../img/top_recruit_btn.svg) no-repeat center #f2157f;
    -webkit-background-size: cover;
    background-size: cover;
  }
  #main .topPage .corporate {
    padding: 0 0 7.3333333333%;
  }
  #main .topPage .corporate .ttl {
    position: relative;
    background-color: #f2157f;
    padding: 48.1333333333% 0 0;
  }
  #main .topPage .corporate .ttl h2 {
    position: absolute;
    top: 19.3905817175%;
    left: 5.8666666667%;
    color: #ffffff;
    font-size: 2.0869565217rem;
    line-height: 1.4166666667em;
    font-weight: 900;
    letter-spacing: 0.08em;
  }
  #main .topPage .corporate .ttl h2 span {
    font-weight: 700;
    font-size: 1.15em;
  }
  #main .topPage .corporate .ttl .img {
    position: absolute;
    top: 17.7033492823%;
    right: 5.7333333333%;
    width: 16.2666666667%;
  }
  #main .topPage .corporate .ttl .img .css_arrow > div, #main .topPage .corporate .ttl .img .css_arrow:before, #main .topPage .corporate .ttl .img .css_arrow:after {
    background-image: url("../img/top_corporate_ttl_dec_parts.png");
  }
  #main .topPage .corporate .block {
    position: relative;
    width: 88.8%;
    margin: -3.2% 0 0;
    margin-left: auto;
    margin-right: auto;
  }
  #main .topPage .corporate .block .box {
    background-color: #f3f3f3;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .corporate .block .box h3 {
    font-size: 1.4782608696rem;
    letter-spacing: 0.08em;
    font-weight: 900;
    line-height: 1em;
  }
  #main .topPage .corporate .block .box.detail {
    padding: 9.009009009% 6.3063063063% 10.5105105105%;
    margin: 0 0 4.5045045045%;
    letter-spacing: -0.4em;
  }
  #main .topPage .corporate .block .box.detail .left, #main .topPage .corporate .block .box.detail .right {
    display: inline-block;
    vertical-align: top;
  }
  #main .topPage .corporate .block .box.detail .left {
    width: 56.7010309278%;
    text-align: left;
  }
  #main .topPage .corporate .block .box.detail .left p {
    color: #808080;
    font-size: 1rem;
    letter-spacing: 0.125em;
    line-height: 1.4782608696em;
    padding: 7.5757575758% 0;
  }
  #main .topPage .corporate .block .box.detail .left .css_more {
    position: relative;
    font-size: 1rem;
    letter-spacing: 0.085em;
    padding: 0rem 0rem 0rem 2.6086956522rem;
  }
  #main .topPage .corporate .block .box.detail .left .css_more:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 1.7391304348rem;
    height: 1.7391304348rem;
    margin: -0.8695652174rem 0rem 0rem;
    background: url(../img/top_btn_more.svg) no-repeat center #f2157f;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #main .topPage .corporate .block .box.detail .right {
    width: 43.2989690722%;
    text-align: right;
  }
  #main .topPage .corporate .block .box.detail .right img {
    width: 82.1428571429%;
  }
  #main .topPage .corporate .block .box.group {
    padding: 9.009009009% 6.3063063063% 8.2582582583%;
  }
  #main .topPage .corporate .block .box.group ul {
    padding: 6.0137457045% 0 0;
    letter-spacing: -0.4em;
  }
  #main .topPage .corporate .block .box.group ul li {
    display: inline-block;
    width: 50%;
    vertical-align: top;
    padding: 0 0.1718213058%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .corporate .block .box.group ul li a {
    color: #808080;
  }
  #main .topPage .corporate .block .box.group ul li p {
    text-align: left;
    padding: 7.560137457% 0 0;
    font-size: 1rem;
    line-height: 1.4782608696em;
    letter-spacing: 0.125em;
  }
  #main .topPage .other {
    background-color: #f3f3f3;
  }
  #main .topPage .other .box {
    padding: 0 5.6%;
  }
  #main .topPage .other .box h3 {
    font-size: 1.4782608696rem;
    letter-spacing: 0.12em;
    font-weight: 900;
    line-height: 1em;
  }
  #main .topPage .other .box h3 span {
    font-weight: 700;
    font-size: 1.15em;
  }
  #main .topPage .other .box.contact {
    border-bottom: 1px solid #e9e9e9;
  }
  #main .topPage .other .box.contact h3 {
    padding: 12.7147766323% 0 6.0137457045%;
  }
  #main .topPage .other .box.contact ul {
    padding: 0 0 10.3092783505%;
    letter-spacing: -0.4em;
  }
  #main .topPage .other .box.contact ul li {
    display: inline-block;
    width: 50%;
    padding: 0 0.1718213058%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  #main .topPage .other .box.contact ul li a {
    position: relative;
    display: table;
    width: 100%;
    height: 5.8260869565rem;
    background-color: #ffffff;
    overflow: hidden;
    font-size: 1rem;
    line-height: 1em;
    letter-spacing: 0.085em;
    font-weight: 700;
  }
  #main .topPage .other .box.contact ul li a span {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
  }
  #main .topPage .other .box.contact ul li a:before {
    content: '';
    position: absolute;
    bottom: -1px;
    right: -1px;
    width: 1.7391304348rem;
    height: 1.7391304348rem;
    background: url(../img/top_btn_more.svg) no-repeat center #f2157f;
    -webkit-background-size: cover;
    background-size: cover;
  }
  #main .topPage .other .box.weborder {
    padding: 7.3333333333% 5.6% 10%;
    letter-spacing: -0.4em;
  }
  #main .topPage .other .box.weborder .left, #main .topPage .other .box.weborder .right {
    display: inline-block;
    vertical-align: top;
  }
  #main .topPage .other .box.weborder h3 {
    padding: 0 0 5.2552552553%;
  }
  #main .topPage .other .box.weborder .left {
    width: 57.0570570571%;
  }
  #main .topPage .other .box.weborder .left p {
    font-size: 1rem;
    line-height: 1.4782608696em;
    letter-spacing: 0.125em;
    padding: 5.1546391753% 0 6.0137457045%;
  }
  #main .topPage .other .box.weborder .left .css_more {
    position: relative;
    font-size: 0.8695652174rem;
    letter-spacing: 0.085em;
    padding: 0rem 0rem 0rem 2.6956521739rem;
  }
  #main .topPage .other .box.weborder .left .css_more:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 1.7391304348rem;
    height: 1.7391304348rem;
    margin: -0.8695652174rem 0rem 0rem;
    background: url(../img/top_btn_more.svg) no-repeat center #f2157f;
    -webkit-background-size: contain;
    background-size: contain;
  }
  #main .topPage .other .box.weborder .right {
    width: 42.9429429429%;
  }
  #main .topPage .other .box.weborder .right ul {
    letter-spacing: -0.4em;
    text-align: right;
  }
  #main .topPage .other .box.weborder .right ul li {
    position: relative;
    display: inline-block;
    vertical-align: top;
    width: 5.5217391304rem;
    height: 5.5217391304rem;
    margin: 0 0 0 1px;
    text-align: center;
    background-color: #f2157f;
  }
  #main .topPage .other .box.weborder .right ul li span {
    display: block;
  }
  #main .topPage .other .box.weborder .right ul li .txt {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 0 0 13.3858267717%;
    color: #ffffff;
    font-size: 0.5939130435rem;
    letter-spacing: 0.085em;
    font-weight: 900;
  }
  #main .topPage .other .box.weborder .right ul li .img {
    padding: 23.6220472441% 0 0;
    margin: 0 auto;
  }
  #main .topPage .other .box.weborder .right ul li.i1 .img {
    width: 42.7409448819%;
  }
  #main .topPage .other .box.weborder .right ul li.i2 .img {
    width: 57.2094488189%;
  }
}
