@charset "UTF-8";/* 文字コードを指定 */
/* =================================================================
↓ここからCSS書いてください
=================================================================*/
/* 全体 ================================== */
/*ゴシック体ベース（＊どっちか選んで片方消す）*/
body {
  font-family: "gotham-narrow", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}


html, body {
    margin: 0;
    padding: 0;
    overflow-x: hidden; 
    width: 100%;
}
    img {
        max-width: 100%;
        height: auto;
      }
      

    .back_black{
      background-color: #000;
      border-bottom-left-radius: 100px;
      border-bottom-right-radius: 100px;
      padding-bottom: 1200px;
      overflow: hidden;
    }

.h2_works_lower{
  font-family: "kozuka-gothic-pr6n", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: bold;
  font-size: 64px;
  color: #ffffff;
  padding-left: 220px;
  position: relative;
  margin-top: 100px;
}
.p_works_lower{
  font-family: "kozuka-gothic-pr6n", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: bold;
    font-size: 16px;
    color: #B4B4B4;
    padding-left: 220px;
    margin-top: 30px;
    margin-bottom: 300px;
    line-height: 36px;
}

.works_lower_contaner {
  display: flex;
  justify-content: center;
  gap: 60px;
}

.works_column {
  display: flex;
  flex-direction: column;
  gap: 60px;
  position: relative;
}

.works_item {
  width: 100%;
  max-width: 60rem;
  height: auto;
  object-fit: contain;
  transition: transform 0.1s linear;
  transform: var(--initial-transform, none) translateY(var(--parallax-offset, 0px));
  will-change: transform;
  --initial-transform: none;
  cursor: pointer;
}

/* .works_item:hover {
    transform: scale(1.1);
} */

/* ずらしの例：1列目（左カラム） */
.works_column:first-child .works_item:nth-child(1) {
  transform: translate(20px,-140px);
}
.works_column:first-child .works_item:nth-child(2) {
  transform: translateY(150px);
}
.works_column:first-child .works_item:nth-child(3) {
  transform: translate(700px,-50px);
}
.works_column:first-child .works_item:nth-child(4) {
  transform: translate(40px, 700px);
}
.works_column:first-child .works_item:nth-child(5) {
  transform: translate(20px,-1250px);
}

/* ずらしの例：2列目（右カラム） */
.works_column:last-child .works_item:nth-child(1) {
  transform: translate(100px,-400px);
}
.works_column:last-child .works_item:nth-child(2) {
  transform: translate(30px 100px);
}
.works_column:last-child .works_item:nth-child(3) {
  transform: translate(-250px,500px);
}
.works_column:last-child .works_item:nth-child(4) {
  transform: translate(10px, 110px);
}
.works_column:last-child .works_item:nth-child(5) {
  transform: translate(100px,-300px);
}

.i01{
  width: 47rem;
}
.i02{
  width: 31rem;
}.i03{
  width: 40rem;
  z-index: 1;
}
.i04{
  width: 23rem;
}
.i05{
  width: 40rem;
}
.i06{
  width: 23rem;
}
.i07{
  width: 23rem;
}
.i08{
  width: 15rem;
}
.i09{
  width: 20rem;
}
.i10{
  width: 37rem;
}
/* モーダルウィンドウのスタイル */
.modal {
  display: none; /* 最初は非表示 */
  position: fixed; /* 画面全体に固定 */
  z-index: 1; /* 他の要素より前面に表示 */
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto; /* コンテンツが長い場合にスクロール可能にする */
  background-color: rgba(0,0,0,0.8); /* 半透明の背景 */
}

.modal-content {
  position: relative;
  background-color: #fefefe;
 border-radius: 30px;
  margin: 15% auto; /* 画面中央に配置 */
  padding: 20px;
  border: 1px solid #888;
  width: 80%; /* モーダルの幅 */
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
  animation-name: animatetop;
  animation-duration: 0.4s
}

/* アニメーション */
@keyframes animatetop {
  from {top: -300px; opacity: 0}
  to {top: 0; opacity: 1}
}

/* 閉じるボタン */
.modal-close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.modal-close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}


#modal-title {
  font-size: 24px;
  margin-bottom: 10px;
  color: #333;
  text-align: center;
}

