@charset "utf-8";
/* CSS Document */

  :root {
    --easing: cubic-bezier(.2, 1, .2, 1);
    --transition: .8s var(--easing);
    --color-base: #f7f8f8;
    --color-gray: #ddd;
    --color-theme: #E6211A;
    --color-theme-darken: #f12617;
    --box-shadow: 0px 0px 10px -5px #777777;;
    --color-green:#154854;
    --color-red:#b81c22;
    --color-blue:#33cccc;
    --color-blue02:#30b7b3;
    --color-blue03:#4cf2ed;
      --color-blue04:#adffff;
  }

html{font-family: "M PLUS 1", serif;font-size:100%;line-height:1.8;height:100%;word-break:break-word;color:#1a1a1a;background-color:var(--color-base);-webkit-appearance:none;-webkit-tap-highlight-color:transparent}
body{font-size:16px;font-weight: 400; margin:0}
*,*::before,*::after{-webkit-box-sizing:border-box;box-sizing:border-box;}
::-moz-selection{color:#fff;background:var(--color-theme)}
::selection{color:#fff;background:var(--color-theme)}
img{border:0;margin:0;vertical-align: bottom}
figure{margin:0}
p{margin:0;padding:0}
a{text-decoration:none;color:#333}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,h5,h6{font-size:1.6rem;margin:0;padding:0}
*{margin: 0;padding: 0}
header{background: #fff}
main{}
footer{background: #fff}
.container{display: block; padding-right: 10px; padding-left: 10px;margin-right: auto;margin-left: auto;}
.container{width: 100%;max-width: 1200px;}
header.header{ border-bottom: 1px solid #ccc;display: block;width: 100%;z-index: 10000;position: relative;}
body.is-active .header{position: fixed; left: 50%;top:0;transform: translateX(-50%)translateY(0%);}
.container{position: relative;}
header h1{margin: 0;padding: 0;font-weight: normal;display: flex;align-items: center;}
.brand{display: flex;flex-direction: row; align-items: center;justify-content: flex-start;width: 100%;}
.top_header{display:none!important;}
@media screen and (max-width: 570px) {
h1 p{display: none!important}}
@media screen and (min-width: 571px) {
h1 p{font-size: 10px; line-height: 1.3em; color: #333;font-weight: bold}}
@media screen and (max-width: 1023px) {
h1 p{display: none}
/*.header h1{width: 30%}*/
}
.top_header{height: 25px;background: #5c686c;display: flex;justify-content: flex-end;flex-wrap: wrap;align-items: stretch;}
.top_header .contact_btn{padding: 0 1em;font-size: 12px;line-height:25px;color: #fff;background: #000}
body.is-active .header .brand p{margin-left: 0px}
.logo-img{width: auto; height: 18px; margin: 0 5px 0 0;}
body.is-active.logo-img{height: 30px;}
@media screen and (min-width: 1024px) {
.logo-img{width: auto; height:25px; margin: 0 5px 0 0;}

}
.navbar{width:100%; max-width: 1200px;background:#fff;z-index:2;margin: 0 auto;}
.navbar{display:flex;justify-content:space-between;/*align-items: center;*/}
.buttons{display:flex;justify-content:space-between;align-items:center;gap:10px}
.form-btn,.menu-btn{border:none;transition:0.3s;cursor:pointer}
.form-btn{background:var(--color-red);padding:0.5em 1em;color:#fff;display: inline-flex;align-items: center;}
.form-btn a{display: inline-flex; align-items: center;}
.form-btn a::before{display: inline-block;margin: 0 auto;background-size: contain;content: "";width: 20px; height: 20px; background-repeat: no-repeat;background:url("../img/mail.svg");}
.form-btn:hover{background:#5db5bd}
.form-btn span{padding-left:5px;font-family:Century Gothic, sans-serif;font-size: 20px;font-weight:bold;color:#fff}
.menu-btn{background:none;display:inline-block}
.menu-btn span{font-size:2.3em;color:var(--color-red) }
.dropdown .menu a:hover{color:#2b2b2b}
@media screen and (min-width:799px){
.header{height: 86px}
.top_header{display:flex!important;}
/*.header h1{width: 48%}*/
.buttons{display:none;}
body.is-active .header{top: -25px;}
body.is-active .header h1{display: flex; align-items:center}
body.is-active .header h1 a,body.is-active .form-btn{/*margin-top: 20px;*/}
.navbar{padding:0 15px;height: 60px}

.menu-container{display:flex;align-items:flex-end}
.dropdown{ border-left:1px solid #ccc;}
.dropdown > div,.dropdown > a{padding:12px 20px 3px;display: block}
.mega-menu{display:flex;justify-content:center;}
.menu-btn{display:none}
.menu{background:rgba(255,255,255,0.8);position:absolute;top:86px;left:0;width:100%;padding:0 2em;overflow-y:scroll;transition:0.4s ease-in-out;display:flex;justify-content:center;align-items:flex-start;gap:0 2em}
.menu li.list_img{display:flex;gap:10px;flex-wrap: wrap;padding: 0;transition:0.4s ease-in-out;justify-content:center;align-items:flex-start;}
.menu li.list_img a{display: block;width: 238px;}
.menu li.list_img a img{width: 100%}
.menu li{font-size: 14px}
.dropdown > div,.dropdown > a,.dropdown.current > a{border-bottom:3px #fff solid;transition:0.3s}
.dropdown:hover > div,.dropdown:hover > a,.dropdown.current > a{border-color:var(--color-red)}
.dropdown > div span,.dropdown > a span{ position: relative;font-size: 14px;font-weight:500}
.dropdown > div span:before,.dropdown > a span:before { content: attr(data-before);display: block;font-weight: 400;font-size: 12px;color: #7a7a7a;transition: all .15s ease-in-out;text-align: center;font-family: Century Gothic, sans-serif;line-height: 1}
.dropdown > div span:last-child,.dropdown > a span:last-child{display:none}
.menu::-webkit-scrollbar{width:8px}
.menu::-webkit-scrollbar-track{background:#f1f1f1}
.menu::-webkit-scrollbar-thumb{background:#888}
.menu::-webkit-scrollbar-thumb:hover{background:#555}
.menu{height:0}
.dropdown:hover .menu{height:auto;padding:1em;}
.dropdown:hover .menu li a{display:inline-flex;align-items: center;justify-content: flex-start;}
.form-btn span{display: none}
}
@media (min-width: 1024px) {
.logo-img {width: auto; height: 22px; margin: 0 5px 0 0;}
.navbar{padding:0 15px;height: 60px}
.form-btn span{display:block}
.dropdown > div, .dropdown > a { padding: 12px 15px 3px; display: block;text-align: center}
.menu li{font-size: 16px}
}
@media screen and (max-width:800px){
.header{height: 65px}
h1 p{display: block}
body.is-active header{height: 55px}
.navbar{padding:0px 10px;align-items: center;height: 64px;}
body.is-active .navbar{height: 54px}

.menu-container{background:#fff;position:absolute;top:65px;left:0;width:100%;overflow-y:hidden;transition:0.3s ease-in-out}
body.is-active .menu-container{top:55px;}
.mega-menu::-webkit-scrollbar{width:8px}
.mega-menu::-webkit-scrollbar-track{background:#f1f1f1}
.mega-menu::-webkit-scrollbar-thumb{background:#888}
.mega-menu::-webkit-scrollbar-thumb:hover{background:#555}
.mega-menu{height:100%;overflow-y:scroll}
.mega-menu li{font-weight:bold;}
.mega-menu li > div,.mega-menu li > a{display:flex;justify-content:space-between;align-items:center;gap:0.5em}
.menu li{padding:0 1em;font-size: 14px;font-weight:400;border-bottom: 1px solid #ccc;}
.menu li:last-child{border-bottom: none}
.menu li a{display:inline-flex;align-items: center;justify-content: flex-start; margin:0.8em 0; width:100%;}
.menu li.list_img{display:inline-flex;flex-wrap: wrap; justify-content: flex-start;gap: 10px;padding: 10px}
.menu li.list_img a{padding:0;font-size: 14px;font-weight:400;border-bottom: none;width:calc(33.333% - 20px / 3);max-width: 100px;margin: 0}
.menu li.list_img a img{width: 100%;vertical-align: bottom}
.menu{display:none}
.menu-show{display:block!important}

.material-symbols-outlined{transition:0.3s}
.icon-rotated{transform:rotate(90deg)}
.dropdown{border-bottom: 1px solid #ccc;}
.dropdown>div,.dropdown>a{cursor:pointer;padding:0.5em}
.dropdown:hover>div,.dropdown:hover>a{background:#dbdbdb}
.menu-container{height:0}
.mega-menu-show{height:50vh}
.form-btn span{display:  none}
}

.slidein { opacity: 0;transform: translate(0,30px);transition: opacity 0.8s ,transform 0.8s;}
.slidein.slidein-bottom{ transform: translate(0,30px);}
.slidein.slidein-left{ transform: translate(-30px,0);}
.slidein.slidein-right{ transform: translate(30px,0);}
.scrollin{transform: translate(0, 0)!important;opacity: 1!important;}


main{display:block}
.l-inner{position:relative;-webkit-box-sizing:content-box;box-sizing:content-box;max-width:1200px;margin:0 auto;padding:0 10rem}
.l-inner{padding-top:8rem;padding-bottom:8rem}

@media only screen and (max-width:1024px){
html{-webkit-text-size-adjust:100%}
.l-inner{padding:0 4rem}
.pc{display:none !important}
}
@media only screen and (max-width:599px){
.pc-tab{display:none !important}
}
@media only screen and (min-width:1025px){
.tab-sp{display:none !important}
}
@media only screen and (min-width:600px){
.sp{display:none !important}
}
section{padding-top: 50px; padding-bottom: 50px}
@media screen and (min-width: 768px) {
section{padding-top: 75px; padding-bottom: 75px}
}
main h3.title{text-align: center; font-size: clamp(1.75rem, 1.364rem + 1.93vw, 2.813rem);line-height: 1.3em; font-weight: 700;padding-bottom:0.3em; margin: 0 auto 30px;position: relative}
main h3.title::before{content: "";width: clamp(5rem, 4.091rem + 4.55vw, 7.5rem);position: absolute;left:50%;transform: translateX(-50%);height: 3px;bottom:0;background: #E6211A;}
@media screen and (min-width: 768px) {main h3.title{padding-bottom:0.35em;}}

main h3.title02{text-align: center;color:var(--color-green);font-size: clamp(1.75rem, 1.364rem + 1.93vw, 2.813rem);line-height: 1.3em; font-weight: 500; margin: 0 auto 30px;}

table{box-sizing:border-box;border-collapse:collapse;margin:0 auto;text-align:center}
table th,table td{background:#fff;border:1px solid #999;padding:.5em 1em;text-align:left}
table th{background:#eee}
@media (max-width:650px){table th,table td{display:block}
table th,table td{border-top:none}
table tr:first-child th{border-top:1px solid #999}
}

.breadcrumb{margin:0;padding:0;list-style:none}
.breadcrumb li{display:inline-block;list-style:none;font-weight:500}
.breadcrumb li:after{content:'>';padding:0 0.2em;color:#555;}
.breadcrumb li:last-child:after{content:''}
.breadcrumb li a{text-decoration:none;color:gray}
.breadcrumb li:first-child a:before{content:'';background: url("../img/house-solid.svg")no-repeat;width: 18px; height: 16px;display: inline-block;
  background-position: center;}
.breadcrumb li a:hover{text-decoration:underline}
@media only screen and (max-width:1024px){
	.breadcrumb{margin-bottom: 1em;font-size: 14px}
	.breadcrumb li:first-child a:before{width: 14px; height: 12px;}
}
@media only screen and (max-width:599px){
	.breadcrumb{margin-bottom: 1em;font-size: 14px}
	.breadcrumb li:first-child a:before{width: 14px; height: 12px;}
}
#page_top{width:50px;height:50px;position:fixed;right:10px;bottom:60px;background:var(--color-red);z-index: 1000;display: flex;justify-content: center;align-items: center}
#page_top span{color:#fff}


/*footer*/
/*-----------------------------------------------*/
#footer {position: relative; color: var(--color-green); padding-top: 60px;background: var(--color-blue04);z-index: 10}

#footer .footer_in {max-width: 900px;margin: 0 auto;width: 100%}
@media screen and (max-width: 767px) {
#footer .footer_in {width:100%;padding: 0 5px}
}
#footer .footer-top {border-bottom: 1px solid #818888; padding-bottom: 30px}
#footer .footer_ttl {margin-bottom: 25px;color:var(--color-green)}
#footer .footer_ttlin {color: var(--color-green)}
@media screen and (max-width: 767px) {
#footer .footer_ttlin {margin-bottom:3.4666666667vw}
}
#footer .footer-top_txt {text-align: center;margin-bottom: 30px}
@media screen and (max-width: 767px) {
#footer .footer-top_txt {font-size:3.4666666667vw;margin-bottom: 4vw;line-height: 1.4}
}
#footer .footer-top_list {display: block}
#footer .footer-top_item:not(:last-child) {margin-bottom: 30px}
@media screen and (max-width: 767px) {
#footer .footer-top_item:not(:last-child) {margin-bottom:5.3333333333vw}
}
#footer .footer-top_item:first-child .footer-top_listttl {font-size: 18px}

@media screen and (max-width: 767px) {
#footer .footer-top_item:first-child .footer-top_listttl {font-size:4vw}
}
#footer .footer-top_item:first-child .footer-top_link {width: 400px;font-size: 32px;}
@media screen and (max-width: 767px) {
#footer .footer-top_item:first-child .footer-top_link {width:80vw}
}

@media screen and (max-width: 767px) {
#footer .footer-top_item:first-child .footer-top_link--tel {font-size:24px;}
}
#footer .footer-top_link {font-family: Century Gothic, sans-serif;width: 300px;display: flex;justify-content: center;flex-wrap: wrap;align-items: center;margin: 0 auto;}
@media screen and (max-width: 767px) {
#footer .footer-top_link {width:60vw;margin: 0 auto}
}
#footer .footer-top_link.footer-top--tel {font-size: 25px; line-height: 2em; color: #fff;background:var(--color-green);  border: 1px solid var(--color-green);pointer-events: none}
@media screen and (max-width: 767px) {
#footer .footer-top_link.footer-top--tel {font-size: 5.3333333333vw;pointer-events: auto}
}
#footer .footer-top_link.footer-top_link--mail .fa-envelope {margin-right: 8px}
#footer .footer-top_link.footer-top_link--mail .fa-envelope::before {font-family: "Font Awesome 5 Free";font-weight: 900;font-style: normal}
#footer .footer-top_link--mail {margin: 20px auto 10px;background: #fff}
#footer .footer-top_link--mail::after {width: 30px}
@media screen and (max-width: 767px) {
#footer .footer-top_link--mail::after {width:4vw}
}
@media screen and (max-width: 767px) {
#footer .footer-top_link--mail {margin:2.6666666667vw auto 1.3333333333vw}
}

#footer .footer-top_listttl{color:var(--color-green);font-weight:bold;text-align:center;font-size:15px;margin-bottom:15px;letter-spacing:0.1em}
@media screen and (max-width:767px){
#footer .footer-top_listttl{font-size:3.3333333333vw;margin-bottom:2.6666666667vw}
}
#footer .footer-top_listtxt{padding-top:20px;text-align:center}
@media screen and (max-width:767px){
#footer .footer-top_listtxt{font-size:2.9333333333vw;padding-top:5.3333333333vw}
}
#footer .footer-top_listnote{font-size:13px;color:#333;padding-top:15px;line-height:1.4;text-indent:-14px;padding-left:14px;width:460px;margin:0 auto}
@media screen and (max-width:767px){
#footer .footer-top_listnote{width:66.6666666667vw;margin:0 auto;font-size:2.6666666667vw;padding-top:2.6666666667vw;text-indent:-2.8vw;padding-left:2.8vw}
}
#footer .footer-btm{padding:30px 0;border-bottom:1px solid #818888}
@media screen and (max-width:767px){
#footer .footer-btm{padding:6vw 0;border-bottom:none}
}
#footer .footer-btm_img{width:236px;margin:0 auto 30px}
@media screen and (max-width:767px){
#footer .footer-btm_img{width:53.6vw;margin-bottom:10px}
}
#footer .footer-btm_img img{max-width:100%}
#footer .footer-btm_list{display:flex;justify-content:center;flex-wrap:wrap;align-items:center}
#footer .footer-btm_list--brand .footer-btm_item:nth-child(n+7){margin-top:10px}
#footer .footer-btm_item{position:relative;font-size:13px;margin-right:20px;padding-right:15px}
#footer .footer-btm_item a{color:var(--color-green)}
#footer .footer-btm_item::after{position:absolute;content:"\f105";font-family:"Font Awesome 6 Free";font-weight:900;top:50%;right:0;transform:translateY(-50%)}
@media (hover:hover){
#footer .footer-btm_link:hover{text-decoration:underline}
}
@media screen and (min-width:768px) and (-ms-high-contrast:none),screen and (min-width:768px) and (-ms-high-contrast:active){
#footer .footer-btm_link:hover{text-decoration:underline;color:#fff}
}
#footer .footer-btm_item--out{padding-right:20px}
#footer .footer-btm_item--out:after{position:absolute;content:"\f35d";font-family:"Font Awesome 6 Free";font-weight:900;top:50%;right:0;transform:translateY(-50%)}
#footer .footer-btm_box01{width:100%;50px; margin:0 auto;display:flex;flex-wrap:wrap;padding-top:30px}
@media only screen and (min-width:1025px){
#footer .footer-btm_box01{ max-width: 900px;}
}
#footer .footer-btm_box01 .footer-btm_list{width:calc(100% - 160px);justify-content:flex-start}
#footer .footer-btm_box01ttl{width:130px;display:flex;align-items:center;padding-right:15px;margin-right:30px;border-right:1px solid #8a8f90}
#footer .footer-side{font-size:13px;display:flex;justify-content:space-between;flex-wrap:wrap;align-items:center;padding:20px 0;width: 100%}
@media (hover:hover){
#footer .footer-side_link:hover{text-decoration:underline}
}
@media screen and (min-width:768px) and (-ms-high-contrast:none),screen and (min-width:768px) and (-ms-high-contrast:active){
#footer .footer-side_link:hover{text-decoration:underline}
}
#footer .footer-sp{padding-bottom:6.6666666667vw}
#footer .footer-sp_list{display:flex;justify-content:center;flex-wrap:wrap;align-items:center;margin-bottom:4vw}
#footer .footer-sp_item:not(:last-child){margin-right:10.6666666667vw}
#footer .footer-sp_link{font-size:16px;text-decoration:underline}
@media screen and (max-width:767px){
#footer .footer-side_copy{font-size:14px;text-align:center;font-family:Century Gothic,sans-serif;font-weight: 600}
}
#footer .footer-side_copy{font-size:14px;text-align:center;font-family:Century Gothic,sans-serif;font-weight: 600}
.ttl01{font-family:Century Gothic,sans-serif;font-size:40px;font-weight:600;text-align:center;margin-bottom:45px;letter-spacing:5px}
@media screen and (max-width:767px){
.ttl01{font-size:5.8666666667vw;margin-bottom:6vw;letter-spacing:2vw}
}
.ttl01 .ttl01_in{font-size:14px;display:block;padding-top:15px;letter-spacing:2px}
@media screen and (max-width:767px){
.ttl01 .ttl01_in{font-size:3.4666666667vw;padding-top:2.6666666667vw;letter-spacing:.2666666667vw}
}

.button a{background:var(--color-blue);border-radius:9999px;position:relative;display:flex;justify-content:center;align-items:center;margin:0 auto;max-width:250px;padding:20px 30px 20px 10px;line-height:1.8;text-decoration:none;color:#fff;font-weight:500;border-bottom:solid 5px var(--color-blue02);transition:0.2s ease-in-out}
.button a:before{content:"\f086";position:relative;font-family:"Font Awesome 6 Free";font-weight:700;margin-right:12px;color:#fff;transition:0.3s ease-in-out}
.button a:after{content:"";position:absolute;top:50%;bottom:0;right:2rem;font-size:100%;display:flex;justify-content:center;align-items:center;transition:right 0.3s;width:12px;height:12px;border-top:solid 2px currentColor;border-right:solid 2px currentColor;transform:translateY(-50%) rotate(45deg)}
.button a:hover:after{right:1.4rem}
.button a:hover{background:var(--color-blue03);color:#FFF;border-bottom:solid 2px var(--color-blue02);transform:translateY(3px);margin-bottom: 3px}
.button a:hover:before{color:#fff}


.button01{padding-top: 1.5em}
.button01 a{background:var(--color-green);/*border-radius:9999px;*/position:relative;display:flex;justify-content:center;align-items:center;margin:0 auto;max-width:280px;padding:20px 30px 20px 10px;line-height:1.8;text-decoration:none;color:#fff;font-weight:500;border-bottom:solid 5px #333;transition:0.2s ease-in-out}
.button01 a:before{content:"\f0e0";position:relative;font-family:"Font Awesome 6 Free";font-weight:700;margin-right:12px;color:#fff;transition:0.3s ease-in-out}
.button01 a:after{content:"";position:absolute;top:50%;bottom:0;right:2rem;font-size:100%;display:flex;justify-content:center;align-items:center;transition:right 0.3s;width:12px;height:12px;border-top:solid 2px currentColor;border-right:solid 2px currentColor;transform:translateY(-50%) rotate(45deg)}
.button01 a:hover:after{right:1.4rem}
.button01 a:hover{background:#22788c;color:#FFF;border-bottom:solid 2px var(--color-green);transform:translateY(3px);margin-bottom: 3px}
.button01 a:hover:before{color:#fff}

.balloon1{position:relative;display:inline-block;margin:1em auto 1.5em;padding:7px 10px;min-width:360px;max-width:100%;color:#fff;text-align: center; font-size:clamp(1.125rem, 1.08rem + 0.23vw, 1.25rem);background:var(--color-blue);border-radius: 100vh;}
.balloon1:before{content:"";position:absolute;top:100%;left:50%;margin-left:-15px;border:15px solid transparent;border-top:15px solid var(--color-blue)}
.balloon1 p{margin:0;padding:0;text-align: center!important;}

.btn_dl_wrap{display: flex;flex-direction: row;align-items: center; gap:10px;max-width: 780px;margin: 0 auto;border:10px solid var(--color-blue)}
.btn_dl_wrap figure{width: 40%;padding: 15px 0 15px 15px}
.btn_dl{width: 60%;padding: 15px 15px 15px 0}
.btn_dl a{}
.btn_dl a{background:#0aa549;/*border-radius:9999px;*/position:relative;display:flex;justify-content:center;align-items:center;margin:0 auto;max-width:380px;padding:20px 30px 20px 10px;line-height:1.8;text-decoration:none;color:#fff;font-size:clamp(0.75rem, 0.614rem + 0.68vw, 1.125rem);font-weight:500;border-bottom:solid 5px #098039;transition:0.2s ease-in-out}
.btn_dl a:before{content:"\f019";position:relative;font-family:"Font Awesome 6 Free";font-weight:700;margin-right:12px;color:#fff;transition:0.3s ease-in-out}
.btn_dl a:after{content:"";position:absolute;top:50%;bottom:0;right:1.8rem;font-size:100%;display:flex;justify-content:center;align-items:center;transition:right 0.3s;width:12px;height:12px;border-top:solid 2px currentColor;border-right:solid 2px currentColor;transform:translateY(-50%) rotate(45deg)}
.btn_dl a:hover:after{right:1.4rem}
.btn_dl a:hover{background:#0ba149;color:#FFF;border-bottom:solid 2px #076b30;transform:translateY(3px);margin-bottom: 3px}
.btn_dl a:hover:before{color:#fff}
