@charset "utf-8";
@import url("/skin/notokr/notokr.css");
@import url("https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700&display=swap");

html {
    overflow-x: hidden;
    overflow-y: scroll;
}
body {
    font-size: 15px;
}
.body-layout {
    background-color: #fff;
}

.body-layout.on {
    width: 100%;
    position: fixed !important;
}

/* 폰트 설정 */
.body-layout,
h1,
h2,
h3,
h4,
h5,
h6,
input,
textarea,
button {
    font-family: "notokr", "NanumGothic", "나눔고딕", "NanumBarunGothic", "Apple SD Neo Gothic", "Malgun Gothic", "Gulim", sans-serif;
}

/* h1, h2, h3, h4, h5, h6, p { margin: 0px; } */
ol,
ul,
li {
    list-style: none;
    list-style-position: inside;
}

.navbar .caret,
.navbar .divider-vertical,
.navbar ~ br,
.footer-social-layout,
.footer_copy .text-center > br,
.topmarginLay_a {
    display: none;
}

/* layout */
.container_contents,
.sub-layout {
    width: 100%;
    padding: 0 !important;
}

.container_contents > .intro-html-layout {
    width: 100%;
    padding: 0 !important;
}

.mt-1em {
    margin-top: 1em;
}

.mt-2em {
    margin-top: 2em;
}

@media (min-width: 992px) {
    .container_contents > .intro-html-layout {
        padding: 0 !important;
        margin-top: 90px;
    }
}

/*상단 메뉴 설정 시작*/
.navbar-inverse {
    background: #fff;
    border: none;
    padding: 0;
    margin: 0;
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.2);
}

.navbar-inverse .navbar-brand {
    position: relative;
    padding: 0 !important;
    margin: 15px 0 0 !important;
}
.navbar-brand:after {
    content: "심리·인지과학학부 | 교육심리학과";
    display: block;
    font-size: 12px;
    position: absolute;
    left: 30%;
    bottom: -14px;
    color: #333;
    white-space: nowrap;
}

.navbar-brand img {
    margin: 0 !important;
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .navbar-brand img {
        width: 170px;
    }
}

@media screen and (max-width: 767px) {
    .navbar-inverse .navbar-brand {
        margin: 10px 15px !important;
    }

    .navbar-brand img {
        width: 140px;
    }

    .navbar-toggle {
        margin: 12px 15px;
        padding: 10px;
        background: #a9131b !important;
        border: none !important;
        border-radius: 0;
    }
}

/* 상단 메인 메뉴 설정 시작*/
.navbar-inverse .navbar-nav > li > a {
    background: none;
    color: #454545;
    font-size: 17px;
    font-weight: 500;
    padding: 15px 10px;
    margin: 20px 25px;
    letter-spacing: -0.04em;
}

.navbar-inverse .navbar-nav > li > a:hover,
.navbar-inverse .navbar-nav > li > a:active,
.navbar-inverse .navbar-nav > li > a:focus {
    color: #a9131b;
}

.navbar-inverse .navbar-nav > .open > a,
.navbar-inverse .navbar-nav > .open > a:focus,
.navbar-inverse .navbar-nav > .open > a:hover {
    background: none;
    color: #a9131b;
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .navbar-inverse .navbar-nav > li > a {
        font-size: 15px;
        letter-spacing: -0.04em;
        padding: 28px 15px;
        margin: 0;
    }
}

@media screen and (max-width: 767px) {
    .navbar-collapse {
        padding: 0;
    }

    .navbar-nav {
        margin: 0;
    }

    .navbar-inverse .navbar-nav > li > a {
        font-size: 15px;
        padding: 20px 25px;
        margin: 0;
        border-bottom: 1px solid #dedede;
    }
}

/* 상단 메인 메뉴 설정 끝*/

/* 상단 서브 메뉴 설정 시작*/
.navbar-inverse .dropdown-menu {
    left: 0 !important;
    right: auto !important;
    min-width: 180px;
    padding: 0;
    background: #fff;
    border: 1px solid #cecece;
    border-radius: 0;
    box-shadow: none;
}

.navbar-inverse .dropdown-menu > li > a {
    background: #f7f7f7;
    color: #333;
    letter-spacing: -0.04em;
    padding: 8px 20px;
    margin: 2px 0;
    border-left: 2px solid #f7f7f7;
}

.navbar-inverse .dropdown-menu > li > a:focus,
.navbar-inverse .dropdown-menu > li > a:hover {
    background: #f7f7f7;
    color: #a9131b;
    border-left: 2px solid #a9131b;
}

/* 상단 서브 메뉴 설정 끝*/

/* main page */
/* main page slide*/
#main-slide {
    position: relative;
    height: calc(100vh - 90px);
}

.carousel-inner {
    height: 100%;
}

.item {
    width: 100%;
    height: 100%;
}

.slide1 {
    background: url("/skin/img/slide/slide1.jpg") no-repeat 0 0;
    background-size: cover;
}

.slide2 {
    background: url("/skin/img/slide/slide2.jpg") no-repeat 0 0;
    background-size: cover;
}

.slide3 {
    background: url("/skin/img/slide/slide3.jpg") no-repeat 0 0;
    background-size: cover;
}
.slide4 {
    background: url("/skin/img/slide/slide4.jpg") no-repeat 0 0;
    background-size: cover;
}
.slide5 {
    background: url("/skin/img/slide/slide5.jpg") no-repeat 0 0;
    background-size: cover;
}
.carousel-caption {
    position: absolute;
    top: 48%;
    bottom: auto;
    font-size: 45px;
    text-align: left;
    margin: -240px 0 0;
    padding: 0;
    display: flex;
}

.carousel-caption h1 {
    margin: 0;
    flex: 1;
    padding-top: 30px;
    padding-left: 50px;
    color: #fff;
    font-size: 50px;
    font-weight: 300;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
    letter-spacing: -0.02em;
    line-height: 1.1;
    position: relative;
    font-family: "Roboto", "notokr", sans-serif;
}

