body {
    position: relative;
}

.notes_ico {
    display: table;
}
.notes_ico li {
    display: table-cell;
    vertical-align: middle;
    height: 28px;
    width: auto;
    padding-right: 20px;
    padding-left: 35px;
    background-repeat: no-repeat;
    background-position: left;
}

.notes_ico li:last-child {
    padding-right: 0;
}

.notes_ico .shingaku{
    background-image: url(/images/detail/ico_shingaku.png);
}

.notes_ico .open-campus{
    background-image: url(/images/detail/ico_open-campus.png);
}

.notes_ico .nyushi{
    background-image: url(/images/detail/ico_nyushi.png);
}

.monthSelect {
    display: block;
    width:100%;
    height: 50px;
    background-color: #333;
    color: #fff;
    position: relative
}

.monthSelect h3 {
    font-size: 18px;
    font-weight: bold;
    line-height: 50px;
}

.monthSelect span.prev,
.monthSelect span.next {
    display: block;
    position: absolute;
    top: 15px;
    cursor: pointer;
    width: auto;
    height: auto;
    background-repeat: no-repeat;
    font-size: 14px;
}

.monthSelect span.prev {
    left: 10px;
    background-image: url(/images/detail/img_prev.png);
    background-position: left;
    padding-left: 20px;
}

.monthSelect span.next {
    right: 10px;
    background-image: url(/images/detail/img_next.png);
    background-position: right;
    padding-right: 20px;
}

.monthSelect a span.next,
.monthSelect a span.prev {
    color:#fff;
}

.calenderBox {
    display: block;
    width: 100%;
    height: auto;
    color: #fff;
    text-align: center;
    position: relative;
}

.calenderBox .date,
.calenderBox .dateNumber {
    display: table;
    width: 100%;
    border-collapse: separate;
    border-spacing: 5px 5px;
}

.calenderBox .dateNumber p{
    width: 140px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    margin: auto;
    color: #333;
}

.calenderBox .dateNumber p span {
    text-decoration: underline;
    cursor: pointer;
}

.calenderBox .dateNumber p:before{
    content: "●";
}

.calenderBox .dateNumber p:before{
    color: #333;
}



.calenderBox .date li,
.calenderBox .dateNumber li{
    display: table-cell;
    width: 160px;
    vertical-align: middle;
}

.calenderBox .date li {
    height: 50px;
    background-color: #666;
}

.calenderBox .dateNumber li {
    height: 100px;
    background-color: #fff;
    padding-top: 5px;
}

.calenderBox .date li:nth-child(6) {
    background-color: #036eb7;
}

.calenderBox .date li:nth-child(7) {
    background-color: #cc0033;
}

.calenderBox .dateNumber li {
    position: relative;
    color: #333;
    vertical-align: top;
    padding-top: 30px;
}

.calenderBox .dateNumber li .number,
.calenderBox .dateNumber li .number02 {
    position: absolute;
    top: 7px;
    left: 7px;
    font-size: 12px;
}

.calenderBox .dateNumber li .last {
    position: absolute;
    bottom: 2px;
    right: 7px;
    font-size: 12px;
}

.calenderBox .dateNumber li .number {
    color: #333;
}

.calenderBox .dateNumber li .number02 {
    color: #CCC;
}

.popUp {
    display: none;
    position: absolute;
}

.popUp .bubble {
    display:inline-block;
    position: relative;
    border-radius:5px;
}

.popUp .bubble p.close {
    position: absolute;
    top:3px;
    right: 10px;
    color: #333;
    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
}

.popUp .bubble:before {
    position: absolute;
    content: " ";
    height: 20px;
    width: 20px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    right: -10px;
    top: 40px;
}

.popUp .bubble02:before {
    left: -10px !important;
}

.popUp .bubble03:before {
    right: -10px !important;
}
.popUp .bubble-inner {
    padding:20px;
    background:#fff;
    border-radius:5px;
    /* transform z-index hack */
    transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    color: #333;
    width: 300px;
    overflow: auto;
    max-height: 500px;
}
.popUp .shadow, .shadow:before {
    box-shadow: 2px 2px 10pxrgba(0,0,0,0.4);
    -webkit-box-shadow: 2px 2px 10px rgba(0,0,0,0.4);
    background:#fff;
}

.popUp .shadow2, .shadow2:before {
    box-shadow: 2px 2px 10px rgba(0,0,0,0.4);
    -webkit-box-shadow: 2px 2px 10px rgba(0,0,0,0.4);
    background:#fff;
}

