@charset "utf-8";

/*===================================================================
	top
===================================================================*/
#main_visual { position:relative; }
#main_visual > img { display:none; }
#main_visual .main_text { padding:70vh 0 120px; color:#F0F6FA; }
#main_visual .main_text a { color:#fff; }
#main_visual .main_text .main_text_top { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:20px; }
#main_visual .main_text .hl_main_text { display:flex; flex-direction:column; }
#main_visual .main_text .hl_main_text .main_parent { font-size:0; line-height:0; white-space:nowrap; }
#main_visual .main_text .hl_main_text .main_parent > * { font-size:110px; line-height:1.1; color:#F0F6FA; display:inline-block; }
#main_visual .main_text .hl_main_text .main_parent .main { mix-blend-mode:overlay; }
#main_visual .main_text .hl_main_text .main_parent .main_clone { mix-blend-mode:screen; opacity:.25; width:0; height:0; overflow:visible; pointer-events:none; user-select:none; }
#main_visual .main_text .hl_main_text .sub { font-size:2em; font-weight:bold; }

#main_visual .main_text .main_text_button_wrap ul { display:flex; }
#main_visual .main_text .main_text_button_wrap ul li:not(:first-child) { padding-left:20px; }
#main_visual .main_text .main_text_button_wrap ul li a { display:inline-block; padding:5px 20px; border:1px solid #fff; border-radius:3px; }
#main_visual .main_text .main_text_button_wrap ul li a .main { display:inline-block; padding-left:15px; background:url(../image/layout/icon/arrow_r.png) no-repeat center left / 12px auto; }
@media (max-width:1200px) {
	#main_visual .main_text .main_text_top { flex-wrap:wrap; }
	#main_visual .main_text .main_text_top > * { width:100%; }
	#main_visual .main_text .main_text_button_wrap ul { justify-content:flex-end; margin-top:10px; }
}
@media (max-width:767px) {
	#main_visual { background-position:top center; background-size:auto 100vw; }
	#main_visual .main_text { padding-top:100vw; }
	#main_visual .main_text .hl_main_text { padding-bottom:20px; }
	#main_visual .main_text .hl_main_text .main_parent > * { font-size:60px; }
	#main_visual .main_text .hl_main_text .sub { font-size:1.5em; }
	#main_visual .main_text .main_text_button_wrap { padding-top:20px; }
	#main_visual .main_text .main_text_button_wrap ul { flex-direction:column; }
	#main_visual .main_text .main_text_button_wrap ul li { padding-left:0!important; }
	#main_visual .main_text .main_text_button_wrap ul li:not(:last-child) { margin-bottom:10px; }
	#main_visual .main_text .main_text_top > .main_text_button_wrap,
	#main_visual .main_text .main_text_bottom,
	#main_visual .main_text .main_text_bottom a { color:#222!important; }
	#main_visual .main_text .main_text_button_wrap ul li a .main { background-image:url(../image/layout/icon/arrow_r-b.png); }
	#main_visual .main_text .main_text_button_wrap ul li a { color:#222; border-color:#222; }
}

#about { background:url(../image/contents/top/about_bg.jpg) no-repeat center center / cover; }
#about .about_wrap { display:flex; width:100%; max-width:1100px; margin-left:auto; margin-right:auto; border-radius:10px; overflow:hidden; margin-top:-70px; }
#about .about_wrap > .unit { width:50%; display:flex; padding:30px 60px; align-items:center; justify-content:center; flex-direction:column; color:#fff; background:var(--c_intern); }
#about .about_wrap > .unit._short { --c_intern:var(--c_intern-short); }
#about .about_wrap > .unit._long { --c_intern:var(--c_intern-long); }
#about .about_wrap > .unit .image { margin-bottom:20px; }
#about .about_wrap > .unit .image img { height:210px; width:auto; }
#about .about_wrap > .unit .hl_about { margin-bottom:20px; }
#about .about_wrap > .unit .hl_about .main { font-weight:900; font-size:2em; }
#about .about_wrap > .unit .text { font-size:1.25em; font-weight:bold; text-align:center; margin-bottom:20px; }
#about .about_wrap > .unit .button_wrap { text-align:center; width:100%; display:block; }
#about .about_wrap > .unit .button_wrap .button_about { display:block; background:#fff; padding:8px 0; text-align:center; width:100%; border-radius:30px; }
#about .about_wrap > .unit .button_wrap .button_about .main { font-size:1.25em; font-weight:900; padding-left:28px; background:no-repeat center left / 22px auto; color:var(--c_intern); }
#about .about_wrap > .unit._short .button_wrap .button_about .main { background-image:url(../image/layout/icon/arrow2_b-p.png); }
#about .about_wrap > .unit._long .button_wrap .button_about .main { background-image:url(../image/layout/icon/arrow2_b-g.png); }
@media (max-width:1200px) {
	#about .about_wrap > .unit { padding:30px; }
}
@media (max-width:991px) {
	#about .about_wrap { flex-wrap:wrap; }
	#about .about_wrap > .unit { width:100%; }
	#about .about_wrap > .unit .hl_about .main { font-size:1.5em; }
	#about .about_wrap > .unit .text { font-size:1em; }
	#about .about_wrap > .unit .button_wrap .button_about { max-width:430px; margin-left:auto; margin-right:auto; }
}
@media (max-width:767px) {
	#about .about_wrap > .unit { padding:20px; }
	#about .about_wrap > .unit .image { margin-bottom:10px; }
	#about .about_wrap > .unit .hl_about { margin-bottom:10px; }
	#about .about_wrap > .unit .image img { height:140px; }
	#about .about_wrap > .unit .button_wrap .button_about .main { font-size:1.1em; background-size:16px auto; }

}

