@charset "UTF-8";

@media screen and (max-width: 1079.8px){	
    

}

@media screen and (max-width: 969.8px){	
    .footer-submenu {
        display: none;
    }

    /*add_202601*/

    .solar-fv {
        height: 75vw;
    }

}

@media screen and (max-width:835.8px) {
    .solar-header-left p {
       display:none;  
    }
}

@media screen and (max-width: 767.8px){	

    .sl-container-narrow {
        width: 90%;
    }
    .header-btn-container {
        justify-content: center;
    }
    .top-logo img{
        width: 180px;
        margin-bottom: 3rem;
    }
    .top-logo-c {

        margin-top: 2rem;
    }
    .g-nav ul {
        justify-content: center;
    }
    .g-nav li {
        min-width: inherit;
        font-size: 0.8rem;
    }
    .g-nav li+li {
        margin-left: 2rem;
    }
    .head-green {
        width: 58vw;
    }

    .top-message {
        padding-top: 1rem;
        align-items: flex-start;

    }
    .top-tree {
        text-align: center;
        position: absolute;
        bottom: -1vw;
        height: 240px;
        left: 50%;
        transform: translateX(-50%);
        z-index: 1;
        pointer-events: none;
    }
    .top-tree img {
        width: 200px;
        right: 0;
        
    }
    .message-c1 {
        width: 30%;
        left: 5%;
        top: inherit;
        bottom: 80px;
    }
    .message-c2 {
        width: 20%;
        left: 26%;
        top:inherit;
        bottom: 40px;
    }
    .slide {
        padding: 0.5rem;
    }
    .footer-logo {
        width: 150px;
        margin-top: 2rem;
    }

    .copyright {
        text-align: center;
        margin-top: 6rem;
    }
    .page-logo img{
        width: 180px;
        margin-top: 3rem;
        margin-bottom: 3rem;
    }
    .page-birds {
        width: 15vw;
        position: absolute;
        left: 30%;
        top: 22vw;
    }
    .g-nav ul > li:hover ul {
        flex-direction: column;
    }

    .g-nav ul > li:hover ul li {
        white-space: nowrap;
        margin-left: 0;
        margin-bottom: 1rem;

    }
	.header-content {
		margin-top:3rem;
	}


	/*add_202601*/
    .solar-fv {
        height: 190vw;
        position: relative;
        border-bottom: 12px solid #6D9419;
    }
    .solar-fv-body h2 {
        font-size: 1.8rem;
        margin-bottom: 1rem;
    }
    .solar-fv-body h2::before {
        bottom: 30%;
    }
    .solar-fv-body h3 {
        font-size: 1.35rem;
        letter-spacing: 0;
    }
    .solar-fv-body p {
        line-height: 125%;
        font-size: 0.8rem;
    }
    .solar-fv-pc {
        width: 30vw;
    }
    .pc-block {
        text-align: center;
    }
    .solar-cta-btn a:link, .solar-cta-btn a:visited {
        padding: 0.5rem 1rem;
        font-size: 1rem;
        font-weight: bold;
        color: #fff;
        display: block;
        min-width: inherit;
        text-align: center;
        margin-bottom: 0.5rem;
    }
    .pc-block-wrap {
        margin-bottom: 1.5rem;
    }
    .solar-container-s {
        width: 95%;
        margin-left: auto;
        margin-right: auto;
    }
    .solar-page h2 {
        font-size: 1.5rem;
    }
    .arrow-down {
        width: 20vw;
        margin: 1.5rem auto;
    }
    .pc-illust-container {
        padding-bottom: 10vw;
    }
    .pc-diagram {
        display: none;
    }
    .pc-diagram-sp {
        display: block;
    }
    .pc-title {
        width: 70%;
    }
    .pc-woman {
        width: 32%;
        position: absolute;
        right: -5%;
        top: inherit;
        bottom: 0px;
        transform: none;
    }
    .pc-w-title {
        width: 120%;
        position: absolute;
        left: -90%;
        top: 33%;
    }
    .solar-img04 {
        font-size: 0.8rem;
    }
    .solar-img04 .col-4 {
        padding: 0.5rem;
    }
    h2 {
        letter-spacing: 0em;
    }
    h2.solar-point::after {
        width: 6rem;
        height: 6rem;
        right: 0%;
        bottom: 85%;
    }
    .solar-checkpoints li {
        font-size: 1.1rem;
        letter-spacing: -1px;
    }
    .solar-cta h2 {
        letter-spacing: 0px;
        font-size: 1.25rem;
    }
    .solar-cta .solar-cta-btn a {
        font-size: 1.5rem;
    }
    h2.solar-good {
        font-size: 1rem;
    }
    h2.solar-good span {
        font-size: 1.25rem;
        letter-spacing: -0.6px;
    }
    .solar-4step {
        flex-wrap: wrap;
    }
    .solar-4step li {
        position: relative;
        width: calc(50% - 1rem);
    }
    .solar-4step li img{
        border-radius: 12px;
        margin-bottom: 0.5rem;
    }
    .solar-4step li div {
        position: relative;
    }
    .solar-4step li div::after {
        content: '';
        display: block;
        width: 2.5rem;
        height: 2.5rem;
        background-image: url(image/solar_img_arrowB.svg);
        background-size: auto;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
        top:50%;
        transform: translateY(-50%);
        right: -2rem;
        z-index: 2;
    }

    .solar-4step li div div.step-num {
        width: 2.4rem;
        height: 2.4rem;
        line-height: 2.4rem;
        font-size: 2.2rem;
        background-color: #fffdeb;
        left: -5%;
        top: -5%;
    }

    /*260116*/
    .solar-header-logo {
      width: 80px;
    }

    .solar-header-left {
       display: block;
       width: 80px;
       margin: 0;
    }
   
    .solar-header .g-nav li {
        min-width: inherit;
        font-size: 0.8rem;
        position: relative;
        line-height: 105%;
        letter-spacing: -0.05em;
    }
    .solar-header .g-nav li img{
        display: block;
        margin: 0 auto 0.25rem auto;
        width: 2rem;
    }
    .solar-header .g-nav li+li {
        margin-left: 5px;
    }
    .solar-header-btns {
        font-size: 0.8rem;
        column-gap: 0.15rem;
        letter-spacing: -0.05em;
    }
    .solar-header-btnA a:link, 
    .solar-header-btnA a:visited, 
    .solar-header-btnB a:link,
    .solar-header-btnB a:visited {
        padding: 0.25rem 0.5rem;
    }
    .fixed-header {
        height: 70px;
        margin: 0;
        padding: 0;
    }
    .fixed-header-margin {
        padding-top: 70px;
    }
    .top-main {
        margin-top: -26vw;
        position: relative;
        z-index: 100;
    }
    .solar-header {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .solar-header .sl-container {
        width: 100%;
    }
    .spr-0 {
        padding-right: 0;
        padding-left:10px;
    }
    .spl-0 {
        padding-left: 0;
        padding-right:10px;
    }
    .top-fvcopy {
        font-size:1.7rem!important;
        margin-bottom: 1rem;
        padding-bottom: 0;
    }
    .top-fv-c1 {
        margin-bottom: 1rem;
    }
    .top-fv-c2 {
        font-size: 1.5rem;
        letter-spacing: -2px;
    }
	.sonota-sekou h3 {
		text-align:center;
		justify-content:center;
	}

    .top-mes-tree {
        position: relative;
        margin-bottom: -5px;
        padding-top: 3rem;
    }
    .top-mes-circle {
        top: 3rem;
    }
	
}


@media screen and (max-width: 450.8px){	
    
    .pc-woman {
        width: 35%;
        position: absolute;
        right: -5%;
        top: inherit;
        bottom: -5%;
        transform: none;
    }
    .pc-w-title {
        width: 115%;
        position: absolute;
        left: -85%;
        top: 47px;
    
    }

}

@media screen and (max-width: 360.8px){	
    html,body {
		font-size: 14px;
	}
   .fixed-header {
        height: 110px;
        padding:0 ;
    }
    .fixed-header-margin {
        padding-top: 110px;
    }
    .spr-0 {
        padding-right: 0;
        padding-left: 0;
        margin-left: auto;
        margin-right: auto;
    }
    .spl-0 {
        padding-left: 0;
        padding-right: 0;
        margin-left: auto;
        margin-right: auto;
    }

    .solar-header-left,.solar-header-right {
        width: 265px;
    }
    .solar-header-logo {
      width: 70px;
    }
    .solar-header-logo a:link, .solar-header-logo a:visited{
        display: inline-block;
        width: 100%;
        height: 100%;
        line-height: 100%;
        margin: 0;
        padding: 0;
    }
	.solar-header-btns {
		width:100%;
	}
	.solar-header-btnA, .solar-header-btnB {
		width:49%;
	}
	.solar-header-btnA a:link, 
	.solar-header-btnA a:visited, 
	.solar-header-btnB a:link,
	.solar-header-btnB a:visited {
		width:100%;
		white-space:nowrap;
		text-align:center;
	}

	.top-fv-c2 {
        font-size: 1.5rem;
        letter-spacing: -2px;
    }
    .top-mes-container {

        margin-bottom: -2.5px;
    }
}

