@charset "UTF-8";

/*-------------------- div --------------------*/
.flex_w, .flex2, .flex3, .flex4 {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
.flex_w > div, .flex_w > p {
	padding-right: 1em;
}

.flex2 > div, .flex2 > p {
	flex: 1 1 auto;
	width: 50%;
	padding-right: 1em;
}
.flex3 > div, .flex3 > p {
	flex: 0 0 auto;
	width: calc(100% / 3);
	justify-content: space-between;
	padding-right: 1em;
}
.flex4 > div, .flex4 > p {
	flex: 0 0 auto;
	width: 25%;
	padding: 10px;
}
.flex_w_end {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-end;
	 justify-content: flex-end;
}

.flex4 img {
	width: 100%;
}
/*-------------------- box --------------------*/
.bg_box {
	width: 100%;
	max-width: 640px;
	background-color: #ede1e4;
	padding: 10px 20px;
	border-radius: 10px;
	margin: 20px auto;
}
.gray_box {
	width: 100%;
	background-color: #eee;
	padding: 10px 20px;
	border-radius: 4px;
	border: solid 1px #ccc;
	margin: 20px auto;
}
.bg_box h5, .gray_box h5 {
	padding-top: 8px;
	border-top: none;
	margin: 0 0 20px;
}
/*-------------------- wp image --------------------*/
.alignleft {
	float: left;
	padding: 0 20px 10px 0;
	width: 50%;
	max-width: 320px;
}

.alignright {
	float: right;
	padding: 0 0 10px 20px;
	width: 50%;
	max-width: 320px;
}
.aligncenter {
	display: block;
	padding: 20px 10px;
	margin: 0 auto;
	width: 100%;
	max-width: 640px;
}
.alignnone {
	padding: 20px 10px;
	width: 100%;
}
.alignright img, .alignleft img, .aligncenter img, .alignnone img {
	width: 100%;
	height: auto;
}
.wp-caption {
	padding: 10px 5px 20px;
	width: 100%;
}
.flex2 .wp-caption {
	padding: 10px 15px 20px;
	width: 50%;
}
.wp-caption.alignnone {
	padding: 10px 5px;
	width: 100%;
}

.flex2 .wp-caption.alignnone {
	padding: 10px 15px 20px;
	width: 50%;
}

.wp-caption.alignleft {
	padding: 0 20px 20px 0;
	width: 50% !important;
	max-width: 320px !important;
}
 
.wp-caption.alignright {
	padding: 0 0 20px 20px;
	width: 50% !important;
	max-width: 320px !important;
}
.wp-caption.aligncenter {
	display: block;
	padding: 5px;
	margin: 0 auto 10px;
	width: 100%;
	max-width: 640px;
}
.wp-caption img {
    border: 0 none;
    height: auto;
    margin-bottom: 3px;
    padding: 0;
    width: 98.5%;
}
 
.wp-caption p.wp-caption-text {
    margin: 0;
    padding: 5px;
    font-size:12px;
    line-height:1.2;
}
/*-------------------- 学科紹介 image --------------------*/
.department_btn {
    padding-left: 10px;
	margin-bottom: 30px;
}

.department_btn img {
	width: 100%;
	height: auto;
}

.stu_photo {
    float: right;
    padding: 0 0 10px 20px;
    width: 50%;
    max-width: 300px;
}
.stu_photo p {
    line-height:0;
    margin-bottom: 0;
}
.stu_photo img {
    width: 100%;
    height: auto;
    border-radius: 50%;
    padding: 0;
    line-height:0;
}
.stu_cap {
    margin-bottom: 20px;
    padding: 6px 0 0 40px;
    font-size:12px;
    line-height:1.2  !important;
}
.stu_cap img {
    width: 105px;
    height: 18px;
    border-radius: 0;
    margin-top: 4px;
}
/*-------------------- lab image --------------------*/
.lab_photo {
    margin-bottom: 0;
    line-height:0;
    padding: 4px 0 0 30px;
}

.lab_photo img {
	width: 100%;
	height: auto;
}
.lab_cap {
    margin-bottom: 20px;
    padding: 6px 0 6px 36px;
    font-size:12px;
    line-height:1.2;
}
/*-------------------- link --------------------*/
.link_base {
	position: relative;
	padding: 6px 10px 6px 16px;
	margin-right: 10px;
}
.link_base a {
	color: #000;
}
.link_base a:hover {
	color: #bf5a63;
}
.link_base:before {
	border-right: 3px solid #c96871;
	border-top: 3px solid #c96871;
	height: 6px;
	left: 0;
	top: 12px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 6px;
	content: "";
	display: inline-block;
	position: absolute;
}

.link_anchor {
	position: relative;
	padding: 3px 10px 3px 14px;
	margin-right: 10px;
	margin-bottom: 4px;
}
.link_anchor a {
	color: #000;
}
.link_anchor a:hover {
	color: #bf5a63;
}
.link_anchor:before {
	border-right: 2px solid #c96871;
	border-bottom: 2px solid #c96871;
	height: 6px;
	left: 0;
	top: 8px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 6px;
	content: "";
	display: inline-block;
	position: absolute;
}


.btn  {
	display: block;
	margin: 10px 0;
}
.link_box  {
	position: relative;
	padding:8px 12px 8px 24px;
	border: 1px solid #dcc6c8;
	color: #000;
	margin:0 10px;
}
a.link_box {
	color: #000;
}
a.link_box:hover {
	background-color: #fff3f4;
}
.link_box:before {
	border-right: 3px solid #c96871;
	border-top: 3px solid #c96871;
	height: 6px;
	left: 8px;
	top: 11px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	width: 6px;
	content: "";
	display: inline-block;
	position: absolute;
}
.b_bg_link  {
	position: relative;
	padding: 9px 20px;
	background-color: #983654;
	line-height: 1;
	margin:0 10px;
}
a.b_bg_link {
	color: #fff;
}
a.b_bg_link:hover {
	background-color: #be5173;
}

.b_bg_link:before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: middle;
	margin-right: 8px;
}