/* .carousel-caption h1 {
	margin: 0;
    font-size: 50px;
    font-weight: 300;
    text-shadow: 0 0 0 rgba(0,0,0,0);
    letter-spacing: -0.02em;
    line-height: 1.1;
    position: relative;
} */
.carousel-caption h1:before {
    content: url(/skin/img/slide/sl-logo.png);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -99;
}

.carousel-caption h1 span {
    font-size: 55px;
    font-weight: 500;
}
.carousel-caption h1 small {
    display: block;
    margin-top: 10px;
    color: #fff;
    font-size: 28px;
}
.glyphicon-chevron-left:before {
    content: url(/skin/img/slide/sl-prev.png);
}

.glyphicon-chevron-right:before {
    content: url(/skin/img/slide/sl-next.png);
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .carousel-caption {
        left: 10%;
        width: 100%;
        margin: -170px 0 0;
    }

    .carousel-caption h1 span {
        font-size: 55px;
    }

    .carousel-control {
        width: 10%;
    }
}

@media screen and (max-width: 767px) {
    #main-slide {
        height: 580px;
    }

    .carousel-caption {
        left: 6%;
        margin: -110px 0 0;
    }

    .carousel-caption h1 {
        font-size: 23px;
        line-height: 1.1;
    }

    .carousel-caption h1 span {
        font-size: 27px;
    }
}

.main-snb {
    position: absolute;
    left: 50%;
    bottom: 13%;
    transform: translatex(-50%);
    width: 1000px;
    max-width: 100%;
}

.main-snb .col-sm-20 {
    padding: 0;
    border-right: 1px solid rgba(255, 255, 255, 0);
}

.main-snb a {
    background: rgba(103, 103, 103, 0.65);
    display: inline-block;
    width: 100%;
    padding: 25px 15px;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    text-decoration: none !important;
    letter-spacing: -0.02em;
}

.main-snb a:hover {
    background: rgba(169, 19, 27, 0.85);
}

.main-snb a i {
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 100%;
    width: 70px;
    height: 70px;
    line-height: 70px;
    color: #fff;
    font-size: 26px;
    margin: 0 0 12px;
}

.main-snb a span {
    display: block;
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    .main-snb {
        bottom: 6%;
    }
}

@media screen and (max-width: 767px) {
    .main-snb {
        width: 100%;
        bottom: 6%;
        padding: 0 40px;
    }

    .main-snb .col-sm-3 {
        width: 25%;
        border-bottom: 1px solid rgba(255, 255, 255, 0);
    }

    .main-snb a {
        padding: 30px 15px;
        font-size: 13px;
    }

    .main-snb a i {
        width: 50px;
        height: 50px;
        line-height: 50px;
        font-size: 20px;
        margin: 0 0 7px;
    }
}

/* sub page */
.sub-layout {
    margin-top: 90px;
}

.subpage,
.bbs-list-view-layout + .container {
    padding-bottom: 80px;
}

#community01,
#community02,
#community03,
#community04,
#community05 {
    padding-bottom: 0;
}

@media (min-width: 767px) {
    .community-snb div {
        width: 20%;
    }
}

@media (max-width: 767px) {
    .sub-layout {
        margin-top: 60px;
    }
}

/* sub page sub-top */
.sub-top-wrap {
    position: relative;
    width: 100%;
    /* height: 311px; */
    background: url(/skin/img/sub/sub-top-bg.jpg) no-repeat center / cover;
    /* background-size: cover; */
}

.sub-top-header {
    width: 100%;
    height: 91px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.5);
    box-sizing: border-box;
}

.breadcrumb {
    height: 45px;
    margin: 0;
    padding: 0;
    font-size: 12px;
    font-weight: 300;
    background: none;
    color: #555;
    letter-spacing: -0.06em;
    line-height: 45px;
    box-sizing: border-box;
}

.breadcrumb > li.active {
    color: #a9131b;
}

.breadcrumb > li + li:before {
    padding: 0 5px;
    color: rgba(255, 255, 255, 0.5);
    content: "/\00a0";
}

.sub-top-body {
    height: 220px;
}

.sub-top-body h2 {
    margin: 0;
    font-size: 37px;
    font-weight: 600;
    text-align: center;
    color: #172e51;
    /* line-height: 220px; */
    padding-top: 70px;
}

.sub-top-footer {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 50px;
    background: rgba(169, 19, 27, 0.85);
}

.sub-top-footer a {
    font-size: 16px;
    text-decoration: none !important;
    letter-spacing: -0.02em;
    line-height: 50px;
    color: #e6e6e6;
}

.sub-top-footer div.active {
    background: rgba(0, 0, 0, 0.25);
}

.sub-top-footer div.active a {
    color: #fff;
    font-weight: 500;
}

@media (max-width: 767px) {
    .sub-top-wrap {
        position: relative;
        width: 100%;
        height: 300px;
        background: url(/skin/img/sub/sub-top-bg.jpg) no-repeat 0 50%;
        background-size: cover;
        margin-bottom: 180px;
    }

    .sub-top-body h2 {
        margin: 0;
        padding-top: 48px;
        font-size: 30px;
        font-weight: 500;
        text-align: center;
        /* color: #fff; */
        /* line-height: 220px; */
    }

    .sub-top-footer {
        position: absolute;
        left: 0;
        bottom: auto;
        top: 100%;
        width: 100%;
        height: auto;
        background: rgba(169, 19, 27, 0.85);
    }
}

/* subpage sub-content*/
.sub-content {
    padding: 60px 15px 0;
}

.sub-content .title {
    margin: 0 0 30px;
}

.sub-content .title h3 {
    margin-top: 0;
    padding: 10px 0 30px;
    font-size: 30px;
    letter-spacing: -0.04em;
    color: #a9131b;
    border-bottom: 1px solid #e6e6e6;
}

.sub-content .title h3:before {
    content: "";
    display: block;
    margin-left: -6px;
    margin-bottom: 15px;
    background: #ac2f30;
    border-radius: 50px;
    width: 6px;
    height: 6px;
}

.sub-content .title .small-cap {
    margin: 5px 0 0;
    font-size: 17px;
    font-weight: 300;
    display: block;
    color: #555;
}

