@charset "UTF-8";
/*
 * sp.css
 *
 *  version --- 1.0
 *  updated --- 2016/xx/xx
 */
#sp_menu, .forSp,
#side .contentNavi01, #side .contentNavi02, #side .contentNavi03, #side .contentNavi04 {
	display: none;
}

@media only screen and (max-width: 720px) {
/* !common
---------------------------------------------------------- */
	body {
		word-break: break-all;
	}
	#wrapper, #header, #hd_inner, #footer, #contents, #main, #side, #g00 #side,
	.sideBnr, .socialBox {
		width: auto!important;
		height: auto;
		display: block;
		clear: both;
		float: none;
	}
	img {
		max-width: 100%;
		height: auto;
	}
	.forPc {
		display: none;
	}
	.forSp {
		display: block;
	}

	#hd_logo_box, #hd_logo, #hd_search {
		position: relative;
		top: auto;
		bottom: auto;
		right: auto;
		left: auto;
	}
	#hd_txt, #hd_home, #hd_links, #gNavi, #sNavi, #breadcrumb,
	.contentNavi01, .contentNavi02 {
		display: none;
	}
	#header {
		padding: 0 10px;
	}
	#header:after,
	#ft_links01 ul:after,
	.sideNaviList:after {
	    content: "";
	    display: block;
	    clear: both;
	}
	/* header */
	#hd_logo_box {
		padding: 10px 48px 10px 0;
	}
	#hd_logo {
		height: 36px;
		margin: 0;
		padding: 0;
	}
	#hd_search {
		text-align: center;
	}
	#hd_search form {
		display: table;
		margin: 0 auto;
	}
	#hd_search form input {
		display: inline-block;
		vertical-align: middle;
	}
	#hd_search .search_text {
		max-width: 316px;
		width: auto;
		margin: 0 0 5px 0;
	}
	#hd_search .opacityOver {
		width: 77px;
		margin: 0 0 5px 5px;
	}
	/* contents */
	.sectionIn {
		margin: 0 0 20px;
	}
	.w960, .w800, .w640, .w480, .w320, .w240, .w160	{
		width: auto;
	}
	.flImgL, .flImgR, .flImgL.ml20, .flImgR.mr20 {
		display: block;
		float: none;
		margin: 0 0 20px !important;
	}
	.sp_imgcenter{
		display: block;
		float: none;
		margin-left: auto;
		margin-right: auto;
		width: 240px;
	}



	.flImgL img, .flImgR img {
		width: 100%;
		max-width: 100%;
	}
	#contents .ml00, #contents .ml05, #contents .ml10, #contents .ml12, #contents .ml15, #contents .ml20,
	#contents .ml25, #contents .ml30, #contents .ml35, #contents .ml40, #contents .ml45, #contents .ml50 {
		margin-left: 0 !important;
	}
	#contents .mr00, #contents .mr05, #contents .mr10, #contents .mr12, #contents .mr15, #contents .mr20,
	#contents .mr25, #contents .mr30, #contents .mr35, #contents .mr40, #contents .mr45, #contents .mr50 {
		margin-right: 0 !important;
	}
	#contents .pl00, #contents .pl05, #contents .pl10, #contents .pl12, #contents .pl15, #contents .pl20,
	#contents .pl25, #contents .pl30, #contents .pl35, #contents .pl40, #contents .pl45, #contents .pl50 {
		padding-left: 0 !important;
	}
	#side .sideBnr, .sectionIn, .pageTop {
		padding: 0 5%;
	}
	.h1_basic {
		margin: 0 5% 30px;
	}
	.indentBox01 {
		padding-left: 0;
	}
	.tablebasicSec {
		width: auto!important;
	}
	.tablebasicSec table,
	.table_T02 table {
		width: 100%!important;
	}
	.tablebasicSub {
		width: 100% !important;
		overflow: scroll;
	}
	/* side menu */
	#side {
		position: relative;
		display: flex;
		flex-wrap:wrap;
		margin: 0;
	}
	#side .sideBnr {
		order: 1;
	    width: 100%;
	    flex-basis: 100%;
		margin: 0 0 30px;
	}
	.sideBnr .snsArea {
		width: 80%;
		height: auto;
		margin: 0 auto;
		display: block;
		clear: both;
		float: none;
	}
	.sideBnr .snsArea dd img {
		width: 100%;
		height: auto;
	}
	#side .contentNavi01 {
		display: block;
		width: auto !important;
		height: auto;
		float: none;
		margin: 0 5% 20px !important;
		border: none;
		background: transparent;
		text-align: left;
		padding: 0;
	}
	#side .contentNavi01 h2 {
		font-weight: bold;
		font-size: 1.2em;
		margin: 0 0 10px;
	}
	#side .contentNavi01 h2:before {
		content: "■";
	}
	#side .contentNavi01 ul li {
		display: block;
		margin: 0 7px 7px;
	}
	#side .sideNavi {
	    order: 2;
	    width: 100%;
	    flex-basis: 100%;
	}
	#side .sideNavi.forSp {
		display: block;
	}

	.sideNaviList {
		border-bottom: 1px solid #ededed;
	}
	.sideNaviList li {
		float: left;
		width: 50%;
	}
	.sideNaviList li:last-child,
	.sideNaviList li:nth-last-child(2):nth-child(odd) {
		border-bottom: none;
	}
	.sideNaviList li a {
		padding: 7px 7px 7px 20px;
		background-position: 10px 50%;
	}
	.sideNaviList li a br {
		display: none;
	}
	.socialBox .tweet,
	.socialBox .facebook,
	.socialBox .google,
	.socialBox .mixi {
		width: auto;
		float: none;
		display: inline-block;
	}
	.socialBox .google > div {
		width: 70px!important;
		overflow: hidden;
	}
	/* footer */
	#ft_links01 {
		background-image: none;
		text-align: left;
	}
	#ft_links01 ul {
		font-size: 0;
	}
	#ft_links01 ul li {
		display: table;
		float: left;
		width: 50%;
		border-left: none;
		font-size: 13px;
		border-collapse: separate;
    	border-spacing: 10px 0;
	}
	#ft_links01 ul li.last {
		border-right: none;
	}
	#ft_links01 ul li a {
		display: table-cell;
		height: 100%;
		text-indent: 0;
		vertical-align: middle;
	}
	#ft_copyright p {
		padding: 0 5px;
		text-align: left;
	}
	.table_T03 table.table_basic {
		width: 100% !important;
	}
	.tablebasicSub table.table_basic {
		width: 624px !important;
	}
