@charset 'utf-8';

/* top
------------------------------------------------ */
/* visual */
.top-visual { position: relative; width: 100%; }
.top-visual-main { position: relative; width: 100%; overflow: hidden; }
.top-visual-main__frame { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow: hidden; }
.top-visual-main__move { position: relative; height: 100%; }
.top-visual-main--item { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; }
.top-visual-main--item.active { z-index: 2; }
.top-visual-main__content { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 2; }
.top-visual-main--copy { margin-bottom: 18px; font-size: 2.4rem; color: #0A69CD; }
.top-visual-main--text { margin: 0; font-size: 1.4rem; line-height: 1.64285714286; }
.top-visual-main--photo { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1; }
.top-visual-main--photo picture { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.top-visual-main--photo img { width: 100%; height: 100%; object-fit: cover; }
.top-visual-main__bullets { display: flex; position: absolute; bottom: 18px; height: 14px; z-index: 3; }
.top-visual-main__bullets > a { display: block; margin-left: 10px; width: 12px; height: 100%; background: url(//kenkolabo.itembox.design/item/_assets/img/share/slide_bullets1.png) no-repeat center center; background-size: 100%; text-indent: -9999px; white-space: nowrap; overflow: hidden; }
.top-visual-main__bullets > a:first-child { margin-left: 0; }
.top-visual-main__bullets > a.active { background-image: url(//kenkolabo.itembox.design/item/_assets/img/share/slide_bullets1_active.png); }
.top-visual-main--direct { position: absolute; bottom: 0; width: 50px; height: 50px; background-position: center center; background-repeat: no-repeat; background-color: #fff; background-size: 6px; text-indent: -9999px; white-space: nowrap; overflow: hidden; z-index: 3; }
.top-visual-main--direct--prev { left: 0; background-image: url(//kenkolabo.itembox.design/item/_assets/img/share/slide_prev1.png); }
.top-visual-main--direct--next { left: 50px; background-image: url(//kenkolabo.itembox.design/item/_assets/img/share/slide_next1.png); }
.top-visual-thumb { position: relative; }
.top-visual-thumb--item { position: relative; }
.top-visual-thumb--item > a { display: block; position: relative; background: #fff; }
.top-visual-thumb--photo { position: relative; width: 100%; height: 70px; overflow: hidden; }
.top-visual-thumb--photo picture { height: 100%; }
.top-visual-thumb--photo img { width: 100%; height: 100%; object-fit: cover; }
.top-visual-thumb--name { position: relative; height: 30px; font-size: 1rem; line-height: 1.2; color: #0A69CD; }
.top-visual-thumb--name:after { content: ''; position: absolute; top: 50%; background-position: center center; background-repeat: no-repeat; background-size: cover; }

.device-click .top-visual-thumb--photo img { transition: ease .8s; }
.device-click .top-visual-thumb--item > a:hover { opacity: 1; }
.device-click .top-visual-thumb--item > a:hover .top-visual-thumb--photo img { transform: scale(1.1); }

@media screen and (max-width: 768px) {
	.top-visual-main { padding-bottom: 104%; height: 0; }
	.top-visual-main__content { padding: 42px 30px 0; }
	.top-visual-main__bullets { right: 20px; }
	.top-visual-thumb { border-bottom: solid #E5E5E5 1px; }
	.top-visual-thumb__move { display: flex; flex-wrap: wrap; }
	.top-visual-thumb--item { width: 50%; }
	.top-visual-thumb--item:after { content: ''; position: absolute; top: 0; left: 0; width: 1px; height: 100%; background: #E5E5E5; }
	.top-visual-thumb--item:first-child:after { display: none; }
	.top-visual-thumb--name { display: flex; justify-content: center; align-items: center; text-align: center; }
	.top-visual-thumb--name.has-span { flex-flow: column; }
	.top-visual-thumb--name:after { right: 10px; margin-top: -4px; width: 4px; height: 8px; background-image: url(//kenkolabo.itembox.design/item/_assets/img/share/arrow3.png); }
}

@media screen and (min-width: 769px) {
	.top-visual-main { height: 700px; }
	.top-visual-main__content { padding: 230px 11.8055555556vw 0; }
	.top-visual-main--copy { margin-bottom: 30px; font-size: 3rem; }
	.top-visual-main--text { font-size: 1.6rem; line-height: 2; }
	.top-visual-main__bullets { left: 130px; }
	.top-visual-thumb { position: absolute; top: 15px; right: 60px; width: 250px; z-index: 10; }
	.top-visual-thumb--item { margin-top: 10px; box-shadow: 0 3px 20px rgba(0,0,0,.16); }
	.top-visual-thumb--item:first-child { margin-top: 0; }
	.top-visual-thumb--photo { height: 120px/*90px*/; }
	.top-visual-thumb--name { display: flex; align-items: center; padding: 0 20px/*10px*/; height: 40px/*30px*/; font-size: 1.6rem/*1.2rem*/; }
	.top-visual-thumb--name.has-span { flex-flow: column; justify-content: center; align-items: flex-start; height: 40px; }
	.top-visual-thumb--name.has-span span { margin-left: -0.5em; font-size: 1rem; }
	.top-visual-thumb--name:after { right: 20px; margin-top: -4px; width: 24px; height: 8px; background-image: url(//kenkolabo.itembox.design/item/_assets/img/share/arrow2.png); }
	.top-visual-thumb--name .is-only-sp { display: none; }
}

@media screen and (max-width: 1140px) and (min-width: 769px) {
	.top-visual-main__content { padding: 230px 20px 0; }
}

/* introduce */
.top-introduce { position: relative; margin-top: 50px; z-index: 4; }
.top-introduce-copy { font-size: 2.4rem; letter-spacing: .2em; line-height: 1.83333333333; }
.top-introduce-lead { font-size: 1.6rem; letter-spacing: .2em; line-height: 1.8; }
.top-introduce-lead p { margin: 0; }
.top-introduce-lead p + p { margin-top: 20px; }
.top-introduce-photos { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; }
.top-introduce-photos--item { position: absolute; }

@media screen and (max-width: 768px) {
	.top-introduce-copy { margin: 0 20px; }
	.top-introduce-lead { margin: 134.666666667vw 20px 0; }
	.top-introduce-photos--item:nth-of-type(1) { top: 4.8vw; right: 0; width: 52.8%; }
	.top-introduce-photos--item:nth-of-type(2) { top: 46.1333333333vw; left: 13.3333333333%; width: 51.2%; }
	.top-introduce-photos--item:nth-of-type(3) { top: 109.6vw; right: 0; width: 70.6666666667%; }
}

@media screen and (min-width: 769px) {
	.top-introduce { margin-top: 80px; overflow: hidden; }
	.top-introduce > .wrap { padding-bottom: 46vw; }
	.top-introduce-copy { margin-bottom: 28px; font-size: 3.2rem; line-height: 1.875; }
	.top-introduce-lead { font-size: 1.8rem; line-height: 1.88888888889; }
	.top-introduce-lead p + p { margin-top: 34px; }
	.top-introduce-photos--item:nth-of-type(1) { top: 0; right: -80px; width: 37.8813559322%; }
	.top-introduce-photos--item:nth-of-type(2) { bottom: 5.76271186441vw; right: 20px; width: 37.2881355932%; }
	.top-introduce-photos--item:nth-of-type(3) { bottom: 0; left: -80px; width: 52.5423728814%; }
}

@media screen and (max-width: 1340px) and (min-width: 769px) {
	.top-introduce-photos--item:nth-of-type(1) { right: calc((1180px - 100vw)/2); }
}

@media screen and (max-width: 1180px) and (min-width: 769px) {
	.top-introduce-photos--item:nth-of-type(1) { right: 0; }
}

@media screen and (min-width: 1180px) {
	.top-introduce > .wrap { padding-bottom: 560px; }
}

@media screen and (min-width: 769px) and (max-width: 1140px) {
	.top-introduce-copy { font-size: 2.80701754386vw; }
	.top-introduce-lead { font-size: 1.57894736842vw; }
}

/* profile */
.top-profile-frame { position: relative; padding: 20px; border: 1px solid #0A69CD; border-radius: 5px; }
.top-profile-photo__caption { margin-top: 8px; }
.top-profile-photo__caption span,
.top-profile-photo__caption strong { display: block; text-align: center; }
.top-profile-photo__caption span { font-size: 1.4rem; letter-spacing: 0.2em; line-height: 1.85714285714; color: #333; }
.top-profile-photo__caption strong { font-size: 1.8rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.44444444444; color: #323232; }
.top-profile-copy { margin-bottom: 12px; font-size: 1.8rem; font-weight: 500; letter-spacing: 0.1em; line-height: 1.88888888889; color: #0A69CD; }
.top-profile-text { font-size: 1.6rem; letter-spacing: 0.05em; line-height: 2.125; color: #323232; }
.top-profile-detail { margin-top: 25px; padding: 20px; background-color: #F5F8FA; }
.top-profile-detail__title { margin-bottom: 5px; font-size: 1.6rem; letter-spacing: 0.1em; line-height: 2; color: #323232; }
.top-profile-detail__text { font-size: 1.4rem; line-height: 1.5; color: #333; }
.top-profile-detail__text:not(:last-child) { margin-bottom: 1.5em; }
.top-profile-video { margin-top: 20px; }
.top-profile-video__title { margin-bottom: 12px; text-align: center; font-size: 1.8rem; font-weight: 500; letter-spacing: 0.1em; line-height: 1.88888888889; color: #0A69CD; }
.top-profile-video__media { position: relative; aspect-ratio: 1 / 0.5625; width: 100%; overflow: hidden; }
.top-profile-video__media > iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

@media screen and (max-width: 768px) {
	.top-profile { margin: 72px 20px 0; }
	.top-profile-photo { margin-bottom: 28px; }
	.top-profile-copy { text-align: center; }
}

@media screen and (min-width: 769px) {
	.top-profile { margin-top: 124px; }
	.top-profile-frame { padding: 46px 40px; }
	.top-profile-multi { display: grid; grid-template-columns: 240px; column-gap: 60px; }
	.top-profile-photo { grid-column: 1 / 1; grid-row: 1 / 3; }
	.top-profile-photo__caption { margin-top: 18px; }
	.top-profile-copy { grid-column: 2 / 3; grid-row: 1 / 2; margin-bottom: 4px; font-size: 2.2rem; line-height: 2.27272727273; }
	.top-profile-text { grid-column: 2 / 3; grid-row: 2 / 3; font-size: 1.6rem; line-height: 2; }
	.top-profile-detail { margin-top: 38px; padding: 60px; }
	.top-profile-detail__title { margin-bottom: 28px; }
	.top-profile-video { margin-top: 42px; }
	.top-profile-video__title { margin-bottom: 20px; font-size: 2.2rem; line-height: 2.27272727273; }
}

/* lineup */
.top-lineup { position: relative; margin-top: 54px; padding: 42px 0 60px; background: #F5F8FA; }
.top-lineup-lists--item { position: relative; }
.top-lineup-lists--photo { position: relative; z-index: 2; }
.top-lineup-lists--photo > a { display: block; }
.top-lineup-lists__info { position: relative; }
.top-lineup-lists--title { margin-bottom: 10px; text-align: center; font-size: 3rem; font-weight: 400; letter-spacing: .1em; line-height: 2.46666666667; }
.top-lineup-lists--title > a { display: inline-block; vertical-align: top; }
.top-lineup-lists--title span { font-size: 2.4rem; }
.top-lineup-lists--copy { margin-bottom: 20px; text-align: center; font-size: 1.8rem; font-weight: 700; letter-spacing: .1em; line-height: 1.88888888889; }
.top-lineup-lists--comment { font-size: 1.6rem; letter-spacing: .05em; line-height: 1.8; }
.top-lineup .link-1 { margin-top: 30px; }

@media screen and (max-width: 768px) {
	.top-lineup-lists--item { margin-top: 40px; }
	.top-lineup-lists--item:first-child { margin-top: 0; }
	.top-lineup-lists--photo { margin: 0 20px; }
	.top-lineup-lists__info { position: relative; margin-top: -26.6666666667vw; padding: 33.8666666667vw 20px 56px; background: #fff; z-index: 1; }
	.top-lineup-lists--title.has-span { margin-bottom: 18px; line-height: 1.33333333333; }
	.top-lineup-lists--title span { line-height: 1.66666666667; }
}

@media screen and (min-width: 769px) {
	.top-lineup { margin-top: 120px; padding: 112px 0 135px; }
	.top-lineup-lists--item { display: flex; align-items: center; margin-top: 60px; padding: 60px 0; z-index: 2; }
	.top-lineup-lists--item:first-child { margin-top: 0; }
	.top-lineup-lists--item:nth-of-type(even) { flex-flow: row-reverse; }
	.top-lineup-lists--item:after { content: ''; position: absolute; top: 0; width: calc(100vw - 150px); height: 100%; background: #fff; z-index: -1; }
	.top-lineup-lists--item:nth-of-type(odd):after { right: 0; }
	.top-lineup-lists--item:nth-of-type(even):after { left: 0; }
	.top-lineup-lists--photo { width: 52.0833333333%; }
	.top-lineup-lists__info { padding: 0 104px; width: 47.9166666667%; }
	.top-lineup-lists--comment { line-height: 2; }
}

@media screen and (min-width: 769px) and (max-width: 1140px) {
	.top-lineup-lists__info { padding: 0 10.4vw; }
}

@media screen and (min-width: 769px) and (max-width: 920px) {
	.top-lineup-lists--item { display: block; padding-top: 0; }
	.top-lineup-lists--item:after { top: 40px; width: 100%; height: calc(100% - 40px); }
	.top-lineup-lists--photo { margin: 0 40px; width: auto; }
	.top-lineup-lists__info { margin-top: 40px; padding: 0 40px; width: auto; }
}

@media screen and (min-width: 769px) and (max-width: 1140px) {
	.top-lineup-lists--title { font-size: 2.63157894737vw; }
	.top-lineup-lists--title span { font-size: 2.10526315789vw; }
	.top-lineup-lists--copy { font-size: 1.57894736842vw; }
	.top-lineup-lists--comment { font-size: 1.40350877193vw; }
}

/* important */
.top-important { position: relative; margin-top: 42px; }
.top-important-points--item { position: relative; }
.top-important-points--num { margin-bottom: 6px; text-align: center; }
.top-important-points--num .en,
.top-important-points--num .num { display: block; letter-spacing: .1em; line-height: 1.2; }
.top-important-points--num .en { font-size: 1.2rem; }
.top-important-points--num .num { margin-top: -2px; font-size: 3rem; }
.top-important-points--title { display: flex; justify-content: center; align-items: center; position: relative; margin: 0 auto; width: 180px; height: 50px; text-align: center; font-size: 1.4rem; font-weight: 400; letter-spacing: .05em; line-height: 1.42857142857; color: #0A69CD; z-index: 2; }
.top-important-points--title:before,
.top-important-points--title:after { content: ''; position: absolute; border-radius: 30px; }
.top-important-points--title:before { top: 0; left: 0; width: 100%; height: 100%; background: rgba(10,105,205,.1); z-index: -1; }
.top-important-points--title:after { top: -5px; left: -12px; width: calc(100% + 24px); height: calc(100% + 10px); background: #fff; border-radius: 30px; z-index: -2; }
.top-important-points__info { position: relative; margin-top: -25px; padding: 38px 0; border: solid #0A69CD 1px; border-radius: 5px; z-index: 1; }
.top-important-points__info p { margin-bottom: 10px; text-align: center; font-size: 2.4rem; letter-spacing: .05em; line-height: 1.58333333333; color: #0A69CD; }
.top-important-points__info p:last-child { margin-bottom: 0; }
.top-important-points__info p span { display: block; font-size: 1.4rem; line-height: 1.85714285714; }
.top-important-explain { font-size: 1.6rem; letter-spacing: .1em; line-height: 1.8; }
.top-important-comment { margin-top: 36px; }
.top-important-comment:before { content: ''; display: block; margin: 0 auto 40px; width: 1px; height: 40px; background: #333; }
.top-important-comment--photo { position: relative; z-index: 1; }
.top-important-comment--text { position: relative; padding: 30px; background: #fff; font-size: 1.6rem; letter-spacing: .1em; line-height: 1.8; z-index: 2; }

@media screen and (max-width: 768px) {
	.top-important-points { margin: 0 20px; }
	.top-important-points--item { margin-top: 25px; }
	.top-important-points--item:first-child { margin-top: 0; }
	.top-important-explain { margin: 60px 20px 0; }
	.top-important-comment--text { margin: -44px 20px 0; }
}

@media screen and (min-width: 769px) {
	.top-important { margin-top: 90px; }
	.top-important-points { display: flex; justify-content: space-between; }
	.top-important-points--item { width: 23.6842105263%; }
	.top-important-points--num { margin-bottom: 10px; }
	.top-important-points--title { margin: 0 32px; width: calc(100% - 64px); font-size: 1.6rem; line-height: 1.25; }
	.top-important-points__info { display: flex; justify-content: center; align-items: center; padding: 60px 0; height: calc(100% - 83px); }
	.top-important-explain { margin-top: 36px; text-align: center; line-height: 2; }
	.top-important-comment { margin: 60px auto 0; max-width: 900px; }
	.top-important-comment:before { margin-bottom: 55px; }
	.top-important-comment--text { margin: -44px 50px 0; padding: 40px 90px 0; line-height: 2; }
}

@media screen and (min-width: 769px) and (max-width: 1140px) {
	.top-important-points--num .en { font-size: 1.05263157895vw; }
	.top-important-points--num .num { font-size: 2.63157894737vw; }
	.top-important-points--title { font-size: 1.40350877193vw; }
	.top-important-points__info p { font-size: 2.10526315789vw; }
	.top-important-points__info p span { font-size: 1.22807017544vw; }
	.top-important-explain { font-size: 1.40350877193vw; }
	.top-important-comment--text { font-size: 1.40350877193vw; }
}

/* blog */
.top-blog { position: relative; margin-top: 24px; padding: 42px 0 60px; background: #F5F8FA; }
.top-blog-lead { font-size: 1.6rem; letter-spacing: .1em; line-height: 2; }
.top-blog-frame { position: relative; }
.top-blog .lists-blog { display: flex; }

.top-blog-bnr { margin-top: 40px; }
.top-blog-bnr--item { margin-top: 40px; }
.top-blog-bnr--item:first-child { margin-top: 0; }
.top-blog-bnr--item > a { display: block; width: 100%; }

@media screen and (max-width: 768px) {
	.top-blog-lead { margin: 0 20px 12px; }
	.top-blog-frame { margin: 0 20px; width: calc(100vw - 40px); overflow-x: auto; }
	.top-blog .lists-blog-item { margin-left: 20px; width: 70vw; }
	.top-blog .lists-blog-item:first-child { margin-left: 0; }
	.top-blog .mCSB_scrollTools.mCSB_scrollTools_horizontal { height: 8px; background: #fff; border-radius: 4px; }
	.top-blog .mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_dragger .mCSB_dragger_bar { margin: 0; height: 100%; background: #0A69CD; border-radius: 4px; }
	.top-blog .mCSB_scrollTools.mCSB_scrollTools_horizontal .mCSB_draggerRail { display: none; }
	.top-blog .link-1 { margin: 30px 20px 0; }
	.top-blog .link-blank { margin: 30px 20px 0; }
	.top-blog-bnr { padding: 0 20px; }
}

@media screen and (min-width: 769px) {
	.top-blog { margin-top: 100px; padding: 120px 0; }
	.top-blog .title-1 { text-align: left; }
	.top-blog .title-1:after { margin-left: 0; }
	.top-blog-lead { margin-bottom: 20px; }
	.top-blog .lists-blog-item { margin-left: 2.92397660813%; width: 22.8070175439%; }
	.top-blog .lists-blog-item:first-child { margin-left: 0; }
	.top-blog .link-1 { position: absolute; top: 170px; right: 20px; }
	.top-blog .link-blank { margin-top: 50px; }

	.top-blog-bnr { margin-top: 60px; }
	.top-blog-bnr--item { margin-top: 60px; }
}

@media screen and (min-width: 769px) and (max-width: 1140px) {
	.top-blog-lead { font-size: 1.40350877193vw; }
}

/* topics */
.top-topics { position: relative; margin-top: 42px; }
.top-topics-lead { font-size: 1.6rem; letter-spacing: .1em; line-height: 2; }

@media screen and (max-width: 768px) {
	.top-topics-lead { margin: 0 20px 12px; }
	.top-topics .slide-1 { margin: 0 38px; }
}

@media screen and (min-width: 769px) {
	.top-topics { margin-top: 120px; }
	.top-topics-lead { margin-bottom: 40px; text-align: center; }
}

@media screen and (min-width: 769px) and (max-width: 1140px) {
	.top-topics-lead { font-size: 1.40350877193vw; }
}

/* corporate */
.top-corporate { position: relative; margin-top: 60px; background: #F5F8FA; }
.top-corporate-info { padding: 30px 20px 56px; }
.top-corporate-text { text-align: center; font-size: 1.6rem; letter-spacing: .1em; line-height: 1.8; }
.top-corporate .link-1 { margin-top: 30px; }

@media screen and (min-width: 769px) {
	.top-corporate { display: flex; align-items: center; margin-top: 120px; }
	.top-corporate-photo,
	.top-corporate-info { width: 50%; }
	.top-corporate-info { margin: 0 auto; padding: 20px; max-width: 560px; }
	.top-corporate .title-1 { margin-bottom: 60px; }
	.top-corporate-text { line-height: 2; }
	.top-corporate .link-1 { margin-top: 25px; }
}

@media screen and (min-width: 769px) and (max-width: 1140px) {
	.top-corporate-text { font-size: 1.40350877193vw; }
}