/* メインコンテンツの幅設定 */
.main_container {
  width: 100%;
  margin: 0 auto;
}

/* るぽでしていること */
.main_title {
  text-align: center;
  color: #6fa8dc;
  font-weight: bold;
  font-size: 3.6rem;
  padding-top: 8.4rem;
}

/* 作業内容 */
.main_heading {
  text-align: center;
  font-size: 3.2rem;
  font-weight: bold;
  color: #333333;
  padding: 5.6rem 1rem 0 1.5rem;
}

/* 見出し */
.heading {
  text-align: center;
  font-size: 3.2rem;
  font-weight: bold;
  color: #333333;
  padding: 9.2rem 1rem 0 1.5rem;
  padding-bottom: 7.3rem;
}

.section_title_wrapper {
  margin-top: 10rem;
}

/* PC版では非表示にする画像 */
.sponly_image {
  display: none;
}

/* 作業内容 */
.work_box {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  padding-top: 2rem;
}

.work_box:last-child {
  padding-bottom: 1rem;
}

/* 「小物づくり」の画像とテキストの配置を入れ替える */
.work_box.reverse {
  flex-direction: row-reverse;
}

/* 作業内容の画像サイズ */
.workimage_box {
  width: auto;
  aspect-ratio: 4/2.5;
}

/* 1枚目のサイズ設定 */
.firstwork_image {
  width: 47.6rem;
  object-position: bottom;
  filter: brightness(110%);
}

/* 2枚目のサイズ設定 */
.secondwork_image {
  width: 47.6rem;
}

/* 3枚目のサイズ設定 */
.thirdwork_image {
  width: 47.6rem;
  filter: brightness(110%);
}

/* 制作工程 */
.process_flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10rem;
}

/* 製作工程全体 */
.process_container {
  width: 35%;
  text-align: center;
  align-content: center;
}

/* 制作工程の写真 */
.process_img {
  width: 40rem;
  height: 30rem;
  filter: brightness(110%);
}

/* 制作工程の説明 */
.process_description {
  font-size: 2rem;
  padding-top: 2rem;
  color: #595959;
}

/* 制作ギャラリー */
.gallery {
  box-sizing: border-box;
}

/* slickでの表示設定 */
.slick-slide {
  justify-items: center;
}

.slick-list.draggable {
  margin-left: 2.5rem;
}

/* slickで表示するものの枠 */
.slide-items {
  width: 75%;
  height: 50%;
  margin: auto;
}

/* slickで表示する写真 */
.slide-items img {
  width: 70%;
  height: 100%;
  object-fit: contain;
  filter: brightness(110%);
}

.slick-prev:before,
.slick-next:before {
  font-size: 3.4rem !important;
  color: #595959 !important;
  display: block !important;
  opacity: 1 !important;
}

/* slickのページ部分 */
.slick-dots {
  display: flex;
  justify-content: center;
  gap: 2rem;
  top: 105%;
}

/* 画像が表示されていない時 */
.slick-dots li button:before {
  font-size: 2rem !important;
  top: 1rem;
  transition: all 0.3s;
}

/* 画像が表示されている時 */
.slick-dots li.slick-active button:before {
  color: #6fa8dc !important;
  opacity: 100;
}

/* ページネーション（左右移動） */
.slick-prev:before,
.slick-next:before {
  font-size: 4rem;
}

/* 作業内容テキストボックスのサイズ調整（中段） */
.text_box {
  width: 50.6rem;
  height: stretch;
  text-align: center;
  align-content: center;
}

/* 作業内容テキストボックスのサイズ調整（上・下段） */
.text_box.reverse {
  width: 55rem;
  height: stretch;
  text-align: center;
  align-content: center;
}

/* 作業内容見出し */
.work_heading {
  font-size: 2.5rem;
  padding-bottom: 2rem;
  font-weight: bold;
  color: #e69138;
}

/* 作業内容・タイムスケジュールリストのテキスト */
.work_text {
  font-size: 1.6rem;
  color: #595959;
}

.schedule_comment,
.schedule_list {
  font-size: 2rem;
  color: #595959;
}

.schedule {
  width: 50%;
}

.time_schedule {
  margin-bottom: 2rem;
}

.schedule_box {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 3rem;
}

/* 作業場所の画像サイズ・位置 */
.roomimage_box {
  width: 50%;
  height: auto;
  display: flex;
  align-items: center;
  margin-right: 5rem;
  aspect-ratio: 4/2.5;
  overflow: hidden;
}

