.vimeo-iframe {
    width: 80%;
    margin: 0 auto;}
.video-container {
    position: relative;
    width: 100%;
    padding-top: 56.25%; /* (9 / 16 = 0.5625) */
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);}
.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;}

/* --- 選ばれる理由 (.choised) --- */
.choised {
    padding: 5vw 0;}
.choised-inner {
    width:95%;
    margin: 0 auto;
    display: flex;
    gap: 5vw;
    align-items: center;}
.choised-header {
    flex: 1;}
.choised-header h2 {
    font-size: 26px;
    color: #f0a040;
    margin-bottom: 2vw;
    position: relative;
    padding-bottom: 1vw;}
.choised-header h2::after {
    content: '';
    position: absolute;
    bottom: 0; left: 0;
    width: 60px; height: 2px;
    background: #f0a040;}
.choised-lead {
    font-size: 15px;
    line-height: 1.8;}
.choised-list {
    flex: 1;
    list-style: none;
    background: #fff;
    padding: 3vw;}
.choised-list li {
    margin-bottom: 1.2vw;
    padding-left: 1.5em;
    position: relative;
    font-size: 15px;}
.choised-list li::before {
    content: '◯';
    font-family: serif;
    position: absolute;
    left: 0; color: #f0a040;}

/* --- ストーンセラピー (.stone) --- */
.stone {
    padding: 0 5vw;}
.stone-price {
    font-size: 22px;
    font-weight: bold;
    color: #d5973a; }
.stone-desc {
    line-height: 1.8;
    margin: 2vw;
    font-size: 14px;}
.stone-collab {
    background: #ffffff;
    width: 80%;
    padding: 2vw;
    border-left: 5px solid #f0a040;
    margin-left: 3vw;
    margin-top: 3vw;}
.stone-collab p{
    font-size: 14px;
    line-height: 2;}
.plus-price {
    font-weight: bold;
    color: #e60012; }

/* --- おすすめの組み合わせ (.recommend) --- */
.recommend {
    padding: 3vw;
    padding-top: 9vw;
    text-align: center;}
.recommend h2 {
    color: #f0a040;
    margin-bottom: 4vw;
    font-size: 20px;
    font-weight: normal;}
.recommend-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3カラム */
    gap: 1vw;
    margin: 0 auto;}
.recommend-item {
    background: #fff;
    padding: 3vw 1vw;
    border: 1px solid #eee;
    transition: transform 0.3s;}
.recommend-item h3 {
    font-size: 15px;
    font-weight: normal;
    margin-bottom: 1vw;
    height: 3vw;
    display: flex;
    align-items: center;
    justify-content: center; }
.recommend-price {
    font-weight: bold;
    color: #f0a040;
    margin-bottom: 1vw; }
.recommend-text {
    font-size: 13px;
    line-height: 1.6; }

/* スマホ対応 */
@media screen and (max-width: 700px) {
.vimeo-iframe {
    width: 95%;}
.choised {
    padding: 15vw 3vw;}
.choised-inner {
    flex-direction: column; }
.caution{
    margin-bottom: 15vw;}
.stone{
    padding: 0;
    margin: 10vw auto;}
.option-header.stone-header {
    flex-direction: column;
    margin-bottom: 5vw;
    padding-bottom: 5vw;}
.option-header.stone-header h2{
    font-size: 5vw;}
.stone-title-row {
    flex-direction: column; }
.stone-price {
    margin-top: 10px;
    width: 100%;
    text-align: right;}
.stone-collab {
    width: 95%;
    margin: 5vw auto;}
.recommend-grid {
    grid-template-columns: 1fr;   }
.recommend-item {
    padding: 5vw 2vw;}
.recommend-item h3 {
    font-size: 4.5vw;
    font-weight: bold;
    margin-bottom: 3vw;}
.recommend-price {
    font-size: 3.5vw;
    margin-bottom: 3vw;}
.recommend-text {
    font-size: 3vw;}
}