::-webkit-file-upload-button{-webkit-appearance: button;font: inherit;}
[hidden]{display: none;}
[type="button"]:-moz-focusring{outline: 1px dotted ButtonText;}
[type="button"]::-moz-focus-inner{border-style: none;padding: 0;}
[type="checkbox"]{box-sizing: border-box;padding: 0;}
[type="number"]::-webkit-inner-spin-button{height: auto;}
[type="number"]::-webkit-outer-spin-button{height: auto;}
[type="radio"]{box-sizing: border-box;padding: 0;}
[type="reset"]{-webkit-appearance: button;}
[type="reset"]:-moz-focusring{outline: 1px dotted ButtonText;}
[type="reset"]::-moz-focus-inner{border-style: none;padding: 0;}
[type="search"]{-webkit-appearance: textfield;outline-offset: -2px;}
[type="search"]::-webkit-search-cancel-button{-webkit-appearance: none;}
[type="search"]::-webkit-search-decoration{-webkit-appearance: none;}
[type="submit"]{-webkit-appearance: button;}
[type="submit"]:-moz-focusring{outline: 1px dotted ButtonText;}
[type="submit"]::-moz-focus-inner{border-style: none;padding: 0;}
a{background-color: transparent;margin: 0;padding: 0;}
abbr[title]{border-bottom: none;text-decoration: underline dotted;}
acronym{margin: 0;padding: 0;}
address{margin: 0;padding: 0;}
applet{margin: 0;padding: 0;}
article{display: block;margin: 0;padding: 0;}
aside{display: block;margin: 0;padding: 0;}
audio{display: inline-block;margin: 0;padding: 0;}
audio:not([controls]){display: none;height: 0;}
b{font-weight: bolder;margin: 0;padding: 0;}
big{margin: 0;padding: 0;}
blockquote{margin: 0;padding: 0;}
body{margin: 0;padding: 0;}
button{color:inherit;border-radius: 0; font: inherit;margin: 0;padding: 0;overflow: visible;text-transform: none;-webkit-appearance: button;outline: none;cursor: pointer;border: none;background: none;}
button:-moz-focusring{outline: 1px dotted ButtonText;}
button::-moz-focus-inner{border-style: none;padding: 0;}
canvas{display: inline-block;margin: 0;padding: 0;}
caption{margin: 0;padding: 0;}
center{margin: 0;padding: 0;}
cite{margin: 0;padding: 0;}
code{font-family: monospace, monospace;font-size: 1em;margin: 0;padding: 0;}
dd{margin: 0;padding: 0;}
del{margin: 0;padding: 0;}
details{display: block;margin: 0;padding: 0;}
dfn{font-style: italic;margin: 0;padding: 0;}
dl{margin: 0;padding: 0;}
dt{margin: 0;padding: 0;}
em{margin: 0;padding: 0;}
embed{margin: 0;padding: 0;}
fieldset{margin: 0;padding: 0;}
figcaption{display: block;margin: 0;padding: 0;}
figure{display: block;margin: 0;padding: 0;}
footer{display: block;margin: 0;padding: 0;}
h1{font-size: 2em;margin: 0;padding: 0;}
h2{margin: 0;padding: 0;}
h3{margin: 0;padding: 0;}
h4{margin: 0;padding: 0;}
h5{margin: 0;padding: 0;}
h6{margin: 0;padding: 0;}
header{display: block;margin: 0;padding: 0;}
hr{box-sizing: content-box;height: 0;overflow: visible;margin: 0;padding: 0;}
html{line-height: 1.15;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;overflow-y: scroll;}
i{margin: 0;padding: 0;}
iframe{margin: 0;padding: 0;}
img{border-style: none;margin: 0;padding: 0;vertical-align: top;}
input{font-family: inherit;font-size: 100%;line-height: 1.15;margin: 0;padding: 0;overflow: visible;}
ins{margin: 0;padding: 0;}
kbd{font-family: monospace, monospace;font-size: 1em;margin: 0;padding: 0;}
legend{box-sizing: border-box;color: inherit;display: table;max-width: 100%;margin: 0;padding: 0;white-space: normal;}
main{display: block;margin: 0;padding: 0;}
mark{background-color: #ff0;color: #000;margin: 0;padding: 0;}
menu{display: block;margin: 0;padding: 0;}
nav{display: block;margin: 0;padding: 0;}
object{margin: 0;padding: 0;}
ol{margin: 0;padding: 0;}
optgroup{font-family: inherit;font-size: 100%;line-height: 1.15;margin: 0;padding: 0;}
p{margin: 0;padding: 0;}
pre{font-family: monospace, monospace;font-size: 1em;margin: 0;padding: 0;}
progress{display: inline-block;vertical-align: baseline;margin: 0;padding: 0;}
q{margin: 0;padding: 0;}
ruby{margin: 0;padding: 0;}
s{margin: 0;padding: 0;}
samp{font-family: monospace, monospace;font-size: 1em;}
section{display: block;margin: 0;padding: 0;}
select{font-family: inherit;font-size: 100%;line-height: 1.15;margin: 0;padding: 0;text-transform: none;color: inherit;}
small{font-size: 80%;margin: 0;padding: 0;}
span{margin: 0;padding: 0;}
strike{margin: 0;padding: 0;}
strong{font-weight: bolder;margin: 0;padding: 0;}
sub{font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;bottom: -0.25em;margin: 0;padding: 0;}
summary{display: list-item;margin: 0;padding: 0;}
sup{font-size: 75%;line-height: 0;position: relative;vertical-align: baseline;top: -0.5em;margin: 0;padding: 0;}
svg:not(:root){overflow: hidden;}
table{border-collapse: collapse;border-spacing: 0;margin: 0;padding: 0;}
tbody{margin: 0;padding: 0;}
td{margin: 0;padding: 0;}
template{display: none;}
textarea{font: inherit;font-size: 100%;margin: 0;padding: 0;overflow: auto;}
tfoot{margin: 0;padding: 0;}
th{margin: 0;padding: 0;}
thead{margin: 0;padding: 0;}
time{margin: 0;padding: 0;}
tr{margin: 0;padding: 0;}
tt{margin: 0;padding: 0;}
u{margin: 0;padding: 0;}
ul{margin: 0;padding: 0;}
var{margin: 0;padding: 0;}
video{display: inline-block;}
:root{--color-white: #fff;
--color-off-white: #FDFDFC;
--color-pale-beige: #F5F5EE;
--color-light-beige: #F8F8F3;
--color-green: var(--accent, #349F87);
--color-beige: #E6E6D3;
--color-text-gray: #7B8F85;
--color-light-gray: #C4C2BE;
--color-deep-green: #002A1D;
--color-orange: #EFA661;
--border-dashed: 1px dashed #C4C2BE;
--font-gothic: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic Medium", "Yu Gothic", "Meiryo", sans-serif;
--font-mincho: "Hiragino Mincho ProN", "Yu Mincho", serif;
--font-roboto: "Arial Narrow", "Helvetica Neue", Arial, sans-serif;}
body{background: var(--color-pale-beige);
color: var(--color-deep-green);
font-family: var(--font-gothic);
font-size: 16px;
line-height: 1.8;
overflow-wrap: break-word;}
a{color: inherit;}
a:focus-visible{outline-color: #025ecc;
outline-offset: 1px;
outline-style: auto;}
a[href^="tel:"]{cursor: default;
text-decoration: none;
color: inherit;
pointer-events: none;}
button:focus-visible{outline-width: 1px;
outline-style: auto;
outline-color: #025ecc;
outline-offset: 1px;}
textarea,
[type="search"],
[type="date"],
[type="tel"],
[type="email"],
[type="number"],
[type="password"],
[type="text"]{-webkit-appearance: none;
appearance: none;
font-size: inherit;
padding: 8px 15px;
border: 1px solid #aaa;
border-radius: 4px;
box-sizing: border-box;
width: 100%;
line-height: inherit;
resize: vertical;
display: block;
line-height: 24px;}
[data-animation]{transition-duration: 1s;
transition-delay: .2s;
transition-property: opacity;
opacity: 0;}
[data-animation="after"]{opacity: 1;}
[data-animation][data-animation-type="fadeInRight"]{transition-property: opacity, transform;
transform: translateX(-20px);}
[data-animation="after"][data-animation-type="fadeInRight"]{transform: translateX(0);}
[data-animation][data-animation-type="fadeInLeft"]{transition-property: opacity, transform;
transform: translateX(20px);}
[data-animation="after"][data-animation-type="fadeInLeft"]{transform: translateX(0);}
[data-animation][data-animation-type="fadeInUp"]{transition-property: opacity, transform;
transform: translateY(20px);}
[data-animation="after"][data-animation-type="fadeInUp"]{transform: translateY(0);}
[data-animation][data-animation-type="fadeZoomOut"]{transition-property: opacity, transform;
transform: scale(1.05);}
[data-animation="after"][data-animation-type="fadeZoomOut"]{transform: scale(1);}
::-webkit-input-placeholder{color: #ccc;}
:-ms-input-placeholder{color: #ccc;}
::placeholder{color: #ccc}
.icon{vertical-align: middle;
display: inline-block;
position: relative;
min-width: 1em;}
.icon::before{display: block;}
.u-inner{max-width: 1200px;
margin-left: auto;
margin-right: auto;
padding-left: 20px;
padding-right: 20px;}
.u-ttl{text-align: center;}
.u-ttl_icn{display: block;
line-height: 1;
margin-bottom: 22px;}
.u-ttl_icn > img{display: block;
margin: 0 auto;}
.u-ttl_main{display: block;
line-height: 1.3;
font-size: 30px;
font-weight: bold;
color: var(--color-green);
letter-spacing: 0.05em;}
.u-ttl_en{display: block;
line-height: 1.4;
font-family: var(--font-roboto);
font-weight: 500;
font-size: 14px;
margin-top: 5px;
letter-spacing: 0.1em;}
.u-list{list-style: none;
line-height: 1.8;
font-size: 15px;}
.u-list > li{position: relative;
z-index: 1;
padding-left: 17px;}
.u-list > li:first-child{margin-top: 0;}
.u-list > li::before{content: "";
display: block;
position: absolute;
z-index: 1;
width: 8px;
height: 8px;
background-color: var(--color-green);
border-radius: 50%;
left: 0;
top: 0.9em;
transform: translateY(-50%);}
.u-sect{padding-top: 90px;
margin-top: -90px;}
.u-btn{display: flex;
text-decoration: none;
text-align: center;
box-sizing: border-box;
width: 100%;
cursor: pointer;
border-radius: 10px;
padding: 5px 10px;
line-height: 1.2;
background-color: var(--color-green);
border: none;
justify-content: center;
align-items: center;
transition-duration: .3s;
transition-property: background-color, color, border-color;
position: relative;
z-index: 1;
color: var(--color-white);
min-height: 60px;
font-size: 14px;
font-weight: 500;
overflow: hidden;
border: 1px solid var(--color-green);}
.u-btn-opacity::after{content: "";
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(255, 255, 255, 0.30);
opacity: 0;
transition-duration: .3s;
transition-property: opacity;
pointer-events: none;}
.u-hiddenSVG{height: 0;
width: 0;
overflow: hidden;
position: absolute;}
.u-clamp{max-height: 3.6em;
overflow: hidden;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
display: -webkit-box;}
.u-cat{font-size: 12px;
border: 1px solid var(--color-green);
border-radius: 5px;
background-color: var(--color-white);
font-weight: 500;
padding: 3px 10px;
transition-duration: .3s;
transition-property: color, background-color;
min-width: 100px;
text-align: center;
box-sizing: border-box;
line-height: 17px;
color: var(--color-green);
display: block;}
.u-update{font-family: var(--font-roboto);
color: rgba(0, 42, 29, 0.50);
min-width: 103px;
white-space: nowrap;
line-height: 26px;}
.u-update > time{display: block;}
.u-btn-icnRightTip > .icon{display: block;
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 13px;}
@media screen and (max-width: 1199px){img{max-width: 100%;
height: auto;}
}
@media screen and (min-width:1000px) and (hover:hover){.u-btn-opacity:hover::after{opacity: 1;}
a:hover{text-decoration: none;}
.u-btn:hover{background-color: rgba(255, 255, 255, 0);
color: var(--color-green);}
.u-btn-opacity:hover{background-color: var(--color-green);
color: var(--color-white);}
}
@media screen and (max-width:999px){a[href^="tel:"]{pointer-events: auto;}
}
@media screen and (max-width:767px){body{min-width: 320px;}
textarea,
[type="search"],
[type="date"],
[type="tel"],
[type="email"],
[type="number"],
[type="password"],
[type="text"]{font-size: 16px;}
.u-ttl_icn{max-width: 23px;
margin: 0 auto 10px;}
.u-ttl_main{font-size: 26px;}
.u-update{min-width: 0;}
}
.gFooter{padding-bottom: 35px;}
.gFooter_cols{display: flex;}
.gFooter_col-info{width: 41.7%;
max-width: 788px;}
.gFooter_logo{max-width: 407px;
margin-bottom: 22px;}
.gFooter_logo > a{text-decoration: none;
color: var(--color-green);
position: relative;
padding-bottom: 21.38%;
display: block;
transition-duration: .3s;
transition-property: opacity;}
.gFooter_info{list-style: none;
display: flex;
font-size: 14px;
font-weight: 500;
line-height: 28px;
margin-bottom: 46px;}
.gFooter_info > li{background-color: var(--color-beige);
border-radius: 5px;
padding: 0 13px;}
.gFooter_info > li:nth-child(n+2){margin-left: 10px;}
.gFooter_addr{font-weight: 500;
letter-spacing: 0.06em;}
.gFooter_tel{font-family: var(--font-roboto);
color: var(--color-green);
font-size: 32px;
font-weight: 500;
letter-spacing: 0.05em;
margin-bottom: 32px;}
.gFooter_tel > a{text-decoration: none;
color: inherit;}
.gFooter_calendar{margin-bottom: 30px;}
.gFooter_table{width: 100%;
border-collapse: separate;
font-size: 14px;}
.gFooter_table > thead > tr > th{white-space: nowrap;
border-top: 1px solid var(--color-light-gray);
border-right: 1px solid var(--color-light-gray);
font-weight: 500;
height: 54px;
border-bottom: 1px solid var(--color-light-gray);}
.gFooter_table > thead > tr > th:first-child{border-top-left-radius: 10px;
border-left: 1px solid var(--color-light-gray);
width: 130px;}
.gFooter_table > thead > tr > th:last-child{border-top-right-radius: 10px;}
.gFooter_table > tbody > tr > th{white-space: nowrap;
border-bottom: 1px solid var(--color-light-gray);
font-weight: inherit;
border-right: 1px solid var(--color-light-gray);
border-left: 1px solid var(--color-light-gray);}
.gFooter_table > tbody > tr > td{height: 54px;
border-bottom: 1px solid var(--color-light-gray);
border-right: 1px solid var(--color-light-gray);
text-align: center;
vertical-align: middle;
width: 51px;}
.gFooter_icon{display: block;
width: 14px;
height: 14px;
stroke: var(--color-green);
fill: none;
stroke-width: 1px;}
.gFooter_caution{font-size: 14px;
height: 55px;
display: flex;
align-items: center;
border: 1px solid var(--color-light-gray);
border-top: none;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
padding: 0 27px;}
.gFooter_col-nav{width: 55%;
max-width: 625px;
margin-left: auto;}
.gFootNav{margin-bottom: 53px;}
.gFootNav_cols{display: flex;
max-width: 610px;}
.gFootNav_col{flex-grow: 1;}
.gFootNav_list{list-style: none;}
.gFootNav_list > li > a{text-decoration: none;
color: var(--color-green);
font-weight: bold;
display: block;
padding: 8px 0;}
.gFooter_map{position: relative;
padding-bottom: 49.76%;
border-radius: 10px;
overflow: hidden;
background-color: #f5f3f3;}
.gFooter_map > iframe{display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;}
.gFooter_copyright{text-align: right;
font-size: 12px;
font-family: var(--font-roboto);
color: rgba(0, 42, 29, 0.50);
margin-top: 60px;}
.gFooter_copyright > small{display: block;
font-size: inherit;}
.gFooter_iconWrap{display: inline-block;
position: relative;}
.gFooter_icon-ng{stroke: rgba(0, 42, 29, 0.50);}
.gFooter_table_dot{letter-spacing: -0.2em;
margin-left: -0.2em;}
.gHeaderWrap{height: 90px;}
.gHeader{position: fixed;
width: 100%;
top: 0;
left: 0;
z-index: 1000;
background-color: var(--color-pale-beige);}
.gHeader_inner{max-width: 1373px;}
.gHeader_cols{display: flex;}
.gHeader_col-title{width: 221px;}
.gHeader_title{height: 100%;}
.gHeader_title > a{text-decoration: none;
color: var(--color-green);
display: flex;
height: 100%;
align-items: center;
transition-duration: .3s;
transition-property: opacity;}
.gHeader_title_inner{display: block;
position: relative;
padding-bottom: 21.38%;
width: 100%;}
.gHeader_col-menu{width: calc(100% - 256px);
margin-left: auto;}
.gMenuBtn{display: none;}
.gNav{max-width: 950px;
margin-left: auto;}
.gNav_inner{display: flex;}
.gNav_list{list-style: none;
display: flex;
width: calc(100% - 350px);}
.gNav_list > li{width: 20%;}
.gNav_list > li > a{text-decoration: none;
color: inherit;
display: flex;
flex-direction: column;
height: 90px;
justify-content: center;
align-items: center;
font-size: 14px;
position: relative;
transition-duration: .3s;
transition-property: background-color, color;}
.gNav_list > li > a::before{content: "";
display: block;
position: absolute;
top: 50%;
left: 0;
height: 30px;
width: 1px;
background-color: var(--color-light-gray);
transform: translateY(-50%);}
.gNav_btnList{list-style: none;
width: 310px;
display: grid;
grid-template-columns: 1fr 1fr;
column-gap: 10px;
color: var(--color-white);
margin-left: 40px;
align-self: center;}
.gNav_btnList_btn{min-height: 50px;
font-weight: bold;
height: 100%;}
.gNav_btnList_btn-tel{background-color: var(--color-deep-green);
font-size: 16px;
font-family: var(--font-roboto);
font-weight: 600;
border-color: var(--color-deep-green);
white-space: nowrap;}
.gNav_btnList_btn-tel > .icon{font-size: 14px;
margin-right: 4px;
display: block;}
.gBody{padding-top: 58px;
position: relative;
padding-bottom: 140px;
letter-spacing: 0.05em;}
.gBody-home{padding-top: 39px;}
.gHeaderWrap-home{height: auto;}
.gHeader-home{visibility: hidden;
opacity: 0;
transition-duration: 0.4s;
transition-property: opacity, visibility;}
.gHeader-scrolled{opacity: 1;
visibility: visible;}
.gFixNav{position: fixed;
bottom: 15px;
left: 0;
width: 100%;
z-index: 999;
opacity: 0;
visibility: hidden;
transition-duration: 0.4s;
transition-property: opacity, visibility;}
.gFixNav.isShow{opacity: 1;
visibility: visible;}
.gFixNav_inner{max-width: 1360px;}
.gFixNav_contents{width: 289px;
margin-left: auto;
position: relative;}
.gFixNav_box{box-shadow: 0px 0px 15px rgba(177, 177, 177, 0.1);
border-radius: 10px;
background-color: var(--color-white);
position: absolute;
bottom: 0;
left: 0;
width: 100%;}
.gFixNav_list{list-style: none;
display: flex;}
.gFixNav_list > li{display: flex;
flex-grow: 1;
align-items: center;}
.gFixNav_list > li:nth-last-child(n+2)::after{content: "";
display: block;
width: 1px;
height: 26px;
background-color: var(--color-light-gray);}
.gFixNav_list > li > a{text-decoration: none;
color: inherit;
display: flex;
justify-content: center;
align-items: center;
width: 100%;
height: 50px;
font-size: 14px;
font-weight: 500;
transition-duration: .3s;
transition-property: background-color, color;}
.gFixNav_list_arrow{color: var(--color-green);
margin-left: 6px;
transition-duration: .3s;
transition-property: transform;}
@media screen and (max-width:1299px){.gNav_list > li{flex-grow: 1;
width: auto;}
.gNav_btnList{width: 300px;
margin-left: 20px;}
.gNav_list{width: calc(100% - 320px);}
.gNav{max-width: 900px;}
}
@media screen and (max-width:1099px){.gNav_btnList{width: 230px;
grid-template-columns: auto auto;
margin-left: 10px;}
.gNav_list{width: calc(100% - 240px);}
.gNav{max-width: 750px;}
.gFooter_col-info{width: 440px;}
.gFooter_col-nav{width: calc(100% - 465px);}
}
@media screen and (min-width:1000px) and (hover:hover){a:hover .gFixNav_list_arrow{transform: translateX(4px);}
.gFixNav_list > li > a:hover{color: var(--color-green);}
.gFooter_logo > a:hover{opacity: .7;}
.gHeader_title > a:hover{opacity: .7;}
.gNav_list > li > a:hover{color: var(--color-green);}
}
@media screen and (max-width: 999px){.gFooter_cols{display: block;
max-width: 625px;
margin: 0 auto;}
.gFooter_col{width: auto;
max-width: none;}
.gFooter_col-info{margin-bottom: 50px;}
.gFooter_copyright{max-width: 625px;
margin-left: auto;
margin-right: auto;}
.gHeaderWrap{height: 86px;}
.gHeader_cols{align-items: center;}
.gHeader_col-title{width: 212px;}
.gHeader_title > a{height: 86px;}
.gHeader_col-menu{max-width: 46px;
width: calc(100% - 232px);}
.gMenuBtn{display: block;
height: 46px;
width: 100%;
background-color: var(--color-green);
border-radius: 50%;
color: var(--color-white);
position: relative;
z-index: 1002;}
.gMenuBtn_barWrap{display: block;
width: 20px;
margin: 0 auto;}
.gMenuBtn_bar{display: block;
height: 2px;
background-color: currentColor;
transform: scale(1, 0.75);
transition-duration: .3s;
transition-property: transform;}
.gMenuBtn_bar-no2{margin: 4px 0;}
.gMenuBtn[aria-expanded="true"] .gMenuBtn_bar-no1{transform: translateY(6px) rotate(-45deg) scale(1, 0.75);}
.gMenuBtn[aria-expanded="true"] .gMenuBtn_bar-no2{transform: scale(0, 0.75);}
.gMenuBtn[aria-expanded="true"] .gMenuBtn_bar-no3{transform: translateY(-6px) rotate(45deg) scale(1, 0.75);}
.gNav{position: fixed;
z-index: 1000;
top: 0;
right: 0;
width: 100%;
height: 100%;
opacity: 0;
visibility: hidden;
pointer-events: none;
transition-property: opacity, visibility;
transition-duration: .5s;
max-width: none;
background-color: var(--color-pale-beige);
max-width: 375px;
padding: 106px 20px 50px;
box-sizing: border-box;
box-shadow: 0 100vw 0 100vw rgba(255, 255, 255, 0.71);
overflow: auto;}
.gNav.isShow{opacity: 1;
visibility: visible;
pointer-events: auto;}
.gNav_inner{display: block;}
.gNav_list{display: block;
width: auto;
font-size: 14px;}
.gNav_list > li{width: auto;
margin-bottom: 10px;
position: relative;}
.gNav_list > li > a{background-color: var(--color-off-white);
border-radius: 10px;
color: var(--color-green);
font-size: 16px;
flex-direction: row;
justify-content: flex-start;
height: 64px;
padding-left: 20px;
padding-right: 20px;}
.gNav_list > li > a > .icon{display: block;
font-size: 14px;
color: rgba(0, 42, 29, 0.50);
position: absolute;
top: 50%;
right: 20px;
transform: translateY(-50%);}
.gNav_list > li > a::before{display: none;}
.gNav_btnList{display: block;
width: auto;
max-width: 240px;
margin: 50px auto 0;}
.gNav_btnList > li{margin-top: 10px;}
.gBody{padding-top: 0;
padding-bottom: 100px;}
.gHeader-home{opacity: 1;
transition: none;
visibility: visible;}
}
@media screen and (max-width:767px){.gFixNav ~ .gFooter{padding-bottom: 80px;}
.gFooter_cols{max-width: 400px;}
.gFooter_col-info{margin-bottom: 40px;}
.gFooter_logo{max-width: 335px;}
.gFooter_info{font-size: 13px;
max-width: 335px;
flex-wrap: wrap;
margin-bottom: 38px;}
.gFooter_info > li{padding: 0 5px;
flex-grow: 1;
text-align: center;}
.gFooter_info > li:nth-child(n + 2){margin-left: 8px;}
.gFooter_addr{margin-right: -10px;}
.gFooter_tel{font-size: 28px;
margin-bottom: 2px;}
.gFooter_calendar{background-color: var(--color-off-white);
padding: 15px 20px;
border-radius: 10px;
margin-bottom: 20px;}
.gFooter_table{font-size: 13px;
border-collapse: collapse;}
.gFooter_table > thead > tr > th{height: auto;
border-right: none;
border-top: none;
border-bottom: none;
padding-bottom: 3px;}
.gFooter_table > thead > tr > th:first-child{width: auto;
text-align: left;
border-left: none;
padding-left: 2px;
padding-right: 2px;}
.gFooter_table > tbody > tr > th{border-left: none;
border-right: none;
border-top: 1px solid var(--color-light-gray);
text-align: left;
padding-left: 2px;
padding-right: 2px;}
.gFooter_table > tbody > tr > td{border-right: none;
border-top: 1px solid var(--color-light-gray);
height: 28px;
vertical-align: middle;
width: 30px;}
.gFooter_icon{width: 11px;
height: 11px;}
.gFooter_caution{border: none;
padding: 0;
font-size: 13px;
height: auto;
margin-top: 5px;
font-weight: 500;}
.gFootNav{margin-bottom: 42px;}
.gFootNav_cols{display: flex;
background-image: linear-gradient(to right, var(--color-light-gray) 2px, rgba(255, 255, 255, 0) 2px);
background-repeat: repeat-x;
background-size: 4px 1px;
background-position: left bottom;
flex-direction: column;
position: relative;
padding-top: 65px;}
.gFootNav_col{width: 100%;}
.gFootNav_col-no1{order: 2;}
.gFootNav_list > li > a{padding: 0;
min-height: 65px;
align-items: center;
display: flex;
background-image: linear-gradient(to right, var(--color-light-gray) 2px, rgba(255, 255, 255, 0) 2px);
background-repeat: repeat-x;
background-size: 4px 1px;
background-position: left top;}
.gFooter_map{padding-bottom: 55.98%;}
.gFooter_copyright{text-align: center;
margin-top: 42px;}
.gFooter_iconWrap{vertical-align: middle;
top: -1px;}
.gHeaderWrap{height: 86px;}
.gHeader_title{position: relative;
z-index: 1002;}
.gNav{max-width: none;
top: 86px;
height: calc(100% - 86px);
padding-top: 20px;}
.gNav_btnList_btn{min-height: 60px;}
.gBody{padding-bottom: 60px;
letter-spacing: 0.03em;}
.gFixNav_contents{margin-right: auto;
width: 100%;
max-width: 335px;}
}
@media screen and (max-width:374px){.gFooter_info{font-size: 11px;}
.gFooter_addr{font-size: 14px;}
.gFooter_caution{font-size: 12px;}
}
@keyframes scrollGallery{	0% {		transform: translateX(0%);	}	100% {		transform: translateX(-25%);	}}
@keyframes moveCloud{	0% {		background-position: 0 0;	}	100% {		background-position: 1440px 0;	}}
@keyframes moveCloudSp{	0% {		background-position: 0 0;	}	100% {		background-position: 500px 0;	}}
@keyframes fuwafuwa{	0% {		transform: translateY(0%);	}	50% {		transform: translateY(10%);	}	100% {		transform: translateY(0%);	}}
@keyframes tree{	0% {		transform: translateY(0%);	}	50% {		transform: translateY(1%);	}	100% {		transform: translateY(0%);	}}
.newsList{list-style: none;}
.newsList > li > a{text-decoration: none;
color: inherit;
display: block;}
.newsItem{display: flex;
align-items: center;
padding: 15px 0;
box-sizing: border-box;}
.newsItem_cat{margin-right: auto;}
.newsItem_text{font-weight: 500;
transition-duration: .3s;
transition-property: color, background-color;
line-height: 1.5;
width: calc(100% - 238px);
max-height: 3em;}
.topPartner_inner{position: relative;}
.topPartner_areaTxt{background-color: var(--color-light-beige);
border-radius: 10px;
padding: 80px 30px 72px;
position: relative;
z-index: 2;}
.topPartner_areaTxt_inner{max-width: 1020px;
margin: 0 auto;}
.topPartner_title{font-size: 24px;
font-weight: bold;
color: var(--color-green);
margin-bottom: 20px;}
.topPartner_cols{display: flex;
justify-content: space-between;}
.topPartner_col{width: 45%;}
.topPartner_col-txt{max-width: 388px;
padding-top: 10px;}
.topPartner_text{font-weight: 500;}
.topPartner_col-list{list-style: none;
max-width: 502px;
width: 50%;}
.topPartner_list{display: grid;
grid-auto-flow: column;
grid-template-rows: repeat(3, auto);
column-gap: 28px;
row-gap: 10px;
grid-template-columns: repeat(2, 1fr);
font-size: 16px;}
.topPartner_list > li{border-bottom: var(--border-dashed);
padding-bottom: 4px;}
.topAcs{margin-bottom: 120px;}
.topAcs_inner{position: relative;}
.topAcs_cols{display: flex;
justify-content: space-between;
margin-bottom: 64px;
padding-right: 300px;
align-items: flex-end;}
.topAcs_col-ttl{width: 145px;}
.topAcs_title{margin-bottom: 0;}
.topAcs_col-txt{width: calc(100% - 216px);}
.topAcs_add{font-weight: 500;}
.topAcs_mapLink > a{display: block;
font-weight: 500;
color: var(--color-green);}
.topAcs_mapLink > a > .icon{margin-left: 8px;
font-size: 14px;
vertical-align: middle;}
.topAcsBox{background-color: var(--color-off-white);
border-radius: 10px;
padding: 33px 25px;}
.topAcsBox_inner{max-width: 1086px;
margin: 0 auto;}
.topAcsBox_cols{display: flex;
justify-content: space-between;
position: relative;}
.topAcsBox_col{width: 50%;
box-sizing: border-box;}
.topAcsBox_col-car{border-right: 1px dashed var(--color-light-gray);
padding-right: 40px;}
.topAcsBox_miniCols{display: flex;
justify-content: space-between;}
.topAcsBox_miniCol-icn{width: 105px;
padding-top: 22px;}
.topAcsBox_icn > img{display: block;}
.topAcsBox_miniCol-txt{width: calc(100% - 150px);
max-width: 365px;}
.topAcsBox_title{font-size: 18px;
font-weight: 500;
margin-bottom: 8px;}
.topAcsBox_col-bus{padding-left: 50px;}
.topAcs_areaLink{position: absolute;
top: -19px;
right: 0;}
.topAcs_bird{position: relative;
z-index: 1;
max-width: 58px;
margin-left: auto;
margin-right: -6px;}
.topAcs_bird > img{display: block;}
.topAcs_link{width: 280px;
position: relative;
z-index: 0;
margin-top: -20px;}
.topAcs_link > a{padding: 5px 45px;}
.topAcs_link > a > .icon{transform: translateY(-50%);
right: 13px;}
.topMedical{margin-bottom: 119px;
padding-left: 15px;
padding-right: 15px;}
.topMedical_areaTxt{background-color: var(--color-off-white);
border-top-left-radius: 30px;
border-bottom-left-radius: 30px;
padding: 117px 100px 105px;
padding-right: 0;
position: relative;
box-shadow: 400px 0 0 #fff;
z-index: 2;}
.topMedical_cols{display: flex;
justify-content: space-between;}
.topMedical_col-txt{width: 40%;
max-width: 390px;
padding-bottom: 90px;}
.topMedical_title{margin-bottom: 50px;}
.topMedical_text{font-weight: 500;
letter-spacing: 0.01em;
line-height: 2;}
.topMedical_col-list{width: 57%;
max-width: 589px;}
.topMedical_list{list-style: none;
display: flex;
flex-wrap: wrap;
margin-left: -10px;
margin-right: -10px;}
.topMedical_list > li{width: 33.33%;
box-sizing: border-box;
padding-left: 10px;
padding-right: 10px;}
.topMedical_list > li:nth-child(n+4){margin-top: 20px;}
.topMedical_list > li > a{text-decoration: none;
color: inherit;
display: block;
transition-duration: .3s;
transition-property: color, background-color;}
.topMedicalItem{background-color: #EDF7F5;
border-radius: 10px;
padding: 22px 18px 15px;}
.topMedicalItem_areaIcon{width: 118px;
height: 118px;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto;
position: relative;}
.topMedicalItem_areaIcon::after{content: "";
display: block;
position: absolute;
z-index: 0;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background-color: var(--color-white);
border-radius: 50%;
transition-duration: .3s;
transition-property: transform;
width: 100%;
height: 100%;}
.topMedicalItem_icn{transition-duration: .3s;
transition-property: transform;
position: relative;
z-index: 1;}
.topMedicalItem_icn > img{display: block;}
.topMedicalItem_text{border-top: 1px solid rgba(123, 143, 133, 0.30);
margin-top: 20px;
padding-top: 10px;
font-weight: 500;
display: flex;
align-items: center;
justify-content: space-between;}
.topMedicalItem_text > .icon{display: block;
color: var(--color-green);
font-size: 12px;}
.topMedical_link{max-width: 280px;
position: relative;
z-index: 1;
margin-top: -57px;
padding-left: 57px;}
.topNews{margin-bottom: 121px;}
.topNews_cols{display: flex;
border-bottom: 1px dashed var(--color-orange);
padding-bottom: 100px;
justify-content: space-between;}
.topNews_col-ttl{width: 130px;
padding-top: 15px;}
.topNews_col-txt{width: calc(100% - 165px);
max-width: 894px;
position: relative;}
.topNews_link{display: flex;
justify-content: flex-end;
position: relative;
z-index: 1;}
.topNews_link > a{text-decoration: none;
color: inherit;
display: flex;
font-size: 14px;
font-weight: 500;
align-items: center;
transition-duration: .3s;
transition-property: color, background-color;}
.topNews_link > a > .icon{display: flex;
width: 40px;
height: 40px;
background-color: var(--color-green);
border-radius: 50%;
align-items: center;
justify-content: center;
color: var(--color-white);
margin-left: 12px;
border: 1px solid var(--color-green);
box-sizing: border-box;
transition-duration: .3s;
transition-property: background-color, color, transform;}
.newsList-top{padding-right: 150px;}
.topFeature_title{margin-bottom: 61px;}
.topFeature_cells{max-width: 1140px;
margin: 0 auto;
display: flex;}
.topFeature_cell{max-width: 353px;
width: 31%;
margin-left: 3.5%;}
.topFeature_cell:nth-child(3n+1){margin-left: 0;}
.topFeature_image > img{display: block;
border-radius: 10px;
max-width: 100%;
height: auto;}
.topFeature_headline{font-size: 20px;
font-weight: bold;
color: var(--color-green);
text-align: center;
line-height: 1.5;
margin-top: 32px;
margin-bottom: 25px;}
.topFeature_text{font-size: 15px;}
.topFeature_link{max-width: 280px;
margin: 73px auto 0;}
.topVis{position: relative;}
.topVis_areaText{position: absolute;
z-index: 2;
top: 3px;
left: 0px;}
.topVis_title{color: var(--color-green);
font-size: 46px;
line-height: 1.5;
font-weight: bold;
letter-spacing: 0.05em;}
.topVis_catch{font-size: 14px;
font-weight: 500;
color: var(--color-green);
font-family: var(--font-roboto);
margin-top: 8px;
letter-spacing: 0.1em;
padding-left: 0.6em;}
.topVis_mask{position: absolute;
z-index: 1;
width: 100%;
height: 310px;
fill: var(--color-pale-beige);
pointer-events: none;}
.topVis_slide{position: relative;
z-index: 0;
height: 733px;
font-size: 0;
overflow: hidden;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;}
.topVis_image{height: 733px;
position: relative;
overflow: hidden;}
.topVis_image > img{display: block;
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
object-fit: cover;}
.topVis_image > img.isZoom{transform: scale(1.1);
transition-duration: 10s;
transition-property: transform;
transition-timing-function: linear;}
.topMain{margin-bottom: 70px;}
.topMain_inner{max-width: 1620px;
padding-left: 50px;
padding-right: 50px;}
.topMain_cols{display: flex;
flex-direction: row-reverse;
justify-content: space-between;}
.topMain_col-slide{width: calc(100% - 375px);
padding-top: 18px;}
.topMain_col-nav{width: 314px;}
.topMain_logo{width: 223px;
margin: 0 auto 27px;}
.topMain_logo > a{text-decoration: none;
color: inherit;
position: relative;
padding-bottom: 77.38%;
display: block;
fill: currentColor;
color: var(--color-green);
transition-duration: .3s;
transition-property: opacity;}
.topMain_list{list-style: none;
display: flex;
color: var(--color-text-gray);
font-size: 13px;
justify-content: center;
font-weight: 500;
margin-bottom: 6px;}
.topMain_list > li{display: flex;
align-items: center;}
.topMain_list > li:nth-last-child(n+2)::after{content: "｜";}
.topMain_menuList{list-style: none;
margin-left: -6px;
margin-right: -6px;
display: flex;
flex-wrap: wrap;}
.topMain_menuList > li{width: 50%;
padding: 6px;
box-sizing: border-box;}
.topMain_menuList > li > a{text-decoration: none;
color: inherit;
height: 100%;
box-shadow: 0px 2px 10px rgba(73, 120, 103, 0.05);
border-radius: 10px;
display: flex;
background-color: var(--color-off-white);
display: flex;
flex-direction: column;
align-items: center;
justify-content: flex-start;
min-height: 97px;
font-size: 14px;
color: var(--color-green);
font-weight: 500;
position: relative;
line-height: 1.2;
box-sizing: border-box;
padding-top: 11px;
transition-duration: .3s;
transition-property: box-shadow;}
.topMain_menuList > li > a > .icon{display: block;
position: absolute;
top: 14px;
right: 12px;
color: var(--color-text-gray);}
.topMain_btnList_icon{display: block;
width: 51px;}
.topMain_btnList_icon > img{display: block;
width: 100%;
height: auto;
transition-duration: .3s;
transition-property: transform;}
.topMain_btnList_text{margin-top: 6px;}
.topMain_btnList{list-style: none;
display: flex;
margin-left: -6px;
margin-right: -6px;
color: var(--color-white);
margin-top: 7px;}
.topMain_btnList > li{width: 50%;
box-sizing: border-box;
padding: 0 6px;}
.topMain_btnList_btn{min-height: 50px;
border: none;}
.topMain_btnList_btn-tel{background-color: var(--color-deep-green);
font-size: 16px;
font-family: var(--font-roboto);
font-weight: 600;}
.topMain_btnList_btn-tel > .icon{font-size: 14px;
margin-right: 4px;
display: block;}
.topMain_table{width: 100%;
font-size: 13px;
margin-top: 29px;}
.topMain_table > thead > tr > th{white-space: nowrap;
font-weight: 500;
height: 27px;}
.topMain_table > thead > tr > th:first-child{text-align: left;}
.topMain_table > tbody > tr{border-top: 1px solid var(--color-light-gray);
border-bottom: 1px solid var(--color-light-gray);}
.topMain_table > tbody > tr > th{white-space: nowrap;
font-weight: inherit;
text-align: left;
padding-right: 5px;}
.topMain_table > tbody > tr > td{text-align: center;
height: 27px;
width: 40px;}
.topMain_table_dot{letter-spacing: -0.2em;
margin-left: -0.2em;}
.topMain_table_iconWrap{display: inline-block;
vertical-align: middle;
position: relative;}
.topMain_table_icon{display: block;
width: 11px;
height: 11px;
stroke: var(--color-green);
fill: none;
stroke-width: 1px;}
.topMain_table_icon-ng{stroke: rgba(0, 42, 29, 0.50);}
.topMain_cauList{list-style: none;
display: flex;
flex-wrap: wrap;
font-size: 13px;
font-weight: 500;
margin-top: 7px;}
.topMain_cauList > li{margin-right: 1em;}
.topMain_cauList > li > a{color: inherit;}
.topAbout{position: relative;
margin-bottom: -69px;}
.topAbout_bg{position: absolute;
width: 100%;
height: 1435px;
left: 0px;
top: 166px;
background: linear-gradient(180deg, #F5F5EE 0%, rgba(200, 239, 240, 0.5) 49.5%, #F5F5EE 100%);
z-index: -1;
pointer-events: none;}
.topAbout_inner{position: relative;}
.topAbout_imageWrap{max-width: 206px;
margin: 0 auto 25px;
position: relative;
z-index: 2;}
.topAbout_imageWrap_inner{display: block;
position: relative;
padding-bottom: 75.86%;}
.topAbout_image{position: absolute;
z-index: 0;
top: 0;
left: 0;
width: 100%;
height: 100%;}
.topAbout_catch{display: flex;
color: var(--color-orange);
font-size: 14px;
font-weight: 500;
font-family: var(--font-roboto);
justify-content: center;
align-items: center;
margin-bottom: 30px;
position: relative;
z-index: 2;}
.topAbout_catch::before{content: "";
display: block;
width: 1px;
height: 14px;
background-color: currentColor;
margin-right: 23px;
transform: scale(1.5, 1);}
.topAbout_catch::after{content: "";
display: block;
width: 1px;
height: 14px;
background-color: currentColor;
margin-left: 23px;
transform: scale(1.5, 1);}
.topAbout_title{font-size: 26px;
line-height: 1.8;
text-align: center;
color: var(--color-green);
font-weight: bold;
margin-bottom: 49px;
position: relative;
z-index: 2;}
.topAbout_text{font-size: 16px;
line-height: 2;
text-align: center;
font-weight: 500;
margin-top: 2em;
position: relative;}
.topFeatureBg{padding-left: 14px;
padding-right: 14px;
margin-bottom: -268px;
overflow: hidden;
position: relative;
padding-bottom: 96px;}
.topFeatureBg_contents{position: relative;
max-width: 1340px;
margin-left: auto;
margin-right: auto;
padding-top: 301px;
padding-bottom: 291px;}
.topFeatureBg_border{fill: #f5f5ee;
stroke: #e6e6d3;
stroke-width: 12px;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 0;}
.topFeatureBg_inner{position: relative;
padding-left: 6px;
padding-right: 6px;}
.topGallery{overflow: hidden;}
.topGallery_slide{display: flex;
flex-direction: column;
align-items: flex-start;}
.topGallery_slide_container{display: flex;
animation-name: scrollGallery;
animation-duration: 90s;
animation-iteration-count: infinite;
animation-timing-function: linear;}
.topGallery_slide_item{margin: 0 15px;}
.topGallery_image > img{display: block;
max-width: none;}
.topGallery_slide_item-no1{padding-top: 35px;}
.topGallery_slide_item-no2{padding-top: 147px;}
.topGallery_slide_item-no4{padding-top: 114px;}
.topGallery_slide_item-no5{padding-top: 68px;}
.topGallery_slide_item-no6{padding-top: 201px;}
.topPartnerBg{position: relative;
padding-top: 428px;
margin-top: -343px;
padding-bottom: 250px;}
.topPartnerBg_item{background: linear-gradient(180deg, #F5F5EE 16.55%, rgba(175, 226, 214, 0.3) 37.83%, #F5F5EE 100%);
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 100%;
height: 1180px;}
.topVis_slideWrap{position: relative;}
.topVis_mask-sp{display: none;}
.topFeatureBg_border-sp{display: none;}
.topFeatureBg_leaf{width: 337px;
position: absolute;
z-index: 2;
pointer-events: none;}
.topFeatureBg_leaf > img{display: block;}
.topFeatureBg_leaf[data-animation="after"] > img{display: block;
animation-name: tree;
animation-duration: 3s;
animation-iteration-count: infinite;}
.topFeatureBg_leaf-left{left: 0;
margin-left: -107px;
bottom: 0;}
.topFeatureBg_leaf-right{right: 0;
margin-right: -82px;
top: 110px;}
.cloud{background-image: var(--cloud-pc);
position: absolute;
z-index: 0;
height: 161px;
width: 100%;
left: 0;
background-size: 1440px 161px;
background-repeat: repeat-x;
background-position: 0 0;
animation-name: moveCloud;
animation-duration: 60s;
animation-iteration-count: infinite;
animation-timing-function: linear;}
.cloud-about01{top: 180px;}
.cloud-about02{background-image: var(--cloud-pc);
top: 439px;}
.cloud-about03{background-image: var(--cloud-pc);
top: 570px;}
.cloud-partner01{bottom: 140px;
background-image: var(--cloud-pc);}
.cloud-partner02{background-image: var(--cloud-pc);
bottom: 70px;}
.cloud-partner03{background-image: var(--cloud-pc);
bottom: 0px;}
.topAbout_image[data-animation]{opacity: 1;}
.topAbout_image[data-animation] > use{opacity: 0;
transition-duration: 1s;
transition-property: opacity;}
.topAbout_image[data-animation] > use:nth-child(2){transition-delay: 2s;}
.topAbout_image[data-animation="after"] > use{opacity: 1;}
.topVis_slide_dots{position: absolute;
top: 50%;
right: 20px;
transform: translateY(-50%);
z-index: 10;
list-style: none;}
.topVis_slide_dots > li > button{box-sizing: content-box;
display: block;
width: 6px;
height: 6px;
background-color: var(--color-white);
border-radius: 50%;
border: 5px solid rgba(255, 255, 255, 0);
background-clip: content-box;
transition-duration: .3s;
transition-property: background-color, color;}
.topVis_slide_dots > li.slick-active > button{background-color: var(--color-green);}
.bird{position: absolute;
z-index: 1;}
.bird-feature{width: 138px;
bottom: -130px;
left: 160px;}
.bird-feature[data-animation]{transform: translateX(-150%);
margin-bottom: 100px;
opacity: 0;
transition-duration: 1s, 0.6s, 1s;
transition-property: transform, margin-bottom, opacity;}
.bird-feature[data-animation="after"]{transform: translateX(0);
margin-bottom: 0;
opacity: 1;}
.bird[data-animation="after"] .bird_inner{animation-name: fuwafuwa;
animation-fill-mode: backwards;
animation-iteration-count: infinite;
animation-duration: 3s;}
.bird_inner > img{display: block;}
.topFeatureBg_leaf[data-animation]{transition-property: transform, opacity;}
.topFeatureBg_leaf-left[data-animation]{transform: translateX(-20%);}
.topFeatureBg_leaf-right[data-animation]{transform: translateX(20%);}
.topFeatureBg_leaf[data-animation="after"]{transform: translateX(0);}
.topAcs_bird[data-animation]{transform: translateY(-10%);
opacity: 0;}
.topAcs_bird[data-animation="after"]{transform: translateY(0);
opacity: 1;
transition-duration: 0.7s, 1s;
transition-property: transform, opacity;}
.bird-partner{bottom: -230px;
right: 190px;
z-index: 10;
width: 138px;}
.bird-partner[data-animation]{transform: translateX(-150%);
margin-bottom: 100px;
opacity: 0;
transition-duration: 1s, 0.6s, 1s;
transition-property: transform, margin-bottom, opacity;}
.bird-partner[data-animation="after"]{transform: translateX(0);
margin-bottom: 0;
opacity: 1;}
@media screen and (min-width:1920px){.topMedical_areaTxt{margin-right: calc(((100vw - 1200px) / -2) + 100px);
padding-right: calc(((100vw - 1200px) / 2) - 100px);}
}
@media screen and (max-width: 1399px){.topMain_col-slide{max-width: 965px;
width: calc(100% - 350px);}
.topMain_inner{padding-left: 20px;
padding-right: 20px;
max-width: 1285px;}
}
@media screen and (max-width: 1299px){.topAcs_areaLink{right: 20px;}
}
@media screen and (max-width:1199px){.topAcsBox_col-bus{padding-left: 25px;}
.topAcsBox_miniCol-txt{width: calc(100% - 135px);}
.topAcsBox_col-car{padding-right: 25px;}
.topMedical_areaTxt{padding-left: 30px;}
}
@media screen and (min-width:1000px) and (hover:hover){.topVis_slide_dots > li > button:hover{background-color: var(--color-green);}
a:hover .topMain_btnList_icon > img{transform: translateY(-5px);}
.topMain_logo > a:hover{opacity: .7;}
.topMain_menuList > li > a:hover{box-shadow: 0px 2px 10px rgba(73, 120, 103, 0.15);}
.topNews_link > a:hover{color: var(--color-green);}
.topNews_link > a:hover > .icon{transform: translateX(5px);
background-color: rgba(255, 255, 255, 0);
color: var(--color-green);}
.topMedical_list > li > a:hover{color: var(--color-green);}
a:hover .topMedicalItem_areaIcon:after{transform: translate(-50%, -50%) scale(1.08);}
a:hover .newsItem_cat{background-color: var(--color-green);
color: var(--color-white);}
a:hover .newsItem_text{color: var(--color-green);}
}
@media screen and (max-width: 999px){.newsItem_cat{margin-right: 25px;}
.topPartner{padding-left: 15px;
padding-right: 16px;}
.topPartner_areaTxt{padding: 50px 25px;}
.topPartner_title{font-size: 22px;}
.topPartner_col-txt{padding-top: 5px;}
.topPartner_list{font-size: 15px;}
.topAcs{margin-bottom: 100px;
padding-left: 15px;
padding-right: 15px;}
.topAcs_cols{padding-right: 0;
margin-bottom: 40px;
align-items: flex-end;}
.topAcs_col-ttl{width: auto;}
.topAcs_title{margin-bottom: 0;}
.topAcs_col-txt{width: calc(100% - 190px);}
.topAcsBox{padding: 29px 20px;
margin-bottom: 30px;}
.topAcsBox_inner{max-width: 600px;}
.topAcsBox_cols{display: block;}
.topAcsBox_col{width: auto;
padding: 0;}
.topAcsBox_col-car{border-right: none;
border-bottom: var(--border-dashed);
padding-bottom: 25px;
margin-bottom: 26px;}
.topAcsBox_miniCol-txt{max-width: none;}
.topAcs_areaLink{position: static;
max-width: 280px;
margin: 0 auto;}
.topMedical{margin-bottom: 90px;}
.topMedical_areaTxt{padding: 80px 20px 80px;
padding-right: 0;
box-shadow: 80px 0 0 #fff;}
.topMedical_cols{display: block;}
.topMedical_col{width: auto;}
.topMedical_col-txt{max-width: none;
padding-bottom: 0;
margin-bottom: 46px;}
.topMedical_text{max-width: 480px;
margin: 0 auto;}
.topMedical_col-list{margin: 0 auto;}
.topMedical_link{margin: 60px auto 0;
padding-left: 0;}
.topNews{margin-bottom: 79px;}
.topNews_cols{padding-bottom: 75px;}
.topNews_link{margin-top: 34px;}
.newsList-top{padding-right: 0;}
.topFeature_title{margin-bottom: 50px;}
.topFeature_headline{margin-top: 20px;
margin-bottom: 19px;}
.topVis_areaText{left: 0;
top: 12px;}
.topMain{margin-bottom: 44px;}
.topMain_cols{display: block;
position: relative;
padding-top: 20px;}
.topMain_col{width: auto;
padding: 0;}
.topMain_col-nav{max-width: 713px;
margin: 30px auto 0;}
.topMain_logo{display: none;}
.topMain_list{margin: 0;
position: absolute;
top: 0;
left: 0;
width: 100%;
line-height: 1;
justify-content: flex-start;
white-space: nowrap;}
.topMain_menuList{display: none;}
.topMain_btnList{display: none;}
.topMain_table{width: auto;
margin-left: auto;
margin-right: auto;
margin-top: 42px;}
.topMain_cauList{justify-content: center;
margin-top: 20px;}
.topAbout{margin-bottom: -30px;}
.topFeatureBg{margin-bottom: -60px;}
.topFeatureBg_contents{padding-top: 190px;
padding-bottom: 100px;}
.topFeatureBg_leaf{width: 250px;}
.bird-feature{width: 100px;
left: 110px;}
.bird-partner{width: 100px;
bottom: -170px;
right: 100px;}
}
@media screen and (max-width: 767px){.newsItem{flex-wrap: wrap;}
.newsItem_update{order: 2;}
.newsItem_cat{order: 1;
margin-left: 0;
margin-right: 21px;}
.newsItem_text{width: 100%;
margin-top: 10px;
order: 3;}
.topPartner{padding: 0;}
.topPartner_areaTxt{padding: 35px 20px;}
.topPartner_title{font-size: 20px;}
.topPartner_cols{display: block;}
.topPartner_col{width: auto;
max-width: none;}
.topPartner_col-txt{padding-top: 0;
margin-bottom: 30px;}
.topPartner_col-list{border-top: var(--border-dashed);
padding-top: 25px;}
.topPartner_list{display: flex;
flex-wrap: wrap;
column-gap: 0;
row-gap: 0;
line-height: 2;
font-size: 16px;}
.topPartner_list > li{padding: 0;
border-bottom: none;
position: relative;
padding-right: 18px;}
.topPartner_list > li::before{display: none;}
.topPartner_list > li::after{content: "";
display: block;
position: absolute;
top: 50%;
transform: translateY(-50%) rotate(40deg);
right: 7px;
width: 1px;
height: 16px;
background-color: currentColor;}
.topPartner_list > li:last-child::after{display: none;}
.topAcs{margin-bottom: 81px;
padding: 0;}
.topAcs_cols{display: block;}
.topAcs_col{width: auto;}
.topAcs_col-ttl{margin-bottom: 50px;}
.topAcsBox{margin-bottom: 20px;}
.topAcsBox_miniCols{display: block;}
.topAcsBox_miniCol{width: auto;}
.topAcsBox_miniCol-icn{display: none;}
.topAcsBox_title{margin-bottom: 12px;}
.topAcs_areaLink{max-width: 240px;}
.topAcs_bird{max-width: 42px;}
.topAcs_link{max-width: 240px;
width: auto;}
.topMedical{margin-bottom: 80px;
padding-left: 0;
padding-right: 0;}
.topMedical_areaTxt{box-shadow: none;
padding: 70px 20px 80px;
border-radius: 30px 30px 0 0;
margin-left: -20px;
margin-right: -20px;}
.topMedical_col-list{max-width: none;}
.topMedical_list{display: block;
margin: 0;}
.topMedical_list > li{width: auto;
padding: 0;}
.topMedical_list > li:nth-child(n + 2){margin-top: 10px;}
.topMedicalItem{padding: 8px 15px;
display: flex;
align-items: center;
justify-content: space-between;
padding-right: 20px;}
.topMedicalItem_areaIcon{width: 49px;
height: 49px;
margin: 0;}
.topMedicalItem_icn > img{width: 34px;}
.topMedicalItem_text{margin-top: 0;
padding-top: 0;
width: calc(100% - 69px);
border-top: none;}
.topMedical_link{max-width: 240px;}
.topNews{margin-bottom: 90px;}
.topNews_cols{display: block;
padding-bottom: 59px;}
.topNews_col{width: auto;}
.topNews_col-ttl{padding-top: 0;
margin-bottom: 33px;}
.topFeature_cells{display: block;
max-width: 275px;}
.topFeature_cell{width: auto;
margin-left: 0;}
.topFeature_cell:nth-child(n + 2){margin-top: 55px;}
.topFeature_link{max-width: 240px;
margin-top: 55px;
position: relative;
z-index: 2;}
.topVis_areaText{position: relative;
top: 0;
left: 0;}
.topVis_title{font-size: 32px;
margin-left: -0.1em;}
.topVis_catch{padding-left: 0.2em;}
.topVis_slide{height: 370px;
border-bottom-right-radius: 10px;}
.topVis_image{height: 370px;}
.topMain{margin-bottom: 61px;}
.topMain_cols{padding-top: 56px;}
.topMain_col-nav{margin-top: 41px;}
.topMain_table{margin-top: 0;
width: 100%;}
.topMain_cauList{justify-content: flex-start;}
.topAbout{margin-bottom: 81px;}
.topAbout_bg{top: -220px;
height: 1968px;}
.topAbout_imageWrap{width: 173px;
margin-bottom: 22px;}
.topAbout_catch{margin-bottom: 40px;}
.topAbout_title{font-size: 24px;
text-align: left;
margin-bottom: 27px;}
.topAbout_text{text-align: left;}
.topFeatureBg{padding-left: 20px;
padding-right: 20px;
margin-bottom: -34px;
padding-bottom: 0;}
.topFeatureBg_contents{padding-top: 146px;
padding-bottom: 120px;
max-width: 400px;}
.topFeatureBg_border{stroke-width: 8px;}
.topGallery_slide_item{margin: 0 8px;}
.topGallery_image > img{max-width: 100%;
height: auto;}
.topGallery_slide_item-no1{width: 268px;
padding-top: 20px;}
.topGallery_slide_item-no2{width: 215px;
padding-top: 84px;}
.topGallery_slide_item-no3{width: 268px;}
.topGallery_slide_item-no4{width: 215px;
padding-top: 65px;}
.topGallery_slide_item-no5{width: 268px;
padding-top: 39px;}
.topGallery_slide_item-no6{width: 215px;
padding-top: 115px;}
.topPartnerBg{padding-top: 273px;
margin-top: -232px;
padding-bottom: 32px;}
.topPartnerBg_item{height: 796px;
background: linear-gradient(180deg, #F5F5EE 16.55%, rgba(175, 226, 214, 0.3) 26.15%, rgba(175, 226, 214, 0.3) 72.46%, #F5F5EE 100%);}
.topMain_tableWrap{background-color: var(--color-off-white);
border-radius: 10px;
padding: 10px 10px 13px;
box-sizing: border-box;}
.topMain_tableWrap_inner{max-width: 295px;
margin: 0 auto;}
.topVis_slideWrap{margin-top: -10px;}
.topVis_mask-pc{display: none;}
.topVis_mask-sp{display: block;
height: 120px;}
.topFeatureBg_border-pc{display: none;}
.topFeatureBg_border-sp{display: block;}
.topFeatureBg_leaf{width: 182px;}
.topFeatureBg_leaf-left{bottom: 31px;
margin-left: -60px;}
.topFeatureBg_leaf-right{top: 33px;
margin-right: -60px;}
.cloud{height: 80px;
background-size: 500px 80px;
animation-name: moveCloudSp;
animation-duration: 30s;}
.cloud-about01{background-image: var(--cloud-sp);}
.cloud-about02{background-image: var(--cloud-sp);}
.cloud-about03{background-image: var(--cloud-sp);}
.cloud-partner01{display: none;}
.cloud-partner02{display: none;}
.cloud-partner03{display: none;}
.topVis_slide_dots{right: 7px;}
.bird-feature{width: 80px;
left: 40px;
bottom: -136px;}
.bird-partner{width: 80px;
right: 0;
display: none;}
}
@media screen and (max-width:374px){.topPartner_list{font-size: 15px;}
.topMain_list{font-size: 12px;}
}

:root{--cloud-pc:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%221440%22 height=%22161%22 viewBox=%220 0 1440 161%22%3E%3Cdefs%3E%3Cfilter id=%22b%22 x=%22-20%25%22 y=%22-50%25%22 width=%22140%25%22 height=%22200%25%22%3E%3CfeGaussianBlur stdDeviation=%2216%22/%3E%3C/filter%3E%3C/defs%3E%3Cg fill=%22%23fff%22 filter=%22url(%23b)%22 opacity=%22.6%22%3E%3Cellipse cx=%22180%22 cy=%2290%22 rx=%22150%22 ry=%2228%22/%3E%3Cellipse cx=%22300%22 cy=%2270%22 rx=%2290%22 ry=%2230%22/%3E%3Cellipse cx=%22700%22 cy=%22100%22 rx=%22190%22 ry=%2226%22/%3E%3Cellipse cx=%22820%22 cy=%2276%22 rx=%22100%22 ry=%2226%22/%3E%3Cellipse cx=%221130%22 cy=%2284%22 rx=%22170%22 ry=%2228%22/%3E%3Cellipse cx=%221240%22 cy=%2264%22 rx=%2280%22 ry=%2224%22/%3E%3C/g%3E%3C/svg%3E");--cloud-sp:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%22500%22 height=%2280%22 viewBox=%220 0 500 80%22%3E%3Cdefs%3E%3Cfilter id=%22b%22 x=%22-20%25%22 y=%22-50%25%22 width=%22140%25%22 height=%22200%25%22%3E%3CfeGaussianBlur stdDeviation=%228%22/%3E%3C/filter%3E%3C/defs%3E%3Cg fill=%22%23fff%22 filter=%22url(%23b)%22 opacity=%22.6%22%3E%3Cellipse cx=%2290%22 cy=%2246%22 rx=%2270%22 ry=%2214%22/%3E%3Cellipse cx=%22150%22 cy=%2234%22 rx=%2240%22 ry=%2215%22/%3E%3Cellipse cx=%22350%22 cy=%2250%22 rx=%2290%22 ry=%2213%22/%3E%3Cellipse cx=%22410%22 cy=%2238%22 rx=%2246%22 ry=%2213%22/%3E%3C/g%3E%3C/svg%3E")}
/* template-specific additions: icon masks, text logo, behavior hooks */
.icon::before{content:"";display:block;width:1em;height:1em;background:currentColor;-webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.icon-arrowRight{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 12h15M13 6l6 6-6 6' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.icon-blank{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 4h6v6M20 4l-9 9M18 14v6H4V6h6' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.icon-tel{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 3h3.500l1.800 4.700-2.300 1.500a11 11 0 0 0 5.800 5.800l1.500-2.300 4.700 1.800V18a3 3 0 0 1-3 3A16 16 0 0 1 3 6a3 3 0 0 1 3-3z' fill='black'/%3E%3C/svg%3E")}
.text-logo{display:block;font-weight:700;line-height:1.3;letter-spacing:.08em;white-space:nowrap}
.u-hiddenSVG{position:absolute;width:0;height:0;overflow:hidden}
/* 最初の画面：写真は重ねて切り替える */
.topVis_slide_item{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .7s linear}
.topVis_slide_item.is-active{opacity:1;z-index:1}
.topVis_slide_dots li button{cursor:pointer;padding:0}
/* ロゴ：文字ロゴ（fill.py が医院名で作る）と小さな葉のマーク */
.topMain_logo{width:auto;max-width:300px}
.topMain_logo > a{padding-bottom:0;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
.topMain_logo_mark{position:static;width:96px;height:96px;fill:none;stroke:none;color:var(--color-green)}
.topMain_logo .text-logo{font-size:24px;white-space:normal;word-break:keep-all}
.gHeader_col-title{width:auto;max-width:330px}
.gHeader_title_inner{padding-bottom:0}
.gHeader_title_inner .text-logo{font-size:22px}
.gFooter_logo .text-logo{font-size:28px;white-space:normal}
.topMain_list{flex-wrap:wrap;row-gap:2px;margin-bottom:10px}
.topMain_list > li{white-space:nowrap}
.topMain_btnList_icon > svg{display:block;width:100%;height:auto;color:var(--color-green);transition-duration:.3s;transition-property:transform}
.topMedicalItem_icn > svg{display:block;width:74px;height:74px;color:var(--color-green)}
.topAcsBox_icn > svg{display:block;width:100%;height:auto;color:var(--color-green)}
.u-ttl_icn > svg{display:block;width:27px;height:19px;color:var(--color-orange)}
.topAbout_image{display:block;width:100%;height:auto}
.bird > .bird_inner > svg,.topAcs_bird > svg,.topFeatureBg_leaf > svg{display:block;width:100%;height:auto}
.topAcs_bird{width:58px}
/* メニュー：fill.py が作るリンク（a の並び） */
.gNav_list > a{text-decoration:none;color:inherit;display:flex;flex:1;flex-direction:column;height:90px;justify-content:center;align-items:center;font-size:14px;font-weight:500;letter-spacing:.05em;position:relative;white-space:nowrap}
.gNav_list > a::before{content:"";position:absolute;top:50%;left:0;height:30px;width:1px;background:var(--color-light-gray);transform:translateY(-50%)}
.gNav_list > a:last-child::after{content:"";position:absolute;top:50%;right:0;height:30px;width:1px;background:var(--color-light-gray);transform:translateY(-50%)}
.gFootNav_list > a{display:block;text-decoration:none;color:inherit;padding:3px 0}
.gFootNav_list > a:hover{text-decoration:underline}
.gFooter_mapBox{position:absolute;top:0;left:0;width:100%;height:100%;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border-radius:10px;background:var(--color-beige);color:var(--color-green);text-align:center;padding:24px}
.gFooter_mapBox svg{width:48px;height:48px}
.gFooter_mapBox p{font-size:14px;color:var(--color-deep-green)}
.gFooter_copyright{text-align:center}
@media screen and (max-width:999px){
.gNav_list > a{flex:none;width:auto;height:64px;margin-bottom:10px;flex-direction:row;justify-content:flex-start;padding:0 20px;font-size:16px;background:var(--color-off-white);border-radius:10px;color:var(--color-green)}
.gNav_list > a::before,.gNav_list > a:last-child::after{display:none}
}
@media screen and (max-width:767px){.topAbout_text br{display:none}}
[data-animation="after"].is-done{transition:none;opacity:1}
.topAbout_image.is-done > use{transition:none;opacity:1}
@media screen and (max-width:999px){
.gMenuBtn{display:flex;align-items:center;justify-content:center;padding:0;border:0;cursor:pointer}
.gMenuBtn_barWrap{margin:0}
}
/* 「当院の特徴」が無いとき、診療案内が紹介文に重ならないように */
.topAbout + .topMedical{margin-top:150px}
@media screen and (max-width:767px){.topAbout + .topMedical{margin-top:110px}}
