@charset "utf-8";
/*-------------------------------------------------*/
/*(C) A.C.Planet Inc. All rights reserved.*/
/*--------------------------------------------------*/

@media screen and (max-width: 991px) and (min-width: 769px) {
body:not(.is-pc) #headercontainer {
    position: relative;
}
}

@media screen and (max-width: 768px) {
#headercontainer {
    position: relative;
}
}
/*メインビジュアル基本設定
----------------------------------------*/

#mainvisualcontainer::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    height: 1px;
    width: calc(100vw - 100px);
    left: 50%;
    background: #ffffff;
    transform: translateX(-50%);
}
#mainvisualcontainer {
    background: var(--main-color);
    position: relative;
}
.mv-intro {
    min-height: 248px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    height: 100%;
    padding-top: 60px;
    padding-bottom: 52px;
}
.beforeFadeIn {
    opacity: 0;
}
.fadeIn {
    animation-name: fadeIn;
    animation-fill-mode: backwards;
    animation-duration: .7s;
    animation-timing-function: ease-in-out;
    animation-direction: normal;
    animation-delay: 0.1s;
}
.fadeInLeft {
    animation-name: fadeInLeft;
    animation-fill-mode: backwards;
    animation-duration: .7s;
    animation-timing-function: ease;
    animation-direction: normal;
    animation-delay: 0.2s;
}
@keyframes fadeIn {
	 0% {
	 opacity: 0;
	}
	 100% {
	 opacity: 1;
	}
}
@keyframes fadeInLeft {
	 0% {
	 opacity: 0;
	 transform: translateX(-50px);
	}
	 100% {
	 opacity: 1;
	 transform: translateX(0);
	}
}
.mv-intro .mv-subtitle {
    font-size: 0.875rem;
    color: #ffffff;
    font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    margin-bottom: 12px;
}
.mv-intro h1 {
    font-size: 2.5rem;
    color: var(--sub-color02);
    font-weight: normal;
    margin-bottom: 0;
    animation-name: fadeInLeft;
    animation-fill-mode: backwards;
    animation-duration: .7s;
    animation-timing-function: ease;
    animation-direction: normal;
}
.mv-intro .parent-cat {
    color: #ffffff;
    margin-top: 36px;
}
.mv-intro .parent-cat .parent-cat-subtitle {
    font-size: 0.875rem;
    font-family: "Jost", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    margin-bottom: 3px;
}
.mv-intro .parent-cat .parent-cat-title {
    font-size: 1.25rem;
    margin-bottom: 0;
}

@media screen and (max-width: 991px) {
	#mainvisualcontainer {
	    margin-top: -1px;
	}
	#mainvisualcontainer::before {
	    display: none;
	}
}

@media screen and (max-width: 768px) {
	#mainvisualcontainer {
	}
	.mv-intro {
	    min-height: 134px;
	    padding-top: 20px;
	    padding-bottom: 20px;
	}
	.mv-intro .mv-subtitle {
	    font-size: 0.857rem;
	    margin-bottom: 5px;
	}
	.mv-intro .parent-cat {
	    margin-top: 20px;
	}
	.mv-intro .parent-cat .parent-cat-subtitle {
	    font-size: 0.714rem;
	    margin-bottom: unset;
	}
	.mv-intro .parent-cat .parent-cat-title {
	    font-size: 1rem;
	    margin-top: -2px;
	}
}
/*パンくずナビ
----------------------------------------*/
.pannav-area {
    padding-top: 15px;
    padding-bottom: 15px;
}
.pannav-area .pannavi {
    padding: 0;
    margin: 0;
    display: inline;
    flex-wrap: wrap;
    list-style: none;
    align-items: center;
    list-style: none;
    font-size: 0.875rem;
}
.pannav-area .pannavi li {
    display: inline;
    padding-right: 10px;
}
.pannav-area .pannavi a {
    position: relative;
    display: inline;
    text-decoration: none;
    color: #1F55AC;
}
.pannav-area .pannavi a::after {
    content: "";
    width: 20px;
    height: 1px;
    background: #333333;
    display: inline-block;
    margin-left: 10px;
    margin-bottom: 4px;
}
.pannav-area .pannavi a:hover {
    text-decoration: underline;
}

@media screen and (max-width: 768px) {
	#mainvisualcontainer + .pannav-area {
	    display: none;
	}
	.pannav-area {
	    padding-top: 6px;
	    padding-bottom: 6px;
	}
	.pannav-area .pannavi {
	    font-size: 0.857rem;
	}
	.pannav-area .pannavi li {
	    padding-right: 8px;
	}
	.pannav-area .pannavi a::after {
	    width: 15px;
	}
}
/*下層用基本設定
----------------------------------------*/

#mainconts {
}
section + section#department,
section + section#index{
	margin-top:100px;
}
/*下層メインコンテンツ
----------------------------------------*/

#main {
    margin-top: 62px;
    margin-bottom: 84px;
}
#main, #oc-main {
    min-height: 400px;
}
#main p {
    margin-top: 10px;
}

@media screen and (max-width: 768px) {
#main, #oc-main {
    min-height: 100px;
}
#main {
    margin-top: 48px;
    margin-bottom: 48px;
}
}

@media screen and (max-width: 568px) {
#main {
 margin-top: calc(100vw / 375 * 50);
 margin-bottom: calc(100vw / 375 * 50);
}
}
/*下層用サブメニュー
----------------------------------------*/

#subcontainer {
    background: var(--bg-color02);
}
#subcontents {
    padding-top: 50px;
    padding-bottom: 50px;
}
/*----- サブメニュー 見出し -----*/

#subcontents h2,
#subcontents p.subcontents-title {
    font-size: 1.125rem;
    color: var(--main-color);
    position: relative;
    padding-left: 20px;
    margin-bottom: 30px;
}
#subcontents h2::before,
#subcontents p.subcontents-title:before {
    content: "";
    position: absolute;
    left: 0;
    top: 9px;
    border: 1px solid var(--sub-color03);
    border-left: unset;
    border-top: unset;
    transform: rotate(135deg);
    width: 6px;
    height: 6px;
    transition: .3s;
}
#subcontents h2:hover::before,
#subcontents p.subcontents-title:hover::before {
    left: -4px;
}
#subcontents h2 a,
#subcontents p.subcontents-title a {
    text-decoration: none;
    font-weight: bold;
    color: var(--main-color);
}
/*----- サブメニュー -----*/

#submenu, .submenu {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding-left: 1em;
}
#submenu li {
 /*width:calc((100% - (18px * 3 )) / 4);*/
    padding: 1px 12px 1px 0;
}
#submenu li a, .submenu li a {
    text-decoration: none;
    color: #333333;
    padding-left: 18px;
    display: inline-block;
    position: relative;
}
#submenu li > a::before, .submenu li > a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    border: 1px solid var(--sub-color03);
    border-left: unset;
    border-top: unset;
    transform: rotate(-45deg);
    width: 6px;
    height: 6px;
    transition: .3s;
}
#submenu li > a:hover::before, .submenu li > a:hover::before {
    left: 4px;
}
#submenu li a:hover, .submenu li a:hover {
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
#submenu li > a::before, .submenu li > a::before {
    top: 7px;
}
}

/* 見出し設定
--------------------------------------------------*/


/*ページタイトル*/

#main h2, #oc-main h2 {
    color: var(--main-color);
    font-size: 2rem;
    padding-top: 16px;
    padding-bottom: 16px;
    font-weight: bold;
    margin-bottom: 25px;
    /*margin-top: 45px;*/
    margin-top: 60px;
    position: relative;
}
#main h2::after, #oc-main h2::after {
    content: "";
    position: absolute;
    bottom: 0;
    height: 3px;
    width: 100%;
    background: var(--main-color);
    left: 0;
}
#maincontents h2 a, #maincontents h2 a:visited, #oc-main h2 a, #oc-main h2 a:visited {
    text-decoration: none;
    width: 100%;
    display: block;
    /*display: inline;*/
    color: var(--main-color);
    /*padding-right: 1em;*/
    transition: 0s;
}
#maincontents h2:has( > a), #oc-main h2 a:has( > a) {
 padding-right: 1.5em;
}
#maincontents h2 a:hover, #oc-main h2 a:hover, #maincontents h2:has( > a:hover), #oc-main h2:has( > a:hover) {
	/*color:var(--sub-color01);*/
	color: #1F55AC;
}
#main h2 a::before, #oc-main h2 a::before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 3px;
    width: 0;
    background: var(--sub-color01);
    left: 0;
    transition: all 0.3s ease-in-out;
    z-index: 1;
}
/*#main h2:has(>a:hover)::after,
#oc-main h2:has(>a:hover)::after,
h3:has(>a:hover)::after,
h4:has(>a:hover)::after{
	animation-name: widthAnime;
    animation-fill-mode: forwards;
    animation-duration: .3s;
    animation-timing-function: ease-in-out;
    animation-direction: normal;
}
#main h2:has( > a:hover)::after,
#oc-main h2:has( > a:hover)::after,
h3:has( > a:hover)::after,
h4:has( > a:hover)::after{
	width: 100%;
}*/
#main h2 > a:hover::before, #oc-main h2 > a:hover::before, h3 > a:hover::before, h4 > a:hover::before {
    width: 100%;
}
#maincontents h2 a::after, #oc-main h2 a::after {
    content: "";
    position: absolute;
    right: 18px;
    width: 10px;
    height: 10px;
    border: 1px solid var(--main-color);
    border-left: unset;
    border-bottom: unset;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: .3s;
}
#maincontents h2 a:hover::after, #oc-main h2 a:hover::after {
    right: 14px;
    border-color: var(--sub-color01);
}
/*日本語へや to english pageの次のh2の調整*/
#main > div.clear:has( > p.link.fr):first-child + h2{
	margin-top:0;
	padding-top:0;
}
h3,.h3 {
    font-size: 1.5625rem;
    padding-top: 10px;
    padding-bottom: 10px;
    font-weight: bold;
    margin-bottom: 25px;
    margin-top: 50px;
    position: relative;
}
.h3{
    padding-bottom: 10px !important;
}
h3:first-letter,
h3.first-letter {
    color: var(--sub-color03);
}
h3::after,
.h3::after {
    content: "";
    position: absolute;
    bottom: 0;
    height: 1px;
    width: 100%;
    background: var(--sub-color03);
    left: 0;
}
h3:has(> a),
.h3:has(> a) {
 padding-right: 1.5em;
}
h3 a,
.h3 a {
    text-decoration: none !important;
    width: 100%;
    display: block;
    /*display: inline;*/
    transition: 0s;
}
h3 a:visited,
.h3 a:visited {
    color: #333333;
}

/*h3 a:hover,
h3:has(>a:hover):first-letter{
	/*color:var(--sub-color01);
	color: #1F55AC;
}*/
h3:has(>a:hover), h3:has(>a:hover):first-letter,
.h3:has(>a:hover), .h3:has(>a:hover):first-letter {
 color: #1F55AC;
}
h3 a::before,
.h3 a::before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 1px;
    width: 0%;
    background: var(--sub-color02);
    left: 0;
    display: block;
    transition: all 0.3s ease-in-out;
    z-index: 1;
}
h3 a::after,
.h3 a::after {
    content: "";
    position: absolute;
    right: 18px;
    width: 10px;
    height: 10px;
    border: 1px solid var(--sub-color03);
    border-left: unset;
    border-bottom: unset;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: .3s;
}
h3 a:hover::after,
.h3 a:hover::after {
    right: 14px;
    border-color: var(--sub-color01);
}
/* リンクを目立たせたい時用のクラス */

h3.link-st{
	/*border-left: 47px solid var(--sub-color03);*/
    padding-left: 40px;
	padding-right: 0;
}
h3.link-st::before{
	content: "";
	display: block;
	width: 30px;
	height: 30px;
	background: var(--sub-color03);
	border-radius: 50%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto 0;
	transition: all .3s ease;
}
h3.link-st a::after{
	width: 8px;
	height: 8px;
	right:auto;
	left: 9px;
    border: 1px solid #fff;
    border-left: unset;
    border-bottom: unset;
}
h3.link-st:has(a:hover)::before{
	background: var(--sub-color04);
	left: 5px;
}
h3.link-st a:hover::after{
	left: 14px;
}

/*#tab-menu01 h3,#tab-menu02 h3,#tab-menu03 h3,
#tab-menu04 h3,#tab-menu05 h3,#tab-menu06 h3 {
    border-left:#1e50a2 3px solid;
    color: #001E6A;
    padding: 10px 13px 10px 13px;
    font-size: 120%;
    margin: 20px 0 0 0;
    background: #fff;
}*/

h4 {
    font-size: 1.375rem;
    padding-top: 10px;
    padding-bottom: 10px;
    font-weight: bold;
    margin-bottom: 25px;
    margin-top: 58px;
    color: var(--main-color);
    position: relative;
    overflow: hidden;
}
h4::before, h4::after {
    content: "";
    display: block;
    bottom: 0;
    height: 1px;
    position: absolute;
}
h4::before {
    width: 77px;
    left: 0;
    background: var(--main-color);
}
h4::after {
    width: calc(100% - 79px);
    left: 79px;
    background: #808080;
}
h4 a {
    text-decoration: none !important;
    width: 100%;
    display: block;
    padding-right: 1em;
    transition: 0s;
}
h4 a:visited {
    color: var(--main-color);
}
h4 a:hover {
    /*color:var(--sub-color01);*/
    color: #1F55AC;
}
h4 a::before {
    content: "";
    position: absolute;
    bottom: 0;
    height: 1px;
    width: 0%;
    background: var(--sub-color02);
    left: 0;
    display: block;
    transition: all 0.3s ease-in-out;
    z-index: 1;
}
h4 a::after {
    content: "";
    position: absolute;
    right: 18px;
    width: 10px;
    height: 10px;
    border: 1px solid var(--main-color);
    border-left: unset;
    border-bottom: unset;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    transition: .3s;
}
h4 a:hover::after {
    right: 14px;
    border-color: var(--sub-color01);
}
h5 {
    font-size: 1.25rem;
    padding-top: 10px;
    padding-bottom: 10px;
    font-weight: bold;
    margin-top: 18px;
    margin-bottom: 25px;
    color: var(--sub-color03);
    position: relative;
}
h5::before {
    content: "";
    display: block;
    bottom: 0;
    height: 1px;
    position: absolute;
    width: 30px;
    left: 0;
    background: var(--sub-color03);
}
h6 {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 25px;
    margin-top: 28px;
}

@media screen and (max-width: 768px) {
#maincontents h1, #mainconts h1 {
    font-size: 2rem;
}
#main h2, #oc-main h2 {
    font-size: 1.643rem;
    padding-top: 8px;
    padding-bottom: 8px;
    margin-bottom: 24px;
    line-height: 1.39em;
    margin-top: 50px;
}
#maincontents h2 a::after, #oc-main h2 a::after, h3 a::after, h4 a::after {
    width: 8px;
    height: 8px;
    right: 8px;
}
h3 {
    font-size: 1.5714rem;
    margin-top: 26px;
    margin-bottom: 15px;
}
h4 {
    font-size: 1.4286rem;
    margin-top: 18px;
    margin-bottom: 20px;
    padding-top: 12px;
    padding-bottom: 12px;
}
h5 {
    font-size: 1.2857rem;
    margin-top: 24px;
    margin-bottom: 15px;
}
h6 {
    font-size: 1.1429rem;
    margin-top: 18px;
    margin-bottom: 15px;
}
}

@media screen and (max-width: 768px) {
/*タブレット用*/
img {
    max-width: 100%;
    height: auto;
}
#subcontents {
    padding-top: 24px;
    padding-bottom: 24px;
}
#subcontents h2 {
    font-size: 1rem;
    padding-left: 14px;
    margin-bottom: 20px;
}
#subcontents h2::before {
    top: 6px;
    width: 5px;
    height: 5px;
}
#submenu, .submenu {
    gap: 12px 25px;
}
#submenu li {
    width: auto;
    font-size: 0.857rem;
    padding-left: 15px;
}
#submenu li::before, .submenu li::before {
    top: 9px;
    width: 5px;
    height: 5px;
}
}
/* 扉ページ 設定
--------------------------------------------------*/

.index-1col, .index-l, .index-r {
    background: #F2F2F2;
    padding: 30px;
    margin-bottom: 50px;
}
.index-1col {
    width: 100%;
}
.clear:has( > div[class*="index"]) {
 display:flex;
 flex-wrap: wrap;
 gap:50px;
 width: 100%;
}
.clear:has( > div[class*="index"])::before, .clear:has( > div[class*="index"])::after {
 display: none;
}
/*.clear:last-child,*/
.clear > div.index-1col:last-child{
    margin-bottom: 0px !important;
}
@media screen and (min-width: 769px) {
	.clear > div.index-l:last-of-type,
	.clear > div.index-l:nth-last-of-type(2),
	.clear > div.index-r:last-of-type,
	div.index-1col:last-child {
		margin-bottom:0;
	}
	.clear:has( > div[class*="index"]){
		margin-bottom:50px;
	}
}
.index-1col:empty, .index-l:empty, .index-r:empty,
.index-1col:not(:has(*)), .index-l:not(:has(*)), .index-r:not(:has(*)) {
	display:none;
}
@media (min-width: 768px) {
.index-l, .index-r {
    width: calc(50% - 25px);
}
}
.index-l h2, .index-r h2, .index-1col h2 {
    margin-top: 0 !important;
    font-size: 1.5625rem !important;
    padding-top: 0 !important;
}
.index-l h2:last-child, .index-r h2:last-child, .index-1col h2:last-child {
    margin-bottom: 4px !important;
}
.index-l h2:first-letter, .index-r h2:first-letter, .index-1col h2:first-letter {
    color: var(--sub-color03);
}
.index-l h2:has(>a:hover):first-letter, .index-r h2:has(>a:hover):first-letter, .index-1col h2:has(>a:hover):first-letter {
	/*color:var(--sub-color01);*/
	color: #1F55AC;
}
.index-l h2::after, .index-r h2::after, .index-1col h2::after, .index-l h2 a::before, .index-r h2 a::before, .index-1col h2 a::before {
    height: 1px !important;
}
.index-l h2 a::after, .index-r h2 a::after, .index-1col h2 a::after {
    top: calc(50% - 8px) !important;
}
.index-l h3, .index-r h3, .index-1col h3 {
    color: var(--sub-color03);
    font-size: 1.125rem;
    margin-top: 25px;
    margin-bottom: 10px;
}
.index-l .h3, .index-r .h3, .index-1col .h3{
    color: var(--sub-color03) !important;
    font-size: 1.125rem !important;
    margin-top: 25px !important;
    margin-bottom: 10px !important;
}
.index-l .h3.mt0, .index-r .h3.mt0, .index-1col .h3.mt0{
	margin-top:0 !important;
}
.index-l h3::after, .index-r h3::after, .index-1col h3::after,
.index-l .h3::after, .index-r .h3::after, .index-1col .h3::after {
    display: none;
}
.index-l ul, .index-r ul, .index-1col ul, .index-l p, .index-r p, .index-1col p {
    margin: 10px 0 0 4px;
}
.index-l ul.linklist-two > li, .index-r ul.linklist-two > li, .index-1col ul.linklist-two > li {
    float: left;
    width: 48%;
    margin-right: 1%;
}
.index-1col {
}
div[class*="index"] .list-f > li, div[class*="index"] .list-two > li, div[class*="index"] .list-three > li, div[class*="index"] .list-four > li, div[class*="index"] .list-fs > li, div[class*="index"] .linklist > li, div[class*="index"] .linklist-f > li, div[class*="index"] .linklist-two > li, div[class*="index"] .linklist-three > li, div[class*="index"] .linklist-four > li, div[class*="index"] .linklist-fs > li, div[class*="index"] .list-two-s > li, div[class*="index"] .linklist-three-s > li {
    margin-bottom: 10px;
}
div[class*="index"] .linklist > li::before, div[class*="index"] .linklist-f > li::before, div[class*="index"] .linklist-two > li::before, div[class*="index"] .linklist-three > li::before, div[class*="index"] .linklist-four > li::before {
    background: var(--main-color);
    width: 24px;
    height: 24px;
    border-radius: 50%;
}
div[class*="index"] .linklist > li > a, div[class*="index"] .linklist-f > li > a, div[class*="index"] .linklist-two > li > a, div[class*="index"] .linklist-three > li > a, div[class*="index"] .linklist-four > li > a {
    color: #333333;
}
div[class*="index"] .linklist > li::after, div[class*="index"] .linklist-f > li::after, div[class*="index"] .linklist-two > li::after, div[class*="index"] .linklist-three > li::after, div[class*="index"] .linklist-four > li::after {
    background: url(../../imgs/kasou/ic_arrow_white.png);
    background-size: cover;
}

