@charset "UTF-8";
/* CSS Document */
/*
Theme Name: グランドミック
Author: 株式会社ジャンプス

*/
* {
  margin: 0;
  padding: 0; }

body, html {
  scroll-behavior: smooth;
  font-size: 1vw; }
  @media screen and (max-width: 1450px) {
    body, html {
      font-size: 1.2vw; } }
  @media screen and (max-width: 768px) {
    body, html {
      font-size: 2.5vw; } }
  @media screen and (max-width: 480px) {
    body, html {
      font-size: 3.75vw; } }

/* WEBフォント読込後にページ表示 */
html #wrapper {
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
html.wf-active #wrapper {
  opacity: 1;
  filter: alpha(opacity=100); }

/* =======================================================================================================================
　　　　　　　　　全体
======================================================================================================================= */
body {
  font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
  font-style: normal;
  font-weight: 500;
  line-height: 2em;
  letter-spacing: 0;
  background: -webkit-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
  background: -moz-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
  background: -o-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
  background: linear-gradient(-30deg, #0ad0fa 0, #fb44a3 100%);
  width: 100%;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100 ); }

/* =======================================================================================================================
　　　　　　　　　レイアウト
======================================================================================================================= */
.sec {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5em 0; }
  @media screen and (max-width: 480px) {
    .sec {
      padding: 3.75em 0; } }

.innerbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 9.5em; }
  @media screen and (max-width: 768px) {
    .innerbox {
      padding: 0 3.75em; } }
  @media screen and (max-width: 480px) {
    .innerbox {
      padding: 0 1.5em; } }

.innerbox2 {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0 4.5em; }
  @media screen and (max-width: 768px) {
    .innerbox2 {
      padding: 0 2em; } }
  @media screen and (max-width: 480px) {
    .innerbox2 {
      padding: 0 1.5em; } }

#header {
  /* ロゴマーク */
  /* グローバルナビ */ }
  #header .logo {
    font-size: 1vw;
    position: absolute;
    top: 2em;
    left: 4.5vw;
    right: auto;
    bottom: auto;
    z-index: 12;
    /* トップページでの表示 */ }
    @media screen and (max-width: 1450px) {
      #header .logo {
        font-size: 1.2vw; } }
    @media screen and (max-width: 768px) {
      #header .logo {
        font-size: 2.5vw; } }
    @media screen and (max-width: 480px) {
      #header .logo {
        font-size: 3.75vw; } }
    @media screen and (max-width: 1450px) {
      #header .logo {
        left: 2.5em; } }
    @media screen and (max-width: 768px) {
      #header .logo {
        top: 1.5em;
        left: 1em; } }
    @media screen and (max-width: 480px) {
      #header .logo {
        top: 1em;
        left: 1.5em; } }
    @media screen and (max-width: 1450px) {
      #front-page #header .logo {
        left: 4.5vw; } }
@media screen and (max-width: 768px) and (min-width: 481px) {
  #front-page #header .logo {
    position: relative;
    top: 0;
    left: 0;
    padding-top: 2em;
    padding-left: 0; } }

    @media screen and (max-width: 480px) {
      #front-page #header .logo {
        top: 2.5em;
        left: 1.5em; } }
  #header .gnav {
    position: fixed;
    top: 1em;
    left: auto;
    right: 1em;
    bottom: auto;
    z-index: 99999; }
    @media screen and (max-width: 768px) {
      #header .gnav {
        right: 6.5em; } }
    @media screen and (max-width: 480px) {
      #header .gnav {
        top: auto;
        right: 1em;
        bottom: 1em; } }

.fixbtn {
  position: fixed;
  top: auto;
  left: auto;
  right: 1em;
  bottom: 0.5em;
  z-index: 999; }
  @media screen and (max-width: 480px) {
    .fixbtn {
      right: auto;
      left: 0.5em;
      z-index: 99999; } }

#wrapper {
  background: #fff;
  color: #000;
  position: fixed;
  top: 0.5em;
  left: 0.5em;
  right: 0.25em;
  bottom: 0.5em;
  margin: auto;
  z-index: 10;
  border-radius: 1.5em;
  scroll-behavior: smooth;
  overflow-x: hidden;
  overflow-y: scroll;
  /* タブレット・スマホ横向き時表示テキスト（極横長） */ }
  #wrapper::-webkit-scrollbar {
    inline-size: 0.5em;
    /* 横書き時 縦スクロール (=width) */
    block-size: 0.5em;
    /* 横書き時 横スクロール (=height) */ }
  #wrapper::-webkit-scrollbar-thumb {
    background-color: #434343;
    border-radius: 0.25em; }
  #wrapper::-webkit-scrollbar-track {
    background: linear-gradient(0deg, #91E9FD 0, #B4C2E5 100%);
    border-radius: 0.25em; }
  @media screen and (max-width: 768px) {
    #wrapper::after {
      display: none;
      z-index: -1;
      content: none;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      padding: 2em;
      box-sizing: border-box;
      line-height: 1.5em;
      text-indent: -1em;
      padding-left: 3em;
      background: -webkit-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
      background: -moz-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
      background: -o-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
      background: linear-gradient(-30deg, #0ad0fa 0, #fb44a3 100%);
      color: #fff;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center;
      -ms-flex-pack: center;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      justify-content: center; } }
@media screen and (max-width: 768px) and (min-aspect-ratio: 13 / 6) {
  #wrapper::after {
    display: flex;
    z-index: 999999;
    content: "★このサイトは画面を縦向きにしてご覧ください。"; } }

@media screen and (max-width: 480px) and (min-aspect-ratio: 5 / 3) {
  #wrapper::after {
    display: flex;
    z-index: 999999;
    content: "★このサイトは画面を縦向きにしてご覧ください。";
    font-size: 0.95em; } }

#footer .footer_sec {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5em 0; }
  @media screen and (max-width: 480px) {
    #footer .footer_sec {
      padding: 2.5em 0; } }

/* 欧文フォント */
.eg {
  font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
  font-weight: 600;
  font-style: italic; }

/* 日本語フォント */
.jp {
  font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
  font-style: normal; }

/* 文字寄せ */
.center {
  text-align: center; }

.right {
  text-align: right; }

/* ノートパソコン改行 */
@media screen and (max-width: 1450px) {
  .npbr {
    display: block; } }

/* タブレット改行 */
@media screen and (max-width: 768px) {
  .tbbr {
    display: block; } }

/* スマホ改行 */
@media screen and (max-width: 480px) {
  .spbr {
    display: block; } }

/* スマホ非表示 */
@media screen and (max-width: 480px) {
  .spnone {
    display: none; } }

/* 見出し */
.sec_ttl {
  font-size: 2.5em;
  line-height: 1em;
  text-align: center;
  padding-bottom: 0.8em; }
  @media screen and (max-width: 768px) {
    .sec_ttl {
      font-size: 2em;
      padding-bottom: 1em; }
      .sec_ttl .rec {
        font-size: 0.8em;
        padding-bottom: 0.25em; }
        .sec_ttl .rec::before, .sec_ttl .rec::after {
          display: inline-block;
          -webkit-transform: scaleX(0.5);
          -moz-transform: scaleX(0.5);
          -ms-transform: scaleX(0.5);
          -o-transform: scaleX(0.5);
          transform: scaleX(0.5); }
        .sec_ttl .rec::before {
          content: "＼";
          padding-right: 0.2em; }
        .sec_ttl .rec::after {
          content: "／";
          padding-left: 0.2em; } }
  @media screen and (max-width: 480px) {
    .sec_ttl {
      font-size: 1.5em;
      padding-bottom: 1.2em; }
      .sec_ttl .rec::before, .sec_ttl .rec::after {
        -webkit-transform: scaleX(1);
        -moz-transform: scaleX(1);
        -ms-transform: scaleX(1);
        -o-transform: scaleX(1);
        transform: scaleX(1); }
      .sec_ttl .rec::after {
        content: "教室 ／";
        padding-left: 0; } }
  .sec_ttl .eg {
    font-weight: 600; }
    @media screen and (max-width: 768px) {
      .sec_ttl .eg {
        font-size: 1.4em; } }
  .sec_ttl .jp {
    display: inline-block;
    font-weight: 900; }
    .sec_ttl .jp + .eg {
      display: block;
      font-size: 0.5em;
      line-height: 1em;
      padding-top: 0.75em; }
      @media screen and (max-width: 768px) {
        .sec_ttl .jp + .eg {
          font-size: 0.65em; } }

/* 段落 */
p {
  padding-bottom: 2em; }

/* 一覧表示ページ記事要約 */
.post_excerpt {
  font-size: 0.85em;
  line-height: 1.5em;
  padding-bottom: 0;
  padding-top: 0.75em; }
  @media screen and (max-width: 480px) {
    .post_excerpt {
      font-size: 0.7em; } }

/* 注釈 */
.note {
  padding-left: 1em;
  text-indent: -1em;
  color: #fb44a3;
  font-size: 0.85em;
  font-weight: 400;
  line-height: 1.25em; }
  .note::before {
    content: "※"; }

/* 画像 */
img {
  vertical-align: bottom; }
  img.img100 {
    object-fit: cover;
    object-position: 50% 50%;
    width: 100%;
    height: 100%; }

.imgbox {
  line-height: 0; }

/* 角丸 */
.rd {
  border-radius: 1em;
  position: relative;
  z-index: 1;
  overflow: hidden; }

span.rd {
  display: inline-block; }

/* =======================================================================================================================
　　　　　　　　　SVG
======================================================================================================================= */
@-webkit-keyframes ani_note8 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
    width: 0;
    height: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
  10% {
    opacity: 1;
    filter: alpha(opacity=100); }
  70% {
    opacity: 1;
    filter: alpha(opacity=100); }
  99% {
    opacity: 0;
    filter: alpha(opacity=0);
    width: 4em;
    height: 4em;
    -webkit-transform: translate(30%, -75%);
    transform: translate(30%, -75%); }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
    z-index: -1; } }
@-webkit-keyframes ani_note16 {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
    width: 0;
    height: 0;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
  10% {
    opacity: 1;
    filter: alpha(opacity=100); }
  70% {
    opacity: 1;
    filter: alpha(opacity=100); }
  99% {
    opacity: 0;
    filter: alpha(opacity=0);
    width: 4em;
    height: 4em;
    -webkit-transform: translate(-130%, -75%);
    transform: translate(-130%, -75%); }
  100% {
    opacity: 0;
    filter: alpha(opacity=0);
    z-index: -1; } }
/* 飛び出すアニメーション */
@-webkit-keyframes ani_jmp {
  0% {
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transform: scale(0.5, 0) translate(0, 100%);
    transform: scale(0.5, 0) translate(0, 100%); }
  20% {
    opacity: 1;
    filter: alpha(opacity=100);
    -webkit-transform: scale(1, 1) translate(0, -5em);
    transform: scale(1, 1) translate(0, -5em); }
  40% {
    -webkit-transform: scale(1, 0.5) translate(0, 0);
    transform: scale(1, 0.5) translate(0, 0); }
  60% {
    -webkit-transform: scale(1, 1) translate(0, -1.5em);
    transform: scale(1, 1) translate(0, -1.5em); }
  75% {
    -webkit-transform: scale(1, 0.75) translate(0, 0);
    transform: scale(1, 0.75) translate(0, 0); }
  90% {
    -webkit-transform: scale(1, 1) translate(0, -1em);
    transform: scale(1, 1) translate(0, -1em); }
  100% {
    -webkit-transform: scale(1, 1) translate(0, 0);
    transform: scale(1, 1) translate(0, 0);
    opacity: 1;
    filter: alpha(opacity=100); } }
/* ユラユラ揺れるアニメーション */
@keyframes ani_dnc {
  0% {
    -webkit-transform: rotate(-5deg);
    -moz-transform: rotate(-5deg);
    -o-transform: rotate(-5deg);
    transform: rotate(-5deg); }
  50% {
    -webkit-transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -o-transform: rotate(5deg);
    transform: rotate(5deg); }
  100% {
    -webkit-transform: rotate(-5deg);
    -moz-transform: rotate(-5deg);
    -o-transform: rotate(-5deg);
    transform: rotate(-5deg); } }
/* ユラユラ揺れるアニメーション2 */
@keyframes ani_dnc2 {
  0% {
    -webkit-transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -o-transform: rotate(5deg);
    transform: rotate(5deg); }
  50% {
    -webkit-transform: rotate(-5deg);
    -moz-transform: rotate(-5deg);
    -o-transform: rotate(-5deg);
    transform: rotate(-5deg); }
  100% {
    -webkit-transform: rotate(5deg);
    -moz-transform: rotate(5deg);
    -o-transform: rotate(5deg);
    transform: rotate(5deg); } }
/* 読み込み遅延 */
img {
  -webkit-transition: 1s ease;
  -moz-transition: 1s ease;
  -ms-transition: 1s ease;
  -o-transition: 1s ease;
  transition: 1s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  img.lazyload {
    opacity: 0;
    filter: alpha(opacity=0); }
  img.lazyloaded {
    opacity: 1;
    filter: alpha(opacity=100); }

/* 読み込み遅延 */
.lazyload0, .lazyload1, .lazyload2, .lazyload3, .lazyload4 {
  -webkit-transition: 1s ease;
  -moz-transition: 1s ease;
  -ms-transition: 1s ease;
  -o-transition: 1s ease;
  transition: 1s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  opacity: 0;
  filter: alpha(opacity=0); }
  .lazyload0.lazyloaded, .lazyload1.lazyloaded, .lazyload2.lazyloaded, .lazyload3.lazyloaded, .lazyload4.lazyloaded {
    -webkit-transition: 1s ease;
    -moz-transition: 1s ease;
    -ms-transition: 1s ease;
    -o-transition: 1s ease;
    transition: 1s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 1;
    filter: alpha(opacity=100); }

.lazyload1 {
  -webkit-transform: translate(0, 3.75em);
  -moz-transform: translate(0, 3.75em);
  -ms-transform: translate(0, 3.75em);
  -o-transform: translate(0, 3.75em);
  transform: translate(0, 3.75em); }
  .lazyload1.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

.lazyload2 {
  -webkit-transform: translate(-3.75em, 0);
  -moz-transform: translate(-3.75em, 0);
  -ms-transform: translate(-3.75em, 0);
  -o-transform: translate(-3.75em, 0);
  transform: translate(-3.75em, 0); }
  .lazyload2.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

.lazyload3 {
  -webkit-transform: translate(3.75em, 0);
  -moz-transform: translate(3.75em, 0);
  -ms-transform: translate(3.75em, 0);
  -o-transform: translate(3.75em, 0);
  transform: translate(3.75em, 0); }
  .lazyload3.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

.lazyload4 {
  -webkit-transform: translate(0, -3.75em);
  -moz-transform: translate(0, -3.75em);
  -ms-transform: translate(0, -3.75em);
  -o-transform: translate(0, -3.75em);
  transform: translate(0, -3.75em); }
  .lazyload4.lazyloaded {
    -webkit-transform: translate(0, 0);
    -moz-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    -o-transform: translate(0, 0);
    transform: translate(0, 0); }

/* リンク */
a {
  text-decoration: none;
  color: #0ad0fa;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
  a img {
    -webkit-transition: 0.3s ease;
    -moz-transition: 0.3s ease;
    -ms-transition: 0.3s ease;
    -o-transition: 0.3s ease;
    transition: 0.3s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden; }
  a:hover {
    color: #fb44a3; }
    a:hover img {
      opacity: 0.7;
      filter: alpha(opacity=70); }

/* 矢印ボタン */
.btn a {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  font-size: 1vw;
  line-height: 2.5em;
  font-weight: 700;
  color: #000;
  -webkit-transform-origin: 0 50%;
  -moz-transform-origin: 0 50%;
  -ms-transform-origin: 0 50%;
  -o-transform-origin: 0 50%;
  transform-origin: 0 50%;
  /* マウスオーバー時音符 */ }
  @media screen and (max-width: 1450px) {
    .btn a {
      font-size: 1.2vw; } }
  @media screen and (max-width: 768px) {
    .btn a {
      font-size: 2.5vw; } }
  @media screen and (max-width: 480px) {
    .btn a {
      font-size: 3.75vw; } }
  .btn a::before, .btn a::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    right: auto;
    bottom: auto;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 2; }
  .btn a::before {
    background: url("/images/note_8th.webp") no-repeat 50% 50%/contain; }
  .btn a::after {
    background: url("/images/note_16th.webp") no-repeat 50% 50%/contain; }
  @media (hover: hover) {
    .btn a:not(.hm_btn):hover::before {
      -moz-animation-name: ani_note8;
      -moz-animation-duration: 0.6s;
      -moz-animation-fill-mode: forwards;
      -moz-animation-timing-function: ease-in-out;
      -moz-animation-iteration-count: 1;
      -ms-animation-name: ani_note8;
      -ms-animation-duration: 0.6s;
      -ms-animation-fill-mode: forwards;
      -ms-animation-timing-function: ease-in-out;
      -ms-animation-iteration-count: 1;
      -o-animation-name: ani_note8;
      -o-animation-duration: 0.6s;
      -o-animation-fill-mode: forwards;
      -o-animation-timing-function: ease-in-out;
      -o-animation-iteration-count: 1;
      -webkit-animation-name: ani_note8;
      -webkit-animation-duration: 0.6s;
      -webkit-animation-fill-mode: forwards;
      -webkit-animation-timing-function: ease-in-out;
      -webkit-animation-iteration-count: 1;
      animation-name: ani_note8;
      animation-duration: 0.6s;
      animation-fill-mode: forwards;
      animation-timing-function: ease-in-out;
      animation-iteration-count: 1; }
    .btn a:not(.hm_btn):hover::after {
      -moz-animation-name: ani_note16;
      -moz-animation-duration: 0.6s;
      -moz-animation-fill-mode: forwards;
      -moz-animation-timing-function: ease-in-out;
      -moz-animation-iteration-count: 1;
      -ms-animation-name: ani_note16;
      -ms-animation-duration: 0.6s;
      -ms-animation-fill-mode: forwards;
      -ms-animation-timing-function: ease-in-out;
      -ms-animation-iteration-count: 1;
      -o-animation-name: ani_note16;
      -o-animation-duration: 0.6s;
      -o-animation-fill-mode: forwards;
      -o-animation-timing-function: ease-in-out;
      -o-animation-iteration-count: 1;
      -webkit-animation-name: ani_note16;
      -webkit-animation-duration: 0.6s;
      -webkit-animation-fill-mode: forwards;
      -webkit-animation-timing-function: ease-in-out;
      -webkit-animation-iteration-count: 1;
      animation-name: ani_note16;
      animation-duration: 0.6s;
      animation-fill-mode: forwards;
      animation-timing-function: ease-in-out;
      animation-iteration-count: 1;
      -webkit-animation-delay: 0.1s;
      -moz-animation-delay: 0.1s;
      -o-animation-delay: 0.1s;
      animation-delay: 0.1s; } }
  .btn a.hm_btn:hover::before {
    -moz-animation-name: ani_note8;
    -moz-animation-duration: 0.6s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: 1;
    -ms-animation-name: ani_note8;
    -ms-animation-duration: 0.6s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: 1;
    -o-animation-name: ani_note8;
    -o-animation-duration: 0.6s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: 1;
    -webkit-animation-name: ani_note8;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: 1;
    animation-name: ani_note8;
    animation-duration: 0.6s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }
  .btn a.hm_btn:hover::after {
    -moz-animation-name: ani_note16;
    -moz-animation-duration: 0.6s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: 1;
    -ms-animation-name: ani_note16;
    -ms-animation-duration: 0.6s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: 1;
    -o-animation-name: ani_note16;
    -o-animation-duration: 0.6s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: 1;
    -webkit-animation-name: ani_note16;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: 1;
    animation-name: ani_note16;
    animation-duration: 0.6s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1;
    -webkit-animation-delay: 0.1s;
    -moz-animation-delay: 0.1s;
    -o-animation-delay: 0.1s;
    animation-delay: 0.1s; }
  .btn a::before, .btn a::after {
    z-index: 5; }
  .btn a span {
    vertical-align: middle; }
    .btn a span.eg {
      font-size: 1.5em; }
    .btn a span::after {
      content: "";
      display: block;
      width: 2.5rem;
      height: 2.5rem;
      border-radius: 50%;
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      -webkit-box-shadow: 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      -moz-box-shadow: 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      box-shadow: 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); }
      @media screen and (max-width: 480px) {
        .btn a span::after {
          width: 1.5rem;
          height: 1.5rem; } }
      .btn a span::after:hover {
        -webkit-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
        -moz-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
        box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
        -webkit-transform: translate(0.15em, 0.15em);
        -moz-transform: translate(0.15em, 0.15em);
        -ms-transform: translate(0.15em, 0.15em);
        -o-transform: translate(0.15em, 0.15em);
        transform: translate(0.15em, 0.15em); }
      @media screen and (max-width: 480px) {
        .btn a span::after {
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
    .btn a span::after {
      display: inline-block;
      margin-left: 1rem;
      vertical-align: middle; }
      @media screen and (max-width: 480px) {
        .btn a span::after {
          width: 2.5rem;
          height: 2.5rem;
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
  .btn a:hover {
    -webkit-transform: translate(0.15em, 0.15em);
    -moz-transform: translate(0.15em, 0.15em);
    -ms-transform: translate(0.15em, 0.15em);
    -o-transform: translate(0.15em, 0.15em);
    transform: translate(0.15em, 0.15em); }
    .btn a:hover span::after {
      -webkit-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
      -moz-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
      box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
      -webkit-transform: translate(0.2rem, 0);
      -moz-transform: translate(0.2rem, 0);
      -ms-transform: translate(0.2rem, 0);
      -o-transform: translate(0.2rem, 0);
      transform: translate(0.2rem, 0); }

/* 背景色ボタン */
.bg_btn {
  /* 背景色＋矢印ボタン */ }
  .bg_btn a {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    height: 4em;
    line-height: 1em;
    border-radius: 2em;
    padding: 1.5em 5.625em;
    font-size: 1.25em;
    font-weight: 700;
    color: #000;
    background: -webkit-gradient(linear, right top, left top, color-stop(0, #0ad0fa), to(#fb44a3));
    background: -webkit-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
    background: -moz-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
    background: -o-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
    background: linear-gradient(-90deg, #0ad0fa 0, #fb44a3 100%);
    -webkit-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.6);
    -moz-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.6);
    box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.6);
    /* マウスオーバー */ }
    @media screen and (max-width: 480px) {
      .bg_btn a {
        font-size: 1em;
        height: 3.5em;
        border-radius: 1.75em;
        padding: 1.25em 3em; } }
    .bg_btn a:hover {
      -webkit-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(0, 0, 0, 0.6);
      -moz-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(0, 0, 0, 0.6);
      box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(0, 0, 0, 0.6);
      -webkit-transform: translate(0.15em, 0.15em);
      -moz-transform: translate(0.15em, 0.15em);
      -ms-transform: translate(0.15em, 0.15em);
      -o-transform: translate(0.15em, 0.15em);
      transform: translate(0.15em, 0.15em); }
  .bg_btn.ya_btn a {
    /* マウスオーバー */ }
    .bg_btn.ya_btn a::after {
      content: "";
      display: block;
      width: 2.5rem;
      height: 2.5rem;
      border-radius: 50%;
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_c.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_c.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_c.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_c.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); }
      @media screen and (max-width: 480px) {
        .bg_btn.ya_btn a::after {
          width: 1.5rem;
          height: 1.5rem; } }
      @media screen and (max-width: 480px) {
        .bg_btn.ya_btn a::after {
          background: url("/images/ya_c.svg") no-repeat 50% 50%/0.7rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_c.svg") no-repeat 50% 50%/0.7rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_c.svg") no-repeat 50% 50%/0.7rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_c.svg") no-repeat 50% 50%/0.7rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
    .bg_btn.ya_btn a::after {
      position: absolute;
      top: 1em;
      left: auto;
      right: 1em;
      bottom: auto; }
      @media screen and (max-width: 480px) {
        .bg_btn.ya_btn a::after {
          right: 0.75em; } }
    .bg_btn.ya_btn a:hover::after {
      -webkit-transform: translate(0.35em, 0);
      -moz-transform: translate(0.35em, 0);
      -ms-transform: translate(0.35em, 0);
      -o-transform: translate(0.35em, 0);
      transform: translate(0.35em, 0); }

/* ================= レッスン一覧 ============================================================ */
.lesson_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none inside;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  /* -------------------------- キッズ・ジュニア色 ------------------------------------------- */ }
  #front-page .lesson_list {
    margin-top: -3%; }
    @media screen and (max-width: 768px) {
      #front-page .lesson_list {
        margin-top: -2.5em; } }
    @media screen and (max-width: 650px) {
      #front-page .lesson_list {
        margin-top: -sp3; } }
    @media screen and (max-width: 480px) {
      #front-page .lesson_list {
        margin-top: -2em; } }
  .lesson_list li {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 22.75%;
    margin-right: 3%;
    margin-top: 3%;
    /* -------------------------- カテゴリ別ロゴ表示 ------------------------------------------- */
    /* グランドミックオリジナル ------------------------------------------- */
    /* ヤマハ ------------------------------------------- */ }
    @media screen and (max-width: 1450px) {
      .lesson_list li {
        width: 23.5%;
        margin-right: 2%; } }
    @media screen and (min-width: 769px) {
      .lesson_list li:nth-child(4n) {
        margin-right: 0; } }
    @media screen and (max-width: 768px) {
      .lesson_list li {
        width: 48%;
        margin-right: 4%;
        margin-top: 1.5em; }
        .lesson_list li:nth-child(2n) {
          margin-right: 0; } }
