/*
Template:bootstrap-basic4
Theme Name:child-n_ebata 
*/
@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;700;900&display=swap');
:root { --primary: #ffd600; --accent: #005BAC; --white: #FFFFFF; --light-gray: #cfcfcf; --dark-gray: #333333; --transition: all 0.3s ease;}
*{ margin: 0; padding: 0; box-sizing: border-box;}
html { scroll-behavior: smooth; }
body { font-family: '游明朝', 'YuMincho', 'Hiragino Mincho ProN', 'HGS明朝E', 'MS PMincho', serif; color: var(--dark-gray); line-height: 1.6; background-color: var(--white); }
h1, h2, h3, h4, h5 {font-weight: 700;}
img { max-width: 100%; height: auto; }
.container {max-width: 1030px;}
.btn-1{background-color: var(--accent); color: var(--white); transition: var(--transition); border: 2px solid var(--accent); }
.btn-1:hover{ background-color: var(--white); color: var(--accent); }

 /* Base */
.noto{font-family: 'Noto Sans JP', 'Meiryo', sans-serif; font-weight: 400;}
.mplus,.btn{font-family: 'M PLUS 1p', 'Meiryo', sans-serif; font-weight: 900;}
.bg-1 { background-color: #ffd600; }
.bg-2 { background-color: var(--accent); }
.bg-3 { background-color: var(--light-gray); }
.bgg-1::before{background: linear-gradient(to right, rgba(200, 240, 255, 0.8) 0%, rgba(255, 255, 255, 0) 15%, rgba(255, 255, 255, 0) 85%, rgba(200, 240, 255, 0.8) 100%); content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer-events: none;}
.bgg-2{ background: repeating-linear-gradient(45deg, #ffffff, #ffffff 20px, #f5f5f5 20px, #f5f5f5 40px);}
.bgg-3{ background: linear-gradient(to bottom, #c7f1ff 0%, #ffffff 90%);}

.c-1{color: #081d4f;}
.c-2{color: #555;}
.c-3{color: #d43f3a;}
.c-4{color: #1800ad;}


 /* Header */
.header {width: 100%; top: 0; z-index: 1000; }
.header-container { display: flex; justify-content: space-between; align-items: center; padding:1rem 1rem; }
.logo-text { font-weight: 700; font-size: 1.2rem; }
.logo-text a{color: var(--dark-gray);}
.nav-menu > ul{ display: flex; list-style: none;}
.nav-link {text-decoration: none; font-weight: 600; color: var(--dark-gray); transition: var(--transition); position: relative; }
.nav-link:hover, .current-menu-item .nav-link, .nav-link.active { color: var(--accent); }
.nav-link:after { content: ''; position: absolute; bottom: -5px; left: 0; width: 0; height: 2px; background-color: var(--accent); transition: var(--transition); }
.nav-link:hover:after, .current-menu-item .nav-link:after, .nav-link.active:after { width: 100%; }
.hamburger { display: none; background: none; border: none; cursor: pointer; font-size: 1.5rem; color: var(--dark-gray); }

/*bread*/
.breadcrumbs{padding: 0.25rem 0; font-size: 11px; background-color: #f4f4f4;}
.breadcrumbs,.breadcrumbs a{color: #373737;}
.breadcrumbs > .container > span{margin:0 5px;}
.breadcrumbs > .container > span:first-child{margin-left: 0;}
.single-project .breadcrumbs{margin-bottom: 0;}

/*Main*/
main{position: relative;}
.sec{padding: 60px 0;}
.sec-title {  margin-bottom: 2.5rem;  font-size: 1.5rem;}


/*------INDEX------*/
.button-bar { display: flex; justify-content: center; gap: 20px; padding: 0; background: #fdfdfd; align-items: center;}
.btn { padding: 10px 20px; border-radius: 25px; text-decoration: none; font-weight: 600; }
.btn.sns { background: #cce8ff; color: #333; }
.btn.main { background: #ffeb99; color: #e60012; }
.hero-bg { width: 100%;}

/*service*/
.support-title {font-size: 2rem; line-height: 1.6; text-align: center; letter-spacing: 0.3rem;}
.service-ul { text-align: center; line-height: 1.8; font-weight: bold; font-size: 1.5rem;}
.service-h3 { font-size: 1.6rem; margin-bottom: 1rem; text-align: center;}
.merit { background: #fffbe5; padding: 20px; border-radius: 20px; font-weight: bold;}
.solution {text-align: center;}

/*news*/
.news-box {padding: 60px 0;}
.marker{display: inline-block; background: linear-gradient(transparent 60%, #fff799 60%);  padding: 0 25px;}
.news li { display: flex; align-items: center; margin-bottom: 20px; }
.tag { padding: 4px 10px; border-radius: 6px; color: #fff; font-size: 12px; margin-right: 15px; }
.tag.new { background: #ff4b4b; }
.tag.info { background: #ffb347; }
.item-topic .item-inner{margin-right: 40px;}
.item-topic .item-label a{color: var(--dark-gray); font-weight: 600; text-decoration: underline;}


/*------SINGLE------*/
.single-right{border-left: 2px solid #004aad;}
.single-right .wp-block-heading{text-align: center; font-size: 1.25rem; margin-bottom: 1.5rem;}
.single-right a{color: var(--dark-gray); text-decoration: underline; font-weight: 600;}

/*------PAGE------*/
.page-head{    position: relative;    height: 80px;    overflow: hidden;}
.page-head img{width: 100%;    height: 100%;    object-fit: cover;    object-position: center;}
.wrp-faq_img,
.page-body{padding: 2rem 0 1.5rem;}
.wrp-post_head{margin-bottom: 2rem;}
.wrp-post_head .post-title{margin-bottom:0.75rem; font-size: 1.5rem; font-weight: 900;}
.wrp-post_head .item-img{margin-top: 1rem; max-width: 400px; position: relative;}
.wrp-post_head .item-inner{gap: 0.5rem;}
.wrp-post_head .item-date{margin-left: 1rem;}
.page-block{margin-bottom: 3rem;}
.block-title {padding: 1% 0% 1% 2%; background-color: #EFEFEF; border-style: solid; border-width: 0px 0px 0px 10px; border-color: var(--accent);}
.contact-tell{font-size: 1.4rem; font-weight: 600;}
.wrp-name{display: flex; align-items: center; font-weight: bold;}
.hello-label{font-size: 0.8rem; margin-right: 1rem;}
.hello-name{font-size: 1.5rem;}
.hello-img {text-align: center;}
.hello-img .wrp-name{margin-top: 1rem; justify-content: center;}
.hello-tx .wrp-name{margin-top: 2rem; justify-content: end; padding-right: 3rem;}
.wrp-history{margin-top: 3rem;}
.ul-history > li{display: flex; margin-bottom: 1rem;}
.ul-history .year{min-width: 120px;}
.ul-history .event{flex-grow: 1;}
.wrp-record{font-size: 0.8rem; text-align: left; margin-top: 1.25rem; color: #ff0800;}
.wrp-record .ul-history .year{min-width: 80px;}

/*実績*/
.subsidy-card {background-color: #fffaf3; min-height: 230px; border-radius: 10px; border: 1px solid #003976; box-shadow: 7px 10px 0 #d8eef6; padding: 20px; margin-bottom: 20px;}
.subsidy-card h3 { margin-bottom: 5px; font-weight: bold; font-size: 1.2rem; text-align: center;}
.subsidy-card .amount {font-size: 1.75rem; color: #ff0800; margin: 5px 0; text-align: right; font-weight: bold;}
.subsidy-card p { margin-bottom: 5px;}
.subsidy-card .sub { color: #004aad; line-height: 1.4;}
.wrp-voice { margin-top: 3rem; }
.wrp-voice .row{align-items: flex-start;}
.voice-box { border: 2px solid #004aad; border-radius: 10px; padding: 25px; background: #fff; height: 100%;}
.voice-box h5 { font-weight: 600; margin-bottom: 10px;}
.voice-box .item-left{flex-grow: 1; width: 50%; padding-right: 1rem;}
.voice-box .item-img{margin-bottom: 1rem;}
.voice-box .item-img.v-2{width: 50%;}
.voice-box .item-name{margin-top: 1rem; text-align: right;}
.voice-box p { font-size: 14px; line-height: 1.7;}
.voice-note{font-size: 1.5rem; text-align: center; margin-top: 3rem;}
.item-text_2{font-size: 1.3rem; margin: 0.25rem 0;}
.voice-note strong { color: #ff0800;}

/*comic*/
.container.ver-comic{max-width: 600px;}
.swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #000;
}
.swiper-slide img {
    width: auto;
    object-fit: contain;
    user-select: none;
}
.swiper-button-next{right: 0;}
.swiper-button-prev{left: 0;}

/*price*/
.wrp-price{margin-bottom: 2rem;}
.price-left{margin-bottom: 2rem;}
.price-left .sec-title{font-size: 1.8rem; text-align: center;}
.price-title{font-size: 1rem; margin-bottom: 0.5rem;}
.list-section ul{margin-bottom: 1.5rem;}
.list-section ul:last-child{margin-bottom: 0;}

/*faq*/
.wrp-faq_img .container{position: relative;}
.wrp-faq{padding: 2rem 0 2rem;}
.list-faq{margin-top: 2rem;}
.ul-faq li{margin-bottom: 1.5rem;}
.ul-faq li:last-child{margin-bottom: 0;}
.ul-faq h5{font-size: 1rem; font-weight: bold; margin-bottom: 0.5rem;}
.img-008{right: 0; bottom: 0; max-width: 260px; width: 25%;}

/*contact*/
.wrp-form p{margin-bottom: 1rem;}
.tb-form{font-size: 1rem;}
.wpcf7-spinner{position: absolute;}

/*------Footer------*/
.bottom-link{text-align: center; position: relative;}
.footer { background-color: var(--dark-gray); color: var(--white); padding: 1rem 0; }
.footer-container { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.footer-info h3 { margin-bottom: 1.5rem; color: var(--primary); }
.footer-links { display: flex; flex-direction: column; align-items: flex-end; }
.social-icons { display: flex; gap: 1rem; margin-top: 1rem; }
.social-icon { color: var(--white); font-size: 1.5rem; transition: var(--transition); }
.social-icon:hover { color: var(--primary); }
.copyright { text-align: center;}



/*------PC small------*/
@media only screen and (max-width: 1280px) {
}

/*------PAD pro------*/
@media only screen and (max-width: 1080px) {
    #header{padding: 0.75rem 1rem;}
}

/*------PAD------*/
@media only screen and (max-width: 880px) {
    .nav-link {padding:.5rem;}
    .btn-001{width: 60%;}
    .bgg-1::before{background: linear-gradient(to right, rgba(200, 240, 255, 0.8) 0%, rgba(255, 255, 255, 0) 3%, rgba(255, 255, 255, 0) 97%, rgba(200, 240, 255, 0.8) 100%);}    
}
/*------SP------*/
@media (max-width: 768px) {
    body{font-size: 0.9rem;}
    .hamburger { display: block; }
    .nav-menu { position: fixed; z-index: 999; top: 70px; left: -100%; flex-direction: column; background-color: var(--white); width: 100%; text-align: center; transition: var(--transition); box-shadow: 0 10px 15px rgba(0, 0, 0, 0.1); }
    .nav-menu > ul { display: block; width: 100%; }
    .nav-menu.active { left: 0; }
    .nav-link {text-align: left; padding: 1rem; border-top: 1px solid var(--light-gray);}
    .button-bar{flex-wrap: wrap;}
    .button-bar .btn { width: 45%;}
    .btn-001{width: 100%;}

    /*------MAIN------*/
    .sec{padding: 30px 0;}
    .sec-title{margin-bottom: 2rem; font-size: 1.4rem;}
    .tag { font-size: 10px; padding: 3px 8px; margin-right: 10px; }
    .marker{padding: 0 15px;}

    /*------INDEX------*/
    .support-title {font-size: 1.5rem; letter-spacing: 0;}
    .service-ul { font-size: 1.2rem; margin-bottom: 2rem;}
    .service-h3 { font-size: 1.4rem; margin-bottom: 1rem;}
    .merit {font-size: 0.9rem; padding: 1rem;}
    .news-box {padding: 40px 0;}
    .item-topic .item-inner{margin-right: 15px; min-width: 130px;}
    .item-topic .item-date{font-size: 12px;}

    /*------SINGLE------*/
    .single-right{border-top: 2px solid #004aad; border-left: none; margin-top: 2rem; padding-top: 2rem;}

    /*------PAGE------*/
    .wrp-faq_img,
    .page-body{padding: 1rem 0 0.5rem;}
    .subsidy-card{min-height: auto;}
    .voice-box{padding: 15px 10px;}
    .voice-box h5 { font-size: 1.2rem; }
    .voice-box .item-left{padding-right: 0.5rem;}
    .voice-note{font-size: 1.25rem;}
    .item-text_2{font-size: 1.1rem;}

    /*contact*/
    .tb-form{font-size: 0.75rem;}



}