﻿:root { --accent-color: #a68e58; --text-main: #2d3748; --text-sub: #718096; --bg-white: #ffffff; --transition-speed: 0.35s;}
body.is-menu-open { overflow: hidden;}
.c-bottom-sheet-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.2); backdrop-filter: blur(2px); opacity: 0; visibility: hidden; transition: opacity var(--transition-speed) ease; z-index: 999;}
.c-bottom-sheet-overlay.is-active { opacity: 1; visibility: visible;}
.c-bottom-sheet { position: fixed; bottom: 5px; left: 50%; transform: translateX(-50%) translateY(calc(100% - 32px)); width: 95%; max-width: 500px; z-index: 1000; display: flex; flex-direction: column; max-height: 80vh; opacity: 0; visibility: hidden; transition:  transform var(--transition-speed) cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease, visibility 0.5s ease;}
.c-bottom-sheet.is-visible { opacity: 1; visibility: visible;}
.c-bottom-sheet.is-open { transform: translateX(-50%) translateY(0);}
.c-bottom-sheet.is-footer-hidden { opacity: 0 !important; visibility: hidden !important; pointer-events: none;}
.c-bottom-sheet__toggle { width: 100%; height: 32px; background-color: var(--accent-color); color: #ffffff; border: none; border-radius: 12px; padding: 0 16px; font-size: 14px; font-weight: 600; cursor: pointer; display: flex; justify-content: space-between; align-items: center; box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15); flex-shrink: 0;}
.c-bottom-sheet__icon-unit { position: relative; width: 20px; height: 20px;}
.c-bottom-sheet__icon-arrow,.c-bottom-sheet__icon-close { position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: opacity 0.25s ease, transform 0.25s ease;}
.c-bottom-sheet__icon-close { opacity: 0; transform: scale(0.6); }
.is-open .c-bottom-sheet__icon-arrow { opacity: 0; transform: scale(0.6); }
.is-open .c-bottom-sheet__icon-close { opacity: 1; transform: scale(1); }
.c-bottom-sheet__content { background: var(--bg-white); border-radius: 10px; margin-top: 10px; overflow-y: auto; -webkit-overflow-scrolling: touch; box-shadow: 0 -5px 15px rgba(0,0,0,0.05);}
.c-bottom-sheet__content h3 { color: var(--accent-color); font-size: 14px; margin: 1.2rem 12px 0.5rem; padding-top: 10px; border-top: 1px solid #eee;}
.c-bottom-sheet__content h3:first-of-type { border: none; padding-top: 0;}
.c-bottom-sheet__list { list-style: none; padding: 0 10px 10px; margin: 0;}
.c-bottom-sheet__item { border: 1px solid #eee; border-radius: 8px; margin-bottom: 6px;}
.c-bottom-sheet__link { display: flex; align-items: center; padding: 12px; color: var(--text-main); text-decoration: none; font-size: 13px; font-weight: 500; transition: background 0.2s;}
.c-bottom-sheet__link:hover { background: #f8fafc; }
.c-bottom-sheet__link--two-line { padding: 8px; background-color:#F7F7F7; }
.c-bottom-sheet__link-main { display: block; font-size: 14px; font-weight: 600; color: #2d3748; }
.c-bottom-sheet__link-sub { display: block; font-size: 11px; color: var(--text-sub); }
.c-bottom-sheet__icon-unit { position: relative; width: 20px; height: 20px; display: flex; align-items: center; justify-content: center;}
.c-bottom-sheet__icon-arrow,.c-bottom-sheet__icon-close { position: absolute; width: 100%; height: 100%; transition: opacity 0.3s ease, transform 0.3s ease;}
.c-bottom-sheet__icon-arrow { opacity: 1; transform: translateY(0);}
.c-bottom-sheet__icon-close { opacity: 0; transform: translateY(-5px);}
.c-bottom-sheet.is-open .c-bottom-sheet__icon-arrow { opacity: 0; transform: translateY(5px);}
.c-bottom-sheet.is-open .c-bottom-sheet__icon-close { opacity: 1; transform: translateY(0);}
.c-bottom-sheet__icon-area { width: 24px; height: 24px; flex-shrink: 0; margin-right: 12px; display: flex; align-items: center; justify-content: center; color: var(--text-sub);}
.c-bottom-sheet__arrow-area { width: 16px; height: 16px; flex-shrink: 0; margin-left: auto; color: #ccc; transition: transform 0.2s ease;}
.c-bottom-sheet__external-area { width: 14px; height: 14px; flex-shrink: 0; margin-left: 8px; color: #a0aec0;}
.c-bottom-sheet__link:hover .c-bottom-sheet__arrow-area { transform: translateX(3px); color: var(--accent-color);}
.list-icon-area { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width:70px; padding:5px; background-color: var(--accent-color); font-size:10px; color:#fff; border-radius: 5px;}
.list-text-area { flex-grow: 1; min-width: 0; padding: 0 8px;}
.list-arrow-area { display: flex; align-items: center; justify-content: center; flex-shrink: 0; width:16px; max-width:16px;}
.list-arrow-svg { width: 16px; height: 16px; color: #666666; transition: color 0.2s ease, transform 0.2s ease; margin-left: auto;}
.entry{display:contents;}
.list-text-area br{ display:none;}
.c-bottom-sheet__content { position: relative; background: var(--bg-white); border-radius: 10px; margin-top: 14px; overflow: visible !important; }
.c-bottom-sheet__content::before { content: ""; position: absolute; top: -10px; left: 50%; transform: translateX(-50%); border-left: 12px solid transparent; border-right: 12px solid transparent; border-bottom: 10px solid var(--bg-white); z-index: 10; display: block;}
.c-bottom-sheet__list { max-height: 60vh; overflow-y: auto; -webkit-overflow-scrolling: touch; padding-bottom:0px;}
.is-hidden-pt{ opacity:1; }
 .c-btn-sp{display:none;}
 .c-btn-pc{display:block; text-align:left;line-height:150%;}
@media (max-width: 640px){
.c-btn-sp{display:block;position: absolute; transform: translate(-50%, -50%); left: 50%; width: 100%;}
.c-btn-pc{display:none;}
.is-hidden-pt{ opacity:0;  transition: opacity 0.3s ease, transform 0.3s ease;}
.is-visible-pt{ opacity:1;  transition: opacity 0.3s ease, transform 0.3s ease;}
span.career_img img{display:none}
}
@media (max-width: 375px){.list-icon-area { margin-right: 0px; width:50px; padding:5px; justify-content: center; text-align: center;}
.list-text-area br{ display:block;}
.is-hidden-pt{ opacity:0;  transition: opacity 0.3s ease, transform 0.3s ease;}
.is-visible-pt{ opacity:1;  transition: opacity 0.3s ease, transform 0.3s ease;}
}
.c-bottom-sheet__footer { padding: 10px 15px 20px; border-top: 1px solid #eee; text-align: center;}
.c-bottom-sheet__close-btn { width: 100%; padding: 12px; color: #64748b; border: none; border-radius: 8px; font-size: 14px; font-weight: 600; cursor: pointer; transition: background-color 0.2s;}
.c-bottom-sheet__close-btn:hover { background-color: #e2e8f0; color: #475569;}
.c-bottom-sheet__handle { width: 40px; height: 4px; background-color: #e2e8f0; border-radius: 2px; margin: 8px auto 0;}
.c-bottom-sheet__top-close-btn { position: absolute; top: 12px; right: 12px; width: 32px; height: 32px; display: flex; align-items: center; justify-content: center; background: #f8fafc; border: none; border-radius: 50%; color: #94a3b8; cursor: pointer; transition: all 0.2s; z-index: 10;}
.c-bottom-sheet__top-close-btn:hover { background: #f1f5f9; color: #64748b;}
.c-bottom-sheet__top-close-btn svg { width: 18px; height: 18px;}
.c-bottom-sheet__close-icon { width: 16px; height: 16px;}
.c-bottom-sheet__icon-area svg{stroke: var(--accent-color)}
@media (min-width: 640px) { .c-bottom-sheet { position: static !important; transform: none !important; width: auto !important; height: auto !important; }
 .c-bottom-sheet__toggle { position: fixed !important; right: 100px; bottom: 20px; width: 250px; height: 85px; border-radius: 6px; padding:10px 0px; flex-direction: column; justify-content: center; gap: 4px; z-index: 1100; opacity: 0; visibility: hidden; transform: scale(0.8); transition: all 0.3s ease; }
 .c-bottom-sheet.is-visible .c-bottom-sheet__toggle { opacity: 1; visibility: visible; transform: scale(1); z-index:2 }
 .c-bottom-sheet__content { position: fixed !important; left: auto !important; bottom:185px; right: 40px; width: 640px; max-height: 80vh; z-index: 1050; box-shadow: 0 -10px 40px rgba(0,0,0,0.2); border-radius: 20px 20px; transition: opacity 0.4s ease, visibility 0.4s, transform 0.4s cubic-bezier(0.25, 1, 0.5, 1); transform: translateX(3%) translateY(0%);}
 .c-bottom-sheet__content { visibility: hidden; pointer-events: none;}
 .c-bottom-sheet.is-open .c-bottom-sheet__content { transform: translateX(3%) translateY(0%); }
 .is-visible .c-bottom-sheet__content{ opacity:0; }
 .is-visible.is-open .c-bottom-sheet__content{visibility: visible; opacity:1; pointer-events:all;}
  
 .c-bottom-sheet__content::before { display: none !important; }
 .c-bottom-sheet__icon-unit{display:none;}
  html { scrollbar-gutter: stable;}
 .c-bottom-sheet__link-sub{display:none;}
 span.career{display:none;}
 span.career_img img{width:100%;}
 .list-icon-area{background:none; width:150px;}
}