/* !sp menu
---------------------------------------------------------- */
	#sp_menu {
		display: block;
		position: absolute;
		width: 100%;
		top: 0;
		left: 0;
		z-index: 999;
	}
	#sp_menu .icon {
		display: block;
		position: absolute;
		display: block;
		width: 30px;
		height: 30px;
		top: 10px;
		right: 10px;
		border: 1px solid #666;
		background: transparent url(../img/menu_close.png) center center no-repeat;
		background-size: 17px 15px;
	}
	#sp_menu .icon.open {
		background: transparent url(../img/menu_open.png) center center no-repeat;
		background-size: 17px;
	}
	#sp_menu .menu {
		position: absolute;
		top: 50px;
		text-align: left;
		width: 100%;
		background: #fff;
		visibility: hidden;
	}
	#sp_menu .menu ul {
		border-bottom: 1px solid #666;
	}
	#sp_menu .menu ul li {
		box-sizing: border-box;
		display: inline-block;
		width: 100%;
		font-size: 14px;
		border-bottom: 1px dotted #666;
	}
	#sp_menu .menu ul li a {
		display: block;
		padding: 15px;
		font-size: 14px;
		text-decoration: none;
		color: #000;
	}
	#sp_menu .menu ul.gNavi {
		border-top: 1px solid #666;
	}
	#sp_menu .menu ul.gNavi li {
		position: relative;
	}
	#sp_menu .menu ul.gNavi li a:before {
		display: block;
		width: 15px;
		height: 5px;
		background: #000;
		content: " ";
		position: absolute;
		left: 0;
		top: 45%;
	}
	#sp_menu .menu ul.gNavi li a {
		font-size: 16px;
		font-weight: bold;
		padding: 15px 35px;
		background: transparent url(../img/btn_arrow.png) right 20px center no-repeat;
		background-size: 8px 14px;
	}
	#sp_menu .menu ul.gNavi li:last-child {
		border-bottom: none;
	}
	#sp_menu .menu ul.hd_links li,
	#sp_menu .menu ul.sNavi li {
		text-align: center;
		width: 50%;
	}
	#sp_menu .menu ul.hd_links li:nth-child(odd) {
		border-right: 1px dotted #666;
	}
	#sp_menu .menu ul.hd_links li:last-child {
		width: 100%;
		border-bottom: none;
		border-right: none;
	}
	#sp_menu .menu ul.hd_links li a span {
		text-align: left;
		display: inline-block;
		background: transparent url(../img/btn_arrow_ora.png) left center no-repeat;
		background-size: 14px;
		padding: 0 0 0 22px;
		line-height: 14px;
	}
	#sp_menu .menu ul.hd_links li:last-child a span {
		display: inline;
	}
	#sp_menu .menu ul.sNavi {
		padding: 5px 0;
		background: #ededed;
	}
	#sp_menu .menu ul.sNavi li {
		padding: 5px;
		border-bottom: none;
	}
	#sp_menu .menu ul.sNavi li a {
		display: block;
		border-radius: 6px;
		padding: 14px 8px 12px;
		background: #fff;
		box-shadow:1px 1px 2px 1px rgba(0,0,0,0.3) inset;
	}
	#sp_menu .menu ul.sNavi li a span {
		background: transparent url(../img/btn_arrow_s.png) left center no-repeat;
		background-size: 5px 7px;
		font-size: 12px;
		padding: 0 0 0 10px;
	}
	#sp_menu .menu ul.sNavi li:last-child a span {
		background: transparent url(../img/btn_arrow_s2.png) left center no-repeat;
		background-size: 5px 7px;
	}

	.icnTri01 {
		background-position: left 6px;
	}