#business { background:url(../image/contents/top/business_bg_top.png) no-repeat top left /  805px auto, url(../image/contents/top/business_bg_bottom.png) no-repeat bottom right /  805px auto; background-color:#49256B; }
#business .business_wrap { position:relative; }
#business .business_wrap::before { content:""; width:1272px; height:138px; background:url(../image/contents/top/business_bg_text.png) no-repeat top center / contain; position:absolute; display:block; top:0; left:50%; transform:translateX(-50%); z-index:1; }
#business .business_wrap > * { position:relative; z-index:2; }
#business .business_wrap .business_list { }
#business .business_wrap .business_list .unit { background:#fff; margin-bottom:20px; border-radius:5px; }
#business .business_wrap .business_list .unit .image { overflow:hidden; border-radius:5px 5px 0 0; }
#business .business_wrap .business_list .unit .image .img_back { width:100%; height:0; padding-bottom:55.618%; }
#business .business_wrap .business_list .title { text-align:center; line-height:1.4; margin:20px 0; position:relative; }
#business .business_wrap .business_list .title::before { content:""; width:36px; height:1px; background:#B5B5B5; position:absolute; top:50%; left:-16px; }
#business .business_wrap .business_list .title .main { font-weight:bold; font-size:1.5em; color:#49256B; }
#business .business_wrap .business_list .text { padding:0 20px 30px; }
#business .business_wrap .business_list .text ul li { position:relative; font-weight:500; padding-left:15px; font-size:1.1em; line-height:1.4; }
#business .business_wrap .business_list .text ul li::before { content:""; background:#49256B; width:8px; height:8px; position:absolute; top:calc( ( 1em * 1.4 ) / 2 ); left:0; transform:translateY(-50%); }
@media (max-width:1200px) {
	#business .business_wrap .business_list .title .main { font-size:1.25em; }
}
@media (max-width:767px) {
	#business .business_wrap::before { width:636px; height:69px; }
}

#flow { background:url(../image/contents/top/flow_bg.jpg) no-repeat center center / cover; }
#flow .flow_wrap { position:relative; }
#flow .flow_wrap::before { content:""; width:338px; height:138px; background:url(../image/contents/top/flow_bg_text.png) no-repeat top right / contain; position:absolute; top:0; right:0; z-index:1; }
#flow .flow_wrap > * { z-index:2; }
#flow .flow_box { background:rgba(255, 255, 255, 0.75); box-shadow:0 1px 4px rgba(0,0,0,.16); border-radius:20px; padding:50px 50px 70px; position:relative; }
#flow .flow_box::before { content:""; width:50%; height:0; padding-bottom:calc(50% * 0.46816); background:url(../image/contents/top/flow_image.png) no-repeat left bottom / contain; display:block; position:absolute; bottom:-15px; left:25px; }
@media (max-width:767px) {
	#flow .flow_wrap::before { width:169px; height:69px; }
	#flow .flow_box { padding:50px 20px 5%; }
	#flow .flow_box .image { max-width:400px; margin-left:auto; margin-right:auto; }
	#flow .flow_box::before { left:auto; right:-10px; }
}

#fascination { background:url(../image/contents/top/fascination_bg.jpg) repeat-y top center / 100% auto; }
#fascination .fascination_wrap { position:relative; overflow-x:hidden; }
#fascination .fascination_wrap::before { content:""; width:844px; height:138px; background:url(../image/contents/top/fascination_bg_text.png) no-repeat top left / contain; position:absolute; top:0; left:0; z-index:1; }
#fascination .fascination_wrap > * { z-index:2; }
#fascination .fascination_unit { display:flex; padding-top:40px; flex-direction:row; }
#fascination .fascination_unit:not(:last-child) { margin-bottom:60px; }
#fascination .fascination_unit:nth-child(2n) { display:flex; flex-direction:row-reverse; }
#fascination .fascination_unit .image { width:54%; position:relative; z-index:2; padding-right:40px; }
#fascination .fascination_unit:nth-child(2n) .image { padding-left:40px; padding-right:0; }
#fascination .fascination_unit .image .img_back { width:100%; height:100%; margin-top:-40px; border-radius:0 20px 20px 0; }
#fascination .fascination_unit:nth-child(2n) .image .img_back { border-radius:20px 0 0 20px; }
#fascination .fascination_unit .text { width:46%; max-width:calc( 46% - ( 100% - 1250px ) / 2 ); position:relative; z-index:1; }
#fascination .fascination_unit .text .title { position:relative; padding:0 0 40px; text-align:center; z-index:1; }
#fascination .fascination_unit .text .title .main { font-weight:bold; font-size:4em; letter-spacing:.1em; padding-left:.1em; position:relative; z-index:1; color:#49256B; }
#fascination .fascination_unit .text .title .sub { position:absolute; z-index:-1; line-height:1; color:rgba(73, 37, 107, 0.07); letter-spacing:5px; padding-left:5px; bottom:0; left:50%; transform:translateX(-50%); font-size:7em; }
#fascination .fascination_unit .text .text_box { background:rgba(73, 37, 107, 0.07); padding:40px 0; position:relative; }
#fascination .fascination_unit .text .text_box::before,
#fascination .fascination_unit .text .text_box::after { content:""; display:block; height:100%; position:absolute; top:0; background:rgba(73, 37, 107, 0.07); }
#fascination .fascination_unit .text .text_box::before { left:100%; width:calc( ( 100vw - 1250px ) / 2 ) ; }
#fascination .fascination_unit .text .text_box::after { right:100%; width:calc( 54vw - ( 100vw - 1250px ) / 2 ); border-radius:20px 0 0 20px; }
#fascination .fascination_unit:nth-child(2n) .text .text_box::before { left:auto; right:100%; }
#fascination .fascination_unit:nth-child(2n) .text .text_box::after { right:auto; left:100%; border-radius:0 20px 20px 0; }

