@charset "UTF-8";

/*--2024.05追記--*/
.pc_on {
    display: block;
}
.sp_on {
    display: none;
}
@media screen and (max-width: 750px) { 
    .pc_on {
        display: none;
    }
    .sp_on {
        display: block;
    }
}


/*--トップページ改修--*/
.tmv { background: url("../img/top/bg_mv.jpg") no-repeat center center/cover; }
.tmv__inner { padding-top: 140px; height: 800px; }
.tmv__inner--text01 {
    margin-bottom: 25px;
    text-align: center;
    color: #fff;
    font-size: 50px;
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    text-shadow: #000 2px 2px 10px;
    line-height: 1.4;
}
.tmv__inner--text02 {
    margin-bottom: 30px;
    text-align: center;
    color: #fff;
    font-size: 20px;
    font-weight: bold;
    text-shadow: #000 2px 2px 10px;
    line-height: 2;
}
.tmv__inner--text03 {
    text-align: center;
}
@media screen and (min-width: 751px) and (max-width: 1366px) {
    .tmv__inner { padding-top: 160px; height: 620px; }
    .tmv__inner--text01 {
        font-size: 46px;
    }
}
@media screen and (max-width: 750px) { 
    .tmv__inner { 
        padding-top: 30px;
         height: 500px;
         display: flex;
         justify-content: center;
         align-items: center;
        }
    .tmv__inner--text01 {
        margin-bottom: 4%;
        font-size: 22px;
    }
    .tmv__inner--text02 {
        width: 90%;
        margin: 0 auto 6%;
        font-size: 12px;
    }
    .tmv__inner--text03 {
        width: 90%;
        margin: 0 auto;
    }
}