.slick_scheduleimg li>img {
  aspect-ratio: 4/2.5;
}

/* スケジュール */
/* 全体 */
.schedule_table {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  border-radius: 15%;
  overflow: hidden;
}

/* 時間 */
.time {
  width: 15%;
  text-align: center;
  padding: 1.5rem 0 1.5rem 3rem;
}

/* 内容 */
.todo {
  width: 80%;
  padding: 1.5rem 3rem;
}

/* 行の背景色：奇数 */
.table_color_odd {
  display: flex;
  width: 100%;
  background-color: #ffe7cf;
  padding: 0 3rem;
}

/* 行の背景色：偶数 */
.table_color_even {
  display: flex;
  width: 100%;
  background-color: #ffd6ac;
  padding: 0 3rem;
}

/* sp版 */
@media screen and (max-width: 768px) {

  /* 全体の幅・縦並びに調整 */
  .main_container {
    width: 100%;
  }

  .main_title {
    font-size: 2.5rem;
    padding-top: 3rem;
  }

  .section_title_wrapper {
    margin-top: 2rem;
    /* margin-bottom: 0; */
  }

  .section_main_title {
    font-size: 2.8rem;
  }

  .main_heading {
    font-size: 2.5rem;
    padding-top: 1.5rem;
    padding-bottom: 1rem;
  }

  .work_box,
  .schedule_box {
    flex-direction: column-reverse;
    width: 100%;
    padding: 3rem 1rem;
  }

  .sp_handmaidbox {
    padding-top: 0;
  }

  .work_box:last-child {
    padding-bottom: 3rem;
  }

  .heading {
    text-align: center;
    padding-top: 5rem;
    padding-bottom: 4rem;
    font-size: 2rem;
  }

  .roomimage_box,
  .schedule {
    margin: 0 auto;
  }

  .roomimage_box {
    width: 95%;
  }

  /* 作業内容 */
  .text_box {
    width: 100%;
    margin-left: 0;
    display: flex;
    flex-direction: column;
    margin-left: 0;
  }

  .text_box> :nth-child(2) {
    order: 3;
  }

  .text_box> :nth-child(3) {
    order: 2;
  }

  .text_box.reverse {
    display: flex;
    flex-direction: column;
    margin-left: 0;
  }

  .text_box.reverse> :nth-child(2) {
    order: 3;
  }

  .text_box.reverse> :nth-child(3) {
    order: 2;
  }

  .work_heading {
    font-size: 2rem;
  }

  .work_text {
    font-size: 1.6rem;
  }

  /* 制作工程 */
  .process {
    padding-bottom: 3rem;
  }

  .process_flex {
    flex-direction: column;
    padding-inline: 1rem;
    gap: 5rem;
  }

  .process_container {
    width: 100%;
  }

  .process_img {
    width: 100%;
    height: auto;
  }

  .process_description {
    font-size: 1.4rem;
  }

  /* 制作ギャラリー */
  .gallery .heading {
    padding-top: 4rem;
  }

  .slide-items img {
    width: 100%;
    height: 17.3rem;
  }

  /* slick（下部ページネーション） */
  .slick-dots {
    position: static;
    flex-wrap: wrap;
    gap: 0;
  }

  .slick-dots li {
    margin: 0 !important;
  }

  .slick-dots li:nth-child(1) {
    margin-left: 0 !important;
  }

  .slick-dots li button:before {
    font-size: 1rem !important;
  }

  /* 左右ページネーション */
  .slick-prev:before,
  .slick-next:before {
    font-size: 2rem !important;
  }

  /* 写真表示部分 */
  .slick-list.draggable {
    margin: 0 auto;
  }

  /* SP版では非表示にする画像 */
  .workimage_box {
    display: none;
  }

  /* SP版で表示する画像 */
  .sponly_box {
    width: 100%;
    padding-top: 2rem;
  }

  .sponly_image {
    display: block;
    width: 100%;
    height: 20rem;
  }

  .room_image {
    width: 100%;
    height: auto;
  }

  /* スケジュールテーブル */
  .schedule {
    width: 100%;
    margin-bottom: 2rem;
    border-radius: 15%;
  }

  .schedule_table {
    display: block;
  }

  .time {
    width: 20%;
    text-align: left;
  }

  .todo {
    width: 80%;
  }


  .schedule_comment,
  .schedule_list {
    font-size: 1.6rem;
  }
}