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

/* ==================================================================
	秋のオープンキャンパス
================================================================== */

/* 分野別説明会
------------------------------------------------------- */
.timetable_cassette .prof {
	margin-top: 0.2em;
	margin-bottom: 0.5em;
}
.timetable_cassette .prof:last-child {
	margin-bottom: 0;
}



/* 学科・専攻別体験会
------------------------------------------------------- */
.taiken_cassette .schedule {
	margin-top: 20px;
	margin-bottom: 20px;
	padding-bottom: 5px;
	border-bottom: solid 3px #f5f564;
}
.taiken_cassette .schedule * {
	display: inline-block;
	vertical-align: middle;
	font-weight: bold;
}
.taiken_cassette .schedule .date {
	font-size: 142%;
	font-weight: bold;
	color: #00afec;
}
.taiken_cassette .schedule .times_number {
	margin-right: 0.5em;
	padding: 0.2em 0.5em;
	background: #969696;
	font-weight: normal;
	color: #fff;
}
.taiken_cassette .schedule .time {
	margin-right: 1em;
	color: #646464;
}
.taiken_cassette .schedule .date .time {
	font-size: 70%;
}

@media screen and (max-width: 740px) {
	.taiken_cassette .schedule {
		font-size: 90%;
	}
	.taiken_cassette .schedule > * {
		margin-top: 5px;
	}
	.taiken_cassette .schedule .date {
		display: block;
	}
}

.taiken_cassette .class_wrap {
	padding-bottom: 10px;
	border-bottom: solid 1px #b6b6b6;
	padding-bottom: 20px;
}
.taiken_cassette .class_wrap .image {
	float: right;
	margin-left: 10px;
}
.taiken_cassette .class_wrap .class .cat {
	/*float: left;*/
	margin: 0;
}
.taiken_cassette .class_wrap .class h4 {
	margin-top: 0;
}

@media screen and (min-width: 741px), print {
	.max_w860 {
		max-width: 860px;
		margin-left: auto;
		margin-right: auto;
	}
	.taiken_cassette .class_wrap .class {
		padding-top: 5px;
	}
	/*.taiken_cassette .pl_x1 { padding-left: 50px; }
	.taiken_cassette .pl_x2 { padding-left: 100px; }
	.taiken_cassette .pl_x3 { padding-left: 150px; }*/
}

@media screen and (max-width: 740px) {
	.taiken_cassette .class_wrap .image {
		width: 35%;
		margin-bottom: 10px;
	}
	.taiken_cassette .class_wrap .class .cat {
		float: none;
		margin: 0;
		font-size: 80%;
	}
	.taiken_cassette .class_wrap .class h4 {
		margin-top: 5px;
		font-size: 110%;
	}
	.taiken_cassette .class_wrap .place {
		clear: both;
	}
}


h3 .kadomaru {
    color: #FFF;
shadowOpacity:1,
borderWidth:1,
borderColor:"#00afec",
borderTopLeftRadius:6,
borderTopRightRadius:6,
borderBottomLeftRadius:6,
borderBottomRightRadius:6
;                                 background-color: #E6371F;
    font-size: 19px;
    line-height: 19px;
    display: block;
    float: left;
    text-align: center;
    margin-right: 10px;
    margin-top: 5px;
    padding-top: 7px;
    padding-right: 8px;
    padding-bottom: 7px;
    padding-left: 8px;
}
@media screen and (max-width: 740px) {
	h3 .kadomaru {
    color: #FFF;
shadowOpacity:1,
borderWidth:1,
borderColor:"#00afec",
borderTopLeftRadius:6,
borderTopRightRadius:6,
borderBottomLeftRadius:6,
borderBottomRightRadius:6
;                         background-color: #E6371F;
    font-size: 14px;
    line-height: 15px;
    display: block;
    float: left;
    text-align: center;
    margin-right: 10px;
    margin-top: 4px;
    padding-top: 7px;
    padding-right: 7px;
    padding-bottom: 5px;
    padding-left: 7px;
}

}

.att{
	color: #F00;
	text-align:center;
	font-weight: bold;
	
	margin-bottom: 20px;
}





.strip_red{
    padding: 0.5em 1em;
    margin: 2em 0;
	background: #FFF0F0;
    /*background: -webkit-repeating-linear-gradient(-45deg, #FFD0D0, #FFD0D0 3px,#FFE8E8 3px, #FFE8E8 7px);
    background: repeating-linear-gradient(-45deg, #FFD0D0, #FFD0D0 3px,#FFE8E8 3px, #FFE8E8 7px);*/
	border: 3px solid #F00;
}
.strip_red p {
    margin: 0; 
    padding: 0;
	font-size: 17px;
	color: #F00;
	padding-left: 2em;
	text-indent: -1em;
	font-weight: bold;
	padding-right: 1em;
	
}


