@charset "UTF-8";
/*
Theme Name: tc-truthconnect Theme
Theme URI: https://tc-truthconnect
Author: tc-truthconnect
Author URI: https://tc-truthconnect
Template:   tc-master
Description: tc-truthconnect Theme
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tc-truthconnect
*/
a:link, a:visited {
  color: #000;
  text-decoration: none;
}
* {
  margin: 0;
  padding: 0;
}

ul {
  list-style-type: none;
  padding: 0;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, main, section {
  display: block;
  margin: 0;
  padding: 0;
}

* html body {
  overflow-y: auto;
}

* + html body {
  overflow-y: auto;
}

body {
  overflow-y: scroll;
}

.wp-block-group {
  margin-bottom: 0 !important;
}

html {
  -webkit-overflow-scrolling: touch;
}

input, textarea {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  vertical-align: bottom;
  border: 0;
  max-width: 100%;
  height: auto;
  width: auto;
  image-rendering: auto;
}

#page-mask {
  position: fixed;
  inset: 0;
  z-index: 100;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
}
#page-mask svg {
  width: 100%;
  height: 100%;
  display: block;
}

#mask-logo {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 10000;
}
#mask-logo img {
  max-width: 300px;
  width: 100%;
  -webkit-animation: topPageAni_logo 0.5s ease-in-out 1s forwards;
          animation: topPageAni_logo 0.5s ease-in-out 1s forwards;
}

@-webkit-keyframes topPageAni_logo {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes topPageAni_logo {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
header.header {
  width: 100%;
  height: initial !important;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  padding-bottom: 20px;
}
header.header div.inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 20px 30px 0 30px;
}
header.header .h1_logo {
  width: 150px;
  line-height: 0;
}
header.header .h1_logo a {
  display: block;
  position: relative;
}
header.header .h1_logo img {
  position: absolute;
}
header.header .h1_logo img[src*=black] {
  opacity: 0;
}
header.header nav.gNavi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0;
}
header.header nav.gNavi ul li {
  margin-left: 30px;
}
header.header nav.gNavi ul li a {
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  text-decoration: none;
  padding: 5px 10px;
}
header.header nav.gNavi ul li:last-child a {
  color: #000;
  background: #fff;
}
header.header.active {
  background: rgba(255, 255, 255, 0.9);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
header.header.active .h1_logo img[src*=white] {
  opacity: 0;
}
header.header.active .h1_logo img[src*=black] {
  opacity: 1;
}
header.header.active nav.gNavi ul li a {
  color: #000;
}
header.header.active nav.gNavi ul li:last-child a {
  color: #fff;
  background: #000;
}
header.header:not(.font_page) {
  background: rgba(255, 255, 255, 0.9);
}
header.header:not(.font_page) .h1_logo img[src*=white] {
  display: none;
}
header.header:not(.font_page) .h1_logo img[src*=black] {
  opacity: 1;
}
header.header:not(.font_page) nav.gNavi ul li a {
  color: #000;
}
header.header:not(.font_page) nav.gNavi ul li:last-child a {
  color: #fff;
  background: #000;
}

section#footer_consultation {
  background: url(./images/footer_consultation_bg01.webp) no-repeat center;
  background-size: cover;
  overflow: hidden;
  position: relative;
  padding: 100px 0;
}
section#footer_consultation:before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(./images/bg_mesh_black02.gif) rgba(0, 0, 0, 0.2);
  position: absolute;
  top: 0;
  left: 0;
}
section#footer_consultation div, section#footer_consultation a {
  position: relative;
}
section#footer_consultation div {
  color: #fff;
  font-weight: bold;
  text-align: center;
  margin-bottom: 50px;
}
section#footer_consultation a {
  max-width: 400px;
  padding: 10px;
}

footer {
  background: #000;
}
footer div.inner {
  max-width: 1000px;
  margin: auto;
  padding: 80px 0 50px 0;
}
footer p#ft_logo {
  max-width: 300px;
  width: 100%;
  margin-bottom: 60px;
}
footer p#ft_logo a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
footer p#ft_logo a:hover {
  opacity: 0.5;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

nav#fNavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 50px;
  margin-bottom: 50px;
}
nav#fNavi dl {
  width: 25%;
}
nav#fNavi dl dt,
nav#fNavi dl dd a {
  color: #fff;
}
nav#fNavi dl dt {
  font-weight: bold;
  border-bottom: solid 1px #707070;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
nav#fNavi dl dd {
  position: relative;
  padding-left: 30px;
}
nav#fNavi dl dd:before {
  content: "";
  width: 20px;
  height: 1px;
  background: #707070;
  position: absolute;
  top: 15px;
  left: 0;
}
nav#fNavi dl dd:not(:last-child) {
  margin-bottom: 3px;
}
nav#fNavi dl dd a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
nav#fNavi dl dd a:hover {
  opacity: 0.5;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

p.copyright {
  color: #fff;
  text-align: center;
}

div.backButton {
  text-align: center;
  padding: 30px 0 50px 0;
}
div.backButton a {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  border: solid 1px #000;
  padding: 15px 25px;
}
@media (hover: hover) and (pointer: fine) {
  div.backButton a:hover {
    color: #fff;
    background: #333;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}

.learnMore {
  max-width: 350px;
  width: 100%;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  display: inline-block;
  font-size: clamp(12px, 2vw, 16px);
  font-weight: bold;
  text-transform: uppercase;
  color: #fff !important;
  text-align: center;
  text-decoration: none;
  text-shadow: 0px 0px 2px #00B9C8, 1px 1px 1px #008d90;
  border-radius: 50px;
  background: -webkit-gradient(linear, left top, right top, from(#cccccc), to(#00cfc8));
  background: linear-gradient(to right, #cccccc, #00cfc8);
  position: relative;
  display: block;
  -webkit-box-shadow: 0 5px 6px rgba(0, 207, 200, 0.3);
          box-shadow: 0 5px 6px rgba(0, 207, 200, 0.3);
  margin: auto;
  padding: 4px;
}
.learnMore p {
  border: solid 2px #fff;
  border-radius: 99px;
  margin: 0;
  padding: 15px;
}
.learnMore:after {
  content: ">";
  font-weight: normal;
  position: absolute;
  right: 20px;
  top: 47%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 16px;
  color: white;
}
@media (hover: hover) and (pointer: fine) {
  .learnMore:hover {
    opacity: 0.5;
  }
}
@media screen and (max-width: 480px) {
  .learnMore {
    max-width: 80%;
    font-size: 14px;
  }
  .learnMore p {
    padding: 10px;
  }
}

.viewMore {
  max-width: 350px;
  width: 100%;
  font-size: clamp(12px, 2vw, 16px);
  font-weight: bold;
  text-align: center;
  border: solid 2px #000;
  border-radius: 99px;
  display: block;
  position: relative;
  overflow: hidden;
  margin: auto;
  padding: 20px;
}
.viewMore span {
  position: relative;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
  z-index: 1;
}
.viewMore:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #000;
  z-index: 0;
  -webkit-transition: width 0.2s ease;
  transition: width 0.2s ease;
}
@media (hover: hover) and (pointer: fine) {
  .viewMore:hover:before {
    width: 100%;
    color: #fff;
  }
  .viewMore:hover span {
    color: #fff;
  }
}

.viewMore_white {
  max-width: 350px;
  width: 100%;
  color: #fff !important;
  font-size: clamp(12px, 2vw, 16px);
  font-weight: bold;
  text-align: center;
  border: solid 2px #fff;
  border-radius: 99px;
  display: block;
  position: relative;
  overflow: hidden;
  margin: auto;
  padding: 20px;
}
.viewMore_white span {
  position: relative;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
  z-index: 1;
}
.viewMore_white:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #fff;
  z-index: 0;
  -webkit-transition: width 0.2s ease;
  transition: width 0.2s ease;
}
@media (hover: hover) and (pointer: fine) {
  .viewMore_white:hover:before {
    width: 100%;
    color: #fff;
  }
  .viewMore_white:hover span {
    color: #000;
  }
}
@media screen and (max-width: 480px) {
  .viewMore_white {
    max-width: 80%;
    padding: 15px;
  }
}

.viewMore_yellow {
  max-width: 350px;
  width: 100%;
  color: #000 !important;
  font-weight: bold;
  text-align: center;
  background: #FFEE00 !important;
  border-radius: 99px;
  display: block;
  position: relative;
  overflow: hidden;
  margin: auto;
  padding: 20px;
}
.viewMore_yellow span {
  position: relative;
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease;
  z-index: 1;
}
.viewMore_yellow:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background-color: #000;
  z-index: 0;
  -webkit-transition: width 0.2s ease;
  transition: width 0.2s ease;
}
.viewMore_yellow:hover:before {
  width: 100%;
  color: #fff;
}
.viewMore_yellow:hover span {
  color: #fff;
}

@media screen and (max-width: 768px) {
  .viewMore,
  .viewMore_yellow {
    max-width: 300px;
    padding: 20px;
  }
}
body {
  background: #fff;
}
body:not([class*=frontpage]) {
  padding-top: 65px;
}

body.archive.no-scrollable-main .main,
body.single.no-scrollable-main .main {
  height: auto !important;
}

.main {
  background: none;
}

.pc, .pc-768, .pc-480 {
  display: initial;
}

.sp, .sp-768, .sp-480 {
  display: none;
}

p:empty {
  display: none;
}

.str_spacing {
  letter-spacing: -10px;
}

.scroll-offset:before {
  content: "";
  display: block;
  height: 100px; /* ← ヘッダーの高さ */
  margin-top: -100px;
  visibility: hidden;
}

.icon_link {
  width: 14px;
  height: 14px;
  margin-left: 10px;
  vertical-align: middle;
}

.content,
.entry-content {
  margin-top: 0;
  margin-bottom: 0;
}

main {
  border: 0 !important;
}

main:not(.single) {
  margin: auto !important;
  padding: 0;
}

.page .date-tags,
.page .post-date,
.page .update-date {
  display: none;
}

section h2,
article h2 {
  font-family: "Noto Sans Japanese", sans-serif;
  font-size: clamp(16px, 7vw, 45px) !important;
  color: #000;
  line-height: 1 !important;
  background: none !important;
  padding: 0 !important;
  margin-bottom: clamp(20px, 5vw, 80px) !important;
}
section h2 p, section h2 span.subText,
article h2 p,
article h2 span.subText {
  font-size: clamp(8px, 2vw, 16px);
  text-shadow: none !important;
  display: block;
  margin-top: 10px;
}
section h2 p:first-letter, section h2 span.subText:first-letter,
article h2 p:first-letter,
article h2 span.subText:first-letter {
  text-shadow: none !important;
}

section h3 {
  border: none !important;
  padding: 0 !important;
}

div.title_head h2 span {
  letter-spacing: -20px;
}
div.title_head p {
  font-size: 25px;
  font-weight: bold;
}

.innerContents {
  max-width: 1000px;
  margin: auto;
  padding-top: 50px;
}
.innerContents:not(.innerContents.innerHead) {
  padding: 60px 0;
}

div.contactButton-wrap {
  text-align: center;
  padding: 80px 0 50px 0;
}
div.contactButton-wrap img {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
div.contactButton-wrap img:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  opacity: 0.5;
}

div.container {
  overflow: hidden;
}

section.archive-news {
  overflow: hidden;
}
section.archive-news div.newsList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: clamp(10px, 12vw, 20px);
}
section.archive-news div.newsList article {
  width: calc(50% - 20px);
  border-bottom: solid 1px #ccc;
  margin-bottom: 30px;
}
section.archive-news div.newsList article:first-child, section.archive-news div.newsList article:nth-child(2) {
  border-top: solid 1px #ccc;
  padding-top: 30px;
}
section.archive-news div.newsList article a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  margin-bottom: 30px;
}
section.archive-news div.newsList article a:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  opacity: 0.5;
}
section.archive-news div.newsList article figure {
  width: 160px;
}
section.archive-news div.newsList article figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 160px;
  height: 100px;
}
section.archive-news div.newsList article div {
  width: calc(100% - 190px);
}
section.archive-news div.newsList article div p {
  margin-bottom: 5px;
}
section.archive-news div.newsList article div p span {
  font-weight: normal;
  margin-right: 10px;
  padding: 3px 10px;
}
section.archive-news div.newsList article div h3,
section.archive-news div.newsList article div h4 {
  font-size: 100%;
  font-weight: normal;
  line-height: 1.5;
  border: 0;
  margin: 0;
  padding: 0;
}
section.archive-news div.storeNews article {
  border-bottom: solid 1px #707070;
}
@media screen and (min-width: 769px) {
  section.archive-news div.storeNews article:first-child, section.archive-news div.storeNews article:nth-child(2) {
    border-top: solid 1px #707070 !important;
  }
}
section.archive-news div.storeNews article a {
  color: #fff;
}
section.archive-news .pagination {
  text-align: center;
  border-top: solid 1px #ddd;
  border-bottom: solid 1px #ddd;
  margin-top: 30px;
  padding: 40px;
}
section.archive-news .pagination .page-numbers {
  font-size: 14px;
  color: #000;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #333;
  border-radius: 0;
  margin: 0 5px;
  padding: 6px 12px;
}
section.archive-news .pagination .page-numbers.current {
  background-color: #333;
  color: white;
  font-weight: bold;
  border-color: #333;
}
section.archive-news .pagination .next, section.archive-news .pagination .prev {
  width: 100px;
}
section.archive-news .pagination a:hover {
  background: #333;
}

section.companyAbout,
section.companyAbout-fandb-division {
  overflow: hidden;
  margin-bottom: 0;
}
section.companyAbout h2,
section.companyAbout-fandb-division h2 {
  margin-bottom: clamp(20px, 5vw, 80px) !important;
}
section.companyAbout div#companyAboutWrap,
section.companyAbout-fandb-division div#companyAboutWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
section.companyAbout div#companyAboutWrap a,
section.companyAbout-fandb-division div#companyAboutWrap a {
  width: calc(50% - 25px);
  background: #f8f8f8;
  padding-bottom: 10px;
}
section.companyAbout div#companyAboutWrap a figure,
section.companyAbout-fandb-division div#companyAboutWrap a figure {
  overflow: hidden;
}
section.companyAbout div#companyAboutWrap a figure img,
section.companyAbout-fandb-division div#companyAboutWrap a figure img {
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
section.companyAbout div#companyAboutWrap a dl,
section.companyAbout-fandb-division div#companyAboutWrap a dl {
  margin-bottom: 0;
  padding: 30px 30px 20px 30px;
}
section.companyAbout div#companyAboutWrap a dl dt, section.companyAbout div#companyAboutWrap a dl dd,
section.companyAbout-fandb-division div#companyAboutWrap a dl dt,
section.companyAbout-fandb-division div#companyAboutWrap a dl dd {
  margin: 0;
}
section.companyAbout div#companyAboutWrap a dl dt,
section.companyAbout-fandb-division div#companyAboutWrap a dl dt {
  font-size: 26px;
  font-weight: bold;
  text-align: center;
}
section.companyAbout div#companyAboutWrap a .viewMore,
section.companyAbout-fandb-division div#companyAboutWrap a .viewMore {
  max-width: 300px;
  padding: 10px;
}
@media (hover: hover) and (pointer: fine) {
  section.companyAbout div#companyAboutWrap a:hover figure img,
  section.companyAbout-fandb-division div#companyAboutWrap a:hover figure img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  section.companyAbout div#companyAboutWrap a:hover .viewMore:before,
  section.companyAbout-fandb-division div#companyAboutWrap a:hover .viewMore:before {
    width: 100%;
    color: #fff;
  }
  section.companyAbout div#companyAboutWrap a:hover .viewMore span,
  section.companyAbout-fandb-division div#companyAboutWrap a:hover .viewMore span {
    color: #fff;
  }
}

