@charset "UTF-8";
/*--------------------------
Break point
---------------------------*/
/*--------------------------
Button
---------------------------*/
/*--------------------------
Text Link
---------------------------*/
/*--------------------------
Include icon
https://fontello.com/
---------------------------*/
@font-face {
  font-family: "fontello";
  src: url("/asset/font/fontello.eot?65564972");
  src: url("/asset/font/fontello.eot?65564972#iefix") format("embedded-opentype"), url("/asset/font/fontello.woff2?65564972") format("woff2"), url("/asset/font/fontello.woff?65564972") format("woff"), url("/asset/font/fontello.ttf?65564972") format("truetype"), url("/asset/font/fontello.svg?65564972#fontello") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class$=icon-pdf]:before, [class*="icon-pdf "]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: never;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: 0.2em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  margin-left: 0.2em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-pdfmail:before {
  content: "\e800";
} /* '' */
.icon-pdfpopup:before {
  content: "\e801";
} /* '' */
.icon-pdfglobe:before {
  content: "\e802";
} /* '' */
.icon-pdfdown-open:before {
  content: "\e803";
} /* '' */
.icon-pdfleft-open:before {
  content: "\e804";
} /* '' */
.icon-pdfright-open:before {
  content: "\e805";
} /* '' */
.icon-pdfup-open:before {
  content: "\e806";
} /* '' */
.icon-pdf-arrow-drop-down_89977:before {
  content: "\e807";
} /* '' */
.icon-pdfstopwatch:before {
  content: "\e808";
} /* '' */
.icon-pdfrestaurant:before {
  content: "\e832";
} /* '' */
.icon-pdfangle-double-left:before {
  content: "\f100";
} /* '' */
.icon-pdfangle-double-right:before {
  content: "\f101";
} /* '' */
/*--------------------------
purpose
---------------------------*/
/*--------------------------
FontSet Default
---------------------------*/
@font-face {
  font-family: "Noto Sans JP";
  src: url("/asset/font/NotoSansJP-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "Noto Sans JP";
  src: url("/asset/font/NotoSansJP-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
/*--------------------------
fontSet_en01
---------------------------*/
@font-face {
  font-family: "Libre Baskerville";
  src: url("/asset/font/LibreBaskerville-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Libre Baskerville";
  src: url("/asset/font/LibreBaskerville-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
/*--------------------------
fontSet_en02
---------------------------*/
@font-face {
  font-family: "Comfortaa";
  src: url("/asset/font/Montserrat-Regular.ttf") format("truetype");
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Comfortaa";
  src: url("/asset/font/Montserrat-Medium.ttf") format("truetype");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "Comfortaa";
  src: url("/asset/font/Montserrat-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: "Comfortaa";
  src: url("/asset/font/Montserrat-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}
/*--------------------------
mixin
---------------------------*/
/*--------------------------
Fade-in
---------------------------*/
.fade-in {
  opacity: 0;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: 1.6s;
  transition: 1.6s;
  will-change: opacity, transform;
}
@media only screen and (max-width: 560px) {
  .fade-in {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.fade-in.is-show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.fade-in-up01 {
  opacity: 0;
  -webkit-transform: translate(0, 40px);
          transform: translate(0, 40px);
  -webkit-transition: 1.6s;
  transition: 1.6s;
  will-change: opacity, transform;
}
@media only screen and (max-width: 560px) {
  .fade-in-up01 {
    -webkit-transform: translate(0, 20px);
            transform: translate(0, 20px);
  }
}
.fade-in-up01.is-show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.fade-in-bottom01 {
  opacity: 0;
  -webkit-transform: translate(0, -60px);
          transform: translate(0, -60px);
  -webkit-transition: 1s;
  transition: 1s;
  will-change: opacity, transform;
}
@media only screen and (max-width: 560px) {
  .fade-in-bottom01 {
    -webkit-transform: translate(0, -20px);
            transform: translate(0, -20px);
  }
}
.fade-in-bottom01.is-show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.fade-in-right01 {
  opacity: 0;
  -webkit-transform: translate(60px, 0);
          transform: translate(60px, 0);
  -webkit-transition: 1s;
  transition: 1s;
  will-change: opacity, transform;
}
@media only screen and (max-width: 560px) {
  .fade-in-right01 {
    -webkit-transform: translate(20px, 0);
            transform: translate(20px, 0);
  }
}
.fade-in-right01.is-show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.fade-in-left01 {
  opacity: 0;
  -webkit-transform: translate(-60px, 0);
          transform: translate(-60px, 0);
  -webkit-transition: 2s;
  transition: 2s;
  will-change: opacity, transform;
}
@media only screen and (max-width: 560px) {
  .fade-in-left01 {
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
  }
}
.fade-in-left01.is-show {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

/*--------------------------
header
---------------------------*/
#header.fixed02 {
  padding: 20px 2% 20px 6%;
  height: 73px;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.05);
}
@media only screen and (max-width: 1080px) {
  #header.fixed02 {
    height: 80px;
  }
}
#header.fixed02 .logo {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  width: 150px;
}
@media only screen and (max-width: 1080px) {
  #header.fixed02 .logo {
    width: 140px;
  }
}
#header.fixed02 #global_nav .menu_list li > a {
  padding: 18px 15px;
}
@media only screen and (max-width: 1080px) {
  #header.fixed02 #global_nav .menu_list li > a {
    padding: 20px 15px;
  }
  #header.fixed02 #global_nav .menu_list li > a.user {
    padding: 20px 15px 20px 40px;
  }
  #header.fixed02 #global_nav .menu_list li > a.shop {
    padding: 20px 15px 20px 40px;
  }
}
#header.fixed02 #global_nav .pc_cart_navi {
  padding-bottom: 12px;
}
#header.fixed02 #global_nav .menu_list li .accordion-menu {
  top: 73px;
}
@media only screen and (max-width: 1080px) {
  #header.fixed02 #global_nav .menu_list li .accordion-menu {
    position: static;
    border-top: none;
  }
}