#fascination .fascination_unit .text .text_box p { color:#222222; font-weight:500; }

@media (max-width:1290px) {
	#fascination .fascination_unit { padding-left:20px; padding-right:20px; }
	#fascination .fascination_unit .image { width:calc(54% + 20px); margin-left:-20px; margin-right:0; }
	#fascination .fascination_unit .text .text_box::before { width:20px; }
}
@media (max-width:991px) {
	#fascination .fascination_unit { flex-direction:column!important; }
	#fascination .fascination_unit .text { width:100%!important; max-width:none; }
	#fascination .fascination_unit .text .title { padding-top:20px; }
	#fascination .fascination_unit .text .title .main { font-size:2.5em; }
	#fascination .fascination_unit .text .text_box { margin-left:auto; margin-right:-20px; padding-left:20px; padding-right:20px; border-radius:20px 0 0 20px; }
	#fascination .fascination_unit .text .text_box::before,
	#fascination .fascination_unit .text .text_box::after { display:none; }
	#fascination .fascination_unit .image { padding:0!important; width:calc(100% + 20px)!important; }
	#fascination .fascination_unit .image .img_back { height:0; padding-bottom:61.75%; border-radius:0 20px 20px 0!important; }
}
@media (max-width:767px) {
	#fascination .fascination_unit .text .title { padding:10px 0 20px; }
	#fascination .fascination_unit .text .title .sub { font-size:4em; letter-spacing:3px; padding-left:3px; }
	#fascination .fascination_wrap::before { content:""; width:422px; height:69px; }
}

#growth { background:url(../image/contents/top/growth_bg.jpg) no-repeat center center / cover; }
#growth .growth_wrap { position:relative; }
#growth .growth_wrap::before { content:""; width:972px; height:128px; background:url(../image/contents/top/growth_bg_text.png) no-repeat top center / contain; position:absolute; top:0; left:50%; transform:translateX(-50%); z-index:1; }
#growth .growth_wrap > * { position:relative; z-index:2; }
#growth .growth_wrap .growth_unit_wrap { max-width:1440px; margin-left:auto; margin-right:auto; }
#growth .growth_wrap .growth_unit { width:calc(100% - 200px); background:var(--c_intern); position:relative; padding:50px; color:#fff; }
#growth .growth_wrap #short.growth_unit { --c_intern:var(--c_intern-short); margin-left:0; margin-right:auto; margin-bottom:80px; }
#growth .growth_wrap #long.growth_unit { --c_intern:var(--c_intern-long); margin-right:0; margin-left:auto; }
#growth .growth_wrap .growth_unit::before { content:""; background:var(--c_intern); width:calc( ( 100vw - 1440px ) / 2 ); height:100%; position:absolute; top:0; }
#growth .growth_wrap #short.growth_unit::before { right:100%; }
#growth .growth_wrap #long.growth_unit::before { left:100%; }
#growth .growth_wrap .growth_unit .growth_unit_top { display:flex; padding:0 50px 40px; margin-bottom:40px; border-bottom:1px solid #fff; }
#growth .growth_wrap .growth_unit .growth_unit_top .image { width:240px; padding-right:40px; text-align:center; }
#growth .growth_wrap .growth_unit .growth_unit_top .image img { width:200px; }
#growth .growth_wrap .growth_unit .growth_unit_top .text { width:calc(100% - 240px); }
#growth .growth_wrap .growth_unit .growth_unit_top .text .title { margin-bottom:20px; }
#growth .growth_wrap .growth_unit .growth_unit_top .text .title .main { font-size:2em; font-weight:bold; }
#growth .growth_wrap .growth_unit .growth_unit_top .text p { font-weight:500; }
#growth .growth_wrap .growth_unit .growth_unit_middle { margin-bottom:40px; }
#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap { display:flex; justify-content:center; align-items:stretch; justify-content:space-evenly; width:calc(100% + 20px); margin-left:-20px; margin-right:0; }
#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit { padding-left:30px; margin-left:20px; width:360px; display:flex; flex-direction:column; align-items:flex-start; }
#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .number { display:inline-flex; flex-direction:column; align-items:center; justify-content:center; line-height:1; }
#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .number .sub { font-weight:bold; font-size:1.75em; }
#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .number .main { font-weight:bold; font-size:4em; }
#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text {  position:relative; padding:30px 0 60px; flex-grow:1; line-height:1.4; }
#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text .strong { font-size:2em; font-weight:bold; }
#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text::before { width:14px; position:absolute; display:block; bottom:0; left:-30px; content:""; }
#growth .growth_wrap #short.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text::before { background:linear-gradient(to bottom, #D135D1, #823EF9); }
#growth .growth_wrap #short.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(1) .text::before { height:50%; }
#growth .growth_wrap #short.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(2) .text::before { height:100%; }
#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text::before { background:linear-gradient(to bottom, #D1BF35, #F9783E); }
#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(1) .text::before { height:50%; }
#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(2) .text::before { height:75%; }
#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(3) .text::before { height:100%; }