@media screen and (max-width: 768px) {
/*スマホ用*/
	
.index-1col {
    padding: 16px;
    margin-bottom: 16px;
}
.index-l, .index-r {
    padding: 16px;
    margin-bottom: 0;
    float: none;
    width: 100%;
}
 .clear:has( > div[class*="index"]) {
 gap: 16px;
 margin-bottom: 16px;
}
.index-l h2, .index-r h2, .index-1col h2 {
    font-size: 1.2857rem!important;
    padding-bottom: 8px!important;
    margin-bottom: 14px!important;
}
.index-l h2 a::after, .index-r h2 a::after, .index-1col h2 a::after {
    /*top: calc(50% - 3px) !important;*/
    top: calc(50% - 5px) !important;
}
.index-l ul.linklist-two li, .index-r ul.linklist-two li, .index-1col ul.linklist-two li {
    float: none;
    width: 100%;
    margin-right: 0;
}
.index-l ul, .index-r ul, .index-1col ul, .index-l p, .index-r p, .index-1col p {
    margin-top: 10px !important;
    margin-left: 0!important;
}
div[class*="index"] .linklist > li::before, div[class*="index"] .linklist-f > li::before, div[class*="index"] .linklist-two > li::before, div[class*="index"] .linklist-three > li::before, div[class*="index"] .linklist-four > li::before {
    width: 19px;
    height: 19px;
}
div[class*="index"] .linklist > li::after, div[class*="index"] .linklist-f > li::after, div[class*="index"] .linklist-two > li::after, div[class*="index"] .linklist-three > li::after, div[class*="index"] .linklist-four > li::after {
	top: 9px;
    left: 6px;
}
}
/* タブ切替 設定
--------------------------------------------------*/


/* For modern browsers */

#tab-list:before, #tab-list:after {
    content: "";
    display: table;
}
#tab-list:after {
    clear: both;
}
/* For IE 6/7 (trigger hasLayout) */

#tab-list {
    zoom: 1;
}
#tab-list {
    margin: 20px 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
#tab-list::before, #tab-list::after {
    display: none;
}
/*#tab-list li {
    display: inline;
}*/

#tab-list li {
    display: block;
	width: calc((100% - (4*10px)) / 5);
}
#tab-list li a {
    float: left;
    text-decoration: none;
    font-weight: bold;
    padding: 5px 3% 3px;
    width: 100%;
    border: 3px solid #ffd21e;
    /*margin: 5px 1%;*/
    font-size: 115%;
    text-align: center;
    color: #003399;
    border-color: var(--sub-color01);
    margin: 0;
}
#tab-list li a.tab-default, #tab-list li a.tab-on {
    color: #006699;
    background: #f2f2f2;
}
#tab-list li a:hover, #tab-list li a.tab-default:hover {
    color: #1F6EF0;
    background: #f2f2f2;
}

/*公開講座用タブ*/
#tab-list.koukai li a.tab-default, #tab-list.koukai li a.tab-on {
    color: #006699;
    background: #fdeaa0;
}
#tab-list.koukai li a:hover, #tab-list.koukai li a.tab-default:hover {
    color: #1F6EF0;
    background: #fdeaa0;
}

@media screen and (max-width: 930px) and (min-width: 769px){
	#tab-list.koukai li{
	    width: calc((100% - (3 * 10px))/4);
	}
}

@media screen and (max-width: 900px) {
	/*タブレット用*/
	#tab-list li {
	    width: 49%;
	    
	    width: calc((100% - (3 * 10px))/4);
	}
	/*#tab-list li a {
	    width: 40%;
	}*/
}

@media screen and (max-width: 768px) {
	#tab-list li {
	    display: block;
	    /*width: 100%;*/
		width: calc((100% - (2 * 10px))/3);
	}
}

@media screen and (max-width: 568px) {
	#tab-list li {
	    display: block;
	    /*width: 100%;*/
		width: calc((100% - (1 * 10px))/2);
	}
}

/* 各下層ページ詳細 設定
--------------------------------------------------*/

.sitecaption-r {
    float: right;
    /*width: 480px;*/
    width: 78%;
}

@media screen and (min-width: 569px) {
	.sitecaption-r h2:first-child {
	    padding-top: 0 !important;
	}
}
@media screen and (max-width: 568px) {
	div[class*=index] .sitecaption-r{
		margin-bottom:1rem;
	}
}
.sitecaption-l {
    float: left;
    width: 20%;
}
.sitecaption-l img {
    width: 180px;
    max-width: 100%;
}

@media screen and (max-width: 810px) {
/*.sitecaption-r {
        float: right;
        width: 78%;
    }
    .sitecaption-l {
        float: left;
        width: 20%;
    }*/
.sitecaption-l img {
    width: 100%;
}
}

@media screen and (max-width: 568px) {
.sitecaption-r {
    float: none;
    width: 100%;
}
.sitecaption-l {
    float: none;
    width: 100%;
}
}
/* 大学紹介
---------------------------------------------*/

/*学長挨拶*/

#intro-greet {
    font-size: 110%;
    line-height: 1.7em;
}
.intro-greet-r {
    float: right;
    width: 30%;
    text-align: center;
    margin: 60px 0 0 0;
    letter-spacing: 0.1em;
}
.intro-greet-l {
    text-indent: 1em;
    float: left;
    width: 68%;
}
.intro-greet-r2 {
    float: right;
    width: 68%;
    letter-spacing: 0.1em;
    text-align: left;
}
.intro-greet-l2 {
    text-indent: 1em;
    float: left;
    width: 30%;
    text-align: center;
    margin: 60px 0 0 0;
}
.intro-greetbox {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-wrap: wrap;
}
.intro-greetbox .img-r {
    margin: 59px 0 0 30px;
}
.intro-greet-r3 {
    width: 35%;
    letter-spacing: 0.1em;
    text-align: center;
    margin: 60px 0 0 0;
}
.intro-greet-l3 {
    text-indent: 1em;
    width: 57%;
    text-align: left;
}

@media screen and (max-width: 568px) {
.intro-greet-r {
    float: none;
    width: 100%;
    margin: 0;
}
.intro-greet-l {
    text-indent: 1em;
    float: none;
    width: 100%;
}
.intro-greet-r2 {
    float: none;
    width: 100%;
    margin: 0;
}
.intro-greet-l2 {
    text-indent: 1em;
    float: none;
    width: 100%;
}
.intro-greet-r3 {
    text-align: center;
    width: 60%;
    margin: 20px auto 0 auto;
    order: 1;
}
.intro-greet-l3 {
    text-indent: 1em;
    width: 100%;
}
.intro-greet-l3 {
    order: 2
}
.intro-greetbox .img-r {
    margin: 20px auto 0 auto;
    text-align: center;
}
.intro-greetbox .img-r img {
    width: 60%;
}
}
/*土地建物*/

.land-table {
}
.land-table thead th {
}
.land-table thead th span {
    font-weight: normal;
    font-size: 85%;
}
.land-table th {
    text-align: center;
}
.land-table td {
    text-align: right;
}
/* 情報公開・提供
---------------------------------------------*/


/* 入試案内
---------------------------------------------*/

/*　募集要項・資料請求バナー　*/
.bn-shryo-gakubu,
.bn-shryo-in,
.bn-shryo-net{
	display: block;
	color: #fff;
	position: relative;
}
.bn-shryo-gakubu{
	background: var(--sub-color04);
	background: url("/examination/imgs/bn-shiryo-bg-gakubu.jpg") right / cover no-repeat;
}
.bn-shryo-in{
	background: var(--main-color);
	background: url("/examination/imgs/bn-shiryo-bg-in.jpg") right / cover no-repeat;
}
.bn-shryo-net{
	background: var(--main-color);
	background: url("/mt_imgs/top-pickup-bn-lightblue.jpg") right / cover no-repeat;
}
.bn-shryo-gakubu::before,
.bn-shryo-in::before,
.bn-shryo-net::before{
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background: var(--sub-color03);
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: all .3s ease;
}
.bn-shryo-gakubu a,
.bn-shryo-in a,
.bn-shryo-net a{
	display: flex;
    align-items: center;
	padding: 30px 40px 30px 90px;
	text-decoration: none;
	color: #fff;
	position: relative;
}
.bn-shryo-gakubu a::before,
.bn-shryo-in a::before,
.bn-shryo-net a::before{
	content: '';
	display: block;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 30px;
	margin: auto 0;
	transition: all .3s ease;
}
.bn-shryo-gakubu a::before{
	background: var(--main-color);
}
.bn-shryo-in a::before{
	background: var(--sub-color04);
}
.bn-shryo-net a::before{
	background: var(--main-color);
}
.bn-shryo-gakubu a::after,
.bn-shryo-in a::after,
.bn-shryo-net a::after{
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 42px;
	margin: auto 0;
	transition: all .3s ease;
}
.bn-shryo-gakubu-sub,
.bn-shryo-in-sub{
	display: inline-block;
	padding: 5px 10px;
	font-size: 1.25rem;
	font-weight: bold;
	color: var(--main-color);
	background: var(--sub-color02);
	margin: 0 15px 0 0;
	
}
#main .bn-shryo-gakubu p,
#main .bn-shryo-in p,
#main .bn-shryo-net p{
    margin-top: 0;
}
.bn-shryo-gakubu-main,
.bn-shryo-in-main,
.bn-shryo-net-main{
	font-size: 1.87rem;
	color: var(--sub-color02);
	font-weight: bold;
	margin: 0;
}
.bn-shryo-net-main{
    color: var(--main-color);
    transition: all .3s ease;
}

@media (hover: hover) {
	.bn-shryo-gakubu:hover::before,
	.bn-shryo-in:hover::before,
    .bn-shryo-net:hover::before{
		opacity: 0.7;
	}
	.bn-shryo-gakubu a:hover::before,
	.bn-shryo-in a:hover::before,
	.bn-shryo-net a:hover::before{
		background: #fff;
		left: 35px;
	}
	.bn-shryo-gakubu a:hover::after,
	.bn-shryo-in a:hover::after,
	.bn-shryo-net a:hover::after{
		border-top: 1px solid var(--main-color);
		border-right: 1px solid var(--main-color);
		left: 47px;
	}
    .bn-shryo-net a:hover .bn-shryo-net-main{
        color: #fff;
    }
}

@media screen and (max-width: 1200px) {
	.bn-shryo-gakubu a,
	.bn-shryo-in a,
	.bn-shryo-net a{
		padding: 25px 20px 25px 80px;
	}
    .bn-shryo-gakubu-main,
    .bn-shryo-in-main,
    .bn-shryo-net-main{
        font-size: 1.5rem;
    }
    .bn-shryo-gakubu-sub,
    .bn-shryo-in-sub{
        font-size: 1rem;
    }
}

@media screen and (max-width: 768px) {
	.bn-shryo-gakubu a,
	.bn-shryo-in a,
	.bn-shryo-net a{
		padding: 25px 15px 25px 65px;
	}
	.bn-shryo-gakubu a::before,
	.bn-shryo-in a::before,
	.bn-shryo-net a::before{
		width: 34px;
    	height: 34px;
		left: 15px;
	}
	.bn-shryo-gakubu a::after,
	.bn-shryo-in a::after,
	.bn-shryo-net a::after{
		width: 10px;
    	height: 10px;
		left: 25px;
	}
	.bn-shryo-gakubu-sub,
	.bn-shryo-in-sub{
		padding: 5px;
        margin-right: 10px;
    	font-size: 1rem;
	}
	@media (hover: hover) {
		.bn-shryo-gakubu a:hover::before,
		.bn-shryo-in a:hover::before,
		.bn-shryo-net a:hover::before{
			left: 25px;
		}
		.bn-shryo-gakubu a:hover::after,
		.bn-shryo-in a:hover::after,
		.bn-shryo-net a:hover::after{
			left: 34px;
		}
	}
}


/*「出張授業」「大学見学」などについて
---------------------------------------*/
.nagare {
    background-image: url(../../examination/imgs/img_nagare01.gif);
    background-position: 5px 100%;
    padding: 10px 0px 30px 20px;
    background-repeat: no-repeat;
}
/* 教育・学部・大学院・センター
---------------------------------------------*/


/*学部ボタン*/

#gakubu-list div.fl {
    position: relative;
    float: left;
    background: #244384;
    min-height: 65px;
    width: 224px;
    margin: 9px 9px 0 0;
}
#gakubu-list div.fr {
    position: relative;
    float: right;
    background: #244384;
    min-height: 65px;
    width: 224px;
    margin: 9px 0 0;
}

@media screen and (max-width: 768px) {
/*タブレット用*/
#gakubu-list div.fl {
    position: relative;
    float: left !important;
    background: #244384;
    min-height: 65px;
    width: 48%;
    margin: 9px 2% 0 0;
}
#gakubu-list div.fr {
    position: relative;
    float: left !important;
    background: #244384;
    min-height: 65px;
    width: 48%;
    margin: 9px 2% 0 0;
}
}
#gakubu-list dl {
    margin: 7px 10px 8px 25px;
}
#gakubu-list dl dt {
    font-size: 16px;
    font-weight: bold;
    margin: 0;
}
#gakubu-list dl dd {
    font-size: 11px;
    line-height: 17px;
    margin: 5px 0 0;
}
#gakubu-list a {
    display: block;
    background: url(../../edu/imgs/bg_gakubu_list.gif) no-repeat 0 #244384;
    text-decoration: none;
    border: 4px solid #244384;
    color: #fff;
    min-height: 93px;
}
#gakubu-list a:hover {
    color: #244384;
    background: url(../../edu/imgs/bg_gakubu_list.gif) no-repeat 0 #F0F5FB;
}
/*　学科・課程・専攻　*/

/*　博士後期課程　*/

.read_doctoral {
    width: 100%;
    height: 442px;
    position: relative;
}
.read_doctoral img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.read_doctoral .doctoral-title {
    text-align: center;
    font-size: 570%;
    padding: 20px 60px;
    display: inline-block;
    line-height: 1.2em;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: pre;
    margin: 0!important;
    color: #ffffff;
    text-shadow: 3px 3px 6px #333, -3px 3px 6px #333, 3px -3px 6px #333, -3px -3px 6px #333;
}

@media screen and (max-width: 750px) {
.read_doctoral {
    height: 100%;
}
.read_doctoral .doctoral-title {
    font-size: 300%;
    padding: 10px 50px;
    line-height: 1.2em;
}
}

@media screen and (max-width: 550px) {
.read_doctoral .doctoral-title {
    font-size: 200%;
    padding: 10px 40px;
    line-height: 1.1em;
}
}
.doctoral-page-nav ul {
    display: flex;
}
.doctoral-page-nav ul li {
    width: calc(100% / 6);
    height: 60px;
    position: relative;
    border: 1px solid #001e6a;
    border-right: none;
    background-color: #C2DEB6;
    transition: .3s;
    overflow: hidden
}
.doctoral-page-nav ul li:last-child {
    border-right: 1px solid #001e6a;
}
.doctoral-page-nav ul li:hover {
    background-color: #001e6a;
}
.doctoral-page-nav ul li a {
    display: block;
    text-align: center;
    text-decoration: none;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    padding: 40px 5px;
    box-sizing: border-box;
    color: #001e6a;
}
.doctoral-page-nav ul li a:hover {
    text-decoration: underline;
    color: #efefef;
}

@media screen and (max-width: 750px) {
.doctoral-page-nav ul {
    flex-wrap: wrap;
}
.doctoral-page-nav ul li {
    width: calc(100% / 3);
    height: 60px;
    box-sizing: border-box;
}
.doctoral-page-nav ul li:nth-child(3) {
    border-right: 1px solid #001e6a;
}
.doctoral-page-nav ul li:nth-child(n+4) {
    border-top: none;
}
.doctoral-page-nav ul li a {
    padding: 40px 5px;
}
}

@media screen and (max-width: 550px) {
.doctoral-page-nav ul li {
    height: 50px;
}
.doctoral-page-nav ul li a {
    font-size: 90%;
}
}
#main .modal-btn {
    cursor: pointer;
    position: relative;
    padding-left: 30px;
    border-bottom: 1px solid var(--sub-color03);
}
#main .modal-btn:hover, #main .modal-btn:hover:first-letter {
    color: #1F55AC;
}
#main .modal-btn::before {
    content: "+";
    display: inline-block;
    font-size: 1.5rem;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%) rotate(0);
    transform-origin: center center;
    transition: .3s;
}
#main .modal-btn.active::before {
    transform: translateY(-50%) rotate(45deg);
}
#main .modal-btn::after {
    content: "";
    position: absolute;
    bottom: -1px;
    height: 1px;
    width: 0%;
    background: var(--sub-color02);
    left: 0;
    display: block;
    transition: all 0.3s ease-in-out;
    z-index: 1;
}
#main .modal-btn:hover::after {
    width: 100%;
}
.modal-body {
    max-height: 0;
    visibility: hidden;
    overflow: hidden;
    transition: .5s;
}
.modal-body.check {
    max-height: 5000px;
    visibility: visible;
    margin-bottom: 50px;
}
.modal-body *:first-child{
	margin-top:0;
}
.modal-body + h2{
	margin-top:35px !important;
}
@media screen and (max-width: 768px) {
	.modal-body + h2{
		margin-top:26px !important;
	}
}
.doctoral-flex-box {
    display: flex;
    justify-content: space-between;
}
.doctoral-flex-box li {
    width: calc(100% / 5 - 10px);
    position: relative;
}
.doctoral-flex-box li a {
    display: block;
    width: 100%;
    margin-bottom: 5px;
}
.doctoral-flex-box li img {
    display: block;
    width: 100%;
}
.doctoral-flex-box li p {
    padding: 10px 10px 10px 10px;
    margin: 0 0 16px 0;
    font-size: 90%;
    box-sizing: border-box;
    background-color: #e3e3e3;
    min-height: 430px;
}
.doctoral-flex-box li .photo {
    position: absolute;
    bottom: 0;
}

@media screen and (max-width: 750px) {
.doctoral-flex-box {
    flex-wrap: wrap;
}
.doctoral-flex-box li {
    width: calc(100% / 2 - 10px);
    margin-bottom: 20px;
}
}
.doctoral-content-dl {
    display: flex;
    flex-wrap: wrap;
}
.doctoral-content-dl dt {
    display: inline-block;
    width: 110px;
    height: 24px;
    line-height: 24px;
    background-color: #5076d8;
    color: #fff;
    font-size: 90%;
    margin: 0 30px 10px 20px;
    text-align: center;
}
.doctoral-content-dl dd {
    width: calc(100% - 200px);
    display: block;
    margin: 0;
}
.doctoral-content-dl dd ul {
    margin: 0;
}

@media screen and (max-width: 750px) {
.doctoral-content-dl dt {
    width: 100px;
    margin: 0 10px 10px 0;
}
.doctoral-content-dl dd {
    width: calc(100% - 120px);
}
}
.doctoral-startup {
    display: flex;
    flex-wrap: wrap;
}
.startup-left {
    width: 50%;
    box-sizing: border-box;
}
.startup-right {
    width: 45%;
    margin-left: 5%;
    align-self: flex-end;
}

@media screen and (max-width: 750px) {
.startup-left {
    width: 100%;
}
.startup-right {
    width: 100%;
    margin-left: 0;
}
.startup-right div {
    text-align: center;
}
}
.doctoral-phd-flex {
    display: flex;
    justify-content: space-between;
}
.doctoral-phd-flex p {
    width: 60%;
}
.doctoral-phd-flex div {
    width: 30%;
    margin: 10px 0 0 10%;
}

