@media screen and (max-width:800px) {

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, caption, th, td, img, form {
	-webkit-text-size-adjust: 100%;
}

textarea{
	font-size: 100%;
}

img {
	max-width: 100%;
	height: auto;
}

hr{
	display: none;
}

html{
	min-height: 620px;
	height: 100%;
	overflow-y: scroll;
}

iframe[name="google_conversion_frame"]{
	position: absolute; top: 0;
}

body{
	height: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a{
	text-decoration: none;
	color: #000;
}

.pc_view{
	display: none !important;
}

.p-logo-sliders img {
    width: 98%;
    margin: 0 1%;
}

.p-loading__logo {
    width: 56vw;
}

/* =========================================
   ハンバーガーボタン周り（＋ボタンに変更）
========================================= */
.openbtn1 {
    width: 50px;
    height: 50px;
    cursor: pointer;
    z-index: 1000;
    position: fixed;
    right: 19px;
    top: 19px;
}

.openbtn1 span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    height: 1.5px;
    background-color: #000;
    width: 100%;
}

.scroll_body .openbtn1 span{
    background-color: #000;
}

/* ★ 3本線を「＋（プラス）」の形に配置 */
.openbtn1 span:nth-of-type(1) {
    top: 24px;
    transform: rotate(0deg);
}

.openbtn1 span:nth-of-type(2) {
    display: none; /* 真ん中の線は使わない */
}

.openbtn1 span:nth-of-type(3) {
    top: 24px;
    transform: rotate(90deg); /* 縦線にしてプラスを作る */
}

/* ★ ドロワーが開いた時（45度回転して「×」になる） */
.openbtn1.active span:nth-of-type(1) {
    top: 24px;
    transform: rotate(-45deg);
}

.openbtn1.active span:nth-of-type(2) {
    display: none;
}

.openbtn1.active span:nth-of-type(3) {
    top: 24px;
    transform: rotate(45deg);
}

.openbtn1.active span{
    background-color: #000;
}

/* =========================================
   ドロワーナビゲーション本体
========================================= */
#g-nav {
    position: fixed;
    z-index: -1;
    opacity: 0;
    top: 0;
    right: 0;
    box-sizing: border-box;
    bottom: unset;
    left: unset;
    width: 100%;
    height: 100vh;
}

#g-nav.panelactive {
    z-index: 100;
    background-color: #fff;
    opacity: 1;
    padding: 0 27px;
    overflow-y: auto; /* ★ 追加：画面の高さが足りない時はスクロール可能にする */
}

/* ★ ドロワーが開いている時のロゴ固定 */
.overflow__hidden .l-header__logo {
    width: 80px;
    order: 2;
    z-index: 1000; /* ★ ナビより上に出るように z-index を上げる */
    position: fixed; /* ★ 追加：スクロールしても動かないように固定 */
    top: 0;
    left: 0;
}

.p-logo-sliders {
    width: 116px;
    height: 228px;
    gap: 14px;
}

.p-header-nav__list {
    display: flex;
    flex-direction: column;
    padding-top: 310px;
    padding-bottom: 80px;
    gap: 24px;
}

.l-header {
}

.l-header__logo {
    padding: 24px 0;
    width: auto;
    padding-left: 0;
}

.home .l-header__logo {
}

.l-header__logo-text {
}

.p-header-nav__item a {
    font-size: 3.6rem;
    padding: 8px 28px;
    display: inline-block;
}

.p-header-nav__item_sp.first {
    margin-top: 32px;
}

.p-header-nav__item_sp a {
    font-size: 2.2rem;
}

.p-card__figure {
    overflow: unset;
}

/* =========================================
   Component: Process & Artisan List (Grid スマホ用)
========================================= */
.p-process-list__grid,
.p-artisan-list__grid {
    grid-template-columns: 1fr; /* 1列に変更 */
}

/* 重ね合わせ（正方形）を解除し、自然な縦積みにする */
.p-process-list__item,
.p-artisan-list__item {
    display: flex;
    flex-direction: column;
    border-right: none; /* スマホは1列なので右側の線を消す */
}