@media screen and (max-width: 768px) and (max-width: 650px) and (min-width: 481px) {
  .lesson_list li {
    margin-top: 2.5em; } }

    .lesson_list li:last-child {
      margin-right: 0; }
    .lesson_list li a {
      /* -------------------------- サムネイル画像 ------------------------------------------- */
      /* -------------------------- テキスト ------------------------------------------- */
      /* -------------------------- マウスオーバー ------------------------------------------- */ }
      .lesson_list li a .thumb {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-filter: drop-shadow(0.35em 0.35em 0.5em rgba(0, 0, 0, 0.2));
        filter: drop-shadow(0.35em 0.35em 0.5em rgba(0, 0, 0, 0.2));
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        /* ロゴ表示（共通） ------------------------------------------- */
        /* 円形切り抜き ------------------------------------------- */ }
        .lesson_list li a .thumb::before {
          content: "";
          display: block;
          padding-top: 100%; }
        .lesson_list li a .thumb::after {
          display: block;
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          right: auto;
          bottom: auto;
          width: 5em;
          height: 5em;
          min-width: 96px;
          min-height: 96px;
          border-radius: 50%;
          background-color: #fff;
          background-repeat: no-repeat;
          background-position: 50% 50%;
          background-size: 69.79% auto;
          z-index: 2;
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
@media screen and (max-width: 1450px) and (min-width: 769px) {
  .lesson_list li a .thumb::after {
    min-width: 0;
    min-height: 0; } }

@media screen and (max-width: 650px) and (min-width: 481px) {
  .lesson_list li a .thumb::after {
    top: auto;
    left: auto;
    right: 58%;
    bottom: 9em; } }

          @media screen and (max-width: 480px) {
            .lesson_list li a .thumb::after {
              width: 4em;
              height: 4em;
              min-width: 0;
              min-height: 0; } }
        .lesson_list li a .thumb span {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          margin: auto;
          border-radius: 50%;
          border: #fff solid 0.5em;
          overflow: hidden;
          z-index: 1;
          /* 矢印 */
          /* 画像 */ }
          @media screen and (max-width: 480px) {
            .lesson_list li a .thumb span {
              border-width: 0.3em; } }
          .lesson_list li a .thumb span::after {
            content: "";
            display: block;
            width: 2.5rem;
            height: 2.5rem;
            border-radius: 50%;
            -webkit-transition: 0.3s ease;
            -moz-transition: 0.3s ease;
            -ms-transition: 0.3s ease;
            -o-transition: 0.3s ease;
            transition: 0.3s ease;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
            background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
            background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
            background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
            background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); }
            @media screen and (max-width: 480px) {
              .lesson_list li a .thumb span::after {
                width: 1.5rem;
                height: 1.5rem; } }
            @media screen and (max-width: 480px) {
              .lesson_list li a .thumb span::after {
                background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
          .lesson_list li a .thumb span::after {
            position: absolute;
            top: 50%;
            left: auto;
            right: 0.5em;
            bottom: auto;
            -webkit-transform: translate(0, -50%);
            -moz-transform: translate(0, -50%);
            -ms-transform: translate(0, -50%);
            -o-transform: translate(0, -50%);
            transform: translate(0, -50%);
            z-index: 2; }
          .lesson_list li a .thumb span img {
            object-fit: cover;
            object-position: 50% 50%;
            width: 100%;
            height: 100%; }
      .lesson_list li a .txtbox {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding-top: 1em;
        color: #000;
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        /* タイトル ------------------------------------------- */
        /* 要約 ------------------------------------------- */ }
        .lesson_list li a .txtbox .post_ttl {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          font-size: 1em;
          font-weight: 700;
          line-height: 1.25em;
          text-align: center; }
          @media screen and (max-width: 480px) {
            .lesson_list li a .txtbox .post_ttl {
              font-size: 0.75em; } }
        .lesson_list li a .txtbox .post_excerpt {
          color: #434343; }
      .lesson_list li a:hover {
        /* サムネイル画像 ------------------------------------------- */
        /* テキスト ------------------------------------------- */ }
        .lesson_list li a:hover .thumb {
          -webkit-transform: translate(0.2em, 0.2em);
          -moz-transform: translate(0.2em, 0.2em);
          -ms-transform: translate(0.2em, 0.2em);
          -o-transform: translate(0.2em, 0.2em);
          transform: translate(0.2em, 0.2em);
          -webkit-filter: drop-shadow(0.15em 0.15em 0.2em rgba(0, 0, 0, 0.1));
          filter: drop-shadow(0.15em 0.15em 0.2em rgba(0, 0, 0, 0.1)); }
          .lesson_list li a:hover .thumb span {
            /* 矢印 */
            /* 画像 */ }
            .lesson_list li a:hover .thumb span::after {
              -webkit-transform: translate(0.3em, -50%);
              -moz-transform: translate(0.3em, -50%);
              -ms-transform: translate(0.3em, -50%);
              -o-transform: translate(0.3em, -50%);
              transform: translate(0.3em, -50%); }
            .lesson_list li a:hover .thumb span img {
              opacity: 1;
              filter: alpha(opacity=100);
              -webkit-transform: scale(1.2);
              -moz-transform: scale(1.2);
              -ms-transform: scale(1.2);
              -o-transform: scale(1.2);
              transform: scale(1.2); }
        .lesson_list li a:hover .txtbox {
          -webkit-transform: scale(1.05);
          -moz-transform: scale(1.05);
          -ms-transform: scale(1.05);
          -o-transform: scale(1.05);
          transform: scale(1.05); }
    .lesson_list li.cate_gmic a .thumb::after {
      background-image: url("/images/logo_mic.svg"); }
    .lesson_list li.cate_yamaha a .thumb::after {
      background-image: url("/images/logo_yamaha_s.svg"); }
@media screen and (max-width: 1450px) and (min-width: 769px) {
  .lesson_list li.cate_yamaha a .thumb::after {
    background-image: none;
    content: "YAMAHA";
    font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: 600;
    font-style: italic;
    font-size: 1.5em;
    font-weight: 800;
    font-style: normal;
    line-height: 1em;
    color: #000;
    width: 3.33em;
    height: 3.33em;
    box-sizing: border-box;
    padding-top: 0.15em;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center; } }

      @media screen and (max-width: 480px) {
        .lesson_list li.cate_yamaha a .thumb::after {
          background-image: none;
          content: "YAMAHA";
          font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
          font-weight: 600;
          font-style: italic;
          font-size: 1.5em;
          font-weight: 800;
          font-style: normal;
          line-height: 1em;
          color: #000;
          width: 3.33em;
          height: 3.33em;
          box-sizing: border-box;
          padding-top: 0.15em;
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -ms-flex-align: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
          align-items: center;
          -ms-flex-pack: center;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
          justify-content: center;
          font-size: 1.25em;
          width: 3.2em;
          height: 3.2em; } }
  .lesson_list.kids_lesson li a {
    /* サムネイル画像 ------------------------------------------- */
    /* テキスト ------------------------------------------- */ }
    .lesson_list.kids_lesson li a .thumb span {
      /* 矢印 */ }
      .lesson_list.kids_lesson li a .thumb span::after {
        content: "";
        display: block;
        width: 2.5rem;
        height: 2.5rem;
        border-radius: 50%;
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        background: #fb44a3;
        -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2);
        -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2);
        box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2);
        background: #fb44a3 url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto; }
        @media screen and (max-width: 480px) {
          .lesson_list.kids_lesson li a .thumb span::after {
            width: 1.5rem;
            height: 1.5rem; } }
        @media screen and (max-width: 480px) {
          .lesson_list.kids_lesson li a .thumb span::after {
            background-size: 0.7em auto; } }
    .lesson_list.kids_lesson li a .txtbox {
      /* タイトル */
      /* 要約 */ }
      .lesson_list.kids_lesson li a .txtbox .post_ttl {
        color: #fb44a3; }
      .lesson_list.kids_lesson li a .txtbox .post_excerpt {
        color: #000; }

/* ================= 新着記事 ============================================================ */
.post_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none inside; }
  .post_list li {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-bottom: 1em; }
    .post_list li:last-child {
      padding-bottom: 0; }
    .post_list li a {
      display: block;
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      height: 5em;
      border-radius: 2.5em;
      overflow: hidden;
      z-index: 1;
      background: #b5b5b5;
      -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.1), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.1), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.1), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      padding: 0 5em 0 2.5em;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center;
      color: #000;
      /* マウスオーバー時用グラデーション背景 */
      /* 矢印 */
      /* 日付 ------------------------------------------- */
      /* 投稿タイトル ------------------------------------------- */
      /* -------------------------- マウスオーバー ------------------------------------------- */ }
      .post_list li a:hover {
        -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.1), 0 0 0 0 rgba(112, 112, 112, 0.3);
        -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.1), 0 0 0 0 rgba(112, 112, 112, 0.3);
        box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.1), 0 0 0 0 rgba(112, 112, 112, 0.3);
        -webkit-transform: translate(0.15em, 0.15em);
        -moz-transform: translate(0.15em, 0.15em);
        -ms-transform: translate(0.15em, 0.15em);
        -o-transform: translate(0.15em, 0.15em);
        transform: translate(0.15em, 0.15em); }
      @media screen and (max-width: 480px) {
        .post_list li a {
          height: 4em;
          padding-left: 2em;
          padding-right: 4em; } }
      .post_list li a::before {
        content: "";
        display: block;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        border-radius: 2.5em;
        background: #fb44a3;
        -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2);
        -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2);
        box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2);
        background: -webkit-gradient(linear, right top, left top, color-stop(0, #0ad0fa), to(#fb44a3));
        background: -webkit-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
        background: -moz-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
        background: -o-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
        background: linear-gradient(-90deg, #0ad0fa 0, #fb44a3 100%);
        opacity: 0;
        filter: alpha(opacity=0);
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden; }
      .post_list li a::after {
        content: "";
        display: block;
        width: 2.5rem;
        height: 2.5rem;
        border-radius: 50%;
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
        background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
        background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
        background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
        background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); }
        @media screen and (max-width: 480px) {
          .post_list li a::after {
            width: 1.5rem;
            height: 1.5rem; } }
        @media screen and (max-width: 480px) {
          .post_list li a::after {
            background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
            background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
            background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
            background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
      .post_list li a::after {
        position: absolute;
        top: 1.25em;
        left: auto;
        right: 1.25em;
        bottom: auto; }
      .post_list li a .date {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 7em;
        font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-weight: 600;
        font-style: italic;
        line-height: 2.5em;
        -webkit-transform: translate(0, 0.3em);
        -moz-transform: translate(0, 0.3em);
        -ms-transform: translate(0, 0.3em);
        -o-transform: translate(0, 0.3em);
        transform: translate(0, 0.3em);
        /* 年 */
        /* 月日 */ }
        @media screen and (max-width: 1450px) {
          .post_list li a .date {
            width: 6em; } }
        @media screen and (max-width: 768px) {
          .post_list li a .date {
            width: 5.5em; } }
        @media screen and (max-width: 480px) {
          .post_list li a .date {
            width: 4em;
            -webkit-transform: translate(0, 0.2em);
            -moz-transform: translate(0, 0.2em);
            -ms-transform: translate(0, 0.2em);
            -o-transform: translate(0, 0.2em);
            transform: translate(0, 0.2em); } }
        .post_list li a .date .year {
          font-size: 1.25em;
          padding-right: 0.15em; }
          @media screen and (max-width: 480px) {
            .post_list li a .date .year {
              font-size: 0.8em; } }
        .post_list li a .date .md {
          font-size: 2.5em;
          font-weight: 700; }
          @media screen and (max-width: 480px) {
            .post_list li a .date .md {
              font-size: 1.5em; } }
      .post_list li a .post_ttl {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -moz-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        line-height: 1.2em;
        padding-bottom: 0;
        width: 100%;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        -o-text-overflow: ellipsis;
        /* Opera9,10対応 */ }
        @media screen and (max-width: 480px) {
          .post_list li a .post_ttl {
            font-size: 0.8em; } }
      .post_list li a:hover {
        /* グラデーション背景 */
        /* 矢印 */ }
        .post_list li a:hover::before {
          opacity: 1;
          filter: alpha(opacity=100); }
        .post_list li a:hover::after {
          -webkit-transform: translate(0.35em, 0);
          -moz-transform: translate(0.35em, 0);
          -ms-transform: translate(0.35em, 0);
          -o-transform: translate(0.35em, 0);
          transform: translate(0.35em, 0); }

/* ================= 商品一覧 ============================================================ */
.lineup_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  list-style: none inside; }
  .lineup_list > li {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 19%;
    margin-top: 2.5em;
    margin-right: 1.25%;
    /* -------------------------- 売り切れの時 ------------------------------------------- */ }
    @media screen and (min-width: 1451px) {
      .lineup_list > li:nth-child(5n) {
        margin-right: 0; } }
    @media screen and (max-width: 1450px) {
      .lineup_list > li {
        width: 24%;
        margin-right: 1.3%; } }
  @media screen and (max-width: 1450px) and (min-width: 769px) {
    .lineup_list > li:nth-child(4n) {
      margin-right: 0; } }

    @media screen and (max-width: 768px) {
      .lineup_list > li {
        width: 48.5%;
        margin-right: 3%; }
        .lineup_list > li:nth-child(2n) {
          margin-right: 0; } }
    .lineup_list > li a {
      display: block;
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      -webkit-filter: drop-shadow(0.35em 0.35em 0.5em rgba(0, 0, 0, 0.2));
      filter: drop-shadow(0.35em 0.35em 0.5em rgba(0, 0, 0, 0.2));
      /* -------------------------- サムネイル画像 ------------------------------------------- */
      /* -------------------------- テキスト ------------------------------------------- */
      /* -------------------------- アイコン ------------------------------------------- */
      /* -------------------------- マウスオーバー ------------------------------------------- */ }
      .lineup_list > li a .thumb {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        border-top-left-radius: 1em;
        border-top-right-radius: 1em;
        overflow: hidden;
        z-index: 1; }
        .lineup_list > li a .thumb::before {
          content: "";
          display: block;
          padding-top: 100%; }
        .lineup_list > li a .thumb span {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          margin: auto; }
          .lineup_list > li a .thumb span img {
            object-fit: cover;
            object-position: 50% 50%;
            width: 100%;
            height: 100%; }
      .lineup_list > li a .txtbox {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 1em;
        background: rgba(255, 255, 255, 0.85);
        color: #000;
        border-bottom-left-radius: 1em;
        border-bottom-right-radius: 1em;
        /* 商品名 ------------------------------------------- */
        /* 商品概要 ------------------------------------------- */
        /* 商品価格 ------------------------------------------- */ }
        .lineup_list > li a .txtbox .post_ttl {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          font-size: 0.9em;
          font-weight: 700;
          line-height: 1.25em;
          word-break: break-all; }
          @media screen and (max-width: 480px) {
            .lineup_list > li a .txtbox .post_ttl {
              font-size: 0.75em; } }
          .lineup_list > li a .txtbox .post_ttl .sub_txt {
            display: block;
            font-size: 0.85em;
            font-weight: 500;
            line-height: 1.25em;
            padding-bottom: 0.25em; }
        .lineup_list > li a .txtbox .post_excerpt {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          font-weight: 400;
          word-break: break-all;
          font-size: 0.8em; }
          @media screen and (max-width: 480px) {
            .lineup_list > li a .txtbox .post_excerpt {
              font-size: 0.6em; } }
        .lineup_list > li a .txtbox .price_list {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          list-style: none inside;
          margin-top: 0.5em;
          padding-top: 0.3em;
          border-top: #000 solid 1px; }
          @media screen and (max-width: 480px) {
            .lineup_list > li a .txtbox .price_list {
              font-size: 0.8em; } }
          .lineup_list > li a .txtbox .price_list li {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            line-height: 1.2em;
            padding-top: 0.2em;
            /* 価格見出し */
            /* 価格 */
            /* 特価など目立たせる場合 */
            /* 定価など目立たせない場合 */ }
            .lineup_list > li a .txtbox .price_list li .price_ttl {
              display: inline-block;
              font-size: 0.7em;
              font-weight: 400; }
              .lineup_list > li a .txtbox .price_list li .price_ttl::after {
                content: "："; }
            .lineup_list > li a .txtbox .price_list li .price_txt {
              font-family: ff-good-web-pro-extra-conden, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
              font-weight: 700;
              font-style: normal;
              display: inline-block;
              font-size: 1.2em;
              font-weight: 800;
              font-style: normal; }
              .lineup_list > li a .txtbox .price_list li .price_txt::before, .lineup_list > li a .txtbox .price_list li .price_txt::after {
                font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
                font-style: normal; }
              .lineup_list > li a .txtbox .price_list li .price_txt::before {
                font-size: 0.8em;
                content: "￥"; }
              .lineup_list > li a .txtbox .price_list li .price_txt::after {
                font-size: 0.5em;
                font-weight: 200;
                content: "（税込）"; }
            .lineup_list > li a .txtbox .price_list li.strong {
              font-size: 1em;
              line-height: 1.3em;
              color: #fb44a3; }
              @media screen and (max-width: 480px) {
                .lineup_list > li a .txtbox .price_list li.strong {
                  line-height: 1.3em; } }
              .lineup_list > li a .txtbox .price_list li.strong .price_ttl {
                font-size: 0.75em;
                font-weight: 700; }
                @media screen and (max-width: 480px) {
                  .lineup_list > li a .txtbox .price_list li.strong .price_ttl {
                    font-size: 0.7em; } }
              .lineup_list > li a .txtbox .price_list li.strong .price_txt {
                font-size: 1.3em; }
                @media screen and (max-width: 480px) {
                  .lineup_list > li a .txtbox .price_list li.strong .price_txt {
                    font-size: 1.2em; } }
            .lineup_list > li a .txtbox .price_list li.small {
              line-height: 1em;
              color: #898989; }
              .lineup_list > li a .txtbox .price_list li.small .price_ttl {
                font-size: 0.6em; }
              .lineup_list > li a .txtbox .price_list li.small .price_txt {
                font-size: 1em; }
      .lineup_list > li a .item_status {
        position: absolute;
        top: 0.5em;
        left: 0.5em;
        right: 0.5em;
        bottom: auto;
        margin: auto;
        list-style: none inside;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: end;
        -webkit-justify-content: flex-end;
        -moz-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        z-index: 5; }
        .lineup_list > li a .item_status li {
          /* おすすめ ------------------------------------------- */
          /* 売り切れ ------------------------------------------- */ }
          .lineup_list > li a .item_status li:not(.soldout) {
            font-size: 0.6em;
            font-weight: 400;
            width: 4.5em;
            height: 4.5em;
            margin-left: 0.2em;
            border-radius: 50%;
            background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
            color: #fff;
            display: -ms-flexbox;
            display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            -ms-flex-align: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
            align-items: center;
            -ms-flex-pack: center;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            justify-content: center; }
            @media screen and (max-width: 480px) {
              .lineup_list > li a .item_status li:not(.soldout) {
                font-size: 0.5em; } }
          .lineup_list > li a .item_status li.rec {
            position: absolute;
            top: -1.5em;
            left: -1.5em;
            right: auto;
            bottom: auto;
            background: -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
            background: -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
            background: -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
            background: linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%);
            -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
            -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
            box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
            width: 6em;
            height: 6em;
            margin-left: 0; }
          .lineup_list > li a .item_status li.soldout {
            width: 100%;
            font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
            font-weight: 600;
            font-style: italic;
            font-size: 3em;
            font-weight: 800;
            color: #fff;
            position: absolute;
            top: 0;
            left: 0;
            right: auto;
            bottom: auto;
            padding-top: 50%;
            text-align: center; }
      .lineup_list > li a:hover {
        -webkit-filter: drop-shadow(0.15em 0.15em 0.2em rgba(0, 0, 0, 0.1));
        filter: drop-shadow(0.15em 0.15em 0.2em rgba(0, 0, 0, 0.1));
        -webkit-transform: translate(0.25em, 0.25em);
        -moz-transform: translate(0.25em, 0.25em);
        -ms-transform: translate(0.25em, 0.25em);
        -o-transform: translate(0.25em, 0.25em);
        transform: translate(0.25em, 0.25em);
        /* サムネイル画像 ------------------------------------------- */ }
        .lineup_list > li a:hover .thumb span img {
          opacity: 1;
          filter: alpha(opacity=100);
          -webkit-transform: scale(1.05);
          -moz-transform: scale(1.05);
          -ms-transform: scale(1.05);
          -o-transform: scale(1.05);
          transform: scale(1.05); }
    .lineup_list > li.soldout a {
      /* サムネイル画像 ------------------------------------------- */
      /* テキスト ------------------------------------------- */ }
      .lineup_list > li.soldout a .thumb span {
        background: #000; }
        .lineup_list > li.soldout a .thumb span img {
          opacity: 0.6;
          filter: alpha(opacity=60); }
      .lineup_list > li.soldout a .txtbox {
        /* 価格 */ }
        .lineup_list > li.soldout a .txtbox .price_list {
          display: none; }

/* =======================================================================================================================
　　　　　　　　　ヘッダー
======================================================================================================================= */
#header {
  /* ================= ロゴマーク ============================================================ */
  /* ================= グローバルナビゲーション ============================================================ */ }
  #header .innerbox2 {
    z-index: 12;
    /* タブレット・スマホ横向き時表示テキスト ------------------------------------------- */ }
    #header .innerbox2 .logo {
      width: 12.5em;
      /* 下層ページタブレット用ロゴ非表示 */ }
      #header .innerbox2 .logo .subpage_tb_logo {
        display: none; }
      @media screen and (max-width: 768px) {
        #header .innerbox2 .logo {
          width: 50%; } }
  @media screen and (max-width: 768px) and (min-width: 481px) {
    #header .innerbox2 .logo {
      /* 下層ページタブレット用ロゴ切り替え */ }
      #front-page #header .innerbox2 .logo {
        width: 12.5em; }
      #header .innerbox2 .logo .normal_logo {
        display: none; }
        #front-page #header .innerbox2 .logo .normal_logo {
          display: inline-block; }
      #header .innerbox2 .logo .subpage_tb_logo {
        display: inline-block; }
        #front-page #header .innerbox2 .logo .subpage_tb_logo {
          display: none; } }

      @media screen and (max-width: 480px) {
        #header .innerbox2 .logo {
          width: 11.5em; } }
      #header .innerbox2 .logo a {
        display: inline-block;
        /* マウスオーバー ------------------------------------------- */ }
        #header .innerbox2 .logo a img {
          width: 100%;
          height: auto; }
        #header .innerbox2 .logo a:hover {
          -webkit-transform: scale(1.05);
          -moz-transform: scale(1.05);
          -ms-transform: scale(1.05);
          -o-transform: scale(1.05);
          transform: scale(1.05); }
          #header .innerbox2 .logo a:hover img {
            opacity: 1;
            filter: alpha(opacity=100); }
@media screen and (max-width: 768px) and (min-aspect-ratio: 1 / 1) {
  #header .innerbox2::after {
    display: block;
    width: 23em;
    position: absolute;
    top: auto;
    left: auto;
    right: 2em;
    bottom: 0;
    content: "★このサイトは縦長画面での閲覧を推奨しています。画面を縦向きにしてご覧ください。";
    color: #fb44a3;
    font-size: 0.8em;
    line-height: 1.5em;
    text-indent: -1em;
    padding-left: 1em; } }

@media screen and (max-width: 480px) and (min-aspect-ratio: 1 / 1) {
  #header .innerbox2::after {
    font-size: 0.7em;
    line-height: 1.3em;
    position: absolute;
    top: 1em;
    left: 1.5em;
    right: auto;
    bottom: auto; } }

  #header .gnav {
    /* -------------------------- 白背景メインメニュー ------------------------------------------- */
    /* -------------------------- ボタンメニュー ------------------------------------------- */ }
    @media screen and (min-width: 1451px) {
      #header .gnav {
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; } }
    #header .gnav .main_menu {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside;
      height: 4em;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center;
      border-radius: 2em;
      padding: 0 2.5em;
      background: #fff;
      -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(112, 112, 112, 0.3), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      -moz-box-shadow: inset -0.35em -0.35em 1em rgba(112, 112, 112, 0.3), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      box-shadow: inset -0.35em -0.35em 1em rgba(112, 112, 112, 0.3), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3); }
      @media screen and (max-width: 768px) {
        #header .gnav .main_menu {
          display: none; } }
      #header .gnav .main_menu li {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 2em; }
        #header .gnav .main_menu li:first-child {
          padding-left: 0; }
        #header .gnav .main_menu li a {
          display: block;
          color: #000;
          /* マウスオーバー ------------------------------------------- */ }
          #header .gnav .main_menu li a::before, #header .gnav .main_menu li a::after {
            content: "";
            display: block;
            width: 0;
            height: 0;
            position: absolute;
            top: 50%;
            left: 50%;
            right: auto;
            bottom: auto;
            -webkit-transform: translate(-50%, -50%);
            -moz-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
            -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
            z-index: 2; }
          #header .gnav .main_menu li a::before {
            background: url("/images/note_8th.webp") no-repeat 50% 50%/contain; }
          #header .gnav .main_menu li a::after {
            background: url("/images/note_16th.webp") no-repeat 50% 50%/contain; }
          @media (hover: hover) {
            #header .gnav .main_menu li a:not(.hm_btn):hover::before {
              -moz-animation-name: ani_note8;
              -moz-animation-duration: 0.6s;
              -moz-animation-fill-mode: forwards;
              -moz-animation-timing-function: ease-in-out;
              -moz-animation-iteration-count: 1;
              -ms-animation-name: ani_note8;
              -ms-animation-duration: 0.6s;
              -ms-animation-fill-mode: forwards;
              -ms-animation-timing-function: ease-in-out;
              -ms-animation-iteration-count: 1;
              -o-animation-name: ani_note8;
              -o-animation-duration: 0.6s;
              -o-animation-fill-mode: forwards;
              -o-animation-timing-function: ease-in-out;
              -o-animation-iteration-count: 1;
              -webkit-animation-name: ani_note8;
              -webkit-animation-duration: 0.6s;
              -webkit-animation-fill-mode: forwards;
              -webkit-animation-timing-function: ease-in-out;
              -webkit-animation-iteration-count: 1;
              animation-name: ani_note8;
              animation-duration: 0.6s;
              animation-fill-mode: forwards;
              animation-timing-function: ease-in-out;
              animation-iteration-count: 1; }
            #header .gnav .main_menu li a:not(.hm_btn):hover::after {
              -moz-animation-name: ani_note16;
              -moz-animation-duration: 0.6s;
              -moz-animation-fill-mode: forwards;
              -moz-animation-timing-function: ease-in-out;
              -moz-animation-iteration-count: 1;
              -ms-animation-name: ani_note16;
              -ms-animation-duration: 0.6s;
              -ms-animation-fill-mode: forwards;
              -ms-animation-timing-function: ease-in-out;
              -ms-animation-iteration-count: 1;
              -o-animation-name: ani_note16;
              -o-animation-duration: 0.6s;
              -o-animation-fill-mode: forwards;
              -o-animation-timing-function: ease-in-out;
              -o-animation-iteration-count: 1;
              -webkit-animation-name: ani_note16;
              -webkit-animation-duration: 0.6s;
              -webkit-animation-fill-mode: forwards;
              -webkit-animation-timing-function: ease-in-out;
              -webkit-animation-iteration-count: 1;
              animation-name: ani_note16;
              animation-duration: 0.6s;
              animation-fill-mode: forwards;
              animation-timing-function: ease-in-out;
              animation-iteration-count: 1;
              -webkit-animation-delay: 0.1s;
              -moz-animation-delay: 0.1s;
              -o-animation-delay: 0.1s;
              animation-delay: 0.1s; } }
          #header .gnav .main_menu li a.hm_btn:hover::before {
            -moz-animation-name: ani_note8;
            -moz-animation-duration: 0.6s;
            -moz-animation-fill-mode: forwards;
            -moz-animation-timing-function: ease-in-out;
            -moz-animation-iteration-count: 1;
            -ms-animation-name: ani_note8;
            -ms-animation-duration: 0.6s;
            -ms-animation-fill-mode: forwards;
            -ms-animation-timing-function: ease-in-out;
            -ms-animation-iteration-count: 1;
            -o-animation-name: ani_note8;
            -o-animation-duration: 0.6s;
            -o-animation-fill-mode: forwards;
            -o-animation-timing-function: ease-in-out;
            -o-animation-iteration-count: 1;
            -webkit-animation-name: ani_note8;
            -webkit-animation-duration: 0.6s;
            -webkit-animation-fill-mode: forwards;
            -webkit-animation-timing-function: ease-in-out;
            -webkit-animation-iteration-count: 1;
            animation-name: ani_note8;
            animation-duration: 0.6s;
            animation-fill-mode: forwards;
            animation-timing-function: ease-in-out;
            animation-iteration-count: 1; }
          #header .gnav .main_menu li a.hm_btn:hover::after {
            -moz-animation-name: ani_note16;
            -moz-animation-duration: 0.6s;
            -moz-animation-fill-mode: forwards;
            -moz-animation-timing-function: ease-in-out;
            -moz-animation-iteration-count: 1;
            -ms-animation-name: ani_note16;
            -ms-animation-duration: 0.6s;
            -ms-animation-fill-mode: forwards;
            -ms-animation-timing-function: ease-in-out;
            -ms-animation-iteration-count: 1;
            -o-animation-name: ani_note16;
            -o-animation-duration: 0.6s;
            -o-animation-fill-mode: forwards;
            -o-animation-timing-function: ease-in-out;
            -o-animation-iteration-count: 1;
            -webkit-animation-name: ani_note16;
            -webkit-animation-duration: 0.6s;
            -webkit-animation-fill-mode: forwards;
            -webkit-animation-timing-function: ease-in-out;
            -webkit-animation-iteration-count: 1;
            animation-name: ani_note16;
            animation-duration: 0.6s;
            animation-fill-mode: forwards;
            animation-timing-function: ease-in-out;
            animation-iteration-count: 1;
            -webkit-animation-delay: 0.1s;
            -moz-animation-delay: 0.1s;
            -o-animation-delay: 0.1s;
            animation-delay: 0.1s; }
          #header .gnav .main_menu li a:hover {
            color: #fb44a3;
            -webkit-transform: scale(1.1);
            -moz-transform: scale(1.1);
            -ms-transform: scale(1.1);
            -o-transform: scale(1.1);
            transform: scale(1.1); }
    #header .gnav .btn_menu {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
@media screen and (max-width: 1450px) and (min-width: 769px) {
  #header .gnav .btn_menu {
    position: fixed;
    top: 5.5em;
    left: auto;
    right: 1em;
    bottom: auto; } }

      #header .gnav .btn_menu li {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        margin-left: 0.5em;
        /* 出現アニメーション ------------------------------------------- */ }
        #header .gnav .btn_menu li a {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          display: block;
          width: 4em;
          height: 4em;
          border-radius: 50%;
          background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          -webkit-box-shadow: 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
          -moz-box-shadow: 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
          box-shadow: 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
          color: #fff;
          text-align: center;
          padding-top: 0.7em;
          /* マウスオーバー ------------------------------------------- */ }
          #header .gnav .btn_menu li a:hover {
            -webkit-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
            -moz-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
            box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
            -webkit-transform: translate(0.15em, 0.15em);
            -moz-transform: translate(0.15em, 0.15em);
            -ms-transform: translate(0.15em, 0.15em);
            -o-transform: translate(0.15em, 0.15em);
            transform: translate(0.15em, 0.15em); }
          @media screen and (max-width: 768px) {
            #header .gnav .btn_menu li a {
              width: 5em;
              height: 5em;
              padding-top: 1.1em; } }
          @media screen and (max-width: 480px) {
            #header .gnav .btn_menu li a {
              width: 5.75em;
              height: 5.75em;
              padding-top: 1.5em; } }
          #header .gnav .btn_menu li a .btn_ctt {
            /* マウスオーバー時グラデーション背景 ------------------------------------------- */
            /* アイコン ------------------------------------------- */
            /* テキスト ------------------------------------------- */ }
            #header .gnav .btn_menu li a .btn_ctt::before {
              content: "";
              display: block;
              position: absolute;
              top: 0;
              left: 0;
              right: 0;
              bottom: 0;
              margin: auto;
              background: -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
              background: -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
              background: -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
              background: linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%);
              -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
              -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
              box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
              border-radius: 50%;
              opacity: 0;
              filter: alpha(opacity=0);
              -webkit-transition: 0.3s ease;
              -moz-transition: 0.3s ease;
              -ms-transition: 0.3s ease;
              -o-transition: 0.3s ease;
              transition: 0.3s ease;
              -webkit-backface-visibility: hidden;
              backface-visibility: hidden;
              z-index: -1; }
            #header .gnav .btn_menu li a .btn_ctt .imgbox {
              width: 100%;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              display: block; }
              #header .gnav .btn_menu li a .btn_ctt .imgbox img {
                width: auto;
                height: 1.25em; }
            #header .gnav .btn_menu li a .btn_ctt .txtbox {
              display: block;
              width: 100%;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              font-size: 0.6em;
              font-weight: 700;
              line-height: 1em;
              padding-top: 0.5em; }
              @media screen and (max-width: 768px) {
                #header .gnav .btn_menu li a .btn_ctt .txtbox {
                  font-size: 0.75em; } }
              @media screen and (max-width: 480px) {
                #header .gnav .btn_menu li a .btn_ctt .txtbox {
                  padding-top: 1em; } }
          #header .gnav .btn_menu li a::before, #header .gnav .btn_menu li a::after {
            content: "";
            display: block;
            width: 0;
            height: 0;
            position: absolute;
            top: 50%;
            left: 50%;
            right: auto;
            bottom: auto;
            -webkit-transform: translate(-50%, -50%);
            -moz-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
            -o-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
            z-index: 2; }
          #header .gnav .btn_menu li a::before {
            background: url("/images/note_8th.webp") no-repeat 50% 50%/contain; }
          #header .gnav .btn_menu li a::after {
            background: url("/images/note_16th.webp") no-repeat 50% 50%/contain; }
          @media (hover: hover) {
            #header .gnav .btn_menu li a:not(.hm_btn):hover::before {
              -moz-animation-name: ani_note8;
              -moz-animation-duration: 0.6s;
              -moz-animation-fill-mode: forwards;
              -moz-animation-timing-function: ease-in-out;
              -moz-animation-iteration-count: 1;
              -ms-animation-name: ani_note8;
              -ms-animation-duration: 0.6s;
              -ms-animation-fill-mode: forwards;
              -ms-animation-timing-function: ease-in-out;
              -ms-animation-iteration-count: 1;
              -o-animation-name: ani_note8;
              -o-animation-duration: 0.6s;
              -o-animation-fill-mode: forwards;
              -o-animation-timing-function: ease-in-out;
              -o-animation-iteration-count: 1;
              -webkit-animation-name: ani_note8;
              -webkit-animation-duration: 0.6s;
              -webkit-animation-fill-mode: forwards;
              -webkit-animation-timing-function: ease-in-out;
              -webkit-animation-iteration-count: 1;
              animation-name: ani_note8;
              animation-duration: 0.6s;
              animation-fill-mode: forwards;
              animation-timing-function: ease-in-out;
              animation-iteration-count: 1; }
            #header .gnav .btn_menu li a:not(.hm_btn):hover::after {
              -moz-animation-name: ani_note16;
              -moz-animation-duration: 0.6s;
              -moz-animation-fill-mode: forwards;
              -moz-animation-timing-function: ease-in-out;
              -moz-animation-iteration-count: 1;
              -ms-animation-name: ani_note16;
              -ms-animation-duration: 0.6s;
              -ms-animation-fill-mode: forwards;
              -ms-animation-timing-function: ease-in-out;
              -ms-animation-iteration-count: 1;
              -o-animation-name: ani_note16;
              -o-animation-duration: 0.6s;
              -o-animation-fill-mode: forwards;
              -o-animation-timing-function: ease-in-out;
              -o-animation-iteration-count: 1;
              -webkit-animation-name: ani_note16;
              -webkit-animation-duration: 0.6s;
              -webkit-animation-fill-mode: forwards;
              -webkit-animation-timing-function: ease-in-out;
              -webkit-animation-iteration-count: 1;
              animation-name: ani_note16;
              animation-duration: 0.6s;
              animation-fill-mode: forwards;
              animation-timing-function: ease-in-out;
              animation-iteration-count: 1;
              -webkit-animation-delay: 0.1s;
              -moz-animation-delay: 0.1s;
              -o-animation-delay: 0.1s;
              animation-delay: 0.1s; } }
          #header .gnav .btn_menu li a.hm_btn:hover::before {
            -moz-animation-name: ani_note8;
            -moz-animation-duration: 0.6s;
            -moz-animation-fill-mode: forwards;
            -moz-animation-timing-function: ease-in-out;
            -moz-animation-iteration-count: 1;
            -ms-animation-name: ani_note8;
            -ms-animation-duration: 0.6s;
            -ms-animation-fill-mode: forwards;
            -ms-animation-timing-function: ease-in-out;
            -ms-animation-iteration-count: 1;
            -o-animation-name: ani_note8;
            -o-animation-duration: 0.6s;
            -o-animation-fill-mode: forwards;
            -o-animation-timing-function: ease-in-out;
            -o-animation-iteration-count: 1;
            -webkit-animation-name: ani_note8;
            -webkit-animation-duration: 0.6s;
            -webkit-animation-fill-mode: forwards;
            -webkit-animation-timing-function: ease-in-out;
            -webkit-animation-iteration-count: 1;
            animation-name: ani_note8;
            animation-duration: 0.6s;
            animation-fill-mode: forwards;
            animation-timing-function: ease-in-out;
            animation-iteration-count: 1; }
          #header .gnav .btn_menu li a.hm_btn:hover::after {
            -moz-animation-name: ani_note16;
            -moz-animation-duration: 0.6s;
            -moz-animation-fill-mode: forwards;
            -moz-animation-timing-function: ease-in-out;
            -moz-animation-iteration-count: 1;
            -ms-animation-name: ani_note16;
            -ms-animation-duration: 0.6s;
            -ms-animation-fill-mode: forwards;
            -ms-animation-timing-function: ease-in-out;
            -ms-animation-iteration-count: 1;
            -o-animation-name: ani_note16;
            -o-animation-duration: 0.6s;
            -o-animation-fill-mode: forwards;
            -o-animation-timing-function: ease-in-out;
            -o-animation-iteration-count: 1;
            -webkit-animation-name: ani_note16;
            -webkit-animation-duration: 0.6s;
            -webkit-animation-fill-mode: forwards;
            -webkit-animation-timing-function: ease-in-out;
            -webkit-animation-iteration-count: 1;
            animation-name: ani_note16;
            animation-duration: 0.6s;
            animation-fill-mode: forwards;
            animation-timing-function: ease-in-out;
            animation-iteration-count: 1;
            -webkit-animation-delay: 0.1s;
            -moz-animation-delay: 0.1s;
            -o-animation-delay: 0.1s;
            animation-delay: 0.1s; }
          #header .gnav .btn_menu li a:hover {
            -webkit-transform: scale(1.05, 1.05) translate(0.15em, 0.15em);
            -moz-transform: scale(1.05, 1.05) translate(0.15em, 0.15em);
            -ms-transform: scale(1.05, 1.05) translate(0.15em, 0.15em);
            -o-transform: scale(1.05, 1.05) translate(0.15em, 0.15em);
            transform: scale(1.05, 1.05) translate(0.15em, 0.15em);
            /* マウスオーバー時グラデーション背景 */ }
            @media screen and (max-width: 480px) {
              #header .gnav .btn_menu li a:hover {
                -webkit-transform: translate(0.15em, 0.15em);
                -moz-transform: translate(0.15em, 0.15em);
                -ms-transform: translate(0.15em, 0.15em);
                -o-transform: translate(0.15em, 0.15em);
                transform: translate(0.15em, 0.15em); } }
            #header .gnav .btn_menu li a:hover .btn_ctt {
              /* アイコン */ }
              #header .gnav .btn_menu li a:hover .btn_ctt::before {
                opacity: 1;
                filter: alpha(opacity=100); }
              #header .gnav .btn_menu li a:hover .btn_ctt .imgbox img {
                opacity: 1;
                filter: alpha(opacity=100); }
        #header .gnav .btn_menu li.lazyloaded {
          -moz-animation-name: ani_jmp;
          -moz-animation-duration: 1.2s;
          -moz-animation-fill-mode: forwards;
          -moz-animation-timing-function: ease-in-out;
          -moz-animation-iteration-count: 1;
          -ms-animation-name: ani_jmp;
          -ms-animation-duration: 1.2s;
          -ms-animation-fill-mode: forwards;
          -ms-animation-timing-function: ease-in-out;
          -ms-animation-iteration-count: 1;
          -o-animation-name: ani_jmp;
          -o-animation-duration: 1.2s;
          -o-animation-fill-mode: forwards;
          -o-animation-timing-function: ease-in-out;
          -o-animation-iteration-count: 1;
          -webkit-animation-name: ani_jmp;
          -webkit-animation-duration: 1.2s;
          -webkit-animation-fill-mode: forwards;
          -webkit-animation-timing-function: ease-in-out;
          -webkit-animation-iteration-count: 1;
          animation-name: ani_jmp;
          animation-duration: 1.2s;
          animation-fill-mode: forwards;
          animation-timing-function: ease-in-out;
          animation-iteration-count: 1;
          opacity: 0;
          filter: alpha(opacity=0);
          /* タイミングずらす */ }
          #header .gnav .btn_menu li.lazyloaded:nth-child(1) {
            -webkit-animation-delay: 0.6s;
            -moz-animation-delay: 0.6s;
            -o-animation-delay: 0.6s;
            animation-delay: 0.6s; }
          #header .gnav .btn_menu li.lazyloaded:nth-child(2) {
            -webkit-animation-delay: 0.7s;
            -moz-animation-delay: 0.7s;
            -o-animation-delay: 0.7s;
            animation-delay: 0.7s; }

