/* common */
._fnctWrap {
	line-height: 1.5;
}

.outer {
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
}

.blind {
	overflow: hidden;
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	clip: rect(0 0 0 0);
}

/******************************************************************************
******************************************************************************/
.status{padding: 24px 0 40px 30px;}
.status > ul > li{display: inline-block;vertical-align: top;font-size: 18px;color:#666;}
.status > ul > li + li{margin-left:15px;}
.status > ul > li > span{width:10px;height: 10px;display: inline-block;margin-right: 10px;border-radius: 50%;}
.status > ul > li > span.status01{background:#2f8d9a;}
.status > ul > li > span.status02{background: #999;}
.status > ul > li > span.status03{background: #2e489a;}
.status > ul > li > span.status04{background: #a38767;}

.sche-tab-year{position: absolute;top:15px;right:10px;}
.sche-tab-year > span{font-family: 'Noto Regular';font-size: 24px;color:#333;}

._fnctWrap .sche-wrap ._tab._normal > ul{display: flex; justify-content: end;}
._fnctWrap .sche-wrap ._tab._normal > ul > li{display: block;vertical-align: top;float:none;text-align: left; position: relative; margin: 0;}
._fnctWrap .sche-wrap ._tab._normal > ul > li::after{content:""; display: block; position: absolute; right: 0; top: 50%; margin-top: -8.5px; width: 1px; height: 17px; background-color: #d2d2d2;}
._fnctWrap .sche-wrap ._tab._normal > ul > li:last-child::after{display: none;}
._fnctWrap .sche-wrap ._tab._normal > ul > li > a{width:55px;height: 55px;border:0;text-indent: -9999px;border-radius: 0;background: url('../images/year_select.png') no-repeat center !important; margin: 0; padding: 0;}
._fnctWrap .sche-wrap ._tab._normal > ul > li > a.active{background:  url('../images/year_select_on.png') no-repeat center !important;}
._fnctWrap .sche-wrap ._tab._normal > ul > li:nth-child(2) > a{background: url('../images/month_select.png') no-repeat center !important;}
._fnctWrap .sche-wrap ._tab._normal > ul > li:nth-child(2) > a.active{background:  url('../images/month_select_on.png') no-repeat center !important;}
._fnctWrap .sche-wrap ._tab._normal > ul > li:nth-child(3) > a{background: url('../images/mid-icon.png') no-repeat center !important;}
._fnctWrap .sche-wrap ._tab._normal > ul > li:nth-child(3) > a.active{background:  url('../images/mid-icon-on.png') no-repeat center !important;}
._fnctWrap .sche-wrap ._tab._normal > ul > li:nth-child(4) > a{background: url('../images/week-icon.png') no-repeat center !important;}
._fnctWrap .sche-wrap ._tab._normal > ul > li:nth-child(4) > a.active{background:  url('../images/week-icon-on.png') no-repeat center !important;}

/* Design */
.switch {
	text-align: right;
	margin-bottom: 20px;
}
.switch li {
	display: inline-block;
}
.switch a {
	position: relative;
    display: block;
    width: 45px;
	height: 45px;
	text-align: left;
	/* text-indent: -9999px; */
}
.switch a.month {
	background: url(../images/scheduler.png) center center no-repeat;
}
.switch a.month:after {
    content: '';
    position: absolute;
    width: 1px;
    height: 20px;
    right: -2px;
    top: 13px;
    background-color: #ddd;
}

.switch a.active.month {
	background: url(../images/scheduler-on.png) center center no-repeat;
}
.switch a.year {
	background: url(../images/sche-list.png) center center no-repeat;
}
.switch a.active.year {
	background: url(../images/sche-list-on.png) center center no-repeat;
}
.switch-btn {
	text-align: right;
}

.switch-btn li {
	display: inline-block;
}

.switch-btn li a {
	position: relative;
	display: block;
	width: 45px;
	height: 45px;
}

.switch-btn li:first-child a {
	background: url('../images/scheduler.png') center center no-repeat;
}

.switch-btn li:first-child a::after {
	content: '';
	position: absolute;
	width: 1px;
	height: 20px;
	right: -2px;
	top: 13px;
	background-color: #ddd;
}

.switch-btn li:first-child a.ac {
	background: url('../images/scheduler-on.png') center center no-repeat;
}

.switch-btn li:last-child a {
	background: url('../images/sche-list.png') center center no-repeat;
}

.switch-btn li:last-child a.ac {
	background: url('../images/sche-list-on.png') center center no-repeat;
}

.alb-head.year-head{padding-bottom: 40px;}
.alb-head {margin-bottom: 40px;}
.alb-head .top {text-align: center; position: relative; padding: 24px 0 20px; border-top-right-radius: 10px; border-top-left-radius: 10px; background-color: #0066b3;}
.alb-head .top h3 {color: white; font-family: "SBA Medium"; font-size: 28px;}
.alb-head .top button {font-family: "SBA Light"; font-size: 18px; color: #79bcff; opacity: .5; line-height: 38px; position: absolute; top: 50%; margin-top: -19px;}
.alb-head .top button span{background-image: linear-gradient(white, white); background-repeat: no-repeat; background-position: left 0 bottom 0; background-size: 0 1px; transition: background-size .5s;}
.alb-head .top button.next {background: url('../images/year_next.png') no-repeat right center;right: 43px; padding-right: 50px;}
.alb-head .top button.prev {background: url('../images/year_prev.png') no-repeat left center;left: 43px; padding-left: 50px;}
.alb-head .top button:hover{opacity: 1; color: white;}
.alb-head .top button:hover span{background-size: 100% 1px;}
.alb-head .top button.next:hover{background: url(../images/year_next_hover.png) no-repeat right center;}
.alb-head .top button.prev:hover{background: url(../images/year_prev_hover.png) no-repeat left center;}

.alb-head .btm {padding: 0 5px 5px 5px; border-bottom-right-radius: 10px; border-bottom-left-radius: 10px; position: relative; overflow: hidden;}
.alb-head .btm::before{content:""; display: block; position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: url(../images/month_background.jpg); opacity: .5; z-index: 1;}
.alb-head .btm ul {display: flex; justify-content: space-around; background-color: white; position: relative; z-index: 2;}
.alb-head .btm ul li {float: left;width: calc(100% / 12);text-align: center;}
.alb-head .btm ul li a {color: #444444;font-size: 20px; position: relative; display: block; padding: 23px 0;}
.alb-head .btm ul li a span{position: relative; z-index: 2;}
.alb-head .btm ul li a.ac{color: white;}
.alb-head .btm ul li a.ac::before{content:""; display: block; position: absolute; left: 50%; top: 50%; width: 60px; height: 60px; border-radius: 50%; background-color: #0066b3; margin: -30px 0 0 -30px; z-index: 1;}

.sche-alb .alb-body .sche-tab {float: left; width: 30.1%; text-align: center;}
.sche-alb .alb-body .sche-tab strong {display: block; background-color: #3f8edd; text-align: center; font-size: 13px; padding: 0; position: relative; border-top-left-radius: 10px; border-top-right-radius: 10px; padding: 22px 0;}
.sche-alb .alb-body .sche-tab strong::before,
.sche-alb .alb-body .sche-tab strong::after{content:""; display: block; position: absolute; width: 61px; height: 49px; opacity: .5; top: 50%; margin-top: -24.5px;}
.sche-alb .alb-body .sche-tab strong::before{background: url(../images/month_left.png); left: 22%;}
.sche-alb .alb-body .sche-tab strong::after{background: url(../images/month_right.png); right: 22%;}
.sche-alb .alb-body .sche-tab strong p {font-size: 22px; color: white; display: block; font-family: "HG Regular"}
.sche-alb .alb-body .sche-tab strong span{font-size: 15px; color: #ececec; letter-spacing: .025em; text-transform: uppercase;}

.sche-alb .alb-body .sche-tab table{border: 1px solid #dcdcdc; border-top: 0; border-collapse: separate; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; overflow: hidden;}
.sche-alb .alb-body .sche-tab thead{background-color: #f2f2f2;}
.sche-alb .alb-body .sche-tab th {color: #666; padding: 13px 0; font-size: 18px; font-weight: normal}
.sche-alb .alb-body .sche-tab td {padding: 17px 10px; box-sizing: border-box; position: relative; background: #fff; color: #888; font-size: 16px; border-bottom: 1px solid #dcdcdc;}
.sche-alb .alb-body .sche-tab td:first-child p {color: #cc6666;}
.sche-alb .alb-body .sche-tab td.sun p{color: #cc6666;}
.sche-alb .alb-body .sche-tab td.today{position: relative;}
.sche-alb .alb-body .sche-tab td.today::before{content:""; display: block; position: absolute; left: 50%; top: 50%; margin: -20px 0 0 -20px; width: 40px; height: 40px; border-radius: 50%; background-color: #d7ebff;}
.sche-alb .alb-body .sche-tab td.today p {position: relative; z-index: 2;}
.sche-alb .alb-body .sche-tab tbody tr:last-child td{border-bottom: 0;}
.sche-alb .alb-body .sche-tab td p {display: block; width: 100%; text-align: center; color: #666666; font-size: 15px;}

.sche-alb .alb-body .sche-tab td.marked {position: relative;}
.sche-alb .alb-body .sche-tab td.marked:after {content: '';position: absolute;left: 50%;margin-left: -2px;top: 38px;width: 6px;height: 6px;border-radius: 100%;background: #00b5ad;}

.sche-alb .alb-body .sche-tab td.sun_marked {position: relative;}
.sche-alb .alb-body .sche-tab td.sun_marked:after {content: '';position: absolute;left: 50%;margin-left: -2px;top: 38px;width: 6px;height: 6px;border-radius: 100%;background: #00b5ad;}

.sche-alb .alb-body .sche-comt {
	float: right;
	width: 66.1%;
}

.sche-alb .sche-comt {
}

.sche-alb .sche-comt th,
.sche-alb .sche-comt td {
	padding: 17px 15px;
}

.sche-alb .sche-comt th:last-child,
.sche-alb .sche-comt td:last-child {
	border-right: 0;
}

.sche-alb .sche-comt td.no-data{text-align: center;}

.sche-alb .sche-comt{text-align: right;}
.sche-alb .sche-comt table{border-top: 2px solid #4b585f; border-bottom: 1px solid #4b585f; border-collapse: separate;}
.sche-alb .sche-comt th {font-size: 16px;background: #f1f6fa;border-bottom: 1px solid #d7dee3;text-align: left;padding-left: 30px; font-weight: normal;}
.sche-alb .sche-comt .list_hldy th,
.sche-alb .sche-comt .list_hldy td{color:#d6001e  ;}
.sche-alb .sche-comt td {text-align: left; padding-left: 30px; font-size: 16px; color: #121212; border-bottom: 1px solid #d7dee3;}
.sche-alb .sche-comt td a{color: #121212;}
.sche-alb .sche-comt tr:last-child th,
.sche-alb .sche-comt tr:last-child td{border-bottom: 0;}
.sche-alb .sche-comt > p{display: inline-block;}

.table-tail {
	text-align: right;
	margin-top: 5px;
}

.table-tail p {
	display: inline-block;
	color: #183d93;
	font-size: 16px;
	background: url('../images/box-tail.png') left 7px no-repeat;
	padding: 10px 25px 10px 35px;
}

/* schedule list type */
.sche-list .list-body {
	border-top: 2px solid #43505d;
}

.sche-list .time-line {
	border-bottom: 1px solid #c6cace;
	padding: 30px 40px;
	overflow: hidden;
}

.sche-list .time-line dt {
	float: left;
	width: 25%;
	min-height: 210px;
	text-align: center;
	background: url('../images/month-bg.png') top center no-repeat;
	padding-top: 30px;
}

.sche-list .time-line dt div {
	min-height: 137px;
	background: url('../images/month-shield.png') top center no-repeat;
}

.sche-list .time-line dt strong {
	font-size: 60px;
	color: #fff;
}

.sche-list .time-line dt span {
	font-size: 20px;
	color: #fff;
}

.sche-list .time-line dt p {
	color: #fff;
}

.sche-list .time-line dd {
	float: right;
	width: 75%;
	color: #666;
	border-left: 1px solid #c6cace;
	padding-left: 35px;
	box-sizing: border-box;
}

.sche-list .time-line dd li {
	background: url('../images/sche-bul.png') left center no-repeat;
	padding-left: 20px;
	margin: 10px 0;
}

.sche-list .time-line dd span {
	display: inline-block;
	width: 100%;
	max-width: 160px;
	color: #1b1b1b;
	margin-right: 30px;
}

.schedule .listDay {
	border-top: 1px solid #000000;
}

.schedule #timeTableList > ul > li{border-bottom: 1px solid #c9c9c9;}
.schedule .box-sch {display: flex; flex-wrap: wrap; justify-content: space-between; align-items: stretch;}
.schedule .box-sch .num {width: 230px; background-color: #3f8edd; display: flex; align-items: center; justify-content: center; padding: 27px 0;}
.schedule .box-sch .num h3 {font-size: 20px; text-align: center; font-size: 0; line-height: 1; display: flex; flex-direction: column; justify-content: center; align-items: center;}
.schedule .box-sch .num h3 p{font-size: 20px; color: #ffffff; font-family: "SBA Light"; margin-bottom: 10px;}
.schedule .box-sch .num h3 span{text-transform: uppercase; font-size: 15px; color: #ffffff; font-family: "SBA Light";}

.schedule .box-sch .desc{width: calc(100% - 230px);}

.schedule .box-sch .desc > p{font-size: 16px; text-align: center; height: 100%; display: flex; align-items: center; justify-content: center;}

.schedule .box-sch .desc dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: stretch;
	border-bottom: 1px solid #d7dee3;
}

.schedule .box-sch .desc dl:last-child{border-bottom: 0;}

.schedule .box-sch .desc dl dt {
	display: table-cell;
	font-size: 16px;
	color: #121212;
	width: 293px;
	background-color: #f1f6fa;
	padding: 13px 20px;
	display: flex;
	align-items: center;
    letter-spacing: -.025em;
}

.schedule .box-sch .desc dl dd {
	width: calc(100% - 293px);
	font-size: 16px;
	color: #121212;
	padding: 13px 20px;
}

.schedule .box-sch .desc .sun dd,
.schedule .box-sch .desc .sun dt {
	display: table-cell;
	color: #cc6666;
}

.schedule  .search {
	text-align: center;
}

.schedule strong {
	text-align: center;
	color: #0054a6;
	display: inline-block;
	vertical-align: middle;
	font-size: 35px;
	padding: 0 75px;
}

.schedule strong.year-title-only{background: url(./../images/title-img-icon.png) no-repeat left center;}

.schedule .searchSelect  label {
	display: inline-block;
    color: #3362b2;
    font-size: 24px;
    text-align: center;
    margin: 0 20px;
    padding: 15px 0;
    font-family: 'Noto Medium';
    vertical-align: middle;
}

.schedule .searchSelect input {
	padding: 10px;
    font-size: 15px;
    height: 40px;
    display: inline-block;
    vertical-align: middle;
    border-radius: 4px;
}

.schedule .DirectionLeft span,
.schedule .DirectionRight span{background-image: linear-gradient(white, white); background-repeat: no-repeat; background-position: left 0 bottom 0; background-size: 0 1px; transition: background-size .5s;}
.schedule .DirectionLeft {font-family: "SBA Light"; font-size: 18px; color: #79bcff; opacity: .5; line-height: 38px; position: absolute; top: 50%; margin-top: -19px; background: url('../images/year_prev.png') no-repeat left center;left: 43px; padding-left: 50px;}
.schedule .DirectionRight {font-family: "SBA Light"; font-size: 18px; color: #79bcff; opacity: .5; line-height: 38px; position: absolute; top: 50%; margin-top: -19px; background: url('../images/year_next.png') no-repeat right center;right: 43px; padding-right: 50px;}
.schedule .DirectionLeft:hover,
.schedule .DirectionRight:hover{opacity: 1; color: white;}
.alb-head .DirectionLeft:hover span,
.alb-head .DirectionRight:hover span{background-size: 100% 1px;}
.alb-head .DirectionRight:hover{background: url(../images/year_next_hover.png) no-repeat right center;}
.alb-head .DirectionLeft:hover{background: url(../images/year_prev_hover.png) no-repeat left center;}

#layer_planner {
	display: none;
	position: fixed;
	left: 50% !important;
	top: 50% !important;
	width: 90%;
    max-width: 660px;
	z-index: 21;
	transform: translate(-50%, -50%);
	padding: 30px;
	background: #fff;
	border: 1px solid #d1d1d1;
}

#layer_planner.on {
	display: block;
}

#layer_planner h1 {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	padding: 25px 29px;
    background-image: url(../images/alert_header.png);
    color: white;
}

#layer_planner .btn_close {
	background: #2b3e5c;
    border: 1px solid #2b3e5c;
	display: block;
    cursor: pointer;
    font-size: 14px;
    height: 40px;
    line-height: 36px;
    text-align: center;
    min-width: 80px;
	margin: 0 auto;
	margin-top: 20px;
    border-radius: 100px;
	font-family: 'Noto DemiLight';
	color: #fff;
}

#layer_planner table {position:relative; margin-top: 86px;}
#layer_planner table:after {content:''; position:absolute; top:0px; left:0px; width:100%; height:2px; background:#000;}
#layer_planner thead th {padding:14px 10px; font-family: 'Noto Regular'; font-weight: normal;  background:#f7f8f9; color:#000000; border-right:1px solid #dddee0; border-bottom:1px solid #dddee0; font-size:18px;}
#layer_planner thead th.small {padding:15px 10px; font-size: 16px;}
#layer_planner tbody th {padding:13px 15px; font-family: 'Noto Regular'; font-weight: normal; background:#fbfbfb; color:#666; border-right:1px solid #dddee0; border-bottom:1px solid #ccd0d7; font-size:16px;}
#layer_planner tbody td {padding:13px 15px; font-family: 'Noto Light'; background:#fff; color:#666; border-bottom:1px solid #dddee0; font-size:16px; text-align: left;}
#layer_planner .list li {position: relative; padding-left: 8px;}
#layer_planner .list li:after {content: ''; position: absolute; left: 0; top: 10px; width: 4px; height: 4px; border-radius: 100%; background: #666666;}
#layer_planner .align-l {text-align:left;}
#layer_planner .align-c {text-align:center;}
#layer_planner .align-r {text-align:right;}

._tab {margin-bottom: 11px !important;}

/**/
@media all and (max-width: 1200px) {
	.alb-head {
		margin-bottom: 30px;
	}

	.alb-head .btm ul {
		padding: 0 25px;
	}

	.alb-head .btm ul li {
		width: calc(100% / 4);
	}

	.sche-alb .alb-body .sche-tab {
		float: none;
		width: 100%;
		margin: 0 auto;
	}

	.sche-alb .alb-body .sche-comt {
		float: none;
		width: 100%;
		margin-top: 30px;
	}

	.sche-list .time-line dt {
		float: none;
		width: 100%;
		max-width: 250px;
		margin: 0 auto;
	}

	.sche-list .time-line dd {
		float: none;
		width: 100%;
		border: 1px solid #c6cace;
		padding: 35px;
	}

	.sche-list .time-line {
		padding: 30px;
	}
}

@media all and (max-width: 767px) {
.schedule strong.year-title-only{font-size:30px;background:none;}
.alb-head .btm{padding:15px;}
.alb-head .btm ul{padding:0;display:block;font-size:0;}
.alb-head .btm ul li{font-size:15px;float:none;display:inline-block;}
.alb-head .btm ul li a.ac:after{display: none;}
.sche-alb .alb-body .sche-tab{height: auto;padding-bottom: 40px;}
.table-tail{padding-bottom: 20px;}
.schedule .box-sch .desc dl dt{display: block;}
.schedule .box-sch .desc dl dd{display: block;}
}


@media screen and (max-width: 768px) {
	.schedule .listDay{border-top: 0;}
	.schedule .box-sch{flex-direction: column;}
	.schedule .box-sch .num{width: 100%; padding: 10px 0;}
	.schedule .box-sch .desc dl dt{width: 150px;}
	.schedule .box-sch .desc dl dd{width: calc(100% - 150px);}
	.schedule .box-sch .desc{width: 100%;}
	.schedule .box-sch .desc > p{padding: 20px 0;}

	.schedule .DirectionLeft{left: 20px;}
	.schedule .DirectionRight{right: 20px;}
	.alb-head .top h3{font-size: 20px;}
	.alb-head .top button.next {right: 20px;}
	.alb-head .top button.prev {left: 20px;}
}