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

@media only screen and (max-width: 640px) {
body { min-width: inherit; }

/* -------------------------------------------------------- common */
div.inner { box-sizing: border-box; width: 100%; min-width: 100%; padding: 0 1em; }
.fl { float: none; }
.fr { float: none; }
.default { display: none; }
.responsive { display: block; }
.resp_w100 { width: 100% !important; }
.resp_w95 { width: 95% !important; }
.resp_w90 { width: 90% !important; }
.resp_w85 { width: 85% !important; }
.resp_w80 { width: 80% !important; }
.resp_w75 { width: 75% !important; }
.resp_w70 { width: 70% !important; }
.resp_w65 { width: 65% !important; }
.resp_w60 { width: 60% !important; }
.resp_w55 { width: 55% !important; }
.resp_w50 { width: 50% !important; }
.resp_w48 { width: 48% !important; }
.resp_w47 { width: 47% !important; }
.resp_w45 { width: 45% !important; }
.resp_w40 { width: 40% !important; }
.resp_w35 { width: 35% !important; }
.resp_w30 { width: 30% !important; }
.resp_w25 { width: 25% !important; }
.resp_w20 { width: 20% !important; }
.resp_w15 { width: 15% !important; }
.resp_w10 { width: 10% !important; }
.resp_w66 { width: 66.6% !important; }
.resp_w33 { width: 33.3% !important; }
.resp_w49 { width: 49% !important; }
.resp_w32 { width: 32% !important; }
.resp_no { display: none; }
.resp_ma { margin: auto !important; }
.resp_column { flex-flow: column wrap; }
br.pc_no { display: inline; }
br.sp_no { display: none; }
.col2 { column-count: 1; }
.col3 { column-count: 2; }

/* -------------------------------------------------------- header */
header { width: 100%; }
header div.bottom { /* border: none; height: 65px; max-height: 65px; */ height: auto; max-height: inherit; 
/*ヘッダー固定250120*/position: fixed; top:0;	left: 0; z-index: 1000; }
header div.bottom.fixed { position: relative; z-index: 9999; top: 0; width: auto; background: #fff; }
/*header div.logo a img,footer div.logo a img { height: auto; width: 100%; } */
header div.top { display: none; }
header div.logo { width: 160px; }
header div.logo a { padding: 10px 10px; }
header div.logo a img, footer div.logo a img { height: 45px; width: 240px; }
footer div.logo a img { height: 45px; width: 240px; margin: 0 auto; display: block; }

/* -------------------------------------------------------- header div.responsiveNav */
header nav.default { display: none; }
header div.bottom div.inner { padding: 0; position: relative; }
header div.responsiveNav { width: 100%; z-index: 1000; /* position: absolute; */ position: relative; top: 0; left: 0; }
header div.responsiveNav nav.responsive { position: relative; /* top: 65px; */ }
header div.responsiveNav nav.responsive ul { display: block; overflow: hidden; width: 100%; max-height: 0; margin: 0 auto; transition: all .5s ease-in-out; }
header div.responsiveNav nav.responsive ul.active { max-height: 1000px; }
header div.responsiveNav nav.responsive ul.gnav { border-top: 1px solid #d6d5d5; }
header div.responsiveNav nav.responsive ul.utility { clear: both; }
header div.responsiveNav nav.responsive ul li { font-size: 1.6rem; display: block; border-bottom: 1px solid #262626; }
header div.responsiveNav nav.responsive ul li.banner {}
header div.responsiveNav nav.responsive ul li.banner a { display: block; background: #fff; box-sizing: border-box; border: 5px solid #86c56e; }
header div.responsiveNav nav.responsive ul.utility li { width: 50%; float: left; }
header div.responsiveNav nav.responsive ul.utility li a { padding: 8px 20px; background: #444; }
header div.responsiveNav nav.responsive ul li a { font-weight: bold; position: relative; display: block; box-sizing: border-box; width: 100%; padding: 12px 20px; text-align: left; background: #333; color: #fff; }
header div.responsiveNav nav.responsive ul li a:after { position: absolute; top: 50%; right: 15px; left: inherit; display: block; width: 5px; height: 5px; margin-top: -5px; content: ''; transition: all .2s ease-in-out; transform: rotate(45deg); border-top: 2px solid #fff; border-right: 2px solid #fff; background: none; }
header div.responsiveNav ul li:first-child a::before { position: relative; top: auto; left: 0; width: auto; height: auto; margin-top: 0; content: ''; background: none; }
header div.responsiveNav ul li:last-child { width: 100%; }
header > div.responsiveNav > div.inner > ul > li::after { position: relative; z-index: 9999; bottom: 0; left: 0; width: 0; height: auto; content: ''; background: none; }
div.responsiveNav > div.inner > ul > li > a:hover::after { left: inherit; width: 5px; }
header div.responsiveNav ul li div.sub { display: none !important; }

/* -------------------------------------------------------- menuButton */
header div.menuButton { display: block; width: 40px; height: 28px; position: absolute; top: -55px; right: 10px; }
header div.menuButton div.menu-trigger { display: block; cursor: pointer; }
header div.menuButton div.menu-trigger > div { position: relative; display: block; width: 40px; height: 28px; margin: 0 auto; }
header div.menuButton div.menu-trigger > div div.label { font-size: 1.2rem; font-weight: bold; position: absolute; box-sizing: border-box; width: 40px; color: #333; top: 30px; text-align: center; }
header div.menuButton div.menu-trigger > div div.label::before { content: 'MENU'; }
header div.menuButton div.menu-trigger > div div.label.open::before { content: 'CLOSE'; }
header div.menuButton div.menu-trigger > div div.hamburger { position: relative; width: 40px; height: 28px; }
header div.menuButton span { position: absolute; left: 0; display: inline-block; box-sizing: border-box; width: 40px; height: 4px; transition: all .4s; background-color: #ffb600; }
header div.menuButton span:nth-of-type(1) { top: 2px; left: calc(50% - 20px); }
header div.menuButton span:nth-of-type(2) { top: 12px; left: calc(50% - 20px); }
header div.menuButton span:nth-of-type(3) { top: 22px; left: calc(50% - 20px); }
header div.menuButton.active span:nth-of-type(1) { transform: translateY(10px) rotate(-45deg); }
header div.menuButton.active span:nth-of-type(2) { opacity: 0; }
header div.menuButton.active span:nth-of-type(3) { transform: translateY(-10px) rotate(45deg); }


/* -------------------------------------------------------- mainVisual */
section.mainVisual { height: 150px; }
section.mainVisual div.inner { height: 250px; position: relative; }
section.mainVisual div.inner h2.copy { font-size: 2.8rem; }
section.mainVisual div.movie { position: relative; width: 100% !important; height: auto; margin: 0 auto; }
section.mainVisual div.movie a.iframe { position: absolute; background: url("../img/btn_play.png") no-repeat scroll right bottom / 50px auto, rgba(0, 0, 0, 0) url("../img/bg_movie.png") repeat scroll 3px center; }
section.mainVisual div.movie iframe { height: 100% !important; margin: 0 auto; position: relative; right: 0; top: 0; width: 100% !important; }
section.mainVisual div.movie div { margin: 0 auto; width: 100%; height: 250px; display: block; }
section.mainVisual div.movie iframe { height: auto; position: relative; }
/* section.mainVisual div.movie video { left: 50%; transform: translateX(-50%); } */

/* -------------------------------------------------------- targetLink */
div.targetLink ul li { float: left; width: 50%; }

/* -------------------------------------------------------- section */
section div.title h2 { font-size: 4.0rem; }
section div.panel div.caption { position: relative; display: block; height: auto; text-align: center; width: 100%; padding: 0.5em 0; line-height: 1; }
section div.panel div.caption span { display: inline; }
section div.panel div.wrap { padding: 0.5em; }
section div.panel div.wrap div.headline, section div.panel div.wrap div.headline h2 { font-size: 1.8rem; margin-bottom: 0.2em; }

/* -------------------------------------------------------- introduction */
section.introduction div.course div.panel { width: 50%; float: left; }
section.introduction div.course div.panel div.wrap { top: 0; position: relative; min-height: inherit; }
section.introduction div.course div.panel.graduate { width: 100%; float: none; max-height: inherit; margin-bottom: 0.5em; }
section.introduction div.course div.panel.graduate div.spot { float: none; width: 100%; }
section.introduction div.course div.panel.graduate div.wrap { width: 100%; }
section.introduction div.course div.panel div.wrap div.sub { line-height: 1; font-size: 0.8rem; padding-bottom: 0.5em; }
section.introduction div.course div.panel.healthSciencesNurse div.wrap div.sub { font-size: 0.8rem; }
section.introduction div.course div.panel.healthSciencesInspection div.wrap div.sub { font-size: 0.8rem; }
section.introduction div.course div.panel div.wrap div.headline span { font-size: 1.2rem; display: block; }
section.introduction div.panel div.description { display: none; }

/* -------------------------------------------------------- specialBnr */
div.specialBnr div.link { padding-top: 3.5em; text-align: center; }
div.specialBnr div.link span { font-size: 3.0rem; }
div.specialBnr div.link span::after { background: none; border: none; content: ""; display: block; height: 0; left: inherit; margin-top: 0; position: relative; right: 0; top: 0; width: 0; }

/* -------------------------------------------------------- section.topics */
section.topics ul { width: 100%; }
section.topics ul li a div.update { float: none; }

/* -------------------------------------------------------- aboutTop */
section.aboutTop div.panel.message { width: 100%; }

/* section.introduction div.panel.message img { width: 200%; height: auto; margin-left: -50%; } */
section.aboutTop div.panel.vision, section.aboutTop div.panel.history { width: 50%; float: left; }
section.aboutTop div.panel div.description { display: none; }

/* -------------------------------------------------------- admissions */
section.admissions div.title h2 { text-align: center; }
section.admissions div.inner { padding: 0; }
section.admissions div.link { text-align: center; }
section.admissions div.fl { margin-right: 0; position: relative; width: 100%; height: auto; padding: 20px 0; }
section.admissions div.fl div.point { padding: 20px; }
section.admissions div.fl div.details { display: none; }
section.admissions div.fl div.details ul { float: none; width: 100%; }
section.admissions div.fr { height: auto; }
section.admissions div.fr div.spot { display: block; height: 200px; margin-left: 0; background-position: center; }
section.admissions div.fl div.details ul li ul li > span { display: block; }
section.admissions div.fl div.details ul li ul li > span span { display: inline-block; }

/* -------------------------------------------------------- forAdmissions */
div.forAdmissions section div.inner { position: relative; width: 100%; }
div.forAdmissions section.opencampus { width: 100%; }
div.forAdmissions section.access { width: 100%; }

/* -------------------------------------------------------- campusLife */
section.campusLife ul { width: 100%; padding: 0 1em; box-sizing: border-box; }
section.campusLife ul li { float: none; position: relative; width: 100%; max-width: 280px; margin: 0 auto 20px; }
section.campusLife ul li div.headline { bottom: 0; font-size: 2.8rem; margin: auto; position: relative; }
section.campusLife ul li div.headline span { padding: 0.5em; width: 90%; margin: 0 auto; display: block; box-sizing: border-box; }

/* -------------------------------------------------------- research */
section.research div.fl div.link { margin: 0 0 0; }
section.research > div.inner > div.clearfix > div.panel.pickup.fl { width: 100%; }
section.research > div.inner > div.clearfix > div.panel.pickup.fl > div.clearfix > div.fl { height: auto; padding: 20px; width: 100%; }
section.research > div.inner > div.clearfix > div.panel.pickup.fl > div.clearfix > div.fr.spot { display: none; }
section.research > div.inner > div.clearfix div.panel.social { min-height: inherit; max-height: inherit; }
section.research > div.inner > div.clearfix div.panel.social div.fr { min-height: inherit; width: 100%; padding: 10px 20px !important; box-sizing: border-box; }
section.research > div.inner > div.clearfix div.panel.social div.spot { display: none; }
section.research > div.inner > div.clearfix div.panel.social div.fr div.headline { font-size: 2.4rem; }
section.research > div.inner > div.clearfix > div.fr { width: 100%; }
section.research > div.inner > div.clearfix > div.fr > div.panel { max-height: none; overflow: hidden; min-height: inherit; }
section.research > div.inner > div.clearfix > div.fr > div.panel:first-child div.fl { width: 100%; padding: 0; }
section.research > div.inner > div.clearfix > div.fr > div.panel div.spot { display: none; }
section.research > div.inner > div.clearfix > div.fr > div.panel:last-child div.fr { padding: 10px 20px; width: 100%; }
section.research > div.inner > div.clearfix > div.fr > div.panel:nth-child(2n) div.fr { padding: 10px 20px; width: 100%; min-height: inherit; }
section.research > div.inner > div.clearfix > div.fr > div.panel:nth-child(odd) div.fl { padding: 10px 20px; width: 100%; min-height: inherit; }
section.research div.inner div.information div.headline { text-align: center; }

/* -------------------------------------------------------- footer */
footer div.inner { padding: 60px 1em 0; box-sizing: border-box; }
footer div.inner div.fl { padding-left: 0; width: 100%; text-align: center; }
footer div.inner div.fl::after { background: none; content: ""; display: block; height: 0; position: relative; right: 0; top: 0; width: 0; }
footer div.information { margin-bottom: 40px; padding-left: 0; text-align: center; }
footer div.information table { width: 40%; margin-left: auto; margin-right: auto; white-space: nowrap; }
footer div.fl:first-child div.banner { padding-left: 0; }
footer div.fl div.banner { width: 49%; margin-bottom: 10px; padding-left: 0; float: left; margin-right: 2%; }
footer div.fl:nth-child(2) ul { margin: 20px 0; }
footer div.fl div.banner:nth-child(2n) { width: 49%; margin-right: 0; }
footer div.banner img { width: 100%; }
footer div.inner div.fl:nth-child(3) { /* display: none; */
}


/*20250117追記インスタグラムSP用*/
.flx { display: flex;justify-content: space-between; width: calc(100% - 63px); }
.insta { display: block; width: 47px; margin: 15px 0 0 115px; }
/*レスポンシブ固定変更のため追記250120*/
div.wrapper {margin-top: 70px; }
header div.bottom {  height: auto; max-height: inherit; position: fixed; top: 0; left: 0; z-index: 1000; width: 100%; }
}


@media only screen and (max-width: 1200px) {
/* -------------------------------------------------------- footer */
footer div.inner { padding: 60px 1em 0; box-sizing: border-box; }
footer div.inner div.fl { padding-left: 0; width: 100%; text-align: center; }
footer div.inner div.fl:nth-child(2), footer div.inner div.fl:nth-child(3), footer div.inner div.fl:nth-child(4) { width: 32.00%; text-align: left; float: left; margin-right: 2%; overflow: hidden; display: block; }
footer div.inner div.fl:nth-child(4) { margin-right: 0; }
}

@media only screen and (max-width: 640px) {
footer div.inner div.fl:nth-child(3), footer div.inner div.fl:nth-child(4) { width: 49%; float: left; }
footer div.inner div.fl:nth-child(2) { float: none; width: 100%; padding-top: 20px; border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; margin-bottom: 20px; }
footer div.fl:nth-child(3) ul { /*margin-bottom: 0;*/ }
footer div.banner-wrap div.banner { float: left; margin-right: 2%; text-align: center; width: 49%; }
footer div.banner-wrap div.banner:nth-child(3n) { margin-right: 2%; }
footer div.banner-wrap div.banner:nth-child(2n) { margin-right: 0; }
}

@media only screen and (max-width: 480px) {
footer div.inner div.fl:nth-child(3), footer div.inner div.fl:nth-child(4) { width: 100%; text-align: left; }
footer div.copyright { text-align: left; }
}

@media only screen and (max-width: 640px) {
/* -------------------------------------------------------- category */
div.categoryList ul li { width: 100%; margin: 0 0 10px 0; float: none; }
div.categoryList div.article { padding: 10px; }
div.categoryList div.article div.headline { margin-bottom: 0; }
div.categoryList div.article div.headline h2 { font-size: 1.6rem; margin-bottom: 0; }
div.categoryList div.article div.description { display: none; }
div.categoryList div.article div.spot { height: auto; margin-right: 20px; width: 100px; }
div.categoryList div.article div.spot span { height: 60px; width: 100px; }
div.categoryList div.article div.spot span img { height: 60px; max-height: 60px; max-width: 100px; width: auto; }


/* ------------------------------------------------------------------ .categoryListTreeView */
div.categoryListTreeView { padding: 0 0.2em; box-sizing: border-box; }
div.categoryListTreeView div.listWrap { width: 100%; margin-right: 0; margin-bottom: 20px; float: none; }
div.categoryListTreeView div.listWrap:nth-child(2n) { margin-right: 0; }
div.categoryListTreeView div.listWrap div.headline a {}

/* ------------------------------------------------------------------ .categoryListTreeView */
/* subtop */
section.other div.panel.small.data { min-height: inherit; }
section.other div.panel.small.data div.spot { position: relative; }
div.subtop section div.panel { margin-bottom: 20px; }
section.about div.panel div.fl.spot { width: 100%; }
section.about div.panel div.fr.wrap { box-sizing: border-box; padding: 20px; width: 100%; }
section.about div.wrap div.life-science-banner { position: relative; top: 0; right: 0; width: 100%; max-width: 300px; height: auto; margin-left: auto; margin-right: auto; margin-top: 0; }
section.about div.wrap div.life-science-banner img { width: 100%; }
section.other div.panel.large { width: 100%; }
section.other div.panel.large div.details ul { float: none;  width: 100%; }
section.other div.panel.small { width: 100%; }
section.about div.details ul { float: none; width: 100%; }
  section.about div.details ul li, section.other div.details ul li { font-size: 1.6rem; }

section.movie div#slider { overflow: visible; }
section.research > div.inner > div.clearfix > div.fr > div.panel div.spot, section.research > div.inner > div.clearfix > div.fl > div.panel div.spot { display: none; }
section.research > div.inner > div.clearfix > div.fl { width: 100%; float: none; }
section.research > div.inner > div.clearfix > div.fl > div.panel.lecture:nth-child(2n+1) div.fl, section.research > div.inner > div.clearfix > div.fr > div.panel.cooperation:nth-child(2n+1) div.fl { /* background: #fff none repeat scroll 0 0;
 box-sizing: border-box; */ min-height: inherit; /* padding: 35px; */ padding: 10px 20px; width: 100%; }
section.research > div.inner > div.clearfix > div.fl > div.panel.lecture, section.research > div.inner > div.clearfix > div.fr > div.panel.cooperation { max-height: inherit; min-height: inherit; overflow: hidden; }
section.research > div.inner > div.clearfix div.panel.books, section.research > div.inner > div.clearfix div.panel.social { max-height: inherit; min-height: inherit; overflow: hidden; }
section.research > div.inner > div.clearfix div.panel.books div.fr, section.research > div.inner > div.clearfix div.panel.social div.fr { padding: 10px 20px; width: 100%; min-height: inherit; }
section.research div.panel.lecture div.sub, section.research div.panel.cooperation div.sub, section.research div.panel.books div.sub, section.research div.panel.social div.sub { text-align: center; }

/* banner */
div.wrapper.subtop div.banner {}
div.wrapper.subtop div.banner ul { padding: 0 0; }
div.wrapper.subtop div.banner ul li { float: none; width: 100%; max-width: 300px; margin: 0 auto 10px; }
div.wrapper.subtop div.banner ul li img { display: block; width: 100%; }
div.wrapper.subtop div.banner ul li:last-child { margin: 0 auto 10px; }

/* -------------------------------------------------------- categoryVisual */
div.categoryVisual {}
div.categoryVisual div.inner { padding: 0; }
div.categoryVisual img { width: 200%; display: block; }

/* -------------------------------------------------------- div.detail */
div.detail { width: 100%; padding: 0 1em; box-sizing: border-box; }
div.detail div.main { float: none; margin: 0 auto; width: 100%; }
div.detail aside { float: none; width: 100%; }


/* ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- graduate-courses */
div.graduate-courses {}
div.graduate-courses ul {}
div.graduate-courses ul li { float: none; width: 100%; margin-right: 0; margin-bottom: 0.5em; border: none; height: auto; }
div.graduate-courses ul li a { border: none; height: auto; padding: 1em 0; }
div.graduate-courses ul li:nth-child(3n) { margin-right: 0; }
div.graduate-courses ul li:nth-child(2n) { margin-right: 0; }
div.graduate-courses ul li div.spot { width: 100%; height: auto; }
div.graduate-courses ul li a div.graduate-courses-wrap { box-sizing: border-box; display: block; left: 0; padding-top: 0; position: relative; text-align: center; transform: none; }
div.corona-banner a { width: 100%; font-size: 1.6rem; }
div.corona-banner a br.responsive { display: inline-block; }
div.graduate-banner a { width: 100%; font-size: 1.6rem; }
div.graduate-banner a br.responsive { display: inline-block; }
}

@media only screen and (max-width: 1200px) {
section.admissions div.fl div.details ul li ul li > span { display: block; }
section.admissions div.fl div.details ul li ul li > span span { display: inline-block; }
header div.responsiveNav nav.responsive li.banner img { width: 100%; max-width: 300px; margin-left: auto; margin-right: auto; display: block; }
header div.responsiveNav nav.responsive li.banner a::after { display: none; }
/*  header nav.default { display: none; }*/
/*header div.responsiveNav { width: 100%; z-index: 1000;   position: relative; top: 0; left: 0; }
header div.bottom div.inner { padding: 0; position: relative; }
div.inner { box-sizing: border-box; width: 100%; min-width: 100%; padding: 0 1em; }
header div.menuButton { display: block; width: 40px; height: 28px; position: absolute; top: -55px; right: 10px; }*/
}




/* ---------------------------------------------------------------------------------- */
@media only screen and (max-width: 768px) {
div.faculty-panel-wrap div.faculty-panel { float: none; width: 100%; margin-right: 0; overflow: hidden; position: relative; margin-bottom: 2rem; }
div.faculty-panel-wrap div.faculty-panel a div.spot { float: left; width: 28%; margin-right: 4%; }
div.faculty-panel-wrap div.faculty-panel a div.wrap { float: left; width: 68%; box-sizing: border-box; padding-top: 0; padding-left: 0; }
div.faculty-panel-wrap div.faculty-panel div.wrap:before { position: absolute; top: 0; left: 0; width: 100%; height: 0.1rem; content: ""; }
div.faculty-panel-wrap div.faculty-panel div.wrap div.headline { font-size: 1.8rem; letter-spacing: 0; margin-bottom: 0.25rem; }
div.faculty-panel-wrap div.faculty-panel div.wrap div.headline:after { height: 1rem; width: 1rem; top: 50%; }
div.faculty-panel-wrap div.faculty-panel div.wrap div.description { font-size: 1.4rem; }
div.category-health-sciences ul li { float: none; width: 100%; margin-right: 0; margin-bottom: 2rem; }
}



/* ------------------------------------------------------------------- 保健学科(看護学専攻) */
@media only screen and (max-width: 768px) {
section.about div.wrap .b_nursing, section.about div.wrap .b_inspection, section.about div.wrap .b_dementia { position: relative; top: 0; right: 0; width: 100%; margin: auto; }
}

@media only screen and (max-width: 480px) {
.col3 { column-count: 1; }
}