@charset "UTF-8";

* {
	box-sizing: border-box;
}
html {
	font-size: 62.75%;
	margin: 0 !important;
}
body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	font-size: 1.8rem;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	font-family: 'Yu Gothic', 'YuGothic', sans-serif;
}
body {
	width: 100%;
	margin: 0;
	color: #000;
	line-height: 1;
}
p {
	font-size: 1.8rem;
	line-height: 1.4;
	margin-bottom:0;
}
a {
	transition: all ease .3s;
}
.site-width {
	max-width: 1200px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
.site-width-min {
	width: 100%;
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
h1,h2,h3,h4,h5,h6 {
	font-weight: normal;
	margin: 0;
}
ul, li, dl, dt, dd {
	margin: 0;
	padding: 0;
}
.none-list li {
	list-style: none;
}
.dis-list {
	list-style: disc;
}
.dis-list li {
	margin-left: 20px;
	margin-bottom: 0.2em;
}
.box02 {
	padding: 0;
}
.box01 {
	margin: 0;
}

/********************

#maiin

********************/

#top { background:url(/partner/images/top_01.jpg) no-repeat 50% 0; background-size:contain; max-width:1200px; aspect-ratio:12/7;  margin:0 auto; overflow:visible; }

#top .top_container { width:81.66%; max-width:980px; margin:0 auto; position:relative; padding:50px 0 0; }

#top .top_copy { width:42.85%; aspect-ratio:420/482; background:url(/partner/images/top_copy.png) no-repeat 0 0; background-size:contain; overflow:hidden; }
#top .top_copy span { display:inline-block; text-indent:-9999px; }

#top .top_awards { display:flex; gap:14px; position:absolute; right:5px; top:50px; width:42.85%; }
#top .top_awards p { width:calc(50% - 10px); aspect-ratio:1/1; background-position:no-repeat; background-size:contain; text-indent:-9999px; overflow:hidden; }
#top .top_awards p.award_01 { background-image:url(/partner/images/top_gekkeiju_01.png); }
#top .top_awards p.award_02 { background-image:url(/partner/images/top_gekkeiju_02.png); }

#top .top_container > img { width:100%; }
#top .top_container .btn_link { max-width:980px; margin:calc(100% * 0.04) auto 0; position:relative; }
#top .top_container .btn_link .btn_request_01 { display:block; width:42.85%; aspect-ratio: 420/90; background:url('/partner/images/btn_01.png') no-repeat 0 0; background-size:100% auto; text-indent:-9999px; overflow:hidden; position:relative; }
#top .top_container .btn_link .btn_request_01::before { content:''; display:block; width:100%; aspect-ratio: 420/90; background:url('/partner/images/btn_01.png') no-repeat 0 100%; background-size:100% auto; opacity:0; transition:all ease .3s; }
#top .top_container .btn_link .btn_request_01:hover::before { opacity:1; }

@media screen and (min-width: 961px) {
}
@media screen and (min-width: 429px) and (max-width: 960px) {
}
@media screen and (max-width: 428px) {
	#top { background-size:cover; background-position:30% 0; aspect-ratio: unset; }
	#top .top_copy { width:85%; margin:0 auto; }
	#top .top_awards { width:85%; margin:10px auto; position:relative; top:unset; right:unset; gap:10px; justify-content: space-evenly; }
	#top .top_container { width:calc(100vw - 15px); height:calc(100vh + 50vw); min-height:930px; background:url(/partner/images/top_pc.png) no-repeat 85% 100%; background-size:90% auto; }
	#top .top_container .btn_link a.btn_request_01 { width:300px; margin:0 auto; box-shadow:1px 1px 2px 2px rgba(0,0,0,0.2); border-radius:100px; }
}

.sec_box { max-width:1200px; margin-left:auto; margin-right:auto; }
.sec_box .sec_inner { max-width:980px; width:calc(100% - 30px); margin:0 auto; }

.clm2 { display:flex; justify-content:space-between; width:100%; }
.clm2 .clm_left,
.clm2 .clm_right { width:calc(50% - 20px); }

@media screen and (min-width: 961px) {
	.forPC { }
	.forSP { display:none; }
}
@media screen and (min-width: 429px) and (max-width: 960px) {
	.forPC { }
	.forSP { display:none; }
}
@media screen and (max-width: 428px) {
	.forPC { display:none; }
	.clm2 { flex-direction:column; }
	.clm2 .clm_left,
	.clm2 .clm_right { width:100%; }
}

#about { padding:65px 0 0; }
#about .clm_left .title { font-size:44px; font-weight:bold; color:#0e417d; }
#about .clm_left .title span { font-size:44px; margin-right:-10px; }
#about .clm_left .list_hrpro { display:flex; justify-content:space-between; width:88.5%; aspect-ratio:104/55; margin:30px 0 0; background:url(/partner/images/img_00_01.png) no-repeat 50% 0; background-size:contain; }
#about .clm_left .list_hrpro li { width:130px; height:130px; display:flex; justify-content:center; align-items:center; font-size:18px; color:#0e417d; font-weight:bold; line-height:1.75; text-align:center; display:none; text-indent:-9999px; overflow:hidden; }
#about .clm_right .text { font-size:18px; font-weight:bold; line-height:1.5; }
#about .clm_right .text + .text { margin-top:1em; }
#about .clm_right .box_btn { margin-top:40px; }
#about .clm_right .box_btn a { display:flex; align-items:center; max-width:440px; width:100%; height:60px; border-radius:40px; border:2px solid #cfd9e5; background-color:rgba(243, 245, 249,1); font-size:16px; color:#0e417d; font-weight:bold; position:relative; padding-left:60px; text-indent:-5px; transition:all ease .3s; }
#about .clm_right .box_btn a::before,
#about .clm_right .box_btn a::after { content:''; display:inline-block; position:absolute; top:50%; transform:translateY(calc(-50% - 2px)); }
#about .clm_right .box_btn a::before { width:18px; height:18px; border:2px solid #0E417D; left:28px; }
#about .clm_right .box_btn a::after { width:17px; height:17px; border-right:2px solid #86A0BE; border-bottom:2px solid #86A0BE; left:33px; transform:translateY(calc(-50% + 3px)); }
#about .clm_right .box_btn a:hover { background-color:rgba(243, 245, 249,0.75); border-color: #0e417d; text-decoration:none; }

@media screen and (min-width: 429px) and (max-width: 960px) {
	#about .clm_left .title { font-size:36px; letter-spacing:-1px; }
	#about .clm_left .list_hrpro { width:100%; }
}
@media screen and (max-width: 428px) {
	#about .clm_left .title { font-size:34px; }
	#about .clm_left .title span { display:inline-block; font-size:34px; margin-right:-10px; }
	#about .clm_left .list_hrpro { width:100%; margin:30px auto; }
	#about .clm_right .box_btn { margin:30px 0 0; }
	#about .clm_right .box_btn a { justify-content: center; text-align:center; padding:0 15px 0 60px; }
	#about .clm_right .text { font-size:16px; line-height:1.75; padding:0 8px 0 10px; }
}


.contact { background:#ecf0f5; box-shadow:0 5px 10px 0 rgba(0,0,0,0.05) inset; padding:60px 0 50px; position:relative; margin:125px auto 60px; }
.contact::before { content:''; display:inline-block; width:72px; height:55px; position:absolute; left:50%; top:-20px; transform:translateX(-50%); background:url('/partner/images/img_check.png') no-repeat 0 0; background-size:contain; }
.contact .title { font-size:30px; font-weight:bold; color:#0e417d; text-align:center; }
.contact .btn_link { margin:24px 0 0;}
.contact .btn_contact_02 { display:block; width:300px; height:80px; background:url('/partner/images/btn_03.png') no-repeat 0 0; background-size:100% auto; text-indent:-9999px; overflow:hidden; position:relative; margin:0 auto; }
.contact .btn_contact_02::before { content:''; display:block; width:100%; height:100%; aspect-ratio:300/80; background:url('/partner/images/btn_03.png') no-repeat 0 100%; background-size:100% auto; opacity:0; transition:all ease .3s; }
.contact .btn_contact_02:hover::before { opacity:1; }

@media screen and (min-width: 429px) and (max-width: 960px) {
}
@media screen and (max-width: 428px) {
	.contact { margin:90px auto 30px; }
	.contact .title { font-size:20px; line-height:1.5; }
}

#onayami {}
#onayami .title { font-size:34px; color:#0e417d; font-weight:bold; text-align:center; position:relative; z-index:1; }
#onayami .title::before { content:''; display:inline-block; width:60px; height:80px; background:url('/partner/images/img_kurukuru.png') no-repeat 0 0; background-size:contain; position:relative; left:-3%; top:0; transform:translateY(30%); }
#onayami .none-list { width:100%; min-height:262px; background:#e7ecf2; border-radius:20px; margin-top:-20px; display:flex; justify-content:center; align-items:normal; gap:3%; padding:56px 3% 40px; }
#onayami .none-list li { display:flex; align-items:center; width:calc(97% / 3); min-height:162px; padding:20px 30px 30px; background:#FFF; border:2px solid #dbe2eb; position:relative; font-size:18px; font-weight:bold; line-height:1.75; }
#onayami .none-list li::before { content:''; width:calc(100% - 18px); height:6px; position:absolute; bottom:9px; left:50%; transform:translateX(-50%); }
#onayami .none-list li:nth-child(1)::before { background:#3e6797; }
#onayami .none-list li:nth-child(2)::before { background:#6e8db1; }
#onayami .none-list li:nth-child(3)::before { background:#9fb3cb; }
#onayami .none-list li::after { content:''; display:inline-block; width:64px; height:87px; background-repeat:no-repeat; background-position:0 100%; background-size:64px 97px; position:absolute; left:50%; bottom:-87px; transform:translateX(-50%); }
#onayami .none-list li:nth-child(1)::after { background-image:url(/partner/images/icon_man_01.png); }
#onayami .none-list li:nth-child(2)::after { background-image:url(/partner/images/icon_man_02.png); }
#onayami .none-list li:nth-child(3)::after { background-image:url(/partner/images/icon_man_03.png); }
#onayami .copy_kaiketsu { text-align:center; margin:75px auto 0;}
#onayami .copy_kaiketsu strong { display:inline-block; font-size:44px; color:#0e417d; font-weight:bold; line-height:1; position:relative;  }
#onayami .copy_kaiketsu strong::before { content:''; display:inline-block; width:calc(100% + 40px); height:20px; background:#fcee21; position:absolute; left:50%; bottom:-5px; transform:translateX(-50%); z-index:-1; }
#onayami .copy_kaiketsu strong .kai,
#onayami .copy_kaiketsu strong .ketsu { display:inline-block; font-size:44px; color:#FFF; line-height:1; margin:0 2px; padding:6px 4px; }
#onayami .copy_kaiketsu strong .kai { background:#0e417d; }
#onayami .copy_kaiketsu strong .ketsu { background:#0f91a1; }

@media screen and (min-width: 429px) and (max-width: 960px) {
	#onayami .title::before { left:-5%; }
}
@media screen and (max-width: 428px) {
	#onayami .title { font-size:24px; line-height:1.5; }
	#onayami .none-list { flex-direction:column; align-items:center; padding:30px 3% 80px; }
	#onayami .none-list li { width:calc(100% - 20px); justify-content: center; text-align:center; padding:20px 10px 30px; min-height:150px; }
	#onayami .none-list li + li { margin-top:62px; }
	#onayami .none-list li::after { width:44px; height:58px; background-size:42px auto; bottom:-60px; }
	#onayami .copy_kaiketsu strong { font-size:28px; line-height:1.75; }
	#onayami .copy_kaiketsu strong .kai,
	#onayami .copy_kaiketsu strong .ketsu { font-size:38px; }
}

.tit_point { padding:0 0 0 200px; position:relative; }
.tit_point .tit_L { position:absolute; left:0; top:0; width:160px; height:80px; }
.tit_point .tit_L::before { content:'SOLUTION'; display:inline-block; font-size:12px; color:#0e417d; font-weight:bold; line-height:1; letter-spacing: 1.5px; position:absolute; left:0; top:0; }
.tit_point .kai,
.tit_point .ketsu { display:flex; width:36px; height:36px; align-items:center; justify-content:center; font-size:26px; color:#FFF; font-weight:bold; line-height:1; padding:0; position:absolute; }
.tit_point .kai { background:#0e417d; left:0; top:20px; }
.tit_point .ketsu { background:#0f91a1; left:40px; top:20px; }
.tit_point .point { display:inline-block; font-size:18px; color:#0e417d; font-weight:bold; line-height:1; position:absolute; left:0; top:60px; }
.tit_point .num { display:inline-block; width:72px; height:75px; border-top:4px solid #0e417d; position:absolute; right:0; top:4px; font-size:58px; color:#0e417d; font-weight:bold; line-height:1; letter-spacing:-2px; padding-top:5px; white-space:nowrap; text-align:center; }
.tit_point .num::after { content:''; display:inline-block; width:100%; height:12px; background:#fcee21; position:absolute; right:0; bottom:2px; z-index:-1; }
.tit_point .tit_R { min-height: 90px; display: flex; flex-direction: column; justify-content: center; }
.tit_point .txt { display:block; font-size:34px; color:#0e417d; font-weight:bold; line-height:1.5; }

#point01,
#point02,
#point03,
#point04 { background:url(/partner/images/bg_01.png) no-repeat 100% 0; background-size:610px auto; padding-top:70px; }

@media screen and (min-width: 429px) and (max-width: 960px) {
}
@media screen and (max-width: 428px) {
	.tit_point { padding:100px 0 0; }
	.tit_point .txt { font-size:28px; }
	.tit_point .tit_R { min-height:0; justify-content:flex-start; }
}


#point01 { margin-top:70px; }
#point01 .sec_inner {  }
.box_01_01 { margin:50px 0 0; padding:5% 0 0 51%; background:url(/partner/images/img_01_01.png) no-repeat 0 0; background-size:49% auto; min-height:355px; }
.box_01_01 p { font-size:18px; color:#212121; font-weight:bold; line-height:1.75; }
.box_01_01 ul { margin:34px 0 0; border-bottom:1px solid #cfd9e5; }
.box_01_01 ul li { border-top:1px solid #cfd9e5; padding:17px 0 15px; font-size:20px; color:#0e417d; font-weight:bold; }
.box_01_01 ul li sup { font-size:14px; }
.box_01_01 ul li strong { font-size:30px; }
.box_01_01 ul li small { font-size:14px; margin-left:5px; }
.box_01_02 { display:flex; justify-content:space-between; margin-top:20px; }
.box_01_02 .clm_left,
.box_01_02 .clm_right { width:calc(50% - 10px); }
.box_01_02 .clm_left { border-radius:20px; background:#ecf0f5; padding:0 10px 10px; }
.box_01_02 .clm_left h4 { font-size:20px; color:#0e417d; font-weight:bold; text-align:center; line-height:1; padding:31px 0 31px; }
.box_01_02 .clm_left ul { background:#FFF; border-radius:15px; padding:0 20px; }
.box_01_02 .clm_left ul li { border-top:1px solid #cfd9e5; display:flex; justify-content: space-between; align-items:center; width:100%; height:67px; position:relative; }
.box_01_02 .clm_left ul li:first-child { border-top:0; }
.box_01_02 .clm_left ul li::before { content:''; display:inline-block; width:10px; height:40px; position:absolute; left:0; top:50%; transform:translateY(-50%); }
.box_01_02 .clm_left ul li:nth-child(1)::before { background-color:#0e417d; }
.box_01_02 .clm_left ul li:nth-child(2)::before { background-color:#567aa4; }
.box_01_02 .clm_left ul li:nth-child(3)::before { background-color:#7a7a7a; }
.box_01_02 .clm_left ul li:nth-child(4)::before { background-color:#a6a6a6; }
.box_01_02 .clm_left ul li:nth-child(5)::before { background-color:#d3d3d3; }
.box_01_02 .clm_left ul li span:nth-child(1) { padding-left:35px; font-size:16px; color:#212121; font-weight:bold; }
.box_01_02 .clm_left ul li span:nth-child(2) { text-align:right; font-size:24px; color:#212121; font-weight:bold; }
.box_01_02 .clm_right { }
.box_01_02 .clm_right ul { }
.box_01_02 .clm_right ul li { border-radius:20px; height:136px; position:relative; margin-top:10px; background-position:0 50%; background-repeat:no-repeat; background-size:136px auto; padding:0 10px 0 140px; display:flex; flex-direction:column; align-items:flex-start; align-content:flex-start; justify-content: center; }
.box_01_02 .clm_right ul li:nth-child(1) { background-image:url(/partner/images/img_01_02.png); background-color:#e7ecf2; margin-top:0; }
.box_01_02 .clm_right ul li:nth-child(2) { background-image:url(/partner/images/img_01_03.png); background-color:#cfd9e5; }
.box_01_02 .clm_right ul li:nth-child(3) { background-image:url(/partner/images/img_01_04.png); background-color:#b7c6d8; }
.box_01_02 .clm_right ul li p { font-size:20px; color:#0e417d; font-weight:bold; }
.box_01_02 .clm_right ul li small { font-size:16px; color:#212121; display:block; margin-top:5px; }

@media screen and (min-width: 429px) and (max-width: 960px) {
	.box_01_01 { min-height:calc(100vw * 0.36); }
	.box_01_01 ul { margin-top:20px; }
	.box_01_02 { margin-top:40px; }
}
@media screen and (max-width: 428px) {
	#point01 { margin-top:60px; }
	.box_01_01 { padding: calc(100vw * 0.75) 0 0 0; background-size:100% auto; min-height:0; }
	.box_01_01 ul li small { display:block; font-size:12px; font-weight:normal; margin-top:10px; }
	.box_01_02 { flex-direction: column; gap:10px; }
	.box_01_02 .clm_left,
	.box_01_02 .clm_right { width:100%;	}
	.box_01_02 .clm_left ul li span:nth-child(2) { font-size:22px; }
	.box_01_02 .clm_right ul li { line-height:1.5; padding-top:10px; padding-bottom:10px; min-height:136px; height:auto; }
	.box_01_02 .clm_right ul li p { font-size:18px; }
	.box_01_02 .clm_right ul li small { font-size:16px; }
}

#point02 { margin-top:100px; }
.box_02_01 { margin:50px 0 0; }
.box_02_01 ol { display:flex; justify-content: space-between; gap:25px; }
.box_02_01 ol li { border-radius:0 0 64px 0; overflow:hidden; font-size:18px; color:#212121; line-height:1.75; width:calc((100% - 50px)/3); background-repeat:no-repeat; background-size:contain; padding:240px 20px 20px; background-color:#ecf0f5; position:relative; }
.box_02_01 ol li strong { font-size:18px; color:#0f91a1; }
.box_02_01 ol li:nth-child(1) { background-image:url(/partner/images/img_02_01.jpg); }
.box_02_01 ol li:nth-child(2) { background-image:url(/partner/images/img_02_02.jpg); }
.box_02_01 ol li:nth-child(3) { background-image:url(/partner/images/img_02_03.jpg); }
.box_02_01 ol li::before { display:block; width:100%; font-size:64px; color:#0e417d; font-weight:bold; line-height:1; text-align:center; position:absolute; top:0; left:0; aspect-ratio: 620 / 428; display: flex; justify-content: center; align-items: flex-end; transform: translateY(25px); }
.box_02_01 ol li:nth-child(1)::before { content:'1'; }
.box_02_01 ol li:nth-child(2)::before { content:'2'; }
.box_02_01 ol li:nth-child(3)::before { content:'3'; }

@media screen and (min-width: 429px) and (max-width: 960px) {
	.box_02_01 ol { gap:15px; }
	.box_02_01 ol li { padding-top:calc(100vw * 0.24); }
}
@media screen and (max-width: 428px) {
	#point02 { margin-top:50px; }
	.box_02_01 ol { flex-direction: column; }
	.box_02_01 ol li { width:100%; padding-top:calc(100vw * 0.75); font-size:16px; }
	.box_02_01 ol li strong { font-size:16px; }
}

#point03 { margin-top:100px; }
.box_03_01 { margin:50px 0 0; padding:340px 0 0; background:url(/partner/images/img_03_01.jpg) no-repeat 100% 0; background-size:90% auto; }
.box_03_01 > ul { display:flex; }
.box_03_01 > ul > li { width:50%; display:flex; flex-direction:column; }
.box_03_01 > ul > li ul { border:2px solid #dbe2eb; border-radius:12px; padding:0 18px; margin:0 auto; width:calc(100% - 50px); margin-bottom:-6px; position:relative; z-index:1; background:#FFF; }
.box_03_01 > ul > li ul li { min-height:63px; display:flex; align-items:center; font-size:16px; border-top:1px solid #dbe2eb; padding:0 0 0 40px; background:url(/partner/images/icon_check_02.png) no-repeat 0 50%; background-size:30px auto; position:relative; }
.box_03_01 > ul > li ul li:first-child { border-top:0; }
.box_03_01 > ul > li ul li:last-child::before,
.box_03_01 > ul > li ul li:last-child::after { position:absolute; left:50%; transform:translateX(-50%); }
.box_03_01 > ul > li ul li:last-child::before { content:''; display:inline-block; width:0; height:0; border-top:23px solid #dbe2eb; border-left:19px solid transparent; border-right:19px solid transparent; bottom:-23px; }
.box_03_01 > ul > li ul li:last-child::after { content:''; display:inline-block; width:0; height:0; border-top:20px solid #FFF; border-left:17px solid transparent; border-right:17px solid transparent; bottom:-20px; }
.box_03_01 > ul > li dl { border-radius:0 0 128px 0; min-height:664px; background-image:url(/partner/images/img_03_02.jpg); background-repeat:no-repeat; background-position:50% 110px; background-size:250px 135px; overflow:hidden; flex-grow:1; }
.box_03_01 > ul > li dl dt { display:flex; justify-content:center; align-items:center; flex-wrap:wrap; font-size:24px; font-size:bold; height:60px; border:1px solid #dbe2eb; margin:0 auto; }
.box_03_01 > ul > li dl dt b { font-size:30px; }
.box_03_01 > ul > li dl dt span { font-size:30px; padding:0 7px; }
.box_03_01 > ul > li dl dd { box-shadow: 0 -10px 5px 0 rgba(0,0,0,0.05); margin-top:160px; border-radius:0 0 126px 0; }
.box_03_01 > ul > li dl dd p { font-size:18px; color:#212121; line-height:1.75; }
.box_03_01 > ul > li dl dd p b { color:#0f91a1; font-weight:bold; }
.box_03_01 > ul > li dl dd p + p { margin-top:1em; }
.box_03_01 > ul > li:nth-child(1) { }
.box_03_01 > ul > li:nth-child(1) dl { background-color:#ecf0f5; border:1px solid #dbe2eb; padding:24px 0 30px; }
.box_03_01 > ul > li:nth-child(2) dl { background-color:#FFF; border:4px solid #0e417d; padding:21px 0 30px; }
.box_03_01 > ul > li:nth-child(1) dl dt { width:calc(100% - 48px); color:#0e417d; background:#FFF; }
.box_03_01 > ul > li:nth-child(2) dl dt { width:calc(100% - 42px); color:#fff; background:#0e417d; }
.box_03_01 > ul > li:nth-child(1) dl dd { background:#ecf0f5; padding:25px; }
.box_03_01 > ul > li:nth-child(2) dl dd { background:#FFF; padding:21px; }

@media screen and (min-width: 429px) and (max-width: 960px) {
}
@media screen and (max-width: 428px) {
	#point03 { margin-top:50px; }
	.box_03_01 { padding-top:calc(100vw * 0.4); background-size:100% auto; }
	.box_03_01 > ul { flex-direction: column; }
	.box_03_01 > ul > li { width:100%; }
	.box_03_01 > ul > li + li { margin-top:20px; }
	.box_03_01 > ul > li dl { min-height:0; }
	.box_03_01 > ul > li dl dt { height:auto; min-height:60px; padding:10px 5px; }
	.box_03_01 > ul > li dl dt b { display:inline-block; font-size:28px; }
	.box_03_01 > ul > li dl dt span { display:inline-block; margin-top:3px; font-size:24px; }
	.box_03_01 > ul > li dl dd p { font-size:16px; }
}

#point4 { margin-top:100px; }
.box_04_01 { min-height:600px; margin:50px 0 0; background:url(/partner/images/img_04_08.jpg) no-repeat left 50% bottom 60px; background-size:100% auto; }
.box_04_01 ul { display:flex; flex-wrap:wrap; justify-content:center; gap:18px; margin-bottom:48px; padding:0 0 115px; background:url(/hpartner/images/logo_01.png) no-repeat 50% 100%; background-size:260px auto; }
.box_04_01 ul li { width:calc((100% - 90px)/4); height:204px; border:2px solid #dbe2eb; border-radius:12px; padding:0 0 8px; margin-bottom:38px; background-color:#FFF; background-repeat:no-repeat; background-position:50% 20px; background-size:86px auto; display:flex; align-items:flex-end; position:relative; }
.box_04_01 ul li:nth-child(1) { background-image:url(/partner/images/img_04_01.png); }
.box_04_01 ul li:nth-child(2) { background-image:url(/partner/images/img_04_02.png); }
.box_04_01 ul li:nth-child(3) { background-image:url(/partner/images/img_04_03.png); }
.box_04_01 ul li:nth-child(4) { background-image:url(/partner/images/img_04_04.png); }
.box_04_01 ul li:nth-child(5) { background-image:url(/partner/images/img_04_05.png); }
.box_04_01 ul li:nth-child(6) { background-image:url(/partner/images/img_04_06.png); }
.box_04_01 ul li:nth-child(7) { background-image:url(/partner/images/img_04_07.png); }
.box_04_01 ul li span { display:flex; justify-content:center; align-items:center; font-size:16px; color:#0e417d; font-weight:bold; line-height:1.75; text-align:center; width:calc(100% - 18px); height:68px; margin:0 auto; border-radius:6px; background:#e7ecf2; }
.box_04_01 ul li::before,
.box_04_01 ul li::after { position:absolute; left:50%; transform:translateX(-50%); }
.box_04_01 ul li::before { content:''; display:inline-block; width:0; height:0; border-top:23px solid #dbe2eb; border-left:19px solid transparent; border-right:19px solid transparent; bottom:-23px; }
.box_04_01 ul li::after { content:''; display:inline-block; width:0; height:0; border-top:20px solid #FFF; border-left:17px solid transparent; border-right:17px solid transparent; bottom:-20px; }

@media screen and (min-width: 429px) and (max-width: 960px) {
}
@media screen and (max-width: 428px) {
	#point04 { margin-top:50px; }
	.box_04_01 { margin-top:30px; }
	.box_04_01 ul li { width:calc((100% - 25px)/2); margin-bottom:20px; }
	.box_04_01 ul li span { font-size:14px; }
}

#case { margin-top:100px; }

.tit_case { text-align:center; }
.tit_case span { display:inline-block; font-size:44px; color:#0e417d; font-weight:bold; position:relative; }
.tit_case span::before { content:''; display:inline-block; width:calc(100% + 10px); height:20px; background:#fcee21; position:absolute; bottom:-10px; left:-5px; z-index:-1; }
.tit_case_sub { font-size:30px; color:#0e417d; font-weight:bold; position:relative; margin:50px 0 0; padding:16px 0 0; display:flex; align-items:center; }
.tit_case_sub span { font-size:58px; padding-right:5px; }
.tit_case_sub::before { content:'CASE'; display:inline-block; font-size:12px; position:absolute; left:3px; top:0; }
.tit_case_sub::after { content:''; display:inline-block; width:33px; height:4px; background:#0e417d; position:absolute; left:46px; top:4px; }

#case .lead { font-size:30px; color:#0e417d; font-weight:bold; line-height:1.75; margin:70px 0 30px; }
#case .lead strong { font-size:30px; color:#0f91a1; font-weight:bold; }
#case .clm2 {}
#case .clm2 .clm_left {}
#case .clm2 .clm_left dl {}
#case .clm2 .clm_left dl dt {}
#case .clm2 .clm_left dl dt span { display:inline-flex; min-width:130px; height:45px; justify-content:center; align-items:center; font-size:22px; color:#FFF; font-weight:bold; border-radius:0 0 12px 0; }
#case .clm2 .clm_left dl .dl_01 { }
#case .clm2 .clm_left dl .dl_01 dt span { background:#0e417d; }
#case .clm2 .clm_left dl .dl_01 dd { padding:20px 0 30px; }
#case .clm2 .clm_left dl .dl_01 dd ul {}
#case .clm2 .clm_left dl .dl_01 dd ul li { font-size:18px; line-height:1.75; text-indent:-1em; padding-left:1em; }
#case .clm2 .clm_left dl .dl_01 dd ul li + li { margin-top:1em; }
#case .clm2 .clm_left dl .dl_02 dt span { background:#0f91a1; }
#case .clm2 .clm_left dl .dl_02 { background:#ecf6f7; }
#case .clm2 .clm_left dl .dl_02 dd { padding:30px 40px; }
#case .clm2 .clm_left dl .dl_02 dd ul {}
#case .clm2 .clm_left dl .dl_02 dd ul li { font-size:18px; font-weight:bold; line-height:1.75;padding:0 0 0 50px; background:url(/partner/images/icon_check_02.png) no-repeat 0 0; background-size:30px auto; position:relative;  }
#case .clm2 .clm_left dl .dl_02 dd ul li + li { margin-top:1em; }
#case .clm2 .clm_right { padding:30px; background: linear-gradient(to top, #ecf0f5, #FFF); border-radius:12px; position:relative; }
#case .clm2 .clm_right::before { content:''; display:inline-block; border-bottom:20px solid #FFF; border-left:17px solid transparent; border-right:17px solid transparent; position:absolute; left:50%; transform:translateX(-50%); top:-20px; z-index:1; }
#case .clm2 .clm_right h4 { font-size:22px; color:#0e417d; font-weight:bold; text-align:center; padding:10px 0 30px; }
#case .clm2 .clm_right h4 b { font-size:22px; color:#0f91a1; font-weight:bold; }
#case .clm2 .clm_right .copy { font-size:18px; color:#0e417d; font-weight:bold; line-height:1.75; }
#case .clm2 .clm_right p { font-size:16px; line-height:1.75; }
#case .clm2 .clm_right p + p { margin-top:1em; }
.case_a { background:url(/partner/images/img_case_01.jpg) no-repeat 100% 60px; background-size:680px 280px; }
.case_b { background:url(/partner/images/img_case_02.jpg) no-repeat 100% 60px; background-size:680px 280px; }

#faq { margin-top:100px; min-height:720px; background:url(/partner/images/img_qa_01.jpg) no-repeat 0 0; background-size:100% auto; max-width: 1200px; margin-left: auto; margin-right: auto; margin-bottom: 50px; }
.tit_faq { text-align:center; padding:90px 0 0; }
.tit_faq span { display:inline-block; font-size:44px; color:#0e417d; font-weight:bold; position:relative; z-index:1; }
.tit_faq span::before { content:''; display:inline-block; width:calc(100% + 10px); height:20px; background:#fcee21; position:absolute; bottom:-10px; left:-5px; z-index:-1; }

.dl_faq { display:flex; flex-wrap:wrap; justify-content:space-between; }
.dl_faq .dlbox { margin-top:56px; width:calc(50% - 10px); display:flex; flex-direction:column; }
.dl_faq .dlbox dt { padding:0 0 0 70px; display:flex; align-items:center; font-size:18px; color:#0e417d; font-weight:bold; line-height:1.75; min-height:54px; position:relative; }
.dl_faq .dlbox dt::before { content:'Q'; display:flex; justify-content:center; align-items:center; font-size:40px; color:#FFF; font-weight:bold; line-height:1; width:54px; height:54px; background:#0e417d; position:absolute; left:0; top:5px; }
.dl_faq .dlbox dd { margin:20px 0 0; padding:30px 30px 30px 80px; font-size:18px; color:#0f91a1; font-weight:bold; line-height:1.75; background:#FFF; box-shadow:0 0 10px 0 rgba(0,0,0,0.05); position:relative; flex-grow:1; }
.dl_faq .dlbox dd::before { content:'A'; display:inline-block; font-size:40px; color:#0f91a1; font-weight:bold; line-height:1; position:absolute; left:30px; top:30px; }


@media screen and (min-width: 429px) and (max-width: 960px) {
}
@media screen and (max-width: 428px) {
	.tit_case span { font-size:28px; }
	#case .lead { margin:20px 0 30px; font-size:20px; }
	#case .lead strong { font-size:20px; }
	#case .clm2 .clm_left dl .dl_02 dd { padding:20px; }
	#case .clm2 .clm_left dl .dl_01 dd ul li { font-size:16px; }
	#case .clm2 .clm_right { margin-top:calc(100vw * 0.41); }
	#case .clm2 .clm_right::before { top:-30px; }
	#case .case_a,
	#case .case_b { background-image:none; }
	#case .clm2 .clm_right::after { content:''; display:inline-block; width:100%; aspect-ratio:1360/560; position:absolute; top:calc(100vw * -0.41);; left:0; background-repeat:no-repeat; background-position:0 0; background-size:contain; }
	#case .case_a .clm2 .clm_right::after { background-image:url(/partner/images/img_case_01.jpg); }
	#case .case_b .clm2 .clm_right::after { background-image:url(/partner/images/img_case_02.jpg); }

	.tit_faq { height:calc(100vw * 0.55); padding-top:27%; }
	.tit_faq span { font-size:28px; }
	.dl_faq { flex-direction: column; margin-top:0; margin-bottom:60px; }
	.dl_faq .dlbox { width:100%; margin-top:30px; }
	.dl_faq .dlbox dt { font-size:16px; }
	.dl_faq .dlbox dd { box-shadow:2px 2px 7px 0 rgba(0,0,0,0.075); padding:30px 10px 30px 70px; font-size:16px; }
	.dl_faq .dlbox dd::before { left:25px; }
}


/********************

#form

********************/
#form {
	padding: 105px 0 116px;
	background:url(/partner/images/img_contact_01.jpg) no-repeat 50% 50%;
	background-size:cover;
}
#form .tit_form {
	text-align:center;
	font-size:26px;
	color:#fcee21;
	font-weight:bold;
}
#form .tit_form b {
	font-size:44px;
	color:#FFF;
	margin-left:15px;
}
#form .sec_inner {
	max-width:980px;
	margin: 45px auto;
	padding: 50px 0 70px;
	background:rgba(0,0,0,0.2);
}
#form .site-width-min {
	max-width:640px;
	margin:0 auto;
}
#form table {
	border-bottom: none;
	width:100%;
}
#form table tr {
}
#form table tr th {
	color:#FFF;
	position:relative;
	text-align:left;
	padding:18px 14px 0 55px;
	font-weight:bold;
}
#form table tr th .fc-red {
	display:inline-block;
	background:#f096a0;
	font-size:14px;
	color:#0e417d;
	line-height:22px;
	text-align:center;
	width:42px;
	height:22px;
	border-radius:6px;
	position:absolute;
	left:0;
	top:18px;
}
#form table tr td {
	color:#FFF;
}


#form h2 {
	font-size: 3.4rem;
	color: #000;
}
#form h2::after {
	width: 0;
	height: 0;
	background: url();
}
#form table th {
	text-align: right;
	font-weight: normal;
	width: 40%;
}
#form th, #form td {
	vertical-align: top;
	padding: 14px;
	line-height: 1.2;
}
#form th, #form td .box_input + .box_input {
	margin-top:25px;
}
#form th, #form td .box_input strong {
	padding:0 15px;
}
#form td input[type="text"], #form td input[type="email"], #form td input[type="tel"], #form td textarea {
	background-color: #FFF;
	padding: 5px;
	font-size: 100%;
	width: 100%;
	border-radius:6px;
}
#form td input[type="text"], #form td input[type="email"], #form td input[type="tel"] {
	height:40px;
}
#form .name td input[type="text"] {
	width: 70%;
}
#form .recaptcha > div {
	display: inline-block;
}
#form .recaptcha {
	margin-bottom: 30px;
	text-align: center;
}
#form .site-width-min .text-center a {
	color: #2e719d;
	text-decoration: underline;
}
#form .box_policy {
	padding:20px;
	background:rgba(0,0,0,0.2);
	font-weight:bold;
	text-align:center;
}
#form .box_policy input[type="checkbox"] {
	background:#FFF;
	border:2px solid #444746;
	margin-right:15px;
	width: 24px;
	height:24px;
	vertical-align: sub;
	cursor:pointer;
}
#form .box_policy a {
	color:#fff;
	text-decoration:none;
}
#form .box_submit {
	text-align:center;
	transform:translateY(40px);
}
#form .box_submit button {
	display:inline-block;
	width:300px;
	height:80px;
	background:url(/partner/images/btn_contact.png) no-repeat 50% 0;
	background-size:300px auto;
	border:0;
	position:relative;
	text-indent:-9999px;
}
#form .box_submit button::before {
	content:'';
	display:inline-block;
	width:300px;
	height:80px;
	background:url(/partner/images/btn_contact.png) no-repeat 50% 100%;
	background-size:300px auto;
  transition:all ease .3s;
	opacity:0;
	position:absolute;
	left:0;
	top:0;
}
#form .box_submit button:hover::before {
	opacity:1;
}

@media screen and (min-width: 429px) and (max-width: 960px) {
}
@media screen and (max-width: 428px) {
	#form { padding-top:55px; }
	#form .sec_inner { padding-top:0px; }
	#form .tit_form { font-size:20px; }
	#form .tit_form b { display:block; font-size:24px; margin-top:10px; }
	#form table tr th { padding-left:0; padding-bottom:3px; }
	#form table tr th .fc-red { top:-12px; }
	#form .box_submit { transform:translateY(0); }
}

/********************

footer

********************/
footer {
	margin-top:130px;
	color: #fff;
	padding: 30px 0 24px;
	color: #fff;
}
footer a, footer a:visited {
	color: #fff;
	display: inline-block;
	margin-bottom: 52px;
}
footer a:hover {
	text-decoration: underline;
}
footer a {
	display:inline-block;
	position:relative;
}
footer a::before {
	content:'';
	width:100%;
	height:2px;
	background:#FFF;
	position:absolute;
	top:-30px;
}
.fix-menu {
	width: 80px;
  aspect-ratio:80/300;
	position: fixed;
	top: 40%;
	right: 20px;
	z-index: 999;
}
.fix-menu a { display:block; width:80px; aspect-ratio:80/300; background:url('/partner/images/btn_02.png') no-repeat 0 0; background-size:100% auto; text-indent:-9999px; overflow:hidden; position:relative; }
.fix-menu a::before { content:''; display:block; width:100%; height:100%; aspect-ratio:80/300; background:url('/partner/images/btn_02.png') no-repeat 0 100%; background-size:100% auto; opacity:0; transition:all ease .3s; }
.fix-menu a:hover::before { opacity:1; }

@media screen and (min-width: 429px) and (max-width: 960px) {
	.fix-menu { width:60px; right:10px; }
	.fix-menu a { width:60px; }
}
@media screen and (max-width: 428px) {
	.fix-menu { width:100%; aspect-ratio:unset; top:unset; bottom:10px; right:0; text-align:center; }
	.fix-menu a { background:url('/partner/images/btn_03.png') no-repeat 0 0; background-size:100% auto; width:calc(100vw - 60px); max-width:300px; aspect-ratio:300/80; margin:0 auto; }
	.fix-menu a::before { display:none; }
}

/* フォント */
.fs18 {
	font-size: 1.8rem;
}
.fs20 {
	font-size: 2rem;
}
.fs30 {
	font-size: 3rem;
}
.fs34 {
	font-size: 3.4rem;
}
.fc-yellow {
	color: #ffe9a4;
}
.fc-red {
	color: #ff3333;
}
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}


/********************

レスポンシブ

********************/

.small {
	display: none;
}

@media screen and (max-width: 1200px) {
	#jirei > .box02::after {
		height: 900px;
	}
}
@media screen and (max-width: 1000px) {
	.site-width-min, .site-width {
		width: 90%;
	}
	#about ul {
		text-align: center;
	}
	#point01 .box01 > .inline-box > div > .inline-box:last-child div {
		width: 100%;
		margin: 0 0 5px 0;
		text-align: center;
	}
	.large {
		display: none;
	}
	.small {
		display: block;
	}
	#point04 .inline-list li > div {
		min-height: 180px;
	}
}
@media screen and (max-width: 786px) {
	html {
		font-size: 50%;
	}
	#jirei .box01, #jirei .box02 {
		display: block;
	}
	#jirei .box01 .box-img, #jirei .box02 .box-img {
		display: none;
	}
	#jirei .box01 > div:last-child, #jirei .box02 > div:first-child {
		width: 100%;
		padding: 30px;
	}
	#form .site-width-min {
		padding: 30px 10px;
	}
}
@media screen and (max-width: 600px) {
	#point03 > .site-width-min > .text-center {
		display: none;
	}
	#point03 .half-box > div {
		width: 100%;
	}
	#point03 .half-box > div:first-child {
		padding-right: 0;
		margin-bottom: 20px;
	}
	#point03 .half-box > div:last-child {
		padding-left: 0;
	}
	.box02 .sankaku {
		margin-bottom: 10px;
	}
	.box01 .border-box:last-child, .box02 .border-box:last-child {
		min-height: auto;
	}
	#form table th, #form table td {
		display: block;
		width: 100%;
		text-align: left;
		padding: 5px 0;
	}
	a.btn{
		padding: 23px;
		width: 80%;
	}
}

@media screen and (max-width: 480px) {
	#point02 .inline-box > div {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
	#point01 .box01 > .inline-box > div > .inline-box:first-child > div:last-child {
		width: 100%;
	}
	h3.point {
		text-align: center;
	}
	h3.point > div:first-child {
		display: block;
		margin: 0 auto 10px;
	}
	#point01 .box02 > div:last-child ul li > div {
		width: 100%;
		text-align: center;
	}
	#point01 .box02 > div:last-child ul li > div br {
		display: none;
	}
	#point01 .box02 > div:last-child ul li::before {
		display: block;
		margin: 0 auto 5px;
	}
	h3.point .title-text {
		width: 100%;
	}
}


.case_box {
  margin:50px auto;
  max-width: 1200px;
}
.case_box .white-box {
  margin:0 20px;
}
.case_box .case-list__text {
	font-size:16px;
	margin-bottom:15px;
}
.case-list .h-img-wrap {
	margin-bottom:30px;
}
.case_box * {
  font-family: 游ゴシック体, YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 游ゴシック, "Yu Gothic", メイリオ, sans-serif;
}

.case_box {
	max-width:1200px;
	margin:100px auto;
}
@media screen and (min-width: 429px) and (max-width: 960px) {
}
@media screen and (max-width: 428px) {
	.case_box {
		margin:0 auto 100px;
	}
	.case_box .case-list__name {
		font-size: 14px;
    line-height: 1.25;
	}
	.case_box .case-list__text {
		font-size:14px;
		line-height:1.25;
		margin-bottom:15px;
	}
	.case-list .h-img-wrap {
		margin-bottom:15px;
	}
	.case-list li {
		padding-bottom:35px;
	}
	.case_box .btn {
		font-size:16px;
	}
}