.open_condition{
	border: 3px solid #0099cc;
	margin-bottom: 30px;
	padding-bottom: 20px;
}

	.open_condition h2{
		background:#0099cc;
		font-size: 18px;
		font-weight: bold;
		padding: 5px 0;
		color: #FFF;
		text-align:center;
		margin-bottom: 20px;
	}
	
		.open_condition ul{
			margin: 0 20px 10px 30px;
		}
	
		.open_condition li{
			list-style-type: disc;
			line-height: 1.5;
		}
		
			.open_att_01{
				color: #F00;
				font-weight: bold;
				margin-left: 20px;
				margin-right: 20px;
			}
			
			.open_att_02{
				color: #F00;
				font-weight: bold;
				margin-right: 20px;
			}
			
		.event_plan{
			margin-bottom: 30px;
		}
			
			


.open_condition_01{
	border: 3px solid #F00;
	margin-bottom: 30px;
}

	.open_condition_01 h2{
		background:#F00;
		font-size: 18px;
		font-weight: bold;
		padding: 5px 0;
		color: #FFF;
		text-align:center;
		margin-bottom: 20px;
	}
	
		.open_condition_01 ul{
			margin: 0 20px 10px 30px;
		}
	
		.open_condition_01 li{
			list-style-type: disc;
			line-height: 1.5;
		}


@media screen and (max-width: 740px) {
	
	.open_condition h2,
	.open_condition_01 h2{
		font-size: 16px;
	}
	
}


.open_time{
	position:absolute;
	top: 10px;
	left: 460px;
	font-size: 13px;
	font-weight: bold;
}

@media screen and (max-width: 740px) {
	
.open_time{
	position: static;
}

}

.oc_sec .sec_title {
    padding-bottom: 15px;
}


