@charset "UTF-8";
/****************************************
common parts
*****************************************/
/*sec*/
.sec{
  padding: 160px 0;
}
@media screen and (max-width: 768px) {
  .sec{
    padding: 80px 0;
  }
}
.sec_inner {
	margin: 0 auto;
	width:960px;
}
@media screen and (max-width: 768px) {
	.sec_inner{
		min-width:auto;
		width: 90%;
	}
}
.sec_title{
  line-height: 1.4;
  text-align: center;
}
.sec_title .sub{
  color: #6AC61F;
  display: inline-block;
  font-size: 24px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .sec_title .sub{
    font-size: 16px;
  }
}
.sec_title .sub:before,
.sec_title .sub:after{
  background: #6AC61F;
  content: '';
  display: block;
  height: 6px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  width: 6px;
}
.sec_title .sub:before{
  left: -20px;
}
.sec_title .sub:after{
  right: -20px;
}
.sec_title .main{
  font-size: 36px;
}
@media screen and (max-width: 768px) {
  .sec_title .main{
    font-size: 24px;
  }
}
.sec_title .main strong{
  color: #6AC61F;
}
.sec_read{
  line-height: 2;
  margin-top: 20px;
  text-align: center;
}

/**/
#topcontrol{
	background: #222;
	border-radius: 99em;
	color: #fff;
	height: 40px;
	text-align: center;
	width: 40px;
}
#topcontrol .icon{
	padding-top: 8px;
}
/****************************************
header
*****************************************/
.header{
  background: #fff;
	display: flex;
  justify-content: space-between;
  padding: 20px 40px;
  position: sticky;
  top: 0;
  z-index: 99;
}
@media screen and (min-width:769px){
  .header{
    min-width: 960px;
  }
}
@media screen and (max-width:768px){
	.header{
    padding: 10px 20px;
	}
}
.header_logo{
  align-items: center;
  display: flex;
}
.header_logo img{
  height: 50px;
}
@media screen and (max-width:768px){
	.header_logo img{
    height: 30px;
	}
}
.header_btn{
  align-items: center;
  background: #6AC61F;
  border-radius: 99em;
  color: #fff;
  display: flex;
  font-size: 24px;
  font-weight: 700;
  padding: 10px 30px;
}
@media screen and (max-width:768px){
  .header_btn{
    font-size: 12px;
    line-height: 1.2;
    padding: 10px;
    text-align: center;
  }
}
.header_btn_icon{
  height: 25px;
  margin-left: 10px;
}

