@charset "UTF-8"; .pc_only{ display: block }
.sp_only{ display: none }
html{ scroll-behavior: smooth; }
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 { margin: 0; padding: 0; font-style: normal; font-weight: normal; font-size: 16px; vertical-align: baseline; font-family: "メイリオ", Meiryo, "MS PGothic", sans-serif; border-top-width: 0; border-right-width: 0; border-bottom-width: 0; border-left-width: 0px; }
a:link { text-decoration: none; }
a:hover { opacity: 0.8; }
.fl_l { float: left; }
.fl_r { float: right; }
.ov_h { overflow: hidden; }
li { float: left; list-style-type: none; display: block; }
.center { text-align: center; }
.tx_left { text-align: left; }
section { padding-top: 60px; padding-bottom: 60px; clear: both; overflow: hidden; }
.bg-blue { background-color: #025AA6; overflow: hidden; }
.bg-lightblue { background-color: #DFF2FC; overflow: hidden; }
.bg-white { background-color: #FFFFFF; overflow: hidden; }
.bg-gray { background-color: #E3E3E3; overflow: hidden; }
.clear { clear: both; }
.w1000 { width: 1000px; margin-right: auto; margin-left: auto; }
.w70 { width: 70px; }
.w170 { width: 170px; }
.w200 { width: 200px; }
.w320 { width: 320px; }
.w500 { width: 500px; }
.w550 { width: 550px; }
.w660 { width: 660px; }
.w720 { width: 720px; }
.w770 { width: 770px; }
.mt5 { margin-top: 5px; }
.mt10 { margin-top: 10px; }
.mt15 { margin-top: 15px; }
.mt30 { margin-top: 30px; }
.mt50 { margin-top: 50px; }
.mt80 { margin-top: 80px; }
.mt100 { margin-top: 100px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 40px; }
.ml20 { margin-left: 20px; }
.ml170 { margin-left: 170px; }
.-mt50 { margin-top: -40px; }
.pt30 { padding-top: 30px; }
.pb20 { padding-bottom: 20px; }
.pt60-mt60 { margin-top: -60px; padding-top: 120px; }
.tx10 { font-size: 10px; }
.tx12 { font-size: 12px; }
.tx18 { font-size: 18px; }
.tx20 { font-size: 20px; }
.tx36 { font-size: 36px; }
.tx40 { font-size: 36px; }
.tx_b { font-weight: bold; }
.lh2 { line-height: 2; }
.algin_r { text-align: right; }
.c-gray { color: #999; }
.c-blue { color: #025AA6; }
.c-white { color: #FFF; }
.b-c-blue { border-top-color: #025AA6; border-top-width: 1px; border-top-style: solid; height: 1px; border-right-style: none; border-bottom-style: none; border-left-style: none; margin-bottom: 40px; }
.b-dot { border-top-width: 1px; border-top-style: dotted; border-right-style: none; border-bottom-style: none; border-left-style: none; border-top-color: #999; }
.allow_l { background-image: url(../img/allow-l.png); background-repeat: no-repeat; background-position: left center; padding-left: 15px; }
.btn_more { background-color: #025AA6; text-align: center; padding-top: 10px; padding-right: 20px; padding-bottom: 10px; padding-left: 20px; color: #FFF; font-weight: bold; border-radius: 5px; }
.btn_more_center { background-color: #025AA6; text-align: center; padding-top: 10px; padding-right: 20px; padding-bottom: 10px; padding-left: 20px; color: #FFF; font-weight: bold; border-radius: 5px; margin-right: auto; margin-left: auto; }
header { margin-top: 25px; margin-right: 30px; margin-left: 30px; height: 55px; }
header img { height: 35px; }
#g-nav { background-color: #025AA6; height: 50px; width: 100%; z-index: 10; }
#g-nav ul { width: 1200px; margin-right: auto; margin-left: auto; }
#g-nav ul li { width: 165px; text-align: center; color: #FFF; line-height: 3.1; float: left; }
.site-header.fixed{ position: fixed; top: 0; }
#m-vis { width: 1000px; margin-right: auto; margin-left: auto; height: 450px; padding-top: 0px; padding-bottom: 0px; }
#m-vis  img { width: 80%; margin-right: 10%; margin-left: 10%; }
.news-list { width: 100%; margin-right: auto; margin-left: auto; }
.news-list li { margin-bottom: 20px; }
.news-list li .date { color: #025AA6; font-weight: bold; }
.news-list li .text .ttl_blue { font-weight: bold; color: #025AA6; }
.news-list li .text .ttl_bk { font-weight: bold; color: #000000; }
#news img { width: 150px; margin-bottom: 20px; }
.btn_box { border: 3px solid #CCC; width: 400px; margin-right: auto; margin-left: auto; background-color: #FFF; font-size: 22px; color: #025AA6; font-weight: bold; padding-top: 20px; padding-bottom: 20px; }
.service_sub_ttl { padding-top: 10px; padding-bottom: 10px; font-size: 22px; color: #025AA6; text-align: center; font-weight: bold; clear: both; border: 1px solid #025AA6; }
.service_ttl { background-color: #025AA6; padding-top: 10px; padding-bottom: 10px; font-size: 22px; color: #FFF; text-align: center; font-weight: bold; clear: both; }
.service_ttl span { margin-right: 10px; }
#breadcrumb { height: 30px; width: 96%; line-height: 2.5; padding-left: 2%; padding-right: 2%; }
#breadcrumb a { font-size: 12px; color: #000; }
#breadcrumb span { font-size: 12px; color: #025AA6; margin-left: 10px; margin-right: 3px; }
#philosophy span { color: #000; font-size: 28px; margin-right: 10px; margin-left: 10px; }
#overview tr .item { background-color: #7b8382; color: #FFF; }
#overview tr .item_m { background-color: #3B5C5C; color: #FFF; }
#overview tr .item_r { background-color: #EEEEEE; color: #333; }
#overview tr .cont { background-color: #E3E3E3; }
#overview tr .cont_b { background-color: #DFF2FC; }
.cont a:link { color: #000; text-decoration: underline; }
#overview tr td { padding-top: 15px; padding-bottom: 15px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #FFF; text-align: left; padding-left: 10px; padding-right: 40px; }
#labo span { font-size: 14px; }
#labo tr .item { background-color: #7b8382; color: #FFF; }
#labo tr .item_m { background-color: #3B5C5C; color: #FFF; }
#labo tr .item_r { background-color: #EEEEEE; color: #333; }
#labo tr .cont { background-color: #E3E3E3; }
#labo tr .cont_b { background-color: #DFF2FC; }
.cont a:link { color: #000; text-decoration: underline; }
#labo tr td { padding-top: 15px; padding-bottom: 15px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #FFF; text-align: left; padding-left: 10px; padding-right: 40px; }
#labo span { font-size: 14px; }
#contact a { color: #FFF; text-decoration: underline; }
#service a { color: #000; }
.business01 { background-image: url(../img/service-01.png); background-repeat: no-repeat; background-position: center center; height: 150px; width: 320px; padding-top: 62px; font-size: 22px; font-weight: bold; color: #FFF; text-align: center; }
.business02 { background-image: url(../img/service-02.png); background-repeat: no-repeat; background-position: center center; height: 150px; width: 320px; padding-top: 62px; font-size: 22px; font-weight: bold; color: #FFF; text-align: center; }
.business03 { background-image: url(../img/service-03.png); background-repeat: no-repeat; background-position: center center; height: 150px; width: 320px; padding-top: 62px; font-size: 22px; font-weight: bold; color: #FFF; text-align: center; }
#for_student { height: 200px; margin-top: -150px; }
#for_university { height: 10px; }
#for_corporate { height: 10px; }
.nolink { color: #000; }
.service_logo { height: 100px; width: 320px; }
.business_area .c-blue a:link { color: #025AA6; font-size: 20px; text-decoration: underline; }
#archive ul li { width: 165px; text-align: left; padding-top: 15px; padding-bottom: 15px; border-bottom-width: 1px; border-bottom-style: solid; border-bottom-color: #CCC; }
#archive ul .archive_ttl { color: #FFF; background-color: #025AA6; padding-left: 20px; padding-right: 15px; }
#archive ul .allow { background-image: url(../img/allow-l.png); background-repeat: no-repeat; background-position: 20px center; padding-left: 35px; }
footer { background-color: #E3E3E3; padding-top: 30px; padding-bottom: 30px; overflow: hidden; }
.rec_job a:link { color: #000; text-decoration: underline; }
footer a { color: #000; font-size: 12px; }
footer a:hover { color: #999; opacity: 0.8; }
footer .logo { clear: both; text-align: center; }
.swiper-container { width: 100%; height: 300px; margin-left: auto; margin-right: auto; }
.swiper-slide { background-size: cover; background-position: center; }
.gallery-top { height: 80%; width: 100%; }
.gallery-thumbs { height: 20%; box-sizing: border-box; width: 1000px; padding-top: 10px; padding-right: 0; padding-bottom: 10px; padding-left: 0; margin-right: auto; margin-left: auto; }
.gallery-thumbs .swiper-slide  { width: 150px; height: 100%; opacity: 0.4; }
.gallery-thumbs .swiper-slide-thumb-active { opacity: 1; }
#m-vi > .pc_only > .swiper-slide a{ display: block; width: 150px; height: 100%; }
.swiper-container { height: 450px; }
[class^="swiper-button-"], .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet::before { transition: all .3s ease; }
*, *:before, *:after { box-sizing: border-box; margin: 0; padding: 0; }
.swiper-container.swiper-container-coverflow { padding-top: 2%; }
.swiper-container.loading { opacity: 0; visibility: hidden; }
.swiper-container:hover .swiper-button-prev,
.swiper-container:hover .swiper-button-next { -webkit-transform: translateX(0); transform: translateX(0); opacity: 1; visibility: visible; }
.swiper-slide { height: auto; background-position: center; -moz-background-size:contain; background-size:contain; background-repeat: no-repeat; }
.swiper-slide .entity-img { display: none; }
.gallery-top{ width: 1000px; margin:  0 -150px; }
.gallery-thumbs2 { width: 50%; margin-left: 25%; margin-top: 20px; }

/* 2023.9.13追加 まなぶとはたらくをつなぐ研究所ページ用（箇条書きの中央寄せ×左寄せ） */
.center_box {
text-align: center;
}
.center_box p {
display: inline-block;
text-align: left;
}

/* 2024.2.9追加 採用情報ページ 公式noteリンク＆説明文用 */
.recruit-note .note_link { color: #025AA6; font-weight: bold; font-size:20px; text-decoration:underline;}
.recruit-note .note_text { color: #025AA6; font-weight: bold; font-size:16px; }