@charset "UTF-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&amp;family=Zen+Kaku+Gothic+New:wght@400;500;700&amp;family=Zen+Old+Mincho:wght@600&amp;display=swap');
@import url('https://www.recruit.co.jp/employment/students/assets/css/reset.css');
@import url('https://www.recruit.co.jp/employment/students/assets/splide/splide.min.css');

body { color: #222222; line-height:1; padding: 0; position: relative; min-height: 100%; background: #DFDFDF }
html { min-height: 100%; }

* {word-wrap: break-word; }
img { -ms-interpolation-mode: bicubic; }
:focus-visible { outline-color: #C8AAFF; }
/* !font-size 16px default setting */
body { font-size: 16px; font-family: "Zen Kaku Gothic New", Sans-Serif }
p, th, td, dt, dd { line-height: 2.0; font-weight: 500 }
h1, h2, h3, h4, h5 { font-family: "Zen Kaku Gothic New", Sans-Serif; letter-spacing: 0.04em; font-weight: 700; font-style: normal }

.serif { font-family: "Zen Old Mincho", YuMincho, 'Yu Mincho', serif; }
.en { font-family: "Jost", Helvetica, Arial, Sans-Serif; }
.jp { font-family: "Zen Kaku Gothic New", Sans-Serif }

/* !clearfix */
hr { display: none; }
.cfix { zoom:1; }
.cfix:after{
    content:"";
    clear:both;
    display:block;
    height:0;
}
/* リストの高さ揃える  */
.list-flex { display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: flex-start;
}
/* スクロールバーの有無によるズレ対策 */
html {
	overflow-y: scroll;
}
img { vertical-align: bottom; }
button { color: #222222; padding: 0; border: none; appearance: none; background: none; cursor: pointer; }

.ts-larger { font-size: 1.12em !important }
.ts-smaller { font-size: 0.88em !important }

.fltR { float: right; }
.fltL { float: left; }

.txtR { text-align: right; }
.txtL { text-align: left; }
.txtC { text-align: center; }

.pc-none { display: none }
.sp-none { display: block }

/* !Links */
a { cursor: pointer !important }
a:link { color: #222222; text-decoration: none }
a:visited { color: #222222; text-decoration: none }
a:hover { color: #222222; text-decoration: underline }
a:active { color: #222222; text-decoration: none }
a.bdr:link, a.bdr:visited { border-bottom: solid 1px #222 }
a.bdr:hover { text-decoration: none; border-bottom: solid 2px #222 }

/* effects */
.fd { position: relative; opacity: 0; /*transform: translateY(6vw);*/ transition: opacity 0.8s linear, transform 1s cubic-bezier(0.19, 1, 0.22, 1) }
.fd .sec-inner { transform: translateY(6vw); transition: transform 1s cubic-bezier(0.19, 1, 0.22, 1) }
.fd.active { opacity: 1; /*transform: translateY(0);*/ }
.fd.active .sec-inner { transform: translateY(0); }

.wrapper { overflow: hidden }

#header { position: fixed; left: 0; top: 0; width: 100%; height: 80px; background: #000; z-index: 100 }
#header h1 { width: 96px; margin: 15px 19px; text-align: center }
#header h1 img { width: 100% }
#header h1 p { font-size: 10px; font-weight: 700; color: #fff; line-height: 1; margin-top: 8px }
#header .site-logo { width: 96px; margin: 15px 19px; text-align: center }
#header .site-logo img { width: 100% }
.global-nav { position: absolute; display: block; right: 250px; top: 10px; }
.global-nav li { position: relative; display: inline-block; }
.global-nav li a, .global-nav li button { display: block; color: #fff; font-size: 12px; line-height: 60px; padding: 0 1em; font-family: "Zen Kaku Gothic New", Sans-Serif }
.global-nav li a:hover { text-decoration: none }
.global-nav li .parent::after { content:""; position: absolute; left: 1em; bottom: 12px; width: 0; height: 2px; background: #BDBDBD; transition: all 0.2s }
.global-nav li .parent:hover::after { width: calc(100% - 2em); }
.global-nav li ol { position: absolute; left: 0; top: 60px; width: 220px; padding: 15px 0; background: #000; display: none }
.global-nav li ol li { display: block }
.global-nav li ol li a { display: block; font-weight: 400; line-height: 1.3em; padding: 15px 70px 15px 30px }
.global-nav li ol li a::after { content: ""; display: block; position: absolute; right: 30px; top: calc(50% - 6px); width: 12px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_sss.png") no-repeat; background-size: contain }
.btn-entry-2026 { position: absolute; right: 20px; top: 10px; width: 210px; height: 60px }
.btn-entry-2026 a { display: block; font-size: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/btn_entry_ov.png") no-repeat; background-size: contain }
.btn-entry-2026 a.link-none { background: none }
.btn-entry-2026 a img { transition: all 0.2s }
.btn-entry-2026 a:hover img { opacity: 0 }
.btn-entry-2026 a.link-none:hover img { opacity: 1 }
.btn-menu { display: none }

@media screen and (max-width: 1332px) {
    .global-nav { display: block; right: 240px; }
    .global-nav li a { padding: 0 0.5em }
    .global-nav li .parent::after { left: 0.5em; }
    .global-nav li .parent:hover::after { width: calc(100% - 1em); }
}
@media screen and (max-width: 1272px) {
    #header h1 { margin: 15px 10px; }
    .global-nav { display: block; right: 230px; }
    .global-nav li a, .global-nav li button { font-size: 10px; letter-spacing: -0.02em }
    .btn-entry-2026 { right: 10px; }
}

.contents { margin-top: 80px }
.btn-course { position: fixed; right: 100px; bottom: 40px; display: inline-block; width: 170px; height: 50px; z-index: 99 }
.btn-course a { display: block; padding: 0 25px; font-size: 18px; font-weight: 700; line-height: 50px; background: #fff; border-radius: 25px; box-shadow: 0 4px 4px 0 rgba(0,0,0,0.25); transition: all 0.2s }
.btn-course a:hover { opacity: 0.7 }
.btn-course a::after { content: ""; display: block; position: absolute; right: 10px; top: calc(50% - 12px); width: 24px; height: 24px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_down_b.png") no-repeat; background-size: contain }

#kv { position: relative; margin-bottom: -1px }
.top-wrapper { position: relative }
.top-wrapper .read-more { display: none }
#top-intro { width: 100%; height: 48.44vw; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/bg.jpg"); background-size: cover }
#top-intro .top-intro-inner { width: 50vw; padding: 5.2vw 0 0; margin: 0 auto }
#top-intro .top-intro-inner p { display: block; float: left; color: #fff; font-size: 1.04vw; font-weight: 600; line-height: 2.66em }
#top-intro .top-intro-inner p:last-child { float: right; margin-top: 2em }
#top-intro .top-intro-inner p span { font-size: 1.3vw; }

.sec { padding: 0 40px; }
.sec .sec-inner { position: relative; padding: 150px 0 0; max-width: 1104px; margin: 0 auto }
.sec .sec-inner h2 { font-size: 40px; line-height: 1.8em; margin-bottom: 64px }
.sec .sec-inner h2 span { font-size: 24px; display: block }
.sec .sec-inner h3 { font-size: 24px; line-height: 1.8em; margin-bottom: 48px }
.sec .sec-inner h4 { font-size: 18px; line-height: 1.8em; margin-bottom: 0.5em }
.sec .sec-inner p { font-size: 16px }
#top .sec .sec-inner h2 { line-height: 1.2em; }
#top .sec-inner h3 { line-height: 1.2em; }
#top .sec-inner h4 { line-height: 1.2em; }

#top-news .sec-inner { padding: 180px 0 30px }
#top-news .sec-inner h2 { float: left }
#top-news .sec-inner .top-news-idx { float: right; width: 74% }
#top-news .sec-inner .top-news-idx ul { border-top: solid 1px #BDBDBD }
#top-news .sec-inner .top-news-idx ul li { border-bottom: solid 1px #BDBDBD }
#top-news .sec-inner .top-news-idx ul li .news-box { position: relative; display: block; line-height: 1.5em; padding: 24px 10px 24px 120px; font-weight: 500; }
#top-news .sec-inner .top-news-idx ul li .news-box .date { font-size: 14px; position: absolute; left: 0; top: calc(50% - 0.75em); color: #575757; font-family: "Jost", Helvetica, Arial, Sans-Serif; }
#top-news .sec-inner .top-news-idx ul li a.news-box::after { content: ""; display: block; position: absolute; right: 10px; top: calc(50% - 12px); width: 24px; height: 24px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_s.png") no-repeat; background-size: contain; transition: all 0.2s }
.btn-link { display: inline-block }
.btn-link a { position: relative; display: block; font-size: 15px; font-weight: 500; line-height: 32px; padding-left: 48px; transition: all 0.2s }
.btn-link a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 16px); width: 32px; height: 32px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_m.png") no-repeat; background-size: contain }
/*.btn-link a:hover { opacity: 0.7 }*/
#top-news .btn-link { margin-top: 40px; float: right }

#top-about .sec-inner { padding: 150px 0 }
#top-about .sec-inner .inner-block { position: relative }
#top-about .sec-inner .inner-block p { width: 52%; font-size: 16px; padding-bottom: 20px }
#top-about .sec-inner .inner-block .service-logos { position: absolute; right: 20px; top: 0; width: 41.5% }
.btn-link-l { display: inline-block }
.btn-link-l a { position: relative; display: block; font-size: 24px; font-weight: 700; line-height: 48px; padding-left: 60px; }
.btn-link-l a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 24px); width: 48px; height: 48px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow.png") no-repeat; background-size: contain }
#top-about .btn-link-l { display: block; margin-top: 20px } 

#top-culture { background: #D0D0D0; }
#top-culture .sec-inner { padding: 150px 0 }
#top-culture .sec-inner h2 { float: left; width: calc(31% - 80px) }
#top-culture .sec-inner .inner-block { float: left; width: 34.5%; margin-left: 40px }
#top-culture .sec-inner .inner-block .btn-link-l { margin: 16px 0 24px }
#top-culture .sec-inner .inner-block:last-child .btn-link-l { margin: 0 0 16px }
#top-culture .sec-inner .inner-block:last-child .btn-link-l a { line-height: 1.5em }

#top-career .sec-inner {  }
#top-career .sec-inner h2 { float: right; }
#top-career .sec-inner .inner-block { float: left; width: 34.5%; margin-right: 40px }
#top-career .sec-inner .inner-block .btn-link-l { margin: 16px 0 24px }
#top-career .sec-inner .inner-block:last-child .btn-link-l { margin: 0 0 16px }
#top-career .sec-inner .inner-block:last-child .btn-link-l a { line-height: 1.5em }

#top-work-style .sec-inner {  }
#top-work-style .sec-inner .inner-block { position: relative; float: left; width: 48%; }
#top-work-style .sec-inner .inner-block p { font-size: 16px }
#top-work-style .sec-inner .inner-block .link { position: absolute; right: 0; bottom: -42px }
#top-work-style .sec-inner a:hover { text-decoration: none }
#top-work-style .sec-inner a:hover h2 { text-decoration: underline }
#top-work-style .sec-inner .pic-sp { display: none }
#top-work-style .sec-inner .pic { float: right; width: 48% }

#top-people .sec-inner { padding: 150px 0 200px }
#top-people .sec-inner .btn-link { position: absolute; right: 0; top: 154px }
#top-people .sec-inner .people-slider { margin: 0 -20px; }
#top-people .sec-inner .people-slider ul { }
#top-people .sec-inner .people-slider ul li { /*width: calc(33.33% - 40px);*/ }
#top-people .sec-inner .people-slider ul li a { display: block; position: relative; margin: 0 20px 8px; }
#top-people .sec-inner .people-slider ul li a:hover { text-decoration: none }
#top-people .sec-inner .people-slider ul li a .bg-colors { position: absolute; display: block; width: 100%; height: 100%; left: 0; top: 0; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/bg_colors.jpg"); background-size: cover; z-index: 0; transition: all 0.2s }
#top-people .sec-inner .people-slider ul li a:hover .bg-colors { left: 8px; top: 8px; }
.people { position: relative; z-index: 1; }
.people .pic { filter: grayscale(1); transition: all 0.2s; }
#top-people .sec-inner .people-slider ul li a:hover .people .pic { filter: grayscale(0) }
.people .shoulder { position: absolute; left: 0; top: 0; font-size: 12px; font-weight: 700; padding: 10px; background: #fff }
.people .name { position: absolute; left: 0; bottom: 0; padding: 0 24px 24px; font-size: 15px; font-weight: 700; color: #B1B1B1; }
.people .name span { display: block; font-size: 12px; font-weight: 500; padding-bottom: 10px }
.people h3, .people h4 { display: block; font-size: 18px; line-height: 1.5em; padding: 24px 24px 96px; margin-top: -1px; color: #fff; background: #000 }
.people::after { content: ""; display: block; position: absolute; right: 24px; bottom: 24px; width: 32px; height: 32px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat; background-size: contain }
.people.blk::after { display: none }
.people .ico-blank { position: absolute; right: 24px; bottom: 24px; }
.splide-prev { left: 50%; top: auto; bottom: -112px; margin-left: -144px; width: 48px; height: 48px; background: url(https://www.recruit.co.jp/employment/students/assets/img/2026/btn_prev.png) no-repeat; background-size: contain; opacity: 1 }
.splide-next { right: 50%; top: auto; bottom: -112px; margin-right: -144px; width: 48px; height: 48px; background: url(https://www.recruit.co.jp/employment/students/assets/img/2026/btn_next.png) no-repeat; background-size: contain; opacity: 1 }
.splide-prev svg, .splide-next svg { display: none }
.splide-arrow:hover:not(:disabled) { opacity: .75 }
.splide-pagination { bottom: -80px; font-size:0; }
.splide-pagination li { line-height: 24px; margin: 0; padding: 0; }
.splide-page { top: 6px; width: 24px; height: 24px; margin: 0; padding: 0; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/bullet.png") no-repeat; border-radius: 0; background-size: contain; opacity: 1; vertical-align: baseline !important; cursor: pointer }
.splide-page.is-active { width: 24px; height: 24px; margin: 0; padding: 0; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/bullet_on.png") no-repeat; background-size: cover; transform: none }
/*.splide-page { width: 12px; height: 12px; margin: 0 6px; background: none; border: solid 1px #575757; opacity: 1; cursor: pointer }
.splide-page.is-active { background: #000; transform: none }*/

#top-course { background: #D0D0D0; }
#top-course .sec-inner { padding: 150px 0 }
#top-course .sec-inner .btn-link { position: absolute; right: 0; top: 154px }
#top-course .sec-inner .course-idx { }
#top-course .sec-inner .course-idx ul { margin: 0 -20px }
#top-course .sec-inner .course-idx ul li { width: calc(33.33% - 40px); margin: 20px }
#top-course .sec-inner .course-idx ul li a { display: block; position: relative }
#top-course .sec-inner .course-idx ul li a .bg-colors { position: absolute; display: block; width: 100%; height: 100%; left: 0; top: 0; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/bg_colors.jpg"); background-size: cover; z-index: 0; transition: all 0.2s }
#top-course .sec-inner .course-idx ul li a:hover { text-decoration: none }
#top-course .sec-inner .course-idx ul li a:hover .bg-colors { left: 8px; top: 8px; }
#top-course .sec-inner .course-idx ul li .course { position: relative; background: #fff; z-index: 1 }
#top-course .sec-inner .course-idx ul li .course .pic { filter: grayscale(1); transition: all 0.2s; }
#top-course .sec-inner .course-idx ul li a:hover .course .pic { filter: grayscale(0); }
#top-course .sec-inner .course-idx ul li .course .inner-block { position: relative; padding: 24px 24px 108px; margin-top: -1px; color: #fff; background: #000 }
#top-course .sec-inner .course-idx ul li .course .inner-block h3 { position: relative; font-size: 18px; line-height: 32px; padding-right: 40px }
#top-course .sec-inner .course-idx ul li .course .inner-block h3 span { border-bottom: solid 2px #fff; }
#top-course .sec-inner .course-idx ul li .course .inner-block h3::after { content: ""; display: block; position: absolute; right: 0; top: 0; width: 32px; height: 32px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat; background-size: contain }
#top-course .sec-inner .course-idx ul li .course .inner-block p { font-size: 14px; font-weight: 500; margin-top: 12px }
#top-course .sec-inner .course-idx ul li .course .ex-ocu { position: absolute; width: calc(100% - 48px); left: 24px; bottom: 24px; font-size: 12px; font-weight: 700; color: #B1B1B1 }
#top-course .sec-inner .course-idx ul li .course .ex-ocu span { display: block; font-size: 12px; font-weight: 500; padding-bottom: 10px }
#top-course .sec-inner .course-idx ul li .course .ex-ocu p { display: block; padding: 10px; font-size: 12px; line-height: 1.5em; color: #222; background: #FEFEFE }
#top-course .sec-inner p.notes { margin-top: 48px; padding-left: 14px; text-indent: -14px }

#movie-archive .sec-inner { padding: 150px 0 200px; max-width: inherit; }
#movie-archive .sec-inner h2 { max-width: 1104px; margin: 0 auto 1em }
#movie-archive .sec-inner .movie-idx { position: relative; margin: 0 -20px }
#movie-archive .sec-inner .movie-idx ul li { /*width: 500px; margin: 20px*/ }
#movie-archive .sec-inner .movie-idx ul li a { position: relative; display: block; background: #000; margin: 20px }
#movie-archive .sec-inner .movie-idx ul li a:hover { text-decoration: none }
#movie-archive .sec-inner .movie-idx ul li a .shoulder { position: absolute; left: 0; top: 0; font-size: 14px; line-height: 1em; font-weight: 700; padding: 0.8em 1em; background: #fff }
#movie-archive .sec-inner .movie-idx ul li a .shoulder.atc { color: #fff; background: #222 }
#movie-archive .sec-inner .movie-idx ul li a .inner-block { padding: 24px }
#movie-archive .sec-inner .movie-idx ul li a .inner-block h3 { font-size: 18px; line-height: 1.5em; color: #fff; padding-right: 24px; }
#movie-archive .sec-inner .movie-idx ul li a:hover .inner-block h3 { text-decoration: underline }
/*#movie-archive .sec-inner .movie-idx ul li a::after { content: ""; display: block; position: absolute; right: 24px; bottom: 24px; width: 32px; height: 32px; background: url("../img/2026/ico_blank.png") no-repeat; background-size: contain }*/
#movie-archive .sec-inner .movie-idx ul li a .ico-blank { position: absolute; right: 24px; bottom: 24px; }
#movie-archive .sec-inner .btn-play { position: absolute; bottom: -88px; left: 50%; width: 48px; height: 48px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/btn_play.png") no-repeat; background-size: contain; cursor: pointer; margin-left: 264px; z-index: 102; transition: all 0.2s }
#movie-archive .sec-inner .btn-play.active { background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/btn_stop.png") no-repeat; background-size: contain; }
#movie-archive .splide-prev { margin-left: -252px; }
#movie-archive .splide-next { margin-right: -252px; }

.go-to-pagetop { max-width: 1104px; margin: 40px auto; text-align: right }
.go-to-pagetop a { position: relative; display: inline-block; font-size: 14px; font-weight: 500; line-height: 24px; color: #222; padding-right: 32px }
.go-to-pagetop a::after { content: ""; display: block; position: absolute; right: 0; top: 0; width: 24px; height: 24px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_ss.png") no-repeat; background-size: contain }

#footer { padding: 80px; background: #fff }
#footer .footer-inner { max-width: 1320px; margin: 0 auto }
#footer .f-breadcrumb { padding-bottom: 1.5em }
#footer .f-breadcrumb li { font-size: 12px; line-height: 1.7em; display: inline-block }
#footer .f-breadcrumb li a { color: #1767B8; }
#footer .f-breadcrumb li a::after { content: ""; display: inline-block; width: 5px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_bc.png") no-repeat center center; background-size: contain; margin: 0 4px 0 8px }
#footer .f-nav { border: solid #DFE2E5; border-width: 1px 0 }
#footer .f-nav .inner-block { float: left; width: 16%; margin-right: 5%; padding: 10px 0 }
#footer .f-nav .inner-block:last-child { margin-right: 0 }
#footer .f-nav .inner-block > ul { padding: 10px 0 }
#footer .f-nav ul li button.open-sub { cursor: auto }
#footer .f-nav ul li ul { padding: 0 }
#footer .f-nav ul li ul li { padding: 0 }
#footer .f-nav ul li a { display: inline-block; font-size: 12px; font-weight: 400; line-height: 1.5em; color: #51656F; padding: 0.5em 0; font-family: "Zen Kaku Gothic New", Sans-Serif }
#footer .f-nav ul li span, #footer .f-nav ul li button { display: inline-block; font-size: 18px; font-weight: 500; line-height: 1.5em; color: #51656F; padding: 0.5em 0; font-family: "Zen Kaku Gothic New", Sans-Serif; text-align: left }
#footer .f-nav ul li a span { padding: 1px 0 }
#footer .f-nav ul li ul:not(.links):not(.sns) li a { position: relative; padding-left: 20px }
#footer .f-nav ul li ul:not(.links):not(.sns) li a::before { content: "ー"; position: absolute; left: 0; top: 6px }
#footer .f-nav ul li ul.links li a::after { content: ""; display: inline-block; width: 13px; height: 15px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_blank_s.png") no-repeat; background-size: contain; margin: 0 0 0 6px }
#footer .f-nav ul.sns>li { display: inline-block }
#footer .f-nav ul.sns>li a { line-height: 25px; padding: 0 2px }
#footer .f-nav .mail-magazine { font-size: 12px; font-weight: 400; line-height: 2en; color: #51656F; margin-top: 20px }
#footer .f-nav .mail-magazine a { color: #51656F; }
#footer .company { padding: 20px 0 0 }
#footer .company .copyright { float: left; font-size: 12px; color: #51656F }
#footer .company .copyright span { margin: 0 2em }
#footer .company ul { float: left; font-size: 12px; margin-top: 12px }
#footer .company ul li { display: inline-block }
#footer .company ul li a { display: block; padding: 0 1em; line-height: 2em; color: #51656F }
#footer .company ul li a::after { content: ""; display: inline-block; width: 13px; height: 15px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_blank_s.png") no-repeat bottom; background-size: contain; margin: 0 0 0 4px }

@media screen and (max-width: 1285px) {
    #footer .f-nav ul li button.open-sub br { display: none }
}



#mv { position: relative }
.big-title { position: relative; max-width: 1104px; margin: -200px auto 0; text-align: left }
.big-title h1 { display: inline-block; font-size: 48px; line-height: 1em; color: #fff; padding: 20px 40px; background: #222222; }
.big-title h1 span { font-size: 24px; line-height: 1em; margin-bottom: 0.5em; display: block }
.big-title .inner-block { width: 688px; padding: 40px; margin-top: 10px; background: #222222; color: #fff; }
.big-title .inner-block h2 { font-size: 24px; margin-bottom: 1em; line-height: 1.5em }
p.notes { font-size: 12px !important; margin-top: 1em }
.big-title .inner-block p.notes { color: #BDBDBD }

.anchor-nav { position: fixed; right: -260px; top: 280px; z-index: 99; transition: all 0.4s }
.anchor-nav.active { right: 0; }
.anchor-nav .inner-block { position: relative; width: 147px; padding: 20px 25px 20px 88px; background: #000; border-radius: 8px 0 0 8px; box-shadow: 1px 2px 3px 0 rgba(0,0,0,0.25); z-index: 1 }
.anchor-nav .inner-block::before { content: ""; display: block; position: absolute; left: 0; top: 38px; width: 51px; height: 80px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/anchor_idx.png") no-repeat bottom; background-size: contain; opacity: 0; transition: all 0.4s; z-index: 2 }
.anchor-nav ul { position: relative; max-height: 328px; overflow-y: auto; padding-right: 16px; -webkit-overflow-scrolling: touch; }
/*.anchor-nav ul::-webkit-scrollbar { -webkit-appearance: none; width: 7px; border-radius: 4px; background: #575757 }
.anchor-nav ul::-webkit-scrollbar-thumb { width: 5px; border-radius: 3px; margin: 1px; background: #BDBDBD }*/
.anchor-nav ul li { margin: 20px 0 }
.anchor-nav ul li a { position: relative; display: block; font-size: 14px; line-height: 1.5em; color: #fff; padding-left: 15px; }
.anchor-nav ul li a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 2.5px); width: 3px; height: 3px; border: solid 1px #BDBDBD; border-radius: 3px; }
.anchor-nav ul li.current a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 2.5px); width: 3px; height: 3px; border: solid 1px #FFF; border-radius: 3px; background: #FFF }
.anchor-nav .anchor-tab { position: absolute; display: block; left: -51px; top: 38px; cursor: pointer; z-index: 0; transition: all 0.4s }
.anchor-nav.active .anchor-tab { left: 2px; opacity: 0 }
.anchor-nav.active .inner-block::before { opacity: 1 }
.simplebar-scrollbar:before{ display: none }
.simplebar-track.simplebar-vertical {
  background: #BDBDBD;
  border-radius: 4px;
  width: 7px;
}
.simplebar-track .simplebar-scrollbar.simplebar-visible::before{
  opacity:1;
}
.simplebar-scrollbar {
  width: 7px;
  background: #575757;
  border-radius: 4px;
  border: none;
}

/*募集コース　course　*/
.roles .sec-inner {  }
.roles .sec-inner .role { margin-bottom: 64px }
.roles .sec-inner .role .pic { float: right; width: 48% }
.roles .sec-inner .role .inner-block { float: left; width: 48% }
.roles .sec-inner .role .inner-block .exsample { margin-top: 14px; padding: 24px; border: solid 1px #BDBDBD }
.roles .sec-inner .role .inner-block .exsample p { font-size: 14px }
.roles .sec-inner .role .inner-block p.notes { padding-left: 14px; text-indent: -14px; margin-top: 24px }
.roles .sec-inner .role-options { padding: 64px; background: #D5D5D5; text-align: center }
.roles .sec-inner .role-options p.lead { font-size: 24px; line-height: 1.5em; font-weight: 500; margin-bottom: 1em }
.roles .sec-inner .role-options .links .option-link { display: inline-block; margin: 0 24px }
.roles .sec-inner .role-options .links .option-link p { line-height: 1.5em; margin-bottom: 1em }
.roles .sec-inner .role-list { margin: 0; }
.roles .sec-inner .role-list ul { margin: 0 -24px }
.roles .sec-inner .role-list ul li { width: calc(33.33% - 48px); background: #d5d5d5; margin: 24px }
.roles .sec-inner .role-list ul li .detail-block { padding: 30px; background: #d5d5d5; }
.roles .sec-inner .role-list ul.clm-2 li { width: calc(50% - 48px); }
.roles .sec-inner .role-list ul li .keyword { border: 1px solid #b1b1b1; padding: 24px; margin-top: 14px }
.roles .sec-inner .role-list ul li .keyword p { font-size: 14px !important }
.roles .sec-inner .role-list ul li .detail ul { margin: 0 0 0 16px }
.roles .sec-inner .role-list ul li .detail ul li { font-weight: 500; line-height: 2.0em; text-indent: -16px; width: 100% !important; background: none !important; padding: 0 !important; margin: 0 !important }
.btn-common { display: inline-block }
.btn-common a { position: relative; display: block; font-size: 16px; font-weight: 700; line-height: 3.4em; color: #fff; min-width: 250px; padding: 0 40px; background: #222; border-radius: 1.75em; transition: all 0.2s }
.btn-common a:hover { opacity: 0.7; text-decoration: none }
.btn-common a::after { content: ""; position: absolute; display: block; right: 12px; top: calc(50% - 9px); width: 18px; height: 18px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_s.png") no-repeat bottom; background-size: contain; }
.accordion-sp .read-more { display: none }

@media screen and (max-width: 1000px) {
.roles .sec-inner .role-options .links .option-link { display: block; margin: 16px 0 }
}

.work-detail { background: #EFEFEF }
.work-detail .sec-inner {  }
.work-detail .sec-inner ul { margin: 0 -24px }
.work-detail .sec-inner ul li { width: 33.33% }
.work-detail .sec-inner ul li .detail-block { padding: 0 24px }

.career-path { }
.career-path .sec-inner { }
.career-path .graph { }
.career-path .graph ul { margin: 0 -24px }
.career-path .graph li { float: left; width: calc(50% - 48px); margin: 48px 24px 0 }
.career-path .sec-inner p.ex { width: 70%; margin: 70px 15% 0 }
.career-path .sec-inner .inner-block { margin-bottom: 50px }
.career-path .sec-inner .inner-block:last-child { margin-bottom: 0 }
.bg-d0 { background: #D0D0D0 }
.bg-d9 { background: #D9D9D9 }

.recruitment-info .sec-inner { padding: 150px 0 }
.recruitment-info .sec-inner table th { width: 10%; font-size: 24px; font-weight: 700; line-height: 1.5em; padding: 24px 24px 24px 0; text-align: left; white-space: nowrap; border-bottom: solid 1px #BDBDBD }
.recruitment-info .sec-inner table th span { font-size: 16px; display: block }
.recruitment-info .sec-inner table td { padding: 24px 0 24px 24px; border-bottom: solid 1px #BDBDBD }
.recruitment-info .sec-inner dl dt { margin-bottom: 0.5em }
.recruitment-info .sec-inner dl dd { margin-bottom: 2em }
.recruitment-info .sec-inner .closed { display: none; transition: all 0.4s }
.recruitment-info .table-wrapper { position: relative; height: 560px; overflow: hidden; transition: all 0.8s; }
.recruitment-info .table-wrapper.active { height: auto; }
.recruitment-info .table-wrapper .table-footer { position: absolute; left: 0; bottom: 0; width: 100%; padding-top: 98px; text-align: center; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/gra_grey.png") repeat-x; background-size: contain }
.btn-more { display: inline-block; margin: 0 auto }
.btn-more a { position: relative; display: block; width: 295px; font-size: 14px; font-weight: 700; line-height: 4em; text-align: center; border: solid 1px #222; border-radius: 2em; transition: all 0.2s }
.btn-more a:hover { opacity: 0.7; text-decoration: none }
.btn-more a::after { content: ""; position: absolute; display: block; right: 12px; top: calc(50% - 9px); width: 18px; height: 18px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_plus.png") no-repeat bottom; background-size: contain; }
.btn-more.active a::after { content: ""; position: absolute; display: block; right: 12px; top: calc(50% - 9px); width: 18px; height: 18px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_minus.png") no-repeat bottom; background-size: contain; }
.recruitment-info .sec-inner .btn-more { margin-top: 64px }

.selection-flow { background: #D0D0D0 }
.selection-flow .sec-inner { padding: 150px 0 }
.selection-flow .sec-inner .flow-chart { margin: 0 -14px 24px }
.selection-flow .sec-inner .flow-chart li { width: 16.66% }
.selection-flow .sec-inner .flow-chart li .flow-box { position: relative; background: #fff; margin: 14px; padding: 16px 16px 42px; height: calc(100% - 74px); text-align: center }
.selection-flow .sec-inner .flow-chart li .flow-box::after { content: ""; position: absolute; display: block; right: -21px; top: calc(50% - 9px); width: 12px; height: 18px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/polygon.png") no-repeat bottom; background-size: contain; }
.selection-flow .sec-inner .flow-chart li:last-child .flow-box::after { display: none }
.selection-flow .sec-inner .flow-chart li .flow-box .num { font-size: 24px; line-height: 1.5em; font-weight: 700; border-bottom: solid 1px #BDBDBD }
.selection-flow .sec-inner .flow-chart li .flow-box p { font-size: 14px; line-height: 1.5em; font-weight: 700; margin-top: 1em }
.selection-flow .sec-inner .flow-chart li .flow-box .annotation { position: absolute; left: 0; bottom: 12px; font-size: 12px; line-height: 1.5em; width: 100%; text-align: center }
ol.notes { padding-left: 2.5em }
ol.notes li { text-indent: -2.5em; font-size: 12px; line-height: 1.7em }
ul.notes { padding-left: 2.5em }
ul.notes li { text-indent: -2.5em; font-size: 12px; line-height: 1.7em }
.btn-entry { display: block; width: 500px; margin: 0 auto }
.btn-entry a { display: block; width: 500px; height: 100px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/btn_entry_l_ov.png") no-repeat; background-size: contain }
.btn-entry a img { transition: all 0.2s }
.btn-entry a:hover img { opacity: 0 }
.btn-entry a.link-none:hover img { opacity: 1; cursor: default; }
.selection-flow .sec-inner .btn-entry { margin-top: 60px }
.selection-flow .sec-inner .btn-link { margin-top: 40px }

.working-environment { background: #DFDFDF }
.working-environment .sec-inner { padding: 150px 0 }
.working-environment .sec-inner .environment { margin-bottom: 48px }
.working-environment .sec-inner .environment .pic { float: left; width: 48% }
.working-environment .sec-inner .environment .inner-block { float: right; width: 48% }
.working-environment .graph ul { margin: -48px -24px 0 }
.working-environment .graph li { float: left; width: calc(50% - 48px); margin: 48px 24px 0 }
.blank-link { display: inline-block }
.blank-link a { position: relative; display: block; font-size: 16px; font-weight: 500; line-height: 32px; padding-left: 42px; transition: all 0.2s }
/*.blank-link a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 16px); width: 32px; height: 32px; background: url("../img/2026/ico_blank_m.png") no-repeat; background-size: contain }*/
.blank-link a .ico-blank { display: block; position: absolute; left: 0; top: calc(50% - 16px); width: 32px; }
.pdf-link { display: inline-block }
.pdf-link a { position: relative; display: block; font-size: 16px; font-weight: 500; line-height: 32px; padding-left: 42px; transition: all 0.2s }
.pdf-link a .ico-pdf { display: block; position: absolute; left: 0; top: calc(50% - 16px); width: 32px; }
.working-environment .sec-inner .environment .blank-link { display: block; margin-top: 20px }
.tech-links {}
.tech-links ul { margin: 0 -20px }
.tech-links ul li { width: calc(33.33% - 40px); margin: 20px }
.tech-links ul li a { position: relative; display: block; padding: 24px; background: #414141; color: #fff }
.tech-links ul li a:hover { text-decoration: none }
.tech-links ul li a span { font-size: 14px; line-height: 1.5em }
.tech-links ul li a h4 { font-size: 24px; line-height: 1.5em; padding-top: 24px; margin-bottom: 0 }
.tech-links ul li a:hover h4 { text-decoration: underline }
/*.tech-links ul li a::after { content: ""; display: block; position: absolute; right: 24px; bottom: 24px; width: 32px; height: 32px; background: url("../img/2026/ico_blank.png") no-repeat; background-size: contain }*/
.tech-links ul li a .ico-blank { display: block; position: absolute; right: 24px; bottom: 24px; width: 30px; }
.working-environment .sec-inner .environment-block { margin-bottom: 96px }
.working-environment .sec-inner .environment-block .tech-links { margin-top: 24px }
.article-links ul { margin: 0 -20px }
.article-links ul li { width: calc(50% - 48px); margin: 24px }
.article-links ul li a { position: relative; display: block; padding: 30px; font-size: 16px; line-height: 1.5em; background: #fff; border: solid 1px #575757 }
.article-links ul li a.ln-2 { padding: 18px 30px }
/*.article-links ul li a::after { content: ""; display: block; position: absolute; right: 24px; top: calc(50% - 15px); width: 30px; height: 30px; background: url("../img/2026/ico_blank_b.png") no-repeat; background-size: contain }*/
.article-links ul li a .ico-blank { display: block; position: absolute; right: 24px; top: calc(50% - 15px); width: 30px; }

.employees .sec-inner { position: relative; }
.employees .sec-inner .btn-link { position: absolute; right: 0; top: 170px; }
.employees .sec-inner .highlighted-employee { float: left; width: 48% }
.employees .sec-inner .highlighted-employee a { position: relative; display: block; padding-bottom: 32px }
.employees .sec-inner .highlighted-employee a .service-logo { position: absolute; left: 0; bottom: 0; }
.employees .sec-inner .highlighted-employee a::after { content: ""; position: absolute; display: block; right: 0; bottom: 0; width: 48px; height: 48px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow.png") no-repeat bottom; background-size: contain; }
.employees .sec-inner .highlighted-employee h3 { font-size: 24px; font-weight: 500; line-height: 1.5em; margin: 20px 0 }
.employees .sec-inner ul { float: right; width: 48% }
.employees .sec-inner ul li { padding: 0 0 24px; margin: 0 0 24px; border-bottom: solid 1px #BDBDBD }
.employees .sec-inner ul li:last-child { border: none }
.employees .sec-inner ul li a { position: relative; display: block; }
.employees .sec-inner ul li a::after { content: ""; position: absolute; display: block; right: 0; bottom: 0; width: 32px; height: 32px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow.png") no-repeat bottom; background-size: contain; }
.employees .sec-inner ul li a .ico-blank { position: absolute; right: 0; bottom: 0; width: 32px; height: 32px; z-index: 10 }
.employees .sec-inner ul li a .pic { display: block; width: 36%; }
.employees .sec-inner ul li a h3 { position: absolute; left: calc(36% + 18px); top: 0; font-size: 16px; line-height: 1.5em; font-weight: 500; }
.employees .sec-inner ul li a:hover h3 { text-decoration: underline }
.employees .sec-inner ul li a .service-logo { position: absolute; left: calc(36% + 18px); bottom: 0 }
#design .employees .sec-inner { padding-bottom: 150px }
#data_specialist .employees .sec-inner { padding-bottom: 150px }
#finance .employees .sec-inner { padding-bottom: 150px }
@media screen and (max-width: 1080px) {
    #design .employees .sec-inner ul li:first-child a .service-logo img { height: 16px }
}
@media screen and (max-width: 910px) {
    #design .employees .sec-inner ul li:first-child a .service-logo img { height: 13px }
}

.event-internship .sec-inner { padding: 150px 0 }
.event-list .event { margin-bottom: 48px }
.event-list .event .pic { float: left; width: 48%; position: relative }
.event-list .event .pic .status { position: absolute; left: 0; top: 0; font-size: 14px; line-height: 36px; font-weight: 700; padding:  0 1em; background: #fff }
.event-list .event .pic .status.end { color: #fff; background: #000 }
.event-list .event .inner-block { float: right; width: 48%; padding-top: 72px }
.event-list .event .inner-block h3 { line-height: 1.5em; }
.event-list .event .inner-block p {  }

.other-course { background: #2A2A2A; margin-bottom: 40px }
.other-course .sec-inner { padding: 150px 0; }
.other-course .sec-inner .btn-link { position: absolute; right: 0; top: 170px; }
.other-course .sec-inner .btn-link a { color: #fff }
.other-course .sec-inner .btn-link a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 16px); width: 32px; height: 32px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mlw.png") no-repeat; background-size: contain }
.other-course .sec-inner h2 { color: #fff }
.other-course .sec-inner ul { margin: -24px -24px 0 }
.other-course .sec-inner ul li { float: left; width: calc(33.33% - 48px); margin: 24px }
.other-course .sec-inner ul li a { position: relative; display: block; padding: 24px 24px 88px; color: #fff; background: #3F3F3F }
.other-course .sec-inner ul li a::after { content: ""; position: absolute; display: block; right: 24px; top: 24px; width: 32px; height: 32px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat bottom; background-size: contain; }
.other-course .sec-inner ul li a h3 { font-size: 18px; line-height: 1.5em }
.other-course .sec-inner ul li a .exsample { position: absolute; left: 24px; bottom: 24px; width: calc(100% - 48px); }
.other-course .sec-inner ul li a .exsample h4 { font-size: 12px; margin-bottom: 10px }
.other-course .sec-inner ul li a .exsample p { display: block; font-size: 12px; line-height: 1.5em; padding: 1em; border: solid 1px #575757 }
@media screen and (max-width: 1090px) {
    .other-course .sec-inner ul li a .exsample p br { display: none }
    .other-course .sec-inner ul li a h3 { padding-right: 40px }
}
@media screen and (max-width: 880px) {
    .other-course .sec-inner ul li { width: calc(50% - 48px); }
}
.other-course .sec-inner p.notes { padding-left: 14px; text-indent: -14px; color: #fff }

.four-roles ul { margin: 36px -24px }
.four-roles ul li { width: calc(50% - 48px); margin: 24px }
.four-roles ul li .role-box { position: relative; padding: 24px 24px 24px 170px; background: #fff }
.four-roles ul li .role-box h3 { position: absolute; left: 0; top: calc(50% - 30px); width: 145px; line-height: 60px; text-align: center; border-right: solid 1px #bdbdbd }
.four-roles ul li .role-box p strong { font-weight: 700 }
.four-roles p.notes { padding-left: 16px; text-indent: -16px }
.marketing-project .sec-inner .project-box { padding: 48px; background: #EFEFEF }
.marketing-project .sec-inner .project-box .pb-head { position: relative }
.marketing-project .sec-inner .project-box .pb-head h2 { width: calc(100% - 310px) }
.marketing-project .sec-inner .project-box .pb-head h2 p.sample { font-size: 24px; font-weight: 700; color: #575757; margin-bottom: 6px }
.marketing-project .sec-inner .project-box .pb-head h2 p.sample span { display: inline-block; font-size: 18px; line-height: 32px; text-align: center; width: 32px; height: 32px; color: #fff; background: #575757; border-radius: 16px }
.marketing-project .sec-inner .project-box .pb-head .logo { position: absolute; right: 0; top: 52px; width: 286px }
.marketing-project .sec-inner .project-box .pb-body .inner-block { margin-top: 48px }
.marketing-project .sec-inner .project-box .pb-body .shoulder { font-size: 16px; line-height: 1em; font-weight: 700; color: #575757; margin-bottom: 18px }
.marketing-project .sec-inner .project-box .pb-body .shoulder span { position: relative; padding-right: 18px; }
.marketing-project .sec-inner .project-box .pb-body .shoulder span::after { content: ""; position: absolute; display: block; right: 0; top: 5px; width: 1px; height: 16px; background: #BDBDBD }
.marketing-project .sec-inner .project-box .pb-body h3 { margin-bottom: 20px !important }
.marketing-project .sec-inner .project-box .pb-body p .ico-blank { display: inline-block; margin-bottom: 5px }
#marketing-project-03 .sec-inner { padding: 150px 0; }
#assignment { background: #D0D0D0 }
.assignment .sec-inner { padding: 150px 0; }
.assignment .sec-inner .graph { margin-top: 64px }
.assignment .sec-inner .btn-entry { margin-top: 60px }
.assignment .sec-inner .btn-link { margin-top: 40px }
.roundtable-talk-idx {  }
.roundtable-talk-idx ul { margin: -24px }
.roundtable-talk-idx ul li { width: calc(50% - 48px); margin: 24px }
.roundtable-talk-idx ul li a { display: block; position: relative; padding: 24px 24px 56px 208px; min-height: 128px; background: #EFEFEF }
.roundtable-talk-idx ul li a:hover { text-decoration: none }
.roundtable-talk-idx ul li a::after { content: ""; position: absolute; display: block; right: 24px; bottom: 24px; width: 32px; height: 32px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat bottom; background-size: contain; z-index: 0 }
.roundtable-talk-idx ul li a .pic { position: absolute; left: 24px; top: 24px; width: 160px; }
.roundtable-talk-idx ul li a p.shoulder { display: inline-block; font-size: 12px; line-height: 1.8em; font-weight: 700; color: #fff; background: #575757; padding: 4px 10px; margin-bottom: 16px }
.roundtable-talk-idx ul li a h3 { margin-bottom: 0 }
.roundtable-talk-idx ul li a .ico-blank { position: absolute; right: 24px; bottom: 24px; z-index: 10 }
.roundtable-talk .sec-inner .roundtable-talk-idx ul li a h3 { font-size: 16px; font-weight: 500; margin: 0 }
.roundtable-talk-idx ul li a:hover h3 { text-decoration: underline }
#roundtable-talk .sec-inner { padding: 150px 0; }
#pdm-project-02 .sec-inner { padding: 150px 0; }


.mt-0 { margin-top: 0 !important }
.mt-1 { margin-top: 1em !important }
.mt-2 { margin-top: 2em !important }
.mt-3 { margin-top: 3em !important }
.mt-4 { margin-top: 4em !important }
.mb-0 { margin-bottom: 0 !important }
.mb-1 { margin-bottom: 1em !important }
.mb-2 { margin-bottom: 2em !important }
.mb-3 { margin-bottom: 3em !important }
.mb-4 { margin-bottom: 4em !important }


@media screen and (max-width: 1100px) {
    .btn-entry-2026 { position: absolute; right: 66px; top: 17px; width: 165px; height: 50px }
    .btn-menu { position: absolute; right: 0; top: 10px; display: block; width: 66px; height: 60px }
    .btn-menu a { display: block; position: relative; width: 100%; height: 100%; }
    .btn-menu a span { position: absolute; left: 22px; top: 19px; display: block; width: 22px; height: 2px; background: #BDBDBD; transition: all 0.2s }
    .btn-menu a span:nth-child(2) { top: 29px }
    .btn-menu a span:nth-child(3) { left: inherit; right: 22px; top: 39px }
    .btn-menu a.active span:nth-child(1) { top: 29px; transform: rotate(45deg) }
    .btn-menu a.active span:nth-child(2) { width: 0 }
    .btn-menu a.active span:nth-child(3) { top: 29px; transform: rotate(-45deg) }
    .global-nav { position: absolute; right: inherit; left: 0; top: 80px; width: 100%; height: calc(100vh - 60px); background: #222; overflow-y: scroll; display: none }
    .global-nav.active { top: 60px; }
    .global-nav ul { padding: 18px 22px; }
    .global-nav li { position: relative; display: block; }
    .global-nav li a, .global-nav li button { display: block; width: auto; text-align: left; font-size: 16px; font-weight: 700; line-height: 1em; padding: 1.5em 0; border-bottom: solid 1px #575757 }
    .global-nav li button { width: 100%; }
    .global-nav li a:hover { text-decoration: none } 
    .global-nav li a.parent::after { content:""; display: block; position: absolute; left: inherit; right: 0; bottom: inherit; top: 28px; width: 12px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_sss.png") no-repeat; background-size: contain }
    .global-nav li a.parent:hover::after { width: 12px; }
    .global-nav li.js-toggle .open-sub::after { content:""; display: block; position: absolute; left: inherit; right: 0; bottom: inherit; top: 28px; width: 12px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_down.png") no-repeat; background-size: contain }
    .global-nav li a:hover::after { width: 12px; }
    .global-nav li ol { position: relative; left: inherit; top: inherit; width: auto; padding: 0; background: none; display: none }
    .global-nav li ol li { display: block }
    .global-nav li ol li a { display: block; font-size: 14px; font-weight: 400; line-height: 1.3em; padding: 12px 40px 12px 0 }
    .global-nav li ol li a::after { content: ""; display: block; position: absolute; right: 0; top: calc(50% - 6px); width: 12px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_sss.png") no-repeat; background-size: contain }
}


@media screen and (max-width: 768px) {
    
    body { font-size: 14px; }
    p, th, td, dt, dd { line-height: 1.66; }
    h1, h2, h3, h4, h5 { letter-spacing: 0; }
    
    .pc-none { display: block }
    .sp-none { display: none }
    
    #header { width: 100%; height: 60px; }
    #header h1 { width: 82px; margin: 9px 21px; text-align: center }
    #header h1 p { font-size: 8px; margin-top: 6px }
    #header .site-logo { width: 82px; margin: 9px 21px; text-align: center }
    .global-nav { position: absolute; right: inherit; left: 0; top: 60px; width: 100%; height: calc(100vh - 60px); background: #222; overflow-y: scroll; display: none }
    .global-nav.active { top: 60px; }
    .global-nav ul { padding: 18px 22px; }
    .global-nav li { position: relative; display: block; }
    .global-nav li a, .global-nav li button { display: block; width: auto; text-align: left; font-size: 16px; font-weight: 700; line-height: 1em; padding: 1.5em 0; border-bottom: solid 1px #575757 }
    .global-nav li button { width: 100%; }
    .global-nav li a:hover { text-decoration: none } 
    .global-nav li a.parent::after { content:""; display: block; position: absolute; left: inherit; right: 0; bottom: inherit; top: 28px; width: 12px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_sss.png") no-repeat; background-size: contain }
    .global-nav li a.parent:hover::after { width: 12px; }
    .global-nav li.js-toggle .open-sub::after { content:""; display: block; position: absolute; left: inherit; right: 0; bottom: inherit; top: 28px; width: 12px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_down.png") no-repeat; background-size: contain }
    .global-nav li.js-toggle .open-sub.active::after { transform: scale(1, -1) }
    .global-nav li a:hover::after { width: 12px; }
    .global-nav li ol { position: relative; left: inherit; top: inherit; width: auto; padding: 0; background: none; display: none }
    .global-nav li ol li { display: block }
    .global-nav li ol li a { display: block; font-size: 14px; font-weight: 400; line-height: 1.3em; padding: 12px 40px 12px 0 }
    .global-nav li ol li a::after { content: ""; display: block; position: absolute; right: 0; top: calc(50% - 6px); width: 12px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_sss.png") no-repeat; background-size: contain }
    .btn-entry-2026 { position: absolute; right: 66px; top: 5px; width: 165px; height: 50px }
    .btn-entry-2026 a { background: none }
    .btn-entry-2026 a:hover img { opacity: 1 }
    .btn-menu { position: absolute; right: 0; top: 0; display: block; width: 66px; height: 60px }
    .btn-menu a { display: block; position: relative; width: 100%; height: 100%; }
    .btn-menu a span { position: absolute; left: 22px; top: 19px; display: block; width: 22px; height: 2px; background: #BDBDBD; transition: all 0.2s }
    .btn-menu a span:nth-child(2) { top: 29px }
    .btn-menu a span:nth-child(3) { left: inherit; right: 22px; top: 39px }
    .btn-menu a.active span:nth-child(1) { top: 29px; transform: rotate(45deg) }
    .btn-menu a.active span:nth-child(2) { width: 0 }
    .btn-menu a.active span:nth-child(3) { top: 29px; transform: rotate(-45deg) }
    
    .contents { margin-top: 60px }
    .btn-course { position: fixed; right: 16px; bottom: 16px; display: inline-block; width: 124px; height: 33px; z-index: 99 }
    .btn-course a { display: block; padding: 0 20px; font-size: 13px; font-weight: 700; line-height: 33px; background: #fff; border-radius: 17px; box-shadow: 0 4px 4px 0 rgba(0,0,0,0.25); transition: all 0.2s }
    .btn-course a:hover { opacity: 0.7 }
    .btn-course a::after { content: ""; display: block; position: absolute; right: 8px; top: calc(50% - 8px); width: 16px; height: 16px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_down_b.png") no-repeat; background-size: contain }

    
    main {}
    .top-wrapper { position: relative; overflow: hidden; transition: all 0.4s }
    .top-wrapper.closed { height: 276vw; }
    .top-wrapper .read-more { position: absolute; left: 0; bottom: 0; width: 100%; height: 160px; z-index: 10; cursor: pointer; display: block; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000000 76.5%); }
    .top-wrapper .read-more a { display: block; padding: 96px 0 50px; text-align: center; outline-color: #1767B8 }
    .top-wrapper .read-more a span { position: relative; font-size: 14px; line-height: 17px; padding-right: 2em; color: #fff; }
    .top-wrapper .read-more a span::after { content: ""; display: block; position: absolute; right: 0; bottom: 0; width: 17px; height: 17px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_plus_b.png") no-repeat; background-size: contain; margin-left: 10px }
    #top-intro { width: 100%; height: 227vw; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/bg_sp.jpg"); background-size: cover }
    #top-intro .top-intro-inner { width: auto; padding: 13.33vw 30px 0; margin: 0 auto }
    #top-intro .top-intro-inner p { display: block; float: none; font-size: 3.733vw; line-height: 2.33em }
    #top-intro .top-intro-inner p:last-child { float: none; margin-top: 2em }
    #top-intro .top-intro-inner p span { font-size: 22px; }
    
    .sec { padding: 0 16px; }
    .sec .sec-inner { position: relative; padding: 70px 0 0; max-width: inherit; }
    .sec .sec-inner h2 { font-size: 22px; line-height: 1.8em; margin-bottom: 30px }
    .sec .sec-inner h2 span { font-size: 18px; display: block }
    .sec .sec-inner h3 { font-size: 18px; line-height: 1.8em; margin-bottom: 24px }
    .sec .sec-inner h4 { font-size: 16px; line-height: 1.5em; }
    .sec .sec-inner p { font-size: 14px }
    
    #top-news .sec-inner { padding: 70px 0 0; text-align: center; }
    #top-news .sec-inner h2 { float: none; text-align: left }
    #top-news .sec-inner .top-news-idx { float: none; width: 100%; text-align: left; }
    #top-news .sec-inner .top-news-idx ul { border-top: none; }
    #top-news .sec-inner .top-news-idx ul li .news-box { line-height: 1.5em; padding: 1.5em 40px 1.5em 0 }
    #top-news .sec-inner .top-news-idx ul li .news-box .date { font-size: 12px; position: relative; left: inherit; top: inherit; margin-top: 0; display: block }
    #top-news .sec-inner .top-news-idx ul li a.news-box::after { content: ""; display: block; position: absolute; right: 10px; top: calc(50% - 12px); width: 24px; height: 24px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_s.png") no-repeat; background-size: contain }
    .btn-link { display: inline-block; margin: 0 auto }
    .btn-link a { position: relative; display: block; font-size: 14px; font-weight: 500; line-height: 1.5em; padding-left: 40px; text-align: left }
    .btn-link a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 15px); width: 30px; height: 30px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_m.png") no-repeat; background-size: contain }
    #top-news .btn-link { margin-top: 40px; float: none }
    
    #top-about .sec-inner { padding: 70px 0 }
    #top-about .sec-inner .inner-block p { width: 100%; font-size: 14px; font-weight: 700; padding-bottom: 20px }
    #top-about .sec-inner .inner-block .service-logos { position: relative; right: inherit; top: inherit; width: calc(100% - 64px); padding: 24px 32px; background: #E8E8E8; }
    .btn-link-l { display: inline-block }
    .btn-link-l a { position: relative; display: block; font-size: 18px; font-weight: 700; line-height: 30px; padding-left: 40px; }
    .btn-link-l a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 15px); width: 30px; height: 30px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow.png") no-repeat; background-size: contain }
    #top-about .btn-link-l { display: block; margin-top: 20px }
    
    #top-culture .sec-inner { padding: 70px 0 }
    #top-culture .sec-inner h2 { float: none; width: 100% }
    #top-culture .sec-inner .inner-block { float: none; width: 100%; margin: 0 0 30px }
    #top-culture .sec-inner .inner-block:last-child { margin: 0 }
    #top-culture .sec-inner .inner-block .btn-link-l { margin: 0 0 10px }
    #top-culture .sec-inner .inner-block:last-child .btn-link-l { margin: 0 0 10px }
    
    #top-career .sec-inner {  }
    #top-career .sec-inner h2 { float: none; }
    #top-career .sec-inner .inner-block { float: none; width: 100%; margin: 0 0 30px }
    #top-career .sec-inner .inner-block:last-child { margin: 0 }
    #top-career .sec-inner .inner-block .btn-link-l { margin: 0 0 10px }
    #top-career .sec-inner .inner-block .btn-link-l a { font-weight: 700 }
    #top-career .sec-inner .inner-block:last-child .btn-link-l { margin: 0 0 10px }
    
    #top-work-style .sec-inner {  }
    #top-work-style .sec-inner .inner-block { position: relative; float: none; width: 100% }
    #top-work-style .sec-inner .inner-block p { font-size: 14px; font-weight: 500; margin-top: 20px }
    #top-work-style .sec-inner .inner-block .link { position: relative; right: inherit; bottom: inherit; text-align: right }
    #top-work-style .sec-inner .inner-block .link img { width: 30px }
    #top-work-style .sec-inner .pic-sp { display: block }
    
    #top-people { padding: 0 }
    #top-people .sec-inner { padding: 70px 0; text-align: center }
    #top-people .sec-inner h2 { text-align: left; margin: 0 16px 1em; }
    #top-people .sec-inner .btn-link { position: relative; right: inherit; top: inherit; display: inline-block; margin: 10px auto 0 }
    #top-people .sec-inner .people-slider { text-align: left; margin: 0; padding-bottom: 95px; overflow: hidden; }
    #top-people .sec-inner .people-slider ul { /*width: 240vw; margin: 0 calc(-70vw - 8px)*/ }
    #top-people .sec-inner .people-slider ul li { /*width: calc(75vw - 20px); margin: 0 10px*/ }
    #top-people .sec-inner .people-slider ul li a { display: block; position: relative; margin: 0 8px 10px }
    #top-people .sec-inner .people-slider ul li a .bg-colors { position: absolute; display: block; width: 100%; height: 100%; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/bg_colors.jpg"); background-size: cover; z-index: 0; transition: all 0.2s }
    #top-people .sec-inner .people-slider ul li a:hover .bg-colors { left: 0; top: 0; }
    .people { position: relative; z-index: 1 }
    .people .pic { filter: none; }
    .people .name { position: absolute; left: 0; bottom: 0; padding: 0 24px 24px; font-size: 15px; font-weight: 700; color: #B1B1B1 }
    .people .name span { display: block; font-size: 12px; font-weight: 500; padding-bottom: 10px }
    .people h3 { font-size: 18px; line-height: 1.5em; padding: 24px 24px 72px; color: #fff }
    .people::after { content: ""; display: block; position: absolute; right: 24px; bottom: 24px; width: 30px; height: 30px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat; background-size: contain }
    .people.blk::after { display: none }
    .people .ico-blank { position: absolute; right: 24px; bottom: 24px; width: 30px}
    .splide-prev { bottom: 0; margin-left: -62px }
    .splide-next { bottom: 0; margin-right: -62px }
    
    #top-course .sec-inner { padding: 70px 10px 70px 0; text-align: center }
    #top-course .sec-inner h2 { text-align: left }
    #top-course .sec-inner .btn-link { position: relative; right: inherit; top: inherit; display: inline-block; margin: 30px auto 0 }
    #top-course .sec-inner .course-idx ul { margin: 0; text-align: left }
    #top-course .sec-inner .course-idx ul li { width: 100%; margin: 0 0 30px }
    #top-course .sec-inner .course-idx ul li a { display: block; position: relative }
    #top-course .sec-inner .course-idx ul li a .bg-colors { position: absolute; display: block; width: 100%; height: 100%; left: 8px; top: 8px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/bg_colors.jpg"); background-size: cover; z-index: 0; transition: all 0.2s }
    #top-course .sec-inner .course-idx ul li a:hover .bg-colors { left: 8px; top: 8px; }
    #top-course .sec-inner .course-idx ul li .course { position: relative; background: #000; padding-bottom: 108px; z-index: 1 }
    #top-course .sec-inner .course-idx ul li .course .pic { filter: grayscale(0); }
    #top-course .sec-inner .course-idx ul li .course .inner-block { padding: 24px; color: #fff }
    #top-course .sec-inner .course-idx ul li .course .inner-block h3 { position: relative; font-size: 18px; line-height: 32px; }
    #top-course .sec-inner .course-idx ul li .course .inner-block h3 span { border-bottom: solid 2px #fff; }
    #top-course .sec-inner .course-idx ul li .course .inner-block h3::after { content: ""; display: block; position: absolute; right: 0; top: 0; width: 30px; height: 30px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat; background-size: contain }
    #top-course .sec-inner .course-idx ul li .course .inner-block p { font-size: 14px; font-weight: 500; margin-top: 12px; }
    #top-course .sec-inner .course-idx ul li .course .ex-ocu { position: absolute; width: calc(100% - 48px); left: 24px; bottom: 24px; font-size: 12px; font-weight: 700; color: #B1B1B1 }
    #top-course .sec-inner .course-idx ul li .course .ex-ocu span { display: block; font-size: 12px; font-weight: 500; padding-bottom: 10px }
    #top-course .sec-inner .course-idx ul li .course .ex-ocu p { display: block; padding: 10px; color: #222; background: #FEFEFE }
    #top-course .sec-inner p.notes { margin-top: 0; text-align: left }
    
    #movie-archive { padding: 0 }
    #movie-archive .sec-inner { padding: 70px 0; max-width: inherit; }
    #movie-archive .sec-inner h2 { max-width: inherit; margin: 0 16px 1em }
    #movie-archive .sec-inner .movie-idx { text-align: left; margin: 0; padding-bottom: 95px }
    #movie-archive .sec-inner .movie-idx ul { /*width: 240vw; margin: 0 calc(-70vw - 8px)*/ }
    #movie-archive .sec-inner .movie-idx ul li { /*width: 75vw; margin: 10px*/ }
    #movie-archive .sec-inner .movie-idx ul li a { position: relative; display: block; background: #000; margin: 10px }
    #movie-archive .sec-inner .movie-idx ul li a .shoulder { font-size: 12px; }
    #movie-archive .sec-inner .movie-idx ul li a .inner-block { padding: 24px }
    #movie-archive .sec-inner .movie-idx ul li a .inner-block h3 { font-size: 14px; }
    #movie-archive .sec-inner .movie-idx ul li a .ico-blank { position: absolute; right: 20px; bottom: 20px; width: 30px; }
    #movie-archive .sec-inner .btn-play { position: absolute; bottom: 24px; left: 50%; margin-left: -24px; }
    #movie-archive .splide-prev { margin-left: -84px; }
    #movie-archive .splide-next { margin-right: -84px; }
    
    .go-to-pagetop { max-width: inherit; margin: 0 16px 24px; text-align: right }
    .go-to-pagetop a { position: relative; display: inline-block; font-size: 12px; line-height: 16px; color: #575757; padding-right: 24px }
    .go-to-pagetop a::after { content: ""; display: block; position: absolute; right: 0; top: 0; width: 16px; height: 16px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_ss.png") no-repeat; background-size: contain }
    
    #footer { padding: 40px 16px; background: #fff }
    #footer .footer-inner { max-width: inherit; margin: 0 auto }
    #footer .f-breadcrumb { padding-bottom: 1.5em }
    #footer .f-breadcrumb li { font-size: 12px; line-height: 1em; }
    #footer .f-nav { border: solid #DFE2E5; border-width: 2px 0 1px; padding-bottom: 20px }
    #footer .f-nav .inner-block { float: none; width: 100%; margin-right: 0; padding: 0 }
    #footer .f-nav .inner-block:last-child { margin-right: 0 }
    #footer .f-nav .inner-block > ul { padding: 0 }
    #footer .f-nav ul li ul { padding: 0 }
    #footer .f-nav ul li ul li { padding: 0 }
    #footer .f-nav ul li a { display: block; font-size: 12px; font-weight: 400; line-height: 1.5em; color: #51656F; padding: 1em 0; border-bottom: solid 1px #e9e9e9 }
    #footer .f-nav ul li a span { padding: 0 }
    #footer .f-nav ul li span, #footer .f-nav ul li button { display: block; font-size: 16px; font-weight: 500; line-height: 1.5em; color: #51656F; padding: 1em 0 }
    #footer .f-nav ul li button.open-sub { position: relative; width: 100%; text-align: left; border-bottom: solid 1px #e9e9e9; cursor: pointer }
    #footer .f-nav ul li button.open-sub::after { content:""; display: block; position: absolute; left: inherit; right: 6px; bottom: inherit; top: calc(50% - 6px); width: 12px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_down_g.png") no-repeat; background-size: contain }
    #footer .f-nav ul li button.open-sub.active::after { transform: scale(1, -1) }
    #footer .f-nav ul li a span { padding: 0 }
    #footer .f-nav ul li ul.sub { display: none }
    #footer .f-nav ul li ul:not(.links):not(.sns) li a { padding-left: 0 }
    #footer .f-nav ul li ul:not(.links):not(.sns) li a::before { content: "";  display: none }
    #footer .f-nav ul li ul.links li a::after { content: ""; display: inline-block; width: 13px; height: 15px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_blank_s.png") no-repeat; background-size: contain; margin: 0 0 0 6px }
    #footer .f-nav ul.sns>li { display: inline-block }
    #footer .f-nav ul.sns>li a { line-height: 25px; padding: 0 2px; border: none }
    #footer .f-nav .inner-block:last-child ul li span.open-sub { border: none }
    #footer .f-nav .inner-block:last-child ul li span.open-sub::after { display: none; }
    #footer .f-nav .mail-magazine { font-size: 12px; font-weight: 400; line-height: 2en; color: #51656F; margin-top: 20px }
    #footer .f-nav .mail-magazine a { color: #51656F; }
    #footer .company { padding: 20px 0 0 }
    #footer .company .copyright { float: none; font-size: 10px; color: #51656F }
    #footer .company .copyright img { display: block; width: 260px }
    #footer .company .copyright span { display: block; margin: 0; padding-top: 10px }
    #footer .company ul { float: none; font-size: 12px; margin-top: 10px }
    #footer .company ul li { display: inline-block }
    #footer .company ul li a { display: block; padding: 0 1em 0 0; line-height: 2em; color: #51656F }
    #footer .company ul li a::after { content: ""; display: inline-block; width: 13px; height: 15px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_blank_s.png") no-repeat bottom; background-size: contain; margin: 0 0 0 2px }
    
    
    .big-title { position: relative; max-width: inherit; margin: -100px 16px 0; }
    .big-title h1 { font-size: 24px; padding: 12px 14px }
    .big-title h1 span { font-size: 14px; }
    .big-title .inner-block { width: auto; padding: 24px 18px; margin-top: 10px; }
    .big-title .inner-block h2 { font-size: 18px; margin-bottom: 1em; line-height: }
    p.notes { font-size: 12px !important; margin-top: 1em }
    
    .anchor-nav { position: fixed; right: -204px; top: calc(64vw - 70px); }
    .anchor-nav .inner-block { width: 120px; padding: 18px 24px 18px 60px; background: #000; border-radius: 8px 0 0 8px; box-shadow: 1px 2px 3px 0 rgba(0,0,0,0.25); z-index: 1; }
    .anchor-nav ul { position: relative; max-height: 224px; overflow-y: auto; padding-right: 10px }
    .anchor-nav .inner-block::before { content: ""; display: block; position: absolute; left: -2px; top: 30px; width: 36px; height: 51px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/anchor_idx.png") no-repeat bottom; background-size: contain; z-index: 2 }
    .anchor-nav ul li { margin: 12px 0 }
    .anchor-nav ul li a { position: relative; display: block; font-size: 12px; line-height: 1.5em; color: #fff }
    .anchor-nav ul li a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 2.5px); width: 3px; height: 3px; border: solid 1px #BDBDBD; border-radius: 3px; }
    .anchor-nav ul li.current a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 2.5px); width: 3px; height: 3px; border: solid 1px #FFF; border-radius: 3px; background: #FFF }
    .anchor-nav .anchor-tab { position: absolute; left: -34px; top: 30px; }
    .anchor-nav .anchor-tab img { width: 36px }
    .anchor-nav.active .anchor-tab { left: -2px; }
    
    /*募集コース　course　*/
    .roles .sec-inner {  }
    .roles .sec-inner .role { margin-bottom: 48px }
    .roles .sec-inner .role .pic { float: none; width: 100% }
    .roles .sec-inner .role .inner-block { float: none; width: 100%; margin-top: 18px }
    .roles .sec-inner .role .inner-block .exsample { margin-top: 14px; padding: 20px; }
    .roles .sec-inner .role .inner-block .exsample p { font-size: 12px }
    .roles .sec-inner .role-options { padding: 30px; }
    .roles .sec-inner .role-options p.lead { font-size: 16px; line-height: 1.5em; font-weight: 500; margin-bottom: 1em }
    .roles .sec-inner .role-options .links .option-link { display: block; margin: 16px 0 0 }
    .roles .sec-inner .role-options .links .option-link p { line-height: 1.5em; margin-bottom: 1em }
    .roles .sec-inner .role-list ul { margin: -12px 0 0 }
    .roles .sec-inner .role-list ul li { width: 100%; margin: 12px 0 }
    .roles .sec-inner .role-list ul li .detail-block { padding: 24px; }
    .roles .sec-inner .role-list ul li .detail-block.accordion-sp { padding: 24px 24px 55px; }
    .roles .sec-inner .role-list ul.clm-2 li { width: 100%; }
	.roles .sec-inner .role-list ul li .keyword { padding: 20px }
	.roles .sec-inner .role-list ul li .keyword p { font-size: 12px !important }
	.roles .sec-inner .role-list ul li .detail ul { margin: 0 0 0 14px }
	.roles .sec-inner .role-list ul li .detail ul li { line-height: 1.66; text-indent: -14px }
    .btn-common { display: block }
    .btn-common a { position: relative; display: block; font-size: 14px; font-weight: 700; line-height: 1.2em; color: #fff; padding: 1.2em 0; background: #000; border-radius: 3.2em }
    .btn-common a::after { content: ""; position: absolute; display: block; right: 12px; top: calc(50% - 9px); width: 18px; height: 18px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_s.png") no-repeat bottom; background-size: contain; }
    .accordion-sp { position: relative; overflow: hidden; transition: all 0.4s }
    .accordion-sp .read-more { display: block; position: absolute; left: 24px; bottom: -10px; width: calc(100% - 48px); height: 125px; z-index: 1 }
    .accordion-sp .read-more span { position: relative; display: inline-block; font-size: 12px; font-weight: 500; line-height: 18px; padding-right: 25px; margin-top: 54px }
    .accordion-sp .read-more span::after { content: ""; display: inline-block; position: absolute; right: 0; top: 0; width: 18px; height: 18px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_minus.png") no-repeat bottom; background-size: contain; }
    /*.accordion-sp::after { content:""; display: block; position: absolute; left: 24px; bottom: 0; width: calc(100% - 48px); height: calc((100% - 48px) * 0.425); background: url("../img/2026/more_close.png") no-repeat bottom; background-size: 100%; z-index: 1 }*/
    .accordion-sp.closed { height: 156px; }
    .accordion-sp.closed .read-more { bottom: 0; background: linear-gradient(180deg, rgba(213, 213, 213, 0) 0, rgba(213, 213, 213, 0.4) 16.66%, rgba(213, 213, 213, 0.8) 33.33%, #D5D5D5 50%); }
    .accordion-sp.closed .read-more span::after { content: ""; display: inline-block; position: absolute; right: 0; top: 0; width: 18px; height: 18px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_plus.png") no-repeat bottom; background-size: contain; }
    /*.accordion-sp.closed::after { content:""; display: block; position: absolute; left: 24px; bottom: 0; width: calc(100% - 48px); height: calc((100% - 48px) * 0.425); background: url("../img/2026/more.png") no-repeat bottom; background-size: 100%; z-index: 1 }*/
    
    .work-detail .sec-inner { padding: 70px 0 }
    .work-detail .sec-inner ul { margin: 0 }
    .work-detail .sec-inner ul li { width: 100%; margin-bottom: 30px }
    .work-detail .sec-inner ul li:last-child { margin-bottom: 0 }
    .work-detail .sec-inner ul li .detail-block { padding: 0 }
    
    .career-path .sec-inner {  }
    .career-path .graph {  }
    .career-path .sec-inner p.ex { width: 100%; margin: 30px 0 0 }
    
    .recruitment-info .sec-inner { padding: 70px 0 0 }
    .recruitment-info .sec-inner table {  }
    .recruitment-info .sec-inner table th { display: block; width: auto; font-size: 18px; padding: 0 0 12px; text-align: left; white-space: normal; border-bottom: none }
    .recruitment-info .sec-inner table th span { font-size: 14px; display: inline-block }
    .recruitment-info .sec-inner table td { display: block; padding: 0 0 24px; margin-bottom: 24px }
    .recruitment-info .table-wrapper { position: relative; height: 680px; }
    .btn-more { display: inline-block; margin: 0 auto !important }
    .btn-more a { position: relative; display: block; width: 290px; font-size: 14px; font-weight: 700; line-height: 4em; text-align: center; border: solid 1px #222; border-radius: 2em }
    .btn-more a::after { content: ""; position: absolute; display: block; right: 12px; top: calc(50% - 9px); width: 18px; height: 18px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_plus.png") no-repeat bottom; background-size: contain; }
    .btn-more.active a::after { content: ""; position: absolute; display: block; right: 12px; top: calc(50% - 9px); width: 18px; height: 18px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/ico_minus.png") no-repeat bottom; background-size: contain; }
    .recruitment-info .sec-inner .btn-more { margin-top: 64px }
    
    .selection-flow { background: #DFDFDF }
    .selection-flow .sec-inner { padding: 70px 0 0 }
    .selection-flow .sec-inner .flow-chart { margin: 0 0 24px }
    .selection-flow .sec-inner .flow-chart li { width: 100%; margin-bottom: 24px }
    .selection-flow .sec-inner .flow-chart li .flow-box { position: relative; margin: 0; padding: 0; height: 50px; }
    .selection-flow .sec-inner .flow-chart li:nth-child(2) .flow-box { height: auto; padding-bottom: 12px }
    .selection-flow .sec-inner .flow-chart li .flow-box::after { content: ""; position: absolute; display: block; right: calc(50% - 5px); top: calc(100% + 5px); width: 8px; height: 12px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/polygon.png") no-repeat bottom; background-size: contain; transform: rotate(90deg) }
    .selection-flow .sec-inner .flow-chart li .flow-box .num { position: absolute; left: 4px; top: 12px; width: 32px; font-size: 18px; line-height: 1.5em; font-weight: 700; border-bottom: none; border-right: solid 1px #BDBDBD }
    .selection-flow .sec-inner .flow-chart li .flow-box p { font-size: 14px; line-height: 50px; margin-top: 0 }
    .selection-flow .sec-inner .flow-chart li .flow-box p br { display: none }
    .selection-flow .sec-inner .flow-chart li .flow-box .annotation { position: absolute; left: inherit; right: 1em; bottom: 12px; font-size: 12px; line-height: 1em; width: 2em; text-align: center; }
    .selection-flow .sec-inner .flow-chart li .flow-box .annotation.bottom { position: relative; left: inherit; right: inherit; bottom: inherit; line-height: 1.5em; width: auto; }
    .selection-flow .sec-inner .flow-chart li .flow-box .annotation.bottom br { display: none }
    ol.notes { padding-left: 2.5em }
    ol.notes li { text-indent: -2.5em; font-size: 12px; line-height: 1.7em }
    ul.notes { padding-left: 2.5em }
    ul.notes li { text-indent: -2.5em; font-size: 12px; line-height: 1.7em }
    .btn-entry { display: block; max-width: 323px; width: 100%; margin: 0 auto; }
    .btn-entry a { display: block; width: 100%; height: auto; background: none; }
    .btn-entry a img { width: 100%; height: auto; }
    .btn-entry a:hover img { opacity: 1 }
    .selection-flow .sec-inner .btn-entry { margin-top: 60px }
    .selection-flow .sec-inner .btn-link { margin-top: 24px }
    
    .working-environment .sec-inner { padding: 70px 0 }
    .working-environment .sec-inner .environment { margin-bottom: 40px }
    .working-environment .sec-inner .environment .pic { float: none; width: 100% }
    .working-environment .sec-inner .environment .inner-block { float: none; width: 100%; padding-top: 20px }
    .working-environment .graph ul { margin: 0 }
    .working-environment .graph li { float: none; width: 100%; margin: 24px 0 0 }
    .blank-link { display: inline-block }
    .blank-link a { position: relative; display: block; font-size: 14px; font-weight: 500; line-height: 32px; padding-left: 42px; transition: all 0.2s }
    /*.blank-link a::before { content: ""; display: block; position: absolute; left: 0; top: calc(50% - 16px); width: 32px; height: 32px; background: url("../img/2026/ico_blank_m.png") no-repeat; background-size: contain }*/
    .working-environment .sec-inner .environment .blank-link { margin-top: 16px; float: right; width: 100% }
    .working-environment .sec-inner .environment .blank-link::after { content:""; display: block; clear: both; height: 0 }
    .tech-links ul { margin: 0 }
    .tech-links ul li { width: 100%; margin: 10px 0 }
    .tech-links ul li a { padding: 24px; }
    .tech-links ul li a span { font-size: 14px; font-weight: 500 }
    .tech-links ul li a h4 { font-size: 18px !important; line-height: 1.5em; padding-top: 8px }
    .tech-links ul li a:hover h4 { text-decoration: underline }
    /*.tech-links ul li a::after { content: ""; display: block; position: absolute; right: 24px; bottom: 24px; width: 32px; height: 32px; background: url("../img/2026/ico_blank.png") no-repeat; background-size: contain }*/
    .working-environment .sec-inner .environment-block { margin-bottom: 40px }
    .working-environment .sec-inner .environment-block .tech-links { margin-top: 12px }
    .article-links ul { margin: 0 }
    .article-links ul li { width: 100%; margin: 12px 0 }
    .article-links ul li a { padding: 24px 56px 24px 24px; font-size: 14px; font-weight: 500 }
    .article-links ul li a.ln-2 { padding: 24px 56px 24px 24px } 
    /*.article-links ul li a::after { content: ""; display: block; position: absolute; right: 24px; top: calc(50% - 15px); width: 30px; height: 30px; background: url("../img/2026/ico_blank_b.png") no-repeat; background-size: contain }*/
    
    .employees .sec-inner { position: relative; text-align: center }
    .employees .sec-inner .btn-link { position: relative; right: inherit; top: inherit; margin: 0 auto }
    .employees .sec-inner h2 { text-align: left }
    .employees .sec-inner .highlighted-employee { float: none; width: 100%; margin-bottom: 30px; text-align: left }
    .employees .sec-inner .highlighted-employee a { position: relative; display: block; padding-bottom: 20px }
    .employees .sec-inner .highlighted-employee a::after { content: ""; position: absolute; display: block; right: 0; bottom: 0; width: 30px; height: 30px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat bottom; background-size: contain; }
    .employees .sec-inner .highlighted-employee h3 { font-size: 14px; font-weight: 500; line-height: 1.5em; margin: 16px 0 }
    .employees .sec-inner .highlighted-employee .service-logo img { height: 20px }
    #design .employees .sec-inner .highlighted-employee .service-logo img { height: 12px }
    .employees .sec-inner ul { float: none; width: 100% }
    .employees .sec-inner ul li { padding: 0; margin: 0 0 30px; border: none; text-align: left }
    .employees .sec-inner ul li a { position: relative; display: block; }
    .employees .sec-inner ul li a::after { content: ""; position: absolute; display: block; right: 0; bottom: 0; width: 30px; height: 30px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat bottom; background-size: contain; }
    .employees .sec-inner ul li a .pic { display: block; width: 36%; }
    .employees .sec-inner ul li a h3 { position: absolute; left: calc(36% + 12px); top: 0; font-size: 14px; letter-spacing: 0 }
    .employees .sec-inner ul li a .service-logo { position: absolute; left: calc(36% + 12px); bottom: 0 }
    .employees .sec-inner ul li a .service-logo img { height: 20px }
    #business .employees .sec-inner ul li:first-child a .service-logo img { height: 16px }
    #business .employees .sec-inner ul li:last-child a .service-logo img { height: 12px }
    #design .employees .sec-inner ul li:last-child a .service-logo img { height: 12px }
    #design .employees .sec-inner { padding-bottom: 70px }
    #data_specialist .employees .sec-inner { padding-bottom: 70px }
    #finance .employees .sec-inner { padding-bottom: 70px }
    
    .event-internship .sec-inner { padding: 70px 0 }
    .event-list .event { margin-bottom: 32px }
    .event-list .event .pic { float: none; width: 100%; }
    .event-list .event .pic .status { position: absolute; left: 0; top: 0; font-size: 12px; line-height: 24px; font-weight: 700; padding:  0 1em; background: #fff }
    .event-list .event .pic .status.end { color: #fff; background: #000 }
    .event-list .event .inner-block { float: none; width: 100%; padding-top: 16px }
    .event-list .event .inner-block h3 { line-height: 1.5em; margin-bottom: 16px }
    
    .other-course { background: #2A2A2A; margin-bottom: 20px }
    .other-course .sec-inner { padding: 70px 0; }
    .other-course .sec-inner .btn-link { display: none }
    .other-course .sec-inner h2 { color: #fff }
    .other-course .sec-inner ul { margin: 0 }
    .other-course .sec-inner ul li { float: none; width: 100%; margin: 0; border-bottom: solid 1px #575757 }
    .other-course .sec-inner ul li:last-child { border-bottom: none }
    .other-course .sec-inner ul li a { position: relative; display: block; padding: 24px 0; color: #fff; background: none }
    .other-course .sec-inner ul li a:hover { text-decoration: none }
    .other-course .sec-inner ul li a::after { content: ""; position: absolute; display: block; right: 0; top: 24px; width: 32px; height: 32px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat bottom; background-size: contain; }
    .other-course .sec-inner ul li a h3 { font-size: 18px; line-height: 1.5em }
    .other-course .sec-inner ul li a:hover h3 { text-decoration: underline}
    .other-course .sec-inner ul li a .exsample { position: relative; left: inherit; bottom: inherit; width: auto; }
    .other-course .sec-inner ul li a .exsample h4 { font-size: 12px; margin-bottom: 10px }
    .other-course .sec-inner ul li a .exsample p { display: block; font-size: 14px; padding: 0; border: none }
    
    .four-roles ul { margin: 12px 0 24px }
    .four-roles ul li { width: 100%; margin: 24px 0 0 }
    .four-roles ul li .role-box { padding: 16px 16px 16px 112px; min-height: 64px }
    .four-roles ul li .role-box h3 { position: absolute; left: 0; top: calc(50% - 32px); width: 96px; font-size: 14px; line-height: 64px; }
    .four-roles ul li:not(:first-child) .role-box p { margin-top: 0.8em }
    .marketing-project .sec-inner .project-box { padding: 16px; }
    .marketing-project .sec-inner .project-box .pb-head h2 { width: auto; margin-bottom: 16px }
    .marketing-project .sec-inner .project-box .pb-head h2 p.sample { font-size: 16px; margin-bottom: 6px }
    .marketing-project .sec-inner .project-box .pb-head h2 p.sample span { display: inline-block; font-size: 12px; line-height: 20px; text-align: center; width: 20px; height: 20px; border-radius: 10px }
    .marketing-project .sec-inner .project-box .pb-head .logo { position: inherit; right: inherit; top: inherit; width: 100%; text-align: right }
    .marketing-project .sec-inner .project-box .pb-head .logo img { width: 190px }
    #marketing-project-02 .sec-inner .project-box .pb-head .logo img { width: 88px }
    #marketing-project-03 .sec-inner .project-box .pb-head .logo img { width: 80px }
    .marketing-project .sec-inner .project-box .pb-body .inner-block { margin-top: 30px }
    .marketing-project .sec-inner .project-box .pb-body .shoulder { font-size: 14px; margin-bottom: 16px }
    .marketing-project .sec-inner .project-box .pb-body .shoulder span { position: relative; padding-right: 12px; }
    .marketing-project .sec-inner .project-box .pb-body .shoulder span::after { content: ""; position: absolute; display: block; right: 0; top: 3px; width: 1px; height: 16px; background: #BDBDBD }
    .marketing-project .sec-inner .project-box .pb-body h3 { margin-bottom: 16px !important }
    #marketing-project-02 .sec-inner { padding: 24px 0 0; }
    #marketing-project-03 .sec-inner { padding: 24px 0 0; }
    #assignment { background: none }
    .assignment .sec-inner { padding: 70px 0 0; }
    .assignment .sec-inner .graph { margin-top: 32px }
    .assignment .sec-inner .btn-entry { margin-top: 60px }
    .assignment .sec-inner .btn-link { margin-top: 24px }
    .roundtable-talk-idx ul { margin: -24px 0 0 }
    .roundtable-talk-idx ul li { width: 100%; margin: 24px 0 0 }
    .roundtable-talk-idx ul li a { display: block; position: relative; padding: 24px 24px 60px 152px; min-height: 76px; background: #EFEFEF }
    .roundtable-talk-idx ul li a:hover { text-decoration: none }
    .roundtable-talk-idx ul li a::after { content: ""; position: absolute; display: block; right: 24px; bottom: 24px; width: 32px; height: 32px; background: url("https://www.recruit.co.jp/employment/students/assets/img/2026/arrow_mw.png") no-repeat bottom; background-size: contain; z-index: 0 }
    .roundtable-talk-idx ul li a .pic { position: absolute; left: 24px; top: 24px; width: 112px; }
    .roundtable-talk-idx ul li a p.shoulder { display: inline-block; font-size: 12px; font-weight: 500; color: #fff; background: #575757; margin-bottom: 12px }
    .roundtable-talk-idx ul li a .ico-blank { position: absolute; right: 24px; bottom: 24px; z-index: 10 }
    .roundtable-talk .sec-inner .roundtable-talk-idx ul li a h3 { font-size: 14px; font-weight: 500; margin: 0 }
    .roundtable-talk-idx ul li a:hover h3 { text-decoration: underline }
    #roundtable-talk .sec-inner { padding: 70px 0; }
    #pdm-project-01 .sec-inner .project-box .pb-head .logo img { width: 84px }
    #pdm-project-02 .sec-inner .project-box .pb-head .logo img { width: 104px }
    #pdm-project-02 .sec-inner { padding: 24px 0 0; }
    
}

.status.open {	
    border-right: 1px solid #BDBDBD;	
    border-bottom: 1px solid #BDBDBD;	
    }	
    .status.closed {	
    border-right: 1px solid #575757;	
    border-bottom: 1px solid #575757;	
    }	
    .btn-entry p.notes{	
    font-size: 12px !important;	
    margin-top: 1em;	
    text-align: left;	
    padding-left: 1.25em;	
    text-indent: -1.25em;	
    }