.sb_wrap, .sb_wrap *{ box-sizing:border-box; }
.sb_wrap{ max-width:100%; padding:0 !important; overflow:hidden; }
.sb_con{ width:100%; margin:0 auto; }
.btnArea{ display:none; }


#sb01{ padding:120px 20px 0; }
.sb01_ptwrap{ display:flex; flex-flow:row wrap; }
.sb01_tt{ max-width:900px; width:100%; margin:0 auto 100px; word-break:keep-all; text-align:center; }
.sb01_tt > h3{ font-family:'wmp'; font-size:60px; font-weight:500; color:#333; margin-bottom:10px; }
.sb01_tt > h3 > span{ color:#54a7c1; }
.sb01_tt > h4{ font-size:30px; font-weight:600; color:#666; margin-bottom:30px; }
.sb01_tt > p{ font-size:18px; font-weight:300; color:#333; line-height:1.7em; }


.sb01_pt.lf{ width:55%; display:flex; align-items:center; }
.sb01_txt{ padding-right:50px; }
.sb01_txt > h2{ font-family:'wmp'; font-size:50px; font-weight:500; color:#333; margin-bottom:20px; white-space:nowrap; word-break:keep-all; }
.sb01_txt > h2 > span{ color:#54a7c1; }
.sb01_txt > ul{ word-break:keep-all; }
.sb01_txt > ul > li{ display:flex; font-size:20px; font-weight:300; color:#555; }
.sb01_txt > ul > li > i{ min-width:20px; width:20px; height:20px; border-radius:0 7px 7px 7px; border:4px solid #54a7c1; line-height:29; margin:6px 10px 0 0; }
.sb01_txt > ul > li > p > b{ font-weight:600; /*color:#087ca1;*/ }
.sb01_txt > ul > li:not(:last-child){ margin-bottom:15px; }

.sb01_pt.rt{ width:45%; }
.sb01_img{ width:100%; padding-top:max(105%, 400px); background-color:#333; background-image:url(./img/01-01.jpg); background-position:center; background-size:cover; background-repeat:no-repeat; }

@media(max-width:900px){
	.sb01_txt > h2{ font-size:40px; }
}
@media(max-width:750px){
	.sb01_tt{ margin:0 auto 60px; }
	.sb01_tt > h3{ font-size:50px; }
	.sb01_tt > h4{ font-size:25px; margin-bottom:20px; }
	.sb01_tt > p{ font-size:16px; }

	.sb01_pt.lf{ width:100%; }
	.sb01_txt{ padding-right:0; padding-top:40px; }

	.sb01_pt.rt{ width:100%; order:-1; }
	.sb01_img{ padding-top:max(75%, 300px) }
}
@media(max-width:500px){
	.sb01_txt > ul > li{ font-size:16px; }
	.sb01_txt > ul > li > i{ min-width:16px; width:16px; height:16px; border-radius:0 5px 5px 5px; border:3px solid #54a7c1; line-height:24; margin:4px 7px 0 0; }
	.sb01_txt > ul > li:not(:last-child){ margin-bottom:10px; }
}



#sb02{ padding:0 20px 120px; }
.sb02_ptwrap{ display:flex; flex-flow:row wrap; }
.sb02_ptwrap:not(:last-child){ margin-bottom:80px; }

.sb02_pt.lf{ width:300px; }
.sb02_img{ width:100%; padding:4px; border-radius:100%; overflow:hidden;  }
.sb02_img{
	background:-webkit-linear-gradient(top, #15639e 0%, #1eaee3 100%);
	background:-moz-linear-gradient(top, #15639e 0%, #1eaee3 100%);
	background:linear-gradient(to bottom, #15639e 0%, #1eaee3 100%);
}
.sb02_img > div{ width:100%; padding-top:100%; border-radius:100%; background-color:#333; background-position:center; background-size:cover; background-repeat:no-repeat; }
.sb02_img > div.img_01{ background-image:url(./img/02-01.jpg); }
.sb02_img > div.img_02{ background-image:url(./img/02-02.jpg); }
.sb02_img > div.img_03{ background-image:url(./img/02-03.jpg); }

.sb02_pt.rt{ width:calc(100% - 300px); display:flex; align-items:center; }
.sb02_txt{ width:100%; padding-left:50px; word-break:keep-all; }
.sb02_txt > h3{ font-family:wmp; font-size:30px; font-weight:500; color:#333; margin-bottom:10px; }
.sb02_txt > p{ font-size:16px; font-weight:400; color:#777; line-height:1.7em; }

@media(max-width:750px){
	.sb02_pt.rt{ width:100%; }
	.sb02_txt{ padding-left:0; padding-top:40px; }
}



#sb03{ padding:80px 20px 150px; }

.sb03_tt{ max-width:700px; width:100%; margin:0 0 60px; word-break:keep-all; }
.sb03_tt > h2{ font-family:'wmp'; font-size:40px; font-weight:500; color:#333; margin-bottom:10px; }
.sb03_tt > h2 > span{ color:#54a7c1; }
.sb03_tt > p{ font-size:18px; font-weight:300; color:#333; line-height:1.7em; }

.sb03_txt{ display:flex; padding:30px 0; border-top:1px dotted #ccc; word-break:keep-all; }
.sb03_txt:last-child{ border-bottom:1px dotted #ccc; }
.sb03_txt > h3{ white-space:nowrap; min-width:250px; font-family:wmp; font-size:30px; font-weight:500; color:#54a7c1; }
.sb03_txt > p{ padding-left:40px; font-size:18px; font-weight:300; color:#444; line-height:1.7em; }

@media(max-width:750px){
	.sb03_tt > h2{ font-size:35px; }
	.sb03_tt > p{ font-size:16px; }

	.sb03_txt{ flex-flow:row wrap; }
	.sb03_txt > h3{ white-space:wrap; min-width:initial; font-size:25px; }
	.sb03_txt > p{ padding-left:0; padding-top:10px; font-size:16px; }
}