/* PCで正方形にするために使っていた透明なダミーを消す */
.p-process-list__item::before,
.p-artisan-list__item::before {
    display: none;
}

.p-process-list__item--empty, .p-artisan-list__item--empty {
    min-height: 280px;
}

/* =========================================
   Component: Card (画像とテキストエリア スマホ用)
========================================= */
.p-card__figure, .p-artisan-card__figure {
    margin: 0;
    min-height: auto;
    aspect-ratio: 4 / 2.8;
}

/* テキストエリアの余白統一 */
.p-card__body,
.p-artisan-card__body {
    padding: 30px 20px;
}

.p-card__body {
    padding: 18px 14px;
}

/* 文字サイズの微調整 */
.p-card__title{
    font-size: 2.3rem;
}

.p-card__meta {
    display: none;
}

.p-card__link::after, .p-artisan-card__inner::after {
    display: none;
}

.p-artisan-card__name-jp {
    font-size: 2.4rem;
}

/* p-pre-footer部分のスマホ記述（既存のものを書き換え） */
.p-pre-footer__inner {
    flex-direction: column;
}

.p-pre-footer__left {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid #000;
    padding: 27px;
    box-sizing: border-box;
    display: none;
}

.p-marquee__img {
    height: 250px; /* スマホ用の画像の高さ */
}

.p-pre-footer__right {
    padding: 18px 0;
}

.p-pre-footer__insta {
    width: 100%;
    height: 0;
    padding-top: 100%;
    position: relative;
}

.p-pre-footer__insta-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.p-footer-nav {
    display: none;
}

.l-footer {
    padding: 19px 14px 14px;
}

.l-footer__inner {
}

.l-footer__brand {
    margin-bottom: 0;
}

.p-footer-nav {
    margin-left: 0;
    margin-bottom: 40px;
    gap: 40px;
    flex-direction: row; /* SPでも横並びにするか、縦にするか */
    width: 100%;
}

.l-footer__copyright {
    width: 100%;
    text-align: left;
    align-self: center;
}

.l-footer__logo-jp {
    font-size: 4.5rem;
}

.l-footer__copyright small {
    font-size: 1.8rem;
}


.p-process-detail__title {
    font-size: 2.8rem;
}

.p-process-detail__title {
    font-size: 2.5rem;
    left: 29px;
    width: 72%;
}

.p-process-detail__back-arrow {
    font-size: 3.6rem;
    right: 27px;
}

.p-process-detail__inner {
    padding: 0 28px;
}

.p-process-detail__header {
    margin-bottom: 45px;
}

.p-process-detail__video {
    margin-bottom: 80px;
}

.p-process-detail__lead {
    max-width: unset;
    width: 100%;
    margin-bottom: 0;
    padding-top: 165px;
}

.p-process-detail {
    margin-top: 0;
}

.p-spec-list__row {
}

.p-spec-list__row dt {
    font-size: 1.8rem;
    min-width: 64px;
}

.p-spec-list__row dd {
    font-size: 1.8rem;
    line-height: 1.8;
}

.p-timeline-day__label {
    font-size: 1.8rem;
    border: solid 1px;
    padding: 8px 18px;
    border-radius: 24px;
}

.p-timeline-step__desc {
    line-height: 1.6;
    font-size: 1.8rem;
    padding-left: 60px;
}

.p-timeline-day__line {
    display: none;
}