@media screen and (max-width: 671px) {
.doctoral-phd-graph {
    text-align: center;
}
}
.doctoral-shinro-joukyou div {
    width: 100%;
}
.doctoral-shinro-joukyou div img {
    display: block;
    margin: 0 auto;
}
.doctoral-voice-box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.doctoral-voice-box .voice-contents {
    width: calc(100% / 2 - 15px);
    margin-bottom: 30px;
    background-color: var(--bg-color02);
    box-sizing: border-box;
    padding: 20px 30px;
}
.voice-contents .voice-name-box {
    display: flex;
}
.voice-contents .voice-name-box img {
    display: block;
    width: 120px;
    height: 160px;
}
.voice-contents .voice-name-box .voice-name {
    width: calc(100% - 120px - 20px);
    margin-left: 20px;
}
.voice-contents .voice-name-box .voice-name p {
    margin: 0;
    font-weight: normal;
}
.voice-contents .voice-name-box .voice-name p:first-child {
    color: #001e6a;
    font-size: 130%;
    font-weight: bold;
    margin: 10px 0;
}
.voice-contents .voice-title {
    font-weight: bold;
    font-size: 110%;
    text-align: center;
}
.voice-contents .voice-graph p {
    font-weight: bold;
}
.voice-contents .voice-graph img {
    width: 100%;
    display: block;
    object-fit: cover;
}

@media screen and (max-width: 750px) {
.doctoral-voice-box .voice-contents {
    width: 100%;
    margin-bottom: 30px;
    padding: 20px 30px;
}
}

@media screen and (max-width: 550px) {
.doctoral-voice-box .voice-contents {
    padding: 20px 20px;
}
}
.doctoral-movie {
    display: flex;
    margin-bottom: 30px;
}
.doctoral-movie h4 {
    margin-top: 0;
    padding-top: 0;
}
.doctoral-movie .movie-img-box {
    width: 300px;
}
.doctoral-movie .movie-img-box img {
    display: block;
    object-fit: cover;
}
.doctoral-movie .movie-flex-box {
    margin-left: 30px;
}

@media screen and (max-width: 750px) {
.doctoral-movie {
    display: flex;
    flex-direction: column-reverse;
    margin-bottom: 30px;
}
.doctoral-movie .movie-img-box {
    width: 300px;
}
.doctoral-movie .movie-img-box img {
    display: block;
    object-fit: cover;
}
.doctoral-movie .movie-flex-box {
    margin-left: 0px;
}
}

@media screen and (max-width: 400px) {
.br-none br {
    display: none;
}
.br-none {
    line-height: 1rem;
}
}
/*Voice;*/
.voice_photolist {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-wrap: wrap;
}
.voice_photolist li {
    width: 23%;
}

@media screen and (max-width: 768px) {
.voice_photolist li {
    width: 48%;
}
}
/*Voice05 2024/2/9;*/
.voice_photolist05 {
    display: -webkit-flex;
    display: flex;
}
.voice_photolist05 li img {
    max-width: 100%;
}
.voice_photolist05 li:first-child {
    margin-right: 8px;
}

@media screen and (max-width: 768px) {
.voice_photolist05 {
    flex-wrap: wrap;
}
.voice_photolist05 li {
    width: 100%;
}
}
/*Voice06 2024/4/4;*/
.voice6_photolist {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-wrap: wrap;
}
.voice6_photolist li {
    width: 18%;
}
.voice6_photolist li:last-child {
    width: 39%;
}

@media screen and (max-width: 768px) {
.voice6_photolist {
    flex-wrap: wrap;
}
.voice6_photolist li {
    width: 48%;
    margin-bottom: 16px;
}
.voice6_photolist li:last-child {
    width: 100%;
}
}
/*Voice07 2024/5/24;*/
.voice7_photolist {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-wrap: wrap;
}
.voice7_photolist li {
    width: 20%;
}
.voice7_photolist li:nth-child(2), .voice7_photolist li:last-child {
    width: 30%;
}

@media screen and (max-width: 768px) {
.voice7_photolist {
    flex-wrap: wrap;
}
.voice7_photolist li {
    width: 49%;
    margin-bottom: 16px;
}
.voice7_photolist li:nth-child(2), .voice7_photolist li:last-child {
    width: 49%;
}
}

/*joint_symposium 2024/12/23;*/
.joint_symposium_photolist{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-wrap: wrap;
}
.joint_symposium_photolist li{
width: 20%;
}
.joint_symposium_photolist li:first-child,
.joint_symposium_photolist li:nth-child(2){
    width:28%;
}
.joint_symposium_photolist2{
    margin-top: 40px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    flex-wrap: wrap;
}
.joint_symposium_photolist2 li{
width: 25%;
    margin:0 20px;
}
.joint_symposium_photolist3{
    margin-top: 40px;
    margin-bottom: 40px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    flex-wrap: wrap;
}
.joint_symposium_photolist3 li{
width: 25%;
    margin:0 20px;
}
@media screen and (max-width: 768px){
.joint_symposium_photolist li,
.joint_symposium_photolist2 li,
.joint_symposium_photolist3 li{
    width: 48%;
    margin:0 3px 16px 3px;
}
.joint_symposium_photolist li:first-child,
.joint_symposium_photolist li:nth-child(2){
    width: 48%;
}
}

/*創造工学教育課程　*/

.read_souzou {
    background: url(/edu/new/souzou/imgs/bg_read.jpg) no-repeat;
    background-size: cover;
    padding: 150px 0 100px;
}

@media screen and (max-width: 568px) { /*スマホ用*/
.read_souzou {
    padding: 50px 0 30px;
}
}
.read_souzou .cc, #reorganization .cc {
    font-size: 570%;
    line-height: 1.4em;
    text-align: center;
    color: #FFF;
    text-shadow: 0 0 10px #000;
    margin: 0;
}

@media screen and (max-width: 568px) {
.read_souzou .cc, #reorganization .cc {
    font-size: 200%;
    line-height: 1.4em;
}
}
.read_souzou .header-midashi {
    background: rgba(219,211,21,0.80);
    font-weight: bold;
    text-align: center;
    width: auto;
    padding: 10px;
    font-size: 130%;
}
/*concept*/
#reorganization .concept-midashi {
    text-align: center;
    font-size: 200%;
	line-height: normal;
}
#reorganization .concept-midashi strong {
    font-weight: normal;
}
/*point*/
#reorganization .h2-point {
    background: none !important;
    margin: 0;
    padding: 20px 10px 10px !important;
    color: #000 !important;
    font-size: 200% !important;
    font-weight: normal;
    line-height: 1.4em;
    border-top: 2px solid #333;
}
.teacher-message, .student-message {
    display: table;
    margin: 10px 0 20px;
    border-collapse: separate;
    border-spacing: 10px 0;
}
.teacher-message dl, .student-message dl {
    display: table-cell;
    border: 2px solid #999;
    margin: 0 5px;
    width: 33.3333%;
}
.teacher-message dt, .student-message dt {
    padding: 10px;
    border-bottom: 1px dotted #999;
    font-weight: bold;
}
.teacher-message dt {
    background: #EAF5FF;
}
.student-message dt {
    background: #E3FCE3;
}
.teacher-message dd, .student-message dd {
    margin: 0;
    padding: 10px;
}
.future-box {
    /*display:table;*/
    display: flex;
    flex-wrap: wrap;
    margin: 10px 0 0;
    /*border-collapse: separate;
	border-spacing: 10px 0 ;
	table-layout:fixed;*/
    width: 100%;
}
.future-box::before {
    display: none;
}
.future-cont {
    margin: 0;
    /*display:table-cell;*/
    width: 20%;
    padding: 0 10px;/*	border:1px solid #DDD;*/
}
.future-box.fc-h-xl .future-cont {
    width: 33%;
}
.future-cont h3 {
    margin: 0;
    font-size: 1rem!important;
}
.future-box.fc-h-s h3 {
    min-height: 70px;
}
.future-box.fc-h-m h3 {
    min-height: 70px;
}
.future-box.fc-h-l h3 {
    min-height: 70px;
}
.future-box.fc-h-xl h3 {
    min-height: 90px;
}
.future-cont .list {
    margin: 0 0 0;
}
.future-cont img {
    width: 100%;
    margin: 10px 0;
}

@media screen and (max-width: 991px) {
.future-cont {
    width: 33%;
}
}

@media screen and (max-width: 768px) {
.future-cont {
    width: 50%;
}
.future-box.fc-h-xl .future-cont {
    width: 50%;
}
.future-box.fc-h-s h3 {
    min-height: 65px;
}
.future-box.fc-h-m h3 {
    min-height: 105px;
}
.future-box.fc-h-l h3 {
    min-height: 130px;
}
.future-box.fc-h-xl h3 {
    min-height: 130px;
}
}

@media screen and (max-width: 568px) {
.teacher-message, .student-message {
    display: block;
    margin: 0;
}
.teacher-message dl, .student-message dl {
    display: block;
    margin: 10px auto;
    width: 98%;
}
/*.future-box{
	display:block;
}*/
/*.future-cont{
	display:block;
	width:100%;
}*/
.future-cont h3 {
    margin: 20px 0 0;
}
.future-box.fc-h-s h3 {
    min-height: auto;
}
.future-box.fc-h-m h3 {
    min-height: auto;
}
.future-box.fc-h-l h3 {
    min-height: auto;
}
.future-box.fc-h-xl h3 {
    min-height: auto;
}
.future-box.future-cont img {
    width: auto;
}
}
/*　基幹工学教育課程　*/

/*-----メインビジュアル-----*/
	
#kikankougaku .read_souzou {
    background: url(/edu/faculty/kikan/imgs/bg_read.jpg) no-repeat bottom;
    background-size: cover;
    padding: 150px 0 100px;
}
#kikankougaku .read_souzou .cc {
    text-shadow: 3px 3px 6px #333, -3px 3px 6px #333, 3px -3px 6px #333, -3px -3px 6px #333;
    margin-bottom: 0;
}
/*.midashi{
    font-size: 1.6rem!important;
    line-height: 1.4em;
    font-weight: bold;
}
.midashi strong{
    font-size: 120%;
}*/
#kikankougaku .midashi2 {
    font-size: 1.4rem!important;
    line-height: 1.4em;
    padding: 8px 16px;
    box-sizing: border-box;
    text-align: center;
    background: #FFF8D9;
    margin-top: 60px;
}
#kikankougaku .cl {
    overflow: hidden;
}
#kikankougaku .read_souzou .header-midashi {
    background: rgba(219,211,21,0.80);
    font-weight: bold;
    text-align: center;
    width: auto;
    margin: -15px 0 35px 0!important;
    padding: 8px 8px 8px 8px!important;
    font-size: 130%;
}
#kikankougaku .future-cont {
    width: 33%;
}
#kikankougaku .future-cont h4 {
    font-size: 1.375rem!important;
    margin: 20px 0;
}

@media screen and (max-width: 568px) { /*スマホ用*/
#kikankougaku .read_souzou .header-midashi {
    margin: 0!important;
}
#kikankougaku .read_souzou {
    padding: 50px 0 30px;
}
}
/*#kikankougaku h2.none{
    padding: 0!important;
    background: none!important;
    color: #001E6A!important;
}*/
#kikankougaku .h2-point {
    background: #C2DEB6!important;
    padding-left: 20px;
    padding-right: 20px;
    border: none!important;
}
#kikankougaku .h2-point::after {
    display: none;
}
#kikankougaku .strong strong {
    color: #D93600;
}
#kikankougaku .forkokakei {
    padding: 30px;
    box-sizing: border-box;
    border: #EAEDF7 5px solid;
    margin-top: 32px;
}
#kikankougaku .forkokakei h3 {
    margin-top: 0!important;
}
#kikankougaku .forkokakei p {
    padding: 0 24px;
    box-sizing: border-box;
}
/*-----基幹技術の展開による「即戦力を持つ創製人材」の育成-----*/
#kikankougaku .future-box {
    display: table;
    margin: 10px 0 50px;
    border-collapse: separate;
    border-spacing: 10px 0;
    table-layout: fixed;
    width: 100%;
}
#kikankougaku .future-cont {
    margin: 0;
    display: table-cell;
    width: 33%;
    padding: 0 15px;/*	border:1px solid #DDD;*/
}/*
#kikankougaku .future-cont h4{
	margin:0;
}*/
#kikankougaku .future-cont .list {
    margin: 0 0 0;
}
#kikankougaku .future-cont img {
    width: 100%;
    margin: 10px 0;
}

@media screen and (max-width: 568px) {
#kikankougaku .teacher-message, #kikankougaku .student-message {
    display: block;
    margin: 0;
}
#kikankougaku .teacher-message dl, #kikankougaku .student-message dl {
    display: block;
    margin: 10px auto;
    width: 98%;
}
#kikankougaku .future-box {
    display: block;
}
#kikankougaku .future-cont {
    display: block;
    width: 100%;
}
/*#kikankougaku .future-cont h4{
	margin:20px 0 0;}*/
#kikankougaku .future-cont img {
    width: auto;
}
#kikankougaku .forkokakei {
    padding: 15px;
}
}
/* 研究・産学官連携
---------------------------------------------*/

#rules {
}
#rules h2 {
    margin: 0 0 0 0.5em;
    background: none;
    padding: 0;
    font-weight: normal;
    font-size: 110%;
}
#rules h2::after {
    display: none;
}
/* 就職・キャリア・学生生活
---------------------------------------------*/


/*----- ロボコンバナー -----*/

.topics-robocon {
    clear: both;
    margin: 15px 0 0;
}
.topics-robocon a {
    background: url(../../campus/imgs/bn_robocon.png) no-repeat 0 #629C9C;
    display: block;
    text-decoration: none;
    min-height: 82px;
}
.topics-robocon a:hover {
    background-color: #8CB7B7;
}
.topics-robocon a dl {
    padding: 5px 0 0 95px;
}
.topics-robocon a dl dt {
    margin: 0;
    color: #fff;
    font-size: 70%;
}
.topics-robocon a dl dd {
    margin: 0;
    color: #fff;
    font-size: 105%;
    font-weight: bold;
    line-height: 1.2em;
}
.topics-robocon > a > img.icon {
    display: none;
}

@media screen and (max-width: 768px) {
/*タブレット*/
.topics-robocon a dl dt {
    margin: 0 0 5px 0;
    color: #fff;
    font-size: 90%;
}
.topics-robocon a dl dd {
    margin: 0;
    color: #fff;
    font-size: 120%;
    font-weight: bold;
}
}

@media screen and (max-width: 568px) {
/*スマホ*/
.topics-robocon a {
    width: 97%;
}
.topics-robocon a dl dd {
    font-size: 110%;
}
.topics-robocon a dl dd span {
    display: block;
}
}
/*----- 諸手続一覧 -----*/

#procedure-area h3 {
    font-size: 110%;
    padding: 6px 13px 5px;
}
#procedure-area table {
    margin-top: 10px;
}
#procedure-area #tab-menu01 table th {
    width: 30%;
}
#procedure-area #tab-menu02 table th {
    width: 10%;
}
td.th-style {
    background: #F2F2F2;
    text-align: center;
    width: 20%;
}
/*----- 保健センター20131210追記 -----*/

.health-link {
    margin: 0 0 0 10px;
}
.health-link li {
    display: inline;
}
.health-link li a {
    display: block;
    float: left;
    width: 117px;
    height: 131px;
    margin: 20px 10px 0 0;
    background-repeat: no-repeat;
    text-decoration: none;
    font-size: 14px;
    color: #001E6A;
    padding: 10px 0 0 45px;
    box-sizing: content-box;
}
.health-li1 a {
    background-image: url(../../campus/counsel/health/imgs/bg_health_link01.gif);
}
.health-li2 a {
    background-image: url(../../campus/counsel/health/imgs/bg_health_link02.gif);
}
.health-li3 a {
    background-image: url(../../campus/counsel/health/imgs/bg_health_link03.gif);
}
.health-li4 a {
    background-image: url(../../campus/counsel/health/imgs/bg_health_link04.gif);
    margin: 20px 0 0 0 !important;
}
.health-link li a:hover {
    filter: alpha(opacity=70);
    /* IE7以下用 */
    -ms-filter: “alpha(opacity=70)”;
    /* IE8用 */
    opacity: 0.7;/* Firefox 1.5以上, Opera, Safari用 */
}

@media screen and (max-width: 768px) {
p map area {
    display: none;
}
}

@media screen and (max-width: 568px) {
.health-link {
    margin: 20px 0 0 0;
}
.health-link li {
    display: block;
    position: relative;
    padding-top: 5px;
    padding-left: 26px;
    padding-bottom: 5px;
}
.health-link li::before {
    content: "";
    position: absolute;
    width: 19px;
    height: 19px;
    top: 5px;
    left: 0;
    background: var(--sub-color02);
    border-radius: 50%;
    transition: .3s;
}
.health-link li::after {
    content: "";
    position: absolute;
    background: url(../../imgs/common/ic_arrow_blue.png);
    background-size: cover;
    left: 6px;
    top: 11px;
    width: 7px;
    height: 7px;
    transition: .3s;
}
.health-link li a {
    border: 0px;
    display: inline;
    float: none;
    background: none !important;
    font-size: 100%;
    padding: 0;
    text-decoration: none;
    color: var(--main-color);
}
.health-link li a:hover {
    color: var(--main-color);
    text-decoration: underline;
}
.health-link li:has( > a:hover)::before{
	left: 4px;
}
	.health-link li:has( > a:hover)::after{
		left: 12px;
	}
}
/* 学生なんでも相談室
-----------------------------------*/
#counsel-box {
    margin: 20px 0;
}
#counsel-box header {
    background: url(../../campus/counsel/imgs/bg_cousel_org.gif) center bottom no-repeat;
    background-size: 472px 51px;
    padding: 0 0 51px 0;
}
#counsel-box h2 {
    width: 60%;
    text-align: center;
    margin: 0 auto;
}
#counsel01, #counsel02, #counsel03 {
    border: 1px solid #CFCFCF;
    min-height: 180px;
    margin-top: 0;
    padding: 1em;
}
#counsel01 {
    float: left;
    width: 31%;
    margin: 0 3% 0 0;
}
#counsel02 {
    float: left;
    width: 31%;
}
#counsel03 {
    float: right;
    width: 31%;
}
#counsel01 h3, #counsel02 h3, #counsel03 h3 {
    font-size: 100%;
    margin: 0;
}

@media screen and (max-width: 568px) {
#counsel-box {
    margin: 20px 0;
    border: 1px solid #DFDFDF;
}
#counsel-box header {
    background: none;
    padding: 0;
}
#counsel-box h2 {
    width: auto;
    text-align: left;
    margin: 0 0 10px;
}
#counsel01, #counsel02, #counsel03 {
    border: 0px;
    min-height: 0%;
    margin: 10px 0;
}
#counsel01 {
    float: none;
    width: 100%;
    margin: 0;
}
#counsel02 {
    float: none;
    width: 100%;
}
#counsel03 {
    float: none;
    width: 100%;
}
#counsel01 h3, #counsel02 h3, #counsel03 h3 {
    font-size: 100%;
    margin: 0;
}
}
.dl-counsel {
    background-color: #F3F3F3;
    padding: 2px !important;
}
.dl-counsel dt.ms01 {
    background: url(../../campus/imgs/bg_message01.gif), url(../../campus/imgs/ic_message01.gif);
}
.dl-counsel dt.ms02 {
    background: url(../../campus/imgs/bg_message02.gif), url(../../campus/imgs/ic_message02.gif);
}
.dl-counsel dt.ms01, .dl-counsel dt.ms02 {
    font-weight: bold;
    background-repeat: no-repeat, no-repeat;
    background-position: left, right;
    background-size: 35px 30px, 36px;
    padding: 7px 0 7px 42px;
}
*+html .dl-counsel dt.ms01 {
    background: url(../../campus/imgs/bg_message01_ie.gif);
    background-repeat: no-repeat;
}
*+html .dl-counsel dt.ms02 {
    background: url(../../campus/imgs/bg_message02_ie.gif);
    background-repeat: no-repeat;
}
.dl-counsel dd {
    margin: 2px 0 0 0;
    border-top: 3px dotted #ffffff;
    padding: 15px 10px 10px 10px;
}
/* 学生なんでも相談室流れ
-----------------------------------*/
#all-flow-box {
    margin: 0;
    background: #F2F2F2;
    display: flex;
}
#all-flow-box h2 {
    width: 60%;
    text-align: center;
    margin: 0 auto;
}
#all-flow01, #all-flow02, #all-flow03 {
    /*min-height:180px;*/
    text-align: center;
    margin-top: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
