@charset "utf-8";
@import "reboot.css";
html {
overflow-y: scroll;
width: 100%;
}
body {
color: #000;
font-size: 14px;
font-family: "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
font-weight: 500;
line-height: 1.5;
text-align: center;
background-color: #fff;
width: 100%;
}
a:link, a:visited {
color: #013490;
text-decoration: underline;
}
a:active, a:hover {
text-decoration: underline;
opacity: .6;
transition: all 0.5s ease;
}
a:focus {
outline: none;
}
#sb-site {
width: 100% !important;
text-align: center;
}
.sp {
display: none !important;
}
#toggle, .sb-slidebar {
display: none;
}
/* header */
#header_up {
margin: 0 auto;
padding: 0;
border-bottom: solid #000 2px;
width: 100%;
height: 32px;
min-width: 960px;
}
#h_nav {
margin: 0 auto;
width: 960px;
}
#lang {
width: 67px;
float: right;
margin: 0 0 0 11px;
}
.h_nav {
width: 112px;
margin: 5px 0 0 10px;
float: right;
}
header {
width: 960px;
margin: 0 auto;
}
header h1 img {
height: 65px;
float: left;
}
/* nav */
nav {
width: 960px;
margin: 0 auto;
clear: both;
}
ul#menu {
margin: 5px 0 0;
padding: 0;
display: flex;
list-style-type: none;
}
ul#menu li {
margin: 0;
padding: 7px 0 0;
background-image: none;
width: 100%;
position: relative;
text-align: center;
overflow: hidden;
}
ul#menu li a {
padding: 12px 0 9px;
margin: 0;
line-height: 14px;
font-size: 14px;
font-weight: 600;
text-decoration: none;
display: block;
color: #000;
background-color: #fff;
border-bottom: solid #013490 4px;
border-top: solid #013490 1px;
border-left: solid #013490 1px;
}
ul#menu li:last-child a {
border-right: solid #013490 1px;
}
ul#menu li ul {
position: absolute;
top: 46px;
left: -30px;
width: calc(960px/7);
}
ul#menu li ul li {
overflow: hidden;
background: #fff;
margin: 0;
width: 100%;
height: 0;
border: none;
padding: 0;
}
ul#menu li ul li a {
border: solid #013490 1px;
margin: 0;
line-height: 13px;
font-size: 13px;
}
ul#menu li:hover > ul > li {
overflow: visible;
height: auto;
z-index: 9999;
}
ul#menu li:hover {
overflow: visible;
}
/* footer */
footer {
padding: 6px 0;
font-size: 13px;
text-align: center;
color: #fff;
width: 100%;
min-width: 960px;
clear: both;
background: #013490;
border-top: solid 4px #e8e6e7;
}
/* ページトップへ戻る */
#page-top {
display: block;
position: fixed;
z-index: 9999;
bottom: 10px;
right: 10px;
width: 70px;
height: 45px;
padding: 15px 10px 10px;
background: #000;
color: #fff;
text-align: center;
text-decoration: none;
font-size: 20px;
line-height: 20px;
clear: both;
opacity: .7;
}
#page-top:hover {
opacity: .8;
}
.arrow {
position: absolute;
width: 20px;
height: 20px;
border: 2px solid #000;
border-left-color: #fff;
border-top-color: #fff;
top: 20px;
left: 26px;
transform: rotate(45deg);
}

