@charset "utf-8";

/*** Sub Common ***/
.sub_wrap{margin-top: 99px !important;}
.sv_sec {position: relative; display: flex; align-items:center; width: 100%; height: 490px; box-sizing: border-box; overflow: hidden; background: url(../../images/sub/sv00.jpg) center no-repeat; text-align: center;}
.sv02 {background:url(../../images/sub/sv02.jpg) center no-repeat ; }
.sv03 {background:url(../../images/sub/sv03.jpg) center no-repeat ; }
.sv04 {background:url(../../images/sub/sv04.jpg) center no-repeat ; }
.sv05 {background:url(../../images/sub/sv05.jpg) center no-repeat ; } 
.sv_sec .tbx{flex:1; padding-bottom: 76px;}
.sv_sec .tbx h3{font-size: 5.5rem; font-size: max(min(5.5rem), 20px);line-height: 1; color: #fff; font-weight: 700; text-shadow:3px 3px 3px rgba(0,0,0,0.2); margin-bottom: 22px; letter-spacing: -0.03em}
.sv_sec .tbx h3:first-latter{text-transform:uppercase}
.sv_sec .tbx p{font-size: 1.8rem; font-size: max(min(1.8rem), 14px); color: #fff; line-height: 28px; font-weight: 500; text-shadow:3px 3px 3px rgba(0,0,0,0.2); letter-spacing: -0.03em;}

/* lnb */
.lnb_box{margin-top: -75px !important; position: relative; z-index: 100; }
.lnb_box .lnb .dep3{display: none;}
.lnb_box .lnb .dep2{display: flex; flex-wrap:wrap;}
.lnb_box .lnb .dep2 > li{flex:1 1 25%; /* width: 25%; */ text-align: center; box-sizing: border-box; border-right: 1px solid rgba(221,221,221,0.8); border-bottom: 1px solid #ddd;}
.lnb_box .lnb .dep2 > li:last-child{border-right: 0;}
.lnb_box .lnb .dep2 > li a{display: flex; align-items:center; height:75px;position: relative; font-size: 1.8em; font-size: max(min(1.8rem), 13px); font-weight: 500; color: #333; line-height: 75px; transition:.3s; letter-spacing: -0.02em; background: rgba(255,255,255,0.8); letter-spacing: -0.03em}
.lnb_box .lnb .dep2 > li.current a,
.lnb_box .lnb .dep2 > li a:hover{color: #fff; font-weight: 500; background: rgba(51,73,184,0.8); font-weight: 700;}
.lnb_box .lnb .dep2 > li span{line-height: 1.5; flex:1}

.sub_layout .tit_box{text-align: center; margin-top: 100px; margin-bottom: 90px;}
.sub_layout .tit_box .s_title{position: relative; font-size: 5rem; font-size: max(min(5rem), 20px);  line-height: 1; color: #111; font-weight: 700; padding-top: 15px; letter-spacing: -0.03em} 
.sub_layout .tit_box .s_title:before,
.sub_layout .tit_box .s_title:after{position: absolute; content: ''; width: 30px; height: 5px; background: #3349b8; left: 50%; margin-left: -15px; top: 0;}
.sub_layout .tit_box .s_title:after{width: 15px; background: #d10d00;}

/* s101 */
.s01 {padding-bottom: 180px;}
.s11{ overflow: hidden; padding-bottom: 172px;}
.s11 .arti1{align-items:flex-start; height: 542px;}
.s11 .arti1 .lbx{flex:1}
.s11 .arti1 .lbx h3{font-size: 3.5rem; font-size: max(min(3.5rem), 18px);  line-height: 1; color: #111; font-weight: 700; letter-spacing: -0.03em; margin-bottom: 27px; }
.s11 .arti1 .lbx p{font-size: 1.8rem;  font-size: max(min(1.8rem), 14px); line-height: 28px; color: #666; margin-bottom: 28px; font-weight: 500; letter-spacing: -0.03em; margin-left: 1px;}
.s11 .arti1 .lbx b{display: block; font-size: 2rem;  font-size: max(min(2rem), 15px); font-weight: 700; color: #333; letter-spacing: -0.03em; padding-top: 3px;}
.s11 .arti1 .rbx{position: relative; width: 29.54%;}
.s11 .arti1 .rbx img{box-shadow:10px 10px 10px rgba(0,0,0,0.07)}
.s11 .arti1 .rbx:before{position: absolute; content:''; width: 450px; height: 448px; background: url(../../images/sub/s11_2.jpg) left top; right: -302px; bottom: -180px; z-index: -1;}

/* s102 */
.s12 .arti1{background: url(../../images/sub/s12_1.jpg) center no-repeat; background-size: cover; display: flex; align-items:center; height: 330px; text-align: center; box-shadow:10px 10px 20px rgba(0,0,0,0.1)}
.s12 .arti1 .figure{flex:1; text-align: center;}
.s12 .arti1 h3{font-size: 3.5rem; font-size: max(min(3.5rem), 18px); line-height: 1; color: #fff; font-weight: 700; letter-spacing: -0.03em;} 	
.history{padding-top: 74px;}
.history dl{display: flex; } 
.history dl dt{position: relative; width: 239px; box-sizing: border-box; padding-left: 40px; }
.history dl dt:before{position: absolute; content:''; width: 93px; height: 1px; background: #666; right: 1px; top: 16px;}
.history dl dt:after{position: absolute; content:''; width: 12px; height: 12px; box-sizing: border-box; border: 3px solid #3349b8; background: #fff; border-radius: 50%; right: -4px; top: 11px;}
.history dl dt h4{font-size: 3.5rem; font-size: max(min(3.5rem), 18px); line-height: 1; font-weight: 700; color: #3349b8;}
.history dl dt h4:before{position: absolute; content:''; width: 1px; height: 100%; background: #ddd; right: 1px; top: 12px;}
.history dl:last-child dt h4:after{position: absolute; content:''; width: 6px; height: 6px; background: #29385f; border-radius: 50%; right: -1px; bottom:-10px;}
.history dl dd {flex:1; padding-bottom: 62px; margin-top: -2px;}
.history dl:last-child dd{padding-bottom: 73px;} 
.history dl dd ul > li{display: flex; font-size: 1.8rem; font-size: max(min(1.8rem), 13px); line-height: 38px; color: #666; font-weight: 500; letter-spacing: -0.03em;}
.history dl dd ul > li span{color: #333; font-weight: 700; width: 176px; text-align: center; box-sizing: border-box; padding-left: 24px;}
.history dl dd ul > li p{flex:1	;}

/* s103 */
.s13 img{width: auto;}
.s13 .arti1 ol {float: right; position: relative; z-index: 10;}
.s13 .arti1 ol > li {float: left; width: 60px; height: 60px; box-sizing: border-box; border: 1px solid #ddd; border-radius: 50%; display: flex; align-items:center; margin-left: 5px;}
.s13 .arti1 ol > li > a{flex:1; text-align: center;	}
.s13 .arti1 ol > li > a img{transition:.3s;}
.s13 .arti1 ol > li:first-child > a img{padding-top: 2px;}
.s13 .arti1 ol > li:hover > a img{transform:rotate(15deg)}
.s13 .arti2{position: relative; padding-top: 90px; margin-top: -60px;}
.s13 .arti2 iframe{width: 100%; height: 480px; box-shadow:10px 10px 10px rgba(0,0,0,0.06)}
.s13 .arti2 .tbx{position: absolute; left: 40px; top: 0; box-sizing: border-box; width: 260px; height: 260px; background: url(../../images/sub/s13_3.jpg) left top; display: flex; align-items:center; text-align: center;}
.s13 .arti2 .tbx .box{flex:1; }
.s13 .arti2 .tbx .box h4{font-size: 2.8rem; font-size: max(min(2.8rem), 18px); color: #fff; font-weight: 700; margin-top: 18px;}
.s13 .arti3{margin-top: 37px;}
.s13 .arti3 ul li{display: flex; font-size: 1.8rem;  font-size: max(min(1.8rem), 14px); line-height: 38px; color: #666; font-weight: 500; letter-spacing: -0.03em;}
.s13 .arti3 ul li span{color: #333; font-weight: 700; width: 153px; box-sizing: border-box; padding-left: 39px; }
.s13 .arti3 ul li p{display: flex;}

/* s104 */
.s14 .arti1 ul:first-child{margin-top: -4px;}
.s14 .arti1 ul > li{position: relative; padding-left: 16px; font-size: 2rem; font-size: max(min(2rem), 16px); line-height: 40px; color: #333; font-weight: 600; letter-spacing: -0.03em;}
.s14 .arti1 ul > li:before{position: absolute; content:''; width: 5px; height: 5px; border-radius: 50%; background: #3349b8; left: 0; top: 17px;}
.gray_box{background: #f6f6f6; height: 122px; align-items:center; margin-top: 7px;}
.gray_box ol {position: relative; padding-left: 40px; box-sizing: border-box; width: 33.33%; }
.gray_box ol:not(:last-child):after{position: absolute; content:''; width: 1px; height: 42px; background: #ddd; right: -1px; top: 8px; }
.gray_box ol > li{font-size: 1.8rem; font-size: max(min(1.8rem), 14px); font-weight: 500; letter-spacing: -0.03em;}
.s14 .arti1 ul.ul2{margin-top: 14px; }
.gray_box2{height: 94px;}
.s14 .arti2 ul{display: flex; margin-top: 60px;}
.s14 .arti2 ul li{flex:1; margin-right: 20px;}
.s14 .arti2 ul li:last-child{margin-right: 0;}

