@charset "UTF-8";
html{
    -webkit-overflow-scrolling: touch;
    font-size: 10px;
    margin: 0;
    padding: 0;
}
body {
    color: #000;
    font-family: "YakuHanJP",-apple-system, blinkMacSystemFont,'Segoe UI', Meiryo, メイリオ, 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ Pro W3', sans-serif;
    font-size: 1.5rem;
    line-height: 1.8;
    margin: 0;
    padding: 0;
    font-feature-settings: 'palt' 1;
    -webkit-text-size-adjust: 100%;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;}
div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td,figure{
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
}
table{
    border-collapse: collapse;
    margin-bottom: 20px;
    width: 100%;
}
th{
    padding: 5px 20px;
    border: #c5c0b4 1px solid;
    background: #e8e4db;
    vertical-align: middle;
    font-size: 1.5rem
}
td {
    border: #c5c0b4 1px solid;
    padding: 5px 20px;
    vertical-align: middle;
    font-size: 1.5rem;
    line-height: 1.5
}
ul,ol {
    margin: 0;
    padding: 0;
    list-style: none;}
a, a:link, a:active, a:visited {
    outline: none;
    text-decoration: none;
    display: inline-block;
    transition: background-color 0.5s ease;
    -webkit-transition: background-color 0.5s ease;
    -moz-transition: background-color 0.5s ease;
    color: #000;
}
a:hover {
  -webkit-transition: .2s ease-in-out;
  -moz-transition: .3s ease-in-out;
  -o-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
    color: #000;
}
h1,h2,h3,h4,h5,.mincho{
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "游明朝", YuMincho, "MS P明朝", "MS PMincho", "MS 明朝", 'Noto Serif JP', serif;
    line-height: 1.2;
    letter-spacing: .08em;
    font-size: 100%;
    margin-bottom: 30px;
}
dl {
    display: table;
}
dt, dd {
    display: table-cell;
}
/*---------------------------------
共通
---------------------------------*/
/*display: flex*/
.df{
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;
}
/*clearfix
---------------------------------*/
/* For modern browsers */
.cf:before,
.cf:after {
    content: " ";
    display: table;}
.cf:after {
    clear: both;}
/* For IE 6/7 only */
.cf {
    *zoom: 1;}
.fll{
    float: right
}

.tal{text-align: left;}
.tac{text-align: center;}
.tar{text-align: right;}
.lh-txt{line-height: 1.8}
.width1{width: 100%;}
.width2{width: calc(100% / 2)}
.width3{width: calc(100% / 3)}
.pc{display: block;}
.sp{display: none;}
address {font-style: normal;}

/*title*/
.main-ttl{
    font-family: "YakuHanJP",'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ Pro W3', sans-serif;
    font-weight: 500;
    margin-bottom: 0
}
.ttl-style-1 {
    color: #908364;
    font-size: 3.4rem;
    letter-spacing: .2em;
}
.ttl-style-1 span{
    padding: 0 48px 5px;
    border-bottom: 1px solid #908364;
    margin-bottom: 8px;
}

.ttl-style-2 {
    display: inline-block;
    font-size: 2.6rem;
    padding: 8px 20px 5px 20px;
    position: relative;
    color: #fff;
    z-index: 1;
    width: 320px;
}
.ttl-style-2::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background: #47a4ba;
    transform: scaleY(1) perspective(2em) rotateX(5deg);
    transform-origin: bottom left;
    border-radius: 0px 0px 0 0;
}
.ttl-style-3{
    font-size: 2.8rem;
    color: #47a4ba;
    position: relative;
    padding-left: 60px;
    margin-bottom: 10px;
}
.ttl-style-3:before{
    content: '01';
    position: absolute;
    color: #d6e4ea;
    left: 0;
    font-size: 5rem;
    top: -8px;
    letter-spacing: -.1em;
}
.statue-list__2 .ttl-style-3:before{
    content: '02';
}
.statue-list__3 .ttl-style-3:before{
    content: '03';
}
.statue-list li{
    margin-bottom: 40px;
}
.statue-list p{
    padding-left: 60px;
}
.btn-style1{
    width: 48%;
    margin: 1%;
}
.btn-style1 i{
    margin-right: 10px
}
.btn-style1 a {
    display: inline-block;
    width: 100%;
    height: auto;
    text-align: center;
    background-color: #ffffff;
    font-size: 2rem;
    padding: 30px 20px;
    color: #47a4ba;
    text-decoration: none;
    font-weight: bold;
    border: 2px solid #ffffff;
    position: relative;
    overflow: hidden;
    z-index: 1;
    }