#growth .growth_wrap #short.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(1) { padding-top:60px; }
#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(2) { padding-top:60px; }
#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(1) { padding-top:120px; }

#growth .growth_wrap .growth_unit .growth_unit_bottom { background:#fff; border-radius:10px; padding:40px; }
#growth .growth_wrap .growth_unit .growth_unit_bottom .title { margin-bottom:20px; }
#growth .growth_wrap .growth_unit .growth_unit_bottom .title .main { color:var(--c_intern); font-weight:bold; font-size:2em; padding-left:35px; background:no-repeat center left / 30px auto; }
#growth .growth_wrap #short.growth_unit .growth_unit_bottom .title .main { background-image:url(../image/layout/icon/check-p.png); }
#growth .growth_wrap #long.growth_unit .growth_unit_bottom .title .main { background-image:url(../image/layout/icon/check-g.png); }
#growth .growth_wrap .growth_unit .growth_unit_bottom p { color:#585858; font-size:1.1em; }
@media (max-width:1440px) {
	#growth .growth_wrap .growth_unit { width:calc(100% - 20px); }
}
@media (max-width:1200px) {
	#growth .growth_wrap .growth_unit { padding:40px 20px; }
}
@media (max-width:991px) {
	#growth .growth_wrap .growth_unit .growth_unit_top { padding:0 0 20px; margin-bottom:0; }
	#growth .growth_wrap .growth_unit .growth_unit_top .image { padding-right:20px; }
	#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap { flex-direction:column; width:100%; margin-left:0; }
	#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit { width:100%; margin-left:0; padding-left:0; padding-top:40px!important; }
	#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text { padding:15px 0 0; }
	#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text::before { left:90px; bottom:calc(100% + 5px); right:auto; height:14px!important; }
	#growth .growth_wrap #short.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text::before { background:linear-gradient(to right, #D135D1, #823EF9)!important; }
	#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text::before { background:linear-gradient(to right, #D1BF35, #F9783E)!important; }
	#growth .growth_wrap #short.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(1) .text::before { width:calc( ( 100% - 90px ) * .5); }
	#growth .growth_wrap #short.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(2) .text::before { width:calc( ( 100% - 90px ) * 1); }
	#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text::before { background:linear-gradient(to bottom, #D1BF35, #F9783E); }
	#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(1) .text::before { width:calc( ( 100% - 90px ) * .333); }
	#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(2) .text::before { width:calc( ( 100% - 90px ) * .667); }
	#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(3) .text::before { width:calc( ( 100% - 90px ) * 1); }
	#growth .growth_wrap .growth_unit .growth_unit_bottom { padding:20px; }
	#growth .growth_wrap .growth_unit .growth_unit_bottom .title .main { font-size:1.5em; }
}
@media (max-width:767px) {
	#growth .growth_wrap::before { width:486px; height:64px; }
	#growth .growth_wrap .growth_unit .growth_unit_top { flex-direction:column; }
	#growth .growth_wrap .growth_unit .growth_unit_top > * { width:100%!important; }
	#growth .growth_wrap .growth_unit .growth_unit_top .text .title { text-align:center; }
	#growth .growth_wrap .growth_unit .growth_unit_top > .image { padding-right:0; text-align:center; padding-bottom:20px; }
	#growth .growth_wrap .growth_unit .growth_unit_top > .image img { width:170px; }
	#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .number { font-size:.75em; }
	#growth .growth_wrap .growth_unit .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text::before { left:70px; }
	#growth .growth_wrap #short.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(1) .text::before { width:calc( ( 100% - 70px ) * .5); }
	#growth .growth_wrap #short.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(2) .text::before { width:calc( ( 100% - 70px ) * 1); }
	#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit .text::before { background:linear-gradient(to bottom, #D1BF35, #F9783E); }
	#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(1) .text::before { width:calc( ( 100% - 70px ) * .333); }
	#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(2) .text::before { width:calc( ( 100% - 70px ) * .667); }
	#growth .growth_wrap #long.growth_unit  .growth_unit_middle .growth_step_unit_wrap > .growth_step_unit:nth-child(3) .text::before { width:calc( ( 100% - 70px ) * 1); }
	#growth .growth_wrap .growth_unit .growth_unit_bottom .title .main { font-size:1.1em; display:inline-block; }
	#growth .growth_wrap .growth_unit .growth_unit_bottom p { font-size:1em; }
}
@media (max-width:575px) {
	#growth .growth_wrap .growth_unit .growth_unit_top .text .title .main { font-size:1.5em; }
}