section.subPage-head {
  width: 100%;
  height: 200px;
  position: relative;
  margin-bottom: 0;
}
section.subPage-head h1 {
  width: 100%;
  height: 200px;
  font-size: clamp(12px, 6vw, 30px);
  font-weight: bold;
  color: #fff;
  line-height: 1.2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: absolute;
  left: 0;
  top: 0;
}
section.subPage-head h1 span {
  font-size: clamp(6px, 1vw, 14px);
  font-weight: normal;
}
section.subPage-head img {
  width: 100%;
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
}

section.company .is-layout-flex {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

dl#copmanyInfo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
dl#copmanyInfo dt, dl#copmanyInfo dd {
  padding: 20px 0;
}
dl#copmanyInfo dt:first-of-type,
dl#copmanyInfo dd:first-of-type {
  padding-top: 0;
}
dl#copmanyInfo dt {
  width: 200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: solid 2px #E6D700;
}
dl#copmanyInfo dd {
  width: calc(100% - 200px);
  border-bottom: solid 2px #ccc;
  padding-left: 20px;
}

section.recruit nav#recruit_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 100px;
}
section.recruit nav#recruit_nav a {
  max-width: 400px;
  width: 100%;
  text-align: center;
  color: #fff;
  background: #000;
  display: block;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  position: relative;
  margin: 0 20px;
  padding: 10px;
}
section.recruit nav#recruit_nav a:after {
  content: "";
  width: 18px;
  height: 18px;
  background: url(./images/Icon-ionic-md-arrow-down.svg) no-repeat;
  position: absolute;
  top: 13px;
  right: 15px;
}
@media (hover: hover) and (pointer: fine) {
  section.recruit nav#recruit_nav a:hover {
    opacity: 0.5;
  }
}
section.recruit section#message {
  text-align: center;
}
section.recruit section#message p#say {
  font-weight: bold;
  line-height: 1;
  position: relative;
  display: inline-block;
  font-size: 50px;
  margin-bottom: 80px;
}
section.recruit section#message p#say:before {
  content: "";
  width: 100%;
  height: 30px;
  background-color: #ff0;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: -1;
}
section.recruit section#message figure {
  margin-bottom: 80px;
}
section.recruit section#message ul {
  width: 680px;
  list-style: none;
  margin: auto;
  padding-left: 0;
}
section.recruit section#message ul li {
  font-size: 18px;
  font-weight: bold;
  text-align: left;
  line-height: 1.6;
  white-space: nowrap;
  position: relative;
  padding-left: 50px; /* アイコンの分の余白 */
  margin-bottom: 10px;
}
section.recruit section#message ul li:before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  width: 30px;
  height: 30px;
  background: url(./images/icon_check01.svg) no-repeat;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
section.recruit section.recruitDetails-head div.inner {
  max-width: 1000px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: auto;
}
section.recruit section.recruitDetails-head h2 {
  width: calc(100% - 350px);
  font-size: 60px !important;
  margin-bottom: 0 !important;
}
section.recruit section.recruitDetails-head h2 p {
  margin-bottom: 10px !important;
}
section.recruit section.recruitDetails-head figure {
  width: 350px;
}
section.recruit section.recruitDetails-head figure img {
  width: 350px;
  height: 250px;
  -o-object-fit: cover;
     object-fit: cover;
}
section.recruit section#fandbdivision section.recruitDetails-head {
  background: url(./images/recruit_h2_bg02_opacity01.png) no-repeat;
  background-size: cover;
}
section.recruit section#fandbdivision div.innerContents {
  padding-top: 50px;
}
section.recruit section#event section.recruitDetails-head {
  background: url(./images/recruit_h2_bg02_opacity01.png) no-repeat;
  background-size: cover;
}
section.recruit section#event section.recruitDetails-head div.inner {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
section.recruit section#event section.recruitDetails-head div.inner h2 {
  text-align: right;
}
section.recruit section#event div.innerContents {
  padding-top: 50px;
}
section.recruit dl.recruitInfo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
section.recruit dl.recruitInfo dt, section.recruit dl.recruitInfo dd {
  padding: 26.5px 0;
}
section.recruit dl.recruitInfo dt {
  width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: solid 2px #E6D700;
}
section.recruit dl.recruitInfo dd {
  width: calc(100% - 300px);
  border-bottom: solid 2px #ccc;
}

section.contact {
  margin-bottom: 0;
}
section.contact div.innerContents.contactStep {
  padding: 60px 0;
}
section.contact div.step-navi {
  margin-bottom: 50px;
  /*
  &.step-input li.step1,
  &.step-confirm li.step2,
  &.step-complete li.step3{
    background: variables.$yellow02;
    font-weight: bold;
  }
  */
}
section.contact div.step-navi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: auto;
}
section.contact div.step-navi li {
  width: 200px;
  font-weight: bold;
  line-height: 1.2;
  background: #ccc;
  color: #000;
  text-align: center;
  position: relative;
  margin: 0 30px;
  padding: 10px 0;
}
section.contact div.step-navi li p {
  font-size: 80%;
}
section.contact div.step-navi li:not(:last-child):before {
  content: "";
  width: 100px;
  height: 5px;
  background: #ccc;
  position: absolute;
  right: -100px;
  top: 22px;
}
section.contact div.step-navi li.is-active {
  background: #FFEE00; /* 今のステップ：黄色 */
}
section.contact div#contact-comment {
  text-align: center;
}
section.contact section#formWrap {
  background: #F8F8F8;
}
section.contact section#formWrap div.inner.innerContents {
  padding: 60px 0;
}
section.contact div.form-tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 60px;
}
section.contact div.form-tabs .tab-btn {
  width: calc(25% - 30px);
  font-weight: bold;
  color: #000;
  padding: 10px 20px;
  border: 2px solid #000;
  border-radius: 5px;
  background: #fff;
  cursor: pointer;
}
section.contact div.form-tabs .tab-btn.active {
  color: #fff;
  background: #000;
  position: relative;
}
@media screen and (min-width: 769px) {
  section.contact div.form-tabs .tab-btn.active:after {
    content: "";
    position: absolute;
    bottom: -14px; /* 三角の位置（ボタンの下） */
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    border-width: 15px 15px 0 15px;
    border-style: solid;
    border-color: #000 transparent transparent transparent;
  }
}
section.contact div.tab-form-wrap .tab-form {
  display: none;
}
section.contact div.tab-form-wrap .tab-form.active {
  display: block;
}
section.contact div.tab-form-wrap p.subtitle-contact {
  font-size: 14px;
  color: #fff;
  text-align: center;
  background: #000;
  padding: 10px;
}
section.contact button[type*=submit][data-action*=confirm],
section.contact button[type*=submit][data-action*=back],
section.contact button[type*=submit][data-action*=complete] {
  width: 300px; /* 画像に合わせて調整 */
  height: 80px;
  border: none;
  font-size: 25px;
  font-weight: bold;
  background: #FFEE00;
  cursor: pointer;
  -webkit-box-shadow: 3px 3px 5px #ccc;
          box-shadow: 3px 3px 5px #ccc;
}
section.contact div.formInner {
  background: #fff;
  padding: 50px;
}
section.contact div.formInner form.snow-monkey-form div.smf-item__col.smf-item__col--label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
section.contact div.formInner form.snow-monkey-form div.smf-item__description {
  width: 55px;
  font-size: 12px;
  color: #000;
  text-align: center;
  background: #FFEE00;
  display: initial;
  margin-top: 3px;
  padding: 0 8px;
}
section.contact div.formInner div.wpcf7 dl {
  border: solid 1px #ddd;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 30px;
}
section.contact div.formInner div.wpcf7 dl dt, section.contact div.formInner div.wpcf7 dl dd:not(.inquiry-content-heading) {
  padding: 25px;
}
section.contact div.formInner div.wpcf7 dl dt:not(:last-of-type),
section.contact div.formInner div.wpcf7 dl dd:not(:last-of-type) {
  border-bottom: solid 1px #ddd;
}
section.contact div.formInner div.wpcf7 dl dt {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 14em;
          flex: 0 0 14em;
  max-width: 14em;
  background: #f7f7f7;
  border-right: solid 1px #ddd;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
section.contact div.formInner div.wpcf7 dl dt span {
  width: 55px;
  font-size: 12px;
  color: #000;
  text-align: center;
  background: #FFEE00;
  display: block;
  margin-top: 3px;
  padding: 0 8px;
}
section.contact div.formInner div.wpcf7 dl dd:not(.inquiry-content-heading) {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 calc(100% - 14em);
          flex: 1 1 calc(100% - 14em);
  max-width: calc(100% - 14em);
}
section.contact div.formInner div.wpcf7 dl dd.inquiry-content-heading {
  width: 100%;
  color: #fff;
  text-align: center;
  background: #000;
  padding: 25px;
}
section.contact div.formInner div.wpcf7 dl dd.inquiry-content-heading h4 {
  font-size: 120%;
  margin-bottom: 10px;
}
section.contact div.formInner div.wpcf7 dl dd.inquiry-content-heading div {
  color: #ccc;
  line-height: 1.2;
}
section.contact div.formInner div.wpcf7 div.cf7-actions {
  text-align: center;
  position: relative;
}
section.contact div.formInner div.wpcf7 div.cf7-actions span.wpcf7-spinner {
  position: absolute;
}
section.contact div.formInner div.wpcf7 input[type=submit] {
  width: 300px;
  height: 80px;
  border: none;
  font-size: 25px;
  font-weight: bold;
  background: #FFEE00;
  cursor: pointer;
  -webkit-box-shadow: 3px 3px 5px #ccc;
          box-shadow: 3px 3px 5px #ccc;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  section.contact div.formInner div.wpcf7 input[type=submit]:hover {
    -webkit-transition: 0.3s;
    transition: 0.3s;
    opacity: 0.5;
  }
}
section.contact div.formInner h3 {
  font-size: 26px;
  color: #fff;
  text-align: center;
  line-height: 1.3;
  background: #000;
  padding: 30px 0 !important;
}
section.contact div.formInner h3 p {
  font-size: 18px;
  color: #ccc;
  margin-top: 10px;
}
section.contact div.formInner button[type=submit] {
  border: none;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
section.contact div.formInner button[type=submit]:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  opacity: 0.5;
}
section.contact div.formInner div.cf7-thanks {
  text-align: center;
  padding: 30px;
}

div#cf7-confirm h3 {
  font-weight: normal;
  text-align: center;
  color: #fff;
  background: #000;
  margin-bottom: 15px;
  padding: 10px;
}
div#cf7-confirm div#cf7-buttonWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
div#cf7-confirm div#cf7-buttonWrap button {
  width: 30%;
  color: #000;
  border: none;
  font-weight: bold;
  background: #FFEE00;
  cursor: pointer;
  -webkit-box-shadow: 3px 3px 5px #ccc;
          box-shadow: 3px 3px 5px #ccc;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  padding: 10px;
}
@media (hover: hover) and (pointer: fine) {
  div#cf7-confirm div#cf7-buttonWrap button:hover {
    -webkit-transition: 0.3s;
    transition: 0.3s;
    opacity: 0.5;
  }
}

section.single-news article.article {
  margin-bottom: 70px;
}
section.single-news article.article header.article-header.entry-header {
  border-bottom: solid 1px #ccc;
  margin-bottom: 25px;
}
section.single-news article.article p.cat-date span {
  margin-right: 5px;
  padding: 3px 5px;
}

aside.related-entries h2 {
  font-size: 100% !important;
  color: #fff !important;
  background: #000 !important;
  margin-bottom: 20px !important;
  padding: 15px 15px 16px 15px !important;
}
aside.related-entries .a-wrap {
  border-bottom: solid 1px #ddd;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  margin-bottom: 10px;
  padding: 0 !important;
}
aside.related-entries .a-wrap figure {
  margin: 0;
}
aside.related-entries .a-wrap div.related-entry-card-content {
  margin-bottom: 0 !important;
}
aside.related-entries .a-wrap div.related-entry-card-content p {
  margin-bottom: 3px;
}
aside.related-entries .a-wrap div.related-entry-card-content p span {
  padding: 3px 5px;
}
aside.related-entries .a-wrap div.related-entry-card-content h3 {
  margin-bottom: 3px;
}
@media (hover: hover) and (pointer: fine) {
  aside.related-entries .a-wrap:hover {
    background: none !important;
    opacity: 0.6;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
aside.related-entries[class*=works] div.related-list {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
aside.related-entries[class*=works] div.related-list .a-wrap {
  width: calc(50% - 10px);
}
aside.related-entries .a-wrap article[class*=works] div.related-entry-card-content p {
  margin-bottom: 8px;
}
aside.related-entries .a-wrap article[class*=works] div.related-entry-card-content h3 {
  margin-bottom: 8px;
}
aside.related-entries .a-wrap article[class*=works] div.related-entry-card-content span.workCat {
  font-size: 10px;
  border: solid 1px #000;
  padding: 2px 10px;
}

section.stage div#vanta-bg {
  @import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@300;400&display=swap");
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  overflow: hidden;
}
section.stage div#vanta-bg .scroll_down {
  position: absolute;
  bottom: 100px;
  right: calc(50% - 12px);
  -webkit-animation: arrowmove 1s ease-in-out infinite;
          animation: arrowmove 1s ease-in-out infinite;
}
section.stage div#vanta-bg .scroll_down a {
  position: absolute;
  left: -24px;
  bottom: 30px;
  color: #fff;
  font-size: 14px;
  font-family: "Josefin Sans", sans-serif;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  width: 24px;
  height: 24px;
  text-decoration: none;
}
section.stage div#vanta-bg .text {
  display: block;
  margin-top: 70px;
  margin-left: -14px;
  font-size: 12px;
  color: #fff;
  text-transform: uppercase;
  white-space: nowrap;
  letter-spacing: 2px;
}
section.stage div#vanta-bg .arrow {
  position: absolute;
  width: 28px;
  height: 5px;
  opacity: 0;
  -webkit-transform: scale3d(0.5, 0.5, 0.5);
          transform: scale3d(0.5, 0.5, 0.5);
  -webkit-animation: move 3s ease-out infinite;
          animation: move 3s ease-out infinite;
}
section.stage div#vanta-bg .arrow:first-child {
  -webkit-animation: move 3s ease-out 1s infinite;
          animation: move 3s ease-out 1s infinite;
}
section.stage div#vanta-bg .arrow:nth-child(2) {
  -webkit-animation: move 3s ease-out 2s infinite;
          animation: move 3s ease-out 2s infinite;
}
section.stage div#vanta-bg .arrow:before,
section.stage div#vanta-bg .arrow:after {
  content: " ";
  position: absolute;
  top: 0;
  height: 100%;
  width: 51%;
  background: #fff;
}
section.stage div#vanta-bg .arrow:before {
  left: 0;
  -webkit-transform: skew(0deg, 30deg);
          transform: skew(0deg, 30deg);
}
section.stage div#vanta-bg .arrow:after {
  right: 0;
  width: 50%;
  -webkit-transform: skew(0deg, -30deg);
          transform: skew(0deg, -30deg);
}
@-webkit-keyframes move {
  25% {
    opacity: 1;
  }
  33% {
    opacity: 1;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
  }
  67% {
    opacity: 1;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(55px) scale3d(0.5, 0.5, 0.5);
            transform: translateY(55px) scale3d(0.5, 0.5, 0.5);
  }
}
@keyframes move {
  25% {
    opacity: 1;
  }
  33% {
    opacity: 1;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
  }
  67% {
    opacity: 1;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(55px) scale3d(0.5, 0.5, 0.5);
            transform: translateY(55px) scale3d(0.5, 0.5, 0.5);
  }
}
section.stage div#vanta-bg p {
  width: clamp(50px, 6vw, 100px);
  -webkit-transition: -webkit-transform 0.1s ease-out;
  transition: -webkit-transform 0.1s ease-out;
  transition: transform 0.1s ease-out;
  transition: transform 0.1s ease-out, -webkit-transform 0.1s ease-out;
  will-change: transform;
  -webkit-animation: float 4s ease-in-out infinite;
          animation: float 4s ease-in-out infinite;
}