/* =======================================================================================================================
　　　　　　　　　固定ボタン
======================================================================================================================= */
.fixbtn {
  list-style: none inside;
  /* ================= 共通 ============================================================ */ }
  @media screen and (max-width: 768px) {
    .fixbtn {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; } }
  .fixbtn li {
    padding-bottom: 0.5em;
    /* ================= ヤマハ ============================================================ */
    /* ================= ピアノ買取 ============================================================ */
    /* ================= 出現アニメーション ============================================================ */ }
    @media screen and (max-width: 768px) {
      .fixbtn li {
        padding-left: 0.5em; } }
    .fixbtn li a {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: block;
      width: 8em;
      height: 8em;
      border-radius: 50%;
      background: #fff;
      -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      text-align: center;
      color: #000;
      overflow: hidden;
      z-index: 1;
      /* -------------------------- 画像 ------------------------------------------- */
      /* -------------------------- テキスト ------------------------------------------- */
      /* -------------------------- マウスオーバー ------------------------------------------- */ }
      .fixbtn li a:hover {
        -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0 0 0 rgba(112, 112, 112, 0.3);
        -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0 0 0 rgba(112, 112, 112, 0.3);
        box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0 0 0 rgba(112, 112, 112, 0.3);
        -webkit-transform: translate(0.2em, 0.2em);
        -moz-transform: translate(0.2em, 0.2em);
        -ms-transform: translate(0.2em, 0.2em);
        -o-transform: translate(0.2em, 0.2em);
        transform: translate(0.2em, 0.2em); }
      @media screen and (max-width: 480px) {
        .fixbtn li a {
          width: 5.75em;
          height: 5.75em; } }
      .fixbtn li a .imgbox {
        display: block;
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        .fixbtn li a .imgbox img {
          height: auto; }
      .fixbtn li a .txtbox {
        display: block;
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 0.9em;
        font-weight: 700;
        line-height: 1em; }
        @media screen and (max-width: 480px) {
          .fixbtn li a .txtbox {
            font-size: 0.8em; } }
      .fixbtn li a:hover {
        /* 画像 ------------------------------------------- */ }
        .fixbtn li a:hover .imgbox img {
          opacity: 1;
          filter: alpha(opacity=100); }
    .fixbtn li.btn_yamaha a {
      /* -------------------------- 画像 ------------------------------------------- */ }
      .fixbtn li.btn_yamaha a .imgbox {
        padding-top: 1em; }
@media screen and (max-width: 1120px) and (min-width: 769px) {
  .fixbtn li.btn_yamaha a .imgbox::before {
    display: block;
    content: "YAMAHA";
    font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: 600;
    font-style: italic;
    font-size: 2em;
    font-weight: 800;
    font-style: normal;
    line-height: 1em;
    padding-top: 0.75em;
    padding-bottom: 0; } }

  @media screen and (max-width: 1120px) and (min-width: 769px) and (max-width: 480px) {
    .fixbtn li.btn_yamaha a .imgbox::before {
      padding-top: 0.3em; } }

        @media screen and (max-width: 540px) {
          .fixbtn li.btn_yamaha a .imgbox::before {
            display: block;
            content: "YAMAHA";
            font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
            font-weight: 600;
            font-style: italic;
            font-size: 2em;
            font-weight: 800;
            font-style: normal;
            line-height: 1em;
            padding-top: 0.75em;
            padding-bottom: 0; } }
  @media screen and (max-width: 540px) and (max-width: 480px) {
    .fixbtn li.btn_yamaha a .imgbox::before {
      padding-top: 0.3em; } }

        .fixbtn li.btn_yamaha a .imgbox img {
          width: 5em; }
@media screen and (max-width: 1120px) and (min-width: 769px) {
  .fixbtn li.btn_yamaha a .imgbox img {
    display: none; } }

          @media screen and (max-width: 540px) {
            .fixbtn li.btn_yamaha a .imgbox img {
              display: none; } }
    .fixbtn li.btn_piano a {
      /* -------------------------- 画像 ------------------------------------------- */ }
      .fixbtn li.btn_piano a .imgbox img {
        width: 100%;
        mix-blend-mode: multiply; }
        @media screen and (max-width: 480px) {
          .fixbtn li.btn_piano a .imgbox img {
            width: 89%; } }
    .fixbtn li.lazyloaded {
      -moz-animation-name: ani_jmp;
      -moz-animation-duration: 1.2s;
      -moz-animation-fill-mode: forwards;
      -moz-animation-timing-function: ease-in-out;
      -moz-animation-iteration-count: 1;
      -ms-animation-name: ani_jmp;
      -ms-animation-duration: 1.2s;
      -ms-animation-fill-mode: forwards;
      -ms-animation-timing-function: ease-in-out;
      -ms-animation-iteration-count: 1;
      -o-animation-name: ani_jmp;
      -o-animation-duration: 1.2s;
      -o-animation-fill-mode: forwards;
      -o-animation-timing-function: ease-in-out;
      -o-animation-iteration-count: 1;
      -webkit-animation-name: ani_jmp;
      -webkit-animation-duration: 1.2s;
      -webkit-animation-fill-mode: forwards;
      -webkit-animation-timing-function: ease-in-out;
      -webkit-animation-iteration-count: 1;
      animation-name: ani_jmp;
      animation-duration: 1.2s;
      animation-fill-mode: forwards;
      animation-timing-function: ease-in-out;
      animation-iteration-count: 1;
      opacity: 0;
      filter: alpha(opacity=0);
      /* タイミングずらす ------------------------------------------- */ }
      .fixbtn li.lazyloaded:nth-child(1) {
        -webkit-animation-delay: 0.1s;
        -moz-animation-delay: 0.1s;
        -o-animation-delay: 0.1s;
        animation-delay: 0.1s; }
        #front-page .fixbtn li.lazyloaded:nth-child(1) {
          -webkit-animation-delay: 0.6s;
          -moz-animation-delay: 0.6s;
          -o-animation-delay: 0.6s;
          animation-delay: 0.6s; }
      .fixbtn li.lazyloaded:nth-child(2) {
        -webkit-animation-delay: 0.2s;
        -moz-animation-delay: 0.2s;
        -o-animation-delay: 0.2s;
        animation-delay: 0.2s; }
        #front-page .fixbtn li.lazyloaded:nth-child(2) {
          -webkit-animation-delay: 0.7s;
          -moz-animation-delay: 0.7s;
          -o-animation-delay: 0.7s;
          animation-delay: 0.7s; }

/* =======================================================================================================================
　　　　　　　　　スマートフォンナビゲーション
======================================================================================================================= */
/* ================= 格納ナビゲーション ============================================================ */
.hm_btn, .hm_menu_wrap {
  display: none; }
  @media screen and (max-width: 768px) {
    .hm_btn, .hm_menu_wrap {
      display: block; } }

.hm_menu_check {
  /* チェックボックスを隠す */
  display: none; }

/* -------------------------- メニューボタン ------------------------------------------- */
.hm_btn {
  width: 5em;
  height: 5em;
  position: fixed;
  top: 1em;
  left: auto;
  right: 1em;
  bottom: auto;
  box-sizing: border-box;
  padding: 1.9em 1.835em;
  border-radius: 50%;
  background: -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
  background: -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
  background: -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
  background: linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%);
  -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
  -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
  box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
  cursor: pointer;
  z-index: 99999;
  -webkit-transition: 0.3s ease;
  -moz-transition: 0.3s ease;
  -ms-transition: 0.3s ease;
  -o-transition: 0.3s ease;
  transition: 0.3s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  /* 三本線 */ }
  .hm_btn::before, .hm_btn::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    right: auto;
    bottom: auto;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 2; }
  .hm_btn::before {
    background: url("/images/note_8th.webp") no-repeat 50% 50%/contain; }
  .hm_btn::after {
    background: url("/images/note_16th.webp") no-repeat 50% 50%/contain; }
  @media (hover: hover) {
    .hm_btn:not(.hm_btn):hover::before {
      -moz-animation-name: ani_note8;
      -moz-animation-duration: 0.6s;
      -moz-animation-fill-mode: forwards;
      -moz-animation-timing-function: ease-in-out;
      -moz-animation-iteration-count: 1;
      -ms-animation-name: ani_note8;
      -ms-animation-duration: 0.6s;
      -ms-animation-fill-mode: forwards;
      -ms-animation-timing-function: ease-in-out;
      -ms-animation-iteration-count: 1;
      -o-animation-name: ani_note8;
      -o-animation-duration: 0.6s;
      -o-animation-fill-mode: forwards;
      -o-animation-timing-function: ease-in-out;
      -o-animation-iteration-count: 1;
      -webkit-animation-name: ani_note8;
      -webkit-animation-duration: 0.6s;
      -webkit-animation-fill-mode: forwards;
      -webkit-animation-timing-function: ease-in-out;
      -webkit-animation-iteration-count: 1;
      animation-name: ani_note8;
      animation-duration: 0.6s;
      animation-fill-mode: forwards;
      animation-timing-function: ease-in-out;
      animation-iteration-count: 1; }
    .hm_btn:not(.hm_btn):hover::after {
      -moz-animation-name: ani_note16;
      -moz-animation-duration: 0.6s;
      -moz-animation-fill-mode: forwards;
      -moz-animation-timing-function: ease-in-out;
      -moz-animation-iteration-count: 1;
      -ms-animation-name: ani_note16;
      -ms-animation-duration: 0.6s;
      -ms-animation-fill-mode: forwards;
      -ms-animation-timing-function: ease-in-out;
      -ms-animation-iteration-count: 1;
      -o-animation-name: ani_note16;
      -o-animation-duration: 0.6s;
      -o-animation-fill-mode: forwards;
      -o-animation-timing-function: ease-in-out;
      -o-animation-iteration-count: 1;
      -webkit-animation-name: ani_note16;
      -webkit-animation-duration: 0.6s;
      -webkit-animation-fill-mode: forwards;
      -webkit-animation-timing-function: ease-in-out;
      -webkit-animation-iteration-count: 1;
      animation-name: ani_note16;
      animation-duration: 0.6s;
      animation-fill-mode: forwards;
      animation-timing-function: ease-in-out;
      animation-iteration-count: 1;
      -webkit-animation-delay: 0.1s;
      -moz-animation-delay: 0.1s;
      -o-animation-delay: 0.1s;
      animation-delay: 0.1s; } }
  .hm_btn.hm_btn:hover::before {
    -moz-animation-name: ani_note8;
    -moz-animation-duration: 0.6s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: 1;
    -ms-animation-name: ani_note8;
    -ms-animation-duration: 0.6s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: 1;
    -o-animation-name: ani_note8;
    -o-animation-duration: 0.6s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: 1;
    -webkit-animation-name: ani_note8;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: 1;
    animation-name: ani_note8;
    animation-duration: 0.6s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1; }
  .hm_btn.hm_btn:hover::after {
    -moz-animation-name: ani_note16;
    -moz-animation-duration: 0.6s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-iteration-count: 1;
    -ms-animation-name: ani_note16;
    -ms-animation-duration: 0.6s;
    -ms-animation-fill-mode: forwards;
    -ms-animation-timing-function: ease-in-out;
    -ms-animation-iteration-count: 1;
    -o-animation-name: ani_note16;
    -o-animation-duration: 0.6s;
    -o-animation-fill-mode: forwards;
    -o-animation-timing-function: ease-in-out;
    -o-animation-iteration-count: 1;
    -webkit-animation-name: ani_note16;
    -webkit-animation-duration: 0.6s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: 1;
    animation-name: ani_note16;
    animation-duration: 0.6s;
    animation-fill-mode: forwards;
    animation-timing-function: ease-in-out;
    animation-iteration-count: 1;
    -webkit-animation-delay: 0.1s;
    -moz-animation-delay: 0.1s;
    -o-animation-delay: 0.1s;
    animation-delay: 0.1s; }
  .hm_btn:hover {
    -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(112, 112, 112, 0.3);
    -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(112, 112, 112, 0.3);
    box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(112, 112, 112, 0.3);
    -webkit-transform: translate(0.15em, 0.15em);
    -moz-transform: translate(0.15em, 0.15em);
    -ms-transform: translate(0.15em, 0.15em);
    -o-transform: translate(0.15em, 0.15em);
    transform: translate(0.15em, 0.15em);
    -webkit-transform: scale(1.05, 1.05) translate(0.15em, 0.15em);
    -moz-transform: scale(1.05, 1.05) translate(0.15em, 0.15em);
    -ms-transform: scale(1.05, 1.05) translate(0.15em, 0.15em);
    -o-transform: scale(1.05, 1.05) translate(0.15em, 0.15em);
    transform: scale(1.05, 1.05) translate(0.15em, 0.15em); }
  .hm_btn .hm_bar {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 1.33em;
    height: 1.2em; }
    .hm_btn .hm_bar::before, .hm_btn .hm_bar::after {
      width: 1.33em;
      height: 0.13em;
      background: #fff;
      display: block;
      content: '';
      position: absolute;
      -webkit-transition: -webkit-background 0.2s linear, -webkit-box-shadow 0.2s linear, -webkit-transform 0.2s 0.2s;
      transition: background 0.2s linear, box-shadow 0.2s linear, transform 0.2s 0.2s; }
    .hm_btn .hm_bar::before {
      -webkit-box-shadow: #fff 0 0.532em 0;
      box-shadow: #fff 0 0.532em 0; }
    .hm_btn .hm_bar::after {
      bottom: 0; }

/* 開閉時のアニメーション */
.hm_menu_check:checked ~ .hm_btn .hm_bar::before {
  background: rgba(0, 0, 0, 0);
  -webkit-box-shadow: #fff 0 0.532em 0;
  box-shadow: #fff 0 0.532em 0;
  -webkit-transform: rotate(45deg) translate3d(0.166em, 0.2em, 0);
  transform: rotate(45deg) translate3d(0.5em, -0.25em, 0); }
.hm_menu_check:checked ~ .hm_btn .hm_bar::after {
  background: #fff;
  -webkit-transform: rotate(-45deg) translate3d(0.166em, -0.2em, 0);
  transform: rotate(-45deg) translate3d(0.5em, -0.25em, 0); }

/* -------------------------- 格納領域 ------------------------------------------- */
.hm_menu_wrap {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  background: -webkit-linear-gradient(135deg, rgba(10, 208, 250, 0.9) 0, rgba(251, 68, 163, 0.9) 100%);
  background: -moz-linear-gradient(135deg, rgba(10, 208, 250, 0.9) 0, rgba(251, 68, 163, 0.9) 100%);
  background: -o-linear-gradient(135deg, rgba(10, 208, 250, 0.9) 0, rgba(251, 68, 163, 0.9) 100%);
  background: linear-gradient(-45deg, rgba(10, 208, 250, 0.9) 0, rgba(251, 68, 163, 0.9) 100%);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  box-sizing: border-box;
  overflow: hidden;
  visibility: hidden;
  -webkit-transition: 0.7s ease;
  -moz-transition: 0.7s ease;
  -ms-transition: 0.7s ease;
  -o-transition: 0.7s ease;
  transition: 0.7s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 9999; }
  .hm_menu_wrap .hm_inner {
    position: absolute;
    top: 0;
    left: 0;
    right: -19px;
    bottom: 0;
    margin: auto;
    overflow-x: hidden;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center; }
    .hm_menu_wrap .hm_inner .menucontent {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      width: 100vw;
      padding: 5em 0;
      -webkit-transition: 0.7s ease;
      -moz-transition: 0.7s ease;
      -ms-transition: 0.7s ease;
      -o-transition: 0.7s ease;
      transition: 0.7s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      /* 中身デザイン ------------------------------------------- */
      /* 白背景テキストエリア */
      /* イラスト */ }
      .hm_menu_wrap .hm_inner .menucontent .txtbox {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 90%;
        margin: auto;
        border-radius: 50%;
        background: #fff;
        -webkit-transition: 0.7s ease;
        -moz-transition: 0.7s ease;
        -ms-transition: 0.7s ease;
        -o-transition: 0.7s ease;
        transition: 0.7s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        -webkit-transform: scale(0);
        -moz-transform: scale(0);
        -ms-transform: scale(0);
        -o-transform: scale(0);
        transform: scale(0);
        /* グローバルナビゲーション */ }
        .hm_menu_wrap .hm_inner .menucontent .txtbox::before {
          content: "";
          display: block;
          padding-top: 100%; }
        @media screen and (max-width: 480px) {
          .hm_menu_wrap .hm_inner .menucontent .txtbox {
            width: 130%;
            margin-left: -15%;
            margin-top: -8em; } }
        .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav {
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          margin: auto;
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -ms-flex-align: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
          align-items: center;
          -ms-flex-pack: center;
          -webkit-box-pack: center;
          -webkit-justify-content: center;
          justify-content: center; }
          .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu {
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            list-style: none inside; }
            .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu li {
              width: 100%;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              font-size: 1.1em;
              line-height: 1em;
              padding-bottom: 2em; }
              @media screen and (max-width: 480px) {
                .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu li {
                  font-size: 1.2em;
                  padding-bottom: 1.5em; } }
              .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu li a {
                position: relative;
                -webkit-box-sizing: border-box;
                -moz-box-sizing: border-box;
                box-sizing: border-box;
                margin-left: -2em;
                padding-left: 2.75em;
                color: #000;
                font-weight: 700; }
                .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu li a::after {
                  content: "";
                  display: block;
                  width: 2.5rem;
                  height: 2.5rem;
                  border-radius: 50%;
                  -webkit-transition: 0.3s ease;
                  -moz-transition: 0.3s ease;
                  -ms-transition: 0.3s ease;
                  -o-transition: 0.3s ease;
                  transition: 0.3s ease;
                  -webkit-backface-visibility: hidden;
                  backface-visibility: hidden;
                  background: #fb44a3;
                  -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2);
                  -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2);
                  box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2);
                  background: #fb44a3 url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto; }
                  @media screen and (max-width: 480px) {
                    .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu li a::after {
                      width: 1.5rem;
                      height: 1.5rem; } }
                  @media screen and (max-width: 480px) {
                    .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu li a::after {
                      background-size: 0.7em auto; } }
                @media screen and (max-width: 480px) {
                  .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu li a {
                    margin-left: 0;
                    padding-left: 1.75em; } }
                .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu li a::after {
                  position: absolute;
                  top: -0.3em;
                  left: 0;
                  right: auto;
                  bottom: auto; }
                  @media screen and (max-width: 480px) {
                    .hm_menu_wrap .hm_inner .menucontent .txtbox .gnav .main_menu li a::after {
                      top: 0.2em; } }
      .hm_menu_wrap .hm_inner .menucontent .imgbox {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        list-style: none inside; }
        @media screen and (max-width: 480px) {
          .hm_menu_wrap .hm_inner .menucontent .imgbox {
            font-size: 0.7em; } }
        .hm_menu_wrap .hm_inner .menucontent .imgbox li {
          -webkit-transition: 0.7s ease;
          -moz-transition: 0.7s ease;
          -ms-transition: 0.7s ease;
          -o-transition: 0.7s ease;
          transition: 0.7s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
          .hm_menu_wrap .hm_inner .menucontent .imgbox li img {
            width: 100%;
            height: auto;
            -webkit-filter: drop-shadow(0.7em 0.7em 0.3em rgba(0, 0, 0, 0.07));
            filter: drop-shadow(0.7em 0.7em 0.3em rgba(0, 0, 0, 0.07)); }
          .hm_menu_wrap .hm_inner .menucontent .imgbox li.rabbit {
            -webkit-transform-origin: 0 100%;
            -moz-transform-origin: 0 100%;
            -ms-transform-origin: 0 100%;
            -o-transform-origin: 0 100%;
            transform-origin: 0 100%;
            width: 15em;
            position: absolute;
            top: -17.5em;
            left: -8.5em;
            right: auto;
            bottom: auto;
            -webkit-transform: rotate(10deg);
            -moz-transform: rotate(10deg);
            -ms-transform: rotate(10deg);
            -o-transform: rotate(10deg);
            transform: rotate(10deg); }
            @media screen and (max-width: 480px) {
              .hm_menu_wrap .hm_inner .menucontent .imgbox li.rabbit {
                top: -19em; } }
          .hm_menu_wrap .hm_inner .menucontent .imgbox li.dog {
            -webkit-transform-origin: 100% 100%;
            -moz-transform-origin: 100% 100%;
            -ms-transform-origin: 100% 100%;
            -o-transform-origin: 100% 100%;
            transform-origin: 100% 100%;
            width: 17em;
            position: absolute;
            top: -20em;
            left: auto;
            right: -8em;
            bottom: auto;
            -webkit-transform: rotate(-20deg);
            -moz-transform: rotate(-20deg);
            -ms-transform: rotate(-20deg);
            -o-transform: rotate(-20deg);
            transform: rotate(-20deg); }
            @media screen and (max-width: 480px) {
              .hm_menu_wrap .hm_inner .menucontent .imgbox li.dog {
                top: -22em;
                right: -10.5em; } }

/* 開閉時のアニメーション */
.hm_menu_check:checked ~ .hm_menu_wrap {
  opacity: 1;
  filter: alpha(opacity=100);
  visibility: visible; }
  .hm_menu_check:checked ~ .hm_menu_wrap .menucontent {
    opacity: 1;
    filter: alpha(opacity=100);
    /* 白背景テキストエリア */
    /* イラスト */ }
    .hm_menu_check:checked ~ .hm_menu_wrap .menucontent .txtbox {
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1); }
    .hm_menu_check:checked ~ .hm_menu_wrap .menucontent .imgbox li.dog {
      -webkit-transform: rotate(-55deg);
      -moz-transform: rotate(-55deg);
      -ms-transform: rotate(-55deg);
      -o-transform: rotate(-55deg);
      transform: rotate(-55deg); }
    .hm_menu_check:checked ~ .hm_menu_wrap .menucontent .imgbox li.rabbit {
      -webkit-transform: rotate(40deg);
      -moz-transform: rotate(40deg);
      -ms-transform: rotate(40deg);
      -o-transform: rotate(40deg);
      transform: rotate(40deg); }