#ideal {}
#ideal .ideal_top { background:url(../image/contents/top/ideal_bg.jpg) no-repeat center center / cover; position:relative; }
#ideal .ideal_top::before { content:""; width:1399px; height:112px; background:url(../image/contents/top/ideal_bg_text.png) no-repeat top center / contain; position:absolute; top:0; left:50%; transform:translateX(-50%); z-index:1; }
#ideal .ideal_top::after { content:""; position:relative; display:block; width:100%; height:330px; background:url(../image/contents/top/ideal_image.png) no-repeat bottom center / 1280px auto; }
#ideal .ideal_top > * { position:relative; z-index:2; }
#ideal .ideal_list { margin-bottom:30 }
#ideal .ideal_list ul li .unit { background:#fff; padding:15px 30px; border-radius:40px; box-shadow:0 1px 5px rgba(0, 0, 0, 0.16); margin-bottom:20px; }
#ideal .ideal_list ul li .unit .main { display:inline-block; font-size:1.35em; font-weight:bold; color:#404147; padding-left:30px; background:url(../image/layout/icon/check-v.png) no-repeat left center / 25px auto; }
#ideal .description { font-weight:500; font-size:1.2em; color:#313131; }
@media (max-width:1320px) {
	#ideal .ideal_top::after { height:0; padding-bottom:22.917%; background:url(../image/contents/top/ideal_image.png) no-repeat bottom center / contain; }
}
#ideal .ideal_bottom { padding:50px 0; background:url(../image/contents/top/ideal_bg2.jpg) no-repeat center center / cover; }
#ideal .ideal_bottom .hl_ideal_bottom { background:#49256B; border-radius:5px; width:100%; text-align:center; margin-bottom:20px; padding:2px 0; }
#ideal .ideal_bottom .hl_ideal_bottom .main { color:#fff; font-size:1.5em; font-weight:bold; }
#ideal .ideal_bottom dl:not(:last-child) { margin-bottom:20px; }
#ideal .ideal_bottom dl dt { font-weight:bold; font-size:1.5em; color:#49256B; padding-left:30px; background:url(../image/layout/icon/time2.png) no-repeat left center / 25px auto; }
#ideal .ideal_bottom dl dd { font-size:1.1em; font-weight:500; color:#313131; }
@media (max-width:1200px) {
	#ideal .ideal_list ul li .unit { padding:15px; }
	#ideal .ideal_list ul li .unit .main { font-size:1.1em; }
}
@media (max-width:767px) {
	#ideal .ideal_top::before { width:700px; height:56px; }
	#ideal .description { font-size:1em; }
	#ideal .ideal_bottom .hl_ideal_bottom .main { font-size:1.25em; }
	#ideal .ideal_bottom dl dt { font-size:1.25em; line-height:1.4; margin-bottom:10px; }
	#ideal .ideal_bottom dl dd { font-size:1em; }
}
@media (max-width:575px) {
	#ideal .ideal_list ul li .unit .main { font-size:1em; }
}

#record { background:url(../image/contents/top/business_bg_top.png) no-repeat top left /  805px auto, url(../image/contents/top/business_bg_bottom.png) no-repeat bottom right /  805px auto; background-color:#49256B; }
#record .record_wrap { position:relative; }
#record .record_wrap::before { content:""; width:1096px; height:106px; background:url(../image/contents/top/record_bg_text.png) no-repeat top right / contain; position:absolute; display:block; top:0; left:50%; transform:translateX(-50%); z-index:1; }
#record .record_wrap > * { position:relative; z-index:2; }
#record .record_wrap .description { text-align:center; color:#fff; font-size:1.1em; margin-bottom:40px; }
#record .record_wrap .record_box { position:relative; z-index:1; padding:40px 30px; }
#record .record_wrap .record_box::before,
#record .record_wrap .record_box::after { content:""; position:absolute; width:calc(100% - 10px); height:calc(100% - 10px); border:1px solid #fff; z-index:-1; display:block; }
#record .record_wrap .record_box::before { top:0; left:0; }
#record .record_wrap .record_box::after { bottom:0; right:0; }
#record .record_wrap .record_box .hl_record_box { display:flex; align-items:flex-end; justify-content:center; color:#fff; font-weight:500; margin-bottom:30px; }
#record .record_wrap .record_box .hl_record_box .main { font-size:2em; letter-spacing:2px; padding-right:5px; }
#record .record_wrap .record_box .record_box_wrap { max-width:900px; margin-left:auto; margin-right:auto; display:flex; justify-content:space-between; }
#record .record_wrap .record_box .record_box_wrap .text { display:flex; }
#record .record_wrap .record_box .record_box_wrap .text ul { display:inline-block; }
#record .record_wrap .record_box .record_box_wrap .text ul:not(:last-child) { padding-right:20px; }
#record .record_wrap .record_box .record_box_wrap .text ul li { font-size:1.5em; font-weight:500; color:#fff; }
#record .record_wrap .record_box .record_box_wrap .text ul li::before { content:"・"; }
#record .record_wrap .record_box .record_box_wrap .image img { width:408px; height:auto; }
@media (max-width:991px) {
	#record .record_wrap .record_box .hl_record_box .main { font-size:1.5em; }
	#record .record_wrap .record_box .record_box_wrap .text ul li { font-size:1.25em; }
	#record .record_wrap .record_box .record_box_wrap .image img { width:310px; }
}
@media (max-width:767px) {
	#record .record_wrap::before { width:548px; height:53px; }
	#record .record_wrap .record_box { padding:40px 20px; }
	#record .record_wrap .record_box .hl_record_box { flex-direction:column; align-items:center; }
	#record .record_wrap .record_box .hl_record_box .main { padding-right:0; align-items:center; text-align:center; }
	#record .record_wrap .record_box .record_box_wrap { flex-direction:column; }
	#record .record_wrap .record_box .record_box_wrap .text { justify-content:center; margin-bottom:40px; }
	#record .record_wrap .record_box .record_box_wrap .image { text-align:center; }
	#record .record_wrap .record_box .record_box_wrap .text ul li { font-size:1em; }
}