/*
 *  Remodal - v1.1.1
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's necessary styles
   ========================================================================== */
/* Hide scroll bar */
html.remodal-is-locked {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
}

/* Anti FOUC */
.remodal,
[data-remodal-id] {
  display: none;
}

/* Necessary styles of the overlay */
.remodal-overlay {
  position: fixed;
  z-index: 9999;
  top: -5000px;
  right: -5000px;
  bottom: -5000px;
  left: -5000px;
  display: none;
}

/* Necessary styles of the wrapper */
.remodal-wrapper {
  position: fixed;
  z-index: 10000;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  overflow: auto;
  text-align: center;
  -webkit-overflow-scrolling: touch;
}

.remodal-wrapper:after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  content: "";
}

/* Fix iPad, iPhone glitches */
.remodal-overlay,
.remodal-wrapper {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Necessary styles of the modal dialog */
.remodal {
  position: relative;
  outline: none;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
       text-size-adjust: 100%;
}

.remodal-is-initialized {
  /* Disable Anti-FOUC */
  display: inline-block;
}

/*
 *  Remodal - v1.1.1
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's default mobile first theme
   ========================================================================== */
/* Default theme styles for the background */
.remodal-bg.remodal-is-opening,
.remodal-bg.remodal-is-opened {
  -webkit-filter: blur(3px);
  filter: blur(3px);
}

/* Default theme styles of the overlay */
.remodal-overlay {
  background: rgba(43, 46, 56, 0.9);
}

.remodal-overlay.remodal-is-opening,
.remodal-overlay.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.remodal-overlay.remodal-is-opening {
  -webkit-animation-name: remodal-overlay-opening-keyframes;
  animation-name: remodal-overlay-opening-keyframes;
}

.remodal-overlay.remodal-is-closing {
  -webkit-animation-name: remodal-overlay-closing-keyframes;
  animation-name: remodal-overlay-closing-keyframes;
}

/* Default theme styles of the wrapper */
.remodal-wrapper {
  padding: 10px 10px 0;
}

/* Default theme styles of the modal dialog */
.remodal {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  margin-bottom: 10px;
  padding: 35px;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  color: #2b2e38;
  background: #fff;
}

.remodal.remodal-is-opening,
.remodal.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.remodal.remodal-is-opening {
  -webkit-animation-name: remodal-opening-keyframes;
  animation-name: remodal-opening-keyframes;
}

.remodal.remodal-is-closing {
  -webkit-animation-name: remodal-closing-keyframes;
  animation-name: remodal-closing-keyframes;
}

/* Vertical align of the modal dialog */
.remodal,
.remodal-wrapper:after {
  vertical-align: middle;
}

/* Close button */
.remodal-close {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  overflow: visible;
  width: 35px;
  height: 35px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  text-decoration: none;
  color: #95979c;
  border: 0;
  outline: 0;
  background: transparent;
}

.remodal-close:hover,
.remodal-close:focus {
  color: #2b2e38;
}

.remodal-close:before {
  font-family: Arial, "Helvetica CY", "Nimbus Sans L", sans-serif !important;
  font-size: 25px;
  line-height: 35px;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 35px;
  content: "×";
  text-align: center;
}

/* Dialog buttons */
.remodal-confirm,
.remodal-cancel {
  font: inherit;
  display: inline-block;
  overflow: visible;
  min-width: 110px;
  margin: 0;
  padding: 12px 0;
  cursor: pointer;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border: 0;
  outline: 0;
}

.remodal-confirm {
  color: #fff;
  background: #81c784;
}

.remodal-confirm:hover,
.remodal-confirm:focus {
  background: #66bb6a;
}

/* Remove inner padding and border in Firefox 4+ for the button tag. */
.remodal-confirm::-moz-focus-inner,
.remodal-cancel::-moz-focus-inner,
.remodal-close::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/* Keyframes
   ========================================================================== */
@-webkit-keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}
@keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}
@-webkit-keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}
@keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0);
  }
}
@-webkit-keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@-webkit-keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Media queries
   ========================================================================== */
