html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: normal;
  line-height: inherit;
  text-decoration: none;
  vertical-align: baseline; }

article, aside, details, figcaption, figure, picture,
footer, header, menu, nav, section, main, canvas, picture {
  display: block; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

input, textarea {
  font-family: inherit;
  font-size: inherit;
  margin: 0;
  padding: 0; }

select, option, button {
  font-family: inherit;
  font-size: inherit; }

input.styleReset, button.styleReset, textarea.styleReset, select.styleReset {
  color: inherit;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box; }

.list {
  list-style: none;
  margin: 0;
  padding: 0; }

a {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: inherit;
  font-weight: inherit;
  font-style: inherit;
  text-decoration: none;
  vertical-align: baseline; }

html {
  font-size: calc(10vw / 4.5);
  -webkit-font-smoothing: antialiased; }

body {
  overflow-x: hidden;
  color: #1a1a1a;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 1.4rem;
  line-height: 1;
  background-color: #ffffff;
  -webkit-text-size-adjust: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

body.lock,
body.loading {
  overflow: hidden;
  width: 100vw;
  height: 100vh; }

@media screen and (min-width: 769px) {
  html {
    font-size: 10px; }

  body {
    font-size: 1.6rem;
    line-height: 1; } }
* {
  -webkit-tap-highlight-color: transparent; }

a {
  cursor: pointer;
  color: inherit;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  text-decoration: none; }

p, dt, dd, li {
  word-break: break-word;
  word-wrap: normal; }

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: top; }

button {
  cursor: pointer;
  font-family: inherit;
  touch-action: manipulation; }

.ib {
  display: inline-block;
  line-height: inherit;
  font-weight: inherit; }

.accordionTrigger {
  cursor: pointer;
  display: block; }

.accordionContent {
  display: none; }

.slide .photo {
  opacity: 0;
  position: absolute;
  top: 0; }
  .slide .photo:first-child {
    opacity: 1;
    position: relative; }
.slide.slick-initialized .photo {
  opacity: 1;
  position: relative; }
.slide .slick-dots {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  position: absolute;
  top: calc(100% + 0.9rem);
  left: 0;
  right: 0; }
  .slide .slick-dots li {
    overflow: hidden;
    flex-basis: 1rem;
    margin: 0 1.5rem 0 0; }
    .slide .slick-dots li:first-child:last-child {
      display: none; }
    .slide .slick-dots li button {
      margin: 0;
      padding: 0;
      background: none;
      border: none;
      border-radius: 0;
      outline: none;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      box-sizing: border-box;
      display: block;
      cursor: pointer;
      width: 100%;
      height: 1rem;
      text-indent: -9999em;
      background-color: #cecece;
      border-radius: 50%;
      transition: background-color 0.2s ease-out; }
    .slide .slick-dots li button:hover, .slide .slick-dots li.slick-active button {
      background-color: #00a297; }
.slide .slick-arrow {
  cursor: pointer;
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 10;
  width: 2.2rem;
  height: 2.3rem;
  text-indent: -9999em;
  margin: auto;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  background: url(../images/common/icon_arrow.svg) center center no-repeat;
  background-size: contain; }
  .slide .slick-arrow.slick-prev {
    left: 1.1rem; }
  .slide .slick-arrow.slick-next {
    right: 1.1rem;
    transform: rotate(180deg); }

.moverLine .line {
  position: relative;
  background-image: linear-gradient(90deg, #1a1a1a, #1a1a1a);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 100% 1px;
  transition: lineMove 0.2s ease-out; }

@media screen and (min-width: 769px) {
  /* mover */
  .mover {
    transition: opacity 0.2s ease-out;
    backface-visibility: hidden;
    zoom: 1; }
    .mover:hover {
      opacity: 0.7; }

  .moverContent > * {
    transition: opacity 0.2s ease-out;
    backface-visibility: hidden;
    zoom: 1; }
  .moverContent:hover > * {
    opacity: 0.7; } }
.modePC,
.modePCib {
  display: none; }
  .modePC.important,
  .modePCib.important {
    display: none !important; }

.modeSP {
  display: block; }
  .modeSP.important {
    display: block !important; }

.modeSPib {
  display: inline-block; }
  .modeSPib.important {
    display: inline-block !important; }

@media screen and (min-width: 769px) {
  .modePC {
    display: block; }
    .modePC.important {
      display: block !important; }

  .modePCib {
    display: inline-block; }
    .modePCib.important {
      display: inline-block !important; }

  .modeSP,
  .modeSPib {
    display: none; }
    .modeSP.important,
    .modeSPib.important {
      display: none !important; } }
@keyframes bgloop {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 195px 0; } }
@keyframes move {
  0% {
    transform: translateY(0); }
  50% {
    transform: translateY(-30px); }
  100% {
    transform: translateY(0); } }
@keyframes elasticus {
  0% {
    transform-origin: 0% 0%;
    transform: scale(1, 0); }
  50% {
    transform-origin: 0% 0%;
    transform: scale(1, 1); }
  50.1% {
    transform-origin: 0% 100%;
    transform: scale(1, 1); }
  100% {
    transform-origin: 0% 100%;
    transform: scale(1, 0); } }
@keyframes lineMove {
  0% {
    background-size: 0 2px; }
  50% {
    background-size: 0 2px; }
  100% {
    background-size: 100% 2px; } }
@keyframes wave {
  0% {
    transform: scale(0.95);
    opacity: 1; }
  90% {
    opacity: .1; }
  100% {
    transform: scale(1.2, 1.4);
    opacity: 0; } }
@keyframes blink {
  0% {
    opacity: 1; }
  15% {
    opacity: 1; }
  48% {
    opacity: 0; }
  52% {
    opacity: 0; }
  85% {
    opacity: 1; }
  100% {
    opacity: 1; } }
@keyframes mvTitleAnimation {
  0% {
    clip-path: inset(100% 0 0 0);
    transform: translateY(2rem); }
  60% {
    clip-path: inset(-5% 0 0 0); }
  100% {
    clip-path: inset(0 0 0 0);
    transform: translateY(0); } }
@keyframes scrolldown {
  0% {
    background-position: 0 100%; }
  50% {
    background-position: 0 0%; }
  100% {
    background-position: 0 -100%; } }
.wrapper {
  transition: opacity 0.3s; }
  .load_complete .wrapper {
    opacity: 1; }

.content {
  position: relative; }

.contentInner {
  width: calc(400 / 450 * 100%);
  margin: auto; }

.scrollPosition {
  margin-top: 0 !important;
  padding-top: 0 !important; }

.fadeContent {
  opacity: 0;
  transform: translateY(50px);
  transition: all 0.4s ease;
  will-change: transform, opacity; }

.fadeContent.current {
  opacity: 1;
  transform: translateY(0); }

@media screen and (min-width: 769px) {
  .scrollPosition {
    margin-top: 0 !important;
    padding-top: 0 !important; } }
#stage #scene1,
#stage #scene2 {
  display: none; }

@media screen and (min-width: 769px) {
  #stage {
    display: grid;
    grid-template-areas: "scene1 mainContents";
    grid-template-columns: 1fr 450px;
    position: relative; }
    #stage #scene1 {
      display: flex;
      align-items: center;
      justify-content: center;
      grid-area: scene1;
      position: sticky;
      top: 0;
      z-index: 2;
      height: 100vh;
      background: url(../images/common/bg_stage_left.png) left center no-repeat;
      background-size: cover; }
      #stage #scene1 .menuWrap {
        width: 80%;
        max-width: 282px;
        margin: auto; }
        #stage #scene1 .menuWrap .logo {
          padding: calc(22 / 282 * 100%) 0 calc(22 / 282 * 100%) 0; }
        #stage #scene1 .menuWrap .menu .list {
          max-width: 150px; }
          #stage #scene1 .menuWrap .menu .list .item a {
            display: block;
            position: relative; }
    #stage #scene2 {
      display: none;
      grid-area: scene2;
      position: sticky;
      top: 0;
      z-index: 2;
      height: 100vh;
      background: url(../images/common/bg_stage_right.png) right center no-repeat;
      background-size: cover; } }
