@media screen and (min-width: 751px) {}


/*-------------------------*/


/* SPレイアウト 760px*/


/*-------------------------*/

@media screen and (max-width: 750px) {
    *,
    *:before,
    *:after {
        box-sizing: border-box;
    }
    body {
        width: 100%;
        min-width: 100%!important;
        -webkit-text-size-adjust: 100%;
        font-size: 12px;
    }
    img {
        max-width: 100%;
        height: auto;
    }
    a:hover,
    a:active {
        text-decoration: none;
        color: #010101;
    }
    a.s_tel {
        pointer-events: auto;
        text-decoration: none;
    }
    .b480-l,
    .b450-r {
        width: 100%;
        float: none;
    }
    .mrb40 {
        margin-bottom: 20px;
    }
    .sn {
        display: none;
    }
    .pn {
        display: block!important;
    }
    section {
        width: 100%;
    }
    /*-------sp_menu--------*/
    .menu-trigger,
    .menu-trigger span {
        float: right;
        display: inline-block;
        transition: all .4s;
        box-sizing: border-box;
        z-index: 999;
        position: absolute;
        right: 0px;
    }
    .menu-trigger {
        width: 40px;
        height: 40px;
        background: #230e00;
        text-align: center;
        margin: 0;
    }
    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 15px;
        height: 2px;
        background-color: #fff;
    }
    .menu-trigger span:nth-of-type(1) {
        top: 15px;
        left: 12px;
    }
    .menu-trigger span:nth-of-type(2) {
        top: 19px;
        left: 12px;
    }
    .menu-trigger span:nth-of-type(3) {
        top: 23px;
        left: 12px;
    }
    .menu-trigger.active span:nth-of-type(1) {
        -webkit-transform: translateY(20px) rotate(-45deg);
        transform: translateY(4px) rotate(-45deg);
    }
    .menu-trigger.active span:nth-of-type(2) {
        left: 200%;
        opacity: 0;
        -webkit-transform: translateY(0px);
        transform: translateY(5px);
        -webkit-animation: active-menu-bar02 .8s forwards;
        animation: active-menu-bar02 .8s forwards;
    }
    @-webkit-keyframes active-menu-bar02 {
        100% {
            height: 0;
        }
    }
    @keyframes active-menu-bar02 {
        100% {
            height: 0;
        }
    }
    .menu-trigger.active span:nth-of-type(3) {
        -webkit-transform: translateY(-30px) rotate(45deg);
        transform: translateY(-4px) rotate(45deg);
    }
    .head_nav {
        overflow: hidden;
    }
    header nav.sp {
        position: absolute;
        top: 40px;
        width: 100%;
        text-align: center;
        z-index: 30;
        height: auto;
        left: 0;
    }
    header nav.sp ul {}
    header nav.sp ul li {
        background: #fff;
        opacity: 0.96;
        text-align: left;
        overflow: hidden;
        font-size: 14px;
        width: 100%;
        border-top: none;
        margin-bottom: 0px;
        border-bottom: 1px solid #bea770;
    }
    header nav.sp ul li:last-child {
        border: none;
    }
    header nav.sp ul li a:link {
        color: #292929;
    }
    header nav.sp ul li a:hover {
        color: #292929;
    }
    header nav.sp ul li a:active {
        color: #292929;
    }
    header nav.sp ul li a:visited {
        color: #292929;
    }
    header nav.sp li a {
        padding: 10px 10px;
        display: block;
    }
    .sidenav {
        margin-bottom: 0;
    }
    .sidenav a {
        display: block;
    }
    .sidenav li {
        font-size: 14px;
    }
    .sidenav li.s_nav {
        text-align: left;
        padding-left: 0;
        line-height: 30px;
        margin-right: 0;
    }
    .sidenav li.s_nav.single {
        line-height: 30px;
        margin: 0 0 0 0;
        margin-left: 0px;
        display: block;
    }
    .sidenav li.s_nav.single a {}
    .sidenav .menu {
        line-height: 30px;
        background-position: 96%;
        height: auto;
        display: block;
        position: relative;
        text-align: left;
        padding-left: 10px;
        margin-right: 0px;
    }
    .sidenav .menu:after {
        display: block;
        content: "";
        position: absolute;
        top: 50%;
        right: 10px;
        margin-top: -8px;
        width: 8px;
        height: 8px;
        border: 0px;
        border-top: solid 2px #bd8a39;
        border-right: solid 2px #bd8a39;
        -ms-transform: rotate(135deg);
        -webkit-transform: rotate(135deg);
        transform: rotate(135deg);
    }
    .sidenav .child {
        display: none;
        margin: 0 0 -1px;
        padding: 0 0 10px 0;
        background: #fff;
    }
    .sidenav .child .menu {
        padding-left: 0;
    }
    .sidenav .child>li {
        padding-left: 0px;
        line-height: 15px;
        border-bottom: none;
        padding-right: 0;
        text-indent: 0;
        padding-left: 0;
        text-indent: -1em;
        padding-left: 1em;
        line-height: 1.5;
    }
    .sidenav li a,
    .sidenav li a:link,
    .sidenav li a:visited,
    .sidenav li a:hover,
    .sidenav li a:active {
        color: #010101;
    }
    /*=============================
    Layout-Base
===============================*/
    /* header
-------------------------*/
    .clearfix:after {
        display: block;
        content: " ";
        clear: both;
    }
    header {}
    /* main-visual
-------------------------*/
    #visual {
        width: 100%;
        height: auto;
        background: none;
    }
    #visual.top .site_title {
        display: none;
    }
    /* pagebody
-------------------------*/
    #pagebody {
        width: 100%;
        margin: 0 auto;
    }
    #pagebody.top {
        padding-top: 25px;
    }
    .contents {
        width: 100%;
        float: none;
    }
    /* sidenav
-------------------------*/
    .sidebar {
        width: 100%;
        float: none;
    }
    .side_bnr {
        width: 92%;
        margin: 50px auto 0;
    }
    .side_bnr li {
        width: 100%;
        padding: 0 77px;
        margin-top: 25px;
    }
    .side_bnr li:last-of-type {
        margin-bottom: 0;
    }
    .side_bnr li p {
        width: 250px;
        font-size: 9px;
        line-height: 1;
        letter-spacing: -0.09rem;
        margin: 6px auto 0;
    }
    .side_bnr li ul {
        width: 250px;
        margin: 10px auto 0;
    }
    .side_bnr li li {
        padding: 0;
        padding-left: 22px;
        font-size: 9px;
        margin-top: 0;
    }
    /* pagetop
-------------------------*/
    #pagetop {}
    #totop {
        width: 100%;
        height: 45px;
        background: #917a43;
        display: block;
        position: inherit;
        margin-top: 30px;
    }
    #totop a {
        padding: 14px;
    }
    #totop a img {
        width: 44px;
        height: auto;
        margin: 0 auto;
    }
    /* footer
-------------------------*/
    #footer {
        width: 100%;
        margin: 0 auto;
        padding-bottom: 10px;
        padding-top: 40px;
    }
    .ft_txt {
        width: 98%;
    }
    .ft_txt .ft_logo {
        width: 130px;
        margin: 0 auto 20px;
    }
    .ft_txt p {
        font-size: 8px;
        letter-spacing: -0.05rem;
        line-height: 1.5;
    }
    /*=============================
    Common-class
===============================*/
    /* btn */
    .btn01 {
        font-size: 15px;
        max-width: 320px;
        width: 100%;
        height: 50px;
    }
    /*=============================
    TopPage setting
===============================*/
    #wrap-content {
        padding-bottom: 0;
    }
    section {
        width: 92%;
        margin: 0 auto;
    }