.sub-content .sub-title {
    color: #333;
    font-size: 24px;
    font-weight: 300;
    letter-spacing: -0.06em;
    margin: 40px 0 20px;
    padding: 0 15px 0;
    position: relative;
}

.sub-content .sub-title:before {
    content: "";
    background: #ac2f30;
    width: 8px;
    height: 2px;
    position: absolute;
    top: 0;
    left: 0;
}

.sub-content p {
    color: #333;
    letter-spacing: -0.02em;
    line-height: 1.8;
    font-weight: 400;
    margin: 0 0 20px;
    word-break: keep-all;
}

.sub-content p .strong-title {
    color: #323232;
    font-size: 16px;
    font-weight: 500;
    margin: 10px 0 5px;
    display: inline-block;
    width: 100%;
}

.sub-title {
    margin-top: 1.5em;
}

@media (max-width: 767px) {
    .sub-content .title {
        margin: 0 0 30px;
        padding: 10px 15px 30px;
        /* border-bottom: 1px solid #e6e6e6; */
        color: #a9131b;
        font-size: 25px;
        font-weight: 400;
        letter-spacing: -0.04em;
        position: relative;
    }

    .sub-content .title .small-cap {
        margin: 10px 0 0;
        font-size: 15px;
        font-weight: 300;
        display: block;
        color: #555;
    }

    .sub-content .sub-title {
        color: #333;
        font-size: 20px;
        font-weight: 300;
        letter-spacing: -0.06em;
        margin: 40px 0 20px;
        padding: 0 15px 0;
        position: relative;
    }
}

/* table 설정 */
.table-bordered {
    border-top: 2px solid #ac2f30 !important;
}

.table-bordered thead th {
    background: #f7f7f7;
    color: #323232;
    font-size: 15px;
    font-weight: 500;
    letter-spacing: -0.04em;
    padding: 12px 15px !important;
    border: 1px solid #e1e1e1 !important;
}

.table-bordered tbody td {
    color: #555;
    font-size: 13px;
    line-height: 1.6 !important;
    padding: 12px 15px !important;
    border: 1px solid #e1e1e1 !important;
}

.table > tbody + tbody {
    border-top: 2px solid #e1e1e1;
    background: #f7f7f7;
}

/* subpage about */
#about02-table th,
#about02-table td {
    text-align: center;
}

#about02-table td[rowspan] {
    vertical-align: middle !important;
}

#about04 .thumbnail {
    margin: 15px 0;
    padding: 0;
    height: 260px;
    border: 1px solid #e1e1e1;
    border-radius: 0;
    position: relative;
}

#about04 .thumbnail:before {
    content: "";
    background: #ac2f30;
    width: 20px;
    height: 1px;
    position: absolute;
    top: -1px;
    left: -1px;
}

#about04 .thumbnail img {
    float: left;
    width: 25%;
    height: auto;
    display: inline-block;
    margin: 50px 0 0 35px;
}

#about04 .thumbnail .caption {
    width: 65%;
    display: block;
    float: right;
    padding: 20px 15px;
}

#about04 .thumbnail .caption p {
    color: #555;
    font-size: 14px;
    font-weight: 300;
    margin: 0 0 10px;
    letter-spacing: -0.06em;
    line-height: 1.4;
}

#about04 .thumbnail .caption p.name {
    color: #333;
    font-size: 18px;
    font-weight: 500;
    margin: 0 0 15px;
}

@media (max-width: 767px) {
    #about04 .thumbnail {
        margin: 15px 0;
        padding: 0;
        height: max-content;
        border: 1px solid #e1e1e1;
        border-radius: 0;
        position: relative;
    }

    #about04 .thumbnail:after {
        content: "";
        display: block;
        clear: both;
    }

    #about04 .thumbnail img {
        float: left;
        width: 20%;
        height: auto;
        display: inline-block;
        margin: 50px 0 0 35px;
    }
}

/* subpage info */
#info01 table th,
#info01 table td {
    text-align: center;
    vertical-align: middle;
}

/* subpage graduate */
.tb-history {
    margin: 0;
}

.tb-history tbody tr th,
.tb-history tbody tr td {
    font-size: 15px;
    letter-spacing: -0.04em;
    line-height: 1.6;
    padding: 12px 15px;
}

.tb-history tbody tr th {
    border-top: 1px solid #999;
    border-bottom: 1px solid #999;
    color: #323232;
    font-weight: 500;
    text-align: center;
}

.tb-history tbody tr td {
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
    color: #555;
    font-weight: 300;
}

@media (max-width: 767px) {
    .tb-history tbody tr th {
        border-top: 1px solid #999;
        border-bottom: 1px solid #999;
        color: #323232;
        font-weight: 500;
        text-align: center;
        font-size: 13px;
    }

    .tb-history tbody tr td {
        border-top: 1px solid #e6e6e6;
        border-bottom: 1px solid #e6e6e6;
        color: #555;
        font-weight: 300;
        font-size: 13px;
    }
}

/*footer*/
.footer_copy .text-center {
    padding: 0;
}

.footer_wrap {
    padding: 15px 0;
    background-color: #323232;
}

.footer_wrap + br {
    display: none !important;
}

@media screen and (max-width: 479px) {
    .footer_wrap .call_wrap .btn.btn-plug.btn-dot {
        display: inline-block;
    }
}

.footer_wrap .copy_wrap {
    text-align: left;
}

.footer_wrap .swr-line {
    border-top: 1px solid #3f474a;
    margin-top: 40px;
    margin-bottom: 35px;
}

.footer_wrap .copy_wrap span {
    color: #8c8c8c;
    font-size: 13px;
}

.footer_wrap .copy_wrap span[name="addr"] {
    line-height: 24px;
}

@media screen and (max-width: 767px) {
    .footer_wrap .copy_wrap span[name="addr"] {
        line-height: 1;
    }
}

.footer_wrap .copy_wrap span + span:before {
    content: "| ";
    margin: 15px;
    opacity: 0.5;
}

.footer_wrap .location_link {
    color: #8c8c8c;
    font-size: 12px;
}