#modal-description {
  color: #555;
  line-height: 1.6;
  max-width: 800px;
  margin: 0 auto;
}
#modal-image {
  width: auto; /* 元の画像の比率を保ちつつ */
  max-width: 70%; /* モーダルコンテンツの70%の幅まで */
  height: auto;
  max-height: 80vh;
  display: block; /* 前後の要素との配置をブロックレベルにする（中央寄せしやすくするため） */
  margin-left: auto; /* 左右のマージンをautoにすることで中央寄せ */
  margin-right: auto;
  margin-bottom: 15px; /* タイトルや説明文との間隔 */
  border-radius: 5px; /* 角を少し丸くする */
  opacity: 0;
  animation: fadeInModalImage 0.8s ease-out forwards;
}
@keyframes fadeInModalImage {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

#modal-discription{
  font-family: "kozuka-gothic-pr6n", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: bold;
    font-size: 16px;
    color: #3D3D3D;
    line-height: 36px;
    max-width: 600px;
}
#modal-title{
  font-family: "kozuka-gothic-pr6n", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: bold;
    font-size: 20px;
}




/* レスポンシブ対応 (必要に応じて調整) */
@media (max-width: 600px) {
  .modal-content {
    margin: 20% auto;
    width: 95%;
  }
.h2_works_lower{
  font-size: 32px;
  padding-left: 20px;
  margin-top: 100px;
}
.p_works_lower{
  font-size: 11px;
  padding-left: 20px;
  margin-top: 40px;
  line-height: 24px;
}
.i01{
  width: 13rem;
}
.i02{
  width: 12rem
}.i03{
  width: 19rem;
}
.i04{
  width: 10rem;
}
.i05{
  width: 15rem;
}
.i06{
  width: 7rem;
}
.i07{
  width: 8rem;
}
.i08{
  width: 7rem;
}
.i09{
  width: 7.5rem;
}
.i10{
  width: 16rem;
}
/* ずらしの例：1列目（左カラム） */
.works_column:first-child .works_item:nth-child(1) {
  transform: translate(145px,-210px);
}
.works_column:first-child .works_item:nth-child(2) {
  transform: translate(140px,-180px);
}
.works_column:first-child .works_item:nth-child(3) {
  transform: translate(130px,-125px);
}
.works_column:first-child .works_item:nth-child(4) {
  transform: translate(160px, -30px);
}
.works_column:first-child .works_item:nth-child(5) {
  transform: translate(240px,-260px);
}

/* ずらしの例：2列目（右カラム） */
.works_column:last-child .works_item:nth-child(1) {
  transform: translate(-5px,-285px);
}
.works_column:last-child .works_item:nth-child(2) {
  transform: translate(-20px,-190px);
}
.works_column:last-child .works_item:nth-child(3) {
  transform: translate(-40px,-50px);
}
.works_column:last-child .works_item:nth-child(4) {
  transform: translate(-200px, 440px);
}
.works_column:last-child .works_item:nth-child(5) {
  transform: translate(-90px,-300px);
}

.back_black{
  border-bottom-left-radius: 25px;
  border-bottom-right-radius: 25px;
  padding-bottom: 700px;
}
}






@media screen and (min-width:601px) and (max-width:1080px)  {
  .h2_works_lower{
    font-size: 40px;
    padding-left: 50px;
    margin-top: 100px;
  }
  .p_works_lower{
    font-size: 14px;
    padding-left: 50px;
    margin-top: 40px;
    line-height: 28px;
  }
  .i01{
    width: 24rem;
  }
  .i02{
    width: 18rem
  }.i03{
    width: 27rem;
  }
  .i04{
    width: 14rem;
  }
  .i05{
    width: 24rem;
  }
  .i06{
    width: 17rem;
  }
  .i07{
    width: 14rem;
  }
  .i08{
    width: 11rem;
  }
  .i09{
    width: 13rem;
  }
  .i10{
    width: 28em;
  }
  /* ずらしの例：1列目（左カラム） */
.works_column:first-child .works_item:nth-child(1) {
  transform: translate(110px,-100px);
}
.works_column:first-child .works_item:nth-child(2) {
  transform: translate(100px,-50px);
}
.works_column:first-child .works_item:nth-child(3) {
  transform: translate(50px,100px);
}
.works_column:first-child .works_item:nth-child(4) {
  transform: translate(120px, 200px);
}
.works_column:first-child .works_item:nth-child(5) {
  transform: translate(450px,-1000px);
}

/* ずらしの例：2列目（右カラム） */
.works_column:last-child .works_item:nth-child(1) {
  transform: translate(50px,-350px);
}
.works_column:last-child .works_item:nth-child(2) {
  transform: translate(-100px -130px);
}
.works_column:last-child .works_item:nth-child(3) {
  transform: translate(50px,560px);
}
.works_column:last-child .works_item:nth-child(4) {
  transform: translate(-300px, 700px);
}
.works_column:last-child .works_item:nth-child(5) {
  transform: translate(-100px,-600px);
}
.back_black{
  border-bottom-left-radius: 35px;
  border-bottom-right-radius: 35px;
  padding-bottom: 900px;
}
}



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