@charset "UTF-8";
/* Scss Document */
/* Scss Document */
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@300;400;600&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans:ital,wght@0,100..700;1,100..700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap");
/*$font-family-03: "Josefin Sans", sans-serif;*/
/*layout*/
.mt0 { margin-top: 0px !important; }

.mb0 { margin-bottom: 0px !important; }

.pt0 { padding-top: 0px !important; }

.pl0 { padding-left: 0px !important; }

.pb0 { padding-bottom: 0px !important; }

.mt5 { margin-top: 5px !important; }

.mb5 { margin-bottom: 5px !important; }

.pt5 { padding-top: 5px !important; }

.pl5 { padding-left: 5px !important; }

.pb5 { padding-bottom: 5px !important; }

.mt10 { margin-top: 10px !important; }

.mb10 { margin-bottom: 10px !important; }

.pt10 { padding-top: 10px !important; }

.pl10 { padding-left: 10px !important; }

.pb10 { padding-bottom: 10px !important; }

.mt15 { margin-top: 15px !important; }

.mb15 { margin-bottom: 15px !important; }

.pt15 { padding-top: 15px !important; }

.pl15 { padding-left: 15px !important; }

.pb15 { padding-bottom: 15px !important; }

.mt20 { margin-top: 20px !important; }

.mb20 { margin-bottom: 20px !important; }

.pt20 { padding-top: 20px !important; }

.pl20 { padding-left: 20px !important; }

.pb20 { padding-bottom: 20px !important; }

.mt25 { margin-top: 25px !important; }

.mb25 { margin-bottom: 25px !important; }

.pt25 { padding-top: 25px !important; }

.pl25 { padding-left: 25px !important; }

.pb25 { padding-bottom: 25px !important; }

.mt30 { margin-top: 30px !important; }

.mb30 { margin-bottom: 30px !important; }

.pt30 { padding-top: 30px !important; }

.pl30 { padding-left: 30px !important; }

.pb30 { padding-bottom: 30px !important; }

.mt35 { margin-top: 35px !important; }

.mb35 { margin-bottom: 35px !important; }

.pt35 { padding-top: 35px !important; }

.pl35 { padding-left: 35px !important; }

.pb35 { padding-bottom: 35px !important; }

.mt40 { margin-top: 40px !important; }

.mb40 { margin-bottom: 40px !important; }

.pt40 { padding-top: 40px !important; }

.pl40 { padding-left: 40px !important; }

.pb40 { padding-bottom: 40px !important; }

.mt45 { margin-top: 45px !important; }

.mb45 { margin-bottom: 45px !important; }

.pt45 { padding-top: 45px !important; }

.pl45 { padding-left: 45px !important; }

.pb45 { padding-bottom: 45px !important; }

.mt50 { margin-top: 50px !important; }

.mb50 { margin-bottom: 50px !important; }

.pt50 { padding-top: 50px !important; }

.pl50 { padding-left: 50px !important; }

.pb50 { padding-bottom: 50px !important; }

.mt55 { margin-top: 55px !important; }

.mb55 { margin-bottom: 55px !important; }

.pt55 { padding-top: 55px !important; }

.pl55 { padding-left: 55px !important; }

.pb55 { padding-bottom: 55px !important; }

.mt60 { margin-top: 60px !important; }

.mb60 { margin-bottom: 60px !important; }

.pt60 { padding-top: 60px !important; }

.pl60 { padding-left: 60px !important; }

.pb60 { padding-bottom: 60px !important; }

.mt65 { margin-top: 65px !important; }

.mb65 { margin-bottom: 65px !important; }

.pt65 { padding-top: 65px !important; }

.pl65 { padding-left: 65px !important; }

.pb65 { padding-bottom: 65px !important; }

.mt70 { margin-top: 70px !important; }

.mb70 { margin-bottom: 70px !important; }

.pt70 { padding-top: 70px !important; }

.pl70 { padding-left: 70px !important; }

.pb70 { padding-bottom: 70px !important; }

.mt75 { margin-top: 75px !important; }

.mb75 { margin-bottom: 75px !important; }