.footer_wrap .copyright_wrap span {
    color: #8c8c8c;
    font-size: 11px;
    display: block;
    margin-top: 5px;
}

@media (max-width: 767px) {
    .footer_wrap .copyright_wrap span {
        color: #8c8c8c;
        font-size: 10px;
        display: block;
        margin-top: 10px;
    }
}

/* ----- 게시판 설정 ----- */
.dh-board {
    margin-bottom: 70px;
}

.form-horizontal {
    margin-bottom: 100px;
}

.dh-board .table > thead > tr > th,
.dh-board .table > tbody > tr > th,
.dh-board .table > tfoot > tr > th,
.dh-board .table > thead > tr > td,
.dh-board .table > tbody > tr > td,
.dh-board .table > tfoot > tr > td {
    padding: 16px 20px;
    color: #666;
    font-size: 13px;
}

.dh-board .table > thead > tr > th {
    background: #f8f8f8;
    vertical-align: middle;
    border-bottom: 1px solid #ccc;
    font-size: 15px;
    font-weight: 500;
    color: #333;
    letter-spacing: -0.03em;
    text-align: center;
}

.dh-board .table > tbody > tr > td {
    border-bottom: 1px dotted #dedede;
}

.dh-board .table > tbody > tr > td > strong > a {
    color: #555;
}

.dh-board > .table-hover {
    border-top: 2px solid #333333;
    border-bottom: 1px solid #ccc;
    margin: 0 0 30px;
}

.dh-board > .table-hover > tbody > tr:hover td {
    background-color: #f9f9f9;
}

.dh-board > .table-hover > tbody > tr:hover > td > strong > a {
    color: #000;
}

.dh-board .regdate,
.dh-board .hits,
.dh-board .writer,
.dh-board .status {
    text-align: center;
}

.dh-margin-top {
    margin-top: 40px;
    display: inline-block;
}

.dh-board .dh-margin-top .pagination {
    margin-top: 0;
}

.dh-view-box {
    margin-top: 0px;
}

.sns-box {
    display: none;
}

.dh-view-box > .row {
    padding-left: 15px;
    padding-right: 15px;
}

.dh-view-box > .row > .page-header {
    border-top: 2px solid #000;
    border-bottom: 1px solid #ccc;
    padding: 0 20px;
    margin: 0;
}

.dh-view-box > .row > .page-header > h4 {
    color: #333;
    font-size: 23px;
    margin: 14px 0;
}

.dh-view-box > .row > .dh-view-info {
    border-bottom: 1px solid #ccc;
    background: rgba(0, 0, 0, 0);
    padding: 8px 20px 8px;
    color: #888;
}

.dh-view-box > .row > .dh-view-info > span {
    padding: 0 15px 0 0;
}

.dh-view-box > .row > .dh-view-info > span > strong {
    color: #555;
    padding: 0 5px 0 0;
}

.dh-view-box .dh-attach h6 {
    margin: 0 0 0;
    padding: 5px 5px 0;
}

.dh-view-box > .row:nth-child(2) > div:nth-child(3) {
    padding: 30px 20px 60px !important;
    min-height: 300px;
}

.bbs-status-index-layout .regdate {
    display: none;
}

.label {
    background: rgba(0, 0, 0, 0);
    padding: 0 5px;
    font-size: 90%;
}

.label .glyphicon-lock {
    color: #666;
}

.label-danger,
.label-primary {
    color: #a9131b;
}

.pagination > .active > a,
.pagination > .active > a:focus,
.pagination > .active > a:hover,
.pagination > .active > span,
.pagination > .active > span:focus,
.pagination > .active > span:hover {
    background-color: #a9131b;
    border: 1px solid #a9131b !important;
}

.pagination > li > a,
.pagination > li > span {
    color: #9d8478;
    border: 1px solid #fff !important;
}

.pagination > li > a:focus,
.pagination > li > a:hover,
.pagination > li > span:focus,
.pagination > li > span:hover {
    color: #9d8478;
}

.dh-margin-top form#insertForm {
    width: 100%;
    max-width: 100%;
    display: block;
    margin: 0 0 0;
}

.btnRead {
    font-weight: 500;
}

.btn-default,
.btn-primary,
.btn-danger {
    background-image: none;
}

.btn-group,
.btn-group-vertical {
    margin: 10px 0 30px;
}

.filter-items {
    text-align: center;
    padding: 0;
    margin: 0 0 20px;
}

.filter-items > a {
    margin: 0 2px !important;
}

.filter-items > a > .filter-label {
    background: #f7f7f7;
    border: 1px solid #dedede !important;
    font-size: 13px;
    font-weight: 400;
    color: #555;
    letter-spacing: -0.04em;
    line-height: 1;
    margin: 0;
    padding: 15px 20px;
}

.filter-items > a:hover > .filter-label,
.filter-items > a:focus > .filter-label {
    background: #fff;
    color: #a9131b;
    font-weight: 500;
}

.filter-items > a.on > .filter-label {
    color: #111;
}

.filter-items > a.on > .filter-label::after {
    content: "";
    display: block;
    background-color: #a9131b;
    width: 100%;
    height: 10px;
    z-index: 0;
    margin-top: -5px;
}

.filter-items > a > .filter-label span {
    z-index: 1;
    padding: 0 20px;
}

@media screen and (max-width: 767px) {
    .filter-items > a + a {
        margin-left: 7px;
    }

    .filter-items > a > .filter-label span {
        padding: 0 10px;
    }
}

/* calendar */
.contact-calendar-layout {
    padding: 0 0 80px;
}

.contact-calendar-layout .btn-danger {
    background: #a9131b;
    border: 1px solid #a9131b !important;
    border-radius: 0 !important;
    color: #e6e6e6;
    font-weight: 600;
    font-size: 12px !important;
    padding: 10px 15px !important;
    margin: 0 !important;
}

.contact-calendar-layout .btn-danger:hover,
.contact-calendar-layout .btn-danger:focus {
    background: #fff;
    color: #a9131b;
}