/* =======================================================================================================================
　　　　　　　　　フッター
======================================================================================================================= */
#footer .footer_sec {
  background: #313131;
  color: #eeeeee;
  /* ================= フッター上部 ============================================================ */
  /* -------------------------- フッターメニュー ------------------------------------------- */
  /* -------------------------- お問い合わせ ------------------------------------------- */
  /* -------------------------- イラスト ------------------------------------------- */
  /* ================= フッター下部 ============================================================ */ }
  #footer .footer_sec .fnav {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background: #434343;
    border-radius: 1em;
    padding: 5em;
    margin-bottom: 5em;
    /* リンク色 */
    /* メニュー共通 ------------------------------------------- */ }
    @media screen and (max-width: 1450px) {
      #footer .footer_sec .fnav {
        padding: 2.5em; } }
    @media screen and (max-width: 480px) {
      #footer .footer_sec .fnav {
        margin-bottom: 2.5em; } }
    #footer .footer_sec .fnav a {
      color: #eeeeee; }
      #footer .footer_sec .fnav a:hover {
        color: #fff;
        text-decoration: underline; }
    #footer .footer_sec .fnav ul {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside;
      /* 親メニュー */ }
      #footer .footer_sec .fnav ul li {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        white-space: nowrap; }
        #footer .footer_sec .fnav ul li a {
          display: inline-block;
          margin-top: 1em; }
      #footer .footer_sec .fnav ul.main_menu {
        width: 100%;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; }
        @media screen and (max-width: 768px) {
          #footer .footer_sec .fnav ul.main_menu {
            margin-top: -1em; } }
  @media screen and (max-width: 768px) and (min-width: 481px) {
    #footer .footer_sec .fnav ul.main_menu {
      font-size: 0.9em; } }

        #footer .footer_sec .fnav ul.main_menu > li {
          font-weight: 700;
          line-height: 1.2em;
          margin-right: 3.5em;
          margin-top: -1em;
          /* 子メニュー */ }
          @media screen and (max-width: 1450px) {
            #footer .footer_sec .fnav ul.main_menu > li {
              margin-right: 1.5em; } }
          #footer .footer_sec .fnav ul.main_menu > li:last-child {
            margin-right: 0; }
          @media screen and (max-width: 768px) {
            #footer .footer_sec .fnav ul.main_menu > li {
              width: 50%;
              margin-top: 1em;
              margin-right: 0; } }
          @media screen and (max-width: 480px) {
            #footer .footer_sec .fnav ul.main_menu > li {
              width: 100%;
              margin-top: 0; }
              #footer .footer_sec .fnav ul.main_menu > li:last-child {
                border-top: #898989 dashed 1px;
                margin-top: 1.5em;
                padding-top: 0.5em; } }
          #footer .footer_sec .fnav ul.main_menu > li .sub_menu1 {
            padding-left: 0.5em; }
            #footer .footer_sec .fnav ul.main_menu > li .sub_menu1 > li {
              font-size: 0.9em;
              font-weight: 500;
              line-height: 1.2em;
              /* 孫メニュー */ }
              #footer .footer_sec .fnav ul.main_menu > li .sub_menu1 > li a {
                color: #d2d2d2;
                margin-top: 1.1em; }
                #footer .footer_sec .fnav ul.main_menu > li .sub_menu1 > li a:hover {
                  color: #fff; }
              #footer .footer_sec .fnav ul.main_menu > li .sub_menu1 > li .sub_menu2 li {
                font-size: 0.8rem;
                font-weight: 200;
                line-height: 1.2em; }
                #footer .footer_sec .fnav ul.main_menu > li .sub_menu1 > li .sub_menu2 li a {
                  margin-top: 0.5em; }
  #footer .footer_sec .contact_btn {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    /* テキスト ------------------------------------------- */
    /* ボタンマウスオーバー ------------------------------------------- */ }
    @media screen and (max-width: 480px) {
      #footer .footer_sec .contact_btn {
        padding-bottom: 2.5em; } }
    #footer .footer_sec .contact_btn p {
      color: #fff;
      line-height: 1.25em;
      padding-bottom: 1em; }
      @media screen and (max-width: 480px) {
        #footer .footer_sec .contact_btn p {
          font-size: 0.9em; } }
    @media screen and (min-width: 769px) {
      #footer .footer_sec .contact_btn:has(.bg_btn a:hover) + .illust .imgbox {
        -webkit-transition: 0.7s ease;
        -moz-transition: 0.7s ease;
        -ms-transition: 0.7s ease;
        -o-transition: 0.7s ease;
        transition: 0.7s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden; }
        #footer .footer_sec .contact_btn:has(.bg_btn a:hover) + .illust .imgbox.lazyloaded {
          /* 犬の動き */
          /* 猫の動き */ }
          #footer .footer_sec .contact_btn:has(.bg_btn a:hover) + .illust .imgbox.lazyloaded.dog {
            -webkit-transform: rotate(-15deg);
            -moz-transform: rotate(-15deg);
            -ms-transform: rotate(-15deg);
            -o-transform: rotate(-15deg);
            transform: rotate(-15deg); }
          #footer .footer_sec .contact_btn:has(.bg_btn a:hover) + .illust .imgbox.lazyloaded.cat {
            -webkit-transform: rotate(15deg);
            -moz-transform: rotate(15deg);
            -ms-transform: rotate(15deg);
            -o-transform: rotate(15deg);
            transform: rotate(15deg); } }
  #footer .footer_sec .illust {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside;
    pointer-events: none; }
    #footer .footer_sec .illust .imgbox {
      position: absolute;
      top: -1.8em;
      /* 犬 ------------------------------------------- */
      /* 猫 ------------------------------------------- */ }
      @media screen and (min-width: 769px) {
        #footer .footer_sec .illust .imgbox {
          -webkit-transition: 0.7s ease;
          -moz-transition: 0.7s ease;
          -ms-transition: 0.7s ease;
          -o-transition: 0.7s ease;
          transition: 0.7s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden; } }
      @media screen and (max-width: 480px) {
        #footer .footer_sec .illust .imgbox {
          top: -3em; } }
      #footer .footer_sec .illust .imgbox img {
        width: 100%;
        height: auto;
        -webkit-filter: drop-shadow(0.35em 0.35em 0.5em rgba(0, 0, 0, 0.2));
        filter: drop-shadow(0.35em 0.35em 0.5em rgba(0, 0, 0, 0.2)); }
      #footer .footer_sec .illust .imgbox.dog {
        width: 10em;
        right: calc( 50% + 11em );
        -webkit-transform-origin: 30% 100%;
        -moz-transform-origin: 30% 100%;
        -ms-transform-origin: 30% 100%;
        -o-transform-origin: 30% 100%;
        transform-origin: 30% 100%;
        /* 出現アニメーション */ }
        @media screen and (max-width: 768px) {
          #footer .footer_sec .illust .imgbox.dog {
            right: calc( 50% + 9.3em ); } }
        @media screen and (max-width: 480px) {
          #footer .footer_sec .illust .imgbox.dog {
            width: 8em;
            right: calc( 50% + 4.5em ); } }
        @media screen and (max-width: 768px) {
          #footer .footer_sec .illust .imgbox.dog.lazyloaded {
            -moz-animation-name: ani_dnc;
            -moz-animation-duration: 2s;
            -moz-animation-fill-mode: forwards;
            -moz-animation-timing-function: ease-in-out;
            -moz-animation-iteration-count: infinite;
            -ms-animation-name: ani_dnc;
            -ms-animation-duration: 2s;
            -ms-animation-fill-mode: forwards;
            -ms-animation-timing-function: ease-in-out;
            -ms-animation-iteration-count: infinite;
            -o-animation-name: ani_dnc;
            -o-animation-duration: 2s;
            -o-animation-fill-mode: forwards;
            -o-animation-timing-function: ease-in-out;
            -o-animation-iteration-count: infinite;
            -webkit-animation-name: ani_dnc;
            -webkit-animation-duration: 2s;
            -webkit-animation-fill-mode: forwards;
            -webkit-animation-timing-function: ease-in-out;
            -webkit-animation-iteration-count: infinite;
            animation-name: ani_dnc;
            animation-duration: 2s;
            animation-fill-mode: forwards;
            animation-timing-function: ease-in-out;
            animation-iteration-count: infinite;
            -webkit-transform: rotate(-5deg);
            -moz-transform: rotate(-5deg);
            -o-transform: rotate(-5deg);
            transform: rotate(-5deg); } }
        #footer .footer_sec .illust .imgbox.dog img {
          -webkit-transform-origin: 30% 100%;
          -moz-transform-origin: 30% 100%;
          -ms-transform-origin: 30% 100%;
          -o-transform-origin: 30% 100%;
          transform-origin: 30% 100%;
          -webkit-transform: rotate(90deg);
          -moz-transform: rotate(90deg);
          -ms-transform: rotate(90deg);
          -o-transform: rotate(90deg);
          transform: rotate(90deg); }
          #footer .footer_sec .illust .imgbox.dog img.lazyloaded {
            -webkit-transform: rotate(0deg);
            -moz-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
            -o-transform: rotate(0deg);
            transform: rotate(0deg); }
      #footer .footer_sec .illust .imgbox.cat {
        width: 7em;
        left: calc( 50% + 13.5em );
        -webkit-transform-origin: 50% 100%;
        -moz-transform-origin: 50% 100%;
        -ms-transform-origin: 50% 100%;
        -o-transform-origin: 50% 100%;
        transform-origin: 50% 100%;
        /* 出現アニメーション */ }
        @media screen and (max-width: 768px) {
          #footer .footer_sec .illust .imgbox.cat {
            left: calc( 50% + 12em ); } }
        @media screen and (max-width: 480px) {
          #footer .footer_sec .illust .imgbox.cat {
            width: 5.6em;
            left: calc( 50% + 6.5em ); } }
        @media screen and (max-width: 768px) {
          #footer .footer_sec .illust .imgbox.cat.lazyloaded {
            -moz-animation-name: ani_dnc2;
            -moz-animation-duration: 2s;
            -moz-animation-fill-mode: forwards;
            -moz-animation-timing-function: ease-in-out;
            -moz-animation-iteration-count: infinite;
            -ms-animation-name: ani_dnc2;
            -ms-animation-duration: 2s;
            -ms-animation-fill-mode: forwards;
            -ms-animation-timing-function: ease-in-out;
            -ms-animation-iteration-count: infinite;
            -o-animation-name: ani_dnc2;
            -o-animation-duration: 2s;
            -o-animation-fill-mode: forwards;
            -o-animation-timing-function: ease-in-out;
            -o-animation-iteration-count: infinite;
            -webkit-animation-name: ani_dnc2;
            -webkit-animation-duration: 2s;
            -webkit-animation-fill-mode: forwards;
            -webkit-animation-timing-function: ease-in-out;
            -webkit-animation-iteration-count: infinite;
            animation-name: ani_dnc2;
            animation-duration: 2s;
            animation-fill-mode: forwards;
            animation-timing-function: ease-in-out;
            animation-iteration-count: infinite;
            -webkit-transform: rotate(5deg);
            -moz-transform: rotate(5deg);
            -o-transform: rotate(5deg);
            transform: rotate(5deg); } }
        #footer .footer_sec .illust .imgbox.cat img {
          -webkit-transform-origin: 50% 100%;
          -moz-transform-origin: 50% 100%;
          -ms-transform-origin: 50% 100%;
          -o-transform-origin: 50% 100%;
          transform-origin: 50% 100%;
          -webkit-transform: rotate(-90deg);
          -moz-transform: rotate(-90deg);
          -ms-transform: rotate(-90deg);
          -o-transform: rotate(-90deg);
          transform: rotate(-90deg); }
          #footer .footer_sec .illust .imgbox.cat img.lazyloaded {
            -webkit-transform: rotate(0deg);
            -moz-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
            -o-transform: rotate(0deg);
            transform: rotate(0deg); }
  #footer .footer_sec.footer_bottoms {
    background: #000; }
    @media screen and (max-width: 480px) {
      #footer .footer_sec.footer_bottoms {
        padding-bottom: 10em; } }
    #footer .footer_sec.footer_bottoms .innerbox2 {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center;
      /* ロゴ ------------------------------------------- */
      /* 会社情報 ------------------------------------------- */
      /* SNS ------------------------------------------- */
      /* コピーライト ------------------------------------------- */ }
      #footer .footer_sec.footer_bottoms .innerbox2 > div {
        padding-right: 3.75em;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        @media screen and (max-width: 768px) {
          #footer .footer_sec.footer_bottoms .innerbox2 > div {
            padding-right: 1.5em; } }
        @media screen and (max-width: 480px) {
          #footer .footer_sec.footer_bottoms .innerbox2 > div {
            width: 100%;
            text-align: center;
            padding-right: 0; } }
      #footer .footer_sec.footer_bottoms .innerbox2 .logo {
        width: 10em; }
        @media screen and (max-width: 480px) {
          #footer .footer_sec.footer_bottoms .innerbox2 .logo {
            margin: auto;
            padding-bottom: 1.5em; } }
        #footer .footer_sec.footer_bottoms .innerbox2 .logo img {
          width: 100%;
          height: auto; }
      #footer .footer_sec.footer_bottoms .innerbox2 .info_box {
        /* 会社名 */
        /* 本社住所 */
        /* TEL/FAX */ }
        #footer .footer_sec.footer_bottoms .innerbox2 .info_box h2 {
          font-size: 0.85em;
          font-weight: 700;
          line-height: 1em;
          padding-bottom: 0.5em; }
        #footer .footer_sec.footer_bottoms .innerbox2 .info_box .ad {
          font-size: 0.85em;
          font-weight: 400;
          line-height: 1em;
          padding-bottom: 1em; }
          #footer .footer_sec.footer_bottoms .innerbox2 .info_box .ad::before {
            content: "本社：";
            font-weight: 700; }
        #footer .footer_sec.footer_bottoms .innerbox2 .info_box .tel {
          font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
          font-weight: 600;
          font-style: italic;
          font-size: 1.5em;
          font-weight: 800;
          line-height: 1em;
          padding-bottom: 0; }
          #footer .footer_sec.footer_bottoms .innerbox2 .info_box .tel a {
            font-style: normal;
            color: #eeeeee; }
          #footer .footer_sec.footer_bottoms .innerbox2 .info_box .tel .fax {
            font-size: 0.83em; }
            #footer .footer_sec.footer_bottoms .innerbox2 .info_box .tel .fax::before {
              content: "/";
              padding: 0 0.2em; }
      #footer .footer_sec.footer_bottoms .innerbox2 .sns_box {
        /* 見出し */
        /* 説明 */ }
        @media screen and (max-width: 768px) {
          #footer .footer_sec.footer_bottoms .innerbox2 .sns_box {
            padding-top: 1.5em; } }
        #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_hd {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box; }
          @media screen and (min-width: 481px) {
            #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_hd {
              display: -ms-flexbox;
              display: -webkit-box;
              display: -webkit-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              flex-wrap: wrap;
              -webkit-box-align: end;
              -webkit-align-items: flex-end;
              -moz-box-align: end;
              -ms-flex-align: end;
              align-items: flex-end; } }
          #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_hd .eg {
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
            font-weight: 600;
            font-style: italic;
            font-size: 1.5em;
            line-height: 1em;
            padding-right: 0.5em;
            bottom: -0.1em; }
            @media screen and (max-width: 480px) {
              #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_hd .eg {
                padding-right: 0;
                padding-bottom: 0.25em; } }
          #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_hd h3 {
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            font-size: 0.7em;
            font-weight: 400;
            line-height: 1em; }
        #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          -webkit-box-pack: end;
          -webkit-justify-content: flex-end;
          -moz-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end;
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          -ms-flex-direction: row-reverse;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: reverse;
          -webkit-flex-direction: row-reverse;
          flex-direction: row-reverse;
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -ms-flex-align: center;
          -webkit-box-align: center;
          -webkit-align-items: center;
          align-items: center;
          padding-top: 0.7em; }
          @media screen and (max-width: 480px) {
            #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt {
              display: -ms-flexbox;
              display: -webkit-box;
              display: -webkit-flex;
              display: flex;
              -webkit-flex-wrap: wrap;
              flex-wrap: wrap;
              -ms-flex-direction: column-reverse;
              -webkit-box-orient: vertical;
              -webkit-box-direction: reverse;
              -webkit-flex-direction: column-reverse;
              flex-direction: column-reverse; } }
          #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .txt {
            font-size: 0.7em;
            font-weight: 400;
            color: #b5b5b5;
            line-height: 1.5em;
            padding-bottom: 0;
            padding-left: 2em; }
            @media screen and (max-width: 480px) {
              #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .txt {
                padding-left: 0;
                padding-top: 1em; } }
          #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link {
            padding-bottom: 0;
            line-height: 1em; }
            #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a {
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
              font-weight: 600;
              font-style: italic;
              font-weight: 700;
              line-height: 1em;
              display: inline-block;
              background: #fff;
              color: #000;
              height: 2em;
              padding: 0.6em 3em 0.4em;
              border-radius: 1em;
              -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.1);
              -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.1);
              box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.1); }
              #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a::before, #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a::after {
                content: "";
                display: block;
                width: 0;
                height: 0;
                position: absolute;
                top: 50%;
                left: 50%;
                right: auto;
                bottom: auto;
                -webkit-transform: translate(-50%, -50%);
                -moz-transform: translate(-50%, -50%);
                -ms-transform: translate(-50%, -50%);
                -o-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
                z-index: 2; }
              #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a::before {
                background: url("/images/note_8th.webp") no-repeat 50% 50%/contain; }
              #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a::after {
                background: url("/images/note_16th.webp") no-repeat 50% 50%/contain; }
              @media (hover: hover) {
                #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a:not(.hm_btn):hover::before {
                  -moz-animation-name: ani_note8;
                  -moz-animation-duration: 0.6s;
                  -moz-animation-fill-mode: forwards;
                  -moz-animation-timing-function: ease-in-out;
                  -moz-animation-iteration-count: 1;
                  -ms-animation-name: ani_note8;
                  -ms-animation-duration: 0.6s;
                  -ms-animation-fill-mode: forwards;
                  -ms-animation-timing-function: ease-in-out;
                  -ms-animation-iteration-count: 1;
                  -o-animation-name: ani_note8;
                  -o-animation-duration: 0.6s;
                  -o-animation-fill-mode: forwards;
                  -o-animation-timing-function: ease-in-out;
                  -o-animation-iteration-count: 1;
                  -webkit-animation-name: ani_note8;
                  -webkit-animation-duration: 0.6s;
                  -webkit-animation-fill-mode: forwards;
                  -webkit-animation-timing-function: ease-in-out;
                  -webkit-animation-iteration-count: 1;
                  animation-name: ani_note8;
                  animation-duration: 0.6s;
                  animation-fill-mode: forwards;
                  animation-timing-function: ease-in-out;
                  animation-iteration-count: 1; }
                #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a:not(.hm_btn):hover::after {
                  -moz-animation-name: ani_note16;
                  -moz-animation-duration: 0.6s;
                  -moz-animation-fill-mode: forwards;
                  -moz-animation-timing-function: ease-in-out;
                  -moz-animation-iteration-count: 1;
                  -ms-animation-name: ani_note16;
                  -ms-animation-duration: 0.6s;
                  -ms-animation-fill-mode: forwards;
                  -ms-animation-timing-function: ease-in-out;
                  -ms-animation-iteration-count: 1;
                  -o-animation-name: ani_note16;
                  -o-animation-duration: 0.6s;
                  -o-animation-fill-mode: forwards;
                  -o-animation-timing-function: ease-in-out;
                  -o-animation-iteration-count: 1;
                  -webkit-animation-name: ani_note16;
                  -webkit-animation-duration: 0.6s;
                  -webkit-animation-fill-mode: forwards;
                  -webkit-animation-timing-function: ease-in-out;
                  -webkit-animation-iteration-count: 1;
                  animation-name: ani_note16;
                  animation-duration: 0.6s;
                  animation-fill-mode: forwards;
                  animation-timing-function: ease-in-out;
                  animation-iteration-count: 1;
                  -webkit-animation-delay: 0.1s;
                  -moz-animation-delay: 0.1s;
                  -o-animation-delay: 0.1s;
                  animation-delay: 0.1s; } }
              #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a.hm_btn:hover::before {
                -moz-animation-name: ani_note8;
                -moz-animation-duration: 0.6s;
                -moz-animation-fill-mode: forwards;
                -moz-animation-timing-function: ease-in-out;
                -moz-animation-iteration-count: 1;
                -ms-animation-name: ani_note8;
                -ms-animation-duration: 0.6s;
                -ms-animation-fill-mode: forwards;
                -ms-animation-timing-function: ease-in-out;
                -ms-animation-iteration-count: 1;
                -o-animation-name: ani_note8;
                -o-animation-duration: 0.6s;
                -o-animation-fill-mode: forwards;
                -o-animation-timing-function: ease-in-out;
                -o-animation-iteration-count: 1;
                -webkit-animation-name: ani_note8;
                -webkit-animation-duration: 0.6s;
                -webkit-animation-fill-mode: forwards;
                -webkit-animation-timing-function: ease-in-out;
                -webkit-animation-iteration-count: 1;
                animation-name: ani_note8;
                animation-duration: 0.6s;
                animation-fill-mode: forwards;
                animation-timing-function: ease-in-out;
                animation-iteration-count: 1; }
              #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a.hm_btn:hover::after {
                -moz-animation-name: ani_note16;
                -moz-animation-duration: 0.6s;
                -moz-animation-fill-mode: forwards;
                -moz-animation-timing-function: ease-in-out;
                -moz-animation-iteration-count: 1;
                -ms-animation-name: ani_note16;
                -ms-animation-duration: 0.6s;
                -ms-animation-fill-mode: forwards;
                -ms-animation-timing-function: ease-in-out;
                -ms-animation-iteration-count: 1;
                -o-animation-name: ani_note16;
                -o-animation-duration: 0.6s;
                -o-animation-fill-mode: forwards;
                -o-animation-timing-function: ease-in-out;
                -o-animation-iteration-count: 1;
                -webkit-animation-name: ani_note16;
                -webkit-animation-duration: 0.6s;
                -webkit-animation-fill-mode: forwards;
                -webkit-animation-timing-function: ease-in-out;
                -webkit-animation-iteration-count: 1;
                animation-name: ani_note16;
                animation-duration: 0.6s;
                animation-fill-mode: forwards;
                animation-timing-function: ease-in-out;
                animation-iteration-count: 1;
                -webkit-animation-delay: 0.1s;
                -moz-animation-delay: 0.1s;
                -o-animation-delay: 0.1s;
                animation-delay: 0.1s; }
              #footer .footer_sec.footer_bottoms .innerbox2 .sns_box .sns_ctt .link a:hover {
                -webkit-transform: translate(0.15em, 0.15em);
                -moz-transform: translate(0.15em, 0.15em);
                -ms-transform: translate(0.15em, 0.15em);
                -o-transform: translate(0.15em, 0.15em);
                transform: translate(0.15em, 0.15em); }
      #footer .footer_sec.footer_bottoms .innerbox2 .copyright {
        font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-weight: 600;
        font-style: italic;
        font-size: 0.8em;
        font-weight: 500;
        line-height: 1em;
        padding-bottom: 0;
        color: #898989;
        position: absolute;
        top: auto;
        left: auto;
        right: 11.875em;
        bottom: 0; }
        @media screen and (max-width: 768px) {
          #footer .footer_sec.footer_bottoms .innerbox2 .copyright {
            font-size: 1em;
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            right: 0;
            padding-top: 3.75em; } }
        @media screen and (max-width: 480px) {
          #footer .footer_sec.footer_bottoms .innerbox2 .copyright {
            font-size: 0.8em;
            text-align: center; } }

/* =======================================================================================================================
　　　　　　　　　トップページメインカラム
======================================================================================================================= */
body#front-page {
  /* ================= メイン画像 ============================================================ */
  /* ================= PICK UP CONTENTS ============================================================ */
  /* ================= キッズ・ジュニア教室 ============================================================ */
  /* ================= 大人向け教室 ============================================================ */
  /* ================= おすすめピアノレッスン ============================================================ */
  /* ================= 新着情報 ============================================================ */
  /* ================= 楽器販売 ============================================================ */ }
  body#front-page #mainimg {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2vw 2vw 5vw 4.5vw;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(45%, #fff), color-stop(45%, #000), to(#000));
    background: -webkit-linear-gradient(top, #fff 0, #fff 45%, #000 45%, #000 100%);
    background: -moz-linear-gradient(top, #fff 0, #fff 45%, #000 45%, #000 100%);
    background: -o-linear-gradient(top, #fff 0, #fff 45%, #000 45%, #000 100%);
    background: linear-gradient(180deg, #fff 0, #fff 45%, #000 45%, #000 100%);
    /* -------------------------- スライダー・新着エリア ------------------------------------------- */
    /* -------------------------- バナーエリア ------------------------------------------- */ }
    @media screen and (max-width: 768px) {
      body#front-page #mainimg {
        padding: 2vw 1.5em 5em 1.5em; } }
    @media screen and (max-width: 480px) {
      body#front-page #mainimg {
        padding-top: 0;
        background: linear-gradient(180deg, #fff 0, #fff 30%, #000 30%, #000 100%); } }
    body#front-page #mainimg .main_area {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      /* イラスト・新着エリア ------------------------------------------- */
      /* スライドショー ------------------------------------------- */ }
      @media screen and (min-width: 769px) {
        body#front-page #mainimg .main_area {
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-align: end;
          -webkit-align-items: flex-end;
          -moz-box-align: end;
          -ms-flex-align: end;
          align-items: flex-end; } }
      body#front-page #mainimg .main_area .img_news {
        width: 26.25vw;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding-right: 1.25vw;
        z-index: 2;
        /* 動物イラスト */
        /* 新着情報 */ }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .main_area .img_news {
            width: 100%;
            padding-right: 0; } }
  @media screen and (max-width: 768px) and (min-width: 481px) {
    body#front-page #mainimg .main_area .img_news {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: justify;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
      -moz-box-align: end;
      -ms-flex-align: end;
      align-items: flex-end;
      padding-bottom: 1em; } }

        @media screen and (max-width: 480px) {
          body#front-page #mainimg .main_area .img_news {
            padding-top: 5em; } }
        body#front-page #mainimg .main_area .img_news .imgbox {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          width: 28vw;
          padding-left: 1.5vw; }
          @media screen and (max-width: 768px) {
            body#front-page #mainimg .main_area .img_news .imgbox {
              width: 60%;
              padding: 1em 0 0;
              right: -1em;
              z-index: 2; } }
          @media screen and (max-width: 480px) {
            body#front-page #mainimg .main_area .img_news .imgbox {
              width: 12em;
              right: 0;
              margin-left: 12em;
              margin-bottom: -1em; } }
          body#front-page #mainimg .main_area .img_news .imgbox img {
            width: 100%;
            height: auto;
            -webkit-filter: drop-shadow(0.7em 0.7em 0.3em rgba(0, 0, 0, 0.07));
            filter: drop-shadow(0.7em 0.7em 0.3em rgba(0, 0, 0, 0.07));
            /* 出現アニメーション */ }
            body#front-page #mainimg .main_area .img_news .imgbox img.lazyloaded {
              -webkit-transform-origin: 50% 100%;
              -moz-transform-origin: 50% 100%;
              -ms-transform-origin: 50% 100%;
              -o-transform-origin: 50% 100%;
              transform-origin: 50% 100%;
              -moz-animation-name: ani_jmp;
              -moz-animation-duration: 1.2s;
              -moz-animation-fill-mode: forwards;
              -moz-animation-timing-function: ease-in-out;
              -moz-animation-iteration-count: 1;
              -ms-animation-name: ani_jmp;
              -ms-animation-duration: 1.2s;
              -ms-animation-fill-mode: forwards;
              -ms-animation-timing-function: ease-in-out;
              -ms-animation-iteration-count: 1;
              -o-animation-name: ani_jmp;
              -o-animation-duration: 1.2s;
              -o-animation-fill-mode: forwards;
              -o-animation-timing-function: ease-in-out;
              -o-animation-iteration-count: 1;
              -webkit-animation-name: ani_jmp;
              -webkit-animation-duration: 1.2s;
              -webkit-animation-fill-mode: forwards;
              -webkit-animation-timing-function: ease-in-out;
              -webkit-animation-iteration-count: 1;
              animation-name: ani_jmp;
              animation-duration: 1.2s;
              animation-fill-mode: forwards;
              animation-timing-function: ease-in-out;
              animation-iteration-count: 1;
              opacity: 0;
              filter: alpha(opacity=0); }
        body#front-page #mainimg .main_area .img_news .newsbox {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          padding-top: 1.25vw; }
          @media screen and (max-width: 768px) {
            body#front-page #mainimg .main_area .img_news .newsbox {
              width: 40%; } }
          @media screen and (max-width: 480px) {
            body#front-page #mainimg .main_area .img_news .newsbox {
              width: 100%;
              padding-bottom: 1em; } }
          body#front-page #mainimg .main_area .img_news .newsbox a {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            border-radius: 1em;
            overflow: hidden;
            background: #fff;
            -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
            -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
            box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
            color: #000;
            z-index: 1;
            /* ヘッダー部 */
            /* 投稿タイトル */
            /* マウスオーバー */ }
            body#front-page #mainimg .main_area .img_news .newsbox a:hover {
              -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2), 0 0 0 rgba(112, 112, 112, 0.3);
              -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2), 0 0 0 rgba(112, 112, 112, 0.3);
              box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.2), 0 0 0 rgba(112, 112, 112, 0.3);
              -webkit-transform: translate(0.2em, 0.2em);
              -moz-transform: translate(0.2em, 0.2em);
              -ms-transform: translate(0.2em, 0.2em);
              -o-transform: translate(0.2em, 0.2em);
              transform: translate(0.2em, 0.2em); }
            @media screen and (min-width: 769px) {
              body#front-page #mainimg .main_area .img_news .newsbox a {
                display: -ms-flexbox;
                display: -webkit-box;
                display: -webkit-flex;
                display: flex;
                -webkit-flex-wrap: wrap;
                flex-wrap: wrap;
                -ms-flex-align: stretch;
                -webkit-box-align: stretch;
                -webkit-align-items: stretch;
                align-items: stretch; } }
            @media screen and (max-width: 768px) {
              body#front-page #mainimg .main_area .img_news .newsbox a {
                display: block; } }
            @media screen and (max-width: 480px) {
              body#front-page #mainimg .main_area .img_news .newsbox a {
                display: -ms-flexbox;
                display: -webkit-box;
                display: -webkit-flex;
                display: flex;
                -webkit-flex-wrap: wrap;
                flex-wrap: wrap;
                -ms-flex-align: stretch;
                -webkit-box-align: stretch;
                -webkit-align-items: stretch;
                align-items: stretch; } }
            body#front-page #mainimg .main_area .img_news .newsbox a .topnews_hd {
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              width: 5em;
              height: 5em;
              padding-left: 1em;
              background: -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
              background: -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
              background: -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
              background: linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%);
              mix-blend-mode: multiply;
              font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
              font-weight: 600;
              font-style: italic;
              /* 日付 */ }
@media screen and (max-width: 768px) and (min-width: 481px) {
  body#front-page #mainimg .main_area .img_news .newsbox a .topnews_hd {
    width: 100%;
    height: auto;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -ms-flex-align: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    padding: 1em 1.5em 0.5em 1.5em; } }

              body#front-page #mainimg .main_area .img_news .newsbox a .topnews_hd h2 {
                font-size: 1.5em;
                font-weight: 700;
                line-height: 1em;
                color: #fff;
                padding-top: 0.6em; }
@media screen and (max-width: 768px) and (min-width: 481px) {
  body#front-page #mainimg .main_area .img_news .newsbox a .topnews_hd h2 {
    padding-top: 0;
    padding-right: 0.2em; } }

              body#front-page #mainimg .main_area .img_news .newsbox a .topnews_hd .date .year {
                padding-right: 0.15em; }
              body#front-page #mainimg .main_area .img_news .newsbox a .topnews_hd .date .md {
                font-size: 1.6em;
                font-weight: 700; }
            body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl {
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              -webkit-box-flex: 1;
              -webkit-flex: 1;
              -moz-box-flex: 1;
              -ms-flex: 1;
              flex: 1;
              padding: 0 4em 0 1em;
              /* 矢印の位置 */ }
              body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl::after {
                content: "";
                display: block;
                width: 2.5rem;
                height: 2.5rem;
                border-radius: 50%;
                -webkit-transition: 0.3s ease;
                -moz-transition: 0.3s ease;
                -ms-transition: 0.3s ease;
                -o-transition: 0.3s ease;
                transition: 0.3s ease;
                -webkit-backface-visibility: hidden;
                backface-visibility: hidden;
                background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); }
                @media screen and (max-width: 480px) {
                  body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl::after {
                    width: 1.5rem;
                    height: 1.5rem; } }
                @media screen and (max-width: 480px) {
                  body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl::after {
                    background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                    background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                    background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
                    background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
              @media screen and (min-width: 769px) {
                body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl {
                  display: -ms-flexbox;
                  display: -webkit-box;
                  display: -webkit-flex;
                  display: flex;
                  -ms-flex-align: center;
                  -webkit-box-align: center;
                  -webkit-align-items: center;
                  align-items: center; } }
@media screen and (max-width: 768px) and (min-width: 481px) {
  body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl {
    width: 100%;
    padding: 1.5em; } }

              @media screen and (max-width: 480px) {
                body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl {
                  display: -ms-flexbox;
                  display: -webkit-box;
                  display: -webkit-flex;
                  display: flex;
                  -ms-flex-align: center;
                  -webkit-box-align: center;
                  -webkit-align-items: center;
                  align-items: center; } }
              body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl::after {
                position: absolute;
                top: 1.25em;
                left: auto;
                right: 1em;
                bottom: auto; }
@media screen and (max-width: 768px) and (min-width: 481px) {
  body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl::after {
    top: -3.25em;
    right: 1em; } }

                @media screen and (max-width: 480px) {
                  body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl::after {
                    top: 1.75em; } }
              body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl p {
                width: 100%;
                position: relative;
                -webkit-box-sizing: border-box;
                -moz-box-sizing: border-box;
                box-sizing: border-box;
                height: 3em;
                font-size: 0.8em;
                line-height: 1.5em;
                word-break: break-all;
                overflow: hidden;
                text-align: justify;
                padding-bottom: 0; }
                body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl p::before, body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl p::after {
                  position: absolute;
                  background: #fff; }
                body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl p::before {
                  content: "…";
                  bottom: 0;
                  right: 0;
                  color: #000; }
                body#front-page #mainimg .main_area .img_news .newsbox a .post_ttl p::after {
                  content: "";
                  height: 100%;
                  width: 100%; }
            body#front-page #mainimg .main_area .img_news .newsbox a:hover .post_ttl::after {
              -webkit-transform: translate(0.35em, 0);
              -moz-transform: translate(0.35em, 0);
              -ms-transform: translate(0.35em, 0);
              -o-transform: translate(0.35em, 0);
              transform: translate(0.35em, 0); }
      body#front-page #mainimg .main_area .sliderimg {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -moz-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        height: calc( 100vh - 16.25vw );
        height: calc(var(--vh, 1vh) * 100 - 16.25vw );
        border-radius: 1em;
        overflow: hidden;
        z-index: 1;
        /* Meta Slider */
        /* スライダー画像フルスクリーン表示 */
        /* マウスオーバー */ }
        body#front-page #mainimg .main_area .sliderimg.slider_pc {
          display: block; }
        body#front-page #mainimg .main_area .sliderimg.slider_sp {
          display: none; }
        @media screen and (min-width: 769px) {
          body#front-page #mainimg .main_area .sliderimg {
            max-height: 67.5vw;
            min-height: 28.35vw; } }
  @media screen and (min-width: 769px) and (max-width: 1450px) {
    body#front-page #mainimg .main_area .sliderimg {
      min-height: 32vw; } }

        @media screen and (max-width: 768px) {
          body#front-page #mainimg .main_area .sliderimg {
            width: 100%;
            height: calc( 100vh - 77.5vw );
            height: calc(var(--vh, 1vh) * 100 - 77.5vw );
            max-height: 137.64vw;
            min-height: 45vw; }
            body#front-page #mainimg .main_area .sliderimg.slider_pc {
              display: none; }
            body#front-page #mainimg .main_area .sliderimg.slider_sp {
              display: block; } }
