@charset "utf-8";

/* greetings */
.greeting {display: flex; align-items: center; color:#242424;}

.greeting .img {margin-right:100px;}
.greeting .tit {font-size: 36px; font-weight:600; line-height: 1.39em; letter-spacing:-.04em; padding-top:50px;}
.greeting .tit span {position: relative;}
.greeting .tit span::before {content:""; background-color:#6a44e0; width:100%; height:13px; position: absolute; opacity: 20%; bottom:3px; left: 0px;}
.greeting .sub-cnt {color:#454545; font-size:16px; font-weight:400; line-height: 1.75em; letter-spacing:-.03em; margin-top:40px;}
.greeting .sub-cnt .ceo {color:#242424; font-size:16px; font-weight:400; line-height: 2.00em; letter-spacing:-.04em; margin-top:70px; padding-bottom:60px;}
.greeting .sub-cnt .ceo span {font-size:18px; font-weight:500; line-height: 1.39em; letter-spacing:0em;}

.enterprise {margin-top: 40px;}
.enterprise .list {display: flex; align-items: center; border-bottom:1px solid #dddddd; padding-bottom:60px;}
.enterprise .list:not(:first-child) {padding-top:60px;}
.enterprise .list .img {margin-right:50px;}
.enterprise .txt h2 {font-size:28px; font-weight:600; line-height: 0.93em; letter-spacing:-.01em; color:#242424;}
.enterprise .txt p {font-size:16px; font-weight:400; line-height: 1.88em; letter-spacing:-.01em; padding-top:25px; color:#454545;}

.indvidual .cnt {display:flex; align-items:center; padding-bottom:60px;}
.indvidual .cnt .txt .sub-tit {margin-bottom: 20px; font-size:28px; font-weight:600; line-height: 1.71em; letter-spacing:-.01em; color:#242424;}
.indvidual .cnt .txt p {font-size:16px; font-weight:400; line-height: 1.63em; letter-spacing:-.01em; color:#454545;}
.indvidual .cnt.sub-cnt02 {flex-direction:row-reverse;}
.indvidual .cnt.sub-cnt02 .txt {text-align: right;}
.indvidual .cnt .img {margin-right:80px;}
.indvidual .cnt.sub-cnt02 .img {margin-right:0; margin-left:80px;}
.indvidual .exam-wrap {margin-top:40px;}
.exam-wrap h3 {font-size:28px; font-weight:600; line-height: 1.71em; letter-spacing:-.01em; color:#242424;}
.exam-wrap .tbl {padding-top:25px;}
.exam-wrap .tbl table {width: 100%; border-top:2px solid #868686; border-spacing:0;}
.exam-wrap th {background-color: #f8f8f8; border-bottom:1px solid #dddddd; font-size:17px; font-weight:500; line-height: 3.53em; letter-spacing:-.01em; color:#242424;}
.exam-wrap td {padding:20px; border-bottom:1px solid #dddddd;}
.exam-wrap td span {color:blue;}
.exam-wrap td ul li {position: relative; padding-left:10px; font-size:16px; font-weight:400; line-height: 1.63em; letter-spacing:-.01em; color:#454545;}
.exam-wrap td ul li:not(:last-child)::before {content:'·'; position: absolute; left:0; top:0; font-size:16px;}
.exam-wrap td ul li span {color:blue;}

/* join-contact */
.promise {border-bottom:1px solid #dddddd; margin-bottom:150px; padding-bottom: 150px;}
.promise h2{text-align:center; font-size:48px; font-weight:700; line-height: 1.67em; letter-spacing:-.03em; color:#242424; margin-bottom:85px;}
.promise h2 .under {position: relative;}
.promise h2 .under::before{content:''; position: absolute; width:100%; height:10px; top: 40px; left:0; background-color: #efeca1;}
.promise h2 span{color:#6a44e0; position: relative;}
.promise h2 span::before{content:'·'; position: absolute; left: 12px; top: -45px; font-size:48px;}
.promise h2 .sp01::before{left: 8px;}
.promise h2 .sp02::before{left: 13px;}
.promise h2 .sp03::before{left: 10px;}
.promise .wrap {display:flex; align-items:center; background-color: #e9e3fa; margin-top:100px; max-width:900px; padding:20px; margin:0 auto; border-radius:450px;}
.promise .wrap .bg {display: flex; align-items: center; justify-content: center; background-color: #6a44e0; opacity:90%; width:300px; height:300px; border-radius:100%;}
.promise .wrap .bg p{color:#fff; font-size:34px; font-weight:600; line-height: 1.41em; letter-spacing:-.03em; text-align:center;}
.promise .wrap .bg.bg2{margin:0 -20px;}

.infra {margin-bottom:100px;margin-top:150px;}
.infra > h3 {font-size:65px; font-weight:700; line-height:1.23em; letter-spacing:-.03em; color:#242424; padding-bottom:138px; text-align:center;}
.infra .free {display:flex; padding-bottom:50px;}
.free .txt-wrap {width:43%; display:flex; justify-content:flex-end; align-items: center; padding-right:200px;}
.free .txt-wrap h4{font-size:48px; font-weight:700; line-height: 1.67em; letter-spacing:-.03em; color:#242424; padding-bottom:40px;}
.free .txt-wrap p{font-size:22px; font-weight:400; line-height: 1.59em; letter-spacing:-.03em; color:#606060;}
.infra-slider {flex:1 1 auto; min-width:0; width:1%; margin-right:-170px;}
.infra-slider .slick-list {margin:0 -14px;}
.infra-slider .slick-slide {padding:0 14px;}
.infra-slider .items .item .box {display:flex !important; align-items:center; flex-direction:column; justify-content: center;height:430px; text-align:center; background-color:#6a44e0; border-radius:30px;}
.infra-slider .item .box.box2 {background-color:#548ee3;}
.infra-slider .item .box.box3 {background-color:#5461e3;}
.infra-slider .item .box p {font-size:32px; font-weight:700; line-height: 1.34em; letter-spacing:-.03em; color:#fff; padding-top:30px;}

.sales{display:flex; background:linear-gradient(to right, #6a44e0, #b155eb); margin-top: 100px;}
.sales .contain {position: relative;}
.sales .cnt {display: flex; padding: 150px 0;}
.sales .txt-wrap{margin-right:190px; padding: 55px 0;}
.sales .inner h3{font-size:48px; font-weight:700; line-height: 1.67em; letter-spacing:-.03em; color:#fff;}
.sales .inner p{font-size:22px; font-weight:400; line-height: 1.59em; letter-spacing:-.03em; color:#fff; opacity:90%;}
.sales .inner p:nth-child(3){font-size:19px; font-weight:500; line-height: 4.21em; letter-spacing:-.03em; color:#fff; opacity:80%;}
.sales .sub-cnt {flex:1 1 auto; min-width:0; width:1%;}
.sales .sub-cnt .ani-list {position: relative; height:100%;}
.sales .sub-cnt .ani-list li {width:576px;}
.sales .sub-cnt .ani-list .cnt1 {animation:posTop 5s infinite; will-change:transform;}
.sales .sub-cnt .ani-list .cnt2 {transform:translate(33%, 100%); position:absolute; top:0; left:0; animation:posBottom 5s infinite; will-change:transform;}
.sales .sub-cnt .ani-list .box {display:flex; position: relative; align-items:center; text-align:center; background-color:#fff; height:180px; border-radius:30px; padding:30px 50px;}
.sales .sub-cnt .ani-list .box::before{content:''; position: absolute; background-image: url('../images/sub/check-icon.png'); background-size: contain; background-repeat: no-repeat; width:32px; height:32px; right: 30px; top: 30px;}
.sales .sub-cnt li .img{padding-right:30px;}
.sales .sub-cnt li p{font-size:32px; font-weight:600; line-height:1.56em; letter-spacing:-.03em; color:#242424;}

@keyframes posTop {
	25%,50% {-webkit-transform: translate(33%, 100%); transform:translate(33%, 89%); opacity:.8; z-index:9;}
	75%,100% {-webkit-transform: translate(0, 0); transform:translate(0, 0); opacity:1;}
}

@keyframes posBottom {
	25%,50% {-webkit-transform: translate(0, 0); transform:translate(0, 0); opacity:1;}
	75%,100% {-webkit-transform: translate(33%, 100%); transform:translate(33%, 89%); opacity:.8;}
}

.education{margin-top:148px; padding-bottom:87px;}
.education h3{font-size:48px; font-weight:700; line-height: 1.67em; letter-spacing:-.03em; color:#242424; text-align:center;}
.education .edu-wrap{display:flex; margin-top:60px;}
.education .edu-img{display:flex; flex-direction: column; align-items: center; justify-content: center; background-color: #f8f8f8;width:685px; height:450px; border-radius:50px; border:1px solid #dddddd; text-align:center;}
.education .edu1{margin-right:15px;}
.education .edu2{margin-left:15px;}
.education .edu-img .img{padding-bottom:15px;}
.education .edu-img p{font-size:32px; font-weight:600; line-height: 2.50em; letter-spacing:-.03em; color:#242424;}

.focusing{background-image: url('../images/sub/arrow-bg.jpg'); background-position: 50% 50%; background-size:1920px 100%; background-repeat:no-repeat; height:410px; display: flex; align-items: center; margin-top:64px;}
.focusing h3{font-size:48px; font-weight:700; line-height: 1.46em; letter-spacing:-.02em; color:#fff; text-align:center;}

#contact {padding-top:150px;}
.inquiry-wrap {display:flex;}
.inquiry-form {flex:1 1 auto; min-width:0; width:1%;}
.inquiry-form .form-group {margin-bottom: 40px;}
.inquiry-form .form-group .radiobox {font-size:15px; color:#505050;}
.inquiry-form .form-group .radiobox:first-child {margin-right:20px;}
.inquiry-form .group {margin-bottom:55px;}
.inquiry-form .group:last-child {margin-bottom: 0;}
.inquiry-form .group .title {text-align:center; margin-bottom: 80px;}
.inquiry-form .title h4 {color:#242424; font-size:48px; font-weight:700; line-height:1.25em; letter-spacing:-.03em;}
.inquiry-form .title h4 span{color:#6a44e0;}
.inquiry-form .title p {color:#454545; font-size:22px; font-weight:500; line-height:2.73em; letter-spacing:-.03em;}
.inquiry-form .form {font-size:18px; line-height:1.56em; letter-spacing:-.02em;}
.inquiry-form .form .row {display:flex; flex-wrap:wrap; margin:-5px -15px;}
.inquiry-form .form .col {width:50%; padding:0 15px;}
.inquiry-form .form .col.col1 {padding:0 30px 0 15px;}
.inquiry-form .form .col.col2 {padding:0 15px 0 30px;}
.inquiry-form .form .col.col-x2 {width:100%;}
.inquiry-form .form dt {position: relative; color: #242424; margin-bottom:5px; font-weight:500; letter-spacing:-.02em;}
.inquiry-form .form dt::before{content:'*'; position:absolute; left:55px; top:-6px; color: #6a44e0;}
.inquiry-form .form .col-x2 dt::before{content:'';}
.inquiry-form .form .input {display:block; width:100%; height:34px; padding: 0px; padding-bottom: 15px; font-size:16px; font-weight:400; line-height:1.75em; letter-spacing:-.02em; border:none; border-bottom:1px solid #808080;}
.inquiry-form .form textarea.input {height:100px; border:1px solid #808080; padding-left:18px; padding-top:20px; height: 150px;}
.inquiry-form .form .input::placeholder {color:#808080;}
.inquiry-form .form textarea.input::placeholder {color:#808080;}
.inquiry-form .submit-area {display:flex; justify-content:space-between; align-items:flex-end; margin-top:40px;}
.inquiry-form .form-agree {margin:0;}
.inquiry-form .form-agree .check {text-align:left;}
.form-agree .check .checkbox label{color:#454545; font-weight:400; line-height:1.88em; font-size:16px; letter-spacing:-.02em;}
.form-agree .check .checkbox label:before{margin-top:-.02em; width:25px; height:25px; background:#aeaeae url('../images/bbs/checkbox.png') 50% 50% no-repeat; border: 2px solid #ccc; border-radius: 100%;}
.form-agree .check .checkbox input:checked + label:before {background-color: #6a44e0; border-color: #6a44e0; background-image: url('/images/bbs/checkbox.png');
.inquiry-form .btn-pack.dark {background:#6a44e0; border-color:#6a44e0;}