.fc-button-group button {
    background: #f7f7f7 !important;
    border: 1px solid #dedede !important;
    border-radius: 0 !important;
    box-shadow: 0 0 0 rgba(0, 0, 0, 0);
    padding: 0 20px !important;
    letter-spacing: -0.02em;
    line-height: 40px !important;
    height: 45px !important;
    color: #555 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
}

.fc-button-group .fc-state-active {
    background: #fff !important;
    color: #a9131b !important;
    font-weight: 500 !important;
}

#quicklink {
    display: none;
    position: absolute;
    right: 20%;
    top: 27%;
    width: 200px;
    max-width: 100%;
    box-shadow: 0px 6px 8px rgba(0, 0, 0, 0.3);
}

#quicklink .title {
    background: #a9131b;
    text-align: center;
    text-shadow: none;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

#quicklink .title h2 {
    padding: 13px 0;
    position: relative;
    margin: 0px;
    color: #fff;
    font-size: 18px;
    line-height: 1;
}

.button-wrap {
    padding: 5px 0;
    background: #fff;
    margin: 0;
}

.button-wrap li {
    text-align: left;
    margin: 0;
}

.button-wrap li a {
    font-size: 15px;
    letter-spacing: -0.034em;
    padding: 15px 0;
    text-shadow: 0 0 0 rgba(0, 0, 0, 0);
    display: block;
    color: #333;
    font-weight: 500;
    text-align: center;
    border-bottom: 1px solid #ddd;
    line-height: 1;
    background: #fff;
}

.button-wrap li a:hover {
    text-decoration: none;
    color: #a9131b;
    font-weight: 600;
    background: #fff;
}

.button-wrap > li:last-child a {
    border-bottom: none;
}

/* personal setting 0.62v */
/* layout */
.mt-0 {
    margin-top: 0px !important;
}

.mt-20 {
    margin-top: 20px !important;
}

.mt-30 {
    margin-top: 30px !important;
}

.mt-40 {
    margin-top: 40px !important;
}

.mt-60 {
    margin-top: 60px !important;
}

.mb-0 {
    margin-bottom: 0px !important;
}

.mb-20 {
    margin-bottom: 20px !important;
}

.mb-30 {
    margin-bottom: 30px !important;
}

.mb-40 {
    margin-bottom: 40px !important;
}

.mb-60 {
    margin-bottom: 60px !important;
}

.mg-0 {
    margin: 0 !important;
}

.pd-0 {
    padding: 0 !important;
}

@media (min-width: 768px) {
    .col-sm-20 {
        width: 20%;
    }
}

/* img */
.img-bordered {
    border: 1px solid #ddd;
}

.img-caption {
    margin: 10px 0;
    text-align: center;
    font-size: 16px;
    color: #555;
    font-weight: 500;
}

/* align */
.text-center-table thead th,
.text-center-table thead td,
.text-center-table tbody th,
.text-center-table tbody td {
    text-align: center !important;
    vertical-align: middle !important;
}

.text-center-table .text-left,
.text-center-table .text-left th,
.text-center-table .text-left td {
    text-align: left !important;
}

/* font */
.numbering {
    margin-right: 5px;
}

.numbering.circle,
.numbering.sqr {
    display: inline-block;
    width: 1.7em;
    height: 1.7em;
    line-height: 1.7em;
    text-align: center;
    font-size: 0.8em;
    font-weight: 600;
    letter-spacing: -0.04em;
    color: #fff;
    border-radius: 0;
    background: #ac2f30;
}

.numbering.circle {
    border-radius: 50%;
}

/*list style*/
.li-none > li {
    list-style: none !important;
    margin-left: 20px;
}

.li-circle > li {
    list-style: circle !important;
    margin-left: 20px;
}

.li-square > li {
    list-style: square !important;
    margin-left: 20px;
}

.li-disc > li {
    list-style: disc !important;
    margin-left: 20px;
}

.li-dash > li,
.li-dot > li {
    margin-left: 10px;
    padding-left: 20px;
    position: relative;
}

.li-dash > li:before,
.li-dot > li:before {
    content: "-";
    display: block;
    position: absolute;
    left: 5px;
    top: 0;
}

.li-dot > li:before {
    content: "·";
}

.location-li {
    border-top: 2px solid #222;
    margin: 20px 0 0;
}

.location-li li {
    border-bottom: 1px solid #ddd;
    padding: 10px;
    font-size: 15px;
    letter-spacing: -0.03em;
    margin-bottom: 3px;
}

.location-li span {
    display: inline-block;
    margin-right: auto;
    min-width: 130px;
    font-weight: 500;
    color: #222;
    border-radius: 4px;
}

@media (max-width: 767px) {
    .location-li span {
        display: block;
    }
}

.location-li span i {
    margin-right: 5px;
    color: #ac2f30;
}

.partner-li {
    margin: 20px 0;
}

.partner-li:after {
    content: "";
    display: block;
    clear: both;
}

.partner-li > li {
    float: left;
    width: 20%;
    padding: 10px;
}

.partner-li > li img {
    border: 1px solid #ddd;
}

.category-li {
    display: inline-block;
    margin: 20px auto;
}

.category-li:after {
    content: "";
    display: block;
    clear: both;
}

.category-li > li {
    float: left;
    display: inline-block;
    margin: 5px;
    padding: 10px 20px;
    background: #f5f5f5;
    border: 1px solid #ddd;
}

.trait-dl {
    margin: 40px 0;
}

.trait-dl:after {
    content: "";
    display: block;
    clear: both;
}

.trait-dl dt,
.trait-dl dd {
    float: left;
    margin-bottom: 10px;
    padding: 20px 40px;
    border-top: 2px solid #ddd;
}

.trait-dl dt {
    border-color: #ac2f30;
    font-size: 18px;
}

@media (min-width: 768px) {
    .trait-dl dt {
        width: 25%;
    }

    .trait-dl dd {
        width: 75%;
    }
}

@media (max-width: 767px) {
    .partner-li > li {
        width: 50%;
    }
}

/* component */
.card {
    display: block;
    position: relative;
    padding: 15px;
    margin-top: 30px;
    margin-bottom: 20px;
    border: 1px solid #eee;
    min-height: max-content;
    background: #fafafa;
}