@media screen and (max-width: 768px) and (min-width: 481px) and (min-aspect-ratio: 500 / 837) {
  body#front-page #mainimg .main_area .sliderimg.slider_pc {
    display: block; }
  body#front-page #mainimg .main_area .sliderimg.slider_sp {
    display: none; } }

        @media screen and (max-width: 480px) {
          body#front-page #mainimg .main_area .sliderimg {
            height: calc( 100vh - 75vw );
            height: calc(var(--vh, 1vh) * 100 - 75vw );
            max-height: 150vw;
            min-height: 42.5vw; } }
  @media screen and (max-width: 480px) and (min-aspect-ratio: 5 / 8) {
    body#front-page #mainimg .main_area .sliderimg.slider_pc {
      display: block; }
    body#front-page #mainimg .main_area .sliderimg.slider_sp {
      display: none; } }

        body#front-page #mainimg .main_area .sliderimg .metaslider,
        body#front-page #mainimg .main_area .sliderimg #metaslider_container_7,
        body#front-page #mainimg .main_area .sliderimg #metaslider_container_12,
        body#front-page #mainimg .main_area .sliderimg .slider-wrapper,
        body#front-page #mainimg .main_area .sliderimg .nivoSlider,
        body#front-page #mainimg .main_area .sliderimg .nivo-slice {
          position: absolute !important;
          top: 0 !important;
          left: 0 !important;
          right: 0 !important;
          bottom: 0 !important;
          margin: auto !important;
          height: auto !important;
          min-height: inherit !important;
          width: auto !important;
          min-width: inherit !important; }
        body#front-page #mainimg .main_area .sliderimg .metaslider .nivoSlider img,
        body#front-page #mainimg .main_area .sliderimg .metaslider .nivoSlider .nivo-slice img {
          object-fit: cover !important;
          object-position: 50% 50% !important;
          width: 100% !important;
          height: 100% !important; }
        body#front-page #mainimg .main_area .sliderimg img {
          object-fit: cover;
          object-position: 50% 50%;
          width: 100%;
          height: 100%; }
        body#front-page #mainimg .main_area .sliderimg a:hover + img {
          -webkit-transform: scale(1.02);
          -moz-transform: scale(1.02);
          -ms-transform: scale(1.02);
          -o-transform: scale(1.02);
          transform: scale(1.02); }
        body#front-page #mainimg .main_area .sliderimg .metaslider {
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden; }
          body#front-page #mainimg .main_area .sliderimg .metaslider:has(a:hover) {
            -webkit-transform: scale(1.05);
            -moz-transform: scale(1.05);
            -ms-transform: scale(1.05);
            -o-transform: scale(1.05);
            transform: scale(1.05); }
    body#front-page #mainimg .bn_list {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: justify;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -ms-flex-align: stretch;
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
      align-items: stretch;
      padding-top: 1.25vw;
      line-height: 0; }
      @media screen and (max-width: 768px) {
        body#front-page #mainimg .bn_list {
          padding-top: 1em; } }
      @media screen and (max-width: 480px) {
        body#front-page #mainimg .bn_list {
          padding-top: 2em; } }
      body#front-page #mainimg .bn_list li {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 30vw;
        height: 10vw;
        line-height: 0;
        border-radius: 1em;
        z-index: 1;
        overflow: hidden; }
        @media screen and (max-width: 768px) {
          body#front-page #mainimg .bn_list li {
            width: 31.5%;
            height: auto; } }
  @media screen and (max-width: 768px) and (min-width: 481px) {
    body#front-page #mainimg .bn_list li {
      border-radius: 0.5em; }
      body#front-page #mainimg .bn_list li::before {
        content: "";
        display: block;
        padding-top: 33.5%; } }

        @media screen and (max-width: 480px) {
          body#front-page #mainimg .bn_list li {
            width: 100%;
            margin-bottom: 1em; }
            body#front-page #mainimg .bn_list li:last-child {
              margin-bottom: 0; } }
@media screen and (max-width: 768px) and (min-width: 481px) {
  body#front-page #mainimg .bn_list li a {
    display: block;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto; } }

        body#front-page #mainimg .bn_list li a:hover img {
          opacity: 1;
          filter: alpha(opacity=100);
          -webkit-transform: scale(1.05);
          -moz-transform: scale(1.05);
          -ms-transform: scale(1.05);
          -o-transform: scale(1.05);
          transform: scale(1.05); }
        body#front-page #mainimg .bn_list li img {
          object-fit: cover;
          object-position: 50% 50%;
          width: 100%;
          height: 100%; }
          @media screen and (max-width: 480px) {
            body#front-page #mainimg .bn_list li img {
              width: 100%;
              height: auto; } }
  body#front-page #pickup {
    background: -webkit-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
    background: -moz-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
    background: -o-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
    background: linear-gradient(-30deg, #0ad0fa 0, #fb44a3 100%); }
    body#front-page #pickup::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      background: url("/images/bg_stripe.gif") repeat 0 0;
      z-index: 1; }
    body#front-page #pickup .innerbox2 {
      z-index: 2;
      /* 見出し */
      /* -------------------------- 記事一覧 ------------------------------------------- */ }
      @media screen and (max-width: 480px) {
        body#front-page #pickup .innerbox2 {
          padding: 0; } }
      body#front-page #pickup .innerbox2 .sec_ttl {
        color: #fff; }
      body#front-page #pickup .innerbox2 .pickup_list {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        list-style: none inside;
        /* ナビゲーション矢印 ------------------------------------------- */
        /* 記事 ------------------------------------------- */ }
        body#front-page #pickup .innerbox2 .pickup_list .slick-arrow {
          font-size: 1vw;
          width: 1.5em !important;
          height: 1.5em !important;
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          /* 前へボタン */
          /* 次へボタン */
          /* マウスオーバー */ }
          @media screen and (max-width: 1450px) {
            body#front-page #pickup .innerbox2 .pickup_list .slick-arrow {
              font-size: 1.2vw; } }
          @media screen and (max-width: 768px) {
            body#front-page #pickup .innerbox2 .pickup_list .slick-arrow {
              font-size: 2.5vw; } }
          @media screen and (max-width: 480px) {
            body#front-page #pickup .innerbox2 .pickup_list .slick-arrow {
              font-size: 3.75vw; } }
          @media screen and (max-width: 480px) {
            body#front-page #pickup .innerbox2 .pickup_list .slick-arrow {
              display: none !important; } }
          body#front-page #pickup .innerbox2 .pickup_list .slick-arrow::before {
            font-size: 1vw;
            display: block;
            content: "";
            width: 1.5em;
            height: 1.5em;
            border-radius: 50%;
            background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
            -webkit-transition: 0.3s ease;
            -moz-transition: 0.3s ease;
            -ms-transition: 0.3s ease;
            -o-transition: 0.3s ease;
            transition: 0.3s ease;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            opacity: 1;
            filter: alpha(opacity=100); }
            @media screen and (max-width: 1450px) {
              body#front-page #pickup .innerbox2 .pickup_list .slick-arrow::before {
                font-size: 1.2vw; } }
            @media screen and (max-width: 768px) {
              body#front-page #pickup .innerbox2 .pickup_list .slick-arrow::before {
                font-size: 2.5vw; } }
            @media screen and (max-width: 480px) {
              body#front-page #pickup .innerbox2 .pickup_list .slick-arrow::before {
                font-size: 3.75vw; } }
          body#front-page #pickup .innerbox2 .pickup_list .slick-arrow::after {
            display: block;
            content: "";
            width: 1.5em;
            height: 1.5em;
            background: url("/images/ya_w.svg") no-repeat 50% 50%/1em auto;
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            margin: auto;
            z-index: 2; }
          body#front-page #pickup .innerbox2 .pickup_list .slick-arrow.slick-prev::after {
            background-image: url("/images/ya_w_prev.svg"); }
          @media screen and (max-width: 768px) {
            body#front-page #pickup .innerbox2 .pickup_list .slick-arrow.slick-prev {
              left: -1em; } }
          @media screen and (max-width: 768px) {
            body#front-page #pickup .innerbox2 .pickup_list .slick-arrow.slick-next {
              right: -1em; } }
          body#front-page #pickup .innerbox2 .pickup_list .slick-arrow:hover {
            margin-right: -0.25em;
            width: 2em !important;
            height: 2em !important; }
            body#front-page #pickup .innerbox2 .pickup_list .slick-arrow:hover::before {
              width: 2em;
              height: 2em; }
            body#front-page #pickup .innerbox2 .pickup_list .slick-arrow:hover.slick-prev {
              margin-left: -0.25em; }
        body#front-page #pickup .innerbox2 .pickup_list .slick-list {
          padding-bottom: 1em; }
        body#front-page #pickup .innerbox2 .pickup_list li {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          padding: 0 1.25em; }
          @media screen and (max-width: 480px) {
            body#front-page #pickup .innerbox2 .pickup_list li {
              padding: 0 0.75em; } }
          body#front-page #pickup .innerbox2 .pickup_list li a {
            display: block;
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            background: #fff;
            border-radius: 1em;
            overflow: hidden;
            color: #000;
            -webkit-box-shadow: 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.3);
            -moz-box-shadow: 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.3);
            box-shadow: 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.3);
            -webkit-transition: 0.3s ease;
            -moz-transition: 0.3s ease;
            -ms-transition: 0.3s ease;
            -o-transition: 0.3s ease;
            transition: 0.3s ease;
            -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
            z-index: 1;
            /* サムネイル ------------------------------------------- */
            /* テキスト ------------------------------------------- */
            /* マウスオーバー ------------------------------------------- */ }
            body#front-page #pickup .innerbox2 .pickup_list li a:hover {
              -webkit-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.3);
              -moz-box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.3);
              box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.3);
              -webkit-transform: translate(0.2em, 0.2em);
              -moz-transform: translate(0.2em, 0.2em);
              -ms-transform: translate(0.2em, 0.2em);
              -o-transform: translate(0.2em, 0.2em);
              transform: translate(0.2em, 0.2em);
              text-decoration: none;
              opacity: 1;
              filter: alpha(opacity=100); }
            body#front-page #pickup .innerbox2 .pickup_list li a .thumb {
              width: 100%;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              overflow: hidden;
              z-index: 1;
              /* 矢印 */ }
              body#front-page #pickup .innerbox2 .pickup_list li a .thumb::before {
                content: "";
                display: block;
                padding-top: 65%; }
              body#front-page #pickup .innerbox2 .pickup_list li a .thumb::after {
                content: "";
                display: block;
                width: 2.5rem;
                height: 2.5rem;
                border-radius: 50%;
                -webkit-transition: 0.3s ease;
                -moz-transition: 0.3s ease;
                -ms-transition: 0.3s ease;
                -o-transition: 0.3s ease;
                transition: 0.3s ease;
                -webkit-backface-visibility: hidden;
                backface-visibility: hidden;
                background: -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
                background: -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
                background: -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
                background: linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%);
                -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
                -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
                box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
                background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%); }
                @media screen and (max-width: 480px) {
                  body#front-page #pickup .innerbox2 .pickup_list li a .thumb::after {
                    width: 1.5rem;
                    height: 1.5rem; } }
                @media screen and (max-width: 480px) {
                  body#front-page #pickup .innerbox2 .pickup_list li a .thumb::after {
                    background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
                    background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
                    background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
                    background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%); } }
              body#front-page #pickup .innerbox2 .pickup_list li a .thumb::after {
                position: absolute;
                top: auto;
                left: auto;
                right: 0.5em;
                bottom: 0.5em; }
              body#front-page #pickup .innerbox2 .pickup_list li a .thumb span {
                display: block;
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                bottom: 0;
                margin: auto;
                /* 画像モノトーン */ }
                body#front-page #pickup .innerbox2 .pickup_list li a .thumb span img {
                  object-fit: cover;
                  object-position: 50% 50%;
                  width: 100%;
                  height: 100%;
                  -webkit-filter: grayscale(100%);
                  filter: grayscale(100%); }
            body#front-page #pickup .innerbox2 .pickup_list li a .txtbox {
              width: 100%;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              height: 9.5em;
              padding: 1.25em;
              /* 見出し */
              /* 要約 */ }
              @media screen and (max-width: 768px) {
                body#front-page #pickup .innerbox2 .pickup_list li a .txtbox {
                  height: 12.25em; } }
              @media screen and (max-width: 480px) {
                body#front-page #pickup .innerbox2 .pickup_list li a .txtbox {
                  height: 9.75em; } }
              body#front-page #pickup .innerbox2 .pickup_list li a .txtbox .post_ttl {
                font-size: 1em;
                font-weight: 700;
                line-height: 1.25em;
                word-break: break-all; }
              body#front-page #pickup .innerbox2 .pickup_list li a .txtbox .post_excerpt {
                font-weight: 400;
                word-break: break-all; }
            body#front-page #pickup .innerbox2 .pickup_list li a:hover {
              /* サムネイル */ }
              body#front-page #pickup .innerbox2 .pickup_list li a:hover .thumb {
                /* 矢印 */
                /* 画像カラー */ }
                body#front-page #pickup .innerbox2 .pickup_list li a:hover .thumb::after {
                  -webkit-transform: translate(0.35em, 0);
                  -moz-transform: translate(0.35em, 0);
                  -ms-transform: translate(0.35em, 0);
                  -o-transform: translate(0.35em, 0);
                  transform: translate(0.35em, 0); }
                body#front-page #pickup .innerbox2 .pickup_list li a:hover .thumb img {
                  opacity: 1;
                  filter: alpha(opacity=100);
                  -webkit-transform: scale(1.1);
                  -moz-transform: scale(1.1);
                  -ms-transform: scale(1.1);
                  -o-transform: scale(1.1);
                  transform: scale(1.1);
                  -webkit-filter: grayscale(0%);
                  filter: grayscale(0%); }
  body#front-page #top_kids {
    z-index: 5;
    /* -------------------------- イラスト入りセクションヘッダー ------------------------------------------- */ }
    body#front-page #top_kids .sec_hd {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      text-align: center; }
      body#front-page #top_kids .sec_hd .sec_hd_inner {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: inline-block;
        /* イラスト ------------------------------------------- */
        /* 見出し ------------------------------------------- */ }
        body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox {
          width: 10em;
          position: absolute;
          top: -6.5em;
          left: auto;
          right: auto;
          bottom: auto;
          /* コアラ */
          /* パンダ */ }
          @media screen and (max-width: 480px) {
            body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox {
              width: 8em;
              top: -4.8em; } }
          body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox img {
            width: 100%;
            height: auto;
            -webkit-filter: drop-shadow(0.7em 0.7em 0.3em rgba(0, 0, 0, 0.07));
            filter: drop-shadow(0.7em 0.7em 0.3em rgba(0, 0, 0, 0.07)); }
          body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.koara {
            width: 12.6em;
            left: -9em;
            -webkit-transform-origin: 40% 100%;
            -moz-transform-origin: 40% 100%;
            -ms-transform-origin: 40% 100%;
            -o-transform-origin: 40% 100%;
            transform-origin: 40% 100%;
            /* 出現アニメーション */ }
            @media screen and (max-width: 768px) {
              body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.koara {
                top: -7.5em;
                left: -8em; } }
            @media screen and (max-width: 480px) {
              body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.koara {
                width: 10em;
                top: -5.5em;
                left: -6.5em; } }
            body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.koara.lazyloaded {
              -moz-animation-name: ani_dnc;
              -moz-animation-duration: 2s;
              -moz-animation-fill-mode: forwards;
              -moz-animation-timing-function: ease-in-out;
              -moz-animation-iteration-count: infinite;
              -ms-animation-name: ani_dnc;
              -ms-animation-duration: 2s;
              -ms-animation-fill-mode: forwards;
              -ms-animation-timing-function: ease-in-out;
              -ms-animation-iteration-count: infinite;
              -o-animation-name: ani_dnc;
              -o-animation-duration: 2s;
              -o-animation-fill-mode: forwards;
              -o-animation-timing-function: ease-in-out;
              -o-animation-iteration-count: infinite;
              -webkit-animation-name: ani_dnc;
              -webkit-animation-duration: 2s;
              -webkit-animation-fill-mode: forwards;
              -webkit-animation-timing-function: ease-in-out;
              -webkit-animation-iteration-count: infinite;
              animation-name: ani_dnc;
              animation-duration: 2s;
              animation-fill-mode: forwards;
              animation-timing-function: ease-in-out;
              animation-iteration-count: infinite;
              -webkit-transform: rotate(-5deg);
              -moz-transform: rotate(-5deg);
              -o-transform: rotate(-5deg);
              transform: rotate(-5deg); }
            body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.koara img {
              -webkit-transform: rotate(90deg);
              -moz-transform: rotate(90deg);
              -ms-transform: rotate(90deg);
              -o-transform: rotate(90deg);
              transform: rotate(90deg);
              -webkit-transform-origin: 60% 100%;
              -moz-transform-origin: 60% 100%;
              -ms-transform-origin: 60% 100%;
              -o-transform-origin: 60% 100%;
              transform-origin: 60% 100%; }
              body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.koara img.lazyloaded {
                -webkit-transform: rotate(0deg);
                -moz-transform: rotate(0deg);
                -ms-transform: rotate(0deg);
                -o-transform: rotate(0deg);
                transform: rotate(0deg); }
          body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.panda {
            right: -10em;
            -webkit-transform-origin: 60% 100%;
            -moz-transform-origin: 60% 100%;
            -ms-transform-origin: 60% 100%;
            -o-transform-origin: 60% 100%;
            transform-origin: 60% 100%;
            /* 出現アニメーション */ }
            @media screen and (max-width: 768px) {
              body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.panda {
                right: -9em; } }
            @media screen and (max-width: 480px) {
              body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.panda {
                right: -7em; } }
            body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.panda.lazyloaded {
              -moz-animation-name: ani_dnc2;
              -moz-animation-duration: 2s;
              -moz-animation-fill-mode: forwards;
              -moz-animation-timing-function: ease-in-out;
              -moz-animation-iteration-count: infinite;
              -ms-animation-name: ani_dnc2;
              -ms-animation-duration: 2s;
              -ms-animation-fill-mode: forwards;
              -ms-animation-timing-function: ease-in-out;
              -ms-animation-iteration-count: infinite;
              -o-animation-name: ani_dnc2;
              -o-animation-duration: 2s;
              -o-animation-fill-mode: forwards;
              -o-animation-timing-function: ease-in-out;
              -o-animation-iteration-count: infinite;
              -webkit-animation-name: ani_dnc2;
              -webkit-animation-duration: 2s;
              -webkit-animation-fill-mode: forwards;
              -webkit-animation-timing-function: ease-in-out;
              -webkit-animation-iteration-count: infinite;
              animation-name: ani_dnc2;
              animation-duration: 2s;
              animation-fill-mode: forwards;
              animation-timing-function: ease-in-out;
              animation-iteration-count: infinite;
              -webkit-transform: rotate(5deg);
              -moz-transform: rotate(5deg);
              -o-transform: rotate(5deg);
              transform: rotate(5deg); }
            body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.panda img {
              -webkit-transform: rotate(-90deg);
              -moz-transform: rotate(-90deg);
              -ms-transform: rotate(-90deg);
              -o-transform: rotate(-90deg);
              transform: rotate(-90deg);
              -webkit-transform-origin: 50% 100%;
              -moz-transform-origin: 50% 100%;
              -ms-transform-origin: 50% 100%;
              -o-transform-origin: 50% 100%;
              transform-origin: 50% 100%; }
              body#front-page #top_kids .sec_hd .sec_hd_inner .imgbox.panda img.lazyloaded {
                -webkit-transform: rotate(0deg);
                -moz-transform: rotate(0deg);
                -ms-transform: rotate(0deg);
                -o-transform: rotate(0deg);
                transform: rotate(0deg); }
        body#front-page #top_kids .sec_hd .sec_hd_inner .sec_ttl {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          display: inline-block;
          color: #fb44a3; }
  body#front-page #top_adult {
    background: #000;
    color: #fff;
    /* -------------------------- レッスン一覧 ------------------------------------------- */ }
    body#front-page #top_adult .lesson_list li a {
      /* テキスト ------------------------------------------- */ }
      body#front-page #top_adult .lesson_list li a .txtbox {
        /* タイトル */
        /* 要約 */ }
        body#front-page #top_adult .lesson_list li a .txtbox .post_ttl {
          color: #fff; }
        body#front-page #top_adult .lesson_list li a .txtbox .post_excerpt {
          color: #d2d2d2; }
  body#front-page #top_piano {
    background: #f3f3f3; }
  body#front-page #top_news {
    /* ボタン */ }
    body#front-page #top_news .btn {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding-top: 2em;
      text-align: center;
      z-index: 2; }
  body#front-page #about_shop {
    background: url("/images/bg_dot.gif") repeat 0 0; }
    body#front-page #about_shop .innerbox {
      /* -------------------------- テキスト ------------------------------------------- */
      /* -------------------------- 画像 ------------------------------------------- */
      /* -------------------------- ボタンマウスオーバー時 ------------------------------------------- */ }
      @media screen and (min-width: 769px) {
        body#front-page #about_shop .innerbox {
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          -ms-flex-align: stretch;
          -webkit-box-align: stretch;
          -webkit-align-items: stretch;
          align-items: stretch; } }
      @media screen and (max-width: 768px) {
        body#front-page #about_shop .innerbox {
          display: -ms-flexbox;
          display: -webkit-box;
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          -ms-flex-direction: column-reverse;
          -webkit-box-orient: vertical;
          -webkit-box-direction: reverse;
          -webkit-flex-direction: column-reverse;
          flex-direction: column-reverse; } }
      body#front-page #about_shop .innerbox .txtbox {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 50%;
        padding: 2.5em;
        background: -webkit-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
        background: -moz-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
        background: -o-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
        background: linear-gradient(-30deg, #0ad0fa 0, #fb44a3 100%);
        color: #fff;
        border-top-left-radius: 1em;
        border-bottom-left-radius: 1em;
        /* 見出し ------------------------------------------- */
        /* 段落 ------------------------------------------- */
        /* ボタン ------------------------------------------- */ }
        @media screen and (max-width: 768px) {
          body#front-page #about_shop .innerbox .txtbox {
            width: 100%;
            padding: 2em;
            border-top-left-radius: 0;
            border-bottom-left-radius: 1em;
            border-bottom-right-radius: 1em; } }
        body#front-page #about_shop .innerbox .txtbox h2 {
          font-size: 2em;
          font-weight: 900;
          line-height: 1em;
          padding-bottom: 0.8em; }
          @media screen and (max-width: 480px) {
            body#front-page #about_shop .innerbox .txtbox h2 {
              font-size: 1.5em; } }
          body#front-page #about_shop .innerbox .txtbox h2 .shop_name {
            display: inline-block;
            font-size: 0.5em;
            font-weight: 700;
            line-height: 1.5em;
            padding-bottom: 0.75em; }
        body#front-page #about_shop .innerbox .txtbox p {
          line-height: 1.5em;
          padding-bottom: 0.75em; }
          body#front-page #about_shop .innerbox .txtbox p.note {
            font-size: 0.8em;
            font-weight: 0.4em;
            line-height: 1.5em;
            color: #fff;
            opacity: 0.7;
            filter: alpha(opacity=70); }
          @media screen and (max-width: 768px) {
            body#front-page #about_shop .innerbox .txtbox p {
              font-size: 0.8em; }
              body#front-page #about_shop .innerbox .txtbox p.note {
                font-size: 0.65em; } }
        body#front-page #about_shop .innerbox .txtbox .btn {
          padding-top: 0.75em; }
          body#front-page #about_shop .innerbox .txtbox .btn a {
            color: #fff; }
      body#front-page #about_shop .innerbox .imgbox {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        width: 50%;
        border-top-right-radius: 1em;
        border-bottom-right-radius: 1em;
        overflow: hidden;
        z-index: 1;
        /* 画像モノトーン */ }
        @media screen and (max-width: 768px) {
          body#front-page #about_shop .innerbox .imgbox {
            width: 100%;
            border-top-left-radius: 1em;
            border-top-right-radius: 1em;
            border-bottom-right-radius: 0; } }
        body#front-page #about_shop .innerbox .imgbox > img {
          object-fit: cover;
          object-position: 50% 50%;
          width: 100%;
          height: 100%;
          -webkit-filter: grayscale(100%);
          filter: grayscale(100%); }
        body#front-page #about_shop .innerbox .imgbox .shop_mark {
          width: 40%;
          position: absolute;
          top: 50%;
          left: 50%;
          right: auto;
          bottom: auto;
          -webkit-transform: translate(-50%, -50%);
          -moz-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
          -o-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
          body#front-page #about_shop .innerbox .imgbox .shop_mark img {
            width: 100%;
            height: auto; }
      body#front-page #about_shop .innerbox .txtbox:has(.btn a:hover) + .imgbox > img {
        -webkit-filter: grayscale(0%);
        filter: grayscale(0%); }

/* =======================================================================================================================
　　　　　　　　　下層ページ（共通）
======================================================================================================================= */
body #page-header {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 6.25em 0 2.5em 0; }
  @media screen and (max-width: 1450px) {
    body #page-header {
      padding-top: 7em; } }
  @media screen and (max-width: 480px) {
    body #page-header {
      padding: 10em 0 2.5em 0; } }
  body #page-header .innerbox {
    padding-left: 22em;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
    -moz-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    /* 日本語タイトル */
    /* 英語タイトル */ }
    @media screen and (max-width: 1450px) {
      body #page-header .innerbox {
        padding-left: 18em; } }
    @media screen and (max-width: 768px) {
      body #page-header .innerbox {
        padding-left: 3.75em; } }
    @media screen and (max-width: 480px) {
      body #page-header .innerbox {
        padding-left: 1.5em; } }
    body #page-header .innerbox .page_ttl {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-weight: 900;
      font-size: 2.5em;
      line-height: 1.25em; }
      @media screen and (max-width: 1450px) {
        body #page-header .innerbox .page_ttl {
          font-size: 2em; } }
      @media screen and (max-width: 768px) {
        body #page-header .innerbox .page_ttl {
          font-size: 1.8em; } }
      @media screen and (max-width: 480px) {
        body #page-header .innerbox .page_ttl {
          font-size: 1.5em; } }
    body #page-header .innerbox .eg_ttl {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-weight: 600;
      font-style: italic;
      font-size: 1.5em;
      line-height: 1em;
      padding-left: 0.5em;
      top: -0.1em; }
      @media screen and (max-width: 1450px) {
        body #page-header .innerbox .eg_ttl {
          font-size: 1.3em; } }
      @media screen and (max-width: 768px) {
        body #page-header .innerbox .eg_ttl {
          width: 100%;
          padding-left: 0;
          padding-top: 0.5em; } }