b_bg_link_anchor  {
	position: relative;
	padding: 9px 8px 9px 17px;
	background-color: #ede1e4;
	line-height: 1;
	margin:0;
}
a.b_bg_link_anchor {
	color: #000;
}
a.b_bg_link_anchor:hover {
	background-color: #eed0d8;
}

.b_bg_link_anchor:before {
	border-right: 2px solid #c96871;
	border-bottom: 2px solid #c96871;
	width: 4px;
	height: 4px;
	left: 6px;
	top: 12px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: "";
	display: inline-block;
	position: absolute;
}


.link_outside {
  text-decoration: none;
  line-height: 150%;
  padding: 0 0 8px 18px;
  margin: 10px;
  background: url(../image/i_outlink.png) no-repeat 0px 4px;
  background-size: 14px 14px;
}
.link_outside a {
  color: #000;
}
.link_outside a:hover {
  color: #f9929c;
}

.link_pdf {
  text-decoration: none;
  line-height: 150%;
  padding: 2px 0 8px 30px;
  margin: 10px;
  background: url(../image/i_pdf.png) no-repeat top left;
  background-size: 24px 24px;
}
.link_word {
  text-decoration: none;
  line-height: 150%;
  padding: 2px 0 8px 30px;
  margin: 10px;
  background: url(../image/i_word.png) no-repeat top left;
  background-size: 24px 24px;
}
.link_excel {
  text-decoration: none;
  line-height: 150%;
  padding: 2px 0 8px 30px;
  margin: 10px;
  background: url(../image/i_excel.png) no-repeat top left;
  background-size: 24px 24px;
}
.link_file {
  text-decoration: none;
  line-height: 150%;
  padding: 2px 0 8px 30px;
  margin: 10px;
  background: url(../image/i_file.png) no-repeat top left;
  background-size: 24px 24px;
}