#voice { background:urL(../image/contents/top/voice_bg.jpg) repeat-y top center / 100% auto; }
#voice .voice_wrap { position:relative; }
#voice .voice_wrap::before { content:""; width:372px; height:138px; background:url(../image/contents/top/voice_bg_text.png) no-repeat top center / contain; position:absolute; top:0; left:0; z-index:1; }
#voice .voice_wrap > * { position:relative; z-index:2; }
#voice .voice_list { margin-bottom:-20px; }
#voice .voice_list a { display:block; padding-top:25px; margin-bottom:20px; }
#voice .voice_list a .unit { background:#F4F4F4; box-shadow:0 1px 4px rgba(0,0,0,.16); border-radius:10px; padding:0 10px 30px; display:flex; flex-direction:column; align-items:center; position:relative; }
#voice .voice_list a .unit .tag._short { --c_intern:var(--c_intern-short); }
#voice .voice_list a .unit .tag._long { --c_intern:var(--c_intern-long); }
#voice .voice_list a .unit .tag { background:var(--c_intern); width:calc(100% - 40px); margin-left:auto; margin-right:auto; border-radius:3px; height:50px; display:flex; align-items:center; justify-content:center; margin-top:-25px; text-align:center; position:relative; margin-bottom:30px; }
#voice .voice_list a .unit .tag .main { color:#fff; font-weight:bold; font-size:1.25em; }
#voice .voice_list a .unit .tag::after { content:""; position:absolute; border-top:10px solid var(--c_intern); border-left:12px solid transparent; border-right:12px solid transparent; left:50%; bottom:0; transform:translate(-50%, 100%); }
#voice .voice_list a .unit .title { font-weight:bold; font-size:1.35em; color:#414141; margin-bottom:20px; text-align:center; }
#voice .voice_list a .unit .image { text-align:center; }
#voice .voice_list a .unit .image img { width:166px; height:auto; }
@media (max-width:767px) {
	#voice .voice_wrap::before { width:186px; height:69px; }
	#voice .voice_list a { max-width:400px; margin-left:auto; margin-right:auto; }
}

#message { background:url(../image/contents/top/message_bg.png) repeat center center / 61px auto, url(../image/contents/top/message_bg_top.png) no-repeat top left / 805px auto, url(../image/contents/top/message_bg_bottom.png) no-repeat bottom right / 805px auto; }
#message .message_wrap { position:relative; }
#message .message_wrap::before { content:""; width:590px; height:138px; background:url(../image/contents/top/message_bg_text.png) no-repeat top center / contain; position:absolute; top:0; right:0; z-index:1; }
#message .message_wrap > * { position:relative; z-index:2; }
#message .message_wrap .president_wrap .image_wrap { margin-bottom:10px; }
#message .message_wrap .president_wrap .image_wrap .text { display:inline-block; padding:5px 20px; min-width:234px; background:#49256B; margin-top:-30px; text-align:center; }
#message .message_wrap .president_wrap .image_wrap .text .main { color:#fff; font-weight:500; font-size:1.5em; }
#message .message_wrap .president_wrap .name { display:flex; align-items:center; margin-bottom:10px; color:#222222; }
#message .message_wrap .president_wrap .name .main { padding-right:20px; font-weight:bold; font-size:2.25em; }
#message .message_wrap .president_wrap .name .sub { font-size:1.1em; font-weight:500; }
#message .message_wrap .president_wrap .history { background:#F5F5F5; padding:20px; margin-bottom:20px; }
#message .message_wrap .president_wrap .history dl { display:flex; align-items:center; }
#message .message_wrap .president_wrap .history dl:not(:last-child) { padding-bottom:10px; }
#message .message_wrap .president_wrap .history dl dt { width:100px; padding-right:20px; text-align:center; color:#49256B; font-weight:bold; }
#message .message_wrap .president_wrap .history dl dd { color:#222222; font-weight:500; }
#message .message_wrap .president_wrap .profile { padding:20px; border:1px solid #49256B; color:#222222; font-weight:500; }
#message .message_wrap .message_main_wrap .hl_message { margin-bottom:20px; }
#message .message_wrap .message_main_wrap .hl_message .main { color:#49256B; font-weight:bold; font-size:1.5em; }
#message .message_wrap .message_main_wrap .text { color:#222222; font-weight:500; }
@media (max-width:991px) {
	#message .message_wrap .president_wrap { max-width:480px; margin-left:auto; margin-right:auto; margin-bottom:40px; }
}
@media (max-width:767px) {
	#message .message_wrap::before { width:295px; height:69px; }
}
@media (max-width:575px) {
	#message .message_wrap .president_wrap .history { padding:15px; }
	#message .message_wrap .president_wrap .history dl { flex-direction:column; align-items:flex-start; }
	#message .message_wrap .president_wrap .history dl dt { text-align:left; }
	#message .message_wrap .president_wrap .profile { padding:15px; }
	#message .message_wrap .message_main_wrap .hl_message .main { font-size:1.15em; }
}

