@media all and (min-width: 641px) {
	
	/* MAINV */
    #mainv{
        position: relative;
        height: 774px;
    }
    #mainv .image-box,
    #mainv .image-box .image-list,
    #mainv .image-box .image-list > li,
    #mainv .image-box .bx-viewport,
    #mainv .image-box .bx-wrapper{
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 100%;
        height: 774px !important;
        z-index: 0;
    }
    #mainv .image-box .image-list > li{
        display: none;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
    }
    #mainv .image-box .image-list > li:first-child{
        display: block;
    }
    #mainv .image-box .image-list > li.image01{
        background-image: url(../images/home/mainv/image/image01.jpg);
    }
    #mainv .image-box .image-list > li.image02{
        background-image: url(../images/home/mainv/image/image02.jpg);
    }
    #mainv .image-box .image-list > li.image03{
        background-image: url(../images/home/mainv/image/image03.jpg);
    }
    #mainv .image-box .image-list > li.image04{
        background-image: url(../images/home/mainv/image/image04.jpg);
    }
    #mainv .image-box .image-list > li.image05{
        background-image: url(../images/home/mainv/image/image05.jpg);
    }
    #mainv .image-box .image-list > li.image06{
        background-image: url(../images/home/mainv/image/image06.jpg);
    }
    #mainv .image-box .image-list > li.image07{
        background-image: url(../images/home/mainv/image/image07.jpg);
    }
    #mainv .catch-box{
        position: relative;
        height: 774px;
    }
    #mainv .catch-box .catch-list > li{
        display: none;
        position: absolute;
    }
    #mainv .catch-box .catch-list > li:first-child{
        display: block;
    }
    #mainv .catch-box .catch-list > li.catch01,
    #mainv .catch-box .catch-list > li.catch02,
    #mainv .catch-box .catch-list > li.catch03,
    #mainv .catch-box .catch-list > li.catch07{
        top: 50%;
        right: 0;
        left: 0;
        margin: auto;
        text-align: center;
    }
    #mainv .catch-box .catch-list > li.catch04,
    #mainv .catch-box .catch-list > li.catch05{
        top: 150px;
        right: 0;
        margin: auto;
    }
    #mainv .catch-box .catch-list > li.catch06{
        top: 150px;
        right: 0;
        left: 0;
        margin: auto;
        text-align: center;
    }
    #mainv .catch-box .catch-list > li .catch{
        color: #203b50;
        font-size: 187.5%; /* 30px */
        font-family: "Times New Roman", "游明朝", YuMincho, "Ryumin Regular KL", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
        font-weight: bold;
        letter-spacing: 0.5pt;
        line-height: 1.4;
        text-shadow:
        0.1px 0.1px 0.1px #203b50,-0.1px 0.1px 0.1px #203b50,0.1px -0.1px 0.1px #203b50,-0.1px -0.1px 0.1px #203b50,
        1px 1px 10px #FFFFFF,-1px 1px 10px #FFFFFF,1px -1px 10px #FFFFFF,-1px -1px 10px #FFFFFF,
        1px 1px 10px #FFFFFF,-1px 1px 10px #FFFFFF,1px -1px 10px #FFFFFF,-1px -1px 10px #FFFFFF;
        zoom:1;
        filter: progid:DXImageTransform.Microsoft.Glow(Color=#FFFFFF,Strength=5);
        -ms-filter: "progid:DXImageTransform.Microsoft.dropshadow(OffX=-1, OffY=-1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=0, OffY=-1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=-1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=0, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=0, OffY=1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=-1, OffY=1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=-1, OffY=0, Color=#FFFFFF)";
    }
    #mainv .arrow-box{
        position: absolute;
        right: 0;
        bottom: 10%;
        left: 0;
        margin: auto;
        width: 100%;
        text-align: center;
    }
    #mainv .arrow-box a{
        display: inline-block;
    }
    #mainv .arrow-box .image{
        margin-bottom: 5px;
    }
    #mainv .arrow-box .arrow{
        margin-bottom: 0;
        position: relative;
    }
    #mainv .arrow-box .arrow img{
        position: absolute;
        right: 0;
        left: 0;
        bottom: 0;
        margin: auto;
        -webkit-animation-duration: 3s;
        animation-duration: 3s;
    }
    #mainv .arrow-box a:hover .arrow img{
        -webkit-animation-name: toscroll;
        -webkit-animation-timing-function: ease;
        -webkit-animation-iteration-count: infinite;
        animation-name: toscroll;
        animation-timing-function: ease;
        animation-iteration-count: infinite;
    }
    #mainv .arrow-box a:active .arrow img{
        bottom: 0;
    }
    
    #home-policy{
        margin-bottom: 120px;
    }
    #home-policy .policy-box{
        background: #00597c; /* Old browsers */
        background: -moz-linear-gradient(left, #00597c 0%, #213c50 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(left, #00597c 0%,#213c50 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, #00597c 0%,#213c50 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00597c', endColorstr='#213c50',GradientType=1 ); /* IE6-9 */
    }
    #home-policy .policy-box .container-inner{
        padding: 40px 0 20px;
        position: relative;
    }
    #home-policy .policy-box .titles,
    #home-policy .policy-box .titles02,
    #home-policy .policy-box .links,
    #home-policy .policy-box .links a{
        color: #ffffff;
        text-align: center;
    }
    #home-policy .policy-box .titles02{
        margin-bottom: 5px;
        font-size: 175%;
    }
        
    #home-policy .policy-box .text{
        width: 547px;
        margin-bottom: 30px;
        margin-right: auto;
        margin-left: auto;
        color: #ffffff;
        line-height: 2.0;
    }
    #home-policy .policy-box .image01{
        position: absolute;
        bottom: 0;
        right: -112px;
        margin-bottom: 0;
        line-height: 0;
    }
    #home-policy .policy-box .image02{
        position: absolute;
        bottom: 86px;
        left: -160px;
        margin-bottom: 0;
        line-height: 0;
    }
    
    #home-treatment{
        margin-bottom: 120px;
    }
    
    #home-people{
        margin-bottom: 160px;
    }
    #home-people .people-box{
        width: auto;
        max-width: 1280px;
    }
    #home-people .people-box .people-list{
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        /*
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        */
        width: 100%;
        margin: 0;
        table-layout: fixed;
    }
    #home-people .people-box .people-list > li{
        -webkit-flex-grow: 1;
        flex-grow: 1;
        vertical-align: middle;
        border: 1px solid #ffffff;
        display: table;
        width: 50%;
        height: 380px;
    }
    #home-people .people-box .people-list > li a{
        display: table-cell;
        vertical-align: top;
        padding: 44px 30px 10px;
        text-decoration: none;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        position: relative;
    }
    #home-people .people-box .people-list > li.staff a{
        background-image: url(../images/home/people-staff-image.jpg);
    }
    #home-people .people-box .people-list > li.message a{
        background-image: url(../images/home/people-message-image.jpg);
    }
    #home-people .people-box .people-list > li a:before{
        content: "";
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        background-color: rgba(22,31,79,0.0);
        z-index: 0;
    }
    #home-people .people-box .people-list > li a:hover:before{
        background-color: rgba(22,31,79,0.3);
    }
    #home-people .people-box .people-list > li a .titles{
        font-size: 162.5%;
        position: relative;
        z-index: 1;
    }
    #home-people .people-box .people-list > li a .titles .inner{
        display: inline-block;
        min-width: 160px;
        padding: 2px 12px;
        background-color: rgba(255,255,255,0.7);
    }
    #home-people .people-box .people-list > li a .links{
        position: absolute;
        bottom: 0;
        right: 20px;
        z-index: 1;
    }
    
    /*
    #home-news{
        margin-bottom: 80px;
        padding: 60px 0 30px;
        background-position: center center, center center;
        background-repeat: repeat, no-repeat;
        background-size: auto, cover;
        background-image:
        url(../images/home/news-bg_wrap.png),
        url(../images/home/news-bg.jpg);
    }
    #home-news .news-list{
        padding: 20px 30px;
        background-color: #ffffff;
        max-height: 350px;
        overflow: auto;
    }
    #home-news .news-list > dt{
        clear: both;
        float: left;
        padding: 10px 0;
    }
    #home-news .news-list > dd{
        padding: 10px 20px 10px 247px;
        border-bottom: 1px solid #dddddd;
    }
    #home-news .news-list > dd:last-child{
        border-bottom: none;
    }
    #home-news .news-list > dt .times{
        display: inline-block;
        vertical-align: middle;
        margin-right: 20px;
        color: #12345e;
        font-size: 93.75%;
        font-weight: bold;
    }
    #home-news .news-list > dt .cat{
        display: inline-block;
        vertical-align: middle;
        min-width: 90px;
        padding: 2px 5px;
        color: #ffffff;
        font-size: 93.75%;
        font-weight: bold;
        text-align: center;
    }
    #home-news .news-list > dt .cat.default{
        background-color: #cf85a5;
    }
    #home-news .news-list > dt .cat.recruit{
        background-color: #56a2b9;
    }
    #home-news .news-list > dt .cat.research{
        background-color: #2e6ba5;
    }
    #home-news .news-list > dd .titles{
        margin-bottom: 0;
        color: #12345e;
        font-weight: bold;
    }
    #home-news .news-list > dd .titles a{
        color: #12345e;
        font-weight: bold;
    }
    #home-news .news-list > dd .text{
        margin-bottom: 0;
        font-size: 93.75%;
    }
    */
        
        

    /* 230824 */
    #home-policy{
        margin-bottom: 0;
    }
	
}