@media screen and (min-width: 900px) {
  #stage {
    grid-template-areas: "scene1 mainContents scene2";
    grid-template-columns: 1fr 450px 1fr; }
    #stage #scene2 {
      display: block; }
      #stage #scene2 .logo {
        width: 70%;
        max-width: 240px;
        margin: calc(12 / 200 * 100%) calc(25 / 200 * 100%) 0 auto; } }
/* maincCntents */
#maincCntents {
  overflow: hidden; }

@media screen and (min-width: 769px) {
  #maincCntents {
    overflow: visible;
    position: relative;
    max-width: 450px;
    margin: auto; }
    #maincCntents:before, #maincCntents:after {
      content: "";
      position: absolute;
      top: 0;
      bottom: 0;
      right: 100%;
      z-index: 10;
      width: 15px;
      filter: drop-shadow(0 0 15px rgba(0, 0, 0, 0.35));
      background: linear-gradient(to left, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0));
      will-change: filter; }
    #maincCntents:after {
      left: 100%;
      right: auto;
      background: linear-gradient(to right, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0)); }
    #maincCntents .bgCategory {
      display: none;
      position: fixed;
      top: 100px;
      bottom: 0;
      left: -100vw;
      right: -100vw;
      width: 100vw;
      margin: auto; }
      #maincCntents .bgCategory.current {
        display: block; }
        #maincCntents .bgCategory.current .wrap .str {
          opacity: 1; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(1) {
            transition-delay: 0.2s; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(2) {
            transition-delay: 0.4s; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(3) {
            transition-delay: 0.6s; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(4) {
            transition-delay: 0.8s; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(5) {
            transition-delay: 1s; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(6) {
            transition-delay: 1.2s; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(7) {
            transition-delay: 1.4s; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(8) {
            transition-delay: 1.6s; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(9) {
            transition-delay: 1.8s; }
          #maincCntents .bgCategory.current .wrap .str:nth-child(10) {
            transition-delay: 2s; }
      #maincCntents .bgCategory .wrap {
        position: absolute;
        top: 0;
        right: 0;
        width: 74.5px;
        margin: 0 calc(10 / 200 * 100%) 0 auto; }
        #maincCntents .bgCategory .wrap .str {
          opacity: 0;
          margin: 0 0 6px 0;
          transition: opacity 0.3s ease-out; }
          #maincCntents .bgCategory .wrap .str.and {
            margin: 48px 0 41px 0; } }
@media screen and (min-width: 1350px) {
  #maincCntents .bgCategory .wrap {
    margin: 0 calc(25.3 / 200 * 100%) 0 auto; } }
#header {
  position: relative;
  top: 0;
  left: 0;
  right: 0; }
  #header #head {
    position: relative;
    z-index: 1000; }