@media only screen and (min-width: 641px) {
  .remodal {
    max-width: 700px;
  }
}
/* IE8
   ========================================================================== */
.lt-ie9 .remodal-overlay {
  background: #2b2e38;
}

.lt-ie9 .remodal {
  width: 700px;
}

.main_container {
  background: #000;
}

section {
  width: 1440px;
  margin: 0 auto;
}
@media only screen and (max-width: 560px) {
  section {
    width: 100%;
  }
}

#breadcrumb {
  width: 1440px;
  margin: 0 auto;
  padding: 12px 20px;
}
@media only screen and (max-width: 560px) {
  #breadcrumb {
    display: none;
  }
} /*--------------------------
main visual
---------------------------*/
#main_visual {
  width: 1440px;
  margin: 0 auto;
}
@media only screen and (max-width: 560px) {
  #main_visual {
    width: 100%;
  }
}
#main_visual.product_pic01 {
  height: 400px;
  background: url("/asset/image/brand/main_visual_pic01.png") no-repeat right #fff;
  background-size: cover;
}
@media only screen and (max-width: 1600px) {
  #main_visual.product_pic01 {
    background-position: 65% right;
  }
}
@media only screen and (max-width: 560px) {
  #main_visual.product_pic01 {
    height: 160px;
    background-position: 70% 50%;
  }
}
#main_visual.product_pic01 h1 {
  font-family: "Libre Baskerville";
  font-weight: 400;
  font-size: 16px;
  font-size: 58px;
  font-weight: 400;
  line-height: 135%;
  letter-spacing: 1px;
  width: 100%;
  height: 400px;
  display: table;
  vertical-align: middle;
}
@media only screen and (max-width: 560px) {
  #main_visual.product_pic01 h1 {
    font-size: 14px;
  }
}
@media only screen and (max-width: 560px) {
  #main_visual.product_pic01 h1 {
    font-size: 24px;
    height: 200px;
  }
}
#main_visual.product_pic01 h1 .table_cell {
  display: table-cell;
  width: 100%;
  height: 100%;
  vertical-align: middle;
}

