@charset "utf-8";
#navlink h2 span{line-height: 130%; padding: 0 0 5px;}

.tag_inner{margin: 0 auto; max-width: 1300px; padding: 0 50px;}
.bg_white{padding: 162px 0 85px; border-radius: 95px;}

h3.title{text-align: center; color: #2952A7; font-size: 16px; line-height: 157%;letter-spacing: 0.05em; font-family: poppins, sans-serif; font-weight: 600; font-style: normal; }
h3.title span{font-size: 36px; line-height: 157%;font-family: 'Noto-Sans-JP-Medium';letter-spacing: 0.05em; padding: 0 0 10px;display: inline-block;}

.flex_link{display: flex; justify-content: flex-start; flex-flow: wrap;}
.flex_link li{position: relative;z-index: 1; width: calc((100% - ( 26px * 3 )) / 4); margin-bottom: 10px;}
.flex_link li:not(:nth-of-type(4n)){margin-right: 26px;}
.flex_link li a{position: relative;display: block;width: 100%; border-radius: 1000px; padding: 17px 0; background: #2755B2; text-align: center;color: #fff; text-align: center; font-family: 'Noto-Sans-JP-Medium';line-height: 175%; }
.flex_link li a:before{content: ""; display: block; border-radius: 1000px; background: #84ADFF; width: 312px; height: 82px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); transition: 0.5s;opacity: 0; z-index: -1;}
.flex_link li a.thumb-hover:before{transition: 0.5s;opacity: 1;}
#pick_up{margin: 60px auto 0;}
#pick_up .pickwrap{background: #F1F5F8; padding: 51px 50px 71px; border-radius: 28px; }
#pick_up .pickwrap .tt_box{width: 592px;}
#pick_up .pickwrap h3 {width: 100%;font-family: poppins, sans-serif; font-weight: 600; font-style: normal;}
#pick_up .pickwrap h3 span{ font-family: 'Noto-Sans-JP-Medium'; font-size: 48px; background: linear-gradient(to right, #2852A7 10%, #299C9D 60%); -webkit-background-clip: text; -webkit-text-fill-color: transparent;line-height: 160%;display: inline-block;letter-spacing: 0.05em; text-align: left;}
#pick_up .flex_box{ display: flex; justify-content: space-between; align-items: flex-start;flex-wrap: wrap;}
#pick_up .flex_box:not(:last-child){padding: 0 0 50px; margin: 0 0 50px; border-bottom: 1px solid #CCCCCC;}
#pick_up .flex_box .tt_box p.text_1{font-size: 20px; line-height: 160%; letter-spacing: 0.05em; padding: 20px 0 0; font-family: 'Noto-Sans-JP-Medium';font-style: normal;}
#pick_up .flex_box .tt_box p.text_2{font-size: 16px; line-height: 200%; letter-spacing: 0.05em; padding: 25px 0 0;}

#pick_up .flex_box .img_box img{border-radius: 15px; }
#pick_up .flex_box a.explanation_link{background: #FFFFFF; width: 322px; margin: 0 auto; position: relative; font-size: 18px; color: #2952A7; font-family: 'Noto-Sans-JP-Medium';letter-spacing: 0.05em; line-height: 156%; padding: 18px 10px 18px 0; margin: 50px auto 0; text-align: center;}

#pick_up .flex_box a.explanation_link.thumb-hover span{ transition: all 0.5s ease-out; background-position: 90% 50%;}

.bg_white .empty { text-align: center;}

.content_flex{display: flex; flex-wrap: wrap; justify-content: flex-start; padding: 28px 0 0;}
.content_flex .content{margin-bottom: 36px;}
.content_flex .content:not(:nth-child(3n)){margin-right: 49px;}
.content_flex .content a.link_btn{ display: block; height: 100%; position: relative;}
.content_flex .content a.link_btn .box{position: relative;z-index: 1; width: 367px; height: 100%; background: #F1F5F8; position: relative; border-radius: 28px; padding: 30px 0 28px; }
.content_flex .content a.link_btn:before{content: ""; display: block; width: 387px; height: 104%; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); background: #D6D6D6; border-radius: 28px;transition: 0.5s;opacity: 0;}
.content_flex .content.thumb-hover a.link_btn:before{transition: 0.5s;opacity: 1;}
.content_flex .content a.link_btn .img_box{width: 266px; height: auto; margin: 0 auto; display: block;border-radius: 15px; overflow: hidden; }
.content_flex .content a.link_btn .img_box img{ width: 100%; height: auto;transition: 0.5s; }
.content_flex .content.thumb-hover a.link_btn .img_box img{ transition: 0.5s; transform: scale(1.3);}
.content_flex .content a.link_btn div.link_tt{padding: 0 23px 40px;}
.content_flex .content a.link_btn div.link_tt .title{padding: 20px 0 0; line-height: 175%; letter-spacing: 0.05em;font-family: 'Noto-Sans-JP-Medium';font-size: 18px;}
.content_flex .content a.link_btn div.link_tt .text{letter-spacing: 0.05em; padding: 24px 0 0; font-size: 14px; line-height: 200%;}
.content_flex .content a.link_btn div.link_tt span{position: absolute; bottom: 28px; right: 23px; font-size: 15px; color: #2952A7; font-family: 'Noto-Sans-JP-Bold'; letter-spacing: 0.05em; width: 182px;}
.content_flex .content a.link_btn div.link_tt span:before{content: ""; display: block; width: 7px; height: 7px; border-right: 2px solid #2952A7; border-bottom: 2px solid #2952A7; transform: translateY(-50%) rotateZ(-45deg); position: absolute; top: 50%; right: 0px;}

/*------------------------------------ #tag_1 ------------------------------------*/
#tag_1{padding: 126px 0px 0px 0px;}
#tag_2{padding: 40px 0px 0px 0px;}
#tag_3{padding: 40px 0px 0px 0px;}
#tag_4{padding: 40px 0px 0px 0px;}


@media only screen and (max-width: 768px) {
	
	#navlink ul{width: max-content;}
	.bg_white{padding: 30px 0 50px ; border-radius: 45px;}
	
	.tag_inner {padding: 0;}
	h3.title{font-size: 11px; text-align: left;}
	h3.title span{font-size: 18px;padding: 0 0 5px;}
	
	.flex_link{ flex-wrap: wrap}
	.flex_link li{width: 48%; height: auto; margin-bottom: 5%;}
	.flex_link li:not(:last-child){margin-right: 4%;}
	.flex_link li:nth-child(2n){margin-right: 0;}
	.flex_link li a{padding: 10px 0; width: 100%;font-size: 11px;}
	.flex_link li a:before{ width: 110%; height: 130%;}
	
	#pick_up{margin: 15px auto 0;}
	#pick_up .pickwrap{padding: 25px 25px 35px; border-radius: 14px;}
	#pick_up .pickwrap .tt_box{width: 100%; }
	#pick_up .pickwrap h3{order: 3;padding: 0 0 20px;}
	#pick_up .pickwrap h3 span{font-size: 31px; }
	
	#pick_up .flex_box{ flex-direction: column-reverse;}
	#pick_up .flex_box:not(:last-child){padding: 0 0 29px; margin: 0 0 29px; }
	#pick_up .flex_box .tt_box p.text_1{font-size: 16px; padding: 15px 0 0;}
	#pick_up .flex_box .tt_box p.text_2{font-size: 12px; padding: 15px 0 0;}
	
	#pick_up .flex_box a.explanation_link{width: 80%; font-size: 14px; padding: 12px 15px 12px 0; margin: 30px auto 0;}
	
	.content_flex{display: flex; flex-wrap: wrap; justify-content: center; padding: 14px 0 42px;}
	.content_flex .content{width: 220px;height: auto; margin: 0 17px 0 0; float: none;}
	.content_flex .content:not(:last-child){margin: 0 17px 0 0;}
	.content_flex .content a.link_btn{ display: block; height: 100%; position: relative;}

	.content_flex .content a.link_btn:before {width: 105%;height: 105%;}
	.content_flex .content a.link_btn .box{width: 100%; border-radius: 28px; padding: 15px 0 20%;}
	.content_flex .content a.link_btn .img_box{ width: 80%; border-radius: 10px;}
	.content_flex .content a.link_btn div.link_tt{padding: 0 16px;}
	.content_flex .content a.link_btn div.link_tt .title{padding: 10px 0 0; font-size: 14px;}
	.content_flex .content a.link_btn div.link_tt .text{ padding: 5px 0 0; font-size: 11px; }
	.content_flex .content a.link_btn div.link_tt span{bottom: 25px; right: 25px; font-size: 11px; width: 140px;}
	.content_flex .content a.link_btn div.link_tt span:before{width: 5px; height: 5px; border-right: 1px solid #2952A7; border-bottom: 1px solid #2952A7;}
	
	.slick-dotted.slick-slider{margin: 0px;}
	.slick-dotted.slick-slider .slick-list{padding: 15px 0 15px 25px;;}
	.slick-dotted.slick-slider .slick-list .slick-track{display: flex;}
	.content_flex .slick-dots{bottom: 0px; width: auto; left: 50%; transform: translateX(-50%);padding: 0 25px 0 0;}
	.content_flex li{width: auto; height: auto; margin: 0px 7px;}
	.content_flex li button{position: 0px; border-radius: 100px; background: #E3E3E3; width: 7px; height: 7px;}
	.content_flex li.slick-active button{background: #3A6DB8;}
	.content_flex li button::before{display: none;}
	/*------------------------------------ #tag_1 ------------------------------------*/
	#tag_1 h3,
	#tag_2 h3,
	#tag_3 h3{padding: 0 25px;}
	#tag_1{padding: 30px 0px 0px 0px;}
	#tag_2{padding: 35px 0px 0px 0px;}
	#tag_3{padding: 35px 0px 0px 0px;}
	#tag_4{padding: 35px 0px 0px 0px;}
}