.btn-style1 a:after{
        width: 100%;
        height: 0;
        content:"";
        position: absolute;
        top: 50%;
        left: 50%;
    background : #47a4ba;
        opacity: 0;
        transform: translateX(-50%) translateY(-50%) rotate(45deg);
        transition: .2s;
        z-index: -1;
    }
.btn-style1 a:hover{
        color: #fff;
    }
.btn-style1 a:hover:after{
        height: 340%;
        opacity: 1;
    }
.btn-style1 a:active:after{
        height: 440%;
        opacity: 1;
    }
.vw{
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}
/*font*/
.txt-medium{font-size: 80%;}
.txt-small{font-size: 60%;}
.fs70{font-size: 6.5rem}
.fs36{font-size: 3.6rem}
.fs28{font-size: 2.8rem}
.fs22{font-size: 2.2rem}
.fs16{font-size: 1.6rem}
/*--margin*/
.mt00 { margin-top:  0px !important; }
.mt05 { margin-top:  5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mr00 { margin-right:  0px !important; }
.mr05 { margin-right:  5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }
.mb00 { margin-bottom:  0px !important; }
.mb05 { margin-bottom:  5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb120 { margin-bottom: 120px !important; }
.ml00 { margin-left:  0px !important; }
.ml05 { margin-left:  5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml35 { margin-left: 35px !important; }
.ml40 { margin-left: 40px !important; }
/*--色*/
.txt-nv{
    color: #004098;}
.txt-bl{
    color: #007ea2;}
.txt-pk{
    color: #eb6d8e;}
.txt-ye{
    color: #f39939;}
.txt-be{
    color: #908364;}



/*---------------------------------
改行
---------------------------------*/

.br-sp {
    display: none;
    letter-spacing: 0;
}



/*---------------------------------
レイアウト
---------------------------------*/
/*共通*/
.inner{
    max-width: 980px;
    width: 100%;
    padding: 10px;
    margin: 0 auto 60px;
}

/*meinvisual*/
.meinvisual{
    background: url(./images/mainvisual.png);
    background-size: cover;
    background-position: center;
    padding: 40px 40px 20px 10px;
    color: #004098;
    font-size: 4.8rem;
    margin-bottom: 80px;
}
.header-logo{
    width: 400px;
    margin-bottom: 40px
}
.header-logo a{
    width: 100%;
    height: auto;
}
.bg-bl{
    background: #004098;
    color: #fff;
    display: inline;
    font-size: 22px;
    padding: 1px 9px 3px;
    letter-spacing: .2em;
    font-weight: normal;
    position: relative;
    top: -27px;

}
/*message*/
#message{
    background: #f0eee8;
    border-radius: 10px;
    padding: 30px 40px;
}
.message-txt{
    width: 70%;
}
.message-imgbox{
    width: 23%;
    margin-left: 2%
}
.message-imgbox img{
    width: 100%;
    height: auto;
    vertical-align: bottom;
}
#message >.df{
    justify-content:space-around;
    -webkit-justify-content:space-around
}
.message-profile {
    background: #908364;
    padding: 10px;
    margin: 0;
    color: #fff;
}
.message-profile__ttl{
    padding-bottom: 5px;
    border-bottom: 1px solid #fff;
    margin-bottom: 5px
}
.message-profile dt{
    width: 60px;
    position: relative;
}
.message-profile dt:after {
    content: ':';
    position: absolute;
    right: 3px;
}
.course-list li{
    background: #f0eee8;
    color: #908364;
    padding: 20px;
    text-align: center;
    width: 24%;
    font-size: 2.2rem;
    margin: 0 0 2% 0;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    -webkit-justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}
.characteristic-list.df,
.region-list.df,
#course .df{
    justify-content: space-around;
    -webkit-justify-content: space-around;
}
.characteristic-list li{
    width: 32%;
    margin: 0 1% 1% 0;
    background: #f0eee8;
    padding: 20px;
    border-radius: 10px;
}
.characteristic-list li:last-child{
    margin-right: 0
}
.characteristic-list .ttl-style-1{
    font-size: 3rem;
    text-align: center
}
.characteristic-list .ttl-style-1 p{
    text-align: center;
    font-size: 4.4rem;
    margin-bottom: 0;
}
.characteristic-list .ttl-style-1 span{
    border-bottom: none;
    display: block;
    font-size: 2rem;
    margin-bottom: 0;
    padding: 0;
}
#region{
    margin-bottom: 60px;
}
.region-list li{
    width: 48%;
    border: 2px solid #47a4ba;
    padding: 30px;
    border-radius: 10px;
    background: #fff;
    margin-bottom: 20px;
}
#region .ttl-style-3{
    padding-left: 0
}
#region .ttl-style-3:before {
    content: '';
}
.width100{
    width: 100%;
    height: auto;
}
.policy-list li{
    color: #47a4ba;
    font-size: 2.6rem;
    margin: 0 auto 10px;
}
.policy-list__chip{
    background: #47a4ba;
    color: #fff;
    padding: 3px 5px;
    font-size: 1.4rem;
    margin-right: 10px;
    vertical-align: middle;
    width: 60px;
    text-align: center;
}
#policy .ttl-style-1 span{
    border-bottom: none;
    padding: 0;
}
.policy-list dd{
    padding-left: 10px;
}
#info{
    background: #eff7fb;
    padding: 30px 20px 0;
}
#info .df{
    justify-content: space-between;
    -webkit-justify-content: space-between;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    padding: 0;
    margin: 0 auto 15px;
}
.info-box-wrap{
    width: 70%;
}
.info-box02{
    padding: 30px;
    align-items: baseline;
    -webkit-align-items: baseline;
    border-radius: 5px;
    color: #024098;
}
.info-box__1 {
    margin-right: 10px;
}