#faq { background:url(../image/contents/top/faq_bg.jpg) no-repeat top center / cover; }
#faq .faq_wrap { position:relative; }
#faq .faq_wrap::before { content:""; width:226px; height:164px; background:url(../image/contents/top/faq_bg_text.png) no-repeat top center / contain; position:absolute; top:0; right:0; z-index:1; }
#faq .faq_wrap > * { position:relative; z-index:2; }
#faq .faq_wrap .faq_list dl:not(:last-child) { margin-bottom:40px; }
#faq .faq_wrap .faq_list dl dt { display:flex; cursor:pointer; min-height:80px; border-radius:10px; overflow:hidden; }
#faq .faq_wrap .faq_list dl dt .sub { width:80px; display:flex; background:#49256B; color:#fff; align-items:center; justify-content:center; font-size:2.5em; font-weight:500; }
#faq .faq_wrap .faq_list dl dt .main { width:calc(100% - 80px); padding:10px 70px 10px 25px; display:flex; align-items:center; color:#393939; background:#fff url(../image/layout/icon/arrow2_b-v.png) no-repeat center right 20px / 33px auto; font-size:1.5em; font-weight:bold; line-height:1.4; }
#faq .faq_wrap .faq_list dl dt.active .main { background-image:url(../image/layout/icon/arrow2_t-v.png); }
#faq .faq_wrap .faq_list dl dd { color:#222222; font-size:1.25em; padding-top:20px; }
@media (max-width:991px) {
	#faq .faq_wrap .faq_list dl dt { min-height:60px; }
	#faq .faq_wrap .faq_list dl dt .sub { width:60px; }
	#faq .faq_wrap .faq_list dl dt .main { width:calc(100% - 60px); font-size:1.25em; background-size:24px auto; padding-right:60px; }
}
@media (max-width:767px) {
	#faq .faq_wrap::before { width:113px; height:82px; }
	#faq .faq_wrap .faq_list dl dt { min-height:40px; }
	#faq .faq_wrap .faq_list dl dt .sub { width:40px; font-size:1.5em; }
	#faq .faq_wrap .faq_list dl dt .main { width:calc(100% - 40px); font-size:1.1em; padding-left:15px; padding-right:40px; background-position:center right 10px; }
	#faq .faq_wrap .faq_list dl dd { font-size:1em; }
}
@media (max-width:575px) {
	#faq .faq_wrap .faq_list dl dt .main { font-size:1em; }
}

#entry { background:url(../image/contents/top/message_bg.png) repeat center center / 61px auto; }
#entry .entry_wrap { position:relative; }
#entry .entry_wrap::before { content:""; width:406px; height:138px; background:url(../image/contents/top/entry_bg_text.png) no-repeat top center / contain; position:absolute; top:0; right:0; z-index:1; }
#entry .entry_wrap > * { position:relative; z-index:2; }
#entry .entry_wrap .hl_entry { display:flex; align-items:center; }
#entry .entry_wrap .hl_entry .main { font-size:3em; font-weight:500; color:#49256B; letter-spacing:2px; display:inline-block; padding-right:20px; }
#entry .entry_wrap .entry_unit { background:#442767; padding:40px 20px; color:#fff; margin-bottom:40px; }
#entry .entry_wrap .entry_unit a { color:#fff; }
#entry .entry_wrap .entry_unit .hl_entry_unit { text-align:center; margin-bottom:15px; }
#entry .entry_wrap .entry_unit .hl_entry_unit .main { font-size:1.25em; line-height:1.4; }
#entry .entry_wrap .entry_unit .tel,
#entry .entry_wrap .entry_unit .mail { font-size:2em; line-height:2; display:inline-block; font-weight:bold; }
#entry .entry_wrap .entry_unit .tel { padding-left:50px; background:url(../image/layout/icon/tel.png) no-repeat center left / 40px auto; }
#entry .entry_wrap .entry_unit .mail { padding-left:50px; background:url(../image/layout/icon/mail.png) no-repeat center left / 40px auto; }
@media (max-width:767px) {
	#entry .entry_wrap::before { width:203px; height:69px; }
	#entry .entry_wrap .hl_entry .main { font-size:2em; }
	#entry .entry_wrap .entry_unit { padding:20px; }
	#entry .entry_wrap .entry_unit .tel,
	#entry .entry_wrap .entry_unit .mail { font-size:1.5em; }
	#entry .entry_wrap .entry_unit .tel { padding-left:30px; background-size:20px auto; }
	#entry .entry_wrap .entry_unit .mail { padding-left:30px; background-size:20px auto; }
}

