/* ##############################################################################

    KEYFRAMES

############################################################################## */
  @keyframes fade_in {
    0% { opacity: 0; }
    100% { opacity: 1; }
  }
  @keyframes fade_out {
    0% { opacity: 1; }
    100% { opacity: 0; }
  }
  @keyframes slide-to_top {
    0% { transform: translateY(110%); }
    100% { transform: translateY(0%); }
  }
  @keyframes slide-to_btm {
    0% { transform: translateY(-110%); }
    100% { transform: translateY(0%); }
  }
  @keyframes slide-to_lft {
    0% { transform: translateX(110%); }
    100% { transform: translateX(0%); }
  }
  @keyframes slide-to_rgt {
    0% { transform: translateX(-110%); }
    100% { transform: translateX(0%); }
  }
  @keyframes slide-rev_top {
    0% { transform: translateY(0%); }
    100% { transform: translateY(-110%); }
  }
  @keyframes slide-rev_btm {
    0% { transform: translateY(0%); }
    100% { transform: translateY(110%); }
  }
  @keyframes slide-rev_lft {
    0% { transform: translateX(0%); }
    100% { transform: translateX(-110%); }
  }
  @keyframes slide-rev_rgt {
    0% { transform: translateX(0%); }
    100% { transform: translateX(110%); }
  }
  @keyframes slide-rev_rgt-lg {
    0% { transform: translateX(0%); }
    100% { transform: translateX(200%); }
  }
  @keyframes slide-to_rgt-lg {
    0% { transform: translateX(-200%); }
    100% { transform: translateX(0%); }
  }
  @keyframes mov_in-x {
    0% {
      transform: translateX(-4px);
      opacity: 0;
    }
    100% {
      transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes mov_out-x {
    0% {
      transform: translateX(0);
      opacity: 1;
    }
    100% {
      transform: translateX(4px);
      opacity: 0;
    }
  }
  @keyframes scr_imgs {
    0% {
      background-position: 0 0;
    }
    100% {
      background-position: 1272px 0; /* 画像のマイナス幅 */
    }
  }
  @keyframes hov-bubbles {
    from {
      transform: translate(0, 0) scale(1);
      filter: blur(0);
    }
    to {
      transform: translate(0, -66.666%) scale(1.1);
      filter: blur(2px);
    }
  }
  @keyframes scale_palse {
    0% { transform: scale(1); }
    50% { transform: scale(1.2); }
    100% { transform: scale(1); }
  }
  @keyframes ripples_palse {
    0% {
      transform: scale(1);
      opacity: 0;
    }
    10% {
      opacity: .1;
    }
    20% {
      transform: scale(2.5);
      opacity: 0;
    }
    100% {
      transform: scale(1);
      opacity: 0;
    }
  }
  .loaded .ts, .loaded .ts-bf::before, .loaded .ts-af::after,
  .loaded .ts-fast, .loaded .ts-fast-bf::before, .loaded .ts-fast-af::after,
  .loaded .ts-slow, .loaded .ts-slow-bf::before, .loaded .ts-slow-af::after {
    transition-property: all;
    transition-timing-function: cubic-bezier(0.22,0.61,0.36,1);
    transition-duration: .8s;
  }
  .loaded .ts-fast, .loaded .ts-fast-bf::before, .loaded .ts-fast-af::after {
    transition-duration: .4s;
  }
  .loaded .ts-slow, .loaded .ts-slow-bf::before, .loaded .ts-slow-af::after {
    transition-duration: 1.2s;
  }
  .loaded .ts-slower, .loaded .ts-slower-bf::before, .loaded .ts-slower-af::after {
    transition-duration: 1.8s;
  }
  .del50 { transition-delay: 50ms; }
  .del100 { transition-delay: 100ms; }
  .del150 { transition-delay: 150ms; }
  .del200 { transition-delay: 200ms; }
  .del250 { transition-delay: 250ms; }
  .del300 { transition-delay: 300ms; }
  .del350 { transition-delay: 350ms; }
  .del400 { transition-delay: 400ms; }
  .del450 { transition-delay: 450ms; }
  .del500 { transition-delay: 500ms; }
  .del550 { transition-delay: 550ms; }
  .del600 { transition-delay: 600ms; }
  .del650 { transition-delay: 650ms; }
  .del700 { transition-delay: 700ms; }
  .del750 { transition-delay: 750ms; }
  .del800 { transition-delay: 800ms; }
  .del850 { transition-delay: 850ms; }
  .del900 { transition-delay: 900ms; }
  .del950 { transition-delay: 950ms; }
  .del1000 { transition-delay: 1000ms; }

  /* --- fade_in ---- */
  .fade_in {
    opacity: 0;
    transform: translateY(24px);
    filter: blur(10px);
  }
  .visible.fade_in,
  .visible .fade_in {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0px);
  }

  /* --- flip_in ---- */
  .flip_in {
    opacity: 0;
    transform: translateY(24px) rotateY(20deg);
    perspective: 1000;
  }
  .visible.flip_in,
  .visible .flip_in {
    opacity: 1;
    transform: translateY(0) rotateY(0deg);
  }
  .visible .speech_ttl .flip_in {
    transform: translateY(0) rotateY(5deg);
  }
  @media screen and (max-width: 768px) {
    .flip_in {
      opacity: 0;
      transform: translateY(24px);
      filter: blur(10px);
    }
    .visible.flip_in,
    .visible .flip_in {
      opacity: 1;
      transform: translateY(0);
      filter: blur(0px);
    }
    .visible .speech_ttl .flip_in {
      transform: translateY(0) rotateY(5deg);
    }
  }
  .scr_imgs .img_src {
    background-image: url('../images/common/search_links_img-list.jpg');
    background-repeat: repeat-x;
    background-size: auto 146px;
    animation-duration: 50s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-fill-mode: forwards;
    animation-name: scr_imgs;
  }
  .hov-bubbles {
    overflow: hidden;
  }
  .hov-bubbles::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 300%;
    z-index: 1;
    opacity: .5;
    background: radial-gradient(
        circle at 20% 40%,
        transparent 0,
        transparent 3px,
        #fff 4px,
        #fff 4px,
        transparent 4px
      ),
      radial-gradient(
        circle at 75% 44%,
        transparent 0,
        transparent 3px,
        #fff 4px,
        #fff 4px,
        transparent 4px
      ),
      radial-gradient(
        circle at 46% 52%,
        transparent 0,
        transparent 5px,
        #fff 6px,
        #fff 6px,
        transparent 6px
      );
    pointer-events: none;
  }
  @media screen and (min-width: 961px) {
    .hov-bubbles:hover::before {
      animation: hov-bubbles 2.5s cubic-bezier(0.22,0.61,0.36,1) infinite both;
    }
  }


/* ====================================================================================2.2s,==

    LOADING

====================================================================================== */
  @keyframes load_fade_out {
    0% {
      opacity: 1;
      filter: blur(0);
      transform: scale(1);
    }
    100% {
      filter: blur(20px);
      transform: scale(1.15);
      opacity: 0;
    }
  }
  @keyframes load_fade_in {
    0% {
      filter: blur(20px);
      transform: scale(.9);
      opacity: 0;
    }
    100% {
      opacity: 1;
      filter: blur(0);
      transform: scale(1);
    }
  }
  @keyframes load_palse {
    0% {
      opacity: 0;
      transform: scale(.8);
    }
    25% {
      opacity: .2;
    }
    50% {
      opacity: 0;
      transform: scale(3);
    }
    100% {
      opacity: 0;
      transform: scale(3);
    }
  }
  #loading {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100000;
    pointer-events: none;
  }
  #loading .layers {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    overflow: hidden;
  }
  #loading .layers .layer,
  #loading .layers .layer::before {
    transition-property: all;
    transition-duration: .2s;
    transition-timing-function: cubic-bezier(0.55,0.08,0.68,0.53);
    transition-delay: 0s;
  }
  #loading .layers .layer {
    position: absolute;
    left: -50vw;
    top: -50vh;
    width: 200vw;
    height: 200vh;
  }
  #loading .layers .layer::before {
    filter: blur(100px);
  }
  #loading .loading--cont {
    z-index: 10;
  }
  #loading .loading--cont .logo_img {
    opacity: 0;
  }
  #loading .load_dots {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
  }
  #loading .load_dots span {
    width: 24px;
    height: 24px;
    margin-left: 16px;
    margin-right: 16px;
    border-radius: 100%;
    opacity: 0;
  }
  body.mov_in #loading .layers .layer {
    opacity: 0;
    transform: translateX(-50vw);
  }
  body.mov_in #loading .layers .layer::before {
    filter: blur(500px);
  }
  body:not(.min).mov_in #loading .layers .layer { transition-delay: 2.4s; }
  body.loaded #loading .loading--cont .load_dots {
    animation-delay: 0s;
    animation-duration: 1.2s;
    animation-timing-function: ease-out;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-name: fade_out;
  }
  body #loading .loading--cont .load_dots span {
    animation-duration: 2s;
    animation-timing-function: ease-out;
    animation-iteration-count: infinite;
    animation-fill-mode: forwards;
    animation-name: load_palse;
  }
  body #loading .loading--cont .load_dots span:nth-of-type(1) {
    animation-delay: 0s;
  }
  body #loading .loading--cont .load_dots span:nth-of-type(2) {
    animation-delay: .2s;
  }
  body #loading .loading--cont .load_dots span:nth-of-type(3) {
    animation-delay: .4s;
  }
  body.loaded #loading .loading--cont .logo_img {
    animation-duration: .8s;
    animation-delay: 0s,2.4s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    animation-name: load_fade_in,load_fade_out;
    clip-path:inset(0 0 0);
  }
  @media screen and (max-width: 560px) {
    #loading .loading--cont {
      transform: scale(.8);
    }
  }


/* ##############################################################################

    COMMON

############################################################################## */
  html {
    height: 100%;
    overflow-y: scroll;
  }
  body {
    font-family: 'Noto Sans JP', sans-serif;
  }
  .svg-symbol {
    display: none;
  }
  .wrapper {
    overflow: hidden;
  }
  .container.por {
    z-index: 1;
  }

/* layout
**************************************** */

  /* --- inner --- */
  .inner {
    width: 90%;
    max-width: 1280px;
    margin: 0 auto;
  }
  .inner-xs { max-width: 880px; }
  .inner-sm { max-width: 1064px; }
  .inner-lg { max-width: 1600px; }
  .inner-xl { max-width: 1920px }

  /* --- sect_pdg --- */
  .sect_pdg {
    padding-top: 120px;
    padding-bottom: 120px;
  }
  .sect_pdg-sm {
    padding-top: 96px;
    padding-bottom: 96px;
  }
  .sect_pdg-lg {
    padding-top: 160px;
    padding-bottom: 160px;
  }
  .pdg_no { padding: 0 !important; }
  .pdg_no-top { padding-top: 0 !important; }
  .pdg_no-btm { padding-bottom: 0 !important; }

  /* --- float --- */
  .flt-rgt { float: right; }
  .flt-lft { float: left; }

  /* --- position --- */
  .por {
    position: relative;
    z-index: 0;
  }
  .poa,
  .poa-bf::before,
  .poa-af::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
  }
  .poa-bf::before,
  .poa-af::after {
    content: '';
  }
  .poa.zi1,
  .poa-bf.zi1-bf::before,
  .poa-af.zi1-af::after {
    z-index: 1;
  }

  /* --- margin --- */
  .btm8 { margin-bottom: 8px; }
  .btm16 { margin-bottom: 16px; }
  .btm24 { margin-bottom: 24px; }
  .btm32 { margin-bottom: 32px; }
  .btm40 { margin-bottom: 40px; }
  .btm48 { margin-bottom: 48px; }
  .btm56 { margin-bottom: 56px; }
  .btm64 { margin-bottom: 64px; }
  .btm72 { margin-bottom: 72px; }
  .btm80 { margin-bottom: 80px; }
  .btm88 { margin-bottom: 88px; }
  .btm96 { margin-bottom: 96px; }
  .btm104 { margin-bottom: 104px; }
  .btm112 { margin-bottom: 112px; }
  .btm120 { margin-bottom: 120px; }

  /* --- pc or sp --- */
  .pc-none,
  .pc-none-inline,
  .pc-none-table,
  .pc-none-flx,
  .lgpc-none,
  .tab-show,
  .tab-show-inline,
  .tab-show-table,
  .tab-show-flx { display: none; }
  .sp-none,
  .smpc-none { display: block; }
  .sp-none-inline { display: inline; }
  .sp-none-table { display: table; }
  .sp-none-flx {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  @media screen and (min-width: 1281px) {
    .lgpc-show {
      display: block;
    }
  }
  @media screen and  (max-width: 1280px) {
    .lgpc-none {
      display: block;
    }
    .lgpc-show {
      display: none;
    }
  }
  @media screen and  (max-width: 1064px) {
    .sect_pdg {
      padding-top: 96px;
      padding-bottom: 96px;
    }
    .sect_pdg-sm {
      padding-top: 80px;
      padding-bottom: 80px;
    }
    .sect_pdg-lg {
      padding-top: 112px;
      padding-bottom: 112px;
    }
    .btm24 { margin-bottom: 20px; }
    .btm32 { margin-bottom: 24px; }
    .btm40 { margin-bottom: 32px; }
    .btm48 { margin-bottom: 32px; }
    .btm56 { margin-bottom: 48px; }
    .btm64 { margin-bottom: 48px; }
    .btm72 { margin-bottom: 56px; }
    .btm80 { margin-bottom: 56px; }
    .btm88 { margin-bottom: 64px; }
    .btm96 { margin-bottom: 64px; }
    .btm104 { margin-bottom: 80px; }
    .btm112 { margin-bottom: 80px; }
    .btm120 { margin-bottom: 96px; }
    .smpc-none { display: none; }
  }
  @media screen and  (max-width: 960px) {
    .tab-show { display: block; }
    .tab-show-inline { display: inline; }
    .tab-show-table { display: table; }
    .tab-show-flx {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
    }
  }
  @media screen and  (max-width: 560px) {
    .inner { width: calc(100% - 32px); }
    .btm16 { margin-bottom: 8px; }
    .btm24 { margin-bottom: 16px; }
    .btm32 { margin-bottom: 16px; }
    .btm40 { margin-bottom: 24px; }
    .btm48 { margin-bottom: 24px; }
    .btm56 { margin-bottom: 32px; }
    .btm64 { margin-bottom: 32px; }
    .btm72 { margin-bottom: 40px; }
    .btm80 { margin-bottom: 40px; }
    .btm88 { margin-bottom: 48px; }
    .btm96 { margin-bottom: 48px; }
    .btm104 { margin-bottom: 56px; }
    .btm112 { margin-bottom: 56px; }
    .btm120 { margin-bottom: 64px; }
    .sect_pdg {
      padding-top: 48px;
      padding-bottom: 48px;
    }
    .sect_pdg-sm {
      padding-top: 40px;
      padding-bottom: 40px;
    }
    .sect_pdg-lg {
      padding-top: 56px;
      padding-bottom: 56px;
    }
    .sp-none,
    .sp-none-inline,
    .sp-none-table,
    .sp-none-flx { display: none; }
    .pc-none { display: block; }
    .pc-none-inline { display: inline; }
    .pc-none-table { display: table; }
    .pc-none-flx {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
    }
  }

/* overflow
**************************************** */
  .ofh {
    overflow: hidden;
  }

/* link
**************************************** */
  .area_link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
  }

/* opacity
**************************************** */
  .op0, .op0-bf::before, .op0-af::after  { opacity:   0; }
  .op05,.op05-bf::before,.op05-af::after { opacity: .05; }
  .op10,.op10-bf::before,.op10-af::after { opacity: .10; }
  .op15,.op15-bf::before,.op15-af::after { opacity: .15; }
  .op20,.op20-bf::before,.op20-af::after { opacity: .20; }
  .op25,.op25-bf::before,.op25-af::after { opacity: .25; }
  .op30,.op30-bf::before,.op30-af::after { opacity: .30; }
  .op35,.op35-bf::before,.op35-af::after { opacity: .35; }
  .op40,.op40-bf::before,.op40-af::after { opacity: .40; }
  .op45,.op45-bf::before,.op45-af::after { opacity: .45; }
  .op50,.op50-bf::before,.op50-af::after { opacity: .50; }
  .op55,.op55-bf::before,.op55-af::after { opacity: .55; }
  .op60,.op60-bf::before,.op60-af::after { opacity: .60; }
  .op65,.op65-bf::before,.op65-af::after { opacity: .65; }
  .op70,.op70-bf::before,.op70-af::after { opacity: .70; }
  .op75,.op75-bf::before,.op75-af::after { opacity: .75; }
  .op80,.op80-bf::before,.op80-af::after { opacity: .80; }
  .op85,.op85-bf::before,.op85-af::after { opacity: .85; }
  .op90,.op90-bf::before,.op90-af::after { opacity: .90; }
  .op95,.op95-bf::before,.op95-af::after { opacity: .95; }
  @media screen and (min-width: 961px) {
    .hov-op0:hover, .hov-op0-bf:hover::before, .hov-op0-af:hover::after  { opacity:   0; }
    .hov-op05:hover,.hov-op05-bf:hover::before,.hov-op05-af:hover::after { opacity: .05; }
    .hov-op10:hover,.hov-op10-bf:hover::before,.hov-op10-af:hover::after { opacity: .10; }
    .hov-op15:hover,.hov-op15-bf:hover::before,.hov-op15-af:hover::after { opacity: .15; }
    .hov-op20:hover,.hov-op20-bf:hover::before,.hov-op20-af:hover::after { opacity: .20; }
    .hov-op25:hover,.hov-op25-bf:hover::before,.hov-op25-af:hover::after { opacity: .25; }
    .hov-op30:hover,.hov-op30-bf:hover::before,.hov-op30-af:hover::after { opacity: .30; }
    .hov-op35:hover,.hov-op35-bf:hover::before,.hov-op35-af:hover::after { opacity: .35; }
    .hov-op40:hover,.hov-op40-bf:hover::before,.hov-op40-af:hover::after { opacity: .40; }
    .hov-op45:hover,.hov-op45-bf:hover::before,.hov-op45-af:hover::after { opacity: .45; }
    .hov-op50:hover,.hov-op50-bf:hover::before,.hov-op50-af:hover::after { opacity: .50; }
    .hov-op55:hover,.hov-op55-bf:hover::before,.hov-op55-af:hover::after { opacity: .55; }
    .hov-op60:hover,.hov-op60-bf:hover::before,.hov-op60-af:hover::after { opacity: .60; }
    .hov-op65:hover,.hov-op65-bf:hover::before,.hov-op65-af:hover::after { opacity: .65; }
    .hov-op70:hover,.hov-op70-bf:hover::before,.hov-op70-af:hover::after { opacity: .70; }
    .hov-op75:hover,.hov-op75-bf:hover::before,.hov-op75-af:hover::after { opacity: .75; }
    .hov-op80:hover,.hov-op80-bf:hover::before,.hov-op80-af:hover::after { opacity: .80; }
    .hov-op85:hover,.hov-op85-bf:hover::before,.hov-op85-af:hover::after { opacity: .85; }
    .hov-op90:hover,.hov-op90-bf:hover::before,.hov-op90-af:hover::after { opacity: .90; }
    .hov-op95:hover,.hov-op95-bf:hover::before,.hov-op95-af:hover::after { opacity: .95; }
    .hov-op100:hover,.hov-op100-bf:hover::before,.hov-op100-af:hover::after { opacity: 1; }
  }

/* radius
**************************************** */
  .radius3,
  .radius3-bf::before,
  .radius3-af::after { border-radius: 3px; }
  .radius5,
  .radius5-bf::before,
  .radius5-af::after { border-radius: 5px; }