.fall_open_txt{
	margin-top: 30px;
	margin-bottom: 40px;
	border: 3px solid #0099cc;
}

	.fall_open_txt ul {
		margin: 10px 20px 10px 30px;
	}

	.fall_open_txt li{
		list-style-type: disc;
		line-height: 1.5;
	}
	
	.open_link{
		display: flex;
		justify-content: center;
	}
		
		.open_link_01 a{
			margin-right: 20px;
			font-size: 18px;
		}
		
			.open_link_01 a:hover,
			.open_link_02 a:hover{
				text-decoration: none;
			}
		
		.open_link_02 a{
			margin-left: 20px;
			font-size: 18px;
		}
		
			.open_link_01 a::before,
			.open_link_02 a::before{
				content:">";
			}
		
		
		.att_txt{
			padding-left:1em;
			text-indent:-1em;
			color: #F00;
			font-weight: bold;
			margin-left: 20px;
			margin-bottom: 20px;
		}
		

		
		.program_time{
			background: #f3f3f3;
			padding: 5px 10px;
			margin-bottom: 10px;
			
			font-weight: bold;
			font-size: 17px;
			
			line-height:1.5;
		}


		.program_ttl_01{
			color: #76b3ce;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}
		
		.program_txt_01{
			margin-left: 20px;
			margin-bottom: 30px;
		}
		
		@media screen and (max-width: 740px) {

			.program_txt_01{
				margin-left: 0;
			}
			
		}		
		
		.program_ttl_02{
			color: #928fb2;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}
		
		.program_ttl_03{
			color: #7298c5;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}
		
		.program_ttl_04{
			color: #739e83;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}
		
		.program_ttl_05{
			color: #97b473;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}
		
		.program_ttl_06{
			color: #d284a8;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}
		
		.program_ttl_07{
			color: #e6b95d;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}
		
		.program_ttl_08{
			color: #e09866;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}
		
		.program_ttl_09{
			color: #dc775c;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}
		
		.program_ttl_10{
			color: #a77688;
			font-size: 17px;
			font-weight: bold;
			padding-left:1em;
			text-indent:-1em;
		}	
		
		.program_ttl_v01{
			border-left: 4px solid #e09866;
			margin-left: 10px;
			padding-left: 10px;
			font-size: 17px;
			margin-bottom: 20px;
			font-weight: bold;
		}


.guide_map_area{
	margin: 40px 0;
}
	
	.map_ttl{
		margin-bottom: 30px;
	}
	
		.map_ttl img{
			width: 100%;
			height: auto;
		}
	
	.map_date_box{
		display: flex;
		justify-content: center;
	}
	
		.map_date_box:first-child{
			border-bottom: 1px dotted #000000;
			margin-bottom: 30px;
			padding-bottom: 30px;
		}

		.map_date_box dt img,
		.map_date_box dd img{
			width: 80%;
			height:auto;
		}
			
			.map_date_box dd a[target="_blank"]{
				padding-right: 0;
				background: none;
			}
	
	.pc_box{
		display: block;
	}
	
	.sp_box{
		display: none;
	}
			
	@media screen and (max-width: 741px) {
		
		.pc_box{
			display: none;
		}
		
		.sp_box{
			display: block;
		}
		
		.map_date_box{
			display: block;
			text-align:center;
		}
		
			.map_date_box dt,
			.map_date_box dd{
				margin-bottom: 20px;
			}
		
			.map_date_box dt img,
			.map_date_box dd img{
				width: 50%;
				height:auto;
			}
			
	}
	
	
	.web_intro{
		font-size: 16px;
		margin-bottom: 20px;
		line-height: 1.5;
		color:#F00;
		font-weight: bold;
		text-align:center;
		background:#FFE3E3;
		border:2px solid #FF0000;
		margin-top: 40px;
		padding: 10px;
	}
	
		.op_date_box{
			margin-left: 30px;
		}
	
		.op_date_box .op_date{
			font-size: 17px;
			margin-bottom: 15px;
		}
		
		.op_date_time{
			margin-left: 80px;
			font-size: 15px;
			line-height:1.5;
		}

		@media screen and (max-width: 741px) {
			
			.op_date_box{
				margin-left: 10px;
			}
				
			.op_date_time{
				margin-left: 20px;
			}
			
		}
		
		
		@media screen and (max-width: 741px) {
			
			table.calendar_table {
				border-collapse: collapse;
				margin: 0;
				padding: 0;
				width: 700px;
			}

	.scroll-table {
		overflow: auto;
		white-space: nowrap;
		margin-bottom: 40px;
	}
	
		.scroll-table img{
			width:860px;
			max-width:860px;
		}

			
		}
		
		
* {
    box-sizing: border-box;
}

/* 親要素（ul）のスタイル */
.nav_link ul {
    display: flex; /* Flexboxコンテナにする */
    flex-wrap: wrap; /* アイテムを複数行に折り返す */
    gap: 2%; /* liとliの間に余白を作る */
    align-items: stretch; /* ★重要：すべてのliの高さを揃える */
    list-style: none; /* リストの点を消す */
    padding: 0;
    margin: 0;
}

/* li（各ボタン）のスタイル */
.nav_link li {
    flex-basis: 23.5%; /* 4つ横に並べるための基準幅 */
    flex-grow: 1; /* 余ったスペースを均等に伸ばす */
    margin: 0; /* liの余白はgapが管理 */
	margin-bottom: 15px;
}

/* aタグ（ボタンのリンク）のスタイル */
.nav_link a {
    display: flex; /* テキストを中央寄せするためにFlexboxにする */
    height: 100%; /* liの高さに合わせる */
    width: 100%; /* liの幅に合わせる */
    justify-content: center; /* 水平方向の中央寄せ */
    align-items: center; /* 垂直方向の中央寄せ */
    text-align: center;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #000;
    padding: 10px;
	font-size:14px;
}

.nav_link a:hover{
	background-color: #CCCCCC;
}

.taiken_cassette .title{
	margin-top:15px;
	margin-bottom:30px;
	
	padding: 0.5em;/*文字周りの余白*/
	color: #010101;/*文字色*/
	background: #eaf3ff;/*背景色*/
	/*border-bottom: solid 3px #516ab6;/*下線*/
	font-weight:bold;
}
	
.img-layout{
	display:flex;
	gap:2%;
}

.img-layout .text,
.img-layout .thumb{
	width:50%;
}

.img-layout .thumb img{
	width:100%;
	height:auto;
}

.program .attention{
	font-size:13px;
	margin-bottom:15px;	
}

.dept_product .category-title,
.dept_management .category-title{
	color:#fff;
	margin-bottom:15px;	
}

.dept_product .category-title span{
	background:#ED6C00;
	padding:1%;
}

.dept_management .category-title span{
	background:#C56619;
	padding:1%;
}

.display_pc{
	display: block;
}

.display_sp{
	display:none;
}

@media screen and (max-width: 767px) {
	
.display_pc{
	display:none;
}

.display_sp{
	display:block;
}

.nav_link li {
    flex-basis: 49%;
}
	

.img-layout{
	display: block;
}

.img-layout .text{
	margin-bottom:15px;
}

.img-layout .text, .img-layout .thumb {
  width: 100%;
}


}


		
