﻿@charset "UTF-8";
.titleid{color:rgba(153, 153, 153, 1);font-weight: 700;font-size: 76px;text-align: center;line-height: 1;margin-bottom: 70px;}
@media (max-width:768px) {
  .titleid{font-size: 64px;margin-bottom: 32px;}
}

/* MV */
.mv-area02{position: relative;background-color: rgba(0, 0, 0, 1);height: 420px;}
.mv-area02 img{width: 100%;height: auto;object-fit: cover;display: block;bottom: 0;position: absolute;}
.mv-area02 h1 {position: absolute;top: 110px;right: 0;left: 0;margin: auto;text-align: center;color: rgba(255, 255, 255, 1);line-height: 1;}
.mv-area02 h1 .line02{background: rgba(8, 14, 55, 1);padding: 13px 22px;font-size: 22px;font-family: "A P-OTF A1 Mincho StdN";display: inline-block;font-weight: 550;}
.mv-area02 h1 .line03{font-size: 60px;font-weight: 700;margin-top: 30px;}
.mv-area02 h1 .line04{font-weight: 550;font-size: 85px;margin-top: 20px;}
@media (max-width:768px) {
  .mv-area02{height: 378px;}
  .mv-area02 h1{top: 150px;}
  .mv-area02 h1 .line02{font-size: 14px;}
  .mv-area02 h1 .line03{font-size: 30px;}
  .mv-area02 h1 .line04{font-size: 42px;margin-top: 0;line-height: 1.6;}
}