.dw{
    background: #024098;
    color: #fff;
    padding: 10px;
    font-size: 1.4rem;
    border-radius: 50%;
    position: relative;
    bottom: 10px;
    margin-left: 10px;
}
.info-time{
    border: 1px solid #024098;
    padding: 20px 10px;
    font-size: 2rem;
    text-align: center;
    width: 28%;
    margin-bottom: 20px;
}

.access{
    background: #f0eee8;
    padding: 60px 0 1px;
}
.contact{
    background: #47a4ba;
    padding: 60px 0 1px;
    color: #fff;
    font-size: 2.2rem;
    line-height: 1.2;
}
.contact dt{
    position: relative;
}
.contact dt:after{
    content: ':';
    position: absolute;
    right: -10px
}
.contact dd {
    padding: 0 30px 0 12px;
    font-size: 3rem;
}
.contact .ttl-style-1{
    color: #fff;
}
.contact p{
    margin-bottom: 10px
}

.footer-under{
    text-align: center;
}
.footer-logo{
    width: 200px;
    margin:30px auto 0;
}
#page_top{
    width: 50px;
    height: 50px;
    position: fixed;
    right: 10px;
    bottom: 0;
    background: #000;
    opacity: 0.5;
}
#page_top a{
    position: relative;
    display: block;
    width: 50px;
    height: 50px;
    text-decoration: none;
}
#page_top a::before{
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    content: '\f0d8';
    font-size: 25px;
    color: #fff;
    position: absolute;
    width: 25px;
    height: 25px;
    top: 0;
    bottom: 20px;
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
}
.overview-ttl{
    background: #47a4ba;
    color: #fff;
    width: 30px;
    vertical-align: middle;
    line-height: 1.2
}
#corporatelink{
    text-align: center;
    padding: 0 50px 40px;
    margin: 0 auto;
}
#corporatelink a{
    padding: 30px;
    position: relative;
    color: #024098;
    font-size: 2.8rem;
}
#corporatelink a:before{
    content: '|';
    position: absolute;
    left: 0;
}
#corporatelink a:after{
    content: '|';
    position: absolute;
    right: 0;
}
#corporatelink a:hover{
    color: #419ebb
}
.pdf td{
    padding: 5px 20px 15px;
}
.pdf a{
    position: relative;
    padding-right: 5px;
    display: inline-block;
    bottom: -7px;
    color: #000
}
.pdf a:hover{
    opacity: .8
}
.pdf a img{
    width: 25px;
}


