#wrapAllInner { padding-top: 0; margin-top: 0; }
#wrapAllInner > section:first-child, #s_business { padding-top: 0; margin-top: 0; }
#visual-wrapper { position: relative; width: 100%; margin-top: 80px; }
@media screen and (max-width: 800px) { #visual-wrapper { margin-top: 70px; } }
#visual { line-height: 0; font-size: 0; }
#visual img { width: 100%; height: 600px; object-fit: cover; display: block; }
@media screen and (max-width: 1024px) { #visual img { height: 400px; } }
.visual-copy { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 100%; text-align: center; z-index: 10; line-height: 1.5; }
.visual-copy strong { display: block; font-size: 2.8rem; color: #FFFFFF; font-weight: 900; text-shadow: 0px 4px 15px rgba(0, 0, 0, 0.8); margin-bottom: 15px; letter-spacing: 0.1em; }
.visual-copy em { display: block; font-size: 1.2rem; color: #FFFFFF; font-style: normal; text-shadow: 0px 2px 10px rgba(0, 0, 0, 0.8); }
@media screen and (max-width: 1300px) {
    .visual-copy strong { font-size: 2rem; }
    .visual-copy em { font-size: 0.75rem; }
}
#s_talent .flo2 { display: flex; flex-wrap: wrap; justify-content: center; gap: 40px 20px; }
#s_talent .flo2 .talent { flex: 0 0 calc(25% - 15px); text-align: center; }
@media screen and (max-width: 800px) { #s_talent .flo2 .talent { flex: 0 0 calc(50% - 10px); } }
.vmc-toggle-btn { margin: 50px auto 0; background-color: #fff; border: 2px solid #00b7ea; color: #00b7ea; font-size: 0.9rem; font-weight: bold; text-align: center; padding: 10px 40px; cursor: pointer; border-radius: 40px; position: relative; transition: all 0.3s; max-width: 500px; }
.vmc-toggle-btn:hover { background-color: #00b7ea; color: #fff; }
.vmc-toggle-btn span { display: inline-block; width: 10px; height: 10px; border-bottom: 2px solid currentColor; border-right: 2px solid currentColor; transform: rotate(45deg); position: absolute; right: 30px; top: 50%; margin-top: -8px; transition: 0.3s; }
.vmc-toggle-btn.is-open span { transform: rotate(-135deg); margin-top: -2px; }
.vmc-section { display: none; padding-top: 40px; text-align: center; }
.vmc-title { font-size: 2.0rem; font-weight: 700; color: #999; text-transform: uppercase; }
.vmc-subtitle-pink { font-size: 1.2rem; font-weight: bold; color: #eb3873; margin: 5px 0 10px; }
.vmc-desc-blue { font-size: 0.95rem; font-weight: bold; color: #00b7ea; line-height: 1.6; }

.vm-wrap { display: flex; flex-wrap: wrap; justify-content: center; gap: 40px; margin-bottom: 50px; }
.vm-wrap .vm-box { width: 100%; max-width: 400px; }
@media screen and (max-width: 800px) {
    .vm-wrap { gap: 30px; margin-bottom: 40px; }
}

.credo-wrap { margin-top: 30px; max-width: 850px; margin: 0 auto; }
.dawn8-item { margin-bottom: 25px; text-align: center; }
.dawn8-title-wrap { display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; margin-bottom: 8px; }
.dawn8-title { font-size: 1.1rem; font-weight: bold; color: #eb3873; }
.dawn8-sub { font-size: 0.9rem; font-weight: bold; color: #00b7ea; margin-left: 10px; }
.dawn8-desc { font-size: 0.85rem; color: #333; line-height: 1.6; font-weight: bold; }
@media screen and (max-width: 800px) {
    .dawn8-item { margin-bottom: 30px; }
    .dawn8-title-wrap { flex-direction: column; align-items: center; gap: 5px; }
    .dawn8-sub { margin-left: 0; }
}

.chief-container .chief { border: 1px solid #ddd; padding: 40px; background: #fff; width: 100%; box-sizing: border-box; }
.chief-name { font-size: 1.8rem; font-weight: bold; margin-bottom: 20px; color: #333; }
#s_contact .logo img { display: block; margin: 0 auto; }

.sp-br { display: none; }

@media screen and (max-width: 1300px) {
    .sp-br { display: block; }
}