#globalNav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1001; }
  #globalNav .button {
    cursor: pointer;
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 1000;
    width: calc(100 / 750 * 100vw);
    height: 0;
    padding: calc(100 / 750 * 100vw) 0 0 0;
    box-sizing: border-box; }
    #globalNav .button .wrap {
      display: flex;
      align-items: center;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: calc(45 / 100 * 100%);
      height: 0;
      padding: calc(32 / 100 * 100%) 0 0 0;
      margin: auto; }
      #globalNav .button .wrap span {
        position: absolute;
        left: 0;
        right: 0;
        height: 2px;
        background-color: #231816;
        margin: auto;
        transition: all 0.2s; }
        #globalNav .button .wrap span:nth-of-type(1) {
          top: 0; }
        #globalNav .button .wrap span:nth-of-type(2) {
          top: calc(50% - 1px); }
        #globalNav .button .wrap span:nth-of-type(3) {
          bottom: 0; }
  #globalNav .menu {
    display: none;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 999;
    height: 100vh; }
    #globalNav .menu .menuBg {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      height: 100vh; }
    #globalNav .menu .menuInner {
      overflow: auto;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      width: 100vw;
      color: #ffffff;
      background-color: #00a297;
      -webkit-overflow-scrolling: touch;
      box-sizing: border-box; }
    #globalNav .menu .wrap {
      position: relative;
      min-height: 100vh;
      min-height: 100dvh; }
      #globalNav .menu .wrap:before, #globalNav .menu .wrap:after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        padding: calc(100 / 750 * 100vw) 0 0 0; }
      #globalNav .menu .wrap:after {
        top: auto;
        bottom: 0; }
    #globalNav .menu .title {
      margin: 0 0 calc(43 / 450 * 100%) 0;
      padding: calc(193 / 450 * 100%) 0 0 0; }
    #globalNav .menu .list {
      position: relative;
      padding: 0 0 calc(245 / 450 * 100%) 0; }
  #globalNav.open .button {
    background-color: transparent; }
    #globalNav.open .button .bg {
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      width: 4.2rem;
      background-color: #000000;
      margin: auto;
      border-radius: 50%;
      aspect-ratio: 1 /1; }
    #globalNav.open .button .wrap span {
      background-color: #ffffff; }
      #globalNav.open .button .wrap span:nth-of-type(1) {
        bottom: 0;
        left: 0;
        transform: translateY(50%) translateY(-1px) rotate(-45deg); }
      #globalNav.open .button .wrap span:nth-of-type(2) {
        opacity: 0;
        left: 0; }
      #globalNav.open .button .wrap span:nth-of-type(3) {
        top: 0;
        left: 0;
        transform: translateY(-50%) translateY(1px) rotate(45deg); }