/* global-nav */
nav.global-nav {background-color: rgba(16, 33, 139, 1);padding: 20px 0;justify-content: center;align-items: center;}
nav.global-nav a::after{display: none;}
nav.global-nav ul {display: flex;justify-content: center;list-style: none;margin: 0;padding: 0;gap: 58px;}
nav.global-nav li a {font-size: 30px;color: rgba(255, 255, 255, 1);text-decoration: none;font-family: "urw-din-semi-condensed", sans-serif;position: relative;font-weight: 600;}
nav.global-nav li a::after {background-color: #fff;bottom: 0;content: '';display: block;height: 1px;left: 0;position: absolute;transition: .5s all;width: 0;}
nav.global-nav li a:hover::after {width: 100%;}
@media (max-width:768px) {nav.global-nav ul{gap: 16px;}nav.global-nav li a{font-size: 14px;}}

/* machine-area */
.machine-area{color: #fff;padding: 120px 20px 30px 100px;background: linear-gradient(180deg, #000000 29.92%, rgba(33, 33, 33, 0) 100%);background-image: url(/sp/makaizo/img/common/pattern.png);background-color: rgba(0, 0, 0, 0.6);background-repeat: repeat;background-size: contain;background-position: center;}
.machine-area .backgray{font-size: 18px;background: #333;display: inline-block;padding: 0 36px;line-height: 2.5;}
.machine-area.contents01::before{display: none;}
.machine-area.contents01::after{display: none;}
.machine-area.contents01 h2.ff-zen.show-h2{margin: 20px 0 0;line-height: 1;}
.machine-area.contents01 .left-area .fade-paragraph{line-height: 1.8;}
.machine-area.contents01 .left-area .fade-paragraph.mt0{margin-top: 0;}
.machine-area.contents01 .right-area{width: 90%;margin-left: 0;}
.machine-area.contents01 .right-area img{width: 200%;position: absolute;top: -400px;left: -300px;}
.machine-area.contents01 .left-area{width: 100%;z-index: 2;}
.machine-area.contents01 ul{padding-left: 18px;margin: 0;}
.machine-area.contents01 ul li{line-height: 1.8;margin-bottom: 5px;}
.machine-area.contents01 ul li:last-child{margin-bottom: 0;}
.machine-area.contents01 p{margin-bottom: 8px;}
.machine-area .ff-apa.show-h2 .line02{font-size: 80px;font-weight: 550;}
.line02 {position: relative;display: inline-block;overflow: hidden;}
.line02::before {content: "";position: absolute;left: -100%;top: 0;width: 100%;height: 100%;background: blue; /* 青背景 */transition: transform 0.6s ease;z-index: -1;}
.bg-animate::before {transform: translateX(100%);}
.show-h2 {opacity: 1;transform: translateY(0);transition: all 0.6s ease;}
.lead-txt, .left-area h2 {opacity: 0;transform: translateY(20px);}
.fade-paragraph {opacity: 0;transform: translateY(20px);transition: all 0.6s ease;}
.fade-paragraph.show {opacity: 1;transform: translateY(0);}
.machine-area .right-area {opacity: 0;transform: translateX(50px);transition: all 0.6s ease;}
.machine-area .right-area.slide-in {opacity: 1;transform: translateX(0);}
.machine-area.contents01 .line02{font-weight: 700; letter-spacing: -5px;}
@media (max-width:768px) {
  .machine-area{padding: 90px 16px 50px;}
  .machine-area.contents01 .line02{padding: 11px 10px;letter-spacing: 0px;font-size: 40px;}
  .machine-area.contents01 .left-area{padding-top: 32px;margin-bottom: 0;}
  .machine-area.contents01 .lead-txt.show-h2{text-align: center;margin: 0 auto 16px;display: block;font-size: 24px;}
  .machine-area.contents01 .left-area .show-h2{text-align: center;}
  .machine-area.contents01 .ff-apa.show-h2 .line02{font-size: 40px;}
  .machine-area.contents01 .img-area.sp-only img{width: 100%;}
  .machine-area.contents01 .img-area.sp-only{margin: 70px 0 30px;}
  .machine-area.contents01 .img-area.sp-only {opacity: 0;transform: translateX(50px);transition: all 0.6s ease;}
  .machine-area.contents01 .img-area.sp-only.slide-in {opacity: 1;transform: translateX(0);}
}

/* member-area  */
.member-area{background-image: url(/sp/makaizo/img/common/pattern.png);background-color: rgba(0, 0, 0, 0.6);background-repeat: repeat;background-size: contain;background-position: center;background-blend-mode: multiply;padding-top: 120px;}
.member-area p.ff-noto{    text-align: center;color: rgba(255, 255, 255, 1);font-weight: 700;margin: 0;}
.member-grid {display: grid;grid-template-columns: repeat(5, 1fr);gap: 32px;max-width: 1280px;margin: 0 auto;padding: 50px 0 60px;box-sizing: border-box;}
.member-item {text-align: center;font-family: "Noto Sans JP", sans-serif;}
.member-img {width: 230px;height: 360px;background-image: var(--img);background-size: cover;background-position: center;background-repeat: no-repeat;transition: background-image 0.3s ease;}
.member-img:hover {background-image: var(--img-hover);}
.member-text p {font-size: 20px;color: rgba(255, 255, 255, 1);text-align: left;line-height: 1;}
.member-text p.name {margin: 16px 0;font-size: 20px;color: rgba(255, 255, 255, 1);text-align: left;}
.member-text p.blue {background: rgba(16, 33, 139, 1);display: table-cell;padding: 8px 12px;font-size: 14px;}
.member-text p.role{font-size: 18px; line-height: 1.3;}
.member-area p.txtnote{font-weight: 400;font-size: 14px;line-height: 180%;padding-bottom: 130px;text-align: left;}
@media (max-width: 1024px) {
  .member-area{padding: 90px 16px 0;}
  .member-grid {grid-template-columns: repeat(4, 1fr);}
}
@media (max-width: 768px) {
  .member-grid {grid-template-columns: repeat(2, 1fr);gap: 24px 16px;padding: 20px 16px 0;box-sizing: border-box;}
  .member-img{width: 100%;max-width: 161px;height: auto;aspect-ratio: 161 / 252;margin: 0 auto;}
  .member-text p.name {margin: 16px 0 10px;font-size: 18px;}
  .member-text p.blue {padding: 6px 8px;}
  .member-text p.role{font-size: 13px;margin: 10px 0;} 
  .member-area p.ff-noto{font-size: 13px;}
  .member-area p.txtnote{padding-top: 50px;padding-bottom: 120px;}
}

/* phase-area  */
.phase-area{background: linear-gradient(180deg, #000000 29.92%, rgba(33, 33, 33, 0) 100%);padding-top: 120px;}
@media (min-width: 768px) {
  .phase-section {position: relative;padding: 60px 60px 650px;}
  .phase-section::before{content: "";position: absolute;bottom: -8%;left: 0;width: 60%;height: 60%;background: url(/sp/makaizo/team-a/img/smoke.png) no-repeat top left;background-size: contain;z-index: 0;pointer-events: none;transform: scale(1, -1) rotate(-20deg);}
  .phase-section .centerline-bg {position: absolute;top: -200px;bottom: 0;left: 50%;transform: translateX(-50%);z-index: 0;pointer-events: none;}
  .phase-section .centerline-bg img {height: 100%;max-width: 34px;width: 100%;object-fit: contain;}
  .phase-section .phases {position: relative;z-index: 1;display: flex;flex-direction: column;gap: 80px; /* フェーズ間のスペース */color: #fff;}
  .phase-section .phase {display: flex;align-items: center;opacity: 0;transition: all 0.8s ease;justify-content: center;}
  /* 左からスライドイン（奇数） */
.phase-section .phase.slide-left {
  transform: translateX(-50px);
}

/* 右からスライドイン（偶数） */
.phase-section .phase.slide-right {
  transform: translateX(50px);
}

/* 表示時（共通） */
.phase-section .phase.visible {
  opacity: 1;
  transform: translateX(0);
}
  .phase-section .phase:nth-child(odd) {flex-direction: row;}
  .phase-section .phase:nth-child(even) {flex-direction: row-reverse;}
  .phase-section .phase h2 {font-size: 32px;}
  .phase-section .phase .blue{font-size: 76px;color: rgba(0, 62, 152, 1);}
  .phase-section .phase p {font-size: 16px;max-width: 500px;}
  .phase-section .phase img , .phase-section .phase video {width: 600px;height: auto;margin: 0 40px;}
  .phase-section .phase-08-content {position: relative;width: 600px;height: auto;}
  .phase-section .phase-08-content img {position: absolute;top: 0;left: 0;transform: translateX(-40%) translateY(-8%);}
  .phase-section .phase-birth {width: 150px;height: auto;margin-right: 20px;}
  .phase-section .phase-08-content .phase-birth {z-index: 1;width: 100%;max-width: 508px;opacity: 1;transform: translateX(52%) translateY(50%);}
  .phase-section .phase-08-content img:not(.phase-birth) {z-index: 2;width: 100%;}
  .phase-section .phase.phase-08 {flex-direction: row;align-items: baseline;}
  .phase-section .phase.visible {opacity: 1;transform: translateX(0);}
}

/* SP表示 */
@media (max-width: 768px) {
  .phase-area{padding: 120px 0 0 32px;}
  .phase-area .titleid{padding-right: 32px;}
  .phase-area .phase-section, .phase-area .phases {display: none;}
  .phase-area .phase-slider-sp {position: relative;overflow: hidden;padding: 8px 0 142px;}
  .phase-area .slider-sp-wrapper {overflow: hidden;}
  .phase-area .slider-sp {display: flex;transition: transform 0.5s ease-in-out;position: relative;}
  .phase-area .slide-sp {flex: 0 0 270px;max-width: 270px;margin-right: 24px;box-sizing: border-box;}
  .phase-area .slide-sp h2 {font-size: 18px;margin-bottom: 10px;color: #fff;}
  .phase-area .slide-sp h2 .blue{font-size: 40px;color: rgba(0, 62, 152, 1);}
  .phase-area .slide-sp p {font-size: 13px;margin-bottom: 10px;color: #fff;}
  .phase-area .slide-sp img {width: 100%;height: auto;}
  .phase-area .slide-sp video {width: 100%;height: auto;}
  .phase-area .gradient-border {position: absolute;bottom: -22px;left: 0;width: 2436px;height: 24px;background: linear-gradient(90deg, rgba(54, 75, 202, 0) 0%, #364BCA 19.71%, #1B2564 48.56%, #2D3EA7 79.81%, rgba(45, 62, 167, 0) 100%);pointer-events: none;}
  .phase-area .slider-sp-controls {margin-top: 36px;text-align: center;position: relative;z-index: 2;padding-right: 32px;}
  .phase-area .slider-sp-controls button {background: none;border: none;padding: 5px 5px 0;cursor: pointer;}
  .phase-area .slider-sp-controls button img {width: 30px;height: 30px;}
  .phase-area .slide-sp.special-slide {position: relative;padding-top: 20px;}
  .phase-area .slide-sp.special-slide .image-group {width: 100%;display: flex;justify-content: center;align-items: center;}
  .phase-area .slide-sp.special-slide .image-group::before {content: "";position: absolute;bottom: 12%;left: 0%;width: 200%;height: 200%;background: url(/sp/makaizo/team-a/img/smoke.png) no-repeat top left;background-size: contain;z-index: 0;pointer-events: none;transform: scale(1, -1) rotate(0deg);}
  .phase-area .slide-sp.special-slide .img-birth {width: 60%;z-index: 1;}
  .phase-area .slide-sp.special-slide .img-main {width: 70%;margin-left: 30%;z-index: 2;}
  .phase-area .slide-sp.special-slide .overlay-text {position: absolute;top: 218px;left: 0;z-index: 3;max-width: 60%;}
  .phase-area .slide-sp.special-slide .overlay-text h2 {font-size: 18px;margin-bottom: 6px;color: #fff;}
  .phase-area .slide-sp.special-slide .overlay-text h2 .blue {font-size: 40px;color: rgba(0, 62, 152, 1);}
  .phase-area .slide-sp.special-slide .overlay-text p {font-size: 13px;color: #fff;}
}

/* spec-area  */
.spec-area{background: rgba(51, 51, 51, 1);padding: 120px 0 126px;}
.spec-area p.ff-noto{color: rgba(255, 255, 255, 1);text-align: center;font-weight: 400;font-style: normal;font-size: 20px;line-height: 1.8;letter-spacing: 0;margin-bottom: 97px;}
.spec-area .positioning{position: relative;text-align: center;max-width: 1280px;margin: 0 auto;}
.spec-area .positioning img{padding-left: 100px;}
.spec-area .txtblock{border: solid rgba(16, 33, 139, 1) 3.44px;background: rgba(102, 102, 102, 1);display: inline-block;text-align: left;position: absolute;max-width: 396px;color: rgba(255, 255, 255, 1);}
.spec-area .block001{top: 0;left: 26px;}
.spec-area .block002{top: -40px;right: 40px;}
.spec-area .block003{bottom: 70px;right: 0;max-width: 350px;}
.spec-area .block004{bottom: -30px;left: 0;max-width: 350px;}
.spec-area h2 {font-size: 13px;display: inline-block;background: rgba(5, 23, 135, 1);color: rgba(255, 255, 255, 1);margin: 0;padding: 4px 12px 4px 10px;}
.spec-area h2 span.notxt{font-size: 24px;vertical-align: sub;line-height: 1;padding-right: 4px;}
.spec-area p {font-size: 13px;margin-bottom: 10px;color: #fff;font-family: "Noto Sans JP", sans-serif;}
.spec-area p.txt01{font-size: 12px;margin: 16px 0 8px 20px;font-weight: 500;line-height: 1.6;}
.spec-area p.txt02{font-size: 20px;margin: 0 0 8px 20px;font-weight: 700;line-height: 1.6;}
.spec-area p.txt03{font-size: 14px;margin: 0 16px 20px;line-height: 1.6;font-weight: 500;}
.spec-area .txtblock.block004{height: 203px;position: absolute;width: 350px;box-sizing: border-box;}
.spec-area .txtblock.block004 .flex {position: relative;height: auto;}
.spec-area .txtblock.block004 .flex .txt00{width: 50%;position: absolute;top: 10px;left: 0;}
.spec-area .txtblock.block004 .flex .txt00 p.txt01{margin: 0 0 8px 16px;}
.spec-area .txtblock.block004 .flex .txt00 p.txt02{    margin: 0 0 0 16px;}
.spec-area .txtblock.block004 .corner-img {position: absolute;top: -30px;right: -0;width: 195px;height: auto;z-index:1; }
.spec-area02{max-width: 1280px;margin: 106px auto 0;border: solid rgba(16, 33, 139, 1) 3.44px;background: rgba(102, 102, 102, 1);width: 100%;}
.spec-area02 h2{font-size: 18px;}
.spec-area02 p.txt04{font-size: 20px;margin: 27px 0 0 30px;}
.spec-area02 p.txt04 span{font-size: 16px;}
.spec-area02 p.txt05{font-size: 14px;margin: 8px 0 0 30px;}
.spec-area02 .img03{padding: 42px 40px 100px;}
.spec-area02 .img03 img{max-width: 360px;margin-right: 60px;width: 100%;}
.spec-area02 .img03 img:last-child{margin-right: 0;}
.spec-area02 .img02{padding: 0 50px 50px;display: flex;position: relative;}
.spec-area02 .box-area{background: rgba(81, 79, 79, 1);border: 4px solid rgba(255, 255, 255, 1);max-width: 560px;width: 100%;position: relative;flex: 1;}
.spec-area02 .box-area .txt06{margin: 20px 0 0 20px;font-size: 20px;}
.spec-area02 .box-area .txt07{margin: 8px 0 0 20px;font-size: 14px;}
.spec-area02 .box-area .flex{align-items: flex-start;justify-content: flex-start;padding: 25px 0;}
.spec-area02 .box-area .flex .right-img{margin-left: 50px;}
.spec-area02 .box-area .flex .right-img img{max-width: 180px;}
.spec-area02 .box-area + .box-area{margin-left: 60px;}
.spec-area02 .box-area .flex.flex02{justify-content: center;padding: 0;margin: 8px 0 28px;}
.spec-area02 .box-area .flex.flex02 img.left{max-width: 192px;width: 100%;margin-right: 48px;}
.spec-area02 .box-area .flex.flex02 img.right{max-width: 170px;width: 100%;}
.spec-area02 .img02::before {content: "";position: absolute;bottom: 32%;left: 424px;width: 249px;height: 2px;background: rgba(255, 255, 255, 1);transform: translateY(-50%);z-index: 1;}
.spec-area02 .img02::after {content: "";position: absolute;bottom: 29%;left: 428px;transform: translate(-50%, -50%);width: 10px;height: 10px;background: rgba(255, 255, 255, 1);border-radius: 50%;z-index: 2;}
@media (max-width:768px) {
  .spec-area{padding: 90px 16px 120px;}
  .spec-area p.ff-noto{font-size: 13px;line-height: 180%;}
  .spec-area .specimg{text-align: center;}
  .spec-area .specimg img{max-width: 343px;width: 100%;}
  .spec-area .phase-section, .spec-area .phases {display: none;}
  .spec-area .phase-slider-sp {position: relative;overflow: hidden;padding: 8px 0;}
  .spec-area .slider-sp-wrapper {overflow: hidden;}
  .spec-area .slider-sp {display: flex;transition: transform 0.5s ease-in-out;position: relative;}
  .spec-area .slide-sp {flex: 0 0 343px;max-width: 343px;margin-right: 24px;box-sizing: border-box;border: solid rgba(16, 33, 139, 1) 3.44px;background: rgba(102, 102, 102, 1);}
  .spec-area .slide-sp:nth-child(1) {height: 234px;}
  .spec-area .slide-sp:nth-child(2) {height: 260px;}
  .spec-area .slide-sp:nth-child(3) {height: 208px;}
  .spec-area .slide-sp:nth-child(4) {height: 132px;}
  .spec-area .gradient-border {position: absolute;bottom: -50px;left: 0;width: 1440px;height: 24px;background: linear-gradient(90deg, rgba(54, 75, 202, 0) 0%, #364BCA 19.71%, #1B2564 48.56%, #2D3EA7 79.81%, rgba(45, 62, 167, 0) 100%);pointer-events: none;}
  .spec-area .slider-sp-controls {margin-top: 60px;text-align: center;position: relative;z-index: 2;}
  .spec-area .slider-sp-controls button {background: none;border: none;padding: 5px 5px 0;cursor: pointer;}
  .spec-area .slider-sp-controls button img {width: 30px;height: 30px;}
  .spec-area .slide-sp.special-slide {position: relative;padding-top: 20px;}
  .spec-area .slide-sp.special-slide .image-group {width: 100%;display: flex;justify-content: center;align-items: center;}
  .spec-area .slide-sp.special-slide .image-group::before {content: "";position: absolute;bottom: 12%;left: 0%;width: 200%;height: 200%;background: url(/sp/makaizo/team-a/img/smoke.png) no-repeat top left;background-size: contain;z-index: 0;pointer-events: none;transform: scale(1, -1) rotate(0deg);}
  .spec-area .slide-sp.special-slide .img-birth {width: 60%;z-index: 1;}
  .spec-area .slide-sp.special-slide .img-main {width: 70%;margin-left: 30%;z-index: 2;}
  .spec-area .slide-sp.special-slide .overlay-text {position: absolute;top: 218px;left: 0;z-index: 3;max-width: 60%;}
  .spec-area .slide-sp.special-slide .overlay-text h2 {font-size: 18px;margin-bottom: 6px;color: #fff;}
  .spec-area .slide-sp.special-slide .overlay-text h2 .blue {font-size: 40px;color: rgba(0, 62, 152, 1);}
  .spec-area .slide-sp.special-slide .overlay-text p {font-size: 13px;color: #fff;}
  .spec-area02{margin: 60px auto 0;box-sizing: border-box;}
  .spec-area02 p.txt04{margin: 16px 0 0 16px;}
  .spec-area02 p.txt04 span{font-size: 12px;}
  .spec-area02 p.txt05{font-size: 16px;margin: 16px 16px 0 16px;}
  .spec-area02 .img03{padding: 40px 18px 62px;}
  .spec-area02 .img03 img{margin-bottom: 40px;}
  .spec-area02 .img03 img:last-child{margin-bottom: 0;}
  .spec-area02 .img02{padding: 0 18px 20px;}
  .spec-area02 .box-area{box-sizing: border-box;}
  .spec-area02 .box-area + .box-area{margin-left: 0;margin-top: 30px;}
  .spec-area02 .box-area .flex{padding: 0;}
  .spec-area02 .box-area .flex .right-img{margin: 0 auto 22px;}
  .spec-area02 .box-area .flex.flex02{display: flex;flex-wrap: initial;flex-direction: unset;}
  .spec-area02 .img02::before{bottom: 180px;left: 242px;width: 2px;height: 64px;}
  .spec-area02 .img02::after{bottom: 270px;left: 243px;}
  .spec-area02 .box-area .flex.flex02 img.left{margin-right: 7%;width: 45%;}
  .spec-area02 .box-area .flex.flex02 img.right{width: 40%;}
}

/* 追加部分 */
.spec-area03 {margin-top: 160px;}
.spec-area03 ul{display: flex; list-style: none; padding:10px 80px 10px 80px; border-top: #666666 solid 1px; margin: 0; gap: 30px; justify-content: center;}
.spec-area03 ul:last-of-type {border-bottom: #666666 solid 1px;}
.spec-area03 li {width: 30%; display: flex; gap:60px; justify-content: center; align-items: center;}
.spec-area03 li:not(:last-child){border-right:#666666 solid 1px;}

.spec-size-img {width:770px; height: auto; margin: auto;  margin-top: 100px; margin-bottom: 160px;}
.spec-size-img img {display: block; width: 100%; height: auto;}

.spec-area04 h2 {width: 100%; height: 70px; background-color:rgba(16, 33, 139, 1); font-size: 24px; display:flex; align-items: center; margin-bottom: 60px;}
.spec-area04-title {padding-left: 24px;}
.spec-area04 {width: 100%;}
.spec-area04-wrapper {width: 100%; display: flex; justify-content: space-between; margin-bottom: 80px;}
.spec-area04-textbox {width:420px;}
.spec-area04-textbox p:nth-child(2) {margin-top: 60px;}
.spec-area04-text {font-size: 16px !important;}
.spec-area04-subtitle span{font-size: 24px; line-height: 1.8em;}
.spec-area04-img {text-align: right;}
.spec-area04-img p {margin-bottom: 60px;}
.spec-area04-img img{display: block; margin-bottom: 40px;}
.spec-area04-img video {width: 748px; height: auto;}
.comingsoon img {display: block; width: 50%; margin: 80px auto 80px auto;}

/* 追加部分SP表示 */
@media (max-width:768px) {
  .spec-area03 ul {display: flex; flex-direction: column; padding:0px; border-top: none; gap:0px;}
  .spec-area03 li {width: 100%; border-bottom: #666666 solid 1px;}
  .spec-area03 ul:first-child {width: 100%; border-top: #666666 solid 1px;}
  .spec-area03 ul:last-of-type {border-bottom:none;}
  .spec-area03 li:not(:last-child){border-right:none;}
  .spec-size-img {width:100%;}
  .spec-area04-wrapper {display: flex; flex-direction: column; margin-bottom: 60px;}
  .spec-area04-textbox {width:100%; margin-bottom: 20px;}
  .spec-area04-img img {display: block; width: 100%;}
  .spec-area04-img video {width: 100%; height: auto;}

  .comingsoon img {display: block; width: 85%; margin: 80px auto 80px auto;}
}

/* gallery-area  */
.gallery-area{background-image: url(/sp/makaizo/img/common/pattern.png);background-color: rgba(0, 0, 0, 0.6);background-repeat: repeat;background-size: contain;background-position: center;background-blend-mode: multiply;padding-top: 120px;}
.gallery-area .slider-wrapper {width: 100%;overflow: hidden;padding: 0 0 140px;}
.gallery-area .slider {display: flex;transition: transform 0.5s ease-in-out;will-change: transform;}
.gallery-area .slider img {width: 350px;height: auto;margin: 0 10px;flex-shrink: 0;cursor: pointer;transition: transform 0.3s;}
.gallery-area .slider img:hover {opacity: 0.7;}
.gallery-area .modal {display: none;position: fixed;z-index: 999;left: 0;top: 0;width: 100%;height: 100%;background-color: rgba(0,0,0,0.9);justify-content: center;align-items: center;}
.gallery-area .modal-img-wrapper {position: relative;display: inline-block;max-width: 900px;width: 80%;}
.gallery-area .modal-content {display: block;max-width: 780px;width: 100%;z-index: 1;margin: 0 auto;}
.gallery-area .modal-img-wrapper .close {position: absolute;top: -10%;right: -7%;width: 48px;height: auto;cursor: pointer;z-index: 2;}
.gallery-area .modal-img-wrapper .nav-btn {position: absolute;bottom: 50%;width: 50px;height: 50px;transform: translateY(-50%);cursor: pointer;z-index: 2;}
.gallery-area .modal-img-wrapper .nav-btn::before {content: '';display: block;width: 0;height: 0;margin: auto;position: relative;top: 0;left: 0;right: 0;border-style: solid;}
.gallery-area .modal-img-wrapper .prev { left: -80px; }
.gallery-area .modal-img-wrapper .next { right: -80px; }
.gallery-area .sp-slider-nav {display: none;}
.gallery-area .pc-slider-nav{position: relative;width: 100%;top: -150px;}
.gallery-area .pc-slider-nav button{position: absolute;cursor: pointer;background: none;border: none;display: inline;}
.gallery-area .pc-slider-nav button.prev{left: 15px;}
.gallery-area .pc-slider-nav button.next{right: 15px;}
@media (max-width: 768px) {
  .gallery-area{padding: 120px 0;}
  .gallery-area .wrap {max-width: none;width: 100%;padding: 0;}
  .gallery-area .titleid{margin-bottom: 40px;}
  .gallery-slider img {width: 252px;height: auto;}
  .gallery-area .slider-wrapper {position: relative;overflow: hidden;width: 100vw;overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    scrollbar-width: none;}
  .gallery-area .slider-wrapper::-webkit-scrollbar {
    display: none; /* Chrome/Safari */
  }
  .gallery-area .slider {display: flex;transition: transform 0.5s ease;box-sizing: content-box;scroll-snap-type: x mandatory;}
  .gallery-area .slider img {flex: 0 0 auto;width: 252px;height: auto;margin: 0 10px;cursor: pointer;scroll-snap-align: start;}
  .gallery-area .modal-img-wrapper .nav-btn{bottom: -30%;width: 42px;height: 42px;transform: translateY(0);}
  .gallery-area .modal-img-wrapper .prev{left: 32%;}
  .gallery-area .modal-img-wrapper .next {right: 32%;}
  .gallery-area .modal-img-wrapper .close {top: -50px;width: 24px;}
  .gallery-area .pc-slider-nav{display: none;}
  .gallery-area .sp-slider-nav .sp-nav-btn {background: none;border: none;padding: 0;cursor: pointer;}
  .gallery-area .sp-slider-nav .sp-nav-btn img {width: 42px;height: auto;}
  .gallery-area .sp-slider-nav {display: flex;justify-content: center;gap: 16px;margin-top: -100px;position: relative;z-index: 2;}
  .gallery-area .sp-slider-nav .sp-nav-btn {background: none;border: none;padding: 0;cursor: pointer;}
  .gallery-area .sp-slider-nav .sp-nav-btn img {width: 42px;height: auto;}
}