.tAbout__block01 {
    background: url("../img/top/bg_about01.jpg") no-repeat center top;
    min-height: 803px;
    margin-bottom: 90px;
}
.tAbout__block01--box {
    max-width: 500px;
}
.tAbout__block01--box .cate {
    margin-bottom: 55px;
    color: #436ba0;
    font-size: 16px;
    font-weight: bold;
}
.tAbout__block01--box h3 {
    margin-bottom: 30px;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.5;
}
.tAbout__block01--box h3 + p {
    margin-bottom: 50px;
}
.tAbout__block01--box .btn01 {
    width: 275px;
}
.tAbout__block01--box .btn01 a {
    display: block;
    background: #162644;
    margin-bottom: 15px;
    padding: 12px 0;
    text-align: center;
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    -webkit-transition: .2s opacity ease-in;
    -o-transition: .2s opacity ease-in;
    transition: .2s opacity ease-in;
}
.tAbout__block01--box .btn01 a:hover {
    opacity: .6;
}
.tAbout__block01--box .btn01 a span {
    position: relative;
}
.tAbout__block01--box .btn01 a span:after {
    content: '>';
    display: block;
    -webkit-transform: scaleX(0.5);
    -ms-transform: scaleX(0.5);
    transform: scaleX(0.5);
    position: absolute;
    line-height: 1;
    right: -20px;
    top: 50%;
    margin-top: -0.5em;
}
.tAbout__block02 {
    background: url("../img/top/bg_about02.jpg") no-repeat center top;
    min-height: 803px;
}
.tAbout__block02--box {
    max-width: 500px;
    float: right;
}
.tAbout__block02--box .cate {
    margin-bottom: 55px;
    color: #436ba0;
    font-size: 16px;
    font-weight: bold;
}
.tAbout__block02--box h3 {
    margin-bottom: 30px;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.5;
}
.tAbout__block02--box h3 + p {
    margin-bottom: 50px;
}
.tAbout__block02--box .btn02 {
    width: 275px;
}
.tAbout__block02--box .btn02 a {
    display: block;
    background: #d4b250;
    padding: 12px 0;
    text-align: center;
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    -webkit-transition: .2s opacity ease-in;
    -o-transition: .2s opacity ease-in;
    transition: .2s opacity ease-in;
}
.tAbout__block02--box .btn02 a:hover {
    opacity: .6;
}
.tAbout__block02--box .btn02 a span {
    position: relative;
}
.tAbout__block02--box .btn02 a span:after {
    content: '>';
    display: block;
    -webkit-transform: scaleX(0.5);
    -ms-transform: scaleX(0.5);
    transform: scaleX(0.5);
    position: absolute;
    line-height: 1;
    right: -20px;
    top: 50%;
    margin-top: -0.5em;
}
.tAbout__block03 {
    background: url("../img/top/bg_about03.jpg") no-repeat center top;
    min-height: 600px;
    padding-top: 200px;
}
.tAbout__block03--list {
    display: flex;
}
.tAbout__block03--list li {
    background: url("../img/top/bg_border.png") no-repeat right center;
    width: 25%;
    padding: 15px 0 5px;
}
.tAbout__block03--list li:last-child {
    background: none;
}
.tAbout__block03--list li .icon {
    margin-bottom: 15px;
    text-align: center;
}
.tAbout__block03--list li .txt01 {
    text-align: center;
    color: #fff;
    font-weight: bold;
}
.tAbout__block03--list li .txt02 {
    text-align: center;
    color: #fff;
    font-weight: bold;
    line-height: 1.4;
}
.tAbout__block03--list li .txt02 span {
    font-size: 60px;
}
@media screen and (min-width: 751px) and (max-width: 1366px) {
    .tAbout__block01 {
        background: url("../img/top/bg_about01.jpg") no-repeat 60% top/auto 100%;
        min-height: 700px;
    }
    .tAbout__block01--box {
        max-width: 40%;
    }
    .tAbout__block01--box .cate {
        margin-bottom: 20px;
    }
    .tAbout__block01--box .btn01 a:hover {
        opacity: 1;
    }
    .tAbout__block02 {
        background: url("../img/top/bg_about02.jpg") no-repeat 40% top/auto 100%;
        min-height: 700px;
    }
    .tAbout__block02--box {
        max-width: 40%;
    }
    .tAbout__block02--box .cate {
        margin-bottom: 20px;
    }
    .tAbout__block02--box .btn02 a:hover {
        opacity: 1;
    }
}
@media screen and (max-width: 750px) {
    .tAbout h2.mb70 {
        margin-bottom: 8%;
    }
    .tAbout__block01 {
        background: none;
        min-height: 0;
        margin-bottom: 12%;
    }
    .tAbout__block01--box {
        max-width: 100%;
    }
    .tAbout__block01--box figure {
        margin-bottom: 3%;
    }
    .tAbout__block01--box .cate {
        margin-bottom: 2%;
        font-size: 14px;
    }
    .tAbout__block01--box h3 {
        margin-bottom: 5%;
        font-size: 18px;
    }
    .tAbout__block01--box h3 + p {
        margin-bottom: 5%;
        font-size: 14px;
    }
    .tAbout__block01--box .btn01 {
        width: 80%;
        margin: 0 auto;
    }
    .tAbout__block01--box .btn01 a {
        margin-bottom: 3%;
        padding: 12px 0;
        font-size: 13px;
    }
    .tAbout__block01--box .btn01 a:hover {
        opacity: 1;
    }
    .tAbout__block02 {
        background: none;
        min-height: 0;
        margin-bottom: 10%;
    }
    .tAbout__block02--box {
        max-width: 100%;
        float: none;
    }
    .tAbout__block02--box figure {
        margin-bottom: 3%;
    }
    .tAbout__block02--box .cate {
        margin-bottom: 2%;
        font-size: 14px;
    }
    .tAbout__block02--box h3 {
        margin-bottom: 5%;
        font-size: 18px;
    }
    .tAbout__block02--box h3 + p {
        margin-bottom: 5%;
        font-size: 14px;
    }
    .tAbout__block02--box .btn02 {
        width: 80%;
        margin: 0 auto;
    }
    .tAbout__block02--box .btn02 a {
        padding: 12px 0;
        font-size: 13px;
    }
    .tAbout__block02--box .btn02 a:hover {
        opacity: 1;
    }
    .tAbout__block03 {
        background-size: cover;
        min-height: 0;
        padding: 10% 0;
    }
    .tAbout__block03--list {
        display: flex;
        flex-wrap: wrap;
    }
    .tAbout__block03--list li {
        background: url("../img/top/bg_border.png") no-repeat right center;
        width: 50%;
        padding: 3% 0 2%;
    }
    .tAbout__block03--list li:nth-child(-n+2) {
        margin-bottom: 6%;
    }
    .tAbout__block03--list li:nth-child(even) {
        background: none;
    }
    .tAbout__block03--list li .icon {
        margin-bottom: 3%;
    }
    .tAbout__block03--list li .txt01 {
        font-size: 12px;
    }
    .tAbout__block03--list li .txt02 {
        font-size: 12px;
    }
    .tAbout__block03--list li .txt02 span {
        font-size: 30px;
    }
}