.p-timeline-day {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.p-step-list__row {
    flex-direction: column;
    gap: 5px;
}

.p-step-list__head {
    width: 100%;
    margin-bottom: 5px;
}

.p-process-detail__top-row {
    top: 30px;
    margin-bottom: 0;
}

.p-process-detail__spec-area {
    width: 100%;
    max-width: unset;
    display: flex;
    flex-direction: column;
    margin-bottom: 80px;
}

.p-process-timeline__title {
    font-size: 2.5rem;
}

.p-timeline-step__title {
    font-size: 2.4rem;
}

.p-process-detail__lead p {
    line-height: 1.8;
    font-size: 1.8rem;
}

.p-spec-title {
    width: 100%;
    margin-bottom: 32px;
    font-size: 2.5rem;
}

.p-spec-list {
    width: 100%;
}

.p-process-timeline {
    flex-direction: column;
    width: 100%;
    margin-bottom: 40px;
}

.p-process-timeline__head {
    width: 100%;
    margin-bottom: 48px;
}

.p-process-timeline__body {
    width: 100%;
}

.p-timeline-day__meta {
    width: 40px;
    display: block;
    margin-bottom: 48px;
}

.p-timeline-step__title {
    margin-bottom: 12px;
}

.p-timeline-day__content {
    padding-left: 0;
}

.p-process-detail__footer {
    font-size: 2.5rem;
    margin-top: 0;
    padding: 19px 0;
}

.p-process-detail__section {
    margin-top: 0;
}

.p-detail-gallery {
    gap: 0;
    padding: 0;
}

.p-detail-gallery p{
    line-height: 0;
}

.p-artisan-list {
}

.p-artisan-list__grid {
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
}

.p-artisan-list__item {
    border-right: none;
    padding: 0;
}

.p-artisan-card__figure {
}

.p-artisan-link {
    letter-spacing: 0.05em;
}

.p-artisan-card__body {
    padding: 0 28px 38px;
    margin-top: 30px;
}

.p-artisan-list__item--empty {
    min-height: 300px;
    max-height: 300px;
}

.p-artisan-card__name {
    margin-bottom: 17px;
}

.p-staff-page {
    padding: 47px 29px 0;
    margin-bottom: 72px;
}

.p-staff-section {
    width: 100%;
    margin-bottom: 63px;
}

.p-staff-heading {
    font-size: 2.5rem;
    margin-bottom: 40px;
}

.p-staff-item {
    margin-bottom: 32px;
}

.p-staff-item {
}

.p-staff-role {
    font-size: 1.8rem;
    margin-bottom: 8px;
}

.p-staff-name {
    font-size: 1.8rem;
}

.p-staff-link {
    padding: 3px 12px;
    border: 1px solid #000;
    border-radius: 50px;
    font-size: 1.7rem;
    background: #fff;
    letter-spacing: 0.05em;
}

.p-privacy {
    padding: 47px 29px 36px;
}

.p-privacy__main-title {
    width: 100%;
    font-size: 2.5rem;
    margin-bottom: 50px;
}

.p-privacy__lead {
    width: 100%;
    margin-bottom: 44px;
}

.p-privacy__section {
    width: 100%;
    margin-bottom: 50px;
}

.p-privacy__content {
    margin-bottom: 0;
}

.p-privacy__sub-title {
    width: 100%;
    font-size: 2rem;
    margin-bottom: 21px;
    line-height: 1.4;
}

.p-privacy__list li {
    list-style-type: disc;
    margin-bottom: 16px;
    font-size: 1.6rem;
    line-height: 1.4;
}

/* お問い合わせページ SP調整 */
.p-contact {
    padding: 47px 27px 78px;
}

.p-contact__inner {
    width: 100%;
}

.p-contact__title {
    font-size: 2.5rem;
    margin-bottom: 51px;
}

.p-form__submit-area {
    margin-top: 0;
}

.p-form__item {
    margin-bottom: 32px;
}

.p-form__input textarea {
    height: 450px;
}

.p-form__submit input[type="submit"] {
    padding: 17px;
}

.p-about-label {
    top: 16px;
    left: 16px;
    border: 1px solid #000;
    border-radius: 40px;
    font-size: 2rem;
}

.p-about-close {
    font-size: 10rem;
}

/* ▼ スマホ用：ズーム・閉じるボタンのサイズ微調整 ▼ */
.p-about-zoom-ctrl {
  bottom: 0;
  left: 0;
}
.p-about-zoom-btn {
  width: 50px;
  height: 50px;
}
.p-about-close {
  width: 60px;
  height: 60px;
}
/* スマホ用の線の長さ調整 */
.p-about-zoom-btn--out::before,
.p-about-zoom-btn--in::before {
  width: 16px;
}
.p-about-zoom-btn--in::after {
  height: 16px;
}
.p-about-close::before,
.p-about-close::after {
  width: 22px;
}

.p-about-overlay__img {
    width: 32%;
    height: 32%;
}
























}




