@media screen and (min-width: 769px) {
  #globalNav {
    max-width: 550px;
    margin: auto; }
    #globalNav .button {
      position: absolute;
      width: calc(100 / 750 * 100%);
      padding: calc(100 / 750 * 100%) 0 0 0; }
    #globalNav .menu .menuBg {
      max-width: 550px;
      margin: auto; }
    #globalNav .menu .menuContent {
      overflow: hidden;
      max-width: 550px;
      height: 100vh;
      margin: auto;
      filter: blur(0);
      will-change: filter; }
    #globalNav .menu .wrap:before, #globalNav .menu .wrap:after {
      padding: calc(100 / 750 * 100%) 0 0 0; } }
#footer .content {
  background-color: #ffffff;
  padding: 0 0 calc(35 / 450 * 100%) 0; }
#footer .list {
  margin: 0 0 calc(20 / 400 * 100%) 0;
  padding: calc(20 / 400 * 100%) calc(24 / 400 * 100%);
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070; }
  #footer .list .item {
    color: #707070;
    font-size: 1.2rem;
    line-height: 1.5; }
    #footer .list .item a {
      display: inline-block;
      padding: 0.3em 0; }
#footer .logo {
  width: calc(270 / 400 * 100%);
  text-align: center;
  margin: 0 auto;
  padding: calc(13 / 400 * 100%) 0 calc(24 / 400 * 100%) 0; }
#footer .copy {
  color: #707070;
  font-size: 1.2rem;
  line-height: 1.2;
  text-align: center; }

/* loading */
#loading {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1000000;
  background-color: #358470; }

.ball-pulse-sync > div {
  display: inline-block;
  width: 15px;
  height: 15px;
  background-color: #efe082;
  margin: 10px;
  border-radius: 100%;
  animation-fill-mode: both; }

.ball-pulse-sync > div:nth-child(1) {
  animation: ball-pulse-sync 0.6s -0.14s infinite ease-in-out; }

.ball-pulse-sync > div:nth-child(2) {
  animation: ball-pulse-sync 0.6s -70ms infinite ease-in-out; }

.ball-pulse-sync > div:nth-child(3) {
  animation: ball-pulse-sync 0.6s 0s infinite ease-in-out; }

@keyframes ball-pulse-sync {
  33% {
    transform: translateY(10px); }
  66% {
    transform: translateY(-10px); }
  100% {
    transform: translateY(0); } }
/* animate */
.animate {
  opacity: 0;
  transform: scale(0.6);
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0.2s; }
  .animate.current {
    opacity: 1;
    transform: scale(1); }

/* titleType01 */
/* buttonType01 */
.buttonType01 {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
  height: 5rem;
  font-size: 1.4rem;
  line-height: 1;
  background-color: #ffffff;
  border-radius: 2.5rem; }
  .buttonType01:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 2.5rem;
    width: 0.8rem;
    height: 0.8rem;
    margin: auto;
    border-top: 2px solid #000000;
    border-right: 2px solid #000000;
    transform: rotate(45deg); }

/* toTop */
#toTop {
  display: none;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 50; }
  #toTop span {
    display: block;
    width: 4.0rem;
    aspect-ratio: 28 / 44; }