.link_lab a {
  text-decoration: none;
  line-height: 1;
  margin: 20px 10px 30px;
  border: 1px solid #dcc6c8;
  color: #000;
  display: block;
  padding:12px 10px 11px 30px;
  background: #f5f2f2 url(../image/i_outlink.png) no-repeat 8px 12px;
  background-size: 14px 14px;

}
.link_lab a:hover {
  color: #c36770;
  background-color: #fcf8f8;
}



/*-------------------- list --------------------*/
#contents ul li {
	list-style: none;
	position: relative;
	margin: 0 0 0.6em 1.6em;
}
#contents ul li:after {
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: -1.2em;
	width: 6px;
	height: 6px;
	background-color: #fff;
	border: 2px solid #a16975;
	border-radius: 100%;
}
#contents ol {
	counter-reset: li;
	margin: 1em 0;
}

#contents ol li {
	list-style: none;
	position: relative;
	margin: 0 0 0.8em 2em;
}

#contents ol > li:before {
	counter-increment: li; 
	content: counter(li);
	margin-right: 1em;
	background: #666;
	color: #ffffff;
	border-radius: 50%;
	text-align: center;
	width: 1.4em;
	height: 1.4em; 
	position: absolute;
	left: -1.8em;
	top: 2px;
	line-height:1.4;
}

/*-------------------- table --------------------*/

table {
  margin: 5px 0;
  border-collapse: collapse;
  line-height:1.4;
  width:100%;
}

table th {
  border: solid 1px #d9d9d9;
  background: #faf4f5;
  font-weight: bold; 
  text-align: left;
  vertical-align: middle;
  padding: 10px;
}
table td {
  border: solid 1px #d9d9d9;
  padding:10px;
  background: #fff;
}
table td.bg_pink {
  border: solid 1px #d9d9d9;
  background: #faf4f5;
  padding:10px;
}
table td.bg_gray {
  border: solid 1px #d9d9d9;
  background: #eee;
  padding:10px;
  vertical-align: top;
}
table.alignleft {
    float: left;
    max-width: 460px;
    margin: 5px 20px 20px 0;
    width: 50%;
}

table.alignright {
    float: right;
    max-width: 460px;
    margin: 5px 0 20px 20px;
    width: 50%;
}
table.aligncenter {
    clear: both;
   border: none;
    margin: 5px auto 20px;
    max-width: 800px;
    padding: 0;
    width: auto;
    display: table;
}
table td.noline {
  border: none;
  padding:10px;
}

/*-------------------- dl --------------------*/

.history dl {
    clear: both;
    width: 100%;
}
.history dt {
    float: left;
    clear: both;
    width: 8em;
    font-weight: 600;
    padding-top:0.5em;
    border-top:solid 2px #e0b8c2;
    padding-left:0.5em;
    /*text-align: right;*/
}
.history dd {
    border-top:solid 1px #d9d9d9;
    margin: 0 0 1em 1em;
    padding: 0.5em 0 0 8em;
}

/*-------------------- TOPICS --------------------*/

#topics {
	flex: 0 1 75%;
	width: 75%;
	max-width: 75%;  /* Bug IE */
	padding: 30px 30px 30px 5px;
	position: relative;
}
.topics #topics {
	flex: 1 1 0%;
	width: calc(100% - 250px);
	padding: 0 0 30px 0;
}

#topics .topics_list {
	width: 100%;
	overflow-y: auto;
	max-height: 501px;
	border-top: solid 1px #ddd;
	list-style-type: none;
}

.topics #topics .topics_list {
	max-height: none;
}
#topics .topics_list li {
	width: 100%;
	margin-top: -1px;
	padding-left: 80px;
	border-bottom: solid 1px #ddd;
	position: relative;
	min-height: 80px;
	display: block;
	color: #666;
}