/*--------------------------
#section01
---------------------------*/
#section01 {
  padding: 240px 0;
  background: url("/asset/image/brand/sec01_bg01.png") no-repeat center top #fff;
}
@media only screen and (max-width: 560px) {
  #section01 {
    background-size: contain;
    padding: 55% 0 120px;
  }
}
#section01 p {
  font-family: "Noto Serif JP", serif;
  font-size: 24px;
  letter-spacing: 1px;
  margin-bottom: 20px;
}
@media only screen and (max-width: 560px) {
  #section01 p {
    font-size: 18px;
    text-align: center;
    margin-bottom: 14px;
  }
}
#section01 h2 {
  font-family: "Libre Baskerville";
  font-weight: 400;
  font-size: 16px;
  font-size: 42px;
  font-weight: 400;
  letter-spacing: 1px;
  padding-bottom: 32px;
  margin-bottom: 28px;
  position: relative;
}
@media only screen and (max-width: 560px) {
  #section01 h2 {
    font-size: 14px;
  }
}
@media only screen and (max-width: 560px) {
  #section01 h2 {
    font-size: 20px;
    text-align: center;
    padding-bottom: 16px;
    margin-bottom: 16px;
  }
}
#section01 h2::before {
  content: "";
  background: #000;
  width: 90px;
  height: 1px;
  position: absolute;
  left: 0;
  bottom: 0;
}
@media only screen and (max-width: 560px) {
  #section01 h2::before {
    left: 0;
    right: 0;
    margin: auto;
  }
}
#section01 .read_box p {
  font-size: 18px;
  line-height: 260%;
}
@media only screen and (max-width: 560px) {
  #section01 .read_box p {
    font-size: 14px;
    line-height: 200%;
  }
}
#section01 ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 28px 0 46px;
}
@media only screen and (max-width: 560px) {
  #section01 ul {
    display: block;
    margin: 14px 0 30px;
  }
}
#section01 ul li {
  font-size: 14px;
  padding: 0 8px;
}
@media only screen and (max-width: 560px) {
  #section01 ul li {
    font-size: 10px;
    margin-bottom: 6px;
  }
}
#section01 a {
  font-family: "Montserrat";
  font-weight: 400;
  font-size: 16px;
  font-weight: 400;
  font-size: 16px;
  text-align: center;
  display: block;
  border: solid 1px #000;
  padding: 18px 0;
  width: 220px;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-box-shadow: 0 0 1px transparent;
          box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
}
@media only screen and (max-width: 560px) {
  #section01 a {
    font-size: 14px;
  }
}
#section01 a::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  background: #77787b;
}
#section01 a::after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  content: "\e805";
  top: 19px;
  right: 14px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#section01 a:hover {
  color: #fff;
}
#section01 a:hover:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
#section01 a:hover::after {
  right: 6px;
}
@media only screen and (max-width: 560px) {
  #section01 a {
    background: #fff;
    margin: 0 auto;
  }
}
#section01 a::after {
  content: "\e801";
}

/*--------------------------
#section02
---------------------------*/
#section02 {
  text-align: center;
  padding: 0 0 1253px;
  background: url("/asset/image/brand/sec02_bg01.png") no-repeat center bottom #fff;
  background-size: cover;
}
@media only screen and (max-width: 560px) {
  #section02 {
    padding: 0 0 70%;
    background-size: contain;
  }
}
#section02 h2 {
  font-family: "Libre Baskerville";
  font-weight: 400;
  font-size: 16px;
  font-size: 42px;
  font-weight: 400;
  letter-spacing: 1px;
  padding-bottom: 32px;
  margin-bottom: 28px;
  position: relative;
}
@media only screen and (max-width: 560px) {
  #section02 h2 {
    font-size: 14px;
  }
}
@media only screen and (max-width: 560px) {
  #section02 h2 {
    font-size: 20px;
    padding-bottom: 16px;
    margin-bottom: 16px;
  }
}
#section02 h2::before {
  content: "";
  background: #000;
  width: 90px;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