#all-flow01 {
    /*width:33%;*/
    margin: 0;/*height: 250px;*/
}
#all-flow02 {
    /*width:33%;*/
	/*height: 250px;*/
    border-right: 2px solid #FFF;
    border-left: 2px solid #FFF;
}
#all-flow03 {
/*width:33%;*/
	/*height: 250px;*/
}
#all-flow01 h3, #all-flow02 h3, #all-flow03 h3 {
    background: #F2F2F2;
    font-size: 125%;
    margin: 0;
    text-align: center;
    color: #173D7B;
}
.flow-hidden {
    display: none;
}
.flow-display {
    display: none
}
.all-flow-intro {
    display: flex;
    justify-content: center;
    margin-top: 30px;
}
.all-flow-intro-inner01, .all-flow-intro-inner03 {
    margin: 0 30px;
}
.all-flow-intro-inner02 {
    margin-top: 10px;
}

/*@media screen and (max-width: 768px) {
	#all-flow02{
		float:left;
		width:31%;
		height: 290px;
	}
}*/

@media screen and (max-width: 767px) {
.all-flow-intro-inner02 {
    margin-top: 0;
}
}

@media screen and (max-width: 568px) {
#all-flow-box.sp-hidden {
    display: none;
}
#all-flow-box {
    margin: 20px 0;
    border: 1px solid #FFF;
    background: none;
}
#all-flow-box header {
    background: none;
    padding: 0;
}
#all-flow-box h2 {
    width: auto;
    text-align: left;
    margin: 0 0 10px;
}
#all-flow01, #all-flow02, #all-flow03 {
    border: 2px solid #999;
    min-height: 0%;
    margin: 10px 0;
    background: #F2F2F2;
    padding: 0;
}
#all-flow01 {
    float: none;
    width: 100%;
    margin: 0;
    height: auto;
}
#all-flow02 {
    float: none;
    width: 100%;
    height: auto;
}
#all-flow03 {
    float: none;
    width: 100%;
    height: auto;
}
#all-flow01 h3, #all-flow02 h3, #all-flow03 h3 {
    font-size: 100%;
    margin: 0;
    padding: 0;
    background: #eaedf7;
}
.all-flow-intro {
    flex-flow: column;
    align-items: center;
}
.all-flow-noimg {
    display: none;
}
.flow-display {
    display: block
}
}
/* 国際交流
---------------------------------------------*/

.dl-faq {
}
.dl-faq dt {
    background: url(../../int/imgs/ic_faq_q.gif) no-repeat 1px 1px;
    padding: 1px 10px 2px 30px;
    border: 1px solid #55AAFF;
    background-size: calc(1.55rem);
}
.dl-faq dd {
    margin: 0;
    background: url(../../int/imgs/ic_faq_a.gif) no-repeat 1px 1px;
    padding: 2px 10px 1px 30px;
    border-right: 1px solid #FF7A4D;
    border-bottom: 1px solid #FF7A4D;
    border-left: 1px solid #FF7A4D;
    background-size: calc(1.55rem);
}


/* 国際交流　留学生行事
--------------------------------------------*/
div.clear:has(>#int-event01) {
 display: flex;
 flex-wrap: wrap;
 gap: 0 1.5rem;
}
div.clear:has(>#int-event01)::before, div.clear:has(>#int-event01)::after {
 display:none;
}
#int-event01, #int-event03 {
    float: left;
    width: 48%;
}
#int-event02, #int-event04 {
    float: right;
    width: 48%;
}
div[id*="int-event"].event-box {
    margin-top: 20px;
}
div[id*="int-event"].event-box h2 {
    background: none!important;
    padding: 0!important;
    margin: 0!important;
}
div[id*="int-event"].event-box h2 a {
    display: block !important;
    width: 82%;
    background-size: 41px 41px!important;
    color: #FFF !important;
    text-decoration: none;
    padding: 10px 15% 9px 3%;
    font-size: 1.2rem;
}
div[id*="int-event"].event-box h2::after, div[id*="int-event"].event-box h2 a::before, div[id*="int-event"].event-box h2 a::after {
    display: none;
}
div[id*="int-event"].event-box img {
    width: 100%;
}
div[id*="int-event"].event-box p {
    color: #FFF;
    margin: 10px;
}
#int-event01 {
    background: #B54800;
}
#int-event01 h2 a {
    background: url(../../int/information/imgs/ic_kengaku.gif) no-repeat right top #D35400;
}
#int-event02 {
    background: #9F3124;
}
#int-event02 h2 a {
    background: url(../../int/information/imgs/ic_japan.gif) no-repeat right top #C0392B;
}
#int-event03 {
    background: #117B66;
}
#int-event03 h2 a {
    background: url(../../int/information/imgs/ic_tiiki.gif) no-repeat right top #16A085;
}
#int-event04 {
    background: #1A679B;
}
#int-event04 h2 a {
    background: url(../../int/information/imgs/ic_nitia.gif) no-repeat right top #2281BF;
}
/*選択時*/
div[id*="int-event"].event-box:hover {
    cursor: pointer;
}
#int-event01:hover h2 a {
    background: url(../../int/information/imgs/ic_kengaku_hover.gif) no-repeat right top #B54800;
}
#int-event02:hover h2 a {
    background: url(../../int/information/imgs/ic_japan_hover.gif) no-repeat right top #9F3124;
}
#int-event03:hover h2 a {
    background: url(../../int/information/imgs/ic_tiiki_hover.gif) no-repeat right top #117B66;
}
#int-event04:hover h2 a {
    background: url(../../int/information/imgs/ic_nitia_hover.gif) no-repeat right top #1A679B;
}
/*IE7/8対応*/
*+html #int-event01 h2 a {
    background: url(../../int/information/imgs/ic_kengaku_ie.gif) no-repeat right top #D35400;
}
*+html #int-event02 h2 a {
    background: url(../../int/information/imgs/ic_japan_ie.gif) no-repeat right top #C0392B;
}
*+html #int-event03 h2 a {
    background: url(../../int/information/imgs/ic_tiiki_ie.gif) no-repeat right top #16A085;
}
*+html #int-event04 h2 a {
    background: url(../../int/information/imgs/ic_nitia_ie.gif) no-repeat right top #2281BF;
}
*+html #int-event01:hover h2 a {
    background: url(../../int/information/imgs/ic_kengaku_hover_ie.gif) no-repeat right top #B54800;
}
*+html #int-event02:hover h2 a {
    background: url(../../int/information/imgs/ic_japan_hover_ie.gif) no-repeat right top #9F3124;
}
*+html #int-event03:hover h2 a {
    background: url(../../int/information/imgs/ic_tiiki_hover_ie.gif) no-repeat right top #117B66;
}
*+html #int-event04:hover h2 a {
    background: url(../../int/information/imgs/ic_nitia_hover_ie.gif) no-repeat right top #1A679B;
}

@media screen and (max-width: 671px) { /*スマホ用*/
/* For modern browsers */
div[id*="int-event"].event-box:before, div[id*="int-event"].event-box:after {
    content: "";
    display: table;
}
div[id*="int-event"].event-box:after {
    clear: both;
}
/* For IE 6/7 (trigger hasLayout) */
.event-box {
    zoom: 1;
}
#int-event01, #int-event03, #int-event02, #int-event04 {
    float: none;
    width: 100%;
}
div[id*="int-event"].event-box img {
    float: left;
    width: 32%;
    margin: 13px 0 13px 3%;
}
div[id*="int-event"].event-box p {
    float: right;
    width: 59%;
    margin: 10px 3%;
}
}
/*国際交流　留学生の先輩からのメッセージ
--------------------------------------------*/
/*-----学生データ-----*/
.intmes-box .data {
    border: 2px solid;
    width: 99.5%;
    margin-bottom: 20px;
    position: relative;
	overflow: hidden;
}
.intmes-box:hover .data {
    cursor: pointer;
    filter: alpha(opacity=90); /* IE7以下用 */
    -ms-filter: “alpha(opacity=90)”; /* IE8用 */
    opacity: 0.9; /* Firefox 1.5以上, Opera, Safari用 */
}
.intmes-box h2::after {
    display: none;
}
.intmes-photo {
    position: absolute;
    width: 155px;
    top: 0;
    left: 0;
}
.intmes-profile {
    margin-left: 157px;
}
.intmes-profile h3 {
    margin: 0!important;
    background: #FFF!important;
    padding: 8px 10px 6px 10px!important;
    font-size: 125%!important;
}
.intmes-profile h3::first-letter {
	color: #004781!important;
}
.intmes-profile h3::after{
	display: none;
}
.intmes-profile p {
    color: #FFF;
    margin: 0 0 0 12px!important;
    padding: 6px 50px 6px 0;
}
/*-----オン・オフ-----*/
.intmes-profile p.off, .intmes-profile p.on {
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 48px 78px;
}

@media screen and (max-width: 767px) {
.intmes-profile p {
    padding: 9px 50px 9px 0;
}
}

@media screen and (max-width: 568px) { /*スマホ用*/
/*-----学生データ-----*/
.intmes-box .data {
}
.intmes-photo {
    width: 140px;
}
.intmes-profile {
    margin-left: 142px;
}
.intmes-profile h3 {
    font-size: 115%!important;
    padding: 6px 10px 4px 10px!important;
}
.intmes-profile p {
    padding: 7px 50px 7px 0;
}
}

@media screen and (max-width: 480px) { /*スマホ用*/
/*-----学生データ-----*/
.intmes-photo {
    display: none;
}
.intmes-profile {
    margin-left: 0;
}
}
/*-----色分け-----*/
/*生命・物質工学科*/
.type-seimei {
    background: #004882;
}
.data.type-seimei {
    border-color: #004882;
}
.type-seimei .intmes-profile h3 {
    color: #004781!important;
}
.type-seimei p.off {
    background-image: url(/int/welcome/imgs/ic_off_seimei.gif);
}
.type-seimei p.on {
    background-image: url(/int/welcome/imgs/ic_on_seimei.gif);
}
/*環境材料工学科*/
.type-kankyo {
    background: #497729;
}
.data.type-kankyo {
    border-color: #497729;
}
.type-kankyo .intmes-profile h2 {
    color: #497729!important;
}
.type-kankyo p.off {
    background-image: url(/int/welcome/imgs/ic_off_kankyo.gif);
}
.type-kankyo p.on {
    background-image: url(/int/welcome/imgs/ic_on_kankyo.gif);
}
/*機械工学科*/
.type-kikai {
    background: #944000;
}
.data.type-kikai {
    border-color: #944000;
}
.type-kikai .intmes-profile h2 {
    color: #944000!important;
}
.type-kikai p.off {
    background-image: url(/int/welcome/imgs/ic_off_kikai.gif);
}
.type-kikai p.on {
    background-image: url(/int/welcome/imgs/ic_on_kikai.gif);
}
/*電気電子工学科*/
.type-denki {
    background: #008096;
}
.data.type-denki {
    border-color: #008096;
}
.type-denki .intmes-profile h2 {
    color: #008096!important;
}
.type-denki p.off {
    background-image: url(/int/welcome/imgs/ic_off_denki.gif);
}
.type-denki p.on {
    background-image: url(/int/welcome/imgs/ic_on_denki.gif);
}
/*情報工学科*/
.type-joho {
    background: #717D00;
}
.data.type-joho {
    border-color: #717D00;
}
.type-joho .intmes-profile h2 {
    color: #717D00!important;
}
.type-joho p.off {
    background-image: url(/int/welcome/imgs/ic_off_joho.gif);
}
.type-joho p.on {
    background-image: url(/int/welcome/imgs/ic_on_joho.gif);
}
/*建築・デザイン工学科*/
.type-kenchiku {
    background: #A5212D;
}
.data.type-kenchiku {
    border-color: #A5212D;
}
.type-kenchiku .intmes-profile h2 {
    color: #A5212D!important;
}
.type-kenchiku p.off {
    background-image: url(/int/welcome/imgs/ic_off_kenchiku.gif);
}
.type-kenchiku p.on {
    background-image: url(/int/welcome/imgs/ic_on_kenchiku.gif);
}
/*都市社会工学科*/
.type-toshi {
    background: #4E4F96;
}
.data.type-toshi {
    border-color: #4E4F96;
}
.type-toshi .intmes-profile h2 {
    color: #4E4F96!important;
}
.type-toshi p.off {
    background-image: url(/int/welcome/imgs/ic_off_toshi.gif);
}
.type-toshi p.on {
    background-image: url(/int/welcome/imgs/ic_on_toshi.gif);
}
/*-----メッセージ-----*/
.intmes-cont {
    margin-bottom: 30px;
}
.intmes-cont h4 {
    background: url(/int/welcome/imgs/ic_message.gif) no-repeat left 50% #FFF;
    color: #004781;
    margin: 0;
    padding: 0 0 0 32px;
}
.intmes-cont h4::before,
.intmes-cont h4::after {
    display: none;
}
/* ニュース記事
---------------------------------------------*/

.news-box {
    margin-bottom: 70px;
}
div[class*="index"] .news-box:last-child{
	margin-bottom:0;
}
.news-box h2 {
    margin-top: 0px !important;
    margin-bottom: 30px !important;
}
.news-box article,
.news-box:not(.campus-news-box):not(.research-news-box) .news-item:not(:has( .news-cat-list)) {
    border-bottom: 1px solid #999999;
    display: flex;
    align-items: center;
    gap: 30px;
    padding-top: 14px;
    padding-bottom: 14px;
}
.news-box article time,
.news-box:not(.campus-news-box):not(.research-news-box) .news-item:not(:has( .news-cat-list)) time {
    font-size: 0.875rem;
    color: #666666;
    display: flex;
    gap: 30px;
    width: 135px;
    position: relative;
}
.news-box article .topics-detail,
.news-box .news-item:not(:has( .news-cat-list)) .topics-detail{
	flex:1;
}
.news-box:not(.campus-news-box) article time::after,
.news-box:not(.campus-news-box):not(.research-news-box) .news-item:not(:has( .news-cat-list)) time::after {
    content: "●";
    color: var(--sub-color03);
    font-size: 0.75rem;
    position: absolute;
    right: 0;
    top: 0;
}
.news-box .news-item:has( .ps-4){
	display:block !important;
}
.news-box .news-item:has( .ps-4) time::after{
	display:none;
}
#main .news-box article .news-title,
#main .news-box:not(.campus-news-box):not(.research-news-box) .news-item:not(:has( .news-cat-list)) p.news-title {
    flex: 1;
    font-size: 1rem;
    margin-bottom: 0;
    background: unset;
    padding: 0;
    margin-top: 0;
}
.news-box article .news-title a,
.news-box .news-item .news-title a {
    text-decoration: none;
    color: #333333;
}
.news-box article .news-title a:hover,
.news-box .news-item .news-title a:hover {
    text-decoration: underline;
}
.news-box > ul.news-list-kasou{
	border-top:unset;
}
@media screen and (max-width: 768px) {
	.news-box {
	    margin-bottom: 44px;
	}
	.news-box h2 {
	    margin-bottom: 10px !important;
	}
	.news-box article,
	.news-box:not(.campus-news-box):not(.research-news-box) .news-item:not(:has( .news-cat-list)),
	.news-box .news-item:not(.campus-news-box):not(.research-news-box) {
	    gap: 6px;
	    flex-direction: column;
	    align-items: baseline;
	    padding: 12px 0;
	}
	.news-box article time,
	.news-box .news-item:not(.campus-news-box):not(.research-news-box) time {
	    font-size: 0.857rem;
	    gap: 14px;
	}
	.news-box article time::after,
	.news-box .news-item:not(.campus-news-box):not(.research-news-box) time::after {
	    font-size: 0.857rem;
	}
	.news-box article .news-title,
	.news-box .news-item:not(.campus-news-box):not(.research-news-box) .news-title {
	    color: #333333;
	}
}
/*ニュース一覧用 btn01とデザイン同じ*/

#main p.link-news {
    text-align: center;
    display: block;
    margin-top: 38px;
    float: unset !important;
}
.link-news a {
    background: var(--bg-color01);
    /*height: 40px;*/
    display: inline-flex;
    align-items: center;
    padding-right: 34px;
    padding-left: 66px;
    border-radius: 50px;
    text-decoration: none;
    position: relative;
    color: #000000;
    transition: .3s;
    height: unset;
    min-height: 40px;
    text-align: left;
}
.link-news a:hover {
    background: var(--main-color);
    color: #ffffff;
}
.link-news a::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    background: var(--main-color);
    border-radius: 20px;
    height: 40px;
    width: 40px;
    transition: .3s;
}
.link-news a::after {
    content: "";
    display: block;
    position: absolute;
    left: 14px;
    background: url(../../imgs/base/ic_arrow_white.png) no-repeat;
    background-size: cover;
    width: 13px;
    height: 13px;
    top: 50%;
    transform: translateY(-50%);
    transition: .3s;
}
.link-news a:hover::before {
    width: 50px;
}
.link-news a:hover::after {
    left: 20px;
}

@media screen and (max-width: 768px) {
.link-news a {
    /*height: 41px;*/
    padding-right: 55px;
    padding-left: 71px;
    border-radius: 40px;
    height: unset;
    min-height: 41px;
}
.link-news a:before {
    height: 40px;
    width: 40px;
    border-radius: 40px;
}
.link-news a:after {
    left: 14px;
    width: 14px;
    height: 14px;
}
.link-news a:hover::before {
    width: 50px;
}
.link-news a:hover::after {
    left: 20px;
}
.news-box article time {
    width: 120px;
}
}
/*ページビュート*/

#pagebute {
    text-align: center;
    padding: 20px 0;
    line-height: 3em;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
#pagebute span {
    display: inline-flex;
}
#pagebute a {
    text-decoration: none;
    line-height: 1em;
}
a.link_page, .current_page, a.link_before, a.link_first, a.link_next, a.link_last,
.entry_nav a.link_before::after,.entry_nav a.link_next::after {
    border-radius: 50%;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
a.link_page, .current_page {
    border: 1px solid var(--main-color);
    color: var(--main-color);
}
.current_page, a.link_page:hover {
    background: var(--sub-color02);
    border-color: var(--sub-color02);
}
a.link_before, a.link_first, a.link_next, a.link_last,
.entry_nav a.link_before::after,.entry_nav a.link_next::after {
    background: var(--sub-color02);
    border: 1px solid var(--sub-color02);
    border-radius: 50%;
    color: var(--main-color);
    margin: 0;
    font-size: 0;
    position: relative;
}
a.link_before:hover, a.link_first:hover, a.link_next:hover, a.link_last:hover,
.entry_nav a.link_before:hover::after,.entry_nav a.link_next:hover::after {
    background: var(--sub-color01);
    border-color: var(--sub-color01);
}
a.link_before,
.entry_nav a.link_before::after {
    margin-right: 30px;
}
a.link_first {
    margin-right: 10px;
}
a.link_before::before, a.link_first::before, a.link_first::after, a.link_next::before, a.link_last::before, a.link_last::after {
    content: "";
    display: block;
    position: absolute;
    height: 8px;
    width: 8px;
}
a.link_before::before, a.link_first::before, a.link_first::after {
    top: 50%;
    left: calc(50% - 1px);
    transform: translate(-50%, -50%) rotate(-135deg);
    font-size: 1rem;
    border: 1px solid var(--main-color);
    border-left: unset;
    border-bottom: unset;
}
a.link_before::before {
    left: calc(50% + 2px);
}
a.link_first::after {
    left: calc(50% + 5px);
}
a.link_next,
.entry_nav a.link_next::after {
    margin-left: 30px;
}
a.link_last {
    margin-left: 10px;
}
a.link_next::before, a.link_last::before, a.link_last::after {
    top: 50%;
    left: calc(50% + 1px);
    transform: translate(-50%, -50%) rotate(45deg);
    font-size: 1rem;
    border: 1px solid var(--main-color);
    border-left: unset;
    border-bottom: unset;
}
a.link_next::before {
    left: calc(50% - 2px);
}
a.link_last::after {
    left: calc(50% - 5px);
}

.entry_nav a.link_before:hover::after,.entry_nav a.link_next:hover::after {
	-webkit-transition: background 0.3s linear, color 0.3s linear, opacity 0.3s linear;
	transition: background 0.3s linear, color 0.3s linear, opacity 0.3s linear;
}

@media screen and (max-width: 768px) {
#pagebute {
    font-size: 1rem;
}
a.link_page, .current_page, a.link_before, a.link_first, a.link_next, a.link_last,
.entry_nav a.link_before::after,.entry_nav a.link_next::after {
    width: 30px;
    height: 30px;
}
a.link_before::before, a.link_first::before, a.link_first::after, a.link_next::before, a.link_last::before, a.link_last::after {
    height: 5px;
    width: 5px;
}
a.link_last::after {
    left: calc(50% - 3px);
}
a.link_first::after {
    left: calc(50% + 3px);
}
a.link_before,
.entry_nav a.link_before::after {
    margin-right: 20px;
}
a.link_next,
.entry_nav a.link_next::after {
    margin-left: 20px;
}
a.link_first {
    margin-right: 6px;
}
a.link_last {
    margin-left: 6px;
}
a.link_before::before {
    left: calc(50% + 1px);
}
a.link_next::before {
    left: calc(50% - 1px);
}
}