.hl_top { display:flex; flex-direction:column; justify-content:center; align-items:center; line-height:1; margin-bottom:60px; }
.hl_top .main { font-size:3em; font-weight:500; color:#49256B; display:inline-block; border-bottom:1px solid #49256B; padding-bottom:20px; margin-bottom:20px; letter-spacing:2px; text-indent:-2px; text-align:center; }
.hl_top .sub { display:inline-block; }
.hl_top._white .main { color:#fff; border-bottom:1px solid #fff; }
.hl_top._white .sub { color:#fff; }
.hl_top._left { align-items:flex-start; }
.hl_top._left .main { text-align:left; }
@media (max-width:767px) {
	.hl_top { margin-bottom:30px; }
	.hl_top .main { font-size:2em; }
}


#everyone { background:url(../image/contents/top/business_bg_top.png) no-repeat top left /  805px auto, url(../image/contents/top/business_bg_bottom.png) no-repeat bottom right /  805px auto; background-color:#49256B; }
#everyone .everyone_wrap { position:relative; }
#everyone .everyone_wrap::before { content:""; width:859px; height:134px; background:url(../image/contents/top/everyone_bg_text.png) no-repeat top right / contain; position:absolute; display:block; top:0; left:50%; transform:translateX(-50%); z-index:1; }
#everyone .everyone_wrap > * { position:relative; z-index:2; }
#everyone .everyone_wrap .description { color:#fff; font-size:1.1em; margin-bottom:40px; }
#everyone .everyone_wrap .everyone_box { background:#fff; padding:30px; border-radius:4px; }
#everyone .everyone_wrap .everyone_box:not(:last-child) { margin-bottom:60px; }
#everyone .everyone_wrap .everyone_box .hl_everyone { padding:10px; text-align:center; background:#49256B; text-align:center; font-weight:bold; font-size:1.75em; position:relative; color:#fff; margin-bottom:20px; }
#everyone .everyone_wrap .everyone_box .hl_everyone::before,
#everyone .everyone_wrap .everyone_box .hl_everyone::after { content:""; position:absolute; border-style:solid; display:block; opacity:.15; border-width:18px; }
#everyone .everyone_wrap .everyone_box .hl_everyone::before { top:0; left:0; border-color:#fff transparent transparent #fff; }
#everyone .everyone_wrap .everyone_box .hl_everyone::after { bottom:0; right:0; border-color:transparent #fff #fff transparent; }
#everyone .everyone_wrap .everyone_list._1 .everyone_unit:nth-child(2n+1),
#everyone .everyone_wrap .everyone_list._2 .everyone_unit:nth-child(2n) { flex-direction:row; }
#everyone .everyone_wrap .everyone_list._1 .everyone_unit:nth-child(2n),
#everyone .everyone_wrap .everyone_list._2 .everyone_unit:nth-child(2n+1) { flex-direction:row-reverse; }
#everyone .everyone_wrap .everyone_list .everyone_unit { display:flex; align-items:center; justify-content:space-between; }
#everyone .everyone_wrap .everyone_list .everyone_unit:not(:last-child) { margin-bottom:20px; padding-bottom:20px; border-bottom:2px solid #EFECF2; }
#everyone .everyone_wrap .everyone_list .everyone_unit .image { width:200px; }
#everyone .everyone_wrap .everyone_list .everyone_unit .text { width:calc(100% - 220px); }
#everyone .everyone_wrap .everyone_list .everyone_unit .text .title { font-weight:bold; color:#49256B; font-size:1.5em; margin-bottom:10px; }
#everyone .everyone_wrap .everyone_list .everyone_unit .text p { color:#0B0B0B; line-height:2; font-weight:500; }
@media (max-width:991px) {
	#everyone .everyone_wrap .everyone_box .hl_everyone { font-size:1.25em; }
	#everyone .everyone_wrap .everyone_list .everyone_unit .image { width:160px; }
	#everyone .everyone_wrap .everyone_list .everyone_unit .text { width:calc(100% - 180px); }
	#everyone .everyone_wrap .everyone_list .everyone_unit .text .title { font-size:1.25em; }
}
@media (max-width:767px) {
	#everyone .everyone_wrap .description { font-size:1em; }
	#everyone .everyone_wrap .everyone_box { padding:30px 15px; }
	#everyone .everyone_wrap .everyone_list .everyone_unit .text p { line-height:1.6; }
	#everyone .everyone_wrap .everyone_list .everyone_unit .image { width:120px; }
	#everyone .everyone_wrap .everyone_list .everyone_unit .text { width:calc(100% - 130px); }
	#everyone .everyone_wrap .everyone_list .everyone_unit .text .title { font-size:1.1em; }
}
@media (max-width:575px) {
	#everyone .everyone_wrap .everyone_list._1 .everyone_unit:nth-child(2n+1),
	#everyone .everyone_wrap .everyone_list._2 .everyone_unit:nth-child(2n),
	#everyone .everyone_wrap .everyone_list._1 .everyone_unit:nth-child(2n),
	#everyone .everyone_wrap .everyone_list._2 .everyone_unit:nth-child(2n+1) { flex-direction:column; }
	#everyone .everyone_wrap .everyone_list .everyone_unit > * { width:100%!important; }
	#everyone .everyone_wrap .everyone_list .everyone_unit .image { text-align:center; }
	#everyone .everyone_wrap .everyone_list .everyone_unit .image img { width:140px; }
}