@media screen and (min-width: 900px) {
  #toTop {
    right: auto;
    left: calc(50% + 240px); }
    #toTop span {
      width: 4.5rem; } }
/* firstContent */
#firstContent .content {
  position: relative;
  z-index: 10;
  background: url(../images/common/bg_mv.png) center top no-repeat;
  background-size: cover;
  margin: 0 0 calc(90 / 450 * 100%) 0;
  aspect-ratio: 450 / 647; }
#firstContent .textWrap {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  padding: calc(48 / 450 * 100%) 0 0 0; }
  #firstContent .textWrap .title {
    transform: translateY(2rem); }
    #firstContent .textWrap .title .title01 {
      display: block;
      position: relative; }
      #firstContent .textWrap .title .title01:before, #firstContent .textWrap .title .title01:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        width: calc(252.4 / 450 * 100%);
        height: 2px;
        background-color: #ffffff;
        margin: auto;
        transform: scale(0, 1);
        transform-origin: center center;
        transition: all 0.6s ease-out 0.4s; }
      #firstContent .textWrap .title .title01:after {
        top: auto;
        bottom: 0; }
      #firstContent .textWrap .title .title01 .text {
        opacity: 0;
        display: block;
        transition: all 0.6s ease-out 1.2s; }
    #firstContent .textWrap .title .title02 {
      opacity: 0;
      display: block;
      transition: all 0.6s ease-out 1.2s; }
  #firstContent .textWrap .text01 {
    opacity: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    transition: all 0.6s ease-out 1.8s; }
#firstContent .scroll {
  opacity: 0;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  width: calc(55 / 450 * 100%);
  margin: 0 auto calc(68 / 450 * 100%) auto;
  transition: all 0.6s ease-out 1.2s; }
  #firstContent .scroll:after {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 1px;
    margin: calc(8 / 55 * 100%) auto 0 auto;
    padding: calc(50 / 55 * 100%) 0 0 0;
    background-image: linear-gradient(to bottom, #ffffff 0%, #ffffff 50%, transparent 50%, transparent 100%);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 1px 200%;
    animation: scrolldown 2.2s ease forwards infinite; }
.load_complete #firstContent .textWrap .title .title01 {
  opacity: 1; }
  .load_complete #firstContent .textWrap .title .title01:before, .load_complete #firstContent .textWrap .title .title01:after {
    transform: scale(1, 1); }
  .load_complete #firstContent .textWrap .title .title01 .text {
    opacity: 1; }
.load_complete #firstContent .textWrap .title .title02 {
  opacity: 1; }
.load_complete #firstContent .textWrap .text01 {
  opacity: 1; }
.load_complete #firstContent .scroll {
  opacity: 1; }

/* underLink */
#underLink .content {
  z-index: 10; }
#underLink .wrap .list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: calc(390 / 450 * 100%);
  margin: 0 auto calc(7 / 450 * 100%) auto; }
  #underLink .wrap .list .item {
    flex-basis: calc(180 / 390 * 100%);
    margin: 0 0 calc(30 / 390 * 100%) calc(30 / 390 * 100%);
    transform: translateY(-50px); }
    #underLink .wrap .list .item:nth-child(2n+1) {
      margin-left: 0; }
    #underLink .wrap .list .item:nth-child(2) {
      transition-delay: 0.2s; }
    #underLink .wrap .list .item:nth-child(3) {
      transition-delay: 0.4s; }
    #underLink .wrap .list .item:nth-child(4) {
      transition-delay: 0.6s; }
    #underLink .wrap .list .item.current {
      transform: translateY(0); }

/* layoutType01 */
.layoutType01#tour .list .item .slide .slick-dots li button:hover, .layoutType01#tour .list .item .slide .slick-dots li.slick-active button {
  background-color: #00a297; }
.layoutType01#tour .list .item .wrap .info .box {
  background-color: #faefbe; }
.layoutType01#athleisure .list .item .slide .slick-dots li button:hover, .layoutType01#athleisure .list .item .slide .slick-dots li.slick-active button {
  background-color: #5bb2be; }
.layoutType01#athleisure .list .item .wrap .info .box {
  background-color: #dcf5ff; }
.layoutType01#goods .list .item:last-child {
  border-bottom: 0; }