/* flex
**************************************** */

  /* --- ブロック要素 --- */
  .flx {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .flx-1 {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
  }
  .flx-rev {
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .flx-ctr {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  /* --- インライン要素 --- */
  .flx-in {
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }

  /* --- 縦並び --- */
  .flx-col {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .flx-col-rev {
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }

  /* --- 水平方向揃え --- */
  .flx-stt-j {
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .flx-ctr-j {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .flx-end-j {
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .flx-btw-j {
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  /* --- 垂直方向揃え --- */
  .flx-stt-a {
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .flx-end-a {
    -webkit-align-items: flex-end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .flx-ctr-a {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }

  /* --- 子要素の折り返し設定 --- */
  .flx-nowrap-c {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .flx-wrap-c {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  /* --- 子要素の複数行設定 --- */
  .flx-stt-c {
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
  }
  .flx-end-c {
    -webkit-align-content: flex-end;
    -ms-flex-line-pack: end;
    align-content: flex-end;
  }
  .flx-ctr-c {
    -webkit-align-content: center;
    -ms-flex-line-pack: center;
    align-content: center;
  }

  @media screen and (max-width: 1064px) {
    .flx-smpc-blc {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
  }
  @media screen and (max-width: 960px) {
    .flx-tab-blc {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
  }
  @media screen and (max-width: 560px) {
    .flx-sp-blc {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
  }

/* color
**************************************** */

  /* --- body --- */
  .clr-body,
  .clr-body-bf::before,
  .clr-body-af::after {
    color: #fff;
    fill: #fff;
  }
  .bg_clr-body,
  .bg_clr-body-bf::before,
  .bg_clr-body-af::after {
    background-color: #fff;
  }
  .bdr_clr-body,
  .bdr_clr-body-bf::before,
  .bdr_clr-body-af::after {
    border-color: #fff;
  }

  /* --- body_lt --- */
  .clr-body_lt,
  .clr-body_lt-bf::before,
  .clr-body_lt-af::after,
  .mw_wp_form_confirm .form_flow_list .form_flow_list--item-input,
  .mw_wp_form_complete .form_flow_list .form_flow_list--item:not(.form_flow_list--item-complete) {
    color: #ecf6fa;
  }
  .bg_clr-body_lt,
  .bg_clr-body_lt-bf::before,
  .bg_clr-body_lt-af::after,
  .form_flow_list--item::before,
  .form_flow_list--item::after {
    background-color: #ecf6fa;
  }
  .bdr_clr-body_lt,
  .bdr_clr-body_lt-bf::before,
  .bdr_clr-body_lt-af::after,
  .wp-pagenavi a,
  .wp-pagenavi span {
    border-color: #ecf6fa;
  }

  /* --- body_gry --- */
  .clr-body_gry,
  .clr-body_gry-bf::before,
  .clr-body_gry-af::after {
    color: #f7f8f8;
    fill: #f7f8f8;
  }
  .bg_clr-body_gry,
  .bg_clr-body_gry-bf::before,
  .bg_clr-body_gry-af::after,
  .tag,
  .form_list--item .cont input[type="text"],
  .form_list--item .cont input[type="email"],
  .form_list--item .cont input[type="tel"],
  .form_list--item .cont input[type="date"],
  .form_list--item .cont input[type="password"],
  .form_list--item .cont select,
  .form_list--item .cont textarea,
  .img_src.no_img::before {
    background-color: #f7f8f8;
  }
  .bdr_clr-body_gry,
  .bdr_clr-body_gry-bf::before,
  .bdr_clr-body_gry-af::after,
  .tbl-price th,.tbl-price td {
    border-color: #f7f8f8;
  }

  /* --- default --- */
  .clr-def,
  .clr-def-bf::before,
  .clr-def-af::after,
  a,
  .wp-pagenavi a,
  .wp-pagenavi span,
  select {
    color: #0f3675;
    fill: #0f3675;
  }
  .bg_clr-def,
  .bg_clr-def-bf::before,
  .bg_clr-def-af::after {
    background-color: #0f3675;
  }
  .bdr_clr-def,
  .bdr_clr-def-bf::before,
  .bdr_clr-def-af::after,
  .pn_list {
    border-color: #0f3675;
  }

  /* --- main --- */
  .clr-main,
  .clr-main-bf::before,
  .clr-main-af::after,
  .mw_wp_form:not(.mw_wp_form_confirm):not(.mw_wp_form_complete) .form_flow_list .form_flow_list--item-input,
  .mw_wp_form_confirm .form_flow_list .form_flow_list--item-confirm,
  .mw_wp_form_complete .form_flow_list .form_flow_list--item-complete,
  .str_ttl .subttl,
  .side--pref .ct_list--item.current a,
  .page-faq .sect-faq .faq--bloc a,
  .side--faq_item.active > a {
    color: #0787bf;
    fill: #0787bf;
  }
  .bg_clr-main,
  .bg_clr-main-bf::before,
  .bg_clr-main-af::after,
  .wp-pagenavi span.current,
  .form_flow_list--item-input::before,
  .mw_wp_form_confirm .form_flow_list .form_flow_list--item:not(.form_flow_list--item-complete)::before,
  .mw_wp_form_confirm .form_flow_list .form_flow_list--item-input::after,
  .mw_wp_form_complete .form_flow_list .form_flow_list--item::before,
  .mw_wp_form_complete .form_flow_list .form_flow_list--item:not(.form_flow_list--item-complete)::after,
  .bubble span,
  .speech_ttl .dots span,
  .dots_ttl .dots span {
    background-color: #0787bf;
  }
  .bdr_clr-main,
  .bdr_clr-main-bf::before,
  .bdr_clr-main-af::after,
  .wp-pagenavi span.current {
    border-color: #0787bf;
  }
  strong {
    background:linear-gradient(transparent 80%, #0787bf99 80%);
  }
  @media screen and (min-width: 1281px) {
    body .gnav_list--item.sub_show .gnav_list--item_in .current_layer {
      background-color: #0787bf;
    }
  }
  @media screen and (max-width: 1280px) {
    .gnav_list--item.current > a {
      color: #0787bf;
      fill: #0787bf;
    }
  }
  @media screen and (min-width: 961px) {
    .hov-clr-main:hover,.hov_area:hover .hov-clr-main,
    .hov-clr-main-bf:hover::before,.hov_area:hover .hov-clr-main-bf::before,
    .hov-clr-main-af:hover::after,.hov_area:hover .hov-clr-main-af::after {
      color: #0787bf;
      fill: #0787bf;
    }
    .hov-bg_clr-main:hover,.hov_area:hover .hov-bg_clr-main,
    .hov-bg_clr-main-bf:hover::before,.hov_area:hover .hov-bg_clr-main-bf::before,
    .hov-bg_clr-main-af:hover::after,.hov_area:hover .hov-bg_clr-main-af::after,
    .wp-pagenavi a:hover {
      background-color: #0787bf;
    }
    .hov-bdr_clr-main:hover,.hov_area:hover .hov-bdr_clr-main,
    .hov-bdr_clr-main-bf:hover::before,.hov_area:hover .hov-bdr_clr-main-bf::before,
    .hov-bdr_clr-main-af:hover::after,.hov_area:hover .hov-bdr_clr-main-af::after,
    .wp-pagenavi a:hover,
    .side--faq_item ul li:hover::before {
      border-color: #0787bf;
    }
  }

  /* --- lt_blu --- */
  .clr-lt_blu,
  .clr-lt_blu-bf::before,
  .clr-lt_blu-af::after,
  a.bdr_link {
    color: #0056a8;
    fill: #0056a8;
  }
  .bg_clr-lt_blu,
  .bg_clr-lt_blu-bf::before,
  .bg_clr-lt_blu-af::after,
  .fix_search .ttl::before {
    background-color: #0056a8;
  }
  .bdr_clr-lt_blu,
  .bdr_clr-lt_blu-bf::before,
  .bdr_clr-lt_blu-af::after {
    border-color: #0056a8;
  }

  /* --- org --- */
  .clr-org,
  .clr-org-bf::before,
  .clr-org-af::after {
    color: #e55e00;
    fill: #e55e00;
  }
  .bg_clr-org,
  .bg_clr-org-bf::before,
  .bg_clr-org-af::after,
  .str_ttl .str,
  .gnav_list--item.sub_show .gnav_list--item_in .current_layer {
    background-color: #e55e00;
  }
  .tb_img_list.clm-3 .tb_img_list--item
  .bdr_clr-org,
  .bdr_clr-org-bf::before,
  .bdr_clr-org-af::after {
    border-color: #e55e00;
  }
  strong.marker_clr-org {
    background:linear-gradient(transparent 88%, #e55e00d9 88%);
  }
  @media screen and (max-width: 1280px) {
    .gnav_list--item.sub_show > .gnav_list--item_in {
      color: #e55e00;
      fill: #e55e00;
    }
  }

  /* --- red --- */
  .clr-red,
  .clr-red-bf::before,
  .clr-red-af::after {
    color: #b81c22;
    fill: #b81c22;
  }
  .bg_clr-red,
  .bg_clr-red-bf::before,
  .bg_clr-red-af::after {
    background-color: #b81c22;
  }
  .bdr_clr-red,
  .bdr_clr-red-bf::before,
  .bdr_clr-red-af::after {
    border-color: #b81c22;
  }

  /* --- cl --- */
  .clr-cl,
  .clr-cl-bf::before,
  .clr-cl-af::after {
    color: #00b4c0;
    fill: #00b4c0;
  }
  .bg_clr-cl,
  .bg_clr-cl-bf::before,
  .bg_clr-cl-af::after,
  .clr-cl.bubble span,
  .clr-cl .bubble span {
    background-color: #00b4c0;
  }
  .bdr_clr-cl,
  .bdr_clr-cl-bf::before,
  .bdr_clr-cl-af::after {
    border-color: #00b4c0;
  }

  /* --- co --- */
  .clr-co,
  .clr-co-bf::before,
  .clr-co-af::after {
    color: #008dcb;
    fill: #008dcb;
  }
  .bg_clr-co,
  .bg_clr-co-bf::before,
  .bg_clr-co-af::after,
  .clr-co.bubble span,
  .clr-co .bubble span {
    background-color: #008dcb;
  }
  .bdr_clr-co,
  .bdr_clr-co-bf::before,
  .bdr_clr-co-af::after {
    border-color: #008dcb;
  }

  /* --- wht --- */
  .clr-wht,
  .clr-wht-bf::before,
  .clr-wht-af::after,
  .wp-pagenavi span.current,
  .clr-wht .str_ttl .subttl,
  .str_ttl.clr-wht .subttl {
    color: #fff;
    fill: #fff;
  }
  .bg_clr-wht,
  .bg_clr-wht-bf::before,
  .bg_clr-wht-af::after,
  .clr-wht .bubble span,
  .clr-wht .speech_ttl .dots span,
  .clr-wht .dots_ttl .dots span,
  .speech_ttl.clr-wht .dots span,
  .dots_ttl.clr-wht .dots span {
    background-color: #fff;
  }
  .bdr_clr-wht,
  .bdr_clr-wht-bf::before,
  .bdr_clr-wht-af::after {
    border-color: #fff;
  }
  strong.marker_clr-wht {
    background:linear-gradient(transparent 92%, #ffffffd9 92%);
  }
  @media screen and (min-width: 961px) {
    .hov-clr-wht:hover,.hov_area:hover .hov-clr-wht,
    .hov-clr-wht-bf:hover::before,.hov_area:hover .hov-clr-wht-bf::before,
    .hov-clr-wht-af:hover::after,.hov_area:hover .hov-clr-wht-af::after,
    .wp-pagenavi a:hover {
      color: #fff;
      fill: #fff;
    }
    .hov-bg_clr-wht:hover,.hov_area:hover .hov-bg_clr-wht,
    .hov-bg_clr-wht-bf:hover::before,.hov_area:hover .hov-bg_clr-wht-bf::before,
    .hov-bg_clr-wht-af:hover::after,.hov_area:hover .hov-bg_clr-wht-af::after {
      background-color: #fff;
    }
    .hov-bdr_clr-wht:hover,.hov_area:hover .hov-bdr_clr-wht,
    .hov-bdr_clr-wht-bf:hover::before,.hov_area:hover .hov-bdr_clr-wht-bf::before,
    .hov-bdr_clr-wht-af:hover::after,.hov_area:hover .hov-bdr_clr-wht-af::after {
      border-color: #fff;
    }
  }

  /* --- blk --- */
  .clr-blk,
  .clr-blk-bf::before,
  .clr-blk-af::after {
    color: #0f3675;
    fill: #0f3675;
  }
  .bg_clr-blk,
  .bg_clr-blk-bf::before,
  .bg_clr-blk-af::after {
    background-color: #0f3675;
  }
  .bdr_clr-blk,
  .bdr_clr-blk-bf::before,
  .bdr_clr-blk-af::after {
    border-color: #0f3675;
  }
  @media screen and (min-width: 961px) {
    .hov-clr-blk:hover,.hov_area:hover .hov-clr-blk,
    .hov-clr-blk-bf:hover::before,.hov_area:hover .hov-clr-blk-bf::before,
    .hov-clr-blk-af:hover::after,.hov_area:hover .hov-clr-blk-af::after {
      color: #0f3675;
      fill: #0f3675;
    }
    .hov-bg_clr-blk:hover,.hov_area:hover .hov-bg_clr-blk,
    .hov-bg_clr-blk-bf:hover::before,.hov_area:hover .hov-bg_clr-blk-bf::before,
    .hov-bg_clr-blk-af:hover::after,.hov_area:hover .hov-bg_clr-blk-af::after {
      background-color: #0f3675;
    }
    .hov-bdr_clr-blk:hover,.hov_area:hover .hov-bdr_clr-blk,
    .hov-bdr_clr-blk-bf:hover::before,.hov_area:hover .hov-bdr_clr-blk-bf::before,
    .hov-bdr_clr-blk-af:hover::after,.hov_area:hover .hov-bdr_clr-blk-af::after {
      border-color: #0f3675;
    }
  }

  /* --- seven_colors --- */
  .clr-seven_colors,
  .clr-seven_colors-bf::before,
  .clr-seven_colors-af::after {
    color: #dc2b2b;
    fill: #dc2b2b;
  }
  .bg_clr-seven_colors,
  .bg_clr-seven_colors-bf::before,
  .bg_clr-seven_colors-af::after,
  .clr-seven_colors.bubble span,
  .clr-seven_colors .bubble span {
    background-color: #dc2b2b;
  }
  .bg_clr-seven_colors_lt {
    background-color: #fffafb;
  }
  .bdr_clr-seven_colors,
  .bdr_clr-seven_colors-bf::before,
  .bdr_clr-seven_colors-af::after {
    border-color: #dc2b2b;
  }

/* bg
**************************************** */
  .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
    overflow: hidden;
  }

  /* --- wave --- */
  .bg .wave {
    display: block;
    position: absolute !important;
    left: 0;
    width: 100%;
    height: 20px;
    background-size: cover;
  }
  .bg .wave-top {
    top: -4px;
    background-position: center top;
    /*transform: rotate(180deg);*/
  }
  .bg .wave-btm {
    bottom: -4px;
    background-position: center bottom;
  }
  .bg .wave-top.wave-wht { background-image: url(../images/common/sect_line-wave-top-wht.svg); }
  .bg .wave-btm.wave-wht { background-image: url(../images/common/sect_line-wave-btm-wht.svg); }
  .bg .wave-top.wave-body_lt { background-image: url(../images/common/sect_line-wave-top-body_lt.svg); }
  .bg .wave-btm.wave-body_lt { background-image: url(../images/common/sect_line-wave-btm-body_lt.svg); }
  .bg .wave-top.wave-body_gry { background-image: url(../images/common/sect_line-wave-top-body_gry.svg); }
  .bg .wave-btm.wave-body_gry { background-image: url(../images/common/sect_line-wave-btm-body_gry.svg); }
  .bg .wave-top.wave-seven_colors { background-image: url(../images/common/sect_line-wave-top-seven_colors.svg); }
  .bg .wave-btm.wave-seven_colors { background-image: url(../images/common/sect_line-wave-btm-seven_colors.svg); }

  /* --- arrow --- */
  .bg .arrow {
    position: absolute;
    left: 0;
    width: 100%;
    height: 124px;
    background-repeat: repeat-x;
    bottom: -2px;
    background-position: bottom center;
    background-image: url(../images/common/sect_line-arrow.svg);
  }

  /* --- bg-fade --- */
  .bg-fade::before,
  .bg-fade::after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 64px;
    pointer-events: none;
    z-index: 1;
  }
  .bg-fade::before {
    top: 0;
    background: linear-gradient(rgba(255,255,255,1)0%,rgba(255,255,255,.5)40%,rgba(255,255,255,0)100%);
  }
  .bg-fade::after {
    bottom: 0;
    background: linear-gradient(rgba(255,255,255,0)0%,rgba(255,255,255,.5)60%,rgba(255,255,255,1)100%);
  }

  /* --- big_cir --- */
  .bg .big_cir {
    position: absolute;
    border-radius: 100%;
    opacity: .03;
    border-style: solid;
  }
  .bg .big_cir-lg {
    top: -30vw;
    left: -41vw;
    width: 81vw;
    height: 81vw;
    border-width: 150px;
    animation: scale_palse 20s linear infinite .1s;
  }
  .bg .big_cir-md {
    right: -14vw;
    bottom: -16vw;
    width: 44vw;
    height: 44vw;
    border-width: 125px;
    animation: scale_palse 25s linear infinite .1s;
  }
  .bg .big_cir-sm {
    top: -8vw;
    right: -10vw;
    width: 32vw;
    height: 32vw;
    border-width: 100px;
    animation: scale_palse 30s linear infinite .1s;
  }
  @media screen and (max-width: 960px) {
    .bg .big_cir-lg {
      border-width: 100px;
    }
    .bg .big_cir-md {
      border-width: 75px;
    }
    .bg .big_cir-sm {
      border-width: 50px;
    }
  }
  @media screen and (max-width: 560px) {
    .bg .big_cir-lg {
      border-width: 60px;
    }
    .bg .big_cir-md {
      border-width: 50px;
    }
    .bg .big_cir-sm {
      border-width: 40px;
    }
  }

  /* --- bg_layer --- */
  .bg_layer {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
    opacity: 0;
    background-color: #101929;
    pointer-events: none;
  }

  /* --- bg_img --- */
  .bg_img {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  .bg_img-body_dk {
    background-image: url(../images/common/bg_img-body_dk.jpg);
  }
  .bg_img-search {
    background-image: url(../images/common/bg_img-search.jpg);
  }

/* ttl
**************************************** */
  .ttl,.subttl {
    font-weight: 700;
  }
  .dots {
    opacity: .8;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .txt-ctr .dots {
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .dots span {
    display: inline-block;
    width: 4px;
    height: 4px;
    border-radius: 100%;
  }
  .dots span:not(:last-child) {
    margin-right: 6px;
  }
  .head1 .dots span {
    width: 5px;
    height: 5px;
  }
  .head1 .dots span:not(:last-child) {
    margin-right: 8px;
  }

  /* --- sect_ttl --- */
  .sect_ttl {
    font-weight: normal;
    line-height: 1;
  }
  .sect_ttl .bubble {
    position: absolute;
    top: 1.05em;
    right: calc(100% + 20px);
  }
  .sect_ttl span:not(.hyphen) {
    display: block;
  }
  .sect_ttl .ttl {
    font-size: 286%;
    line-height: 1.25em;
    letter-spacing: .15em;
  }
  .sect_ttl .ttl:not(:last-child) {
    margin-bottom: 10px;
  }
  .sect_ttl .subttl {
    font-size: 108%;
    line-height: 1em;
  }
  .sect_ttl-sm .bubble {
    top: .7em;
    right: calc(100% + 16px);
    width: 18px;
    height: 18px;
  }
  .sect_ttl-sm .ttl {
    font-size: 186%;
  }
  .sect_ttl-sm .subttl {
    font-size: 100%;
  }
  .sect_ttl-lg .ttl {
    font-size: 457%;
  }
  .sect_ttl-lg .subttl {
    font-size: 157%;
  }
  .sect_ttl-lg .bubble {
    top: 1.6em;
    width: 40px;
    height: 40px;
    right: calc(100% + 26px);
  }
  .sect_ttl-lg.dots_ttl .dots {
    margin-top: 24px;
  }
  .sect_ttl-lg .dots span {
    width: 6px;
    height: 6px;
  }
  .sect_ttl-lg .dots span:not(:last-child) {
    margin-right: 8px;
  }
  .sect_ttl_txt .line {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
    margin-left: 40px;
    margin-right: 40px;
    height: 2px;
  }

  /* --- str_ttl --- */
  .str_ttl {
    text-align: center;
  }
  .str_ttl .ttl {
    font-size: 272%;
    line-height: 1.6em;
    letter-spacing: .15em;
  }
  .str_ttl .subttl {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    transform: translate(-50%,-50%);
    white-space: nowrap;
    line-height: 1em;
    letter-spacing: .3em;
    font-size: 1429%;
    opacity: 0;
  }
  .str_ttl .str {
    display: inline-block;
    line-height: 1em;
    border-radius: 3px;
    margin-left: 12px;
    margin-right: 12px;
    padding-top: 4px;
    padding-bottom: 8px;
    padding-left: 12px;
    padding-right: 12px;
    color: #fff;
    opacity: 0;
    filter: blur(10px);
  }
  .visible .str_ttl .str,
  .visible.str_ttl .str {
    opacity: 1;
    filter: blur(0);
  }
  .visible .str_ttl .subttl,
  .visible.str_ttl .subttl {
    letter-spacing: .1em;
    opacity: .05;
  }

  /* --- speech_ttl --- */
  .speech_ttl .ttl {
    letter-spacing: .2em;
  }
  .speech_ttl .num {
    display: inline-block;
    margin-left: 10px;
    margin-right: 10px;
    font-size: 300%;
    line-height: 0em;
    text-shadow: 2px 2px 0 #FFF, -2px -2px 0 #FFF,
                -2px 2px 0 #FFF, 2px -2px 0 #FFF,
                 0px 2px 0 #FFF,  0 -2px 0 #FFF,
                -2px 0 0 #FFF, 2px 0 0 #FFF;
  }
  .speech_ttl .dots {
    transform-origin: 50% 50%;
  }
  .speech_ttl .dots-5:first-child {
    transform: rotate(45deg) translateY(-2em);
    margin-right: 32px;
  }
  .speech_ttl .dots-5:last-child {
    transform: rotate(-45deg) translateY(-2em);
    margin-left: 32px;
  }
  .speech_ttl .dots-4:first-child {
    transform: rotate(45deg) translateY(-1.5em);
    margin-right: 24px;
  }
  .speech_ttl .dots-4:last-child {
    transform: rotate(-45deg) translateY(-1.5em);
    margin-left: 24px;
  }
  .speech_ttl .dots-3:first-child {
    transform: rotate(45deg) translateY(-1.2em);
    margin-right: 20px;
  }
  .speech_ttl .dots-3:last-child {
    transform: rotate(-45deg) translateY(-1.2em);
    margin-left: 20px;
  }
  .speech_ttl .dots span {
    opacity: 0;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.22,0.61,0.36,1);
    transition-duration: .8s;
  }
  .speech_ttl .dots-5:first-child span:nth-of-type(5),
  .speech_ttl .dots-4:first-child span:nth-of-type(4),
  .speech_ttl .dots-3:first-child span:nth-of-type(3),
  .speech_ttl .dots:last-child span:nth-of-type(1) {
    transition-delay: 250ms;
  }
  .speech_ttl .dots-5:first-child span:nth-of-type(4),
  .speech_ttl .dots-4:first-child span:nth-of-type(3),
  .speech_ttl .dots-3:first-child span:nth-of-type(2),
  .speech_ttl .dots:last-child span:nth-of-type(2) {
    transition-delay: 300ms;
  }
  .speech_ttl .dots-5:first-child span:nth-of-type(3),
  .speech_ttl .dots-4:first-child span:nth-of-type(2),
  .speech_ttl .dots-3:first-child span:nth-of-type(1),
  .speech_ttl .dots:last-child span:nth-of-type(3) {
    transition-delay: 350ms;
  }
  .speech_ttl .dots-5:first-child span:nth-of-type(2),
  .speech_ttl .dots-4:first-child span:nth-of-type(1),
  .speech_ttl .dots:last-child span:nth-of-type(4) {
    transition-delay: 400ms;
  }
  .speech_ttl .dots-5:first-child span:nth-of-type(1),
  .speech_ttl .dots:last-child span:nth-of-type(5) {
    transition-delay: 450ms;
  }
  .speech_ttl .dots-4:first-child span:nth-of-type(4),
  .speech_ttl .dots-4:last-child span:nth-of-type(1) {
  }
  .visible.speech_ttl .dots span,
  .visible .speech_ttl .dots span {
    opacity: 1;
  }

  /* --- slash_ttl --- */
  .slash_ttl .ttl::before,
  .slash_ttl .ttl::after {
    content: '';
    position: absolute;
    top: 53%;
    transform: translateY(-50%);
    width: 100vw;
    height: 6px;
    background-image: url(../images/common/bg_slash-def.png);
    background-size: 12px;
  }
  .slash_ttl .ttl::before {
    right: calc(100% + 24px);
  }
  .slash_ttl .ttl::after {
    left: calc(100% + 24px);
  }
  .clr-wht .slash_ttl .ttl::before,
  .clr-wht .slash_ttl .ttl::after,
  .slash_ttl.clr-wht .ttl::before,
  .slash_ttl.clr-wht .ttl::after {
    background-image: url(../images/common/bg_slash-wht.png);
  }

  /* --- dots_ttl --- */
  .dots_ttl .ttl {
    display: block;
  }
  .dots_ttl .subttl {
    display: inline-block;
    margin-bottom: 4px;
  }
  .dots_ttl .dots {
    margin-top: 10px;
  }
  .dots_ttl.head1 .dots,
  .dots_ttl.head3 .dots {
    margin-top: 16px;
  }
  .sect_ttl .dots span {
    display: inline-block;
  }

  /* --- img_ttl --- */
  .img_ttl .img {
    margin-right: 16px;
  }

  /* --- heading --- */
  .head1 .ttl {
    font-size: 214%;
    line-height: 1.6em;
  }
  .head2 .ttl {
    font-size: 157%;
    line-height: 1.7em;
  }
  .head3 .ttl {
    font-size: 143%;
    line-height: 1.8em;
  }
  .head4 .ttl {
    font-size: 129%;
    line-height: 1.9em;
  }
  @media screen and (max-width: 960px) {
    .sect_ttl-lg .ttl {
      font-size: 372%;
    }
    .sect_ttl-lg .subttl {
      font-size: 143%;
    }
    .sect_ttl-lg .bubble {
      top: 1.3em;
      width: 32px;
      height: 32px;
      right: calc(100% + 20px);
    }
    .sect_ttl-lg.dots_ttl .dots {
      margin-top: 16px;
    }
    .sect_ttl-lg .dots span {
      width: 4px;
      height: 4px;
    }
    .head1 .ttl { font-size: 172%; }
    .head2 .ttl { font-size: 129%; }
    .head3 .ttl { font-size: 116%; }
    .head4 .ttl { font-size: 116%; }
    .speech_ttl .ttl {
     letter-spacing: .15em;
    }
    .speech_ttl .num {
     font-size: 219%;
     margin-left: 8px;
     margin-right: 6px;
    }
    .speech_ttl .dots-5 span:nth-of-type(1),
    .speech_ttl .dots-4 span:nth-of-type(1) {
     display: none;
    }
    .speech_ttl .dots-5:first-child {
      transform: rotate(45deg) translateY(-1.7em);
      margin-right: 26px;
    }
    .speech_ttl .dots-5:last-child {
      transform: rotate(-45deg) translateY(-1.7em);
      margin-left: 26px;
    }
    .speech_ttl .dots-4:first-child {
      transform: rotate(45deg) translateY(-1.2em);
      margin-right: 20px;
    }
    .speech_ttl .dots-4:last-child {
      transform: rotate(-45deg) translateY(-1.2em);
      margin-left: 20px;
    }
    .str_ttl .ttl { font-size: 214%; }
    .str_ttl .subttl { font-size: 719%; }
    .sect_ttl.dots_ttl {
      margin-left: 0;
    }
    .sect_ttl_txt {
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
    }
    .sect_txt {
      margin-top: 24px;
    }
    .sect_ttl_txt .line {
      display: none;
    }
  }
  @media screen and (max-width: 768px) {
    .sect_ttl:not(.txt-ctr) {
      margin-left: 24px;
    }
    .sect_ttl .ttl {
      font-size: 214%;
    }
    .sect_ttl .ttl:not(:last-child) {
      margin-bottom: 6px;
    }
    .sect_ttl .bubble {
      width: 18px;
      height: 18px;
      top: .7em;
      right: calc(100% + 12px);
    }
    .sect_ttl-sm:not(.txt-ctr) {
      margin-left: 0;
    }
    .sect_ttl-sm .ttl {
      font-size: 157%;
    }
    .sect_ttl-sm .subttl {
      font-size: 93%;
    }
    .sect_ttl-sm .bubble {
      top: .6em;
      right: calc(100% + 10px);
      width: 12px;
      height: 12px;
    }
    .sect_ttl-lg .ttl {
      font-size: 257%;
    }
    .sect_ttl-lg .subttl {
      font-size: 129%;
    }
    .sect_ttl-lg .bubble {
      top: .9em;
      width: 22px;
      height: 22px;
      right: calc(100% + 16px);
    }
    .sect_ttl-lg .dots-5 span:nth-of-type(1) {
      display: none;
    }
    .head1 .ttl {
      font-size: 143%;
    }
    .head1 .dots span {
      width: 4px;
      height: 4px;
    }
    .head1 .dots span:not(:last-child) {
      margin-right: 7px;
    }
    .speech_ttl .num {
      text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
                  -1px 1px 0 #FFF, 1px -1px 0 #FFF,
                   0px 1px 0 #FFF,  0 -1px 0 #FFF,
                  -1px 0 0 #FFF, 1px 0 0 #FFF;
    }
  }
  @media screen and (max-width: 560px) {
    .sect_ttl .ttl {
      font-size: 186%;
    }
    .sect_ttl .subttl {
      font-size: 93%;
    }
    .sect_ttl .bubble {
      width: 14px;
      height: 14px;
      right: calc(100% + 10px);
    }
    .sect_ttl-sm .ttl {
      font-size: 150%;
    }
    .sect_ttl-sm .subttl {
      font-size: 88%;
    }
    .sect_ttl-sm .bubble {
      width: 12px;
      height: 12px;
      right: calc(100% + 8px);
    }
    .sect_ttl-lg .ttl {
      font-size: 200%;
    }
    .sect_ttl-lg .subttl {
      font-size: 109%;
    }
    .sect_ttl-lg .bubble {
      top: .7em;
      width: 16px;
      height: 16px;
      right: calc(100% + 12px);
    }
    .head1 .ttl { font-size: 148%; }
    .head2 .ttl { font-size: 116%; }
    .head3 .ttl { font-size: 112%; }
    .head4 .ttl { font-size: 109%; }
    .str_ttl .ttl { font-size: 172%; }
    .str_ttl .subttl { font-size: 540%; }
    .str_ttl .str {
      padding-top: 4px;
      padding-bottom: 6px;
      padding-left: 10px;
      padding-right: 10px;
    }
    .speech_ttl .num {
      margin-left: 0;
      margin-right: 4px;
      font-size: 174%;
    }
    .dots_ttl .subttl {
      margin-bottom: 0;
    }
    .dots_ttl.head3 .dots {
      margin-top: 12px;
    }
    .sect_txt {
      margin-top: 16px;
    }
    .sect_txt p {
      font-size: 93%;
    }
    .slash_ttl .ttl::before,
    .slash_ttl .ttl::after {
      height: 4px;
    }
    .slash_ttl .ttl::before {
      right: calc(100% + 16px);
    }
    .slash_ttl .ttl::after {
      left: calc(100% + 16px);
    }
  }

/* txt
**************************************** */
  .fnt-en {
    font-family: futura-pt, sans-serif;
    font-weight: 600;
    font-style: normal;
  }
  .fnt-num {
    font-family: 'Jost', sans-serif;
    font-style: italic;
    letter-spacing: -.04em;
  }
  @font-face {
    font-family: houstiny;
    src: url(../fonts/Houstiny.woff) format("woff");
  }
  .fnt-scr {
    line-height: 1em;
    font-family: houstiny,serif;
    -webkit-font-smoothing: antialiased;
    font-weight: 500;
    letter-spacing: 0em;
  }
  .txt_area p:not(:last-child) { margin-bottom: 1em; }
  .txt_area p.btm_no:not(:last-child) { margin-bottom: 0; }
  .fnt-xxl {
    font-size: 129%;
    line-height: 2.5em;
  }
  .fnt-xl { font-size: 114%; }
  .fnt-lg { font-size: 108%; }
  .fnt-sm { font-size: 93%; }
  .fnt-xs { font-size: 86%; }
  .fnt-xxs { font-size: 78%; }
  .txt-lft { text-align: left; }
  .txt-ctr { text-align: center; }
  .txt-rgt { text-align: right; }
  .txt-attn {
    font-size: 88%;
    color: #999;
  }
  .tbl-lft,
  .tbl-rgt,
  .tbl-ctr {
    display: table;
  }
  .tbl-rgt,
  .tbl-ctr {
    margin-left: auto;
  }
  .tbl-lft,
  .tbl-ctr {
    margin-right: auto;
  }
  .fnt-bold { font-weight: 700; }
  .bdr_link { text-decoration: underline; }
  .ls-50 { letter-spacing: .05em; }
  .ls-100 { letter-spacing: .1em; }
  .ls-150 { letter-spacing: .15em; }
  .ls-200 { letter-spacing: .2em; }
  .ls-250 { letter-spacing: .25em; }
  .ls-300 { letter-spacing: .3em; }
  .ls-350 { letter-spacing: .35em; }
  .ls-400 { letter-spacing: .4em; }
  @media screen and (min-width: 961px) {
    .bdr_link:hover {
      text-decoration: none;
    }
  }
  @media screen and (max-width: 960px) {
    .txt-ctr-tab { text-align: center; }
    .txt-lft-tab { text-align: justify; }
    .fnt-xxl {
      font-size: 116%;
      line-height: 2em;
    }
  }
  @media screen and (max-width: 560px) {
    .txt-ctr-sp { text-align: center; }
    .txt-lft-sp { text-align: justify; }
    .fnt-xl,
    .fnt-xxl { font-size: 109%; }
    .fnt-lg { font-size: 104%; }
  }

  /* --- page_head --- */
  .page_head {
    padding-bottom: 104px;
    height: 30vw;
    min-height: 440px;
  }
  .page_head-min {
    height: 320px;
    min-height: 320px;
    padding-bottom: 80px;
  }
  .page_ttl .bubble {
    display: inline-block;
    width: 15px;
    height: 15px;
    margin-right: 8px;
    transform: translateY(3px);
  }
  .page_ttl .ttl {
    display: block;
    margin-top: 16px;
    font-size: 286%;
    line-height: 1em;
    letter-spacing: .1em;
  }
  .page_ttl .subttl {
    text-transform: uppercase;
  }
  .page_head .bg,
  .page_head .img_src {
    background-size: cover;
    background-position: center top 40%;
    background-repeat: no-repeat;
  }
  .page_head .bg {
    background-image: url(../images/common/bg_img-body_dk.jpg);
  }
  @media screen and (max-width: 1280px) {
    .page_head {
      padding-bottom: 88px;
    }
  }
  @media screen and (max-width: 960px) {
    .page_head {
      min-height: 360px;
      padding-bottom: 64px;
    }
    .page_ttl .ttl {
      margin-top: 8px;
      font-size: 229%;
    }
    .page_head-min {
      height: 280px;
      min-height: 280px;
    }
  }
  @media screen and (max-width: 768px) {
    .page_head {
      min-height: 280px;
      padding-bottom: 56px;
    }
    .page_ttl .ttl {
      font-size: 186%;
    }
  }
  @media screen and (max-width: 560px) {
    .page_head {
      min-height: 220px;
      padding-bottom: 32px;
    }
    .page_head-min {
      height: 220px;
      min-height: 220px;
    }
    .page_head .inner {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
    }
    .page_ttl {
      margin-bottom: 12px;
    }
    .page_ttl .ttl {
      margin-top: 6px;
      font-size: 157%;
    }
    .page_ttl .subttl {
      margin-top: 4px;
      font-size: 93%;
    }
    .page_ttl .bubble {
      width: 10px;
      height: 10px;
      margin-right: 4px;
      transform: translateY(2px);
    }
  }

/* table & list
**************************************** */
  table { width: 100%; }

  /* --- tbl-def --- */
  .tbl-def th,
  .tbl-def td {
    padding: 16px 8px;
  }
  .tbl-def th {
    border-bottom: 2px solid #0f3675;
  }
  .tbl-def td {
    padding: 16px 16px;
    border-bottom: 1px solid #0f3675;
    border-left: 4px solid #fff;
  }

  /* --- tbl-line --- */
  .tbl-line th,
  .tbl-line td {
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 24px;
    padding-right: 24px;
  }
  .tbl-line th {
    background-color: #0f3675;
    border: 1px solid #0f3675;
    color: #fff;
    font-size: 107%;
  }
  .tbl-line td {
    border: 1px solid #D2D2D2;
    font-size: 93%;
  }

  /* --- tbl-price --- */
  .tbl-price {
    table-layout: fixed;
  }
  .tbl-price .head4,
  .tbl-price tbody td {
    text-align: center;
  }
  .tbl-price .head4,
  .tbl-price tbody th,
  .tbl-price tbody td {
    border-width: 2px;
    border-style: solid;
    vertical-align: middle;
    background-color: rgba(255,255,255,.8);
  }
  .tbl-price .head4 {
    height: 80px;
  }
  .tbl-price .head4 .ttl {
    display: inline-block;
    line-height: 1.4em;
  }
  .tbl-price thead .clothes,
  .tbl-price tbody th {
    width: 244px;
  }
  .tbl-price tbody th {
    padding-left: 28px;
    padding-right: 28px;
  }
  .tbl-price tbody th .ico {
    width: 32px;
    height: 32px;
    margin-right: 8px;
  }
  .tbl-price tbody th .ico img {
    display: block;
  }
  .tbl-price tbody th .speech {
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 6px;
    padding-right: 6px;
    line-height: 1em;
    font-size: 71%;
    margin-left: 8px;
  }
  .tbl-price tbody th .speech::before {
    content: '';
    position: absolute;
    border-style: solid;
  }
  .tbl-price tbody td .fnt-num {
    font-size: 172%;
    margin-right: 5px;
  }
  .tbl-price tbody td .unit {
    display: inline-block;
    font-weight: bold;
    font-size: 93%;
    letter-spacing: .05em;'
    transform: translateY(-1px);
  }
  @media screen and (min-width: 769px) {
    .tbl-price tbody th .speech::before {
      top: 50%;
      right: 100%;
      transform: translateY(-50%);
      border-top: 3px solid transparent;
      border-bottom: 3px solid transparent;
      border-right-width: 4px;
      border-left-width: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .tbl-price .head4 {
      padding-top: 12px;
      padding-bottom: 10px;
      height: auto;
    }
    .tbl-price .head4 .ttl {
      font-size: 100%;
      transform: translateY(1px);
    }
    .tbl-price tbody th,
    .tbl-price tbody td {
      padding-top: 8px;
      padding-bottom: 8px;
    }
    .tbl-price thead .clothes,
    .tbl-price tbody th {
      width: 116px;
    }
    .tbl-price tbody th {
      padding-left: 8px;
      padding-right: 8px;
    }
    .tbl-price tbody th .ico_ttl {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .tbl-price tbody th .ico {
      order: 2;
      margin-right: 0;
      margin-bottom: 4px;
    }
    .tbl-price tbody th .ttl {
      order: 3;
      font-size: 86%;
      line-height: 1em;
      letter-spacing: 0em;
      text-align: center;
    }
    .tbl-price tbody th .speech {
      order: 1;
      margin-left: 0;
      margin-bottom: 6px;
      letter-spacing: 0em;
      line-height: 1.3em;
    }
    .tbl-price tbody th .speech::before {
      top: 100%;
      left: 50%;
      transform: translateX(-50%);
      border-right: 3px solid transparent;
      border-left: 3px solid transparent;
      border-top-width: 4px;
      border-bottom-width: 0;
    }
    .tbl-price tbody th .speech br {
      display: none;
    }
  }
  @media screen and (max-width: 560px) {
    .tbl-price .head4 .ttl {
      font-size: 86%;
      letter-spacing: 0em;
    }
    .tbl-price thead .clothes,
    .tbl-price tbody th {
      width: 78px;
    }
    .tbl-price tbody td .fnt-num {
      margin-right: 4px;
      font-size: 129%;
    }
    .tbl-price tbody td .unit {
      font-size: 71%;
    }
    .tbl-price tbody th .speech br {
      display: block;
    }
  }
  @media screen and (max-width: 413px) {
    .tbl-price .head4 .ttl {
      letter-spacing: .05em;
    }
    .tbl-price tbody td .fnt-num {
      margin-right: 2px;
      font-size: 116%;
    }
  }
  @media screen and (max-width: 374px) {
    .tbl-price .head4 {
      height: 48px;
    }
    .tbl-price .head4 .ttl {
      font-size: 72%;
    }
    .tbl-price tbody td {
      line-height: 1em;
    }
    .tbl-price tbody td .fnt-num {
      display: block;
      margin-right: 0;
    }
  }

  /* --- list ---- */
  .list { list-style-type: none; }
  .list li:not(:last-child) { margin-bottom: 4px; }
  .list li {
    position: relative;
    padding-left: .8em;
  }
  .list-disc li::before,
  .list-square li::before,
  .list-circle li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 1em;
    width: 3px;
    height: 3px;
    border-radius: 100%;
    background-color: #0f3675;
  }
  /* 数字付きリスト */
  .list-num {
    padding-left: 2.5em;
    list-style-type: decimal;
  }
  .list-num li { padding-left: 0; }
  .list-num li::before { display: none; }
  /* 白丸付きリスト */
  .list-circle li::before {
    border: 1px solid #0f3675;
    background-color: transparent;
  }
  /* 四角付きリスト */
  .list-square li::before {
    border-radius: 0;
    background-color: #0f3675;
  }
  /* 入れ子のスタイル */
  .list li ul { margin-top: 16px; }
  .list li ul li::before {
    width: 6px;
    height: 6px;
    top: .8em;
  }

  /* --- dlリスト --- */
  .list-dl {
    position: relative;
    border-top: 1px solid #BFBFBF;
  }
  .list-dl dt {
    position: absolute;
    padding-top: 16px;
    color: #0f3675;
    font-weight: 700;
  }
  .list-dl dd {
    padding-left: 140px;
    padding-top: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #BFBFBF;
  }

  /* --- line_list --- */
  .line_list--item {
    padding-top: 14px;
    padding-bottom: 14px;
    padding-left: 16px;
    padding-right: 16px;
    border-bottom-style: solid;
    border-bottom-width: 2px;
  }
  .line_list--item .tag {
    margin-left: 6px;
  }
  .line_list--item .attn_list {
    display: block;
    width: 100%;
  }
  .txt_area .line_list--item p:not(:last-child) {
    margin-bottom: 0;
  }

  /* --- attnリスト --- */
  .attn_list li {
    position: relative;
    padding-left: 1.2em;
    font-size: 93%;
    line-height: 1.4em;
    opacity: .65;
  }
  .attn_list li:not(:last-child) {
    margin-bottom: 6px;
  }
  .attn_list li::before {
    content: '\203B';
    position: absolute;
    top: 0;
    left: 0;
  }
  .attn_list-sm li {
    font-size: 71%;
  }
  .attn_list.clr-wht li {
    opacity: .9;
  }

  /* --- whtbox --- */
  .whtbox_list--item {
    padding-top: 32px;
    padding-bottom: 32px;
    padding-left: 24px;
    padding-right: 24px;
  }
  .whtbox_list--item .num {
    position: absolute;
    left: 50%;
    top: -40px;
    transform: translateX(-50%);
    line-height: 1em;
    font-size: 272%;
    letter-spacing: 0em;
    text-shadow: 2px 2px 0 #FFF, -2px -2px 0 #FFF,
                -2px 2px 0 #FFF, 2px -2px 0 #FFF,
                 0px 2px 0 #FFF,  0 -2px 0 #FFF,
                -2px 0 0 #FFF, 2px 0 0 #FFF;
  }
  .whtbox_list--item h4 {
    position: absolute;
    top: 12px;
    left: 8px;
    transform: rotate(90deg);
    line-height: 1.4em;
    letter-spacing: .3em;
  }
  .whtbox_list--item h4 span {
    position: absolute;
    left: 0;
    bottom: 0;
  }
  .whtbox_list--item .ico {
    display: flex;
    width: 104px;
    height: 104px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 100%;
  }
  .whtbox_list--item .ico::before {
    border-radius: 100%;
    opacity: .03;
  }
  .whtbox_list--item .head4 {
    height: 36px;
  }
  .whtbox_list--item .head4 a::before {
    z-index: 1;
  }
  .whtbox_list--item .head4 img {
    vertical-align: middle;
    display: block;
  }
  .whtbox_list--item .head4 rt {
    font-size: 55%;
    transform: scale(.9);
  }
  .whtbox_list--item .txt {
    line-height: 1.6em;
    letter-spacing: .1em;
  }
  .whtbox_list--item .bg {
    overflow: visible;
  }
  .whtbox_list--item .bg .poa::after {
    width: 72px;
    height: 72px;
    top: -28px;
    left: calc(50% - 36px);
    border-radius: 100%;
  }
  .whtbox_list--item .bg .poa.bg_clr-body_lt-bf {
    opacity: 0;
    z-index: 1;
  }
  @media screen and (min-width: 961px) {
    .home .whtbox_list--item:hover .bg .poa::before {
      border-radius: 16px;
    }
    .home .whtbox_list--item:hover .bg .poa.bg_clr-body_lt-bf {
      opacity: 1;
    }
    .home .whtbox_list--item:hover .ico::before {
      opacity: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .whtbox_list--item .num {
      top: -32px;
      font-size: 228%;
      text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
                  -1px 1px 0 #FFF, 1px -1px 0 #FFF,
                   0px 1px 0 #FFF,  0 -1px 0 #FFF,
                  -1px 0 0 #FFF, 1px 0 0 #FFF;
    }
    .whtbox_list--item .bg .poa::after {
      width: 64px;
      height: 64px;
      top: -20px;
    }
  }
  @media screen and (max-width: 560px) {
    .whtbox_list--item {
      padding-top: 24px;
      padding-bottom: 24px;
      padding-left: 12px;
      padding-right: 12px;
    }
    .whtbox_list--item .num {
      top: -30px;
      font-size: 200%;
    }
    .whtbox_list--item .ico {
      width: 40px;
      height: 40px;
      margin-bottom: 10px;
    }
    .whtbox_list--item .ico::before {
      content: none;
    }
    .whtbox_list--item .txt {
      font-size: 86%;
    }
    .whtbox_list--item h4 {
      line-height: 1.2em;
      top: 10px;
      left: 6px;
      font-size: 71%;
    }
    .whtbox_list--item-labox .head4 img {
      width: 88px;
      height: 22px;
    }
    .whtbox_list--item-lusso .head4 img {
      width: 56px;
      height: 22px;
    }
  }

  /* --- tb_img_list --- */
  .tb_img_list--item {
    padding-bottom: 32px;
  }
  .tb_img_list--item .badge {
    position: absolute;
    top: -20px;
    right: -20px;
    z-index: 1;
  }
  .tb_img_list--item .badge-price {
    top: -16px;
    right: 12px;
  }
  .tb_img_list--item > .txt,
  .tb_img_list--item > .attn_list {
    padding-left: 24px;
    padding-right: 24px;
  }
  .tb_img_list--item .btn {
    margin-top: auto;
  }
  .tb_img_list--item .btn-def .btn--in {
    min-width: 200px;
  }
  .tb_img_list--item .btn-def.btn-sm .btn--in {
    min-width: 160px;
  }
  @media screen and (max-width: 1400px) {
    .tb_img_list.clm-3 { margin-top: -24px; }
    .tb_img_list.clm-3 .tb_img_list--item {
      width: calc(50% - 12px);
      margin-top: 24px;
      margin-right: 24px;
    }
    .tb_img_list.clm-3 .tb_img_list--item:nth-of-type(even) { margin-right: 0; }
    .tb_img_list.clm-3 .tb_img_list--item img {
      width: 100%;
    }
  }
  @media screen and (max-width: 768px) {
    .tb_img_list.clm-3 { margin-top: -20px; }
    .tb_img_list.clm-3 .tb_img_list--item .speech_ttl .dots {
      display: none;
    }
    .tb_img_list.clm-3 .tb_img_list--item img {
      width: 100%;
    }
    .tb_img_list--item .badge {
      max-width: 20%;
      top: -12px;
      right: -12px;
    }
    .tb_img_list--item .speech_ttl {
      text-align: center;
    }
  }
  @media screen and (max-width: 560px) {
    .tb_img_list--item {
      padding-bottom: 24px;
    }
    .tb_img_list.clm-3 { margin-top: -24px; }
    .tb_img_list.clm-3 .tb_img_list--item {
      width: calc(50% - 6px);
      margin-top: 24px;
      margin-right: 12px;
    }
    .tb_img_list.clm-3 .tb_img_list--item:nth-of-type(even) { margin-right: 0; }
    .tb_img_list--item .badge {
      max-width: 30%;
      top: -8px;
      right: -8px;
    }
    .tb_img_list--item > .txt,
    .tb_img_list--item > .attn_list {
      padding-left: 16px;
      padding-right: 16px;
    }
    .tb_img_list--item > .txt {
      font-size: 93%;
      line-height: 1.6em;
    }
    .tb_img_list--item .btn-def {
      width: calc(100% - 32px);
    }
    .tb_img_list--item .btn-def .btn--in {
      min-width: 100%;
      height: 34px;
    }
    .tb_img_list--item .btn-def .txt {
      margin-right: 0;
      font-size: 86%;
    }
  }
  @media screen and (max-width: 374px) {
    .tb_img_list--item > .txt,
    .tb_img_list--item > .attn_list {
      padding-left: 8px;
      padding-right: 8px;
    }
    .tb_img_list.clm-3 .tb_img_list--item .head2 .ttl {
      font-size: 109%;
      line-height: 1.4em;
    }
    .tb_img_list--item .btn-def {
      width: calc(100% - 16px);
    }
    .tb_img_list--item .btn-def .bubble {
      display: none;
    }
  }

  /* --- lr_img_list --- */
  .lr_img_list--item .wave_img {
    width: 40%;
    padding-top: 33%;
  }
  .lr_img_list--item .wave_img .img_src {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
  .lr_img_list--item .wave_img svg.wave-hor {
    display: none;
  }
  .lr_img_list--item .txt_area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
    padding-top: 32px;
    padding-bottom: 32px;
    padding-left: 32px;
    padding-right: 32px;
    height: 100%;
  }
  .lr_img_list--item .img_ttl .img {
    margin-right: 8px;
    margin-bottom: 4px;
  }
  .lr_img_list--item .btn-txt {
    margin-top: auto;
  }
  .lr_img_list--item .attn_list {
    margin-top: 12px;
  }
  .lr_img_list--item .badge {
    position: absolute;
    top: -20px;
    left: -20px;
  }
  @media screen and (min-width: 1065px) {
    .lr_img_list--item {
      background-color: transparent;
    }
  }
  @media screen and (max-width: 1280px) {
    .lr_img_list--item .txt_area {
      padding-left: 20px;
      padding-right: 20px;
    }
    .lr_img_list.clm-2 { margin-top: -40px; }
    .lr_img_list.clm-2 .lr_img_list--item {
      width: calc(50% - 12px);
      margin-top: 40px;
      margin-right: 24px;
    }
    .lr_img_list.clm-2 .lr_img_list--item:nth-of-type(even) { margin-right: 0; }
  }
  @media screen and (max-width: 1064px) {
    .lr_img_list--item {
      padding-bottom: 24px;
    }
    .lr_img_list--item .item--in {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .lr_img_list--item .wave_img {
      width: 100%;
      padding-top: 60%;
    }
    .lr_img_list--item .wave_img svg {
      display: none;
    }
    .lr_img_list--item .txt_area,
    .lr_img_list--item .attn_list {
      padding-left: 24px;
      padding-right: 24px;
    }
    .lr_img_list--item .txt_area {
      position: relative;
      z-index: 1;
      padding-top: 0;
      padding-bottom: 0;
    }
    .lr_img_list--item .head4 {
      text-align: center;
      margin-bottom: 16px;
      margin-top: -16px;
    }
    .lr_img_list--item .head4 .ttl {
      display: block;
      line-height: 1.4em;
    }
    .lr_img_list--item .img_ttl .img {
      display: table;
      margin-left: auto;
      margin-right: auto;
      z-index: -1;
    }
    .lr_img_list--item .img_ttl .img::before {
      border-radius: 100%;
      transform: scale(2.5) translateY(9%);
    }
    .lr_img_list--item .txt {
      font-size: 93%;
      line-height: 1.6em;
    }
    .lr_img_list--item .btn-txt {
      margin-right: auto;
    }
  }
  @media screen and (max-width: 560px) {
    .lr_img_list.clm-2 { margin-top: -24px; }
    .lr_img_list.clm-2 .lr_img_list--item,
    .lr_img_list.clm-2 .lr_img_list--item:nth-of-type(even) {
      width: calc(50% - 6px);
      margin-top: 24px;
      margin-right: 12px;
    }
    .lr_img_list.clm-2 .lr_img_list--item:nth-of-type(even) {
      margin-right: 0;
    }
    /*.lr_img_list.clm-2 .lr_img_list--item:first-child { width: 100%; }
    .lr_img_list.clm-2 .lr_img_list--item:nth-of-type(odd) { margin-right: 0; }
    .lr_img_list--item {
      padding-bottom: 16px;
    }
    .lr_img_list--item .wave_img {
      padding-top: 90%;
    }
    .lr_img_list.clm-2 .lr_img_list--item:first-child .wave_img {
      padding-top: 45%;
    }
    .lr_img_list.clm-2 .lr_img_list--item:first-child .txt_area {
      text-align: center;
    }*/
    .lr_img_list--item .txt_area,
    .lr_img_list--item .attn_list {
      padding-left: 16px;
      padding-right: 16px;
    }
    .lr_img_list--item .txt_area .head4 {
      margin-bottom: 8px;
    }
    .lr_img_list--item .txt_area .ttl.sp-2lines {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      height: 3em;
    }
    .lr_img_list--item .attn_list li {
      font-size: 70%;
      letter-spacing: .05em;
    }
    .lr_img_list--item .btn-txt .txt {
      margin-right: 6px;
    }
    .lr_img_list--item .btn-txt .txt br {
      display: none;
    }
    .lr_img_list--item .btn-txt .bubble {
      width: 10px;
      height: 10px;
    }
    .lr_img_list--item .btn-txt .txt {
      font-size: 86%;
    }
    .lr_img_list--item .btn-txt .ico {
      width: 16px;
      height: 16px;
    }
    .lr_img_list--item .btn-txt .ico-line_arrow::before {
      width: 12px;
    }
  }
  @media screen and (max-width: 374px) {
    .lr_img_list.clm-2 .lr_img_list--item,
    .lr_img_list.clm-2 .lr_img_list--item:nth-of-type(even),
    .lr_img_list.clm-2 .lr_img_list--item:nth-of-type(odd) {
      width: 100%;
      margin-left: 16px;
      margin-right: 16px;
    }
    .lr_img_list--item .wave_img,
    .lr_img_list.clm-2 .lr_img_list--item:first-child .wave_img {
      padding-top: 60%;
    }
    .lr_img_list--item .txt_area .head4 br {
      display: none;
    }
    .lr_img_list--item .txt_area .ttl.sp-2lines {
      height: auto;
    }
  }

  /* -- sns_list --- */
  .sns_list--item:not(:last-child) {
    margin-right: 24px;
  }
  .sns_list--item a {
    width: 48px;
    height: 48px;
  }
  .sns_list--item a::before {
    border-width: 1px;
    border-style: solid;
    border-radius: 100%;
  }

/* btn
**************************************** */
  .btn {
    display: table;
  }
  .btn.btn-sm .btn--in { font-size: 93%; }
  .btn.btn-lg .btn--in { font-size: 108%; }
  .btn .btn--in { font-weight: 700; }
  .btn .bubble {
    width: 12px;
    height: 12px;
    margin-right: 6px;
  }
  .btn.btn-sm .bubble {
    width: 10px;
    height: 10px;
  }
  .btn.btn-lg .bubble {
    width: 16px;
    height: 16px;
  }
  @media screen and (min-width: 961px) {
    .btn:hover .frame {
      opacity: .35;
    }
    .btn:hover .ico-line_arrow,
    .hov_area:hover .ico-line_arrow,
    .contact_btn:hover .ico-arrow {
      animation-duration: .5s;
      animation-timing-function: cubic-bezier(0.22,0.61,0.36,1);
      animation-delay: 0s,.5s;
      animation-iteration-count: 1;
      animation-fill-mode: forwards;
      animation-name: mov_out-x,mov_in-x;
    }
  }

  /* --- btn-def --- */
  .btn-def .btn--in {
    min-width: 260px;
    height: 40px;
    padding-left: 12px;
    padding-right: 16px;
  }
  .btn-def .txt,
  .btn-txt .txt {
    display: inline-block;
    margin-right: 24px;
    transform: translateY(-1px);
    line-height: 1.6em;
  }
  .btn-def .frame {
    border-style: solid;
    border-width: 1px;
    opacity: .75;
    border-radius: 3px;
  }
  .btn-def .frame::before,
  .btn-def .frame::after {
    content: '';
    position: absolute;
    z-index: 1;
    width: 10px;
    height: 2px;
  }
  .btn-def .frame::before {
    top: -1px;
    right: 8px;
  }
  .btn-def .frame::after {
    bottom: -1px;
    left: 8px;
  }
  .btn-def .ico {
    margin-left: auto;
  }
  .btn-def .ico-outlink {
    width: 12px;
    height: 12px;
  }
  .btn-def.btn-sm .btn--in {
    min-width: 240px;
    height: 32px;
  }
  .btn-def.btn-lg .btn--in {
    height: 56px;
    min-width: 280px;
  }
  .btn-def.btn-radius .frame {
    border-radius: 100px;
  }
  @media screen and (min-width: 961px) {
    .btn:not(:hover) .bubble {
      transform: rotate(30deg);
      opacity: .75;
    }
    .btn:not(:hover) .bubble span {
      width: 3px;
      height: 3px;
    }
    .btn:not(:hover) .bubble span:nth-of-type(1),
    .btn:not(:hover) .bubble span:nth-of-type(2) {
      top: calc(50% - 1px);
    }
    .btn:not(:hover) .bubble span:nth-of-type(1) {
      left: calc(50% - 1px);
    }
    .btn:not(:hover) .bubble span:nth-of-type(2),
    .btn:not(:hover) .bubble span:nth-of-type(3) {
      right: calc(50% - 2px);
    }
    .btn:not(:hover) .bubble span:nth-of-type(3) {
      bottom: calc(50% - 2px);
    }
    .btn-def:hover .frame::before,
    .btn-def:hover .frame::after {
      width: 8px;
    }
    .btn-def:hover .frame::before {
      transform: translateX(4px);
    }
    .btn-def:hover .frame::after {
      transform: translateX(-4px);
    }
  }

  /* --- btn-cir ---- */
  .btn-cir .btn--in {
    padding-top: 12px;
    padding-left: 18px;
    padding-right: 18px;
  }
  .btn-cir .frame {
    top: 50%;
    transform: translateY(-50%);
    height: auto;
    padding-top: 100%;
    border-width: 1px;
    border-style: solid;
    border-radius: 100%;
  }
  .btn-cir .frame::before {
    content: '';
    position: absolute;
    bottom: 9%;
    left: 9%;
    width: 12px;
    height: 12px;
    border-radius: 100%;
  }
  @media screen and (min-width: 961px) {
    .btn-cir:hover .frame {
      transform: translateY(-50%) rotate(6deg);
    }
    .btn-cir:hover .frame::before {
      transform: scale(.5);
    }
  }
  @media screen and (max-width: 768px) {
    .btn-cir .btn--in {
      font-size: 72%;
    }
    .btn-def .txt,
    .btn-txt .txt {
      margin-right: 16px;
    }
  }
  @media screen and (max-width: 560px) {
    .btn.btn-lg .btn--in {
      font-size: 100%;
      height: 48px;
    }
    .btn.btn-lg .bubble {
      width: 14px;
    }
  }

  /* --- btn-fix_btm --- */
  .btn-fix_btm {
    position: fixed;
    bottom: 8px;
    left: 8px;
    right: 8px;
    z-index: 10001;
    padding-top: 14px;
    padding-bottom: 14px;
    padding-left: 24px;
    padding-right: 24px;
    line-height: 1em;
  }
  .btn-fix_btm::before {
    border-width: 2px;
    border-style: solid;
  }
  .btn-fix_btm .iw {
    margin-right: 6px;
    font-size: 109%;
  }
  .btn-fix_btm.active {
    color: #fff;
  }
  .btn-fix_btm.active::before {
    opacity: 0;
  }
  .btn-fix_btm.is_hide {
    opacity: 0;
    pointer-events: none;
  }

  /* --- btn-tgl --- */
  .btn-tgl {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 32px;
    height: 32px;
    display: block;
  }
  .btn-tgl::before {
    content: '';
    position: absolute;
    top: calc(50% - 3px);
    left: calc(50% - 3px);
    width: 6px;
    height: 6px;
    border-top-width: 2px;
    border-right-width: 2px;
    border-top-style: solid;
    border-right-style: solid;
    transform: rotate(135deg);
  }
  .active > .btn-tgl {
    transform: rotate(180deg);
  }

/* line
**************************************** */

  /* --- dot_line --- */
  .dot_line {
    display: inline-block;
    width: 100%;
    height: 4px;
    background-size: auto 4px;
    background-position: left;
    background-repeat: repeat-x;
    background-image: url(../images/common/dot_line-wht.png);
  }
  @media screen and (max-width: 560px) {
    .dot_line {
      height: 3px;
      background-size: auto 3px;
    }
  }

/* lr_bloc
**************************************** */
  .lr_bloc {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .lr_bloc:not(:last-child) {
    margin-bottom: 64px;
  }
  .lr_bloc:nth-of-type(even) {
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .lr_bloc .img_area {
    max-width: 55%;
  }
  .lr_bloc .txt_area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
    padding-top: 56px;
    padding-bottom: 56px;
    padding-left: 64px;
    padding-right: 64px;
    min-height: 416px;
    box-shadow: 0 2px 32px rgba(0,16,57,.05);
  }
  .lr_bloc:nth-of-type(odd) .txt_area {
    margin-left: -56px;
  }
  .lr_bloc:nth-of-type(even) .txt_area {
    margin-right: -56px;
  }
  .lr_bloc .txt_area::before {
    opacity: 0.97;
  }
  @media screen and (max-width: 1064px) {
    .lr_bloc,
    .lr_bloc:nth-of-type(even) {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .lr_bloc .img_area {
      width: 80%;
      max-width: 100%;
      text-align: center;
      margin-bottom: -40px;
      margin-left: auto;
      margin-right: auto;
    }
    .lr_bloc .txt_area {
      width: 65%;
      min-height: inherit;
      padding-top: 40px;
      padding-bottom: 40px;
      padding-left: 48px;
      padding-right: 48px;
    }
    .lr_bloc:nth-of-type(odd) .txt_area {
      margin-left: 0;
    }
    .lr_bloc:nth-of-type(even) .txt_area {
      margin-right: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .lr_bloc .img_area {
      width: 90%;
      margin-bottom: -32px;
    }
    .lr_bloc .txt_area {
      width: 80%;
    }
  }
  @media screen and (max-width: 560px) {
    .lr_bloc:not(:last-child) {
      margin-bottom: 28px;
    }
    .lr_bloc .img_area {
      width: 95%;
      margin-bottom: -20px;
    }
    .lr_bloc .txt_area {
      width: 85%;
      padding-top: 18px;
      padding-bottom: 18px;
      padding-left: 22px;
      padding-right: 22px;
    }
  }
  @media screen and (max-width: 413px) {
    .lr_bloc .img_area {
      width: 100%;
    }
    .lr_bloc .txt_area {
      width: 90%;
    }
  }

/* pdg_bloc
**************************************** */
  .pdg_bloc {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 40px;
    padding-right: 40px;
  }
  .pdg_bloc-lg {
    padding-top: 64px;
    padding-bottom: 64px;
    padding-left: 64px;
    padding-right: 64px;
  }
  .pdg_bloc:not(:last-child) {
    margin-bottom: 32px;
  }
  .pdg_bloc.flx .txt_area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
    margin-left: 40px;
  }
  @media screen and (max-width: 1064px) {
    .pdg_bloc {
      padding-top: 32px;
      padding-bottom: 32px;
      padding-left: 32px;
      padding-right: 32px;
    }
    .pdg_bloc-lg {
      padding-top: 48px;
      padding-bottom: 48px;
      padding-left: 48px;
      padding-right: 48px;
    }
    .pdg_bloc.flx {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .pdg_bloc.flx .img_area {
      text-align: center;
      margin-bottom: 32px;
    }
    .pdg_bloc.flx .txt_area {
      margin-left: 0;
    }
  }
  @media screen and (max-width: 560px) {
    .pdg_bloc {
      padding-top: 24px;
      padding-bottom: 24px;
      padding-left: 24px;
      padding-right: 24px;
    }
    .pdg_bloc-lg {
      padding-top: 32px;
      padding-bottom: 32px;
      padding-left: 32px;
      padding-right: 32px;
    }
    .pdg_bloc.flx .img_area {
      margin-bottom: 20px;
    }
  }

/* column
**************************************** */
  .clm {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  /* --- clm2 --- */
  .clm-2 { margin-top: -56px; }
  .clm-2 > * {
    width: calc(50% - 28px);
    margin-top: 56px;
    margin-right: 56px;
  }
  .clm-2 > *:nth-of-type(even) { margin-right: 0; }

  /* --- clm3 --- */
  .clm-3 { margin-top: -40px; }
  .clm-3 > * {
    width: calc(100% / 3 - 27px);
    margin-top: 40px;
    margin-right: 40px;
  }
  .clm-3 > *:nth-of-type(3n+3) { margin-right: 0; }

  /* --- clm4 --- */
  .clm-4 { margin-top: -40px; }
  .clm-4 > * {
    width: calc(100% / 4 - 30px);
    margin-top: 40px;
    margin-right: 40px;
  }
  .clm-4 > *:nth-of-type(4n+4) { margin-right: 0; }

  /* --- clm5 --- */
  .clm-5 { margin-top: -24px; }
  .clm-5 > * {
    width: calc(100% / 5 - 20px);
    margin-top: 24px;
    margin-right: 24px;
  }
  .clm-5 > *:nth-of-type(5n+5) { margin-right: 0; }

/* ico
*************************************************** */
  .ico:not(.flx) {
    position: relative;
    display: inline-block;
    width: 24px;
    height: 24px;
  }
  @media screen and (max-width: 768px) {
    .ico:not(.flx) {
      width: 18px;
      height: 18px;
    }
  }

  /* --- outlink --- */
  .ico-outlink::before,
  .ico-outlink::after {
    content: '';
    position: absolute;
    width: 10px;
    height: 6px;
    border-style: solid;
    border-width: 1px;
  }
  .ico-outlink::before {
    bottom: calc(50% - 4px);
    left: calc(50% - 6px);
  }
  .ico-outlink::after {
    top: calc(50% - 4px);
    right: calc(50% - 6px);
    border-left: none;
    border-bottom: none;
  }

  /* --- arrow --- */
  .ico-arrow::before {
    content: '';
    position: absolute;
    top: calc(50% - 3px);
    left: calc(50% - 3px);
    width: 6px;
    height: 6px;
    border-top-style: solid;
    border-top-width: 1px;
    border-right-style: solid;
    border-right-width: 1px;
    transform: rotate(45deg);
  }
  @media screen and (max-width: 768px) {
    .ico-arrow::before {
      top: calc(50% - 2px);
      left: calc(50% - 2px);
      width: 4px;
      height: 4px;
    }
  }

  /* --- line_arrow --- */
  .ico-line_arrow::before,
  .ico-line_arrow::after {
    content: '';
    position: absolute;
    border-top-style: solid;
    border-top-width: 1px;
  }
  .ico-line_arrow::before {
    width: 20px;
    left: 0;
    top: calc(50% - 1px);
  }
  .ico-line_arrow::after {
    top: calc(50% - 3px);
    right: 0;
    width: 5px;
    height: 5px;
    border-right-style: solid;
    border-right-width: 1px;
    transform: rotate(45deg);
  }
  @media screen and (max-width: 768px) {
    .ico-line_arrow::before {
      width: 14px;
    }
  }

/* fall_area
*************************************************** */
  .fall_area {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    height: 100%;
    transform: rotate(180deg);
  }
  .fall_area .snowfall-flakes {
    border-radius: 100%;
  }
  .fall_area .snowfall-flakes:nth-of-type(3n+1) {
    background-color: #0f3675 !important;
    opacity: .035;
  }
  .fall_area .snowfall-flakes:nth-of-type(3n+2) {
    background-color: #0787bf !important;
    opacity: .02;
  }
  .fall_area .snowfall-flakes:nth-of-type(3n+3) {
    background-color: #71afd6 !important;
    opacity: .05;
  }

/* bubble
*************************************************** */
  .bubble {
    position: relative;
    z-index: 0;
    width: 23px;
    height: 23px;
    transition-delay: 500ms;
  }
  .bubble span {
    position: absolute;
    opacity: .5;
    border-radius: 100%;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.22,0.61,0.36,1);
    transition-duration: .35s;
    transition-delay: 500ms;
  }
  .bubble span:nth-of-type(1) {
    top: 9%;
    left: 0;
    width: 62%;
    height: 62%;
  }
  .bubble span:nth-of-type(2) {
    top: 3%;
    right: 7%;
    width: 25%;
    height: 25%;
  }
  .bubble span:nth-of-type(3) {
    bottom: 2%;
    right: 0%;
    width: 34%;
    height: 34%;
  }
  .bubble_imgs,
  .bubble_imgs .bubble_img {
    position: absolute;
    z-index: 1;
    pointer-events: none;
  }
  .bubble_imgs .bubble_img-lft {
    top: 72px;
    left: -32px;
  }
  .bubble_imgs .bubble_img-rgt {
    bottom: -184px;
    right: -72px;
  }
  .page-cleaning .bubble_imgs .bubble_img-lft {
    top: 32px;
  }
  .page-cleaning .bubble_imgs .bubble_img-rgt {
    bottom: -104px;
  }
  section:not(.visible) .sect_ttl .bubble {
    transform: rotate(30deg);
    opacity: .75;
  }
  section:not(.visible) .sect_ttl .bubble span {
    width: 8px;
    height: 8px;
  }
  section:not(.visible) .sect_ttl .bubble span:nth-of-type(1),
  section:not(.visible) .sect_ttl .bubble span:nth-of-type(2) {
    top: calc(50% - 4px);
  }
  section:not(.visible) .sect_ttl .bubble span:nth-of-type(1) {
    left: calc(50% - 4px);
  }
  section:not(.visible) .sect_ttl .bubble span:nth-of-type(2),
  section:not(.visible) .sect_ttl .bubble span:nth-of-type(3) {
    right: calc(50% - 4px);
  }
  section:not(.visible) .sect_ttl .bubble span:nth-of-type(3) {
    bottom: calc(50% - 4px);
  }
  @media screen and (max-width: 1064px) {
    .bubble_imgs .bubble_img-lft,
    .bubble_imgs .bubble_img-rgt {
      max-width: 19%;
    }
    .bubble_imgs .bubble_img-lft {
      top: 132px;
      left: -22px;
    }
    .bubble_imgs .bubble_img-rgt {
      bottom: -244px;
      right: -22px;
    }
  }
  @media screen and (max-width: 560px) {
    .bubble_imgs .bubble_img-lft,
    .bubble_imgs .bubble_img-rgt {
      max-width: 24%;
      transform: none !important;
    }
    .bubble_imgs .bubble_img-lft,
    .page-cleaning .bubble_imgs .bubble_img-lft {
      top: -12px;
      left: 2px;
    }
    .bubble_imgs .bubble_img-rgt,
    .page-cleaning .bubble_imgs .bubble_img-rgt {
      bottom: -12px;
      right: -2px;
    }
  }

/* wave_img
*************************************************** */
  .wave_img svg {
    position: absolute;
    display: block;
  }
  .wave_img-hor svg {
    bottom: -1px;
    left: -1px;
    width: calc(100% + 2px);
  }
  .wave_img-ver svg {
    top: -1px;
    right: -1px;
    height: calc(100% + 2px);
  }
  @media screen and (max-width: 560px) {
    .wave_img-hor svg {
      transform: scale(1.1);
    }
  }

/* tag
*************************************************** */
  .tag {
    line-height: 1em;
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 8px;
    padding-right: 8px;
    border-radius: 100px;
  }

/* sale
*************************************************** */
  .sale .inner {
    padding-top: 104px;
    padding-bottom: 64px;
  }
  .sale.posts_num-1 .inner { max-width: 800px; }
  .sale.posts_num-2 .inner { max-width: 960px; }
  .sale.posts_num-3 .inner { max-width: 1280px; }
  .sale .inner::before {
    top: 40px;
    height: calc(100% - 40px);
  }
  .sale .sect_ttl .bubble {
    right: 0;
    top: 0;
    width: 54px;
    height: 54px;
    opacity: .15;
  }
  .sale .posts-sale {
    margin-top: -104px;
    margin-left: 64px;
  }
  .sale .btn {
    margin-top: auto;
  }
  .sale .btn-def .btn--in {
    min-width: 212px;
  }
  .sale .posts-sale .post {
    width: 252px;
    margin-top: -16px;
    padding-top: 16px;
    padding-left: 20px;
    padding-right: 20px;
  }
  @media screen and (max-width: 1280px) {
    .sale .inner {
      padding-top: 64px;
      padding-bottom: 64px;
      padding-left: 64px;
      padding-right: 64px;
    }
    .sale .inner::before {
      top: 0;
      height: 100%;
    }
    .sale .ttl_btn {
      margin-bottom: 56px;
    }
    .sale .btn {
      position: absolute;
      bottom: 64px;
      left: 50%;
      transform: translateX(-50%);
    }
    .sale .sect_ttl {
      text-align: center;
      margin-left: 0;
    }
    .sale .sect_ttl .bubble {
      display: none;
    }
    .sale .sect_ttl .hyphen {
      display: none;
    }
    .sale .posts-sale {
      width: 100%;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-top: 0;
      margin-left: 0;
      margin-bottom: 96px;
    }
    .sale .posts-sale .post {
      max-width: calc(100% / 3);
    }
  }
  @media screen and (max-width: 768px) {
    .sale .posts-sale .post {
      width: 100%;
      max-width: 100%;
      margin-top: 0;
      padding-left: 92px;
    }
    .sale .ttl_btn {
      margin-bottom: 40px;
    }
  }
  @media screen and (max-width: 560px) {
    .sale .posts-sale {
      margin-bottom: 64px;
    }
    .sale .btn {
      bottom: 32px;
    }
    .sale .inner {
      padding-left: 24px;
      padding-right: 24px;
      padding-top: 32px;
      padding-bottom: 32px;
    }
    .sale .ttl_btn {
      margin-bottom: 16px;
    }
  }
  @media screen and (max-width: 374px) {
    .sale .inner {
      padding-left: 12px;
      padding-right: 12px;
    }
    .sale .posts-sale .post {
      padding-left: 88px;
    }
    .sale .posts-sale .post--date {
      letter-spacing: .05em;
    }
  }

/* search_links
*************************************************** */
  .search_links .ttl_sum {
    margin-right: auto;
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .search_links .sum_area {
    margin-top: auto;
  }
  .search_links .sum_txt {
    margin-bottom: -10px;
    font-size: 172%;
    letter-spacing: .15em;
  }
  .search_links .sum_txt .num {
    display: inline-block;
    line-height: 1em;
    transform: translateY(1px);
    font-size: 208%;
    letter-spacing: .05em;
    margin-left: 4px;
    margin-right: 4px;
    text-shadow: 2px 2px 0 #FFF, -2px -2px 0 #FFF,
                -2px 2px 0 #FFF, 2px -2px 0 #FFF,
                 0px 2px 0 #FFF,  0 -2px 0 #FFF,
                -2px 0 0 #FFF, 2px 0 0 #FFF;
  }
  .search_links .link_box {
    padding-bottom: 32px;
    width: 436px;
  }
  .search_links .link_box:not(:last-child) {
    margin-right: 48px;
  }
  .search_links .link_box::before {
    top: -12px;
    left: -12px;
    width: calc(100% + 24px);
    height: calc(100% + 24px);
    opacity: .3;
  }
  .search_links .link_box a::before {
    z-index: 1;
  }
  .search_links .ico_svg {
    width: 96px;
    height: 96px;
    border-radius: 100%;
    margin-top: -40px;
    margin-bottom: -24px;
    margin-left: auto;
    margin-right: auto;
    z-index: -1;
  }
  .search_links .ico_svg svg {
    margin-top: -16px;
  }
  .search_links .scr_imgs {
    height: 146px;
  }
  @media screen and (min-width: 961px) {
    .search_links .link_box:hover::before {
      transform: scale(1.02);
      opacity: .65;
    }
  }
  @media screen and (max-width: 1400px) {
    .search_links .link_box {
      width: 412px;
    }
  }
  @media screen and (max-width: 1280px) {
    .search_links .inner  {
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
    }
    .search_links .ttl_sum {
      width: 100%;
      max-width: 896px;
      margin-left: auto;
      margin-right: auto;
      -webkit-flex-direction: row;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      margin-bottom: 56px;
    }
  }
  @media screen and (max-width: 1064px) {
    .search_links .ttl_sum {
      max-width: calc(100% - 56px);
      padding-top: 0;
      margin-top: -32px;
    }
    .search_links .link_box {
      width: calc(50% - 20px);
    }
    .search_links .link_box:not(:last-child) {
      margin-right: 40px;
    }
    .search_links .link_box-service {
      padding-left: 24px;
      padding-right: 24px;
    }
  }
  @media screen and (max-width: 768px) {
    .search_links .inner {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .search_links .sum_area .fnt-lg {
      font-size: 93%;
      letter-spacing: .08em;
    }
    .search_links .sum_txt {
      font-size: 143%;
    }
    .search_links .sum_txt .num {
      font-size: 160%;
      text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
                -1px 1px 0 #FFF, 1px -1px 0 #FFF,
                 0px 1px 0 #FFF,  0 -1px 0 #FFF,
                -1px 0 0 #FFF, 1px 0 0 #FFF;
    }
    .search_links .link_box {
      width: 100%;
      max-width: 440px;
      margin-left: auto;
      margin-right: auto;
    }
    .search_links .link_box:not(:last-child) {
      margin-right: auto;
      margin-bottom: 72px;
    }
  }
  @media screen and (max-width: 560px) {
    .search_links .ttl_sum {
      max-width: 100%;
      margin-top: -24px;
      margin-bottom: 24px;
    }
    .search_links .sum_area {
      font-size: 78%;
      margin-top: 4px;
    }
    .search_links .link_box::before {
      top: -8px;
      left: -8px;
      width: calc(100% + 16px);
      height: calc(100% + 16px);
    }
    .search_links .link_box:not(:last-child) {
      margin-bottom: 42px;
    }
    .search_links .ico_svg {
      width: 72px;
      height: 72px;
      margin-top: -26px;
    }
    .search_links .ico_svg svg {
      width: 40px;
      height: 40px;
    }
  }
  @media screen and (max-width: 374px) {
    .search_links .sect_ttl:not(.txt-ctr) {
      margin-left: 20px;
    }
    .search_links .sect_ttl .subttl {
      letter-spacing: .05em;
      font-size: 82%;
    }
    .search_links .sum_area {
      font-size: 72%;
      margin-top: 12px;
    }
    .search_links .sum_area .fnt-lg {
      letter-spacing: 0em;
    }
    .search_links .sum_txt {
      letter-spacing: .04em;
    }
    .search_links .sum_txt {

    }
    .search_links .link_box,
    .search_links .link_box-service {
      padding-bottom: 20px;
    }
    .search_links .link_box-service {
      padding-left: 16px;
      padding-right: 16px;
    }
    .search_links .head2 .ttl {
      font-size: 116%;
    }
    .search_links p {
      font-size: 93%;
      margin-top: -6px;
    }
  }

/* sect-seven_colors
*************************************************** */
  .sect-seven_colors .inner {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .sect-seven_colors .txt_area {
    margin-right: 64px;
  }
  .sect-seven_colors .str_ttl .str {
    margin-left: 0;
  }
  .sect-seven_colors .btn_img {
    padding-top: 38%;
    padding-left: 24px;
    padding-right: 24px;
    padding-bottom: 18px;
    width: 300px;
  }
  .sect-seven_colors .btn_img:not(:last-child) {
    margin-right: 24px;
  }
  .sect-seven_colors .btn_img::before {
    opacity: .5;
    background-color: #8e301e;
  }
  .sect-seven_colors .btn_img::after {
    opacity: 0;
  }
  .sect-seven_colors .btn_img .txt {
    margin-right: 12px;
  }
  .sect-seven_colors .btn_img .bg_img {
    z-index: -10;
  }
  .sect-seven_colors .btn_img-shop .bg_img {
    background-image: url(../images/home/seven_colors_img-shop.jpg);
  }
  .sect-seven_colors .btn_img-corp .bg_img {
    background-image: url(../images/home/seven_colors_img-corp.jpg);
  }
  .sect-seven_colors .btn_img a::before {
    z-index: 1;
  }
  .sect-seven_colors .inner > .bg > .bg_img {
    background-image: url(../images/home/seven_colors_img-bg.jpg);
    z-index: -10;
  }
  .sect-seven_colors .inner > .bg::before {
    top: 24px;
    left: 24px;
    width: calc(100% - 48px);
    height: calc(100% - 48px);
  }
  .sect-seven_colors .bubble_imgs .bubble_img-lft {
    top: -40px;
  }
  .sect-seven_colors .bubble_imgs .bubble_img-rgt {
    bottom: -32px;
  }
  @media screen and (min-width: 961px) {
    .sect-seven_colors .btn_img:hover {
      border-radius: 20px;
      transition-delay: 0s;
    }
    .sect-seven_colors .btn_img:hover::before {
      opacity: 0;
    }
    .sect-seven_colors .btn_img:hover::after {
      opacity: .5;
    }
    .sect-seven_colors .btn_img:hover .bg_img {
      transform: scale(1.05);
    }
  }
  @media screen and (max-width: 1400px) {
    .sect-seven_colors .txt_area {
      margin-right: 48px;
    }
    .sect-seven_colors .str_ttl .ttl {
      font-size: 243%;
    }
  }
  @media screen and (max-width: 1280px) {
    .sect-seven_colors .txt_area {
      font-size: 93%;
      margin-right: 40px;
    }
    .sect-seven_colors .btn_img {
      width: 240px;
      padding-left: 16px;
      padding-right: 16px;
      padding-bottom: 12px;
    }
    .sect-seven_colors .btn_img:not(:last-child) {
      margin-right: 16px;
    }
  }
  @media screen and (max-width: 1064px) {
    .sect-seven_colors .inner {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      padding-top: 48px;
      padding-bottom: 56px;
      padding-left: 56px;
      padding-right: 56px;
    }
    .sect-seven_colors .txt_area {
      margin-right: 0;
      text-align: center;
      margin-bottom: 32px;
    }
    .sect-seven_colors .str_ttl {
      text-align: center;
      margin-bottom: 20px;
    }
    .sect-seven_colors .str_ttl .ttl {
      font-size: 200%;
    }
    .sect-seven_colors .btn_imgs {
      width: 100%;
    }
    .sect-seven_colors .btn_img {
      padding-top: 24%;
      width: calc(50% - 8px);
    }
    .sect-seven_colors .inner > .bg::before {
      top: 16px;
      left: 16px;
      width: calc(100% - 32px);
      height: calc(100% - 32px);
    }
  }
  @media screen and (max-width: 768px) {
    .sect-seven_colors .inner {
      padding-top: 32px;
      padding-bottom: 40px;
      padding-left: 32px;
      padding-right: 32px;
    }
    .sect-seven_colors .str_ttl {
      margin-bottom: 12px;
    }
    .sect-seven_colors .str_ttl .ttl {
      font-size: 169%;
      letter-spacing: .1em;
      line-height: 1.8em;
    }
    .sect-seven_colors .str_ttl .str {
      padding-top: 6px;
      padding-bottom: 6px;
      margin-right: 8px;
    }
    .sect-seven_colors .btn_img a {
      font-size: 93%;
    }
    .sect-seven_colors .inner > .bg::before {
      top: 12px;
      left: 12px;
      width: calc(100% - 24px);
      height: calc(100% - 24px);
    }
    .sect-seven_colors .bubble_imgs .bubble_img-lft {
      top: -14px;
    }
    .sect-seven_colors .bubble_imgs .bubble_img-rgt {
      bottom: -20px;
    }
  }
  @media screen and (max-width: 560px) {
    .sect-seven_colors .txt_area {
      margin-bottom: 16px;
    }
    .sect-seven_colors .str_ttl {
      margin-bottom: 8px;
    }
    .sect-seven_colors .str_ttl .ttl {
      font-size: 138%;
    }
    .sect-seven_colors .str_ttl .str {
      margin-right: 6px;
    }
    .sect-seven_colors .btn_img {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      padding-top: 0;
      padding-bottom: 0;
      height: 28vw;
      width: calc(50% - 6px);
    }
    .sect-seven_colors .btn_img:not(:last-child) {
      margin-right: 12px;
    }
    .sect-seven_colors .btn_img .txt {
      margin-right: 0;
    }
    .sect-seven_colors .btn_img-shop .txt {
      margin-bottom: 4px;
    }
    .sect-seven_colors .btn_img-corp .txt {
      margin-top: 4px;
    }
    .sect-seven_colors .btn_img a {
      line-height: 1.6em;
      text-align: center;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .sect-seven_colors .btn_img-corp a {
      -webkit-flex-direction: column-reverse;
      -ms-flex-direction: column-reverse;
      flex-direction: column-reverse;
    }
    .sect-seven_colors .btn_img::before {
      opacity: .2;
    }
    .sect-seven_colors .btn_img::after {
      opacity: .5;
    }
    .sect-seven_colors .bubble_imgs .bubble_img-lft {
      top: -10px;
      left: -12px;
    }
    .sect-seven_colors .bubble_imgs .bubble_img-rgt {
      bottom: -13px;
      right: -8px;
    }
  }
  @media screen and (max-width: 413px) {
    .sect-seven_colors .txt_area p {
      letter-spacing: .05em;
    }
    .sect-seven_colors .inner {
      padding-top: 28px;
      padding-bottom: 32px;
      padding-left: 24px;
      padding-right: 24px;
    }
    .sect-seven_colors .btn_img {
      width: calc(50% - 4px);
    }
    .sect-seven_colors .btn_img:not(:last-child) {
      margin-right: 8px;
    }
    .sect-seven_colors .inner > .bg::before {
      top: 10px;
      left: 10px;
      width: calc(100% - 20px);
      height: calc(100% - 20px);
    }
  }
  @media screen and (max-width: 374px) {
    .sect-seven_colors .txt_area p {
      font-size: 88%;
    }
    .sect-seven_colors .btn_img a {
      font-size: 80%;
    }
  }

/* breadcrumbs
*************************************************** */
  #breadcrumbs,
  #breadcrumbs a {
    color: #fff;
  }
  .breadcrumbs--in > span ,
  .breadcrumbs--in > span > span,
  .breadcrumbs--in > span > span > span {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  #breadcrumbs .ico-arrow {
    margin-right: 4px;
  }
  #breadcrumbs a,
  #breadcrumbs .ico-arrow {
    opacity: .65;
  }
  @media screen and (min-width: 961px) {
    #breadcrumbs a {
      transition-property: all;
      transition-timing-function: cubic-bezier(0.22,0.61,0.36,1);
      transition-duration: .4s;
    }
    #breadcrumbs a:hover {
      opacity: 1;
    }
  }
  @media screen and (max-width: 560px) {
    #breadcrumbs .breadcrumbs--in {
      font-size: 70%;
    }
    .breadcrumbs--in > span ,
    .breadcrumbs--in > span > span,
    .breadcrumbs--in > span > span > span {
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
    }
  }

/* mark_attn
*************************************************** */
  .mark_attn,
  .mark_attn::before,
  .mark_attn .mark {
    border-radius: 18px;
  }
  .mark_attn {
    z-index: 1;
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 48px;
    padding-right: 24px;
    width: 544px;
    max-width: 100%;
    text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
              -1px 1px 0 #FFF, 1px -1px 0 #FFF,
              0px 1px 0 #FFF,  0-1px 0 #FFF,
              -1px 0 0 #FFF, 1px 0 0 #FFF;
  }
  .mark_attn::before {
    top: 2px;
    left: 2px;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
  }
  .mark_attn .mark {
    position: absolute;
    top: 8px;
    left: 10px;
    width: 20px;
    height: 20px;
  }
  .mark_attn .mark::before {
    content: '！';
    position: absolute;
    top: 48%;
    left: 52%;
    color: #fff;
    line-height: 1em;
    transform: translate(-50%,-50%);
    font-size: 92%;
    text-shadow: none;
  }
  @media screen and (max-width: 768px) {
    .mark_attn {
      width: 468px;
      padding-left: 36px;
      padding-right: 16px;
      font-size: 86%;
    }
    .mark_attn .mark {
      width: 16px;
      height: 16px;
    }
  }
  @media screen and (max-width: 560px) {
    .mark_attn::before {
      border-radius: 3px;
    }
    .mark_attn {
      width: 272px;
      padding-top: 8px;
      padding-bottom: 8px;
      line-height: 1.4em;
      letter-spacing: .05em;
      border-radius: 5px;
    }
    .mark_attn .mark {
      top: 11px;
      left: 16px;
      width: 14px;
      height: 14px;
    }
    .mark_attn .mark::before {
      font-size: 82%;
    }
  }

/* fix_search
*************************************************** */
  .fix_search {
    position: fixed;
    bottom: 32px;
    right: 0;
    z-index: 1000;
    box-shadow: 0 2px 32px rgba(0,16,57,.05);
    transform: translateX(470px);
    border-radius: 3px 0 0 3px;
  }
  @keyframes change_clrs {
    0%,100%{
      background-color: #0056a8;
    }
    50%{
      background-color: #0787bf;
    }
  }
  .fix_search .ttl::before {
    animation: change_clrs 8s linear infinite;
  }
  .fix_search .ttl::after {
    content: '';
    position: absolute;
    top: calc(50% - 16px);
    left: calc(50% - 16px);
    z-index: -1;
    width: 32px;
    height: 32px;
    background: #fff;
    border-radius: 100%;
    animation: ripples_palse 4s linear infinite;
  }
  .fix_search .ttl {
    line-height: 1.6em;
    padding-left: 24px;
    padding-right: 24px;
    border-radius: 3px 0 0 3px;
    overflow: hidden;
  }
  .fix_search .ttl .fnt-en {
    font-size: 116%;
  }
  .fix_search .btn_list {
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 20px;
    padding-right: 20px;
  }
  .fix_search .btn-arch:not(:last-child) {
    margin-right: 12px;
  }
  .fix_search .btn-arch a {
    display: block;
    padding-top: 24px;
    padding-bottom: 16px;
    padding-left: 28px;
    padding-right: 28px;
    line-height: 1.25em;
    font-size: 129%;
  }
  .fix_search .btn-arch .ico {
    position: absolute;
    top: -12px;
    left: calc(50% - 20px);
    margin-left: auto;
    margin-right: auto;
    width: 40px;
    height: 40px;
  }
  .fix_search .btn-arch .bg {
    overflow: visible;
  }
  .fix_search .btn-arch::before,
  .fix_search .btn-arch .bg .poa::before {
    content: '';
    position: absolute;
    top: -18px;
    left: 50%;
    width: 48px;
    height: 48px;
    border-radius: 100%;
    transform: translateX(-50%);
  }
  .fix_search .btn-arch::before {
    top: -34px;
    width: 80px;
    height: 80px;
  }
  .loaded .fix_search {
    opacity: 1;
    transform: translateX(454px);
  }
  .archive-shop .fix_search {
    display: none;
  }
  @media screen and (min-width: 1281px) {
    .fix_search:hover {
      transform: translateX(0);
    }
    .fix_search .btn-arch:hover .bg .poa {
      border-radius: 10px;
    }
    .fix_search .btn-arch:hover .bg .bg_clr-body_lt {
      opacity: 1;
    }
  }
  @media screen and (max-width: 1280px) {
    .loaded .fix_search {
      transform: translateX(0);
    }
    .fix_search .btn_list {
      display: none;
    }
    .fix_search .ttl {
      height: 80px;
    }
  }
  @media screen and (max-width: 560px) {
    .fix_search {
      bottom: 24px;
    }
    .fix_search .ttl {
      height: 68px;
      padding-left: 16px;
      padding-right: 16px;
      font-size: 86%;
      line-height: 1.4em;
    }
  }

/* imp_news
*************************************************** */
  .imp_news {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10000;
  }
  .imp_news .posts {
    background-color: rgba(255,255,255,.97);
  }
  .imp_news .posts--in {
    max-height: 70vh;
    padding-top: 64px;
    padding-bottom: 64px;
    padding-left: 96px;
    padding-right: 96px;
    overflow-y: scroll;
  }
  .imp_news .post:not(:last-child) {
    padding-bottom: 64px;
    margin-bottom: 64px;
  }
  .imp_news .post:not(:last-child)::before {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    border-radius: 100px;
  }
  .imp_news .close,
  .imp_news .close::before,
  .imp_news .close::after {
    position: absolute;
  }
  .imp_news .close {
    top: 16px;
    right: 16px;
    width: 32px;
    height: 32px;
    border-radius: 100%;
    z-index: 1;
  }
  .imp_news .close::before,
  .imp_news .close::after {
    content: '';
    top: calc(50% - 1px);
    left: calc(50% - 25%);
    width: 50%;
    height: 2px;
    border-radius: 10px;
  }
  .imp_news .close::before {
    transform: rotate(45deg);
  }
  .imp_news .close::after {
    transform: rotate(-45deg);
  }
  .imp_news .bg {
    background-color: #101929;
    pointer-events: all;
    cursor: pointer;
  }
  @media screen and (min-width: 961px) {
    .imp_news .close:hover {
      cursor: pointer;
      transform: rotate(360deg);
    }
  }
  @media screen and (max-width: 960px) {
    .imp_news .posts--in {
      max-height: 80vh;
      padding-top: 48px;
      padding-bottom: 48px;
      padding-left: 56px;
      padding-right: 56px;
    }
  }
  @media screen and (max-width: 560px) {
    .imp_news .posts--in {
      padding-top: 32px;
      padding-bottom: 32px;
      padding-left: 24px;
      padding-right: 24px;
    }
  }

/* modal_icos
*************************************************** */
  .modal_icos {
    max-height: 90vh;
  }
  .modal_icos .iziModal-header.iziModal-noSubtitle .iziModal-header-title {
    font-weight: bold;
  }
  .modal_icos .ico_list {
    margin-top: -32px;
  }
  .modal_icos .ico_list--item {
    width: calc(50% - 24px);
    margin-top: 32px;
  }
  .modal_icos .ico_list--item .img_area {
    margin-right: 16px;
  }
  .modal_icos .ico_list--item .txt_area {
    padding-top: 4px;
    padding-bottom: 4px;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
  }
  .modal_icos .ico_list--item .txt_area .ttl {
    line-height: 1em;
    margin-bottom: 8px;
  }
  .modal_icos .ico_list--item .txt_area .txt {
    line-height: 1.7em;
    letter-spacing: .05em;
  }
  .modal_icos .ico_list--item .txt_area .txt small {
    display: inline-block;
    line-height: 1.5em;
  }
  .modal_icos .ico_list--item .txt_area .attn_list li {
    opacity: 1;
  }
  .modal_icos .ico_list--item .txt_area .attn_list li:not(:last-child) {
    margin-bottom: 2px;
  }
  .single-shop .modal_icos .ico_list--item:not(.current) {
    opacity: .25;
  }
  @media screen and (max-width: 1064px) {
    .modal_icos {
      max-width: 70% !important;
    }
  }
  @media screen and (max-width: 960px) {
    .modal_icos .iziModal-content {
      padding: 40px !important;
    }
    .modal_icos .ico_list {
      margin-top: -24px;
    }
    .modal_icos .ico_list--item {
      width: 100%;
      margin-top: 24px;
    }
    .modal_icos .ico_list--item .img_area img {
      width: 88px;
    }
  }
  @media screen and (max-width: 768px) {
    .modal_icos {
      max-width: 80% !important;
    }
    .modal_icos .iziModal-content {
      padding: 32px !important;
    }
  }
  @media screen and (max-width: 560px) {
    .modal_icos {
      max-width: 90% !important;
    }
    .modal_icos .iziModal-content {
      padding: 24px !important;
    }
    .modal_icos .ico_list {
      margin-top: -16px;
    }
    .modal_icos .ico_list--item {
      margin-top: 16px;
      padding-bottom: 16px;
      border-bottom-width: 2px;
      border-bottom-style: solid;
    }
    .modal_icos .ico_list--item .img_area img {
      width: 72px;
    }
  }

/* alert
*************************************************** */
  .alert {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10000;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: 0;
  }
  .alert--cont {
    padding: 40px;
    gap: 24px;
  }
  .alert--cont .close,
  .alert--cont .close::before,
  .alert--cont .close::after {
    position: absolute;
  }
  .alert--cont .close {
    top: -8px;
    right: -8px;
    width: 32px;
    height: 32px;
    border-radius: 100%;
    z-index: 1;
  }
  .alert--cont .close::before,
  .alert--cont .close::after {
    content: '';
    top: calc(50% - 1px);
    left: calc(50% - 25%);
    width: 50%;
    height: 2px;
    border-radius: 10px;
  }
  .alert--cont .close::before {
    transform: rotate(45deg);
  }
  .alert--cont .close::after {
    transform: rotate(-45deg);
  }
  .alert .bg_layer {
    z-index: -1;
  }
  .alert.is_show,
  .alert.is_show .bg_layer {
    opacity: 1;
    pointer-events: all;
  }
  .alert.is_show .bg_layer {
    opacity: .65;
  }
  @media screen and (min-width: 961px) {
    .alert--cont .close:hover {
      cursor: pointer;
      transform: rotate(360deg);
    }
  }
  @media screen and (max-width: 768px) {
    .alert--cont {
      max-width: calc(100% - 48px);
      padding: 32px;
      gap: 16px;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .alert--cont .img_area img {
      width: 96px;
      height: 96px;
    }
    .alert--cont .dots_ttl {
      text-align: center;
    }
    .alert--cont .dots_ttl .dots {
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
    }
  }
  @media screen and (max-width: 413px) {
    .alert--cont {
      padding-top: 32px;
      padding-bottom: 32px;
      padding-left: 24px;
      padding-right: 24px;
    }
    .alert--cont .img_area img {
      width: 88px;
      height: 88px;
    }
  }

/* 3set
*************************************************** */
  @media screen and (max-width: 560px) {
    .set3 {
      padding-left: 16px;
      padding-right: 16px;
    }
  }
  @media screen and (max-width: 413px) {
    .set3 {
      padding-left: 8px;
      padding-right: 8px;
    }
  }

/* ##############################################################################

    SLICK

############################################################################## */
  .slick-list {
    overflow: visible;
  }
  .slick-slide img {
    margin-left: auto;
    margin-right: auto;
  }
  .slick-arrow .ico::before {
    width: 10px;
    height: 10px;
    top: calc(50% - 5px);
    left: calc(50% - 5px);
    border-top-width: 2px;
    border-right-width: 2px;
  }
  .slick-prev .ico {
    transform: rotate(180deg);
  }
  .slick-dots,
  .slick-dots li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .slick-dots li {
    width: 24px;
    height: 24px;
  }
  .slick-dots > li:first-child:last-child {
    display: none;
  }
  .slick-dots .slick-dot {
    width: 12px;
    height: 12px;
    border-radius: 100%;
    overflow: hidden;
  }
  .slick-dots .slick-dot::before {
    opacity: 0;
  }
  .slick-dots .slick-active .slick-dot,
  .slick-dots .slick-active .slick-dot::before {
    opacity: 1;
  }
  .slide_num-1 .slick-prev,
  .slide_num-1 .slick-next { display: none; }
  .slide_num-2 .slick-prev { right: calc(50% + 28px); }
  .slide_num-2 .slick-next { left:  calc(50% + 28px); }
  .slide_num-3 .slick-prev { right: calc(50% + 40px); }
  .slide_num-3 .slick-next { left:  calc(50% + 40px); }
  .slide_num-4 .slick-prev { right: calc(50% + 52px); }
  .slide_num-4 .slick-next { left:  calc(50% + 52px); }
  .slide_num-5 .slick-prev { right: calc(50% + 64px); }
  .slide_num-5 .slick-next { left:  calc(50% + 64px); }
  .slide_num-6 .slick-prev { right: calc(50% + 76px); }
  .slide_num-6 .slick-next { left:  calc(50% + 76px); }
  .slide_num-7 .slick-prev { right: calc(50% + 88px); }
  .slide_num-7 .slick-next { left:  calc(50% + 88px); }
  .slide_num-8 .slick-prev { right: calc(50% + 100px); }
  .slide_num-8 .slick-next { left:  calc(50% + 100px); }
  .slide_num-9 .slick-prev { right: calc(50% + 112px); }
  .slide_num-9 .slick-next { left:  calc(50% + 112px); }
  .slide_num-10 .slick-prev { right: calc(50% + 124px); }
  .slide_num-10 .slick-next { left:  calc(50% + 124px); }

/* carousel_slider
*************************************************** */
  .carousel_slider {
    pointer-events: none;
  }
  .carousel_slider .slick-slide {
    margin-left: 12px;
    margin-right: 12px;
  }
  @media screen and (max-width: 560px) {
    .carousel_slider .slick-slide {
      margin-left: 6px;
      margin-right: 6px;
    }
  }


/* ##############################################################################

    HEADER

############################################################################## */

/* header
**************************************** */
  .header {
    position: fixed;
    top: 0;
    left: 0;
    padding-left: 40px;
    padding-right: 40px;
    z-index: 10000;
    width: 100%;
  }
  .header--in {
    padding-left: 40px;
    padding-right: 40px;
  }
  .header--in::before {
    border-radius: 0 0 5px 5px;
  }
  @media screen and (max-width: 1600px) {
    .header {
      padding-left: 24px;
      padding-right: 24px;
    }
    .header--in {
      padding-left: 32px;
      padding-right: 32px;
    }
  }
  @media screen and (max-width: 1280px) {
    .header {
      padding-top: 22px;
      padding-bottom: 22px;
      padding-left: 24px;
      padding-right: 24px;
    }
    .header--in {
      padding-left: 0;
      padding-right: 0;
    }
    .header--in::before {
      content: none;
    }
  }

/* gnav
**************************************** */
  .gnav_list--item_in {
    padding-top: 16px;
    padding-bottom: 16px;
  }
  .gnav_list--item_in .gnav_ico {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 6px;
  }
  .gnav_list--item_in .txt {
    display: block;
    line-height: 1em;
    font-weight: 700;
    letter-spacing: .15em;
  }
  .scrolled .gnav_list--item_in .txt {
    font-size: 100%;
  }
  .gnav_list--item_in .txt:nth-of-type(2) {
    font-size: 80%;
    margin-top: 8px;
  }
  .gnav_list--item_in.output-1 .txt {
    position: relative;
    padding-right: 0;
  }
  .gnav_list--item_in.output-1 .txt .ico-arrow {
    position: absolute;
    top: 50%;
    right: -22px;
    transform: translateY(-50%);
  }
  .gnav_list--item_in.output-2 .txt .ico-arrow {
    display: none;
  }
  .gnav_list--item_in.output-2 > .ico-arrow {
    position: absolute;
    bottom: -2px;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
  }
  .gnav_list--item_in.output-1 .txt .ico-arrow::before {
    margin-top: 1px;
    border-style: solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    border-top-width: 5px;
    border-bottom-width: 0;
    transform: rotate(0deg);
  }
  .gnav_list--item_in .current_layer {
    position: absolute;
    top: -12px;
    left: 50%;
    width: 20px;
    height: 20px;
    transform: translateX(-50%);
    border-radius: 100%;
    opacity: .5;
  }

  @media screen and (min-width: 1281px) {
    .gnav::before,
    .gnav::after,
    .gnav_btn {
      display: none;
    }
    .gnav_list {
      margin-right: 40px;
    }
    .gnav_list--item_in {
      padding-left: 24px;
      padding-right: 24px;
    }
  }
  @media screen and (max-width: 1600px) {
    .gnav_list--item_in {
      padding-left: 16px;
      padding-right: 16px;
    }
  }
  @media screen and (max-width: 1400px) {
    .gnav_list--item_in .txt {
      font-size: 100%;
    }
  }
  @media screen and  (max-width: 1280px) {
    .gnav {
      position: fixed;
      top: 0;
      right: 0;
      width: 240px;
      height: 100%;
      padding-top: 88px;
      pointer-events: none;
      transition: .35s ease-out;
      opacity: 0;
      right: 0;
      background: rgba(255,255,255,.9);
    }
    .gnav::before,
    .gnav::after {
      pointer-events: none;
    }
    .gnav::before {
      opacity: .6;
      z-index: -1;
    }
    .gnav::after {
      right: 0;
      left: auto;
      left: inherit;
      width: 100vw;
      z-index: -10;
      opacity: .7;
    }
    .header.active .gnav {
      opacity: 1;
      pointer-events: all;
      transform: translate(0,0);
    }
    .gnav_lists,
    .gnav_list {
      width: 100%;
    }
    .gnav_list--item:first-child .gnav_list--item_in {
      border-top: 1px solid #f7f8f8;
    }
    .gnav_list--item_in {
      -webkit-flex-direction: row;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      border-bottom: 1px solid #f7f8f8;
      padding-top: 16px;
      padding-bottom: 16px;
      padding-left: 20px;
      padding-right: 20px;
    }
    .gnav_list--item_in .gnav_ico {
      width: 22px;
      margin-bottom: 0;
      margin-left: 0;
      margin-right: 10px;
    }
    .gnav_list--item_in .current_layer {
      top: 50%;
      left: 17px;
      width: 28px;
      height: 28px;
      transform: translateY(-50%);
      opacity: .15;
    }
    .gnav_btn {
      position: fixed;
      top: 12px;
      right: 24px;
      width: 64px;
      height: 64px;
      z-index: 9999;
      border-radius: 100%;
    }
    .gnav_btn--in {
      line-height: 1em;
      margin-bottom: -4px;
    }
    .gnav_btn--lines {
      position: relative;
      width: 75%;
      height: 17px;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 4px;
    }
    .gnav_btn--lines span {
      transition: all .4s;
      box-sizing: border-box;
    }
    .gnav_btn--lines span {
      position: absolute;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #fff;
    }
    .gnav_btn--lines span:nth-of-type(1) {
      top: 0;
    }
    .gnav_btn--lines span:nth-of-type(2) {
      top: calc(50% - 1px);
    }
    .gnav_btn--lines span:nth-of-type(3) {
      bottom: 0;
    }
    .header.active .gnav_btn--lines span:nth-of-type(1) {
      top: 50%;
      -webkit-transform: rotate(-30deg);
      transform: rotate(-30deg);
    }
    .header.active .gnav_btn--lines span:nth-of-type(2) {
      opacity: 0;
    }
    .header.active .gnav_btn--lines span:nth-of-type(3) {
      top: 50%;
      -webkit-transform: rotate(30deg);
      transform: rotate(30deg);
    }
    .gnav_btn--txt {
      display: block;
      font-size: 70%;
      color: #fff;
      white-space: nowrap;
      clip-path: inset(0 0 0);
      -webkit-clip-path: inset(0 0 0);
    }
    .gnav_btn--txt .open {
      position: absolute;
      top: 50%;
      left: 50%;
      z-index: -1;
      transform: translate(-50%,-50%);
    }
    .gnav_btn--txt .close,
    .header.active .gnav_btn--txt .open {
      opacity: 0;
    }
    .header.active .gnav_btn--txt .close {
      opacity: 1;
    }
    .gnav_list {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .header.active .header--logo,
    .header.active + .fall_area,
    .header.active + .fall_area + .wrapper {
      filter: blur(10px);
    }

  }

/* snav
**************************************** */
  .gnav_sub {
    position: absolute;
    left: 50%;
    top: 100%;
    width: 100%;
    max-width: 1280px;
    padding-top: 48px;
    padding-bottom: 48px;
    padding-left: 80px;
    padding-right: 80px;
    overflow: hidden;
    transform: translate(-50%,-8px);
    opacity: 0;
    pointer-events: none;
    z-index: 100;
  }

  .gnav_sub .info_area {
    width: 274px;
    padding-right: 42px;
    margin-right: 42px;
    padding-top: 8px;
    padding-bottom: 16px;
  }
  .gnav_sub .info_area::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 100%;
  }
  .gnav_sub .info_area .sect_ttl .ttl:not(:last-child) {
    margin-bottom: 4px;
  }
  .gnav_sub .info_area p {
    line-height: 1.6em;
  }
  .gnav_sub .info_area .btn-def {
    margin-top: auto;
  }
  .gnav_sub .info_area .btn-def .btn--in {
    min-width: 188px;
  }
  .snav_list {
    width: calc(100% - 316px);
    margin-top: -24px;
  }
  .snav_list--item {
    width: calc(100% / 3 - 16px);
    margin-top: 24px;
    margin-right: 24px;
  }
  .snav_list--item:nth-of-type(3n+3),
  .snav_list--item:last-child { margin-right: 0; }
  .snav_list--item .img_area {
    display: block;
    width: 100%;
    padding-top: 42.5%;
    background-color: #ecf6fa;
    margin-bottom: 8px;
  }
  .snav_list--item .img_area .img_src {
    background-position: center;
    background-size: cover;
  }
  @media screen and (min-width: 561px) {
    .gnav_list--item_in br {
      display: none;
    }
    .gnav_list--item-sale .gnav_list--item_in br {
      display: block;
    }
    .gnav_list--item-sale .gnav_list--item_in .txt {
      line-height: 1.4em;
    }
  }
  @media screen and (min-width: 1281px) {
    .gnav_list--item-other,
    .gnav_list--item-shop,
    .gnav_list--item-sale,
    .gnav_list--item-contact,
    .gnav_list--item-news {
      display: none;
    }
    .gnav_list--item:hover .gnav_sub {
      pointer-events: all;
      opacity: 1;
      transform: translate(-50%,0);
    }
    .gnav_list--item:hover .bg_layer {
      opacity: .65;
    }
    .snav_list--item:hover .img_area {
      border-radius: 16px;
    }
  }
  @media screen and (max-width: 1280px) {
    .gnav_list--item.has_sub .gnav_list--item_in {
      z-index: -1;
    }
    .gnav_sub {
      left: auto;
      left: inherit;
      transform: translateY(10px);
      top: 32px;
      right: calc(100% + 32px);
      width: calc(100vw - 302px);
      height: calc(100vh - 64px);
      padding-left: 56px;
      padding-right: 56px;
      pointer-events: none;
    }
    .header.active .sub_show .gnav_sub {
      opacity: 1;
      pointer-events: all;
      transform: translateY(0);
    }
    .gnav_sub--in {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .gnav_sub .info_area,
    .snav_list {
      width: 100%;
      padding-left: 16px;
      padding-right: 16px;
    }
    .gnav_sub .info_area {
      margin-right: 0;
      padding-top: 0;
      padding-bottom: 32px;
      margin-bottom: 40px;
    }
    .gnav_sub .info_area::before {
      width: 100%;
      height: 1px;
      top: 100%;
    }
    .gnav_sub .info_area .btn-def {
      position: absolute;
      top: 6px;
      right: 24px;
    }
    .gnav_sub .sect_ttl .bubble {
      display: none;
    }
    .gnav_list--item-coin_laundry .sect_ttl {
      margin-bottom: 0;
    }
    .snav_list {
      margin-top: -24px;
      max-height: calc(100vh - 320px);
      overflow-y: scroll;
    }
    .snav_list--item,
    .snav_list--item:nth-of-type(3n+3) {
      width: calc(50% - 12px);
      margin-top: 24px;
      margin-right: 24px;
    }
    .snav_list--item:nth-of-type(even),
    .snav_list--item:last-child { margin-right: 0; }
    .snav_list--item .bubble {
      width: 12px;
      height: 12px;
      margin-right: 8px;
      transform: translateY(1px);
    }
    .snav_list--item br {
      display: none;
    }
    .snav_sub {
      margin-top: 4px;
      font-size: 86%;
    }
    .gnav_list--item_in.output-1 .txt .ico-arrow {
      right: calc(100% + 38px);
      transform: translateY(-50%) rotate(-90deg);
    }
    .gnav_list--item_in.output-1 .txt .ico-arrow::before {
      top: calc(50% - 3px);
      left: calc(50% - 3px);
    }
    .gnav_list--item:not(.sub_show) .gnav_list--item_in.output-1 .txt .ico-arrow::before {
      opacity: .5;
      border-top-color: #0787bf;
      border-bottom-color: #0787bf;
    }
  }
  @media screen and (max-width: 960px) {
    .gnav {
      width: 216px;
    }
    .gnav_sub {
      padding-top: 40px;
      padding-bottom: 40px;
      padding-left: 40px;
      padding-right: 40px;
      width: calc(100vw - 280px);
    }
    .gnav_sub .info_area .btn-def {
      right: 16px;
    }
  }
  @media screen and (max-width: 768px) {
    .gnav_sub {
      top: 16px;
      right: calc(100% + 16px);
      width: calc(100vw - 248px);
      padding-top: 24px;
      padding-bottom: 24px;
      padding-left: 24px;
      padding-right: 24px;
      height: calc(100vh - 32px);
    }
    .gnav_sub .info_area {
      padding-left: 16px;
      padding-right: 16px;
      padding-bottom: 24px;
      margin-bottom: 28px;
    }
    .gnav_sub .info_area p {
      font-size: 86%;
    }
    .gnav_sub .sect_ttl {
      margin-bottom: 12px;
    }
    .gnav_sub .info_area .btn-def {
      top: 4px;
    }
    .gnav_sub .info_area .btn-def .btn--in {
      min-width: 150px;
      height: 36px;
      font-size: 86%;
    }
    .gnav_sub .info_area .btn-def .txt {
      margin-right: 12px;
    }
    .gnav_sub .info_area .btn-def .bubble {
      width: 10px;
      height: 10px;
    }
    .snav_list {
      margin-top: 0;
      padding-left: 0;
      padding-right: 0;
      max-height: calc(100vh - 220px);
    }
    .snav_list--item,
    .snav_list--item:nth-of-type(3n+3) {
      width: calc(50% - 6px);
      margin-top: 16px;
      margin-right: 12px;
    }
    .snav_list--item:nth-of-type(even),
    .snav_list--item:last-child { margin-right: 0; }
    .gnav_list--item_in.output-1 .txt .ico-arrow {
      right: calc(100% + 41px);
    }
  }
  @media screen and (max-width: 664px) {
    .gnav_sub .info_area {
      padding-left: 12px;
      padding-right: 12px;
    }
    .snav_list {
      padding-left: 12px;
      padding-right: 12px;
    }
    .snav_list--item,
    .snav_list--item:nth-of-type(3n+3) {
      width: 100%;
      margin-top: 16px;
      margin-right: 0;
    }
    .gnav_list--item-all .snav_list--item,
    .gnav_list--item-all .snav_list--item:nth-of-type(3n+3) {
      margin-top: 12px;
    }
    .gnav_list--item-all .snav_list--item:first-child {
      margin-top: 0;
    }
    .gnav_sub .info_area .btn-def {
      position: static;
      margin-top: 12px;
      max-width: 180px;
    }
  }
  @media screen and (max-width: 560px) {
    .gnav {
      width: 144px;
      padding-top: 76px;
    }
    .gnav_sub {
      top: 8px;
      right: calc(100% + 8px);
      width: calc(100vw - 160px);
      height: calc(100vh - 16px);
      padding-top: 20px;
      padding-bottom: 20px;
      padding-left: 12px;
      padding-right: 12px;
    }
    .gnav_list--item_in {
      padding-top: 10px;
      padding-bottom: 10px;
      padding-left: 12px;
      padding-right: 12px;
      font-size: 86%;
    }
    .gnav_list--item_in .txt {
      letter-spacing: .03em;
      line-height: 1.4em;
    }
    .gnav_list--item_in .gnav_ico {
      width: 17px;
      margin-right: 8px;
    }
    .gnav_list--item_in .current_layer {
      left: 9px;
      width: 22px;
      height: 22px;
    }
    .gnav_list--item_in.output-1 .txt .ico-arrow {
      right: calc(100% + 26px);
    }
    .gnav_list--item_in.output-1 .txt .ico-arrow::before {
      border-right: 3px solid transparent;
      border-left: 3px solid transparent;
      border-top-width: 4px;
    }
    .gnav_sub .info_area {
      padding-bottom: 18px;
      margin-bottom: 16px;
    }
    .snav_list {
      padding-bottom: 96px;
      padding-left: 6px;
      padding-right: 6px;
    }
    .snav_list--item .txt {
      letter-spacing: .05em;
    }
    .gnav_btn {
      width: 52px;
      height: 52px;
      right: 12px;
    }
    .gnav_btn--lines {
      width: 60%;
      height: 12px;
    }
    .gnav_btn--txt {
      letter-spacing: .05em;
    }
  }
  @media screen and (max-width: 374px) {
    .gnav {
      width: 118px;
    }
    .gnav_list--item_in .gnav_ico,
    .gnav_list--item_in .current_layer {
      display: none;
    }
    .gnav_list--item_in.output-1 .txt .ico-arrow {
      right: calc(100% + 1px);
    }
    .gnav_sub {
      width: calc(100vw - 134px);
    }
    .snav_list--item .txt {
      font-size: 86%;
    }
  }

/* contact_btn
**************************************** */
  .header--logo,
  .contact_btn--in {
    width: 220px;
  }
  .contact_btn--in {
    padding-left: 18px;
    padding-right: 18px;
    height: 50px;
    letter-spacing: .2em;
  }
  .contact_btn--in .ico-arrow {
    margin-right: -8px;
    margin-left: -8px;
  }
  .contact_btn--in .ico-arrow::before {
    border-width: 2px;
  }
  @media screen and (min-width: 961px) {
    .contact_btn--in:hover {
      border-radius: 100px;
    }
    .contact_btn--in .ico-arrow {

    }
  }
  @media screen and (max-width: 1600px) {
    .header--logo,
    .contact_btn--in {
      width: 200px;
    }
  }
  @media screen and (max-width: 1400px) {
    .header--logo,
    .contact_btn--in {
      width: 180px;
    }
  }
  @media screen and (max-width: 1280px) {
    .scrolled .header--logo {
      opacity: 0;
    }
    .header.is_hide {
      opacity: 0;
      pointer-events: none;
    }
    .contact_btn {
      display: none;
    }
  }
  @media screen and (max-width: 560px) {
    .header {
      padding-top: 20px;
      padding-bottom: 20px;
      padding-left: 16px;
      padding-right: 16px;
    }
  }


/* ##############################################################################

    FOOTER

############################################################################## */

/* product
*************************************************** */
  .product .bg {
    z-index: 1;
  }
  .product_list--item {
    padding-top: 80px;
    padding-bottom: 80px;
    padding-left: 40px;
    padding-right: 40px;
    width: 100%;
    cursor: pointer;
  }
  .product_list--item .txt_area {
    padding-top: 56px;
    padding-bottom: 56px;
    background-color: rgba(255,255,255,.95);
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
  }
  .product_list--item .logo {
    height: 64px;
  }
  .product_list--item .logo a::before {
    z-index: 1;
  }
  .product_list--item .product_kana {
    font-size: 79%;
    letter-spacing: .3em;
  }
  .product_list--item .product_desc {
    line-height: 1em;
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 12px;
    padding-right: 12px;
  }
  .product_list--item .product_desc::before {
    border-radius: 100px;
  }
  .product_list--item .product_desc br {
    display: none;
  }
  .product_list--item .bg_img {
    z-index: -10;
  }
  .product_list--item-labox .bg_img {
    background-image: url(../images/common/bg_img-labox.jpg);
  }
  .product_list--item-lusso .bg_img {
    background-image: url(../images/common/bg_img-lusso.jpg);
  }
  .product_list--item-seven_colors .bg_img {
    background-image: url(../images/common/bg_img-seven_colors.jpg);
  }

  /* --- clr --- */
  .product_list--item-labox { color: #5b0f1f; }
  .product_list--item-labox .product_desc { color: #f18a15; }
  .product_list--item-labox::before,
  .product_list--item-labox .product_desc::before {
    background-color: #f18a15;
  }
  .product_list--item-lusso { color: #222; }
  .product_list--item-lusso .product_desc { color: #1a1311; }
  .product_list--item-lusso::before,
  .product_list--item-lusso .product_desc::before {
    background-color: #1a1311;
  }
  .product_list--item-seven_colors { color: #222; }
  .product_list--item-seven_colors .product_desc { color: #dc2b2b; }
  .product_list--item-seven_colors::before,
  .product_list--item-seven_colors .product_desc::before {
    background-color: #dc2b2b;
  }
  @media screen and (max-width: 1280px) and (min-width: 961px) {
    .product_list--item .product_desc {
      padding-left: 24px;
      padding-right: 24px;
    }
    .product_list--item .product_desc br {
      display: block;
    }
  }
  @media screen and (min-width: 961px) {
    .product_list--item:hover .txt_area {
      border-radius: 30px;
    }
  }
  @media screen and (max-width: 1280px) {
    .product_list--item .logo,
    .product_list--item .logo img {
      height: 40px;
    }
    .product_list--item .logo img {
      width: auto;
      max-width: inherit;
    }
    .product_list--item .product_desc {
      line-height: 1.4em;
      font-size: 86%;
    }
    .product_list--item .txt {
      font-size: 93%;
    }
  }
  @media screen and (max-width: 960px) {
    .product_list {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .product_list--item {
      width: 100%;
      padding-top: 40px;
      padding-bottom: 40px;
      padding-left: 24px;
      padding-right: 24px;
    }
    .product_list--item .txt_area {
      max-width: 540px;
      margin-left: auto;
      margin-right: auto;
    }
  }
  @media screen and (max-width: 560px) {
    .product_list--item {
      padding-top: 32px;
      padding-bottom: 32px;
    }
    .product_list--item .txt_area {
      padding-top: 32px;
      padding-bottom: 32px;
    }
    .product_list--item .logo,
    .product_list--item .logo img {
      height: 32px;
    }
  }
  @media screen and (max-width: 374px) {
    .product_list--item .product_desc {
      padding-left: 24px;
      padding-right: 24px;
    }
    .product_list--item .product_desc br {
      display: block;
    }
  }

/* footer
*************************************************** */
  .footer {
    padding-top: 96px;
    padding-bottom: 40px;
  }
  .footer .logo {
    z-index: 1;
  }
  .fnav {
    padding-top: 56px;
    padding-bottom: 56px;
    border-top-width: 1px;
    border-top-style: solid;
    border-bottom-width: 1px;
    border-bottom-style: solid;
  }
  .fnav_list {
    width: 1120px;
    max-width: 100%;
    margin-top: -40px;
    margin-left: auto;
    margin-right: auto;
  }
  .fnav_list--item {
    width: 280px;
    margin-top: 40px;
  }
  .fnav_list--item .txt {
    display: block;
  }
  .fnav_list--item .fnav_ico {
    margin-right: 6px;
  }
  .fnav_list--item br {
    display: none;
  }
  .sublist_sns {
    position: absolute;
    width: 100%;
    top: 52px;
    left: 0;
    transform: translateY(-50%);
  }
  .sublist_sns .sublist--item:not(:last-child) {
    margin-bottom: 4px;
  }
  .footer--copyright {
    text-align: center;
    font-size: 79%;
  }
  @media screen and (max-width: 768px) {
    .footer .logo img {
      width: 180px;
    }
    .fnav_list--item {
      width: calc(100% / 3);
    }
    .copy_recaptcha {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .copy_recaptcha * {
      text-align: center;
    }
  }
  @media screen and (max-width: 560px) {
    .footer {
      padding-top: 40px;
    }
    .footer .logo img {
      width: 150px;
    }
    .fnav {
      padding-top: 32px;
      padding-bottom: 32px;
    }
    .fnav_list {
      margin-top: -20px;
    }
    .fnav_list--item {
      margin-top: 20px;
      width: 50%;
      font-size: 93%;
    }
    .sublist_sns {
      position: static;
      transform: translateY(0);
      margin-bottom: 24px;
    }
    .sublist_sns .sublist--item {
      font-size: 92%;
    }
    .sublist_sns .sns_area {
      margin-bottom: 0;
    }
    .sublist_sns .sns_list--item:not(:last-child) {
      margin-right: 12px;
    }
    .footer--copyright,
    .footer .recaptcha_txt {
      letter-spacing: .1em;
    }
    .footer--copyright {
      font-size: 79%;
    }
  }
  @media screen and (max-width: 413px) {
    .fnav_list--item-sale .txt {
      line-height: 1.4em;
    }
  }
  @media screen and (max-width: 374px) {
    .fnav_list--item-corp .txt {
      line-height: 1.4em;
    }
    .fnav_list--item br {
      display: block;
    }
    .sublist_sns .sublist--item:not(:last-child) {
      margin-right: 8px;
    }
    .sublist_sns .sublist--item {
      letter-spacing: .03em;
    }
    .footer--copyright,
    .footer .recaptcha_txt {
      letter-spacing: .05em;
    }
  }


/* ##############################################################################

    INDEX

############################################################################## */

/* hero
*************************************************** */
  .hero {
    margin-top: 104px;
    height: 42vw;
    max-height: 920px;
  }
  .hero_slider,
  .hero_slider .slick-list,
  .hero_slider .slick-track,
  .hero_slider--item {
    height: 100%;
  }
  .hero_slider {
    pointer-events: none;
  }
  .hero_slider--item .img_src {
    background-size: cover;
    background-position: center;
  }
  @keyframes zoomUp {
    0% {
      transform: scale(1);
    }
    100% {
      transform: scale(1.3);
    }
  }
  .add-animation {
    animation: zoomUp 20s linear 0s normal both;
  }
  .hero .bg {
    z-index: 1;
  }
  .hero svg {
    position: absolute;
    top: -2px;
    left: 0;
    z-index: 1;
    width: 100%;
    transform: scale(1.025);
  }
  .hero_slider--item:nth-of-type(1) .img_src {
    background-image: url(../images/home/hero_img-cleaning.jpg);
  }
  .hero_slider--item:nth-of-type(2) .img_src {
    background-image: url(../images/home/hero_img-challenge.jpg);
  }
  .hero_slider--item:nth-of-type(3) .img_src {
    background-image: url(../images/home/hero_img-eco.jpg);
  }
  .hero_slider--item .txt_area {
    position: absolute;
    bottom: 136px;
    left: 120px;
    text-shadow: 0 2px 32px rgba(0,16,57,.09);
  }
  .hero_slider--item .ttl {
    margin-bottom: 40px;
    letter-spacing: .4em;
    line-height: 1.9em;
    font-size: 400%;
    font-weight: 500;
  }
  .hero_slider--item .ttl .str_dot {
    position: relative;
  }
  .hero_slider--item .ttl .str_dot::before {
    content: '';
    position: absolute;
    bottom: calc(100% + 3px);
    left: .4em;
    width: 8px;
    height: 8px;
    border-radius: 100%;
    border-width: 2px;
    border-style: solid;
    border-color: #fff;
  }
  .hero_slider--item p {
    font-weight: 300;
    font-size: 143%;
    letter-spacing: .35em;
  }
  .hero_slider--item.slick-active .fade_in {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0px);
  }
  @media screen and (max-width: 1680px) {
    .hero_slider--item .txt_area {
      bottom: 104px;
      left: 96px;
    }
    .hero_slider--item .ttl {
      margin-bottom: 32px;
      font-size: 350%;
    }
    .hero_slider--item p {
      font-size: 129%;
    }
  }
  @media screen and (max-width: 1280px) {
    .hero_slider--item .txt_area {
      bottom: 88px;
      left: 80px;
    }
    .hero_slider--item .ttl {
      margin-bottom: 24px;
      font-size: 300%;
    }
    .hero_slider--item p {
      font-size: 116%;
    }
    .hero_slider--item .ttl .str_dot::before {
      bottom: calc(100% + 1px);
      width: 5px;
      height: 5px;
      border-width: 1px;
    }
  }
  @media screen and (max-width: 1064px) {
    .hero_slider--item .txt_area {
      bottom: 64px;
      left: 56px;
    }
    .hero_slider--item .ttl {
      margin-bottom: 16px;
      font-size: 250%;
    }
    .hero_slider--item p {
      font-size: 109%;
    }
  }
  @media screen and (max-width: 960px) {
    .hero {
      height: 75vh;
    }
    .hero_slider--item:nth-of-type(1) .img_src {
      background-image: url(../images/home/hero_img-cleaning-tab.jpg);
    }
    .hero_slider--item:nth-of-type(2) .img_src {
      background-image: url(../images/home/hero_img-challenge-tab.jpg);
    }
    .hero_slider--item:nth-of-type(3) .img_src {
      background-image: url(../images/home/hero_img-eco-tab.jpg);
    }
    .hero_slider--item .txt_area {
      bottom: 64px;
      left: 40px;
    }
    .hero_slider--item .ttl {
      margin-bottom: 16px;
      font-size: 250%;
    }
    .hero_slider--item p {
      font-size: 109%;
    }
  }
  @media screen and (max-width: 560px) {
    .hero {
      margin-top: 72px;
    }
    .hero_slider--item:nth-of-type(1) .img_src {
      background-image: url(../images/home/hero_img-cleaning-sp.jpg);
    }
    .hero_slider--item:nth-of-type(2) .img_src {
      background-image: url(../images/home/hero_img-challenge-sp.jpg);
    }
    .hero_slider--item:nth-of-type(3) .img_src {
      background-image: url(../images/home/hero_img-eco-sp.jpg);
    }
    .hero_slider--item .txt_area {
      bottom: 64px;
      left: 24px;
    }
    .hero_slider--item .ttl {
      margin-bottom: 16px;
      font-size: 163%;
      letter-spacing: .3em;
    }
    .hero_slider--item p {
      font-size: 86%;
      letter-spacing: .2em;
    }
  }
  @media screen and (max-width: 374px) {
    .hero_slider--item .txt_area {
      bottom: 56px;
      left: 16px;
    }
    .hero_slider--item .ttl {
      font-size: 143%;
    }
    .hero_slider--item p {
      letter-spacing: .1em;
    }
  }

  /*.hero {
    padding-top: 144px;
  }
  .hero .inner {
    max-width: 1088px;
  }
  .hero_slider {
    padding-bottom: 96px;
  }
  .hero_slider .slick-slide {
    padding-left: 12px;
    padding-right: 12px;
  }
  .hero_slider .slick-slide .img {
    opacity: .75;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.22,0.61,0.36,1);
    transition-duration: .8s;
    transform: translateY(56px);
  }
  .hero_slider .slick-slide.slick-current .img,
  .hero_slider .slick-slide.is-active-next .img {
    opacity: 1;
    transform: translateY(0);
  }
  .hero_slider .slick-arrow {
    position: absolute;
    bottom: 0;
  }
  .hero_slider.slide_num-1 .slick-prev,
  .hero_slider.slide_num-1 .slick-next { display: none; }
  .hero_slider.slide_num-2 .slick-prev { right: calc(50% + 28px); }
  .hero_slider.slide_num-2 .slick-next { left:  calc(50% + 28px); }
  .hero_slider.slide_num-3 .slick-prev { right: calc(50% + 40px); }
  .hero_slider.slide_num-3 .slick-next { left:  calc(50% + 40px); }
  .hero_slider.slide_num-4 .slick-prev { right: calc(50% + 52px); }
  .hero_slider.slide_num-4 .slick-next { left:  calc(50% + 52px); }
  .hero_slider.slide_num-5 .slick-prev { right: calc(50% + 64px); }
  .hero_slider.slide_num-5 .slick-next { left:  calc(50% + 64px); }
  .hero_slider.slide_num-6 .slick-prev { right: calc(50% + 76px); }
  .hero_slider.slide_num-6 .slick-next { left:  calc(50% + 76px); }
  .hero_slider .slick-dots {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }*/

/* channel
*************************************************** */
  @media screen and (min-width: 601px) {
    .channel .speech_ttl br {
      display: none;
    }
  }
  @media screen and (max-width: 1280px) {
    .channel .clm-5 {
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-top: -64px;
    }
    .channel .clm-5 > *,
    .channel .clm-5 > *:nth-of-type(5n+5) {
      width: calc(100% / 3 - 27px);
      margin-top: 64px;
      margin-right: 40px;
    }
    .channel .clm-5 > *:nth-of-type(3n+3),
    .channel .clm-5 > *:last-child { margin-right: 0; }
  }
  @media screen and (max-width: 960px) {
    .channel .clm-5 { margin-top: -56px; }
    .channel .clm-5 > *,
    .channel .clm-5 > *:nth-of-type(3n+3),
    .channel .clm-5 > *:nth-of-type(5n+5) {
      width: calc(50% - 12px);
      margin-top: 56px;
      margin-right: 24px;
    }
    .channel .clm-5 > *:nth-of-type(even),
    .channel .clm-5 > *:last-child { margin-right: 0; }

    .channel .clm-4 { margin-top: -56px; }
    .channel .clm-4 > * {
      width: calc(50% - 12px);
      margin-top: 56px;
      margin-right: 24px;
    }
    .channel .clm-4 > *:nth-of-type(4n+4),
    .channel .clm-4 > *:nth-of-type(even) { margin-right: 0; }

    .channel .clm-3 { margin-top: -56px; }
    .channel .clm-3 > * {
      width: calc(50% - 12px);
      margin-top: 56px;
      margin-right: 24px;
    }
    .channel .clm-3 > *:nth-of-type(4n+4),
    .channel .clm-3 > *:nth-of-type(even) { margin-right: 0; }

    .channel .clm-2 { margin-top: -56px; }
    .channel .clm-2 > * {
      width: calc(50% - 12px);
      margin-top: 56px;
      margin-right: 24px;
    }
    .channel .clm-2 > *:nth-of-type(4n+4),
    .channel .clm-2 > *:nth-of-type(even) { margin-right: 0; }
  }
  @media screen and (max-width: 600px) {
    .channel .speech_ttl {
      text-align: center;
    }
    .channel .clm-5 { margin-top: -40px; }
    .channel .clm-5 > *,
    .channel .clm-5 > *:nth-of-type(3n+3),
    .channel .clm-5 > *:nth-of-type(5n+5) {
      width: calc(50% - 6px);
      margin-top: 40px;
      margin-right: 12px;
    }
    .channel .clm-5 > *:nth-of-type(even),
    .channel .clm-5 > *:last-child { margin-right: 0; }
    .channel .clm-4 { margin-top: -40px; }
    .channel .clm-4 > * {
      width: calc(50% - 6px);
      margin-top: 40px;
      margin-right: 12px;
    }
    .channel .clm-3 { margin-top: -40px; }
    .channel .clm-3 > * {
      width: calc(50% - 6px);
      margin-top: 40px;
      margin-right: 12px;
    }
    .channel .clm-2 { margin-top: -40px; }
    .channel .clm-2 > * {
      width: calc(50% - 6px);
      margin-top: 40px;
      margin-right: 12px;
    }
  }
  @media screen and (max-width: 560px) {
    .channel .whtbox_list--item:nth-of-type(-n+2) .ico {
      margin-bottom: 0;
    }
  }

/* cleaning
*************************************************** */
  .cleaning .btn-cir .btn--in {
    padding-left: 24px;
    padding-right: 24px;
  }
  .cleaning .carousel_slider {
    width: calc(100% + 496px);
  }
  .cleaning .carousel_slider .img {
    z-index: 1;
  }
  .cleaning .carousel_slider .txt_area {
    margin-top: -32px;
    padding-top: 48px;
    padding-bottom: 32px;
  }
  .cleaning .carousel_slider .ttl {
    padding-bottom: 16px;
    line-height: 1em;
  }
  .cleaning .carousel_slider .ttl::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: calc(50% - 16px);
    width: 32px;
    height: 1px;
  }
  .cleaning .carousel_slider .price .fnt-num {
    display: inline-block;
    transform: translateY(1px);
    margin-right: 6px;
    line-height: 1em;
    font-size: 188%;
  }
  @media screen and (max-width: 1064px) {
    .cleaning .carousel_slider img {
      height: 110px;
      width: auto;
      max-width: inherit;
    }
    .cleaning .carousel_slider .txt_area {
      margin-top: -16px;
      padding-top: 32px;
      padding-bottom: 20px;
    }
    .cleaning .carousel_slider .ttl {
      font-size: 87%;
    }
    .cleaning .carousel_slider .price {
      font-size: 83%;
    }
    .cleaning .carousel_slider .price .fnt-num {
      font-size: 166%;
    }
  }
  @media screen and (max-width: 768px) {
    .cleaning .btn-cir .btn--in {
      padding-left: 16px;
      padding-right: 16px;
    }
  }
  @media screen and (max-width: 560px) {
    .cleaning .carousel_slider img {
      height: 80px;
    }
    .cleaning .carousel_slider .price {
      font-size: 93%;
    }
    .cleaning .carousel_slider .price .fnt-num {
      font-size: 140%;
    }
    .cleaning .carousel_slider .txt_area {
      margin-top: -8px;
      padding-top: 24px;
      padding-bottom: 16px;
    }
  }

/* coin_laundry
*************************************************** */
  .coin_laundry .ttl_area { z-index: 1; }
  .coin_laundry .str_ttl {
    margin-top: 32px;
    margin-left: -96px;
    z-index: 1;
  }
  .coin_laundry .str_ttl .ttl {
    line-height: 2em;
  }
  .coin_laundry .speech {
    position: absolute;
    bottom: -8px;
    left: -144px;
  }
  .coin_laundry .speech .bubble_img {
    position: absolute;
    z-index: 1;
  }
  .coin_laundry .speech .bubble_img-lft {
    bottom: -8px;
    left: -8px;
  }
  .coin_laundry .speech .bubble_img-rgt {
    top: 0;
    right: -8px;
  }
  .coin_laundry .slider_area {
    margin-top: -72px;
  }
  .coin_laundry .slider_area .slick-slide {
    padding-top: 25px;
    padding-bottom: 25px;
  }
  .coin_laundry .btn_area {
    position: absolute;
    top: -2px;
    right: 0;
    width: 190px;
    height: calc(100% + 4px);
  }
  .coin_laundry .btn_area::before,
  .coin_laundry .btn_area::after {
    content: '';
    position: absolute;
    top: 0;
    width: 64px;
    height: 100%;
    pointer-events: none;
    z-index: 1;
  }
  .coin_laundry .btn_area::before {
    right: 100%;
    background: linear-gradient(to left,rgba(236,246,250,1)0%,rgba(236,246,250,.5)40%,rgba(236,246,250,0)100%);
  }
  .coin_laundry .btn_area::after {
    left: 100%;
    background: linear-gradient(to left,rgba(236,246,250,0)0%,rgba(236,246,250,.5)60%,rgba(236,246,250,1)100%);
  }
  @media screen and (max-width: 1280px) {
    .coin_laundry .ttl_area .img img {
      width: 560px;
    }
    .coin_laundry .speech {
      left: -32px;
      bottom: -16px;
      transform: scale(.8);
    }
  }
  @media screen and (max-width: 1064px) {
    .coin_laundry .str_ttl {
      margin-top: 16px;
    }
    .coin_laundry .ttl_area .img img {
      width: 480px;
    }
    .coin_laundry .speech {
      left: -48px;
    }
    .coin_laundry .slider_area {
      margin-top: -40px;
      padding-bottom: 64px;
    }
    .coin_laundry .slider_area .slick-slide {
      padding-top: 20px;
      padding-bottom: 20px;
      padding-left: 16px;
      padding-right: 16px;
    }
    .coin_laundry .slider_area .slick-slide p {
      font-size: 93%;
    }
    .coin_laundry .carousel_slider .slick-slide {
      margin-left: 6px;
      margin-right: 6px;
    }
  }
  @media screen and (max-width: 768px) {
    .coin_laundry .ttl_area {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      margin-top: -72px;
    }
    .coin_laundry .str_ttl {
      margin-left: auto;
      margin-top: 0;
    }
    .coin_laundry .ttl_area .img {
      width: 90%;
      margin-top: -24px;
      margin-left: auto;
      margin-right: auto;
    }
    .coin_laundry .ttl_area .img img {
      width: 100%;
    }
    .coin_laundry .speech {
      left: -64px;
      bottom: -70px;
      transform: scale(.65);
    }
    .coin_laundry .carousel_slider {
      width: calc(100% + 340px);
    }
    .coin_laundry .slider_area .slick-slide {
      padding-left: 8px;
      padding-right: 8px;
    }
    .coin_laundry .slider_area .slick-slide p {
      font-size: 85%;
      white-space: nowrap;
    }
    .coin_laundry .btn_area {
      width: 120px;
    }
  }
  @media screen and (max-width: 560px) {
    .coin_laundry .ttl_area {
      margin-top: -32px;
    }
    .coin_laundry .str_ttl .ttl {
      font-size: 145%;
      line-height: 1.8em;
    }
    .coin_laundry .ttl_area .img {
      margin-top: -16px;
    }
    .coin_laundry .speech {
      left: -78px;
      bottom: -96px;
      transform: scale(.5);
    }
    .coin_laundry .slider_area {
      margin-top: -24px;
      padding-bottom: 48px;
    }
  }

/* home_news
*************************************************** */
  .home_news .posts-news {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
    margin-left: 168px;
  }
  .home_news .posts-news::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 1px;
    height: 100%;
  }
  .home_news .btn-def {
    position: absolute;
    bottom: 0;
    left: 0;
  }
  .home_news .btn-def .btn--in {
    min-width: 204px;
  }
  @media screen and (max-width: 1064px) {
    .home_news .inner {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      padding-bottom: 80px;
    }
    .home_news .posts-news {
      margin-left: 0;
    }
  }
  @media screen and (max-width: 560px) {
    .home_news .inner {
      padding-bottom: 64px;
    }
  }


/* ##############################################################################

    PAGE

############################################################################## */
  .flow_arrow,
  .flow_list--item .arrow img {
    height: 120px;
  }
  .flow_arrow {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% + 104px);
    background: linear-gradient(45deg, #367abf, #47a8de);
    transform: translateX(-52px);
  }
  .flow_arrow .arrow-last {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    width: auto;
    transform: scale(1.02);
  }
  .flow_list--item {
    padding-top: 32px;
    width: calc(100% / 3 - 58px);
  }
  .flow_list--item .step_num {
    margin-left: 12px;
    line-height: 1em;
  }
  .flow_list--item .step_num .txt {
    font-size: 143%;
    letter-spacing: .2em;
    margin-right: 6px;
  }
  .flow_list--item .step_num .num {
    font-size: 286%;
  }
  .flow_list--item .arrow {
    position: absolute;
    top: 0;
    right: -44px;
    transform: translateX(50%) scale(1.02);
  }
  .flow_list--item:last-child .arrow {
    display: none;
  }
  .flow_list--item .arrow img {
    width: auto;
  }
  .flow_list--item .cont {
    height: calc(100% - 38px);
    padding-top: 56px;
    padding-bottom: 56px;
    padding-left: 40px;
    padding-right: 40px;
    background-size: cover;
    background-position: center;
  }
  .flow_list--item-carry_on .cont {
    background-image: url(../images/cleaning/flow_img-carry_on.jpg);
  }
  .flow_list--item-course .cont {
    background-image: url(../images/cleaning/flow_img-course.jpg);
  }
  .flow_list--item-option .cont {
    background-image: url(../images/cleaning/flow_img-option.jpg);
  }
  .flow_list--item-contact .cont {
    background-image: url(../images/corp/flow_img-contact.jpg);
  }
  .flow_list--item-quote .cont {
    background-image: url(../images/corp/flow_img-quote.jpg);
  }
  .flow_list--item-cleaning .cont {
    background-image: url(../images/corp/flow_img-cleaning.jpg);
  }
  .flow_list--item-comp .cont {
    background-image: url(../images/corp/flow_img-comp.jpg);
  }
  .flow_list--item .cont::before {
    width: calc(100% - 32px);
    height: calc(100% - 32px);
    top: 16px;
    left: 16px;
  }
  .flow_list--item .ico {
    width: 88px;
    height: 88px;
    margin-left: auto;
    margin-right: auto;
  }
  .flow_list--item .ico::before {
    border-radius: 100%;
  }
  @media screen and (max-width: 1280px) {
    .flow_list--item {
      width: calc(100% / 3 - 24px);
    }
    .flow_list--item .arrow {
      right: -20px;
    }
  }
  @media screen and (max-width: 1064px) {
    .flow_list--item {
      padding-top: 24px;
    }
    .flow_list--item .step_num {
      font-size: 86%;
    }
    .flow_arrow,
    .flow_list--item .arrow img {
      height: 80px;
    }
    .flow_arrow {
      width: calc(100% + 64px);
      transform: translateX(-32px);
    }
    .flow_list--item .cont {
      padding-top: 40px;
      padding-bottom: 40px;
      padding-left: 32px;
      padding-right: 32px;
    }
    .flow_list--item .cont::before {
      top: 12px;
      left: 12px;
      width: calc(100% - 24px);
      height: calc(100% - 24px);
    }
    .flow_list--item .ico {
      width: 64px;
      height: 64px;
      padding: 8px;
    }
  }
  @media screen and (max-width: 960px) {
    .flow_list--item {
      width: calc(100% / 3 - 12px);
      padding-top: 18px;
    }
    .flow_list--item .arrow {
      right: -8px;
    }
    .flow_list--item .step_num {
      margin-bottom: 16px;
    }
    .flow_list--item .step_num .txt {
      margin-right: 4px;
    }
    .flow_list--item .step_num .num {
      font-size: 233%;
    }
    .flow_arrow,
    .flow_list--item .arrow img {
      height: 64px;
    }
  }
  @media screen and (max-width: 768px) {
    .flow_arrow,
    .flow_list--item .arrow img {
      width: 64px;
      height: auto;
    }
    .flow_arrow {
      left: 0;
      height: calc(100% + 48px);
      transform: translateY(-16px);
    }
    .flow_list {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .flow_list--item {
      width: 100%;
      padding-top: 0;
      padding-left: 40px;
    }
    .flow_list--item:not(:last-child) {
      margin-bottom: 24px;
    }
    .flow_list--item .step_num {
      position: absolute;
      margin: 0;
      top: 12px;
      left: 26px;
      transform: rotate(90deg);
      transform-origin: 0 0;
    }
    .flow_list--item .arrow {
      top: calc(100% - 6px);
      right: auto;
      right: inherit;
      left: -32px;
    }
    .flow_arrow .arrow-last {
      top: auto;
      top: inherit;
      bottom: 0;
      height: auto;
      width: 100%;
    }
  }

/* page-cleaning
*************************************************** */
  .page-cleaning.page .page_head .img_src {
    background-position: top center;
  }
  .page-cleaning .course .head1 {
    margin-top: -2em;
  }
  .page-cleaning .course .whtbox_list--item {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 32px;
    padding-right: 32px;
  }
  .page-cleaning .course .whtbox_list--item .num {
    font-size: 343%;
    top: -48px;
  }
  .page-cleaning .course .whtbox_list--item .dots_ttl {
    font-size: 109%;
  }
  .page-cleaning .course .whtbox_list--item .subttl {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  .page-cleaning .course .whtbox_list--item .txt {
    line-height: 2em;
  }
  .page-cleaning .course .whtbox_list--item .bg .poa::after {
    top: -32px;
    left: calc(50% - 48px);
    width: 96px;
    height: 96px;
  }
  .page-cleaning .course .whtbox_list--item .badge {
    position: absolute;
    top: -40px;
    right: 16px;
    width: 88px;
    height: 88px;
    border-radius: 100%;
  }
  .page-cleaning .course .whtbox_list--item .badge .em {
    width: 1px;
    height: 8px;
    margin-top: -4px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 4px;
  }
  .page-cleaning .course .whtbox_list--item .badge .em::before,
  .page-cleaning .course .whtbox_list--item .badge .em::after {
    top: 1px;
  }
  .page-cleaning .course .whtbox_list--item .badge .em::before {
    left: -7px;
    transform: rotate(-30deg);
  }
  .page-cleaning .course .whtbox_list--item .badge .em::after {
    left: 7px;
    transform: rotate(30deg);
  }
  .page-cleaning .course .whtbox_list--item .badge .txt,
  .page-cleaning .course .whtbox_list--item .badge .subtxt {
    line-height: 1.4em;
    letter-spacing: .05em;
  }
  .page-cleaning .course .whtbox_list--item .badge .txt {
    margin-bottom: 2px;
  }
  .page-cleaning .course .whtbox_list--item .badge .subtxt {
   font-size: 71%;
  }
  @media screen and (max-width: 1280px) {
    .page-cleaning .diff_clothes .whtbox_list { margin-top: -40px; }
    .page-cleaning .diff_clothes .whtbox_list--item {
      width: calc(100% / 3 - 27px);
      margin-top: 40px;
      margin-right: 40px;
    }
    .page-cleaning .diff_clothes .whtbox_list--item:nth-of-type(3n+3) { margin-right: 0; }
  }
  @media screen and (max-width: 1064px) {
    .page-cleaning .course .whtbox_list {
      margin-top: -64px;
    }
    .page-cleaning .course .whtbox_list--item {
      width: 100%;
      max-width: 540px;
      margin-top: 64px;
      margin-left: auto;
      margin-right: auto;
      padding-top: 20px;
      padding-bottom: 32px;
    }
  }
  @media screen and (max-width: 960px) {
    .page-cleaning .diff_clothes .whtbox_list { margin-top: -24px; }
    .page-cleaning .diff_clothes .whtbox_list--item,
    .page-cleaning .diff_clothes .whtbox_list--item:nth-of-type(3n+3) {
      width: calc(50% - 12px);
      margin-top: 24px;
      margin-right: 24px;
    }
    .page-cleaning .diff_clothes .whtbox_list--item:nth-of-type(even) { margin-right: 0; }
  }
  @media screen and (max-width: 768px) {
    .page-cleaning .tb_img_list--item .badge {
      right: 16px;
    }
  }
  @media screen and (max-width: 560px) {
    .page-cleaning .course .head1 {
      margin-top: -1em;
      margin-bottom: 48px;
    }
    .page-cleaning .course .speech_ttl .num {
      margin-left: 0;
      margin-right: 2px;
    }
    .page-cleaning .course .whtbox_list {
      margin-top: -48px;
    }
    .page-cleaning .course .whtbox_list--item {
      margin-top: 48px;
      padding-top: 16px;
      padding-left: 24px;
      padding-right: 24px;
      padding-bottom: 24px;
    }
    .page-cleaning .course .whtbox_list--item .num {
      top: -40px;
      font-size: 257%;
    }
    .page-cleaning .course .whtbox_list--item .bg .poa::after {
      top: -24px;
      left: calc(50% - 40px);
      width: 80px;
      height: 80px;
    }
    .page-cleaning .course .whtbox_list--item .badge {
      transform: scale(.9);
    }
    .page-cleaning .course .whtbox_list--item .dots_ttl {
      margin-bottom: 16px;
    }
    .page-cleaning .price .inner {
      padding-bottom: 64px;
    }
    .page-cleaning .price .btn-def {
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
    }
    .page-cleaning .price .btn-def .btn--in {
      min-width: 268px;
    }
    .page-cleaning .tb_img_list--item .badge {
      top: -12px;
      right: 12px;
      max-width: 40%;
    }
    .page-cleaning .diff_clothes .whtbox_list { margin-top: -12px; }
    .page-cleaning .diff_clothes .whtbox_list--item,
    .page-cleaning .diff_clothes .whtbox_list--item:nth-of-type(3n+3) {
      width: calc(50% - 6px);
      margin-top: 12px;
      margin-right: 12px;
    }
    .page-cleaning .diff_clothes .whtbox_list--item:nth-of-type(even) { margin-right: 0; }
    .page-cleaning .diff_clothes .whtbox_list--item {
      padding-top: 16px;
      padding-bottom: 16px;
      padding-left: 16px;
      padding-right: 16px;
    }
    .page-cleaning .diff_clothes .whtbox_list--item .head4 {
      height: auto;
      line-height: 1.6em;
    }
    .page-cleaning .diff_clothes .whtbox_list--item .head4 .ttl {
      line-height: 1em;
    }
    .page-cleaning .diff_clothes .whtbox_list--item .head4 small {
      display: block;
    }
    .page-cleaning .diff_clothes .whtbox_list--item .ico {
      width: 64px;
      height: 64px;
      padding: 8px;
      margin-bottom: 12px;
    }
    .page-cleaning .diff_clothes .whtbox_list--item p {
      font-size: 93%;
      line-height: 1.7em;
      letter-spacing: .05em;
    }
    .page-cleaning .diff_clothes .whtbox_list--item:last-child .head4 {
      height: 38px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
    }
  }
  @media screen and (max-width: 374px) {
    .page-cleaning .diff_clothes .whtbox_list--item {
      padding-left: 12px;
      padding-right: 12px;
    }
    .page-cleaning .diff_clothes .whtbox_list--item p {
      font-size: 79%;
      line-height: 1.6em;
    }
    .page-cleaning .diff_clothes .whtbox_list--item .head4 small {
      font-size: 73%;
    }
  }

/* coin_laundry
*************************************************** */
  .page-coin_laundry .recommend .inner {
    max-width: 968px;
  }
  .page-coin_laundry .rcmd_slider {
    padding-bottom: 64px;
  }
  .page-coin_laundry .rcmd_slider .slick-slide {
    padding-left: 12px;
    padding-right: 12px;
  }
  .page-coin_laundry .rcmd_slider .slick-slide .img {
    transition-property: all;
    transition-timing-function: cubic-bezier(0.22,0.61,0.36,1);
    transition-duration: .8s;
  }
  .page-coin_laundry .rcmd_slider .slick-slide.slick-current .img,
  .page-coin_laundry .rcmd_slider .slick-slide.is-active-next .img {
    opacity: 1;
    transform: translateY(0);
  }
  .page-coin_laundry .rcmd_slider .slick-arrow {
    position: absolute;
    bottom: 0;
  }
  .page-coin_laundry .rcmd_slider .slick-dots {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
  }
  @media screen and (max-width: 960px) {
    .page-coin_laundry .machine .tb_img_list {
      margin-top: -32px;
    }
    .page-coin_laundry .machine .tb_img_list--item {
      width: calc(50% - 16px);
      margin-right: 32px;
      margin-top: 32px;
    }
    .page-coin_laundry .machine .tb_img_list--item:nth-of-type(even) {
      margin-right: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .page-coin_laundry .machine .tb_img_list {
      width: calc(100% - 32px);
      max-width: 512px;
      margin-left: auto;
      margin-right: auto;
    }
    .page-coin_laundry .machine .tb_img_list--item {
      width: 100%;
      margin-right: 0;
    }
    .page-coin_laundry .machine .tb_img_list--item:nth-of-type(even) {
      margin-right: 0;
    }
  }
  @media screen and (max-width: 560px) {
    .page-coin_laundry .recommend .inner {
      max-width: 300px;
    }
    .page-coin_laundry .rcmd_slider {
      padding-bottom: 40px;
    }
    .page-coin_laundry .rcmd_slider .slick-dots {
      bottom: -3px;
    }
    .page-coin_laundry .point .str_ttl {
      margin-bottom: 32px;
    }
  }
  @media screen and (max-width: 374px) {
    .page-coin_laundry .machine .tb_img_list {
      width: 100%;
    }
    .page-coin_laundry .machine .tb_img_list--item .btn-def .btn--in {
      font-size: 80%;
    }
  }

/* page-attempt
*************************************************** */
  .page-attempt .lr_bloc .logo {
    position: absolute;
    top: 32px;
    right: 32px;
  }
  .page-attempt .lr_bloc .logo img {
    display: block;
  }
  @media screen and (max-width: 1064px) {
    .page-attempt .lr_bloc .logo {
      top: 24px;
      right: 24px;
    }
  }
  @media screen and (max-width: 560px) {
    .page-attempt .lr_bloc .logo {
      top: 16px;
      right: 16px;
      width: 104px;
    }
  }

/* page-reform
*************************************************** */
  .page-reform .pdg_bloc .img_ttl .img {
    margin-right: 8px;
  }
  .page-reform .pdg_bloc .img_ttl img {
    display: inline-block;
  }
  .page-reform .pdg_bloc .price {
    font-size: 93%;
    font-weight: 700;
    line-height: 1em;
  }
  .page-reform .pdg_bloc .price .fnt-num {
    display: inline-block;
    margin-left: 2px;
    margin-right: 2px;
    transform: translateY(1px);
    font-size: 184%;
  }
  .page-reform .pdg_bloc .txts {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
  }
  @media screen and (max-width: 560px) {
    .page-reform .pdg_bloc .line_list--item {
      padding-left: 0;
      padding-right: 0;
    }
  }
  @media screen and (max-width: 374px) {
    .page-reform .pdg_bloc .price {
      font-size: 79%;
    }
    .page-reform .pdg_bloc .price .fnt-num {
      margin-right: 2px;
    }
  }

/* page-benefits
*************************************************** */
  .page-benefits .tb_img_list--item-stamp_card p {
    letter-spacing: .08em;
  }
  @media screen and (max-width: 1400px) {
    .page-benefits .tb_img_list {
      width: 80%;
      max-width: 820px;
      margin-left: auto;
      margin-right: auto;
    }
  }
  @media screen and (max-width: 1064px) {
    .page-benefits .tb_img_list {
      width: 100%;
      margin-left: auto;
      margin-right: auto;
    }
  }
  @media screen and (max-width: 768px) {
    .page-benefits .tb_img_list {
      max-width: 460px;
    }
  }

/* page-corp
*************************************************** */
  .page-corp .tag_list {
    margin-top: -6px;
  }
  .page-corp .tag_list--item {
    margin-right: 6px;
    margin-top: 6px;
    padding-left: 10px;
    padding-right: 10px;
  }
  .page-corp .main_ttl .tag_list--item {
    padding-top: 8px;
    padding-bottom: 8px;
    padding-left: 16px;
    padding-right: 16px;
  }
  .page-corp .main_ttl .str_ttl {
    text-align: left;
  }
  .page-corp .main_ttl .str_ttl .ttl {
    display: inline;
    line-height: 1.8em;
    background:linear-gradient(transparent 0%, rgba(255,255,255,.95) 0%);
  }
  .page-corp .main_ttl .str_ttl small {
    font-size: 74%;
  }
  .page-corp .main_ttl .slide_area {
    width: calc(65% + 80px);
    left: calc(35% + 80px);
  }
  .page-corp .main_ttl .slider,
  .page-corp .main_ttl .slick-list,
  .page-corp .main_ttl .slick-track {
    height: 100%;
  }
  .page-corp .main_ttl .bg_img .img_src {
    background-image: url('../images/corp/main_ttl-img.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
  }
  .page-corp .achievement .tag_list--item.tag:last-child {
    background: transparent;
    padding-left: 0;
    padding-right: 0;
  }
  .page-corp .flow_list--item {
    width: calc(100% / 4 - 24px);
  }
  .page-corp .flow_list--item .arrow {
    right: -16px;
  }
  .page-corp .flow_list--item .ttl br {
    display: none;
  }
  @media screen and (min-width: 961px) and (max-width: 1400px) {
    .page-corp .flow_list--item .ttl {
      display: flex;
      font-size: 129%;
      line-height: 1.4em;
      height: 2.8em;
    }
    .page-corp .flow_list--item .ttl br {
      display: block;
    }
  }
  @media screen and (max-width: 1400px) {
    .page-corp .use_case .inner {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
    }
    .page-corp .use_case .tb_img_list {
      max-width: 800px;
      margin-left: 96px;
      -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
      flex: 1;
    }
    .page-corp .use_case .tb_img_list--item {
      width: calc(50% - 20px);
      margin-right: 40px;
    }
    .page-corp .use_case .tb_img_list--item:nth-of-type(even) {
      margin-right: 0;
    }
  }
  @media screen and (max-width: 1064px) {
    .page-corp .use_case .tb_img_list {
      margin-left: 56px;
    }
  }
  @media screen and (max-width: 960px) {
    .page-corp .main_ttl .slide_area {
      left: auto;
      left: inherit;
      right: 0;
      width: 60%;
    }
    .page-corp .main_ttl .tag_list {
      font-size: 93%;
    }
    .page-corp .main_ttl .tag_list--item {
      padding-top: 6px;
      padding-bottom: 6px;
      padding-left: 12px;
      padding-right: 12px;
    }
    .page-corp .use_case .inner {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .page-corp .use_case .tb_img_list {
      margin-left: auto;
      margin-right: auto;
    }
    .page-corp .flow_arrow,
    .page-corp .flow_list--item .arrow img {
      width: 64px;
      height: auto;
    }
    .page-corp .flow_arrow {
      left: 0;
      height: calc(100% + 48px);
      transform: translateY(-16px);
    }
    .page-corp .flow_list {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .page-corp .flow_list--item {
      width: 100%;
      padding-top: 0;
      padding-left: 40px;
    }
    .page-corp .flow_list--item:not(:last-child) {
      margin-bottom: 24px;
    }
    .page-corp .flow_list--item .step_num {
      position: absolute;
      margin: 0;
      top: 12px;
      left: 26px;
      transform: rotate(90deg);
      transform-origin: 0 0;
    }
    .page-corp .flow_list--item .arrow {
      top: calc(100% - 6px);
      right: auto;
      right: inherit;
      left: -32px;
    }
    .page-corp .flow_arrow .arrow-last {
      top: auto;
      top: inherit;
      bottom: 0;
      height: auto;
      width: 100%;
    }
    .page-corp .flow_list--item .attn_list {
      display: table;
      margin-left: auto;
      margin-right: auto;
    }
  }
  @media screen and (max-width: 768px) {
    .page-corp .main_ttl .inner {
      padding-top: 144px;
      padding-bottom: 40px;
    }
    .page-corp .main_ttl .ttl_area {
      position: relative;
      z-index: 1;
    }
    .page-corp .main_ttl .tag_list {
      margin-bottom: 16px;
    }
    .page-corp .main_ttl .slide_area {
      width: 80%;
    }
  }
  @media screen and (max-width: 560px) {
    .page-corp .main_ttl .inner {
      padding-top: 160px;
      padding-bottom: 0;
    }
    .page-corp .main_ttl .slide_area {
      width: 90%;
      height: 75%;
    }
    .page-corp .use_case .tb_img_list {
      margin-top: -24px;
    }
    .page-corp .use_case .tb_img_list--item {
      width: calc(50% - 6px);
      margin-top: 24px;
      margin-right: 12px;
    }
    .page-corp .use_case .tb_img_list--item:nth-of-type(even) {
      margin-right: 0;
    }
    .page-corp .use_case .tb_img_list--item .speech_ttl .dots {
      display: none;
    }
  }
  @media screen and (max-width: 413px) {
    .page-corp .flow_list--item p {
      text-align: left;
    }
    .page-corp .flow_list--item br {
      display: none;
    }
    .page-corp .tb_img_list--item .speech_ttl {
      margin-bottom: 4px;
    }
    .page-corp .tb_img_list--item > .txt {
      font-size: 86%;
    }
  }
  @media screen and (max-width: 374px) {
    .page-corp .use_case .tb_img_list--item .head4 .ttl {
      font-size: 100%;
    }
  }

/* company
*************************************************** */
  .page-company .greeting .pdg_bloc {
    padding-left: 96px;
    padding-right: 96px;
  }
  .page-company .greeting .pdg_bloc.flx .txt_area {
    margin-left: 56px;
  }
  .page-company .greeting .job {
    margin-right: 1em;
  }
  .page-company .greeting .name {
    font-size: 133%;
  }
  .page-company .challenge .speech_ttl .ttl {
    font-size: 250%;
  }
  .page-company .challenge .lr_bloc-24h_robot .txt_area {
    padding-top: 28px;
    padding-bottom: 28px;
  }
  .page-company .challenge .lr_bloc-24h_robot .subttl {
    border-radius: 100px;
    padding-left: 12px;
    padding-right: 12px;
    margin-bottom: 4px;
  }
  .page-company .challenge .style_list {
    gap: 6px;
  }
  .page-company .challenge .style_list li {
    width: calc(50% - 3px);
    line-height: 1.2em;
    padding-top: 8px;
    padding-bottom: 8px;
    padding-left: 32px;
  }
  .page-company .challenge .style_list li::before {
    border-radius: 5px;
  }
  .page-company .challenge .style_list li .deposit,
  .page-company .challenge .style_list li .pickup {
    width: 64px;
  }
  .page-company .challenge .style_list li .arrow {
    border-style: solid;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left-width: 6px;
    border-right-width: 0;
    margin-left: 4px;
    margin-right: 4px;
  }
  .page-company .challenge .style_list .num {
    position: absolute;
    top: 50%;
    left: 12px;
    width: 32px;
    line-height: 32px;
    border-radius: 100%;
    font-size: 150%;
    transform: translateY(-50%);
  }
  .page-company .sdgs_list {
    margin-top: -48px;
  }
  .page-company .sdgs_list--item {
    width: calc(50% - 20px);
    margin-top: 48px;
    padding-left: 32px;
    padding-right: 32px;
    padding-bottom: 32px;
  }
  .page-company .sdgs_list--item:nth-of-type(odd) {
    margin-right: 40px;
  }
  .page-company .sdgs_list--item .cir_area {
    margin-top: -8px;
  }
  .page-company .sdgs_list--item .cir_area::before {
    border-radius: 100%;
    transform: scale(1.8);
  }
  .page-company .sdgs_list--item .head3 {
    height: 5.2em;
  }
  .page-company .sdgs .eu_eco_label {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 24px;
  }
  .page-company .sdgs .eu_eco_label::before {
    border-width: 2px;
    border-style: solid;
  }
  .page-company .sdgs .eu_eco_label .img__txt {
    padding-left: 24px;
    padding-right: 24px;
  }
  .page-company .sdgs .eu_eco_label .txt_area {
    margin-right: 40px;
  }
  .page-company .sdgs .eu_eco_label .list {
    padding-top: 16px;
    padding-bottom: 16px;
    padding-left: 32px;
    padding-right: 32px;
    gap: 12px;
  }
  .page-company .sdgs .eu_eco_label .list li {
    width: calc(100% / 3 - 8px);
    line-height: 1.4em;
  }
  .page-company .sdgs .eu_eco_label .list li::before {
    border-color: #fff;
    top: .65em;
  }
  .page-company .sdgs .eu_eco_label .list li:not(:last-child) {
    margin-bottom: 0;
  }
  .page-company .profile .list_area {
    padding-left: 80px;
  }
  .page-company .profile .line_list {
    width: calc(50% - 20px);
  }
  .page-company .profile .tag_list {
    margin-top: 3px;
    margin-bottom: 4px;
  }
  .page-company .profile .tag_list--item {
    margin-right: 6px;
    margin-top: 6px;
    padding-left: 10px;
    padding-right: 10px;
  }
  @media screen and (max-width: 1600px) {
    .page-company .challenge .lr_bloc-24h_robot p br {
      display: none;
    }
  }
  @media screen and (max-width: 1400px) {
    .page-company .sdgs .eu_eco_label {
      width: 100%;
    }
  }
  @media screen and (max-width: 1064px) {
    .page-company .sdgs_list--item {
      width: calc(50% - 12px);
      padding-left: 24px;
      padding-right: 24px;
      padding-bottom: 24px;
    }
    .page-company .sdgs_list--item:nth-of-type(odd) {
      margin-right: 24px;
    }
    .page-company .sdgs_list--item .head3 {
      height: 4.15em;
    }
    .page-company .sdgs_list--item .head3 .ttl {
      font-size: 116%;
      letter-spacing: .05em;
    }
  }
  @media screen and (max-width: 960px) {
    .page-company .greeting .pdg_bloc {
      padding-left: 64px;
      padding-right: 64px;
    }
    .page-company .profile .line_list {
      width: 100%;
    }
    .page-company .sdgs_list--item .head3 {
      height: 3.88em;
    }
    .page-company .sdgs_list--item .head3 .ttl {
      font-size: 109%;
      letter-spacing: .04em;
    }
    .page-company .sdgs .eu_eco_label .list li {
      width: calc(50% - 6px);
    }
  }
  @media screen and (max-width: 768px) {
    .page-company .greeting .pdg_bloc {
      padding-left: 40px;
      padding-right: 40px;
    }
    .page-company .challenge .speech_ttl .ttl {
      font-size: 200%;
    }
    .page-company .challenge .style_list li {
      width: 100%;
    }
    .page-company .challenge .style_list li .arrow {
      margin-left: 8px;
      margin-right: 8px;
    }
    .page-company .challenge .lr_bloc-24h_robot .subttl {
      margin-bottom: 8px;
    }
    .page-company .sdgs .sect_ttl {
      margin-bottom: 48px;
    }
    .page-company .sdgs_list {
      margin-top: -40px;
    }
    .page-company .sdgs_list--item {
      width: 100%;
      margin-top: 40px;
      padding-left: 20px;
      padding-right: 20px;
    }
    .page-company .sdgs_list--item:nth-of-type(odd) {
      margin-right: 0;
    }
    .page-company .sdgs_list--item .cir_area {
      margin-bottom: 12px;
    }
    .page-company .sdgs_list--item .cir_area img {
      width: 40px;
    }
    .page-company .sdgs_list--item .head3 {
      height: auto;
    }
    .page-company .sdgs .eu_eco_label .img__txt {
      padding-left: 8px;
      padding-right: 8px;
    }
    .page-company .sdgs .eu_eco_label .txt_area {
      margin-right: 24px;
    }
    .page-company .profile .list_area {
      padding-left: 40px;
    }
  }
  @media screen and (max-width: 560px) {
     .page-company .greeting .head2 {
      margin-bottom: 10px;
    }
    .page-company .greeting .pdg_bloc {
      padding-left: 24px;
      padding-right: 24px;
    }
    .page-company .sdgs .eu_eco_label .img__txt {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .page-company .sdgs .eu_eco_label .img_area {
      width: 72px;
      margin-left: auto;
      margin-right: auto;
      margin-bottom: 8px;
    }
    .page-company .sdgs .eu_eco_label .txt_area {
      margin-right: 0;
      width: 100%;
    }
    .page-company .sdgs .eu_eco_label {
      padding: 16px;
    }
    .page-company .sdgs .eu_eco_label .img__txt {
      margin-bottom: 12px;
      -webkit-align-items: flex-end;
      -ms-flex-align: end;
      align-items: flex-end;
    }
    .page-company .challenge .speech_ttl .ttl {
      font-size: 160%;
      line-height: 1.4em;
    }
    .page-company .sdgs .eu_eco_label .head4 {
      text-align: center;
    }
    .page-company .sdgs .eu_eco_label .head4 .dots {
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-top: 6px;
    }
    .page-company .sdgs .eu_eco_label .list,
    .page-company .sdgs .eu_eco_label .txts p {
      font-size: 86%;
      line-height: 1.6em;
      letter-spacing: .05em;
    }
    .page-company .sdgs .eu_eco_label .list {
      padding-top: 12px;
      padding-bottom: 12px;
      padding-left: 16px;
      padding-right: 16px;
      gap: 6px;
    }
    .page-company .sdgs .eu_eco_label .list li {
      width: 100%;
    }
    .page-company .profile .list_area {
      padding-left: 24px;
    }
  }
  @media screen and (max-width: 374px) {
    .page-company .sdgs_list--item .head3 .ttl {
      font-size: 100%;
      letter-spacing: 0em;
    }
    .page-company .sdgs_list--item .cir_area img {
      width: 36px;
    }
  }

/* faq
*************************************************** */
  .page-faq .page_head .img_src {
    background-position: center top 25%;
  }
  .page-faq .sect-faq .faq--bloc:not(:last-child) {
    margin-bottom: 24px;
    padding-bottom: 24px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
  }
  .page-faq .sect-faq .faq--bloc ul br {
    display: none;
  }
  .page-faq .sect-faq .faq--bloc .list li:not(:last-child) {
    margin-bottom: 16px;
  }
  .page-faq .sect-faq .faq--bloc a {
    text-decoration: underline;
  }
  .page-faq .sect-faq .faq--bloc .faq_q,
  .page-faq .sect-faq .faq--bloc .faq_a {
    padding-left: 2em;
  }
  .page-faq .sect-faq .faq--bloc .faq_q::before,
  .page-faq .sect-faq .faq--bloc .faq_a::before {
    position: absolute;
    top: .15em;
    left: 0;
    line-height: 1em;
    font-size: 24px;
    font-family: futura-pt, sans-serif;
    font-weight: 700;
  }
  .page-faq .sect-faq .faq--bloc .faq_q::before {
    content: 'Q';
  }
  .page-faq .sect-faq .faq--bloc .faq_a::before {
    content: 'A';
  }
  .page-faq .sect-faq .faq--bloc .tag_list--item {
    margin-top: 8px;
    margin-right: 8px;
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 10px;
    padding-right: 10px;
    font-size: 93%;
  }
  .side--faq,
  .side--faq:not(:last-child) {
    margin-bottom: 0;
  }
  .side--faq_list a:not(.flx) {
    display: block;
  }
  .side--faq_item {
    padding-left: 16px;
    padding-right: 16px;
    overflow: hidden;
  }
  .side--faq_item:not(:last-child) {
    margin-bottom: 8px;
  }
  .side--faq_item > a {
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .side--faq_item > a .bubble {
    display: block;
    width: 14px;
    height: 14px;
    margin-top: 1px;
    margin-right: 8px;
  }
  .side--faq_item ul {
    display: none;
    font-size: 80%;
    line-height: 1.6em;
    padding-bottom: 12px;
  }
  .side--faq_item ul li {
    padding-left: 16px;
  }
  .side--faq_item ul li:not(:last-child) {
    margin-bottom: 10px;
  }
  .side--faq_item ul li::before {
    content: '';
    position: absolute;
    top: 7px;
    left: 0;
    width: 4px;
    height: 4px;
    transform: rotate(45deg);
    border-top-width: 1px;
    border-right-width: 1px;
    border-top-style: solid;
    border-right-style: solid;
    transform-origin: center;
  }
  .side--faq_item .active_line {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    transform: translateX(-100%);
  }
  .side--faq_item.active .active_line {
    transform: translateX(0);
  }
  .side--faq_item.active::before {
    opacity: .95;
  }
  @media screen and (min-width: 1065px) {
    .page-faq .btn-srch {
      display: none;
    }
  }
  @media screen and (min-width: 961px) {
    .page-faq .sect-faq .faq--bloc a:hover {
      text-decoration: none;
    }
    .side--faq_item ul li:hover::before {
      transform: rotate(45deg) translate(2px,-2px);
    }
    .side--faq_item:not(.active) > a:not(:hover) .bubble {
      transform: rotate(30deg);
      opacity: .75;
    }
    .side--faq_item:not(.active) > a:not(:hover) .bubble span {
      width: 3px;
      height: 3px;
    }
    .side--faq_item:not(.active) > a:not(:hover) .bubble span:nth-of-type(1),
    .side--faq_item:not(.active) > a:not(:hover) .bubble span:nth-of-type(2) {
      top: calc(50% - 1px);
    }
    .side--faq_item:not(.active) > a:not(:hover) .bubble span:nth-of-type(1) {
      left: calc(50% - 1px);
    }
    .side--faq_item:not(.active) > a:not(:hover) .bubble span:nth-of-type(2),
    .side--faq_item:not(.active) > a:not(:hover) .bubble span:nth-of-type(3) {
      right: calc(50% - 2px);
    }
    .side--faq_item:not(.active) > a:not(:hover) .bubble span:nth-of-type(3) {
      bottom: calc(50% - 2px);
    }
  }
  @media screen and (max-width: 1064px) {
    .page-faq.loaded .fix_search {
      display: none;
    }
    .page-faq.loaded .side_column {
      background-color: #ecf6fa;
    }
  }

/* recruit
*************************************************** */
  .page-recruit .scr_area {
    position: absolute;
    white-space: nowrap;
    z-index: -1;
    transform: rotate(-13deg);
  }
  .page-recruit .fnt-scr {
    font-size: 800%;
    line-height: .55;
  }
  .page-recruit .fnt-scr span:last-child {
    margin-left: .6em;
  }

  /* --- hero --- */
  .page-recruit .hero-recruit {
    height: 88vh;
    min-height: 880px;
    padding-top: 180px;
    margin-bottom: 240px;
  }
  .page-recruit .hero-recruit .inner,
  .page-recruit .hero-recruit .img_area,
  .page-recruit .hero-recruit .img,
  .page-recruit .hero-recruit .img_src {
    height: 100%;
  }
  .page-recruit .hero-recruit .img_area::before {
    content: '';
    position: absolute;
    top: 0;
  }
  .page-recruit .hero-recruit .img-main {
    width: 62%;
    margin-right: 80px;
    margin-left: auto;
  }
  .page-recruit .hero-recruit .img-main.clr_layer {
    position: absolute;
    bottom: -80px;
    right: -120px;
    z-index: -1;
  }
  .page-recruit .hero-recruit .img-sub {
    position: absolute;
    z-index: -1;
    top: -56px;
    left: 170px;
    width: 32%;
    height: 70%;
  }
  .page-recruit .hero-recruit .img_src {
    background-size: cover;
    background-position: center;
  }
  .page-recruit .hero-recruit .img-main .img_src {
    background-image: url(../images/recruit/hero_img-main-v2.jpg);
  }
  .page-recruit .hero-recruit .img-sub .img_src {
    background-image: url(../images/recruit/hero_img-sub.jpg);
  }
  .page-recruit .hero-recruit .ttl_area {
    position: absolute;
    bottom: -40px;
    left: 0;
    z-index: 1;
    padding: 72px 80px;
  }
  .page-recruit .hero-recruit .ttl_area .ttl {
    line-height: 2.2em;
    font-size: 257%;
    letter-spacing: .16em;
  }
  .page-recruit .hero-recruit .ttl_area .scr_area {
    top: -48px;
    left: -48px;
  }

  /* --- message --- */
  .page-recruit .message .txts {
    line-height: 2.5em;
    text-shadow: 0 0 10px rgba(0,0,0,.1);
  }
  .page-recruit .message .bg {
    width: calc(100% - 128px);
    left: 64px;
  }
  .page-recruit .message .bg::before,
  .page-recruit .message .bg::after {
    z-index: 1;
  }
  .page-recruit .message .bg .bg_img {
    top: -160px;
    background-image: url(../images/recruit/message_bg_img.jpg);
  }

  /* --- support --- */
  .page-recruit .support .img_area {
    margin-left: -144px;
  }
  .page-recruit .support .txt_area {
    padding-left: 120px;
  }
  .page-recruit .support .scr_area {
    bottom: -60px;
    right: -240px;
  }
  .page-recruit .support .fnt-scr {
    font-size: 900%;
    line-height: .65em;
  }
  .page-recruit .support .fnt-scr span:last-child {
    margin-left: 1.2em;
  }

  /* --- job --- */
  .page-recruit .job .ttl__btn {
    padding-top: 32px;
    padding-bottom: 32px;
  }
  .page-recruit .job .sect_ttl .bubble {
    right: 0;
    width: 64px;
    height: 64px;
    top: -8px;
  }
  .page-recruit .job .btn-cir {
    margin-left: 24px;
  }
  .page-recruit .job .btn-cir .btn--in {
    padding-left: 30px;
    padding-right: 30px;
  }
  .page-recruit .interview_list--item.pdg_bloc:not(:last-child) {
    margin-bottom: 0;
  }
  .page-recruit .interview_list--item .img_area {
     border-radius: 100%;
     overflow: hidden;
  }
  .page-recruit .job_list {
    width: calc(100% - 436px);
  }
  .page-recruit .job_list--item {
    width: calc((100% / 3) - 16px);
    height: 35vw;
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 32px;
    padding-right: 32px;
    text-shadow: 0 0 10px rgba(0,0,0,.1);
  }
  .page-recruit .job_list--item::before {
    opacity: 0;
  }
  .page-recruit .job_list--item .txt_area p {
    height: 4em;
  }
  .page-recruit .job_list--item .bg {
    z-index: -10;
  }
  .page-recruit .job_list--item-service .bg_img {
    background-image: url(../images/recruit/job_img-service.jpg);
  }
  .page-recruit .job_list--item-factory .bg_img {
    background-image: url(../images/recruit/job_img-factory.jpg);
  }
  .page-recruit .job_list--item-driver .bg_img {
    background-image: url(../images/recruit/job_img-driver.jpg);
  }
  .page-recruit .job_list--item-part .bg_img {
    /*background-image: url(../images/recruit/job_img-part.jpg);*/
    background-image: url(https://placehold.jp/16/4c5162/ffffff/556x520.png?text=季節アルバイトイメージ);
  }

  @media screen and (min-width: 961px) {
    .page-recruit .job_list--item:hover::before {
      opacity: .5;
    }
  }
  @media screen and (max-width: 1680px) {
    .page-recruit .support .scr_area {
      right: -80px;
    }
    .page-recruit .support .fnt-scr {
      font-size: 750%;
    }
    .page-recruit .support .img_area {
      max-width: 55%;
      margin-left: -40px;
    }
    .page-recruit .support .txt_area {
      padding-left: 96px;
    }
  }
  @media screen and (max-width: 1400px) {
    .page-recruit .hero-recruit .img-main {
      right: 0;
    }
    .page-recruit .hero-recruit .img-main.clr_layer {
      right: -64px;
      bottom: -64px;
    }
    .page-recruit .hero-recruit .img-sub {
      top: -40px;
      left: 104px;
    }
    .page-recruit .support .fnt-scr {
      font-size: 600%;
    }
  }
  @media screen and (max-width: 1280px) {
    .page-recruit .fnt-scr {
      font-size: 600%;
    }
    .page-recruit .hero-recruit {
      height: 70vw;
      min-height: auto;
      padding-top: 144px;
      margin-bottom: 160px;
    }
    .page-recruit .hero-recruit .img-main {
      width: 68%;
      margin-right: 24px;
    }
    .page-recruit .hero-recruit .img-sub {
      width: 34%;
      left: 32px;
      height: 62%;
    }
    .page-recruit .hero-recruit .ttl_area {
      padding: 48px 56px;
    }
    .page-recruit .hero-recruit .ttl_area .ttl {
      font-size: 200%;
    }
    .page-recruit .hero-recruit .ttl_area .scr_area {
      top: -32px;
      left: -24px;
    }
    .page-recruit .support .scr_area {
      bottom: -96px;
    }
    .page-recruit .job .inner {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .page-recruit .job .ttl__btn {
      padding-top: 0;
      padding-bottom: 0;
      margin-bottom: 64px;
      -webkit-flex-direction: row;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
    }
    .page-recruit .job .btn-cir {
      margin-right: 0;
    }
    .page-recruit .job_list {
      width: calc(100% - 80px);
      margin-left: auto;
    }
    .page-recruit .job_list--item {
      height: 40vw;
    }
  }
  @media screen and (max-width: 1064px) {
    .page-recruit .interview_list--item {
      width: calc(50% - 12px);
      margin-right: 24px;
    }
    .page-recruit .interview_list--item:nth-of-type(even) {
      margin-right: 0;
    }
    .page-recruit .interview_list--item .img_area img {
      width: 144px;
      height: 144px;
    }
  }
  @media screen and (max-width: 960px) {
    .page-recruit .hero-recruit {
      height: 90vh;
      margin-bottom: 96px;
    }
    .page-recruit .hero-recruit .img-main {
      width: 58%;
      height: 80%;
    }
    .page-recruit .hero-recruit .img-main.clr_layer {
      bottom: auto;
      bottom: inherit;
      top: 40px;
      right: -40px;
    }
    .page-recruit .hero-recruit .img-sub {
      left: 32px;
      width: 40%;
      height: 47%;
    }
    .page-recruit .support .img_area {
      width: 100%;
      max-width: 100%;
      margin-left: 0;
      margin-bottom: 40px;
    }
    .page-recruit .support .txt_area {
      padding-left: 0;
      display: table;
      margin-left: auto;
      margin-right: auto;
      -webkit-box-flex: inherit;
      -ms-flex: inherit;
      flex: inherit;
      margin-bottom: 96px;
    }
    .page-recruit .support .scr_area {
      right: -40px;
    }
    .page-recruit .job_list {
      width: calc(100% - 40px);
    }
    .page-recruit .job_list--item {
      padding-top: 24px;
      padding-bottom: 24px;
      padding-left: 20px;
      padding-right: 20px;
    }
  }
  @media screen and (max-width: 768px) {
    .page-recruit .message .bg {
      width: calc(100% - 64px);
      left: 32px;
    }
    .page-recruit .support .txt_area {
      margin-bottom: 64px;
    }
    .page-recruit .support .scr_area {
      right: -32px;
      bottom: -88px;
    }
    .page-recruit .support .fnt-scr {
      font-size: 400%;
    }
    .page-recruit .interview_list--item {
      padding: 24px;
    }
    .page-recruit .interview_list--item .img_area img {
      width: 104px;
      height: 104px;
    }
    .page-recruit .job .ttl__btn {
      margin-bottom: 48px;
    }
    .page-recruit .job .sect_ttl {
      margin-left: 0;
    }
    .page-recruit .job .sect_ttl .bubble {
      width: 48px;
      height: 48px;
    }
    .page-recruit .job_list {
      width: calc(100% - 24px);
    }
    .page-recruit .job_list--item {
      width: calc((100% / 3) - 8px);
      height: 55vw;
    }
    .page-recruit .job_list--item .txt_area p {
      font-size: 93%;
      white-space: nowrap;
    }
  }
  @media screen and (max-width: 640px) {
    .page-recruit .job_list {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .page-recruit .job_list--item {
      width: 100%;
      height: 40vw;
    }
    .page-recruit .job_list--item:not(:last-child) {
      margin-bottom: 16px;
    }
    .page-recruit .job_list--item .txt_area p {
      height: auto;
      font-size: 100%;
    }
    .page-recruit .job_list--item .txt_area p br {
      display: none;
    }
  }
  @media screen and (max-width: 560px) {
    .page-recruit .fnt-scr {
      font-size: 400%;
    }
    .page-recruit .hero-recruit {
      height: 75vh;
      margin-bottom: 48px;
      padding-top: 120px;
    }
    .page-recruit .hero-recruit .img-main {
      width: 70%;
      margin-right: 0;
    }
    .page-recruit .hero-recruit .img-main.clr_layer {
      top: 32px;
      right: -32px;
    }
    .page-recruit .hero-recruit .img-sub {
      left: 0;
      width: 44%;
      height: 54%
    }
    .page-recruit .hero-recruit .ttl_area {
      padding: 16px 24px;
    }
    .page-recruit .hero-recruit .ttl_area .ttl {
      font-size: 143%;
    }
    .page-recruit .hero-recruit .ttl_area .scr_area {
      top: -40px;
      left: -6px;
    }
    .page-recruit .message {
      padding-left: 40px;
      padding-right: 40px;
    }
    .page-recruit .message .bg {
      width: calc(100% - 32px);
      left: 16px;
    }
    .page-recruit .interview_list--item {
      width: calc(50% - 6px);
      padding: 18px;
      margin-right: 12px;
    }
    .page-recruit .interview_list--item:nth-of-type(even) {
      margin-right: 0;
    }
    .page-recruit .interview_list--item .img_area img {
      width: 72px;
      height: 72px;
    }
    .page-recruit .interview_list--item .txt_area p {
      font-size: 86%;
      line-height: 1.8em;
    }
    .page-recruit .job .btn-cir .btn--in {
      padding-left: 20px;
      padding-right: 20px;
    }
    .page-recruit .job_list--item {
      height: 200px;
    }
  }

/* contact
*************************************************** */
  .contact .tel_area {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 64px;
    padding-right: 64px;
    min-width: 600px;
  }
  .contact .tel {
    font-size: 343%;
    line-height: 1em;
  }
  .contact .time {
    margin-top: 16px;
  }
  .contact .attn_list {
    margin-top: 4px;
  }
  .contact .attn_list--item {
    opacity: 1;
  }
  .page-contact .page_head .img_src {
    background-position: center top -20%;
  }
  @media screen and (max-width: 960px) {
    .contact .tel {
      font-size: 286%;
    }
    .contact .tel svg {
      width: 34px;
      height: 34px;
    }
  }
  @media screen and (max-width: 768px) {
    .contact .tel_area {
      width: 80%;
      max-width: 100%;
      min-width: auto;
      padding-top: 24px;
      padding-bottom: 24px;
      padding-left: 0;
      padding-right: 0;
    }
    .contact .tel_area .head2 {
      margin-bottom: 12px;
    }
    .contact .tel {
      font-size: 229%;
      margin-bottom: 8px;
    }
    .contact .tel svg {
      width: 28px;
      height: 28px;
    }
    .contact .time {
      margin-top: 8px;
    }
  }
  @media screen and (max-width: 560px) {
    .contact .tel_area {
      width: 90%;
    }
  }
  @media screen and (max-width: 413px) {
    .contact .head1 .ttl {
      font-size: 129%;
    }
  }
  @media screen and (max-width: 374px) {
    .contact .head1 .ttl {
      font-size: 115%;
      transform: translateY(-4px);
    }
    .contact .speech_ttl .dots-5 span:nth-of-type(2) {
      display: none;
    }
  }

/* privacy
*************************************************** */
  .page-privacy .page_head .img_src {
    background-position: center top 0%;
  }

/* 404
*************************************************** */
  .page-404 .btn_list .btn:not(:last-child) {
    margin-right: 24px;
  }
  @media screen and (max-width: 960px) {
    .page-404 .btn_list .btn:not(:last-child) {
      margin-right: 0;
      margin-bottom: 16px;
    }
  }


/* sitemap
*************************************************** */
  .page-sitemap .page_head .img_src {
    background-position: center top 60%;
  }
  .page-sitemap .smnav {
    padding-top: 48px;
    padding-bottom: 48px;
    padding-left: 64px;
    padding-right: 64px;
  }
  .page-sitemap .smnav::before {
    border-style: solid;
    border-width: 16px;
    z-index: 1;
    pointer-events: none;
  }
  .page-sitemap .smnav_list {
    width: calc(50% - 32px);
  }
  .page-sitemap .smnav_list--item {
    padding-top: 16px;
    padding-bottom: 16px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
  }
  .page-sitemap .smnav_list--item br {
    display: none;
  }
  .page-sitemap .smnav_list--item .bubble {
    width: 20px;
    height: 20px;
    margin-right: 8px;
    margin-bottom: -1px;
  }
  .page-sitemap .smnav_list--item_in {
    font-size: 129%;
  }
  .page-sitemap .smnav_list--item_in:not(:hover) .bubble {
    transform: rotate(30deg);
    opacity: .75;
  }
  .page-sitemap .smnav_list--item_in:not(:hover) .bubble span {
    width: 4px;
    height: 4px;
  }
  .page-sitemap .smnav_list--item_in:not(:hover) .bubble span:nth-of-type(1),
  .page-sitemap .smnav_list--item_in:not(:hover) .bubble span:nth-of-type(2) {
    top: calc(50% - 2px);
  }
  .page-sitemap .smnav_list--item_in:not(:hover) .bubble span:nth-of-type(1) {
    left: calc(50% - 2px);
  }
  .page-sitemap .smnav_list--item_in:not(:hover) .bubble span:nth-of-type(2),
  .page-sitemap .smnav_list--item_in:not(:hover) .bubble span:nth-of-type(3) {
    right: calc(50% - 2px);
  }
  .page-sitemap .smnav_list--item_in:not(:hover) .bubble span:nth-of-type(3) {
    bottom: calc(50% - 2px);
  }
  .page-sitemap .smnav_sub_list {
    margin-top: 4px;
  }
  .page-sitemap .smnav_sub_list--item:not(:last-child) {
    margin-bottom: 8px;
  }
  .page-sitemap .smnav_list-shop .smnav_sub_list--item:not(:last-child) {
    margin-bottom: 20px;
  }
  .page-sitemap .tag_list {
    margin-top: -2px;
  }
  .page-sitemap .tag_list--item {
    margin-right: 6px;
    margin-top: 6px;
  }
  .page-sitemap .tag_list--item a {
    display: block;
  }
  .page-sitemap .tag_list--item-agency {
    pointer-events: none;
  }
  @media screen and (min-width: 961px) {
    .page-sitemap .smnav .hov_area:hover .ico-arrow {
      animation-duration: .5s;
      animation-timing-function: cubic-bezier(0.22,0.61,0.36,1);
      animation-delay: 0s,.5s;
      animation-iteration-count: 1;
      animation-fill-mode: forwards;
      animation-name: mov_out-x,mov_in-x;
    }
  }
  @media screen and (max-width: 960px) {
    .page-sitemap .smnav_list {
      width: 100%;
    }
    .page-sitemap .smnav_list-main {
      order: 2;
    }
    .page-sitemap .smnav_list-shop {
      order: 1;
      margin-top: 70px;
    }
    .page-sitemap .smnav_list-shop .smnav_list--item {
      margin-bottom: 0;
    }
    .page-sitemap .smnav_list--item-home {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
    }
  }
  @media screen and (max-width: 560px) {
    .page-sitemap .smnav {
      padding-top: 16px;
      padding-bottom: 40px;
      padding-left: 32px;
      padding-right: 32px;
    }
    .page-sitemap .smnav::before {
      border-width: 12px;
    }
    .page-sitemap .smnav_list--item_in {
      font-size: 115%;
    }
    .page-sitemap .smnav_list--item {
      padding-top: 10px;
      padding-bottom: 10px;
      border-bottom-width: 1px;
    }
    .page-sitemap .smnav_list--item .bubble {
      margin-right: 4px;
    }
    .page-sitemap .smnav_list-shop {
      margin-top: 53px;
    }
    .page-sitemap .smnav_sub {
      padding-left: 16px;
    }
    .page-sitemap .smnav_list-shop .smnav_sub_list--item:not(:last-child) {
      margin-bottom: 16px;
    }
  }
  @media screen and (max-width: 413px) {
    .page-sitemap .smnav {
      padding-left: 24px;
      padding-right: 24px;
    }
  }


/* ##############################################################################

    ARCHIVE

############################################################################## */

/* main_column
**************************************** */
  .fix_wrap .main_column {
    flex: 1;
  }
  .fix_wrap.flx-rev .main_column {
    margin-left: 72px;
  }
  .fix_wrap:not(.flx-rev) .main_column {
    margin-right: 72px;
  }

  /* --- post --- */
  .post { position: relative; }
  .post--link::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
  }
  .cat_list {
    position: relative;
    z-index: 1;
    overflow: hidden;
  }
  .post--img {
    width: 100%;
    padding-top: 68.25%;
  }
  .post--img .img_src {
    background-position: center;
    background-repeat: no-repeat;
  }
  .post--img .img_src:not(.no_img) {
    background-size: cover;
  }
  .post--img .img_src::before,
  .post--img .img_src::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
  }
  .img_src.no_img::before {
    opacity: 1;
  }
  .img_src.no_img::after {
    background-size: 50%;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url(../images/common/logo-ver.svg);
  }
  .img_src.js-rellax {
    height: calc(100% + 160px);
    top: -80px;
  }
  .cat_list a {
    display: inline-block;
    vertical-align: middle;
    font-size: 79%;
    color: #f6f6f6;
    line-height: 1;
    padding: 6px 12px;
    border-radius: 2px;
    float: left;
    margin-right: 4px;
    margin-bottom: 4px;
    white-space: nowrap;
  }

  @media screen and (max-width: 1064px) {
    .main_column,
    .fix_wrap.flx-rev .main_column,
    .fix_wrap:not(.flx-rev) .main_column {
      width: 100%;
      margin-left: auto;
      margin-right: auto;
    }
    .post_type-news .main_column {
      margin-top: 40px;
      order: 2;
    }
  }
  @media screen and (max-width: 560px) {
    .post_type-news .main_column {
      margin-top: 28px;
    }
  }

/* side_column
**************************************** */
  .side_column { width: 304px; }
  .post_type-news .side_column { width: 240px; }
  .side_sect:not(:last-child) { margin-bottom: 64px; }
  .side--ttl {
    font-size: 120%;
    letter-spacing: .2em;
    line-height: 1;
    margin-bottom: 16px;
  }
  .side--ttl small {
    font-size: 62%;
    opacity: .5;
    letter-spacing: .15em;
    display: block;
    line-height: 1;
    margin-top: 8px;
  }

  /* --- post --- */
  .posts-side .post:not(:last-child) { margin-bottom: 16px; }
  .posts-side .post--img {
    margin-right: 16px;
    border-radius: 3px;
    padding-top: 0;
    width: 64px;
    height: 64px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  .posts-side .txt_area { flex: 1; }
  .posts-side .post--date { margin-bottom: 0; }
  .posts-side .post--ttl { line-height: 1.4; }

  /* --- archive --- */
  .side_column .archive_list--ttl::after {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-top: 1px solid;
    border-right: 1px solid;
    transform: rotate(135deg);
    transition: .4s ease-out;
  }
  .side_column .archive_list--ttl.active::after { transform: rotate(315deg); }
  .side_column .archive_month { display: none; }
  @media screen and (min-width: 1065px) {
    .search_btn {
      display: none;
    }
    .side_column--in { width: 304px !important; }
    .post_type-news .side_column--in { width: 240px !important; }
  }
  @media screen and (max-width: 1064px) {
    .archive:not(.post_type-news) .side_column,
    .page-faq .side_column {
      position: fixed !important;
      top: 0;
      left: 0;
      z-index: 10;
      width: 100%;
      height: 100% !important;
      padding-top: 32px;
      padding-bottom: 96px;
      padding-left: 16px;
      padding-right: 16px;
      overflow-y: scroll;
      opacity: 0;
      pointer-events: none;
      transition: .4s all;
      background-color: #fff;
    }
    .post_type-news .side_column {
      position: static !important;
      order: 1;
      width: 100%;
      display: none;
      opacity: 1;
      padding: 0;
      pointer-events: all;
      transition: none;
    }
    .archive:not(.post_type-news) .side_column.is_show,
    .page-faq .side_column.is_show {
      opacity: 1;
      pointer-events: all;
    }
    .side_column::before {
      content: ;
    }
    .side_column--in {
      position: static !important;
      transform: initial !important;
      width: 100% !important;
    }
    .side_sect:not(:last-child) {
      margin-bottom: 32px;
    }
    .search_btn {
      font-size: 93%;
    }
    .search_btn--plus {
      width: 32px;
      height: 32px;
      border-radius: 100%;
      overflow: hidden;
      margin-right: 12px;
    }
    .search_btn--plus::before {
      opacity: .05;
    }
    .search_btn--plus .line {
      position: absolute;
      top: 50%;
      left: calc(50% - 5px);
      width: 10px;
      height: 1px;
    }
    .search_btn--plus .line:nth-of-type(2) {
      transform: rotate(90deg);
    }
    .search_btn.active .search_btn--plus .line:nth-of-type(1) {
      transform: rotate(180deg);
    }
    .search_btn.active .search_btn--plus .line:nth-of-type(2) {
      transform: rotate(360deg);
    }
  }
  @media screen and (max-width: 560px) {
    .archive:not(.post_type-news) .side_column {
      padding-top: 32px;
    }
  }

/* shop
*************************************************** */
  .side--pref {
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 24px;
    padding-right: 24px;
  }
  .side--pref .head2 .ttl {
    display: block;
    padding-top: 9px;
    padding-bottom: 9px;
  }
  .side--pref .head2 .shop_num {
    font-size: 82%;
  }
  .side--pref .pt_list--item:not(:last-child) {
    margin-bottom: 32px;
  }
  .side--pref .pt_list--item .img_ttl {
    margin-bottom: 12px;
  }
  .side--pref .pt_list--item .img_ttl .img {
    margin-right: 8px;
  }
  .side--pref .pt_list--item .img_ttl .img img {
    display: block;
  }
  .side--pref .ct_list {
    margin-top: -8px;
  }
  .side--pref .ct_list--item {
    width: calc(50% - 4px);
    margin-right: 8px;
    margin-top: 8px;
  }
  .side--pref .ct_list--item:nth-of-type(even) {
    margin-right: 0;
  }
  .side--pref .ct_list--item a {
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 1.2em;
  }
  .side--pref .ct_list--item a::before {
    border-width: 2px;
    border-style: solid;
    opacity: 0;
  }
  .side--pref .shop_num,
  .side--pref .shop_num::before,
  .side--pref .shop_num::after {
    border-radius: 100px;
  }
  .side--pref .shop_num {
    position: absolute;
    top: -5px;
    right: -5px;
    z-index: 1;
    padding-top: 2px;
    padding-bottom: 2px;
    padding-left: 7px;
    padding-right: 7px;
    line-height: 1em;
    letter-spacing: .05em;
  }
  .side--pref .shop_num::after {
    opacity: 0;
  }
  .side--pref .ct_list--item.current a::before {
    opacity: .8;
  }
  .side--pref .ct_list--item.current .shop_num::after {
    opacity: 1;
  }
  .post_type-shop .page_head .img_src {
    background-position: center top 67%;
  }

  /* --- search_tab --- */
  .search_tab {
    z-index: 1;
  }
  .search_tab--item {
    width: 364px;
    margin-bottom: -2px;
    border-radius: 3px 3px 0 0;
  }
  .search_tab--item a {
    padding-top: 14px;
    padding-bottom: 12px;
  }
  .search_tab--item a .line {
    position: absolute;
    top: 0;
    left: -2px;
    width: calc(100% + 4px);
    height: 4px;
  }
  .search_tab--item .ico {
    width: 48px;
    height: 48px;
    margin-right: 2px;
  }
  .search_tab--item .ico svg {
    display: block;
  }
  .search_tab--item .ttl {
    font-size: 172%;
  }
  .search_tab {
    border-bottom: 2px solid #f0f3f8;
  }
  .search_tab--item.active a {
    border-left: 2px solid #f0f3f8;
    border-right: 2px solid #f0f3f8;
    pointer-events: none;
  }
  .search_tab--item.active a:not(.bg_clr-seven_colors_lt) {
    background-color: #fff;
  }

  /* --- search_area --- */
  .search_area {
    padding-top: 64px;
    padding-bottom: 64px;
  }
  .search_bloc {
    padding-top: 32px;
    padding-bottom: 32px;
  }
  .search_bloc:not(:last-child) {
    margin-bottom: 24px;
  }
  .search_bloc .ttl_area {
    width: 268px;
  }
  .search_bloc .ttl_area::before {
    content: '';
    position: absolute;
    right: 0;
    top: 0;
    width: 2px;
    height: 100%;
    border-radius: 100px;
  }
  .search_bloc .ttl_area .img {
    width: 96px;
    height: 96px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 100%;
  }
  .search_bloc .ttl_area .head2 .ttl {
    line-height: .8em;
  }
  .search_bloc .ttl_area .head2 .ttl small {
    font-size: 73%;
  }
  .search_bloc .ttl_area .btn-def.btn-sm .btn--in {
    min-width: auto;
  }
  .search_bloc .form_area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
    padding-left: 40px;
    padding-right: 35px;
  }
  .search_bloc .check_list {
    margin-top: -4px;
  }
  .search_bloc .check_list--item {
    margin-right: 4px;
    margin-top: 4px;
  }
  .search_bloc .check_list--item img {
    display: block;
  }
  .search_bloc .check_list--item input {
    display: none;
  }
  .search_bloc .check_list--item .img {
    opacity: .4;
  }
  .search_bloc .check_list--item .check {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 16px;
    height: 16px;
    border-radius: 100%;
    opacity: 0;
    transform: rotate(-180deg);
  }
  .search_bloc .check_list--item .check::before {
    content: '';
    position: absolute;
    z-index: 1;
    top: 45%;
    left: 50%;
    width: 8px;
    height: 5px;
    border-left-width: 2px;
    border-left-style: solid;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    transform: translate(-50%,-50%) rotate(-45deg);
  }
  .search_bloc .check_list--item input[type="checkbox"]:checked + .img,
  .search_bloc .check_list--item input[type="checkbox"]:checked + .img + .check {
    opacity: 1;
  }
  .search_bloc .check_list--item input[type="checkbox"]:checked + .img + .check {
    transform: rotate(0deg);
  }
  .search_bloc .area,
  .search_bloc .area select {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
  }
  .search_bloc .area {
    margin-right: 40px;
  }
  .search_bloc .area .head4 {
    margin-right: 24px;
  }
  .search_bloc select,
  .search_bloc button.btn-def .btn--in {
    height: 48px;
  }
  .search_bloc select {
    border: none;
    background-color: #fff;
    border-radius: 3px;
    padding-left: 12px;
    padding-right: 32px;
    font-size: 16px;
  }
  .search_bloc select:focus {
    outline: none;
  }
  .search_bloc button {
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
  }
  @media screen and (min-width: 1065px) {
    .search_area .inner {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
    }
    .search_bloc {
      width: calc(50% - 28px);
    }
    .search_bloc:not(:last-child) {
      margin-bottom: 0;
    }
    .search_bloc .ttl_area,
    .search_bloc .form_area {
      padding-left: 40px;
      padding-right: 40px;
    }
    .search_bloc .ttl_area {
      width: 100%;
      -webkit-flex-direction: row;
      -ms-flex-direction: row;
      flex-direction: row;
      margin-bottom: 24px;
    }
    .search_bloc .ttl_area::before {
      content: none;
    }
    .search_bloc .ttl_area .head2 {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-bottom: 0;
    }
    .search_bloc .ttl_area .head2 .ttl {
      line-height: 1.2em;
      text-align: left;
    }
    .search_bloc .ttl_area .img {
      width: 64px;
      height: 64px;
      padding: 14px;
      margin-bottom: 0;
      margin-right: 16px;
    }
    .search_bloc .ttl_area .btn {
      margin-right: 0;
    }
    .search_bloc .check_list--item {
      width: calc(20% - 4px);
    }
    .search_bloc .check_list--item img {
      width: 100%;
      height: auto;
    }
    .search_bloc .area {
      margin-right: 24px;
    }
    .search_bloc .area .head4 {
      margin-right: 0;
      margin-bottom: 8px;
    }
    .search_bloc button.btn-def .btn--in {
      min-width: 210px;
    }
  }
  @media screen and (min-width: 1065px) and (max-width: 1280px) {
    .search_bloc {
      width: calc(50% - 20px);
    }
    .search_bloc .ttl_area,
    .search_bloc .form_area {
      padding-left: 32px;
      padding-right: 32px;
    }
    .search_bloc .ttl_area .img {
      width: 56px;
      height: 56px;
      padding: 12px;
    }
    .search_bloc .ttl_area .head2 .ttl {
      font-size: 130%;
    }
    .search_bloc .area__btn {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .search_bloc .area,
    .search_bloc .area__btn .btn-def {
      width: 100%;
    }
    .search_bloc .area {
      margin-right: 0;
      margin-bottom: 12px;
    }
    .search_bloc .area .head4 {
      margin-right: 16px;
      margin-bottom: 0;
    }
    .search_bloc .area__btn .btn-def .btn--in {
      min-width: 100%;
    }
    .search_bloc .area__btn .btn-def .txt {
      font-size: 116%;
    }
  }
  @media screen and (min-width: 961px) {
    .search_bloc .check_list--item:hover .img {
      opacity: 1;
    }
  }
  @media screen and (min-width: 661px) and (max-width: 1064px) {
    .side--pref .ct_list--item {
      width: calc(100% / 3 - 6px);
    }
    .side--pref .ct_list--item:nth-of-type(even) {
      margin-right: 8px;
    }
    .side--pref .ct_list--item:nth-of-type(3n+3) {
      margin-right: 0;
    }
  }
  @media screen and (max-width: 1280px) {
    .search_tab--item {
      width: 320px;
    }
    .search_tab--item .ico,
    .search_tab--item .ico svg {
      width: 32px;
      height: 32px;
    }
    .search_tab--item .ico {
      margin-right: 6px;
    }
    .search_tab--item .ttl {
      font-size: 157%;
    }
    .search_bloc .check_list--item {
      margin-left: 2px;
      margin-right: 2px;
    }
  }
  .btn-srch {
    position: fixed;
    bottom: 20px;
    left: 12px;
    z-index: 100;
    width: calc(100% - 24px);
    font-weight: 700;
    opacity: 0;
  }
  .btn-srch .btn--in {
    width: 100%;
    height: 50px;
    border-radius: 100px;
  }
  .scrolled .btn-srch {
    opacity: 1;
  }
  .btn-srch .ico {
    width: 22px;
    height: 22px;
    margin-right: 6px;
  }
  .btn-srch .close {
    position: absolute;
    top: calc(50% - 16px);
    right: 8px;
    width: 32px;
    height: 32px;
    border-radius: 100%;
    opacity: 0;
  }
  .btn-srch .close::before,
  .btn-srch .close::after {
    content: '';
    position: absolute;
    top: calc(50% - 1px);
    left: calc(50% - 20%);
    width: 40%;
    height: 2px;
  }
  .btn-srch .close::before {
    transform: rotate(45deg);
  }
  .btn-srch .close::after {
    transform: rotate(-45deg);
  }
  .btn-srch.close .btn--in {
    background-color: #b9bcbc;
  }
  .btn-srch.close .close {
    opacity: 1;
    transform: rotate(360deg);
  }
  @media screen and (max-width: 1064px) {
    .search_bloc {
      max-width: 782px;
      margin-left: auto;
      margin-right: auto;
    }
    .search_bloc .ttl_area,
    .search_bloc .form_area {
      padding-left: 40px;
      padding-right: 40px;
    }
    .search_bloc .ttl_area {
      width: 100%;
      -webkit-flex-direction: row;
      -ms-flex-direction: row;
      flex-direction: row;
      margin-bottom: 24px;
    }
    .search_bloc .ttl_area::before {
      content: none;
    }
    .search_bloc .ttl_area .head2 {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-bottom: 0;
    }
    .search_bloc .ttl_area .head2 .ttl {
      line-height: 1.2em;
      text-align: left;
    }
    .search_bloc .ttl_area .img {
      width: 64px;
      height: 64px;
      padding: 14px;
      margin-bottom: 0;
      margin-right: 16px;
    }
    .search_bloc .ttl_area .btn {
      margin-right: 0;
    }
    .search_bloc .area {
      margin-right: 24px;
    }
    .search_bloc .area .head4 {
      margin-right: 16px;
    }
    .search_bloc .btn-def .btn--in {
      min-width: 210px;
    }
  }
  @media screen and (max-width: 960px) {
    .search_tab {
      padding-left: 24px;
      padding-right: 24px;
    }
    .search_tab--item {
      width: calc(100% / 2 - 16px);
    }
    .search_tab--item a {
      padding-top: 8px;
      padding-bottom: 8px;
    }
    .search_tab--item .ico {
      margin-right: 0;
    }
    .search_tab--item .ttl {
      font-size: 129%;
      text-align: center;
      line-height: 1.2em;
    }
    .search_tab--item .ttl .tab-sm {
      font-size: 86%;
    }
  }
  @media screen and (max-width: 880px) {
    .search_bloc {
      max-width: 626px;
    }
  }
  @media screen and (max-width: 768px) {
    .search_area {
      padding-top: 48px;
      padding-bottom: 48px;
    }
    .search_bloc {
      max-width: 516px;
      padding-top: 20px;
      padding-bottom: 24px;
    }
    .search_bloc .ttl_area,
    .search_bloc .form_area {
      padding-left: 24px;
      padding-right: 24px;
    }
    .search_bloc .ttl_area {
      margin-bottom: 12px;
    }
    .search_bloc .ttl_area .img {
      width: 52px;
      height: 52px;
      padding: 8px;
      margin-right: 12px;
    }
    .search_bloc .ttl_area .btn {
      font-size: 86%;
    }
    .search_bloc .check_list {
      margin-bottom: 12px;
    }
    .search_bloc .area {
      margin-right: 16px;
    }
    .search_bloc .head4 {
      margin-right: 0;
      margin-bottom: 6px;
    }
    .search_bloc .head4 svg {
      width: 24px;
      height: 24px;
    }
    .search_bloc .head4 .ttl {
      font-size: 100%;
    }
  }
  @media screen and (max-width: 560px) {
    .search_tab {
      padding-left: 8px;
      padding-right: 8px;
    }
    .search_tab--item .ico,
    .search_tab--item .ico svg {
      width: 28px;
      height: 28px;
    }
    .search_tab--item .ttl {
      font-size: 100%;
    }
    .search_tab--item a {
      padding-top: 4px;
    }
    .search_tab--item a .line {
      height: 3px;
    }
    .search_bloc {
      max-width: 420px;
    }
    .search_bloc .ttl_area .img {
      width: 44px;
      height: 44px;
      padding: 7px;
      margin-right: 10px;
    }
    .search_bloc .btn-radius .txt {
      margin-right: 0;
    }
    .search_bloc .btn-radius .ico-line_arrow {
      display: none;
    }
    .search_bloc .check_list--item {
      width: calc(25% - 4px);
    }
    .search_bloc .check_list--item img {
      width: 100%;
      height: auto;
    }
    .search_bloc .area__btn {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .search_bloc .area,
    .search_bloc .area__btn .btn-def {
      width: 100%;
    }
    .search_bloc .area {
      margin-right: 0;
      margin-bottom: 12px;
    }
    .search_bloc .area__btn .btn-def .btn--in {
      min-width: 100%;
    }
    .search_bloc .area__btn .btn-def .txt {
      font-size: 116%;
    }
    
  }
  @media screen and (max-width: 413px) {
    .search_tab--item .ico,
    .search_tab--item .ico svg {
      width: 24px;
      height: 24px;
    }
    .search_tab--item .ttl {
      font-size: 86%;
    }
    .search_bloc .ttl_area,
    .search_bloc .form_area {
      padding-left: 16px;
      padding-right: 16px;
    }
  }
  @media screen and (max-width: 374px) {
    .search_tab--item .ico,
    .search_tab--item .ico svg {
      width: 22px;
      height: 22px;
    }
    .search_tab--item .ttl {
      letter-spacing: 0em;
    }
    .search_bloc .ttl_area,
    .search_bloc .form_area {
      padding-left: 12px;
      padding-right: 12px;
    }
    .search_bloc .ttl_area .head2 .ttl {
      font-size: 100%;
      letter-spacing: 0em;
    }
    .search_bloc .ttl_area .img {
      margin-right: 8px;
    }
    .search_bloc .ttl_area .btn-def.btn-sm .btn--in {
      padding-left: 8px;
      padding-right: 10px;
      height: 26px;
    }
  }

  /* --- pref_sect --- */
  .pref_sect {
    padding-top: 104px;
    margin-top: -104px;
  }
  .pref_sect:not(:last-child) {
    margin-bottom: 80px;
  }
  .pref_sect .head1 .fnt-en {
    display: inline-block;
    font-size: 167%;
    line-height: 0em;
    margin-left: 6px;
    margin-right: 6px;
    transform: translateY(3px);
  }

  /* --- result --- */
  .result .speech_ttl .num {
    transform: translateY(3px);
    margin-left: 0;
    margin-right: 4px;
    font-size: 167%;
  }
  .posts-shop .delimiter {
    width: 100%;
  }
  .posts-shop {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .posts-shop .post {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-top: 32px;
    padding-bottom: 32px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
  }
  .posts-shop .post:first-child {
    padding-top: 0;
  }
  .posts-shop .post:first-child .badge-staff {
    top: -16px;
  }
  .posts-shop .badge-staff {
    position: absolute;
    top: 16px;
    left: -14px;
    width: 56px;
    height: 56px;
    letter-spacing: .05em;
    z-index: 1;
    border-radius: 100%;
    font-size: 79%;
    font-weight: 700;
    line-height: 1.2em;
    pointer-events: none;
  }
  .posts-shop .post--img {
    width: 246px;
    padding-top: 164px;
    margin-right: 24px;
  }
  .posts-shop .txt_area {
    padding-top: 12px;
    padding-bottom: 12px;
  }
  .posts-shop .txt_area .head4 .tag {
    display: inline-block;
    transform: translateY(-1px);
    font-size: 80%;
    margin-left: 8px;
  }
  .posts-shop .txt_area .address {
    line-height: 1.6em;
  }
  .posts-shop .txt_area .address br {
    display: none;
  }
  .posts-shop .txt_area p:not(:last-child).address {
    margin-bottom: 18px;
  }
  .posts-shop .type_list {
    position: absolute;
    top: 16px;
    right: 16px;
  }
  .posts-shop .srv_ico:not(:last-child) {
    margin-right: 16px;
    padding-right: 16px;
    border-right-width: 2px;
    border-right-style: solid;
  }
  .posts-shop .srv_ico .ttl {
    margin-right: 6px;
    width: 46px;
  }
  .posts-shop .srv_ico .ttl img {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  .posts-shop .srv_ico .ttl span {
    display: block;
    line-height: 1.1em;
    font-size: 71%;
  }
  .posts-shop .srv_ico-co .ttl span {
    letter-spacing: 0em;
  }
  .posts-shop .ico_list--item {
    border-width: 1px;
    border-style: solid;
    width: 46px;
    height: 46px;
    line-height: 1.4em;
    letter-spacing: .05em;
    font-size: 79%;
    white-space: nowrap;
  }
  .posts-shop .ico_list--item:not(:last-child) {
    margin-right: 4px;
  }
  .posts-shop .ico_list--item-credit,
  .posts-shop .ico_list--item-delivery_locker,
  .posts-shop .ico_list--item-sneakers {
    padding-top: 2px;
    font-size: 72%;
    letter-spacing: -.05em;
  }
  .posts-shop .ico_list--item-sneakers {
    letter-spacing: -.1em;
  }
  .type_list--item {
    width: 104px;
    padding-top: 5px;
    padding-bottom: 6px;
    line-height: 1em;
    font-size: 79%;
    font-weight: 700;
  }
  .type_list--item:not(:last-child) {
    margin-right: 6px;
  }
  .posts-shop .post-agency .ttl__add {
    margin-bottom: 12px;
  }
  .posts-shop .post-agency .tel {
    font-size: 157%;
    line-height: 1em;
  }
  .posts-shop .post-agency {
    width: calc(50% - 20px);
    padding-top: 8px;
    padding-bottom: 16px;
    padding-left: 24px;
    padding-right: 24px;
  }
  @media screen and (min-width: 961px) {
    .posts-shop .post:hover .img_src {
      transform: scale(1.05);
      opacity: .75;
    }
    .posts-shop .post-agency {
      pointer-events: none;
    }
  }
  @media screen and (max-width: 1420px) {
    .result .pdg_bloc-lg {
      padding-top: 40px;
    }
    .shop_search-service .result .inner {
      max-width: 880px;
    }
    .posts-shop .post {
      width: calc(50% - 20px);
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .posts-shop .post:first-child {
      padding-top: 32px;
    }
    .posts-shop .post--img {
      width: 100%;
      padding-top: 66%;
      margin-right: 0;
    }
    .posts-shop .post:not(.post-agency) .txt_area {
      padding-bottom: 0;
    }
    .posts-shop .srv_icos {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .posts-shop .srv_ico {
      width: 100%;
    }
    .posts-shop .srv_ico:not(:last-child) {
      margin-bottom: 10px;
      margin-right: 0;
      padding-right: 0;
      border: none;
    }
    .posts-shop .ico_list {
      width: calc(100% - 52px);
    }
    .posts-shop .ico_list--item {
      width: calc(20% - 4px);
      height: 42px;
    }
    .posts-shop .type_list {
      top: 44px;
      right: 12px;
    }
    .posts-shop .post-agency {
      padding-left: 0;
      padding-right: 0;
    }
  }
  @media screen and (max-width: 1064px) {
    .result .pdg_bloc-lg {
      padding-top: 20px;
    }
    .shop_search-list .main_column {
      max-width: 880px;
      padding-left: 48px;
      padding-right: 48px;
    }
    .pref_sect:not(:last-child) {
      margin-bottom: 64px;
    }
    .pref_sect .head1 {
      margin-bottom: 12px;
    }
  }
  @media screen and (max-width: 960px) {
    .pref_sect:not(:last-child) {
      margin-bottom: 40px;
    }
    .pref_sect .head1 {
      margin-bottom: 0;
    }
  }
  @media screen and (max-width: 860px) {
    .posts-shop .txt_area p:not(:last-child).address {
      margin-bottom: 12px;
    }
    .posts-shop .srv_ico {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .posts-shop .srv_ico .ttl {
      width: 100%;
      margin-right: 0;
      margin-bottom: 6px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
    }
    .posts-shop .srv_ico .ttl img {
      margin-left: 0;
      margin-right: 4px;
      width: 18px;
      height: 18px;
    }
    .posts-shop .srv_ico .ttl br {
      display: none;
    }
    .posts-shop .ico_list {
      margin-right: auto;
      width: 100%;
    }
    .posts-shop .type_list {
      top: 40px;
      right: 8px;
    }
    .posts-shop .type_list--item {
      width: 96px;
      padding-top: 4px;
      padding-bottom: 5px;
      border-radius: 2px;
      font-size: 70%;
      letter-spacing: .05em;
    }
  }
  @media screen and (max-width: 768px) {
    .posts-shop .post:not(.post-agency) {
      width: 100%;
      padding-top: 24px;
      padding-bottom: 24px;
    }
    .posts-shop .type_list {
      display: none;
    }
    .posts-shop .post--img {
      width: 96px;
      padding-top: 68px;
    }
    .posts-shop .post:not(.post-agency) .ttl__add {
      position: absolute;
      left: 112px;
      top: 20px;
      width: calc(100% - 112px);
    }
    .posts-shop .post-agency {
      padding-top: 0;
      padding-bottom: 0;
    }
    .posts-shop .ttl__add .head4 .ttl {
      display: inline-block;
      font-size: 109%;
      line-height: 1.3em;
      letter-spacing: .05em;
    }
    .posts-shop .txt_area .head4 .tag {
      font-size: 70%;
    }
    .posts-shop .txt_area .address {
      display: block;
      line-height: 1.5em;
      font-size: 86%;
      letter-spacing: .05em;
      margin-top: 0;
    }
    .posts-shop .post-agency {
      width: calc(50% - 12px);
      padding-left: 8px;
      padding-right: 8px;
    }
    .posts-shop .post-agency .ttl__add {
      margin-bottom: 8px;
    }
    .posts-shop .post-agency .tel {
      font-size: 129%;
      letter-spacing: .05em;
    }
    .posts-shop .post-agency .tel svg {
      width: 15px;
      height: 15px;
    }
    .posts-shop .badge-staff {
      top: 2px;
      left: -24px;
      transform: scale(.75);
    }
    .posts-shop .post:first-child .badge-staff {
      top: -2px;
    }
    .pref_sect .head1 {
      position: relative;
      left: 50%;
      transform: translateX(-50%);
      width: calc(100vw - 80px);
    }
  }
  @media screen and (max-width: 560px) {
    .result .pdg_bloc-lg {
      padding-top: 16px;
      padding-left: 24px;
      padding-right: 24px;
    }
    .result .bg .wave {
      display: none;
    }
    .posts-shop .post:not(.post-agency) {
      padding-top: 24px;
      padding-bottom: 24px;
      padding-left: 16px;
      padding-right: 16px;
    }
    .posts-shop .post:first-child {
      padding-top: 24px;
    }
    .posts-shop .post:not(.post-agency) .ttl__add {
      left: 128px;
      top: 20px;
      width: calc(100% - 128px);
    }
    .posts-shop .ico_list--item {
      height: 38px;
      line-height: 1.3em;
    }
    .posts-shop .post-agency {
      width: 100%;
      padding-left: 16px;
      padding-right: 16px;
    }
    .pref_sect:not(:last-child) {
      margin-bottom: 32px;
    }
    .pref_sect .head1 {
      width: calc(100vw - 48px);
    }
    .pref_sect .head1 .ttl {
      font-size: 129%;
    }
    .pref_sect .head1 .fnt-en {
      transform: translateY(2px);
    }
    .shop_search-list .main_column {
      padding-left: 24px;
      padding-right: 24px;
    }
  }
  @media screen and (max-width: 560px) and (min-width: 414px) {
    .posts-shop .badge-staff {
      left: -8px;
    }
  }
  @media screen and (max-width: 413px) {
    .result .pdg_bloc-lg {
      padding-top: 0;
    }
    .posts-shop .post-agency,
    .posts-shop .post:not(.post-agency) {
      padding-left: 0px;
      padding-right: 0px;
    }
    .posts-shop .post:not(.post-agency) .ttl__add {
      left: 108px;
      width: calc(100% - 108px);
    }
  }
  @media screen and (max-width: 374px) {
    .result .pdg_bloc-lg {
      padding-left: 20px;
      padding-right: 20px;
    }
    .posts-shop .txt_area .head4 .tag {
      top: -12px;
    }
  }

/* news
*************************************************** */
  .post_type-news .page_head .img_src {
    background-position: center top 5%;
  }
  .news_side {
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .news_side .archive-pd {
    position: relative;
    margin-left: auto;
    z-index: 1;
    cursor: pointer;
  }
  .news_side .archive_label--ttl {
    opacity: .5;
  }
  .news_side .archive_label--btn {
    cursor: pointer;
    border: none;
    outline: none;
    appearance: none;
    padding-top: 0;
    padding-bottom: 0;
    padding-left: 0;
    padding-right: 40px;
    height: 30px;
    line-height: 30px;
    letter-spacing: .1em;
  }
  .news_side .archive_label--btn::before {
    content: '';
    position: absolute;
    top: 11px;
    right: 10px;
    display: block;
    width: 6px;
    height: 6px;
    border-bottom-width: 2px;
    border-bottom-style: solid;
    border-right-width: 1px;
    border-right-style: solid;
    transform: rotate(45deg);
    transition: .4s cubic-bezier(.07, .51, .12, 1);
    transform-origin: 50% 50%;
  }
  .news_side .active .archive_label--btn::before {
    top: 14px;
    transform: rotate(225deg);
  }
  .news_side .archive_list {
    z-index: 1;
    margin-top: 16px;
  }
  .news_side .archive_list--item {
    font-size: 92%;
  }
  .news_side .archive_list--item:not(:last-child) {
    margin-bottom: 12px;
  }
  .news_side .archive_list a {
    display: block;
    line-height: 1.6em;
    text-align: left;
    font-size: 109%;
  }
  .news_side .archive_list a .bubble {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 8px;
    margin-bottom: -3px;
  }
  .news_side .archive_list a:not(:hover) .bubble {
    transform: rotate(30deg);
    opacity: .75;
  }
  .news_side .archive_list a:not(:hover) .bubble span {
    width: 3px;
    height: 3px;
  }
  .news_side .archive_list a:not(:hover) .bubble span:nth-of-type(1),
  .news_side .archive_list a:not(:hover) .bubble span:nth-of-type(2) {
    top: calc(50% - 1px);
  }
  .news_side .archive_list a:not(:hover) .bubble span:nth-of-type(1) {
    left: calc(50% - 1px);
  }
  .news_side .archive_list a:not(:hover) .bubble span:nth-of-type(2),
  .news_side .archive_list a:not(:hover) .bubble span:nth-of-type(3) {
    right: calc(50% - 2px);
  }
  .news_side .archive_list a:not(:hover) .bubble span:nth-of-type(3) {
    bottom: calc(50% - 2px);
  }

  @media screen and (max-width: 1064px) {
    .news_side {
      padding-top: 16px;
      padding-bottom: 16px;
    }
  }
  @media screen and (max-width: 960px) {
    .news_side .archive_list a {
      padding-left: 0;
    }
  }

  /* --- news--archive --- */
  .news--archive {
    padding-top: 20px;
    padding-bottom: 20px;
    background-color: #111;
  }
  .news--archive li {
    margin-left: 8px;
    margin-right: 8px;
  }
  .news--archive a {
    color: #fff;
  }

  /* --- news_list --- */
  .news_list {
    padding-top: 40px;
    padding-bottom: 40px;
  }
  .news_list .post {
    padding-top: 24px;
    padding-bottom: 24px;
    padding-right: 48px;
    padding-left: 48px;
  }
  .news_list .post:not(:last-child) {
    margin-bottom: 16px;
  }
  .news_list .post.no_hov .post--link::before {
    content: none;
  }
  .news_list .post::before {
    opacity: 0;
    pointer-events: none;
  }
  .news_list .post::after {
    content: '';
    position: absolute;
    top: 8px;
    left: 0;
    width: 2px;
    height: calc(100% - 16px);
  }
  .news_list .post--date {
    padding-right: 32px;
    margin-right: 32px;
    line-height: 1em;
    width: 100px;
  }
  .news_list .post--date::before {
    content: '';
    position: absolute;
    top: -12px;
    right: 0;
    width: 1px;
    height: calc(100% + 24px);
  }
  .news_list .post--date .y_youbi {
    margin-bottom: 8px;
    padding-left: 2px;
    padding-right: 2px;
    font-size: 79%;
    letter-spacing: .1em;
  }
  .news_list .post--date .date-md {
    font-size: 186%;
    letter-spacing: .05em;
  }
  .news_list .post--cats {
    z-index: 1;
  }
  .news_list .post--cats a {
    font-size: 75%;
    border: 1px solid rgba(0,0,0,.25);
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 12px;
    padding-right: 12px;
    border-radius: 100px;
    opacity: .5;
  }
  .news_list .post--cats a:not(:last-child) {
    margin-right: 6px;
  }
  .news_list .post--ttl {
    font-weight: normal;
    padding-right: 24px;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
  }
  .news_list .post--ttl .arrow_wrap {
    position: absolute;
    top: 50%;
    right: 16px;
    width: 16px;
    height: 16px;
    transform: translateY(-50%);
    overflow: hidden;
  }
  .news_list .ico {
    margin-left: auto;
  }
  @media screen and (min-width: 961px) {
    .news_list .post:hover::before {
      opacity: .02;
      z-index: 1;
    }
    .news_list .post--cats a:hover {
      opacity: 1;
      background-color: rgba(0,0,0,.04);
      border-color: transparent;
    }
  }
  @media screen and (max-width: 960px) {
    .news_list {
      padding-top: 24px;
      padding-bottom: 24px;
    }
    .news_list .post {
      padding-left: 32px;
      padding-right: 32px;
    }
    .news_list .post:not(:last-child) {
      margin-bottom: 8px;
    }
  }
  @media screen and (max-width: 560px) {
    .news_list .post {
      padding-top: 16px;
      padding-bottom: 16px;
      padding-left: 16px;
      padding-right: 16px;
    }
    .news_list .post--date {
      width: 74px;
      padding-right: 12px;
      margin-right: 12px;
    }
    .news_list .post--date::before {
      top: -4px;
      height: calc(100% + 8px);
    }
    .news_list .post--date .date-md {
      font-size: 143%;
    }
    .news_list .post--date .y_youbi {
      font-size: 71%;
      letter-spacing: .05em;
    }
    .news_list .post--ttl {
      padding-right: 32px;
      line-height: 1.6em;
      font-size: 93%;
    }
  }

/* sale
*************************************************** */
  .posts-sale .post--img {
    padding-top: 142%;
    z-index: -1;
  }
  .posts-sale .post--ttl {
    line-height: 1.7em;
    margin-bottom: 6px;
  }
  .posts-sale .date_arrow {
    margin-top: auto;
  }
  .posts-sale .post .badge {
    position: absolute;
    top: -16px;
    right: -16px;
    width: 56px;
    height: 56px;
    text-align: center;
    line-height: 1.2em;
    border-radius: 100%;
    transform: rotate(13deg);
  }
  .post_type-sale .page_head .img_src {
    background-position: center top 90%;
  }
  .archive-sale .posts-sale .post {
    padding-top: 24px;
    padding-left: 40px;
    padding-right: 40px;
    padding-bottom: 32px;
  }
  .archive-sale .posts-sale .post .badge {
    top: -24px;
    right: -24px;
    width: 64px;
    height: 64px;
    font-size: 114%;
  }
  .archive-sale .posts-sale .post--img::before {
    content: '';
    position: absolute;
    top: calc(100% - 32px);
    left: -40px;
    z-index: -1;
    width: calc(100% + 80px);
    height: 100%;
  }
  .archive-sale .posts-sale .head4 .ttl {
    line-height: 1.6em;
  }
  @media screen and (min-width: 961px) {
    .posts-sale .post:hover .img_src {
      transform: translateY(-6px);
    }
  }
  @media screen and (max-width: 1064px) {
    .archive-sale .posts-sale .post,
    .archive-sale .posts-sale .post:nth-of-type(3n+3) {
      width: calc(50% - 20px);
      margin-right: 40px;
    }
    .archive-sale .posts-sale .post:nth-of-type(even) {
      margin-right: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .posts-sale .post,
    .archive-sale .posts-sale .post {
      width: 100%;
      max-width: 100%;
      height: 122px;
      margin-top: 0;
      padding-top: 16px;
      padding-bottom: 16px;
      padding-left: 92px;
      padding-right: 12px;
      border-bottom: 1px solid #fff;
    }
    .posts-sale .post .badge,
    .archive-sale .posts-sale .post .badge {
      top: -10px;
      right: -16px;
      transform: scale(.5) rotate(13deg);
      font-size: 135%;
    }
    .posts-sale .post--img {
      position: absolute;
      top: 0;
      left: 12px;
      z-index: 1;
      width: 72px;
      padding-top: 122px;
      margin-bottom: 0;
      margin-bottom: 0;
    }
    .posts-sale .post--img .img_src {
      width: calc(100% - 8px);
      height: calc(100% - 32px);
      top: 16px;
    }
    .posts-sale .head4 .ttl {
      font-size: 100%;
    }
    .archive-sale .posts-sale {
      margin-top: 0;
    }
    .archive-sale .posts-sale .post,
    .archive-sale .posts-sale .post:nth-of-type(3n+3) {
      width: 100%;
      margin-right: 0;
    }
    .archive-sale .posts-sale .post--img::before {
      display: none;
    }
  }
  @media screen and (max-width: 560px) {
    .posts-sale .post--ttl {
      line-height: 1.4em;
      letter-spacing: .05em;
      overflow: hidden;
      display: -webkit-box;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 3;
    }
  }


/* ##############################################################################

    SINGLE

############################################################################## */
  .pagenavi {
    margin-top: 56px;
  }
  .wp-pagenavi {
    display: flex;
    display: -webkit-flex;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    justify-content: center;
    -webkit-justify-content: center;
  }
  .wp-pagenavi a,
  .wp-pagenavi span {
    position: relative;
    display: inline-block;
    vertical-align: top;
    border: none;
    min-width: 36px;
    padding: 0;
    margin-left: 6px;
    margin-right: 6px;
    line-height: 36px;
    text-align: center;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: .4s all;
    border-radius: 100%;
  }
  .pn_list {
    padding-top: 48px;
    border-top-width: 2px;
    border-top-style: solid;
  }
  .pn_list--item {
    width: 45%;
  }
  .pn_list--item-next {
    margin-left: auto;
  }
  .pn_list--item a.poa {
    z-index: 1;
  }
  .pn_list--item .post-pn {
    height: 80px;
  }
  .pn_list--item img {
    width: 80px;
    margin-right: 12px;
  }
  .pn_list--item h3 {
    font-weight: normal;
    line-height: 1.6em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }
  @media  only screen and (min-width: 961px) {
    .wp-pagenavi a:hover {
      background-color: #0f3675;
      border-color: #0f3675;
      color: #fff;
    }
    .pn_list--item:hover {
      opacity: .6;
    }
  }
  @media screen and (max-width: 560px) {
    .pagenavi {
      margin-top: 32px;
    }
    .pn_list--item {
      width: 50%;
    }
    .pn_list--item .post-pn {
      display: none;
    }
  }
  @media screen and (max-width: 320px) {
    .wp-pagenavi a,
    .wp-pagenavi span {
      padding: 6px 12px;
    }
  }

/* select_shop
*************************************************** */
  .select_shop {
    border-style: solid;
    border-width: 2px;
    margin-top: 56px;
  }
  .select_shop h3 {
    padding-top: 28px;
    padding-bottom: 28px;
    padding-left: 24px;
    padding-right: 24px;
    width: 120px;
  }
  .select_shop h3 .ico {
    width: 56px;
    height: 56px;
    margin-bottom: 16px;
    margin-bottom: 4px;
    border-radius: 100%;
  }
  .select_shop .tag_list {
    padding-top: 20px;
    padding-bottom: 20px;
    padding-left: 24px;
    padding-right: 24px;
    width: calc(100% - 120px);
  }
  .select_shop .tag_list--item {
    display: block;
    margin-right: 6px;
    margin-top: 6px;
  }
  .select_shop .tag_list .tag {
    display: block;
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 10px;
    padding-right: 10px;
  }
  @media screen and (max-width: 560px) {
    .select_shop {
      margin-top: 32px;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .select_shop h3,
    .select_shop .tag_list {
      width: 100%;
    }
    .select_shop h3 {
      -webkit-flex-direction: row;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      padding-top: 8px;
      padding-bottom: 8px;
      padding-left: 16px;
      padding-right: 16px;
    }
    .select_shop h3 .ico {
      width: 32px;
      height: 32px;
      margin-bottom: 0;
      margin-right: 8px;
    }
    .select_shop h3 .ico svg {
      width: 24px;
      height: 24px;
    }
    .select_shop .tag_list {
      padding-top: 8px;
      padding-bottom: 8px;
      padding-left: 12px;
      padding-right: 12px;
    }
  }

/* ======================================================================================

    SINGLE - NEWS

====================================================================================== */
  @media screen and (max-width: 560px) {
    .single-news .main_column {
      padding-left: 24px;
      padding-right: 24px;
    }
    .single-news .post--date {
      margin-bottom: 16px;
    }
  }



/* ======================================================================================

    SINGLE - SHOP

====================================================================================== */

/* info
*************************************************** */

  /* --- ttl__type --- */
  .single-shop .type_list--item {
    width: 140px;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 100%;
  }
  .single-shop .type_list--item a {
    display: block;
    padding-top: 7px;
    padding-bottom: 8px;
  }

  /* --- type_bloc --- */
  .single-shop .info {
    width: 710px;
  }
  .single-shop .type_blocs {
    margin-bottom: 16px;
  }
  .single-shop .type_bloc {
    padding: 32px;
  }
  .single-shop .type_blocs.flx .type_bloc {
    width: calc(50% - 3px);
  }
  .single-shop .type_bloc::before,
  .single-shop .type_bloc::after {
    content: '';
    position: absolute;
    border-radius: 5px;
    z-index: -1;
  }
  .single-shop .type_bloc::before {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .1;
  }
  .single-shop .type_bloc::after {
    top: 8px;
    left: 8px;
    width: calc(100% - 16px);
    height: calc(100% - 16px);
  }
  .single-shop .type_bloc > .ttl_area .ttl {
    font-size: 157%;
  }
  .single-shop .type_bloc > .ttl_area .ico {
    margin-left: auto;
    margin-right: auto;
    width: 88px;
    height: 88px;
  }
  .single-shop .type_bloc > .ttl_area .ico::before,
  .single-shop .type_bloc > .ttl_area .ico::after {
    border-radius: 100%;
  }
  .single-shop .type_bloc > .ttl_area .ico::before {
    content: none;
  }
  .single-shop .type_bloc > .ttl_area .ico img {
    width: 48px;
    height: 48px;
  }
  .single-shop .info_list--item {
    border-radius: 3px;
  }
  .single-shop .info_list.flx .info_list--item {
    width: calc(50% - 8px);
  }
  .single-shop .info_list--item .time_area {
    padding-left: 24px;
    padding-right: 24px;
  }
  .single-shop .info_list--item .holiday {
    font-weight: 700;
    line-height: 1em;
  }
  .single-shop .info_list--item .holiday::before {
    border-radius: 100px;
  }
  .single-shop .info_list--item .fnt-en {
    line-height: 1em;
  }
  .single-shop .info_list--item .ttl_area {
    line-height: 1em;
  }
  .single-shop .info_list--item .ttl_area .ico {
    width: 30px;
    height: 30px;
    margin-bottom: 4px;
  }
  .single-shop .info_list--item .ttl_area .ico svg {
    display: block;
  }
  .single-shop .info_list--item .time_area .fnt-en {
    font-size: 300%;
  }
  .single-shop .info_list--item .time_area-same_day .ttl {
    margin-right: 8px;
  }
  .single-shop .info_list--item .time_area-same_day .ttl .cir_txt {
    display: inline-block;
    text-align: center;
    width: 32px;
    line-height: 32px;
    font-size: 114%;
  }
  .single-shop .info_list--item .time_area-same_day .ttl .cir_txt::before {
    border-radius: 100px;
    border-style: solid;
    border-width: 1px;
  }
  .single-shop .info_list--item .time_area-same_day .ttl .txt {
    display: inline-block;
    letter-spacing: .05em;
    line-height: 1em;
  }
  .single-shop .info_list--item .time_area-same_day .arrows {
    width: 12px;
    height: 18px;
  }
  .single-shop .info_list--item .time_area-same_day .arrows span {
    position: absolute;
    left: calc(50% - 4px);
    width: 70%;
    padding-top: 70%;
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-right-width: 1px;
    border-right-style: solid;
    transform: rotate(45deg);
  }
  .single-shop .info_list--item .time_area-same_day .arrows span:nth-of-type(1) {
    top: -5px;
  }
  .single-shop .info_list--item .time_area-same_day .arrows span:nth-of-type(2) {
    top: calc(50% - 8px);
  }
  .single-shop .info_list--item .time_area-same_day .arrows span:nth-of-type(3) {
    bottom: 2px;
  }
  .single-shop .type_blocs.type-one .attn_list,
  .single-shop .type_blocs.flx .attn_list,
  .single-shop .info_list.flx .attn_list {
    display: table;
    margin-left: auto;
    margin-right: auto;
    margin-top: 6px;
  }
  .single-shop .shop_info .btn_list .btn,
  .single-shop .seven_colors .btn_list .btn {
    margin-left: 12px;
    margin-right: 12px;
  }

  /* --- クリーニング or コインランドリー*/
  .single-shop .type_blocs.type-one .type_bloc > .ttl_area {
    margin-top: -56px;
    margin-bottom: 8px;
  }
  .single-shop .type_blocs.type-one .type_bloc > .ttl_area .ttl {
    position: relative;
    margin-top: -32px;
    z-index: 1;
  }
  .single-shop .type_blocs.type-one .info_list--item {
    padding-top: 24px;
    padding-bottom: 24px;
    min-height: 242px;
  }
  .single-shop .type_blocs.type-one .info_list--item .ttl_area {
    margin-bottom: 24px;
  }
  .single-shop .type_blocs.type-one .info_list--item .ttl_area .ttl {
    font-size: 108%;
  }
  .single-shop .type_blocs.type-one .info_list--item .time_area {
    text-align: center;
  }
  .single-shop .type_blocs.type-one .info_list--item .holiday {
    display: table;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
    padding-top: 7px;
    padding-bottom: 8px;
    font-size: 129%;
  }
  .single-shop .type_blocs.type-one .info_list--item .holiday br {
    display: none;
  }
  .single-shop .type_blocs.type-one .info_list--item .time_area-same_day .arrows {
    margin-top: 6px;
    margin-bottom: 6px;
    margin-left: auto;
    margin-right: auto;
  }
  .single-shop .type_blocs.type-one .info_list--item .time_area-same_day .fnt-en {
    width: 106px;
  }
  .single-shop .type_blocs.type-one:not(.flx) .info_list:not(.flx) .info_list--item .time_area .fnt-en {
    font-size: 357%;
  }

  /* --- クリーニング & コインランドリー*/
  .single-shop .type_blocs.type-two .type_bloc {
    padding: 24px;
  }
  .single-shop .type_blocs.type-two .type_bloc:not(:last-child) {
    margin-bottom: 6px;
  }
  .single-shop .type_blocs.type-two .type_bloc > .ttl_area {
    width: 158px;
    margin-right: 16px;
  }
  .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ttl {
    font-size: 114%;
    line-height: 1em;
  }
  .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ico {
    width: 64px;
    height: 64px;
    margin-bottom: 8px;
    padding-bottom: 8px;
  }
  .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ico::before {
    content: '';
  }
  .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ico::after {
    content: none;
  }
  .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ico img {
    width: 34px;
    height: 34px;
  }
  .single-shop .type_blocs.type-two .info_list,
  .single-shop .type_blocs.type-two .info_list--item .time_area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
  }
  .single-shop .type_blocs.type-two .info_list {
    display: block;
  }
  .single-shop .type_blocs.type-two .info_list--item .ttl_area {
    width: 100px;
  }
  .single-shop .type_blocs.type-two .info_list--item .ttl_area .ttl {
    letter-spacing: .05em;
  }
  .single-shop .type_blocs.type-two .info_list--item .time_area {
    border-left-width: 2px;
    border-left-style: solid;
  }
  .single-shop .type_blocs.type-two .info_list--item .holiday {
    width: 64px;
    height: 64px;
  }
  .single-shop .type_blocs.type-two .info_list--item .holiday-regular {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .single-shop .type_blocs.type-two .info_list--item .holiday-regular .youbi {
    font-size: 143%;
    margin-bottom: 8px;
    margin-top: 3px;
  }
  .single-shop .type_blocs.type-two .info_list--item .holiday-regular .txt {
    font-size: 86%;
  }
  .single-shop .type_blocs.type-two .info_list--item .holiday-nonstop {
    font-size: 129%;
    letter-spacing: 0em;
  }
  .single-shop .type_blocs.type-two .info_list--item .time_area .fnt-en {
    font-size: 257%;
  }
  .single-shop .type_blocs.type-two .info_list--item .time_area-same_day .ttl {
    padding-top: 7px;
    padding-bottom: 7px;
  }
  .single-shop .type_blocs.type-two .info_list--item .time_area-same_day .ttl .txt {
    display: block;
  }
  .single-shop .type_blocs.type-two .info_list--item .time_area-same_day .arrows {
    transform: rotate(-90deg);
  }
  .single-shop .type_blocs.type-two.same_day .info_list--item {
    padding-top: 12px;
    padding-bottom: 12px;
  }
  .single-shop .type_blocs.type-two.same_day .info_list--item:not(:last-child) {
    margin-bottom: 8px;
  }
  .single-shop .type_blocs.type-two.same_day .info_list--item .time_area-same_day .ttl .cir_txt {
    margin-bottom: 4px;
  }

  /* --- address__parking --- */
  .address__parking {
    padding-top: 12px;
    padding-bottom: 12px;
    height: 92px;
  }
  .address__parking > * {
    padding-left: 24px;
    padding-right: 24px;
  }
  .address__parking.flx > * {
    width: 50%;
  }
  .address__parking.flx > *:not(:last-child) {
    border-right-width: 2px;
    border-right-style: solid;
  }
  .address__parking .ttl .ico {
    display: inline-block;
    margin-right: 2px;
    transform: translateY(1px);
  }
  .address__parking p {
    line-height: 1.5em;
  }

  /* --- img_area --- */
  .single-shop .shop_info .img_area {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1;
    margin-left: 48px;
  }
  .single-shop .shop_info .img_area .main {
    padding-top: 24px;
    padding-bottom: 24px;
    padding-left: 32px;
    padding-right: 32px;
  }
  .single-shop .shop_info .img_area .head4 .bubble {
    display: inline-block;
    width: 16px;
    height: 16px;
    margin-right: 8px;
    transform: translateY(1px);
  }
  .single-shop .shop_info .img_area .head4 .ttl {
    line-height: 1em;
  }
  .single-shop .shop_info .img_area .img_src {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
  }
  .single-shop .main_img {
    width: 100%;
    padding-top: 296px;
  }
  .single-shop .thumbs {
    padding-top: 16px;
    padding-bottom: 16px;
    margin-top: auto;
  }
  .single-shop .thumbs::before {
    border-radius: 0 0 5px 5px;
  }
  .single-shop .thumb_list {
    margin-top: auto;
    width: 416px;
    margin-left: auto;
    margin-right: auto;
  }
  .single-shop .thumb_list .img_list .img {
    width: calc(25% - 8px);
    padding-top: 17.308%;
    margin-left: 4px;
    margin-right: 4px;
  }
  .single-shop .thumb_list .slick-list {
    overflow: hidden;
  }
  .single-shop .thumb_list .slick-arrow {
    position: absolute;
    top: calc(50% - 12px);
    background-color: #fff;
    border-radius: 100px;
  }
  .single-shop .thumb_list .slick-arrow .ico::before {
    width: 6px;
    height: 6px;
    top: calc(50% - 3px);
    left: calc(50% - 4px);
    border-top-width: 1px;
    border-right-width: 1px;
    opacity: .5;
  }
  .single-shop .thumb_list .slick-prev {
    right: calc(100% + 8px);
  }
  .single-shop .thumb_list .slick-next {
    left: calc(100% + 8px);
  }
  @media screen and (min-width: 961px) {
    .single-shop .thumb_list .slick-arrow:hover .ico::before {
      opacity: 1;
    }
  }
  @media screen and (min-width: 1281px) {
    .single-shop .main_img.no_img {
      padding-top: 374px;
    }
  }
  @media screen and (max-width: 1440px) {
    .single-shop .thumb_list {
      width: 352px;
    }
    .single-shop .thumb_list .img_list .img {
      padding-top: 20.455%;
    }
  }
  @media screen and (max-width: 1340px) {
    .single-shop .thumb_list {
      width: 320px;
    }
    .single-shop .thumb_list .img_list .img {
      padding-top: 22.5%;
    }
  }
  @media screen and (max-width: 1280px) {
    .single-shop .ttl__type,
    .single-shop .info__imgarea {
      max-width: 710px;
      margin-left: auto;
      margin-right: auto;
    }
    .single-shop .info {
      width: 100%;
    }
    .single-shop .info__imgarea {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .single-shop .main_img {
      padding-top: 484px;
    }
    .single-shop .shop_info .img_area {
      margin-left: 0;
      margin-top: 40px;
    }
    .single-shop .shop_info .img_area.lgpc-show {
      display: none;
    }
    .single-shop .thumb_list {
      width: 416px;
    }
    .single-shop .thumb_list .img_list .img {
      padding-top: 17.308%;
    }
    .address__parking {
      height: auto;
    }
  }
  @media screen and (max-width: 960px) {
    .single-shop .type_list--item {
      width: auto;
      font-size: 78%;
    }
    .single-shop .type_list--item a {
      padding-top: 5px;
      padding-bottom: 6px;
      padding-left: 10px;
      padding-right: 10px;
    }
  }
  @media screen and (max-width: 768px) {
    .single-shop .main_img {
      padding-top: 58vw;
    }
    .single-shop .type_bloc > .ttl_area {
      margin-bottom: 16px;
    }
    .single-shop .type_bloc > .ttl_area .ttl,
    .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ttl {
      font-size: 133%;
      line-height: 1.8em;
    }
    .single-shop .type_bloc > .ttl_area .ico {
      width: 68px;
      height: 68px;
      margin-bottom: 8px;
      padding-bottom: 8px;
    }
    .single-shop .type_bloc > .ttl_area .ico img {
      width: 32px;
      height: 32px;
    }
    .single-shop .info_list--item .ttl_area .ico {
      margin-bottom: 0;
      margin-right: 6px;
      margin-left: -14px;
    }
    .single-shop .info_list--item .ttl_area .ico,
    .single-shop .info_list--item .ttl_area .ico svg {
      width: 22px;
      height: 22px;
    }
    .single-shop .info_list--item .time_area {
      text-align: center;
    }
    .single-shop .info_list--item .time_area-same_day .ttl .cir_txt {
      font-size: 100%;
      width: 28px;
      line-height: 28px;
    }
    .single-shop .type_blocs .info_list--item .attn_list {
      margin-top: 6px;
    }
    .single-shop .type_blocs.flx .type_bloc {
      width: 100%;
    }
    .single-shop .type_blocs.type-one .type_bloc {
      padding: 24px;
    }
    .single-shop .type_blocs.type-one:not(.flx) .info_list:not(.flx) .info_list--item .time_area .fnt-en {
      font-size: 229%;
    }
    .single-shop .type_blocs.type-one .info_list--item {
      min-height: auto;
      padding-top: 18px;
    }
    .single-shop .type_blocs.type-one .info_list--item .ttl_area,
    .single-shop .type_blocs.type-two .info_list--item .ttl_area {
      margin-bottom: 8px;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
    }
    .single-shop .type_blocs.type-one .type_bloc > .ttl_area {
      margin-top: -40px;
    }
    .single-shop .type_blocs.type-two .type_bloc > .ttl_area {
      margin-top: -32px;
    }
    .single-shop .type_blocs.type-one .info_list--item .time_area .fnt-en,
    .single-shop .type_blocs.type-two .info_list--item .time_area .fnt-en {
      font-size: 200%;
    }
    .single-shop .type_blocs.type-one .info_list--item .time_area-same_day .fnt-en {
      width: 80px;
    }
    .single-shop .type_blocs.type-one .info_list--item .holiday {
      font-size: 109%;
      margin-top: 10px;
    }
    .single-shop .type_blocs.type-two .info_list--item .holiday-regular .youbi {
      font-size: 86%;
      margin-bottom: 0;
      margin-top: 0;
      margin-right: -5px;
    }
    .single-shop .type_blocs.type-two .type_bloc {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .single-shop .type_blocs.flx .type_bloc:not(:last-child),
    .single-shop .type_blocs.type-two .type_bloc:not(:last-child) {
      margin-bottom: 20px;
    }
    .single-shop .type_blocs.type-two .type_bloc > .ttl_area {
      margin-right: 0;
    }
    .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ttl {
      position: relative;
      z-index: 1;
      margin-top: -32px;
    }
    .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ico {
      width: 68px;
      height: 68px;
    }
    .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ico::before {
      content: none;
    }
    .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ico::after {
      content: '';
    }
    .single-shop .type_blocs.type-two .info_list,
    .single-shop .type_blocs.type-two .info_list--item .time_area {
      -webkit-box-flex: 1;
      -ms-flex: 1 1 100%;
      flex: 1;
    }
    .single-shop .type_blocs.type-two .info_list {
      width: 100%;
    }
    .single-shop .type_blocs.type-two .info_list--item,
    .single-shop .type_blocs.type-two .info_list--item .time_area {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .single-shop .type_blocs.type-two .type_bloc-cl .info_list {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      width: 100%;
    }
    .single-shop .type_blocs.type-two.same_day .info_list--item:not(:last-child) {
      margin-bottom: 0;
    }
    .single-shop .type_blocs.type-two .type_bloc-cl .info_list--item {
      width: calc(50% - 8px);
    }
    .single-shop .type_blocs.type-two .info_list--item .ttl_area {
      width: 100%;
    }
    .single-shop .type_blocs.type-two .info_list--item .time_area {
      width: 100%;
      border: none;
      -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
      justify-content: flex-start;
    }
    .single-shop .type_blocs.type-two .info_list--item .holiday {
      display: table;
      width: auto;
      height: auto;
      margin-top: 10px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 7px;
      padding-bottom: 8px;
      font-size: 109%;
    }
    .single-shop .type_blocs.type-two .info_list--item .holiday-nonstop br {
      display: none;
    }
    .single-shop .type_blocs.type-two.same_day .info_list--item .time_area-same_day .ttl .cir_txt {
      margin-bottom: 0;
    }
    .single-shop .type_blocs.type-two .info_list--item .time_area-same_day .ttl .txt {
      display: inline-block;
    }
    .single-shop .type_blocs.type-two .info_list--item .time_area-same_day .arrows {
      transform: rotate(0deg);
    }
  }
  @media screen and (max-width: 560px) {
    .single-shop .shop_info .head1 .img {
      margin-right: 8px;
    }
    .single-shop .shop_info .head1 .img img {
      display: block;
      width: 28px;
      height: 28px;
    }
    .single-shop .type_list {
      position: absolute;
      top: 24px;
      right: 16px;
    }
    .single-shop .shop_info .img_area .main {
      padding-left: 24px;
      padding-right: 24px;
    }
    .single-shop .shop_info .img_area .main .head4 {
      margin-bottom: 12px;
    }
    .single-shop .thumb_list {
      width: 310px;
    }
    .single-shop .type_bloc > .ttl_area {
      margin-bottom: 8px;
    }
    .single-shop .type_bloc > .ttl_area .ttl,
    .single-shop .type_blocs.type-two .type_bloc > .ttl_area .ttl {
      font-size: 114%;
    }
    .single-shop .type_blocs.type-two .type_bloc-cl .info_list {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .single-shop .type_blocs.type-one .type_bloc-cl .info_list--item,
    .single-shop .type_blocs.type-two .type_bloc-cl .info_list--item {
      width: 100%;
    }
    .single-shop .type_blocs.type-one.same_day .info_list--item:not(:last-child),
    .single-shop .type_blocs.type-two.same_day .info_list--item:not(:last-child) {
      margin-bottom: 8px;
    }
  }
  @media screen and (max-width: 413px) {
    .single-shop .thumbs {
      padding-top: 12px;
      padding-bottom: 12px;
    }
    .single-shop .thumb_list {
      width: 270px;
    }
  }
  @media screen and (max-width: 374px) {
    .single-shop .shop_info .img_area .main {
      padding: 18px;
    }
    .single-shop .thumb_list {
      width: 220px;
    }
  }

/* cleaning & coin_laundry
*************************************************** */
  .single-shop .service_bloc {
    width: 596px;
  }
  .single-shop .service_bloc .ttl__btn {
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 16px;
    padding-right: 16px;
  }
  .single-shop .service_bloc .ttl .ico {
    margin-right: 6px;
  }
  .single-shop .service_bloc .ttl img {
    display: block;
  }
  .single-shop .service_bloc .service_icos {
    margin-top: -4px;
    padding: 12px;
  }
  .single-shop .service_bloc .service_icos--item {
    margin-top: 4px;
  }
  .single-shop .service_bloc .service_icos--item:not(:last-child) {
    margin-right: 4px;
  }
  .single-shop .service_bloc .service_icos--item:nth-of-type(8n+8) {
    margin-right: 0;
  }
  .single-shop .detail_area::before {
    top: -16px;
    left: -16px;
    width: calc(100% + 32px);
    height: calc(100% + 32px);
  }
  .single-shop .detail_area.flx .detail_list,
  .single-shop .detail_list.flx .detail_list--item {
    width: calc(50% - 20px);
  }
  .single-shop .detail_list--item {
    padding-top: 24px;
    padding-bottom: 24px;
    padding-left: 16px;
    padding-right: 16px;
  }
  .single-shop .detail_list--item:first-child {
    padding-top: 0;
  }
  .single-shop .detail_list--item:last-child {
    padding-bottom: 0;
  }
  .single-shop .detail_list--item:not(:last-child)::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
  }
  .single-shop .detail_list--item .tag {
    margin-left: 8px;
    padding-left: 12px;
    padding-right: 12px;
  }
  .single-shop .detail_list--item .attn_list li {
    opacity: 1;
    font-size: 86%;
  }
  .single-shop .payment_list--item {
    width: 88px;
    padding-top: 8px;
    padding-bottom: 8px;
  }
  .single-shop .payment_list--item:not(:last-child) {
    margin-right: 8px;
  }
  .single-shop .payment_list--item svg {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 5px;
  }
  .single-shop .payment_list--item p {
    font-size: 71%;
    line-height: 1em;
  }
  .single-shop .credit_icos,
  .single-shop .em_icos {
    margin-top: -8px;
  }
  .single-shop .credit_icos--item,
  .single-shop .em_icos--item {
    margin-right: 8px;
    margin-top: 8px;
  }
  .single-shop .credit_icos img,
  .single-shop .em_icos img {
    height: 26px;
    width: auto;
  }
  .single-shop .cleaning + .coin_laundry .bg .wave:nth-of-type(2),
  .single-shop .cleaning + .coin_laundry .bg .wave:nth-of-type(3),
  .single-shop .coin_laundry + .seven_colors .bg .wave:nth-of-type(2),
  .single-shop .coin_laundry + .seven_colors .bg .wave:nth-of-type(3) {
    bottom: auto;
    top: -16px;
  }
  .single-shop .cleaning + .coin_laundry .bg .wave:nth-of-type(3),
  .single-shop .coin_laundry + .seven_colors .bg .wave:nth-of-type(3) {
    top: 5px;
  }
  @media screen and (min-width: 961px) {
    .single-shop .detail_list.flx .detail_list--item:nth-of-type(2) {
      padding-top: 0;
    }
  }
  @media screen and (max-width: 1064px) {
    .single-shop .ttl__service {
      -webkit-align-items: flex-start;
      -ms-flex-align: start;
      align-items: flex-start;
      margin-bottom: 56px;
    }
    .single-shop .ttl__service .sect_ttl {
      margin-bottom: 32px;
    }
    .single-shop .service_bloc {
      width: 100%;
    }
    .single-shop .service_bloc .service_icos--item:nth-of-type(8n+8) {
      margin-right: 4px;
    }
    .single-shop .detail_area.flx .detail_list,
    .single-shop .detail_list.flx .detail_list--item {
      width: 100%;
    }
    .single-shop .detail_list--item {
      padding-top: 16px;
      padding-bottom: 16px;
      padding-left: 8px;
      padding-right: 8px;
    }
    .single-shop .detail_list--item:first-child {
      padding-top: 0;
    }
    .single-shop .detail_list:not(:last-child) .detail_list--item:last-child::before {
      content: '';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 1px;
    }
    .single-shop .detail_list:nth-of-type(2) .detail_list--item:first-child {
      padding-top: 16px;
    }
    .single-shop .detail_list--item:last-child {
      padding-bottom: 16px;
    }
  }
  @media screen and (max-width: 560px) {
    .single-shop .detail_area {
      width: calc(100% - 28px);
      margin-left: auto;
      margin-right: auto;
    }
    .single-shop .detail_area::before {
      top: -12px;
      left: -12px;
      width: calc(100% + 24px);
      height: calc(100% + 24px);
    }
    .single-shop .ttl__service {
      margin-bottom: 28px;
    }
    .single-shop .ttl__service .sect_ttl {
      margin-bottom: 24px;
    }
    .single-shop .service_bloc .ttl__btn .btn-txt {
      font-size: 86%;
    }
    .single-shop .service_bloc .service_icos--item {
      margin-left: 2px;
      margin-right: 2px;
      width: calc(100% / 6 - 4px);
    }
    .single-shop .service_bloc .service_icos--item:not(:last-child) {
      margin-right: 2px;
    }
    .single-shop .service_bloc .service_icos--item:nth-of-type(8m+8) {
      margin-right: 2px;
    }
    .single-shop .service_bloc .service_icos--item img {
      width: 100%;
    }
    .single-shop .detail_area {
      padding: 16px;
    }
    .single-shop .detail_list--item .ttl {
      font-size: 93%;
      line-height: 1.6em;
    }
    .single-shop .payment_list {
      margin-top: -8px;
    }
    .single-shop .payment_list--item {
      width: calc(50% - 8px);
      margin-top: 8px;
    }
    .single-shop .credit .fnt-lg,
    .single-shop .em .fnt-lg {
      font-size: 86%;
    }
  }
  @media screen and (max-width: 413px) {
    .single-shop .service_bloc .service_icos--item {
      width: calc(100% / 5 - 4px);
    }
  }

/* seven_colors
*************************************************** */
  .single-shop .sale .sect_ttl .subttl {
    line-height: 1.6em;
  }
  .single-shop .sale .posts-sale  {
    margin-bottom: 0;
  }
  .single-shop .seven_colors .detail_list.flx .detail_list--item {
    width: calc(100% / 3);
    padding-top: 24px;
    padding-bottom: 24px;
  }
  .single-shop .seven_colors .detail_list--item:not(:last-child)::before {
    width: 1px;
    height: 100%;
    left: 100%;
  }
  .single-shop .seven_colors .detail_list--item .txt {
    font-size: 200%;
    line-height: 1em;
  }
  .single-shop .seven_colors .detail_list--item .txt.fnt-en {
    font-size: 233%;
  }
  @media screen and (max-width: 960px) {
    .single-shop .seven_colors .detail_list.flx .detail_list--item {
      width: 100%;
    }
    .single-shop .seven_colors .detail_list--item:not(:last-child)::before {
      width: 100%;
      height: 1px;
      bottom: 0;
      left: 0;
    }
  }

/* auto_desc
*************************************************** */
  .auto_desc {
    margin-left: auto;
    margin-right: auto;
    margin-top: 48px;
  }
  .auto_desc::before {
    border-width: 5px;
    border-style: solid;
    z-index: 1;
    opacity: 0;
  }
  .auto_desc .wave_img {
    width: 428px;
    height: 240px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .auto_desc .wave_img .img_src {
    background-size: cover;
    background-position: center;
  }
  .auto_desc .mov_mark {
    position: absolute;
    top: calc(50% - 40px);
    left: calc(50% - 40px);
    width: 80px;
    height: 80px;
  }
  .auto_desc .mov_mark::before {
    border-radius: 100%;
  }
  .auto_desc .mov_mark::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 52%;
    border-style: solid;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left-width: 15px;
    border-right-width: 0;
    transform: translate(-50%,-50%);
  }
  .auto_desc .mov_mark .pulse_cir,
  .auto_desc .mov_mark .pulse_cir::before {
    border-radius: 100%;
  }
  .auto_desc .mov_mark .pulse_cir {
    opacity: 0;
    transform: scale(.5);
  }
  .auto_desc .mov_mark .pulse_cir::before {
    animation-duration: 1.5s;
    animation-timing-function: ease-out;
    animation-iteration-count: infinite;
    animation-fill-mode: forwards;
    animation-name: load_palse;
  }
  .auto_desc a::before {
    z-index: 1;
  }
  .auto_desc .txt_area {
    padding-left: 32px;
    padding-right: 40px;
    border-radius: 0 5px 5px 0;
  }
  .auto_desc .auto_flow--item:not(:last-child) {
    margin-bottom: 6px;
  }
  .auto_desc .auto_flow--item .num {
    width: 24px;
    height: 24px;
    line-height: 24px;
    text-align: center;
    border-radius: 100%;
    margin-right: 8px;
  }
  .auto_desc .attn_list li {
    opacity: 1;
  }
  @media screen and (min-width: 961px) {
    .auto_desc:hover::before {
      opacity: .4;
    }
    .auto_desc:hover .mov_mark .pulse_cir {
      opacity: 1;
    }
  }

/* gm
*************************************************** */
  .single-shop .gm {
    width: calc(100% + 208px);
    margin-left: -104px;
    padding-top: 520px;
  }
  .single-shop .gm::before {
    border-width: 10px;
    border-style: solid;
    z-index: 1;
    pointer-events: none;
  }
  .single-shop .gm iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  @media screen and (max-width: 1680px) {
    .single-shop .gm {
      width: calc(100% + 80px);
      margin-left: -40px;
      padding-top: 480px;
    }
  }
  @media screen and (max-width: 1280px) {
    .single-shop .gm {
      width: calc(100% + 48px);
      margin-left: -24px;
      padding-top: 400px;
    }
  }
  @media screen and (max-width: 560px) {
    .single-shop .gm {
      width: 100%;
      margin-left: 0;
    }
  }

/* news & calendar
*************************************************** */
  .single-shop .news__calendar.flx > * {
    width: calc(50% - 20px);
  }
  .single-shop .news__calendar .head1 .ico {
    width: 40px;
    height: 40px;
    margin-right: 12px;
  }
  .single-shop .news__calendar .head1 .ico svg {
    display: block;
  }

  /* --- news --- */
  .single-shop .news_list {
    padding-top: 24px;
    padding-bottom: 24px;
  }
  .single-shop .news__calendar.flx  .news_list {
    min-height: 488px;
  }
  .single-shop .news_list .post:not(:last-child) {
    margin-bottom: 0;
  }
  .single-shop .news_list .post::after {
    top: 100%;
    left: 40px;
    width: calc(100% - 80px);
    height: 1px;
    opacity: .1;
  }
  .single-shop .news_list .post--date {
    padding-right: 0;
    width: 66px;
  }
  .single-shop .news_list .post--date::before {
    content: none;
  }

  /* --- calendar --- */
  .calendar_bloc .bc_date span::after {
    display: inline-block;
  }
  .calendar_bloc .bc_date .date_y::after {
    content: "\5E74";
  }
  .calendar_bloc .bc_date .date_m::after {
    content: "\6708";
  }
  .calendar_area {
    padding: 32px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 5px;
  }
  .calendar_bloc {
    padding-top: 19px;
    padding-bottom: 19px;
    padding-left: 24px;
    padding-right: 24px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .calendar_bloc:not(:last-child) {
    margin-bottom: 12px;
  }
  .calendar_bloc .bc_date {
    position: relative;
    z-index: 0;
    width: 160px;
    margin-right: 16px;
    font-size: 160%;
  }
  .calendar_bloc .bc_date span {
    display: block;
    white-space: nowrap;
  }
  .calendar_bloc .bc_date span::before {
    font-family: 'Noto Sans JP', sans-serif;
  }
  .calendar_bloc .bc_date .date_y::after {
    display: none;
  }
  .calendar_bloc .bc_date .date_m {
    font-size: 231%;
    line-height: 1em;
  }
  .calendar_bloc .bc_date .date_m::after {
    font-size: 50%;
    transform: translateY(-1px);
    margin-left: 2px;
  }
  .calendar th {
    height: 16px;
    opacity: .5;
  }
  .calendar .calendar-cell-holiday .num {
    position: relative;
    z-index: 0;
    color: #fff;
  }
  .calendar .calendar-cell-holiday .num::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 24px;
    height: 24px;
    border-radius: 100%;
    z-index: -1;
  }
  .calendar .holiday_desc .cir {
    width: 16px;
    height: 16px;
    border-radius: 100%;
    margin-right: 6px;
  }

  @media screen and (max-width: 1064px) {
    .single-shop .news__calendar .head1 .ico {
      width: 32px;
      height: 32px;
    }
    .single-shop .news__calendar .head1 .ico svg {
      width: 100%;
      height: 100%;
    }
    .single-shop .news__calendar.flx > * {
      width: 100%;
    }
    .single-shop .news__calendar.flx > *:not(:last-child) {
      margin-bottom: 56px;
    }
    .single-shop .news__calendar.flx .news_list {
      min-height: auto;
    }
    .single-shop .news_list .post::after {
      left: 16px;
      width: calc(100% - 32px);
    }
    .single-shop .news_list .post:first-child {
      padding-top: 0;
    }
  }
  @media screen and (max-width: 768px) {
    .single-shop .news__calendar .head1 .ico {
      width: 28px;
      height: 28px;
      margin-right: 10px;
    }
  }
  @media screen and (max-width: 560px) {
    .calendar_area {
      padding: 16px;
    }
    .calendar_bloc .bc_date {
      width: 88px;
      margin-right: 12px;
      font-size: 116%;
    }
    .calendar .calendar {
      font-size: 86%;
    }
    .calendar .calendar-cell-holiday .num {
      letter-spacing: 0em;
    }
    .calendar .calendar-cell-holiday .num::before {
      width: 20px;
      height: 20px;
    }
  }


/* sale
*************************************************** */
  .single-sale .sale--info .post--img {
    display: table;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: -40px;
    width: auto;
    padding-top: 0;
    z-index: 1;
    max-width: 440px;
  }
  .single-sale .sale--info .post--img::before {
    top: -16px;
    left: -16px;
    width: calc(100% + 32px);
    height: calc(100% + 32px);
    border-width: 16px;
    border-style: solid;
  }
  .single-sale .sale--info .pdg_bloc-lg {
    padding-top: 104px;
  }
  @media screen and (max-width: 1280px) {
    .single-sale .sale .sect_ttl br.custom-br {
      display: none;
    }
  }
  @media screen and (max-width: 960px) {
    .single-sale .sale--info .post--img {
      max-width: 40%;
    }
  }
  @media screen and (max-width: 560px) {
    .single-sale .sale--info .post--img {
      max-width: 60%;
      margin-bottom: -16px;
    }
    .single-sale .sale--info .post--img::before {
      top: -12px;
      left: -12px;
      width: calc(100% + 24px);
      height: calc(100% + 24px);
    }
    .single-sale .sale--info .pdg_bloc-lg {
      padding-top: 56px;
      padding-left: 24px;
      padding-right: 24px;
      padding-bottom: 24px;
    }
    .single-sale .sale--info .post--date {
      margin-bottom: 16px;
    }
  }


/* ##############################################################################

    CONTACT FORM

############################################################################## */

/* form_flow
*************************************************** */
  .form_flow_list {
    order: 1;
    margin-bottom: 56px;
    margin-left: auto;
    margin-right: auto;
  }
  .form_flow_list--item {
    width: 33.333%;
    font-size: 125%;
    padding-bottom: 20px;
  }
  .form_flow_list--item:last-child {
    z-index: -1;
  }
  .form_flow_list--item:not(:last-child) {
    border-right: none;
  }
  .form_flow_list--item::before,
  .form_flow_list--item::after {
    content: '';
    position: absolute;
  }
  .form_flow_list--item::before {
    left: 50%;
    bottom: -5px;
    width: 11px;
    height: 11px;
    border-radius: 100%;
    transform: translateX(-50%);
    z-index: 0;
  }
  .form_flow_list--item::after {
    bottom: -1px;
    left: 50%;
    z-index: -1;
    width: 100%;
    height: 3px;
  }
  .form_flow_list--item:last-of-type::after {
    content: none;
  }
  .mw_wp_form:not(.mw_wp_form_confirm):not(.mw_wp_form_complete) .form_flow_list .form_flow_list--item-input::before,
  .mw_wp_form_confirm .form_flow_list .form_flow_list--item-confirm::before,
  .mw_wp_form_complete .form_flow_list .form_flow_list--item-complete::before {
    transform: translateX(-50%) scale(1.4);
  }
  @media screen and (max-width: 960px) {
    .form_flow_list {
      width: 100%;
    }
    .form_flow_list--item {
      font-size: 100%;
      letter-spacing: 0em;
      line-height: 1.6em;
    }
  }
  @media screen and (max-width: 560px) {
    .form_flow_list {
      margin-bottom: 20px;
    }
    .form_flow_list--item::before {
      width: 9px;
      height: 9px;
      bottom: -4px;
    }
  }
  @media screen and (max-width: 320px) {
    .form_flow_list--item {
      font-size: 90%;
    }
  }

/* COMMON
*************************************************** */
  #cf_form {
    background-color: #fff;
    padding-top: 72px;
    padding-bottom: 72px;
    padding-left: 80px;
    padding-right: 80px;
  }
  #cf_form::before {
    border-width: 16px;
    border-style: solid;
    border-radius: 10px;
  }
  .form_list { width:100%; }
  .form_list--item {
    border-bottom: 1px solid rgba(15,54,117,.05);
    padding-top: 24px;
    padding-bottom: 24px;
  }
  .form_list--item .ttl {
    white-space: nowrap;
    text-align: left;
  }
  .contact:not(.contact-shop) .form_list--item-shop {
    display: none;
  }
  .form_list--item-shop .cont {
    opacity: .5;
    pointer-events: none;
  }
  .form_list--item .cont input[type="text"],
  .form_list--item .cont input[type="email"],
  .form_list--item .cont input[type="tel"],
  .form_list--item .cont input[type="date"],
  .form_list--item .cont input[type="password"],
  .form_list--item .cont textarea {
    width: 100%;
    vertical-align: bottom;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
  }
  .form_list--item .cont input[type="text"],
  .form_list--item .cont input[type="email"],
  .form_list--item .cont input[type="tel"],
  .form_list--item .cont input[type="date"],
  .form_list--item .cont input[type="password"] {
    height: 44px;
    line-height: 44px;
  }
  .form_list--item .cont input[type="text"],
  .form_list--item .cont input[type="email"],
  .form_list--item .cont input[type="tel"],
  .form_list--item .cont input[type="date"],
  .form_list--item .cont input[type="password"],
  .form_list--item .cont select,
  .form_list--item .cont textarea {
    margin: 0;
    padding-left: 16px;
    padding-right: 16px;
    border: none;
    font: inherit;
    font-size: 100%;
  }
  .form_list--item .cont textarea { height: 100px; }
  .form_list--item .cont select { height: 40px; }
  .form_list--item .cont ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .form_list--item .cont input:hover { opacity: .7; }
  .form_list--item .cont textarea:hover { opacity: .7; }
  .form_list--item .cont input:focus { outline: none; }

/* radio & checkbox
*************************************************** */
  .form_list--item .cont .cf_rc input[type="radio"],
  .form_list--item .cont .cf_rc input[type="checkbox"] { display: none !important; }
  .form_list--item .cont .cf_rc .mwform-radio-field,
  .form_list--item .cont .cf_rc .mwform-checkbox-field {
    margin-left: 0;
    display: block;
  }
  .form_list--item .cont .cf_rc .mwform-radio-field:not(:last-child),
  .form_list--item .cont .cf_rc .mwform-checkbox-field:not(:last-child) {
    margin-bottom: 6px;
  }
  .form_list--item .cont .cf_rc .mwform-radio-field-text,
  .form_list--item .cont .cf_rc .mwform-checkbox-field-text {
    display: inline-block;
    padding-left: 24px;
    position: relative;
    cursor: pointer;
    white-space: nowrap;
  }

  .form_list--item .cont .cf_rc .mwform-radio-field-text:hover { opacity: .7; }
  .form_list--item .cont .cf_rc .mwform-radio-field-text::before,
  .form_list--item .cont .cf_rc .mwform-checkbox-field-text::before {
    content: "";
    position: absolute;
    top: 7px;
    left: 0;
  }
  .form_list--item .cont .acceptance input[type="checkbox"] {
    position: relative;
    margin-right: 8px;
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background-color: transparent;
  }
  .form_list--item .cont .cf_rc .mwform-radio-field-text::before,
  .form_list--item .cont .cf_rc .mwform-checkbox-field-text::before,
  .form_list--item .cont .acceptance input[type="checkbox"] {
    width: 15px;
    height: 15px;
    border: 1px solid #0f3675;
  }
  .form_list--item .cont .cf_rc input[type="radio"] + .mwform-radio-field-text::before { border-radius: 10px; }
  .form_list--item .cont .cf_rc input[type="radio"]:checked + .mwform-radio-field-text,
  .form_list--item .cont .cf_rc input[type="checkbox"]:checked + .mwform-checkbox-field-text {
    color: rgb(201,44,51);
    font-weight: bold;
  }
  .form_list--item .cont .cf_rc input[type="radio"]:checked + .mwform-radio-field-text::before,
  .form_list--item .cont .cf_rc input[type="checkbox"]:checked + .mwform-checkbox-field-text::before,
  .form_list--item .cont .acceptance input[type="checkbox"]:checked {
    border-color: rgb(201,44,51);
  }
  .form_list--item .cont .cf_rc input[type="radio"]:checked + .mwform-radio-field-text::after,
  .form_list--item .cont .cf_rc input[type="checkbox"]:checked + .mwform-checkbox-field-text::after,
  .form_list--item .cont .acceptance input[type="checkbox"]:checked::after {
    content: "";
    position: absolute;
    z-index: 10;
    display: block;
  }
  .form_list--item .cont .cf_rc input[type="radio"]:checked + .mwform-radio-field-text::after {
    top: 12px;
    left: 5px;
    width: 5px;
    height: 5px;
    background-color: rgb(201,44,51);
    border-radius: 100%;
  }
  .form_list--item .cont .cf_rc input[type="checkbox"]:checked + .mwform-checkbox-field-text::after,
  .form_list--item .cont .acceptance input[type="checkbox"]:checked::after {
    top: 9px;
    left: 5px;
    width: 5px;
    height: 9px;
    border-right: 2px solid rgb(201,44,51);
    border-bottom: 2px solid rgb(201,44,51);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .form_list--item.privacy {
    border: none;
    margin-top: 32px;
  }
  .form_list-hor .form_list--item.privacy .ttl {
    display: block;
    width: 100%;
    text-align: center;
  }
  .form_list-hor .form_list--item.privacy .cont {
    margin-left: auto;
  }
  .form_list--item.privacy .error,
  input[name="recaptcha-v3"] + .error {
    display: table;
    margin-left: auto;
    margin-right: auto;
  }
  input[name="recaptcha-v3"] + .error {
    margin-top: 24px;
  }

/* address
*************************************************** */
  .form_list--item .cont .cf_zip {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .form_list--item .cont .cf_zip input[type="text"] {
    width: auto;
    max-width: 200px;
    margin-left: 8px;
    margin-right: 8px;
  }

/* other
*************************************************** */

  /* --- support --- */
  .cf_form--support {
    margin-top: 4px;
    line-height: 1.6em;
    opacity: .5;
    font-size: 80%;
  }

  /* --- required --- */
  .required {
    background: rgb(201,44,51);
    color: #fff;
    font-size: 70%;
    width: 32px;
    line-height: 32px;
    letter-spacing: .05em;
    border-radius: 100%;
    text-align: center;
  }

  /* --- cf_form--btns --- */
  .cf_form--btns {
    margin-top: 32px;
    text-align: center;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .cf_form--btns button {
    padding-left: 0;
    padding-right: 0;
    margin-right: 4px;
    margin-left: 4px;
    border: none;
    border-radius: 3px;
    letter-spacing: .1em;
    font-size: inherit;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    transition: .6s all;
  }
  .cf_form--btns button.btn-def .txt {
    transform: translateY(0px);
  }

  /* --- error --- */
  .mw_wp_form .error {
    position: relative;
    margin-top: 8px;
    line-height: 1em;
    padding-left: 18px;
    color: rgb(201,44,51) !important;
    font-size: 80%;
    font-weight: 500;
  }
  .mw_wp_form .error::before {
    display: inline-block;
    position: absolute;
    top: 55%;
    left: 0;
    content: '!';
    width: 13px;
    height: 13px;
    padding-left: 1px;
    line-height: 12px;
    margin-right: 4px;
    border-radius: 100%;
    background-color: rgb(201,44,51);
    color: #fff;
    text-align: center;
    transform: translateY(-50%);
    font-size: 85%;
  }
  .mw_wp_form .form_list--item.is-error .cont input {
    background-color: rgba(201,44,51,.1);
    border-color: rgba(201,44,51,.5);
  }

  /* --- vert --- */
  .form_list-vert .form_list--item .ttl {
    margin-bottom: 16px;
    line-height: 1em;
  }
  /* --- hor --- */
  .form_list-hor .form_list--item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .form_list-hor .form_list--item .ttl {
    width: 220px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .form_list-hor .form_list--item .cont {
    flex: 1;
    margin-left: 40px;
  }
  @media screen and (min-width: 961px) {
    .cf_form--btns button:hover {
      opacity: .75;
    }
  }
  @media screen and (max-width: 1064px) {
    .form_list-hor .form_list--item.privacy p {
      text-align: left;
    }
    .form_list-hor .form_list--item.privacy br {
      display: none;
    }
  }
  @media only screen and (max-width: 960px) {
    .form_list-hor .form_list--item {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .form_list-hor .form_list--item .ttl {
      width: auto;
      line-height: 1em;
      margin-bottom: 16px;
    }
    .form_list-hor .form_list--item .cont {
      margin-left: 0;
    }
    .cf_form--btns {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
    }
    .cf_form--btns button:not(:last-child) {
      margin-bottom: 16px;
    }
  }
  @media screen and (max-width: 768px) {
    #cf_form {
      padding-top: 56px;
      padding-bottom: 56px;
      padding-left: 48px;
      padding-right: 48px;
    }
    #cf_form::before {
      border-width: 12px;
    }
    .form_flow_list {
      margin-bottom: 24px;
    }
  }
  @media only screen and (max-width: 560px) {
    #cf_form {
      padding-top: 32px;
      padding-bottom: 40px;
      padding-left: 32px;
      padding-right: 32px;
    }
    #cf_form::before {
      border-width: 8px;
    }
    .form_flow_list {
      margin-bottom: 8px;
    }
    .form_list--item {
      padding-top: 12px;
      padding-bottom: 16px;
    }
    .form_list--item .cont input[type="text"],
    .form_list--item .cont input[type="email"],
    .form_list--item .cont input[type="tel"],
    .form_list--item .cont input[type="date"],
    .form_list--item .cont input[type="password"],
    .form_list--item .cont textarea {
      font-size: 16px;
    }
    .form_list--item .cont .cf_rc .wpcf7-list-item {
      display: block;
    }
    .form_list--item .cont .cf_zip input[type="text"] {
      width: calc(100% - 23px);
      margin-right: 0;
    }
    .form_list-hor .form_list--item .ttl {
      margin-bottom: 10px;
    }
    .form_list--item.privacy {
      padding-top: 20px;
      padding-bottom: 10px;
      padding-left: 16px;
      padding-right: 16px;
      font-size: 93%;
    }
    .form_list--item.privacy p {
      font-size: 86%;
    }
    .required {
      transform: scale(.9);
    }
    .cf_form--btns {
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      padding-top: 0;
      margin-top: 24px;
    }
    .cf_form--btns button {
      width: 100%;
      margin-right: 0;
      margin-left: 0;
      background-size: contain;
      background-position: center;
    }
    .cf_form--btns button:not(:last-child) {
      margin-bottom: 8px;
    }
  }
  @media screen and (max-width: 413px) {
    #cf_form {
      padding-left: 28px;
      padding-right: 28px;
    }
  }
  @media screen and (max-width: 374px) {
    .form_list--item.privacy .cont .cf_rc .mwform-checkbox-field-text {
      font-size: 86%;
      padding-top: 3px;
      padding-left: 20px;
      letter-spacing: .05em;
    }
  }


/* ======================================================================================

    reCAPTCHA

====================================================================================== */
  .footer .recaptcha_txt {
    display: block;
    font-size: 71%;
    line-height: 1.6em;
  }
  .grecaptcha-badge {
    visibility: hidden;
  }