/*詳細記事*/

.naiyo {
    min-height: 400px;
}


/*news&topicsの記事の前後リンク*/

.entry_nav{
	display:flex;
    justify-content: space-between;
}

.entry_nav span{
	flex:1;
    display: flex;
    align-items: center;
}
.entry_nav a.link_before,
.entry_nav a.link_next{
    font-size: 1rem;
    width: unset;
    background: unset;
    border: unset;
    border-radius: unset;
    height: unset;
}
.entry_nav a.link_before{
    padding-left: 40px;
	display: inline-block;
}
.entry_nav a.link_next{
    padding-right: 40px;
    /*justify-content: flex-end;*/
	display: inline-block;
    margin-left: auto;
}
.entry_nav a.link_before::before,
.entry_nav a.link_next::before{
    z-index: 1;
}
.entry_nav a.link_before::before{
    left: 19px;
}
.entry_nav a.link_next::before{
    right: 11px;
    left: unset;
}
.entry_nav a.link_before::after,
.entry_nav a.link_next::after{
	content:"";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.entry_nav a.link_before::after{
    left: 0;
}
.entry_nav a.link_next::after{
    right: 0;
}

@media screen and (max-width: 768px) {
	.entry_nav{
		flex-wrap: wrap;
    	gap: 1em;
	}
	.entry_nav span{
    	flex: auto;
	}
	.entry_nav a.link_before::before {
	    left: 16px;
	}
}
/* キャンパス ニュース記事
---------------------------------------------*/


.campus-news-box article {
    background: url(../../imgs/common/ic_list_news.gif) no-repeat 98% center;
    border-bottom: 1px solid #DFDFDF;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    padding: 0 1%;
    display: table;
    width: 98%;
}
.campus-news-box article:hover {
    background: url(../../imgs/common/ic_list_news.gif) no-repeat 99% center #F7F7F7 !important;
}
.campus-news-box article time, .campus-news-box article .stu-cate-cell, .campus-news-box article .news-title {
    display: table-cell;
    padding: 10px 1%;
}
.campus-news-box article time {
    white-space: nowrap;
    width: 19%;
}
.campus-news-box article .stu-cate-cell {
    width: 9%;
}
.campus-news-box article .news-title {
}
.cate-honor, .cate-event, .cate-active, .cate-news {
    font-size: 0.875rem;
}
.cate-honor {
/*background: #E0B64E;*/
}
.cate-event {
    background: #2B43D1;
    color: #FFF;
}
.cate-active {
    background: #DC2629;
    color: #FFF;
}
.cate-news {
    background: #218B20;
    color: #FFF;
}

@media screen and (max-width: 568px) {
.campus-news-box article time {
    display: block;
    float: none;
    width: 98%;
    padding: 1%;
}
.campus-news-box article .news-title {
    float: none;
    width: 97%;
    padding: 1% 1% 2% 1%;
    margin: 0 !important;
}
}
/* お問い合わせ
---------------------------------------------*/


div.phone .fr.text-center.sp-hidden {
    float: left;
    padding-left: 1em;
}
div.phone p.midashi {
    font-size: 1.6em;
    text-align: center;
    padding-top: 4px;
    margin-bottom: 0;
}
div.phone p.midashi .font-s {
    font-size: 0.6em;
}
div.phone .number {
    background: url(../../contact/imgs/ic_phone.png) no-repeat 0 0;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 3em;
    font-weight: bold;
    color: #0058ae;
    height: 48px;
    margin: 0 0 0 20px;
    padding: 13px 0 0 65px;
    float: left;
    white-space: nowrap;
}
div.phone .sp-hidden {
    display: block;
}
div.phone .pc-hidden {
    display: none;
}
div.phone > .clear{
    display: flex;
    justify-content: center;
    align-items: center;
}
div.phone > .clear::before,
div.phone > .clear::after{
	display:none;
}
@media screen and (max-width: 768px) {
	/*タブレット用以下*/
	div.phone p.midashi {
	    margin: 0 auto !important;
	}
	div.phone .sp-hidden {
	    display: none;
	}
	div.phone .pc-hidden {
	    display: block;
	}
	div.phone .number {
	    float: none;
        margin-bottom: 10px;
        margin-left: 0;
	}
	div.phone > div {
	    display: flex;
	    flex-direction: column;
	    align-items: center;
	    gap: 0.5em;
	}
}

@media screen and (max-width: 568px) {
	/*スマホ用*/
	div.phone p.midashi {
	    font-size: 1.3em;
	}
	div.phone .number {
	    background: url(../../contact/imgs/ic_phone.png) no-repeat 20px 5px;
	    background-size: 30px;
	    font-size: 2em;
	    float: none;
	    height: 35px;
	    position: relative;
	    /*left: -1em;*/
        left: -14px;
        margin-top: 0 !important;
        padding-top: 10px;
        margin-bottom: 10px;
	}
}
/*取材に関すること*/
div.media {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    justify-content: center;
}
div.media p.midashi {
    font-size: 1.2em;
    text-align: center;
    padding-top: 4px;
    margin-bottom: 0;
    width: auto !important;
}
div.media p.midashi .font-s {
    font-size: 0.6em;
}
div.media .number {
    background: url(../../contact/imgs/ic_mail.png) no-repeat 0 0;
    background-size: 30px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1.5em;
    font-weight: bold;
    color: #0058ae;
    margin: 0 50px 0 50px;
    padding: 0px 0 3px 40px;
}

@media screen and (max-width: 768px) {
div.media {
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 0 auto;
}
div.media .number {
    margin-bottom: 8px!important;
}
}
/* キラリ卒業生
---------------------------------------------*/

#voice-tab {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    gap: 10px 40px;
    padding: 20px 30px;
    margin-top: 50px;
    border-bottom: 1px solid var(--main-color);
    border-top: 1px solid var(--main-color);
}
#voice-tab li a {
    text-decoration: none;
    color: #333;
    position: relative;
}
#voice-tab li a::after {
    content: "";
    position: absolute;
    bottom: -4px;
    width: 0;
    background: #333333;
    height: 1px;
    display: block;
    transition: .3s;
    left: 0;
}
#voice-tab li a:hover::after {
    width: 100%;
}
#voice-tab.tabon-all li.tab-all, #voice-tab.tabon-car li.tab-car, #voice-tab.tabon-machinery li.tab-machinery, #voice-tab.tabon-cemical li.tab-cemical, #voice-tab.tabon-food li.tab-food, #voice-tab.tabon-it li.tab-it, #voice-tab.tabon-house li.tab-house, #voice-tab.tabon-energy li.tab-energy, #voice-tab.tabon-biz li.tab-biz, #voice-tab.tabon-other li.tab-other {
    font-weight: bold;
    position: relative;
    padding-left: 20px;
}
#voice-tab.tabon-all li.tab-all::before, #voice-tab.tabon-car li.tab-car::before, #voice-tab.tabon-machinery li.tab-machinery::before, #voice-tab.tabon-cemical li.tab-cemical::before, #voice-tab.tabon-food li.tab-food::before, #voice-tab.tabon-it li.tab-it::before, #voice-tab.tabon-house li.tab-house::before, #voice-tab.tabon-energy li.tab-energy::before, #voice-tab.tabon-biz li.tab-biz::before, #voice-tab.tabon-other li.tab-other::before {
    content: "";
    padding-right: 0.5em;
    position: absolute;
    display: block;
    left: 0;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
}
#voice-tab.tabon-all li.tab-all::before {
    background: var(--main-color);
}
#voice-tab.tabon-car li.tab-car::before {
    background: #FFDD55;
}
#voice-tab.tabon-machinery li.tab-machinery::before {
    background: #A5DF91;
}
#voice-tab.tabon-cemical li.tab-cemical::before {
    background: #A2DEFF;
}
#voice-tab.tabon-food li.tab-food::before {
    background: #FFA2A2;
}
#voice-tab.tabon-it li.tab-it::before {
    background: #DAB5FF;
}
#voice-tab.tabon-house li.tab-house::before {
    background: #DDBD8C;
}
#voice-tab.tabon-energy li.tab-energy::before {
    background: #FFB46F;
}
#voice-tab.tabon-biz li.tab-biz::before {
    background: #AAC6FF;
}
#voice-tab.tabon-other li.tab-other::before {
    background: #C2C2C2;
}
#voice-box .voice-list {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    list-style: none;/*border-top: 1px solid #999999;
	border-left: 1px solid #999999;*/
}
#voice-box .voice-list li {
    width: 25%;
    /*border-bottom: 1px solid #999999;
	border-right: 1px solid #999999;*/
    position: relative;
}
#voice-box .voice-list li a {
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none;
    padding: 25px;
    transition: all .5s ease;
}
#voice-box .voice-list li a:hover {
    background: var(--bg-color02);
}
#voice-box .voice-list .voice-new {
    display: inline-block;
    color: var(--sub-color03);
    font-weight: bold;
    font-size: 0.875rem;
}
#voice-box .voice-list .voice-cat {
    font-size: 0.875rem;
    position: relative;
    display: inline-block;
    padding: 0 0 0 28px;
}
#voice-box .voice-list .voice-cat::before {
    content: "";
    padding-right: 0.5em;
    position: absolute;
    display: block;
    left: 8px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
}
#voice-box .voice-list .type-car.voice-cat::before {
    background: #FFDD55;
}
#voice-box .voice-list .type-machinery.voice-cat::before {
    background: #A5DF91;
}
#voice-box .voice-list .type-cemical.voice-cat::before {
    background: #A2DEFF;
}
#voice-box .voice-list .type-food.voice-cat::before {
    background: #FFA2A2;
}
#voice-box .voice-list .type-it.voice-cat::before {
    background: #DAB5FF;
}
#voice-box .voice-list .type-house.voice-cat::before {
    background: #DDBD8C;
}
#voice-box .voice-list .type-energy.voice-cat::before {
    background: #FFB46F;
}
#voice-box .voice-list .type-biz.voice-cat::before {
    background: #AAC6FF;
}
#voice-box .voice-list .type-other.voice-cat::before {
    background: #C2C2C2;
}
#voice-box .voice-list .voice-pict {
    display: block;
    margin: 10px 0;
    overflow: hidden;
}
#voice-box .voice-list li a .voice-pict img {
    width: 100%;
    transform: scale(1);
    transition: all .5s ease;
}
#voice-box .voice-list li a:hover .voice-pict img {
    transform: scale(1.1);
    opacity: 1;
}
#voice-box .voice-list .voice-catch {
    display: block;
    color: var(--main-color);
    font-size: 1.125rem;
}
#voice-box .voice-list .voice-profile {
    font-size: 0.875rem;
    color: #333;
}

@media screen and (max-width: 991px) {
#voice-box .voice-list li {
    width: 33.333%;
}
#voice-tab {
    gap: 10px 25px;
    padding: 20px 30px;
}
#voice-tab li {
    width: 30%;
}
}

@media screen and (max-width: 768px) {
#voice-box .voice-list li {
    width: 50%;
}
#voice-tab {
    gap: 10px 19px;
    padding: 20px 8px;
}
#voice-tab li {
    width: 46%;
}
}

@media screen and (max-width: 568px) {
#voice-box .voice-list li {
    width: 100%;
}
}
/*　キラリ卒業生　詳細ページ　*/

#voice-box .voice-detail-profile {
    display: flex;
    justify-content: center;
    background: var(--bg-color02);
    padding: 30px;
    margin-top: 60px;
}
#voice-box .voice-profile-l {
    margin-right: 40px;
}
#voice-box .voice-profile-r {
    width: 100%;
}
#voice-box .voice-profile-r h2 {
    margin-top: 0;
    padding-top: 0;
}
#voice-box .voice-company {
    margin-bottom: 0;
}
#voice-box .voice-name {
    font-size: 1.5rem;
}
#voice-box .voice-name + p {
    margin-bottom: 0px;
}
#voice-box .voice-name + p + p {
    margin-top: 0;
}
#voice-box .voice-entry-body {
    margin: 50px 0;
}
#voice-box .voice-entry-body p.midashi {
    margin-top: 0!important;
}
#voice-box #voice-back {
    background: var(--bg-color02);
    padding: 20px 0;
    display: flex;
    gap: 10px 40px;
    list-style: none;
}
#voice-box .voice-entry-body img {
    margin-bottom: 20px;
}
#voice-box .voice-entry-body div:has(div.fr>p) {
 display: flex;
}
#voice-box .voice-entry-body div.fr:has(>p), #voice-box .voice-entry-body div.fl:has(fr:has(>p)) {
 float: none;
}
#voice-box .voice-entry-body div.fr:has(>p) {
 width: 100%;
}
#voice-box #voice-back li a {
    text-decoration: none;
    position: relative;
    padding-left: 15px;
}
#voice-box #voice-back li a:hover {
    color: #333;
    text-decoration: underline;
}
#voice-box #voice-back li a::before {
    content: "";
    position: absolute;
    left: 0;
    top: 7px;
    border: 1px solid var(--sub-color03);
    border-left: unset;
    border-top: unset;
    transform: rotate(135deg);
    width: 6px;
    height: 6px;
    transition: .3s;
}
_::-webkit-full-page-media,
_:future,
:root #voice-box #voice-back li a::before {
    top: 6px;
}
#voice-box #voice-back li a:hover::before {
    left: -4px;
}

@media screen and (max-width: 768px) {
#voice-box .voice-detail-profile {
    display: block;
    padding: 20px;
    text-align: center;
}
#voice-box .voice-profile-r {
    text-align: left;
}
#voice-box .voice-profile-l {
    margin-right: 0;
    margin-bottom: 20px;
}
#voice-box .voice-entry-body img {
    margin-bottom: 0;
}
#voice-box .voice-entry-body p.midashi {
    margin-top: 20px!important;
}
#voice-box .voice-entry-body div:has(>img) {
 margin-left: 0!important;
 margin-right: 0!important;
 float: none;
 display: flex;
 justify-content: center;
}
#voice-box .voice-entry-body div:has(div.fr>p) {
 display: block;
}
}
/* クラブ・サークル
---------------------------------------------*/

/*ClearFix*/
ul.club-list:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
ul.club-list {
    display: inline-table;
    min-height: 1%;
}
/* Hides from IE-mac \*/
* html ul.club-list {
    height: 1%;
}
ul.club-list {
    display: block;
}
/* Hides from IE-mac */


ul.club-list {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
}
ul.club-list li {
    padding: 0 3%;
    width: 25%;
}
ul.club-list a, ul.club-list span {
    display: block;
    /*border:1px solid #DDD;*/
    padding: 1px 1px 3px 1px;
    margin-right: 15px;
    margin-top: 20px;
    text-align: center;
    text-decoration: none;
}
ul.club-list a {
    margin-bottom: 20px;
}
ul.club-list a img, ul.club-list span img {
    display: block;
    margin-bottom: 2px;
    width: 100%;
}

/*ul.club-list a:hover{
	border:1px solid #fff;
}*/
/*
.flow-hidden{
	display:none;
}
.flow-display{
	display:none
}
*/
@media screen and (max-width: 991px) {
ul.club-list li {
    width: 33%;
}
ul.club-list a {
    margin-bottom: 0;
}
}

@media screen and (max-width: 768px) {
ul.club-list {
    padding-left: 0px;
}
ul.club-list a, ul.club-list span {
    margin-right: 10px;
    font-size: 80%;
}
}

@media screen and (max-width: 568px) {
ul.club-list {
    padding-left: 0px;
}
ul.club-list a, ul.club-list span {
    float: none;
    margin-right: 0px;
    width: 100%;
}
ul.club-list a img, ul.club-list span img {
    width: 100%;
}
ul.club-list li {
    width: 50%;
}
/*
.flow-display{
	display:block
}
.box01 {
    background-color: #f2f2f2;
    margin: 12px 0;
    padding: 0 0 20px 0;
}
.box01.flow-display > h3 {
    background: #eaedf7 none repeat scroll 0 0;
    border-bottom: 1px solid;
    color: #001e6a;
    font-size: 120%;
    margin: 20px 0 0;
    padding: 10px 13px;
}
	*/
}
/*クラブサークル詳細記事CSS*/
#club-info .midashi {
    /* background: url(../club/imgs/bg_midashi.gif) no-repeat bottom left #FBCAAA; */
    padding: 15px 15px 26px 0;
    font-size: 130%;
}
.club-pict {
    float: left;
    padding-left: 30px;
}
.club-pict img {
    display: block;
    margin-bottom: 20px;
    height: auto;
}
#club-detail {
    float: left;
    width: 65%;
    padding-left: 40px;
    margin-bottom: 30px;
}
#nophoto-club-detail {
}
#club-disp {
    clear: both;
    margin: 10px 0 0;
}
#club-detail table {
    margin: 0;
}
#club-detail table, #nophoto-club-detail table {
}
#club-detail th, #nophoto-club-detail th {
    width: 28%;
}
#club-detail td, #nophoto-club-detail td {
}
#club-detail td p #nophoto-club-detail td p {
    margin: 0 0 10px;
}

/*クラブ実績バナーCSS*/
/*
.reslut-bnr img{
	width:100%;
}
*/
@media screen and (max-width: 791px) {
#club-detail {
    width: 100%;
    padding-left: 0;
}
.club-pict {
    float: none;
    width: 100%;
    padding-left: 0;
}
.club-pict img {
    display: block;
    float: left;
    margin: 0 15px 15px 15px;
}
}

@media screen and (max-width: 711px) {
/*.club-pict{
	text-align:center;
}*/
/*.club-pict img{
	display:block;
	float:left;
	margin:0 15px 15px 15px;
}*/
/*#club-detail{
	clear:both;
	float:none;
	width:100%;
	padding-left: 0;
}*/
}

@media screen and (max-width: 568px) {
.club-pict {
}
.club-pict img {
    display: block;
    float: none;
    margin: 0 auto 15px;
}
}
/*訪問者別
--------------------------------------------*/

#juken-navi {
    margin: 0;
}
#juken-navi2 {
    display: none
}
#juken-navi ul {
    margin: 0;
}
#juken-navi ul li {
    display: inline;
}
#juken-navi ul li a {
    display: block;
    background-image: url(/guest/imgs/nv_jukensei.gif);
    background-repeat: no-repeat;
    height: 60px;
    float: left;
    font-size: 1px;
    line-height: 1px;
    text-indent: -9999px;
    overflow: hidden;
    -webkit-transition: none;
    transition: none;
}
li.juken-nv1 a {
    background-position: 0 0;
    width: 127px;
}
li.juken-nv2 a {
    background-position: -127px 0;
    width: 138px;
}
li.juken-nv3 a {
    background-position: -265px 0;
    width: 138px;
}
li.juken-nv4 a {
    background-position: -403px 0;
    width: 138px;
}
li.juken-nv5 a {
    background-position: -541px 0;
    width: 149px;
}
#juken-on1 li.juken-nv1 a, li.juken-nv1 a:hover {
    background-position: 0 -60px;
}
#juken-on2 li.juken-nv2 a, li.juken-nv2 a:hover {
    background-position: -127px -60px;
}
#juken-on3 li.juken-nv3 a, li.juken-nv3 a:hover {
    background-position: -265px -60px;
}
#juken-on4 li.juken-nv4 a, li.juken-nv4 a:hover {
    background-position: -403px -60px;
}
#juken-on5 li.juken-nv5 a, li.juken-nv5 a:hover {
    background-position: -541px -60px;
}