/* !top
---------------------------------------------------------- */
	.topPickup, #aiitChannel, .sideBnr ul, #fNavi,
	#ft_banner, #ft_links03,
	.h2BoxType01 span {
		display: none;
	}
	/* keyslide */
	#keyslide, #bnr {
		visibility: visible;
		width: auto;
		display: block;
		height: auto;
	}
	.h2BoxType01 {
		margin: 0 5% 15px;
	}
	.topBox01 {
		padding: 0 5%;
	}
	#bnr {
		top: 0;
		position: relative;
		margin-top: 20px;
	}
	#bnr #bnr_wrap {
		width: auto;
		height: auto;
		position: static;
	}
	#bnr #bnr_prev, #bnr #bnr_next { display: none; }
	#bnr ul {
		width: auto;
		position: relative;
		font-size: 0;
		padding: 0 5%;
	}
	#bnr ul li {
		width: 50%;
		height: auto;
		font-size: 1rem;
		box-sizing: border-box;
	}
	#bnr ul li:nth-child(odd) {	padding-right: 1%;	}
	#bnr ul li:nth-child(even) {	padding-left: 1%;	}
	#bnr ul li a {
		display: block;
		margin: 0 0 10px;
	}
	#bnr ul li a img {
		width: 100%;
	}
	#keyslide #view {
		display: none;
	}
	/* NEWS */
	.dl_list01 {
		margin: 0 0 4px 0;
		padding: 0 0 4px 0;
	}
	.dl_list01 dt {
		float: none;
		padding: 0 0 0 72px;
		height: 24px;
		display: table-cell;
		vertical-align: middle;
	}
	.dl_list01 dd {
		padding-left: 0;
	}
	/* EVENT */
	.eventArea li {
		position: relative;
		width: auto;
		min-height: 62px;
		margin: 0 0 12px 0;
	}
	.eventArea li>a {
		float: none;
		position: absolute;
		top: 0;
		left: 0;
	}
	.eventArea li div {
		float: none;
		width: auto;
		margin: 0 0 0 72px;
	}