@-webkit-keyframes float {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -10px);
            transform: translate(0, -10px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}

@keyframes float {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -10px);
            transform: translate(0, -10px);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
section#fp_business {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
section#fp_business a {
  width: 50%;
  color: #fff;
  text-align: center;
  display: block;
  overflow: hidden;
  position: relative;
  padding: 10vw 50px;
}
section#fp_business a:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
section#fp_business a h3, section#fp_business a div, section#fp_business a p {
  position: relative;
  z-index: 1;
}
section#fp_business a h3 {
  font-size: 350%;
  border: 0;
  margin-bottom: 20px;
  padding: 0;
}
section#fp_business a div {
  margin-bottom: 50px;
}
section#fp_business a p {
  max-width: 250px;
  border: solid 2px #fff;
  border-radius: 99px;
  margin: auto;
}
section#fp_business a:first-child {
  background: url(./images/business_fandbdivision_bg01.jpg) no-repeat center #000;
  background-size: cover;
}
section#fp_business a:first-child:after {
  background: rgba(204, 0, 0, 0.2);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  section#fp_business a:first-child:hover:after {
    background: rgba(204, 0, 0, 0.6);
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
section#fp_business a:last-child {
  background: url(./images/business_event_bg01.jpg) no-repeat center #000;
  background-size: cover;
}
section#fp_business a:last-child:after {
  background: rgba(0, 5, 170, 0.2);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  section#fp_business a:last-child:hover:after {
    background: rgba(0, 5, 170, 0.6);
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
section#fp_business a:last-child div {
  margin-bottom: 82px;
}

section#concept {
  overflow: hidden;
}
section#concept section#crossOver div {
  width: 100%;
  height: 100px;
  text-indent: -9999px;
}
section#concept section#crossOver div:first-of-type {
  background: url(./images/concept_crossover_img01.png) repeat-x;
  background-size: auto 100px;
  -webkit-animation: ani_crossOver01 15s linear infinite;
          animation: ani_crossOver01 15s linear infinite;
}
section#concept section#crossOver div:last-of-type {
  background: url(./images/concept_crossover_img02.png) repeat-x;
  background-size: auto 100px;
  -webkit-animation: ani_crossOver02 15s linear infinite;
          animation: ani_crossOver02 15s linear infinite;
}
@-webkit-keyframes ani_crossOver01 {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: -1846px;
  }
}
@keyframes ani_crossOver01 {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: -1846px;
  }
}
@-webkit-keyframes ani_crossOver02 {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: 1978px;
  }
}
@keyframes ani_crossOver02 {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: 1978px;
  }
}
section#concept section#crossOver p {
  font-size: clamp(12px, 3.5vw, 22px);
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
  margin: 20px 0;
  /*
  span{
    font-family: 'Noto Sans Japanese', sans-serif;
    color:variables.$limeGreen;
  }
  */
}

section#point01 div.ccp_midashi,
section#point02 div.ccp_midashi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 50px;
}
section#point01 div.ccp_midashi p.pointMidashi,
section#point02 div.ccp_midashi p.pointMidashi {
  width: clamp(100px, 40vw, 220px);
  height: clamp(30px, 10vw, 40px);
  background-color: black;
  color: white;
  font-family: Arial, sans-serif;
  font-size: clamp(10px, 3vw, 18px);
  font-weight: bold;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  clip-path: polygon(0% 0%, 85% 0%, 100% 50%, 85% 100%, 0% 100%);
  margin-bottom: 5px;
  padding-left: 20px;
}
section#point01 div.ccp_midashi p.pointMidashi span,
section#point02 div.ccp_midashi p.pointMidashi span {
  font-size: clamp(14px, 4.5vw, 30px);
  color: #FFEE00;
  margin-left: 5px;
}
section#point01 div.ccp_midashi h3,
section#point02 div.ccp_midashi h3 {
  font-size: clamp(30px, 9.5vw, 45px) !important;
  line-height: 1.3 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}
section#point01 div.ccp_midashi h3 p,
section#point02 div.ccp_midashi h3 p {
  font-size: clamp(10px, 3vw, 14px);
  display: block;
}
section#point01 div.ccp_midashi figure,
section#point02 div.ccp_midashi figure {
  width: 350px;
}
section#point01 div.ccp_midashi figure img,
section#point02 div.ccp_midashi figure img {
  width: 450px;
  height: 150px;
  -o-object-fit: cover;
     object-fit: cover;
}
section#point01 div.readWrap,
section#point02 div.readWrap {
  text-align: center;
  margin-bottom: 50px;
}
section#point01 div.readWrap p,
section#point02 div.readWrap p {
  background-color: #FFEE00;
  color: black;
  font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; /* Example Japanese fonts */
  font-weight: bold;
  line-height: 1.2;
  padding: 10px 20px; /* Adjust padding as needed */
  display: inline-block; /* To make background fit content */
  font-size: clamp(14px, 4.5vw, 30px);
  margin: auto auto 30px auto;
  padding: 0 0 0 20px;
}
section#point01 {
  background: #F8F8F8;
  position: relative;
  /*
  //@media:768
  @media screen and (max-width: 768px){
    &:after{
      bottom: -60px;
      border-left: 80px solid transparent;
      border-right: 80px solid transparent;
      border-top: 60px solid $color;
    }
  }
  // /@media:768
  */
}
section#point01:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -80px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 100px solid transparent;
  border-right: 100px solid transparent;
  border-top: 80px solid #F8F8F8;
}
@media screen and (max-width: 1000px) {
  section#point01:after {
    bottom: -60px;
    border-left: 80px solid transparent;
    border-right: 80px solid transparent;
    border-top: 60px solid #F8F8F8;
  }
}
@media screen and (max-width: 480px) {
  section#point01:after {
    bottom: -40px;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 40px solid #F8F8F8;
  }
}
section#point01 section#lineup_list {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 250px 3.5% 250px;
  grid-template-rows: 250px 250px;
  -ms-grid-columns: 31% 3.5% 31% 3.5% 31%;
  grid-template-columns: 31% 31% 31%;
  grid-gap: 3.5%;
}
section#point01 section#lineup_list > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
section#point01 section#lineup_list > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}
section#point01 section#lineup_list > *:nth-child(3) {
  -ms-grid-row: 1;
  -ms-grid-column: 5;
}
section#point01 section#lineup_list > *:nth-child(4) {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
}
section#point01 section#lineup_list > *:nth-child(5) {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
}
section#point01 section#lineup_list > *:nth-child(6) {
  -ms-grid-row: 3;
  -ms-grid-column: 5;
}
section#point01 section#lineup_list figure figcaption {
  font-size: 14px;
  text-align: center;
  color: #000;
  background: #fff;
  padding: 10px;
}

section#point02 div.inner.innerContents {
  padding-bottom: 60px;
}
section#point02 div.ccp_midashi {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
section#point02 div.ccp_midashi div {
  text-align: right;
}
section#point02 div.ccp_midashi div p.pointMidashi {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  clip-path: polygon(100% 0%, 15% 0%, 0% 50%, 15% 100%, 100% 100%);
  margin-left: auto;
  padding-right: 20px;
}
section#point02 section#endToEnd_graf {
  margin-bottom: 50px;
}
section#point02 section#endToEnd_graf figure {
  text-align: center;
}
section#point02 section#endToEnd_graf figure img[src*=sp] {
  display: none;
}
section#point02 section#endToEnd_graf p.arrow {
  text-align: center;
  margin: 30px 0;
}
section#point02 section#endToEnd_graf p.arrow img {
  max-width: 50px;
}
section#point02 section#endToEnd_graf section#point02_graf_details-sp {
  display: none;
}

section#news {
  overflow: hidden;
  background: #F8F8F8;
}
section#news div.newsList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: clamp(10px, 12vw, 20px);
}
section#news div.newsList article {
  width: calc(50% - 20px);
  border-bottom: solid 1px #ccc;
  margin-bottom: 30px;
}
section#news div.newsList article:first-child, section#news div.newsList article:nth-child(2) {
  border-top: solid 1px #ccc;
  padding-top: 30px;
}
section#news div.newsList article a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  margin-bottom: 30px;
}
section#news div.newsList article a:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  opacity: 0.5;
}
section#news div.newsList article figure {
  width: 160px;
}
section#news div.newsList article figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 160px;
  height: 100px;
}
section#news div.newsList article div {
  width: calc(100% - 190px);
}
section#news div.newsList article div p {
  margin-bottom: 5px;
}
section#news div.newsList article div p span {
  font-weight: normal;
  margin-right: 10px;
  padding: 3px 10px;
}
section#news div.newsList article div h3,
section#news div.newsList article div h4 {
  font-size: 100%;
  font-weight: normal;
  line-height: 1.5;
  border: 0;
  margin: 0;
  padding: 0;
}
section#news div.storeNews article {
  border-bottom: solid 1px #707070;
}
@media screen and (min-width: 769px) {
  section#news div.storeNews article:first-child, section#news div.storeNews article:nth-child(2) {
    border-top: solid 1px #707070 !important;
  }
}
section#news div.storeNews article a {
  color: #fff;
}
section#news h2 {
  margin-bottom: clamp(20px, 5vw, 60px) !important;
}

section#f-and-b-division_head {
  width: 100%;
  height: 500px;
  background: url(./images/f-and-b-division_stage01.jpg) #d9dada no-repeat center;
  background-size: auto 100%;
}
section#f-and-b-division_head div.inner {
  width: 1000px;
  margin: auto;
  margin-bottom: 50px;
  padding-top: 50px;
}
section#f-and-b-division_head div.inner h2 {
  font-size: clamp(20px, 8.5vw, 65px) !important;
  color: #000;
  text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 20px #fff;
  line-height: 1.2 !important;
  margin-bottom: 20px !important;
}
section#f-and-b-division_head div.inner h2 span {
  letter-spacing: -40px;
}
section#f-and-b-division_head div.inner p {
  font-size: clamp(12px, 3vw, 22px);
  font-weight: bold;
  color: #000;
  text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 20px #fff;
  line-height: 1.4;
}
section#f-and-b-division_head div.f-and-b-division-animation {
  height: 100px;
  text-indent: -9999px;
  background: url(./images/f-and-b-division_stage_photo01.png) repeat-x;
  background-size: auto 100px;
  -webkit-animation: ani_f-and-b-division-animation 15s linear infinite;
          animation: ani_f-and-b-division-animation 15s linear infinite;
}
@-webkit-keyframes ani_f-and-b-division-animation {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: -948px;
  }
}
@keyframes ani_f-and-b-division-animation {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: -948px;
  }
}

article.f-and-b-division {
  margin-bottom: 0 !important;
}
article.f-and-b-division h1 {
  margin-bottom: 10px;
}
article.f-and-b-division h2 {
  line-height: 1.2;
  margin-bottom: 10px !important;
}
article.f-and-b-division h2 + p {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: -1px;
  line-height: 1.5;
}
article.f-and-b-division div.entry-content {
  margin-bottom: 0;
}
article.f-and-b-division section#f-and-b-division-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 60px;
  padding-top: 20px;
}
article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) {
  width: calc(25% - 15px);
  background: #F8F8F8;
  display: block;
}
article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) figure {
  overflow: hidden;
}
article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) figure img {
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl {
  margin: 0;
  padding: 15px;
}
article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl dt {
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
}
article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl dt p {
  font-size: 60%;
  font-weight: normal;
  margin: 5px 0 0 0;
}
article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl dd {
  margin: 0;
}
article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl dd:first-of-type {
  text-align: center;
  color: #fff;
  background: #000;
  margin-bottom: 10px;
  padding: 5px 0;
}
article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl .viewMore {
  max-width: 300px;
  margin: 20px auto 0 auto;
  padding: 10px;
}
@media (hover: hover) and (pointer: fine) {
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow):hover figure img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow):hover .viewMore:before {
    width: 100%;
    color: #fff;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow):hover .viewMore span {
    color: #fff;
  }
}
@media screen and (max-width: 480px) {
  article.f-and-b-division section#f-and-b-division-category dl dt {
    font-size: 14px;
  }
}
article.f-and-b-division section#f-and-b-division-category a {
  pointer-events: none;
}
article.f-and-b-division section#f-and-b-division-category a.viewMore_yellow {
  margin-top: 50px;
}
article.f-and-b-division section#f-and-b-division-successes {
  background: #F8F8F8;
  margin-bottom: 0;
}
article.f-and-b-division section#f-and-b-division-successes div.title_head {
  text-align: right;
  margin-bottom: 50px;
}
article.f-and-b-division section#f-and-b-division-successes div.title_head p:first-of-type {
  margin-bottom: 10px;
}
article.f-and-b-division section#f-and-b-division-successes div.title_head p span {
  letter-spacing: -12px;
}
article.f-and-b-division div.f-and-b-division-works {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 50px;
}
article.f-and-b-division div.f-and-b-division-works article {
  width: calc(25% - 15px);
  margin-bottom: 10px;
}
article.f-and-b-division div.f-and-b-division-works article figure {
  overflow: hidden;
  margin-bottom: 15px;
}
article.f-and-b-division div.f-and-b-division-works article figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 235px;
  height: 166px;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