@media screen and (max-width: 785px) {
#juken-navi span {
    display: none!important;
}
#juken-navi ul li {
    display: table;
    width: 20%;
    float: left;
    background-position: right;
    background-repeat: no-repeat;
}
#juken-navi ul li a {
    display: table-cell;
    vertical-align: middle;
    padding: 0 7px 0 2px;
    height: 50px;
    position: relative;
    top: 50%;
    background: none;
    float: none;
    text-indent: 0;
    color: #FFF;
    font-size: 13px;
    line-height: 13px;
    font-weight: bold;
    text-decoration: none;
    text-align: center;
}
li.juken-nv1 {
    background-image: url(/guest/imgs/bg_sp_nv01.gif);
    background-color: #C93C27;
}
li.juken-nv2 {
    background-image: url(/guest/imgs/bg_sp_nv02.gif);
    background-color: #E16135;
}
li.juken-nv3 {
    background-image: url(/guest/imgs/bg_sp_nv03.gif);
    background-color: #609733;
}
li.juken-nv4 {
    background-image: url(/guest/imgs/bg_sp_nv04.gif);
    background-color: #337DC8;
}
li.juken-nv5 {
    background-image: url(/guest/imgs/bg_sp_nv05.gif);
    background-color: #7A5F9C;
}
#juken-navi ul li a:hover, #juken-on1 li.juken-nv1 a, #juken-on2 li.juken-nv2 a, #juken-on3 li.juken-nv3 a, #juken-on4 li.juken-nv4 a, #juken-on5 li.juken-nv5 a {
    background: url(../imgs/kasou/bg_sp_yazi.png) no-repeat bottom center;
}
}
/*テーブル
-------------------*/

/*div:has(> .table-juken-1col) {
 margin-top: 10px;
}*/
dl.table-juken-1col, dl.table-juken-l, dl.table-juken-r {
    margin: 5px 0 0;
	display: flex;
}
dl.table-juken-l, dl.table-juken-r {
    width: 50%;
    float: left;
    margin: 5px 0 0;
}
dl.table-juken-1col dt, dl.table-juken-l dt, dl.table-juken-r dt {
    margin: 0;
    padding: 0;
    background: #E8E8E8;
    /*width: 82px;*/
    /*height: 150px;
    float: left;*/
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 105px;
    padding: 10px;
}
dl.table-juken-1col dt img, dl.table-juken-l dt img, dl.table-juken-r dt img {
    display: block;
    width: 54px;
    height: 54px;
    margin: 18px auto 0;
}
dl.table-juken-1col dd, dl.table-juken-l dd, dl.table-juken-r dd {
    margin: 0;
    padding: 0;
    background: #F6F6F6;
    /*float: left;
    height: 150px;*/
}
dl.table-juken-1col dd ul, dl.table-juken-l dd ul, dl.table-juken-r dd ul {
    margin: 10px;
    padding: 0;
}
dl.table-juken-l dd, dl.table-juken-r dd {
    width: calc(100% - 82px);
}
dl.table-juken-1col {
}
dl.table-juken-1col dt {
}
dl.table-juken-1col dd {
    width: calc(100% - 82px);
}
dl.table-juken-l {
}
dl.table-juken-l dt {
}
dl.table-juken-l dd {
}
dl.table-juken-r {
}
dl.table-juken-r dt {
}
dl.table-juken-r dd {
}
/*  個別設定  */
.dt-j01 span, .dt-j02 span, .dt-j03 span, .dt-j04 span, .dt-j05 span, .dt-j06 span, .dt-j07 span, .dt-j08 span, .dt-j09 span, .dt-j10 span, .dt-j11 span {
    background-repeat: no-repeat;
    background-position: top center;
    /*background-size: 35px 30px;*/
    background-size: 45px 39px;
	min-width: 30px;
    /*padding: 26px 0 0 0;*/
    padding: 44px 0 0 0;
    display: block;
    color: #001960;
    /*font-size: 10px;*/
}
.dt-j01 span {
    background-image: url(/guest/imgs/ic_intro.gif);
}
.dt-j02 span {
    background-image: url(/guest/imgs/ic_access.gif);
}
.dt-j03 span {
    background-image: url(/guest/imgs/ic_gakubu.gif);
}
.dt-j04 span {
    background-image: url(/guest/imgs/ic_exam.gif);
}
.dt-j05 span {
    background-image: url(/guest/imgs/ic_policy.gif);
}
.dt-j06 span {
    background-image: url(/guest/imgs/ic_hiyou.gif);
}
.dt-j07 span {
    background-image: url(/guest/imgs/ic_other.gif);
}
.dt-j08 span {
    background-image: url(/guest/imgs/ic_sp.gif);
}
.dt-j09 span {
    background-image: url(/guest/imgs/ic_jugyo.gif);
}
.dt-j10 span {
    background-image: url(/guest/imgs/ic_life.gif);
}
.dt-j11 span {
    background-image: url(/guest/imgs/ic_emp.gif);
}
/*IE7／8対応
-------------------------------------------------*/
*+html .dt-j01 span {
    background-image: url(/guest/imgs/ic_intro_ie.gif);  /*ie7*/
}
.dt-j01 span {
    background-image: url(/guest/imgs/ic_intro_ie.gif)\9; /*ie8*/
}
.dt-j02 span {
    background-image: url(/guest/imgs/ic_access.gif);
}
.dt-j03 span {
    background-image: url(/guest/imgs/ic_gakubu.gif);
}
.dt-j04 span {
    background-image: url(/guest/imgs/ic_exam.gif);
}
.dt-j05 span {
    background-image: url(/guest/imgs/ic_policy.gif);
}
.dt-j06 span {
    background-image: url(/guest/imgs/ic_hiyou.gif);
}
.dt-j07 span {
    background-image: url(/guest/imgs/ic_other.gif);
}
.dt-j08 span {
    background-image: url(/guest/imgs/ic_sp.gif);
}
.dt-j09 span {
    background-image: url(/guest/imgs/ic_jugyo.gif);
}
.dt-j10 span {
    background-image: url(/guest/imgs/ic_life.gif);
}
.dt-j11 span {
    background-image: url(/guest/imgs/ic_emp.gif);
}

/*IE7／8対応 ここまで
-------------------------------------------------*/



@media screen and (max-width: 768px) {
dl.table-juken-1col, dl.table-juken-l, dl.table-juken-r {
    clear: both;
    margin: 10px 0 20px;
    padding: 0;
}
dl.table-juken-l, dl.table-juken-r {
    width: 100%;
    float: none;/*	margin:5px 0 0;*/
}
dl.table-juken-1col dt, dl.table-juken-l dt, dl.table-juken-r dt {
    margin: 0;
    padding: 0;
    background-color: #E8E8E8;
    /*width: 100%;*/
    width: 30%;
    height: auto;
    float: none;
    text-align: left;
}
dl.table-juken-1col dt img, dl.table-juken-l dt img, dl.table-juken-r dt img {
    display: block;
    width: 54px;
    height: 54px;
    margin: 18px auto 0;
}
dl.table-juken-1col dd, dl.table-juken-l dd, dl.table-juken-r dd {
    margin: 0;
    padding: 0;
    background: #FFF;
    float: none;
    /*width: 100%;*/
    width: 70%;
    height: auto;
}
.dt-j01 span, .dt-j02 span, .dt-j03 span, .dt-j04 span, .dt-j05 span, .dt-j06 span, .dt-j07 span, .dt-j08 span, .dt-j09 span, .dt-j10 span, .dt-j11 span {
    /*background-position: 5px 2px;*/
	background-position: center top;
    /*padding: 8px 0 5px 42px;*/
    padding: 42px 0 0 0;
    font-size: 14px;
    width: 100%;
    text-align: center;
}
}
#open-campus {
}
#open-campus h2 {
    background-image: none;
    background-color: #001E6A !important;
    padding: 0;
    width: 15%;
}
#open-campus h2 img {
    display: block;
    width: 84px;
    margin: 0 auto;
    padding: 20px 0;
}
#open-campus .oc-r {
    float: right;
    width: 82%;
}
#open-campus .oc-r.oc-r-none{
    width: 100%;
}

@media screen and (max-width: 686px) {
#open-campus h2 {
    width: 100%;
}
#open-campus .oc-r {
    width: 100%;
}
}
#open-campus .oc-r h2 {
    background: url(/guest/imgs/bg_oc_r.gif) no-repeat 5px 0.4em #fff!important;
    background-size: 17px 19px;
    margin: 15px 0 0;
    padding: 15px 0 15px 60px;
    width: auto;
}
.table-juken {
    border: 0;
}
.table-juken th {
    width: 15%;
    background: url(/guest/imgs/li_table.gif) bottom repeat-x #EEE;
    border: 0;
    padding: 10px 10px 19px;
}
.table-juken td {
    border: 0;
    background: url(/guest/imgs/li_table.gif) bottom repeat-x #FFF;
    padding: 10px 10px 19px;
}
.table-juken td .linklist, .table-juken td .linklist-two, .table-juken td .linklist-f {
    margin-top: 0px;
}
tr.last-entry th, tr.last-entry td {
    background-image: none;
}
#open-campus {
}
#open-campus h2 {
    background: none;
    padding: 0;
    margin: 15px 0 0;
}
#open-box {
    background: #EEE;
    border-bottom: 1px solid #A9A9A9;
    border-right: 1px solid #A9A9A9;
    border-left: 1px solid #A9A9A9;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    padding: 15px 10px;
}
#open-box .linklist-two {
    margin-top: 0;
}
#open-box .linklist-two li {
    width: 45%;
}
/*　受験生のバナー　*/
.exambnr a:hover {
    filter: alpha(opacity=70); /* IE7以下用 */
    -ms-filter: “alpha(opacity=70)”; /* IE8用 */
    opacity: 0.7; /* Firefox 1.5以上, Opera, Safari用 */
}
.exam01, .exam02, .exam03, .exam04, .exam05, .exam-imgbnr {
    width: 340px;
    min-height: 95px;
    float: left;
    margin-top: 10px;
    background-repeat: no-repeat;
    background-position: top right;
}
/*.exam-imgbnr {
    float: right;
}*/
.exam-imgbnr img {
    width: 100%;
}
.exam01 {
    background-image: url(/guest/imgs/bn_jukensei01.gif);
    background-color: #FFCC00;
}
.exam02 {
    background-image: url(/guest/imgs/bn_jukensei02.gif);
    background-color: #FCA938;
}
.exam03 {
    background-image: url(/guest/imgs/bn_jukensei03.gif);
    background-color: #2F58AE;
}
.exam04 {
    background-image: url(/guest/imgs/bn_jukensei04.gif);
    background-color: #0680C8;
}
.exam05 {
    background-image: url(/guest/imgs/bn_jukensei05.gif);
    background-color: #D04646;
}
.exam01 dt, .exam01 dd, .exam02 dt, .exam02 dd {
    color: #333333;
}
.exam03 dt, .exam03 dd, .exam04 dt, .exam04 dd, .exam05 dt, .exam05 dd {
    color: #FFFFFF;
}
.exam01 a, .exam02 a, .exam03 a, .exam04 a, .exam05 a, .exam05 a {
    text-decoration: none;
}
/*サブタイトルが無いバナーに指定*/
.exam03 dt, .exam04 dt, .exam05 dt {
    padding-top: 18px !important;
}
.exambnr dl {
    margin: 0;
}
.exambnr dt {
    background: url(/imgs/common/ic_linklist_news.gif) no-repeat 0 22px;
    padding: 5px 0 0 20px;
    font-size: 20px;
    line-height: 21px;
    font-weight: bold;
    margin: 0 10px;
}
.exambnr span {
    font-size: 13px;
    line-height: 13px;
}
.exambnr dd {
    font-size: 14px;
    line-height: 15px;
    /*width:60%;*/
    padding: 10px 35px;
    margin-bottom: 0;
}

@media screen and (max-width: 1199px) {
.exam-imgbnr {
    float: none;
    margin-top: 10px;
}
}

@media screen and (max-width: 780px) {
.exam01, .exam02, .exam03, .exam04, .exam05, .exam-imgbnr {
    float: none;
    width: 100%;
}
.exam-imgbnr {
    margin-left: 0px!important;
}
.exambnr dt {
    padding-right: 80px;
}
.exambnr dd {
    padding-right: 80px;
}
}

@media screen and (max-width: 400px) {
#open-campus .oc-r h2 {
    background: url(/guest/imgs/bg_oc_r.gif) no-repeat 5px 1.2em #fff !important;
}
.exambnr dt {
    font-size: 17px;
    line-height: 18px;
}
/*.exambnr dd {
 margin-left:30px;
 width:50%;
}*/
}
/*　先輩からのメッセージ　*/
#stu-mes-conts {
    margin-top: 10px;
}
#stu-mes-conts p, #mes-contentscontainer p {
    margin-top: 10px;
}
/*			bnr-list			*/
.senpaimes-link:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.senpaimes-link {
    display: inline-table;
    min-height: 1%;
}
/* Hides from IE-mac \*/
* html .senpaimes-link {
    height: 1%;
}
.senpaimes-link {
    display: block;
}
/* Hides from IE-mac */

/*.senpaimes-link {
    margin: 20px 0;
}*/
.senpaimes-link li {
    display: inline;
}
.senpaimes-link li a {
    display: block;
    float: left;
    height: 170px;
    /*	margin: 0 10px 20px 0;*/
    background-image: url(/guest/student_message/imgs/nv_sprite.jpg);
    background-repeat: no-repeat;
    font-size: 1px;
    line-height: 1px;
    overflow: hidden;
    text-indent: -9999px;
    -webkit-transition: none;
    transition: none;
}
.senpaimes-link li#sen-nv01 a, .senpaimes-link li#sen-nv02 a, .senpaimes-link li#sen-nv03 a, .senpaimes-link li#sen-nv04 a, .senpaimes-link li#sen-nv05 a, .senpaimes-link li#sen-nv06 a, .senpaimes-link li#sen-nv07 a {
    width: 336px;
}
.senpaimes-link li#sen-nv08 a, .senpaimes-link li#sen-nv09 a, .senpaimes-link li#sen-nv10 a, .senpaimes-link li#sen-nv11 a {
    width: 207px;
}
.senpaimes-link li#sen-nv02 a, .senpaimes-link li#sen-nv04 a, .senpaimes-link li#sen-nv06 a, .senpaimes-link li#sen-nv11 a {
    margin-right: 0px;
}
.senpaimes-link li#sen-nv01 a {
    background-position: 0 0;
}
.senpaimes-link li#sen-nv02 a {
    background-position: -340px 0;
}
.senpaimes-link li#sen-nv03 a {
    background-position: -680px 0;
}
.senpaimes-link li#sen-nv04 a {
    background-position: -1020px 0;
}
.senpaimes-link li#sen-nv05 a {
    background-position: -1360px 0;
}
.senpaimes-link li#sen-nv06 a {
    background-position: -1700px 0;
}
.senpaimes-link li#sen-nv07 a {
    background-position: -2040px 0;
}
.senpaimes-link li#sen-nv08 a {
    background-position: -2380px 0;
}
.senpaimes-link li#sen-nv09 a {
    background-position: -2587px 0;
}
.senpaimes-link li#sen-nv10 a {
    background-position: -2794px 0;
}
.senpaimes-link li#sen-nv11 a {
    background-position: -3001px 0;
}
.senpaimes-link li#sen-nv01 a:hover {
    background-position: 0 -170px;
}
.senpaimes-link li#sen-nv02 a:hover {
    background-position: -340px -170px;
}
.senpaimes-link li#sen-nv03 a:hover {
    background-position: -680px -170px;
}
.senpaimes-link li#sen-nv04 a:hover {
    background-position: -1020px -170px;
}
.senpaimes-link li#sen-nv05 a:hover {
    background-position: -1360px -170px;
}
.senpaimes-link li#sen-nv06 a:hover {
    background-position: -1700px -170px;
}
.senpaimes-link li#sen-nv07 a:hover {
    background-position: -2040px -170px;
}
.senpaimes-link li#sen-nv08 a:hover {
    background-position: -2380px -170px;
}
.senpaimes-link li#sen-nv09 a:hover {
    background-position: -2587px -170px;
}
.senpaimes-link li#sen-nv10 a:hover {
    background-position: -2794px -170px;
}
.senpaimes-link li#sen-nv11 a:hover {
    background-position: -3001px -170px;
}

@media screen and (max-width: 386px) {
.senpaimes-link {
    display: none;
}
}
/*見出し画像*/
.senior-midashi {
    background-image: url(../guest/student_message/imgs/img_read.gif);
    background-repeat: no-repeat;
    height: 61px;
    font-size: 0;
    text-indent: -9999px;
}
/*フロート左*/
.senior-fl {
    float: left;
}
/*フロート右*/
.senior-fr {
    float: right;
}
.midashi-sotugyo {
    margin-bottom: 0;
}
.midashi-sotugyo a {
    display: block;
    background: url(../guest/student_message/imgs/ic_midashi.gif) no-repeat right;
    background-size: 36px 36px;
    background-color: #F5F5F5;
    color: #003399;
    text-decoration: none;
    padding: 8px 46px 8px 15px;
    font-size: 16px;
    font-weight: bold;
}
.senior-box-l {
    width: 30%;
    float: left;
    margin-right: 5%;
}
.senior-box-r {
    width: 30%;
    float: right;
}

@media screen and (max-width: 780px) {
.senior-midashi {
    background-image: none;
    text-indent: inherit;
    height: none;
    color: #2F58AE;
    font-size: 16px;
    font-weight: bold;
}
.senior-fl {
    float: none;
}
.senior-fr {
    float: none;
}
.senior-box-l {
    width: 100%;
    float: none;
    margin-right: 0;
}
.senior-box-r {
    width: 100%;
    float: none;
}
}
/*訪問者別　下層用メインコンテンツ
----------------------------------------*/
/*プロフィール*/
.mes-detail-profile {
}
.mes-profile-l {
    width: 25%;
    float: left;
}
.mes-profile-l img {
    width: 100%;
}
.mes-profile-r {
    width: 75%;
    float: right;
}
/*h2.mes-cp{
    background:url(../guest/student_message/imgs/ic_arrow.gif) no-repeat left 50%  !important;
    margin:0!important;
    padding:0 0 0 21px!important;
    color:#001E6A!important;
    font-size:120%!important;
}
.mes-cp span{
    background:#F0F4FD;
    padding:20px;
    display:block;
}*/
.mes-name {
    margin: 60px 0 0 25px!important;
    border-left: 4px solid #6281C2;
    padding: 0 0 0 10px;
    color: #2F58AE;
    font-size: 120%;
}
/*本文*/
.mes-entry-body {
    clear: both;
    padding: 10px 0 20px;
}

@media screen and (max-width: 568px) {
.mes-profile-l {
    float: none;
    width: auto;
    max-width: 320px;
    margin: 0 auto 10px;
}
.mes-profile-r {
    float: none;
    width: 100%;
}
h2.mes-cp {
    background: none!important;
    padding: 0!important;
}
.mes-name {
    margin: 10px 0 0!important;
}
/*#subcontents h3{
    display:none;
}*/
}
#mes-contentscontainer {
    background-image: url(/imgs/kasou/bg_leftcont.gif);
    background-repeat: repeat-y;
    background-position: top left;
    margin-top: 14px;
}
#mes-contentscontainer h1 {
    background: url(/activity/imgs/bg_h1.jpg) no-repeat bottom right;
    font-size: 1.3em;
    line-height: 1.2em;
    padding: 14px 10px 18px 24px;
    color: #FFFFFF;
}
#mes-contentscontainer h1 span.sub {
    font-size: 0.6em;
    font-weight: normal;
    color: #FFF;
    line-height: 1.2em;
}
#mes-contentscontainer #naiyo {
    min-height: 300px;
}
#mes-contentscontainer h2 {
    background: url(/guest/student_message/imgs/bg_h2.gif) no-repeat bottom left;
    height: 164px;
    margin: 20px 0 0;
}
#mes-contentscontainer h2 img {
    display: block;
    float: left;
    width: 170px;
    padding: 0 0 0 10px;
}
#mes-contentscontainer h2 span {
    display: block;
    width: 360px;
    float: left;
    color: #042C92;
    font-size: 120%;
    padding: 80px 0 0 10px;
    line-height: 1.3em;
}
/*下層用サブメニュー
----------------------------------------*/
/*#subcontents h3{
    margin:0;
    font-size:100%;
    background:none;
    padding-top:13px;
    padding-bottom:3px;
}*/

/* イベント一覧
---------------------------*/

/* 月ナビ
---------------------------*/