#topics .topics_list li:before {
	position: absolute;
	top: 10px;
	left: 10px;
	width: 60px;
	height: 60px;
	content: '';
	background-image: url('../image/i_t_info.png');
	background-size: cover;
}

#topics .topics_list li.event:before {
	background-image: url('../image/i_t_event.png');
}

#topics .topics_list li.recruit:before {
	background-image: url('../image/i_t_recruit.png');
}

#topics .topics_list li.exam:before {
	background-image: url('../image/i_t_exam.png');
}

#topics .topics_list li.research:before {
	background-image: url('../image/i_t_research.png');
}

#topics .topics_list li.school:before {
	background-image: url('../image/i_t_school.png');
}

#topics .topics_list li.alumni:before {
	background-image: url('../image/i_t_alumni.png');
}
#topics .topics_list li.important:before {
	background-image: url('../image/i_t_important.png');
}
#topics .topics_list a {
	width: 100%;
	display: block;
	text-decoration: none;
	color: #333;
}
#topics .topics_list li a:hover {
	background-color: #eedde0;
	display: block;
}
#topics .topics_list .topi_day,#topics .topics_list .topi_day a {
	display: block;
	font-size: 14px;
	padding: 16px 0 0 16px;
	color: #777;
	margin-bottom: 8px;
}

#topics .topics_list .topi_txt {
	display: block;
	font-size: 14px;
	padding: 0 0 16px 16px;
	color: #333;
	margin-bottom: 0;
}
#topics .list_header {
	position: relative;
	font-size: 40px;
	font-family: 'Roboto', sans-serif;
	line-height: 1em;
	margin: 140px 0 0 0;
	color: #666;
}
#topics select {
	float:right;
	width: 150px;
/*
	-webkit-appearance: none;
	 -moz-appearance: none;
	appearance: none;
*/
	font-size: 14px;
	margin-bottom: 15px;
	padding: 6px;
	border: 1px solid #ccc;
	background: #f6f6f6;
	clear:both;
}
#back {
	clear:both;
}
/*-------------------- hitokoto --------------------*/
/* #topics #hitokoto a {
	display: block;
	position: relative;
	width: 100%;
	overflow-y: auto;
	min-height: 50px;
	padding: 3.6em 30% 4em 48%;
	margin-bottom: 30px;
	background: url(../image/bg_hitokoto.jpg) no-repeat 0 0;
	background-size: 100% auto;
} */
#topics #hitokoto {
	position: relative;
	width: 100%;
}
#topics #hitokoto a {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height:100%;
	min-height: 124px;
	color: #fff;
	padding: 3.6em 30% 4em 48%;
	background: url(../image/bg_hitokoto_n.jpg) no-repeat 0 0;
	background-size: 100% auto;
}
#topics #hitokoto a:hover {
	color: #fff;
	opacity: 0.6;
}
#hitokoto_d {
	color: #fff;
	font-size: 12px;
	line-height: 0;
}
#hitokoto_n {
	color: #fff;
	font-size: 16px;
	line-height: 1;
}

/*-------------------- box --------------------*/

.line_box {
	border: 1px solid #e3e3e3;
	margin: 20px 0px;
	padding: 15px;
}
/*-------------------- sitemap --------------------*/

#contents ul#sitemap_list {
	margin-bottom: 30px;
	padding: 0 10px;
}



#contents ul#sitemap_list li {
	padding-top: 4px;
	margin: 0.6em 0;
	list-style-type: none;
	position: relative;
	border-top: solid 1px #ddd;
}

#contents ul#sitemap_list li:after {
	content:none;
}
#contents ul#sitemap_list li ul {
	margin: 0 0 1em 0.6em;
	padding: 0;
}

#contents ul#sitemap_list ul li:after {
	content:none;
}
#contents ul#sitemap_list ul {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

#contents ul#sitemap_list li li {
	flex: 1 1 auto;
	width: calc(50% - 30px);
	justify-content: space-between;
	padding-right: 0.5em;
}