#info02 {
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "游明朝", YuMincho, "MS P明朝", "MS PMincho", "MS 明朝", 'Noto Serif JP', serif;
    padding: 30px 20px 0;
}



table.seminar {
    text-align: left;
}

td.seminar-td,
th.seminar-th,
.seminar-th02,
.seminar-td02 {
    padding: 5px 20px;
    border: none;
    background: none;
    vertical-align: none;
    font-size: 1.5rem;
}



.ttl-style-4 {
    font-size: 3.4rem;
    margin: 0;
    font-weight: 500;
    letter-spacing: 9px;
}

.info-subtxt {
    background: #014098;
    padding: 7px 21px;
    font-size: 20px;
    border-radius: 19px;
    color: #fff;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "游明朝", YuMincho, "MS P明朝", "MS PMincho", "MS 明朝", 'Noto Serif JP', serif;
    letter-spacing: 5px;
    margin-left: 10px;
}

.info-subtxt span {
    font-size: smaller;
    padding-left: 14px;
}

.info-h3 {
    font-size: 3.2rem;
    font-weight: 500;
}

.info-h4 {
    color: #908364;
    font-size: 2.2rem;
    letter-spacing: .2em;
    margin-bottom: 15px;
    margin-top: 35px;
}

.info-h4 span {
    font-size: 13px;
        vertical-align: 3px;
}

.info-date-p {
    font-size: 2rem;
    letter-spacing: 3px;
    padding-left: 10px;
    font-weight: 700;
    margin-bottom: 10px;
    line-height: 25px;
    padding-top: 5px;
}

.info-date-p span {
font-size: 10px;
}

.info-date {
    font-size: 2rem;
    background-color: #908364;
    width: 90px;
    text-align: center;
    color: #fff;
    margin-bottom: 10px;
}



.info-box {
    display: grid;
    justify-content: center;
    align-items: center;
    border: solid 1px #000;
    padding: 10px;
    background-color: #fff;
}

p.info-box-p {
    text-indent: 7em;
}


.pc.btn-rel {
    background-color: #fff;
    margin: 10px auto;
    padding: 10px;
}

span.pc.pdf-rel {
    display: inline-block;
    vertical-align: 30%;
    font-size: 17px;
    font-weight: bolder;
}


#info02 {
    background: #eff7fb;
    padding: 30px 20px 0;
}
@media screen and (max-width: 1000px) {
    .info-time {
        width: 100%;
    }
}

