/*
Theme Name: メイキングエナジー
Author: 
Description: 
Version: 1.0.0
*/
@charset "utf-8";
body{font-family: "Noto Sans JP", sans-serif;}
main{padding:100px 0 0 0;}
.sp{display:none;}
@media screen and (max-width:980px){
	main{padding:80px 0 0 0;}
}

/*ヘッダー*/
header{width:100%; height:100px; position:fixed; top:0; z-index:9999; background:#fff; padding:0 30px; display:flex; justify-content:space-between; align-items:center;}
header .cta{display:flex; align-items:center; justify-content:start; gap:20px; padding-right:60px;}
header .cta a.construction{font-size:16px; font-weight:500; background:url(img/link_icon.svg) no-repeat right 17px center #E75227; color:#fff; display:block; padding:13px 37px 13px 17px; border-radius:5px;}
header .cta a.download{font-size:16px; font-weight:500; background:url(img/link_icon.svg) no-repeat right 17px center #000; color:#fff; display:block; padding:13px 37px 13px 17px; border-radius:5px;}
@media screen and (max-width:980px){
	header{gap:25px; height:80px;}
	header h1 a img{width:49vw;}
	header .cta a.download{display:none;}
}
@media screen and (max-width:600px){
	header h1{flex:1;}
	header h1 a img{width:100%;}
	header .cta a.construction{font-size:2.6vw; padding:2vw 7vw 2vw 2vw; background:url(img/link_icon.svg) no-repeat right 2vw center #E75227;}
	header .cta a.construction .sp{display:block;}
}
@media screen and (min-width: 981px) {
    header h1 a img {
        width: 90%;
    }
}
/*ハンバーガーメニュー*/
.hamburger_menu_container{width:fit-content; height:100px; display:flex; align-items:center; position:fixed; right:30px; top:0; z-index:99999;}
.hamburger_menu{display:block; position:relative; width:30px; height:30px; cursor:pointer;}
.hamburger_menu span{position:absolute; background-color:#333333; height:2px; width:100%; border-radius:1px; transition:all 0.4s ease-in-out;}
.hamburger_menu span:nth-of-type(1){top:8px;}
.hamburger_menu span:nth-of-type(2){bottom:8px;}
.hamburger_menu.active span{background-color:#fff;}
.hamburger_menu.active span:nth-of-type(1){transform:translateY(6px) rotate(-45deg);}
.hamburger_menu.active span:nth-of-type(2){transform:translateY(-6px) rotate(45deg);}
@media screen and (max-width:980px){
	.hamburger_menu_container{height:80px;}
}

/*グローバルナビ*/
.global_nav_container{transition:.3s; background:#222; height:100%; position:fixed; top:0; right:-100%; z-index:99992;}
.global_nav_container.active{right:0;}
.global_nav{width:auto; height:100%; border-radius:5px 0 0 5px; padding:0 130px; display:flex; flex-direction:column; align-items:center; /*justify-content:center;*/ gap:72px; margin-top: 100px;}
.global_nav .global_nav_inner{display:flex; gap:130px; border-bottom:1px solid #fff; padding-bottom:72px;}
.global_nav .global_nav_inner .global_nav_inner_frame ul{display:flex; flex-direction:column; gap:24px;}
.global_nav .global_nav_inner .global_nav_inner_frame ul li a{color:#fff;}
.global_nav .global_nav_inner .global_nav_inner_frame:first-child ul{list-style-type:disc; margin-left:25px;}
.global_nav .global_nav_inner .global_nav_inner_frame:first-child ul li a{font-size:24px;}
.global_nav .global_nav_inner .global_nav_inner_frame:first-child ul li::marker{color:red;}
.global_nav .global_nav_inner .global_nav_inner_frame:last-child ul li a{font-size:16px;}
.global_nav .global_nav_inner2{width:100%;}
.global_nav .global_nav_inner2{display:flex; flex-direction:column; justify-content:center; align-items:center; gap:17px;}
.global_nav .global_nav_inner2 div{width:370px;}
.global_nav .global_nav_inner2 .tel a{display:flex; flex-direction:column; justify-content:center; align-items:center; gap:15px; width:100%; padding:28px 0; background:#222222; border:1px solid #fff; border-radius:5px;}
.global_nav .global_nav_inner2 .tel a .label{font-size:14px; font-weight:500; color:#fff;}
.global_nav .global_nav_inner2 .tel a .tel_number{font-size:22px; font-weight:500; color:#fff; background:url(img/tel_icon.png) no-repeat center left; background-size:18px auto; padding:0 0 3px 34px;}
.global_nav .global_nav_inner2 .mail a{display:flex; flex-direction:column; justify-content:center; align-items:center; gap:15px; width:100%; padding:28px 0;background:#F16529; border:1px solid #F16529; border-radius:5px;}
.global_nav .global_nav_inner2 .mail a .label{font-size:14px; font-weight:500; color:#fff;}
.global_nav .global_nav_inner2 .mail a .mail_address{font-size:20px; font-weight:500; color:#fff; background:url(img/mail_icon.png) no-repeat center left; background-size:24px auto; padding:0 0 3px 41px;}
@media screen and (max-width:980px){
	.global_nav_container{right:-200vw;}
}
@media screen and (max-width:730px){
	.global_nav{width:100vw; padding:0 5vw;}
	.global_nav .global_nav_inner .global_nav_inner_frame:first-child ul li a{font-size:5vw;}
	.global_nav .global_nav_inner .global_nav_inner_frame:last-child ul li a{font-size:3.5vw;}
	.global_nav .global_nav_inner{width:100%; justify-content:space-between; gap:0;}
	.global_nav .global_nav_inner2 div{width:85%;}
	.global_nav .global_nav_inner2 .tel a{padding:20px 0;}
	.global_nav .global_nav_inner2 .mail a{padding:20px 0;}
}

/*オーバーレイ*/
.overlay{display:none; width:100%; height:100%; position:fixed; top:0; left:0; z-index:99991; background:rgba(255, 255, 255, 0.7);}

/*TOP キービジュアル*/
.top_kv{width:100%; position:relative;}
.top_kv img{width:100%; height:100%; object-fit:cover;}
.vector-shape {width:62vw; height:38vw; background:linear-gradient(to right, #ff4b4b, #ff9033, #ffcc33);	clip-path:polygon(0 40%, 0 100%, 100% 100%);	position:absolute; bottom:0; left:0; opacity:0.9;}
.catchphrase{display:block; position:absolute; bottom:3.5vw; left:3.5vw;}
.catchphrase h2{display:flex; flex-direction:column; gap:1.3vw;}
.catchphrase h2 .inline{display:block; background:#000; color:#fff; font-size:4.5vw; font-weight:700; line-height:100%; letter-spacing:1px; padding:10px; font-feature-settings:"palt";}
.catchphrase.sp{display:none;}
@media screen and (max-width:600px){
	.catchphrase.pc{display:none;}
	.catchphrase.sp{display:flex; bottom:4.5vw; left:4.5vw;}
	.catchphrase.sp h2{gap:2.3vw;}
	.catchphrase.sp h2 .inline{width:fit-content; font-size:9.3vw;}
	.vector-shape{width:89vw; height:106vw;}
}

/*TOP 屋根で生まれたゆとりを、*/
.top_section_features{background:url(img/top_merits_bg_2.jpg) no-repeat bottom center; background-size:cover; padding:200px 0 250px 0;}
.top_section_features .inner{width:100%; max-width:1165px; height:auto; margin:0 auto;}
.top_section_features .inner .title_features{display:flex; justify-content:space-between; margin-bottom:60px; gap:30px;}
.top_section_features .inner .title_features h3{display:flex; flex-direction:column; gap:0.8vw; margin-top:35px;}
.top_section_features .inner .title_features h3 .inline{font-size:40px; font-weight:700; line-height:151%; display:block; color:#fff; background:linear-gradient(to right, #ff4b4b, #ff4b4b, #ffcc33); width:fit-content; padding:0 15px; font-feature-settings:"palt";}
.top_section_features .inner .title_features h3 .inline i.small{font-size:35px; font-style:normal;}
.top_section_features .inner .title_features .info_features{flex:1;}
.top_section_features .inner .title_features .info_features img{width:100%;}
.top_section_features .inner .list_features{display:flex; flex-wrap:wrap; justify-content:center;}
.top_section_features .inner .list_features .item{display:flex; flex-direction:column; justify-content:center; gap:10px; align-items:center; padding:34px 26px; background:rgba(255, 255, 255, 0.9); width:33%; border:1px solid rgba(85, 85, 85, 0.2); border-radius:5px;}
.top_section_features .inner .list_features .item img{margin-bottom:10px;}
.top_section_features .inner .list_features .item h4{text-align:center; font-size:18px; font-weight:700; line-height:140%;}
.top_section_features .inner .list_features .item h4 span.small{display:block; font-size:16px; line-height:130%;}
.top_section_features .inner .list_features .item h4 span.big{display:block; font-size:24px; line-height:130%;}
.top_section_features .inner .list_features .item p{font-size:15px; font-weight:400; line-height:140%;}
@media screen and (max-width:1135px){
	.top_section_features .inner .list_features .item{width:380px;}
}
@media screen and (max-width:1000px){
	.top_section_features .inner .title_features{flex-direction:column; align-items:center; gap:40px;}
}
@media screen and (max-width:700px){
	.top_section_features{padding:12vw 0 12vw 0; background: url(img/top_hero_bg_sp.jpg) no-repeat bottom center; background-size:100%;}
	.top_section_features .inner .title_features{margin-bottom:40px;}
	.top_section_features .inner .title_features h3{margin-top:0px;}
	.top_section_features .inner .title_features h3 .inline{font-size:5.5vw;}
	.top_section_features .inner .title_features h3 .inline i.small{font-size:4.5vw;}
	.top_section_features .inner .title_features .info_features{width:80vw;}
	.top_section_features .inner .list_features .item{width:90vw;}
}

/*TOP 太陽光パネルを導入するメリット*/
.top_section_merits{background:#555555; padding:80px 0 300px 0; overflow:hidden; position:relative;}
.top_section_merits:after{content:""; display:block; width:150vw; height:150vw; background:#F7F7F7; border-radius:100%; position:absolute; left:50%; margin-left:-75vw;}
.top_section_merits .inner{width:100%; max-width:1165px; height:auto; margin:0 auto 70px auto;}
.top_section_merits .inner h3{color:#fff; margin-bottom:64px;}
.top_section_merits .inner h3 .title_merits_en{display:block; font-size:16px; font-weight:600; margin-bottom:14px;}
.top_section_merits .inner h3 .title_merits_en:before{content:"・"; color:#E44D26; margin-right:5px;}
.top_section_merits .inner h3 .title_merits_jp{display:block; font-size:40px; font-weight:700;}
.top_section_merits .inner .list_merits{display:flex; gap:70px; margin-bottom:64px;}
.top_section_merits .inner .list_merits .item{background:#fff; border-radius:5px; width:50%; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:20px; border:1px solid rgba(126, 85, 14, 0.2); padding:70px 0; position:relative;}
.top_section_merits .inner .list_merits .item .number{font-size:64px; font-weight:600; color:#555; position:absolute; top:20px; left:20px; line-height:100%;}
.top_section_merits .inner .list_merits .item img{width:fit-content;}
.top_section_merits .inner .list_merits .item h4{font-size:24px; font-weight:700;}
.top_section_merits .inner .list_merits .item p{font-size:16px; font-weight:400; line-height:140%;}
.top_section_merits .inner .list_merits2{display:flex; gap:80px; background:#FFFAE9; border-radius:5px; padding:56px 70px; border:1px solid rgba(126, 85, 14, 0.2);}
.top_section_merits .inner .list_merits2 .list_merits2_inner{width:50%; display:flex; justify-content:center;}
.top_section_merits .inner .list_merits2 .image img{width:522px;}
.top_section_merits .inner .list_merits2 .text{display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:10px;}
.top_section_merits .inner .list_merits2 .text .label{width:fit-content; margin-bottom:5px; position:relative;}
.top_section_merits .inner .list_merits2 .text .label h4{font-size:30px; border:1px solid #000; border-radius:100px; padding:13px 30px 20px 30px; font-weight:700;  letter-spacing:2px; position:relative; z-index:4;}
.top_section_merits .inner .list_merits2 .text .label h4 .big{font-size:40px;}
.top_section_merits .inner .list_merits2 .text .label:before{content:""; display:block; width:100%; height:100%; background:#fff; position:absolute; bottom:-5px; right:-5px; border-radius:100px; z-index:2;}
.top_section_merits .inner .list_merits2 .text .label:after{content:""; display:block; width:24px; height:24px; background:#fff; border-right:1px solid #000; position:absolute; bottom:-5px; left:50px; transform:rotate(45deg); z-index:5;}
.top_section_merits .inner .list_merits2 .text p{font-size:16px; line-height:140%;}
.top_section_merits .inner .list_merits2 .text p.strong{font-size:24px; font-weight:700; line-height:170%; text-decoration:underline;}
@media screen and (max-width:1100px){
	.top_section_merits .inner .list_merits2{flex-direction:column; align-items:center;}
	.top_section_merits .inner .list_merits2 .list_merits2_inner{width:100%;}
}
@media screen and (max-width:1000px){
	.top_section_merits{padding:80px 5vw 20vw 5vw;}
}
@media screen and (max-width:820px){
	.top_section_merits .inner .list_merits2{padding:7vw 5vw; gap:5vw;}
	.top_section_merits .inner .list_merits{flex-direction:column; gap:25px; margin-bottom:25px;}
	.top_section_merits .inner .list_merits .item{width:100%;}
	.top_section_merits .inner h3 .title_merits_jp .sp{display:block;}
}
@media screen and (max-width:600px){
	.top_section_merits .inner h3{margin-bottom:30px;}
	.top_section_merits .inner h3 .title_merits_jp{font-size:6.5vw; line-height:150%;}
	.top_section_merits .inner .list_merits2 .image img{width:100%;}
	.top_section_merits .inner .list_merits2 .text .label{width:100%;}
	.top_section_merits .inner .list_merits2 .text .label h4{text-align:center;}
	.top_section_merits .inner .list_merits2 .text p.strong{text-align:center; width:100%;}
	.top_section_merits .inner .list_merits2 .text p br{display:none;}
	.top_section_merits .inner .list_merits2 .text p.strong br{display:block;}
}
@media screen and (max-width:490px){
	.top_section_merits .inner .list_merits2 .text .label h4{font-size:6vw;}
	.top_section_merits .inner .list_merits2 .text .label h4 .big{font-size:8vw;}
	.top_section_merits .inner .list_merits2 .text p.strong{font-size:4.5vw; width:100%;}
}

/*選べる4つのプラン*/
.top_section_plan{background:#F7F7F7; padding:0 0 130px 0;}
.top_section_plan .inner{width:100%; max-width:1165px; height:auto; margin:0 auto 0 auto;}
.top_section_plan .inner h3{text-align:center; margin-bottom:70px;}
.top_section_plan .inner h3 .small{font-size:20px; font-weight:600; display:block; margin-bottom:20px;}
.top_section_plan .inner h3 .big{font-size:40px; font-weight:700; display:block;}
.top_section_plan .list_plan{display:flex;}
.top_section_plan .list_plan .item{width:25%; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:0px; background:#fff; border-radius:5px; overflow:hidden;}
.top_section_plan .list_plan .item h4{display:block; width:100%; font-size:20px; background:#F16529; color:#fff; padding:12px 0; text-align:center;}
.top_section_plan .list_plan .item .data{width:100%; border-left:1px dashed rgba(85, 85, 85, 0.6); padding:40px 20px 18px 20px; text-align:center; flex-grow: 1;}
.top_section_plan .list_plan .item:first-child .data{border:none;}
.top_section_plan .list_plan .item .data .price{font-size:40px; font-weight:700; font-feature-settings:"palt";}
.top_section_plan .list_plan .item .data .price span{font-size:16px; font-weight:700;}
.top_section_plan .list_plan .item .data .output{font-size:16px; margin-bottom:10px;}
.top_section_plan .list_plan .item .data .annotation{color:#A6A6A6; font-size:10px; font-weight:400;}
.top_section_plan .list_plan .item .data ul{margin:30px 0; text-align:left;}
.top_section_plan .list_plan .item .data ul li{background:url(img/check.png) no-repeat center left; padding-left:34px; font-size:14px; margin-bottom:20px;}
.top_section_plan .list_plan .item .data .text{margin:30px 0;}
.top_section_plan .list_plan .item .data .text p{font-size:14px; text-align:left; line-height:150%;}
.top_section_plan .list_plan .item .detail a{display:block; width:95%; border:1px solid #E44D26; background:url(img/arrow_right.png) no-repeat center right 20px; padding:12.5px; 16px; font-size:16px; border-radius:100px; margin:0 auto 24px auto;}
.top_section_plan .list_plan .item .conditions a{font-size:12px; text-decoration:underline;}
@media screen and (max-width:1160px){
	.top_section_plan .list_plan{display:flex; flex-wrap:wrap; padding:0 10vw; gap:2%;}
	.top_section_plan .list_plan .item{width:49%; margin-bottom:2%;}
	.top_section_plan .list_plan .item .data{border:none;}
}
@media screen and (max-width:660px){
	.top_section_plan{padding:0 0 12vw 0;}
	.top_section_plan .list_plan{gap:0;}
	.top_section_plan .list_plan .item{width:100%; margin-bottom:24px;}
	.top_section_plan .list_plan .item:last-child{margin:0;}
	.top_section_plan .inner h3 .big{font-size:7vw;}
}

/*全国一律の高いサービス品質だから安心*/
.top_section_service{background:#555555; padding:70px 0 120px 0; overflow:hidden; position:relative;}
.top_section_service .inner{width:100%; max-width:1165px; height:auto; margin:0 auto 70px auto;}
.top_section_service .inner h3{color:#fff; margin-bottom:64px;}
.top_section_service .inner h3 .title_merits_en{display:block; font-size:16px; font-weight:600; margin-bottom:14px;}
.top_section_service .inner h3 .title_merits_en:before{content:"・"; color:#E44D26; margin-right:5px;}
.top_section_service .inner h3 .title_merits_jp{display:block; font-size:34px; font-weight:700; line-height:153%;}
.top_section_service .inner .list_service{display:flex; flex-direction:column; gap:75px;}
.top_section_service .inner .list_service .item{display:flex; gap:75px;}
.top_section_service .inner .list_service .item .image{width:426px; height:240px; border-radius:5px; overflow:hidden;}
.top_section_service .inner .list_service .item .image img{width:100%; height:100%; object-fit:cover;}
.top_section_service .inner .list_service .item .text{flex:1; border-bottom:1px solid #fff;}
.top_section_service .inner .list_service .item .text .number{font-family: "Noto Sans JP", sans-serif;font-size:60px; font-weight:600; color:#F16529; display:block; margin-bottom:32px;}
.top_section_service .inner .list_service .item .text h4{font-size:24px; font-weight:700; margin-bottom:15px; color:#fff; line-height:140%;}
.top_section_service .inner .list_service .item .text p{font-size:16px; font-weight:400; color:#fff; line-height:140%; margin-bottom:40px;}
@media screen and (max-width:1000px){
	.top_section_service{padding:80px 5vw 20vw 5vw;}
	.top_section_service .inner .list_service .item{gap:5vw;}
	.top_section_service .inner .list_service .item .image{width:50%;}
	.top_section_service .inner .list_service .item .text{width:50%;}
	.top_section_service .inner .list_service .item .text .number{font-size:40px; margin-bottom:20px;}
}
@media screen and (max-width:600px){
	.top_section_service{padding:12vw 5vw;}
	.top_section_service .inner{margin:0 auto;}
	.top_section_service .inner h3{margin-bottom:30px;}
	.top_section_service .inner h3 .title_merits_jp{font-size:6.5vw; line-height:150%;}
	.top_section_service .inner .list_service{gap:20px;}
	.top_section_service .inner .list_service .item{flex-direction:column; gap:15px;}
	.top_section_service .inner .list_service .item .image{width:100%; height:auto;}
	.top_section_service .inner .list_service .item .text{width:100%;}
	.top_section_service .inner .list_service .item:last-child .text{border:none;}
	.top_section_service .inner .list_service .item .text .text_header{display:flex; gap:20px; align-items:center; margin-bottom:10px;}
	.top_section_service .inner .list_service .item .text .number{margin:0px; font-size:42px;margin-bottom: 6px;}
	.top_section_service .inner .list_service .item .text h4{margin:0; font-size:20px;}
	.top_section_service .inner .list_service .item .text h4 br.sp{display:block;}
	.top_section_service .inner .list_service .item .text p{font-size:14px; margin-bottom:20px;}
}

/*施工事例*/
.top_section_works{background:#F7F7F7; padding:70px 0 115px 0; overflow:hidden; position:relative;}
.top_section_works .inner{width:100%; max-width:1165px; height:auto; margin:0 auto 70px auto;}
.top_section_works .inner .header{display:flex; justify-content:start; align-items:flex-end; margin-bottom:64px; gap:40px;}
.top_section_works .inner .header h3{color:#000;}
.top_section_works .inner .header h3 .title_merits_en{display:block; font-size:16px; font-weight:600; margin-bottom:14px;}
.top_section_works .inner .header h3 .title_merits_en:before{content:"・"; color:#E44D26; margin-right:5px;}
.top_section_works .inner .header h3 .title_merits_jp{display:block; font-size:34px; font-weight:700; line-height:153%;}
.top_section_works .inner .header a.more{display:block; width:fit-content; padding:10px 40px 10px 20px; font-size:16px; font-weight:500; background:url(img/arrow_right.png) no-repeat center right #fff; border:1px solid #E44D26; border-radius:100px;}
.top_section_works .inner .category_works{display:flex; gap:50px;}
.top_section_works .inner .category_works .item{width:50%; border-radius:5px; overflow:hidden; background:#fff; padding-bottom:60px;}
.top_section_works .inner .category_works .item .image{width:100%; height:236px;}
.top_section_works .inner .category_works .item .image img{width:100%; height:100%; object-fit:cover;}
.top_section_works .inner .category_works .item .area{display:flex; justify-content:right; padding:20px;}
.top_section_works .inner .category_works .item .area .icon{font-size:14px; font-weight:700; background:#F16529; color:#fff; padding:5px 10px; border-radius:100px;}
.top_section_works .inner .category_works .item .text{display:flex; gap:34px; padding:0 30px;}
.top_section_works .inner .category_works .item .text .icon{width:130px; height:130px;}
.top_section_works .inner .category_works .item .text .icon img{width:100%; height:100%; object-fit:cover;}
.top_section_works .inner .category_works .item .text .frame{flex:1;}
.top_section_works .inner .category_works .item .text .frame h4{font-size:20px; font-weight:700; margin-bottom:10px; line-height:140%;}
.top_section_works .inner .category_works .item .text .frame p{font-size:16px; margin-bottom:30px;}
.top_section_works .inner .category_works .item .text .frame a{background:url(img/arrow_right2.png) no-repeat center right; padding:0px 31px 2px 0;}
@media screen and (max-width:1000px){
	.top_section_works{padding:80px 5vw 20vw 5vw;}
}
@media screen and (max-width:850px){
	.top_section_works .inner .category_works{flex-direction:column;}
	.top_section_works .inner .category_works .item{width:100%;}
}
@media screen and (max-width:600px){
	.top_section_works{padding:12vw 5vw 12vw 5vw;}
	.top_section_works .inner{margin:0 auto;}
	.top_section_works .inner .header{justify-content:space-between; margin-bottom:30px;}
	.top_section_works .inner .header h3 .title_merits_jp{font-size:6.5vw;}
	.top_section_works .inner .category_works .item{padding-bottom:0;}
	.top_section_works .inner .category_works .item .area .icon{font-size:12px;}
	.top_section_works .inner .category_works .item .text{padding:0 20px 25px 20px; gap:15px;}
	.top_section_works .inner .category_works .item .text .icon{width:20vw; height:20vw;}
	.top_section_works .inner .category_works .item .text .frame h4{font-size:16px;}
	.top_section_works .inner .category_works .item .text .frame p{font-size:14px;}
	.top_section_works .inner .category_works .item .text .frame a{display:block; text-align:right; font-size:12px;}
}

/*空からの贈りものを、*/
.top_section_message{background:#F16529; padding:70px 0 90px 0; position:relative; overflow:hidden;}
.top_section_message .inner{width:100%; max-width:1165px; height:auto; margin:0 auto 0 auto; position:relative; z-index:1;}
.top_section_message .inner h3{color:#fff;}
.top_section_message .inner h3 .title_en{display:block; font-size:16px; font-weight:600; margin-bottom:14px;}
.top_section_message .inner h3 .title_en:before{content:"・"; color:#fff; margin-right:5px;}
.top_section_message .inner h3 .title_jp{display:block; font-size:40px; font-weight:700; line-height:153%;}
.top_section_message .inner .text{padding:84px 0;}
.top_section_message .inner .text p{font-size:20px; line-height:230%; font-weight:500; color:#fff;}
.top_section_message:after{content:""; display:block; width:1920px; height:1920px; background:#FFFAE9; border-radius:100%; position:absolute; left:50%; margin-left:-960px; bottom:-1550px; z-index:0;}
.top_section_message .inner .contact_message_sp{display:none;}
.top_section_message .inner .contact_message{position:relative; background:#FFEEC9; display:flex; justify-content:center; align-items:center; flex-direction:column; padding:93px 0 50px 0; border-radius:5px;}
.top_section_message .inner .contact_message p{font-size:24px; font-weight:700; line-height:243%; margin-bottom:27px;}
.top_section_message .inner .contact_message .cta a{display:block; width:fit-content; padding:28px 104px 28px 70px; color:#fff; font-size:24px; font-weight:500; background:url(img/arrow_right_white.png) no-repeat center right 70px #E44D26; border-radius:100px; letter-spacing:3px;}
.top_section_message .inner .contact_message img.character{position:absolute; left:87px; bottom:50px;}
.top_section_message .inner .contact_message .fukidashi{width:709px; height:135px; background:url(img/fukidashi.png) no-repeat center center; background-size:100% 100%; position:absolute; top:-45px; text-align:center;}
.top_section_message .inner .contact_message .fukidashi h4{font-size:33px; font-weight:700; line-height:113px; letter-spacing:2px; font-feature-settings:"palt";}
@media screen and (max-width:1000px){
	.top_section_message{padding:70px 5vw 20vw 5vw;}
	.top_section_message .inner .text{padding:40px 0;}
	.top_section_message .inner .contact_message{display:none;}
	.top_section_message:after{content:""; display:block; width:180vw; height:258vw; background:#FFFAE9; border-radius:100%; position:absolute; left:50%; margin-left:-90vw; bottom:-224vw; z-index: 0;}
	.top_section_message .inner .contact_message_sp{display:flex; flex-direction:column; justify-content:center; align-items:center; gap:10px;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner{background:url(img/icon_06.png) no-repeat center center; background-size:100% 100%; width:60vw; height:60vw; margin:0 auto; display:flex; justify-content:center; align-items:center; flex-direction:column; gap:15px;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner h4{text-align:center; font-size:4.3vw; line-height:133%; font-weight:700;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner h4 span{background:linear-gradient(transparent 66%, #FFE109 40%);}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner p{font-size:2.5vw; text-align:center; line-height:167%; font-weight:600;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner p .big{font-size:2.5vw;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner .cta a{display:block;	width:34vw;	padding:1.5vw;	text-align: center;	color:#fff;	font-size:2vw;	font-weight:500;	background: url(img/arrow_right_white.png) no-repeat center right 2vw #E44D26;	border-radius:100px;	letter-spacing:3px;}
	.top_section_message .inner .contact_message_sp img{width:fit-content;}
}
@media screen and (max-width:600px){
	.top_section_message{padding:12vw 5vw 12vw 5vw;}
	.top_section_message .inner h3 .title_jp{font-size:6.5vw;}
	.top_section_message .inner .text{padding:40px 0;}
	.top_section_message .inner .text p{font-size:16px;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner{width:90vw; height:90vw;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner h4{font-size:6.3vw;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner p{font-size:3.8vw;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner p .big{font-size:5.5vw;}
	.top_section_message .inner .contact_message_sp img{width:30%;}
	.top_section_message .inner .contact_message_sp .contact_message_sp_inner .cta a{width:50vw; padding:2.5vw; font-size:3vw; background-size:3.5vw;}
}

/*お申し込みからの流れ*/
.top_section_flow{background:#FFFAE9; padding:80px 0 75px 0; position:relative; overflow:hidden;}
.top_section_flow .inner{width:100%; max-width:1165px; height:auto; margin:0 auto 0 auto; position:relative; z-index:1;}
.top_section_flow .inner h3{color:#000; margin-bottom:130px;}
.top_section_flow .inner h3 .title_en{display:block; font-size:16px; font-weight:600; margin-bottom:14px;}
.top_section_flow .inner h3 .title_en:before{content:"・"; color:#F16529; margin-right:5px;}
.top_section_flow .inner h3 .title_jp{display:block; font-size:32px; font-weight:700; line-height:153%;}
.top_section_flow .flow_list{overflow-x:scroll; padding-top:55px; margin-left:calc((100vw - 1165px) / 2); position:relative;}
.top_section_flow .flow_list::-webkit-scrollbar{background:#FFFAE9;}
.top_section_flow .flow_list .flow_list_inner{display:flex; gap:48px; width:fit-content;}
.top_section_flow .flow_list .flow_list_inner .item{width:500px; background:#fff; border-radius:5px; padding:60px 37px 46px 37px; position:relative;}
.top_section_flow .flow_list .flow_list_inner .item:after{content:""; width:48px; height:30px; background:#F16529; position:absolute; left:-48px; bottom:50%; margin-bottom:-15px;}
.top_section_flow .flow_list .flow_list_inner .item .step_icon{width:90px; height:90px; background:#F16529; display:flex; flex-direction:column; justify-content:center; align-items:center; border-radius:200px; position:absolute; top:-55px; left:50%; margin-left:-45px;}
.top_section_flow .flow_list .flow_list_inner .item .step_icon .step{font-size:20px; color:#fff; line-height:100%;}
.top_section_flow .flow_list .flow_list_inner .item .step_icon .number{font-family: "Noto Sans JP", sans-serif; font-size:38px; color:#fff; line-height:100%; font-weight:600;}
.top_section_flow .flow_list .flow_list_inner .item h4{font-size:20px; font-weight:700; text-align:center; margin-bottom:24px;}
.top_section_flow .flow_list .flow_list_inner .item .image{width:100%; height:240px; overflow:hidden; border-radius:5px;}
.top_section_flow .flow_list .flow_list_inner .item .image img{width:100%; height:100%; object-fit:cover;}
@media screen and (max-width:1180px){
	.top_section_flow .flow_list{margin-left:0;}
}
@media screen and (max-width:1000px){
	.top_section_flow{padding:70px 0vw 20vw 5vw;}
	.top_section_flow .inner h3{margin-bottom:25px;}
}
@media screen and (max-width:600px){
	.top_section_flow{padding:12vw 5vw 12vw 5vw;}
	.top_section_flow .inner h3 .title_jp{font-size:6.5vw;}
}

/*よくある質問*/
.top_section_faq{background:#FFF; padding:70px 0 115px 0; position:relative; overflow:hidden;}
.top_section_faq .inner{width:100%; max-width:1017px; height:auto; margin:0 auto 0 auto; position:relative; z-index:1;}
.top_section_faq .inner h3{color:#000; margin-bottom:70px;}
.top_section_faq .inner h3 .title_en{display:block; font-size:16px; font-weight:600; margin-bottom:14px;}
.top_section_faq .inner h3 .title_en:before{content:"・"; color:#F16529; margin-right:5px;}
.top_section_faq .inner h3 .title_jp{display:block; font-size:32px; font-weight:700; line-height:153%;}
.top_section_faq .inner .faq_list{}
.top_section_faq .inner .faq_list dl dt{display:flex; align-items:center; padding:20px 0; font-size:18px; font-weight:700; border-top:1px solid rgba(85, 85, 85, 0.2); position:relative;}
.top_section_faq .inner .faq_list dl dt:before{content:"Q"; font-size:18px; font-weight:700; margin-right:24px;}
.top_section_faq .inner .faq_list dl dt:after{content:""; width:32px; height:32px; background:url(img/faq_dt_bg.png) no-repeat; background-size:100%; position:absolute; right:0; bottom:50%; margin-bottom:-16px; transition:.3s;}
.top_section_faq .inner .faq_list dl dt.active:after{transform:rotateZ(180deg);}
.top_section_faq .inner .faq_list dl dt:hover{cursor:pointer;}
.top_section_faq .inner .faq_list dl dd{display:none; padding:0 0 35px 0; font-size:16px; font-weight:500;}
.top_section_faq .inner .faq_list dl dd:before{content:"A"; font-size:18px; font-weight:700; margin-right:24px; float:left;}
.top_section_faq .inner .faq_list dl dd p{padding-left:35px; font-size:16px; line-height:150%; margin-bottom:30px;}
@media screen and (max-width:1000px){
	.top_section_faq{padding:70px 5vw 20vw 5vw;}
	.top_section_faq .inner h3{margin-bottom:25px;}
}
@media screen and (max-width:600px){
	.top_section_faq{padding:12vw 5vw 12vw 5vw;}
	.top_section_faq .inner h3 .title_jp{font-size:6.5vw;}
	.top_section_faq .inner .faq_list dl dt{padding:20px 70px 20px 0;}
}


/*ご相談はこちら*/
.top_section_contact{background:linear-gradient(to right, #FF2F2F, #FF8019 72%, #FFDD00); padding:70px 0 80px 0; position:relative; overflow:hidden;}
.top_section_contact .inner{width:100%; max-width:1165px; height:auto; display:flex; margin:0 auto 0 auto; position:relative; z-index:1;}
.top_section_contact .inner .frame1{width:530px;}
.top_section_contact .inner .frame1 h3{color:#fff; margin-bottom:33px;}
.top_section_contact .inner .frame1 h3 .title_en{display:block; font-size:16px; font-weight:600; margin-bottom:14px;}
.top_section_contact .inner .frame1 h3 .title_en:before{content:"・"; color:#fff; margin-right:5px;}
.top_section_contact .inner .frame1 h3 .title_jp{display:block; font-size:32px; font-weight:700; line-height:153%;}
.top_section_contact .inner .frame1 .text p{font-size:16px; font-weight:400; line-height:150%; color:#fff; margin-bottom:30px;}
.top_section_contact .inner .frame1 .text p a{text-decoration:underline;}
.top_section_contact .inner .frame2 .contact_form{width:630px; display:flex; flex-direction:column; gap:27px;}
.top_section_contact .inner .frame2 .contact_form dl dt{font-size:16px; color:#fff; display:flex; gap:14px; align-items:center; margin-bottom:11px;}
.top_section_contact .inner .frame2 .contact_form dl dt .required{display:block; background:#076FB8; color:#fff; font-size:10px; padding:5px 10px; border-radius:5px;}
.top_section_contact .inner .frame2 .contact_form dl dd input{width:100%; font-size:16px; background:#fff; padding:22px 10px; border-radius:5px;}
.top_section_contact .inner .frame2 .contact_form dl dd textarea{width:100%; height:180px; font-size:16px; background:#fff; padding:22px 10px; border-radius:5px;}
.top_section_contact .inner .frame2 .contact_form dl dd select{width:100%; font-size:16px; background:#fff; padding:22px 10px; border-radius:5px;}
.top_section_contact .inner .frame2 .contact_form .inner{display:flex; gap:24px;}
.top_section_contact .inner .frame2 .contact_form .inner dl{width:50%;}
.top_section_contact .inner .frame2 .contact_form .checkbox{color:#fff;}
.top_section_contact .inner .frame2 .contact_form .submit input{background:#000; text-align:center; font-size:16px; color:#fff; border-radius:5px; display:block; width:100%; padding:15px 0;}
.top_section_contact .inner .frame1 .text p br.sp{display:block;}
@media screen and (max-width:1194px){
	.top_section_contact{padding:70px 5vw 80px 5vw;}
}
@media screen and (max-width:1000px){
	.top_section_contact .inner{flex-direction:column;}
}
@media screen and (max-width:630px){
	.top_section_contact .inner .frame2 .contact_form{width:100%;}
	.top_section_contact .inner .frame2 .contact_form .inner dl{width:100%;}
	.top_section_contact .inner .frame2 .contact_form .checkbox{text-align:center;}
	.top_section_contact .inner .frame2 .contact_form .submit input{font-size:20px;}
	.top_section_contact .inner .frame1{width:100%;}
	.top_section_contact .inner .frame1 .text p br.sp{display:none;}
}

/*フッター1*/
.top_section_contact2{background:url(img/top_section_contact2_bg.jpg) no-repeat center center; background-size:cover; padding:125px 0; position:relative; overflow:hidden;}
.top_section_contact2 .inner{width:100%; max-width:950px; height:auto; display:flex; margin:0 auto 0 auto; position:relative; z-index:1; gap:64px;}
.top_section_contact2 .inner div{width:50%;}
.top_section_contact2 .inner .tel a{display:flex; flex-direction:column; justify-content:center; align-items:center; gap:20px; width:100%; padding:40px 0; background:#222222; border:1px solid #000; border-radius:5px;}
.top_section_contact2 .inner .tel a .label{font-size:18px; font-weight:500; color:#fff;}
.top_section_contact2 .inner .tel a .tel_number{font-size:30px; font-weight:500; color:#fff; background:url(img/tel_icon.svg) no-repeat center left; padding:0 0 3px 46px;}
.top_section_contact2 .inner .mail a{display:flex; flex-direction:column; justify-content:center; align-items:center; gap:20px; width:100%; padding:40px 0;background:#F16529; border:1px solid #F16529; border-radius:5px;}
.top_section_contact2 .inner .mail a .label{font-size:18px; font-weight:500; color:#fff;}
.top_section_contact2 .inner .mail a .mail_address{font-size:30px; font-weight:500; color:#fff; background:url(img/mail_icon.svg) no-repeat center left; padding:0 0 3px 49px;}
@media screen and (max-width:1000px){
	.top_section_contact2{padding:65px 5vw;}
	.top_section_contact2 .inner{flex-direction:column; align-items:center; gap:20px;}
	.top_section_contact2 .inner div{width:80%;}
}
@media screen and (max-width:600px){
	.top_section_contact2 .inner div{width:100%;}
	.top_section_contact2 .inner .mail a .label{font-size:14px;}
	.top_section_contact2 .inner .mail a .mail_address{font-size:20px;}
	.top_section_contact2 .inner .tel a .label{font-size:14px;}
	.top_section_contact2 .inner .tel a .tel_number{font-size:24px;}
}

/*フッター2*/
.footer{background:#222222; padding:80px; display:flex; flex-direction:column; gap:35px;}
.footer .footer_inner{display:flex; justify-content:space-between;}
.footer .footer_inner:first-child{padding-bottom:35px; border-bottom:1px solid #fff;}
.footer .footer_inner a{color:#fff;}
.footer .footer_inner .footer_nav{display:flex; flex-direction:column; gap:17px;}
.footer .footer_inner .footer_nav .footer_nav_inner ul{display:flex; gap:17px; justify-content:right;}
.footer .footer_inner .footer_nav .footer_nav_inner:first-child ul li a{font-size:16px;}
.footer .footer_inner .footer_nav .footer_nav_inner:last-child ul li a{font-size:14px;}
.footer .footer_inner p{font-size:14px; font-weight:400; color:#fff;}
.footer .footer_inner .footer_nav2 ul{display:flex; justify-content:right; gap:17px;}
.footer .footer_inner .footer_nav2 ul li a{font-size:14px; font-weight:400; text-decoration:underline;}
@media screen and (max-width:850px){
	.footer{padding:12vw 5vw 12vw 5vw;}
	.footer .footer_inner{flex-direction:column;	align-items:start; gap:40px;}
	.footer .footer_inner:last-child{flex-direction:column-reverse; align-items:center;}
	.footer .footer_inner .footer_nav .footer_nav_inner ul{justify-content:left;}
	.footer .footer_inner .footer_nav{display:flex; justify-content:space-between; flex-direction:row; gap:17px; width:100%;}
	.footer .footer_inner .footer_nav .footer_nav_inner ul{flex-direction:column;}
	.footer .footer_inner .footer_nav .footer_nav_inner:last-child ul li a{font-size:12px;}
	.footer .footer_inner .footer_nav2 ul li a{font-size:12px; text-decoration:none; color:#A6A6A6;}
	.footer .footer_inner p{font-size:12px; color:#A6A6A6;}
}

/*一時非表示*/
.top_section_works .inner {display:none;}