#section02 .read_box {
  margin-bottom: 46px;
}
@media only screen and (max-width: 560px) {
  #section02 .read_box {
    text-align: left;
    margin-bottom: 30px;
  }
}
#section02 .read_box p {
  font-size: 18px;
  line-height: 260%;
}
@media only screen and (max-width: 560px) {
  #section02 .read_box p {
    font-size: 14px;
    line-height: 200%;
  }
}
#section02 a {
  font-family: "Montserrat";
  font-weight: 400;
  font-size: 16px;
  font-weight: 400;
  font-size: 16px;
  text-align: center;
  display: block;
  border: solid 1px #000;
  padding: 18px 0;
  width: 220px;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-box-shadow: 0 0 1px transparent;
          box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  margin: 0 auto;
}
@media only screen and (max-width: 560px) {
  #section02 a {
    font-size: 14px;
  }
}
#section02 a::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  background: #77787b;
}
#section02 a::after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  content: "\e805";
  top: 19px;
  right: 14px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#section02 a:hover {
  color: #fff;
}
#section02 a:hover:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
#section02 a:hover::after {
  right: 6px;
}
@media only screen and (max-width: 560px) {
  #section02 a {
    background: #fff;
  }
}
#section02 a::after {
  content: "\e801";
}

/*--------------------------
#section03
---------------------------*/
#section03 {
  background: #fff;
}
#section03 h2 {
  font-family: "Libre Baskerville";
  font-weight: 400;
  font-size: 16px;
  font-size: 42px;
  font-weight: 400;
  text-align: center;
  letter-spacing: 1px;
  padding-bottom: 32px;
  margin-bottom: 32px;
  position: relative;
}
@media only screen and (max-width: 560px) {
  #section03 h2 {
    font-size: 14px;
  }
}
@media only screen and (max-width: 560px) {
  #section03 h2 {
    font-size: 20px;
    padding-bottom: 16px;
    margin-bottom: 10px;
  }
}
#section03 h2::before {
  content: "";
  background: #000;
  width: 90px;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
#section03 .read_box {
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 560px) {
  #section03 .read_box {
    margin-bottom: 30px;
  }
}
#section03 .read_box p {
  font-size: 18px;
  line-height: 240%;
}
@media only screen and (max-width: 560px) {
  #section03 .read_box p {
    font-size: 14px;
    line-height: 200%;
    text-align: left;
  }
}
#section03 .read_box p.en {
  font-family: "Libre Baskerville";
  font-size: 32px;
}
@media only screen and (max-width: 560px) {
  #section03 .read_box p.en {
    font-size: 18px;
    text-align: center;
  }
}
#section03 a {
  font-family: "Montserrat";
  font-weight: 400;
  font-size: 16px;
  font-weight: 400;
  font-size: 16px;
  text-align: center;
  display: block;
  border: solid 1px #000;
  padding: 18px 0;
  width: 220px;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-box-shadow: 0 0 1px transparent;
          box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  margin: 0 auto;
}
@media only screen and (max-width: 560px) {
  #section03 a {
    font-size: 14px;
  }
}
#section03 a::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  background: #77787b;
}
#section03 a::after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  content: "\e805";
  top: 19px;
  right: 14px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#section03 a:hover {
  color: #fff;
}
#section03 a:hover:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
#section03 a:hover::after {
  right: 6px;
}
@media only screen and (max-width: 560px) {
  #section03 a {
    background: #fff;
  }
}
#section03 a::after {
  content: "\e801";
}

/*--------------------------
#section04
---------------------------*/
#section04 {
  padding: 360px 0 120px;
  background: url("/asset/image/brand/sec04_bg01.png") no-repeat center top #fff;
}
@media only screen and (max-width: 560px) {
  #section04 {
    padding: 100px 0 50px;
    background-size: contain;
  }
}
#section04 h2 {
  font-family: "Libre Baskerville";
  font-weight: 400;
  font-size: 16px;
  font-size: 42px;
  font-weight: 400;
  text-align: center;
  letter-spacing: 1px;
  padding-bottom: 32px;
  margin-bottom: 32px;
  position: relative;
}
@media only screen and (max-width: 560px) {
  #section04 h2 {
    font-size: 14px;
  }
}
@media only screen and (max-width: 560px) {
  #section04 h2 {
    font-size: 20px;
    padding-bottom: 12px;
    margin-bottom: 12px;
  }
}
#section04 h2::before {
  content: "";
  background: #000;
  width: 90px;
  height: 1px;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}