#contents ul#sitemap_list li li {
	position: relative;
	margin: 0 0 0.6em 0.4em;
	border-top: none;
}
#contents ul#sitemap_list li a, #sitemap_list li li a {
	color: #000;
	background: none;
	display: inline;
	padding: 0 0 0 14px;
	border: none;
}
#contents ul#sitemap_list li a:hover, #sitemap_list li li a:hover {
	background-color: #fff3f4;
}
#contents ul#sitemap_list li a:before, #sitemap_list li li a:before {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 4px;
	height: 4px;
	margin-top: -2px;
	border-top: 2px solid #c96871;
	border-right: 2px solid #c96871;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

/*-------------------- staff --------------------*/
.mw_wp_form dl {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	margin: 0.4em 0;
}
.mw_wp_form dd {
	-webkit-flex-basis: 90px;
	flex-basis: 90px;
	font-weight: 600;
}
.mw_wp_form dd:before {
    color: #e9c2ca;
    content: "■";
}
.mw_wp_form dt {
	-webkit-flex-basis: 210px;
	flex-basis: 210px;
	-webkit-flex-grow: 1;
	flex-grow: 1;
}
.mw_wp_form input[type="text"], .mw_wp_form input[type="email"] {
	width: 50%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0.2em;
	margin-right: 0.4em;
	border: 1px solid #ddd;
	background-color: #f9f9f9;
}
.mw_wp_form textarea {
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0.5em;
	border: 1px solid #ddd;
	background-color: #f9f9f9;
}
.mw_wp_form select {
	flex: 1 0 auto;
	margin-right: 0.4em;
}
.mw_wp_form .nowrap {
	display: -webkit-flex;
	display: flex;
}
.mw_wp_form .error {
	color: red;
	flex: 1 0 auto;
}
.hidden_info {
    border: 1px solid #dacccf;
    border-radius: 4px;
    margin: 2em 0;
    padding: 2em;
    position: relative;
}
.hidden_info::before {
    background-color: #fff;
    color: #bc939b;
    content: "管理のための情報です。表示しません。";
    font-weight: 400;
    left: 1em;
    padding: 0 .5em;
    position: absolute;
    top: -1em;
}
.mw_wp_form p {
	text-align:center;
}

/* MORE ******************************************************/
.more_box {
    margin: 2em auto 1em;
    width:100%;
}
.more_title {
    text-align: center;
    font-size: 1.2em;
    font-weight: 500;
    background-color: #fff;
    border: solid 1px #e3e3e3;
    line-height: 1.4em;
    margin: 0;
    padding: 8px 36px 8px 18px;
    display: block;
    position: relative;
}

.more_title:after {
	content:"";
	display: block;
	width:12px;
	height:12px;
	border-top:2px solid #333;
	border-right:2px solid #333;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position: absolute;
	top: 12px;
	right:15px;
}
.more_title.opened:after {
	-webkit-transform: rotate(315deg);
	transform: rotate(315deg);
	top: 18px;
}

.more_title:hover {
    background-color: #faf4f5;
}

.more_content {
    display: none;
    font-weight: normal;
    padding: 20px;
    position: relative;
    border: solid 1px #e3e3e3;
    background-color: #e3e3e3;
}

/************************* MOVIE **************************/