.card .card-ttl {
    margin: -15px -15px 15px;
    padding: 10px 0;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    background: #ac2f30;
}

.column-2 {
    column-count: 2;
    column-rule: 1px solid #ddd;
    column-gap: 30px;
}

@media (max-width: 767px) {
    .column-2 {
        column-count: 1;
    }
}

.column-2 ul,
.column-2 dl,
.column-2 ol {
    margin: 0;
}

.quote-box {
    margin: 20px auto;
    padding: 25px;
    background: #f5f5f5;
}

.greet .quote,
p.quote {
    margin: 30px 0;
    font-size: 26px;
    font-weight: 300;
    color: #555;
    line-height: 1.2;
}

p.quote span {
    font-weight: 500;
}

/* custom setting */
.container_contents,
.intro-html-layout,
.intro-html-layout > div,
.footer_copy > div,
.sub-layout {
    width: 100%;
    padding: 0;
    margin: 0;
}

ul,
dl,
ol {
    padding: 0;
}

p,
li,
dt,
dd {
    line-height: 1.6;
}

a:hover,
a:focus {
    text-decoration: none;
}

* {
    box-sizing: border-box;
    word-break: keep-all;
}

.dh-board .table-hover {
    margin: 0;
    border-top: 2px solid #333;
    border-bottom: 1px solid #333;
}

.dh-board .table-hover thead tr th,
.dh-board .table-hover tbody tr th,
.dh-board .table-hover tbody tr td {
    padding: 13px 15px;
    font-size: 15px;
    color: #666;
    letter-spacing: -0.04em;
    line-height: 1.6;
    border-bottom: 1px solid #e1e1e1;
}

.dh-board .table-hover thead tr th,
.dh-board .table-hover tbody tr th {
    color: #222;
    background: #f5f5f5;
    padding: 10px 15px;
}

.table-style {
    margin: 0 0 20px;
    border-top: 2px solid #a9131b;
}

.table-style tr th,
.table-style tr td {
    padding: 12px 12px !important;
    border-bottom: 1px solid #dedede !important;
    letter-spacing: -0.02em;
    word-break: keep-all;
    vertical-align: middle !important;
}

.table-style tr th {
    color: #333;
    text-align: center;
}

.table-style thead tr th {
    background: #f8f8f8;
}

.table-style tr td {
    color: #666;
}

.history-table {
    border-top: none;
}

.history-table.table-style tr th,
.history-table.table-style tr td {
    border-bottom: none !important;
    padding: 25px !important;
}

.history-table.table-style tr th {
    position: relative;
    border-right: 1px solid #ccc;
    font-size: 22px;
    color: #a9131b;
}

.history-table.table-style tr th:after {
    content: "";
    display: block;
    position: absolute;
    right: -5px;
    top: 50%;
    transform: translatey(-50%);
    width: 10px;
    height: 10px;
    border: 3px solid #a9131b;
    border-radius: 50%;
    background: #fff;
}

@media (max-width: 767px) {
}

/*subpage setting*/
.sub-content .emp {
    font-size: 16px;
    font-weight: 600;
    color: #ac2f30;
}

.sub-content section {
    padding-bottom: 80px;
}

.sub-content section h4 {
    font-weight: 600;
    position: relative;
    letter-spacing: -0.034em;
    margin-bottom: 20px;
    font-size: 24px;
}

.sub-content section h5 {
    margin-top: 30px;
    margin-bottom: 15px;
    font-size: 20px;
    letter-spacing: -0.034em;
    color: #a9141b;
}

.stripe-dl {
    margin: 30px 0;
}

.stripe-dl dt {
    padding: 10px 20px;
    font-size: 16px;
    background: #f5f5f5;
}

.stripe-dl dd {
    margin-bottom: 20px;
    padding: 20px;
}

/*subpage about*/
.about01-wrap {
    margin: 10px 0 40px;
    padding: 20px;
    background: #f9f8f3;
}

.about01-wrap p {
    margin-top: 30px;
    line-height: 1.7em;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 16px;
}

.faculty .card {
    border: none;
    border-top: 2px solid #a9131b;
    padding: 30px;
    min-height: 626px;
}

.faculty .caption {
    padding: 30px 0 0;
}

.faculty .caption p {
    margin-bottom: 5px;
    letter-spacing: -0.034em;
}

.faculty .caption li {
    margin-left: 0;
}

.faculty .name {
    padding-bottom: 10px;
    border-bottom: 1px solid #ddd;
    font-size: 20px;
    font-weight: 600;
}

.faculty .major {
    color: #ac2f30;
    font-weight: 600;
    font-size: 17px;
    padding-top: 20px;
}

.snb {
    padding: 30px 0;
    text-align: center;
}

.snb ul {
    display: inline-block;
    margin: 0 auto 50px;
    width: 100%;
    max-width: 1140px;
}

.snb ul:after {
    content: "";
    display: block;
    clear: both;
}

.snb ul li {
    float: left;
    width: calc(100% / 3);
}

.snb ul li a {
    display: block;
    /* width: 180px; */
    height: 50px;
    line-height: 46px;
    font-size: 16px;
    font-weight: 500;
    background: #44505f;
    color: #fff;
    border: 2px solid #44505f;
}

.snb ul li a:hover {
    background: #323841;
}

.snb ul li.active a {
    color: #44505f;
    font-weight: 600;
    background: #fff;
}
.conversation-wrap .clearfix {
    padding-bottom: 40px;
}
.conversation-wrap .area-title {
    margin-top: 15px;
    padding-top: 15px;
    border-top: 1px dashed #ddd;
}

.conversation-wrap .area-title:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.conversation-wrap img {
    padding: 5px;
    border: 1px solid #ddd;
}

.conversation-wrap .name {
    margin-top: 10px;
    text-align: center;
    font-size: 18px;
    font-weight: 500;
}

.conversation-wrap .name small {
    display: block;
    line-height: 1.3;
}

.li-none li {
    position: relative;
    margin-bottom: 2px;
    padding-left: 1.5em;
}