.tNews-list__item {
    padding: 22px 20px 22px 0 !important;
}
.tNews-list__cate {
    flex: 0 0 95px;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 95px;
    width: 95px;
    margin-right: 10px;
    text-align: center;
    color: #fff;
    font-size: 14px;
    font-family: "Avenir", "Helvetica Neue", "Helvetica", "Arial", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}
.tNews-list__cate.info {
    background: #f29b76;
}
.tNews-list__cate.seminar {
    background: #6dbab7;
}
.tNews-list__off {
    display: inline-block;
    width: 200px;
    margin: 0 20px;
    padding: 3px 0;
    text-align: center;
    color: #fff;
    font-size: 11px;
    vertical-align: text-bottom;
    line-height: 20px;
    letter-spacing: 0;
}
.tNews-list__link {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: calc(100% - 527px);
    line-height: 1.4;
    font-size: 15px;
}
.tNews-list__rec {
    width: 80px;
    padding: 3px 0;
    text-align: center;
    color: #fff;
    font-size: 11px;
}
.tNews-list__rec.acc {
    background: #1c7990;
}
.tNews-list__rec.fin {
    background: #b5b5b5;
    padding: 8px 0;
    font-size: 9px;
}
@media screen and (max-width: 750px) {
    .tNews-list__item {
        padding: 17px 17px 17px 0 !important;
    }
    .tNews-list__cate {
        flex: 0 0 95px;
        -webkit-box-flex: 0;
        -ms-flex: 0 0 95px;
        width: 95px;
        margin-right: 10px;
        margin-bottom: 2%;
        font-size: 12px;
    }
    .tNews-list__off {
        width: 180px;
        margin: 0 15px 0 0;
        padding: 3px 0;
        font-size: 11px;
        line-height: 20px;
    }
    .tNews-list__link {
        width: 100%;
        margin: 0 0 2%;
        line-height: 1.4;
        font-size: 14px;
    }
    .tNews-list__rec {
        width: 100px;
        padding: 3px 0;
        font-size: 11px;
        line-height: 20px;
    }
    .tNews-list__rec.fin {
        padding: 3px 0;
        font-size: 10px;
    }
}




/*--スタッフ紹介--*/
.staffList {
    max-width: 1000px;
    margin: 0 auto 150px;
}
.staffList .chairman {
    margin-bottom: 40px;
    font-size: 18px;
    font-weight: bold;
}
.staffList h3 {
    font-size: 18px;
    font-weight: bold;
}
.staffList .staff {
    margin-bottom: 40px;
}
.staffList .staff a {
    font-size: 18px;
    font-weight: bold;
    text-decoration: underline;
    cursor: pointer;
}
@media screen and (max-width: 750px) {
    .staffList {
        margin: 0 auto 15%;
    }
    .staffList .chairman {
        margin-bottom: 6%;
        font-size: 14px;
    }
    .staffList h3 {
        font-size: 14px;
    }
    .staffList .staff {
        margin-bottom: 6%;
    }
    .staffList .staff a {
        font-size: 14px;
    }
}