@media only screen and (max-width: 640px) {
	
	/* MAINV */
    #mainv{
        position: relative;
        margin-top: 55px;
        padding-top: 84.0625%;
    }
    #mainv .image-box,
    #mainv .image-box .image-list,
    #mainv .image-box .image-list > li,
    #mainv .image-box .bx-viewport,
    #mainv .image-box .bx-wrapper,
    #mainv .catch-box{
        position: absolute !important;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 100%;
        height: 0 !important;
        padding-top: 84.0625%;
        z-index: 0;
    }
    #mainv .image-box .image-list > li{
        display: none;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
    }
    #mainv .image-box .image-list > li:first-child{
        display: block;
    }
    #mainv .image-box .image-list > li.image01{
        background-image: url(../images/home/mainv/image/image01.jpg);
    }
    #mainv .image-box .image-list > li.image02{
        background-image: url(../images/home/mainv/image/image02.jpg);
    }
    #mainv .image-box .image-list > li.image03{
        background-image: url(../images/home/mainv/image/image03.jpg);
    }
    #mainv .image-box .image-list > li.image04{
        background-image: url(../images/home/mainv/image/image04.jpg);
    }
    #mainv .image-box .image-list > li.image05{
        background-image: url(../images/home/mainv/image/image05.jpg);
    }
    #mainv .image-box .image-list > li.image06{
        background-image: url(../images/home/mainv/image/image06.jpg);
    }
    #mainv .image-box .image-list > li.image07{
        background-image: url(../images/home/mainv/image/image07.jpg);
    }
    #mainv .catch-box .catch-list > li{
        display: none;
        position: absolute;
        margin: auto;
        right: 10px;
        left: 10px;
    }
    #mainv .catch-box .catch-list > li:first-child{
        display: block;
    }
    #mainv .catch-box .catch-list > li.catch01{
        top: 4.46%;
        text-align: center;
    }
    #mainv .catch-box .catch-list > li.catch02,
    #mainv .catch-box .catch-list > li.catch07{
        top: 50%;
        text-align: center;
    }
    #mainv .catch-box .catch-list > li.catch03{
        top: 30%;
        text-align: center;
    }
    #mainv .catch-box .catch-list > li.catch06{
        top: 9.29368%;
        text-align: center;
    }
    #mainv .catch-box .catch-list > li.catch04,
    #mainv .catch-box .catch-list > li.catch05{
        top: 9.29368%;
        left: auto;
    }
    #mainv .catch-box .catch-list > li .catch{
        color: #203b50;
        font-size: 100%; /* 14px */
        font-size: 4.375vw; /* 14px */
        font-family: "Times New Roman", "游明朝", YuMincho, "Ryumin Regular KL", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", 'Noto Serif JP', serif;
        font-weight: bold;
        letter-spacing: 0.5pt;
        line-height: 1.4;
        text-shadow:
        0.1px 0.1px 0.1px #203b50,-0.1px 0.1px 0.1px #203b50,0.1px -0.1px 0.1px #203b50,-0.1px -0.1px 0.1px #203b50,
        1px 1px 10px #FFFFFF,-1px 1px 10px #FFFFFF,1px -1px 10px #FFFFFF,-1px -1px 10px #FFFFFF,
        1px 1px 10px #FFFFFF,-1px 1px 10px #FFFFFF,1px -1px 10px #FFFFFF,-1px -1px 10px #FFFFFF;
        zoom:1;
        filter: progid:DXImageTransform.Microsoft.Glow(Color=#FFFFFF,Strength=5);
        -ms-filter: "progid:DXImageTransform.Microsoft.dropshadow(OffX=-1, OffY=-1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=0, OffY=-1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=-1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=0, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=1, OffY=1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=0, OffY=1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=-1, OffY=1, Color=#FFFFFF)progid:DXImageTransform.Microsoft.dropshadow(OffX=-1, OffY=0, Color=#FFFFFF)";
    }
    #mainv .arrow-box{
        display: none;
        position: absolute;
        right: 0;
        bottom: 5%;
        left: 0;
        margin: auto;
        width: 100%;
        text-align: center;
    }
    #mainv .arrow-box a{
        display: inline-block;
    }
    #mainv .arrow-box .image{
        margin-bottom: 5px;
    }
    #mainv .arrow-box .arrow{
        margin-bottom: 0;
        position: relative;
    }
    #mainv .arrow-box .arrow img{
        position: absolute;
        right: 0;
        left: 0;
        bottom: 0;
        margin: auto;
        -webkit-animation-duration: 3s;
        animation-duration: 3s;
        -webkit-animation-name: toscroll;
        -webkit-animation-timing-function: ease;
        -webkit-animation-iteration-count: infinite;
        animation-name: toscroll;
        animation-timing-function: ease;
        animation-iteration-count: infinite;
    }
    #mainv .arrow-box a:active .arrow img{
        bottom: 0;
    }
    
    #home-policy{
        margin-bottom: 60px;
    }
    #home-policy .policy-box{
        background: #00597c; /* Old browsers */
        background: -moz-linear-gradient(left, #00597c 0%, #213c50 100%); /* FF3.6-15 */
        background: -webkit-linear-gradient(left, #00597c 0%,#213c50 100%); /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, #00597c 0%,#213c50 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00597c', endColorstr='#213c50',GradientType=1 ); /* IE6-9 */
    }
    #home-policy .policy-box .container-inner{
        margin: 0 10px;
        padding: 30px 0;
        position: relative;
    }
    #home-policy .policy-box .titles,
    #home-policy .policy-box .titles02,
    #home-policy .policy-box .links,
    #home-policy .policy-box .links a{
        color: #ffffff;
        text-align: center;
    }
    #home-policy .policy-box .titles{
        margin-bottom: 25px;
    }
    #home-policy .policy-box .titles02{
        margin-bottom: 15px;
        font-size: 114.2857%; /* 16px */
    }
    #home-policy .policy-box .text{
        color: #ffffff;
        margin-bottom: 30px;
        margin-right: 15%;
        margin-left: 15%;
        position: relative;
        z-index: 2;
    }
    #home-policy .policy-box .image01{
        position: absolute;
        bottom: 0;
        right: -5px;
        margin-bottom: 0;
        line-height: 0;
        width: 20%;
    }
    #home-policy .policy-box .image02{
        position: absolute;
        bottom: -10px;
        left: -10px;
        margin-bottom: 0;
        line-height: 0;
        width: 30%;
    }
    
    #home-treatment{
        margin-bottom: 60px;
    }
    
    #home-people{
        margin-bottom: 60px;
    }
    #home-people .people-box{
        width: auto;
        padding-right: 0;
        padding-left: 0;
    }
    #home-people .people-box .people-list{
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        /*
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        */
        width: 100%;
        margin: 0;
        table-layout: fixed;
    }
    #home-people .people-box .people-list > li{
        -webkit-flex-grow: 1;
        flex-grow: 1;
        vertical-align: middle;
        border: 1px solid #ffffff;
        width: 50%;
    }
    #home-people .people-box .people-list > li a{
        display: block;
        padding-top: 103.125%;
        text-decoration: none;
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        position: relative;
    }
    #home-people .people-box .people-list > li.staff a{
        background-image: url(../images/home/people-staff-image.jpg);
    }
    #home-people .people-box .people-list > li.message a{
        background-image: url(../images/home/people-message-image.jpg);
    }
    #home-people .people-box .people-list > li a:before{
        content: "";
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        background-color: rgba(22,31,79,0.0);
        z-index: 0;
    }
    #home-people .people-box .people-list > li a:hover:before{
        background-color: rgba(22,31,79,0.3);
    }
    #home-people .people-box .people-list > li a .titles{
        font-size: 4vw;
        position: absolute;
        top: 18px;
        right: 0; 
        left: 0;
        margin: auto;
        z-index: 1;
    }
    #home-people .people-box .people-list > li a .titles .inner{
        display: inline-block;
        min-width: 100px;
        padding: 2px 12px;
        background-color: rgba(255,255,255,0.7);
    }
    #home-people .people-box .people-list > li a .links{
        position: absolute;
        bottom: 0;
        /*
        right: 0;
        left: 0;
        margin: auto;
        text-align: center;
        */
        right: 20px;
        z-index: 1;
    }
    
    /*
    #home-news{
        margin-bottom: 60px;
        padding: 40px 0 10px;
        background-position: center center, center center;
        background-repeat: repeat, no-repeat;
        background-size: auto, cover;
        background-image:
        url(../images/home/news-bg_wrap.png),
        url(../images/home/news-bg.jpg);
    }
    #home-news .news-list{
        padding: 15px;
        background-color: #ffffff;
    }
    #home-news .news-list > dt{
        margin-bottom: 5px;
        padding-top: 10px;
    }
    #home-news .news-list > dd{
        padding-bottom: 10px;
        border-bottom: 1px solid #dddddd;
    }
    #home-news .news-list > dd:last-child{
        border-bottom: none;
    }
    #home-news .news-list > dt .times{
        display: inline-block;
        vertical-align: middle;
        margin-right: 1em;
        color: #12345e;
        font-size: 92.857142%;
        font-weight: bold;
    }
    #home-news .news-list > dt .cat{
        display: inline-block;
        vertical-align: middle;
        min-width: 90px;
        padding: 2px 5px;
        color: #ffffff;
        font-size: 92.857142%;
        font-weight: bold;
        text-align: center;
    }
    #home-news .news-list > dt .cat.default{
        background-color: #cf85a5;
    }
    #home-news .news-list > dt .cat.recruit{
        background-color: #56a2b9;
    }
    #home-news .news-list > dt .cat.research{
        background-color: #2e6ba5;
    }
    #home-news .news-list > dd .titles{
        margin-bottom: 0;
        color: #12345e;
        font-size: 107.142857%;
        font-weight: bold;
    }
    #home-news .news-list > dd .titles a{
        color: #12345e;
        font-weight: bold;
    }
    #home-news .news-list > dd .text{
        margin-bottom: 0;
    }
    */
        

    /* 230824 */
    #home-policy{
        margin-bottom: 0;
    }
	
}

/* KEYFRAMES */        
@-webkit-keyframes toscroll {
    0% {
        bottom: 0;
    }
    15% {
        bottom: -5px;
    }
    30% {
        bottom: 0;
    }
    45% {
        bottom: -5px;
    }
    60% {
        bottom: 0;
    }
    100% {
        bottom: 0;
    }
}
@keyframes flash {
    0% {
        bottom: 0;
    }
    50% {
        bottom: -5px;
    }
    100% {
        bottom: 0;
    }
}