@media print {
#page-top {
display: none;
}
}
/* top */
#mainvisual {
width: 960px;
margin: 0 auto;
display: table;
}
#mainvisual .mvleft {
display: table-cell;
width: 57%;
}
#mainvisual .mvright {
display: table-cell;
width: 43%;
}
#mainvisual img {
width: 100%;
}
#news {
background: #fff;
float: left;
width: 48%;
margin: 10px 0 0;
}
#news h3 {
margin: 20px 0 0;
}
#news ul {
margin: 0;
padding: 10px 5px 5px 0;
list-style: none;
text-align: left;
line-height: 1.4;
overflow: auto;
height: 490px;
width: 100%
}
#news ul li {
background-image: none;
padding: 11px 0 11px;
}
#side {
float: right;
text-align: left;
width: 48%;
margin: 10px 0 0 10px;
background: #fff;
}
#side h2 {
border: solid 1px #354cab;
color: #354cab;
margin: 20px 0 15px;
padding: 8px 0 8px 26px;
background-color: #fff;
background: url(../image/h2.png) no-repeat 10px 12px;
background-size: 10px 10px;
}
#side p, #side ul {
margin: 0 0 0 20px;
}
/* main */
main {
width: 960px;
min-height: 570px;
margin: 0 auto;
padding: 0 0 30px;
text-align: left;
}
main h1 {
margin: 23px auto;
padding: 13px 20px 13px;
font-size: 28px;
line-height: 28px;
color: #fff;
text-align: left;
font-weight: 900;
background-color: #012192;
}
h2 {
margin: 35px 0 20px;
padding: 8px 0 8px 26px;
font-size: 17px;
line-height: 20px;
font-weight: 900;
border: solid 1px #354cab;
color: #354cab;
background-color: #fff;
background: url(../image/h2.png) no-repeat 10px 12px;
background-size: 10px 10px;
clear: both;
}
h3 {
width: 100%;
margin: 25px 20px 18px 0;
padding: 8px 0 8px 10px;
font-size: 17px;
line-height: 20px;
text-align: left;
font-weight: 900;
border-left: solid 4px #002394;
background: #e9e9e9;
clear: both;
}
h4 {
margin: 20px 15px 10px;
padding: 5px 0 0;
font-size: 15px;
line-height: 17px;
font-weight: 600;
color: #354cab;
}
h5 {
margin: 15px 15px 5px 20px;
font-size: 14px;
font-weight: 600;
}
p {
margin: 5px 15px 0 20px;
padding: 0;
color: #000;
}
/* list */
ul {
margin: 0 15px 5px 30px;
padding: 0;
}
ul li {
list-style: none;
padding: 2px 0 2px 16px;
background-position: 0 6px;
background-image: url(../image/li.png);
background-repeat: no-repeat;
background-size: 11px 11px;
}
ol {
margin: 5px 15px 5px 45px;
padding: 0;
}
ol li {
margin: 0;
padding: 2px 0;
}
li ol {
margin: 5px 0 0 20px;
}
/* table */
table {
padding: 0;
margin: 10px 10px 10px 25px;
}
table th {
border: 1px solid #CCC;
padding: 7px 5px 5px;
font-weight: normal;
text-align: center;
background-color: #F2F2F2;
}
table td {
border: 1px solid #CCC;
padding: 7px 5px 5px;
}
table td p {
margin: 0;
}
table.noborder th {
border: none;
}
table.noborder td {
border: none;
}
table.center {
margin: 10px auto;
text-align: left;
}
table.color {
width: 97%;
margin: 15px auto;
border-top: 1px dotted #9D9D9D;
}
table.color th {
border-left: none;
border-right: none;
border-top: 1px dotted #9D9D9D;
border-bottom: 1px dotted #9D9D9D;
padding: 8px;
font-weight: bold;
text-align: center;
color: #FFF;
background: #67ADB8;
}
table.color td {
padding: 8px;
border: none;
border-bottom: 1px dotted #9D9D9D;
vertical-align: top;
}
table.color tr:nth-child(odd) {
background-color: #eff6eb;
}
/* figure */
figure {
margin: 10px 15px 15px;
}
figure.center {
margin: 10px auto 15px;
}
figure.fr {
float: right;
margin: 0 15px 15px 15px;
}
figure.fl {
float: left;
margin: 0 15px 15px 20px;
}
figure img, video {
margin: 3px 0;
width: 100%;
}
figcaption {
font-size: 0.85em;
line-height: 1.1;
padding: 0 5px;
text-align: left;
}
/* utility */
a.pdf {
background: url(../image/ic_pdf.png) right no-repeat;
padding-right: 24px;
-moz-background-size: 20px 20px;
background-size: 20px 20px;
}
a.blank {
background: url(../image/ic_blank.png) right no-repeat;
padding-right: 20px;
-moz-background-size: 18px 17px;
background-size: 18px 17px;
}
.mb0 {
margin-bottom: 0 !important;
}
.mb05 {
margin-bottom: 5px !important;
}
.mb10 {
margin-bottom: 10px !important;
}
.mb15 {
margin-bottom: 15px !important;
}
.mb20 {
margin-bottom: 20px !important;
}
.mb25 {
margin-bottom: 25px !important;
}
.mb30 {
margin-bottom: 30px !important;
}
.mb40 {
margin-bottom: 40px !important;
}
.mt0 {
margin-top: 0 !important;
}
.mt05 {
margin-top: 5px !important;
}
.mt10 {
margin-top: 10px !important;
}
.mt15 {
margin-top: 15px !important;
}
.mt20 {
margin-top: 20px !important;
}
.mt25 {
margin-top: 25px !important;
}
.mt30 {
margin-top: 30px !important;
}
.w10 {
width: 10%;
}
.w15 {
width: 15%;
}
.w20 {
width: 20%;
}
.w25 {
width: 25%;
}
.w24 {
width: 24%;
}
.w30 {
width: 30%;
}
.w35 {
width: 35%;
}
.w40 {
width: 40%;
}
.w45 {
width: 45%;
}
.w50 {
width: 50%;
}
.w55 {
width: 55%;
}
.w60 {
width: 60%;
}
.w70 {
width: 70%;
}
.w75 {
width: 75%;
}
.w80 {
width: 80%;
}
.w90 {
width: 90%;
}
.w95 {
width: 95%;
}
.w100 {
width: 100%;
}
.clear {
clear: both;
}
.center {
text-align: center;
text-indent: 0;
}
.right {
text-align: right;
}
.left {
text-align: left;
}
.small {
font-size: 0.85em;
}
hr {
border: 1px dotted #666666;
margin: 15px 15px;
clear: both;
}
blockquote {
margin: 5px 0 5px 9px;
}
blockquote p {
text-indent: 0;
}
/* 学科紹介 */
.table_intro {
margin: 20px;
display: table;
}
.cell {
display: table-cell;
vertical-align: middle;
padding: 0 2%;
}
.cell img {
width: 100%;
}
/* 教員紹介 */
.frame_r {
width: 73%;
float: right;
margin: 0 15px 15px 15px;
}
ul.cnav {
list-style-type: none;
margin: 15px 2% 20px;
padding: 0;
}
ul.cnav li {
width: 22%;
height: auto;
margin: .5em 1%;
padding: 0;
background-image: none;
text-align: center;
color: #FFF;
background: #012192;
display: inline-block;
vertical-align: top;
border-radius: 25px;
box-shadow: 2px 2px 4px #bbb;
}
ul.cnav li a {
width: auto;
display: block;
margin: 0;
padding: .35em 1em .3em;
}
ul.cnav li a:link, ul.cnav li a:visited {
color: #FFF;
text-decoration: none;
}
ul.cnav li a:active, ul.cnav li a:hover {
color: #FFF;
text-decoration: none;
opacity: 0.5;
-webkit-transition: all 0.5s ease;
-moz-transition: all 0.5s ease;
}
/* 在学生の声 */
.voice_wrapper {
display: flex;
flex-wrap: wrap;
width: 100%;
}
.voice {
width: calc(100%/3);
text-align: center;
margin: 0 0 15px;
}
.voice img {
height: 200px;
margin: 0 auto 5px;
}
.voice h3 {
width: 100%;
margin: 0 0 5px;
padding: 0;
border: none;
background: #fff;
text-align: center;
font-size: 15px;
}
.voice ul.cnav {
margin: 0 auto;
}
.voice ul.cnav li {
width: 46%;
}
.open {
cursor: pointer;
}
.open:active, .open:hover {
opacity: .6;
}
.hidecontent {
display: none;
}
.hidecontent p {
text-align: left;
}
/* 研究者の方へ */
.researcher_wrapper {
display: flex;
flex-wrap: wrap;
width: 100%;
}
.researcher {
width: calc(100%/3);
text-align: center;
}
.researcher img {
width: 80%;
margin: 0 auto;
border: 1px solid #000;
}
.researcher h4 {
width: 100%;
margin: 0 0 5px;
}
.researcher ul.cnav li {
width: 46%;
}
@media only screen and (max-width: 480px) {
body {
}
#sb-site {
width: 100% !important;
background: #fff;
}
.sp {
display: block !important;
}
.pc {
display: none !important;
}
#header_up {
min-width: initial;
min-width: auto;
}
#h_nav {
width: 100%;
}
#lang {
max-width: 33%;
}
.h_nav {
max-width: 33%;
}
header {
width: 100%;
}
header h1 img {
width: 80%;
height: auto;
margin: 5px 5px 10px;
}
nav {
display: none;
}
ul#sp_menu {
margin: 5px;
display: block;
}
ul#sp_menu li {
margin: 0;
padding: 7px 0 0;
background-image: none;
width: 100%;
position: relative;
text-align: center;
overflow: hidden;
}
ul#sp_menu li a {
padding: 12px 0 9px;
margin: 0;
line-height: 14px;
font-size: 14px;
font-weight: 600;
text-decoration: none;
display: block;
color: #000;
border: solid #013490 1px;
background: #fff;
}
ul#sp_menu li ul {
position: static;
}
ul#sp_menu li ul li {
overflow: hidden;
background: #fff;
margin: 0;
width: 100%;
height: 0;
border: none;
padding: 0;
}
ul#sp_menu li ul li a {
border: solid #013490 1px;
margin: 0;
line-height: 13px;
font-size: 13px;
}
ul#sp_menu li:hover > ul > li {
overflow: visible;
height: auto;
z-index: 9999;
}
ul#sp_menu li:hover {
overflow: visible;
}
#toggle {
display: block;
position: absolute;
top: 14vw;
right: 4%;
background: #002097;
padding: 3px 0 2px;
cursor: pointer;
z-index: 9999;
}
#toggle.en {
top: 10vw;
right: 3%;
}
#toggle ul {
margin: 0;
padding: 0;
}
#toggle ul li {
margin: 0;
padding: 0;
background: none;
}
.sb-slidebar {
display: block;
background: #002097 !important;
}
.css-bar {
display: inline-block;
position: relative;
margin: 0 6px 3px;
padding: 0;
background: #fff;
}
.css-bar, .css-bar:before, .css-bar:after {
width: 30px;
height: 3px;
}
.css-bar:before, .css-bar:after {
display: block;
content: "";
position: absolute;
top: 50%;
left: 0;
background: #fff;
}
.css-bar:before {
margin-top: -8px;
}
.css-bar:after {
margin-top: 5px;
}
html.sb-active #sb-site, .sb-toggle-left, .sb-toggle-right, .sb-open-left, .sb-open-right, .sb-close {
cursor: pointer;
}
#toggle p {
margin: 2px auto 2px;
padding: 0;
font-size: 11px;
color: #fff;
text-indent: 0;
font-family: Arial, Helvetica, sans-serif;
line-height: 1;
text-align: center;
}
footer {
min-width: initial;
min-width: auto;
}
#mainvisual {
width: 100%;
}
#news {
float: none;
width: 100%;
}
#news ul {
height: 200px;
padding: 10px;
}
#side {
float: none;
width: 100%;
margin: 10px 0 20px;
}
#side p {
margin: 0 5px;
}
main {
width: 100%;
float: none;
min-height: 300px;
overflow: hidden;
}
main h1 {
padding: 10px 3% 8px;
font-size: 21px;
margin: 0 auto 15px;
}
h2 {
margin: 20px 0 10px;
}
h3 {
font-size: 16px;
margin: 15px auto;
padding: 8px 2%;
width: auto;
}
h4 {
font-size: 15px;
margin: 10px 2%;
padding: 0;
width: 96%;
}
h5 {
font-size: 14px;
margin: 10px 2% 5px;
padding: 0;
width: 96%;
}
p {
margin: 5px 2%;
}
ul {
margin: 5px 2% 5px 5%;
}
ul li {
background-position: 0 6px;
}
ol {
margin: 5px 2% 5px 8%;
}
table {
width: 95%;
margin: 5px auto 10px;
}
table td {
word-break: break-all;
}
figure {
width: 60%;
margin: 10px auto;
}
figure.fl, figure.fr, figure.center {
float: none;
width: 90%;
margin: 10px auto;
text-align: center;
}
figure img, video {
width: 95%;
margin: 0 auto 3px;
}
figcaption {
padding: 0 2%;
}
.mb0sp {
margin-bottom: 0 !important;
}
.mb05sp {
margin-bottom: 5px !important;
}
.mb10sp {
margin-bottom: 10px !important;
}
.mb15sp {
margin-bottom: 15px !important;
}
.mb20sp {
margin-bottom: 20px !important;
}
.mb25sp {
margin-bottom: 25px !important;
}
.mb30sp {
margin-bottom: 30px !important;
}
.mb40sp {
margin-bottom: 40px !important;
}
.mt0sp {
margin-top: 0 !important;
}
.mt05sp {
margin-top: 5px !important;
}
.mt10sp {
margin-top: 10px !important;
}
.mt15sp {
margin-top: 15px !important;
}
.mt20sp {
margin-top: 20px !important;
}
.mt25sp {
margin-top: 25px !important;
}
.mt30sp {
margin-top: 30px !important;
}
.w05sp {
width: 05% !important;
}
.w10sp {
width: 10% !important;
}
.w15sp {
width: 15% !important;
}
.w20sp {
width: 20% !important;
}
.w25sp {
width: 25% !important;
}
.w30sp {
width: 30% !important;
}
.w35sp {
width: 35% !important;
}
.w40sp {
width: 40% !important;
}
.w45sp {
width: 45% !important;
}
.w50sp {
width: 50% !important;
}
.w55sp {
width: 55% !important;
}
.w60sp {
width: 60% !important;
}
.w65sp {
width: 65% !important;
}
.w70sp {
width: 70% !important;
}
.w75sp {
width: 75% !important;
}
.w80sp {
width: 80% !important;
}
.w85sp {
width: 85% !important;
}
.w90sp {
width: 90% !important;
}
.w95sp {
width: 95% !important;
}
.w100sp {
width: 100% !important;
}
#page-top {
bottom: 25px;
right: 10px;
}
.xscroll {
width: 100%;
overflow-x: auto;
}
.xscroll table {
width: 900px;
margin: 10px 2%;
}
/* 学科紹介 */
.table_intro {
display: block;
}
.cell {
display: block;
margin: 0 auto;
}
.cell img {
margin: 5px 0;
}
/* 教員紹介 */
.frame_r, .frame_r2 {
width: 100%;
float: none;
margin: 0 auto 15px;
}
ul.cnav li {
width: 47%;
}
/* 研究者の方へ */
.researcher {
width: 100%;
}
/* 在学生の声 */
.voice {
width: 100%;
}
.voice img {
height: auto;
width: 70%;
}
}