/*    .news {
        margin-bottom: 25px;
    }*/
    .news {
        margin-bottom: 25px;
        width: 92%;
    }
/*    .news h2 {
        float: left;
        width: 23%;
        height: 100%;
        font-size: 12px;
        line-height: 60px;
        color: #fff;
    }*/
    .news h2 {
/*        float: left;*/
        width: 23%;
        height: 100%;
        font-size: 12px;
        line-height: 60px;
        color: #fff;
    }
/*    .news ul {
        width: 77%;
        float: right;
        height: 60px;
        font-size: 12px;
        padding: 12px 0 0 18px;
    }*/
    .news ul {
        width: 77%;
        /* float: right; */
        /* height: 60px; */
        font-size: 12px;
        padding: 10px 0 10px 18px;
    }
/*    .news li {
        line-height: 1.6;
        margin-bottom: 0;
    }*/
    .news li {
        line-height: 1.6;
        margin-bottom: 0;
        padding: 8px 0;
    }
    .news li span {
        width: 100%;
        display: block;
        margin-right: 0;
    }
    .news li a {
        width: 100%;
        display: block;
    }
    .homecoming {
        padding: 14px 14px 20px 14px;
    }
    .ceremony {
        margin-bottom: 24px;
    }
    .ceremony h3 {
        font-size: 24px;
        padding: 10px 0;
        background-size: 32px auto;
    }
    .ceremony h3 span {
        font-size: 12px;
    }
    .ceremony table {
        width: 92%;
        margin: 8px auto 4px;
    }
    .ceremony th {
        font-size: 16px;
        padding: 10px 0 0;
    }
    .ceremony td {
        font-size: 14px;
    }
    .ceremony td span {
        font-size: 10px;
    }
    .attendance,
    .target {
        margin-bottom: 24px;
        padding: 18px;
    }
    .attendance {
        padding: 18px;
    }
    .attendance h3,
    .target h3 {
        font-size: 18px;
        padding-top: 34px;
        background-size: auto 18px;
    }
    .attendance h3 span,
    .target h3 span {
        font-size: 10px;
        line-height: 1.5;
        margin-top: 6px;
    }
    .attendance ul {
        margin-top: 15px;
    }
    .attendance li {
        float: none;
        width: 100%;
        margin: 0 auto;
    }
    .attendance li:nth-child(2) {
        float: none;
        width: 100%;
        margin-top: 15px;
    }
    .attendance li p {
        font-size: 13px;
        line-height: 45px;
        height: 45px;
        border-width: 1px;
    }
    .target h3 {
        margin-bottom: 8px;
    }
    .target dt {
        width: 18px;
        height: 18px;
        font-size: 12px;
    }
    .target dd {
        font-size: 12px;
        padding-left: 1em;
    }
    .target dd+dd {
        padding-left: .1em;
    }
    .target .num02 {
        width: 16px;
        height: 16px;
    }
    .btn_contact {
        width: 100%;
        margin-top: -5px;
        height: 45px;
    }
    .btn_contact p {
        font-size: 13px;
        height: 45px;
        line-height: 45px;
    }
    .btn_contact p span {
        background-size: 12px auto;
        background-position: center left;
        padding-left: 18px;
    }
    .attendance p.txt01 {
        font-size: 12px;
        line-height: 1.5;
    }
    .contact {
        margin-top: 0;
    }
    .contact h3 {
        font-size: 15px;
        line-height: 1.3;
        height: auto;
        padding: 10px 0;
    }
    .contact ul {
        background: none;
    }
    .contact .contact-list li {
        width: 100%;
        padding: 10px;
    }
    .contact ul li p {
        width: 100%;
        padding-right: 0;
        font-size: 12px;
        margin-bottom: 4px;
        text-align: center;
    }
    .contact ul span {
        font-size: 24px;
        line-height: 1;
    }
    .contact ul li:first-of-type span {
        background-size: 22px auto;
        padding-left: 1.25em;
    }
    .contact ul li:last-of-type span {
        background-size: 18px auto;
        padding-left: 1em;
    }
    .contact .small {
        font-size: 10px;
        text-align: center;
    }
    .bnrArea {
        margin-top: 50px;
    }
    .bnrArea ul {
        max-width: 240px;
        margin: 0 auto;
    }
    .bnrArea ul li {
        width: 100%;
        margin: 0;
    }
    .bnrArea ul li+li {
        margin-top: 20px;
    }
    .bnrArea .small {
        font-size: 10px;
        padding-top: 2px;
    }
    /*=============================
    Sub(Lower)Page setting
===============================*/
    /* Layout */
    .sub-inner {
        padding: 15px;
    }
    /* Bread_crumb_List */
    .bread_crumb {
        width: 92%;
        font-size: 9px;
    }
    .contents.sub {
        width: 100%;
        margin-bottom: 50px;
    }
    /* title */
    .titArea h2 {
        font-size: 19px;
        position: relative;
    }
    #collection .titArea h2 {
        font-size: 17px;
    }
    .titArea h2:before {
        position: absolute;
        content: "";
        left: 4px;
        top: calc( 50% - 10px);
        width: 22px;
        height: 20px;
        background: url("../images/common/tit_parts01.png");
        background-size: contain;
    }
    .titArea h2:after {
        position: absolute;
        content: "";
        right: 4px;
        top: calc( 50% - 10px);
        width: 22px;
        height: 20px;
        background: url("../images/common/tit_parts02.png");
        background-size: contain;
    }
    .titArea h2 span:before,
    .titArea h2 span:after {
        display: none;
    }
    .subtitArea {
        padding: 15px;
        font-size: 13px;
    }
    .tTit {
        font-size: 16px;
        margin-bottom: 16px;
    }
    /* list-style */
    .subList {
        padding: 0;
    }
    .subList-item {
        padding: 15px;
    }
    .subList-txt {
        font-size: 13px;
    }
    .subList-txt,
    .subList-txt.w50 {
        width: 100%;
        text-align: center;
    }
    .subList-tit {
        font-size: 20px;
        line-height: 1.1;
        text-align: center;
    }
    .subList-tit span {
        font-size: 12px;
    }
    .subList-tit+.pn {
        margin-top: 14px;
    }
    .subList-list dd {
        text-align: left;
    }
    .subList-note {
        text-align: left;
    }
    .subList-note .tit {
        font-size: 13px;
        margin-top: 10px;
        text-align: center;
    }
    .subList-contact {
        text-align: center;
    }
    .subList-contact .contact-tit {
        font-size: 12px;
    }
    .subList-contact .tel {
        font-size: 15px;
        line-height: 50px;
        height: 50px;
        margin-bottom: 10px;
    }
    .subList-contact a {
        font-size: 15px;
        line-height: 1.2;
        height: 50px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        text-align: center;
    }
    .subList .figure+.figure {
        margin-top: 10px;
    }
    .subList .figure p {
        margin-top: 4px;
        font-size: 11px;
        line-height: 1.4;
    }
    /* aisatsu
-------------------------*/
    .aisatsu-inner {
        padding: 30px 15px 15px;
    }
    .aisatsu-inner h2 {
        font-size: 18px;
    }
    .aisatsu-inner .inner {
        margin-top: 20px;
    }
    .aisatsu-inner .inner p {
        font-size: 12px;
    }
    .aisatsu-inner .inner p span.pn {
        display: block;
        text-align: left;
    }
    .aisatsu-inner .inner .space,
    .inner .img {
        display: none;
    }
    .aisatsu-inner div.pn {
        text-align: right;
    }
    .aisatsu-inner .pn img {
        width: 70%;
        height: auto;
    }
    /* map
-------------------------*/
    .inner_sub {
        padding: 20px;
    }
    a.btn01 {
        font-size: 16px;
        line-height: 60px;
        height: 60px;
        max-width: 100%;
    }
    /* timetable
-------------------------*/
    p.colTit02 {
        font-size: 15px;
    }
}