/* =======================================================================================================================
　　　　　　　　　フリーページ（カスタムフィールド）
======================================================================================================================= */
.freepage-ctt {
  padding-top: 0;
  padding-bottom: 0; }
  .freepage-ctt .sec_bg2:first-child {
    border-top: #000 solid 0.1em; }

/* 最大幅800px */
.max800px {
  max-width: 800px;
  margin: 0 auto; }

/* =============== 背景色 ========================================================= */
.sec_bg1 {
  background: -webkit-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
  background: -moz-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
  background: -o-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
  background: linear-gradient(-30deg, #0ad0fa 0, #fb44a3 100%);
  color: #fff; }
  .sec_bg1::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: url("/images/bg_stripe.gif") repeat 0 0;
    z-index: 1; }
  .sec_bg1 .innerbox {
    z-index: 2; }

.sec_bg2 {
  background: #fff; }

.sec_bg3 {
  background: #f3f3f3; }

.sec_bg4 {
  background: #000;
  color: #fff; }

/* 同じ背景色のセクションが続いたときに余白をなくす */
.sec_bg4 + .sec_bg4, .sec_bg2 + .sec_bg2, .sec_bg3 + .sec_bg3 {
  padding-top: 0 !important; }

/* =============== テキスト ========================================================= */
/* ------------ 見出し -------------------------------- */
.parts-h3 {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 1em;
  line-height: 1em;
  padding-bottom: 3em;
  text-align: center;
  /* 大きな数字 */
  /* 日本語タイトル */ }
  .parts-h3 .lnmb {
    display: block;
    font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: 600;
    font-style: italic;
    font-size: 3em;
    letter-spacing: 0;
    line-height: 1em; }
    @media screen and (max-width: 768px) {
      .parts-h3 .lnmb {
        font-size: 2.5em; } }
    @media screen and (max-width: 480px) {
      .parts-h3 .lnmb {
        font-size: 2em; } }
  .parts-h3 .jpttl {
    font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-style: normal;
    font-weight: 900;
    display: block;
    font-size: 2em;
    line-height: 1.5em; }
    @media screen and (max-width: 768px) {
      .parts-h3 .jpttl {
        font-size: 1.6em; } }
    .parts-h3 .jpttl + .lnmb {
      font-size: 1.25em;
      padding-top: 0.25em; }
      @media screen and (max-width: 768px) {
        .parts-h3 .jpttl + .lnmb {
          font-size: 1.15em; } }

.parts-h4 {
  font-size: 1.25em;
  font-weight: bold;
  line-height: 1.5em;
  padding-top: 3em;
  padding-bottom: 1em; }
  @media screen and (max-width: 768px) {
    .parts-h4 {
      font-size: 1.15em; } }

/* 左寄せ・幅指定中央配置テキスト */
.centerbox {
  width: 50%;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .centerbox {
      width: 100%; } }

.max1500px {
  width: 70%;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .max1500px {
      width: 100%; } }

/* ------------ 段落 -------------------------------- */
.freepage-ctt a {
  text-decoration: underline; }
.freepage-ctt .sec {
  /* グラデーション背景の時 */ }
  .freepage-ctt .sec p {
    padding-bottom: 3.75em;
    /* 余白小さめ */
    /* 強調 */
    /* 注釈 */ }
    .freepage-ctt .sec p.btmmin {
      padding-bottom: 2em; }
    .freepage-ctt .sec p.parts-copy {
      font-size: 1.8em;
      font-weight: 700;
      line-height: 1.5em;
      padding-bottom: 1em; }
      @media screen and (max-width: 768px) {
        .freepage-ctt .sec p.parts-copy {
          font-size: 1.5em; } }
      @media screen and (max-width: 480px) {
        .freepage-ctt .sec p.parts-copy {
          font-size: 1.4em; } }
    .freepage-ctt .sec p.note {
      font-size: 0.9em;
      font-weight: 400;
      line-height: 1.7em;
      padding-bottom: 3.75em;
      padding-left: 1.2em;
      text-indent: -0.65em;
      width: 100%;
      box-sizing: border-box;
      margin: 0 auto;
      color: #fb44a3; }
      .freepage-ctt .sec p.note::before {
        display: inline-block;
        content: "※";
        padding-right: 0.2em; }
  .freepage-ctt .sec .imgtxt_txtbox p:last-child {
    padding-bottom: 0; }
  .freepage-ctt .sec.sec_bg1 a {
    color: #fff; }
    .freepage-ctt .sec.sec_bg1 a:hover {
      font-weight: 700; }
  .freepage-ctt .sec.sec_bg1 p.note {
    color: #fff;
    opacity: 0.8;
    filter: alpha(opacity=80); }

/* やや小さめ強調 */
.strong {
  font-size: 1.2em;
  font-weight: 700;
  line-height: 2em; }

.color {
  color: #fb44a3; }

/* =============== ブロック ========================================================= */
.freepage-ctt .sec {
  /* ------------ 背景色つきテキストボックス -------------------------------- */
  /* ------------ Googleマップ ------------------------------------------- */ }
  .freepage-ctt .sec .bbox {
    width: 100%;
    box-sizing: border-box;
    padding: 3.75em;
    background: #fff;
    color: #000;
    border-radius: 1em;
    margin-bottom: 5em; }
    @media screen and (max-width: 768px) {
      .freepage-ctt .sec .bbox {
        padding: 2em;
        margin-bottom: 2em; } }
    @media screen and (max-width: 480px) {
      .freepage-ctt .sec .bbox {
        padding: 1.5em;
        margin-bottom: 1.5em; } }
    .freepage-ctt .sec .bbox h3, .freepage-ctt .sec .bbox h4 {
      font-weight: 700;
      font-size: 1.5em;
      line-height: 1.5em;
      padding-bottom: 1em; }
      @media screen and (max-width: 768px) {
        .freepage-ctt .sec .bbox h3, .freepage-ctt .sec .bbox h4 {
          font-size: 1.3em; } }
    .freepage-ctt .sec .bbox p {
      padding-bottom: 2em; }
      .freepage-ctt .sec .bbox p:last-child {
        padding-bottom: 0; }
  .freepage-ctt .sec.sec_bg2 .bbox {
    background: -webkit-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
    background: -moz-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
    background: -o-linear-gradient(120deg, #0ad0fa 0, #fb44a3 100%);
    background: linear-gradient(-30deg, #0ad0fa 0, #fb44a3 100%);
    color: #fff; }
    .freepage-ctt .sec.sec_bg2 .bbox a {
      color: #fff; }
  .freepage-ctt .sec .access_map {
    display: block;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 5em; }
    .freepage-ctt .sec .access_map iframe,
    .freepage-ctt .sec .access_map .acf-map {
      width: 100%;
      height: 20em; }
      @media screen and (max-width: 768px) {
        .freepage-ctt .sec .access_map iframe,
        .freepage-ctt .sec .access_map .acf-map {
          height: 15em; } }
      @media screen and (max-width: 480px) {
        .freepage-ctt .sec .access_map iframe,
        .freepage-ctt .sec .access_map .acf-map {
          height: 12em; } }
    .freepage-ctt .sec .access_map .acf-map img {
      max-width: inherit !important; }

/* =============== 画像 ========================================================= */
.parts-100img {
  width: 100%;
  position: relative;
  padding-bottom: 5em;
  text-align: center; }
  .parts-100img.center {
    text-align: center; }
  .parts-100img.left {
    text-align: left; }
  .parts-100img.right {
    text-align: right; }
  .parts-100img img {
    max-width: inherit;
    height: auto; }
    @media screen and (max-width: 768px) {
      .parts-100img img {
        width: 100%; } }

/* ------------ 画像＋テキスト -------------------------------- */
.box_imglefttxt,
.box_imgrighttxt {
  width: 100%;
  position: relative;
  overflow: hidden;
  zoom: 1;
  padding-bottom: 5em; }
  .box_imglefttxt .imgtxt_imgbox,
  .box_imgrighttxt .imgtxt_imgbox {
    width: 40%;
    position: relative;
    padding-bottom: 1em;
    /* 画像 */ }
    @media screen and (max-width: 1450px) {
      .box_imglefttxt .imgtxt_imgbox,
      .box_imgrighttxt .imgtxt_imgbox {
        width: 45%; } }
    @media screen and (max-width: 768px) {
      .box_imglefttxt .imgtxt_imgbox,
      .box_imgrighttxt .imgtxt_imgbox {
        width: 50%; } }
    @media screen and (max-width: 480px) {
      .box_imglefttxt .imgtxt_imgbox,
      .box_imgrighttxt .imgtxt_imgbox {
        width: 100%;
        padding-bottom: 2.5em; } }
    .box_imglefttxt .imgtxt_imgbox img,
    .box_imgrighttxt .imgtxt_imgbox img {
      width: 100%;
      height: auto; }

/* 画像左 -------------------------------- */
.box_imglefttxt .imgtxt_imgbox {
  float: left;
  padding-right: 3%; }

/* 画像右 -------------------------------- */
.box_imgrighttxt .imgtxt_imgbox {
  float: right;
  padding-left: 3%; }

@media screen and (max-width: 480px) {
  .box_imglefttxt .imgtxt_imgbox,
  .box_imgrighttxt .imgtxt_imgbox {
    float: none;
    padding-right: 0;
    padding-left: 0; } }

/* テキスト -------------------------------- */
/* 見出し */
.imgtxt_txtbox h4 {
  font-size: 1.75em;
  font-weight: 900;
  line-height: 1.5em;
  padding-bottom: 1em; }
  @media screen and (max-width: 768px) {
    .imgtxt_txtbox h4 {
      font-size: 1.6em; } }
  @media screen and (max-width: 480px) {
    .imgtxt_txtbox h4 {
      font-size: 1.5em;
      padding-bottom: 0.67em; } }

/* ------------ 2～6つ並び画像テキストボックス -------------------------------- */
/* テキスト */
.imgbox_txtarea {
  display: block;
  width: 100%;
  z-index: 1;
  position: relative;
  box-sizing: border-box; }
  .imgbox_txtarea h3,
  .imgbox_txtarea h4 {
    font-size: 1.2em;
    font-weight: 700;
    line-height: 1.5em;
    padding-top: 0.25em;
    margin-bottom: 0.5em; }
  .imgbox_txtarea p {
    padding-bottom: 0;
    line-height: 1.5em; }

/* 横並び画像テキストボックス共通設定 -------------------------------- */
.img2box,
.img3txtbox,
.img4txtbox,
.img5txtbox,
.img6txtbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-bottom: 5em;
  /* リスト */ }
  .img2box ul,
  .img3txtbox ul,
  .img4txtbox ul,
  .img5txtbox ul,
  .img6txtbox ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
    margin-top: -2em; }
    @media screen and (max-width: 768px) {
      .img2box ul,
      .img3txtbox ul,
      .img4txtbox ul,
      .img5txtbox ul,
      .img6txtbox ul {
        margin-top: -3em; } }
    .img2box ul li,
    .img3txtbox ul li,
    .img4txtbox ul li,
    .img5txtbox ul li,
    .img6txtbox ul li {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      margin-top: 2em;
      /* 画像 */ }
      @media screen and (max-width: 768px) {
        .img2box ul li,
        .img3txtbox ul li,
        .img4txtbox ul li,
        .img5txtbox ul li,
        .img6txtbox ul li {
          margin-top: 3em; } }
      .img2box ul li img,
      .img3txtbox ul li img,
      .img4txtbox ul li img,
      .img5txtbox ul li img,
      .img6txtbox ul li img {
        width: 100%;
        height: auto;
        margin-bottom: 1em; }

/* 2つ並び画像テキストボックス -------------------------------- */
.img2box {
  /* リスト */ }
  @media screen and (min-width: 769px) {
    .img2box ul {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: justify;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -ms-flex-align: stretch;
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
      align-items: stretch; } }
  @media screen and (max-width: 768px) {
    .img2box ul:has(.youtube_box) {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: justify;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -ms-flex-align: stretch;
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
      align-items: stretch; } }
  .img2box ul li {
    width: 47%; }
    @media screen and (max-width: 480px) {
      .img2box ul li:has(.youtube_box) {
        width: 100%; } }
  .img2box.imghbox ul {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -ms-flex-align: stretch;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch; }
    @media screen and (max-width: 480px) {
      .img2box.imghbox ul li {
        width: 47%; } }

/* 3つ並び画像テキストボックス -------------------------------- */
.img3txtbox {
  /* リスト */ }
  .img3txtbox ul {
    margin-top: -3em; }
    .img3txtbox ul li {
      width: 31%;
      margin-right: 3.5%;
      margin-top: 3em; }
      @media screen and (min-width: 769px) {
        .img3txtbox ul li:nth-child(3n) {
          margin-right: 0; } }
      @media screen and (max-width: 768px) {
        .img3txtbox ul li:has(.youtube_box) {
          width: 100%;
          margin-right: 0; } }
  @media screen and (max-width: 768px) {
    .img3txtbox.imghbox ul li {
      width: 31%;
      margin-right: 3.5%; }
      .img3txtbox.imghbox ul li:nth-child(3n) {
        margin-right: 0; } }

/* 4つ並び画像テキストボックス -------------------------------- */
.img4txtbox {
  /* リスト */ }
  .img4txtbox ul li {
    width: 23.5%;
    margin-right: 2%; }
    @media screen and (min-width: 769px) {
      .img4txtbox ul li:nth-child(4n) {
        margin-right: 0; } }
@media screen and (max-width: 1450px) and (min-width: 481px) {
  .img4txtbox.imghbox ul li {
    width: 23.5%; }
    .img4txtbox.imghbox ul li:nth-child(2n) {
      margin-right: 2%; }
    .img4txtbox.imghbox ul li:nth-child(4n) {
      margin-right: 0; } }

  @media screen and (max-width: 480px) {
    .img4txtbox.imghbox ul li {
      width: 23.5%; }
      .img4txtbox.imghbox ul li:nth-child(4n) {
        margin-right: 0; } }

/* 5つ並び画像テキストボックス -------------------------------- */
.img5txtbox {
  /* リスト */ }
  .img5txtbox ul li {
    width: 18.4%;
    margin-right: 2%; }
    @media screen and (min-width: 769px) {
      .img5txtbox ul li:nth-child(5n) {
        margin-right: 0; } }

/* 6つ並び画像テキストボックス -------------------------------- */
.img6txtbox {
  /* リスト */ }
  .img6txtbox ul li {
    width: 15%;
    margin-right: 2%; }
    @media screen and (min-width: 769px) {
      .img6txtbox ul li:nth-child(6n) {
        margin-right: 0; } }

/* タブレットの時 -------------------------------- */
@media screen and (max-width: 768px) {
  /* 1つ並び */
  .img1txt_tb {
    /* リスト */ }
    .img1txt_tb ul li {
      width: 100%;
      margin-right: 0; }

  /* 2つ並び */
  .img2txt_tb {
    /* リスト */ }
    .img2txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img2txt_tb ul li {
        width: 49%; }
        .img2txt_tb ul li:nth-child(2n) {
          margin-right: 0; } }

@media screen and (max-width: 768px) {
  /* 3つ並び */
  .img3txt_tb {
    /* リスト */ }
    .img3txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img3txt_tb ul li {
        width: 32%; }
        .img3txt_tb ul li:nth-child(3n) {
          margin-right: 0; } }

@media screen and (max-width: 768px) {
  /* 4つ並び */
  .img4txt_tb {
    /* リスト */ }
    .img4txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img4txt_tb ul li {
        width: 23.5%; }
        .img4txt_tb ul li:nth-child(4n) {
          margin-right: 0; } }

@media screen and (max-width: 768px) {
  /* 5つ並び */
  .img5txt_tb {
    /* リスト */ }
    .img5txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img5txt_tb ul li {
        width: 18.4%; }
        .img5txt_tb ul li:nth-child(5n) {
          margin-right: 0; } }

@media screen and (max-width: 768px) {
  /* 6つ並び */
  .img6txt_tb {
    /* リスト */ }
    .img6txt_tb ul li {
      margin-right: 2%; } }
    @media screen and (max-width: 768px) and (min-width: 481px) {
      .img6txt_tb ul li {
        width: 15%; }
        .img6txt_tb ul li:nth-child(6n) {
          margin-right: 0; } }

/* スマートフォンの時 -------------------------------- */
@media screen and (max-width: 480px) {
  /* 1つ並び */
  .img1txt_sp {
    /* リスト */ }
    .img1txt_sp ul li {
      width: 100%;
      margin-right: 0; }

  /* 2つ並び */
  .img2txt_sp {
    /* リスト */ }
    .img2txt_sp ul li {
      margin-right: 2%;
      width: 49%; }
      .img2txt_sp ul li:nth-child(2n) {
        margin-right: 0; }

  /* 3つ並び */
  .img3txt_sp {
    /* リスト */ }
    .img3txt_sp ul li {
      margin-right: 2%;
      width: 32%; }
      .img3txt_sp ul li:nth-child(3n) {
        margin-right: 0; }

  /* 4つ並び */
  .img4txt_sp {
    /* リスト */ }
    .img4txt_sp ul li {
      margin-right: 2%;
      width: 23.5%; }
      .img4txt_sp ul li:nth-child(4n) {
        margin-right: 0; }

  /* 5つ並び */
  .img5txt_sp {
    /* リスト */ }
    .img5txt_sp ul li {
      margin-right: 2%;
      width: 18.4%; }
      .img5txt_sp ul li:nth-child(5n) {
        margin-right: 0; }

  /* 6つ並び */
  .img6txt_sp {
    /* リスト */ }
    .img6txt_sp ul li {
      margin-right: 2%;
      width: 15%; }
      .img6txt_sp ul li:nth-child(6n) {
        margin-right: 0; } }
/* =============== リスト ========================================================= */
/* ノーマルリストマークつき -------------------------------- */
.no_list {
  width: 100%;
  box-sizing: border-box;
  padding: 3.75em;
  margin: 0 auto;
  margin-bottom: 3.75em;
  position: relative;
  background: #fff;
  color: #000;
  border-radius: 1em;
  /* リンク */
  /* 見出し */
  /* リスト */ }
  .sec_bg2 .no_list {
    background: #f3f3f3; }
  @media screen and (max-width: 1450px) {
    .no_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .no_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .no_list {
      padding: 1.5em; } }
  .no_list a {
    color: #0ad0fa !important; }
    .no_list a:hover {
      color: #fb44a3 !important; }
  .no_list h3, .no_list h4 {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 768px) {
      .no_list h3, .no_list h4 {
        font-size: 1.3em; } }
  .no_list ul {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 1.5em; }
    .no_list ul li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1em;
      line-height: 1.7em;
      padding-bottom: 1.5em; }
      .no_list ul li:last-child {
        padding-bottom: 0; }

/* チェックボックスマークつき -------------------------------- */
.check_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 3.75em;
  margin: 0 auto;
  margin-bottom: 3.75em;
  background: #fff;
  color: #000;
  border-radius: 1em;
  /* リンク */
  /* 見出し */
  /* リスト */ }
  .sec_bg2 .check_list {
    background: #f3f3f3; }
  @media screen and (max-width: 1450px) {
    .check_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .check_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .check_list {
      padding: 1.5em; } }
  .check_list a {
    color: #0ad0fa !important; }
    .check_list a:hover {
      color: #fb44a3 !important; }
  .check_list h3, .check_list h4 {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 768px) {
      .check_list h3, .check_list h4 {
        font-size: 1.3em; } }
  .check_list ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .check_list ul li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1em;
      line-height: 1.7em;
      padding-bottom: 1.5em;
      text-indent: -1.2em;
      padding-left: 1.2em; }
      .check_list ul li::before {
        display: inline-block;
        padding-left: 1em;
        padding-right: 0.2em;
        font-family: "Font Awesome 5 Free";
        content: "\f14a";
        font-weight: 900;
        color: #fb44a3; }
      .check_list ul li:last-child {
        padding-bottom: 0; }

/* 番号つき -------------------------------- */
.order_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 3.75em;
  margin: 0 auto;
  margin-bottom: 3.75em;
  position: relative;
  background: #fff;
  color: #000;
  border-radius: 1em;
  /* リンク */
  /* 見出し */
  /* リスト */ }
  .sec_bg2 .order_list {
    background: #f3f3f3; }
  @media screen and (max-width: 1450px) {
    .order_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .order_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .order_list {
      padding: 1.5em; } }
  .order_list a {
    color: #0ad0fa !important; }
    .order_list a:hover {
      color: #fb44a3 !important; }
  .order_list h3, .order_list h4 {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 768px) {
      .order_list h3, .order_list h4 {
        font-size: 1.3em; } }
  .order_list ol {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside;
    counter-reset: number; }
    .order_list ol li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1em;
      line-height: 1.7em;
      padding-left: 1.5em;
      padding-bottom: 1em; }
      .order_list ol li::before {
        position: relative;
        display: inline-block;
        width: 1em;
        margin-left: -1em;
        counter-increment: number;
        content: counter(number,decimal-leading-zero);
        font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-weight: 600;
        font-style: italic;
        font-size: 1.5em;
        color: #000; }
      .order_list ol li:nth-child(n+100) {
        text-indent: -1.5em;
        padding-left: 1.5em; }
      .order_list ol li:last-child {
        padding-bottom: 0; }

/* 表型 -------------------------------- */
.table_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  margin-bottom: 3.75em;
  /* 見出し */
  /* リスト */ }
  .table_list h3, .table_list h4 {
    display: inline-block;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 768px) {
      .table_list h3, .table_list h4 {
        font-size: 1.3em; } }
  .table_list ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left; }
    .table_list ul li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-align: stretch;
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
      align-items: stretch;
      padding: 0.5em;
      border-radius: 1em;
      background: #fff;
      color: #000;
      margin-bottom: 0.5em;
      /* リンク */ }
      .sec_bg2 .table_list ul li {
        background: #f3f3f3; }
      .table_list ul li:last-child {
        margin-bottom: 0; }
      .table_list ul li a {
        color: #0ad0fa !important; }
        .table_list ul li a:hover {
          color: #fb44a3 !important; }
      .table_list ul li .tablelist_th,
      .table_list ul li .tablelist_td {
        padding: 1.5em;
        font-size: 1em;
        line-height: 1.5em;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
        @media screen and (max-width: 768px) {
          .table_list ul li .tablelist_th,
          .table_list ul li .tablelist_td {
            display: block;
            padding: 1em; } }
      .table_list ul li .tablelist_th {
        width: 30%;
        font-weight: 700;
        border-right: #000 solid 0.1em; }
        @media screen and (max-width: 768px) {
          .table_list ul li .tablelist_th {
            width: 100%;
            border-right: none;
            border-bottom: #000 solid 0.1em; } }
      .table_list ul li .tablelist_td {
        width: 70%;
        font-weight: 500; }
        @media screen and (max-width: 768px) {
          .table_list ul li .tablelist_td {
            width: 100%; } }
      .table_list ul li:last-child {
        border-bottom: none; }

/* 注釈マークつき -------------------------------- */
.note_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  margin-bottom: 3.75em;
  padding: 3.75em;
  background: #fff;
  color: #fb44a3;
  border-radius: 1em;
  /* リンク */
  /* 見出し */
  /* リスト */ }
  .sec_bg2 .note_list {
    background: #f3f3f3; }
  @media screen and (max-width: 1450px) {
    .note_list {
      padding: 3em; } }
  @media screen and (max-width: 768px) {
    .note_list {
      padding: 2.5em; } }
  @media screen and (max-width: 480px) {
    .note_list {
      padding: 1.5em; } }
  .note_list a {
    color: #0ad0fa !important; }
    .note_list a:hover {
      color: #fb44a3 !important; }
  .note_list h3, .note_list h4 {
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 1em; }
    @media screen and (max-width: 768px) {
      .note_list h3, .note_list h4 {
        font-size: 1.3em; } }
  .note_list ul {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside; }
    .note_list ul li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 0.9em;
      font-weight: 500;
      line-height: 1.7em;
      text-indent: -1.2em;
      padding-left: 1.2em;
      padding-bottom: 1.5em; }
      .note_list ul li::before {
        display: inline-block;
        padding-left: 1em;
        padding-right: 0.2em;
        content: "※"; }
      .note_list ul li:last-child {
        padding-bottom: 0; }

/* タイムライン -------------------------------- */
.time_list {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  margin-bottom: 3.75em;
  /* 見出し */
  /* リスト */ }
  .time_list h3, .time_list h4 {
    display: inline-block;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.5em;
    padding-bottom: 0.5em; }
    @media screen and (max-width: 768px) {
      .time_list h3, .time_list h4 {
        font-size: 1.3em; } }
  .time_list ul {
    list-style: none inside;
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
    /* 最後の点線 */ }
    .time_list ul li {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-align: stretch;
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
      align-items: stretch;
      /* 縦線 */ }
      .time_list ul li::before, .time_list ul li::after {
        content: "";
        display: block; }
      .time_list ul li::before {
        position: absolute;
        top: 0;
        left: 10em;
        right: auto;
        bottom: 0;
        width: 1px;
        margin: auto;
        border-right: #0ad0fa solid 0.25em;
        opacity: 0.5;
        filter: alpha(opacity=50); }
        .sec_bg2 .time_list ul li::before {
          border-color: #fff; }
      .time_list ul li:first-child::before {
        top: 2em; }
      .time_list ul li:last-child::before {
        height: 2em;
        bottom: auto; }
      .time_list ul li .time_time,
      .time_list ul li .time_ctt {
        padding: 1.5em;
        font-size: 1em;
        line-height: 1.5em;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      .time_list ul li .time_time {
        padding-left: 0;
        width: 10em;
        font-weight: 900;
        text-align: right;
        color: #000; }
        .sec_bg2 .time_list ul li .time_time {
          color: #fff; }
      .time_list ul li .time_ctt {
        padding-right: 0;
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -moz-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        font-weight: 500;
        /* 丸 */ }
        .time_list ul li .time_ctt strong {
          font-family: ff-good-web-pro-compressed, source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif; }
        .time_list ul li .time_ctt::before {
          content: "";
          display: block;
          width: 0.75em;
          height: 0.75em;
          border-radius: 50%;
          background: #0ad0fa;
          position: absolute;
          top: 1.9em;
          left: -0.2em;
          right: auto;
          bottom: auto;
          z-index: 2; }
          .sec_bg2 .time_list ul li .time_ctt::before {
            background: #fff; }
    .time_list ul.on li:last-child::after {
      content: "";
      display: block;
      width: 1px;
      position: absolute;
      top: 2em;
      left: 10em;
      right: auto;
      bottom: 0;
      margin: auto;
      border-right: #0ad0fa dotted 0.25em;
      opacity: 0.5;
      filter: alpha(opacity=50); }
      .sec_bg2 .time_list ul.on li:last-child::after {
        border-color: #fff; }

/* =============== Youtube動画 ========================================================= */
.videobox .imgtxt_imgbox {
  width: 60%; }
  @media screen and (max-width: 480px) {
    .videobox .imgtxt_imgbox {
      width: 100%; } }

.youtube_box {
  width: 100%; }
  .youtube_box span {
    display: block;
    position: relative;
    width: 100%;
    padding-top: 56.25%; }
    .youtube_box span iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100% !important;
      height: 100% !important; }

.img2box .youtube_box,
.img3txtbox .youtube_box {
  padding-bottom: 1.5em; }

/* =============== 余白ゼロ ========================================================= */
.freepage-ctt .sec .innerbox p:last-child,
.freepage-ctt .sec .innerbox p.parts-copy:last-child,
.freepage-ctt .sec .innerbox p.note:last-child,
.freepage-ctt .sec .innerbox .parts-100img:last-child,
.freepage-ctt .sec .innerbox .box_imglefttxt:last-child,
.freepage-ctt .sec .innerbox .box_imgrighttxt:last-child,
.freepage-ctt .sec .innerbox .img2box:last-child,
.freepage-ctt .sec .innerbox .img3txtbox:last-child,
.freepage-ctt .sec .innerbox .img4txtbox:last-child {
  padding-bottom: 0; }
.freepage-ctt .sec .innerbox .bbox:last-child,
.freepage-ctt .sec .innerbox .no_list:last-child,
.freepage-ctt .sec .innerbox .check_list:last-child,
.freepage-ctt .sec .innerbox .order_list:last-child,
.freepage-ctt .sec .innerbox .table_list:last-child,
.freepage-ctt .sec .innerbox .note_list:last-child,
.freepage-ctt .sec .innerbox .access_map:last-child {
  margin-bottom: 0; }

.img2box img:last-child,
.img3txtbox img:last-child,
.img4txtbox img:last-child {
  margin-bottom: 0; }
.img2box a img:last-child,
.img3txtbox a img:last-child,
.img4txtbox a img:last-child {
  margin-bottom: 1em; }
.img2box a:last-child img,
.img3txtbox a:last-child img,
.img4txtbox a:last-child img {
  margin-bottom: 0; }
  .img2box a:last-child img:last-child,
  .img3txtbox a:last-child img:last-child,
  .img4txtbox a:last-child img:last-child {
    margin-bottom: 0; }

li .youtube_box:last-child {
  margin-bottom: 0; }

.imgtxt_imgbox .youtube_box {
  margin-bottom: 0; }

/* =======================================================================================================================
　　　　　　　　　お問い合わせ
======================================================================================================================= */
.contactpage-ctt {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  /* 見出し */
  /* 段落 */
  /* =============== 電話 ========================================================= */
  /* =============== WEB ========================================================= */ }
  .contactpage-ctt .parts-h3 {
    text-align: left;
    padding-bottom: 1.5em; }
  .contactpage-ctt p {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .contactpage-ctt p.contact_info {
      font-size: 1.1em; }
  .contactpage-ctt .contact_tel {
    /* -------------------------- 電話セット ------------------------------------------- */ }
    .contactpage-ctt .contact_tel .tel_list {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-top: -2em; }
      .contactpage-ctt .contact_tel .tel_list li {
        padding-right: 3.75em;
        margin-top: 2em;
        /* 支店 ------------------------------------------- */
        /* 番号 ------------------------------------------- */
        /* 受付時間・定休日 ------------------------------------------- */ }
        .contactpage-ctt .contact_tel .tel_list li:last-child {
          padding-right: 0; }
        .contactpage-ctt .contact_tel .tel_list li .contacttel_shop {
          font-size: 1.1em;
          font-weight: 700;
          line-height: 1.2em;
          padding-bottom: 0.25em; }
        .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel {
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          font-size: 3em;
          line-height: 1em;
          padding-bottom: 0.1em;
          color: #000; }
          .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel img {
            height: 1em;
            width: auto;
            margin-right: 0.25em; }
          .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel a {
            color: #000; }
            .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel a:hover {
              color: #000; }
            .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel a .eg {
              font-family: ff-good-web-pro-extra-conden, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
              font-weight: 700;
              font-style: normal; }
              .contactpage-ctt .contact_tel .tel_list li p.contacttel_tel a .eg::before {
                font-size: 0.8em;
                font-style: normal;
                font-family: "Font Awesome 5 Free";
                font-weight: 900;
                line-height: 1;
                content: "\f095";
                padding-right: 0.2em; }
        .contactpage-ctt .contact_tel .tel_list li p.time_holiday {
          color: #434343;
          width: 100%;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          line-height: 1.5em;
          padding-bottom: 0;
          /* 受付時間 */
          /* 定休日 */ }
          @media screen and (max-width: 480px) {
            .contactpage-ctt .contact_tel .tel_list li p.time_holiday {
              line-height: 1.2em; } }
          .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_time {
            display: inline-block;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            font-size: 1.5em;
            font-style: normal;
            padding-bottom: 0;
            bottom: -0.05em; }
            .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_time::before {
              display: inline-block;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
              font-style: normal;
              font-size: 0.67em;
              content: "受付時間";
              padding-right: 0.5em;
              bottom: 0.05em; }
            @media screen and (max-width: 480px) {
              .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_time {
                font-size: 1.25em; } }
          .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_holiday {
            display: inline-block;
            font-size: 1em; }
            @media screen and (max-width: 480px) {
              .contactpage-ctt .contact_tel .tel_list li p.time_holiday .contacttel_holiday {
                font-size: 0.8em; } }
  .contactpage-ctt .webcontact a {
    color: #fff;
    text-decoration: underline; }

/* ===========================================================================================================
　　　　　　　　　新着記事
=========================================================================================================== */
/* ================= ページヘッダー ============================================================ */
#page-header.post_header:has(+ .archive_sec) {
  padding-bottom: 0; }
#page-header.post_header .innerbox {
  /* -------------------------- ページタイトル ------------------------------------------- */
  /* -------------------------- 英語タイトル ------------------------------------------- */
  /* ボタン ------------------------------------------- */ }
  #page-header.post_header .innerbox .page_ttl {
    /* 年月 ------------------------------------------- */
    /* 年 */ }
    #page-header.post_header .innerbox .page_ttl .year {
      padding-left: 0.5em;
      padding-right: 0.1em;
      font-size: 0.6em;
      color: #535353; }
      @media screen and (max-width: 768px) {
        #page-header.post_header .innerbox .page_ttl .year {
          font-size: 0.75em; } }
  .date #page-header.post_header .innerbox .eg_ttl {
    top: -0.5em; }
  #page-header.post_header .innerbox .btn {
    position: absolute;
    top: 0;
    left: auto;
    right: 9.5em;
    bottom: auto; }
    @media screen and (max-width: 1450px) {
      #page-header.post_header .innerbox .btn {
        right: 11em; } }
    @media screen and (max-width: 768px) {
      #page-header.post_header .innerbox .btn {
        right: 3.75em; } }
    @media screen and (max-width: 480px) {
      #page-header.post_header .innerbox .btn {
        right: 1.5em; } }

/* ================= 記事一覧 ============================================================ */
.archive_sec:has(.innerbox .term_ttl:first-child) {
  padding-top: 0; }

/* ================= ページナビゲーション（共通） ============================================================ */
.pager {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding-top: 3.75em; }
  @media screen and (max-width: 768px) {
    .pager {
      padding-top: 3em; } }
  .pager a {
    text-decoration: none; }
  .pager p {
    padding-bottom: 0;
    padding-left: 0.5em;
    padding-right: 0.5em; }
  .pager .no-link {
    color: #b5b5b5;
    opacity: 0.75;
    filter: alpha(opacity=75); }
  .pager .first,
  .pager .last {
    -webkit-transform: scale(0.6);
    -moz-transform: scale(0.6);
    -ms-transform: scale(0.6);
    -o-transform: scale(0.6);
    transform: scale(0.6);
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
  .pager .prev,
  .pager .next {
    -webkit-transform: scale(0.7);
    -moz-transform: scale(0.7);
    -ms-transform: scale(0.7);
    -o-transform: scale(0.7);
    transform: scale(0.7);
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
  .pager .nth-box {
    font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
    font-weight: 600;
    font-style: italic;
    font-style: normal;
    font-size: 1.2em;
    font-weight: 800; }
    .pager .nth-box .current {
      font-size: 1.2em;
      display: inline-block;
      color: #b5b5b5;
      padding: 0 0.5em; }
    .pager .nth-box .tenten {
      color: #b5b5b5; }
    .pager .nth-box a {
      display: inline-block;
      padding: 0 0.5em; }

/* ================= 新着フッター ============================================================ */
#footer-post {
  background: #535353;
  color: #fff;
  /* リンク */
  /* 見出し */
  /* リスト */ }
  #footer-post a {
    color: #fff; }
  #footer-post .pf_ttl {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 2.5em;
    line-height: 1em;
    padding-bottom: 0.5em; }
  #footer-post ul {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    list-style: none inside; }
    #footer-post ul li {
      line-height: 1.5em;
      padding-bottom: 1em; }
      #footer-post ul li:last-child {
        padding-bottom: 0; }
      #footer-post ul li a {
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-direction: row-reverse;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: row-reverse;
        flex-direction: row-reverse;
        -webkit-box-pack: end;
        -webkit-justify-content: flex-end;
        -moz-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -moz-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        /* 矢印 */
        /* マウスオーバー */ }
        #footer-post ul li a::after {
          content: "";
          display: block;
          width: 2.5rem;
          height: 2.5rem;
          border-radius: 50%;
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          background: -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
          background: -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
          background: -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
          background: linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%);
          -webkit-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
          -moz-box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
          box-shadow: inset -0.35em -0.35em 1em rgba(0, 0, 0, 0.4);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%); }
          @media screen and (max-width: 480px) {
            #footer-post ul li a::after {
              width: 1.5rem;
              height: 1.5rem; } }
          @media screen and (max-width: 480px) {
            #footer-post ul li a::after {
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -webkit-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -moz-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -o-linear-gradient(135deg, #0ad0fa 0, #fb44a3 100%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, linear-gradient(-45deg, #0ad0fa 0, #fb44a3 100%); } }
        #footer-post ul li a::after {
          margin-right: 0.5em; }
        #footer-post ul li a:hover {
          text-decoration: underline; }
          #footer-post ul li a:hover::after {
            -webkit-transform: translate(0.35em, 0);
            -moz-transform: translate(0.35em, 0);
            -ms-transform: translate(0.35em, 0);
            -o-transform: translate(0.35em, 0);
            transform: translate(0.35em, 0); }
  #footer-post .innerbox {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
    align-items: stretch;
    /* -------------------------- カテゴリ一覧 ------------------------------------------- */
    /* -------------------------- アーカイブ ------------------------------------------- */ }
    #footer-post .innerbox .cate_sec {
      padding-right: 3em;
      margin-right: 5em;
      border-right: #898989 solid 0.1em;
      /* カテゴリリスト ------------------------------------------- */ }
      @media screen and (max-width: 768px) {
        #footer-post .innerbox .cate_sec {
          width: 100%;
          padding-right: 0;
          margin-right: 0;
          padding-bottom: 5em;
          margin-bottom: 5em;
          border-right: none;
          border-bottom: #898989 solid 0.1em; } }
      @media screen and (max-width: 480px) {
        #footer-post .innerbox .cate_sec {
          padding-bottom: 2.5em;
          margin-bottom: 2.5em; } }
      @media screen and (min-width: 481px) {
        #footer-post .innerbox .cate_sec .cate_list {
          -webkit-columns: 2;
          -moz-columns: 2;
          -ms-columns: 2;
          columns: 2;
          -webkit-column-gap: 2em;
          -moz-column-gap: 2em;
          column-gap: 2em; } }
      @media screen and (max-width: 768px) {
        #footer-post .innerbox .cate_sec .cate_list {
          -webkit-column-gap: 1em;
          -moz-column-gap: 1em;
          column-gap: 1em; } }
      #footer-post .innerbox .cate_sec .cate_list li:nth-child(4) {
        break-after: column; }
    #footer-post .innerbox .archive_sec {
      /* 月を選択 ------------------------------------------- */ }
      @media screen and (max-width: 768px) {
        #footer-post .innerbox .archive_sec {
          width: 100%; } }
      #footer-post .innerbox .archive_sec select {
        margin-top: 1em;
        font-size: 1vw;
        font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-style: normal;
        line-height: 1em;
        padding: 1em;
        border: none;
        border-radius: 2em;
        cursor: pointer; }
        @media screen and (max-width: 1450px) {
          #footer-post .innerbox .archive_sec select {
            font-size: 1.2vw; } }
        @media screen and (max-width: 768px) {
          #footer-post .innerbox .archive_sec select {
            font-size: 2.5vw; } }
        @media screen and (max-width: 480px) {
          #footer-post .innerbox .archive_sec select {
            font-size: 3.75vw; } }
        @media screen and (max-width: 480px) {
          #footer-post .innerbox .archive_sec select {
            width: 100%; } }

/* ================= 投稿ページ（共通） ============================================================ */
#newspost {
  /* -------------------------- 投稿記事ヘッダー ------------------------------------------- */
  /* -------------------------- ナビゲーション ------------------------------------------- */ }
  #newspost #entry-header {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 2.5em 0;
    border-top: #000 solid 0.1em; }
    #newspost #entry-header .innerbox {
      /* サブタイトル */
      /* 記事タイトル */
      /* 一覧に戻るボタン */
      /* 日付 */ }
      @media screen and (min-width: 769px) {
        #newspost #entry-header .innerbox {
          padding-right: 20em; } }
      #newspost #entry-header .innerbox .sub_ttl {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 1.3em;
        font-weight: 700;
        line-height: 1em;
        padding-bottom: 0.5em; }
        @media screen and (max-width: 768px) {
          #newspost #entry-header .innerbox .sub_ttl {
            font-size: 1.2em; } }
        @media screen and (max-width: 480px) {
          #newspost #entry-header .innerbox .sub_ttl {
            font-size: 1.1em; } }
        #newspost #entry-header .innerbox .sub_ttl span {
          display: inline-block;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          background: -webkit-gradient(linear, right top, left top, color-stop(0, #0ad0fa), to(#fb44a3));
          background: -webkit-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
          background: -moz-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
          background: -o-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
          background: linear-gradient(-90deg, #0ad0fa 0, #fb44a3 100%);
          color: #fff;
          padding: 0.5em 1.5em;
          border-radius: 1em; }
      #newspost #entry-header .innerbox .entry_ttl {
        width: auto;
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -moz-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        font-size: 2em;
        font-weight: 700;
        line-height: 1.5em; }
        @media screen and (max-width: 1450px) {
          #newspost #entry-header .innerbox .entry_ttl {
            font-size: 1.8em; } }
        @media screen and (max-width: 768px) {
          #newspost #entry-header .innerbox .entry_ttl {
            width: 100%;
            font-size: 1.6em; } }
        @media screen and (max-width: 480px) {
          #newspost #entry-header .innerbox .entry_ttl {
            font-size: 1.4em; } }
      #newspost #entry-header .innerbox .btn {
        position: absolute;
        top: 0;
        left: auto;
        right: 9.5em;
        bottom: auto; }
        @media screen and (max-width: 768px) {
          #newspost #entry-header .innerbox .btn {
            top: -8.5em;
            right: 3.75em; } }
        @media screen and (max-width: 480px) {
          #newspost #entry-header .innerbox .btn {
            right: 1.5em; } }
      #newspost #entry-header .innerbox .date {
        font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-weight: 600;
        font-style: italic;
        font-size: 1em;
        line-height: 1.5em; }
        @media screen and (min-width: 769px) {
          #newspost #entry-header .innerbox .date {
            position: absolute;
            top: auto;
            left: auto;
            right: 9.5em;
            bottom: 0; } }
        @media screen and (max-width: 768px) {
          #newspost #entry-header .innerbox .date {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            text-align: right;
            padding-top: 1em;
            opacity: 0.6;
            filter: alpha(opacity=60); } }
        #newspost #entry-header .innerbox .date .eg {
          font-size: 1.5em; }
          #newspost #entry-header .innerbox .date .eg .year {
            font-size: 0.8em;
            opacity: 0.7;
            filter: alpha(opacity=70); }
          #newspost #entry-header .innerbox .date .eg .md {
            padding-left: 0.1em;
            padding-right: 0.2em; }
  #newspost .nav_sec {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 3.75em 0; }
    #newspost .nav_sec .innerbox ul.post_nav {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -ms-flex-pack: justify;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -ms-flex-align: stretch;
      -webkit-box-align: stretch;
      -webkit-align-items: stretch;
      align-items: stretch; }
      #newspost .nav_sec .innerbox ul.post_nav li {
        line-height: 1em;
        max-width: 45%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        color: #0ad0fa;
        -webkit-transition: 0.3s ease;
        -moz-transition: 0.3s ease;
        -ms-transition: 0.3s ease;
        -o-transition: 0.3s ease;
        transition: 0.3s ease;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden; }
        #newspost .nav_sec .innerbox ul.post_nav li:hover {
          color: #fb44a3; }
        #newspost .nav_sec .innerbox ul.post_nav li a {
          -webkit-box-flex: 1;
          -webkit-flex: 1;
          -moz-box-flex: 1;
          -ms-flex: 1;
          flex: 1;
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          display: inline-block;
          width: 100%;
          white-space: nowrap;
          overflow: hidden;
          text-overflow: ellipsis;
          -o-text-overflow: ellipsis;
          /* Opera9,10対応 */
          color: #0ad0fa; }
          @media screen and (max-width: 480px) {
            #newspost .nav_sec .innerbox ul.post_nav li a {
              font-size: 0.8em; } }
          #newspost .nav_sec .innerbox ul.post_nav li a:hover {
            color: #fb44a3; }
        #newspost .nav_sec .innerbox ul.post_nav li.prev:hover {
          -webkit-transform: translate(-0.2em, 0);
          -moz-transform: translate(-0.2em, 0);
          -ms-transform: translate(-0.2em, 0);
          -o-transform: translate(-0.2em, 0);
          transform: translate(-0.2em, 0); }
        #newspost .nav_sec .innerbox ul.post_nav li.prev a {
          padding-left: 0.25em; }
        #newspost .nav_sec .innerbox ul.post_nav li.next {
          -webkit-box-pack: end;
          -webkit-justify-content: flex-end;
          -moz-box-pack: end;
          -ms-flex-pack: end;
          justify-content: flex-end; }
          #newspost .nav_sec .innerbox ul.post_nav li.next:hover {
            -webkit-transform: translate(0.2em, 0);
            -moz-transform: translate(0.2em, 0);
            -ms-transform: translate(0.2em, 0);
            -o-transform: translate(0.2em, 0);
            transform: translate(0.2em, 0); }
          #newspost .nav_sec .innerbox ul.post_nav li.next a {
            padding-right: 0.25em; }