.movie_wrap {
     width: 100%;
     max-width: 854px;
    margin: 0 auto;
}
.movie_box {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie_box iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

/* FAQ ******************************************************/

.qa {
    margin-left: 20px;
    width:calc(100% - 20px);
}
.qa_q {
    background-color: #e3e3e3;
    line-height: 1.4em;
    border-top-right-radius: 6px;  
    border-top-left-radius: 6px;  
    border-bottom-left-radius: 6px;  
    -webkit-border-top-right-radius: 6px;  
    -webkit-border-top-left-radius: 6px;  
    -webkit-border-bottom-left-radius: 6px;  
    -moz-border-radius-topright: 6px;  
    -moz-border-radius-topleft: 6px;  
    -moz-border-radius-bottomleft: 6px; 
    margin: 0;
    padding: 8px 36px 8px 52px;
    display: block;
    position: relative;
}
.qa_q_pink {
    background-color: #eac1c9;
    line-height: 1.4em;
    border-top-right-radius: 6px;  
    border-top-left-radius: 6px;  
    border-bottom-left-radius: 6px;  
    -webkit-border-top-right-radius: 6px;  
    -webkit-border-top-left-radius: 6px;  
    -webkit-border-bottom-left-radius: 6px;  
    -moz-border-radius-topright: 6px;  
    -moz-border-radius-topleft: 6px;  
    -moz-border-radius-bottomleft: 6px; 
    margin: 0;
    padding: 8px 36px 8px 52px;
    display: block;
    position: relative;
}
.qa_q .q_no,.qa_q_pink .q_no {
    font-size:1.4em;
    line-height: 30px;
    text-align: left;
    color: #fff;
    left: 8px;
    top: 0;
    height: 30px;
    display: block;
    position: absolute;
    width: 56px;
    font-family: "Helvetica Neue","Helvetica","Arial",sans-serif;
    font-weight: 600;
    letter-spacing: 0.05em;
}
.qa_q:after,.qa_q_pink:after {
	content:"";
	display: block;
	width:12px;
	height:12px;
	border-top:2px solid #fff;
	border-right:2px solid #fff;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	position: absolute;
	top: 8px;
	right:15px;
}
.qa_q.opened:after,.qa_q_pink.opened:after {
	-webkit-transform: rotate(315deg);
	transform: rotate(315deg);
	top: 14px;
}

.qa_q:hover {
    background-color: #d9d7d8;
}
.qa_q_pink:hover {
    background-color: #dca6af;
}
.qa_a {
    background-color: #f5f5f5;
    border-bottom-right-radius: 6px;  
    border-bottom-left-radius: 6px;  
    -webkit-border-bottom-right-radius: 6px;  
    -webkit-border-bottom-left-radius: 6px;  
    -moz-border-radius-bottomright: 6px;  
    -moz-border-radius-bottomleft: 6px; 
    display: none;
    font-weight: normal;
    padding: 10px 15px 10px 52px;
    margin-left: 20px;
    position: relative;
}
.qa_a_pink {
    background-color: #f8eaed;
    border-bottom-right-radius: 6px;  
    border-bottom-left-radius: 6px;  
    -webkit-border-bottom-right-radius: 6px;  
    -webkit-border-bottom-left-radius: 6px;  
    -moz-border-radius-bottomright: 6px;  
    -moz-border-radius-bottomleft: 6px; 
    display: none;
    font-weight: normal;
    padding: 10px 15px 10px 52px;
    margin-left: 20px;
    position: relative;
}
.qa_a .a_no,.qa_a_pink .a_no {
    font-size:1.4em;
    line-height: 33px;
    text-align: left;
    color: rgba(0, 0, 0, 0.3);
    left: 8px;
    top: 8px;
    height: 32px;
    display: block;
    position: absolute;
    white-space: nowrap;
    width: 56px;
    font-family: "Helvetica Neue","Helvetica","Arial",sans-serif;
    font-weight: 600;
}
.qa table {
  margin: 5px 0;
  border-collapse: collapse;
  line-height:1.4;
  width:calc(100% - 15px);
}
.qa table td.bg_base {
  text-align: left;
  background-color:#faf3f4;
}
/*-------------------- media screen --------------------*/

@media only screen and (max-width: 960px) {

	.flex2 > div, .flex3 > div, .flex2 > p, .flex3 > p  {
		flex: 0 0 50%;
		width: 50%;
		padding-right: 1em;
	}
	#contents ul#sitemap_list li li {
		flex: 1 1 auto;
		width: calc(100% - 30px);
		justify-content: space-between;
		padding-right: 1em;
	}
	#topics .list_header {
		margin: 110px 0 0 0;
	}
	#topics #hitokoto a {
	padding: 2.4em 30% 2em 48%;
	min-height: 100px;
	}
	#hitokoto_d {
		font-size: 11px;
	}
	#hitokoto_n {
		font-size: 14px;
	}
}

