/* Public content and artwork retained; modern browser-only interactions. */
:root{--migration-green:#008c58;--migration-border:#c6dfd0}
html{scroll-behavior:smooth}body{overflow-wrap:break-word;line-break:strict}img{max-width:100%;height:auto}iframe{max-width:100%}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #e99031;outline-offset:3px}
.migration-banner{background:#edf6ef;border-bottom:1px solid #b9d6c3;color:#355344;text-align:center;font:calc(12px * var(--site-font-scale, 1))/1.6 sans-serif;padding:5px 12px;position:relative;z-index:2}
.migration-form-notice{background:#fff9ec;border:2px solid #e2be69;color:#534528;padding:20px;margin:0 0 28px;line-height:1.9}.migration-form-notice a{text-decoration:underline!important;color:#006c45!important}input[disabled],button[disabled]{opacity:.65;cursor:not-allowed}
.swiper-container{overflow:hidden;position:relative}.swiper-wrapper{display:block!important;transform:none!important}.swiper-slide{width:100%!important;text-align:center}.swiper-slide img{display:block;margin:auto}.swiper-pagination{bottom:7px!important;display:flex;justify-content:center;gap:7px;left:0;right:0}.migration-dot{width:17px;height:17px;border-radius:50%;border:1px solid #008c58;background:#fff;cursor:pointer;padding:0;box-sizing:border-box}.migration-dot.active{background:#079c65}
.migration-carousel{display:flex!important;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#92c8a5 #f0f6f1;padding-bottom:10px}.migration-carousel>div{flex:0 0 calc((100% - 54px)/4);min-width:0;scroll-snap-align:start}.migration-carousel>div>a>img{width:100%;aspect-ratio:233/155;object-fit:cover}.migration-carousel-controls{display:flex;justify-content:center;gap:16px;margin:12px 0 4px}.migration-carousel-controls button{border:1px solid #a5cab2;background:white;color:#287048;border-radius:4px;padding:7px 15px;font-size:calc(13px * var(--site-font-scale, 1));cursor:pointer}
.migration-lightbox{max-width:min(1000px,94vw);max-height:94vh;border:0;padding:36px 12px 12px;background:#fff;border-radius:6px}.migration-lightbox::backdrop{background:#000b}.migration-lightbox>button{position:absolute;right:8px;top:3px;background:transparent;border:0;font-size:calc(30px * var(--site-font-scale, 1));cursor:pointer}.migration-lightbox>img{max-height:82vh;object-fit:contain;display:block;margin:auto}
.migration-menu-button{display:none}.dropmenu li:focus-within>ul{visibility:visible!important;opacity:1!important;display:block!important}
.migration-facilities{padding:20px 0 50px;width:100%;box-sizing:border-box}.migration-facilities>h1{font-size:calc(25px * var(--site-font-scale, 1));line-height:1.5;color:#126c42;border-bottom:2px solid #3b9464;padding:0 0 16px;margin-bottom:15px}.migration-search-intro{margin:0 0 24px;line-height:1.8}#migration-facility-search{background:#f4f8f3;border:1px solid var(--migration-border);padding:24px;margin-bottom:24px;box-sizing:border-box}.migration-search-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.migration-search-fields>label{font-size:calc(14px * var(--site-font-scale, 1));font-weight:bold;display:flex;flex-direction:column;gap:7px}.migration-search-fields input,.migration-search-fields select{background:#fff;border:1px solid #b7c9bb;box-sizing:border-box;border-radius:3px;width:100%;padding:11px;font:calc(16px * var(--site-font-scale, 1))/1.4 sans-serif;color:#333;min-height:46px}.migration-feature-options{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;padding:16px 0}.migration-feature-options label{font-size:calc(14px * var(--site-font-scale, 1));line-height:1.6;display:flex;align-items:center;gap:7px}.migration-feature-options input{width:18px;height:18px;accent-color:#008c58}#migration-feature-details{border-top:1px solid #c9dbcc;margin-top:22px;padding-top:17px}#migration-feature-details>summary{cursor:pointer;font-size:calc(15px * var(--site-font-scale, 1));font-weight:bold;color:#176742;padding:5px 0}.migration-search-actions{display:flex;gap:12px;justify-content:center;margin-top:22px}.migration-search-actions button{padding:12px 26px;min-height:48px;background:var(--migration-green);color:white;border:1px solid var(--migration-green);border-radius:4px;font-size:calc(16px * var(--site-font-scale, 1));cursor:pointer}.migration-search-actions button[type=reset]{color:#376144;background:#fff;border-color:#a9c7b1}.migration-price-note{background:#fff9ec;padding:18px;line-height:1.9;border:1px solid #ead6a4}.migration-price-note a{color:#006c45;font-weight:bold}#migration-result-count{padding:10px 0 20px;font-size:calc(18px * var(--site-font-scale, 1));font-weight:bold;color:#176742}.migration-empty{padding:35px;background:#f6f8f5;text-align:center;line-height:1.8}.facilities-list .facility-icon img{max-width:100%}.migration-facilities .facilities-item .cell:first-child{width:233px}.migration-facilities .facilities-item .cell:first-child img{width:233px;max-width:100%;height:auto}.migration-facilities .facilities-item{border-bottom:1px solid #ccd9cb;padding:0 0 28px;margin:0 0 28px}.migration-facilities .facility-name{font-size:calc(20px * var(--site-font-scale, 1));line-height:1.6}
@media(max-width:640px){
.migration-banner{font-size:calc(11px * var(--site-font-scale, 1));padding:5px 8px}.migration-banner span{display:none}body{min-width:0!important;width:100%!important;overflow-x:hidden}.wrapper,.contents,#page,#content,#primary,#main{max-width:100%!important;box-sizing:border-box}#header .wrapper{padding:12px!important}#header .logo_gl{max-width:68%!important}#header .logo_sh{max-width:30%!important}#header .logo_gl img,#header .logo_sh img{max-width:100%;height:auto!important}#header .txt_area{display:none!important}.migration-menu-button{display:block;width:100%;padding:13px 20px;border:0;background:#07834f;color:#fff;font-size:calc(16px * var(--site-font-scale, 1));text-align:left;cursor:pointer}.slimmenu{display:none!important;width:100%!important;padding:0!important;margin:0!important}.slimmenu.migration-menu-open{display:block!important}.slimmenu>li{display:block!important;width:100%!important;border-bottom:1px solid #cee1d0;padding:0!important}.slimmenu>li>a{display:block;padding:13px!important}.slimmenu ul{display:none!important}.slimmenu li{float:none!important}.swiper-pagination{gap:5px;bottom:3px!important}.migration-dot{width:13px;height:13px}.migration-carousel{gap:12px}.migration-carousel>div{flex-basis:calc((100% - 12px)/2)}.migration-facilities{padding:20px 14px 35px}.migration-facilities>h1{font-size:calc(21px * var(--site-font-scale, 1))}.migration-search-fields{grid-template-columns:1fr;gap:14px}#migration-facility-search{padding:18px 14px}.migration-feature-options{grid-template-columns:1fr;gap:14px}.migration-search-actions button{padding:12px 15px;flex:1;font-size:calc(15px * var(--site-font-scale, 1))}.migration-facilities .facilities-item .table{display:block!important}.migration-facilities .facilities-item .cell{display:block!important;width:100%!important;padding:0!important}.migration-facilities .facilities-item .cell:first-child{margin-bottom:14px}.migration-facilities .facilities-item .cell:first-child img{width:100%;max-width:420px;aspect-ratio:233/155;object-fit:cover}.migration-facilities .facility-icon{display:flex;flex-wrap:wrap;gap:4px}.migration-facilities .facility-icon>li{width:calc((100% - 16px)/5)!important;margin:0!important}.migration-facilities .facility-name{font-size:calc(19px * var(--site-font-scale, 1))}.migration-form-notice{padding:15px;font-size:calc(14px * var(--site-font-scale, 1))}table{max-width:100%}input,textarea,select{max-width:100%;box-sizing:border-box}#s-image-area .thum-area{display:flex;flex-wrap:wrap;gap:6px}#s-image-area .thum-area>li{width:calc((100% - 18px)/4)!important;display:block}.thum-area img{width:100%;height:auto}.map iframe{height:280px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

.migration-budget-help{font-size:calc(12px * var(--site-font-scale, 1));line-height:1.8;color:#526955;margin-top:15px}

[hidden]{display:none!important}.migration-facilities{max-width:980px;margin:0 auto;padding:36px 10px 50px}.migration-facilities .facility-icon{display:flex;flex-wrap:wrap;gap:4px}.migration-facilities .facility-icon li{margin:0!important}@media(max-width:640px){.migration-facilities{padding:24px 14px 35px}}

/* UI repair: functional type controls and a slider that advances while hovered. */
:root{--site-font-scale:1}
#font-changer .btn-font-change{display:inline-flex;align-items:center;justify-content:center;min-width:80px;min-height:30px;margin-left:5px;padding:3px 16px;border:1px solid #e39037;color:#444;background:#fff;line-height:1.2;vertical-align:middle;cursor:pointer;font-family:inherit;font-size:calc(16px * var(--site-font-scale, 1))}
#font-changer .btn-font-change.is-selected{background:#ed9636;color:#fff;font-weight:bold}
.swiper-container .swiper-pagination{align-items:center;width:100%;z-index:3}
.migration-slider-arrow{position:absolute;top:calc(50% - 24px);z-index:3;display:flex;align-items:center;justify-content:center;width:42px;height:48px;border:1px solid #ffffffa0;border-radius:5px;background:#006b47b5;color:#fff;font:calc(38px * var(--site-font-scale, 1))/1 sans-serif;cursor:pointer;box-shadow:0 1px 5px #0002}
.migration-slider-arrow.is-prev{left:max(12px,calc((100% - 1100px)/2 + 12px))}.migration-slider-arrow.is-next{right:max(12px,calc((100% - 1100px)/2 + 12px))}
.migration-slider-play{display:flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 5px;margin-left:4px;border:1px solid #008c58;border-radius:3px;background:#fff;color:#006b47;font:calc(13px * var(--site-font-scale, 1))/1 sans-serif;cursor:pointer}
.migration-slide-active{animation:greenlife-slide-fade .45s ease-out}
@keyframes greenlife-slide-fade{from{opacity:.55}to{opacity:1}}
.archive-migration-note{font-size:calc(13px * var(--site-font-scale, 1));line-height:1.7;text-align:center;color:#536756;margin:12px 0}
@media(max-width:640px){.migration-slider-arrow{width:30px;height:38px;top:calc(50% - 19px);font-size:calc(28px * var(--site-font-scale, 1))}.migration-slider-arrow.is-prev{left:5px}.migration-slider-arrow.is-next{right:5px}.migration-slider-play{height:22px}}
@media(prefers-reduced-motion:reduce){.migration-slide-active{animation:none}}

.migration-content-dialog{width:min(820px,92vw);max-height:90vh;margin:auto;padding:54px 26px 26px;border:0;border-radius:6px;box-sizing:border-box;color:#4c4c4c;background:white}
.migration-content-dialog::backdrop{background:#0009}.migration-content-dialog .modal-content{position:static!important;display:flow-root!important;width:100%!important;max-width:100%!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;transform:none!important;box-sizing:border-box;overflow:visible!important}
.migration-dialog-close{position:absolute;top:12px;right:16px;border:1px solid #9eb9a8;background:#fff;color:#315d41;padding:7px 13px;border-radius:4px;cursor:pointer;font-size:calc(14px * var(--site-font-scale,1))}
@media(max-width:640px){.migration-content-dialog{width:94vw;padding:52px 16px 20px}}

/* Facility list spacing and footer brand mark — 2026-10-28 */
.migration-facilities #migration-results{display:grid;gap:24px}
.migration-facilities .facilities-list .facility-card{display:block;margin:0;padding:24px;border:1px solid #d5dfd3;border-radius:6px;background:#fff;box-sizing:border-box}
.facility-card-overview{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start}
.facility-card-photo{display:block;overflow:hidden;border-radius:4px;background:#f2f5ef;line-height:0}
.facility-card-photo img{display:block;width:100%;height:auto;max-width:100%;aspect-ratio:233/155;object-fit:cover}
.facility-card-summary{min-width:0}
.facility-card .facility-card-title{margin:0 0 10px;padding:0;font-size:calc(22px * var(--site-font-scale,1));font-weight:700;line-height:1.5;overflow-wrap:anywhere}
.facility-card-title a{color:#31583d;text-decoration:none}.facility-card-title a:hover{text-decoration:underline}.facility-card-title span{color:#ee9427;margin-left:5px}
.facility-card-types{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.facility-card-type{display:inline-block;width:auto;padding:4px 10px;border:1px solid #b4c9a7;border-radius:3px;color:#5b732e;background:#f8fbf5;font-size:calc(12px * var(--site-font-scale,1));font-weight:400;line-height:1.6}
.facility-card .facility-card-description{margin:0;padding:0;color:#5c625c;font-size:calc(15px * var(--site-font-scale,1));font-weight:400;line-height:1.85;overflow-wrap:anywhere}
.facility-card-bottom{display:flex;align-items:center;gap:20px;margin-top:20px;clear:both}
.facility-card-features{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;flex:1;max-width:640px;min-width:0;margin:0;padding:0;list-style:none;clear:none}
.facility-card-features li{display:block;margin:0;padding:0;min-width:0;line-height:0}
.facility-card-features img{display:block;width:100%;height:auto;max-width:65px;aspect-ratio:1;object-fit:contain;margin:0}
.facility-card-detail{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;gap:12px;min-width:164px;min-height:44px;padding:10px 14px;box-sizing:border-box;border:1px solid #e28b1d;border-radius:4px;background:#f39728;color:#fff;font-size:calc(14px * var(--site-font-scale,1));font-weight:700;line-height:1.5;text-decoration:none;text-align:center}
.facility-card-detail:hover{background:#dd821a;color:#fff;text-decoration:none}.facility-card-detail span{font-size:calc(23px * var(--site-font-scale,1));line-height:1}
#footer .main{display:flex;align-items:center;justify-content:space-between;gap:24px;width:calc(100% - 32px);max-width:980px;box-sizing:border-box;padding:20px 0}
#footer .main .link_area{float:none;padding-top:0;line-height:1.7}
#footer .main .logo_sh{flex-shrink:0;line-height:0}
#footer .main .logo_sh img{display:block;width:320px;max-width:100%;height:auto!important}
@media(max-width:900px){.facility-card-overview{grid-template-columns:220px minmax(0,1fr);gap:20px}.facility-card-bottom{flex-wrap:wrap;gap:16px}.facility-card-features{flex:1 1 100%;max-width:640px}.facility-card-detail{margin-left:auto}}
@media(max-width:640px){
.migration-facilities #migration-results{gap:20px}.migration-facilities .facilities-list .facility-card{padding:16px}
.facility-card-overview{grid-template-columns:minmax(0,1fr);gap:16px}.facility-card-photo img{width:100%;max-width:none;aspect-ratio:233/155}
.facility-card .facility-card-title{font-size:calc(20px * var(--site-font-scale,1));line-height:1.55;margin-bottom:10px}.facility-card-types{margin-bottom:10px}
.facility-card .facility-card-description{font-size:calc(14px * var(--site-font-scale,1));line-height:1.9}.facility-card-bottom{gap:16px;margin-top:16px}
.facility-card-features{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;max-width:340px;flex-basis:100%}.facility-card-detail{width:100%;min-height:46px;margin:0}
#footer .main{flex-direction:column;gap:16px;padding:20px 0}#footer .main .link_area{padding:0;text-align:center}#footer .main .logo_sh{text-align:center}#footer .main .logo_sh img{width:280px;max-width:100%}
}
#footer{clear:both;box-sizing:border-box}#footer .main{overflow-wrap:normal}#footer .link_area a{white-space:nowrap}

/* Mobile header follows the original two-row brand arrangement. */
@media(max-width:640px){
#header{height:auto;min-height:0;padding:0;background:#fff}
#header .wrapper{display:flex;flex-direction:column;align-items:center;gap:0;width:100%;padding:2px 4px 0!important}
#header .wrapper .logo_gl{float:none;width:100%;max-width:none!important;margin:0;padding:0;line-height:0}
#header .wrapper .logo_gl a,#header .wrapper .logo_sh a{display:block;line-height:0}
#header .wrapper .logo_gl img{display:block;width:100%;max-width:100%;height:auto!important;margin:0}
#header .wrapper .logo_sh{float:none;width:65%;max-width:none!important;margin:0 auto;padding:0;text-align:center;line-height:0}
#header .wrapper .logo_sh img{display:block;width:100%;max-width:100%;height:auto!important;margin:0 auto}
}

/* Mobile navigation: a tap-sized button at the header's upper right. */
.migration-submenu-toggle{display:none}
@media(max-width:640px){
#header .wrapper{position:relative}
#header .wrapper .logo_gl{align-self:flex-start;width:calc(100% - 56px)}
#header .migration-menu-button{position:absolute;top:5px;right:4px;z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:48px;min-height:48px;margin:0;padding:6px 2px;border:1px solid #07834f;border-radius:5px;background:#fff;color:#07834f;text-align:center;line-height:1}
.migration-menu-icon{display:flex;flex-direction:column;justify-content:space-between;width:23px;height:17px}
.migration-menu-icon>span{display:block;width:100%;height:2px;border-radius:2px;background:currentColor;transition:transform .15s ease,opacity .15s ease}
.migration-menu-label{font-size:calc(10px * var(--site-font-scale,1));font-weight:700;white-space:nowrap}
.migration-menu-button[aria-expanded=true] .migration-menu-icon>span:first-child{transform:translateY(7.5px) rotate(45deg)}
.migration-menu-button[aria-expanded=true] .migration-menu-icon>span:nth-child(2){opacity:0}
.migration-menu-button[aria-expanded=true] .migration-menu-icon>span:last-child{transform:translateY(-7.5px) rotate(-45deg)}
.main-navigation.sp-only{position:relative;z-index:25;clear:both}
.slimmenu.migration-menu-open{background:#fff;border-top:1px solid #d8e4dc;box-shadow:0 5px 10px #153c2020}
.slimmenu>li{position:relative}
.slimmenu>li>a{padding-right:60px!important;color:#176b44;font-weight:700}
.migration-submenu-toggle{position:absolute;top:0;right:4px;display:flex;align-items:center;justify-content:center;width:44px;min-height:44px;padding:0;border:0;background:transparent;color:#176b44;font:24px/1 sans-serif;cursor:pointer}
.slimmenu>li.migration-submenu-open>ul{position:static!important;display:block!important;width:100%!important;margin:0!important;padding:0!important;background:#f4f8f3}
.slimmenu>li>ul>li{display:block!important;width:100%!important;margin:0!important;padding:0!important;border-top:1px solid #e1e9e1}
.slimmenu>li>ul>li>a{display:block;padding:12px 18px 12px 28px!important;color:#315d41;font-size:calc(14px * var(--site-font-scale,1));line-height:1.6;text-decoration:none}
#migration-mobile-links>li{background:#fff!important}
#migration-mobile-links>li>a{background:transparent!important;color:#176b44;text-decoration:none}
#migration-mobile-links>li>ul>li{background:#f4f8f3!important}
#migration-mobile-links>li>ul>li>a{background:transparent!important;color:#315d41;text-decoration:none}
.migration-menu-button:focus-visible,.migration-submenu-toggle:focus-visible{outline:3px solid #eea533;outline-offset:2px}
}

/* Retain the existing typography and artwork while allowing long names to wrap. */
#s-head-area .txt-area{min-width:0}
#s-head-area .title,#s-head-area .d_title{height:auto;min-height:37px;line-height:1.5;text-wrap:balance;overflow-wrap:break-word}
#s-head-area .migration-name-unit{display:inline-block;white-space:nowrap}
#main .page-header,#main .sub-page-header,#main .page-message{text-wrap:balance}
#main p,#s-read-comment,#s-00-comment{line-break:strict;text-wrap:pretty}
.category #info-area .comment>a,#s-00-comment>a{display:block;overflow-wrap:anywhere}
.tochi_a{max-width:100%}
@media(max-width:640px){
/* Fixed desktop floats otherwise leave only a few characters beside each photo. */
.page-album #main article{padding:20px 16px}
.page-album article .photo-area{float:none;width:200px;max-width:100%;min-height:0;margin:0 auto 16px}
.page-album article .day{float:none;clear:both;width:100%;max-width:100%}
.page-album article .day>span{display:block;margin-left:0}
.page-album article .album-content,.page-album article .toggle-area{clear:both}
.page-album .btn-facility{position:static;display:block;margin-bottom:14px;text-align:right}
.form dt{box-sizing:border-box}
}
