@media (min-width: 768px) and (max-width: 1024px) {
  /* ----------------------------------------------------
    	共通
	---------------------------------------------------- */
  span.tab-br {
		display: inline;
	}

  span.sp-br {
		display: none;
	}

  /* ----------------------------------------------------
	  	header
	---------------------------------------------------- */
  .header {
    height: 100px;
  }

  .header-inner {
    padding: 0rem 2.5rem;
  }

  .header-logo {
    width: 160px;
    height: auto;
  }

  .hamburger {
    width: 40px;
  }

  span.hamburger-line {
    width: 32px;
    height: 2px;
  }

  span.span-menu {
    font-size: 0.75rem;
    margin-top: 28px;
  }

  nav.menu-page {
    top: 100px;
  }

  .menu-page-inner {
    padding: 6rem 4rem;
    gap: 5rem;
  }

  ul.menu-list {
    gap: 3rem;
  }

  ul.menu-list li {
    font-size: 1.125rem;
  }

  span.menu-txt {
    font-size: 1rem;
  }

  .header-reserve-btn-position {
    font-size: 1rem;
  }

  .header-reserve-btn-frame {
    width: 100% !important;
  }

  .header-reserve-btn {
    padding: 1.5rem 0;
  }

  ul.header-footer-menu-list {
    font-size: 1rem;
  }

  /* ----------------------------------------------------
	  	メインビジュアル
	---------------------------------------------------- */
  .mv p {
    font-size: 2rem;
    top: 10rem;
    left: 6%;
  }

  /* ----------------------------------------------------
	  	追従ボタン
	---------------------------------------------------- */
  .floating-btn {
    width: 240px;
  }

  /* ----------------------------------------------------
	  	お知らせ：次回の無料体験会
	---------------------------------------------------- */
  .trial {
		padding-bottom: 4rem;
    clip-path: polygon(
      0 0,
      100% 0,
      100% 90%,
      50% 100%,
      0 90%
    );
	}

  a.trial-inner {
    padding: 3.625rem 5.25rem 1.5rem 5.25rem;
		aspect-ratio: 21 / 7;
		display: flex;
	}

	.trial-inner-pc  {
		display: flex;
		width: 100%;
		background: #E27277;
	}

  .trial-frame {
		width: 50%;
		height: 100%;
		clip-path: polygon(
			0 0,
			100% 0,
			90% 100%,
			0 100%
		);
	}

  .cta {
		width: 50%;
		font-size: 1.5rem;
	}

	span.arrow-cta {
		font-size: 1rem;
	}

	p.area {
		margin: 0 auto;
		padding-left: 6em;
		text-indent: -6.25em;
	}

  /* ----------------------------------------------------
	  	共通：Text-Style
	---------------------------------------------------- */
  .section-heading p:first-child {
    font-size: 8rem;
  }

  .section-heading h2 {
    font-size: 1.375rem;
    top: 4rem;
  }

  .sub-text {
		font-size: 1rem;
  }
  /* ----------------------------------------------------
    	コンセプト
	---------------------------------------------------- */
  .concept ul {
    gap: 2rem;
  }

  .concept li {
    display: grid;
    grid-template-columns: 30% 1fr;
    gap: 1.5rem;
    align-items: center;
  }

  .concept-img {
    grid-row: 1 / span 2;
    grid-column: 1;
  }

  .li-h3,
  .concept-text {
    grid-column: 2;
  }

  .concept .li-h3 {
    font-size: 1.25rem;
  }

  /* ----------------------------------------------------
    	menu
	---------------------------------------------------- */
  ul.plice-plan-list {
    padding: 3rem 4rem;
  }

  .menu-icon {
    width: 80px;
  }

  .plan-group {
    gap: 1rem;
  }

  .plan-ttl h3 {
    font-size: 1.375rem;
  }

  .plan-ttl p {
    font-size: 1rem;
  }

  p.price {
    font-size: 2rem;
  }

  span.tax {
    font-size: 1rem;
  }

  p.li-p {
    font-size: 1rem;
  }

  .menu-photo {
    width: 360px;
    height: auto;
    aspect-ratio: 3 / 4;
  }

  ul.icon-list {
    gap: 1.5rem;
  }

  .icon-wrapper {
    width: 50px;
    height: 52px;
  }

  .icon-list p {
    font-size: 0.875rem;
  }

  #prevBtn {
    left: 8rem;
    top: 49%;
  }

  #nextBtn {
    right: 8rem;
    top: 49%;
  }

  .box {
		margin: 0rem 4rem;
	}
  /* ----------------------------------------------------
    	ギャラリー
	---------------------------------------------------- */
  .garelly {
    padding-bottom: 5rem;
  }

  .garelly-slide {
    padding: 0rem 10rem;
  }

  .garelly-img {
    max-height: 760px !important;
  }

  .slick-prev {
    left: 130px !important;
  }

  .slick-next {
    right: 130px !important;
  }

  .garelly-button {
    display: none !important;
  }

  .garelly-modal-button {
    bottom: -5rem;
  }

  .garelly-modal-prev,
  .garelly-modal-next {
    width: 4rem;
    height: 4rem;
  }
  /* ----------------------------------------------------
    	HAIR
	---------------------------------------------------- */
  .modal-prev, .modal-next {
    width: 5rem;
    height: 5rem;
  }

  .modal-button {
    bottom: -6rem;
    gap: 1rem;
  }

  .modal-close {
    top: -3.5rem;
  }

  .modal-close img {
    width: 2rem;
  }

  ul.hair-style-photo-list {
    grid-template-columns: repeat(3, 1fr);
  }

  .modal-toggle-position {
    display: none;
  }

  /* ----------------------------------------------------
    	スケジュール
	---------------------------------------------------- */
  ul.schedule-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12rem 1rem;
    align-items: stretch;
  }

  .bg-schedule {
		clip-path: polygon(0 0, 100% 0, 100% 98%, 0 100%);
	}

  .schedule-text {
    width: 100%;
    height: 100%;
    box-sizing: border-box;
  }

  ul.schedule-list li:last-child {
    grid-column: 1 / -1;
    justify-self: center;
    max-width: 400px;
    width: 100%;
  }

  /* === 体験会の様子 === */
  ul.event-img-list {
    padding: 2rem 3rem 0rem 3rem;
  }

  .event-bg {
    height: 740px;
  }

  /* ----------------------------------------------------
    	Instagram
	---------------------------------------------------- */
  p.instagram-deco-txt {
    font-size: 8rem !important;
  }

  /* ----------------------------------------------------
    	お客様の声
	---------------------------------------------------- */
  ul.voice-list {
    padding: 4rem 5rem;
    gap: 2rem;
  }
  
  ul.voice-list li {
    display: grid;
    grid-template-columns: 35% 1fr;
    gap: 0.5rem 2rem;
    align-items: center;
    justify-items: center;
    background: #FFF;
    padding: 1rem;
  }

  .voice-img {
    width: 140px;
    grid-column: 1;
  }

  .voice li h3 {
    grid-column: 1;
  }

  .voice li p {
    grid-column: 2;
    grid-row: 1 / span 2;
  }

  .voice li p {
    font-size: 0.875rem;
  }
  /* ----------------------------------------------------
    	FAQ:よくある質問
	---------------------------------------------------- */
  ul.question-list {
    padding: 4rem 4rem 5rem 4rem;
    gap: 1rem;
  }

  .answer {
    padding: 1.5rem 3rem 1.5rem 1.25rem;
  }

  /* ----------------------------------------------------
    	リザーブ
	---------------------------------------------------- */
  .reserve {
    padding-bottom: 4rem;
  }

  .reserve-text {
    font-size: 1.25rem;
  }

  .reserve-text .p-1 {
    font-size: 1rem;
  }

  .btn-position {
    padding: 0;
    margin-top: -260px;
    gap: 2rem;
    font-size: 1rem;
  }

  .btn-frame {
    width: 65%;
  }

  .reserve-btn {
    padding: 1.5rem 0;
  }

  .line-btn {
    padding: 1.5rem 0;
  }

  span.btn-arrow {
    font-size: 0 !important;
    padding-left: 0.5rem;
  }

  /* ----------------------------------------------------
    	SHOP:店舗一覧
	---------------------------------------------------- */

  .icon-detail-list {
    flex-direction: row;
    gap: 1.5rem;
  }

  .icon-detail-list li {
    gap: 0.5rem;
  }

  ul.shop-list {
    flex-direction: row;
    gap: 1.5rem;
  }

  .shop-detail {
		flex: 0 0 calc((100% - 3rem) / 3);
	}

  /* ----------------------------------------------------
    	footer
	---------------------------------------------------- */
  .footer-inner {
    flex-direction: row;
    justify-content: space-around;
  }
}

/* === 各サイズ微調整 === */
@media (min-width: 1024px) and (max-width: 1350px) {
  /* ----------------------------------------------------
	  	お知らせ：次回の無料体験会
	---------------------------------------------------- */
  .trial {
		padding-bottom: 4rem;
    clip-path: polygon(
      0 0,
      100% 0,
      100% 90%,
      50% 100%,
      0 90%
    );
	}

  a.trial-inner {
    padding: 3.625rem 5.25rem 1.5rem 5.25rem;
		aspect-ratio: 21 / 5;
		display: flex;
	}

	.trial-inner-pc  {
		display: flex;
		width: 100%;
		background: #E27277;
	}

  .trial-frame {
		width: 50%;
		height: 100%;
		clip-path: polygon(
			0 0,
			100% 0,
			90% 100%,
			0 100%
		);
	}

  .cta {
		width: 50%;
		font-size: 1.5rem;
	}

	span.arrow-cta {
		font-size: 1rem;
	}

	p.area {
		margin: 0 auto;
		padding-left: 6em;
		text-indent: -6.25em;
	}
}