.popUp .bubble-inner h3 {
    font-size: 16px;
}

.popUp .bubble-inner p {
    margin-top: 15px;
}

.popUp .bubble-inner p a {
    text-decoration: underline;
}

#faculty .ttl {
    color: #000000;
    font-size: 18px;
    padding-bottom: 5px;
    margin-bottom: 25px;
}

#faculty .ttl span{
    border-bottom: 3px #000000 solid;
}

#faculty section.facultyBlock {
    display: inline-block;
    width: 20%;
    margin-right: 8%;
    vertical-align: top;
    padding: 0;
}

#faculty section.facultyBlock:nth-child(2n){
    margin-right: 0;
}

#faculty section.facultyBlock h4{
    font-size: 16px;
    border-left: 3px solid #f87b1e;
    padding-left: 5px;
    margin-bottom: 10px;
}

#faculty section.facultyBlock li {
    font-size: 14px;
    margin-bottom: 10px;
}

#faculty .box,
#access .box{
    display: block;
    width: 100%;
    margin-bottom: 20px;
}

#faculty .box:last-child {
    margin-bottom: 0;
}

#access,
#faculty{
    position: relative;
}
#access .down {
    top: 100px;
}
#faculty .down{
    top: 100px;
}
.down {
    position: absolute;
    display: block;
    font-size: 15px;
    line-height: 100px;
    cursor: pointer;
    color: #036eb7;
    font-weight: bold;
    border-top: none;
    box-sizing: border-box;
    width: 100%;
    height: 100px;
    background: -webkit-gradient(linear, left top, left bottom, rgba(248,248,248,0.5), #fafafa);
    background: -webkit-linear-gradient(to bottom, rgba(255,255,255,0.0) 0%, #fff 46%);
    background: -moz-linear-gradient(to bottom, rgba(255,255,255,0.0) 0%, #fff 46%);
    background: -o-linear-gradient(to bottom, rgba(255,255,255,0.0) 0%, #fff 46%);
    background: -ms-linear-gradient(to bottom, rgba(255,255,255,0.0) 0%, #fff 46%);
    background: linear-gradient(to bottom, rgba(255,255,255,0.0) 0%, #fff 46%);
    padding-left: 20px;
}

.ed {
    background: none !important;
}


/* tab */
.detailTab {
    margin-bottom: 30px;
    border-bottom: 1px solid #ccc;
}
.detailTab ul {
    width: 1160px;
    height: 55px;
    margin: 0 auto;
}
.detailTab ul:after {
    content: "";
    display: block;
    clear: both;
}
.detailTab ul li {
    float: left;
    position: relative;
    width: 230px;
    height: 55px;
}
.detailTab ul li a {
    position: absolute;
    display: block;
    box-sizing: border-box;
    bottom: -1px;
    width: 230px;
    height: 45px;
    border: 1px solid #ccc;
    border-radius: 10px 10px 0 0;
    background: #5ea2d1;
    font-size: 18px;
    line-height: 1.1;
    text-align: center;
    color: #fff;
}
.detailTab ul li a:hover {
    color: #fff;
}
.detailTab ul li.cr a {
    height: 50px;
    background: #fff;
    border-bottom: 1px solid #fff;
    color: #333;
}
.detailTab ul li.cr a:hover {
    color: #333;
}
.detailTab ul li a span {
    display: block;
    padding-top: 12px;
}
.detailTab ul li.cr a span {
    padding-top: 17px;
}

.detailTab ul li.nolink a {
	background: #e4e4e4;
	color: #aaa;
}


/* narrowBox */
.narrowBox {
    width: 1050px;
    margin: 30px auto;
}
.narrowBox .selectWrap:after,
.narrowBox .selectedWrap ul:after {
    content: "";
    display: block;
    clear: both;
}

.narrowBox .selectWrap {
    margin: 0 0 20px 0;
}
.narrowBox .selectWrap .set {
    position: relative;
    float: left;
    width: 500px;
}
.narrowBox .selectWrap .arw {
    position: relative;
    float: left;
    width: 50px;
}
.narrowBox .selectWrap .ttl {
    display: table;
    width: 100%;
    border: 1px solid #333;
    border-radius: 3px;
    border-collapse: separate;
    background: #fff;
}
.narrowBox .selectWrap .ttl p {
    display: table-cell;
    vertical-align: middle;
    font-size: 14px;
    line-height: 1.2;
}
.narrowBox .selectWrap .ttl p.txt1 {
    width: 80px;
    padding: 15px 0;
    background: #333;
    text-align: center;
    color: #fff;
}
.narrowBox .selectWrap .ttl p.txt2 {
    padding: 15px 8px;
    color: #999;
}
.narrowBox .selectWrap .ttl p.btn {
    width: 31px;
    cursor: pointer;
}
.narrowBox .selectWrap .set2 .ttl p.btn img {
    display: none;
}

.narrowBox .selectWrap .set .narrow {
    display: none;
    position: absolute;
    left: 81px;
    z-index: 10;
    width: 419px;
    max-height: 500px;
    overflow: auto;
}
.narrowBox .selectWrap .set .narrow .item {
    display: none;
    padding: 10px 10px 5px 10px;
    border: 1px solid #666;
    border-top: 0;
    background: #fff;
}
.narrowBox .selectWrap .set1 .narrow .item {
    display: block;
}
.narrowBox .selectWrap .set .narrow .item li {
    font-size: 14px;
    line-height: 1.1;
}

.narrowBox .selectWrap .set .narrow .item li input[type=checkbox] {
    display: none;
}
.narrowBox .selectWrap .set .narrow .item li label {
    display: block;
    position: relative;
    padding: 5px 0 5px 25px;
    cursor: pointer;
}
.narrowBox .selectWrap .set .narrow .item li label:hover {
    background: #eee;
}
.narrowBox .selectWrap .set .narrow .item li label:before {
    position: absolute;
    content: "";
    top: 50%;
    left: 3px;
    width: 15px;
    height: 15px;
    margin-top: -8px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 2px;
}
.narrowBox .selectWrap .set .narrow .item li input[type="checkbox"]:checked + label:after {
    position: absolute;
    content: "";
    top: 50%;
    left: 5px;
    width: 11px;
    height: 11px;
    margin-top: -6px;
    border-radius: 2px;
    background: #999;
}

.narrowBox .selectWrap .set1 .narrow .item li a {
    display: block;
    position: relative;
    padding: 5px 0 5px 3px;
}
.narrowBox .selectWrap .set1 .narrow .item li a:hover {
    background: #eee;
}

.narrowBox .selectedWrap {
}
.narrowBox .selectedWrap li {
    float: left;
    margin: 0 20px 10px 0;
    padding: 8px 12px 8px 15px;
    background: #dfdfe1;
    border-radius: 16px;
    font-size: 14px;
    line-height: 1.1;
}
.narrowBox .selectedWrap li span {
    vertical-align: middle;
    padding-right: 12px;
}
.narrowBox .selectedWrap li img {
    vertical-align: middle;
}

.narrowBox .btn {
    margin: 50px 0 50px 0;
}
.narrowBox .btn p {
    text-align: center;
}


.narrowBox .btn input[type=submit],
.narrowBox .btn a {
    display: inline-block;
    padding: 10px 30px 8px 30px;
    background: #ef3434;
    border: 0;
    border-bottom: 4px solid #b11111;
    border-radius: 30px;
    font-size: 16px;
    line-height: 1.1;
    color: #fff;
    font-weight: bold;
    font-family: "メイリオ", sans-serif;
    pointer-events: none;
    opacity: 0.3;
    vertical-align: top;
}
.narrowBox .btn input[type=submit]:first-child{
    margin-right: 20px;
}

.narrowBox .btn input[type=submit].on {
    background: #ef3434 !important;
    border-bottom: 4px solid #b11111 !important;
    pointer-events: auto !important;
    opacity: 1;
}
.narrowBox .btn input[type=submit].on:hover  {
    opacity: 0.8;
}
.narrowBox .btn input[type=submit]:nth-child(2),
.narrowBox .btn a {
    background: #888888;
    border-bottom: 4px solid #666;
    pointer-events: auto;
    opacity: 1;
    text-indent: 0;
}
.narrowBox .btn input[type=submit]:nth-child(2):hover,
.narrowBox .btn a:hover {
    opacity: 0.8;
}



/* selectMonth */
.selectMonth {
    width: 1050px;
    margin: auto;
}
.selectMonth:after,
.selectMonth ul:after {
    content: "";
    display: block;
    clear: both;
}
.selectWrap .ttl2 {
    width: 100%;
    padding: 7px 0;
    font-size: 18px;
    line-height: 1.1;
    font-weight: bold;
    margin-bottom:20px;
}
.selectMonth .ttl{
    float: left;
    width: 110px;
    padding: 7px 0;
    font-size: 18px;
    line-height: 1.1;
    font-weight: bold;
}

.selectMonth .ttl span,
.selectWrap .ttl2 span {
    padding-left: 7px;
    border-left: 5px solid #000;
}
.selectMonth ul {
    float: left;
    width: 940px;
}

.selectMonth ul li {
    float: left;
    margin: 0 10px 10px 0;
    padding: 5px 12px;
    border-radius: 3px;
    color: #000;
    font-size: 14px;
    font-weight: bold;
    height: height: 1.1;
}
/*.selectMonth ul li.nowmonth {
    background: #333;
}*/
.selectMonth ul li a{
  border-bottom: 1px solid;
}
.selectMonth ul li a:hover {
    color: #525252;
}



/* moreInfoWrap */
.moreInfoWrap {
	position: relative;
}
#content .detailArea .rightSide .moreInfoWrap  #access,
#content .detailArea .rightSide .moreInfoWrap  #faculty {
    height: auto;
    margin-bottom: 0;
    overflow: visible;
}
#content .detailArea .rightSide .moreInfoWrap  #access img,
#content .detailArea .rightSide .moreInfoWrap  #faculty img {
	margin: -10px 0 0 -10px;
}
.moreInfoWrap .moreInfoBtn {
	position: absolute;
	left: 0;
	top: 0;
	width: 658px;
	height: 400px;
}
.moreInfoWrap .moreInfoBtn p {
	margin: 150px 0 0 0;
}
.calendarWrap .moreInfoBtn {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
}
.calendarWrap .moreInfoBtn p {
	margin: 150px 0 0 0;
}
.moreInfoWrap .moreInfoBtn p a {
	display: table;
	margin: 0 auto;
	background-color: #f87b1e;
	border-radius:5px;
}
.moreInfoWrap .moreInfoBtn p a span {
	display: block;
	float: left;
	/*font-size:14px;*/
  font-size:16px;
  font-weight: bold;
	color:white;
	/*padding: 10px 45px 6px;*/
  padding: 20px 80px 15px;
	background-color: #f87b1e;
	box-shadow: 0px 4px 0px 0px #a84801;
	border-radius:5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

.moreInfoWrap .moreInfoBtn p a:hover {
	opacity: 1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha(opacity=100)";
	-khtml-opacity: 1;
	-moz-opacity: 1;
}
.moreInfoWrap .moreInfoBtn p a:hover span {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	-khtml-opacity: 0.8;
	-moz-opacity: 0.8;
}

.moreInfoWrap .moreInfoBtn .settled-request a{
  pointer-events: none;
}

.moreInfoWrap .moreInfoBtn .settled-request a span{
  background-color: #aba7a5;
  box-shadow: 0px 4px 0px 0px #aba7a5;
}

.moreInfoPop {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	margin-left: -250px;
	margin-top: -100px;
	width: 500px;
	height: 200px;
	background: #fff;
	box-shadow: 2px 2px 10px rgba(0,0,0,0.4);
	-webkit-box-shadow: 2px 2px 10px rgba(0,0,0,0.4);
	text-align: center;
	z-index: 9999;
  border-radius: 10px;
}
.moreInfoPop p.closebtn {
    position: absolute;
    top: 3px;
    right: 10px;
    padding: 0;
    color: #333;
    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
}
.moreInfoPop .moreInfobtn,
.moreInfoPop .thanks {
	display: table-cell;
	width: 500px;
	height: 200px;
	vertical-align: middle;
	text-align: center;
}
.moreInfoPop .thanks {
	display: none;
}
.moreInfoPop .thanks .ttl {
	padding: 0 20px 20px 20px;
	font-size: 18px;
	font-weight: bold;
}
.moreInfoPop .moreInfobtn p a {
	display: table;
	margin: 15px auto 0;
}
.moreInfoPop .moreInfobtn p a span {
	display: block;
	float: left;
	font-size:14px;
	color:white;
	padding: 10px 45px 6px;
	background-color: #f87b1e;
	box-shadow: 0px 4px 0px 0px #a84801;
	border-radius:5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	vertical-align: top;
}
.moreInfoPop .moreInfobtn p a:hover span {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	-khtml-opacity: 0.8;
	-moz-opacity: 0.8;
}

.moreInfoPopFilter {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 9998;
	background: rgba(0,0,0,0.6);
}

#content .detailArea .photoSide .moreInfoBtn .settled-pamphrequest a {
    pointer-events: none;
}
#content .detailArea .photoSide .moreInfoBtn .settled-pamphrequest a span {
    background-color: #aba7a5;
    box-shadow: 0px 4px 0px 0px #aba7a5;
}

