/* CSS Document */

/* common -----------------------------*/
.catalog{
    background-color: #F2F5F2;
    padding-bottom: 200px;
}
.catalog_ttl_eng{
    font-size: 1.8rem;
    color: #4387B2;
    text-align: center;
    width: 100%;
}
h2{
    font-size: 2.5rem;
    text-align: center;
    width: 100%;
}

footer{
  margin-top: 0;
}
/* common End -------------------------*/

/* catalog_top -----------------------------*/
.catalog_top{
  padding-bottom: 60px;
}

.catalog_main_img{
  position: relative;
  margin-bottom: 50px;
}
.catalog_main_img img{
  vertical-align: top;
}
.catalog_top_ttl{
  position: absolute;
  top: 5%;
  width: 100%;
}
.catalog_top_ttl h1{
  text-align: center;
  color: #646464;
  font-size: 2.3rem;
  font-size: 6.13vw;
  letter-spacing: 0.02em;
}
.catalog_top_ttl h1 > small{
  font-size: 1.9rem;
  font-size: 5.6vw;
  display: block;
  color: #646464;
  letter-spacing: 0.1em;
}
.catalog_top_ttl > p{
  width: 222px;
  height: 36px;
  border: #FFFFFF 1px solid;
  border-radius: 18px;
  margin: 0 auto;
  font-size: 1.3rem;
  text-align: center;
  line-height: 2.7;
  color: #FFFFFF;
  margin-top: 20px;
}
.catalog_entry_btn{
  text-align: center;
}
.catalog_entry_btn > span{
  font-size: 1.3rem;
  padding-bottom: 10px;
  display: block;
}
.catalog_entry_btn > a{
  width: 288px;
  height: 57px;
  display: block;
  margin: auto;
  border-radius: 28.5px;
  background-color: #4387B2;
  color: #FFFFFF;
  font-size: 1.3rem;
  line-height: 4.3;
}
@media screen and (min-width: 768px) {
  .catalog{
    padding-left: 6.66%;
    padding-right: 6.66%;
  }
  .catalog_top{
    max-width: 1000px;
    margin: 0 auto;
  }
  .catalog_top_ttl{
    position: relative;
    top: auto;
    padding-top: 40px;
    padding-bottom: 60px;
  }
  .catalog_top_ttl h1{
    font-size: 2.7rem;
  }
  .catalog_top_ttl h1 > small{
    font-size: 2.2rem;
  }
  .catalog_top_ttl > p{
    color: #3B3B3B;
    border-color: #3B3B3B;
  }
  .catalog_main_img > .svg{
    top: initial;
    bottom: 0;
  }
}

/* catalog_top End -------------------------*/



/* catalog_topics -----------------------------*/
.catalog_topics{
    padding-left: 4%;
    padding-right: 4%;
}
.catalog_topics_list{
}
.catalog_topics_list > dt{
    font-size: 2.4rem;
    display: flex;
    align-items: center;
    text-indent: 5px;
	background-color:rgba(67,135,178,.10);
	border-bottom: #4387B2 1px solid;
}
.catalog_topics_list > dt > span{
    display: inline-block;
    width: 51px;
    height: 47px;
    background-image: url("/img/catalog_2024/icon_topics.svg");
    background-size: 100% auto;
    color: #FFFFFF;
    text-indent: 15px;
}
.catalog_topics_list > dd{
    padding-bottom: 25px;
}
.topics_txt{
    width: 78.55%;
    max-width: 290px;
    margin: 0 auto;
    font-size: 1.6rem;
}
.topics_txt > small{
    font-size: 1.3rem;
}
.topic_2{
	display: flex;
	padding-top: 50px;
	padding-bottom: 30px;
}
.topic_2 > li{
	position: relative;
	z-index: 1;
}
.topic_2_ttl{
	text-align: center;
	font-size: 1.7rem;
	border-bottom: 1px solid;
	width: 80%;
	margin: 0 auto;
	letter-spacing: 1.5px;
}
.konoha > .topic_2_ttl{
	color: #4387B2;
	border-collapse: #4387B2;
}
.asasora > .topic_2_ttl{
	color: #9F6A9D;
	border-collapse: #9F6A9D
}
.topic_2_txt{
	font-size: 1.2rem;
	text-align: center;
	padding-top: 10px;
    padding-bottom: 10px;
}
.konoha > .topic_2_txt{
	color: #4387B2;
}
.asasora > .topic_2_txt{
	color: #9F6A9D;
}
.topic_2_tag{
	text-align: center;
}
.topic_2_tag > span{
	display: inline-block;
	height: 35px;
	border-radius: 25px;
	color: #fff;
	padding: 0 10px;
    line-height: 3.1;
	margin: 0 5px;
	font-size: 1.1rem;
}
.konoha > .topic_2_tag > span{
	background-color: #4387B2;
}
.asasora .topic_2_tag > span{
	background-color: #9F6A9D;
}
.topic3_wrap_1{
	z-index: 2;
}
.topic3_wrap_2{
	position: relative;
	z-index: 1;
}
.topic3_wrap_3{
	z-index: 0;
}
@media screen and (min-width: 768px) {
    .catalog_topics{
        max-width: 500px;
        margin: 0 auto;
    }
	.topic_2{
		padding-top: 80px;
	}
}
/* catalog_topics End -------------------------*/


/* catalog_feature -----------------------------*/
.catalog_feature{
    padding-top: 60px;
    max-width: 800px;
    margin: 0 auto;
}

