@charset "UTF-8";
@import url("../css/default.css");
@import url("../css/delay_anim.css");
body {
  width: 100%;
  color: #231815;
  font-size: .12rem;
  font-weight: 400;
  font-family: "Zen Old Mincho", serif;
  background-color: #fff;
}

@media screen and (max-width: 767px) {
  body {
    min-width: 320px;
  }
  body.fixed {
    position: fixed;
    top: 0;
    left: 0;
  }
}

/* Avoid Chrome to see Safari hack */
@supports (-webkit-touch-callout: none) {
  body {
    /* The hack for Safari */
    min-height: -webkit-fill-available;
  }
}

.wrapper {
  overflow: hidden;
  position: relative;
  z-index: 10;
}

.container {
  width: 68.75%;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .container {
    width: 89.3%;
  }
}

.container_s {
  width: 56.25%;
  margin: 0 auto;
}

@media screen and (max-width: 767px) {
  .container_s {
    width: 89.3%;
  }
}

a {
  color: #231815;
}

img {
  width: 100%;
}

.img_switch {
  visibility: hidden;
}

@media screen and (max-width: 767px) {
  .pconly {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .sponly {
    display: none;
  }
}

.object-fit_img01 {
  -o-object-fit: contain;
     object-fit: contain;
}

.object-fit_img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.nopost {
  padding: 0.5rem 0;
  font-size: 1.2em;
  text-align: center;
}

/* header
--------------------------------------------------------------*/
.cmn_header {
  width: 100%;
  padding: .4rem 0;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99;
  /* globalNav ---------- */
}

@media screen and (min-width: 768px) {
  .cmn_header {
    -webkit-transition: background-color .8s, padding .8s, opacity .8s, -webkit-transform .8s;
    transition: background-color .8s, padding .8s, opacity .8s, -webkit-transform .8s;
    transition: background-color .8s, padding .8s, opacity .8s, transform .8s;
    transition: background-color .8s, padding .8s, opacity .8s, transform .8s, -webkit-transform .8s;
  }
}

.cmn_header.scrolled {
  padding: .2rem 0;
  background-color: rgba(255, 255, 255, 0.9);
}

.cmn_header.up {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

.cmn_header.down {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

.cmn_header_wrap {
  width: 90%;
  margin: 0 auto;
  height: .67rem;
  position: relative;
}

.cmn_header .logo {
  width: 2.07rem;
  position: absolute;
  top: 0;
  left: 0;
}

.cmn_header .nav {
  height: 100%;
}

@media screen and (min-width: 768px) {
  .cmn_header .nav .menu-trigger {
    display: none;
  }
}

.cmn_header .nav .global li:not(.global_instagram) {
  margin: 0 .15rem;
}

.cmn_header .nav .global li:not(.global_instagram) a {
  display: block;
  padding: .1rem;
  font-family: "Cinzel", serif;
  font-size: .13rem;
}

@media screen and (min-width: 768px) {
  .cmn_header .nav .global li:not(.global_instagram) a.current {
    opacity: .5;
    pointer-events: none;
  }
}

@media screen and (min-width: 768px) {
  .cmn_header .nav .global {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
  }
  .cmn_header .nav .global_instagram {
    width: .2rem;
    position: absolute;
    top: .2rem;
    right: calc((100% - 9rem) / 2 + .77rem);
  }
  .cmn_header .nav .global a {
    -webkit-transition-duration: .6s;
            transition-duration: .6s;
    -webkit-transition-property: opacity;
    transition-property: opacity;
  }
  .cmn_header .nav .global a:hover {
    opacity: .5;
  }
}

@media screen and (max-width: 767px) {
  .cmn_header {
    padding: .5rem 0 0;
    position: static;
    /* globalNav ---------- */
  }
  .cmn_header.scrolled {
    padding: .5rem 0 0;
    background-color: transparent;
  }
  .cmn_header.up {
    -webkit-transform: none;
            transform: none;
  }
  .cmn_header.down {
    -webkit-transform: none;
            transform: none;
  }
  .cmn_header_wrap {
    width: 100%;
    height: .6rem;
  }
  .cmn_header .logo {
    width: 1.63rem;
    margin: 0 auto .55rem;
    position: static;
  }
  .cmn_header .nav .menu-trigger {
    display: inline-block;
    width: .28rem;
    height: .06rem;
    vertical-align: middle;
    cursor: pointer;
    position: fixed;
    top: .3rem;
    right: .2rem;
    z-index: 100;
  }
  .cmn_header .nav .menu-trigger span {
    display: inline-block;
    width: 100%;
    height: 1px;
    background-color: #918b8a;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    position: absolute;
    left: 0;
    -webkit-transition: .4s;
    transition: .4s;
  }
  .cmn_header .nav .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  .cmn_header .nav .menu-trigger span:nth-of-type(2) {
    bottom: -1px;
  }
  .cmn_header .nav_logo {
    display: none;
  }
  .cmn_header .nav .global {
    display: none;
  }
  .cmn_header .nav .global li:not(.global_instagram) {
    margin: 0;
  }
  .cmn_header .nav .global li:not(.global_instagram) a {
    padding: .2rem .42rem;
    font-size: .165rem;
  }
  .cmn_header .nav .global_instagram a, .cmn_header .nav .global_line a {
    display: block;
    padding: .1rem .42rem !important;
    font-family: "Cinzel", serif;
    font-size: .125rem !important;
  }
  .cmn_header .nav .global_instagram img, .cmn_header .nav .global_line img {
    width: .2rem;
    margin-right: .09rem;
    vertical-align: middle;
  }
  .cmn_header .nav .global_instagram .txt, .cmn_header .nav .global_line .txt {
    display: inline-block;
    vertical-align: middle;
  }
  .cmn_header .nav .global_instagram {
    padding: .2rem 0 0;
  }
  .cmn_header.open .nav {
    width: 100%;
    height: 100vh;
    padding: .5rem 0;
    background-color: rgba(255, 255, 255, 0.9);
    position: fixed;
    top: 0;
    left: 0;
    overflow-y: scroll;
    z-index: 999;
  }
  .cmn_header.open .nav .menu-trigger span:nth-of-type(1) {
    -webkit-transform: translateY(0) rotate(-20deg);
            transform: translateY(0) rotate(-20deg);
  }
  .cmn_header.open .nav .menu-trigger span:nth-of-type(2) {
    -webkit-transform: translateY(-0.06rem) rotate(20deg);
            transform: translateY(-0.06rem) rotate(20deg);
  }
  .cmn_header.open .nav_logo {
    display: block;
    width: 1.63rem;
    margin: 0 auto .35rem;
    position: relative;
    z-index: 10;
  }
}

/* footer
--------------------------------------------------------------*/
.cmn_footer {
  width: 90%;
  margin: 0 auto;
  padding: 1.55rem 0 .45rem;
  position: relative;
}

.cmn_footer_wrap {
  height: .67rem;
}

.cmn_footer .logo {
  width: 2.07rem;
}

.cmn_footer .navi li {
  margin: 0 .15rem;
}

.cmn_footer .navi li a {
  display: block;
  padding: .1rem;
  font-family: "Cinzel", serif;
  font-size: .13rem;
}

@media screen and (min-width: 768px) {
  .cmn_footer .navi li a {
    -webkit-transition-duration: .6s;
            transition-duration: .6s;
    -webkit-transition-property: opacity;
    transition-property: opacity;
  }
  .cmn_footer .navi li a:hover {
    opacity: .5;
  }
}

.cmn_footer .copyright small {
  font-family: "Cinzel", serif;
  font-size: .1rem;
}

@media screen and (max-width: 767px) {
  .cmn_footer {
    padding: .8rem 0 .22rem;
  }
  .cmn_footer_wrap {
    height: auto;
    -webkit-box-pack: center !important;
    -webkit-justify-content: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .cmn_footer .logo {
    width: 1.63rem;
    margin: 0 auto .35rem;
  }
  .cmn_footer .copyright small {
    font-size: .105rem;
  }
}

/* --------------------------------------------------------------
   共通
-------------------------------------------------------------- */
/* SUBSCRIPTION ---------- */
.mod_subscription {
  text-align: center;
}

.mod_subscription a {
  display: block;
  width: 100%;
  height: 2.58rem;
  padding: 1rem 0 0;
  position: relative;
  overflow: hidden;
}

.mod_subscription a::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: center/cover no-repeat url(../img/cmn/subscription_bg@2x.jpg);
  -webkit-transition-duration: .6s;
          transition-duration: .6s;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  position: absolute;
  top: 0;
  left: 0;
}

.mod_subscription a .mod_title,
.mod_subscription a .desc {
  position: relative;
  z-index: 5;
}

.mod_subscription a .mod_title {
  margin: 0 0 .4rem;
}

.mod_subscription a .desc {
  font-size: .17rem;
}

.mod_subscription a .desc .arrow {
  display: inline-block;
  padding: 0 .52rem;
  position: relative;
}

.mod_subscription a .desc .arrow::after {
  content: "";
  width: .26rem;
  height: .26rem;
  background: center/0.24rem auto no-repeat url(../img/cmn/arrow.svg);
  position: absolute;
  top: calc(50% - .12rem);
  right: 0;
}

@media screen and (min-width: 768px) {
  .mod_subscription a:hover::after {
    -webkit-transform: scale(1.03);
            transform: scale(1.03);
  }
}

@media screen and (max-width: 767px) {
  .mod_subscription a {
    height: 2.45rem;
    padding: .93rem 0 0;
  }
  .mod_subscription a::after {
    background: center/cover no-repeat url(../img/cmn/subscription_bg_sp.jpg);
  }
  .mod_subscription a .mod_title {
    margin: 0 0 .3rem;
    font-size: .25rem;
  }
  .mod_subscription a .desc {
    font-size: .165rem;
  }
  .mod_subscription a .desc .arrow {
    padding: 0 .35rem;
  }
  .mod_subscription a .desc .arrow::after {
    background: center/0.2rem auto no-repeat url(../img/cmn/arrow.svg);
  }
}

/* PageTitle ---------- */
.main_pagetitle {
  padding: 2.35rem 0 1.35rem;
  text-align: center;
}

.main_pagetitle .head {
  font-size: .25rem;
  font-family: "Cinzel", serif;
}

@media screen and (max-width: 767px) {
  .main_pagetitle {
    padding: .5rem 0 .4rem;
  }
  .main_pagetitle .head {
    font-size: .165rem;
  }
}

@media screen and (max-width: 767px) {
  .cmn_yoko_scroll {
    width: 100%;
    overflow-x: scroll;
    white-space: nowrap;
  }
  .cmn_yoko_scroll .scroll_inner {
    min-width: 7.9rem;
  }
  .cmn_yoko_scroll::-webkit-scrollbar {
    display: none;
    height: 10px;
  }
  .cmn_yoko_scroll::-webkit-scrollbar-track {
    margin: 0 .02rem;
    background: #ccc;
    border-radius: .05rem;
  }
  .cmn_yoko_scroll::-webkit-scrollbar-thumb {
    border-radius: .05rem;
    background: #666;
  }
}

/* --------------------------------------------------------------
   Module_Element
-------------------------------------------------------------- */
/* Flex ---------- */
.mod_flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}

.mod_flex.align-center {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod_flex_center {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.mod_flex_center.align-center {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod_flex_between {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  /* 3列4列の場合の調整 */
  /* // 3列4列の場合の調整 */
}

.mod_flex_between.align-center {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.mod_flex_between.col3::after, .mod_flex_between.col4::before, .mod_flex_between.col4::after {
  content: "";
  display: block;
  height: 0;
}

.mod_flex_between.col4::before {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}

.mod_flex_around {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around;
}

.mod_flex_around.align-center {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

/* title ---------- */
.mod_title {
  font-family: "Cinzel", serif;
  font-size: .25rem;
}

@media screen and (max-width: 767px) {
  .mod_title {
    font-size: .165rem;
  }
}

.mod_title2 {
  display: inline-block;
  padding: .08rem 0 .1rem;
  margin: 0 0 .5rem;
  font-size: .15rem;
  border-bottom: 1px solid #918b8a;
}

@media screen and (max-width: 767px) {
  .mod_title2 {
    margin: 0 0 .2rem;
  }
}

/* txt ---------- */
.mod_txt1 {
  font-size: .17rem;
  line-height: 2.05;
}

@media screen and (max-width: 767px) {
  .mod_txt1 {
    font-size: .165rem;
  }
}

.mod_txt2 {
  line-height: 2.08;
}

@media screen and (max-width: 767px) {
  .mod_txt2 {
    font-size: .12rem;
  }
}

.mod_txt3 {
  font-size: .12rem;
  line-height: 2.08;
}

/* mod_btn ---------- */
.mod_btn {
  display: block;
}

.mod_btn .arrow_anim {
  display: inline-block;
  position: relative;
}

.mod_btn .arrow_anim::before {
  content: "";
  width: .24rem;
  height: .24rem;
  border: 1px solid #918b8a;
  border-radius: 50%;
  position: absolute;
  top: calc(50% - .12rem);
  left: calc(50% - .12rem);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
  -webkit-transition: opacity .4s, -webkit-transform .4s;
  transition: opacity .4s, -webkit-transform .4s;
  transition: transform .4s, opacity .4s;
  transition: transform .4s, opacity .4s, -webkit-transform .4s;
}

.mod_btn .arrow_anim img {
  width: .12rem;
}

/* number ---------- */
/* animation ---------- */
.fadetxt {
  opacity: 0;
}

.fadetxt span {
  opacity: 0;
}

.fade {
  opacity: 0;
  -webkit-transition-duration: 1.5s;
          transition-duration: 1.5s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.fade-up {
  opacity: 0;
  -webkit-transform: translate(0, 0.5rem);
          transform: translate(0, 0.5rem);
  -webkit-transition-duration: 1.5s;
          transition-duration: 1.5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
}

.fade-up2 {
  opacity: 0;
  -webkit-transform: translate(0, 0.5rem);
          transform: translate(0, 0.5rem);
  -webkit-transition-duration: 1.2s;
          transition-duration: 1.2s;
  -webkit-transition-delay: .5s;
          transition-delay: .5s;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
}

.fade.show {
  opacity: 1;
}

.fade-up.show,
.fade-up2.show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

/* TOP
--------------------------------------------------------------*/
/* header ----------- */
.top_page .cmn_header {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  opacity: 0;
}

@media screen and (min-width: 768px) {
  .top_page .cmn_header {
    -webkit-transition: opacity .8s, background-color .8s, padding .8s, -webkit-transform .8s;
    transition: opacity .8s, background-color .8s, padding .8s, -webkit-transform .8s;
    transition: transform .8s, opacity .8s, background-color .8s, padding .8s;
    transition: transform .8s, opacity .8s, background-color .8s, padding .8s, -webkit-transform .8s;
  }
}

.top_page .cmn_header.scrolled {
  padding: .2rem 0;
  background-color: rgba(255, 255, 255, 0.8);
  opacity: 1;
}

.top_page .cmn_header.up {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

.top_page .cmn_header.fixed.down {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .top_page .cmn_header {
    padding: 0;
    -webkit-transform: none;
            transform: none;
    opacity: 1;
  }
  .top_page .cmn_header.scrolled {
    padding: 0;
    background-color: transparent;
  }
  .top_page .cmn_header.up {
    -webkit-transform: none;
            transform: none;
  }
  .top_page .cmn_header.fixed.down {
    -webkit-transform: none;
            transform: none;
  }
  .top_page .cmn_header_wrap {
    height: 0;
  }
  .top_page .cmn_header .logo {
    display: none;
  }
}

/* MV ----------- */
.top_page .mv {
  width: 90%;
  height: 100vh;
  margin: 0 auto;
  padding: .54rem 0;
}

.top_page .mv_wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  position: relative;
}

.top_page .mv_head {
  width: 2.26rem;
  margin-left: 2.36rem;
  text-align: center;
}

.top_page .mv_head .site_name {
  width: 100%;
}

.top_page .mv_head .sub_name {
  width: 1.06rem;
  margin: .05rem auto 0;
}

.top_page .mv .pic {
  width: 7.52rem;
  height: 100%;
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
}

@media screen and (min-width: 768px) {
  .top_page .mv .pic {
    -webkit-transition: all 5000ms !important;
    transition: all 5000ms !important;
  }
}

.top_page .mv .pic img {
  width: 7.52rem;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .top_page .mv {
    width: 100%;
    height: 4.65rem;
    padding: 0;
    background: center/cover no-repeat url(../img/top/mv_sp.jpg);
  }
  .top_page .mv_wrap {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%;
  }
  .top_page .mv_head {
    width: 2.65rem;
    margin-left: 0;
    position: relative;
  }
  .top_page .mv_head .sub_name {
    width: 1.27rem;
    margin: 0;
    position: absolute;
    bottom: 0;
    right: .2rem;
  }
  .top_page .mv_after_logo {
    width: 1.63rem;
    margin: .55rem auto 0;
  }
}

/* section [共通] ----------- */
.top_item {
  position: relative;
}

.top_item .mod_title {
  margin: 0 0 .4rem;
}

.top_item .mod_txt1 {
  margin: 0 0 .35rem;
}

.top_item_btn {
  margin: .5rem 0 0;
  font-size: .15rem;
  font-family: "Cinzel", serif;
}

.top_item_btn a {
  display: inline-block;
  padding: 0 .45rem 0 0;
  position: relative;
}

.top_item_btn a::after {
  content: "";
  width: .25rem;
  height: .25rem;
  background: center/0.24rem auto no-repeat url(../img/cmn/arrow.svg);
  position: absolute;
  top: calc(50% - .125rem);
  right: 0;
}

@media screen and (min-width: 768px) {
  .top_item_btn a {
    -webkit-transition-duration: .6s;
            transition-duration: .6s;
    -webkit-transition-property: opacity;
    transition-property: opacity;
  }
  .top_item_btn a:hover {
    opacity: .5;
  }
}

.top_item_pic {
  width: 3.7rem;
  position: absolute;
}

.top_item_pic.pic1, .top_item_pic.pic5 {
  left: 0;
}

.top_item_pic.pic2, .top_item_pic.pic6 {
  left: 4.46rem;
}

.top_item_pic.pic1, .top_item_pic.pic4, .top_item_pic.pic6 {
  top: 0;
}

.top_item_pic.pic2, .top_item_pic.pic3, .top_item_pic.pic5 {
  top: .8rem;
}

.top_item_pic.pic3 {
  right: 4.46rem;
}

.top_item_pic.pic4 {
  right: 0;
}

@media screen and (max-width: 767px) {
  .top_item .mod_title {
    margin: 0 0 .3rem;
  }
  .top_item .mod_txt1 {
    margin: 0 0 .23rem;
  }
  .top_item_btn {
    margin: .35rem 0 0;
    font-size: .13rem;
  }
  .top_item_btn a {
    padding: 0 .48rem 0 0;
  }
  .top_item_pic {
    width: 1.67rem;
  }
  .top_item_pic.pic2, .top_item_pic.pic6 {
    left: 1.88rem;
  }
  .top_item_pic.pic2, .top_item_pic.pic3 {
    top: .35rem;
  }
  .top_item_pic.pic5 {
    top: 0;
  }
  .top_item_pic.pic6 {
    top: .35rem;
  }
  .top_item_pic.pic3 {
    right: 1.88rem;
  }
}

/* about ----------- */
.top_about {
  margin: 1.1rem 0 0;
  padding: 1.5rem 0 2rem;
}

.top_about_wrap {
  padding-left: 6.75rem;
}

@media screen and (max-width: 767px) {
  .top_about {
    margin: .55rem 0 0;
    padding: 3.06rem 0 .45rem;
  }
  .top_about_wrap {
    padding-left: 0;
  }
}

/* howtobuy ----------- */
.top_howtobuy {
  padding: 1.75rem 0 2.45rem;
}

@media screen and (max-width: 767px) {
  .top_howtobuy {
    padding: 3.15rem 0 .53rem;
  }
}

/* company ----------- */
.top_company {
  padding: 1.1rem 0 3rem;
}

.top_company_wrap {
  padding-left: 6.3rem;
}

@media screen and (max-width: 767px) {
  .top_company {
    padding: 3.08rem 0 .65rem;
  }
  .top_company_wrap {
    padding-left: 0;
  }
}

/* ABOUT
--------------------------------------------------------------*/
/* 共通 ----------- */
.about_page .mod_txt1 {
  margin: 0 0 .25rem;
}

.about_page .about_item .pic {
  width: 4.98rem;
}

.about_page .about_item_wrap {
  width: 5.1rem;
}

@media screen and (max-width: 767px) {
  .about_page .mod_txt1 {
    margin: 0 0 .2rem;
  }
  .about_page .about_item {
    width: 100%;
  }
  .about_page .about_item .pic {
    width: 100%;
  }
  .about_page .about_item_wrap {
    width: 89%;
    margin: 0 auto;
    padding: .3rem 0 0;
  }
}

/* about ----------- */
.about_about {
  padding: 0 0 1.1rem;
}

@media screen and (max-width: 767px) {
  .about_about {
    padding: 0 0 .4rem;
  }
}

/* effect ----------- */
.about_effect .about_item {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.about_effect_wrap {
  margin: .9rem auto 1.45rem;
  padding: 0 0 0 .06rem;
  position: relative;
}

.about_effect_wrap .lists li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 1.66rem;
  height: 1.66rem;
  margin: 0 .64rem .15rem 0;
  border: 1px solid #918b8a;
  border-radius: 50%;
}

.about_effect_wrap .lists li:nth-child(5n) {
  margin: 0 .64rem .15rem 1.15rem;
}

.about_effect_wrap .lists li .name {
  font-size: .15rem;
}

.about_effect_wrap .lists li .effect_txt {
  margin-top: .15rem;
  color: #918b8a;
  font-size: .12rem;
}

.about_effect_wrap .txt {
  width: 1.8rem;
  font-size: .15rem;
  line-height: 2.33;
  text-align: center;
  position: absolute;
  right: -.55rem;
  top: .9rem;
}

@media screen and (max-width: 767px) {
  .about_effect_wrap {
    margin: .3rem auto .45rem;
    padding: 0;
  }
  .about_effect_wrap .lists li {
    width: 1.25rem;
    height: 1.25rem;
    margin: 0 .48rem .13rem 0;
  }
  .about_effect_wrap .lists li:nth-child(5n) {
    margin: 0 .48rem .13rem .85rem;
  }
  .about_effect_wrap .lists li .name {
    font-size: .1125rem;
  }
  .about_effect_wrap .lists li .effect_txt {
    font-size: .09rem;
  }
  .about_effect_wrap .txt {
    width: auto;
    margin: .2rem 0 0;
    font-size: .115rem;
    line-height: 1.4;
    position: static;
  }
}

/* lineup ----------- */
.about_lineup .about_item {
  margin: 0 auto 1.65rem;
}

.about_lineup_wrap .item {
  position: relative;
}

.about_lineup_wrap .item .spic {
  width: 2.06rem;
  position: absolute;
  top: 0;
}

.about_lineup_wrap .item .stit {
  padding: .05rem 0 .2rem;
  margin: 0 0 .25rem;
  border-bottom: 1px solid #918b8a;
}

.about_lineup_wrap .item .stit .month {
  font-size: .12rem;
}

.about_lineup_wrap .item .stit .name {
  margin: 0 .1rem 0 .25rem;
  font-size: .17rem;
}

.about_lineup_wrap .item .stit .fragrance {
  font-size: .12rem;
}

.about_lineup_wrap .item .desc {
  font-size: .13rem;
  line-height: 1.9;
}

.about_lineup_wrap .item .desc + .desc {
  margin-top: .25rem;
}

.about_lineup_wrap .item:nth-child(odd) {
  padding: 0 0 1.1rem 2.78rem;
}

.about_lineup_wrap .item:nth-child(odd) .spic {
  left: 0;
}

.about_lineup_wrap .item:nth-child(even) {
  padding: 0 2.78rem 1.1rem 0;
}

.about_lineup_wrap .item:nth-child(even) .spic {
  right: 0;
}

@media screen and (max-width: 767px) {
  .about_lineup .about_item {
    margin: 0 auto .32rem;
  }
  .about_lineup_wrap .item {
    border-top: 1px solid #d3d1d0;
  }
  .about_lineup_wrap .item .spic {
    width: 1.54rem;
    top: .37rem;
  }
  .about_lineup_wrap .item .stit {
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    height: 1.54rem;
    margin: 0 0 .3rem;
    border-bottom: none;
  }
  .about_lineup_wrap .item .stit .month {
    font-size: .14rem;
  }
  .about_lineup_wrap .item .stit .name {
    margin: .3rem 0 .15rem;
    font-size: .165rem;
  }
  .about_lineup_wrap .item .stit .fragrance {
    font-size: .12rem;
    margin-left: -.5em;
    line-height: 1.3;
  }
  .about_lineup_wrap .item .desc {
    font-size: .12rem;
    line-height: 2.08;
  }
  .about_lineup_wrap .item:nth-child(odd) {
    padding: .29rem 0;
  }
  .about_lineup_wrap .item:nth-child(odd) .stit {
    padding: .32rem 0 0 1.8rem;
  }
  .about_lineup_wrap .item:nth-child(even) {
    padding: .29rem 0;
  }
  .about_lineup_wrap .item:nth-child(even) .stit {
    padding: .32rem 0 0;
  }
}

/* howto ----------- */
.about_howto {
  padding: 1.2rem 0 1.3rem;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.about_howto_txt {
  width: 6.04rem;
  margin: 0 0 .05rem;
  padding: .4rem 0 .5rem .4rem;
  border: 1px solid #918b8a;
  border-radius: .1rem;
}

.about_howto_txt .lists li {
  font-size: .17rem;
  line-height: 2;
}

.about_howto_txt .lists li::before {
  content: "■";
  margin-right: .03rem;
  color: #918b8a;
}

.about_howto_txt .lists li .num {
  margin: 0 .05rem;
  font-size: .255rem;
}

.about_howto_txt .note {
  margin: .2rem 0 0;
  font-size: .12rem;
}

@media screen and (max-width: 767px) {
  .about_howto {
    padding: .39rem 0 .57rem;
    border-top: 1px solid #d3d1d0;
  }
  .about_howto_main {
    padding: 0 0 .27rem;
  }
  .about_howto_txt {
    width: 100%;
    margin: 0;
    padding: .25rem 0 .37rem .27rem;
    border-radius: .08rem;
  }
  .about_howto_txt .lists li {
    font-size: .1275rem;
    line-height: 2;
  }
  .about_howto_txt .lists li::before {
    margin-right: .03rem;
  }
  .about_howto_txt .lists li + li {
    margin-top: .1rem;
  }
  .about_howto_txt .lists li .num {
    margin: 0 .03rem;
    font-size: .19rem;
  }
  .about_howto_txt .lists li .line2 {
    display: block;
    padding-left: 0.6em;
    text-indent: 0.6em;
    line-height: 1.6;
  }
  .about_howto_txt .note {
    margin: .1rem 0 0;
    font-size: .09rem;
  }
}

/* COMPANY
--------------------------------------------------------------*/
/* overview ----------- */
.company_overview {
  padding: 0 0 1.3rem .98rem;
  position: relative;
}

.company_overview .pic {
  width: 4.96rem;
  position: absolute;
  left: 0;
  bottom: -7.06rem;
}

.company_overview .data_list dt,
.company_overview .data_list dd {
  padding: 0 0 .25rem;
  font-size: .15rem;
}

.company_overview .data_list dt {
  width: .9rem;
}

.company_overview .data_list dd {
  width: calc(100% - .9rem);
}

@media screen and (max-width: 767px) {
  .company_overview {
    padding: 0 0 .35rem;
  }
  .company_overview .pic {
    width: calc(100% + .4rem);
    margin: 0 -.2rem .35rem;
    position: static;
  }
  .company_overview .data_list {
    margin: .13rem 0 0;
  }
  .company_overview .data_list dt,
  .company_overview .data_list dd {
    padding: 0 0 .25rem;
    font-size: .12rem;
  }
  .company_overview .data_list dt {
    width: 100%;
  }
  .company_overview .data_list dd {
    width: 100%;
  }
}

/* message ----------- */
.company_message {
  padding: 0 0 1.4rem;
}

.company_message_wrap {
  padding: .85rem 0 0 5.9rem;
}

.company_message_wrap .mod_txt1 {
  margin: 0 0 .3rem;
}

.company_message_wrap .mod_txt3 + .mod_txt3 {
  margin-top: .3rem;
}

.company_message_wrap .sign {
  margin-top: .5rem;
  font-size: .12rem;
  line-height: 2.08;
}

@media screen and (max-width: 767px) {
  .company_message {
    padding: 0 0 .75rem;
  }
  .company_message_wrap {
    padding: .3rem 0 0;
    border-top: 1px solid #d3d1d0;
  }
  .company_message_wrap .mod_txt1 {
    margin: 0 0 .15rem;
  }
  .company_message_wrap .mod_txt3 + .mod_txt3 {
    margin-top: .2rem;
  }
  .company_message_wrap .sign {
    margin-top: .45rem;
  }
}

/* お問い合わせ
--------------------------------------------------------------*/
/* form ----------- */
input,
textarea,
select {
  width: 100%;
  border: none;
  color: #231815;
  font-size: .13rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  border: .005rem solid #918b8a;
  background: none;
  outline: none;
}

@media screen and (max-width: 767px) {
  input,
  textarea,
  select {
    font-size: .16rem;
  }
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #aaa;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #aaa;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #aaa;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
}

input::placeholder,
textarea::placeholder {
  color: #aaa;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  input::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    font-size: .125rem;
  }
  input:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    font-size: .125rem;
  }
  input::-ms-input-placeholder,
  textarea::-ms-input-placeholder {
    font-size: .125rem;
  }
  input::placeholder,
  textarea::placeholder {
    font-size: .125rem;
  }
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #aaa;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  input:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    font-size: .125rem;
  }
}

input::-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #aaa;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #aaa;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
}

input::-ms-input-placeholder,
textarea::placeholder {
  color: #aaa;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  input::-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    font-size: .125rem;
  }
  input::-ms-input-placeholder,
  textarea::-ms-input-placeholder {
    font-size: .125rem;
  }
  input::-ms-input-placeholder,
  textarea::placeholder {
    font-size: .125rem;
  }
}

input[type="number"] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

input[type="date"]::-webkit-inner-spin-button {
  appearance: none;
  -webkit-appearance: none;
}

input[type="date"]::-webkit-clear-button {
  appearance: none;
  -webkit-appearance: none;
}

input {
  min-height: .5rem;
  padding: .05rem .16rem;
}

@media screen and (max-width: 767px) {
  input {
    padding: .05rem .13rem;
  }
}

textarea {
  height: 2.08rem;
  padding: .15rem .16rem;
  resize: vertical;
}

@media screen and (max-width: 767px) {
  textarea {
    height: 3.05rem;
    padding: .13rem;
  }
}

.top_contact {
  padding: 1.55rem .32rem 0;
}

.top_contact .note {
  margin: .3rem 0 0;
  font-size: .12rem;
}

.top_contact .form {
  margin: .55rem 0 0;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.top_contact .form dt,
.top_contact .form dd {
  font-size: .13rem;
}

.top_contact .form dt {
  padding: .2rem 0 0;
  width: 2.08rem;
}

.top_contact .form dt.add {
  padding: .03rem 0 0;
}

.top_contact .form dt .req {
  float: right;
  margin-right: .1rem;
  font-size: .12rem;
}

.top_contact .form dd {
  width: calc(100% - 2.08rem);
  padding: 0 0 .25rem;
}

.top_contact .form dd.radio input[type="radio"] {
  /* ラジオボタンの外枠 */
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  /* デフォルトのスタイルを削除 */
  width: .2rem;
  height: .2rem;
  min-height: auto;
  padding: 0;
  margin: 0 .2rem 0 .1rem;
  border-radius: 50%;
  border: 1px solid #918b8a;
  vertical-align: -.05rem;
  outline: none;
  position: relative;
}

.top_contact .form dd.radio input[type="radio"]::before {
  /* ラジオボタンの内側の● */
  display: block;
  content: "";
  width: .08rem;
  height: .08rem;
  border-radius: .04rem;
  background-color: #918b8a;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transform: translate(0.05rem, 0.05rem) scale(0);
          transform: translate(0.05rem, 0.05rem) scale(0);
  -webkit-transition: all 0.3s cubic-bezier(0.25, 0.25, 0.56, 2);
  transition: all 0.3s cubic-bezier(0.25, 0.25, 0.56, 2);
}

.top_contact .form dd.radio input[type="radio"]:checked::before {
  -webkit-transform: translate(0.05rem, 0.05rem) scale(1);
          transform: translate(0.05rem, 0.05rem) scale(1);
}

.top_contact .form dd.radio label {
  display: inline-block;
  width: 100%;
  margin: 0 0 .15rem;
  cursor: pointer;
  vertical-align: middle;
}

@media screen and (max-width: 767px) {
  .top_contact {
    padding: .65rem 0 0;
  }
  .top_contact .note {
    margin: .17rem 0 0;
    font-size: .105rem;
  }
  .top_contact .form {
    margin: .45rem 0 0;
  }
  .top_contact .form dt,
  .top_contact .form dd {
    font-size: .125rem;
  }
  .top_contact .form dt {
    width: 100%;
    padding: 0 0 .12rem;
  }
  .top_contact .form dt.add {
    padding: 0 0 .12rem;
  }
  .top_contact .form dt.add2 {
    padding: 0 0 .3rem;
  }
  .top_contact .form dt .req {
    float: none;
    margin-right: 0;
    margin-left: .12rem;
    font-size: .105rem;
  }
  .top_contact .form dd {
    width: 100%;
    padding: 0 0 .23rem;
  }
}

/* form_btn ----------- */
.form_btn {
  margin: .25rem 0 .45rem;
}

.form_btn input {
  display: inline-block;
  width: 3rem;
  height: .5rem;
  line-height: .5rem;
  min-height: 100%;
  margin: 0 .06rem;
  padding: 0;
  font-size: .13rem;
  font-family: "Zen Old Mincho", serif;
  border-radius: .25rem;
  border-color: #a7a3a1;
  cursor: pointer;
  -webkit-transition-duration: .6s;
          transition-duration: .6s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}

.form_btn input:hover {
  opacity: .5;
}

@media screen and (max-width: 767px) {
  .form_btn {
    margin: .37rem 0 .17rem;
  }
  .form_btn input {
    width: 2.55rem;
    height: .425rem;
    line-height: .425rem;
    margin: 0 .06rem;
    font-size: .125rem;
    border-radius: .215rem;
  }
}

/* privacy ----------- */
.privacy {
  color: #918b8a;
  font-size: .13rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 500;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  text-align: center;
}

.privacy a {
  color: #918b8a;
  text-decoration: underline;
}

@media screen and (max-width: 767px) {
  .privacy {
    font-size: .105rem;
  }
}

/* 確認画面
--------------------------------------------------------------*/
.confirm_page .top_contact {
  padding: 2.3rem .32rem 1.5rem;
}

.confirm_page .top_contact .mod_title,
.confirm_page .top_contact .mod_txt1 {
  text-align: center;
}

.confirm_page .top_contact .form dt,
.confirm_page .top_contact .form dd {
  min-height: 0.5rem;
  margin: 0 0 .25rem;
  line-height: 2.08;
}

.confirm_page .top_contact .form dt {
  padding: 0 0 .25rem;
}

.confirm_page .top_contact .form dt.add {
  padding: 0 0 .25rem;
}

.confirm_page .top_contact .form dd {
  padding: 0 .3rem;
}

.confirm_page .top_contact .form_btn input.back {
  width: 1.8rem;
  height: 0.4rem;
  line-height: .4rem;
  background-color: #a7a3a1;
}

@media screen and (max-width: 767px) {
  .confirm_page .top_contact {
    padding: .5rem 0 .75rem;
  }
  .confirm_page .top_contact .form dt,
  .confirm_page .top_contact .form dd {
    min-height: auto;
    margin: 0;
  }
  .confirm_page .top_contact .form dt {
    padding: 0;
  }
  .confirm_page .top_contact .form dd {
    padding: 0 0 .2rem;
  }
  .confirm_page .top_contact .form_btn input.back {
    width: 1.4rem;
    height: .3rem;
    margin: 0 0 .15rem;
    line-height: .3rem;
  }
}

/* 送信完了
--------------------------------------------------------------*/
.thanks_page .top_contact {
  padding: 2.3rem 0 3.1rem;
}

.thanks_page .top_contact .mod_title,
.thanks_page .top_contact .mod_txt1 {
  text-align: center;
}

@media screen and (min-width: 768px) {
  .thanks_page .top_contact .mod_txt3 {
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .thanks_page .top_contact {
    padding: .5rem 0 .75rem;
  }
}
/*# sourceMappingURL=style.css.map */