/* ===========================================================================================================
　　　　　　　　　レッスン
=========================================================================================================== */
/* ================= ページヘッダー ============================================================ */
#page-header .innerbox {
  /* ターム名 */
  /* 英語タイトル */ }
  @media screen and (max-width: 768px) {
    #page-header .innerbox .page_ttl:has(~ .term_name) {
      padding-right: 0.55em; } }
  #page-header .innerbox .term_name {
    font-size: 1.1em;
    font-weight: 500;
    /* 複数のターム名の時 */ }
    #page-header .innerbox .term_name::before {
      content: "-"; }
    @media screen and (max-width: 768px) {
      #page-header .innerbox .term_name {
        font-size: 0.8em;
        line-height: 1.8em; } }
    #page-header .innerbox .term_name .company_name::after {
      content: "（"; }
    #page-header .innerbox .term_name .target_name::after {
      content: "＆"; }
    #page-header .innerbox .term_name .target_name:last-child::after {
      content: "）"; }
  @media screen and (max-width: 768px) {
    #page-header .innerbox .eg_ttl {
      -webkit-box-ordinal-group: 2;
      -webkit-order: 1;
      -moz-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1; } }
  #page-header .innerbox .eg_ttl:has(+ .term_name) {
    padding-right: 1em; }

/* ================= レッスン一覧 ============================================================ */
.lesson_sec {
  background: #f3f3f3; }
  .lesson_sec .innerbox {
    /* ターム名 */ }
    .lesson_sec .innerbox .term_ttl {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-family: ff-good-web-pro-compressed, source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-size: 2em;
      font-weight: 800;
      font-style: normal;
      line-height: 1.25em;
      text-align: center;
      padding-top: 3em; }
      @media screen and (max-width: 768px) {
        .lesson_sec .innerbox .term_ttl {
          font-size: 1.6em; } }
      @media screen and (max-width: 480px) {
        .lesson_sec .innerbox .term_ttl {
          font-size: 1.5em;
          padding-bottom: 0; } }

/* ================= カテゴリ一覧（商品共通） ============================================================ */
.cate_area {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 2.5em;
  background: #f3f3f3;
  /* -------------------------- 取扱商品カテゴリ ------------------------------------------- */ }
  .cate_area + .lesson_sec,
  .cate_area + .lineup_sec {
    padding-top: 0; }
  .cate_area .innerbox .cate_box {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 1em;
    padding: 2.5em;
    background: #fff;
    color: #000;
    /* 見出し */
    /* リンク付きカテゴリ一覧 ------------------------------------------- */
    /* 見出し＋カテゴリ一覧セット ------------------------------------------- */ }
    .cate_area .innerbox .cate_box h3 {
      font-size: 1.2em;
      font-weight: 700;
      line-height: 1em;
      padding-bottom: 1em; }
      .cate_area .innerbox .cate_box h3::before {
        content: "";
        display: inline-block;
        width: 1em;
        height: 1em;
        margin-right: 0.25em;
        background: url("/images/icon_search1.svg") no-repeat 50% 50%/contain; }
    .cate_area .innerbox .cate_box .all,
    .cate_area .innerbox .cate_box ul {
      list-style: none inside;
      padding-top: 1em;
      font-weight: 700;
      line-height: 1.5em; }
      @media screen and (max-width: 1450px) {
        .cate_area .innerbox .cate_box .all,
        .cate_area .innerbox .cate_box ul {
          line-height: 2em; } }
      .cate_area .innerbox .cate_box .all li,
      .cate_area .innerbox .cate_box ul li {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      .cate_area .innerbox .cate_box .all a,
      .cate_area .innerbox .cate_box ul a {
        color: #000;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -ms-flex-direction: row-reverse;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: row-reverse;
        flex-direction: row-reverse;
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -ms-flex-align: center;
        -webkit-box-align: center;
        -webkit-align-items: center;
        align-items: center;
        display: -webkit-inline-box;
        display: -webkit-inline-flex;
        display: -moz-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        /* 矢印 */
        /* マウスオーバー */ }
        .cate_area .innerbox .cate_box .all a::after,
        .cate_area .innerbox .cate_box ul a::after {
          content: "";
          display: block;
          width: 2.5rem;
          height: 2.5rem;
          border-radius: 50%;
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); }
          @media screen and (max-width: 480px) {
            .cate_area .innerbox .cate_box .all a::after,
            .cate_area .innerbox .cate_box ul a::after {
              width: 1.5rem;
              height: 1.5rem; } }
          @media screen and (max-width: 480px) {
            .cate_area .innerbox .cate_box .all a::after,
            .cate_area .innerbox .cate_box ul a::after {
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
        .cate_area .innerbox .cate_box .all a::after,
        .cate_area .innerbox .cate_box ul a::after {
          width: 1em;
          height: 1em;
          margin-right: 0.25em;
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.5em auto, -webkit-radial-gradient(at 30% 30%, #0ad0fa 30%, #03809B 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.5em auto, -moz-radial-gradient(at 30% 30%, #0ad0fa 30%, #03809B 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.5em auto, -o-radial-gradient(at 30% 30%, #0ad0fa 30%, #03809B 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.5em auto, radial-gradient(at 30% 30%, #0ad0fa 30%, #03809B 70%); }
        .cate_area .innerbox .cate_box .all a:hover,
        .cate_area .innerbox .cate_box ul a:hover {
          text-decoration: underline; }
          .cate_area .innerbox .cate_box .all a:hover::after,
          .cate_area .innerbox .cate_box ul a:hover::after {
            -webkit-transform: translate(0.15em, 0);
            -moz-transform: translate(0.15em, 0);
            -ms-transform: translate(0.15em, 0);
            -o-transform: translate(0.15em, 0);
            transform: translate(0.15em, 0); }
      .cate_area .innerbox .cate_box .all.catelist,
      .cate_area .innerbox .cate_box ul.catelist {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        /* 親カテゴリ */
        /* 地区別の教室一覧の時 */ }
        .cate_area .innerbox .cate_box .all.catelist .cate_parent,
        .cate_area .innerbox .cate_box ul.catelist .cate_parent {
          display: inline-block;
          padding-right: 1em;
          /* 子カテゴリ */ }
          .cate_area .innerbox .cate_box .all.catelist .cate_parent:last-child,
          .cate_area .innerbox .cate_box ul.catelist .cate_parent:last-child {
            padding-right: 0; }
          .cate_area .innerbox .cate_box .all.catelist .cate_parent:has(.cate_child),
          .cate_area .innerbox .cate_box ul.catelist .cate_parent:has(.cate_child) {
            display: block;
            padding-top: 1em; }
            @media screen and (min-width: 1451px) {
              .cate_area .innerbox .cate_box .all.catelist .cate_parent:has(.cate_child):first-child,
              .cate_area .innerbox .cate_box ul.catelist .cate_parent:has(.cate_child):first-child {
                padding-top: 0; } }
          .cate_area .innerbox .cate_box .all.catelist .cate_parent .cate_child,
          .cate_area .innerbox .cate_box ul.catelist .cate_parent .cate_child {
            display: inline-block;
            padding-top: 0; }
            @media screen and (max-width: 768px) {
              .cate_area .innerbox .cate_box .all.catelist .cate_parent .cate_child,
              .cate_area .innerbox .cate_box ul.catelist .cate_parent .cate_child {
                display: block; } }
            .cate_area .innerbox .cate_box .all.catelist .cate_parent .cate_child li,
            .cate_area .innerbox .cate_box ul.catelist .cate_parent .cate_child li {
              display: inline-block;
              font-size: 0.9em;
              font-weight: 400;
              padding-left: 0.5em; }
        .cate_area .innerbox .cate_box .all.catelist.school_child,
        .cate_area .innerbox .cate_box ul.catelist.school_child {
          padding-top: 0; }
          @media screen and (min-width: 769px) {
            .cate_area .innerbox .cate_box .all.catelist.school_child,
            .cate_area .innerbox .cate_box ul.catelist.school_child {
              margin-top: -0.5em; } }
          @media screen and (min-width: 769px) {
            .cate_area .innerbox .cate_box .all.catelist.school_child .cate_parent,
            .cate_area .innerbox .cate_box ul.catelist.school_child .cate_parent {
              padding-top: 0.5em; } }
    .cate_area .innerbox .cate_box .cate_set {
      /* 見出し */
      /* 全て */
      /* カテゴリ一覧 */ }
      .cate_area .innerbox .cate_box .cate_set:has(h4) {
        display: -ms-flexbox;
        display: -webkit-box;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; }
      .cate_area .innerbox .cate_box .cate_set h4 {
        width: 9.5em;
        padding-top: 1em;
        font-size: 1em;
        font-weight: 500;
        line-height: 1.5em; }
        @media screen and (max-width: 1450px) {
          .cate_area .innerbox .cate_box .cate_set h4 {
            line-height: 2em; } }
        @media screen and (max-width: 768px) {
          .cate_area .innerbox .cate_box .cate_set h4 {
            width: 100%; } }
        .cate_area .innerbox .cate_box .cate_set h4::after {
          content: "："; }
      .cate_area .innerbox .cate_box .cate_set .all {
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding-right: 1em; }
        @media screen and (max-width: 1450px) {
          .cate_area .innerbox .cate_box .cate_set .all + ul.catelist {
            padding-top: 0; } }
      .cate_area .innerbox .cate_box .cate_set ul.catelist {
        width: auto; }
        @media screen and (max-width: 768px) {
          .cate_area .innerbox .cate_box .cate_set ul.catelist {
            padding-top: 0; } }
  .cate_area.lineup_cate_area .innerbox .cate_box .all a,
  .cate_area.lineup_cate_area .innerbox .cate_box ul a {
    /* 矢印 */ }
    .cate_area.lineup_cate_area .innerbox .cate_box .all a::after,
    .cate_area.lineup_cate_area .innerbox .cate_box ul a::after {
      content: "";
      display: block;
      width: 2.5rem;
      height: 2.5rem;
      border-radius: 50%;
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); }
      @media screen and (max-width: 480px) {
        .cate_area.lineup_cate_area .innerbox .cate_box .all a::after,
        .cate_area.lineup_cate_area .innerbox .cate_box ul a::after {
          width: 1.5rem;
          height: 1.5rem; } }
      @media screen and (max-width: 480px) {
        .cate_area.lineup_cate_area .innerbox .cate_box .all a::after,
        .cate_area.lineup_cate_area .innerbox .cate_box ul a::after {
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
    .cate_area.lineup_cate_area .innerbox .cate_box .all a::after,
    .cate_area.lineup_cate_area .innerbox .cate_box ul a::after {
      width: 1em;
      height: 1em;
      margin-right: 0.25em;
      background: url("/images/ya_w.svg") no-repeat 50% 50%/0.5em auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/0.5em auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/0.5em auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
      background: url("/images/ya_w.svg") no-repeat 50% 50%/0.5em auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); }
  .cate_area.lineup_cate_area .innerbox .cate_box .all.catelist:not(.catelist_child) .cate_parent,
  .cate_area.lineup_cate_area .innerbox .cate_box ul.catelist:not(.catelist_child) .cate_parent {
    display: block;
    padding-top: 1em; }
    .cate_area.lineup_cate_area .innerbox .cate_box .all.catelist:not(.catelist_child) .cate_parent:first-child,
    .cate_area.lineup_cate_area .innerbox .cate_box ul.catelist:not(.catelist_child) .cate_parent:first-child {
      padding-top: 0; }

/* ================= 詳細ページ開催教室一覧 ============================================================ */
.freepage-ctt .school_sec {
  /* -------------------------- 見出し ------------------------------------------- */
  /* 地区名 */
  /* -------------------------- 一覧 ------------------------------------------- */
  /* -------------------------- 4列の時のノート型パソコンの列 ------------------------------------------- */
  /* -------------------------- セクション背景色が白とグレーの時 ------------------------------------------- */ }
  .freepage-ctt .school_sec .parts-h3 {
    /* 下に説明文がある時 ------------------------------------------- */
    /* 説明文 ------------------------------------------- */ }
    .freepage-ctt .school_sec .parts-h3:has(+ .sec_dtl) {
      padding-bottom: 1em; }
    .freepage-ctt .school_sec .parts-h3 + .sec_dtl {
      padding-bottom: 3em; }
  .freepage-ctt .school_sec .area_name {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 1.5em;
    font-weight: 700;
    line-height: 1.2em;
    text-align: center;
    padding-bottom: 1em; }
  .freepage-ctt .school_sec ul {
    /* 中寄せ */ }
    .freepage-ctt .school_sec ul li {
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      color: #000;
      border-radius: 1em;
      overflow: hidden;
      background: #fff;
      padding-bottom: 10.5em;
      /* 情報エリア ------------------------------------------- */
      /* お問い合わせエリア ------------------------------------------- */ }
      @media screen and (max-width: 768px) {
        .freepage-ctt .school_sec ul li {
          padding-bottom: 9em; } }
      .freepage-ctt .school_sec ul li .txtbox {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 1.5em;
        /* スクール名 */
        /* 住所 */
        /* 自由入力欄 */ }
        .freepage-ctt .school_sec ul li .txtbox h5 {
          font-size: 1.2em;
          line-height: 1.2em;
          padding-bottom: 0.7em; }
@media screen and (max-width: 768px) and (min-width: 481px) {
  .freepage-ctt .school_sec ul li .txtbox h5 {
    font-size: 1em; } }

        .freepage-ctt .school_sec ul li .txtbox .school_address {
          font-size: 0.9em;
          font-weight: 400;
          line-height: 1.5em;
          color: #898989;
          padding-bottom: 1em; }
@media screen and (max-width: 768px) and (min-width: 481px) {
  .freepage-ctt .school_sec ul li .txtbox .school_address {
    font-size: 0.7em; } }

        .freepage-ctt .school_sec ul li .txtbox .free_txt {
          font-size: 0.9em;
          line-height: 1.5em;
          padding-top: 1em;
          padding-bottom: 0;
          border-top: #000 solid 0.1em; }
          .freepage-ctt .school_sec ul li .txtbox .free_txt a {
            color: #0ad0fa;
            text-decoration: none; }
            .freepage-ctt .school_sec ul li .txtbox .free_txt a:hover {
              color: #fb44a3;
              text-decoration: underline; }
@media screen and (max-width: 768px) and (min-width: 481px) {
  .freepage-ctt .school_sec ul li .txtbox .free_txt {
    font-size: 0.7em; } }

      .freepage-ctt .school_sec ul li .ctbox {
        width: 100%;
        box-sizing: border-box;
        position: absolute;
        top: auto;
        left: 0;
        right: auto;
        bottom: 0;
        padding: 1em;
        background: #f3f3f3;
        /* 電話番号 */
        /* 受付時間 */
        /* ボタン */ }
        .freepage-ctt .school_sec ul li .ctbox .school_tel {
          font-family: ff-good-web-pro-extra-conden, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
          font-weight: 700;
          font-style: normal;
          font-size: 1.8em;
          line-height: 1em;
          padding-bottom: 0;
          text-align: center; }
          .freepage-ctt .school_sec ul li .ctbox .school_tel::before {
            content: "TEL : ";
            font-size: 0.8em; }
          .freepage-ctt .school_sec ul li .ctbox .school_tel a {
            display: inline-block;
            color: #000;
            text-decoration: none;
            -webkit-transform-origin: 0 0;
            -moz-transform-origin: 0 0;
            -ms-transform-origin: 0 0;
            -o-transform-origin: 0 0;
            transform-origin: 0 0; }
            .freepage-ctt .school_sec ul li .ctbox .school_tel a:hover {
              -webkit-transform: scale(1.05);
              -moz-transform: scale(1.05);
              -ms-transform: scale(1.05);
              -o-transform: scale(1.05);
              transform: scale(1.05); }
        .freepage-ctt .school_sec ul li .ctbox .open_close {
          font-size: 0.9em;
          line-height: 1.3em;
          text-align: center;
          color: #434343;
          padding-bottom: 0.6em; }
@media screen and (max-width: 768px) and (min-width: 481px) {
  .freepage-ctt .school_sec ul li .ctbox .open_close {
    font-size: 0.7em; } }

          .freepage-ctt .school_sec ul li .ctbox .open_close::before {
            content: "電話受付";
            padding-right: 0.25em; }
          .freepage-ctt .school_sec ul li .ctbox .open_close .eg {
            font-size: 1.3em;
            font-family: ff-good-web-pro-extra-conden, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
            font-weight: 700;
            font-style: normal; }
          .freepage-ctt .school_sec ul li .ctbox .open_close .jp {
            font-size: 0.8em; }
        .freepage-ctt .school_sec ul li .ctbox .bg_btn {
          text-align: center; }
          .freepage-ctt .school_sec ul li .ctbox .bg_btn a {
            width: 100%;
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            max-width: 15em;
            text-decoration: none;
            padding-left: 1.5em;
            padding-right: 3.5em;
            color: #000; }
@media screen and (max-width: 768px) and (min-width: 481px) {
  .freepage-ctt .school_sec ul li .ctbox .bg_btn a {
    font-size: 1em; }
    .freepage-ctt .school_sec ul li .ctbox .bg_btn a::after {
      top: 0.75em;
      right: 0.75em; } }

            @media screen and (max-width: 480px) {
              .freepage-ctt .school_sec ul li .ctbox .bg_btn a {
                max-width: 19em;
                padding-left: 2em; } }
            .freepage-ctt .school_sec ul li .ctbox .bg_btn a span {
              display: block;
              width: 100%;
              position: relative;
              -webkit-box-sizing: border-box;
              -moz-box-sizing: border-box;
              box-sizing: border-box;
              font-size: 0.6em;
              line-height: 1.66em; }
              @media screen and (max-width: 1450px) {
                .freepage-ctt .school_sec ul li .ctbox .bg_btn a span {
                  font-size: 0.7em;
                  line-height: 1.4em; } }
              @media screen and (max-width: 768px) {
                .freepage-ctt .school_sec ul li .ctbox .bg_btn a span {
                  font-size: 0.6em;
                  line-height: 1.66em; } }
              @media screen and (max-width: 480px) {
                .freepage-ctt .school_sec ul li .ctbox .bg_btn a span {
                  font-size: 1em;
                  line-height: 1em; } }
    .freepage-ctt .school_sec ul.flexc {
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -moz-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center; }
      .freepage-ctt .school_sec ul.flexc li:last-child {
        margin-right: 0 !important; }
@media screen and (max-width: 1450px) and (min-width: 769px) {
  .freepage-ctt .school_sec .img4txtbox ul li {
    width: 31%;
    margin-right: 3.5%;
    margin-top: 3em; }
    .freepage-ctt .school_sec .img4txtbox ul li:nth-child(3n) {
      margin-right: 0; } }

  .freepage-ctt .school_sec.sec_bg2 ul li {
    background: #f3f3f3; }
    .freepage-ctt .school_sec.sec_bg2 ul li .ctbox {
      background: #d2d2d2; }
  .freepage-ctt .school_sec.sec_bg3 ul li .ctbox {
    background: #d2d2d2; }

/* ===========================================================================================================
　　　　　　　　　取扱商品
=========================================================================================================== */
/* ================= 商品一覧 ============================================================ */
.lineup_sec {
  background: #f3f3f3; }

/* ================= 商品詳細ページ ============================================================ */
/* -------------------------- 投稿記事ヘッダー ------------------------------------------- */
#newspost #entry-header.lineup_header .innerbox {
  /* タイトル ------------------------------------------- */
  /* 一覧に戻るボタン ------------------------------------------- */ }
  #newspost #entry-header.lineup_header .innerbox .entry_ttl {
    /* ブランド・メーカー等のサブテキスト */ }
    #newspost #entry-header.lineup_header .innerbox .entry_ttl .sub_txt {
      display: block;
      font-size: 0.7em;
      font-weight: 500;
      line-height: 1.2em;
      padding-bottom: 0.3em; }
  #newspost #entry-header.lineup_header .innerbox .btn {
    top: 1em; }
    @media screen and (max-width: 768px) {
      #newspost #entry-header.lineup_header .innerbox .btn {
        top: -8.5em;
        right: 3.75em; } }
    @media screen and (max-width: 480px) {
      #newspost #entry-header.lineup_header .innerbox .btn {
        right: 1.5em; } }

/* -------------------------- 商品情報 ------------------------------------------- */
#lineup_info .innerbox .info_box {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  /* 商品画像 ------------------------------------------- */ }
  #lineup_info .innerbox .info_box .imgbox {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    width: 35%; }
    @media screen and (max-width: 768px) {
      #lineup_info .innerbox .info_box .imgbox {
        width: 100%; } }
    #lineup_info .innerbox .info_box .imgbox img {
      width: 100%;
      height: auto;
      border-radius: 1em; }
  #lineup_info .innerbox .info_box .txtbox {
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-left: 5em;
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -moz-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    /* タイトル ------------------------------------------- */
    /* 価格 ------------------------------------------- */
    /* 商品説明文 ------------------------------------------- */
    /* 売り切れの時 ------------------------------------------- */ }
    @media screen and (max-width: 768px) {
      #lineup_info .innerbox .info_box .txtbox {
        width: 100%;
        padding-left: 0;
        padding-top: 2.5em; } }
    #lineup_info .innerbox .info_box .txtbox h4 {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      font-size: 1em;
      padding-bottom: 0.5em;
      border-bottom: #000 solid 0.15em;
      /* ブランド・メーカー等のサブテキスト */
      /* 商品名 */ }
      #lineup_info .innerbox .info_box .txtbox h4 .sub_txt {
        display: block;
        font-size: 1em;
        font-weight: 500;
        line-height: 1.25em; }
      #lineup_info .innerbox .info_box .txtbox h4 .item_name {
        display: block;
        font-size: 1.3em;
        font-weight: 700;
        line-height: 1.25em; }
    #lineup_info .innerbox .info_box .txtbox .price_list {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      list-style: none inside; }
      #lineup_info .innerbox .info_box .txtbox .price_list li {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0.5em 0;
        border-bottom: #000 solid 0.1em;
        /* 価格名 */
        /* 価格 */
        /* 目立たせる時 */
        /* 目立たせない時 */ }
        @media screen and (min-width: 481px) {
          #lineup_info .innerbox .info_box .txtbox .price_list li {
            display: -ms-flexbox;
            display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
            -ms-flex-align: stretch;
            -webkit-box-align: stretch;
            -webkit-align-items: stretch;
            align-items: stretch; } }
        @media screen and (max-width: 480px) {
          #lineup_info .innerbox .info_box .txtbox .price_list li {
            display: -ms-flexbox;
            display: -webkit-box;
            display: -webkit-flex;
            display: flex;
            -ms-flex-align: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
            align-items: center; } }
        #lineup_info .innerbox .info_box .txtbox .price_list li .price_ttl {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          width: 15em;
          line-height: 1.3em;
          padding: 0.25em 0; }
          @media screen and (max-width: 480px) {
            #lineup_info .innerbox .info_box .txtbox .price_list li .price_ttl {
              width: auto; }
              #lineup_info .innerbox .info_box .txtbox .price_list li .price_ttl::after {
                content: "："; } }
        #lineup_info .innerbox .info_box .txtbox .price_list li .price_txt {
          position: relative;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box;
          -webkit-box-flex: 1;
          -webkit-flex: 1;
          -moz-box-flex: 1;
          -ms-flex: 1;
          flex: 1;
          padding-left: 1em;
          margin-left: 1em;
          border-left: #000 solid 0.1em;
          line-height: 1.4em; }
          @media screen and (max-width: 480px) {
            #lineup_info .innerbox .info_box .txtbox .price_list li .price_txt {
              border-left: none;
              padding-left: 0;
              margin-left: 0; } }
          #lineup_info .innerbox .info_box .txtbox .price_list li .price_txt span {
            position: relative;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            display: inline-block; }
          #lineup_info .innerbox .info_box .txtbox .price_list li .price_txt .price {
            font-family: ff-good-web-pro-extra-conden, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
            font-weight: 700;
            font-style: normal;
            font-size: 1.4em;
            vertical-align: text-bottom;
            bottom: -0.25em; }
          #lineup_info .innerbox .info_box .txtbox .price_list li .price_txt .yen {
            font-size: 0.85em;
            vertical-align: bottom;
            top: -0.15em; }
          #lineup_info .innerbox .info_box .txtbox .price_list li .price_txt .tax {
            font-size: 0.5em;
            font-weight: 200;
            vertical-align: sub;
            left: -0.5em;
            bottom: -0.1em; }
        #lineup_info .innerbox .info_box .txtbox .price_list li.strong {
          font-size: 1em;
          color: #fb44a3; }
          #lineup_info .innerbox .info_box .txtbox .price_list li.strong .price_ttl {
            padding: 0.4em 0; }
            #lineup_info .innerbox .info_box .txtbox .price_list li.strong .price_ttl span {
              font-size: 1.2em; }
          #lineup_info .innerbox .info_box .txtbox .price_list li.strong .price_txt .price {
            font-size: 2em; }
            @media screen and (max-width: 480px) {
              #lineup_info .innerbox .info_box .txtbox .price_list li.strong .price_txt .price {
                bottom: -0.15em; } }
          #lineup_info .innerbox .info_box .txtbox .price_list li.strong .price_txt .yen {
            font-size: 1.2em;
            top: 0.1em; }
            @media screen and (max-width: 480px) {
              #lineup_info .innerbox .info_box .txtbox .price_list li.strong .price_txt .yen {
                top: 0; } }
          #lineup_info .innerbox .info_box .txtbox .price_list li.strong .price_txt .tax {
            font-size: 0.7em;
            bottom: -0.6em; }
            @media screen and (max-width: 480px) {
              #lineup_info .innerbox .info_box .txtbox .price_list li.strong .price_txt .tax {
                bottom: -0.3em; } }
        #lineup_info .innerbox .info_box .txtbox .price_list li.small {
          color: #898989; }
          #lineup_info .innerbox .info_box .txtbox .price_list li.small .price_ttl span {
            font-size: 0.8em; }
          #lineup_info .innerbox .info_box .txtbox .price_list li.small .price_txt .price {
            font-size: 1.3em;
            bottom: -0.3em; }
    #lineup_info .innerbox .info_box .txtbox .item_txt {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      padding-top: 2.5em; }
    #lineup_info .innerbox .info_box .txtbox.soldout {
      /* 価格 */
      /* SOLD OUT 表示 */ }
      #lineup_info .innerbox .info_box .txtbox.soldout .price_list {
        display: none; }
      #lineup_info .innerbox .info_box .txtbox.soldout .soldout_txt {
        font-family: ff-good-web-pro-compressed, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
        font-weight: 600;
        font-style: italic;
        font-size: 3em;
        font-weight: 800;
        color: #898989;
        line-height: 1em;
        padding-top: 0.8em;
        padding-bottom: 0; }

