@charset "utf-8";

/* Common */
@media print, screen and (min-width: 768px) {
  body { min-width: 1246px }
  .inner { width: 1126px }
  .title-wrap:only-child { max-width: 1126px }
}
.under #globalHeader { background-color: #fff }
.under main { background-color: #f000 }
.title { background-color: var(--bg_gray) }
.title-list_en { color: var(--navy) }
.breadcrumb-link { color: var(--navy) }
.btn { background: var(--navy) !important }
.btn:after { transition: 0.3s }

/* hover動きなし & 透過 & 透過time設定*/
.btn { transition: 0.3s }
.btn:hover { opacity: 0.7 }
/*.btn:hover:after { right: 19px }*/

.hoverPoint.hovered { opacity: 1 !important; background: rgba(0, 32, 91, 0); animation-name: none }
.section { background-color: #fff; /*margin-bottom: 40px;*/ }
.section h2 { color: var(--navy); border-bottom: 2px solid var(--navy); font-weight: bold; /*margin-top: 80px;*/ margin-bottom: 35px }
.section h2#h2_1 { margin-top: 0px }
.section h2.withlead-title-text { margin-top: 0px }
.section h3 { font-size: 22px; font-weight: bold; /*margin-top: 35px;*/ margin-top: 15px; padding-left: 0px; margin-bottom: 15px }
.section h3:after { content: none }
.section h4 { font-size: 20px; font-weight: bold; margin-top: 35px; margin-bottom: 15px }
.section h5 { font-size: 18px; font-weight: bold; margin-top: 35px; margin-bottom: 15px }
.section h2 + .image { margin-top: 50px }
@media print, screen and (max-width: 767px) {
  #page { padding-top: 60px !important }
  .event #page { padding-top: 0px !important }
  .breadcrumb { font-size: 10px; padding: 10px 20px 5px; line-height: 1.4em }
  .title-list_ja { font-size: 21px; padding-bottom: 12px }
  .title-list_ja:after { width: 20px; margin-left: -10px }
  .title-list_en { margin-bottom: 4px }
  .title-list:only-child { padding: 22px 0 }
  .section > h2, .section > h3 { margin: 15px 0 35px !important }
  .section h2 { font-size: 18px; padding-bottom: 4px; margin-top: 35px; margin-bottom: 35px;/*margin-bottom: 25px;*/ line-height: 1.4em }
  .section h2 + .image { margin-top: 30px }
  .section h3 { font-size: 18px; margin-top: 20px; margin-bottom: 10px }
  .section h4 { font-size: 16px; margin-top: 25px; margin-bottom: 10px }
  .section h5 { font-size: 14px; margin-top: 25px; margin-bottom: 10px }
  .section h2 + .image { margin-top: 30px }
/*  .section { padding: 15px 0 50px }*/
  .social { margin: 30px 20px 10px/*margin: 10px 20px 10px*/ }
  .section h3 + .image { margin-top: 30px }

}




/* 絞り込み検索 */
.refine-title { background: var(--navy); border: 1px solid var(--navy) }
.refine-title.js-close { color: var(--navy); background: #fff }
.refine-title:before { border: 2px solid var(--navy); border-width: 0 2px 2px 0 }
.refine-title:after { border: 2px solid #fff; border-width: 2px 0 0 2px }
@media print, screen and (min-width: 768px) {
  .refine-title:hover { color: var(--navy); background: #fff }
  .refine-title:hover:after { border: 2px solid var(--navy); border-width: 2px 0 0 2px }
  .refine-title.js-close:hover { background: var(--navy); border: 1px solid var(--navy) }
  .no-touchevents .refine-title.js-close:hover { background: var(--navy); border: 1px solid var(--navy) }
}
@media print, screen and (max-width: 767px) {
  .no-touchevents .refine-title.js-close:hover { background: #fff; color: var(--navy) }
}
.refine-wrap { border: 1px solid #000; border-radius: 10px }
.refine-lists { color: #000 }
.refine-lists .refine-item { margin-right: 6px }
.refine-lists .refine-link { font-size: 13px; height: 42px; width: unset; padding: 1px 22px 0; border-radius: 22px; line-height: 1.2em; color: #000; border: 1px solid var(--gray5) }
.refine-lists .refine-link:hover { border: 1px solid var(--navy) } 
.refine-lists_icon .refine-link:before, .refine-lists_icon .refine-link:after { content: none }
.refine-lists_text .refine-link { display: table-cell; vertical-align: middle }
.no-touchevents .refine-link:hover, .is-current .refine-link { background: var(--navy); color: #fff; border: 1px solid var(--navy) }
.refine-lists_icon .refine-item { margin-bottom: 10px }
@media print, screen and (max-width: 767px) {
  .refine-wrap { padding: 20px 20px 10px }
  .refine-list { margin-top: -2%; display: flex; flex-wrap: wrap; justify-content: space-between }
  .refine-item { width: 48% !important }
  .refine-item { margin: 0 !important }
  .refine-lists .refine-item { margin-right: 0; margin-bottom: 10px !important }
  .refine-lists .refine-link { padding: 0 8px; font-size: 12px }
  .refine-label { margin-bottom: 18px }
  .refine-lists_text { margin-top: 10px }
}



/* 一覧ページ 2025.3.6修正 */
.news-sublist { margin: -30px 0 0 !important }
.section ul li.news-sublist-item { padding: 0px; margin-bottom: 0px !important; display: block !important; line-height: 1.7em }
.news-sublist-link { padding: 35px 80px 30px 50px; position: relative; display: flex }
.news-sublist-link:after { right: 30px; position: absolute; background-repeat: no-repeat; content: ""; background-image: url("/common_top/img/common/icon_circle_arrow_navy.svg"); width: 27px; height: 28px; transition: 0.3s; top: 9px; background-size: contain; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%) }

/* hover動きなし & 透過 & 透過time設定*/
.news-sublist-link { transition: 0.3s }
.news-sublist-link:hover { opacity: 0.6 }
/*.news-sublist-link:hover:after { right: 22px }*/

.news-sublist-title { border: none; color: #000; padding-left: 0px; overflow: hidden; display: -webkit-box; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 3; font-weight: 500 }
.belong { display: flex; margin: 15px 0 0 0 !important; flex-wrap: wrap }
.belong li { background-color: var(--bg_gray); font-size: 12px !important }
.belong li:first-child { margin-right: 5px }
.news-sublist-date { font-size: 15px; color: var(--gray2); min-width: 140px }
.news-sublist-link { text-decoration: none }
.news-sublist .news-list-tag { margin: 0; ; color: var(--navy); margin-bottom: 5px !important }
.child .ul_academics.campus td { width: 257px }
.child .ul_academics.campus img { height: 169px }
.child .ul_academics.campus picture { height: 169px !important }
#home-news.child h3 { -webkit-line-clamp: 6; /*height: 140px;*/ font-size: 15px; line-height: 1.5em }
#home-news.child { margin: 25px 0 0 }
#home-news.child + .section h2 { margin-top: -20px }
@media print, screen and (max-width: 767px) {
  #home-news.child .archive_scroll { padding-left: 10% }
  .ul_academics.campus tr { width: 70vw; margin-right: 7vw }
  .news-sublist-link { padding: 25px 45px 25px 0 !important; display: block }
  .news-sublist-date { font-size: 13px; margin-bottom: 10px }
  .news-sublist-title { font-size: 15px; -webkit-line-clamp: 5 }
  .news-sublist-link:after { right: 1px; width: 25.5px; height: 25.5px }
  .news-sublist-link:hover:after { right: 1px }
  .belong { margin-top: 10px !important }
  #home-news.child .ul_academics.campus { flex-wrap: nowrap }
  /* 2025.3.19追加 */
  .child .ul_academics.campus td { width: 70vw }
}


/* 詳細ページ 2025.3.6修正 */
.title-text { font-weight: 500 }
.title-news-date { color: var(--gray2) }
.title-desc { font-size: 16px; color: var(--gray7)/*color: var(--gray6)*/ }
.news-list-tag { min-width: unset; padding: 0 10px }
@media print, screen and (max-width: 767px) {
  .title-text { /*font-size: 15px;*/ margin-bottom: 10px }
  .title .news-list-tag { font-size: 10px }
  .title-desc { font-size: 12px; line-height: 1.5em }
  .title-news-date { margin-bottom: 0px }
  .title-wrap, .title-wrap:only-child, .news-detail .title-wrap, .schedule-detail .title-wrap{ padding: 60px 20px 25px/*padding: 20px 20px 25px */}
}
.navi-link { border: none; color: #000; background-color: var(--bg_gray); border-radius: 35px; min-height: 70px; text-align: center; display: inline-block; padding: 0px 55px 0 20px !important; display: flex; justify-content: center; line-height: 1.4em; transition: 0.3s }
.navi-link:after { left: unset; right: 30px; transition: 0.3s }
.navi-link:before { background-color: var(--navy); left: unset; right: 20px; transition: 0.3s }
.no-touchevents .navi-link:hover { background-color: var(--bg_gray); color: var(--navy); opacity: 0.6 }
.no-touchevents .navi-link:hover:before { background-color: var(--navy); /*top: calc(50% + 8px)*/ }
.no-touchevents .navi-link:hover:after { border-color: #fff; /*top: calc(50% + 8px)*/ }
.navi-wide .navi-link { width: 355px }
.image--center .image-photo { max-width: 826px; margin: 0px auto 40px } 
.navi-wide .navi-link { width: 355px }
@media print, screen and (max-width: 767px) {
  .navi-link { min-height: 37px; justify-content: flex-start;text-align: left; }
  .navi-link:before { width: 18px; height: 18px; margin-top: -9px }
  .navi-link:after { width: 6px; height: 6px; right: 26px; margin-top: -4px; border-width: 0 1.5px 1.5px 0 }
  .navi.navi-wide .navi-link { width: 90%; font-size: 11px; line-height: 1.2em }
  .navi.navi-wide { padding: 30px 0 10px }
  .navi.navi-wide .inner { display: flex; flex-direction: column; align-items: center }
  .image--center .image-photo { margin: 0px auto 20px } 
  .navi-wide .navi-link:nth-child(n+2) { margin-top: 10px }
}
.image-photo img { border-radius: 10px }
.image--right .image-photo { max-width: 528px;}
.image--box { margin-top: 60px; justify-content: center }
.image--box.col2 .image-photo { flex-basis: 356px; max-width: 356px; }
.image--box.col2 .image-photo:nth-child(odd) { margin-right: 30px }
.image--box.col3 { justify-content: space-between }
.image--box.col3 .image-photo { flex-basis: 358px; max-width: 358px; margin-bottom: 60px }
.image--box.col3::after { width: 358px }
.image figcaption { margin-top: 15px }

.wysiwyg { line-height: 2.0em; font-size: 16px; /*margin-bottom: 0px*/ margin-bottom: 80px }
/*.wysiwyg table { max-width: 528px }*/
.wysiwyg th, .wysiwyg td { border: 1px solid var(--gray6) }
.wysiwyg th { text-align: center; font-weight: 400; background-color: var(--bg_gray) !important }
.wysiwyg td { padding: 10px 15px; line-height: 1.2em }
.wysiwyg > table { margin-bottom: 45px }
.wysiwyg a { color: var(--navy); transition: 0.3s }

.wysiwyg a:hover { opacity: 0.5; /*text-decoration: underline !important*/ }
.wysiwyg li { margin-bottom: 0.1em }
.wysiwyg ol > li { padding-left: 2.2em }
.wysiwyg ol > li:before { color: var(--navy); font-weight: bold }
.wysiwyg .brackets ol li { padding-left: 45px !important }
.wysiwyg .brackets ol li::before { left: -5px !important }
.wysiwyg .circle ol li { display: flex; align-items: center }
.wysiwyg .circle ol li:before { font-size: 13px !important; top: 4px !important; left: 0 !important }
.wysiwyg .circle ol li { padding-left: 30px !important; line-height: 2.0em }
.wysiwyg .circle ol { margin: 0px 0 5px !important }
b { color: var(--navy) }
.wysiwyg ul li { /*display: flex;*/ position: relative; font-size: 16px; line-height: 2.0em; margin-bottom: 20px; padding-left: 13px }
.wysiwyg ol li { /*display: flex;*/ position: relative; font-size: 16px; line-height: 2.0em; margin-bottom: 20px; padding-left: 35px }
.wysiwyg ul li:before { content: "●"; color: var(--navy); font-size: 20px; position: relative; left: -13px; top: unset; width: unset; background: none }
.wysiwyg ul li li:before { content: "?"; color: var(--navy); font-size: 20px; position: relative; left: -13px; top: unset; width: unset; background: none }
.wysiwyg ul li li li:before { content: "-"; color: var(--navy); font-size: 20px; position: relative; left: -13px; top: unset; width: unset; background: none }
.wysiwyg ol li li:before { content: "?"; color: var(--navy); font-size: 20px; position: relative; left: -13px; top: unset; width: unset; background: none }
.wysiwyg ol li li li:before { content: "-"; color: var(--navy); font-size: 20px; position: relative; left: -13px; top: unset; width: unset; background: none }
.wysiwyg > p { margin-bottom: 20px }
.wysiwyg ol ol li { line-height: 1.8em !important; margin: 10px 0 10px }

.section ul li.news-sublist-item:before { content: none }
.section ul li.news-list-tag:before { content: none }
@media print, screen and (min-width: 768px) {
  /*.wysiwyg ul { margin: 50px 150px 20px }*/
  .wysiwyg ul { margin: 50px 20px 20px }
  .wysiwyg ol { margin: 50px 20px 20px }
  .wysiwyg ul ul { margin: 15px 0px 20px }
  .wysiwyg ol ul { margin: 15px 0px 20px }
}
@media print, screen and (max-width: 767px) {
  .wysiwyg { font-size: 14px }
  .wysiwyg { line-height: 2.0em; font-size: 16px;margin-bottom: 0px }
  .wysiwyg ul { margin: 20px 5% 25px !important }
  .wysiwyg ol { margin: 20px 5% 25px !important }
  .wysiwyg td { padding: 5px 15px; line-height: 1.2em }
  .wysiwyg table { width:auto }
  .wysiwyg ul li { font-size: 14px; padding-left: 10px; margin-bottom: 15px }
  .wysiwyg ol li { font-size: 14px; padding-left: 27px; margin-bottom: 15px }
  .wysiwyg ul li:before { font-size: 16px; left: -10px }
  .wysiwyg .brackets ol li { padding-left: 35px !important }
  .wysiwyg .brackets ol ol li { padding-left: 30px !important }
  .image figcaption { margin-top: 10px }
  .image--left .image-photo, .image--right .image-photo, .image--center .image-photo { margin: 0 auto 25px }
  .image--box { width: 87%; margin: 20px auto }
  .image--box .image-photo { margin: 0px auto 20px }
  .image--box .image-photo:last-child { margin: 0px auto 5px }
  .image--box.col3 .image-photo { margin-bottom: 18px }
  .image--box.col2 .image-photo:first-child { margin-right: 0 }
  .image--box.col2 .image-photo:nth-child(odd) { margin-right: 0 }
}



/* リンク */
.section .link-set { margin-top: 20px }
.section ul.link-set { margin-left: 0; margin-right: 0 }
.section ul.link-set li:before { content: none; padding-left: 0 }
.section ul.link-set a { color: var(--navy); transition: 0.3s }
.section ul.link-set a:hover { opacity: 0.5; /*text-decoration: underline !important*/ }
.icon-right:before { border-color: var(--navy) }
@media print, screen and (min-width: 768px) {
  .menu-item_new { width: 358px; flex-basis: 358px; max-width: 358px }
  /*.menu-item_new .menu-item__photo { height: 238px }*/
}
@media print, screen and (max-width: 767px) {
.menu-item_new { margin-bottom:20px; }
  .menu-item_new .menu-item__photo { /*height: calc( 202 * 100vw / 335 )*/ }
}
.menu-item_new .menu-item__photo { overflow: hidden; border-radius: 10px }
.menu-item_new .menu-item__photo img { height: 100%; object-fit: cover }
.menu-item-wrap_link { border: none; height: unset !important; color: #000; padding: 20px 0px 20px }
.menu-item-title_link { font-size: 16px; position: relative; padding-left: 45px;padding-bottom: 20px; line-height: 1.4em;transition: 0.3s }
.menu-item-title_link:before { left: 0px; position: absolute; background-repeat: no-repeat; content: ""; background-image: url("/common_top/img/common/icon_circle_arrow_navy.svg"); width: 27px; height: 27px; transition: 0.3s; top: -3px }
.menu-item-title_link:hover { opacity: 0.5 }
/* hoverコメントアウト 2025.3.6修正 */
/*.menu-link:hover .menu-item-title:after { left: 8px }*/
.menu-item-wrap_link.icon-right:before { content: none }
.no-touchevents .menu-link_link:not(div):hover .menu-item-wrap_link { color: #000; background: unset; border-color: unset }
.menu-link_link img { transition: 0.3s }
.menu-link_link:hover img { transform: scale(1.02) }
.links_btn { display: flex; flex-wrap: wrap }
.links_btn { 
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  /*-webkit-justify-content: space-between;
  justify-content: space-between;*/
  margin-bottom: 30px;
  counter-reset: feature;
}
.links_btn p{color:#000;margin:0px}
.link-set-item:nth-child(n+3) { margin-top: 0px }
.link-set-item:nth-child(2n) { margin-left: unset }
@media print, screen and (min-width: 768px) {
  .links_btn li { width: 355px; margin-right: 30px }
  .menu-wide .links_btn  li { width: 520px; margin-right: 30px;margin-bottom: 20px; }
  .links_btn li:nth-child(3n) { margin-right: 0 }
  .menu-wide .links_btn li:nth-child(3n) { margin-right: 30px }
  .link-set-item { margin-right: 60px; margin-bottom: 20px }
}
@media print, screen and (max-width: 767px) {
  .menu-wide .menu-item_new { max-width: 100%; width: 100% }
  .menu-item-title_link:before { width: 23px; height: 23px; background-size: contain }
  .menu-item-title_link { font-size: 14px; padding-left: 35px }
  .menu-item-wrap_link { padding: 13px 0px 10px }
  .menu-item-wrap_link.icon { padding-right: 0px }
  .links_btn { display:block; }
  .links_btn li { width: 100%;margin-bottom: 20px; }
  .section ul.link-set a { font-size: 14px }
  .link-set-item { margin-bottom: 10px !important }
  .link-set-item:nth-child(n+2) { margin-top: 0px }
}




/* 問い合わせ */
.contact-con { margin: 25px auto 100px }
.contact-ttl { border-bottom: 1px solid var(--gray5); font-size: 26px; font-weight: bold; padding-bottom: 24px; margin-bottom: 40px }
.contact-txt { line-height: 2.0em; font-size: 16px }
.contact-con a { color: #000 }
@media print, screen and (min-width: 768px) {
  .contact-wrp { display: flex }
  .contact-wrp .contact-txt { width: 48% }
  .contact-wrp .contact-txt:first-child { margin-right: 4% }
}
@media print, screen and (max-width: 767px) {
  /*.contact-con { margin: 0px auto 45px }*/
  .contact-con { margin: 35px auto 45px }
  .contact-ttl { font-size: 18px; padding-bottom: 4px; margin-bottom: 25px }
  .contact-txt { font-size: 14px; line-height: 1.6em }
  .contact-txt + .contact-txt { margin-top: 30px }
}



/* Footer */
.request-icon { line-height: 0em }
aside.links { margin-top: 70px }
.yearnavi { padding: 40px 0 0px }
.yearnavi .inner { padding: 55px 0px; background-color: var(--bg_gray); border-radius: 10px }
.yearnavi-title:after { background: var(--navy) }
.yearnavi-list { margin: 0 auto !important; display: flex; flex-wrap: wrap }
.yearnavi-item { border-right: 1px solid var(--gray6) }
.no-touchevents .yearnavi-link:hover, .yearnavi-link.is-current { background: var(--navy) }
.no-touchevents .request-link:hover { background: var(--navy) }
.no-touchevents .request-link:hover .request-icon-svg_in { fill: var(--navy) }
.request-icon { background: var(--navy) }

/* 資料請求バナーの下にマージン有無 ↓ */
.request-link { background: var(--bg_gray); color: var(--navy); padding: 20px 20px }
/*.request-link { background: var(--bg_gray); color: var(--navy); padding: 20px 20px; margin-bottom: 36px }*/

.request-icon:after { content: ""; background-image: url("/common_top/img/common/icon_docs.svg"); width: 18.5px; height: 18.5px; position: absolute; background-repeat: no-repeat; left: 9px; top: 9px }
.request-text { padding: 0 48px 0 48px }
.request-text:before { content: none }
.request-text:after { right: 0px; position: absolute; background-repeat: no-repeat; content: ""; background-image: url("/common_top/img/common/icon_circle_arrow_navy.svg"); width: 27px; height: 28px; transition: 0.3s; top: 9px; background-size: contain; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%) }
/* hoverコメントアウト 2025.3.6修正 */
.request-link:hover .request-text:after { /*right: -8px; */background-image: url("/common_top/img/common/icon_circle_arrow_white.svg"); }
@media print, screen and (min-width: 768px) {
  .yearnavi-list { width: 1032px }
  .yearnavi-item { width: 172px }
  .request-link:hover .request-icon:after { background-image: url("/common_top/img/common/icon_docs_navy.svg") } 
}
@media print, screen and (max-width: 767px) {
  .yearnavi { padding-top: 0px }
  .yearnavi .inner { margin: 0; padding: 25px 0px 30px; border-radius: 0px }
  .yearnavi-list { width: 90%; justify-content: space-between }
  .yearnavi-item { width: 47%; border-right: none; line-height: 38px; border-bottom: 1px solid var(--gray6) }
  .yearnavi-item:nth-last-child(-n+2) { border-bottom: 1px solid var(--gray6) }
  .yearnavi-title:after { width: 20px; margin-left: -10px }
  .yearnavi-title { margin-bottom: 35px }
  aside.links { margin-top: 50px }
  .links-text { font-size: 15px }
  .links-item { background: unset }
  .links-photo { height: 135px }
  .links-link { height: 135px }
  .request-text { font-size: 18px; padding: 0 30px 0 35px }
  .request-text:after { width: 23px; height: 23px }
  .request-icon { width: 26px; height: 26px; padding: 5px 7px; position: absolute; left: 0px; top: 50%; transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%) }
  .request-link { margin-bottom: 0 }
  .request-icon:after { width: 13px; height: 13px; left: 7px; top: 7px; background-size: contain }

}







.news-sublist-link:after{
background-image:url("/common_top/css/ra24bd0000000uy7-img/ra24bd0000000uym.svg");
}.menu-item-title_link:before{
background-image:url("/common_top/css/ra24bd0000000uy7-img/ra24bd0000000zhm.svg");
}.request-icon:after{
background-image:url("/common_top/css/ra24bd0000000uy7-img/ra24bd0000000zhz.svg");
}.request-text:after{
background-image:url("/common_top/css/ra24bd0000000uy7-img/ra24bd0000000zi8.svg");
}.request-link:hover .request-text:after{
background-image:url("/common_top/css/ra24bd0000000uy7-img/ra24bd0000000zih.svg");
}@media print, screen and (min-width: 768px){.request-link:hover .request-icon:after{
background-image:url("/common_top/css/ra24bd0000000uy7-img/ra24bd0000000ziq.svg");
}}