.layoutType01#goods .list .item .slide .slick-dots li button:hover, .layoutType01#goods .list .item .slide .slick-dots li.slick-active button {
  background-color: #d0c16e; }
.layoutType01#goods .list .item .wrap .info .box {
  background-color: #f0e6c8; }
.layoutType01 .content {
  background-color: #ffffff; }
.layoutType01 .contentInner {
  width: 100%; }
.layoutType01 .titleWrap {
  position: relative;
  z-index: 2;
  text-align: center;
  margin: 0 0 calc(33 / 500 * 100%) 0;
  padding: calc(50 / 400 * 100%) 0 0 0; }
  .layoutType01 .titleWrap .title01 {
    margin: 0 0 calc(37 / 500 * 100%) 0;
    transform: translateY(0); }
    .layoutType01 .titleWrap .title01 .ja {
      display: block;
      font-size: 1.6rem;
      line-height: 1;
      font-weight: 500;
      margin: 1.2rem 0 0 0; }
  .layoutType01 .titleWrap .title02 {
    font-size: 1.6rem;
    line-height: 1.88;
    transform: translateY(0); }
.layoutType01 .list {
  position: relative;
  z-index: 2;
  padding: 0 0 calc(18 / 450 * 100%) 0; }
  .layoutType01 .list .item {
    margin: 0 0 calc(10 / 450 * 100%) 0;
    padding: calc(33 / 450 * 100%) 0 calc(43 / 450 * 100%) 0;
    border-bottom: 1px solid #000000; }
    .layoutType01 .list .item:last-child {
      margin-bottom: 0; }
    .layoutType01 .list .item .slideWrap {
      position: relative;
      width: calc(400 / 450 * 100%);
      margin: auto;
      padding: 0 0 2.3rem 0; }
    .layoutType01 .list .item .wrap {
      width: calc(390 / 450 * 100%);
      margin: 0 auto; }
      .layoutType01 .list .item .wrap .data .category {
        font-size: 1.6rem;
        line-height: 1;
        font-weight: 600;
        padding: calc(29 / 390 * 100%) 0 calc(16 / 390 * 100%) 0; }
      .layoutType01 .list .item .wrap .data .priceWrap {
        margin: 0 0 calc(27 / 390 * 100%) 0; }
        .layoutType01 .list .item .wrap .data .priceWrap .name {
          display: block;
          font-size: 1.8rem;
          line-height: 1.33;
          font-weight: 500;
          margin: 0 0 calc(17 / 390 * 100%) 0; }
        .layoutType01 .list .item .wrap .data .priceWrap .price {
          display: block;
          font-size: 2rem;
          line-height: 1;
          font-weight: 600; }
        .layoutType01 .list .item .wrap .data .priceWrap .unit {
          font-size: 1.6rem;
          line-height: 1.25;
          font-weight: 500; }
      .layoutType01 .list .item .wrap .data .desc {
        font-size: 1.6rem;
        line-height: 1.75;
        margin: 0 0 calc(27 / 390 * 100%) 0; }
      .layoutType01 .list .item .wrap .info a {
        display: block;
        position: relative; }
        .layoutType01 .list .item .wrap .info a:after {
          content: "";
          position: absolute;
          top: 0;
          bottom: 0;
          right: 1.5rem;
          width: 1.5rem;
          height: 1.5rem;
          margin: auto;
          border-top: 1px solid #1a1a1a;
          border-right: 1px solid #1a1a1a;
          transform: rotate(45deg); }
      .layoutType01 .list .item .wrap .info .box {
        display: flex;
        align-items: center;
        justify-content: space-between;
        background-color: #eafae7;
        position: relative;
        padding: calc(18 / 390 * 100%) 0; }
        .layoutType01 .list .item .wrap .info .box .shopLogo {
          flex-basis: calc(128 / 390 * 100%);
          background-color: #ffffff;
          margin: 0 0 0 calc(18 / 390 * 100%); }
        .layoutType01 .list .item .wrap .info .box .textWrap {
          flex-basis: calc(206 / 390 * 100%);
          margin: 0 calc(18 / 390 * 100%) 0 0; }
          .layoutType01 .list .item .wrap .info .box .textWrap .shop {
            font-size: 1.6rem;
            line-height: 1.25;
            font-weight: 700; }
          .layoutType01 .list .item .wrap .info .box .textWrap .place {
            font-size: 1.4rem;
            line-height: 1.43;
            margin: 0.9rem 0 0.3rem 0; }
      .layoutType01 .list .item .wrap .attention {
        color: #ffffff;
        font-size: 1.6rem;
        line-height: 1.31;
        padding: calc(18 / 390 * 100%) 0 0 0; }
        .layoutType01 .list .item .wrap .attention > * {
          position: relative;
          background-color: #eb003c;
          padding: 0.8rem 2.4rem 0.9rem 2.4rem;
          border-radius: 3.5rem; }
          .layoutType01 .list .item .wrap .attention > *:before {
            content: "";
            display: block;
            position: absolute;
            bottom: calc(100% - 1px);
            left: 0;
            right: 0;
            width: 2rem;
            background-color: #eb003c;
            margin: auto;
            clip-path: polygon(50% 0, 100% 100%, 0 100%);
            aspect-ratio: 20 / 13; }
        .layoutType01 .list .item .wrap .attention dl dt {
          font-size: 1.8rem;
          line-height: 1.33;
          font-weight: 500; }

/* column */
#column .content {
  background-color: #b1e1f0; }
#column .titleWrap {
  text-align: center;
  padding: calc(68 / 450 * 100%) 0 calc(59 / 450 * 100%) 0; }
  #column .titleWrap .title01 {
    margin: 0 0 calc(22 / 450 * 100%) 0; }
  #column .titleWrap .title02 {
    font-size: 1.6rem;
    line-height: 1;
    font-weight: 500;
    margin: 0 0 calc(12 / 450 * 100%) 0;
    transform: translateY(0); }
    #column .titleWrap .title02 .line {
      display: inline-block;
      letter-spacing: 0.06em;
      padding: 0 0 0.6em 0;
      border-bottom: 3px solid #1a1a1a; }
  #column .titleWrap .title03 {
    font-size: 1.4rem;
    line-height: 1.86;
    transform: translateY(0); }