#month-nav {
    display: table;
    width: 100%;
    border-top: 1px solid var(--main-color);
    border-bottom: 1px solid var(--main-color);
    padding: 10px;
}
#month-nav h2, .selectmonth {
    display: table-cell;
    margin: 0;
    vertical-align: middle;
    padding: 10px 10px;
}
#month-nav h2 {
    font-size: 1rem;
    background: none;
    white-space: nowrap;
    width: 20%;
}
#month-nav h2::after {
    display: none;
}
.selectmonth {
    text-align: left;
}
.selectmonth li {
    display: inline;
}
.selectmonth a {
    text-decoration: none;
    display: block;
    float: left;
    margin: 0;
    padding: 5px 20px;
}
.selectmonth a:hover {
    text-decoration: underline;
}

@media screen and (max-width: 768px) {
	#month-nav {
	    /*margin-bottom: -70px;*/
	    padding: 0;
	}
	.selectmonth a {
	    padding: 5px 10px;
	}
}
/* 記事一覧
---------------------------*/

#event-list {
    margin: 10px 0 0;/*border-top:1px solid #999;*/
}
#event-list article,
#event-list li.event-item {
    padding: 10px;
    /*border-bottom:1px solid #999;*/
    background: var(--bg-color02);
    margin: 2px 0;
}
#event-list article a,
#event-list li.event-item a {
    display: table;
    table-layout: fixed;
    /*border-bottom:1px solid #EEE;*/
    width: 100%;
    /*background:url(/imgs/common/ic_list_news.gif) no-repeat;
	background-position: 98% center;*/
    text-decoration: none;
    color: #333;
    padding: 0 20px 0 0;
    box-sizing: border-box;
    position: relative;
}
#event-list article a::after,
#event-list li.event-item a::after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    border-top: 1px solid #999;
    border-right: 1px solid #999;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-5px) rotate(45deg);
    transition: all .3s ease;
}
#event-list article a:hover::after,
#event-list li.event-item a:hover::after {
    right: 15px;
}
/*#event-list article a:hover{
	background-position: 99% center;
	background-color:#EFEFEF;
}*/
#event-list article time, #event-list article h2,
#event-list li.event-item time,#event-list li.event-item p.news-title {
    display: table-cell;
    padding: 10px;
}
#event-list li.event-item p.news-title{
    color: var(--main-color);
}

#event-list article a:hover h2,
#event-list li.event-item a:hover p.news-title {
    text-decoration: underline;
}
#event-list article h2::after
#event-list li.event-item p.news-title::after{
    display: none;
}
#event-list article time,
#event-list li.event-item time {
    width: 15%;
    padding-left: 15px;
}
#event-list article h2,
#event-list li.event-item p.news-title {
    width: 85%;
    background: none;
    font-size: 100%;
    font-weight: normal;
}

@media screen and (max-width: 991px) {
#event-list article time,
#event-list li.event-item time {
    width: 22%;
}
#event-list article h2,
#event-list li.event-item p.news-title {
    width: 78%;
}
}

@media screen and (max-width: 768px) {
#event-list article,
#event-list li.event-item {
    display: block;
    table-layout: auto;
}
#event-list article a::after,
#event-list li.event-item a::after {
    right: 10px;
}
#event-list article a:hover::after,
#event-list li.event-item a:hover::after {
    right: 5px;
}
#event-list article time, #event-list article h2,
#event-list li.event-item time,
#event-list li.event-item p.news-title {
    display: block;
    margin: 0;
}
#event-list article time,
#event-list li.event-item time {
    width: 100%;
    padding: 5px 10px;
    font-weight: bold;
}
#event-list article h2,
#event-list li.event-item p.news-title {
    width: 100%;
    padding: 0 10px 10px;
}
}


/*ページトップへ戻る
--------------------------------------------*/

@media screen and (max-width: 768px) {
    /*タブレット用以下*/
    #sp-pagetop {
        background: url(../../imgs/common/bt_pagetop.gif) no-repeat 0px 0.4em;
        padding: 0 0 8px 16px;
        font-size: 12px;
        margin: 10px 0 0 10px;
        float: right;
    }
    #sp-pagetop:hover {
        background-image: url(../../imgs/common/bt_pagetop_hover..gif);
    }
    #sp-pagetop a {
        text-decoration: none;
        color: #000000;
    }
    #sp-pagetop a:hover {
        color: #003399;
        text-decoration: underline;
    }
    #subcontents {
        clear: both;
    }
}



/*GoogleMap*/

dl.map-info {}

dl.map-info dt {
    float: right;
}

dl.map-info dd strong {
    color: #001E6A !important;
}

dl.map-info dd p,
dl.map-info dd ul {
    font-size: 12px;
    margin: 0 0 10px 0;
}


/*ここからさき全部旧設定。いずれ削除 */


/*シラバスページ用*/

.syllabus-line {
    border-top: 1px dotted #CDCDCD !important;
    padding-left: 2em!important;
    font-size: 90%!important;
    text-align: left!important;
}


/*学生のための施設*/

.welfarefac {
    width: 320px;
    margin-top: 30px;
}


/*災害ページ
--------------------------------------------*/

#kasoudisaster {
    background: url(../../kinkyu/imgs/bg_mainvisual.jpg) no-repeat 0 0;
    width: 788px;
    height: 53px;
    margin: 0 auto;
    padding: 55px 0 0 30px;
    color: #333;
    font-weight: bold;
    font-size: 140%;
}


/*ニュース 汎用
--------------------------------------------*/

#news-entry article:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0;
}


/* IE7 */

*:first-child + html #news-entry article {
    zoom: 1;
}

#news-entry article {
    border-bottom: 1px solid #DFDFDF;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
    padding: 5px 5px;
    font-size: 14px;
}

#news-entry article:hover {
    background: #F7F7F7;
}

.news-box dl {
    overflow: hidden;
    zoom: 1;
    background: url(../../imgs/common/ic_list_news.gif) no-repeat 98% center;
}

.news-box dl dt {
    float: left;
    clear: both;
    padding-right: 20px;
}

.news-box dl dd {
    padding-right: 40px;
    margin: 0 0 0 150px;
}

.news-box dl dd a {
    text-decoration: none;
}


/*↑きゅうせってい*/


/*なんでも相談室
--------------------------------------------*/

@media screen and (max-width: 768px) {
    .no-img {
        display: none
    }
}

@media screen and (min-width: 768px) {
    .display-img {
        display: none
    }
}


/*ニュース記事等イイねボタン
--------------------------------------------*/

#news-detail-head {
    margin: 0 0 10px;
}

#news-detail-head p {
    margin: 0;
}

.sns-bt {
    margin: -3px 0 0;
}

.sns-bt li {
    float: left;
    margin: 0 0 0 10px;
}

.sns-bt li:first-child {
    margin: -3px 0 0;
}
/*.sns-bt .fb_iframe_widget {
	top: -3px;
}*/
.sns-bt .fb-share a {
	display: inline-block;
    background: #0866ff;
    padding: 4px 10px 4px 28px ;
    color: #fff;
    text-decoration: none;
    font-size: 0.78rem;
    /*font-weight: bold;*/
    border-radius: 30px;
    line-height: 1;
	position: relative;
}
.sns-bt .fb-share a::before {
	content: '';
	display: block;
	background: url("/imgs/kasou/ic_facebook_share.png");
	background-size: contain;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 50%;
    left: 10px;
    transform: translateY(-50%);
}
.sns-bt .fb-share a img {
	display: none;
}
/*#facebook ._2tga span._5n6h {
	display: none;
}
#facebook ._2tga._8j9v {
	border-radius: 30px;
}*/
@media screen and (max-width: 768px) {
    .sns-bt {
        float: right !important;
        margin: 10px 0 0;
        /*width: 250px;*/
    }
.sns-bt .fb-share a {
    font-size: 0.87rem;
    top: 1px;
}
}


/*170731 add. used /green/application.html */

.medatu-btn {
    text-align: center;
}

.medatu-btn a {
    border-top: 0px;
    border-right: 2px solid #CF3A01;
    border-bottom: 2px solid #CF3A01;
    border-left: 0px;
    color: #FFF;
    background: #D67014;
    display: block;
    padding: 30px;
    text-decoration: none;
    border-radius: 5px;
    font-size: 120%;
    
}

.medatu-btn a:hover {
    border-top: 2px solid #CF3A01;
    border-right: 0px;
    border-bottom: 0px;
    border-left: 2px solid #CF3A01;
    background: #CF3A01;
}
/*170731 add end*/

/*国際連携エネルギー変換システム専攻について
--------------------------------------------*/
.newkate_bg_green{
    background: #EBF1DE;
    padding: 16px;
    box-sizing: border-box;
}

/*学部
--------------------------------------------*/

.department-list img{
	width:100%;
}
.department-list{
    row-gap: 32px;
    margin-bottom: 40px;
}
.department-list h4{
	color:#333333;
	font-size: 1rem;
	font-weight: normal;
	padding-left: 18px;
    padding-bottom: 0;
    margin-top: 6px;
    margin-bottom: 16px;
	padding-top: 0px;
}
.department-list h4::before{
	position: absolute;
    content: "";
    width: 10px;
    height: 10px;
    background: var(--main-color);
    border-radius: 50%;
    left: 0;
    top: 4px;
}
.department-list h4::after{
	display: none;
}

.department-item-cont{
	position: relative;
}
.department-item-cont ul{
	list-style: none;
	margin: 0;
    padding: 16px 20px;
	background: #333333DA;
	position: absolute;
	left: 0;
	width: auto;
	max-width: 80%;
    display: inline-flex;
    flex-direction: column;
    gap: 5px;
}
.department-item-cont ul a{
	color: #ffffff;
	text-decoration: none;
	position: relative;
	padding-left: 16px;
	display:block;
}
.department-item-cont ul a::before{
	content: "";
	position: absolute;
	width:5px;
	height: 5px;
	border-left: 1px solid #ffffff;
	border-bottom:1px solid #ffffff;
	transform: rotate(-135deg);
	top: 10px;
	left: 0;
	display: block;
	transition: .3s;
}
.department-item-cont ul a:hover{
	text-decoration: underline;
}
.department-item-cont ul a:hover::before{
	left: 4px;
}
.department-item-cont ul a img{
	width: auto;
}

.department-item-master .department-item-cont{
	height: 310px;
}
.department-item-doctoral .department-item-cont{
	height: 200px;
}
.department-item-master .department-item-cont > img,
.department-item-doctoral .department-item-cont > img{
	width: 100%;
    height: 100%;
    object-fit: cover;
}
.department-item-master ul.department-item-cont-master{
	flex-direction: row;
    flex-wrap: wrap;
	max-width: 95%;
}
.department-item-master ul.department-item-cont-master li{
	width: 32%;
}

@media screen and (max-width: 991px) {
	.department-item-master .department-item-cont{
		height: 400px;
	}
	/*.department-item-doctoral .department-item-cont{
		height: 300px;
	}*/
	.department-item-master ul.department-item-cont-master,
	.department-item-doctoral ul.d{
		max-width: 90%;
	}
	.department-item-master ul.department-item-cont-master li{
		width: 49%;
	}
}

@media screen and (max-width: 768px) {
	.department-list{
		margin-bottom: 20px;
	}
	.department-list h4{
		padding-left: 16px;
	}
	.department-list h4::before{
		width: 8px;
		height: 8px;
		top: 3px;
	}
	.department-item-cont img{
		display: none
	}
	.department-item-cont ul{
		/*padding: calc(100vw/ 768 * 16) calc(100vw/ 768 * 20);*/
		padding: 0;
		gap: calc(100vw/ 768 * 5);
		width:100%;
		display: flex;
		background: transparent;
		position: relative;
		top: unset;
		left: unset;
	}
	.department-item-cont ul a{
		padding-left: calc(100vw/ 768 * 16);
		color: #000000;
	}
	.department-item-cont ul a::before{
		width:calc(100vw/ 768 * 5);
		height: calc(100vw/ 768 * 5);
		top: 8px;
		border-color:#000000; 
	}
	.department-item-master .department-item-cont,
	.department-item-doctoral .department-item-cont{
		height: auto;
	}
	.department-item-master ul.department-item-cont-master li{
		width: 100%;
	}
}
@media screen and (max-width: 575px) {
	
	.department-item-cont ul{
		gap: calc(100vw/ 375 * 5);
	}
	.department-item-cont ul a{
		padding-left: calc(100vw/ 375 * 16);
	}
	.department-item-cont ul a::before{
		width:calc(100vw/ 375 * 5);
		height: calc(100vw/ 375 * 5);
	}
}

/*　学部大学院バナー */
.bn-pickup{
	display: flex;
	position: relative;
	background: var(--main-color);
	color: #fff;
}
.bn-pickup-title{
	padding: 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background: var(--bg-color02);
	gap: 10px;
	position: relative;
	top: -20px;
	left: 20px;
	width: 20%;
}
.bn-pickup-title-img{
	width: 75px;
}
.bn-pickup-title-img img{
	width: 100%;
}
.bn-pickup-title-text{
	color: var(--main-color);
	font-size: 1.5625rem;
	font-weight: bold;
    line-height: 1.4em;
    margin: 0!important;
}
.bn-pickup-detail{
	padding: 30px 30px 30px 50px;
}
.bn-pickup-detail-desc p:last-child{
    margin-bottom: 5px;
}
.btn04{
	margin-left: auto;
}

#pickup2 .bn-pickup{
	display: block;
	background: none;
	/*padding: 1px;*/
	color: #fff;
}
#pickup2 .bn-pickup::before{
	content: '';
	display: block;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: var(--main-color);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 30px;
	margin: auto 0;
	transition: all .3s ease;
	z-index: 2;
}
#pickup2 .bn-pickup::after{
	content: '';
    /*display: flex;
    align-items: center;*/
	width: 16px;
	height: 16px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
	/*font-family: "Jost", sans-serif;
	font-weight: bold;
	font-size: 1.15rem;*/
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50px;
	margin: auto 0;
	transition: all .3s ease;
	z-index: 2;
}
#pickup2 .bn-pickup a{
	text-decoration: none;
	color: #fff;
	position: relative;
	display: block;
}
#pickup2 .bn-pickup a::before{
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background: var(--main-color);
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: all .3s ease;
}
#pickup2 .bn-pickup-title-img{
	position: absolute;
    width: 100%;
    height: 100%;
	z-index: -1;
    background: var(--sub-color04);
}
#pickup2 .bn-pickup-title-img img{
	width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
#pickup2 .bn-pickup-detail{
	padding: 30px 40px 30px 120px;
	position: relative;
}
#pickup2 .bn-pickup-title-text{
	color: var(--sub-color02);
}

@media (hover: hover) {
	#pickup2  .bn-pickup a:hover img{
		opacity: 1;
	}
	#pickup2 .bn-pickup a:hover::before{
		opacity: 0.5;
	}
	#pickup2 .bn-pickup:hover::before{
		/*transform: scale(1.2);*/
		background: #fff;
		left: 35px;
	}
	#pickup2 .bn-pickup:hover::after{
		/*color: var(--main-color);*/
		border-top: 1px solid var(--main-color);
		border-right: 1px solid var(--main-color);
		left: 55px;
	}
}

@media screen and (max-width: 1200px) {
	.bn-pickup-title{
		width: 30%;
	}
}

@media screen and (max-width: 991px) {
	.bn-pickup{
		flex-direction: column;
	}
	.bn-pickup-title{
		flex-direction: row;
        width: auto;
        justify-content: flex-start;
        margin-right: 40px;
        padding: 20px 30px;
	}
	.bn-pickup-title-img{
		width: 50px;
	}
	.bn-pickup-detail{
		padding: 0 20px 20px 20px;
		margin-top: -10px;
		margin-bottom: 10px;
	}
}
@media screen and (max-width: 767px) {
	#pickup2 .bn-pickup-detail{
		width: 100%;
		padding: 20px 20px 20px 120px;
	}
	#pickup2 .bn-pickup::before{
		width: 65px;
		height: 65px;
	}
}

/*　ジョイントディグリープログラムバナー　*/
.bn-jointdegree{
	position: relative;
	min-height: 250px;
	overflow: hidden;
}
.bn-jointdegree > img{
	width: auto;
	height: 100%;
	object-fit: cover;
    max-width: unset;
}
.bn-jointdegree-detail{
	position: absolute;
	top: 0;
	right: 0;
	width: 688px;
	max-width: 100%;
	color: #ffffff;
	min-height: 100%;
	z-index: 1;
	display: flex;
	justify-content: center;
	flex-direction: column;
	padding: 20px 40px;
    align-items: flex-start;
}
.bn-jointdegree-detail::before{
	background: var(--main-color);
	opacity: 0.85;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.bn-jointdegree-detail .bn-jointdegree-detail-subtitle{
	color: var(--sub-color02);
	font-size: 1.25rem;
	font-weight: bold;
	margin: 0;
}
.bn-jointdegree-detail .bn-jointdegree-detail-title{
	color: var(--sub-color02);
	font-size: 1.5625rem;
	font-weight: bold;
    margin: 0;
    margin-bottom: 3px;
    line-height: 1.4em;
    margin-top: 5px !important;

}
.bn-jointdegree-detail .bn-jointdegree-detail-desc p:last-child{
    margin-bottom: 5px;
}
.bn-jointdegree-detail .btn04{
	margin-left: auto;
}
@media screen and (max-width: 768px) {
	.bn-jointdegree > img{
    	height: 30vw;
	}
	.bn-jointdegree-detail {
		position: relative;
        padding: 20px;
		width: 100%;
	}
	.bn-jointdegree-detail .bn-jointdegree-detail-subtitle{
		font-size: 1.14285rem;
	}
	.bn-jointdegree-detail .bn-jointdegree-detail-title{
        font-size: 1.428rem;
        margin-top: 5px !important;
	}
}/*ニュース*/
.news-box{
	flex: 1;
}
.news-tab-detail{
	display: flex;
	list-style: none;
	padding-left: 0;
	flex-wrap: wrap;
    gap: 10px 0;
}
.news-tab-detail li:not(:last-child){
	padding-right: 30px;
}
.news-tab-detail li a{
	text-decoration: none;
	color:#333333;
	position: relative;
}
.news-tab-detail li a::after{
	content: "";
	position: absolute;
	bottom:-4px;
	width:0;
	background:#333333;
	height: 1px;
	display: block;
	transition: .3s;
	left: 0;
}
.news-tab-detail li a:hover::after{
	width: 100%;
}
.news-tab-detail .is-current{
	margin-left: 20px;
}
.news-tab-detail .is-current a{
	font-weight: bold;
	position: relative;
}
.news-tab-detail .is-current a::before{
	content: "";
    background: var(--main-color);
    padding-right: 0.5em;
    position: absolute;
    display: block;
    left: -18px;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
}

.news-box > ul{
	border-top: 1px solid #999999;
    padding: 0;
    list-style: none;
}
#main p.news-title{
	padding:0;
	margin:0 0 5px;
}
#main .event-list p.news-title{
	padding:0;
	margin:0 0 5px;
    color: var(--main-color);
}
.news-box h2 + ul{
	border-top:unset;
}
/*トップと同じ*/
.news-item{
	border-bottom:1px solid #999999;
	padding: 15px 0 10px;
}
.news-item a{
	text-decoration: none;
	color: #333;
}
.news-item a:hover{
	text-decoration: underline;
}
.news-meta{
	display: flex;
    padding-bottom: 5px;
	align-items: center;
}
.news-meta time{
	font-size: 0.875em;
	color:#666666;
	min-width: 100px;
	white-space: nowrap;
}
.news-meta > span {
	padding: 2px 15px!important;
    margin-left: 10px;
    background: #f2f2f2;
    font-size: 0.875rem;
    display: block;
    width: 100%;
}
div:not(.success-meta) > ul > .news-cat{
	font-size: 0.75rem;
	color:#333333;
	position: absolute;
	padding: 0px 20px;
	position:relative;
}
div:not(.success-meta) >ul > .news-cat::before{
    content: "";
    position: absolute;
    left: 0;
    background: var(--sub-color03);
    width: 12px;
    height: 12px;
    border-radius: 50%;
    display: block;
    top: 50%;
    transform: translateY(-50%);
}
.news-cat-list{
	display: flex;
	list-style: none;
	margin-bottom: 0;
    margin-top: 0;
    padding-left: 2rem;
}
/*トップと同じ*/

.news-cat-news::before{
    background: #b3b3b3 !important;
}
.news-cat-exam::before{
    background: #96c8e2 !important;
}
.news-cat-event::before{
    background: #abd4b7 !important;
}
.news-cat-honor::before,
.news-cat-award::before{
    background: #e7d7a9 !important;
}
.news-cat-press::before,
.news-cat-notice::before{
    background: #e7a8ba !important;
}
.news-tab-detail .is-current.is-current-news a::before{
    background: #b3b3b3;
}

