@charset "utf-8";/*文字コード指定*/

:root {/*変数定義-----------------------------------------------------------------------↓*/
    --zyugyouin_photo: -5;
    --test: calc((2vw * 1.1) + (1vh * 1.5) * 1vw);
}/*変数定義------------------------------------------------------------------------------↑*/

/*メモ帳
{{スマホを基本設計にする}}
 - 〜479px：SP縦
 - 480px〜599px：SP横
 - 600px〜959px：タブレット
 - 960px〜1279px：小型PC
 - 1280px〜：大型PC
*/

/*-------------------------------------------------------------------------------------------*/
/* ▼デフォルトCSS(ウィンドウ幅が~479pxの場合に適用)                                    */
/*-------------------------------------------------------------------------------------------*/
/*デフォルトCSS----------------------------------OPローディングサークル↓*/
.kagopageload {
    background: rgba(255,255,255,1.0);
    height: 100vh;
    left: 0;
    position: fixed;
    top: 0;
    width: 100vw;
    z-index: 20000;
}

#kagomoto_anime{/*デフォルトCSS---------------------------------OPロゴanime↓*/
    display: none;
    fill: transparent;
    height: auto;
    margin: 0 5%;
    width: 90%;
    animation: kago_pagemove 2s ease-in-out 0s forwards;
    animation-iteration-count: infinite;
    animation-play-state: paused;
}
@keyframes kago_pagemove {
    0% {
        transform: rotateY(360deg);
    }
    100% {
        transform: rotateY(0deg);
    }
}/*デフォルトCSS-------------------------------------------------------OPロゴanime↑*/

div.main_cont{/*デフォルトCSS-----------------------------------メインコンテンツ↓*/
    display: none;
    overflow: hidden;
    position: relative;
    top: 140px;
    width: 100%;
}
div.main_visual{
    display: block;
    float: left;
    height: calc((100vw / 16) * 7);
    overflow: hidden;
    position: relative;
    width: 100%;
}
.main_visual img{
    background-size: cover;
    height: 100%;
    width: 100%;
}
div.pc_main_img {
    filter:drop-shadow(-5px 10px 0px rgba(255, 255, 255, 0.2));
    float: left;
    line-height: 0;
    transform: translate(calc(50vw - 50%),calc(50vh - 65%));
    overflow: visible;
    padding: 1%;
    position: fixed;
    width: 90%;
    z-index: 1;
}
/*デフォルトCSS---------------------------------------------------メインコンテンツ↑*/