.pt75 { padding-top: 75px !important; }

.pl75 { padding-left: 75px !important; }

.pb75 { padding-bottom: 75px !important; }

.mt80 { margin-top: 80px !important; }

.mb80 { margin-bottom: 80px !important; }

.pt80 { padding-top: 80px !important; }

.pl80 { padding-left: 80px !important; }

.pb80 { padding-bottom: 80px !important; }

.mt85 { margin-top: 85px !important; }

.mb85 { margin-bottom: 85px !important; }

.pt85 { padding-top: 85px !important; }

.pl85 { padding-left: 85px !important; }

.pb85 { padding-bottom: 85px !important; }

.mt90 { margin-top: 90px !important; }

.mb90 { margin-bottom: 90px !important; }

.pt90 { padding-top: 90px !important; }

.pl90 { padding-left: 90px !important; }

.pb90 { padding-bottom: 90px !important; }

.mt95 { margin-top: 95px !important; }

.mb95 { margin-bottom: 95px !important; }

.pt95 { padding-top: 95px !important; }

.pl95 { padding-left: 95px !important; }

.pb95 { padding-bottom: 95px !important; }

.mt100 { margin-top: 100px !important; }

.mb100 { margin-bottom: 100px !important; }

.pt100 { padding-top: 100px !important; }

.pl100 { padding-left: 100px !important; }

.pb100 { padding-bottom: 100px !important; }

/* contents
----------------------------------------------- */
#contents { /*body.is-opening &{
	//display: none;
	opacity: 0;
}*/ }

/* opening-animation
----------------------------------------------- */
#opening-animation { position: fixed; z-index: 99999; background-color: #e4e4e4; width: 100%; height: 100%; top: 0; left: 0; }
#opening-animation__bg .opening-animation__patharea { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 0; transition: .5s; opacity: 0; }
#opening-animation__bg .opening-animation__patharea.in { opacity: 0.7; }

#opening-animation__bg-svg { width: 100%; height: 100%; position: absolute; bottom: 0; left: 0; z-index: 0; }
#opening-animation__bg-svg .cls-2, #opening-animation__bg-svg .cls-3, #opening-animation__bg-svg .cls-4 { fill-opacity: 0; fill: none; transition: all 0.8s; stroke: #242425; stroke-width: 0.1; stroke-linecap: round; stroke-linejoin: round; stroke-miterlimit: 10; }
#opening-animation__bg-svg .cls-2, #opening-animation__bg-svg .cls-3 { fill: #4d4d4d; }
#opening-animation__bg-svg .cls-4 { fill: #333; }
#opening-animation__bg-svg .cls-3 { opacity: .2; }
#opening-animation__bg-svg .cls-5 { fill: none; }
#opening-animation__bg-svg.draw .cls-4 { fill: #333; }