.catalog_feature_inner{
}
.catalog_feature_list > dd{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    padding-bottom: 60px;
}
.catalog_feature_list > dd > span{
    position: absolute;
    width: 23px;
    height: 100px;
    left: 9.33%;
    top: -20px;
}
.catalog_feature_list > dd > h3{
    width: 80%;
    font-size: 2.3rem;
    color: #4387B2;
	  padding-top: 20px;
    padding-bottom: 20px;
}
.catalog_feature_list > dd > p{
    width: 80%;
    font-size: 1.6rem;
}

@media screen and (min-width: 768px) {
    .catalog_feature_list{
        display: flex;
        flex-wrap: wrap;
        padding-bottom: 60px;
    }
    .flex_rv{
        flex-direction: row-reverse;
    }
    .catalog_feature_list > dt{
        width: 52%;
    }
    .catalog_feature_list > dd{
        width: 48%;
        padding-bottom: 0;
        align-content: center;
    }
    .catalog_feature_list > dd > span{
        position: relative;
        width: 76%;
        height: auto;
        left: auto;
        right: 32%;
    }
    .catalog_feature_list.flex_rv > dd> span{
        right: auto;
        left: 8%;
    }
    .catalog_feature_list > dd > h3{
        padding-bottom: 15px;
    }
}
/* catalog_feature End -------------------------*/


/* catalog_schedule -----------------------------*/
.catalog_schedule{
    padding-left: 4%;
    padding-right: 4%;
}
.catalog_schedule_inner{
    border-radius: 10px;
    background-color: #FFFFFF;
    padding-top: 60px;
}
.catalog_schedule_ttl{
    border-bottom: #4387B2 1px dashed;
    width: 86.95%;
    margin: 0 auto;
    padding-bottom: 30px;
}
.catalog_schedule_list{
    width: 81.15%;
    margin: 0 auto;
    padding-top: 40px;
}
.catalog_schedule_list li{
    font-size: 1.6rem;
    padding-bottom: 30px;
}

@media screen and (min-width: 768px) {
    .catalog_schedule_inner{
        max-width: 800px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        padding-top: 50xp;
        padding-bottom: 50px;
    }
    .catalog_schedule_ttl{
        border-bottom: none;
        border-right: #4387B2 1px dashed;
        width: 44%;
        display: flex;
        align-content: center;
        flex-wrap: wrap;
        align-content: center;
    }
    .catalog_schedule_list{
        width: 46%;
    }
}
/* catalog_schedule End -------------------------*/


/* catalog_form -----------------------------*/
.catalog_form{
    padding-top: 60px;
	padding-bottom: 60px;
	padding-left: 4%;
	padding-right: 4%;
    max-width: 500px;
    margin: 0 auto;
}
.catalog_form_ttl{}
.catalog_icon{
    width: 44px;
    margin: 0 auto;
}
.catalog_form_ttl > h2{
    font-size: 2.5rem;
}
.catalog_form_subttl{
    width: 222px;
    height: 36px;
    border: #3B3B3B 1px solid;
    border-radius: 18px;
    margin: 0 auto;
    font-size: 1.3rem;
    text-align: center;
    line-height: 2.7;
    color: #3B3B3B;
    margin-top: 20px;
    margin-bottom: 40px;
}
.catalog_2033_link{
    text-align: center;
    padding-top: 40px;
    padding-bottom: 50px;
}
.catalog_2033_link > a{
    color: #4387B2;
	text-decoration: underline #4387B2;
}
.memo{
    text-align: center;
}
.memo > span{
    color:#B90609;
}
.catalog_form  dl span{
    color:#B90609;
}
.catalog_form dl  dt{
    padding-bottom: 5px;
}
.catalog_form dl  dd{
    padding-bottom: 10px;
}
/* catalog_form End -------------------------*/

/* catalo_banner -----------------------------*/
.catalo_banner{
	padding-left: 4%;
	padding-right: 4%;
	padding-bottom: 60px;
}
.catalo_banner_list li{
	padding-bottom: 20px;
}
@media screen and (min-width: 768px) {
	.catalo_banner_list{
		max-width: 1000px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
	}
	.catalo_banner_list li{
		width: 48.5%;
	}
}
/* catalo_banner End -------------------------*/


/* catalog_instafeed -----------------------------*/
.catalog_instafeed{
	padding-left: 4%;
	padding-right: 4%;
}
.icon_insta{
	width: 45px;
	margin: 0 auto;
}
.catalog_instafeed h2{
	color: #4387B2;
	font-size: 1.8rem;
	padding-bottom: 40px;
}
.catalog_instafeed ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.catalog_instafeed ul li{
	width: 31.1%;
}
.catalog_instafeed ul li:nth-child(n + 7){
	display: none;
}
@media screen and (min-width: 768px) {
	.catalog_instafeed ul li{
		width: 15.4%;
	}
}
/* catalog_instafeed End -------------------------*/

/* catalog_thanks -------------------------*/
.catalog_thanks{
  padding-left: 6.66%;
  padding-right: 6.66%;
}
.catalog_thanks h1{
	font-size: 2rem;
	padding-top: 30px;
	padding-bottom: 30px;
	text-align: center;
	line-height: 1.8;
}
.catalog_thanks p{
	font-size: 1.4rem;
	text-align: center;
	line-height: 2;
	margin-bottom: 50px;
}


.catalog_xyl_banner_2023{
    max-width: 400px;
    margin: 0 auto;
    display: block;
    margin-bottom:10px;
}
@media screen and (min-width: 768px) {
	.catalog_thanks h1{
		font-size: 3rem;
		padding-top: 80px;
		padding-bottom: 80px;
	}
	
	.catalog_thanks p{
		font-size: 1.4rem;
	}
	.catalog_xyl_banner{
		max-width: 800px;
		margin: 0 auto;
		display: block;
	}

}
/* catalog_thanks End -------------------------*/