div.news{/*デフォルトCSS---------------------------------------------------お知らせ↓*/
    float: left;
    font-size: calc(1.5rem + ((1vw - 0.64rem) * 0.7143));
    left: 200%;
    margin: 10px 0 100px 2%;
    opacity: 0.1;
    overflow:hidden;
    position: relative;
    transition:1.0s;
    width: 96%;
    word-break: break-all;
}
.news h2{
    border-image: linear-gradient(to right, #c8161d 30%, #004994 100%)1;
    border-top: 5px solid #e6e6e6;
    margin: 50px 0 0 0;
    padding: 25px 0;
}
.news_item_date{
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    font-weight: bold;
}
.news_ul{
    line-height: 140%;
}
.news_ul h3{
    font-weight: normal;
    margin: 0 0 5px 0;
}
.news_ul > li:first-child{
    border-image: linear-gradient(to right, #c8161d 30%, #004994 100%)1;
    border-top: 2px solid #e6e6e6;
    padding: 25px 0;
}
.news_ul > li{
    border-bottom: 2px solid #e6e6e6;
    border-image: linear-gradient(to right, #c8161d 30%, #004994 100%)1;
    padding: 25px 0;
}/*デフォルトCSS-------------------------------------------------------------お知らせ↑*/

.comp_img{/*デフォルトCSS---------------------------------------------comp_img↓*/
    background-image: url("../img/recr_05.jpg");
    background-position: center bottom 20%;
    float: left;
    height: calc(100vw * 0.375 * 2.5);
    height: auto;
    margin: 0 0 100px 0;
    width: 100%;
}
.comp_img_copybox{
    overflow: hidden;
    padding: 2%;
}
.comp_img_copy{
    bottom:250%;
    display: block;
    left:150%;
    height: auto;
    position: relative;
    transition:2.0s;
    width: 100%;
}
h4{
    display: inline-block;
    font-family: "IPAPFont", serif , 游明朝, 'Yu Mincho';
    font-size: calc(2.3rem + ((1vw - 0.64rem) * 0.7143));
    font-weight: bold;
    line-height: 1.0;
}
.comp_img_copy p, .compnavi_copy p, .pro_copy p, .recr_copy p{
    display: block;
    font-family: "IPAPFont", serif , 游明朝, 'Yu Mincho';
    font-size: calc(1.7rem + ((1vw - 0.64rem) * 0.7143));
    line-height: 1.2;
    overflow-wrap:break-word;
    word-wrap: break-word;
}
.comp_img_copybox hr{
    background-color: #000000;
    border: 0;
}

.comp_img_copybox_linkerea{
    background-color: rgba(255, 255, 255, 0.5);
    float: left;
    height: auto;
    margin: 8% 0 8% 4%;
    padding: 2%;
    width: 60%;
}
.comp_img_copybox_link{
    background-color: rgba(200, 22, 29, 0.5);
    display: inline-block;
    height: auto;
    line-height: 1.0;
    margin: 0 0 0 2%;
    padding: 3%;
    position: relative;
    text-align: right;
    width: auto;
}
.comp_img_copybox_link p{
    color: white;
    font-size: calc(1.3rem + ((1vw - 0.64rem) * 0.7143));
    pointer-events: none;
}/*デフォルトCSS----------------------------------------------------------comp_img↑*/

.compnavi {/*デフォルトCSS-----------------------------------------------compnavi↓*/
    background-color: #ffeeee;
    display: block;
    float: left;
    height: auto;
    left: 200%;
    margin: 0 0 100px 0;
    opacity: 0.1;
    overflow: hidden;
    position: relative;
    transition:1.0s;
    width: 100%;
}
.compnavi_img {
    background-image: url("../img/zigyou.jpg");
    background-position: center top;
    background-size:cover;
    display: block;
    float: left;
    height: 75vw;
    margin: 0 0 0 0;
    position: relative;
    width: 100%;
}
.compnavi_copy {
    display: block;
    float: left;
    height: auto;
    margin: 4%;
    position: relative;
    width: 92%;
}
.compnavi_copy p:nth-child(1), .pro_copy p:nth-child(1){
    display: inline-block;
    font-family: "IPAPFont", serif , 游明朝, 'Yu Mincho';
    font-size: calc(2.3rem + ((1vw - 0.64rem) * 0.7143));
    font-weight: bold;
    line-height: 1.0;
    margin: 10px 0 0 0;
}
.compnavi_link ,.pro_link{
    background-color: rgba(200, 22, 29, 0.5);
    display: inline-block;
    bottom: 0;
    height: auto;
    line-height: 1.0;
    margin: 0 4% 4% 0;
    padding: 2%;
    position: absolute;
    right: 0;
    text-align: left;
    width: auto;
}
.compnavi_link p ,.pro_link p{
    color: white;
    font-size: calc(1.3rem + ((1vw - 0.64rem) * 0.7143));
}/*デフォルトCSS-----------------------------------------------------------compnavi↑*/

.pro{/*デフォルトCSS-----------------------------------------------------pro↓*/
    display: block;
    float: left;
    height: auto;
    margin: 0 0 100px 0;
    overflow: hidden;
    position: relative;
    transition:1.0s;
    width: 100%;
}
.pro_l-img{
    /*1:1.304*/
    background-image: url("../img/nikukai2.jpg");
    background-position: center center;
    background-size:cover;
    display: block;
    float: left;
    height: calc(100vw * 0.767);
    left: -200%;
    margin: 0 0 0 0;
    opacity: 0.1;
    position: relative;
    transition:1.0s;
    width: 100%
}
.pro_r-img{
    background-color: #ffeeee;
    background-position: center top;
    background-size:cover;
    display: block;
    float: left;
    height: auto;
    left: 200%;
    opacity: 0.1;
    position: relative;
    transition:1.0s;
    width: 100%
}

.pro_copy {
    display: block;
    float: left;
    height: auto;
    margin: 4%;
    position: relative;
    width: 92%;
}/*デフォルトCSS--------------------------------------------------------------pro↑*/

.recr{/*デフォルトCSS-------------------------------------------------------------recr↓*/
    float: left;
    height: auto;
    left: -200%;
    margin: 0 0 170px 0;
    opacity: 0.1;
    overflow: hidden;
    position: relative;
    transform:rotate(360deg);
    transition:1.0s;
    width: 100%;
}
.recr_copy{
    background-color: #ffeeee;
    box-sizing:border-box;
    float: left;
    height: auto;
    padding: 4%;
    position: relative;
    width: 100%;
}
.rxxxecr_copy p:nth-child(1){
    display: inline-block;
    font-family: "IPAPFont", serif , 游明朝, 'Yu Mincho';
    font-size: calc(2.3rem + ((1vw - 0.64rem) * 0.7143));
    font-weight: bold;
    line-height: 1.0;
    margin: 0 0 0 0;
}
.rxxxecr_copy p:nth-child(2){
    font-family: "IPAPFont", serif , 游明朝, 'Yu Mincho';
    font-size: calc(1.7rem + ((1vw - 0.64rem) * 0.7143));
    line-height: 1.0;
    margin: 5px 0 0 0;
    overflow-wrap:break-word;
    word-wrap: break-word;
}
.recr_img{
    background-image: url("../img/recr_01.jpg");
    background-position: center top;
    background-size:cover;
    float: left;
    height: calc(100vw * 0.544);
    position: relative;
    width: 100%;
}
.recr_link{
    background-color: rgba(200, 22, 29, 0.5);
    color: white;
    float: left;
    height: 10%;
    position: relative;
    text-align: center;
    width: 100%;
}
.recr_link p:nth-child(2){
    display: inline-block;
    font-family: "midasifont", serif;
    font-size: calc(2.3rem + ((1vw - 0.64rem) * 0.7143));
    font-weight: bold;
    height: auto;
    letter-spacing: 1.0rem;
    line-height: 1.0;
    margin: 10px auto;
    pointer-events: none;
    position: relative;
    white-space: nowrap;
}/*デフォルトCSS------------------------------------------------------------------recr↑*/

ul.member_list_01 > li:nth-child(1):before {
    color: deeppink;
    content: "デフォルト_CSS";
    font-size: 0.8rem;
}

/*-------------------------------------------------------------------------------------------*/
/* ▼SP_CSS ウィンドウ幅が480px~599pxの場合に適用                                       */
/*-------------------------------------------------------------------------------------------*/
@media screen and (min-width: 480px) {
    div.main_cont{/*SP_CSS---------------------------------------メインコンテンツ↓*/
        top: 130px;
    }/*SP_CSS--------------------------------------------------------メインコンテンツ↑*/
}

/*-------------------------------------------------------------------------------------------*/
/* ▼タブレット_CSS ウィンドウ幅が600px~959pxの場合に適用                           */
/*-------------------------------------------------------------------------------------------*/
@media screen and (min-width: 600px) {
    div.main_cont{/*タブレット_CSS------------------------------メインコンテンツ↓*/
        top: 130px;
    }/*タブレット_CSS-----------------------------------------------メインコンテンツ↑*/

    div.news{/*タブレット_CSS----------------------------------------------お知らせ↓*/
        margin: 10px 0 50px 2%;
    }/*タブレット_CSS--------------------------------------------------------お知らせ↑*/

    .comp_img{/*タブレット_CSS-----------------------------------------comp_img↓*/
        /*background-size:cover;*/
        background-position: center;
        height: auto;
        margin: 0 0 50px 0;
    }
    .comp_img_copybox{
        /*margin: 3% 0 0 3%;*/
        width: auto;
    }
    h4{
        font-size: calc(3.0rem + ((1vw - 0.64rem) * 0.7143));
        line-height: 1.0;
    }
    .comp_img_copy p{
        font-size: calc(1.5rem + ((1vw - 0.64rem) * 0.7143));
        line-height: 1.4;
        margin: 10px 0 0 0;
    }
    .comp_img_copybox_linkerea{
        margin: 4% 0 15% 4%;
    }/*タブレット_CSS------------------------------------------------------comp_img↑*/

    .compnavi {/*タブレット_CSS------------------------------------------compnavi↓*/
        height: auto;
        margin: 0 0 50px 0;
    }
    .compnavi_img {
        height: calc(75vw / 2);
        width: 50%;
    }
    .compnavi_link {
        margin: 0 2% 2% 2%;
        position: relative;
    }/*タブレット_CSS-------------------------------------------------------compnavi↑*/

    .pro{/*タブレット_CSS-------------------------------------------------pro↓*/
        display: block;
        float: left;
        height: auto;
        margin: 0 0 150px 0;
        overflow: hidden;
        position: relative;
        transition:1.0s;
        width: 100%;
    }
    .pro_l-img{
        /*background-image: url("../img/nikukai2.jpg");*/
        background-position: center center;
        background-size:cover;
        display: block;
        float: left;
        height: calc((100vw * 0.767) / 2);
        left: -200%;
        opacity: 0.1;
        position: relative;
        transition:1.0s;
        width: 50%;
    }
    .pro_r-img{
        background-position: center top;
        background-size:cover;
        display: block;
        float: left;
        height: calc((100vw * 0.767) / 2);
        left: 200%;
        opacity: 0.1;
        position: relative;
        transition:1.0s;
        width: 50%;
    }
    .compnavi_copy {
        margin: 2%;
        width: 46%;
    }
    .pro_link {
        margin: 4% 0 0 4%;
        position: relative;
    }
/*タブレット_CSS----------------------------------------------------------pro↑*/

    .recr{/*タブレット_CSS--------------------------------------------------------recr↓*/
            height: auto;
    }
    .recr_img{
            background-position: center top 20%;
    }
    .recr_link{
        height: auto;
    }/*タブレット_CSS-------------------------------------------------------------recr↑*/
    .animation-box{/*表示アニメ設定*/
        background-size:200%;
    }
    .animation-box.active{
        background-size:115%;
    }
}/*▼タブレット_CSS END*/

/*-------------------------------------------------------------------------------------------*/
/* ▼小型PC_CSS ウィンドウ幅が960px~1279pxの場合に適用                               */
/*-------------------------------------------------------------------------------------------*/
@media screen and (min-width: 960px) {
    div.main_cont{/*小型PC_CSS----------------------------------メインコンテンツ↓*/
        top: 140px;
    }
    .main_cont li {
        background-size:cover;
    }/*小型PC_CSS---------------------------------------------------メインコンテンツ↑*/
    
    div.news{/*小型PC_CSS--------------------------------------------------お知らせ↓*/
        font-size: calc(1.0rem + ((1vw - 0.64rem) * 0.7143));
        margin: 10px 0 50px 20%;
        width: 60%;
    }
    .comp_img_copybox_linkerea{
        margin: 4% 0 10% 4%;
    }/*小型PC_CSS-------------------------------------------------------------お知らせ↑*/
}

/*-------------------------------------------------------------------------------------------*/
/* ▼大型PC_CSS ウィンドウ幅が1280px以上の場合に適用                                    */
/*-------------------------------------------------------------------------------------------*/
@media screen and (min-width: 1280px) {
    div.main_cont{/*大型PC_CSS----------------------------------メインコンテンツ↓*/
        top: 100px;
    }
    .main_cont li {
        background-size:cover;
    }/*大型PC_CSS---------------------------------------------------メインコンテンツ↑*/
    .recr_img{
        height: calc(100vw * 0.3);
    }
}/*大型PC_CSS END*/