/*--- modal ---*/
.modal-content {
	position: fixed;
    display: none;
	border: 3px solid #162644;
    background: #fff;
    width: 1000px;
    margin: 0;
    padding: 50px 40px;
    z-index: 9999;
}
.modal-content .detail .title {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 30px;
}
.modal-content .detail .title figure {
    width: 22%;
    margin-right: 10%;
}
.modal-content .detail .title figure img {
    width: 100%;
    height: auto;
}
.modal-content .detail .title figure + div {
    width: 68%;
}
.modal-content .detail .title figure + div .name {
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.6;
}
.modal-content .detail .title figure + div .name span {
    margin-right: 30px;
    font-size: 24px;
}
.modal-content .detail .title figure + div .txt01 {
    margin-bottom: 5px;
    font-size: 16px;
    font-weight: bold;
}
.modal-content .detail .title figure + div .txt02 {
    margin-bottom: 13px;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;
}
.modal-content .detail .title figure + div .btn {
    width: 130px;
}
.modal-content .detail .title figure + div .btn a {
    display: block;
    background: #162644;
    margin-bottom: 15px;
    padding: 8px 5px 8px 0;
    text-align: center;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    -webkit-transition: .2s opacity ease-in;
    -o-transition: .2s opacity ease-in;
    transition: .2s opacity ease-in;
}
.modal-content .detail .title figure + div .btn a:hover {
    opacity: .6;
}
.modal-content .detail .title figure + div .btn a span {
    position: relative;
}
.modal-content .detail .title figure + div .btn a span:after {
    content: '>';
    display: block;
    -webkit-transform: scaleX(0.5);
    -ms-transform: scaleX(0.5);
    transform: scaleX(0.5);
    position: absolute;
    line-height: 1;
    right: -10px;
    top: 50%;
    margin-top: -0.5em;
}
.modal-content .detail h4 {
    border-bottom: 2px solid #e5e5e5;
    margin-bottom: 20px;
    line-height: 1.4;
}
.modal-content .detail h4 span {
    background: #e5e5e5;
    padding: 3px 50px 3px 10px;
    font-weight: bold;
}
.modal-content .detail .txt03 {
    font-size: 16px;
    line-height: 2;
}
.modal-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    background-color: rgba(0,0,0,0.75);
    width: 100%;
    height: 120%;
    z-index: 9998;
}
.modal-close {
    position: absolute;
    right: 0;
    top: -60px;
    width: 44px;
    height: 40px;
    line-height: 50px;
    text-align: center;
    cursor: pointer;
}
@media screen and (max-width: 750px) {
	.modal-content {
        border: 2px solid #162644;
		width: 90%;
		height: 88%;
        padding: 5% 5%;
	}
    .modal-content .detail {
        height: 100%;
        overflow-y: scroll;
    }
    .modal-content .detail .title {
        margin-bottom: 6%;
    }
    .modal-content .detail .title figure {
        width: 50%;
        margin: 0 auto 5%;
    }
    .modal-content .detail .title figure + div {
        width: 100%;
    }
    .modal-content .detail .title figure + div .name {
        margin-bottom: 3%;
        font-size: 13px;
    }
    .modal-content .detail .title figure + div .name span {
        margin-right: 5%;
        font-size: 20px;
    }
    .modal-content .detail .title figure + div .txt01 {
        margin-bottom: 1%;
        font-size: 12px;
    }
    .modal-content .detail .title figure + div .txt02 {
        margin-bottom: 5%;
        font-size: 12px;
    }
    .modal-content .detail .title figure + div .btn {
        width: 130px;
    }
    .modal-content .detail .title figure + div .btn a {
        margin-bottom: 15px;
        padding: 6px 5px 6px 0;
        font-size: 12px;
    }
    .modal-content .detail .title figure + div .btn a:hover {
        opacity: 1;
    }
    .modal-content .detail .title figure + div .btn a span:after {
        right: -15px;
    }
    .modal-content .detail h4 {
        margin-bottom: 3%;
    }
    .modal-content .detail h4 span {
        padding: 3px 50px 3px 10px;
    }
    .modal-content .detail .txt03 {
        font-size: 13px;
    }
    .modal-close {
        right: 0;
        top: -40px;
        width: 24px;
        height: 24px;
        line-height: 30px;
    }
}