.li-none li .numbering {
    position: absolute;
    left: 0;
    top: 0;
}

.btn-wrap {
    margin: 40px 0;
    text-align: center;
}

.btn-wrap li {
    display: inline-block;
    padding: 0 15px;
}

.btn-wrap li a {
    display: block;
    width: 260px;
    height: 60px;
    line-height: 57px;
    border-radius: 40px;
    font-size: 16px;
    font-weight: 600;
    background: #ffffff;
    color: #ac2f30;
    border: 1px solid #eb9091;
}

.btn-wrap li a:hover {
    background: #ac2f30;
    color: #fff;
    border: 1px solid #ac2f30;
}

/*subpage student*/
.council-wrap {
    padding: 40px;
    text-align: center;
    border: 1px solid #eee;
    border-radius: 5px;
}

.council-wrap img {
    margin-bottom: 50px;
    margin-top: 30px;
}

.council-wrap .head {
    margin: 30px 0;
}

.council-wrap .head li {
    display: inline-block;
    margin: 0 10px;
    padding: 10px 20px;
    font-size: 22px;
    font-weight: 500;
    color: #fff;
    background: #2a5186;
}

.council-wrap .head li small {
    margin-right: 10px;
    color: #fff;
    font-size: 14px;
}

.subpage .council-wrap > h5 {
    font-size: 24px;
    font-weight: 600;
    color: #333;
    margin-top: 100px;
}

.council-wrap .card {
    min-height: 185px;
}

/*subpage graduated*/
.column-wrap h5 {
    position: relative;
    padding: 20px 20px 0;
    border-top: 2px solid #ddd;
}

.column-wrap h5:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: -2px;
    width: 150px;
    height: 2px;
    background: #a9131b;
}

.column-wrap p {
    padding-left: 20px;
}

.column-wrap .card p {
    margin-bottom: 0;
}

.subject-wrap p {
    position: relative;
    margin: 0;
    padding: 18px 80px 18px 100px;
    line-height: 1.5em;
}

.subject-wrap p:nth-child(odd) {
    background: #f5f5f5;
}

.subject-wrap p .code {
    position: absolute;
    left: 10px;
    top: 50%;
    font-size: 15px;
    transform: translatey(-50%);
}

.subject-wrap p .score {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translatey(-50%);
}

.subject-wrap p .subject {
    font-weight: 500;
    line-height: 2.2em;
    font-size: 15px;
}

.dh-board,
.dh-view-box,
#insertForm,
#mailForm,
.bbs-list-view-layout + .row,
.bbs-blog-view-layout + .row,
#mod_type_formForm {
    visibility: hidden;
}
/* 2018-04-04 */
.footer_wrap .copy_wrap a {
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    padding-left: 10px;
}
.footer_wrap .copy_wrap strong {
    font-weight: 400;
}
#curriculum01 .se1 p {
    margin-bottom: 50px;
    font-size: 18px;
}

#curriculum01 .se2 .li-none {
    margin-bottom: 50px;
}

/* login */

.login-layout,
.id-find-layout,
.pw-find-layout {
    margin-top: 90px;
    background: #f5f5f5;
    padding: 100px 15px;
}
.login-layout .panel,
.id-find-layout .panel,
.pw-find-layout .panel {
    box-shadow: none;
    max-width: 500px;
    padding: 80px 40px 80px;
    margin: 0 auto;
    border: 1px solid #ddd;
    border-radius: 0px;
}
.login-layout .panel hr,
.id-find-layout .panel hr,
.pw-find-layout .panel hr {
    display: none;
}
.login-layout .panel .panel-body,
.id-find-layout .panel .panel-body,
.pw-find-layout .panel .panel-body {
    padding: 0;
}
.login-layout .panel-body > div.col-sm-12,
.id-find-layout .panel-body > div.col-sm-12,
.pw-find-layout .panel-body > div.col-sm-12 {
    float: none;
}
.login-layout .panel-body > div.col-sm-12 h2,
.id-find-layout .panel-body > div.col-sm-12 h2,
.pw-find-layout .panel-body > div.col-sm-12 h2 {
    text-align: center;
    margin: 0 0 15px;
    line-height: 1;
    color: #222;
    font-size: 32px;
}
.inner-box-msg {
    width: 100%;
    text-align: center;
    float: none;
    margin-bottom: 30px;
    padding: 0;
}
.inner-box-msg p {
    font-size: 14px;
    letter-spacing: -0.03em;
    color: #555;
    margin: 0;
}
.inner-box-form {
    width: 100%;
    float: none;
    margin: 0 auto;
    overflow: hidden;
    padding: 0;
}
.login-layout label,
.id-find-layout label,
.pw-find-layout label {
    font-size: 16px;
    letter-spacing: -0.03em;
    color: #222;
    font-weight: 500;
    margin: 0 0 10px;
    line-height: 1;
}
.login-layout .form-control,
.id-find-layout .form-control,
.pw-find-layout .form-control {
    box-shadow: none;
    border-radius: 0px;
    border: 1px solid #ddd;
    height: 40px;
    color: #555;
    font-size: 15px;
    letter-spacing: -0.03em;
}
.login-layout .form-control:focus,
.id-find-layout .form-control:focus,
.pw-find-layout .form-control:focus {
    border-color: #aaa;
}
.login-layout .btn-warning,
.id-find-layout .btn-warning,
.pw-find-layout .btn-warning {
    float: none;
    width: 100%;
    height: 50px;
    background: #a9131b;
    border-radius: 0px;
    border: none;
    font-size: 15px;
    letter-spacing: -0.03em;
    box-shadow: none;
    margin-top: 15px;
    transition: all ease 0.3s;
}
.login-layout .btn-warning:hover,
.id-find-layout .btn-warning:hover,
.pw-find-layout .btn-warning:hover {
    background: #a9131b;
}
.login-layout form > div > p,
.id-find-layout form > div > p,
.pw-find-layout form > div > p {
    width: 50%;
    margin: 0;
    float: left;
    text-align: center;
    line-height: 1;
}
.login-layout form > div > p + p,
.id-find-layout form > div > p + p,
.pw-find-layout form > div > p + p {
    border-left: 1px solid #ccc;
}
.login-layout form > div > p > a,
.id-find-layout form > div > p > a,
.pw-find-layout form > div > p > a {
    font-size: 14px;
    color: #555;
    letter-spacing: -0.03em;
    display: block;
    padding: 2px 0;
}