article.f-and-b-division div.f-and-b-division-works article div {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  /*
  //works_tag
  div.works_tag{
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    span{
      font-size: 8px;          
      background: #DFDFDF;            
      padding: 2px 5px;
    }
  }
  // /works_tag
  */
}
article.f-and-b-division div.f-and-b-division-works article div p {
  font-size: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
article.f-and-b-division div.f-and-b-division-works article div p span {
  font-size: 10px;
  line-height: 1.2;
  padding: 3px 5px 2px 5px;
}
article.f-and-b-division div.f-and-b-division-works article div h3 {
  font-size: 100%;
  line-height: 1.3;
  margin-bottom: 15px;
}
@media (hover: hover) and (pointer: fine) {
  article.f-and-b-division div.f-and-b-division-works article:hover figure img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  article.f-and-b-division div.f-and-b-division-works article:hover div {
    opacity: 0.5;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
@media screen and (min-width: 769px), screen and (max-width: 480px) {
  article.f-and-b-division div.f-and-b-division-works article:nth-child(n+9) {
    display: none;
  }
}
@media screen and (max-width: 1000px) {
  article.f-and-b-division div.f-and-b-division-works {
    gap: 15px;
  }
  article.f-and-b-division div.f-and-b-division-works article {
    width: calc(25% - 11.3px);
  }
  article.f-and-b-division div.f-and-b-division-works article figure img {
    width: 100%;
    height: 120px;
  }
}
@media screen and (max-width: 768px) {
  article.f-and-b-division div.f-and-b-division-works {
    gap: 10px;
  }
  article.f-and-b-division div.f-and-b-division-works article {
    width: calc(33.3333333333% - 7px);
  }
  article.f-and-b-division div.f-and-b-division-works article figure img {
    max-height: 150px;
    height: 20vw;
  }
}
@media screen and (max-width: 480px) {
  article.f-and-b-division div.f-and-b-division-works {
    gap: 10px;
  }
  article.f-and-b-division div.f-and-b-division-works article {
    width: calc(50% - 5px);
  }
  article.f-and-b-division div.f-and-b-division-works article figure img {
    max-height: 150px;
    height: 30vw;
  }
  article.f-and-b-division div.f-and-b-division-works article h3 {
    font-size: 14px !important;
  }
}
article.f-and-b-division section#storeManagement {
  background: #000;
  margin-bottom: 0;
}
article.f-and-b-division section#storeManagement h2 {
  width: 100%;
  color: #fff;
  text-align: center;
  margin-bottom: clamp(20px, 8vw, 70px) !important;
}
article.f-and-b-division section#storeManagement section#storeManagement-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 40px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 100px;
}
article.f-and-b-division section#storeManagement article.storeBox {
  width: calc(50% - 20px);
}
article.f-and-b-division section#storeManagement article.storeBox figure img {
  height: 350px;
  -o-object-fit: cover;
     object-fit: cover;
}
article.f-and-b-division section#storeManagement article.storeBox div {
  color: #fff;
  background: #222;
  padding: 25px;
}
article.f-and-b-division section#storeManagement article.storeBox div h3 {
  font-size: clamp(18px, 3vw, 24px);
  text-align: center;
  border-bottom: solid 1px #000 !important;
  margin-bottom: 25px;
  padding-bottom: 25px !important;
}
article.f-and-b-division section.store-news {
  overflow: hidden;
}
article.f-and-b-division section.store-news div.newsList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: clamp(10px, 12vw, 20px);
}
article.f-and-b-division section.store-news div.newsList article {
  width: calc(50% - 20px);
  border-bottom: solid 1px #ccc;
  margin-bottom: 30px;
}
article.f-and-b-division section.store-news div.newsList article:first-child, article.f-and-b-division section.store-news div.newsList article:nth-child(2) {
  border-top: solid 1px #ccc;
  padding-top: 30px;
}
article.f-and-b-division section.store-news div.newsList article a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  margin-bottom: 30px;
}
article.f-and-b-division section.store-news div.newsList article a:hover {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  opacity: 0.5;
}
article.f-and-b-division section.store-news div.newsList article figure {
  width: 160px;
}
article.f-and-b-division section.store-news div.newsList article figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 160px;
  height: 100px;
}
article.f-and-b-division section.store-news div.newsList article div {
  width: calc(100% - 190px);
}
article.f-and-b-division section.store-news div.newsList article div p {
  margin-bottom: 5px;
}
article.f-and-b-division section.store-news div.newsList article div p span {
  font-weight: normal;
  margin-right: 10px;
  padding: 3px 10px;
}
article.f-and-b-division section.store-news div.newsList article div h3,
article.f-and-b-division section.store-news div.newsList article div h4 {
  font-size: 100%;
  font-weight: normal;
  line-height: 1.5;
  border: 0;
  margin: 0;
  padding: 0;
}
article.f-and-b-division section.store-news div.storeNews article {
  border-bottom: solid 1px #707070;
}
@media screen and (min-width: 769px) {
  article.f-and-b-division section.store-news div.storeNews article:first-child, article.f-and-b-division section.store-news div.storeNews article:nth-child(2) {
    border-top: solid 1px #707070 !important;
  }
}
article.f-and-b-division section.store-news div.storeNews article a {
  color: #fff;
}
article.f-and-b-division section.store-news h3 {
  font-size: clamp(16px, 7vw, 45px);
  color: #fff;
  margin-bottom: clamp(20px, 5vw, 50px);
}
article.f-and-b-division section.store-news h3 span {
  font-size: clamp(8px, 2vw, 16px);
  display: block;
  margin-top: 10px;
}

section#event_head {
  width: 100%;
  height: 500px;
  background: url(./images/event_stage01.webp) #000 no-repeat center;
  background-size: auto 110%;
}
section#event_head div.inner {
  width: 1000px;
  height: 100%;
  position: relative;
  margin: auto;
}
section#event_head div.inner h2, section#event_head div.inner p {
  color: #fff;
  text-shadow: 0 0 10px #000, 0 0 10px #000, 0 0 20px #000;
  position: absolute;
}
section#event_head div.inner h2 {
  font-size: clamp(20px, 6.5vw, 55px) !important;
  line-height: 1.2 !important;
  bottom: 20%;
  margin-bottom: 20px !important;
}
section#event_head div.inner h2 span {
  letter-spacing: -20px;
}
section#event_head div.inner p {
  font-size: clamp(12px, 3vw, 22px);
  font-weight: bold;
  line-height: 1.4;
  bottom: 8%;
}
section#event_head div.event-animation {
  height: 250px;
  text-indent: -9999px;
  background: url(./images/event_stage_photo01.png) repeat-x;
  background-size: auto 250px;
  -webkit-animation: ani_event-animation 15s linear infinite;
          animation: ani_event-animation 15s linear infinite;
}
@-webkit-keyframes ani_event-animation {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: -2370px;
  }
}
@keyframes ani_event-animation {
  0% {
    background-position-x: 0;
  }
  100% {
    background-position-x: -2370px;
  }
}

article.event {
  margin-bottom: 0 !important;
}
article.event h1 {
  margin-bottom: 10px;
}
article.event h2 {
  line-height: 1.2;
  margin-bottom: 10px !important;
}
article.event h2 + p {
  font-size: 16px;
  font-weight: bold;
  letter-spacing: -1px;
  line-height: 1.5;
}
article.event div.entry-content {
  margin-bottom: 0;
}
article.event div.eventIntro {
  padding-bottom: 80px !important;
}
article.event section#event-category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 70px;
  padding-top: 20px;
}
article.event section#event-category a:not(.viewMore_yellow) {
  width: calc(33.3333333333% - 13.4px);
  background: #F8F8F8;
  display: block;
}
article.event section#event-category a:not(.viewMore_yellow) figure {
  overflow: hidden;
}
article.event section#event-category a:not(.viewMore_yellow) figure img {
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transform-origin: center center;
          transform-origin: center center;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
article.event section#event-category a:not(.viewMore_yellow) dl {
  margin: 0;
  padding: 15px;
}
article.event section#event-category a:not(.viewMore_yellow) dl dt {
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
}
article.event section#event-category a:not(.viewMore_yellow) dl dt p {
  font-size: 60%;
  font-weight: normal;
  margin: 5px 0 0 0;
}
article.event section#event-category a:not(.viewMore_yellow) dl dd {
  margin: 0;
}
article.event section#event-category a:not(.viewMore_yellow) dl dd:first-of-type {
  text-align: center;
  color: #fff;
  background: #000;
  margin-bottom: 10px;
  padding: 5px 0;
}
article.event section#event-category a:not(.viewMore_yellow) dl .viewMore {
  max-width: 300px;
  margin: 20px auto 0 auto;
  padding: 10px;
}
@media (hover: hover) and (pointer: fine) {
  article.event section#event-category a:not(.viewMore_yellow):hover figure img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  article.event section#event-category a:not(.viewMore_yellow):hover .viewMore:before {
    width: 100%;
    color: #fff;
  }
  article.event section#event-category a:not(.viewMore_yellow):hover .viewMore span {
    color: #fff;
  }
}
@media screen and (max-width: 480px) {
  article.event section#event-category dl dt {
    font-size: 14px;
  }
}
article.event section#event-category a:not(.viewMore_yellow) {
  pointer-events: none;
}
article.event section#event-category a:not(.viewMore_yellow) dl dt {
  margin-bottom: 15px;
}
@media (hover: hover) and (pointer: fine) {
  article.event section#event-category a:not(.viewMore_yellow):hover figure img {
    -webkit-transform: scale(1) !important;
            transform: scale(1) !important;
  }
}
article.event section#event-category a.viewMore_yellow {
  margin-top: 50px;
}
article.event section#workFlow-head {
  height: 200px;
  background: url(./images/workflow_head-bg01.jpg) no-repeat center #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
