.slide{position:relative;width:100%;height:calc(100svh - 60px);min-height:700px;overflow:hidden}
.img-anim{overflow:hidden}
.img-anim::after{content:"";position:absolute;inset:-20%;background:linear-gradient(135deg,rgba(255,255,255,0) 25%,rgba(255,255,255,0.45) 50%,rgba(255,255,255,0) 75%);transform:translate(35%, 35%) rotate(0deg);opacity:0;pointer-events:none;mix-blend-mode:screen}
.img-anim.is-show::after{animation:diagonalFadeIn 1.4s ease-out forwards}
.img-anim.is-hide::after{opacity:0}
@keyframes diagonalFadeIn{0%{opacity:0;transform:translate(45%, 45%)}
20%{opacity:0.9}
100%{opacity:0;transform:translate(-10%, -10%)}
}
.mainimg01,.mainimg02,.mainimg03{position:absolute;inset:0;opacity:0;will-change:transform, opacity, filter;display:flex;justify-content:center;align-items:center;overflow:hidden}
.mainimg01{z-index:1}
.mainimg02{z-index:2}
.mainimg03{z-index:3}
.mainimg01::before,.mainimg02::before,.mainimg03::before{content:"";position:absolute;inset:-30%;background-size:cover;background-repeat:no-repeat;background-position:center;will-change:transform;transform:translateY(var(--y, 0));z-index:-1}
.mainimg01::before{background-image:url("../images/mainimg01.png?2026052502")}
.mainimg02::before{background-image:url("../images/mainimg02.png")}
.mainimg01_title{padding-top:80px;width:80%}
.m02{max-width:1080px;margin-left:auto;margin-right:auto;margin-top:50px}
.m02_box img{width:40%}
.m02_box{display:flex;gap:15px;display:flex;justify-content:center;align-items:center}
.m02_box:first-child{margin-bottom:50px}
.m02_box p{font-size:1rem}
.m02_box p small{font-size:0.8rem}
.m02_box .m_blue{color:#0391B1;font-size:1.1rem;margin-left:10px}
.mainimg03{position:absolute;inset:0;opacity:0;will-change:transform, opacity, filter;z-index:3;background: #000}
.mainimg_link{width: 100%;height: 100%;position: absolute;top: 0;left: 0;z-index: 4}
.mainimg03_01{top:0;left:0;width:50%;height:100%}
.mainimg03_03{top:0;right:0;width:50%;height:calc(50% + 40px)}
.mainimg03_04{bottom:0;right:0;width:50%;height:calc(50% - 40px)}
.mainimg03_01,.mainimg03_03,.mainimg03_04{position:absolute;overflow:hidden}
.mainimg03_01::before,.mainimg03_03::before,.mainimg03_04::before{content:"";position:absolute;background-size:cover;background-repeat:no-repeat;will-change:transform;transform: translateY(var(--y, 0));inset: -18svh 0;}
.mainimg03_01::before{content:"";background:url("../images/mainimg04_01_smp.png") top center / cover no-repeat}
.mainimg03_03::before{content:"";background:url("../images/phytotherapy-school-main04-02.jpg") center / cover no-repeat}
.mainimg03_04::before{content:"";background:url("../images/mainimg03_04.png") center / cover no-repeat}
.mainimg03_01::before,.mainimg03_03::before,.mainimg03_04::before{transform:translateY(var(--y, 0))}
.mainimg03::before{content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-image: radial-gradient(#000, transparent 34%);z-index: 1;opacity: 0.4}
.mainimg03 h2{color:#ffffff;font-family:'Josefin Sans', 'Noto Serif JP', serif;position:absolute;bottom:0;left:0;text-align:left;z-index:1;font-size:1.5rem;line-height:150%;margin-bottom:2rem;margin-left:2rem;margin-right:2rem}
.mainimg03 h2 span{font-size:0.9rem;display:block;line-height:100%}
.mainimg03_logo{width:6rem;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);z-index:2;padding-top:80px}


:root{--scroll-text-color:#ffffff;--scroll-line-color:#d5d5d5;--scroll-bar-color:#ffffff}
.scroll_box{padding-top:80px;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:9}
.scroll{position:relative}
.scroll-text{color:var(--scroll-text-color);font-size:18px;text-align:center;transform:rotate(90deg);font-family:'Josefin Sans', 'Noto Serif JP', serif;transition:color 0.4s ease}
.scroll-border{position:relative;top:20px;width:1px;height:100px;background-color:var(--scroll-line-color);overflow:hidden;margin:auto;transition:background-color 0.4s ease}
.scroll-border::before{content:"";display:block;position:absolute;width:1px;height:30px;top:0;left:0;right:0;background:var(--scroll-bar-color);animation:scrollbar 2.0s ease-in-out infinite;margin:auto;transition:background-color 0.4s ease}
@keyframes scrollbar{0%{-webkit-transform:translateY(-100%);transform:translateY(-100%)}
100%{-webkit-transform:translateY(350%);transform:translateY(350%)}
}
.garden_green{position:relative; background-image: linear-gradient(0deg, #efefef, #e6f1e8 50%, #efefef);overflow:hidden}
.garden_green_box{padding:110px 0 70px;position: relative;z-index: 5}
.garden_green_box h2{text-align: center;font-family: 'Josefin Sans', 'Noto Serif JP', serif;margin-bottom:1rem;font-size: 1.7rem;line-height: 150%}
.garden_green_box h2 span{font-size:14px;color:#7ca383;display:block}
.garden_green::before{content:"";position:absolute;inset:-30%;background:url("../images/green_bg.png") center top / 100% auto repeat-y;transform:translateY(var(--y, 0));will-change:transform;z-index:-1}
.garden_green > *{position:relative;z-index:1}
.garden_box{display:flex;justify-content:center;align-items:center;max-width:1200px;margin:0 auto;padding:2rem;position:relative}
.garden-image-wrap{width:50%;position:relative;overflow:hidden}
.garden-image{width:100%;height:auto;display:block;transform:scale(1.15);will-change:transform}
.garden-text{width:60%;margin-left:-8%;background:url("../images/omachi.svg") no-repeat right 40px center,linear-gradient(315deg, transparent, #ffffff 15% 100%);background-size:36%, auto;font-family:'Josefin Sans', 'Noto Serif JP', serif;padding:4rem 2rem 2rem;position:relative;z-index:2;box-sizing:border-box;will-change:transform}
.garden-text a{position:absolute;top:0;left:0;width:100%;height:100%;z-index: 1}
.garden-text h3{margin-bottom:2rem;font-size:1.7rem;line-height:1.5}
.garden-text h3 span{display:block;font-size:14px;margin-top:0.5rem}
.garden-text p{margin:0;line-height:1.8}
.mainimg_button{background-color:rgba(255,255,255,0.95);padding:15px 30px;color:#0391B1;position:absolute;bottom:2rem;left:0;height: 87px; width:70%;text-align:center;transition:width 0.3s ease;display: flex;justify-content: center;align-items: center}
.mainimg_button:hover{width:75%}
.mainimg_button:after {position:absolute;top:0;right:-20px;content:"";display:block;width:0;height:0;border-style:solid;border-width:0 0 87px 20px;border-color:transparent transparent transparent rgba(255,255,255,0.95)}
.mainimg_button img{right:15px;width:12px;position:absolute;top:50%;transform:translateY(-50%);padding-top:0}
.mainimg-txt-nav03{display:flex;flex-direction:column;align-items:center}
.mainimg-txt-nav03 span{font-size:80%;opacity:0.6}
.garden-text .button{transition:transform 0.2s ease-out}
.garden-text:hover .button {transform:scale(0.8)}
.button{display:inline-block;color:#fff;font-size:14px;text-decoration:none;background:#7ca383;width:50px;height:50px;line-height:100px;border-radius:50%;text-align:center;float:right;margin-top:1rem;display:flex;justify-content:center;align-items:center;opacity:0.8}
.button.ripple{position:relative}
.button.ripple::before{
content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;z-index:-1;background:inherit;-webkit-animation:ripple 4s cubic-bezier(0.3, 0, 0.1, 1) infinite;animation:ripple 4s cubic-bezier(0.3, 0, 0.1, 1) infinite}	
@-webkit-keyframes ripple{
0%{-webkit-transform:scale(1, 1);transform:scale(1, 1);opacity:0}
60%{-webkit-transform:scale(1, 1);transform:scale(1, 1);opacity:0.8}
100%{-webkit-transform:scale(1.6, 1.6);transform:scale(1.6, 1.6);opacity:0}
}
@keyframes ripple{
0%{-webkit-transform:scale(1, 1);transform:scale(1, 1);opacity:0}
60%{-webkit-transform:scale(1, 1);transform:scale(1, 1);opacity:0.8}
100%{-webkit-transform:scale(1.6, 1.6);transform:scale(1.6, 1.6);opacity:0}
}
.sub_header{height:auto}
.school_detail{font-family:'Josefin Sans', 'Noto Serif JP', serif;line-height:240%;margin:3rem 0 3rem}
.school_detail h3{margin-bottom:2rem;font-size:2rem;line-height: 150%;}
.course{font-family:'Josefin Sans', 'Noto Serif JP', serif;display:grid;grid-template-columns:repeat(1, 1fr);gap:30px;margin-bottom: 2rem}
.course_box{position: relative}
.seminar_link{position: absolute;top: 0;left: 0;width: 100%;height: 100%;inset: 0;z-index: 1}
.course_box h4{font-size:1.3rem;margin-bottom:1.3rem;line-height:150%;margin-bottom:1rem}
.course_box h4 span{display:block;font-size:0.8rem;line-height: 180%}
.course_box p{line-height:170%}
.school_img{margin-bottom:1.3rem}
.school_img_inner{overflow:hidden}
.school_img_inner img{transform:scale(1.1);transition:transform 0.4s ease}
.course_box:hover .school_img_inner img{transform:scale(1)}

.course_box .button2,.course_box .button3{transition:transform 0.2s ease-out}
.course_box:hover .button2,.course_box:hover .button3{transform:scale(0.8)}
.button2,.button3{display:inline-block;color:#fff;font-size:14px;text-decoration:none;background:#7ca383;width:50px;height:50px;line-height:100px;border-radius:50%;text-align:center;float:left;display:flex;justify-content:center;align-items:center;opacity:0.8}
.button3{margin-top:0}
.button2.ripple,.button3.ripple{position:relative}
.button2.ripple::before,.button3.ripple::before{
content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;z-index:-1;background:inherit;-webkit-animation:ripple 4s cubic-bezier(0.3, 0, 0.1, 1) infinite;animation:ripple 4s cubic-bezier(0.3, 0, 0.1, 1) infinite}	
.course_links{clear:both;margin:2.0rem 0 0;display: flex;align-items: center;gap: 15px;font-size: 1rem;}
.links_txt,.links_txt2{color:#7ca383;float:left}
.links_txt,.links_txt2{transition-property:opacity;transition-duration:0.5s}
.course_box:hover .links_txt,.course_box:hover .links_txt2{opacity:0.6}

.school_omachi{width:100%;min-height:50svh;position:relative;overflow:hidden}

.school_omachi_bg{position:absolute;inset:-20% 0;background:url("../images/school_omachi_img.png") center top no-repeat;background-size:cover;z-index:0;will-change:transform;transform:translateY(0)}

.school_omachi > *:not(.school_omachi_bg){position:relative;z-index:1}

.sm_top{position:absolute;top:0;left:0;width:100%}
.sm_bottom{position:absolute;bottom:0;left:0;width:100%}
.school_green{position:relative;background:#e6f1e8;overflow:hidden}
.second_mainimg{position:relative;width:100%;height:90svh;min-height: 600px;overflow:hidden}
.second_mainimg_box{position:absolute;inset:0;will-change:transform, opacity, filter;z-index:3;background:#000000}
.second_mainimg_box a{width:100%;height:100%;position:absolute;top:0;left:0;z-index:4}
.second_mainimg_box_01{top:0;left:0;width:50%;height:100%}
.second_mainimg_box_02{bottom:0;left:0;width:50%;height:calc(50% - 40px)}
.second_mainimg_box_03{top:0;right:0;width:50%;height:calc(50% + 40px)}
.second_mainimg_box_04{bottom:0;right:0;width:50%;height:calc(50% - 40px)}
.second_mainimg_box_01,.second_mainimg_box_02,.second_mainimg_box_03,.second_mainimg_box_04{position:absolute;overflow:hidden}
.second_mainimg_box_01::before,.second_mainimg_box_02::before,.second_mainimg_box_03::before,.second_mainimg_box_04::before{content:"";position:absolute;background-size:cover;background-repeat:no-repeat;will-change:transform;transform: translateY(var(--y, 0));inset: -18svh 0;}
.second_mainimg_box_01::before{content:"";background:url("../images/mainimg04_01_smp.png") top center / cover no-repeat}
.second_mainimg_box_02::before{content:"";background:url("../images/mainimg03_02.png") center / cover no-repeat}
.second_mainimg_box_03::before{content:"";background:url("../images/phytotherapy-school-main04-02.jpg") center / cover no-repeat}
.second_mainimg_box_04::before{content:"";background:url("../images/mainimg03_04.png") center / cover no-repeat}
.second_mainimg_box_01::before,.second_mainimg_box_02::before,.second_mainimg_box_03::before,.second_mainimg_box_04::before{transform:translateY(var(--y, 0))}
.second_mainimg_box::before{content:"";position:absolute;bottom:0;left:0;width:100%;height:240px;background:linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0.8));z-index:2}
.second_mainimg_box::after{content: "";position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-image: radial-gradient(#000, transparent 34%);z-index: 1;opacity: 0.4}
.second_mainimg_box h2{color:#ffffff;font-family:'Josefin Sans', 'Noto Serif JP', serif;position:absolute;bottom:0;left:0;text-align:left;z-index:3;font-size:1.8rem;line-height:150%;margin-bottom:2rem;margin-left:2rem;margin-right:2rem}
.second_mainimg_box h2 span{font-size:0.9rem;display:block;line-height:100%}
.second_mainimg_box img{width:6rem;position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);z-index:2;padding-top:80px}
.attention{background:#e6f1e8;padding:15px;font-size:15px;margin-top:1rem;position: relative;z-index:3;pointer-events:none}
.course_box .fade-item{position: relative;z-index: 2;pointer-events:none}
.attention a{position: relative;z-index: 4;pointer-events:auto}
.attention img{vertical-align:middle}
.smp{display:block}
.omachi_add{background: #e6f1e8;padding: 1.5rem;font-family: 'Josefin Sans', 'Noto Serif JP', serif;grid-template-columns: repeat(1, 1fr);display: grid;gap: 30px;margin-top: 2rem}
.omachi_add h4{font-size:1.2rem}

@media screen and (max-width:768px){
.garden_box{flex-direction:column;padding:1.5rem}
.garden-image-wrap,.garden-text{width:100%}
.garden-text{margin-left:0;margin-top:-2rem;padding:2rem 1.5rem}
}

@media screen and (min-width:500px){
}

@media screen and (min-width:600px){
.slide{height:100svh}
.mainimg-txt-nav03{display:flex;flex-direction:row;align-items:center}
.mainimg-txt-nav03 span{font-size:80%;padding-left:20px;opacity:0.6}
}

@media screen and (min-width:768px){
.mainimg01_title{width:50%}
.mainimg03_title{width:22%}
.m02{display:flex;gap:15px}
.mainimg_button{width:45%}
.mainimg_button:hover{width:50%}
.mainimg03 h2{font-size:2rem}
.mainimg03 h2 span{font-size:1.2rem}
.mainimg03_01::before{content:"";background:url("../images/mainimg04_01.png") top center / cover no-repeat}
.second_mainimg_box_01::before{content:"";background:url("../images/mainimg04_01.png") top center / cover no-repeat}
.m02_box img{width:50%}
.m02_box:first-child{margin-bottom:0}
.course{grid-template-columns:repeat(2, 1fr)}
.omachi_add{grid-template-columns:repeat(2, 1fr);display: flex;justify-content: center;align-items: center}
.course_links{font-size:0.9rem}
}	

@media screen and (min-width:980px){
.mainimg01_title{width:30%;padding-top:160px}
.mainimg03_title{width:16%;padding-top:160px}
.scroll_box{right:2rem;padding-top:160px;}
.m02{margin-top:160px}
.smp{display:none}
.mainimg03_03{height:calc(50% + 80px)}
.mainimg03_04{height:calc(50% - 80px)}
	
.second_mainimg_box_02{height:calc(50% - 80px)}
.second_mainimg_box_03{height:calc(50% + 80px)}
.second_mainimg_box_04{height:calc(50% - 80px)}

.second_mainimg_box img{padding-top:160px}
}

@media screen and (min-width:1000px){
.school_detail{margin:5rem 0}
.school_omachi{min-height:100svh}
.school_omachi_bg{inset:-12% 0}
}