@media screen and (max-width: 729px) {
    .pc {
        display: none;}
    .sp {
        display: block;}
    .meinvisual .inner{
        margin-bottom: 0;
    }
    .meinvisual{
        padding: 20px 40px 20px 10px
    }
    .message-txt,.characteristic-list li,.region-list li,.header-logo{
        width: 100%
    }
    .message-imgbox {
        width: 50%;
        margin-left: 0;
    }
    .course-list li{
        width: 48%
    }
    .characteristic-list li{
        margin: 0 0 20px 0;}
    .ttl-style-1{
        text-align: center;
        font-size: 3rem
    }
    #curriculum dt, #curriculum dd{
        display: block;
        line-height: 1.5;
    }
    .curriculum-memo{
        border: 1px solid #c5c0b4;
        padding: 20px;
        margin: 10px;
    }
    #curriculum dt{
        font-weight:bold;
    }
    #curriculum dd{
        margin-bottom: 20px;
    }
    .policy-list li,.bg-bl{
        font-size: 2rem;
    }
    .meinvisual{
        font-size: 2.8rem;
        margin-bottom: 40px;
    }
    .meinvisual .bg-bl{
        font-size: 1.4rem;
        position: relative;
        top: -8px;
    }
    dt, dd{
        display: block;
    }
    .contact dt:after{
        content: '';
    }
    .schedule,.method {
        width: 960px;
    }
    .table-scroll{
        overflow-x: scroll;
    }
    .btn-style1{
        width: 98%;
        margin: 1%;
    }
    #info{
        padding: 60px 20px 1px;
    }
    .inner{
        margin-bottom: 30px;
    }
    #corporatelink h2 {
        margin-bottom: 0;
    }
    .access{
        padding: 60px 0;
    }
    #corporatelink{
        margin-top: 15px;
    }
    .fs70{
        font-size: 4.6rem
    }
    #message {
        background: #f0eee8;
        border-radius: 10px;
        padding: 30px 20px;
        margin: 10px 10px 60px;
        box-sizing: border-box;
        width: auto;
    }
    .pdf td{
        font-size: 100%;
    }
    a.dl-btn{
        padding: 4px 20px 0px 17px;
        border: 1px solid #d0d0d0;
        border-radius: 5px;
        margin: 5px 10px;
        background-image: linear-gradient(#fff 0%, #f5f5f5 100%);
        width: 100%;
    }
    .dl-btn span{
        display: inline;
        vertical-align: super;
    }
    .info-box-wrap {
        width: 100%;
    }
    .info-box-p {
    text-indent: unset !important;
}
    a.dl-btn {
    display: flex;
    padding: 4px 20px 0px 17px;
    border: 1px solid #d0d0d0;
    border-radius: 5px;
   margin: 29px 0 5px;
    background-color: #fff;
    background-image: linear-gradient(#fff 0%, #f5f5f5 100%);
    width: 100%;
}
span.sp {
    font-size: 1.2rem;
    color: #000;
    font-family: "YakuHanJP", -apple-system, blinkMacSystemFont, 'Segoe UI', Meiryo, メイリオ, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ Pro W3', sans-serif;
}
    .dl-btn span {
    display: inline;
    vertical-align: super;
    padding-left: 5px;
    padding-top: 5px;
}
    
    .info-subtxt {
    background: #024098;
    padding: 7px 21px;
    font-size: 14px;
    letter-spacing: 4px;
    line-height: 18px;
    text-align: center;
}
    .ttl-style-4 {
    font-size: 2.8rem;
}
    .info-h3 {
    font-size: 1.7rem;
    margin-bottom: 10px;
}
}
@media screen and (max-width: 414px){
    .ttl-style-3,
    .characteristic-list .ttl-style-1{
        font-size: 2.2rem;
    }
    .course-list li{
        font-size: 1.5rem;
        line-height: 1.4;
        padding: 13px 20px;
    }
    #corporatelink a{
        font-size: 1.6rem
    }
    .pdf a{
        font-size: 1.2rem;
    }
    #info .ttl-style-1{
        font-size: 2rem;
    }
    .meinvisual{
        font-size: 2.2rem;
        background-position: -64px;
    }
    .access {
        padding: 30px 0 1px;
    }
    .contact .ttl-style-1{
        text-align: left;
    }
    .message-imgbox,
    .ttl-style-2{
        width: 100%;
    }
    .ttl-style-1,
    .ttl-style-2{
        font-size: 2.2rem;}
    .fs70{
        font-size: 3.2rem;
    }
    .info-time {
        font-size: 1.4rem;}
    a.dl-btn{
        padding: 10px 20px 7px 17px;
    }

    .info-box__1 {
        margin-right: 0;
    }
    .fs28 {
        font-size: 2rem;
    }
    #info {
        padding: 30px 20px 1px;
    }
    #info .inner {
        margin-bottom: 0;
    }
   .info-box {
        font-size: 14px;
    }

    .br-sp {
        display: block;
        letter-spacing: 0;
        text-indent: 1em;
    }

    .info-date-p {
        font-size: 14px;
        letter-spacing: 3px;
        padding-left: 10px;
        font-weight: 700;
        margin-bottom: 10px;
        line-height: 15px;
    }

.info-r{
    color: #908364 !inportant;
    font-family:-apple-system,sans-serif Verdana, “Droid Sans”;

}

    .info-h4 {
        font-size: 1.6rem;
        padding-left: 1em;
        text-indent: -0.7em;
    }

    .m-sub-txt-bg {
        margin-top: 15px;
        font-size: 10px;
    }

    th.met-th {
        width: 103px;
    }

    .info-date {
        font-size: 15px;
        background-color: #908364;
        width: 60px;
        height: 36px;
        line-height: 35px;
    }
a.dl-btn {
    padding: 10px 20px 7px 17px;
}

}