article.event section#workFlow-head h2, article.event section#workFlow-head p {
  color: #fff;
  text-shadow: 0 0 10px #000;
  margin: 0;
}
article.event section#workFlow-head h2 {
  margin: 15px 0 10px 0;
}
article.event section#workFlow-head p {
  font-size: 14px;
  font-weight: normal;
  letter-spacing: 0;
}
article.event nav#flowNavi {
  height: 118px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
}
article.event nav#flowNavi ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  margin: -10px 0 0 0;
  padding: 0 90px 0 20px;
}
article.event nav#flowNavi ul li {
  position: relative;
  margin-right: -50px;
  padding: 0 5px;
}
article.event nav#flowNavi ul li:nth-child(1) {
  z-index: 9;
}
article.event nav#flowNavi ul li:nth-child(2) {
  z-index: 8;
}
article.event nav#flowNavi ul li:nth-child(3) {
  z-index: 7;
}
article.event nav#flowNavi ul li:nth-child(4) {
  z-index: 6;
}
article.event nav#flowNavi ul li:nth-child(5) {
  z-index: 5;
}
article.event nav#flowNavi ul li:nth-child(6) {
  z-index: 4;
}
article.event nav#flowNavi ul li:nth-child(7) {
  z-index: 3;
}
article.event nav#flowNavi ul li:nth-child(8) {
  z-index: 2;
}
article.event nav#flowNavi ul li:nth-child(9) {
  z-index: 1;
}
article.event nav#flowNavi ul li a {
  position: relative;
  display: inline-block;
}
article.event nav#flowNavi ul li a img {
  display: block;
  width: 95%;
  height: auto;
  -webkit-transition: opacity 0.5s ease;
  transition: opacity 0.5s ease;
}
article.event nav#flowNavi ul li a img[src*=hover] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
  article.event nav#flowNavi ul li a:hover img[src*=hover] {
    opacity: 1;
  }
  article.event nav#flowNavi ul li a:hover img:not([src*=hover]) {
    opacity: 0;
  }
}
article.event nav#flowNavi div {
  height: 73px;
  background: url(./images/workflow_nav_arrow01.svg) no-repeat right;
  background-size: 100%;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  article.event nav#flowNavi {
    height: 80px;
    margin-bottom: 1vw;
  }
  article.event nav#flowNavi ul {
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 80px 0 20px;
  }
  article.event nav#flowNavi ul li {
    min-width: 100px;
    width: 22vw;
  }
  article.event nav#flowNavi div {
    background-size: auto 36px !important;
    margin-bottom: 2px;
  }
}
@media screen and (max-width: 680px) {
  article.event nav#flowNavi {
    height: 60px;
    margin-bottom: 3vw;
  }
  article.event nav#flowNavi ul li {
    margin-right: -7vw;
  }
}
@media screen and (max-width: 480px) {
  article.event nav#flowNavi {
    height: 60px;
    margin-bottom: -5px;
  }
  article.event nav#flowNavi ul li {
    margin-right: -10vw;
  }
  article.event nav#flowNavi div {
    background-size: auto 6vw !important;
    margin-bottom: 7px;
  }
}
@media screen and (min-width: 769px) {
  article.event nav#flowNavi-sp {
    display: none;
  }
}
article.event section.stepHead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 50px;
}
article.event section.stepHead figure, article.event section.stepHead div {
  width: 360px;
}
article.event section.stepHead figure img {
  width: 450px;
  height: 280px;
  -o-object-fit: cover;
     object-fit: cover;
}
article.event section.stepHead p.stepNum {
  font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
  font-size: 30px;
  font-weight: bold;
  color: #000;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
}
article.event section.stepHead p.stepNum span:last-child {
  font-size: 130px;
  letter-spacing: -2px;
}
article.event section.stepHead div {
  line-height: 1.5;
}
article.event section.stepHead div p {
  font-size: 12px;
  font-weight: bold;
  color: #E6D700;
  line-height: 1;
  margin-bottom: 5px;
}
article.event section.stepHead div h3 {
  font-size: 26px;
  color: #000;
  line-height: 1.2;
  margin-bottom: 20px !important;
}
article.event section.stepHead div a {
  max-width: 100%;
  margin-top: 20px;
}
article.event section.stepHead div a p {
  font-size: 100%;
  padding: 20px 15px;
}
article.event section.stepHead div a span {
  color: #fff;
}
article.event section.stepHead div a:hover span {
  color: #fff;
}
article.event section.stepHead div span {
  color: #c00;
}
article.event section.tableList01 {
  max-width: 800px;
  margin: auto;
}
article.event section.tableList01 dl {
  background: #F8F8F8;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
article.event section.tableList01 dl dt {
  width: 150px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  color: #fff;
  background: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
article.event section.tableList01 dl dt span {
  font-size: 14px;
  font-weight: normal;
  color: #ff0;
}
article.event section.tableList01 dl dd {
  width: calc(100% - 100px - 50px);
  color: #000;
  margin: 0;
  padding: 25px;
}
article.event section.tableList01 dl dd p {
  text-align: center;
  border: solid 1px #000;
  border-radius: 99px;
  margin-bottom: 10px;
  padding: 5px;
}
article.event section.tableList01 dl dd p:not(:first-of-type) {
  margin-top: 10px;
}
article.event section.tableList01 dl dd span {
  color: #c00;
}
article.event section.tableList02 {
  max-width: 800px;
  margin: auto;
}
article.event section.tableList02 dl {
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 15px;
}
article.event section.tableList02 dl dt {
  width: 250px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.5;
  color: #fff;
  background: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
article.event section.tableList02 dl dd {
  width: calc(100% - 200px - 50px);
  color: #000;
  margin: 0;
  padding: 25px;
}
article.event section.productSteps {
  max-width: 650px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; /* 項目を縦に並べる */
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; /* 左寄せ */
  margin: auto;
  padding: 20px;
  font-family: sans-serif; /* 適宜フォントを指定 */
}
article.event section.productSteps div.step-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; /* 番号とコンテンツを横並びにする */
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; /* 上端を揃える */
  position: relative; /* 擬似要素の位置指定のために必要 */
  margin-bottom: 50px; /* 各項目の下余白 */
  padding-left: 40px; /* 番号と線のスペース */
}
article.event section.productSteps div.step-item:not(:last-child)::after {
  content: "";
  position: absolute;
  left: 26px; /* 番号の中央に合わせる */
  top: 40px; /* 番号の下から線を開始 */
  bottom: -100px; /* 次の項目の上まで線が伸びるように調整 */
  width: 8px; /* 線の太さ */
  background-color: #333; /* 線の色 */
  z-index: 0; /* 番号の下に表示 */
}
article.event section.productSteps .step-number {
  width: 60px; /* 円の幅 */
  height: 60px; /* 円の高さ */
  border-radius: 50%; /* 円形にする */
  background-color: black; /* 黒背景 */
  color: white; /* 白文字 */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 30px;
  font-weight: bold;
  -ms-flex-negative: 0;
      flex-shrink: 0; /* 番号が縮まないようにする */
  position: absolute; /* 番号をabsoluteで配置して、コンテンツと重ねる */
  left: 0; /* step-itemの左端に配置 */
  top: 0;
  z-index: 1; /* 番号を線の上に表示 */
  padding-bottom: 8px;
}
article.event section.productSteps dl.step-content {
  font-weight: bold;
  line-height: 1.3;
  margin-left: 35px; /* 番号とテキストの間のスペース */
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1; /* 残りのスペースを埋める */
}
article.event section.productSteps dl.step-content dt {
  font-size: 24px;
  color: #000;
  margin-top: 0;
  margin-bottom: 5px;
}
article.event section.productSteps dl.step-content dd {
  color: #000;
  color: #555;
  margin: 0;
}
article.event div.step-summary {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  color: #000;
}
article.event div.step-summary span {
  background-color: #FFEE00;
  color: black;
  font-family: "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif; /* Example Japanese fonts */
  font-weight: bold;
  line-height: 1.2;
  padding: 10px 20px; /* Adjust padding as needed */
  display: inline-block; /* To make background fit content */
}
article.event section.step-details-step01 {
  background: #fff;
  position: relative;
  /*
  //@media:768
  @media screen and (max-width: 768px){
    &:after{
      bottom: -60px;
      border-left: 80px solid transparent;
      border-right: 80px solid transparent;
      border-top: 60px solid $color;
    }
  }
  // /@media:768
  */
  z-index: 1;
}
article.event section.step-details-step01:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -80px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 100px solid transparent;
  border-right: 100px solid transparent;
  border-top: 80px solid #fff;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step01:after {
    bottom: -60px;
    border-left: 80px solid transparent;
    border-right: 80px solid transparent;
    border-top: 60px solid #fff;
  }
}
@media screen and (max-width: 480px) {
  article.event section.step-details-step01:after {
    bottom: -40px;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 40px solid #fff;
  }
}
article.event section.step-details-step01 div.innerContents {
  padding-top: 20px;
}
article.event section.step-details-step01 h4 {
  font-size: 22px;
  text-align: center;
  border: none;
  margin-bottom: 50px;
  padding: 0;
}
article.event section.step-details-step02 {
  background: #F8F8F8;
  position: relative;
  /*
  //@media:768
  @media screen and (max-width: 768px){
    &:after{
      bottom: -60px;
      border-left: 80px solid transparent;
      border-right: 80px solid transparent;
      border-top: 60px solid $color;
    }
  }
  // /@media:768
  */
}
article.event section.step-details-step02:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -80px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 100px solid transparent;
  border-right: 100px solid transparent;
  border-top: 80px solid #F8F8F8;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step02:after {
    bottom: -60px;
    border-left: 80px solid transparent;
    border-right: 80px solid transparent;
    border-top: 60px solid #F8F8F8;
  }
}
@media screen and (max-width: 480px) {
  article.event section.step-details-step02:after {
    bottom: -40px;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 40px solid #F8F8F8;
  }
}
article.event section.step-details-step02 h4 {
  background-color: black; /* 背景色 */
  color: white;
  font-size: clamp(14px, 5vw, 22px);
  font-weight: bold;
  display: inline-block;
  text-align: center;
  position: relative; /* clip-path の適用 */
  /* 矢印の形状を作るための clip-path */
  /* point1 point2 point3 point4 point5 point6 */
  /* 左の尖った部分: 0% 50% */
  /* 上の左端: 10% 0% */
  /* 右の尖った部分: 100% 50% */
  /* 下の右端: 90% 100% */
  /* 下の左端: 0% 100% */
  clip-path: polygon(0% 50%, 10% 0%, 90% 0%, 100% 50%, 90% 100%, 10% 100%);
  /* clip-path のパーセンテージを調整することで、尖り具合や全体の形を調整できます */
  margin-bottom: 50px;
  /* 画像に似せるための微調整 */
  padding: 20px 60px;
  margin-bottom: 45px !important;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step02 h4 {
    padding: 15px 40px;
  }
}
article.event section.step-details-step03 div.implementation {
  background: #FFEE00;
  position: relative;
  /*
  //@media:768
  @media screen and (max-width: 768px){
    &:after{
      bottom: -60px;
      border-left: 80px solid transparent;
      border-right: 80px solid transparent;
      border-top: 60px solid $color;
    }
  }
  // /@media:768
  */
  text-align: center;
  background: #FFEE00;
  z-index: 5;
  padding: 25px 0;
}
article.event section.step-details-step03 div.implementation:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -80px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 100px solid transparent;
  border-right: 100px solid transparent;
  border-top: 80px solid #FFEE00;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step03 div.implementation:after {
    bottom: -60px;
    border-left: 80px solid transparent;
    border-right: 80px solid transparent;
    border-top: 60px solid #FFEE00;
  }
}
@media screen and (max-width: 480px) {
  article.event section.step-details-step03 div.implementation:after {
    bottom: -40px;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 40px solid #FFEE00;
  }
}
article.event section.step-details-step03 div.implementation img {
  max-width: 250px;
}
article.event section.step-details-step04 {
  background: #F8F8F8;
  position: relative;
  /*
  //@media:768
  @media screen and (max-width: 768px){
    &:after{
      bottom: -60px;
      border-left: 80px solid transparent;
      border-right: 80px solid transparent;
      border-top: 60px solid $color;
    }
  }
  // /@media:768
  */
  z-index: 4;
}
article.event section.step-details-step04:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -80px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 100px solid transparent;
  border-right: 100px solid transparent;
  border-top: 80px solid #F8F8F8;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step04:after {
    bottom: -60px;
    border-left: 80px solid transparent;
    border-right: 80px solid transparent;
    border-top: 60px solid #F8F8F8;
  }
}
@media screen and (max-width: 480px) {
  article.event section.step-details-step04:after {
    bottom: -40px;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 40px solid #F8F8F8;
  }
}
article.event section.step-details-step04 h4 {
  background-color: black; /* 背景色 */
  color: white;
  font-size: clamp(14px, 5vw, 22px);
  font-weight: bold;
  display: inline-block;
  text-align: center;
  position: relative; /* clip-path の適用 */
  /* 矢印の形状を作るための clip-path */
  /* point1 point2 point3 point4 point5 point6 */
  /* 左の尖った部分: 0% 50% */
  /* 上の左端: 10% 0% */
  /* 右の尖った部分: 100% 50% */
  /* 下の右端: 90% 100% */
  /* 下の左端: 0% 100% */
  clip-path: polygon(0% 50%, 10% 0%, 90% 0%, 100% 50%, 90% 100%, 10% 100%);
  /* clip-path のパーセンテージを調整することで、尖り具合や全体の形を調整できます */
  margin-bottom: 50px;
  /* 画像に似せるための微調整 */
  padding: 20px 60px;
  margin-bottom: 50px !important;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step04 h4 {
    padding: 15px 40px;
  }
}
article.event section.step-details-step04 section.productSteps {
  margin-bottom: 70px;
}
article.event section.step-details-step05 {
  background: #fff;
  position: relative;
  /*
  //@media:768
  @media screen and (max-width: 768px){
    &:after{
      bottom: -60px;
      border-left: 80px solid transparent;
      border-right: 80px solid transparent;
      border-top: 60px solid $color;
    }
  }
  // /@media:768
  */
  z-index: 3;
}
article.event section.step-details-step05:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -80px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 100px solid transparent;
  border-right: 100px solid transparent;
  border-top: 80px solid #fff;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step05:after {
    bottom: -60px;
    border-left: 80px solid transparent;
    border-right: 80px solid transparent;
    border-top: 60px solid #fff;
  }
}
@media screen and (max-width: 480px) {
  article.event section.step-details-step05:after {
    bottom: -40px;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 40px solid #fff;
  }
}
article.event section.step-details-step05 h4 {
  background-color: black; /* 背景色 */
  color: white;
  font-size: clamp(14px, 5vw, 22px);
  font-weight: bold;
  display: inline-block;
  text-align: center;
  position: relative; /* clip-path の適用 */
  /* 矢印の形状を作るための clip-path */
  /* point1 point2 point3 point4 point5 point6 */
  /* 左の尖った部分: 0% 50% */
  /* 上の左端: 10% 0% */
  /* 右の尖った部分: 100% 50% */
  /* 下の右端: 90% 100% */
  /* 下の左端: 0% 100% */
  clip-path: polygon(0% 50%, 10% 0%, 90% 0%, 100% 50%, 90% 100%, 10% 100%);
  /* clip-path のパーセンテージを調整することで、尖り具合や全体の形を調整できます */
  margin-bottom: 50px;
  /* 画像に似せるための微調整 */
  padding: 20px 60px;
  margin-bottom: 50px !important;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step05 h4 {
    padding: 15px 40px;
  }
}
article.event section.step-details-step06 {
  background: #F8F8F8;
  position: relative;
  /*
  //@media:768
  @media screen and (max-width: 768px){
    &:after{
      bottom: -60px;
      border-left: 80px solid transparent;
      border-right: 80px solid transparent;
      border-top: 60px solid $color;
    }
  }
  // /@media:768
  */
  z-index: 2;
}
article.event section.step-details-step06:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -80px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 100px solid transparent;
  border-right: 100px solid transparent;
  border-top: 80px solid #F8F8F8;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step06:after {
    bottom: -60px;
    border-left: 80px solid transparent;
    border-right: 80px solid transparent;
    border-top: 60px solid #F8F8F8;
  }
}
@media screen and (max-width: 480px) {
  article.event section.step-details-step06:after {
    bottom: -40px;
    border-left: 50px solid transparent;
    border-right: 50px solid transparent;
    border-top: 40px solid #F8F8F8;
  }
}
article.event section.step-details-step06 h4 {
  background-color: black; /* 背景色 */
  color: white;
  font-size: clamp(14px, 5vw, 22px);
  font-weight: bold;
  display: inline-block;
  text-align: center;
  position: relative; /* clip-path の適用 */
  /* 矢印の形状を作るための clip-path */
  /* point1 point2 point3 point4 point5 point6 */
  /* 左の尖った部分: 0% 50% */
  /* 上の左端: 10% 0% */
  /* 右の尖った部分: 100% 50% */
  /* 下の右端: 90% 100% */
  /* 下の左端: 0% 100% */
  clip-path: polygon(0% 50%, 10% 0%, 90% 0%, 100% 50%, 90% 100%, 10% 100%);
  /* clip-path のパーセンテージを調整することで、尖り具合や全体の形を調整できます */
  margin-bottom: 50px;
  /* 画像に似せるための微調整 */
  padding: 20px 60px;
  margin-bottom: 50px !important;
}
@media screen and (max-width: 1000px) {
  article.event section.step-details-step06 h4 {
    padding: 15px 40px;
  }
}
article.event section#event-works {
  background: #F8F8F8;
  margin-bottom: 0;
}
article.event section#event-works .innerContents:not(.innerContents.innerHead) {
  padding: 60px 0 80px 0;
}
article.event section#event-works div.title_head {
  text-align: right;
  margin-bottom: 80px;
}
article.event section#event-works div.title_head p {
  margin-bottom: 20px;
}
article.event section#event-works div.event-works {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 50px;
}
article.event section#event-works div.event-works article {
  width: calc(25% - 15px);
  margin-bottom: 10px;
}
article.event section#event-works div.event-works article figure {
  overflow: hidden;
  margin-bottom: 15px;
}
article.event section#event-works div.event-works article figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 235px;
  height: 166px;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
article.event section#event-works div.event-works article div {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  /*
  //works_tag
  div.works_tag{
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    span{
      font-size: 8px;          
      background: #DFDFDF;            
      padding: 2px 5px;
    }
  }
  // /works_tag
  */
}
article.event section#event-works div.event-works article div p {
  font-size: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
article.event section#event-works div.event-works article div p span {
  font-size: 10px;
  line-height: 1.2;
  padding: 3px 5px 2px 5px;
}
article.event section#event-works div.event-works article div h3 {
  font-size: 100%;
  line-height: 1.3;
  margin-bottom: 15px;
}
@media (hover: hover) and (pointer: fine) {
  article.event section#event-works div.event-works article:hover figure img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  article.event section#event-works div.event-works article:hover div {
    opacity: 0.5;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
@media screen and (min-width: 769px), screen and (max-width: 480px) {
  article.event section#event-works div.event-works article:nth-child(n+9) {
    display: none;
  }
}
@media screen and (max-width: 1000px) {
  article.event section#event-works div.event-works {
    gap: 15px;
  }
  article.event section#event-works div.event-works article {
    width: calc(25% - 11.3px);
  }
  article.event section#event-works div.event-works article figure img {
    width: 100%;
    height: 120px;
  }
}
@media screen and (max-width: 768px) {
  article.event section#event-works div.event-works {
    gap: 10px;
  }
  article.event section#event-works div.event-works article {
    width: calc(33.3333333333% - 7px);
  }
  article.event section#event-works div.event-works article figure img {
    max-height: 150px;
    height: 20vw;
  }
}
@media screen and (max-width: 480px) {
  article.event section#event-works div.event-works {
    gap: 10px;
  }
  article.event section#event-works div.event-works article {
    width: calc(50% - 5px);
  }
  article.event section#event-works div.event-works article figure img {
    max-height: 150px;
    height: 30vw;
  }
  article.event section#event-works div.event-works article h3 {
    font-size: 14px !important;
  }
}

section.works {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 50px;
}
section.works article {
  width: calc(25% - 15px);
  margin-bottom: 10px;
}
section.works article figure {
  overflow: hidden;
  margin-bottom: 15px;
}
section.works article figure img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 235px;
  height: 166px;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
