#contentsTop{padding-bottom:70px}.main-visual{position:relative;width:100%;height:60vh;min-height:450px;overflow:hidden;background:linear-gradient(135deg,#f4e6d7 0%,#e8d5c4 100%);margin-bottom:50px}.background-image{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(//takumi-zaitaku.jp/wp-content/themes/Origin/css/../images/common/main.jpg);background-size:cover;background-position:center}.overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255,255,255,.15)}.content{position:relative;z-index:2;height:100%;display:flex;align-items:center;justify-content:flex-start;padding:0 7em}.main-title{font-size:3.2rem;font-weight:700;color:#81cb98;letter-spacing:.12em;line-height:1.5;font-family:'Kosugi Maru','Noto Sans JP','Yu Gothic Medium','Hiragino Sans',sans-serif;text-align:left;animation:gentleEntry 2.5s cubic-bezier(.23,1,.32,1);background:rgba(255,255,255,.8);padding:30px 45px;border-radius:6px;box-shadow:0 4px 20px rgba(0,0,0,.08);border:1px solid rgba(255,255,255,.95);position:relative;max-width:520px}.highlight{color:#ff81ac;font-weight:700;font-family:'Kosugi Maru','Noto Sans JP','Yu Gothic Medium','Hiragino Sans',sans-serif;font-size:1.1em}@keyframes gentleEntry{0%{opacity:0;transform:translateY(25px);filter:blur(1px)}70%{opacity:.9}100%{opacity:1;transform:translateY(0);filter:blur(0)}}#gnav{margin:40px 0 0;padding-bottom:20px;border-bottom:1px solid #c0b19f}#mainVisual{margin-bottom:50px;text-align:center}#mainVisual img{width:100%;height:100%;object-fit:cover}section .wrap{max-width:980px;margin:0 auto 60px}#topics .titleType2{margin-bottom:30px;text-align:center;color:#81cb98;font-size:2.4rem}#topics .wrap ul{padding-top:30px;border-top:2px solid #81cb98}#topics .wrap ul li{display:flex;margin-bottom:20px;border-bottom:1px solid #ccc}#topics .wrap ul .date{margin-right:35px;margin-left:20px;color:#81cb98;font-weight:700}#topics .wrap ul .text{font-size:1em;font-weight:700}#about{margin-bottom:60px;padding:70px 0 0;background-color:#fcfcfc}#about .titleType2{margin-bottom:50px;text-align:center;color:#475569;font-size:2.4rem}#about .wrap{overflow:hidden}#about ul{display:flex;flex-wrap:wrap;margin:0 -20px 40px 0}#about ul li{width:calc((100% - 20px * 2) / 2);margin:0 20px 20px 0}#about .linkWrap a{position:relative;display:block;transition:.3s}#about .linkWrap a h3{position:absolute;text-align:center;width:100%;top:14%;left:50%;transform:translate(-50%,-50%);font-size:2rem;color:#475569;margin-bottom:0}#about .linkWrap a h3 .txtSmall{font-size:1.6rem}#about .linkWrap a h3 .sp-br{display:none}#about .linkWrap a:hover{opacity:.7}#about .linkWrap a .image{border:1px solid #fff}#about .linkWrap{position:relative;display:block;overflow:hidden;border-radius:8px;box-shadow:0 4px 8px rgba(0,0,0,.1)}#about .linkWrap a{position:relative;display:block;text-decoration:none;color:inherit}#about .linkWrap .image{position:relative;width:100%;height:230px;overflow:hidden}#about .linkWrap .image img{width:100%;height:100%;object-fit:cover}#about .linkWrap h3{position:absolute;top:0;left:0;right:0;margin:0;padding:23px;font-size:1.6rem;font-weight:700;color:#475569;background:linear-gradient(to bottom,rgba(255,255,255,.95) 0%,rgba(255,255,255,.85) 70%,rgba(255,255,255,0) 100%);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);text-shadow:0 1px 2px rgba(255,255,255,.8);z-index:2}#clinic-service .service-section{padding:96px 0;background-color:#f8fafc;position:relative;overflow:hidden}#clinic-service .service-inner{max-width:1000px;margin:0 auto;padding:0 16px;position:relative;z-index:10}#clinic-service .decoration-circle{position:absolute;top:50%;left:0;transform:translateY(-50%) translateX(-80px);width:384px;height:384px;background-color:rgba(0,129,204,.05);border-radius:50%;filter:blur(64px)}#clinic-service .section-header{text-align:center;margin-bottom:64px}#clinic-service .section-tag{color:#81cb98;font-weight:700;letter-spacing:.2em;font-size:12px;background:#fff;padding:6px 16px;border-radius:9999px;text-transform:uppercase;border:1px solid rgb(5 204 0/20%);box-shadow:0 1px 2px rgba(0,0,0,.05)}#clinic-service .section-title{font-size:28px;font-weight:700;color:#334155;margin-top:24px;letter-spacing:.05em}#clinic-service .service-grid-container{background:#fff;border-radius:40px;box-shadow:0 10px 25px -5px rgba(0,0,0,.05);overflow:hidden;border:1px solid #f1f5f9}#clinic-service .service-grid{display:grid;grid-template-columns:repeat(3,1fr)}#clinic-service .service-card{padding:40px;text-align:center;display:flex;flex-direction:column;justify-content:center}#clinic-service .service-card.featured{background:#fbfbfb}#clinic-service .icon-wrap{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:14px;margin-right:8px}#clinic-service .icon-wrap.bg-primary{background:#81cb98;color:#fff;box-shadow:0 4px 6px rgba(0,0,0,.1)}#clinic-service .icon-wrap.border-primary{border:1px solid #81cb98;color:#81cb98}#clinic-service .card-label{font-size:18px;font-weight:700;color:#475569;margin-bottom:24px;display:flex;align-items:center;justify-content:center}#clinic-service .time-display.main .num{font-size:48px;font-weight:700;color:#475569;letter-spacing:-.05em}#clinic-service .time-display.sub .num{font-size:30px;font-weight:700;color:#475569}#clinic-service .unit{font-size:16px;color:#475569;margin-left:4px}#clinic-service .status-badge{margin-top:16px;background:rgba(255,255,255,.8);border-radius:12px;padding:8px 16px;border:1px solid #fff;font-size:12px;font-weight:700}#clinic-service .status-badge p{margin:0}#clinic-service .schedule-day{color:#ff9fbc;font-weight:700;font-size:18px;margin-bottom:12px}#clinic-service .schedule-time{font-size:24px;font-weight:700;color:#475569}#clinic-service .reservation-badge{font-size:14px;color:#ff9fbc;font-weight:700;border:2px solid #ff9fbc;display:inline-block;padding:8px 24px;border-radius:9999px;margin-top:12px}#clinic-service .status-anytime{display:inline-block;padding:4px 16px;border-radius:9999px;color:#ff9fbc;font-weight:700;font-size:18px;border:1px solid rgba(249,115,22,.3);margin-bottom:16px}#clinic-service .doctor-profile-card{margin:60px 0;background:#fff;border-radius:32px;padding:40px;display:flex;align-items:center;gap:32px;margin-left:auto;margin-right:auto;border:1px solid #f1f5f9}#clinic-service .doctor-image-wrap{position:relative;width:144px;height:144px;flex-shrink:0}#clinic-service .doctor-image{position:relative;width:100%;height:100%;border-radius:50%;overflow:hidden;border:1px solid #f1f5f9}#clinic-service .doctor-image img{width:100%;height:100%;object-fit:cover}#clinic-service .doctor-role{color:#81cb98;font-weight:700;font-size:10px;letter-spacing:.2em;text-transform:uppercase;margin-bottom:12px}#clinic-service .doctor-name{font-size:24px;font-weight:700;color:#475569;margin-bottom:16px}#clinic-service .en-name{font-size:14px;font-weight:400;color:#94a3b8;margin-left:12px}#clinic-service .doctor-message{color:#475569;line-height:1.8;font-size:15px}@media (max-width:768px){#mainVisual{margin-bottom:50px;text-align:center}section .wrap{max-width:none;margin:0 auto 40px;padding:0 20px}#topics .titleType2{margin-bottom:20px;font-size:1.8rem}#topics .wrap ul{padding-top:20px}#topics .wrap ul li{display:block}#topics .wrap ul .date{margin:0 0 10px}#about{margin-bottom:40px;padding:40px 0 0}#about .titleType2{margin-bottom:30px;font-size:1.8rem}#about ul{margin:0 -20px 10px 0}#about ul li{width:calc((100% - 20px * 2) / 2)}#about .linkWrap a h3{font-size:1.5rem;top:14%}#about .linkWrap a h3 .txtSmall{font-size:1.3rem}#about .linkWrap a h3 .sp-br{display:block}#about .linkWrap .image{height:160px}#about .linkWrap h3{font-size:1.4rem;padding:12px}#clinic-service .section-header{margin-bottom:30px}#clinic-service .service-grid{grid-template-columns:1fr}#clinic-service .doctor-profile-card{flex-direction:column;text-align:center}#clinic-service .section-title{font-size:1.8rem}#clinic-service .service-card{padding:20px}#clinic-service .doctor-message{text-align:left}#contentsTop{padding-bottom:40px}.main-visual{height:50vh;min-height:380px}.content{padding:0 40px}.main-title{font-size:2.2rem;padding:25px 35px;letter-spacing:.1em;max-width:450px}}@media (max-width:480px){.main-visual{height:45vh;min-height:340px}.content{padding:0 30px}.main-title{font-size:1.8rem;letter-spacing:.08em;padding:20px 25px;max-width:380px}#about .linkWrap .image{height:140px}#about .linkWrap h3{font-size:1.3rem;padding:10px}}@media (max-width:360px){.content{padding:0 20px}.main-title{font-size:1.6rem;padding:18px 25px;max-width:320px}}