/* !About
---------------------------------------------------------- */
	.ul_type01 {
		text-align: center;
	}
	.ul_type01 li {
		float: none;
		display: inline-block;
		text-align: left;
		box-sizing: border-box;
		margin: 0;
		padding: 0 6px;
		max-width: 48%;
	}
	.ul_type01 li img {
		width: 100%;
		max-width: 100%;
	}
	.h4_type01 {
		background-position: left 6px;
	}
	.h4_type01 span {
		display: inline-block;
	}

/* !Access
---------------------------------------------------------- */
	/* map */
	#map_canvas {
		width: auto !important;
	}

/* !Admission
---------------------------------------------------------- */
	#adm_index .sortArea dl dt {
		width: 40%;
	}
	#adm_index .sortArea dl dd {
		width: 60%;
	}
	#adm_index .sortArea dl dd ul, #adm_index .sortArea dl dd ul li {
		width: auto;
	}
	.sectionCategory {
		margin: 0 0 30px;
		padding: 0;
	}
	.cateInner {
		margin: 0;
		padding: 20px 5% 0;
	}
	.cateInner .pageTop {
		padding: 0;
	}
	#adm_index ul li {
		box-sizing: border-box;
	    width: 50%;
	    padding: 0 2% 0 0;
	}
	#adm_index ul li.even {
	    margin-left: 0;
	    padding: 0 0 0 2%;
	}
	#adm_index .ul_type09 li {
		padding-left: 15px;
	}
	#adm_index ul li a img {
		width: 100%;
	}
	#adm_index ul li a:hover img,
	#adm_index ul li a:active img,
	#adm_index dl dt a:hover img,
	#adm_index dl dt a:active img {
		filter: alpha(opacity=100);
		-moz-opacity:1;
		opacity:1;
	}
	.adm_date td, .adm_contents td {
		text-align: left;
	}
	.forSpCenter {
		text-align: center;
		margin: 0 auto 20px;
	}
	.spHidden {
		display: none;
	}

/* !master_program
---------------------------------------------------------- */
	#main .contentNav_sp_contents {
		display:none;
	}
	.section .sectionIn .h2_basic span {
		text-align: left;
		margin-top: 0.2em;
	}

/* !About / Professional Graduate School
---------------------------------------------------------- */
/*
	#grad #keyVisual, #grad #difference, #grad #practice {
		display: none;
	}
*/
	#grad, #grad .sectionLeft, #grad .sectionRight
	{
		width: auto!important;
		min-width: 0;
	}
	#grad #main > .section {
		box-sizing: border-box;
		padding: 0 5%;
	}
	#grad .sectionLeft,
	#grad .sectionRight {
		float: none;
		position: relative;
		margin-bottom: 20px;
	}
	#grad .sectionRight {
		text-align: center;
	}
	#grad #main #keyVisual {
	    padding: 40px 5% 20px;
	}
	#grad #keyVisual dl {
		float: none;
		width: auto;
		margin: 0 0 30px;
	}
	#grad #keyVisual dl dt {
		background-color: transparent;
		text-indent: 0;
	}
	#grad #main #keyVisual dl dt img,
	#grad #practice ul li img {
		width: 100%;
	}
	#grad #main h4 {
		font-weight: bold;
	}
	#grad #main .btn img {
		max-width: 100%;
	}
	#grad #difference td {
		text-align: left;
	}
	#grad #guide {
		width: 100%;
	}
	#grad #guide ul {
		height: auto;
		background-size: 100%;
	}
	#grad #guide ul li,
	#grad #guide ul li.last {
		float: none;
		margin: 0 5% 20px;
		text-align: center;
	}

