main{padding:84px 0 6.25vw}.site-container{max-width:90%;margin:0 auto;position:relative}:root{--design-width: 1730px;--scale: clamp(.4, calc(100vw / var(--design-width)), 1);--max-content-width: 1200px;--color-primary: #0054A6;--color-primary-dark: #003d7a;--color-text: #000000;--color-text-light: #333333;--color-border: #e0e0e0;--color-border-dark: #cccccc;--color-background: #ffffff;--color-background-light: #f5f5f5;--font-sans: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Helvetica, "Segoe UI", Roboto, "Noto Sans", "Hiragino Sans", "Yu Gothic", Meiryo, "PingFang SC", "Microsoft YaHei", system-ui, Arial, sans-serif}html,body{font-family:var(--font-sans)}button,input,select,textarea{font-family:inherit}.business-section{max-width:1200px;margin:0 auto 156px;padding:40px 20px 0}.business-page-title{font-size:1.5rem;font-weight:700;color:#000;margin-bottom:32px;padding-bottom:12px;position:relative}.business-page-title:after{content:"";display:block;width:186px;height:3px;background-color:var(--color-primary);margin-top:12px}.business-intro{margin-bottom:48px}.business-intro__text{font-size:.95rem;color:#000;line-height:1.8}@media(max-width:1000px){.business-section{margin-bottom:10vw}.business-page-title{font-size:3.6vw;margin-bottom:4vw;padding-bottom:1vw}.business-page-title:after{width:18vw;height:.6vw;background-color:var(--color-primary);margin-top:1.2vw}.business-intro__text{font-size:3vw;line-height:1.5;margin:4vw 0}}.kodate-description{font-size:1rem;line-height:1.8;color:#000;margin-bottom:40px}.kodate-description p{margin-bottom:1em}.kodate-description p:last-child{margin-bottom:0}.kodate-properties{display:flex;flex-direction:column;gap:30px;margin-bottom:0}.property-card{overflow:hidden;background:#fff;padding:30px;border:1px solid #0F4B86}.property-card__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;margin-bottom:0;flex-wrap:wrap;position:relative}.property-card__header:after{content:"";position:absolute;left:0;bottom:0;width:33%;height:2px;background-color:#0f4b86}.property-card__title{font-size:1.1rem;font-weight:700;color:#000;margin:0;flex-grow:1}.property-card__date{display:block;font-size:.85rem;color:#666;margin-top:8px;margin-bottom:10px}.property-card__tags{display:flex;gap:8px;flex-wrap:wrap}.property-card__tag{padding:4px 12px;font-size:.75rem;font-weight:700;border-radius:3px;background:#0f4b86;color:#fff}.property-card__content{display:flex;gap:30px;align-items:stretch}.property-card--image-left .property-card__content{flex-direction:row-reverse}.property-card__info{flex:0 0 auto;min-width:0;display:flex;flex-direction:column}.property-card__date{display:block;font-size:.85rem;color:#666;margin-bottom:8px}.property-card__price{font-size:1.5rem;font-weight:700;color:#da0000;margin-bottom:8px;padding-top:8px}.property-card__access{display:block;font-size:1rem;color:#000;margin-bottom:20px}.property-card__description{font-size:1rem;line-height:1.5;color:#000;margin-bottom:0}.property-card__description p{margin:0}.property-card__specs{display:flex;gap:24px;padding-top:20px;margin-bottom:20px;font-size:1rem;color:#000;flex-grow:1}.property-card__spec{white-space:nowrap}.property-card__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:auto}.property-card__btn{padding:20px 65px;font-size:18px;font-weight:500;text-decoration:none;text-align:center;transition:opacity .2s}.property-card__btn:hover{opacity:.85}.property-card__btn--primary{background:#0f4b86;color:#fff}.property-card__btn--secondary{background:#ffc971;color:#000}.property-card__btn--tertiary{background:#f27059;color:#fff}.property-card__btn--disabled{cursor:not-allowed}.property-card__btn--disabled:hover{background:#ccc!important;color:#888!important;opacity:1;pointer-events:auto}.property-card__image{flex:1 1 auto;position:relative;display:flex;align-items:flex-end}.property-card__image img{width:100%;height:auto;object-fit:cover}.property-card__number{position:absolute;bottom:8px;right:8px;background:#0f4b86;color:#fff;padding:6px 12px;font-size:1.2rem;font-weight:700;border-radius:4px}@media(max-width:1000px){.property-card{padding:0 2vw 3vw;box-sizing:border-box;position:static;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;grid-template-areas:"header date" "content content";gap:0}.property-card__content{flex-direction:column;gap:0}.property-card--image-left .property-card__content{flex-direction:column}.property-card__image{width:100%;order:-1;margin-bottom:0;aspect-ratio:3 / 2;overflow:hidden;padding:0;box-sizing:border-box}.property-card__image img{display:block;border-radius:0;width:100%;height:100%;object-fit:cover;box-sizing:border-box}.property-card__header{display:flex;justify-content:flex-start;align-items:center;gap:16px;padding:16px 0;margin:0;border-bottom:1px solid #e0e0e0;grid-area:header}.property-card__header:after{display:none}.property-card__title{font-size:1.1rem;margin:0;flex:1}.property-card__tags{display:none}.property-card__date{grid-area:date;align-self:center;justify-self:end;margin:0;padding:0 0 0 12px;font-size:.85rem;color:#000}.property-card__content{grid-area:content}.property-card__info{padding-top:16px;order:1}.property-card__price{font-size:3.6vw;color:#da0000;font-weight:700;margin-bottom:3vw;padding-top:0}.property-card__access{font-size:3vw;margin-bottom:3vw}.property-card__description{font-size:3vw;line-height:1.5;margin-bottom:3vw}.property-card__specs{display:flex;flex-direction:row;gap:4vw;padding-top:0;margin-bottom:4vw;font-size:3vw}.property-card__spec{white-space:nowrap}.property-card__actions{display:flex;flex-direction:row;gap:8px}.property-card__btn{flex:1;padding:16px 10px;font-size:14px;text-align:center}.kodate-properties{display:flex;row-gap:8vw;margin-bottom:0}}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999}.modal--open{display:flex;align-items:center;justify-content:center}.modal__overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#000000b3;cursor:pointer}.modal__content{position:relative;background:#fff;border-radius:8px;max-width:90%;max-height:90%;overflow:auto;z-index:1}.modal__content--photo{padding:0;background:transparent;display:flex;align-items:center;justify-content:center}.modal__content--tour{padding:40px;max-width:500px;width:100%}.modal__close{position:absolute;top:-40px;right:0;width:36px;height:36px;border:none;background:#fff;border-radius:50%;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.modal__content--tour .modal__close{top:10px;right:10px;background:transparent;color:#666}.modal__close:hover{background:#eee}.modal__image{max-width:100%;max-height:85vh;object-fit:contain;border-radius:4px}.modal__title{font-size:1.5rem;font-weight:700;color:#000;margin:0 0 20px;padding-bottom:15px;border-bottom:2px solid #0F4B86}.modal__intro{color:#000;line-height:1.8;margin-bottom:24px}.modal__contact-info{display:flex;flex-direction:column;gap:16px}.modal__contact-item{display:flex;gap:16px;padding-bottom:12px;border-bottom:1px solid #eee}.modal__contact-item:last-child{border-bottom:none;padding-bottom:0}.modal__contact-label{font-weight:700;color:#000;min-width:80px}.modal__contact-value{color:#000}.modal__contact-value a{color:#0f4b86;text-decoration:none}.modal__contact-value a:hover{text-decoration:underline}.modal__contacts-row{display:flex;justify-content:center;align-items:flex-start;gap:40px}.modal__contact-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.modal__qr-code{width:120px;height:120px;object-fit:contain;border:1px solid #ddd;padding:8px;background:#fff}.modal__contact-name{font-weight:700;color:#000;font-size:1rem}.modal__contact-wechat,.modal__contact-phone{font-size:.9rem;color:#000}.modal__contact-phone a{color:#0f4b86;text-decoration:none}.modal__contact-phone a:hover{text-decoration:underline}.modal__contact-card--phone{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:120px}.modal__phone-label{font-weight:700;color:#000;font-size:1rem;margin-bottom:8px}.modal__phone-number{font-size:1.2rem;font-weight:700}.modal__phone-number a{color:#0f4b86;text-decoration:none}.modal__phone-number a:hover{text-decoration:underline}@media(max-width:600px){.modal__content--tour{padding:30px 20px;margin:20px}.modal__contacts-row{flex-direction:column;align-items:center;gap:24px}.modal__contact-item{flex-direction:column;gap:4px}}