#section04 .read_box01 {
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 560px) {
  #section04 .read_box01 {
    margin-bottom: 16px;
  }
}
#section04 .read_box01 p {
  font-size: 20px;
  line-height: 240%;
}
@media only screen and (max-width: 560px) {
  #section04 .read_box01 p {
    font-size: 16px;
  }
}
#section04 .history {
  display: block;
  width: 1000px;
  margin: 0 auto 60px;
}
@media only screen and (max-width: 560px) {
  #section04 .history {
    width: 100%;
    margin: 0 auto 30px;
  }
}
#section04 .history li {
  margin-bottom: 32px;
}
@media only screen and (max-width: 560px) {
  #section04 .history li {
    margin-bottom: 12px;
  }
}
#section04 .history li:last-child {
  margin-bottom: 0;
}
#section04 .history li dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  line-height: 180%;
}
@media only screen and (max-width: 560px) {
  #section04 .history li dl {
    line-height: 150%;
  }
}
#section04 .history li dl dt {
  width: 106px;
}
@media only screen and (max-width: 560px) {
  #section04 .history li dl dt {
    width: 76px;
  }
}
#section04 .history li dl dt .en {
  font-family: "Libre Baskerville";
  font-size: 24px;
  width: 58px;
  display: inline-block;
}
@media only screen and (max-width: 560px) {
  #section04 .history li dl dt .en {
    font-size: 18px;
    width: 42px;
  }
}
#section04 .history li dl dd {
  width: calc(100% - 106px);
}
@media only screen and (max-width: 560px) {
  #section04 .history li dl dd {
    width: calc(100% - 76px);
  }
}
#section04 .read_box02 {
  width: 1040px;
  margin: 0 auto 60px;
}
@media only screen and (max-width: 560px) {
  #section04 .read_box02 {
    width: 100%;
    margin: 0 auto 30px;
  }
}
#section04 .read_box02 p {
  line-height: 240%;
}
@media only screen and (max-width: 560px) {
  #section04 .read_box02 p {
    line-height: 200%;
  }
}
#section04 a {
  font-family: "Montserrat";
  font-weight: 400;
  font-size: 16px;
  font-weight: 400;
  font-size: 16px;
  text-align: center;
  display: block;
  border: solid 1px #000;
  padding: 18px 0;
  width: 220px;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-box-shadow: 0 0 1px transparent;
          box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  margin: 0 auto;
}
@media only screen and (max-width: 560px) {
  #section04 a {
    font-size: 14px;
  }
}
#section04 a::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  background: #77787b;
}
#section04 a::after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  content: "\e805";
  top: 19px;
  right: 14px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
#section04 a:hover {
  color: #fff;
}
#section04 a:hover:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
#section04 a:hover::after {
  right: 6px;
}
@media only screen and (max-width: 560px) {
  #section04 a {
    background: #fff;
  }
}
#section04 a::after {
  content: "\e801";
}