/* !Form
---------------------------------------------------------- */
	.textareaForm01 {
		width: 100%;
		box-sizing: border-box;
		resize: vertical;
	}
	input[type=text].inputForm01, input[type=text].inputForm04,
	input[type=text].inputForm05, input[type=text].inputForm07,
	.tableForm01 .ulForm01 li {
		margin-top: 5px;
	}
	input[type=checkbox] {
		margin: 8px 0 10px;
		vertical-align: middle;
	}
	input[type=submit] {
		margin-bottom: 20px;
	}
	.tableForm01 .mb05 {
		margin-bottom: 0 !important;
	}
	.tableForm01 .fwB {
		margin-top: 8px;
	}
	.tableForm01 .table_basic th, .tableForm01 .table_basic td {
		display: block;
		width: 100%;
		text-align: left!important;
		border-right: none;
		background-image: none;
	}
	.tableForm01 .table_basic th {
		border-top: 2px solid #ccc;
	}
	.tableForm01 .table_basic td {
		border-top: 2px dotted #ccc;
	}
/*
		background-image: url("../img/common/border_x06.gif")!important;
	.tableForm01 .table_basic td.dotted {
		background-image: url("../img/common/border_x02.gif")!important;
	}
*/
	.tableForm01 .table_basic tr:first-of-type th {
		border-top: none;
	}
	#MaterialAddForm .tableForm01 .table_basic tr:last-of-type td,
	#ConsultationAddForm .tableForm01 .table_basic tr:last-of-type td {
		border-top: 2px solid #ccc;
	}

/* ! .table_basic
---------------------------------------------------------- */
	.table_basic .taC {
		text-align: left!important;
	}
	.tablebasicSec table tbody tr:last-of-type th,
	.tablebasicSec table tbody tr:last-of-type td {
		background-image: none;
	}

/* !Events
---------------------------------------------------------- */
	.divEvent01>p {
		text-align: left!important;
	}

	.lightbox {
		visibility: hidden;
	}
	.colImg {
		float: none;
		margin-left: 0;
		width: auto;
		display: none;
	}
	.colImg.forSp {
		display: block;
	}
	.colImg img {
		width: 100%;
	}
	.colContent {
		float: none;
		width: auto;
	}
	.sideNaviSelected {
		background-image: none;
		margin: 0 10px 10px;
		border: 1px solid #ff6410;
		height: 20px;
		border-radius: 5px;
		position: relative;
	}
	.sideNaviSelected .open,
	.sideNaviSelected .close {
		position: absolute;
		top: -1px;
		right: -1px;
	}
	.sideNaviSelector {
		margin: 0 10px;
	}


