@charset "UTF-8";
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,
form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{ margin:0; padding:0; font-size:1rem; vertical-align:baseline; font-family: 'Noto Sans', sans-serif; font-weight: 400; -webkit-font-smoothing:antialiased; }
html,body { margin:0px; padding:0px; height:auto; width:100%; line-height:1.6;}
body { background:#E1EEF5;}
/*
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block; }
*/
ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}
img, input[type="image"],video, embed, iframe, marquee, object, table {aspect-ratio: attr(width) / attr(height);}

*:focus {outline:0;}
a{ font-family: 'Noto Sans', sans-serif; text-decoration:none;color:#1CB1C9 }
a:hover {opacity:.8; }

img { max-width: 100%; height: auto; vertical-align: bottom;}

.fadein{opacity:0;transition:all 0.5s ease-in-out;}
.fadein.lazyloaded{opacity:1;}

.wrap{ position: relative;overflow: hidden;}
.container.max-640{max-width:640px;}

.link-btn{ display: block; width: 100%; max-width:280px; margin:0 auto; background-color:#1CB1C9; border-radius: 50px; text-align: center; padding:0.6em 1em; color:#FFF; text-decoration: none; letter-spacing: 2px; font-weight: 700;}
.link-btn:hover{color: #FFF;}

.main-title{ line-height: 1.6; letter-spacing: 5px; font-size: 2rem; font-family: 'Mulish', sans-serif; font-weight: 400; text-align: center;}
.main-title .lead{ display: block; text-decoration: none; letter-spacing: 2px; font-size: .9rem; font-weight: 700; color: #89C639; text-align: center; font-family: 'Noto Sans', sans-serif;}

.sub-title{ line-height: 1.6; letter-spacing: 5px; font-size: 1.6rem; font-family: 'Mulish', sans-serif; font-weight: 400; text-align: center;}

@media screen and (min-width:768px){
.main-title{font-size:2.2rem;}
.sub-title{font-size:1.8rem;}
}
.services .box{ position: relative;padding:32px 16px 24px 16px; background-color: #FFF; box-shadow: 0 0 8px rgba(0,0,0,0.16); overflow: hidden;}
.services .box img{display: block; object-fit: cover; width: 100%; height:56.25%;}
.services .tit{ font-family: 'Mulish', sans-serif; font-weight: 400; font-size: 1.3rem; text-align: center; }
.services .tit span{ display: block; font-family: 'Mulish', sans-serif; font-weight: 400;}
.services .txt{ line-height: 1.8;}
.services .btn{ display: block; width:100px; height: 100px; background-color:#1CB1C9; border-radius: 50px; position: absolute; bottom:-50px; right:-50px;}
.services .btn::after{ content: ''; display: block; width:20px; height: 24px; background:url(../images/caret-right-solid.svg) center center/contain no-repeat; position: absolute; bottom:56px; right:56px; z-index: 1;}

@media screen and (min-width:768px){
.services .services-block{margin:0 -1rem; overflow:hidden;}
.services .box{width:calc(100%/3 - 1rem)}
.services .tit span{ display: inline;}
.services .box img{width:100%;height:auto;margin: 0 auto;}
}


#header{position:sticky; top:0;width: 100%; z-index: 6; height:72px; background-color: rgba(255,255,255);padding:8px;}

#header .logo{max-width:200px;}
#header .logo img{ width:100%; height:auto; }

#header .circle{ position: fixed; z-index:3; width: 100px; height: 100px; border-radius: 50%; background: #89C639; transform: scale(0); top:calc(50% - 50px); left:calc(50% - 50px); transition: all .6s;}
#header .circle.circleactive{ transform: scale(50); }

@media screen and (min-width:768px){
#header .circle{top:calc(55% - 50px);left:calc(70% - 50px);}
	
}	

#header #g-nav{ width:100%; height: 100vh; margin: 0;  overflow: auto;-webkit-overflow-scrolling: touch; display: none; }
#header #g-nav.panelactive{ position:fixed; z-index: 4; top: 0; width:100%; height: 100vh; display: block; overflow-y: scroll; scrollbar-width: none; }
#header #g-nav.panelactive::-webkit-scrollbar { display:none; }
#header #g-nav.panelactive .menu{ display: block; width:100%; padding:48px 24px 120px; box-sizing: border-box;}
#header #g-nav.panelactive .list01 { opacity:1;}

#header #g-nav li{ list-style: none; font-size: 1rem; color: #FFF; padding:10px; letter-spacing: 0.1em; }
#header #g-nav li a{ color: #FFF; text-decoration: none; display: block; text-transform: uppercase; letter-spacing: 0.1em; }
#header #g-nav .list02{ padding: 0;}
#header #g-nav .list02 li:last-child{padding:10px 10px 0 10px;}
#header #g-nav.panelactive{ top:0; left:0; right:0; bottom:0; max-width: 640px; margin: 0 auto;}

#header .open{position:relative;cursor: pointer;width:50px;height:50px;z-index:5;text-align:center;}
#header .open::after{ position: absolute; top:32px; right:0; left:0;margin:auto;content: 'MENU'; display: block; line-height: 1; font-size:.6rem; font-weight: 700; letter-spacing: 0.05em;}

#header .open span{display: inline-block; transition: all .4s; position: absolute; left:0; right:0;margin:auto;height: 2px; background: #fff; width: 60%; }
#header .open span:nth-of-type(1) { top:8px; background-color: #222222;}
#header .open span:nth-of-type(2) { top:16px; background-color: #1CB0C8;}
#header .open span:nth-of-type(3) { top:24px; background-color: #89C639;}
#header .open.active span:nth-of-type(1) { top: 10px; transform: translateY(6px) rotate(-45deg); width: 60%; background-color: #FFF;}
#header .open.active span:nth-of-type(2) { opacity:0;}
#header .open.active span:nth-of-type(3) { top: 23px; transform: translateY(-6px) rotate(45deg); width: 60%; background-color: #FFF;}
#header .open.active::after{display: none;}

@media screen and (min-width:768px){
#header{ position:absolute; top:3%; left:0;right:0;margin:auto; max-width: 95%; height: 86px; background-color: rgba(255,255,255, 0.9);padding:8px 16px;}
#header .open{ margin:0;}
#header .open span{width:40px; height: 3px;}
#header .open span:nth-of-type(2) { top:18px; border-radius: 200px;}
#header .open span:nth-of-type(3) { top:28px; }
#header .open::after{ top:38px; font-size: .7rem; letter-spacing: 1px;}
#header .open.active span{ left:10px;}
}

#header .search-wrap{ position: relative; top:24px; }
#header .search-wrap label{width: 100%;}
#header .search-wrap input[type="text"]{ width: 100%; padding:.6em 2.4em; border-radius: 24px; border: none; box-sizing: border-box;}
#header .search-wrap label::before{ content: ''; display: block; width:20px; height: 22px; background:url('../images/search-solid.svg') center center/contain no-repeat; position: absolute; left: 1em; top: .7em; z-index: 1;}

@media screen and (min-width:768px){
#header .search-wrap input[type="text"]{ max-width: 640px;}
}

.contact-wrap{ background-color: #89C639; color:#FFF; text-align: center; padding-top:100px;}
.contact-wrap .main-title{ /*line-height: 2.4; */position: relative;}
.contact-wrap .main-title::before{ content: url(../images/paper-plane-solid.svg); display: inline-block; vertical-align: middle; position: absolute; top: -60px; left: 49%; width: 24px; height: 24px; }
.contact-wrap .main-title .lead{color: #A0E645;}
.contact-wrap .txt p{ padding:5px; font-size: .9em;}
.contact-wrap .contact-link{ display: block; color: #89C639; background-color:#FFF;  margin:0 auto; padding:1.2em 1em; width: 100%; max-width: 300px; font-weight: 700; letter-spacing: 3px;}

.article-cont{margin:0 auto;}
.article-cont a{color:#222;}

.article-cont .slider { width: 100%; padding:0 0 16px 0;}
.article-cont .slick-slide {transition: all ease-in-out .3s;}

.article-cont .list{ width:auto;}
.article-cont .item { display: block; width: 315px; min-height:320px; padding:32px 24px; background: #FFF; border-top:solid 8px #89C639;}
.article-cont .item a { height: 100%;}
.article-cont .item a,
.article-cont .summary { display: flex; flex-direction: column;}
.article-cont .eyecatch { position: relative; height: 0; padding-bottom: calc(9 / 16 * 100%);}
.article-cont .eyecatch img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
.article-cont .summary .excerpt h1 a{ line-height:1.6;flex-grow: 1; margin-top: 8px;overflow: hidden;font-weight:bold;}
.article-cont .summary .date{ display: flex; justify-content: space-between; padding-top:16px; font-size: .8rem; }
.article-cont .summary a.category{ display:block;background:#E1EEF5;border-radius: 24px; padding:.3em 1em; font-size:.8rem; font-family: 'Mulish', sans-serif; font-weight: 700;}

.category .article-cont{background-color:#F0F5F7; padding:32px 0;}
.category .article-cont .item {width:100%;}

@media screen and (min-width:768px){
.category .article-cont .list{margin:0 -1rem;overflow:hidden;}
.category .article-cont .item{ width:calc(100%/3 - 1rem); min-height:320px;}
}




footer.footer-bg{ background-color: #F0F5F7; padding-top: 48px;}
footer .container{ max-width: 80%; padding: 0 auto; }
footer .footer-logo img{ width: 100%; height:100%;}
footer .footer-logo{ display: block; max-width: 187px; margin: 0 auto;}
footer .container ul{padding:32px 0 16px 0; }
footer .container li{ display: block; padding-bottom: 20px; color:#1CB1C9; font-family: 'Mulish', sans-serif; font-weight: 700; font-size: 1.1rem; letter-spacing: 2px;}
footer .container li a{ display: block; color:#1CB1C9; font-family: 'Mulish', sans-serif; font-weight: 700; font-size: 1.1rem; }
footer .footer-nav .second,
footer .footer-nav .second ul{ padding:0;}
footer .footer-nav .second li:first-child{ padding: 20px 0;}
footer .footer-nav .second ul li a{ font-size:.9rem; }
footer .footer-nav .second span{ font-size: 1rem; font-family: 'Mulish', sans-serif; font-weight: 700;}
footer .container li a,
footer .container .policy-link{ color:#1CB1C9; font-weight: 700; }
footer .container .policy-link{ font-size: .9rem; letter-spacing: 2px;}
footer .social img{ max-width:25px; margin: 16px;}
footer .copy{ padding:24px; background-color:#E1EEF5; }
footer .copy small{ display: block; text-align: center; font-size:.8em;}

@media screen and (min-width:768px){
footer .container{ max-width:100%; padding-bottom:32px; display: flex; justify-content: center; flex-wrap: wrap; }
footer .footer-logo{ margin:24px 0; align-self:flex-start;}
footer .footer-nav{ margin:0 10%; align-self:center;}
footer .link{ padding-bottom: 20px; align-self:flex-end;}
footer .social{ padding-top: 16px;}
footer .social img{ margin:0 16px 0 0;}
footer .copy small{ max-width: 90%; text-align: right;}
}

#footer-fixed-menu{position: fixed; right:20px; bottom:0; display: inline-block; width: 56px; height: 56px; margin-bottom:20px; padding:12px 5px 12px 10px; border-radius: 50%; overflow-wrap: break-word; background: #1CB1C9; z-index: 5;}
#footer-fixed-menu::after{content: url(../images/att.svg); display: inline-block; vertical-align: middle; position: absolute; top: 20px; right: 0; bottom: 0; left: 16px; margin: auto; width:100%; height: 46px;}
#footer-fixed-menu a{ position: absolute; display: block; top:0; right:0; width: 50px;  height: 50px; z-index: 1;}

/*login*/
#wp-admin-bar-wpseo-menu,
#wp-admin-bar-notes,
#contextual-help-link{display:none;}

.grecaptcha-badge{
    margin-bottom: 96px;
}