@charset "utf-8";
/* ------------------------------------------------------------
ホーム
------------------------------------------------------------ */
/* 共通
---------------------------------------------- */
section#division a:focus-visible,section#division button:focus-visible,section#division input:focus-visible,section#division select:focus-visible,
section#service a:focus-visible,section#service button:focus-visible,section#service input:focus-visible,section#service select:focus-visible,
section#contact a:focus-visible,section#contact button:focus-visible,section#contact input:focus-visible,section#contact select:focus-visible
{outline: 4px dotted #FFFFFF;outline-offset: 1px;}

/* HOME共通
---------------------------------------------- */
/* TTL */
.ttl_slash_ppl_l{background:url(/aesd/common/img/slash_ppl01.png) no-repeat left top;background-size: 40px 44px; padding-top:16px;font-size: 70px;font-weight: 700;color: #3D35AA;font-family: "Raleway", sans-serif;letter-spacing: 0.1em;}
.ttl_slash_ppl_l span{font-size:28px;color: #1A1935;display: block;margin: -28px 0 37px 0;letter-spacing: 0.05em;}
span.ico_tab{padding-right: 15px;}

@media print, screen and (max-width: 1200px){
}

@media print, screen and (max-width: 767px){
/* TTL */
.ttl_slash_ppl_l{background:url(/aesd/common/img/slash_ppl01.png) no-repeat left top;background-size: 30px 33px; padding-top:31px;font-size: 45px;line-height: 1.6;}
.ttl_slash_ppl_l span{font-size:23px;margin: 12px 0 31px 0;}
}


/* プロモーション
---------------------------------------------- */
div#wrap_swiper{width: 100%;height: 680px;position: relative;}
.swiper-container {width: 100%;height: 680px;overflow: hidden;color:#FFF;margin-top: 120px;}
.swiper-slide {position: relative;display: flex;justify-content: center;align-items: center;}
.swiper-slide img {width: 100vw; /* 画像の幅をビューポートの幅に設定 */height: 680px;object-fit: cover; /* 画像がはみ出すようにカバー */}
#promotion_caption {position: absolute;left: 20px;bottom: 266px;font-size: 50px;font-weight: 700;margin: 0 0 -22px 0;line-height: 2.0;z-index: 333;color: #FFFFFF;letter-spacing: 0.1em;}
#promotion_caption span {border-bottom: 4px solid #FFFFFF;padding-bottom: 10px; box-decoration-break: clone;-webkit-box-decoration-break: clone;}
#promotion_list {position: absolute;max-width: 100%; left: 50%;bottom: 40px;transform: translateX(-50%);display: flex;gap: 2.521%;z-index: 333;padding:0 20px;}
#promotion_list li{width: 360px;}
#promotion_list li:nth-child(2){width: 590px;}

@media print, screen and (max-width: 980px){
#promotion_caption {font-size: 40px;}
}

@media print, screen and (max-width: 900px){
.swiper-container {margin-top: 0;}
}

@media print, screen and (max-width: 900px){
div#wrap_swiper{height: auto;}
.swiper-container {width: 100%;height: 450px;overflow: visible;margin-top: 70px;}
.swiper-slide img {height: 450px;}
#promotion_caption {position: absolute;left: 20px;bottom: 155px;font-size: 22px;margin: 0 0 -11px 0;padding: 0 20px 0 0;}
#promotion_caption span {border-bottom: 2px solid #FFFFFF;padding-bottom: 5px;}
#promotion_list {position: absolute;max-width: 100%; left: 50%;bottom: 20px;gap:2.985%;padding:0 20px;}
}

@media print, screen and (max-width: 767px){
#promotion_list li{width: 125px;}
#promotion_list li:nth-child(2){width: 200px;}
}

@media print, screen and (max-width: 467px){
#promotion_caption {font-size: 18px;}
}

/* ABOUTUS
---------------------------------------------- */
div#aboutus_wrap{background:url(/aesd/img/about_bg.png) no-repeat center bottom;background-size:1920px 48px;}
section#aboutus{padding: 140px 20px;max-width: 1240px;width: 100%;margin: 0 auto;overflow: hidden;}
section#aboutus h2{float: left;width: 45%;font-size: 30px;font-weight: 700;margin:-17px 0 0 0;color:#3A22A7;letter-spacing: 0.05em;}
section#aboutus div{float: right;width: 50%;margin:-10px 0 0 0;}
section#aboutus div p{margin: 0 0 23px 0;}
section#aboutus div p:last-child{margin: 0;}

@media print, screen and (max-width: 1200px){
}

@media print, screen and (max-width: 767px){
div#aboutus_wrap{background:url(/aesd/img/about_bg_sp.png) no-repeat center bottom;background-size:100%;}
section#aboutus{padding: 70px 20px;max-width: none;margin: 0 ;overflow: visible;}
section#aboutus h2{float: none;width: 100%;font-size: 23px;margin:-14px 0 31px 0;}
section#aboutus div{float: none;width: 100%;}
section#aboutus div p{margin: 0 0 13px 0;}
}

/* UCE
---------------------------------------------- */
section#uce{padding: 80px 20px 140px;max-width: 1240px;width: 100%;margin: 0 auto;}
ul#uce_list{display:flex;gap:5%;margin: 0 0 40px 0;}
ul#uce_list li{width: 47.5%;line-height: 0;}
ul#uce_list li img{width: 100%;}
ul#uce_list li:hover{opacity: 0.7;transition: 0.3s;}

@media print, screen and (max-width: 1200px){
ul#uce_list{display:flex;gap:3%;}
ul#uce_list li{font-size: 16px; width: 48.5%;line-height: 0;}
}

@media print, screen and (max-width: 767px){
section#uce{padding: 50px 20px 70px;max-width: none;margin: 0;}
ul#uce_list{flex-direction: column;margin: 0 0 30px 0;}
ul#uce_list li{width:100%;line-height: 0;}
ul#uce_list li:first-child{margin:0 0 20px 0;}
}

/* SERVICE
---------------------------------------------- */
div#bg_service{background:url(/aesd/img/service_bg.png) no-repeat center 0;background-size:1933px 762px;}
section#service{padding: 80px 20px 140px;max-width: 1240px;width: 100%;margin: 0 auto;overflow: hidden;}

section#service .ttl_slash_ppl_l,section#division .ttl_slash_ppl_l{background:url(/aesd/common/img/slash_ppl02.png) no-repeat left top;background-size: 40px 44px;color: #FFFFFF;}
section#service .ttl_slash_ppl_l span,section#division .ttl_slash_ppl_l span{color: #FFFFFF;}

ul#service_list{display:flex;gap:5%;margin: 0 0 40px 0;}
ul#service_list li{width: 47.5%;height: 220px;background: #FFFFFF;font-weight: 700;font-size: 26px;color: #1A1935;text-align: center;padding-top: 40px;}
ul#service_list li:first-child span{background:url(/aesd/img/service_ico01.png) no-repeat center top;background-size: 48px 60px;padding-top: 85px;}
ul#service_list li:last-child span{background:url(/aesd/img/service_ico02.png) no-repeat center top;background-size: 60px 60px;padding-top: 85px;}
ul#service_list li:hover{background: #E4E4EF;transition: 0.3s;}

@media print, screen and (max-width: 1200px){
ul#service_list{gap:3%;}
ul#service_list li{padding: 40px 20px 0;font-size: 20px;width: 48.5%;}
}

@media print, screen and (max-width: 767px){
div#bg_service{background:url(/aesd/img/service_bg_sp.png) no-repeat center top;background-size:100%;}
section#service{padding: 50px 20px 70px;max-width: none;margin: 0;overflow: visible;}

section#service .ttl_slash_ppl_l,section#division .ttl_slash_ppl_l{background:url(/aesd/common/img/slash_ppl02.png) no-repeat left top;background-size: 30px 33px;}
section#service .ttl_slash_ppl_l span,section#division .ttl_slash_ppl_l span{margin: 6px 0 31px 0;}
ul#service_list{flex-direction:column;margin: 0 0 30px 0;}
ul#service_list li{width: 100%;min-height: 130px;height: auto;font-size: 16px;padding-top: 20px;}
ul#service_list li:first-child{margin: 0 0 20px 0;}
ul#service_list li:first-child span{background:url(/aesd/img/service_ico01.png) no-repeat center top;background-size: 32px 40px;padding-top: 51px;}
ul#service_list li:last-child span{background:url(/aesd/img/service_ico02.png) no-repeat center top;background-size: 40px 40px;padding-top: 51px;}
}

/* TOPICS baseへ */

/* DIVISION
---------------------------------------------- */
div#bg_division{background:#312975 url(/aesd/img/division_bg.png) no-repeat center bottom;background-size: 1920px 976px;}
section#division{padding: 140px 20px;max-width: 1240px;width: 100%;margin: 0 auto;}

div.division_box{border-bottom: 1px solid #756FB2;margin-bottom: 28px;padding-bottom: 20px;}

ul.division_list{display:flex;gap:2.5%;flex-wrap:wrap;}
ul.division_list li{flex:0 0 31.667%;background: linear-gradient(to right, #6661D6 0%, #8547CD 100%);height: 82px; margin:0 0 20px 0;color: #FFFFFF;}
ul.division_list li a{display: flex;justify-content: flex-start;align-items: center;padding:0 45px 0 20px;height: 100%;background:url(/aesd/common/img/arw_pplwht.png) no-repeat right 20px center;background-size: 22px 22px;line-height: 1.4;}
ul.division_list li:hover{background: #4646B7;transition: 0.3s;}
ul.division_list li.list_50per{flex:0 0 48.75%;}
ul.division_list li.division_nolink span{display: flex;justify-content: flex-start;align-items: center;padding:0 0 0 20px;height: 82px;}
ul.division_list li.division_nolink:hover{background: linear-gradient(to right, #6661D6 0%, #8547CD 100%);}


div#division_list_wrap div.division_box:last-child{margin-bottom: 40px; padding: 6px 0 0;}

@media print, screen and (max-width: 1200px){
ul.division_list{gap:2%;}
ul.division_list li{flex:0 0 48%;margin:0 0 2% 0;}
ul.division_list li.list_50per{flex:0 0 100%;}
}

@media print, screen and (max-width: 650px){
div#bg_division{background:#312975 url(/aesd/img/division_bg_sp.png) no-repeat center bottom;background-size: 100%;}
section#division{padding: 50px 20px 70px;max-width: none;margin: 0;}

div.division_box{margin-bottom: 30px;padding-bottom: 30px;}

ul.division_list{gap:0%;}
ul.division_list li{flex:0 0 100%;flex-direction:column;font-size: 15px;width: 100%;margin:0 0 2.5% 0;}
ul.division_list li:last-child{margin:0 0 0 0;}

div#division_list_wrap div.division_box:last-child{margin-bottom: 30px;}
}

/* PROJECT
---------------------------------------------- */
section#project{padding: 140px 20px;max-width: 1240px;width: 100%;margin: 0 auto;text-align: center;}

ul#project_list{display:flex;gap:5%;max-width: 1200px;margin: 52px 0 0 0;}
ul#project_list li{font-size: 16px; width: 47.5%;}
ul#project_list li img{width: 100%;}
ul#project_list li a{display: block;color: #5B55D4;}
ul#project_list li a:hover img{opacity: 0.7;transition: 0.3s;}
ul#project_list li a:hover{text-decoration: underline;}
ul#project_list li p.project_ttl{background:url(/aesd/common/img/arw_pplwht.png) no-repeat left 0.4em;background-size: 22px 22px;padding-left:32px;text-align: left;margin: 14px 0 0 0;}

@media print, screen and (max-width: 1200px){
ul#project_list{gap:3%;}
ul#project_list li{width: 48.5%;font-size: 15px;}
}

@media print, screen and (max-width: 767px){
section#project{padding: 70px 20px;max-width: none;margin: 0;}
    
ul#project_list{flex-direction:column;max-width: none;margin: 32px 0 0 0;}
ul#project_list li{width: 100%;}
ul#project_list li:first-child{margin:0 0 30px 0;}
}

/* CONTACT
---------------------------------------------- */
div#bg_contact{background:#24166D url(/aesd/img/contact_bg.png) no-repeat center 0;background-size: 1920px 472px;}
section#contact{padding: 100px 20px;max-width: 1240px;width: 100%;margin: 0 auto;text-align: center;color: #FFFFFF;}
section#contact h2{font-family: "Raleway", sans-serif;letter-spacing: 0.05em;margin:-45px 0 29px 0;font-size: 70px;}
div#contact_wrap{display:flex;gap:5%;}
div#contact_wrap p#contact_txt{width: 50%;text-align: left;font-weight: 700;}
div#contact_wrap div#form_wrap{width: 45%;}

select#mailSelect{background: #FFFFFF;width: 100%;margin: 0 0 20px 0;color: #1A1935;text-align: left;padding:17px 20px 17px;appearance: auto;}

.mail-btn {display: inline-block;width: 100%;padding: 20px 60px 20px 30px;background: linear-gradient(135deg, #6661D6, #8547CD);color: #fff;text-decoration: none;position: relative;transition: background .2s ease;font-size: 20px;}
.mail-btn::after {content: "";position: absolute;top: 50%;right: 20px;transform: translateY(-50%);width: 22px;height: 22px;background:url(/aesd/common/img/arw_pplwht.png) no-repeat 0 0;background-size: 22px 22px;}
a.mail-btn:not(.is-disabled):hover {background: #4646B7;}
.mail-btn.is-disabled {background: #56566D;pointer-events: none;}
.mail-btn.is-disabled::after {opacity: 0.4;}

@media print, screen and (max-width: 1200px){
div#contact_wrap{flex-direction:column;}
div#contact_wrap p#contact_txt{width: 100%;margin:0 0 23px 0;}
div#contact_wrap div#form_wrap{width: 100%;}
}

@media print, screen and (max-width: 767px){
div#bg_contact{background:#312975 url(/aesd/img/contact_bg_sp.png) no-repeat center top;background-size: 100%;}
section#contact{padding: 60px 20px;max-width: none;margin: 0;}
section#contact h2{margin:-28px 0 10px 0;font-size: 45px;}
select#mailSelect{padding:18px 20px 19px;}

.mail-btn {padding: 21x 60px 21x 30px;font-size: 19px;}
}