@charset "UTF-8";


#main .section-body{ position: relative; z-index: 20; }
#main .section-greeting{ padding-top: 95px; padding-bottom: 100px; /*width: 860px;*/ }
#main .section-greeting .split-view{ display: flex; display: -ms-flex; justify-content: space-between; flex-direction: row-reverse; }
#main .section-greeting .split-view .photo{ width: 29.0698%; }
#main .section-greeting .split-view .txt-body{ width: 65.1163%; }
#main .section-greeting .split-view .txt-body .ttl{ color: #333333; font-size: 1.75rem; line-height: 1.7857; font-weight: bold; }
#main .section-greeting .split-view .txt-body .txt{ font-size: 1rem; line-height: 2.125; margin-top: 20px; }
#main .section-philosophy .sticky-area{ height: 200vh; position: relative; z-index: 20; overflow: hidden; }
#main .section-philosophy .sticky-screen{ position: absolute; top: 50vh; height: calc(var(--vh, 1vh) * 100); width: 100%; }
#main .section-philosophy .fill-bg{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: url(../image/p02.jpg) center center no-repeat; background-size: cover; background-attachment: fixed; }
@supports (-webkit-touch-callout: none) {
	#main .section-philosophy .fill-bg{ background-attachment: scroll; }
}
#main .section-philosophy .sticky-screen .txt-body{ width: 400px; background-color: rgba(255,255,255,0.85); position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); padding: 45px 0 60px; text-align: center; }
#main .section-philosophy .sticky-screen .txt-body .head{ font-size: 1rem; color: #3cb9d8; }
#main .section-philosophy .sticky-screen .txt-body .txt{ font-size: 1.25rem; line-height: 2.3; color: #263348; margin-top: 25px; }
#main .section-philosophy .sticky-screen .photo{ position: absolute; top: 50%; overflow: hidden; border-radius: 17px; }
#main .section-philosophy .sticky-screen .photo01{ right: 50%; margin-right: 322px; margin-top: -102px; }
#main .section-philosophy .sticky-screen .photo02{ left: 50%; margin-left: 324px; margin-top: -137px; }
#main .section-philosophy .sticky-screen .photo03{ right: 50%; margin-right: 380px; margin-top: -157px; }
#main .section-philosophy .sticky-screen .photo04{ left: 50%; margin-left: 436px; margin-top: -125px; }
#main .section-profile{ padding-top: 84px; padding-bottom: 110px; }
#main .section-profile .list-item{ overflow: hidden; }
#main .section-profile .list-item .head{ float: left; width: 188px; font-size: 1rem; line-height: 1.875; font-weight: bold; color: #333333; clear: left; }
#main .section-profile .list-item .txt{ overflow: hidden; font-size: 1rem; line-height: 1.875; }
#main .section-profile .list-item .txt~.head,
#main .section-profile .list-item .txt~.txt{ margin-top: 15px; }
#main .section-history{ padding-top: 84px; padding-bottom: 110px; }
#main .section-history .history-head{ position: absolute; font-size: 1rem; line-height: 1.875; font-weight: bold; color: #333333; }
#main .section-history .list-item{ overflow: hidden; padding-left: 77px; }
#main .section-history .list-item .year{ float: left; width: 150px; font-size: 1rem; line-height: 1.875; color: #333333; clear: left; }
#main .section-history .list-item .txt{ overflow: hidden; font-size: 1rem; line-height: 1.875; }
#main .section-history .list-item .txt~.year,
#main .section-history .list-item .txt~.txt{ margin-top: 15px; }
#main .section-business{ padding-top: 95px; padding-bottom: 120px; }
#main .section-business .cat:nth-child(n+2){ margin-top: 90px; }
#main .section-business .cat-ttl{ border-bottom: 1px solid #333333; font-size: 1.375rem; color: #333333; font-weight: bold; padding-bottom: 5px; margin-bottom: 35px; }
#main .section-business .cat .list-item .item .name{ width: 220px; font-size: 1rem; color: #333333; font-weight: bold; }
#main .section-business .cat .list-item .item .info{ font-size: 0.875rem; line-height: 1.5714; color: #666666; flex: 1; }
#main .section-business .cat .list-item .item .navi{ width: 100%; max-width: 190px; }
#main .section-business .cat .list-item .item .navi a{ display: block; height: 50px; border-radius: 25px; background-color: #3cb9d8; text-decoration: none; color: #ffffff; position: relative; }
#main .section-business .cat .list-item .item .navi a .word{ font-size: 1rem; position: absolute; left: 0; top: 50%; width: 100%; transform: translateY(-50%); text-align: center; }
#main .section-business .cat .list-item .item .navi a .arrow{ width: 11px; height: 1px; position: absolute; right: 0; top: 50%; transform: translateY(-50%); background-color: #ffffff; margin-right: 10%; }
#main .section-business .cat .list-item .item .navi a .arrow::before{ content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%); border: solid transparent; border-width: 4px 0 4px 4px; border-left-color: #ffffff; }
#main .section-business .cat01 .list-item .item{ border-bottom: 1px solid #d0d0d0; padding: 0 0 15px; display: flex; display: -ms-flex; }
#main .section-business .cat01 .list-item .item:nth-child(n+2){ padding-top: 15px; }
#main .section-business .cat02 .list-item{ display: flex; display: -ms-flex; flex-wrap: wrap; justify-content: flex-start; }
#main .section-business .cat02 .list-item .item{ width: 30.5%; margin-left: 4.25%; }
#main .section-business .cat02 .list-item .item:nth-child(3n+1){ margin-left: 0; }
#main .section-business .cat02 .list-item .item:nth-child(n+4){ margin-top: 50px; }
#main .section-business .cat02 .list-item .item .photo img{ width: 100%; height: auto; }
#main .section-business .cat02 .list-item .item .name{ margin-top: 10px; }
#main .section-business .cat02 .list-item .item .info{ margin-top: 5px; }
#main .section-business .cat02 .list-item .item .navi{ margin: 15px auto 0; }
#main .section-partner{ padding-top: 70px; padding-bottom: 340px; }
#main .section-partner .list-item{ display: flex; display: -ms-flex; justify-content: space-between; flex-wrap: wrap; max-width: 690px; }
#main .section-partner .list-item .item{ width: 50%; font-size: 1rem; font-weight: bold; color: #333333; }
#main .section-partner .list-item .item:nth-child(n+3){ margin-top: 20px; }
#main .section-partner .recruit-txt{ margin-top: 60px; }
#main .section-partner .recruit-txt a{ display: inline-block; }