/*-------------------------*/


/* SPレイアウト 480px*/


/*-------------------------*/

@media screen and (max-width: 480px) {
    /* aisatsu
-------------------------*/
    .txtBox img.photo {
        float: none;
        margin: 20px auto;
        display: block;
    }
    .txtBox img.name {
        float: none;
        margin-top: 0;
        margin-left: 0;
        max-width: none;
        display: block;
        margin: 0 auto;
    }
    /* timeslip
-------------------------*/
    .bArea .fLeft {
        width: 100%;
        float: none;
    }
    .bArea .fRight {
        width: 100%;
        float: none;
        margin-top: 20px;
    }
    .bArea .fRight img {
        width: 100%;
    }
    /* daigaku
-------------------------*/
    .w70 {
        width: 100%;
    }
    .w30 {
        width: 100%;
        padding-left: 0;
        margin: 10px 0;
    }
    .timeTit {
        background: url(../images/top/bg_h3.gif) no-repeat left top;
        padding-left: 15px;
        text-align: left;
        margin: 0 0 10px;
        font-size: 18px;
        font-weight: bold;
        line-height: 1;
    }
    .fb {
        display: block;
        margin-right: 0;
        line-height: 1.6;
    }
    .det .fb:nth-child(4) {
        margin-left: 0;
    }
    /* map
-------------------------*/
    .ttableArea .txtBox .inner {
        padding: 0;
    }
    #contents1 ul.camList {
        width: 60%;
        margin: 0 auto;
    }
}

@media screen and (max-width: 414px) {
    .ceremony h3 {
        font-size: 20px;
    }
}