#column .list {
  overflow: hidden;
  width: calc(350 / 400 * 100%);
  margin: 0 auto; }
  #column .list .item {
    margin: 0 0 calc(88 / 350 * 100%) 0; }
    #column .list .item .num {
      width: calc(118 / 350 * 100%);
      background: url(../images/common/bg_column_title.png) right bottom no-repeat;
      background-size: contain;
      margin: 0 0 calc(13 / 350 * 100%) 0;
      transform: translateY(0); }
      #column .list .item .num .text {
        display: block;
        transform: translateX(-3rem);
        transition: all 0.4s ease 0.2s; }
      #column .list .item .num.current .text {
        transform: translateX(0); }
    #column .list .item .title {
      font-size: 2.2rem;
      line-height: 1.64;
      font-weight: 700;
      margin: 0 0 calc(12 / 350 * 100%) 0; }
    #column .list .item .desc {
      font-size: 1.4rem;
      line-height: 2.14;
      letter-spacing: -0.07em;
      margin: 0 0 calc(18 / 350 * 100%) 0; }
    #column .list .item .image {
      width: calc(320 / 350 * 100%);
      margin: auto; }

/* bannerArea */
.bannerArea .item {
  text-align: center;
  padding: calc(58 / 400 * 100%) 0 calc(59 / 400 * 100%) 0; }
  .bannerArea .item .balloon {
    display: inline-block;
    position: relative;
    color: #699424;
    font-size: 1.4rem;
    line-height: 1.29;
    font-weight: 700;
    letter-spacing: 0.06rem;
    margin: 0 0 calc(10 / 400 * 100%) 0; }
    .bannerArea .item .balloon:before, .bannerArea .item .balloon:after {
      content: "";
      position: absolute;
      bottom: 0;
      right: calc(100% + 0.8rem);
      width: 2px;
      height: 1.5rem;
      background-color: #699424;
      transform: rotate(-25deg); }
    .bannerArea .item .balloon:after {
      left: calc(100% + 0.8rem);
      right: auto;
      transform: rotate(25deg); }
  .bannerArea .item .banner {
    width: calc(350 / 400 * 100%);
    margin: auto; }