/****************************************
footer
*****************************************/
.footer{
  background: url("/img/lp/2025/footer_bg.jpg") no-repeat center center / cover;
  padding: 80px 0;
	text-align: center;
}
@media screen and (max-width:768px){
  .footer{
    background: url("/img/lp/2025/footer_bg_sp.jpg") no-repeat center center / cover;
  }
}
.footer_logo{
  height: 60px;
}
@media screen and (max-width:768px){
  .footer_logo{
    height: 30px;
  }
}
.copyright{
  font-size: 16px;
}
/****************************************
cta
*****************************************/
.cta{
  background: url("/img/lp/2025/cta_bg.jpg") no-repeat center center / cover;
  color: #fff;
	text-align: center;
}
.cta_title{
  font-size: 36px;
}
@media screen and (max-width:768px){
  .cta_title{
    font-size: 30px;
  }
}
.cta_text{
  font-weight: 700;
}
@media screen and (max-width:768px){

}
.cta_btn{
  align-items: center;
  background: #FFF100;
  border-radius: 99em;
  color: #0F9D58;
  display: flex;
  font-size: 24px;
  font-weight: 700;
  justify-content: center;
  margin: 50px auto 0;
  max-width: 350px;
  padding: 10px 30px;
}
@media screen and (max-width:768px){
  .cta_btn{
    padding: 10px;
  }
}
.cta_btn_icon{
  height: 25px;
  margin-left: 10px;
}
/****************************************
kv
*****************************************/
.fv{
  background: url("/img/lp/2025/fv_bg.jpg") no-repeat center center / cover;
  padding: 60px 0;
	position: relative;
}
@media screen and (max-width:768px){
  .fv{
    background: url("/img/lp/2025/fv_bg_sp.jpg") no-repeat center center / cover;
    padding: 40px 0;
  }
}
.fv_cnt{
  margin: 0 auto;
  width: 80%;
}
.fv_cnt_inner{
  width: 50%;
}
@media screen and (max-width:768px){
  .fv_cnt_inner{
    width: 100%;
  }
}
.fv_title{
  color: #6AC61F;
  font-size: clamp(1.5rem, 1.227rem + 1.17vw, 2.625rem);
}
@media screen and (max-width:768px){
  .fv_title{
    font-size: 20px;
    text-align: center;
  }
}
.fv_title div{
  background: #fff;
  border-radius: 10px;
  display: inline-block;
  padding: 10px;
}
@media screen and (max-width:768px){
  .fv_title div{
    background: rgba(255,255,255,0.9);
  }
}
.fv_title div + div{
  margin-top: 10px;
}
.fv_text{
  color: #fff;
  font-size: clamp(1rem, 0.879rem + 0.52vw, 1.5rem);
  font-weight: 700;
  margin-top: 20px;
}
@media screen and (max-width:768px){
  .fv_text{
    text-align: center;
  }
}
.fv_badge{
  display: flex;
  gap:20px;
  justify-content: space-between;
  margin-top: 20px;
}
.fv_badge div{
  flex-basis: 172px;
}
.fv_badge img{
  width: 100%;
}
/****************************************
know
*****************************************/
.know{
  background: url("/img/lp/2025/know_bg.jpg") no-repeat center center / cover;
}
@media screen and (max-width:768px){
  .know{
    background: url("/img/lp/2025/know_bg_sp.jpg") no-repeat center center / cover;
  }
}
.know_item{
  display: flex;
  gap:40px;
  justify-content: space-between;
}
@media screen and (max-width:768px){
  .know_item{
    flex-direction: column;
    gap:20px;
  }
}
.know_item_img{
  flex-basis: 280px;
}
@media screen and (max-width:768px){
  .know_item_img{
    flex-basis: auto;
  }
}
.know_item_img img{
  width: 100%;
}
.know_item_cnt{
  flex-basis: 520px
}
@media screen and (max-width:768px){
  .know_item_cnt{
    flex-basis: auto;
  }
}
.know_item_text{
  color: #666;
  font-size: 18px;
}
@media screen and (max-width:768px){
  .know_item_text{
    font-size: 14px;
  }
}
.know_item_title{
  color: #6AC61F;
  font-size: 30px;
  margin-top: 30px;
}
@media screen and (max-width:768px){
  .know_item_title{
    font-size: 20px;
    margin-top: 10px;
  }
}
.know_item_list{
  display: flex;
  flex-direction: column;
  font-weight: 700;
  gap:10px;
  margin-top: 30px;
}
@media screen and (max-width:768px){
  .know_item_list{
    margin-top: 10px;
  }
}
.know_item_list li{
  padding-left: 30px;
  position: relative;
}
.know_item_list li:before{
  background: #6AC61F;
  content: '';
  display: block;
  height: 10px;
  left: 0;
  position: absolute;
  top: 12px;
  transform: rotate(45deg);
  width: 10px;
}
@media screen and (max-width:768px){
  .know_item_list li:before{
    top: 8px;
  }
}
/****************************************
おすすめ
*****************************************/
.reco{
  background: url("/img/lp/2025/reco_bg.jpg") no-repeat center center / cover;
}
.reco .sec_title .sub{
  color: #fff;
}
.reco .sec_title .sub:before,
.reco .sec_title .sub:after{
  background: #fff;
}
.reco .sec_title .main{
  color: #fff;
}
.reco .sec_read{
  color: #fff;
  font-weight: 700;
}
.reco_items{
  display: flex;
  gap:40px;
}
@media screen and (max-width:768px){
  .reco_items{
    flex-direction: column;
  }
}
.reco_item{
  background: #fff;
  border-radius: 10px;
  box-shadow: 3px 3px 6px 0px rgba(27,57,2,0.6);
  padding: 20px;
  width: calc( (100% - 80px) / 3 );
}
@media screen and (max-width:768px){
  .reco_item{
    width: 100%;
  }
}
.reco_item_label{
  background: #6AC61F;
  border-radius: 99em;
  color: #fff;
  display: inline-block;
  font-size: 24px;
  font-weight: 700;
  padding: 2px 15px;
}
.reco_item_title{
  margin-top: 20px;
}
@media screen and (min-width:769px){
  .reco_item_title{
    min-height: 115px;
  }
}
@media screen and (max-width:768px){
  .reco_item_title{
    font-size: 20px;
  }
}
/****************************************
講師
*****************************************/
.koshi{
  background: url("/img/lp/2025/koshi_bg.jpg") no-repeat center center / cover;
}
@media screen and (max-width:768px){
  .koshi{
    background: url("/img/lp/2025/koshi_bg_sp.jpg") no-repeat center center / cover;
  }
}
.koshi_info{
  display: flex;
  gap:40px;
  justify-content: space-between;
  margin: 60px auto 0;
  xmax-width: 800px;
}
@media screen and (max-width:768px){
  .koshi_info{
    flex-direction: column;
    gap:20px;
    margin: 40px auto 0;
  }
}
.koshi_info_img{
  flex-basis: 23%;
  text-align: center;
}
@media screen and (max-width:768px){
  .koshi_info_img{
    flex-basis: auto;
  }
}
.koshi_info_img img{
  width: 100%;
}
@media screen and (max-width:768px){
  .koshi_info_img img{
    width: 50%;
  }
}
.koshi_info_cnt{
  flex-basis: 75%;
}
@media screen and (max-width:768px){
  .koshi_info_cnt{
    flex-basis: auto;
  }
}
.koshi_info_position{
  color: #666;
  font-size: 18px;
}
@media screen and (max-width:768px){
  .koshi_info_position{
    font-size: 14px;
  }
}
.koshi_info_name{
  color: #6AC61F;
  font-size: 30px;
  font-weight: 700;
  margin-top: 20px;
}
@media screen and (max-width:768px){
  .koshi_info_name{
    font-size: 24px;
    margin-top: 10px;
  }
}
.koshi_info_name small{
  font-size: .6em;
}
.koshi_info_outline{
  margin-top: 20px;
}
@media screen and (max-width:768px){
  .koshi_info_outline{
    margin-top: 10px;
  }
}
.shikaku_box{
  border: 2px solid #6AC61F;
  border-radius: 10px;
  margin: 100px auto 0;
  max-width: 600px;
  padding: 20px 40px;
}
@media screen and (max-width:768px){
  .shikaku_box{
    margin: 40px auto 0;
    padding: 20px;
  }
}
.shikaku_box_title{
  font-size: 24px;
  margin-bottom: 20px;
  text-align: center;
}
@media screen and (max-width:768px){
  .shikaku_box_title{
    font-size: 20px;
    margin-bottom: 10px;
  }
}
.shikaku_list{
  display: flex;
  flex-wrap: wrap;
  gap:10px 20px;
}
.shikaku_list li{
  padding-left: 20px;
  position: relative;
  width: calc( (100% - 20px) /2 );
}
.shikaku_list li:before{
  background: #6AC61F;
  content: '';
  display: block;
  height: 10px;
  left: 0;
  position: absolute;
  top: 12px;
  transform: rotate(45deg);
  width: 10px;
}
@media screen and (max-width:768px){
  .shikaku_list li:before{
    top: 10px;
  }
}
.msg_box{
  background: #EEE;
  border-radius: 10px;
  margin: 40px auto 0;
  max-width: 600px;
  padding: 20px 40px;
}
@media screen and (max-width:768px){
  .msg_box{
    padding: 20px;
  }
}
.msg_box_title{
  font-size: 24px;
  margin-bottom: 20px;
  text-align: center;
}
@media screen and (max-width:768px){
  .msg_box_title{
    font-size: 20px;
    margin-bottom: 10px;
  }
}
.msg_box p{
  line-height: 2;
}
/****************************************
jisseki
*****************************************/
.jisseki{
  background: url("/img/lp/2025/jisseki_bg.jpg") no-repeat center center / cover;
}
.jisseki .sec_title .sub{
  color: #fff;
}
.jisseki .sec_title .sub:before,
.jisseki .sec_title .sub:after{
  background: #fff;
}
.jisseki .sec_title .main{
  color: #fff;
}
.jisseki .sec_read{
  color: #fff;
  font-weight: 700;
}
.jisseki_items{
  display: flex;
  flex-direction: column;
  gap:20px;
}
.jisseki_item{
  background: #fff;
  border-radius: 10px;
  box-shadow: 3px 3px 6px 0px rgba(27,57,2,0.6);
  display: flex;
  justify-content: space-between;
  padding: 20px;
}
@media screen and (max-width:768px){
  .jisseki_item{
    flex-direction: column;
    gap:20px;
  }
}
.jisseki_item_img{
  flex-basis: 30%;
}
@media screen and (max-width:768px){
  .jisseki_item_img{
    flex-basis: auto;
  }
}
.jisseki_item_img img{
  display: block;
  width: 100%;
}
.jisseki_item_cnt{
  flex-basis: 65%;
}
@media screen and (max-width:768px){
  .jisseki_item_cnt{
    flex-basis: auto;
  }
}
.jisseki_item_cnt_title{
  color: #6AC61F;
  font-size: 26px;
  padding-left: 20px;
  position: relative;
}
@media screen and (max-width:768px){
  .jisseki_item_cnt_title{
    font-size: 20px;
  }
}
.jisseki_item_cnt_title:before{
  background: #6AC61F;
  content: '';
  display: block;
  height: 10px;
  left: 0;
  position: absolute;
  top: 18px;
  transform: rotate(45deg);
  width: 10px;
}
@media screen and (max-width:768px){
  .jisseki_item_cnt_title:before{
    top: 10px;
  }
}
.jisseki_item_cnt_text{
  margin-top: 10px;
}
/****************************************
voice
*****************************************/
.voice{
  background: url("/img/lp/2025/voice_bg.jpg") no-repeat center center / cover;
}
@media screen and (max-width:768px){
  .voice{
    background: url("/img/lp/2025/voice_bg_sp.jpg") no-repeat center center / cover;
  }
}
.voice_items{
  display: flex;
  flex-wrap: wrap;
  gap:40px;
}
.voice_item{
  background: #fff;
  border: 2px solid #6AC61F;
  border-radius: 10px;
  display: flex;
  gap:20px;
  padding: 40px;
  position: relative;
  width: calc( (100% - 40px) / 2 );
}
@media screen and (max-width:768px){
  .voice_item{
    padding: 40px 20px;
    width: 100%;
  }
}
.voice_item_label{
  background: #6AC61F;
  border-radius: 99em;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  left: 40px;
  padding: 5px 10px;
  position: absolute;
  top: 0;
  transform: translateY(-50%);
}
@media screen and (max-width:768px){
  .voice_item_label{
    left: 20px;
  }
}
.voice_item_icon img{
  height: 60px;
}
.voice_item_text{
  line-height: 2;
}
/****************************************
よくある質問
*****************************************/
.faq{
  background: url("/img/lp/2025/faq_bg.jpg") no-repeat center center / cover;
}
@media screen and (max-width:768px){
  .faq{
    background: url("/img/lp/2025/faq_bg_sp.jpg") no-repeat center center / cover;
  }
}
.faq .sec_inner{
  max-width: 800px;
}
.faq_items{
  display: flex;
  flex-direction: column;
  gap:20px;
}
.faq_item{
  background: #fff;
  border: 1px solid #6AC61F;
  border-radius: 10px;
  padding: 40px;
}
@media screen and (max-width:768px){
  .faq_item{
    padding: 20px;
  }
}
.faq_item_q,
.faq_item_a{
  display: flex;
}
.faq_item_icon{
  flex-basis: 8%;
}
@media screen and (max-width:768px){
  .faq_item_icon{
    flex-basis: 15%;
  }
}
.faq_item_icon img{
  height: 30px;
}
.faq_item_q_text,
.faq_item_a_text{
  flex-basis: 92%;
}
@media screen and (max-width:768px){
  .faq_item_q_text,
  .faq_item_a_text{
    flex-basis: 85%;
  }
}
/*q*/
.faq_item_q_text{
  color: #6AC61F;
  font-size: 24px;
  font-weight: 700;
}
@media screen and (max-width:768px){
  .faq_item_q_text{
    font-size: 20px;
  }
}
/*a*/
.faq_item_a{
  margin-top: 30px;
}
@media screen and (max-width:768px){
  .faq_item_a{
    margin-top: 20px;
  }
}
/****************************************
市民住まい講座
*****************************************/
.course{
  background: #F9F9F9;
}
.course_items{
  display: flex;
  flex-direction: column;
  gap:20px;
}
.course_item{
  background: #fff;
  border-radius: 10px;
  border: 2px solid #6AC61F;
  display: flex;
  padding: 40px;
}
@media screen and (max-width:768px){
  .course_item{
    flex-direction: column;
    gap:20px;
    padding: 20px;
  }
}
.course_item_left,
.course_item_right{
  flex-basis: 50%;
}
/*left*/
.course_item_date{
  background: #6AC61F;
  border-radius: 99em;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  padding: 2px 15px;
}
@media screen and (max-width:768px){
  .course_item_date{
    font-size: 14px;
  }
}
.course_item_title{
  color: #6AC61F;
  font-size: 24px;
  margin-top: 10px;
}
@media screen and (max-width:768px){
  .course_item_title{
    font-size: 20px;
  }
}
/*right*/
.course_item_right{
  display: flex;
  flex-direction: column;
  gap:30px;
}