@media (max-width: 768px) {
    .login-layout,
    .id-find-layout,
    .pw-find-layout {
        padding: 20px 15px;
    }
    .login-layout .panel,
    .id-find-layout .panel,
    .id-find-layout .panel {
        padding: 40px;
    }
    .login-layout .panel-body > div.col-sm-12 h2,
    .id-find-layout .panel-body > div.col-sm-12 h2,
    .pw-find-layout .panel-body > div.col-sm-12 h2 {
        font-size: 24px;
    }
    .inner-box-msg p {
        font-size: 12px;
    }
    .login-layout label,
    .id-find-layout label,
    .pw-find-layout label {
        font-size: 14px;
    }
    .login-layout .form-control,
    .id-find-layout .form-control,
    .pw-find-layout .form-control {
        font-size: 13px;
        height: 36px;
    }
    .login-layout form > div > p > a,
    .id-find-layout form > div > p > a,
    .pw-find-layout form > div > p > a {
        font-size: 12px;
    }
    .login-layout .btn-warning,
    .id-find-layout .btn-warning,
    .pw-find-layout .btn-warning {
        height: 45px;
        font-size: 14px;
        margin-top: 10px;
    }
}

/*join form css*/
.join-agree-area {
    margin-top: 90px;
    padding: 100px 15px;
    background: #f5f5f5;
}
.join-agree-area .panel-default {
    margin: 100px auto;
    width: 1170px;
    max-width: 100%;
    border-radius: 0;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
.join-agree-area .panel-footer {
    background: #fff;
}
#joinForm .btn-default,
#joinForm .btn-success,
.join-agree-area .btn-default {
    border-radius: 0;
    border: 2px solid #a9131b;
    color: #fff;
    font-weight: 500;
    background: #a9131b;
}
.join-agree-area .control-label {
    font-size: 18px;
}
.join-agree-area .form-control {
    border-radius: 0;
    background: #f5f5f5;
}
#joinForm {
    padding: 50px 15px;
    background: #f5f5f5;
}
#joinForm .panel-default {
    width: 800px;
    max-width: 100%;
    margin: 0 auto;
    border-radius: 0;
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
}
#joinForm .panel-heading {
    background: #fff;
    font-size: 20px;
    text-transform: uppercase;
}
#joinForm .panel-footer {
    background: #fff;
}
#joinForm .form-control {
    border-radius: 0;
}
#joinForm .btn-default {
    background: #f5f5f5;
    color: #777;
    border: 1px solid #ddd;
}
@media (max-width: 767px) {
    .join-agree-area {
        padding: 50px 15px;
    }
    .join-agree-area .panel-default {
        margin: 0 auto;
    }
    #joinForm .panel-footer .form-group > div {
        width: 50%;
        float: left;
    }
    #joinForm .control-label br {
        display: none;
    }
}
.footer-link {
    text-align: right;
}
.footer-link ul {
    margin: 0;
    display: inline-block;
}
.footer-link li {
    text-align: center;
    display: inline-block;
    width: 61px;
    padding: 5px 0;
}
.footer-link li a {
    display: block;
    font-size: 12px;
    color: #888;
    line-height: 1.2;
}
.footer-link li a:hover,
.footer-link li a:hover i {
    color: #fff;
}
.footer-link li i {
    display: block;
    margin: 0 auto 5px;
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 25px;
    color: #fff;
    border-radius: 4px;
}
.footer-link li:nth-child(1) i {
    background: #3b5998;
}
.footer-link li:nth-child(2) i {
    background: #49983b;
}
.footer-link li:nth-child(3) i {
    background: #983b3b;
}
.img-wrap {
    margin: 0px -5px 20px;
}
.img-wrap > div {
    padding: 5px;
}
.footer_copy .admin {
    margin-left: 10px;
    padding: 0 8px !important;
    border: 1px solid;
    text-align: center;
    border-radius: 4px;
}
@media (max-width: 767px) {
    .body-layout {
        overflow-x: hidden;
    }
    .navbar-inverse .navbar-nav > li > a {
        padding: 10px 20px;
    }
    .nav .open > a,
    .nav .open > a:focus,
    .nav .open > a:hover {
        border-color: #a9131b;
    }
    .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
        color: #777;
    }
    .carousel-inner > .item {
        background-position: center;
    }
    .carousel-control {
        display: none;
    }
    .carousel-caption {
        top: 35%;
    }
    .main-snb .col-sm-20 {
        border: 3px solid transparent;
    }
    .main-snb a {
        padding: 10px 5px;
    }
    .footer-link li {
        margin-top: 10px;
    }
    .footer-link li i {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 16px;
    }
    .sub-top-header {
        height: 58px;
    }
    .sub-top-wrap {
        height: 180px;
    }
    .sub-content .title {
        margin: 0;
    }
    .btn-wrap li a {
        margin-bottom: 15px;
    }
    .council-wrap {
        padding: 20px 30px;
    }
    .dh-margin-top {
        text-align: center;
    }
    .sub-content p {
        word-break: break-all;
        text-align: justify;
    }
    .subpage .council-wrap h4 {
        font-size: 20px;
    }
    .council-wrap .quote {
        font-size: 16px;
        font-weight: 400;
    }
    .council-wrap .quote br {
        display: none;
    }
    .council-wrap .head li {
        font-size: 16px;
    }
    .subpage .council-wrap > h5 {
        margin-top: 30px;
        font-size: 20px;
    }
    .council-wrap .card {
        min-height: 0;
    }
    .navbar-brand:after {
        font-size: 11px;
        bottom: -15px;
    }
    .footer_wrap .copy_wrap > a {
        display: block;
        margin-top: 7px;
        padding-left: 0;
    }
}