@media only screen and (max-width: 740px) {
	#topics {
		flex: 1 1 100%;
		width: 100%;
		max-width: 100%;
		padding: 30px 1em 0;
	}
	.flex2 > div, .flex3 > div, .flex2 > p, .flex3 > p  {
		flex: 1 1 100%;
		width: 100%;
		padding: 0;
	}
	.mw_wp_form input[type="email"] {
		width: 100%;
	}
	#hitokoto_d {
		font-size: 11px;
	}
	#hitokoto_n {
		font-size: 14px;
	}

}

@media screen and (max-width: 599px) {
	.topics #topics {
		width: 100%;
		padding: 0 1em;
		-ms-flex-order:1;
		order:1;
	}
	.flex4 > div, .flex4 > p {
		flex: 0 0 50%;
		width: 50%;
		padding: 5px;
	}
	.flex_w > div, .flex_w_end > div  {
		width: 100%;
		padding: 0;
	}

	.lab_photo {
	    padding: 10px 0 0;
	}

	.lab_cap {
	    padding: 6px 5px;

	}
	.alignleft, .wp-caption.alignleft {
	    width: 100% !important;
	    padding: 0 0 5px 0;
	    max-width: 600px !important;
	}

	.alignright, .wp-caption.alignright {
	    width: 100% !important;
	    padding: 0 0 5px 0;
	    max-width: 600px !important;
	}
	.department_btn {
	    padding-left: 0;
	    margin-bottom: 10px;
	}
	.stu_photo {
	width: 100% !important;
	padding: 0 0 5px 0;
	max-width: 600px !important;
	margin-bottom: 30px;
	}
	.sp_half {
	float: right;
	padding: 0 0 5px 10px;
	width: 50% !important;
	}
	.table_box table {
		border-top: 1px solid #d9d9d9;
	}
	.table_box table td {
		display: block;
	}
	.table_box table th {
		display: block;
		border-top: none;
		border-bottom: none;
		width: 100%;
	}
	#contents ul#sitemap_list {
		padding: 0;
	}

	#contents ul#sitemap_list li ul {
		margin: 0 0 1em 0.5em;
		padding: 0;
	}
	#contents ul#sitemap_list li li {
		margin: 0 0 0.4em 0.2em;
	}

	#topics #hitokoto a {
	min-height: 60px;
	padding: 2em 28% 3em 38%;
	margin-bottom: 10px;
	background: url(../image/bg_hitokoto_sp_n.jpg) no-repeat 0 0;
	background-size: 100% auto;
	}
	#hitokoto_d {
	font-size: 11px;
	}
	#hitokoto_n {
	font-size: 13px;
	}
}
@media screen and (max-width: 414px) {
	#topics .list_header {
		margin: 72px 0 0 0;
	}
	#topics #hitokoto a {
	min-height: 60px;
	padding: 1.2em 28% 3em 36%;
	background: url(../image/bg_hitokoto_sp.jpg) no-repeat 0 0;
	background-size: 100% auto;
	}
	#hitokoto_d {
	font-size: 10px;
	}
}

@media screen and (min-width: 960px){	
  .img_pc{ display:block;}
  .img_pc_c{ display:block;}
  .img_sp { display:none; }
  .img_pc img{ width:100%;}
  .img_pc_c img{ 
	width:100%;
	max-width:800px;
	margin:10px auto;
	}
}
@media screen and (max-width: 960px){	
  .img_pc{ display:none;}
  .img_pc_c{ display:none;}
  .img_sp { display:block; }
  .img_sp img{ width:100%;}
}