/*
 * jQuery Basic Table
 * Author: Jerry Low
 */
	table.bt thead,
	table.bt tbody th {
	  display: none;
	}

	table.bt tfoot th,
	table.bt tfoot td,
	table.bt tbody td {
	  border: none;
	  display: block;
	  display: -webkit-box;
	  display: -webkit-flex;
	  display: -ms-flexbox;
	  display: flex;
	  vertical-align: top;

	  /* IE 9 */
	  float: left\9;
	  width: 100%\9;
	}

	table.bt tfoot th::before,
	table.bt tfoot td::before,
	table.bt tbody td::before {
	  content: attr(data-th) ": ";
	  display: inline-block;
	  -webkit-flex-shrink: 0;
	  -ms-flex-shrink: 0;
	  flex-shrink: 0;
	  font-weight: bold;
	  width: 6.5em;
	}

	table.bt tfoot th.bt-hide,
	table.bt tfoot td.bt-hide,
	table.bt tbody td.bt-hide {
	  display: none;
	}

	table.bt tfoot th .bt-content,
	table.bt tfoot td .bt-content,
	table.bt tbody td .bt-content {
	  vertical-align: top;
	}

	.bt-wrapper.active {
	  max-height: 310px;
	  overflow: auto;
	  -webkit-overflow-scrolling: touch;
	}


	/*レスポンシブテーブルの行*/
	table.bt tbody tr{
		border-bottom: 2px solid #ccc;
	}
	table.bt tbody tr:first-child,
	table.bt tbody tr:last-child{
		border-bottom: none;
	}
	/*レスポンシブテーブルの見出しとなるヘッダーセルとなる部分*/
	table.bt tbody td::before{
		background-color: #fbfbfb;
		margin-right: 10px;
		padding: 5px 10px;
		border-right: 2px solid #ccc;
		text-align: right;
	}
	/*レスポンシブテーブルの行となる部分*/
	table.bt tbody td{
		padding: 0;
		background-image: none!important;
		padding-bottom: 0!important;
	}
	/*レスポンシブテーブルのデータセルとなる部分*/
	table.bt tbody td .bt-content{
	  padding-right: 10px;
	}

    table.two-axis.bt tr td:first-of-type,
    table.two-axis.bt tr:nth-of-type(2n+2) td:first-of-type,
    table.two-axis.bt tr td:first-of-type:before {
        background: #feebd7;
		vertical-align: middle;
		border-right: none;
	}
    table.two-axis.bt tr td:first-of-type {
        border-bottom: 2px solid #ccc;
    }
 	table.two-axis.topcol2.bt tr td:first-of-type:before {
		display: none;
    }
 	table.two-axis.topcol2.bt tr td:first-of-type {
		font-weight: bold;
    }
    .type02 table.two-axis.bt tr td:first-of-type,
    .type02 table.two-axis.bt tr:nth-of-type(2n+2) td:first-of-type,
    .type02 table.two-axis.bt tr td:first-of-type:before {
		background: #e7f3f2;
	}

    table.two-axis.tophide.bt tr td:first-of-type,
    table.two-axis.tophide.bt tr:nth-of-type(2n+2) td:first-of-type,
    table.two-axis.tophide.bt tr td:first-of-type:before {
        display: none;
    }

    /* 1列目の項目非表示 */
    table.two-axis.tophide.bt tr td:nth-of-type(2),
    table.two-axis.tophide.bt tr:nth-of-type(2n+2) td:nth-of-type(2),
    table.two-axis.tophide.bt tr td:nth-of-type(2):before {
        background: #feebd7;
		vertical-align: middle;
		border-right: none;
	}
	table.two-axis.tophide.bt tr td:nth-of-type(2):before {
		padding: 5px 10px 7px;
    }
    table.two-axis.tophide.bt tr td:nth-of-type(2) {
        border-bottom: 2px solid #ccc;
    }

}



@media only screen and (max-width: 480px) {
	#side .sideNavi .sideNaviList li {
		width: 100%;
	}
	#side .sideNavi .sideNaviList li:nth-last-child(2):nth-child(odd) {
		border-bottom: 1px solid #ededed;
	}

/* !About
---------------------------------------------------------- */
	.dl_type01 {
		float: none;
		width: auto;
	}
/* !Admission
---------------------------------------------------------- */
	#adm_index .sortArea dl dt,
	#adm_index .sortArea dl dd {
		width: auto;
		display: block;
	}
	#adm_index .sortArea dl dt {
		margin-bottom: 10px;
	}
	#adm_index ul li,
	#adm_index ul li.even {
	    width: 100%;
	    padding: 0;
	}

	.tableForm01 th {
		width: 33%;
	}

}