section.works article div {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  /*
  //works_tag
  div.works_tag{
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    span{
      font-size: 8px;          
      background: #DFDFDF;            
      padding: 2px 5px;
    }
  }
  // /works_tag
  */
}
section.works article div p {
  font-size: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  margin-bottom: 10px;
}
section.works article div p span {
  font-size: 10px;
  line-height: 1.2;
  padding: 3px 5px 2px 5px;
}
section.works article div h3 {
  font-size: 100%;
  line-height: 1.3;
  margin-bottom: 15px;
}
@media (hover: hover) and (pointer: fine) {
  section.works article:hover figure img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  section.works article:hover div {
    opacity: 0.5;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
}
@media screen and (min-width: 769px), screen and (max-width: 480px) {
  section.works article:nth-child(n+9) {
    display: none;
  }
}
@media screen and (max-width: 1000px) {
  section.works {
    gap: 15px;
  }
  section.works article {
    width: calc(25% - 11.3px);
  }
  section.works article figure img {
    width: 100%;
    height: 120px;
  }
}
@media screen and (max-width: 768px) {
  section.works {
    gap: 10px;
  }
  section.works article {
    width: calc(33.3333333333% - 7px);
  }
  section.works article figure img {
    max-height: 150px;
    height: 20vw;
  }
}
@media screen and (max-width: 480px) {
  section.works {
    gap: 10px;
  }
  section.works article {
    width: calc(50% - 5px);
  }
  section.works article figure img {
    max-height: 150px;
    height: 30vw;
  }
  section.works article h3 {
    font-size: 14px !important;
  }
}
section.works .pagination {
  text-align: center;
  border-top: solid 1px #ddd;
  border-bottom: solid 1px #ddd;
  margin-top: 30px;
  padding: 40px;
}
section.works .pagination .page-numbers {
  font-size: 14px;
  color: #000;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #333;
  border-radius: 0;
  margin: 0 5px;
  padding: 6px 12px;
}
section.works .pagination .page-numbers.current {
  background-color: #333;
  color: white;
  font-weight: bold;
  border-color: #333;
}
section.works .pagination .next, section.works .pagination .prev {
  width: 100px;
}
section.works .pagination a:hover {
  background: #333;
}
section.works div.inner.innerContents {
  width: 100%;
}
section.works nav#works_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  margin-bottom: 70px;
}
section.works nav#works_nav a {
  width: 200px;
  color: #000;
  text-align: center;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  border: solid 1px #000;
  padding: 10px;
}
section.works nav#works_nav a:hover {
  opacity: 0.5;
}
section.works nav#works_nav a.current {
  color: #fff;
  background: #000;
}
section.works div.works-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
}
section.works div.works-list article p.works-f-and-b span {
  background: #58cfd2;
}
section.works div.works-list article p.works-event span {
  background: #e26bbf;
}

div.works_tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 5px;
}
div.works_tag span {
  font-size: 8px;
  background: #DFDFDF;
  padding: 2px 5px;
}