.opening-skip { position: absolute; z-index: 2; font-size: 20px; font-family: "Roboto", sans-serif; color: #fff; width: 88px; height: 22px; background-color: #000000; line-height: 22px; text-align: center; right: 40px; bottom: 35px; cursor: pointer; }
@media (max-width: 959px) { .opening-skip { right: 16px; bottom: 16px; } }
.opening-skip:before { content: '>>'; font-size: 14px; display: inline-block; margin-right: .5em; }

/* main_visual
----------------------------------------------- */
#main_visual { position: relative; width: 100%; z-index: 1; padding-top: 13vw; }
@media screen and (max-width: 767px) { #main_visual { padding-top: 19.556714472vw; } }
#main_visual:after { content: ''; display: block; background: url("../images/index/mv_bg.png") no-repeat; background-size: contain; width: 78.8vw; height: 37.35vw; position: absolute; top: 9vw; left: 0; right: 0; margin: 0 auto; z-index: -1; }
@media screen and (max-width: 767px) { #main_visual:after { top: 15.6453715776vw; } }

#index-kv-animation { position: relative; z-index: 1; }

.index-kv-slider { position: relative; z-index: 0; width: 83%; overflow: hidden; margin-left: auto; border-top-left-radius: 10px; border-bottom-left-radius: 10px; }
.index-kv-slider:before { content: ''; display: block; width: 17vw; height: 100%; background-color: rgba(255, 255, 255, 0.5); position: absolute; top: 0; left: 0; z-index: 1; border-top-left-radius: 10px; border-bottom-left-radius: 10px; }
@media screen and (max-width: 767px) { .index-kv-slider:before { width: 28.6831812256vw; } }
.index-kv-slider div li { position: relative; aspect-ratio: 1200/630; }
.index-kv-slider .slick-slide { overflow: hidden; padding-right: 2vw; }
@media screen and (max-width: 767px) { .index-kv-slider .slick-slide { padding-right: 3.9113428944vw; } }
.index-kv-slider .slick-list { overflow: visible; padding-right: 21vw; }
@media screen and (max-width: 767px) { .index-kv-slider .slick-list { padding-right: 18.2529335072vw; } }
@media screen and (max-width: 479px) { .index-kv-slider .slick-list { padding-right: 8.3507306889vw; } }
.index-kv-slider img { object-fit: cover; width: 100%; height: 100%; transition: 0.5s; font-family: 'object-fit: cover'; border-radius: 10px; }
@media screen and (max-width: 959px) { .index-kv-slider img { border-radius: 5px; } }
.index-kv-slider .slick-current img { transform: scale(1); }
.index-kv-slider .slick-arrow.slick-prev { left: 18vw; }
@media screen and (max-width: 767px) { .index-kv-slider .slick-arrow.slick-prev { left: 31.2907431551vw; } }

#index-kv-text { position: absolute; z-index: 3; top: 37.5%; left: 8%; /*@media screen and (max-width:959px){
	top: 220/959*100%;
	left: 80px;
}*/ /*@media screen and (max-width: 479px) {
	left: 40/479*100%;
}*/ }
@media screen and (min-width: 960px) { #index-kv-text { max-width: 27.5vw; } }
@media screen and (max-width: 767px) { #index-kv-text { top: 41.7209908735%; left: 5.2151238592%; } }
#index-kv-text h2 { font-family: "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ヒラギノ角ゴシック", "ＭＳ Ｐゴシック", sans-serif; font-size: 5vw; font-weight: 600; line-height: 1.2; margin-bottom: 2vw; }
#index-kv-text h2::before { display: block; width: 0; height: 0; margin-top: calc((1 - 1.25) * .5em); content: ""; }
#index-kv-text h2::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 1.25) * .5em); content: ""; }
@media screen and (max-width: 959px) { #index-kv-text h2 { font-size: max(38px, 48 / 959 * 100vw); margin-bottom: 2.0855057351vw; } }
@media screen and (max-width: 767px) { #index-kv-text h2 { font-size: max(32px, 50 / 767 * 100vw); } }
@media screen and (max-width: 479px) { #index-kv-text h2 { font-size: max(26px, 32 / 479 * 100vw); } }
#index-kv-text .mv_btn { background-color: #e6c820; display: inline-block; border-radius: 50px; position: relative; width: 20.75vw; height: max(36px, 85 / 2000 * 100vw); min-width: 240px; }
@media screen and (max-width: 959px) { #index-kv-text .mv_btn { min-width: 200px; } }
@media screen and (max-width: 767px) { #index-kv-text .mv_btn { width: 32.5945241199vw; height: max(30px, 40 / 767 * 100vw); min-width: 180px; } }
@media screen and (max-width: 479px) { #index-kv-text .mv_btn { min-width: 140px; } }
#index-kv-text .mv_btn:after { content: ''; display: block; background: url("../images/common/button_arrow_mv.png") no-repeat; background-size: contain; width: 29px; height: 18px; position: absolute; top: 0; bottom: 0; margin: auto 0; right: 2vw; transition: 0.3s; }
@media screen and (max-width: 959px) { #index-kv-text .mv_btn:after { width: 20px; height: 12px; } }
@media screen and (max-width: 479px) { #index-kv-text .mv_btn:after { width: 15px; height: 9px; } }
#index-kv-text .mv_btn:hover:after { right: 1vw; }
#index-kv-text .mv_btn a { width: 100%; height: 100%; font-size: max(20px, 28 / 2000 * 100vw); letter-spacing: 3px; font-weight: bold; display: flex; align-items: center; justify-content: center; padding-right: 30px; }
@media screen and (max-width: 959px) { #index-kv-text .mv_btn a { font-size: 16px; letter-spacing: 1px; } }
@media screen and (max-width: 767px) { #index-kv-text .mv_btn a { padding-right: 20px; } }
@media screen and (max-width: 479px) { #index-kv-text .mv_btn a { font-size: 14px; letter-spacing: 0px; } }
#index-kv-text p { color: #fff; margin-bottom: -10px; }
#index-kv-text p::before { display: block; width: 0; height: 0; margin-top: calc((1 - 2.5) * .5em); content: ""; }
#index-kv-text p::after { display: block; width: 0; height: 0; margin-bottom: calc((1 - 2.5) * .5em); content: ""; }
@media screen and (max-width: 1570px) { #index-kv-text p { font-size: 1.2738853503vw; } }
@media screen and (max-width: 959px) { #index-kv-text p { font-size: 16px; } }
@media screen and (max-width: 479px) { #index-kv-text p { font-size: 3.5490605428vw; } }
#index-kv-text p .bg-black { box-decoration-break: clone; -webkit-box-decoration-break: clone; display: inline; background-color: #000; padding: .3em 10px; margin-bottom: 10px; }

/* テキストフェードイン */
.fadein01 { transform: translateY(-50px); opacity: 0; transition: all 1.5s; }
.fadein01.show { transform: translateY(0); opacity: 1; }

/* バナーフェードイン */
.fadein02 { transform: translateY(-50px); opacity: 0; transition: all 1.5s; }
.fadein02.show { transform: translateY(0); opacity: 1; }

/* ヘッダーフェードイン */
.fadein03 { opacity: 0; transition: all 1.5s; }
.fadein03.show { opacity: 1; }

/* ニュースフィード
----------------------------------------------- */
#news { position: relative; margin: 0 auto; max-width: 1130px; padding-left: 40px; padding-right: 40px; margin-top: 9vw; /*&:after{
	@include content;
	background: url("../images/common/button_arrow.png") no-repeat;
	width: 31px;
	height: 31px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto 0;
	right: 20px;
}*/ }
@media screen and (max-width: 767px) { #news { padding-left: 2.6075619296vw; padding-right: 2.6075619296vw; } }
#news .content { border-radius: 30px; background-color: #fff; padding-left: 35px; padding-right: 50px; }
@media screen and (max-width: 959px) { #news .content { padding-left: 2.0855057351vw; } }
@media screen and (max-width: 767px) { #news .content { border-radius: 80px; padding-left: 4.5632333768vw; } }
#news .content .flex01 { display: flex; align-items: center; }
@media screen and (max-width: 767px) { #news .content .flex01 { align-items: flex-start; flex-direction: column; padding-top: 5px; padding-bottom: 10px; } }
#news .content .flex01 .flex02 { display: flex; align-items: center; }
#news .content .flex01 .tit { font-size: 25px; font-family: "Roboto", sans-serif; color: #000; position: relative; padding-right: 65px; }
@media screen and (max-width: 959px) { #news .content .flex01 .tit { padding-right: 3.1282586027vw; } }
@media screen and (max-width: 767px) { #news .content .flex01 .tit { padding-right: 33px; line-height: 1.6; font-size: 20px; } }
#news .content .flex01 .tit:after { content: ''; display: block; width: 1px; height: 40px; background-color: #c4c4c4; position: absolute; top: 0; bottom: 0; margin: auto 0; right: 37px; }
@media screen and (max-width: 959px) { #news .content .flex01 .tit:after { right: 15px; } }
@media screen and (max-width: 767px) { #news .content .flex01 .tit:after { height: 25px; } }
#news .content .flex01 .day { font-size: 20px; font-family: "Roboto", sans-serif; padding-right: 55px; }
@media screen and (max-width: 959px) { #news .content .flex01 .day { padding-right: 3.1282586027vw; } }
@media screen and (max-width: 767px) { #news .content .flex01 .day { font-size: 18px; } }
#news .content .flex01 .text { max-width: 682px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
@media screen and (max-width: 767px) { #news .content .flex01 .text { width: 100%; padding-right: 10px; max-width: 610px; } }
#news .content .flex01 .text a { font-size: 18px; line-height: 1.4; }
@media screen and (max-width: 1130px) { #news .content .flex01 .text a { font-size: max(16px, 18 / 1130 * 100vw); } }
#news .content .flex01 .text a:after { content: ''; display: block; background: url("../images/common/button_arrow.png") no-repeat; width: 31px; height: 31px; position: absolute; top: 0; bottom: 0; margin: auto 0; right: 47px; }
@media screen and (max-width: 767px) { #news .content .flex01 .text a:after { right: 27px; } }
@media screen and (max-width: 479px) { #news .content .flex01 .text a { font-size: 14px; } }

/* main
----------------------------------------------- */
/* セクション
----------------------------------------------- */
/* consultant
----------------------------------------------- */
#index_consultant { padding-top: 12.5vw; position: relative; z-index: 1; }
@media screen and (max-width: 767px) { #index_consultant { padding-top: 19.556714472vw; } }
#index_consultant .consultant01 { display: flex; justify-content: center; align-items: center; }
@media screen and (max-width: 959px) { #index_consultant .consultant01 { flex-direction: column; } }
#index_consultant .consultant01 .title { width: 650px; }
@media screen and (max-width: 959px) { #index_consultant .consultant01 .title { width: 100%; margin-bottom: 3.1282586027vw; } }
#index_consultant .consultant01 .title h3 { font-size: 50px; font-weight: bold; color: #494949; }
@media (min-width: 768px) and (max-width: 959px) { #index_consultant .consultant01 .title h3 .hidden-br { display: none; } }
@media (min-width: 960px) and (max-width: 1679px) { #index_consultant .consultant01 .title h3 { font-size: max(32px, 50 / 1679 * 100vw); } }
@media screen and (max-width: 959px) { #index_consultant .consultant01 .title h3 { font-size: max(26px, 50 / 959 * 100vw); } }
@media screen and (max-width: 767px) { #index_consultant .consultant01 .title h3 { text-align: center; } }
#index_consultant .consultant01 .slider-box-consultant01 { width: 930px; }
@media screen and (max-width: 1679px) { #index_consultant .consultant01 .slider-box-consultant01 { width: 55.3901131626vw; } }
@media screen and (max-width: 959px) { #index_consultant .consultant01 .slider-box-consultant01 { width: 100%; } }
#index_consultant .consultant01 .slider-box-consultant01 ul { background-color: #fff; border-radius: 60px; padding: 30px 50px; }
@media (min-width: 960px) and (max-width: 1120px) { #index_consultant .consultant01 .slider-box-consultant01 ul { padding: 1.7857142857vw 3.5714285714vw; } }
@media screen and (max-width: 767px) { #index_consultant .consultant01 .slider-box-consultant01 ul { padding: 2.6075619296vw 5.2151238592vw; } }
@media screen and (max-width: 569px) { #index_consultant .consultant01 .slider-box-consultant01 ul { padding: 0.8787346221vw 7.0298769772vw; margin-left: 16px; margin-right: 16px; } }
#index_consultant .consultant01 .slider-box-consultant01 ul li.slick-slide a { /*display: block;
height: 30vw; //ポイント1
max-height: 400px; //ポイント2
min-height: 350px; //ポイント2*/ }
#index_consultant .consultant01 .slider-box-consultant01 ul li a { font-size: 36px; color: #6b6b6b; line-height: 1.2; text-decoration-line: underline; text-underline-offset: 5px; text-decoration-thickness: 1px; /*文字列後ろの線の設定*/ }
@media screen and (min-width: 570px) { #index_consultant .consultant01 .slider-box-consultant01 ul li a { font-weight: bold; } }
@media (min-width: 960px) and (max-width: 1679px) { #index_consultant .consultant01 .slider-box-consultant01 ul li a { font-size: max(20px, 36 / 1679 * 100vw); } }
@media screen and (max-width: 959px) { #index_consultant .consultant01 .slider-box-consultant01 ul li a { font-size: max(22px, 36 / 959 * 100vw); } }
@media screen and (max-width: 569px) { #index_consultant .consultant01 .slider-box-consultant01 ul li a { font-size: max(18px, 22 / 959 * 100vw); } }
#index_consultant .consultant01 .slider-box-consultant01 ul li a.TextTyping span { display: none; }
#index_consultant .consultant01 .slider-box-consultant01 ul li a:after { content: "|"; animation: typinganime .8s ease infinite; text-decoration-line: none; }
@keyframes typinganime { from { opacity: 0; }
  to { opacity: 1; } }
#index_consultant .consultant02 { margin-top: 60px; position: relative; z-index: 2; }
@media screen and (max-width: 959px) { #index_consultant .consultant02 { margin-top: 6.2565172054vw; } }
#index_consultant .consultant02 .mini_tit { margin-bottom: 100px; }
@media screen and (max-width: 767px) { #index_consultant .consultant02 .mini_tit { margin-bottom: 10.4275286757vw; } }
#index_consultant .consultant02 ul li { margin: 0 25px; position: relative; aspect-ratio: 463/570; }
#index_consultant .consultant02 ul li img { position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; object-fit: cover; font-family: "object-fit: cover;"; }
#index_consultant .consultant02 ul li img { filter: grayscale(100%); }
#index_consultant .consultant02 ul li .text { position: absolute; bottom: 45px; left: 25px; padding-right: 25px; display: flex; flex-direction: column; align-items: flex-start; }
#index_consultant .consultant02 ul li .text h3 { font-size: 40px; font-family: "Roboto", sans-serif; color: #fff; line-height: 1.2; border-bottom: 10px solid #fff; margin-bottom: 20px; transition: 0.3s; }
@media (min-width: 1200px) and (max-width: 1679px) { #index_consultant .consultant02 ul li .text h3 { font-size: max(28px, 40 / 1679 * 100vw); } }
@media (min-width: 768px) and (max-width: 1199px) { #index_consultant .consultant02 ul li .text h3 { font-size: max(28px, 40 / 1199 * 100vw); } }
@media (min-width: 561px) and (max-width: 767px) { #index_consultant .consultant02 ul li .text h3 { font-size: max(28px, 40 / 767 * 100vw); } }
@media screen and (max-width: 560px) { #index_consultant .consultant02 ul li .text h3 { font-size: max(28px, 40 / 560 * 100vw); } }
#index_consultant .consultant02 ul li .text p { font-size: 22px; font-weight: bold; color: #fff; line-height: 1.4; transition: 0.3s; }
@media (min-width: 1200px) and (max-width: 1679px) { #index_consultant .consultant02 ul li .text p { font-size: max(18px, 22 / 1679 * 100vw); } }
@media (min-width: 768px) and (max-width: 1199px) { #index_consultant .consultant02 ul li .text p { font-size: max(18px, 22 / 1199 * 100vw); } }
@media (min-width: 561px) and (max-width: 767px) { #index_consultant .consultant02 ul li .text p { font-size: max(18px, 22 / 767 * 100vw); } }
@media screen and (max-width: 560px) { #index_consultant .consultant02 ul li .text p { font-size: max(18px, 22 / 560 * 100vw); } }
#index_consultant .consultant02 ul li a:hover img { filter: grayscale(0); }
#index_consultant .consultant02 ul li a:hover h3 { border-bottom: 10px solid #e6c820; }
#index_consultant .consultant02 ul li a:hover img { opacity: 1; }

/* concept
----------------------------------------------- */
#index_concept { padding-top: 80px; display: flex; flex-wrap: wrap; justify-content: space-between; /* アニメーションスタートの遅延時間を決めるCSS*/ /* スクロールをしたら出現する要素にはじめに透過0を指定　*/ }
#index_concept .content_box { width: 50%; display: flex; flex-direction: column; align-items: center; position: relative; z-index: 1; margin-bottom: 10vw; }
@media screen and (max-width: 1679px) { #index_concept .content_box { width: 48%; } }
@media screen and (max-width: 767px) { #index_concept .content_box { width: 100%; }
  #index_concept .content_box:last-child { margin-bottom: 0; } }
@media screen and (min-width: 768px) { #index_concept .content_box:nth-child(2n+1):nth-last-child(-n+2), #index_concept .content_box:nth-child(2n+1):nth-last-child(-n+2) ~ div { margin-bottom: 0; } }
#index_concept .content_box .number { font-size: 300px; font-weight: bold; font-family: "Roboto", sans-serif; position: relative; z-index: -1; }
@media screen and (max-width: 1679px) { #index_concept .content_box .number { font-size: max(120px, 300 / 1679 * 100vw); } }
@media screen and (max-width: 767px) { #index_concept .content_box .number { font-size: max(120px, 300 / 767 * 100vw); } }
#index_concept .content_box .number.cont01 { top: 120px; }
@media screen and (max-width: 1679px) { #index_concept .content_box .number.cont01 { top: max(60px, 120 / 1679 * 100vw); } }
@media screen and (max-width: 767px) { #index_concept .content_box .number.cont01 { top: max(60px, 120 / 767 * 100vw); } }
#index_concept .content_box .number.cont02 { top: 110px; }
@media screen and (max-width: 1679px) { #index_concept .content_box .number.cont02 { top: max(50px, 110 / 1679 * 100vw); } }
@media screen and (max-width: 767px) { #index_concept .content_box .number.cont02 { top: max(50px, 110 / 767 * 100vw); } }
#index_concept .content_box .number p { text-align: center; line-height: 0.5; color: #fff; transition: 0.3s; }
#index_concept .content_box .text { text-align: center; }
#index_concept .content_box .text h3 { font-size: 40px; font-weight: bold; line-height: 1.4; margin-bottom: 25px; transition: 0.3s; }
@media screen and (max-width: 1679px) { #index_concept .content_box .text h3 { font-size: max(28px, 40 / 1679 * 100vw); } }
@media screen and (max-width: 767px) { #index_concept .content_box .text h3 { font-size: max(28px, 40 / 767 * 100vw); } }
#index_concept .content_box .text p { font-size: 18px; }
@media (min-width: 768px) and (max-width: 959px) { #index_concept .content_box .text p { font-size: 16px; } }
#index_concept .content_box a:hover .number p { color: #e6c820; }
#index_concept .content_box a:hover .text h3 { color: #e6c820; }
#index_concept .fadeup { animation-name: fadeUpAnime; animation-duration: 1.5s; animation-fill-mode: forwards; opacity: 0; }
#index_concept .time01 { animation-delay: 0.8s; }
#index_concept .fadeuptrigger { opacity: 0; }
@keyframes fadeUpAnime { from { opacity: 0; transform: translateY(50px); }
  to { opacity: 1; transform: translateY(0); } }
/* works
----------------------------------------------- */
#index_works { padding-top: 13vw; }
@media screen and (max-width: 959px) { #index_works { padding-top: 120px; } }
#index_works .header { text-align: center; margin-bottom: 50px; }
@media screen and (max-width: 767px) { #index_works .header { margin-bottom: 30px; } }
#index_works .header h3 { font-size: 50px; font-weight: bold; line-height: 1; color: #494949; margin-bottom: 60px; }
@media screen and (max-width: 959px) { #index_works .header h3 { font-size: max(32px, 50 / 959 * 100vw); } }
@media screen and (max-width: 767px) { #index_works .header h3 { margin-bottom: 30px; } }
#index_works .works01 { display: flex; flex-wrap: wrap; justify-content: center; position: relative; z-index: 2; }
#index_works .works01 div { width: 50%; display: flex; flex-direction: column; align-items: center; }
@media screen and (max-width: 479px) { #index_works .works01 div { width: 100%; margin-bottom: 50px; }
  #index_works .works01 div:last-child { margin-bottom: 0; } }
#index_works .works01 div:first-child { padding-right: 5vw; }
@media screen and (max-width: 479px) { #index_works .works01 div:first-child { padding-right: 0; } }
#index_works .works01 div:last-child { padding-left: 5vw; }
@media screen and (max-width: 479px) { #index_works .works01 div:last-child { padding-left: 0; } }
#index_works .works01 div .tit { width: 480px; padding: 5px 20px; font-size: 25px; line-height: 1.4; text-align: center; color: #fff; border-radius: 30px; background-color: #000; }
@media screen and (min-width: 480px) { #index_works .works01 div .tit { font-weight: bold; } }
@media screen and (max-width: 1099px) { #index_works .works01 div .tit { width: 43.6760691538vw; } }
@media screen and (max-width: 959px) { #index_works .works01 div .tit { font-size: max(20px, 25 / 959 * 100vw); } }
@media screen and (max-width: 479px) { #index_works .works01 div .tit { width: 100%; font-size: 18px; } }
#index_works .works01 div .count { line-height: 1; font-size: 25px; color: #7a7a7a; margin-top: 50px; position: relative; }
@media screen and (max-width: 767px) { #index_works .works01 div .count { font-size: max(22px, 25 / 767 * 100vw); margin-top: 6.518904824vw; } }
@media screen and (max-width: 479px) { #index_works .works01 div .count { margin-top: 30px; } }
#index_works .works01 div .count .count-size { font-size: 150px; font-family: "Roboto", sans-serif; font-weight: bold; color: #e6c820; }
@media screen and (max-width: 1099px) { #index_works .works01 div .count .count-size { font-size: max(80px, 150 / 1099 * 100vw); } }
#index_works .works01 div .count .unit { position: relative; bottom: 0; right: 0; }
#index_works .works01 div .small { font-size: 16px; font-weight: bold; color: #494949; text-align: center; }
#index_works .works01 div p + p { margin-top: 0; }
#index_works .works02 { margin-top: 80px; }
#index_works .works02 ul li { margin: 0 25px; position: relative; aspect-ratio: 463/570; }
#index_works .works02 ul li img { position: absolute; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; object-fit: cover; font-family: "object-fit: cover;"; }
@media screen and (max-width: 559px) { #index_works .works02 ul li { margin: 0 10px; } }
#index_works .works02 ul li .text { position: absolute; top: 125px; left: 25px; padding-right: 25px; }
@media (min-width: 1200px) and (max-width: 1679px) { #index_works .works02 ul li .text { top: 7.4449076831vw; } }
@media (min-width: 768px) and (max-width: 1199px) { #index_works .works02 ul li .text { top: 10.4253544621vw; } }
@media (min-width: 560px) and (max-width: 767px) { #index_works .works02 ul li .text { top: 16.29726206vw; } }
@media screen and (max-width: 559px) { #index_works .works02 ul li .text { top: 10.7142857143vw; left: 10px; padding-right: 10px; } }
#index_works .works02 ul li .text h3 { font-size: 30px; font-weight: bold; color: #fff; line-height: 1.2; border-top: 10px solid #fff; padding-top: 15px; transition: 0.3s; }
@media (min-width: 1200px) and (max-width: 1679px) { #index_works .works02 ul li .text h3 { font-size: max(20px, 30 / 1679 * 100vw); } }
@media (min-width: 768px) and (max-width: 1199px) { #index_works .works02 ul li .text h3 { font-size: max(20px, 30 / 1199 * 100vw); } }
@media (min-width: 560px) and (max-width: 767px) { #index_works .works02 ul li .text h3 { font-size: max(20px, 30 / 767 * 100vw); } }
@media screen and (max-width: 559px) { #index_works .works02 ul li .text h3 { font-size: max(18px, 20 / 560 * 100vw); border-top: 8px solid #fff; } }
#index_works .works02 ul li a:hover h3 { color: #000; border-top: 10px solid #e6c820; }
#index_works .works02 ul li a:hover img { opacity: 0.7; }

/* recruit
----------------------------------------------- */

/*# sourceMappingURL=index.css.map */