#main .bg-wrapper .lord02{ position: absolute; left: 0; bottom: 0; width: 100%; margin-bottom: 120px; }
#main .bg-wrapper .lord02 img{ width: 100%; height: 100%; }
#main .bg-wrapper .lord02 .line01{ width: calc(76.5% - 145px); height: 50px; position: absolute; left: 0; top: 0; background: url(/assets/image/common/d03.svg) right center repeat-x; background-size: auto 100%; }
#main .bg-wrapper .lord02 .vertical{ width: 290px; margin-left: 76.5%; transform: translateX(-50%); }
#main .bg-wrapper .lord02 .line02{ width: 170px; height: 170px; margin-left: auto; transform: rotate(270deg); }
#main .bg-wrapper .lord02 .line04{ width: 170px; height: 170px; transform: rotate(90deg); }
#main .bg-wrapper .lord02 .line05{ width: calc(23.5% - 145px); height: 50px; position: absolute; right: 0; bottom: 0; background: url(/assets/image/common/d03.svg) 0 center repeat-x; background-size: auto 100%; }
#main .bg-wrapper .lord02 .car{ width: 160px; position: absolute; right: 23.5%; top: 0; margin: -40px 38.25% 0 0; transform: scaleX(-1); }


@media screen and (max-width: 1400px) {
}
@media screen and (max-width: 1060px) {
	#main .section-greeting .split-view{ display: block; }
	#main .section-greeting .split-view .photo{ width: 60%; max-width: 250px; margin: 0 auto; }
	#main .section-greeting .split-view .txt-body{ width: 100%; margin-top: 20px; }
	#main .section-greeting .split-view .txt-body .ttl{ font-size: 1.2857rem; }
	#main .section-business .cat01 .list-item .item{ display: grid; grid-template-columns: auto 190px; grid-template-rows: repeat(2, auto); align-items: center; }
	#main .section-business .cat01 .list-item .item .name{ width: auto; font-size: 1rem; color: #333333; font-weight: bold; grid-column: 1; grid-row: 1; }
	#main .section-business .cat01 .list-item .item .info{ width: auto; grid-column: 1; grid-row: 2; }
	#main .section-business .cat01 .list-item .item .navi{ grid-column: 2; grid-row: 1 / 3; }
	#main .section-business .cat02 .list-item .item:nth-child(n){ width: 48%; margin-left: 4%; }
	#main .section-business .cat02 .list-item .item:nth-child(2n+1){ margin-left: 0; }
	#main .section-business .cat02 .list-item .item:nth-child(n+3){ margin-top: 50px; }
}
@media screen and (max-width: 767.5px) {
	#main .section-greeting{ padding-top: 13.3333%; padding-bottom: 15%; }
	#main .section-greeting .split-view .txt-body{ margin-top: 5%; }
	#main .section-greeting .split-view .txt-body .txt{ margin-top: 5%; }
	#main .section-philosophy .sticky-area{ height: 220vh; position: relative; z-index: 20; overflow: visible; }
	#main .section-philosophy .sticky-screen{ position: absolute; top: 50vh; height: calc(var(--vh, 1vh) * 100); width: 100%; }
	#main .section-philosophy .fill-bg{ height: calc(var(--vh, 1vh) * 100); position: sticky; }
	#main .section-philosophy .sticky-screen .txt-body{ width: 80%; padding: 12% 0 16%; }
	#main .section-philosophy .sticky-screen .txt-body .head{ font-size: 1.14rem; }
	#main .section-philosophy .sticky-screen .txt-body .txt{ font-size: 1.285rem; line-height: 2.22; margin-top: 10%; }
	#main .section-philosophy .sticky-screen .photo{ border-radius: 4.5333vw; }
	#main .section-philosophy .sticky-screen .photo01{ right: 50%; margin-right: 5%; width: 33.3333%; margin-top: -71.333%; }
	#main .section-philosophy .sticky-screen .photo02{ left: 50%; margin-left: 0; width: 43.7333%; margin-top: -78%; }
	#main .section-philosophy .sticky-screen .photo03{ right: 50%; margin-right: 0; width: 44.2667%; margin-top: 21.867%; }
	#main .section-philosophy .sticky-screen .photo04{ left: 50%; margin-left: 5%; width: 34.6667%; margin-top: 28%; }
	#main .section-philosophy .sticky-screen .photo img{ width: 100%; height: auto; }
	#main .section-profile{ padding-top: 28.2666%; padding-bottom: 33.3333%; }
	#main .section-profile .list-item .head{ width: 33.3333%; line-height: 1.5714; }
	#main .section-profile .list-item .txt{ line-height: 1.5714; }
	#main .section-profile .list-item .txt~.head,
	#main .section-profile .list-item .txt~.txt{ margin-top: 6.6666%; }
	#main .section-history{ padding-top: 31.2%; padding-bottom: 21.3333%; }
	#main .section-history .history-head{ line-height: 1.5714; }
	#main .section-history .list-item{ padding-left: 14%; }
	#main .section-history .list-item .year{ width: 35%; line-height: 1.5714; }
	#main .section-history .list-item .txt{ line-height: 1.5714; }
	#main .section-history .list-item .txt~.year,
	#main .section-history .list-item .txt~.txt{ margin-top: 6.6666%; }
	#main .section-business{ padding-top: 18.6666%; padding-bottom: 18.6666%; }
	#main .section-business .cat:nth-child(n+2){ margin-top: 16.6666%; }
	#main .section-business .cat-ttl{ font-size: 1.285rem; padding-bottom: 1.6666%; margin-bottom: 5%; }
	#main .section-business .cat .list-item .item .navi{ max-width: 140px; margin: 5% auto 0; }
	#main .section-business .cat .list-item .item .navi a{ display: block; height: 0; padding-top: 31.4286%; border-radius: 5.8666vw; }
	#main .section-business .cat .list-item .item .navi a .arrow{ width: 3.5vw; }
	#main .section-business .cat .list-item .item .navi a .arrow::before{ content: ""; position: absolute; right: 0; top: 50%; transform: translateY(-50%); border: solid transparent; border-width: 4px 0 4px 4px; border-left-color: #ffffff; }
	#main .section-business .cat01 .list-item .item{ display: block; padding-bottom: 5%; }
	#main .section-business .cat01 .list-item .item:nth-child(n+2){ padding-top: 5%; }
	#main .section-business .cat01 .list-item .item .navi{ width: 46.6666%; }
	#main .section-business .cat02{ overflow: hidden; }
	#main .section-business .cat02 .list-item .item:nth-child(n){ width: 46.5%; margin-left: 7%; }
	#main .section-business .cat02 .list-item .item:nth-child(2n+1){ margin-left: 0; }
	#main .section-business .cat02 .list-item .item:nth-child(n+3){ margin-top: 10%; }
	#main .section-business .cat02 .list-item .item .name{ margin-top: 7.1428%; }
	#main .section-business .cat02 .list-item .item .info{ margin-top: 3.5714%; }
	#main .section-business .cat02 .list-item .item .navi{ margin: 7.1428% auto 0; }
	#main .section-partner{ padding-top: 18.6666%; padding-bottom: 48%; }
	#main .section-partner .list-item{display: block; max-width: none; }
	#main .section-partner .list-item .item{ width: 100%; }
	#main .section-partner .list-item .item:nth-child(n+2){ margin-top: 1.6666%; }
	#main .section-partner .recruit-txt{ margin-top: 13.3333%; }
	#main .bg-wrapper .lord02{ margin-bottom: 17.5457%; }
	#main .bg-wrapper .lord02 .line01{ width: calc(81.1634% - 19.3333vw); height: 6.6666vw; }
	#main .bg-wrapper .lord02 .vertical{ width: 38.6666vw; margin-left: 81.1634%; }
	#main .bg-wrapper .lord02 .line02{ width: 22.6666vw; height: 22.6666vw; margin-left: auto; }
	#main .bg-wrapper .lord02 .line04{ width: 22.6666vw; height: 22.6666vw; }
	#main .bg-wrapper .lord02 .line05{ width: calc(18.8366% - 19.3333vw); height: 6.6666vw; }
	#main .bg-wrapper .lord02 .car{ width: 22.1759%; position: absolute; right: 18.8366%; margin: -6% 40.5817% 0 0; }
}




/*hover*/
/*-------------------------------------------------------*/
#main .section-business .cat .list-item .item .navi a{ transition: transform 0.3s; }
#main .section-business .cat .list-item .item .navi a:active{ transform: scale(1.03); }
#main .section-partner .recruit-txt a{ transition: transform 0.3s; }
#main .section-partner .recruit-txt a:active{ transform: scale(1.03); }

@media (hover: hover){
	#main .section-business .cat .list-item .item .navi a:hover{ transform: scale(1.03); }
	#main .section-partner .recruit-txt a:hover{ transform: scale(1.03); }
}