/* ================= フォーム ============================================================ */
/* ブラウザスタイル解除 */
input:-webkit-autofill {
  animation-name: onAutoFillStart;
  transition: background-color 50000s ease-in-out 0s; }

input:-webkit-autofill-selected {
  animation-name: onAutoFillStart;
  transition: background-color 50000s ease-in-out 0s; }

input:-internal-autofill-selected {
  background-color: rgba(232, 240, 254, 0) !important; }

.formbox {
  width: 100%;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 2.5em;
  background: #fff;
  color: #000;
  border-radius: 1em;
  -webkit-box-shadow: 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.3);
  box-shadow: 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.3);
  /* -------------------------- Contact Form 7 ------------------------------------------- */ }
  @media screen and (max-width: 768px) {
    .formbox {
      padding: 1.5em; } }
  @media screen and (max-width: 480px) {
    .formbox {
      padding: 1em; } }
  .formbox h3 {
    font-size: 2em;
    line-height: 1.7em;
    padding-bottom: 0.5em; }
  .formbox p {
    padding-bottom: 2em; }
  .formbox .wpcf7-form {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    /* 項目名（共通） */
    /* ラベルで挟まれた項目 */
    /* fieldsetで挟まれた項目 */
    /* 郵便番号 */
    /* チェックボックス・ラジオボタン */
    /* 承認確認 */
    /*送信ボタン*/
    /* エラーメッセージ */
    /* 注釈 */ }
    .formbox .wpcf7-form .formname {
      width: 13em; }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form .formname {
          width: 100%; } }
    .formbox .wpcf7-form label.formctt {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      /* 項目名 */
      /* フォーム内容 */ }
      @media screen and (max-width: 768px) {
        .formbox .wpcf7-form label.formctt {
          display: block; } }
      .formbox .wpcf7-form label.formctt .formname {
        line-height: 1.7em;
        padding-top: 0.75em; }
      .formbox .wpcf7-form label.formctt .wpcf7-form-control-wrap {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
        -moz-box-flex: 1;
        -ms-flex: 1;
        flex: 1; }
        @media screen and (max-width: 768px) {
          .formbox .wpcf7-form label.formctt .wpcf7-form-control-wrap {
            -webkit-box-flex: 0;
            -webkit-flex: none;
            -moz-box-flex: 0;
            -ms-flex: none;
            flex: none; } }
    .formbox .wpcf7-form fieldset.formctt {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      border: none;
      padding-left: 13em;
      /* 項目名 */
      /* フォーム内容 */
      /* 改行 */ }
      @media screen and (max-width: 768px) {
        .formbox .wpcf7-form fieldset.formctt {
          padding-left: 0; } }
      .formbox .wpcf7-form fieldset.formctt .formname {
        position: absolute;
        top: 0;
        left: 0;
        right: auto;
        bottom: auto; }
        @media screen and (max-width: 768px) {
          .formbox .wpcf7-form fieldset.formctt .formname {
            position: relative; } }
      .formbox .wpcf7-form fieldset.formctt .wpcf7-form-control-wrap {
        width: 100%;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; }
      .formbox .wpcf7-form fieldset.formctt br {
        display: none; }
    .formbox .wpcf7-form p {
      padding: 0 0 2em 0; }
    .formbox .wpcf7-form input[type="text"],
    .formbox .wpcf7-form input[type="email"],
    .formbox .wpcf7-form input[type="tel"],
    .formbox .wpcf7-form input[type="date"],
    .formbox .wpcf7-form select,
    .formbox .wpcf7-form textarea {
      font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-size: 1em;
      font-weight: 400;
      line-height: 1.7em;
      box-sizing: border-box;
      padding: 0.75em 1.5em;
      border-radius: 1.6em;
      border: none;
      background: #f3f3f3; }
    .formbox .wpcf7-form input[type="text"],
    .formbox .wpcf7-form input[type="email"],
    .formbox .wpcf7-form input[type="tel"],
    .formbox .wpcf7-form textarea {
      width: 100% !important; }
      .formbox .wpcf7-form input[type="text"]::placeholder,
      .formbox .wpcf7-form input[type="email"]::placeholder,
      .formbox .wpcf7-form input[type="tel"]::placeholder,
      .formbox .wpcf7-form textarea::placeholder {
        color: #b5b5b5; }
    .formbox .wpcf7-form select {
      cursor: pointer; }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form select {
          width: 100%; } }
    .formbox .wpcf7-form .yubin {
      display: -ms-flexbox;
      display: -webkit-box;
      display: -webkit-flex;
      display: flex;
      -ms-flex-align: center;
      -webkit-box-align: center;
      -webkit-align-items: center;
      align-items: center; }
      .formbox .wpcf7-form .yubin input[type="text"] {
        width: 10em !important; }
    .formbox .wpcf7-form .wpcf7-radio .wpcf7-list-item,
    .formbox .wpcf7-form .wpcf7-checkbox .wpcf7-list-item {
      margin-left: 0;
      margin-right: 1em; }
      .formbox .wpcf7-form .wpcf7-radio .wpcf7-list-item label,
      .formbox .wpcf7-form .wpcf7-checkbox .wpcf7-list-item label {
        cursor: pointer;
        font-weight: 400; }
    .formbox .wpcf7-form .wpcf7-acceptance label {
      cursor: pointer; }
    .formbox .wpcf7-form input[type="submit"] {
      font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: inline-block;
      height: 4em;
      line-height: 1em;
      border-radius: 2em;
      padding: 1.5em 5.625em;
      font-size: 1.25em;
      font-weight: 700;
      color: #000;
      background: -webkit-gradient(linear, right top, left top, color-stop(0, #0ad0fa), to(#fb44a3));
      background: -webkit-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: -moz-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: -o-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: linear-gradient(-90deg, #0ad0fa 0, #fb44a3 100%);
      -webkit-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.6);
      -moz-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.6);
      box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.6);
      background: -webkit-gradient(linear, right top, left top, color-stop(0, #0ad0fa), to(#fb44a3));
      background: -webkit-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: -moz-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: -o-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: linear-gradient(-90deg, #0ad0fa 0, #fb44a3 100%);
      -webkit-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      -moz-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      border: none;
      cursor: pointer;
      letter-spacing: 1em;
      text-indent: 1em;
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden; }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form input[type="submit"] {
          font-size: 1em;
          height: 3.5em;
          border-radius: 1.75em;
          padding: 1.25em 3em; } }
      @media screen and (max-width: 480px) {
        .formbox .wpcf7-form input[type="submit"] {
          width: 100%; } }
      .formbox .wpcf7-form input[type="submit"]:hover {
        -webkit-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(112, 112, 112, 0.3);
        -moz-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(112, 112, 112, 0.3);
        box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(112, 112, 112, 0.3);
        -webkit-transform: translate(0.15em, 0.15em);
        -moz-transform: translate(0.15em, 0.15em);
        -ms-transform: translate(0.15em, 0.15em);
        -o-transform: translate(0.15em, 0.15em);
        transform: translate(0.15em, 0.15em); }
      .formbox .wpcf7-form input[type="submit"]:disabled {
        opacity: 0.15;
        filter: alpha(opacity=15);
        color: #000;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        cursor: not-allowed; }
        .formbox .wpcf7-form input[type="submit"]:disabled:hover {
          -webkit-box-shadow: none;
          -moz-box-shadow: none;
          box-shadow: none; }
        .formbox .wpcf7-form input[type="submit"]:disabled:hover {
          -webkit-transform: translate(0, 0);
          -moz-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
          -o-transform: translate(0, 0);
          transform: translate(0, 0); }
    .formbox .wpcf7-form .wpcf7-not-valid-tip {
      color: #fb44a3;
      line-height: 1.5em;
      padding-top: 0.5em;
      padding-left: 1.25em;
      text-indent: -1.25em; }
      .formbox .wpcf7-form .wpcf7-not-valid-tip::before {
        content: "\f071";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        line-height: 1;
        padding-right: 0.25em; }
    .formbox .wpcf7-form .wpcf7-response-output {
      border: none !important;
      line-height: 1.5em;
      padding: 0;
      padding-left: 1em;
      text-indent: -1em;
      color: #fb44a3; }
      .formbox .wpcf7-form .wpcf7-response-output::before {
        content: "※"; }
    .formbox .wpcf7-form .note {
      width: 100%;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: block;
      padding-top: 1em;
      padding-bottom: 0;
      font-weight: 200;
      color: #898989; }

/* ================= フォーム確認画面 ============================================================ */
.wpcf7cp-form-hide {
  display: block;
  opacity: 0;
  filter: alpha(opacity=0); }

.wpcf7-spinner {
  display: none; }

div#wpcf7cpcnf {
  width: auto;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  box-sizing: border-box;
  z-index: 10;
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  background: -webkit-linear-gradient(135deg, rgba(10, 208, 250, 0.9) 0, rgba(251, 68, 163, 0.9) 100%);
  background: -moz-linear-gradient(135deg, rgba(10, 208, 250, 0.9) 0, rgba(251, 68, 163, 0.9) 100%);
  background: -o-linear-gradient(135deg, rgba(10, 208, 250, 0.9) 0, rgba(251, 68, 163, 0.9) 100%);
  background: linear-gradient(-45deg, rgba(10, 208, 250, 0.9) 0, rgba(251, 68, 163, 0.9) 100%);
  padding: 0 9.5em;
  /* 入力内容 */
  /* ボタン */ }
  @media screen and (max-width: 768px) {
    div#wpcf7cpcnf {
      padding: 0 3.75em; } }
  @media screen and (max-width: 480px) {
    div#wpcf7cpcnf {
      padding: 0 1.5em; } }
  div#wpcf7cpcnf table {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 2;
    background-color: #fff;
    border-top-left-radius: 1em;
    border-top-right-radius: 1em;
    margin-top: 6em;
    padding: 1em;
    padding-top: 3.5em; }
    @media screen and (max-width: 768px) {
      div#wpcf7cpcnf table {
        margin-top: 7em;
        padding-top: 5em; } }
    div#wpcf7cpcnf table::before {
      font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      font-size: 1em;
      font-weight: 400;
      line-height: 1.5em;
      display: block;
      content: "★まだ送信は完了していません。以下の内容で問題なければ送信してください。";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: auto;
      margin: auto;
      box-sizing: border-box;
      padding: 1em;
      padding-left: 2em;
      text-indent: -1em;
      color: #fb44a3; }
    div#wpcf7cpcnf table tr th,
    div#wpcf7cpcnf table tr td {
      border-bottom: #000 dashed 1px; }
      @media screen and (max-width: 768px) {
        div#wpcf7cpcnf table tr th,
        div#wpcf7cpcnf table tr td {
          display: block; } }
      .contactpage-ctt .sec div#wpcf7cpcnf table tr th p, .contactpage-ctt .sec
      div#wpcf7cpcnf table tr td p {
        padding-top: 1em;
        padding-bottom: 1em; }
    div#wpcf7cpcnf table tr th {
      width: 14em;
      font-weight: normal !important;
      text-align: left; }
      @media screen and (max-width: 768px) {
        div#wpcf7cpcnf table tr th {
          width: 100%;
          border-bottom: none; } }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf table tr th {
          width: 100%; } }
      @media screen and (max-width: 768px) {
        .contactpage-ctt .sec div#wpcf7cpcnf table tr th p {
          padding-bottom: 0; } }
      div#wpcf7cpcnf table tr th p::after {
        content: "："; }
  div#wpcf7cpcnf .wpcf7cp-btns {
    width: 100%;
    position: relative;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    background-color: #fff;
    border-bottom-left-radius: 1em;
    border-bottom-right-radius: 1em;
    z-index: 2;
    padding: 1em;
    margin-top: 0;
    margin-bottom: 2em; }
    @media screen and (max-width: 768px) {
      div#wpcf7cpcnf .wpcf7cp-btns {
        margin-bottom: 10em; } }
    @media screen and (max-width: 480px) {
      div#wpcf7cpcnf .wpcf7cp-btns {
        margin-bottom: 8em; } }
    div#wpcf7cpcnf .wpcf7cp-btns button {
      font-family: source-han-sans-japanese, '游ゴシック', 'Yu Gothic', '游ゴシック体', 'YuGothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo UI', 'メイリオ', Meiryo, sans-serif;
      font-style: normal;
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: inline-block;
      font-size: 1vw;
      line-height: 2.5em;
      font-weight: 700;
      color: #000;
      -webkit-transform-origin: 0 50%;
      -moz-transform-origin: 0 50%;
      -ms-transform-origin: 0 50%;
      -o-transform-origin: 0 50%;
      transform-origin: 0 50%;
      /* マウスオーバー時音符 */
      position: relative;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box;
      display: inline-block;
      height: 4em;
      line-height: 1em;
      border-radius: 2em;
      padding: 1.5em 5.625em;
      font-size: 1.25em;
      font-weight: 700;
      color: #000;
      background: -webkit-gradient(linear, right top, left top, color-stop(0, #0ad0fa), to(#fb44a3));
      background: -webkit-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: -moz-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: -o-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: linear-gradient(-90deg, #0ad0fa 0, #fb44a3 100%);
      -webkit-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.6);
      -moz-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.6);
      box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(0, 0, 0, 0.6);
      background: -webkit-gradient(linear, right top, left top, color-stop(0, #0ad0fa), to(#fb44a3));
      background: -webkit-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: -moz-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: -o-linear-gradient(right, #0ad0fa 0, #fb44a3 100%);
      background: linear-gradient(-90deg, #0ad0fa 0, #fb44a3 100%);
      -webkit-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      -moz-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
      border: none;
      cursor: pointer;
      letter-spacing: 1em;
      text-indent: 1em;
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
      /* 修正ボタン */
      /* 送信ボタン */ }
      @media screen and (max-width: 1450px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          font-size: 1.2vw; } }
      @media screen and (max-width: 768px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          font-size: 2.5vw; } }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          font-size: 3.75vw; } }
      div#wpcf7cpcnf .wpcf7cp-btns button::before, div#wpcf7cpcnf .wpcf7cp-btns button::after {
        content: "";
        display: block;
        width: 0;
        height: 0;
        position: absolute;
        top: 50%;
        left: 50%;
        right: auto;
        bottom: auto;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        z-index: 2; }
      div#wpcf7cpcnf .wpcf7cp-btns button::before {
        background: url("/images/note_8th.webp") no-repeat 50% 50%/contain; }
      div#wpcf7cpcnf .wpcf7cp-btns button::after {
        background: url("/images/note_16th.webp") no-repeat 50% 50%/contain; }
      @media (hover: hover) {
        div#wpcf7cpcnf .wpcf7cp-btns button:not(.hm_btn):hover::before {
          -moz-animation-name: ani_note8;
          -moz-animation-duration: 0.6s;
          -moz-animation-fill-mode: forwards;
          -moz-animation-timing-function: ease-in-out;
          -moz-animation-iteration-count: 1;
          -ms-animation-name: ani_note8;
          -ms-animation-duration: 0.6s;
          -ms-animation-fill-mode: forwards;
          -ms-animation-timing-function: ease-in-out;
          -ms-animation-iteration-count: 1;
          -o-animation-name: ani_note8;
          -o-animation-duration: 0.6s;
          -o-animation-fill-mode: forwards;
          -o-animation-timing-function: ease-in-out;
          -o-animation-iteration-count: 1;
          -webkit-animation-name: ani_note8;
          -webkit-animation-duration: 0.6s;
          -webkit-animation-fill-mode: forwards;
          -webkit-animation-timing-function: ease-in-out;
          -webkit-animation-iteration-count: 1;
          animation-name: ani_note8;
          animation-duration: 0.6s;
          animation-fill-mode: forwards;
          animation-timing-function: ease-in-out;
          animation-iteration-count: 1; }
        div#wpcf7cpcnf .wpcf7cp-btns button:not(.hm_btn):hover::after {
          -moz-animation-name: ani_note16;
          -moz-animation-duration: 0.6s;
          -moz-animation-fill-mode: forwards;
          -moz-animation-timing-function: ease-in-out;
          -moz-animation-iteration-count: 1;
          -ms-animation-name: ani_note16;
          -ms-animation-duration: 0.6s;
          -ms-animation-fill-mode: forwards;
          -ms-animation-timing-function: ease-in-out;
          -ms-animation-iteration-count: 1;
          -o-animation-name: ani_note16;
          -o-animation-duration: 0.6s;
          -o-animation-fill-mode: forwards;
          -o-animation-timing-function: ease-in-out;
          -o-animation-iteration-count: 1;
          -webkit-animation-name: ani_note16;
          -webkit-animation-duration: 0.6s;
          -webkit-animation-fill-mode: forwards;
          -webkit-animation-timing-function: ease-in-out;
          -webkit-animation-iteration-count: 1;
          animation-name: ani_note16;
          animation-duration: 0.6s;
          animation-fill-mode: forwards;
          animation-timing-function: ease-in-out;
          animation-iteration-count: 1;
          -webkit-animation-delay: 0.1s;
          -moz-animation-delay: 0.1s;
          -o-animation-delay: 0.1s;
          animation-delay: 0.1s; } }
      div#wpcf7cpcnf .wpcf7cp-btns button.hm_btn:hover::before {
        -moz-animation-name: ani_note8;
        -moz-animation-duration: 0.6s;
        -moz-animation-fill-mode: forwards;
        -moz-animation-timing-function: ease-in-out;
        -moz-animation-iteration-count: 1;
        -ms-animation-name: ani_note8;
        -ms-animation-duration: 0.6s;
        -ms-animation-fill-mode: forwards;
        -ms-animation-timing-function: ease-in-out;
        -ms-animation-iteration-count: 1;
        -o-animation-name: ani_note8;
        -o-animation-duration: 0.6s;
        -o-animation-fill-mode: forwards;
        -o-animation-timing-function: ease-in-out;
        -o-animation-iteration-count: 1;
        -webkit-animation-name: ani_note8;
        -webkit-animation-duration: 0.6s;
        -webkit-animation-fill-mode: forwards;
        -webkit-animation-timing-function: ease-in-out;
        -webkit-animation-iteration-count: 1;
        animation-name: ani_note8;
        animation-duration: 0.6s;
        animation-fill-mode: forwards;
        animation-timing-function: ease-in-out;
        animation-iteration-count: 1; }
      div#wpcf7cpcnf .wpcf7cp-btns button.hm_btn:hover::after {
        -moz-animation-name: ani_note16;
        -moz-animation-duration: 0.6s;
        -moz-animation-fill-mode: forwards;
        -moz-animation-timing-function: ease-in-out;
        -moz-animation-iteration-count: 1;
        -ms-animation-name: ani_note16;
        -ms-animation-duration: 0.6s;
        -ms-animation-fill-mode: forwards;
        -ms-animation-timing-function: ease-in-out;
        -ms-animation-iteration-count: 1;
        -o-animation-name: ani_note16;
        -o-animation-duration: 0.6s;
        -o-animation-fill-mode: forwards;
        -o-animation-timing-function: ease-in-out;
        -o-animation-iteration-count: 1;
        -webkit-animation-name: ani_note16;
        -webkit-animation-duration: 0.6s;
        -webkit-animation-fill-mode: forwards;
        -webkit-animation-timing-function: ease-in-out;
        -webkit-animation-iteration-count: 1;
        animation-name: ani_note16;
        animation-duration: 0.6s;
        animation-fill-mode: forwards;
        animation-timing-function: ease-in-out;
        animation-iteration-count: 1;
        -webkit-animation-delay: 0.1s;
        -moz-animation-delay: 0.1s;
        -o-animation-delay: 0.1s;
        animation-delay: 0.1s; }
      div#wpcf7cpcnf .wpcf7cp-btns button::before, div#wpcf7cpcnf .wpcf7cp-btns button::after {
        z-index: 5; }
      div#wpcf7cpcnf .wpcf7cp-btns button span {
        vertical-align: middle; }
        div#wpcf7cpcnf .wpcf7cp-btns button span.eg {
          font-size: 1.5em; }
        div#wpcf7cpcnf .wpcf7cp-btns button span::after {
          content: "";
          display: block;
          width: 2.5rem;
          height: 2.5rem;
          border-radius: 50%;
          -webkit-transition: 0.3s ease;
          -moz-transition: 0.3s ease;
          -ms-transition: 0.3s ease;
          -o-transition: 0.3s ease;
          transition: 0.3s ease;
          -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
          background: radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          -webkit-box-shadow: 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
          -moz-box-shadow: 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
          box-shadow: 0.35em 0.35em 1em 0 rgba(112, 112, 112, 0.3);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
          background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); }
          @media screen and (max-width: 480px) {
            div#wpcf7cpcnf .wpcf7cp-btns button span::after {
              width: 1.5rem;
              height: 1.5rem; } }
          div#wpcf7cpcnf .wpcf7cp-btns button span::after:hover {
            -webkit-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
            -moz-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
            box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
            -webkit-transform: translate(0.15em, 0.15em);
            -moz-transform: translate(0.15em, 0.15em);
            -ms-transform: translate(0.15em, 0.15em);
            -o-transform: translate(0.15em, 0.15em);
            transform: translate(0.15em, 0.15em); }
          @media screen and (max-width: 480px) {
            div#wpcf7cpcnf .wpcf7cp-btns button span::after {
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/0.7rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
        div#wpcf7cpcnf .wpcf7cp-btns button span::after {
          display: inline-block;
          margin-left: 1rem;
          vertical-align: middle; }
          @media screen and (max-width: 480px) {
            div#wpcf7cpcnf .wpcf7cp-btns button span::after {
              width: 2.5rem;
              height: 2.5rem;
              background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -webkit-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -moz-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, -o-radial-gradient(at 30% 30%, #535353 30%, #000 70%);
              background: url("/images/ya_w.svg") no-repeat 50% 50%/1rem auto, radial-gradient(at 30% 30%, #535353 30%, #000 70%); } }
      div#wpcf7cpcnf .wpcf7cp-btns button:hover {
        -webkit-transform: translate(0.15em, 0.15em);
        -moz-transform: translate(0.15em, 0.15em);
        -ms-transform: translate(0.15em, 0.15em);
        -o-transform: translate(0.15em, 0.15em);
        transform: translate(0.15em, 0.15em); }
        div#wpcf7cpcnf .wpcf7cp-btns button:hover span::after {
          -webkit-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
          -moz-box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
          box-shadow: 0 0 0 0 rgba(112, 112, 112, 0.3);
          -webkit-transform: translate(0.2rem, 0);
          -moz-transform: translate(0.2rem, 0);
          -ms-transform: translate(0.2rem, 0);
          -o-transform: translate(0.2rem, 0);
          transform: translate(0.2rem, 0); }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          font-size: 1em;
          height: 3.5em;
          border-radius: 1.75em;
          padding: 1.25em 3em; } }
      div#wpcf7cpcnf .wpcf7cp-btns button:hover {
        -webkit-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(112, 112, 112, 0.3);
        -moz-box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(112, 112, 112, 0.3);
        box-shadow: inset -0.35em -0.35em 1.5em rgba(0, 0, 0, 0.4), 0 0 0 0 rgba(112, 112, 112, 0.3);
        -webkit-transform: translate(0.15em, 0.15em);
        -moz-transform: translate(0.15em, 0.15em);
        -ms-transform: translate(0.15em, 0.15em);
        -o-transform: translate(0.15em, 0.15em);
        transform: translate(0.15em, 0.15em); }
      @media screen and (max-width: 768px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          width: auto !important;
          padding-left: 4em;
          padding-right: 4em;
          letter-spacing: 0;
          text-indent: 0; } }
      @media screen and (max-width: 480px) {
        div#wpcf7cpcnf .wpcf7cp-btns button {
          padding-left: 2em;
          padding-right: 2em; } }
      div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn {
        background: #f3f3f3; }
        div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7cp-cfm-edit-btn:hover {
          background: #b5b5b5; }
      div#wpcf7cpcnf .wpcf7cp-btns button.wpcf7-submit {
        letter-spacing: 0;
        text-indent: 0; }

/*# sourceMappingURL=style.css.map */
