@charset "utf-8";

/*====================================================================

 contents_responsive
 750px

====================================================================*/

@media screen and (max-width: 750px) {
	
	html { -webkit-text-size-adjust: 100% }
	
	html, body {
		word-wrap: break-word;
		word-break: break-all;
		overflow-x: hidden;
	}
	
	body {
		min-width: inherit;
		background: url(/img/sp_bg2.png) repeat left top;
    background-size: 101px 101px;
	}
	
	img {
		max-width: 100%;
		height: auto;
		box-sizing: border-box;
	}
	
	#wrapper {
		background: none;
	}
	
	.center img {
		margin: 0;
	}
	
	.image_right img,
	.image_left img {
		float: none;
		margin: 0 0 10px;
	}
	
	table {
		max-width: 100%;
	}
	
	table caption {
		display: none!important;
	}
	
	table th,
	table td {
		max-width: 100%;
	}
	
	/*====================================================================

	 header

	====================================================================*/
	
	#header,
	#targetnav_inner,
	#gnav_inner,
	.header_r,
	#sitenav,
	#headernav,
	.tool,
	#targetnav,
	#gnav {
		display: none;
	}
	
	/*
	sp_header
	---------------------------------------------------------*/
	#sp_header {
		display: block;
		background: #fff;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding: 0 20px;
		position: relative;
		border-bottom: 1px solid #d6d1d1;
	}
	#sp_logo {
		font-size: 100%;
		margin: 0;
		padding: 15px 0;
	}
	#sp_logo img {
		width: 150px;
	}
	
	/*
	gnav
	---------------------------------------------------------*/
	#sp_gnav {
		padding: 0;
	}

	#sp_gnav #btn-open {
		background: url(/img/btn_gnav.png) no-repeat center top;
		background-size: 30px 20px;
		font-family: 'Alice', sans-serif;
		font-size: 11px;
		margin: 0 auto;
		padding: 22px 0 10px;
		-webkit-tap-highlight-color: rgba(0,0,0,0);
		text-align: center;
		width: 40px;
		position: absolute;
		top: 25px;
		right: 20px;
	}

	#sp_gnav .gnav {
		background: #fff;
		left: 0;
		position: absolute;
		width: 100%;
		z-index: 100;
	}

	/* sp_globalmenu */
	#sp_gnav .gnav .sp_globalmenu {
		margin: 0;
	}

	#sp_gnav .gnav .sp_globalmenu li {
		border-top: 1px solid #cbcbcb;
		font-weight: bold;
		margin: 0;
		padding: 0;
		font-size: 110%;
	}

	#sp_gnav .gnav .sp_globalmenu li a {
		color: #313131;
		display: block;
		padding: 11px;
		text-decoration: none;
	}
	
	#sp_gnav .gnav .sp_globalmenu_open {
		position: relative;
	}
		#sp_gnav .gnav .sp_globalmenu_open .sp_open_icon {
			padding: 11px;
			display: block;
			position: relative;
		}
			#sp_gnav .gnav .sp_globalmenu_open .sp_open_icon:after {
				content: "▼";
				position: absolute;
				top: 0.75em;
				right: 10px;
				color: #920646;
			}
		#sp_gnav .gnav .sp_globalmenu_open .sp_open_icon.active {
			background-color: #f5f5f5;
		}
		#sp_gnav .gnav .sp_globalmenu_open ul {
			display: none;
			font-size: 90%;
		}
			#sp_gnav .gnav .sp_globalmenu_open ul li a {
				padding-left: 1.5em;
			}
	
	/* sp_g_submenu */
	#sp_gnav .gnav .sp_g_submenu li {
		border-top: 1px solid #fff;
		font-weight: bold;
		margin: 0;
		padding: 0;
		font-size: 105%;
		background-color: #920646;
	}

	#sp_gnav .gnav .sp_g_submenu li a {
		color: #fff;
		display: block;
		padding: 11px;
		text-decoration: none;
	}
	
	/* sp_g_smallmenu */
	.sp_g_smallmenu:after {
		content: "";
		clear: both;
		display: block;
	}
	.sp_g_smallmenu li {
		width: 50%;
		box-sizing: border-box;
		float: left;
		border-top: 1px solid #cbcbcb;
		font-size: 100%;
	}
		.sp_g_smallmenu li:nth-child(2n) {
			border-left: 1px solid #cbcbcb;
		}
			#sp_gnav .gnav .sp_g_smallmenu li a {
				color: #313131;
				display: block;
				padding: 11px;
				text-decoration: none;
			}
	
	/* sp_search */
	.sp_search {
		padding: 10px;
		border-top: 1px solid #cbcbcb;
	}
	.sp_search:after {
		content: "";
		clear: both;
		display: block;
	}
	.gsc-input-box {
		border-radius: 0!important;
		padding: 6px 3px!important;
	}
	.gsib_a input {
		font-size: 110%!important;
	}
	table.gsc-search-box .gsib_a {
		padding: 0!important;
		font-size: 16px;
	}
	.gsc-search-button-v2 {
		border-radius: 0!important;
		border: 1px solid #920646;
	}
	.gsc-search-button-v2, .gsc-search-button-v2:hover, .gsc-search-button-v2:focus {
		height: 35px;
	}
	
	#btn-close {
		background: #666;
    color: #fff;
    margin: 0;
    padding: 10px;
    text-align: center;
	}
		#btn-close span {
			background: url(/img/btn_close.png) no-repeat left center;
			background-size: 20px 20px;
			padding: 5px 0 5px 28px;
		}
	
	/*
	topicpath
	---------------------------------------------------------*/
	.topicpath {
		width: 100%;
		padding: 0 20px;
		box-sizing: border-box;
	}
	.topicpath p {
		margin: 0;
		background-color: #fff;
		padding: 10px;
		box-sizing: border-box;
	}
	
	/*
	contents
	---------------------------------------------------------*/
	#contents {
		width: 100%;
		padding: 0 20px;
		box-sizing: border-box;
	}
	
	/*
	main
	---------------------------------------------------------*/
	#main {
		background-color: #fff;
		padding: 0 10px 10px;
		box-sizing: border-box;
	}
	#main_contents {
		width: 100%;
		box-sizing: border-box;
		background-color: #fff;
		float: none;
		margin: 0;
		padding: 30px 10px 10px;
	}
	
	/* indexbtn01 */
	.indexbtn01, .indexbtn02 {
		float: none;
		width: 100%;
		margin-bottom: 35px;
	}
	
	/* indexmenu_one */
	.indexmenu_one {
		width: 100%;
	}
	
	/* maintitle */
	.maintitle {
		padding: 0 20px;
		background: no-repeat url("../img/bg_title_sp.jpg") right center / cover;
	}
		.maintitle h2 {
			font-size: 100%;
		}
	
	.maintitle.campuslife_title {
		background: no-repeat url("../090campus/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.career_title {
		background: no-repeat url("../140career/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.access_title {
		background: no-repeat url("../130access/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.events_for_applicants_title {
		background: no-repeat url("../032events_for_applicants/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.coronavirus_title {
		padding: 0 20px;
	}
	.maintitle.strong_point_title {
		background: no-repeat url("../100feature/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.archive_title {
		background: url("/150archive/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.applicants_title {
		background: no-repeat url("../220applicants/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.teachers_title {
		background: no-repeat url("../230teachers/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.parents_title {
		background: no-repeat url("../240parents/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.students_title {
		background: no-repeat url("../260students/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.kikin_title {
		background: no-repeat url("../300kikin/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.academy_title {
		background: no-repeat url("../400academy/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.feature_title {
		background: no-repeat url("../031feature/img/bg_title_sp.jpg") right center / cover;
	}
	.maintitle.faculty_title {
		background: no-repeat url("../080faculty/img/bg_title_sp.jpg") right center / cover;
	}
	
	/* news_area */
	.news_area h2,
	.news_area h3 {
		float: none;
		width: 100%;
		background: none;
	}
	.news_link_area {
		width: 100%;
		float: none;
	}
	.news_area dl,
	.news_area02 dl {
		width: 100%;
		margin-bottom: 10px;
	}
	.news_area dt,
	.news_area02 dt {
		float: none;
		width: 100%;
	}
	.news_area dd,
	.news_area02 dd {
		float: none;
		width: 100%;
	}
	
	/* news_title */
	.news_title {
		padding: 0 0 8px 0;
	}
	.news_link_area {
		position: inherit;
		right: 0;
		top: 0;
	}
	
	/* banner02 */
	.banner02 {
		margin: 0 0 30px;
	}
	.banner02 ul li {
		float: none;
	}
	.banner02 ul a img {
		width: 100%;
	}
	
	/* indexmenu_two */
	.indexmenu_two {
		width: 100%;
		background: none;
		overflow: inherit;
	}
	.indexmenu_l,
	.indexmenu_r {
		float: none;
		width: 100%;
		background: none;
		border: 1px solid #d6d1d1;
		border-radius: 3px;
		padding: 5px 10px;
		box-sizing: border-box;
	}
	.indexmenu_l + .indexmenu_r {
		margin-top: 20px;
	}
	.indexmenu_one h3,
	.indexmenu_two h3 {
		width: 100%;
	}
	.indexmenu_all .image,
	.indexmenu_one .image,
	.indexmenu_two .image {
		width: 100%;
	}
	.indexmenu_unit {
		width: 100%;
	}
	.indexmenu_unit ul li,
	.indexmenu_all_unit ul li {
		border-bottom: 1px dotted #ccc;
		padding: 10px 0 10px 13px;
		background-position: 3px 15px;
		float: none;
		width: 100%;
		box-sizing: border-box;
	}
	.indexmenu_unit ul li:last-child,
	.indexmenu_all_unit ul li:last-child {
		border-bottom: none;
	}
	.indexmenu_all_unit ul {
		margin-top: 10px;
	}
	.indexmenu_all_unit .sp {
		display: inline;
	}
	.indexmenu_all_unit .pc {
		display: none;
	}
	
	/* indexmenu_one */
	.indexmenu_one {
		background: none;
	}
	
	/* indexmenu_all_unit */
	.indexmenu_all,
	.indexmenu,
	.indexmenu_all h3,
	.indexmenu_all_unit {
		width: 100%;
	}
	.indexmenu_all_unit .image {
		float: none;
	}
	.indexmenu_all_unit .text {
		width: 100%;
		float: none;
	}
	.indexmenu_all {
		background: none;
	}
	.indexmenu {
    background: none;
    border: 1px solid #d6d1d1;
    border-radius: 3px;
    padding: 5px 10px;
    box-sizing: border-box;
	}
	
	/* sp_open_indexmenu */
	.sp_open_indexmenu {
		display: block;
		background: #f5f5f5;
		border-radius: 3px;
		color: #920646;
		font-weight: bold;
		text-align: center;
		padding: 10px;
	}
	.sp_open_indexmenu:before {
		content: "▼";
		font-size: 70%;
		display: inline-block;
		margin-right: 0.25em;
	}
	.sp_open_indexmenu + ul {
		display: none;
	}
	
	/* indexmenu02 */
	.indexmenu02 ul li {
		display: block;
		width: 100%;
		box-sizing: border-box;
		margin: 0 0 20px;
	}
	
	/* table01 */
	.table01 {
		max-width: 100%;
		font-size: 90%;
	}
	.table01 th,
	.table01_odd th,
	.table01_s th,
	.table01_odd_s th,
	.table02 th,
	.table02_odd th,
	.table02_s th,
	.table02_odd_s th,
	.table01 td,
	.table01_odd td,
	.table01_s td,
	.table01_odd_s td,
	.table02 td,
	.table02_odd td,
	.table03 td{
		padding: 2px 5px;
	}
	
	/* tbl_scroll */
	.tbl_scroll {
		overflow: auto;
  	white-space: nowrap;
	}
 	.tbl_scroll::-webkit-scrollbar {
    height: 5px;
  }
  .tbl_scroll::-webkit-scrollbar-track {
    margin: 0 2px;
    background: #ccc;
  }
  .tbl_scroll::-webkit-scrollbar-thumb {
    background: #9e9e9e;
  }
	
	/* request_area */
	.request_leftbox,
	.request_rightbox {
		float: none;
		width: 100%;
		margin-bottom: 20px;
		text-align: center;
	}
	
	/* center_cap */
	.center_cap li {
		float: none;
		margin: 0 0 10px;
	}
	
	
	/*
	pickup_unit
	---------------------------------------------------------*/
	#main_contents .pickup_unit {
		width: 100%;
	}
	#main_contents .pickup_unit dl {
		width: calc(100% - 120px);
	}

	/*
	sub
	---------------------------------------------------------*/
	#sub {
		float: none;
		width: auto;
		margin: 30px -20px 0;
		padding: 0;
	}
	#sub h2 a {
		background: #920646;
		border-radius: 0;
	}
	
	/* subnav */
	.subnav {
		margin: 0;
		width: 100%;
		background-color: #fff;
	}
	.subnav ul li {
		margin: 0;
		margin-top: -1px;
		border-left: none;
		border-right: none;
	}
	.subnav ul li a {
		background: #fff;
		padding: 13px 10px 13px 0;
	}
	.subnav ul li a.selected {
		background-color: #f6f6f6;
	}
	.subnav ul li ul {
		background-color: #fff;
		margin: 0;
	}
	.subnav ul li ul li {
		width: 100%;
	}
	.subnav ul li ul li:last-child {
		border-bottom: none;
	}
	.subnav ul li ul li a,
	.subnav ul li ul li a:hover,
	.subnav ul li.select ul li a,
	.subnav ul li.select ul li a:hover {
		padding: 10px 10px 10px 30px;
		background-position: 16px 14px;
		margin: 0;
	}

	/*
	pagetop_area
	---------------------------------------------------------*/
	.pagetop_area {
		width: 100%;
		margin: 0;
		background-color: #fff;
		text-align: center;
		padding: 10px;
		box-sizing: border-box;
	}
	.management,
	.pagetop {
		width: 100%;
		float: none;
		text-align: center;
	}
	
	/*
	sitemap
	---------------------------------------------------------*/
	#sitemap {
		padding: 0;
		box-sizing: border-box;
		box-shadow: 0 3px 3px rgba(0, 0, 0, .1) inset;
		background: url("/img/bg_mainimage.jpg") repeat top left;
	}
	.column01, .column02, .column03, .column04, .column05, .column06 {
		width: 100%;
		float: none;
	}
	#footer_targetnav {
		width: 100%;
	}
	#footer_targetnav li {
		float: none;
		margin-bottom: 10px;
	}
	#sitemap_inner {
		width: 100%;
	}
	
	/* sp_sitemap_tit */
	.sp_sitemap_tit {
		display: block;
		text-align: center;
		font-size: 110%;
		font-weight: bold;
		padding: 5px 0;
		cursor: pointer;
	}
	.sp_sitemap_tit:after {
		content: "▼";
		color: #972257;
		font-size: 12px;
	}
	#sp_sitemap {
		display: none;
		padding: 0 20px 20px;
	}
	
	/*
	footer
	---------------------------------------------------------*/
	#footer_inner {
		width: 100%;
	}
	.address {
		padding: 20px 20px 0;
	}
	.section ul li {
		margin-bottom: 10px;
	}
	.footer_nav ul li {
		margin-bottom: 10px;
	}
	
	/*
	movie
	---------------------------------------------------------*/
	.movie iframe {
		height: 300px;
	}
	
	/*
	ww_block
	---------------------------------------------------------*/
	.wcv-inner2-l,
	.wcv-inner2-r {
		float: none;
		width: 100%;
		margin-top: 30px;
	}
	
	/* image_link
	---------------------------------------------------------*/
	.image_link img:not([src*="icon_pdf.gif"]) {
		float: none;
		margin-right: 0;
		display: block;
		margin: 0 auto 10px auto;
	}
	
	
	/* indexmenu_two02
	---------------------------------------------------------*/
	.indexmenu_two02 {
		width:100%;
	}
	.indexmenu_l02, .indexmenu_r02{
		width: 100%;
		float: none;
	}
	
	/* table_responsive
	---------------------------------------------------------*/
	.table_responsive {
		width: 100%!important;
	}
	.table_responsive th{
		display: block;
		width: 100%!important;
		margin-top: -1px;
		box-sizing: border-box;
		padding: 0.75em;
	}
	.table_responsive td{
		display: block;
		width: 100%!important;
		margin-top: -1px;
		box-sizing: border-box;
		padding: 0.75em;
	}
	.table_responsive input[type="text"],
	.table_responsive textarea,
	.table_responsive select {
		width: 100%!important;
		font-size: 16px;
		box-sizing: border-box;
		padding: 0.25em;
		border: 1px solid #d7d7d7!important;
		margin: 0!important;
	}
	input[type="submit"]#actionbutton {
		padding: 10px 20px;
		font-size: 16px;
	}
	
	/* dotline
	---------------------------------------------------------*/
	.indexmenu_unit .dotline {
		background: #920646;
	}
	
	/* sp_open_parts
	---------------------------------------------------------*/
	.sp_open_parts {
		display: none;
	}
	
	/* iframe
	---------------------------------------------------------*/
	iframe[src*="youtube.com"] {
		aspect-ratio: 560/315;
		width: 100%;
	}
	
	/* profilebox
	---------------------------------------------------------*/
	.profilebox .profilebox_left {
		width: 100%;
		text-align: center;
	}
	.profilebox .profilebox_right {
		width: 100%;
		padding-left: 0;
		margin-top: 15px;
	}
	
	/* table_block
	---------------------------------------------------------*/
	.table_block th,
	.table_block td {
		display: block;
		width: 100%!important;
		margin-top: -1px;
		box-sizing: border-box;
	}
	
	/* indexmenu_all_halflist
	---------------------------------------------------------*/
	.indexmenu_all_halflist {
		width: 100%;
	}
	.indexmenu_all_halflist ul li {
		float: none;
		width: 100%;
		border-bottom: 1px dotted #ccc;
		padding: 10px 0 10px 13px;
		background-position: 3px 15px;
		box-sizing: border-box;
	}
	.indexmenu_all_halflist ul li:last-child {
		border-bottom: none;
	}
	
	/* col
	---------------------------------------------------------*/
	.col_l,
	.col_r {
		width: 100%;
		float: none;
	}
}