/*--------------------------
modal
---------------------------*/
.remodal {
  max-width: 1000px;
  background: #fff;
  text-align: left;
  padding: 50px 34px;
  border-radius: 6px;
  position: relative;
}
@media only screen and (max-width: 560px) {
  .remodal {
    padding: 60px 16px 16px;
  }
}
.remodal .close_top {
  position: absolute;
  right: 20px;
  top: 20px;
}
@media only screen and (max-width: 560px) {
  .remodal .close_top {
    right: 14px;
    top: 14px;
  }
}
.remodal .round_btn {
  display: block;
  position: relative;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #666;
}
.remodal .round_btn::before, .remodal .round_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px;
  height: 21px;
  background: #fff;
}
.remodal .round_btn::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.remodal .round_btn::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.remodal h3 {
  font-family: "Libre Baskerville";
  font-weight: 400;
  font-size: 16px;
  font-size: 28px;
  text-align: center;
  margin-bottom: 50px;
}
@media only screen and (max-width: 560px) {
  .remodal h3 {
    font-size: 14px;
  }
}
@media only screen and (max-width: 560px) {
  .remodal h3 {
    font-size: 20px;
    line-height: 150%;
    margin-bottom: 14px;
  }
}
.remodal h4 {
  font-weight: 500;
  font-size: 20px;
  line-height: 160%;
  margin-bottom: 30px;
  text-align: center;
}
@media only screen and (max-width: 560px) {
  .remodal h4 {
    font-size: 16px;
    text-align: left;
    margin-bottom: 14px;
  }
}
.remodal h4.md_04 {
  text-align: center;
}
@media only screen and (max-width: 560px) {
  .remodal h4.md_04 {
    text-align: left;
  }
}
.remodal .read_box01 {
  text-align: center;
}
@media only screen and (max-width: 560px) {
  .remodal .read_box01 {
    text-align: left;
  }
}
.remodal .read_box01 p {
  line-height: 240%;
  margin-bottom: 10px;
}
@media only screen and (max-width: 560px) {
  .remodal .read_box01 p {
    line-height: 180%;
  }
}
.remodal .read_box02 dl {
  margin-bottom: 40px;
}
.remodal .read_box02 dl dt {
  font-weight: 500;
  font-size: 22px;
  line-height: 160%;
  margin-bottom: 6px;
}
.remodal .read_box02 dl dd {
  line-height: 220%;
}
.remodal .read_box03 p {
  line-height: 240%;
  margin-bottom: 10px;
}
@media only screen and (max-width: 560px) {
  .remodal .read_box03 p {
    line-height: 180%;
  }
}
.remodal .pic {
  display: block;
  margin: 0 auto 40px;
}
@media only screen and (max-width: 560px) {
  .remodal .pic {
    margin: 0 auto 10px;
  }
}
.remodal .read_box04 {
  width: 820px;
  margin: 0 auto 20px;
}
@media only screen and (max-width: 560px) {
  .remodal .read_box04 {
    width: 100%;
    margin: 0 auto 10px;
  }
}
.remodal .read_box04 p {
  line-height: 240%;
  margin-bottom: 10px;
}
@media only screen and (max-width: 560px) {
  .remodal .read_box04 p {
    line-height: 180%;
  }
}
.remodal .note01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 20px 0 60px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 560px) {
  .remodal .note01 {
    display: block;
    margin: 8px 0 30px;
  }
}
.remodal .note01 li {
  font-size: 14px;
  padding: 0 8px;
  margin-bottom: 16px;
}
@media only screen and (max-width: 560px) {
  .remodal .note01 li {
    font-size: 10px;
    text-align: right;
    margin-bottom: 6px;
    padding: 0;
  }
}
.remodal .note02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 20px 0 46px;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
@media only screen and (max-width: 560px) {
  .remodal .note02 {
    display: block;
    margin: 8px 0 30px;
  }
}
.remodal .note02 li {
  font-size: 14px;
  padding: 0 8px;
}
@media only screen and (max-width: 560px) {
  .remodal .note02 li {
    font-size: 10px;
    text-align: right;
    margin-bottom: 6px;
    padding: 0;
  }
}
.remodal .note03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 20px 0 46px;
}
@media only screen and (max-width: 560px) {
  .remodal .note03 {
    display: block;
    margin: 8px 0 30px;
  }
}
.remodal .note03 li {
  font-size: 14px;
  padding: 0 8px;
}
@media only screen and (max-width: 560px) {
  .remodal .note03 li {
    font-size: 10px;
    text-align: right;
    margin-bottom: 6px;
    padding: 0;
  }
}
.remodal .remodal-cancel {
  font-family: "Montserrat";
  font-weight: 400;
  font-size: 16px;
  font-weight: 400;
  font-size: 16px;
  text-align: center;
  display: block;
  border: solid 1px #000;
  padding: 18px 0;
  width: 220px;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  -webkit-box-shadow: 0 0 1px transparent;
          box-shadow: 0 0 1px transparent;
  position: relative;
  -webkit-transition-property: color;
  transition-property: color;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  margin: 0 auto;
}
@media only screen and (max-width: 560px) {
  .remodal .remodal-cancel {
    font-size: 14px;
  }
}
.remodal .remodal-cancel::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  -webkit-transition-property: transform;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  background: #77787b;
}
.remodal .remodal-cancel::after {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  content: "\e805";
  top: 19px;
  right: 14px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.remodal .remodal-cancel:hover {
  color: #fff;
}
.remodal .remodal-cancel:hover:before {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
.remodal .remodal-cancel:hover::after {
  right: 6px;
}
.remodal .remodal-cancel::after {
  content: "";
}