.news-tab-detail .is-current.is-current-exam a::before{
    background: #96c8e2;
}
.news-tab-detail .is-current.is-current-event a::before{
    background: #abd4b7;
}
.news-tab-detail .is-current.is-current-honor a::before,
.news-tab-detail .is-current.is-current-award a::before{
    background: #e7d7a9;
}
.news-tab-detail .is-current.is-current-press a::before,
.news-tab-detail .is-current.is-current-notice a::before{
    background: #e7a8ba;
}
.news-mainvisual-text{
    font-size: 2.5rem;
    color: var(--sub-color02);
    font-weight: normal;
    margin-bottom: 0;
    animation-name: fadeInLeft;
    animation-fill-mode: backwards;
    animation-duration: .7s;
    animation-timing-function: ease;
    animation-direction: normal;
}
.news-h1{
    font-size: 2.2rem;
    color:var(--main-color);
    margin-bottom:30px;
}
@media screen and (max-width:768px){
	.news-cat-list{
		padding-left:0;
	}
.news-meta{
	align-items: flex-start;
}
.news-meta > span {
    margin-bottom: 10px;
}
}

/*大学案内>名古屋工業大学ビジョン>ビジョン*/
/*-----メインビジュアル-----*/
.read_vision {
	background: url(../../intro/vision/vision/imgs/bg_read.jpg) no-repeat center;
	background-size: cover;
	padding: 170px 16px 100px;
    text-align: center;
}
.read_vision .header-midashi {
	background: rgba(244,85,17,0.80);
	font-weight: bold;
	text-align: center;
	width: auto;
	padding: 10px;
    color: #fff;
	font-size: 1.2rem;
}
.read_vision .cc {
	font-size: 3rem;
	line-height: 1.4em;
    text-align: center;
    color: #FFF;
    text-shadow: 0 0 10px #000;
    margin: 0;
}
@media screen and (max-width: 768px) {
	.read_vision {
		padding: 50px 0 30px;
	}
	.read_vision .cc {
		font-size:1.6rem;
	    font-weight: bold;
	    line-height: 1.4em;
	}
}
/*-----戦略-----*/
.strategy{
    display: -webkit-flex;
    display: flex;
    margin-top: 50px;
    margin-bottom: 0;
}
.strategy li{
    position: relative;
}
.strategy li img{
    position: absolute;
}
.strategy li:first-child{
    width: 33%;
    background: #FFDDFF;
    padding:24px;
    box-sizing: border-box;
    margin-right: 10px;
}
.strategy li:first-child img{
    top: 10%;
    width: 60px;
    right: -25px;
}
.strategy li:nth-child(2){
    background: #C6D9F1;
    width: 34%;
    padding: 24px 24px 8px 24px;
    box-sizing: border-box;
}
.strategy li:nth-child(2) img{
    top: 10%;
    width: 70px;
    right: -35px;
    z-index: 22;
}
.strategy li:last-child{
background:#FDEADA;
    width: 33%;
    padding: 24px;
    box-sizing: border-box;
    }
.strategy .no{
    font-size: 1.1rem;
    text-align: center;
    /*display: block;*/
    display:inline-block;
    margin: 0 auto 16px auto;
    color: #fff;
    /*width: 100px;*/
    background: #666;
    padding: 5px 16px;
    box-sizing: border-box;
    border-radius: 10px;
    -webkit-border-radius: 10px; 
    -moz-border-radius: 10px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
.strategy .no strong{
    font-size: 2rem;
    font-family: "Times New Roman", Times, "serif";
    font-style: italic;
    margin-left: 8px;
}
.strategy h2{
    text-align: center;
    background:none!important;
    margin: 5px 0 0 0!important;
    font-size:1.3rem!important;
    padding: 0!important;
    color: #C00000!important;
}
.strategy h2::after,
.strategy4 h2::after{
	display:none;
}
.strategy dl,
.strategy4 dl{
	margin:1em 0;
}

.strategy dt{
    font-size: 1rem;
    font-weight: bold;
}
.strategy dt span{
    display: block;
    font-size: 0.9rem;
    font-weight: bold;
    margin-top: 5px;
}
.strategy dd{
    margin-inline-start: 0;
    margin-top: 16px;
}
.strategy dt span.br{
    display: block;
    font-size:1rem;
    font-weight: bold;
    margin-top: 5px;
}
@media screen and (max-width: 768px) {
.strategy dt span.br{
    display: inline!important;
}
.strategy{
    display:block;
    padding:10px;
    background: #eee;
}
.strategy li{
    position: relative;
}
.strategy li:first-child{
    width: 100%;
    padding:16px;
    margin-right: 0;
    margin-bottom:20px;
}
.strategy li:first-child img{
    left: 45%;
    top: inherit;
    bottom: -25px;
    right: inherit;
    transform: rotate(90deg);
    width: 40px;
}
.strategy li:nth-child(2){
    width: 100%;
    padding: 16px 16px 8px 16px;
}
.strategy li:nth-child(2) img{
    left: 45%;
    width: 50px;
    top: inherit;
    bottom: -20px;
    right: inherit;
    transform: rotate(90deg);
}
.strategy li:last-child{
    width: 100%;
    padding: 16px;
    }
}
.strategy4{
    background: #EBF1DE;
    padding:24px;
    box-sizing: border-box;
}
.strategy4 .no{
    font-size: 1.1rem;
    text-align: center;
    /*display: block;*/
    display:inline-block;
    margin: 0 auto 16px auto;
    color: #fff;
    /*width: 100px;*/
    background: #666;
    padding: 5px 16px;
    box-sizing: border-box;
    border-radius: 10px;
    -webkit-border-radius: 10px; 
    -moz-border-radius: 10px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
.strategy4 .no strong{
    font-size: 2rem;
    font-family: "Times New Roman", Times, "serif";
    font-style: italic;
    margin-left: 8px;
}
.strategy4 h2{
    text-align: center;
    background:none!important;
    margin: 5px 0 0 0!important;
    font-size:1.3rem!important;
    padding: 0!important;
    color: #C00000!important;
}
.strategy4 dt{
    font-size: 1rem;
    font-weight: bold;
}
.strategy4 dt span{
    display: block;
    font-weight: normal;
    font-size: 0.9rem;
    font-weight: bold;
    margin-top: 5px;
}
.strategy4 dd{
    margin-inline-start: 0;
    margin-top: 16px;
}
.strategy-img{
    display: -webkit-flex;
    display: flex;
    text-align: center;
    margin: 0;
    padding: 0;
}
.strategy-img li{
    width: 33%;
    line-height: 0;
}
.strategy-img li img{
    width: 40px;
}
@media screen and (max-width: 768px) {
.strategy-img li:first-child,
.strategy-img li:last-child{
    opacity: 0;
    }
}

/*history.htmlで使用。
------------------------*/
.contents-histry{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.contents-histry.clear::before,
.contents-histry.clear::after{
	display:none;
}
/* For modern browsers */
.contents-histry dl:before,
.contents-histry dl:after,
.contents-histry-main dl:before,
.contents-histry-main dl:after {
	content: "";
	display: table;
}
.contents-histry dl:after,
.contents-histry-main dl:after {
	clear: both;
}
/* For IE 6/7 (trigger hasLayout) */
.contents-histry dl,
.contents-histry-main dl {
	zoom: 1;
}
.contents-histry dl,
.contents-histry-main dl{
	margin:0;
	clear:both;
	border-top:1px solid #CDCDCD;
	padding:10px 5px;
}
.contents-histry dl dt{
	margin:0;
	width:40%;
	float:left;
	font-weight:bold;
	display:block;
}
.contents-histry dl dd{
	margin:0;
	width:60%;
	float:left;
	display:block;
}
.contents-histry-main{
	margin:10px 0;
	border-bottom:1px solid #CDCDCD;
}
.contents-histry-main dl dt{
	margin:0;
	width:25%;
	float:left;
	font-weight:bold;
	display:block;
}
.contents-histry-main dl dd{
	margin:0;
	width:75%;
	float:left;
	display:block;
}


.histry-l{
	width:49%;
	float:left;
	border-bottom:1px solid #CDCDCD;
}
.histry-r{
	width:49%;
	float:right;
	border-bottom:1px solid #CDCDCD;
}
@media screen and (max-width: 768px) {
	.contents-histry{
    	flex-direction: column;
	}
	.contents-histry dl,
	.contents-histry-main dl{
		padding:10px 5px;
	}
	.contents-histry dl dt{
		width:100%;
		float:none;
	}
	.contents-histry dl dd{
		width:100%;
		float:none;
		text-indent:1em;
	}
	.contents-histry-main{
		border-bottom:1px solid #CDCDCD;
	}
	.contents-histry-main dl dt{
		width:100%;
		float:none;
	}
	.contents-histry-main dl dd{
		width:100%;
		float:none;
		text-indent:1em;
	}


	.histry-l{
		width:100%;
		float:none;
	}
	.histry-r{
		width:100%;
		float:none;
		margin:10px 0 0;
	}
	.histry-l h2:first-child{
		margin-top:0 !important;
	}
}
/* /intro/movie30.htmlで使用
	名工大30秒動画				*/
.intro-youtube{
	max-width:600px;
	margin:0 auto;
	aspect-ratio: 16 / 9;
    padding-top: unset;
}
.row img{
	max-width:100%;
}
/*officer.htmlで使用
tbodyのthをtheadと同じ装飾。
------------------------*/
.cont-officer table th{
	text-align:left;
	width:30%;
}
.cont-officer table td{
	text-align:center;
}
.cont-officer table.gakutyo{
	width:50%;
}
.cont-officer .gakutyo th{
	width:60%;
}
.cont-officer .gakutyo td{}


@media screen and (max-width: 568px) {
.cont-officer table{
	font-size:50%;
	line-height: 1.2em;
}
}

/*メイ&タクミ*/
.harf-l.characterimg a,
.harf-r.characterimg a{
	display:block;
}

/* 学びの特色
---------------------------------------------*/

#main .features-pickup01 h2,
#main .features-pickup02 h2{
	margin: 0;
}
.features-pickup01 h2::after,
.features-pickup02 h2::after{
	display: none;
}
.features-pickup01 h2 span,
.features-pickup02 h2 span{
	display: block;
	font-size: 1.31rem;
	font-family: "Jost", sans-serif;
	color: var(--sub-color04);
}
.features-pickup02 .features-pickup-text{
	order: 2;
}
.features-pickup02 .features-pickup-img{
	order: 1;
}
.features-pickup-img{
	margin: 0 auto;
	max-width: 470px;
}
.features-pickup{
	padding-bottom: 60px;
	margin-bottom: 60px;
	border-bottom: 1px solid #999;
}

/*　詳細情報用ボタン　*/
.features-banner{
	position: relative;
	width: 100%;
	height: 150px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 40px;
	/*margin-bottom: 30px;*/
}
#main .features-banner h2{
	margin: 40px 100px;
    padding: 20px;
    position: relative;
    width: 100%;
    color: #fff;
	z-index: 2;
}
#main .features-banner h2::before{
	content: 'More';
    display: block;
    font-family: "Jost", sans-serif;
    color: #fff;
    font-size: 1rem;
    position: absolute;
    top: 50%;
    right: 20px;
    margin: auto 0;
    transform: translateY(-50%);
}
#main .features-banner h2::after{
	width: 100%;
    height: 100%;
    background: var(--sub-color04);
    opacity: 0.9;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
	transition: all .3s ease;
}
.features-banner h2 span{
	position: absolute;
	top: 0;
	bottom: 0;
	right: 80px;
	margin: auto 0;
	transition: all .3s ease;
}
.features-banner h2 span::before,
.features-banner h2 span::after{
	content: '';
	display: block;
	width: 14px;
	height: 2px;
	background: var(--sub-color02);
	position: absolute;
	transition: all .3s ease;
}
.features-banner h2 span::before{
	top: 0;
    bottom: 0;
    left: 0;
    margin: auto 0;
}
.features-banner h2 span::after{
	transform: rotate(90deg);
	top: 0;
    bottom: 0;
    left: 0;
    margin: auto 0;
}
.features-banner .features-banner-img{
	width: 100%;
    height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	transition: all .3s ease;
}
.features-banner .features-banner-img img{
	object-fit: cover;
	object-position: center;
	width: 100%;
    height: 100%;
}

/*　詳細情報中身*/
.features-detail-item{
	display: none;
	padding: 0 100px;
	padding-top: 30px;
}
#main .features-detail p:first-child{
	margin-top: 0;
}
.features-detail-text{
	padding: 20px;
	background: var(--bg-color02);
}
#main .features-detail-text p{
	margin-bottom: 0;
}
#main p.features-detail-text-num{
	font-size: 2.5rem;
	font-family: "Jost", sans-serif;
	color: var(--sub-color04);
	margin-top: 6px;
	margin-right: 15px;
}
.features-underline{
	/*padding: 0 5px;*/
	background: linear-gradient(transparent 50% , var(--sub-color02) 50%);
}
.features-detail-list li{
	border-top: 1px solid #999;
}
.features-detail-list li:first-child{
	border-top: none;
}

/*　詳細情報オープン時の装飾　*/

#main .features-detail-wrap.open .features-banner h2::before{
	content: 'Close';
}
.features-detail-wrap.open .features-banner h2 span{
	right: 85px;
}
.features-detail-wrap.open .features-banner h2 span::before{
	opacity: 0;
}
.features-detail-wrap.open .features-banner h2 span::after{
	transform: rotate(360deg);
}

.features-detail-btn > a{
	display: flex;
    flex-direction: column;
    justify-content: center;
    font-size: 120%;
    font-weight: bold;
    height: 100%;
}
.features-detail-btn > a > span{
	display: block;
	font-size: 1rem;
    font-weight: normal;
    color: #333;
	margin-top: 5px;
	transition: all .3s ease;
}

@media (hover: hover) {
	.features-banner:hover{
		cursor: pointer;
	}
	#main .features-banner:hover h2::after{
		opacity: 0.8;
	}
	.features-banner:hover .features-banner-img{
		opacity: 0.8;
	}
	.features-banner:hover h2 span{
		transform: scale(1.1);
	}
	.features-banner:hover h2 span::before{
		transform: rotate(360deg);
	}
	.features-banner:hover h2 span::after{
		transform: rotate(450deg);
	}
	.features-detail-btn > a:hover > span{
		color: #fff;
	}
}

@media screen and (max-width: 991px) {	
	#main .features-banner h2{
		margin: 20px 50px;
	}
	.features-detail-item{
		padding-left: 0;
		padding-right: 0;
	}
}
@media screen and (max-width: 767px) {
	
	.features-pickup{
		padding-bottom: 40px;
		margin-bottom: 40px;
	}
	.features-pickup02 .features-pickup-text{
		order: 1;
	}
	.features-pickup02 .features-pickup-img{
		order: 2;
	}
	.features-banner{
		height: 100px;
		margin-top: 20px;
	}
	#main .features-banner h2{
		margin: 10px 20px;
        padding: 10px 70px 10px 10px;
        font-size: 1.25rem;
	}
	#main .features-banner h2::before{
		right: 10px;
	}
	.features-banner h2 span{
		right: 65px;
	}
	.features-detail-wrap.open .features-banner h2 span{
		right: 65px;
	}
	/*.features-detail h3{
		padding: 0 0 0 47px;
	}
	.features-detail h3 span{
		padding: 3px 7px;
	}*/
	.features-detail img{
		max-width: 350px;
	}
}

/* 研究　科学知の創出
---------------------------------------------*/

.edu-study02 > div:first-child{
	order: 2;
}
#main .edu-study01 h2,
#main .edu-study02 h2{
	margin: 0;
}
.edu-study01 h2::after,
.edu-study02 h2::after{
	display: none;
}
/*#main .edu-study01 h3,
#main .edu-study02 h3{
	margin: 0;
	color: var(--sub-color04);
}
#main .edu-study01 h3:first-letter,
#main .edu-study02 h3:first-letter{
	color: var(--sub-color04);
}
.edu-study01 h3::after,
.edu-study02 h3::after{
	display: none;
}*/
#main .edu-study-text{
	color: var(--sub-color04);
	/*font-weight: bold;*/
	text-align: right;
	padding-left: 20px;
	position: relative;
}
#main .edu-study-text cite{
	position: relative;
	display: inline-block;
}
#main .edu-study-text cite::before{
	content: '';
	display: block;
	width: 10px;
	height: 1px;
	background: var(--sub-color04);
	position: absolute;
	top: 11px;
	left: -16px;
}

.edu-study-link{
	margin-top: 80px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 40px;
}
.edu-study-link-item{
	width: 48%;
	background: var(--bg-color02);
	/*margin-top: 60px;*/
	/*padding: 50px 60px 10px;*/
	position: relative;
}
#main .edu-study-link-item h2{
	font-size: 1.2rem;
	margin: 0;
    padding: 20px;
    position: relative;
    /*width: 100%;*/
    color: #fff;
	background: var(--sub-color04);
	z-index: 2;
}
.edu-study-link-item h2::after{
	display: none;
}
.edu-study-link-list{
	/*margin-left: 20px;*/
	padding: 20px;
	/*background: var(--bg-color02);*/
	/*position: relative;
	top: -40px;
	left: 0;*/
}
.edu-study-link-list .linklist{
	margin: 0;
}
.edu-study-link-bg{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	opacity: 0.6;
}
.edu-study-link-bg img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

@media screen and (max-width: 1200px) {
	.edu-study-link-item{
		width: 47%;
	}
	.edu-study-img{
		max-width:470px;
		margin: 0 auto;
	}
}

@media screen and (max-width: 767px) {
	.edu-study-link{
		gap: 20px;
	}
	.edu-study02 > div:first-child{
		order: 0;
	}
	.edu-study-link-item{
		width: 100%;
		/*padding: 20px 10px 0;*/
	}
	.edu-study-link-list{
		/*top: -25px;*/
		padding: 10px;
	}
	#main .edu-study-link-item h2{
		padding: 10px;
	}
}

/*　学部・大学院前期課程
---------------------------------------------*/

.edu-faculty,
.edu-master{
	margin-top: 20px;
	padding-top: 60px;
}
.edu-faculty-text,
.edu-master-text{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#main .edu-faculty h3,
#main .edu-master h3{
	font-size: 1.7rem;
	margin: 0;
	padding-top: 0;
}
#main .edu-master h3{
	color: var(--sub-color03);
}
.edu-faculty h3:first-letter{
	color: #333;
}
.edu-faculty h3::after,
#main .edu-master h3::after{
	display: none;
}
#main .edu-faculty h4{
	color: var(--sub-color03);
	font-weight: bold;
	font-size: 1.125rem;
	margin: 0;
	padding-bottom: 0;
}
.edu-faculty h4::before,
.edu-faculty h4::after{
	display: none;
}

@media screen and (max-width: 767px) {
	#main .edu-faculty h3,
	#main .edu-master h3{
		margin-top: 20px;
	}
}

/* indexbox用アンカークラス
----------------------------------------*/

.anchor{
	margin-top: -30px;
	padding-top: 30px;
}

/* あなたへのおすすめ
----------------------------------------*/

.recom-box{
	background: var(--sub-color02);
	padding: 30px;
	margin-bottom: 60px;
}
#main .recom-box h2{
	margin: 0;
	padding: 0;
}
#main .recom-box h2 .title{
	display: block;
	font-size: 1.5rem;
	color: #333;
}
#main .recom-box h2 .title:first-letter{
	color: var(--main-color);
}
.recom-box h2 .sub-title{
	display: block;
	font-size: 0.875rem;
	margin-bottom: 5px;
	color: var(--main-color);
}
.recom-box h2::after{
	display: none;
}
.recom-box-list{
	margin: 0;
}
.recom-box-list > li::before{
	background: var(--main-color);
}
.recom-box-list > li::after{
	background: url("../../imgs/common/ic_arrow_white.png");
	background-size: cover;
}

@media screen and (max-width: 991px) {
	.recom-box-list{
		/*margin-top: 20px;*/
	}
}
@media screen and (max-width: 767px) {
	.recom-box{
		padding: 20px;
		margin-bottom: 50px;
	}
	#main .recom-box h2{
		line-height: 1;
	}
}

/*サイトマップ表示制御*/
.sitemap .no-sitemap{
	display:none;
}
.sitemap .fw-bold{
	font-weight:inherit !important;
}