section.single-works header.article-header.entry-header div.eye-catch-wrap {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
section.single-works header.article-header.entry-header h1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 50px 0;
}
section.single-works header.article-header.entry-header h1 span {
  font-size: 14px;
  display: inline-block;
  margin-right: 15px;
  padding: 0.2em 0.5em;
}
section.single-works header.article-header.entry-header h2 {
  font-size: clamp(14px, 5vw, 16px) !important;
  font-weight: normal;
  color: #fff;
  background: #000 !important;
  margin-bottom: 20px !important;
  padding: 10px 10px 12px 10px !important;
}
section.single-works header.article-header.entry-header dl.works-information {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
section.single-works header.article-header.entry-header dl.works-information a {
  text-decoration: underline;
}
section.single-works header.article-header.entry-header dl.works-information a:hover {
  text-decoration: none;
}
section.single-works header.article-header.entry-header dl.works-information dt, section.single-works header.article-header.entry-header dl.works-information dd {
  border-bottom: solid 1px #ccc;
  margin: 0 0 20px 0;
  padding-bottom: 20px;
}
section.single-works header.article-header.entry-header dl.works-information dt {
  width: 20%;
}
section.single-works header.article-header.entry-header dl.works-information dd {
  width: 80%;
}

@media (max-width: 1000px) {
  .pc {
    display: none;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  .pc-768 {
    display: none;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  .pc-480 {
    display: none;
  }
}
@media (max-width: 1000px) {
  .sp {
    display: initial;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  .sp-768 {
    display: initial;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  .sp-480 {
    display: initial;
  }
}
@media (max-width: 1000px) {
  section h2,
  article h2 {
    margin-bottom: 0 !important;
  }
  section h2 p,
  article h2 p {
    margin-top: 5px;
  }
  .scroll-offset:before {
    height: 50px; /* ← ヘッダーの高さ */
    margin-top: -50px;
  }
  .innerContents {
    padding: 50px 15px !important;
  }
}
@media (max-width: 1000px) and (max-width: 768px) {
  .innerContents {
    padding: 40px 15px !important;
  }
}
@media (max-width: 1000px) {
  .wp-block-columns {
    gap: 15px;
  }
}
@media (max-width: 1000px) and (max-width: 768px) {
  .entry-content {
    margin-bottom: 0;
  }
}
@media (max-width: 1000px) {
  div.hamburger-footer {
    font-size: 70%;
    line-height: 1.6;
    padding: 0 30px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  section.subPage-head {
    height: 25vw;
  }
  section.subPage-head h1 {
    height: 25vw;
  }
  section.subPage-head img {
    height: 25vw;
  }
}
@media (max-width: 1000px) {
  section.companyAbout div#companyAboutWrap,
  section.companyAbout-fandb-division div#companyAboutWrap {
    gap: 10px;
  }
  section.companyAbout a,
  section.companyAbout-fandb-division a {
    width: 50% !important;
  }
  section.companyAbout a dl,
  section.companyAbout-fandb-division a dl {
    padding: 15px 15px 5px 15px !important;
  }
  section.companyAbout a dl dt,
  section.companyAbout-fandb-division a dl dt {
    font-size: clamp(14px, 3vw, 16px) !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section.companyAbout,
  section.companyAbout-fandb-division {
    margin-bottom: 0;
  }
  section.companyAbout a,
  section.companyAbout-fandb-division a {
    width: 100% !important;
  }
}
@media (max-width: 1000px) {
  section.companyAbout .innerContents {
    padding-bottom: 0 !important;
  }
  section.company figure {
    display: none;
  }
  section.company .is-layout-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (max-width: 1000px) and (max-width: 768px) {
  section.company dl#copmanyInfo dt, section.company dl#copmanyInfo dd {
    font-size: 14px;
    padding: 15px 0;
  }
  section.company dl#copmanyInfo dt {
    width: 25vw;
  }
  section.company dl#copmanyInfo dd {
    width: calc(75vw - 30px);
  }
}
@media (max-width: 1000px) and (max-width: 480px) {
  section.company {
    margin-bottom: 0 !important;
  }
  section.company div.inner.innerContents {
    padding-bottom: 0 !important;
  }
  section.company dl#copmanyInfo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  section.company dl#copmanyInfo dt, section.company dl#copmanyInfo dd {
    width: calc(100vw - 30px);
  }
  section.company dl#copmanyInfo dt {
    font-size: 12px;
    color: #666;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    border: none;
    margin-bottom: 10px;
    padding: 0 !important;
  }
  section.company dl#copmanyInfo dd {
    border-bottom: solid 1px #eee;
    margin-bottom: 20px;
    padding: 0 0 20px 0 !important;
  }
}
@media (max-width: 1000px) {
  section.recruit nav#recruit_nav {
    gap: 10px;
    margin-bottom: 5vw;
  }
  section.recruit nav#recruit_nav a {
    margin: 0;
  }
  section.recruit section#message p#say {
    font-weight: bold;
    line-height: 1;
    position: relative;
    display: inline-block;
    font-size: clamp(14px, 5vw, 50px);
    margin-bottom: 5vw;
  }
  section.recruit section#message p#say:before {
    content: "";
    width: 100%;
    height: 2vw;
    background-color: #ff0;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
  }
  section.recruit section#fandbdivision,
  section.recruit section#event {
    padding-top: 0;
  }
  section.recruit section#fandbdivision div.contactButton-wrap {
    padding-bottom: 10px;
  }
  section.recruit section.recruitDetails-head h2 {
    font-size: clamp(14px, 5vw, 60px) !important;
    padding: 0 15px !important;
  }
  section.recruit dl.recruitInfo dt, section.recruit dl.recruitInfo dd {
    padding: 15px 0;
  }
  section.recruit dl.recruitInfo dt {
    width: 25vw;
  }
  section.recruit dl.recruitInfo dd {
    width: calc(75vw - 30px);
  }
  section.recruit div.contactButton-wrap {
    padding-bottom: 0;
  }
}
@media (max-width: 1000px) and (max-width: 768px) {
  section.recruit section#message figure {
    margin-bottom: 5vw;
  }
  section.recruit section#message ul {
    width: 100%;
  }
  section.recruit section#message ul li {
    font-size: 100%;
    white-space: initial;
    padding-left: 40px;
  }
  section.recruit section#message ul li:before {
    top: -5px;
  }
  section.recruit section.recruitDetails-head h2, section.recruit section.recruitDetails-head figure {
    width: 50%;
  }
  section.recruit section.recruitDetails-head figure img {
    width: 100%;
  }
  section.recruit div.contactButton-wrap {
    padding-top: 50px;
  }
}
@media (max-width: 1000px) and (max-width: 680px) {
  section.recruit nav#recruit_nav {
    margin-bottom: 6vw;
  }
}
@media (max-width: 1000px) and (max-width: 480px) {
  section.recruit section#message ul li {
    font-size: 14px;
    padding-left: 35px;
  }
  section.recruit section#message ul li:before {
    width: 25px;
    height: 25px;
    top: -2px;
  }
  section.recruit nav#recruit_nav {
    margin-bottom: 9vw;
  }
  section.recruit nav#recruit_nav a {
    font-size: 13px;
    text-align: left;
  }
  section.recruit nav#recruit_nav a:after {
    width: 15px;
    height: 15px;
    background-size: cover;
    right: 10px;
  }
  section.recruit section.recruitDetails-head figure img {
    height: 30vw;
  }
  section.recruit dl.recruitInfo {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  section.recruit dl.recruitInfo dt, section.recruit dl.recruitInfo dd {
    width: calc(100vw - 30px);
  }
  section.recruit dl.recruitInfo dt {
    font-size: 12px;
    color: #666;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    border: none;
    margin-bottom: 10px;
    padding: 0 !important;
  }
  section.recruit dl.recruitInfo dd {
    border-bottom: solid 1px #eee;
    margin-bottom: 20px;
    padding: 0 0 20px 0 !important;
  }
  section.recruit div.contactButton-wrap {
    padding-top: 30px;
  }
}
@media (max-width: 1000px) and (max-width: 375px) {
  section.recruit nav#recruit_nav a:after {
    width: 10px;
    height: 10px;
    top: 16px;
    right: 8px;
  }
}
@media (max-width: 1000px) and (max-width: 768px) {
  section.contact div.innerContents.contactStep div.step-navi {
    margin-bottom: 40px;
  }
  section.contact div.innerContents.contactStep div.step-navi ul {
    gap: 2vw;
  }
  section.contact div.innerContents.contactStep div.step-navi ul li {
    width: 28vw;
    font-size: 12px;
    margin: 0;
  }
  section.contact div.innerContents.contactStep div.step-navi ul li p {
    font-size: 10px;
  }
}
@media (max-width: 1000px) and (max-width: 480px) {
  section.contact div.innerContents.contactStep {
    padding: 20px 15px !important;
  }
  section.contact div.innerContents.contactStep div.step-navi {
    margin-bottom: 20px;
  }
  section.contact div.innerContents.contactStep div.step-navi ul {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1vw;
  }
  section.contact div.innerContents.contactStep div.step-navi ul li {
    width: 29vw;
    font-size: 12px;
    margin: 0;
  }
  section.contact div.innerContents.contactStep div.step-navi ul li p {
    font-size: 10px;
  }
  section.contact div.innerContents.contactStep div#contact-comment {
    font-size: 14px;
    line-height: 1.3;
  }
}
@media (max-width: 1000px) and (max-width: 480px) {
  section.contact section#formWrap .innerContents:not(.innerContents.innerHead) {
    padding: 30px 0 !important;
  }
}
@media (max-width: 1000px) {
  section.contact div.form-tabs {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 2vw;
    margin-bottom: 30px !important;
  }
  section.contact div.form-tabs button.tab-btn {
    width: 22vw;
  }
}
@media (max-width: 1000px) and (max-width: 768px) {
  section.contact div.form-tabs {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 40px;
  }
  section.contact div.form-tabs button.tab-btn {
    width: calc(50% - 5px);
    padding: 20px;
  }
}
@media (max-width: 1000px) and (max-width: 480px) {
  section.contact div.form-tabs {
    padding: 0 15px;
  }
  section.contact div.form-tabs button.tab-btn {
    width: 100%;
    font-size: 14px;
  }
}
@media (max-width: 1000px) {
  section.contact div.formInner {
    padding: 15px;
  }
  section.contact div.formInner div.tab-form h3 {
    font-size: clamp(14px, 5vw, 26px);
  }
  section.contact div.formInner div.tab-form h3 p {
    font-size: 14px;
    font-weight: normal;
  }
}
@media (max-width: 1000px) and (max-width: 640px) {
  section.contact div.formInner div.tab-form .smf-form--business .smf-item__col.smf-item__col--label {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  section.contact div.formInner div.tab-form .smf-form--business .smf-item__col--label {
    font-size: 12px;
  }
  section.contact div.formInner div.tab-form .smf-form--business .smf-item__description {
    margin: 0 0 0 5px;
  }
  section.contact div.formInner div.tab-form .smf-form--business .smf-item__col {
    padding: 10px;
  }
}
@media (max-width: 1000px) and (max-width: 480px) {
  section.contact div.formInner div.tab-form .smf-text-control,
  section.contact div.formInner div.tab-form .smf-item__controls {
    font-size: 14px;
  }
  section.contact div.formInner div.tab-form h3 {
    font-size: 14px;
  }
  section.contact div.formInner div.tab-form h3 p {
    font-size: 12px;
  }
}
@media (max-width: 1000px) and (max-width: 640px) {
  section.contact div.formInner div.cf7-wrap dl dt, section.contact div.formInner div.cf7-wrap dl dd:not(.inquiry-content-heading) {
    padding: 15px;
  }
  section.contact div.formInner div.cf7-wrap dl dt {
    font-size: 80%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100% !important;
    border-right: none;
  }
  section.contact div.formInner div.cf7-wrap dl dd {
    -webkit-box-flex: 1 !important;
        -ms-flex: 1 1 100% !important;
            flex: 1 1 100% !important;
    max-width: 100% !important;
  }
  section.contact div.formInner div.cf7-wrap dl dd:last-of-type {
    line-height: 1.2;
  }
  section.contact div.formInner div.cf7-wrap dl dd:last-of-type span.file-note {
    font-size: 80%;
  }
  section.contact div.formInner div.cf7-wrap dl dd.inquiry-content-heading h4 {
    font-size: 100%;
  }
  section.contact div.formInner div.cf7-wrap dl dd.inquiry-content-heading div {
    font-size: 80%;
  }
  section.contact div.formInner div.cf7-wrap input[type=submit] {
    width: 80%;
    font-size: 120%;
  }
}
@media (max-width: 1000px) and (max-width: 640px) {
  div#cf7-confirm h3 {
    font-size: 100% !important;
  }
  div#cf7-confirm th, div#cf7-confirm td {
    display: inline-block;
    width: 100%;
    float: left;
  }
  div#cf7-confirm div#cf7-buttonWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  div#cf7-confirm div#cf7-buttonWrap button {
    width: 40%;
    border: none;
    font-weight: bold;
    background: #FFEE00;
    cursor: pointer;
    -webkit-box-shadow: 3px 3px 5px #ccc;
            box-shadow: 3px 3px 5px #ccc;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    padding: 10px;
  }
}
@media (max-width: 1000px) and (max-width: 640px) and (hover: hover) and (pointer: fine) {
  div#cf7-confirm div#cf7-buttonWrap button:hover {
    -webkit-transition: 0.3s;
    transition: 0.3s;
    opacity: 0.5;
  }
}
@media (max-width: 1000px) and (max-width: 480px) {
  section.single-news article.article header.article-header.entry-header h1 {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 1000px) and (max-width: 480px) {
  aside.related-entries .a-wrap {
    border-bottom: solid 1px #ddd;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    margin-bottom: 10px;
    padding: 0 !important;
  }
  aside.related-entries .a-wrap article {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  aside.related-entries .a-wrap figure,
  aside.related-entries .a-wrap div.related-entry-card-content {
    width: 100%;
  }
  aside.related-entries .a-wrap div.related-entry-card-content p {
    margin-bottom: 15px;
  }
}
@media (max-width: 1000px) {
  body:not([class*=frontpage]) {
    padding-top: 50px;
  }
  .navi-menu-content {
    left: auto;
    right: 0;
    -webkit-transform: translateX(105%);
            transform: translateX(105%);
  }
}
@media screen and (max-width: 1000px) and (max-width: 1024px) {
  body.home:where(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons),
  body:where(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons) {
    margin-top: 0 !important;
  }
}
@media (max-width: 1000px) {
  header div.inner {
    padding: 25px 25px 0 25px;
  }
  header h1.h1_logo {
    width: 200px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 1024px) {
  header.header {
    display: none;
  }
}
@media (max-width: 1000px) {
  .mobile-menu-buttons {
    background: none;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .mobile-menu-buttons.font_page.active {
    background: rgba(255, 255, 255, 0.9);
  }
  .mobile-menu-buttons.font_page.active img {
    width: 200px;
  }
  .mobile-menu-buttons.font_page.active img[src*=white] {
    display: none;
  }
  .mobile-menu-buttons.font_page.active img[src*=black] {
    display: initial;
  }
  .mobile-menu-buttons:not(.font_page) {
    background: rgba(255, 255, 255, 0.9);
  }
  .mobile-menu-buttons:not(.font_page) img {
    width: 200px;
  }
  .mobile-menu-buttons:not(.font_page) img[src*=white] {
    display: none;
  }
  .mobile-menu-buttons:not(.font_page) img[src*=black] {
    display: initial;
  }
  .mobile-menu-buttons:not(.font_page) .navi-menu-button.menu-button .fa-bars:before {
    color: #000;
  }
  .mobile-menu-buttons:not(.font_page) .navi-menu-button.menu-button span.menu-caption {
    color: #000;
  }
  .mobile-menu-buttons .logo-menu-button {
    line-height: initial;
  }
  .mobile-menu-buttons .logo-menu-button a {
    padding: 10px;
  }
  .mobile-menu-buttons .logo-menu-button a img {
    max-height: 30px;
  }
  .mobile-menu-buttons .menu-button a {
    padding: 15px;
  }
  .mobile-menu-buttons .menu-button:first-child {
    max-width: 150px;
    width: 50%;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .mobile-menu-buttons .menu-button:last-child {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    padding-right: 10px;
  }
  .mobile-menu-buttons .navi-menu-button.menu-button .fa-bars:before {
    color: #fff;
  }
  .mobile-menu-buttons .navi-menu-button.menu-button span.menu-caption {
    color: #fff;
  }
  .mobile-menu-buttons.active {
    background: rgba(255, 255, 255, 0.9);
  }
  .mobile-menu-buttons.active img[src*=black] {
    display: initial;
  }
  .mobile-menu-buttons.active img[src*=white] {
    display: none;
  }
  .mobile-menu-buttons.active .navi-menu-button.menu-button .fa-bars:before {
    color: #000;
  }
  .mobile-menu-buttons.active .navi-menu-button.menu-button span.menu-caption {
    color: #000;
  }
  label.navi-menu-close-button {
    padding: 15px;
  }
  label.navi-menu-close-button span.batsu {
    display: block;
    position: relative;
    width: 30px;
    height: 30px;
    margin-left: auto;
  }
  label.navi-menu-close-button .batsu::before, label.navi-menu-close-button .batsu::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1px; /* 棒の幅（太さ） */
    height: 30px; /* 棒の高さ */
    background: #333;
  }
  label.navi-menu-close-button .batsu::before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  label.navi-menu-close-button .batsu::after {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  ul.menu-drawer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  ul.menu-drawer li {
    width: 50%;
  }
  ul.menu-drawer a {
    font-size: 80%;
    padding: 10px 0;
  }
  ul.menu-drawer a span {
    font-size: 50%;
    color: #999;
    display: block;
  }
}
@media (max-width: 1000px) {
  footer nav.footer-navigation a {
    font-size: 12px;
    font-size: clamp(12px, 3vw, 16px);
  }
  footer div.siteInfo {
    font-size: 12px;
    font-size: clamp(12px, 3vw, 16px);
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section#footer_consultation {
    padding: 8vw 0;
  }
  section#footer_consultation div {
    font-size: clamp(14px, 2vw, 20px);
    text-align: left;
    margin-bottom: 6vw;
    padding: 0 25px;
  }
  section#footer_consultation a {
    max-width: 70%;
    background: rgba(0, 0, 0, 0.3);
    padding: 10px;
  }
}
@media (max-width: 1000px) {
  footer div.inner {
    padding: 50px 15px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  footer {
    font-size: 14px;
  }
  footer p#ft_logo {
    max-width: 50%;
    margin: auto auto 40px auto;
  }
}
@media (max-width: 1000px) {
  nav#fNavi {
    gap: 15px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 900px) {
  nav#fNavi {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  nav#fNavi dl {
    width: calc(50% - 10px);
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  dl:first-child, dl:nth-child(2) {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 500px) {
  nav#fNavi dl {
    width: 100%;
  }
}
@media (max-width: 1000px) {
  section#fp_business {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 0;
  }
  section#fp_business a {
    width: 100%;
    padding: 30vw 50px;
  }
  section#fp_business a h3 {
    font-size: clamp(14px, 8vw, 30px);
  }
  section#concept {
    margin-bottom: 5px;
  }
  section#concept h2 p {
    margin-bottom: 5px !important;
  }
  section#concept section#crossOver div {
    height: 80px;
  }
  section#concept section#crossOver div:first-of-type {
    background: url(./images/concept_crossover_img01.png) repeat-x;
    background-size: auto 80px;
    -webkit-animation: ani_crossOver01 15s infinite linear;
            animation: ani_crossOver01 15s infinite linear;
  }
  section#concept section#crossOver div:last-of-type {
    background: url(./images/concept_crossover_img02.png) repeat-x;
    background-size: auto 80px;
    -webkit-animation: ani_crossOver02 15s infinite linear;
            animation: ani_crossOver02 15s infinite linear;
  }
  @-webkit-keyframes ani_crossOver01 {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: -1846px;
    }
  }
  @keyframes ani_crossOver01 {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: -1846px;
    }
  }
  @-webkit-keyframes ani_crossOver02 {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: 1978px;
    }
  }
  @keyframes ani_crossOver02 {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: 1978px;
    }
  }
}
@media screen and (max-width: 1000px) and (max-width: 680px) {
  section#concept section#crossOver div:first-of-type {
    background: url(./images/concept_crossover_img01.png) repeat-x;
    background-size: auto 80px;
    -webkit-animation: ani_crossOver01 20s infinite linear;
            animation: ani_crossOver01 20s infinite linear;
  }
  section#concept section#crossOver div:last-of-type {
    background: url(./images/concept_crossover_img02.png) repeat-x;
    background-size: auto 80px;
    -webkit-animation: ani_crossOver02 20s infinite linear;
            animation: ani_crossOver02 20s infinite linear;
  }
  @-webkit-keyframes ani_crossOver01 {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: -1447px;
    }
  }
  @keyframes ani_crossOver01 {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: -1447px;
    }
  }
  @-webkit-keyframes ani_crossOver02 {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: 1583px;
    }
  }
  @keyframes ani_crossOver02 {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: 1583px;
    }
  }
}
@media (max-width: 1000px) {
  section#concept section#crossOver p {
    line-height: 1.3;
    margin: clamp(20px, 5vw, 50px) 0;
  }
  section#concept section#point01,
  section#concept section#point02 {
    padding: clamp(20px, 5vw, 50px) 0;
  }
  section#concept section#point01 div.ccp_midashi,
  section#concept section#point02 div.ccp_midashi {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  section#concept section#point01 div.ccp_midashi h3,
  section#concept section#point02 div.ccp_midashi h3 {
    font-size: clamp(16px, 7vw, 45px) !important;
    margin-bottom: 30px !important;
  }
  section#concept section#point01 div.ccp_midashi figure,
  section#concept section#point02 div.ccp_midashi figure {
    width: 100%;
  }
  section#concept section#point01 div.ccp_midashi figure img,
  section#concept section#point02 div.ccp_midashi figure img {
    width: 100%;
    max-height: 250px;
    height: 30vw;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section#concept section#point01 div.ccp_midashi,
  section#concept section#point02 div.ccp_midashi {
    margin-bottom: 5vw;
  }
  section#concept section#point01 div.readWrap,
  section#concept section#point02 div.readWrap {
    font-size: 14px;
    margin-bottom: 5vw;
  }
  section#concept section#point01 div.readWrap p,
  section#concept section#point02 div.readWrap p {
    margin: auto auto 5vw auto;
    padding: 5px 5px 5px 3vw;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  section#concept section#point01 div.ccp_midashi p.pointMidashi,
  section#concept section#point02 div.ccp_midashi p.pointMidashi {
    height: 25px;
  }
}
@media (max-width: 1000px) {
  section#concept section#point01 p.pointMidashi {
    margin-left: -15px;
    padding-left: 15px;
  }
  section#concept section#point01 section#lineup_list {
    -ms-grid-columns: 32% 2% 32% 2% 32%;
    grid-template-columns: 32% 32% 32%;
    grid-gap: 2%;
    -ms-grid-rows: auto 2% auto;
    grid-template-rows: auto auto;
  }
  section#concept section#point01 section#lineup_list > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  section#concept section#point01 section#lineup_list > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  section#concept section#point01 section#lineup_list > *:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  section#concept section#point01 section#lineup_list > *:nth-child(4) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  section#concept section#point01 section#lineup_list > *:nth-child(5) {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }
  section#concept section#point01 section#lineup_list > *:nth-child(6) {
    -ms-grid-row: 3;
    -ms-grid-column: 5;
  }
  section#concept section#point01 section#lineup_list figure figcaption {
    font-size: clamp(8px, 3vw, 12px);
    line-height: 1.2;
  }
  section#concept section#point02 p.pointMidashi {
    margin-right: -15px;
    padding-right: 15px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section#concept section#point01 div.readWrap div,
  section#concept section#point02 div.readWrap div {
    text-align: left;
  }
  section#concept section#point02 {
    padding-bottom: 0 !important;
  }
  section#concept section#point02 section#endToEnd_graf figure img {
    display: none;
  }
  section#concept section#point02 section#endToEnd_graf figure img[src*=sp] {
    display: initial;
  }
  section#concept section#point02 section#endToEnd_graf section#point02_graf_details-sp {
    display: initial;
  }
  section#concept section#point02 section#endToEnd_graf section#point02_graf_details-sp dl {
    padding-top: 5vw;
  }
  section#concept section#point02 section#endToEnd_graf section#point02_graf_details-sp dl dt, section#concept section#point02 section#endToEnd_graf section#point02_graf_details-sp dl dd {
    font-size: 14px;
    line-height: 1.4;
    margin: 0;
    padding: 10px;
  }
  section#concept section#point02 section#endToEnd_graf section#point02_graf_details-sp dl dt {
    font-weight: bold;
    background: #eef2b4;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  section#concept section#point02 section#endToEnd_graf section#point02_graf_details-sp dl dt span {
    font-size: 10px;
    font-weight: normal;
    color: #ab9f1b;
    margin-left: 10px;
  }
  section#concept section#point02 section#endToEnd_graf section#point02_graf_details-sp dl dd {
    font-weight: bold;
    text-align: center;
    margin-bottom: 10px;
    border-left: solid 2px #eef2b4;
    border-right: solid 2px #eef2b4;
    border-bottom: solid 2px #eef2b4;
  }
  section#concept section#point02 section#endToEnd_graf section#point02_graf_details-sp dl dd span {
    width: 100%;
    font-weight: normal;
    line-height: 1.2;
    display: block;
    border-top: solid 1px #eef2b4;
    margin-top: 10px;
    padding-top: 13px;
    margin-top: 5px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  section#concept section#endToEnd_graf p.arrow {
    margin: 5vw 0;
  }
  section#concept section#endToEnd_graf p.arrow img {
    width: 10%;
  }
}
@media (max-width: 1000px) {
  section#news,
  section.archive-news {
    margin-bottom: 10px !important;
  }
  section#news div.inner.innerContents,
  section.archive-news div.inner.innerContents {
    padding-bottom: 8vw !important;
  }
  section#news div.newsList,
  section.archive-news div.newsList {
    margin-bottom: 4vw;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section#news div.newsList,
  section.archive-news div.newsList {
    padding-top: 20px;
  }
  section#news article,
  section.archive-news article {
    width: 100% !important;
    margin-bottom: 30px !important;
  }
  section#news article:nth-child(2),
  section.archive-news article:nth-child(2) {
    border-top: initial !important;
    padding-top: 0 !important;
  }
  section#news article a,
  section.archive-news article a {
    margin-bottom: 25px !important;
  }
  section#news article figure,
  section.archive-news article figure {
    width: 20vw !important;
  }
  section#news article figure img,
  section.archive-news article figure img {
    width: 100%;
    height: 13vw !important;
    -o-object-fit: cover;
       object-fit: cover;
  }
  section#news article div,
  section.archive-news article div {
    width: calc(80vw - 50px) !important;
    font-size: 14px;
  }
  section#news article div p,
  section.archive-news article div p {
    font-size: 10px;
  }
  section#news article div h3,
  section.archive-news article div h3 {
    font-size: 100%;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  section#news div.inner.innerContents,
  section.archive-news div.inner.innerContents {
    padding-bottom: 12vw !important;
  }
  section#news div.newsList,
  section.archive-news div.newsList {
    margin-bottom: 2vw;
  }
  section#news article a,
  section.archive-news article a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  section#news article a figure,
  section#news article a div,
  section.archive-news article a figure,
  section.archive-news article a div {
    width: 100% !important;
  }
  section#news article a img,
  section.archive-news article a img {
    width: 100% !important;
    height: 45vw !important;
  }
  section#news article a div p,
  section.archive-news article a div p {
    background: #efefef;
    margin-bottom: 10px !important;
    padding: 10px;
  }
}
@media (max-width: 1000px) {
  section#f-and-b-division_head {
    background-position: 75% 0;
    overflow: hidden;
    position: relative;
  }
  section#f-and-b-division_head div.inner {
    width: 100%;
    margin-bottom: 5vw;
    padding-top: 5%;
    padding-left: 15px;
  }
  section#f-and-b-division_head div.inner h2 {
    font-size: clamp(20px, 8.5vw, 75px) !important;
    margin-bottom: 2% !important;
  }
  section#f-and-b-division_head div.f-and-b-division-animation {
    width: 100%;
    position: absolute;
    bottom: 10%;
  }
}
@media screen and (max-width: 1000px) and (max-width: 800px) {
  section#f-and-b-division_head {
    max-height: 500px;
    height: 60vw;
    background-position: 65% 0;
    /*
    //f-and-b-division-animation
    div.f-and-b-division-animation{
      height: 80px;
      background-size: auto 80px;
      animation: ani_f-and-b-division-animation 15s linear infinite;
    }
    @keyframes ani_f-and-b-division-animation {
      0% { background-position-x: 0; }
      100% { background-position-x: -758px; } // ←実際の画像幅に合わせて
    }
    // /f-and-b-division-animation
    */
  }
  section#f-and-b-division_head div.inner h2 {
    margin-bottom: 2vw !important;
  }
  section#f-and-b-division_head div.inner h2 span:first-child {
    letter-spacing: -5vw !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 680px) {
  section#f-and-b-division_head div.f-and-b-division-animation {
    height: 12vw;
    background-size: auto 12vw;
    -webkit-animation: ani_f-and-b-division-animation 15s linear infinite;
            animation: ani_f-and-b-division-animation 15s linear infinite;
  }
  @-webkit-keyframes ani_f-and-b-division-animation {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: -113.76vw;
    }
  }
  @keyframes ani_f-and-b-division-animation {
    0% {
      background-position-x: 0;
    }
    100% {
      background-position-x: -113.76vw;
    }
  }
}
@media (max-width: 1000px) {
  article.f-and-b-division div.title_head h1 {
    font-size: clamp(8px, 2vw, 16px);
  }
  article.f-and-b-division div.title_head h2 {
    font-size: clamp(12px, 7vw, 45px) !important;
  }
  article.f-and-b-division section#f-and-b-division-category {
    margin-bottom: 45px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  article.f-and-b-division div.title_head h1, article.f-and-b-division div.title_head p {
    font-size: clamp(8px, 3vw, 16px);
  }
  article.f-and-b-division div.title_head p {
    margin-bottom: 15px;
  }
  article.f-and-b-division section#f-and-b-division-category {
    margin-bottom: 35px;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) {
    width: calc(50% - 10px);
    background: #F8F8F8;
    display: block;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) figure {
    overflow: hidden;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) figure img {
    -o-object-fit: cover;
       object-fit: cover;
    -webkit-transform-origin: center center;
            transform-origin: center center;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl {
    margin: 0;
    padding: 15px;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl dt {
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl dt p {
    font-size: 60%;
    font-weight: normal;
    margin: 5px 0 0 0;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl dd {
    margin: 0;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl dd:first-of-type {
    text-align: center;
    color: #fff;
    background: #000;
    margin-bottom: 10px;
    padding: 5px 0;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow) dl .viewMore {
    max-width: 300px;
    margin: 20px auto 0 auto;
    padding: 10px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) and (hover: hover) and (pointer: fine) {
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow):hover figure img {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow):hover .viewMore:before {
    width: 100%;
    color: #fff;
  }
  article.f-and-b-division section#f-and-b-division-category a:not(.viewMore_yellow):hover .viewMore span {
    color: #fff;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) and (max-width: 480px) {
  article.f-and-b-division section#f-and-b-division-category dl dt {
    font-size: 14px;
  }
}
@media (max-width: 1000px) {
  section#storeManagement h2 {
    font-size: clamp(18px, 4vw, 40px) !important;
    margin-bottom: 7vw !important;
  }
  section#storeManagement section#storeManagement-wrap {
    gap: 15px !important;
    margin-bottom: 50px !important;
  }
  section#storeManagement section#storeManagement-wrap article.storeBox {
    width: calc(50% - 7.5px);
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section#storeManagement article.storeBox {
    width: 100% !important;
  }
  section#storeManagement article.storeBox figure img {
    width: 100%;
    height: clamp(100px, 50vw, 350px) !important;
  }
}
@media (max-width: 1000px) {
  section.store-news {
    margin-bottom: 10px !important;
  }
  section.store-news div.inner.innerContents {
    padding-bottom: 8vw !important;
  }
  section.store-news div.newsList {
    margin-bottom: 6vw;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section.store-news div.newsList {
    padding-top: 20px;
  }
  section.store-news article {
    width: 100% !important;
    margin-bottom: 30px !important;
  }
  section.store-news article:first-child {
    border-top: solid 1px #707070 !important;
  }
  section.store-news article:nth-child(2) {
    border-top: none !important;
    padding-top: 0 !important;
  }
  section.store-news article a {
    margin-bottom: 25px !important;
  }
  section.store-news article figure {
    width: 20vw !important;
  }
  section.store-news article figure img {
    width: 100%;
    height: 13vw !important;
    -o-object-fit: cover;
       object-fit: cover;
  }
  section.store-news article div {
    width: calc(80vw - 50px) !important;
    font-size: 14px;
  }
  section.store-news article div p {
    font-size: 10px;
  }
  section.store-news article div h3 {
    font-size: 100%;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  section.store-news div.inner.innerContents {
    padding-bottom: 12vw !important;
  }
  section.store-news div.newsList {
    margin-bottom: 2vw;
  }
  section.store-news article a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  section.store-news article a figure,
  section.store-news article a div {
    width: 100% !important;
  }
  section.store-news article a img {
    width: 100% !important;
    height: 45vw !important;
  }
  section.store-news article a div p {
    background: #222;
    margin-bottom: 10px !important;
    padding: 10px;
  }
}
@media (max-width: 1000px) {
  section#event_head {
    background-position: 75% 0;
    overflow: hidden;
  }
  section#event_head div.inner {
    width: 100%;
    margin-bottom: 5vw;
    padding-top: 5vw;
    padding-left: 15px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 800px) {
  section#event_head {
    max-height: 500px;
    height: 60vw;
    background-position: 65% 0;
  }
  section#event_head div.inner h2 {
    margin-bottom: 4vw !important;
  }
  section#event_head div.inner h2 span:first-child {
    letter-spacing: -2vw !important;
  }
}
@media (max-width: 1000px) {
  article.event div.title_head h1 {
    font-size: clamp(8px, 2vw, 16px);
  }
  article.event div.title_head h2 {
    font-size: clamp(12px, 7vw, 45px) !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  article.event div.title_head h1, article.event div.title_head p {
    font-size: clamp(8px, 3vw, 16px);
  }
  article.event div.title_head p {
    margin-bottom: 15px;
  }
}
@media (max-width: 1000px) {
  section#event-category {
    gap: 15px !important;
  }
  section#event-category a:not(.viewMore_yellow) {
    width: calc(33.3333333333% - 10px) !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section#event-category a:not(.viewMore_yellow) {
    width: calc(50% - 7.5px) !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  section#event-category {
    gap: 10px !important;
  }
  section#event-category a:not(.viewMore_yellow) {
    width: 100% !important;
  }
  section#event-category a:not(.viewMore_yellow) figure img {
    width: 100%;
    height: 50vw;
  }
}
@media (max-width: 1000px) {
  section#workFlow-head {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  div.flowNavi-inner {
    padding: 20px 15px 15px 15px !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  nav#flowNavi ul li:nth-child(n+4) {
    display: none;
  }
  nav#flowNavi div {
    background: url(./images/workflow_nav_line01.svg) no-repeat right !important;
  }
}
@media (max-width: 1000px) {
  nav#flowNavi-sp {
    height: 118px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative;
  }
  nav#flowNavi-sp ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    margin: -10px 0 0 0;
    padding: 0 90px 0 20px;
  }
  nav#flowNavi-sp ul li {
    position: relative;
    margin-right: -50px;
    padding: 0 5px;
  }
  nav#flowNavi-sp ul li:nth-child(1) {
    z-index: 9;
  }
  nav#flowNavi-sp ul li:nth-child(2) {
    z-index: 8;
  }
  nav#flowNavi-sp ul li:nth-child(3) {
    z-index: 7;
  }
  nav#flowNavi-sp ul li:nth-child(4) {
    z-index: 6;
  }
  nav#flowNavi-sp ul li:nth-child(5) {
    z-index: 5;
  }
  nav#flowNavi-sp ul li:nth-child(6) {
    z-index: 4;
  }
  nav#flowNavi-sp ul li:nth-child(7) {
    z-index: 3;
  }
  nav#flowNavi-sp ul li:nth-child(8) {
    z-index: 2;
  }
  nav#flowNavi-sp ul li:nth-child(9) {
    z-index: 1;
  }
  nav#flowNavi-sp ul li a {
    position: relative;
    display: inline-block;
  }
  nav#flowNavi-sp ul li a img {
    display: block;
    width: 95%;
    height: auto;
    -webkit-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease;
  }
  nav#flowNavi-sp ul li a img[src*=hover] {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
  }
}
@media (max-width: 1000px) and (hover: hover) and (pointer: fine) {
  nav#flowNavi-sp ul li a:hover img[src*=hover] {
    opacity: 1;
  }
  nav#flowNavi-sp ul li a:hover img:not([src*=hover]) {
    opacity: 0;
  }
}
@media (max-width: 1000px) {
  nav#flowNavi-sp div {
    height: 73px;
    background: url(./images/workflow_nav_arrow01.svg) no-repeat right;
    background-size: 100%;
    position: relative;
    z-index: 2;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  nav#flowNavi-sp {
    height: 80px;
    margin-bottom: 1vw;
  }
  nav#flowNavi-sp ul {
    width: 100%;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    padding: 0 80px 0 20px;
  }
  nav#flowNavi-sp ul li {
    min-width: 100px;
    width: 22vw;
  }
  nav#flowNavi-sp div {
    background-size: auto 36px !important;
    margin-bottom: 2px;
  }
}
@media screen and (max-width: 1000px) and (max-width: 680px) {
  nav#flowNavi-sp {
    height: 60px;
    margin-bottom: 3vw;
  }
  nav#flowNavi-sp ul li {
    margin-right: -7vw;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  nav#flowNavi-sp {
    height: 60px;
    margin-bottom: -5px;
  }
  nav#flowNavi-sp ul li {
    margin-right: -10vw;
  }
  nav#flowNavi-sp div {
    background-size: auto 6vw !important;
    margin-bottom: 7px;
  }
}
@media (max-width: 1000px) {
  section.stepHead {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 5vw !important;
  }
  section.stepHead figure {
    width: 100% !important;
    margin-bottom: 5vw;
  }
  section.stepHead figure img {
    width: 100% !important;
    height: 40vw !important;
  }
  section.stepHead p.stepNum {
    width: 30%;
  }
  section.stepHead div {
    width: 70% !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section.stepHead p.stepNum {
    width: 20%;
    font-size: clamp(12px, 5vw, 24px) !important;
  }
  section.stepHead p.stepNum span:last-child {
    font-size: clamp(12px, 11vw, 100px) !important;
  }
  section.stepHead div {
    width: 77% !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  section.stepHead p.stepNum,
  section.stepHead div {
    width: 100% !important;
  }
  section.stepHead p.stepNum {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
        -ms-flex-direction: row !important;
            flex-direction: row !important;
    margin-bottom: 10px !important;
  }
  section.stepHead p.stepNum span:first-child {
    font-size: 14px;
    font-weight: normal;
    color: #fff;
    background: #000;
    border-radius: 99px;
    padding: 5px 20px 3px 20px;
  }
  section.stepHead p.stepNum span:last-child {
    margin-left: 10px;
  }
}
@media (max-width: 1000px) {
  div.is-layout-flow section.scroll-offset {
    padding: 3vw 0;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section.tableList01 dl dt {
    width: 15vw !important;
    font-size: 100% !important;
  }
  section.tableList01 dl dt span {
    font-size: 70% !important;
  }
  section.tableList01 dl dd {
    width: calc(100% - 15vw) !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  section.tableList01 dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  section.tableList01 dl dt, section.tableList01 dl dd {
    width: 100% !important;
  }
  section.tableList01 dl dt {
    line-height: 1.3;
    padding: 10px;
  }
  section.tableList01 dl dd {
    padding: 20px 15px 15px 15px !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section.tableList02 dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  section.tableList02 dl dt, section.tableList02 dl dd {
    width: 100% !important;
  }
  section.tableList02 dl dt {
    line-height: 1.3;
    padding: 10px;
  }
  section.tableList02 dl dd {
    padding: 15px !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section.productSteps {
    padding: 0 !important;
  }
  section.productSteps div.step-item:not(:last-child)::after {
    left: 3.5vw !important;
    top: 20px !important;
    bottom: -50px !important;
  }
  section.productSteps .step-number {
    width: clamp(30px, 10vw, 60px) !important;
    height: clamp(30px, 10vw, 60px) !important;
    font-size: clamp(14px, 4vw, 24px) !important;
    padding-bottom: initial !important;
  }
  section.productSteps dl.step-content {
    margin-left: 5vw !important;
  }
  section.productSteps dl.step-content dt {
    font-size: clamp(14px, 5vw, 24px) !important;
  }
  section.productSteps dl.step-content dd {
    font-size: 14px !important;
    font-weight: normal !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 700px) {
  section.productSteps div.step-item:not(:last-child)::after {
    left: 4vw !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 680px) {
  section.productSteps div.step-item {
    margin-bottom: 5vw !important;
  }
}
@media (max-width: 1000px) {
  div.step-summary {
    font-size: initial !important;
  }
  article.event section h4 {
    margin-bottom: 5vw !important;
  }
  section.step-details-step03 section.stepHead,
  section.step-details-step06 section.stepHead {
    margin-bottom: 0 !important;
  }
  section.step-details-step01 {
    padding-top: 0 !important;
  }
  section.step-details-step01 div.inner {
    padding-top: 0 !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section.step-details-step01 h4 {
    font-size: clamp(14px, 3.5vw, 22px) !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 480px) {
  section.step-details-step01 h4 {
    font-size: clamp(14px, 4vw, 22px) !important;
    text-align: left !important;
  }
}
@media (max-width: 1000px) {
  section.step-details-step02 h4 {
    margin-bottom: 5vw !important;
  }
  section.step-details-step03 {
    padding-bottom: 0 !important;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section.step-details-step03 div.implementation {
    padding: 2.5vw 0;
  }
  section.step-details-step03 div.implementation img {
    width: 30vw;
    min-width: 140px;
  }
}
@media (max-width: 1000px) {
  section#event-works .innerContents {
    padding: 50px 15px 80px 15px !important;
  }
}
@media (max-width: 1000px) {
  section.works div.works-list {
    gap: 1.5vw;
  }
}
@media screen and (max-width: 1000px) and (max-width: 768px) {
  section.works nav#works_nav {
    gap: 10px;
    margin-bottom: clamp(20px, 10vw, 45px);
  }
  section.works nav#works_nav a {
    font-size: clamp(12px, 3vw, 16px);
    line-height: 1.3;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  section.works div.works-list {
    gap: 10px;
  }
}