@charset "utf-8";

.header1{
    background:#fff;
}
.header2{
    background:#fff;
    z-index: 5;
}
.nav_menu{
    border-top:1px solid #ccc;
    box-shadow: 0 5px 5px 0px #ccc;
}
.nav_menu li{
    position:relative;
    border-left: 1px solid #000;
    display: flex;
    align-items: center;
}
.nav_menu li.active:after{
    content: "";
    position:absolute;
    display:block;
    bottom: 6px;
    left: 50%;
    transform:translateX(-50%);
    width:90%;
    border-top: 1px solid #8b9bad;
}
.nav_menu li:first-child{
    border-left: 1px solid #fff;
}
.nav_menu li a{
    color:#000;
}
.nav_menu li a:hover{
    background:#fff;
/*
    border: 1px solid #0057db;
*/
    color:#000;
}
.nav_menu li a:hover:after{
    content: "";
    position:absolute;
    display:block;
    bottom: 6px;
    left: 50%;
    transform:translateX(-50%);
    width:90%;
    border-top: 1px solid #8b9bad;
}
.nav_menu li a:active{
    background:#eaf6fd;
}
#contents_inner{
    background:#fff;
}
#contents01,
#contents02,
#contents03,
.contents01,
.contents02,
.contents03{
    background:#fff;
}
.over_veil{
    margin: 0 -200%;
    padding: 0 200%;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding-left: calc(50vw - 50%);
    padding-right: calc(50vw - 50%);
}
.logo_japan,
.logo_japan2{
    position: absolute;
    top: 0;
    width:100px;
    z-index: 11;
}
.applyin > div{
/*
    box-shadow: 0px 0px 3px 1px #c7c7c7;
*/
}
.applyin a{
    display:inline-block;
    width:100%;
    height:100%;
    border: 1px solid #c7c7c7;
    color: #000;
}
.applyin a:hover{
    background:#fff;
    border: 1px solid #0057DB;
    color: #000;
}
.applyin a:active{
    background:#eaf6fd;
}
.applyin a > img{
    display: block;
    margin:0 auto;
}

/*タブ切り替え*/
#individual_login .ui-widget-header{
    display: flex;
    justify-content: center;
    background:transparent;
    border:none;
}
#individual_login .ui-widget.ui-widget-content{
    border:none;
}
#individual_login .ui-state-default,
#individual_login .ui-widget-content .ui-state-default,
#individual_login .ui-widget-header .ui-state-default,
#individual_login .ui-button, html .ui-button.ui-state-disabled:hover,
html #individual_login .ui-button.ui-state-disabled:active{
    float:none !important;
    display:flex;
    width:32%;
    text-align: center;
    background:#b2b2b2;
    white-space: normal !important;
}
#individual_login .ui-state-active,
#individual_login .ui-widget-content .ui-state-active,
#individual_login .ui-widget-header .ui-state-active,
#individual_login a.ui-button:active,
#individual_login .ui-button:active,
#individual_login .ui-button.ui-state-active:hover{
    background:#266fb7;
}
#individual_login .ui-widget-header .ui-state-default a:hover{
    background:transparent;
}
#individual_login .ui-tabs .ui-tabs-nav .ui-tabs-anchor{
    float: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width:100%;
}
#individual_login .ui-tabs .ui-tabs-nav .ui-tabs-anchor:hover{
    color:#fff;
}
#individual_login .ui-tabs-active.ui-state-active:after{
    content: "";
    position: absolute;
    bottom: -11px;
    left: 50%;
    transform:translateX(-50%);
    width: 0;
    height: 0;
    margin: auto;
    border-style: solid;
    border-color: #266fb7 transparent transparent transparent;
    border-width: 11px 11px 0 11px;
}
#individual_login .ui-tabs .ui-tabs-panel{
    position: absolute;
    top:-1em;
    margin:1em 0;
    max-width: 960px;
    width:100%;
    border:1px solid #666;
}
#individual_login .ui-tabs .ui-tabs-panel.targets{
    position: relative;
    top:0;
    z-index:1;
}

/*データピッカー修正*/
#group_home .box_inner .ui-widget.ui-widget-content{
    display: flex !important;
    flex-wrap: wrap;
    align-items: stretch;
    align-content: stretch;
    justify-content: center;
    width:100% !important;
}
#group_home .box_inner .ui-datepicker-multi .ui-datepicker-group{
    width:100%;
}
#group_home .box_inner .ui-datepicker-multi .ui-datepicker-group:nth-child(3n+2){
    margin:0 0.5%;
}
#group_home .ui-state-default, #group_home .ui-widget-content .ui-state-default,
.bc_eigyo{
    background-color: #2196f3;
    color:#fff;
}
#group_home td.holiday a.ui-state-default,
.bc_kyukan{
    background-color: #ffecec;
    color: #f00!important;
}
#group_home .ui-datepicker th {
    padding: 0 .3em;
}
/* 日曜日のカラー設定 */
#group_home td.ui-datepicker-week-end:first-child a.ui-state-default,
#group_home td.ui-datepicker-week-end:last-child a.ui-state-default{
    background-color: #ffecec;
    color: #f00!important;
}
/* 土曜日のカラー設定 */
/*
td.ui-datepicker-week-end:last-child a.ui-state-default{
    background-color: #eaeaff;
    color: #00f!important;
}
*/
#group_home .box_inner .ui-datepicker-multi .ui-datepicker-group{
    width:49%;
}

.application-steps {
    align-items: stretch;
    flex-direction: column;
    justify-content: flex-start;
}

.step-icon {
    position: relative;
    height: 64px;
    width: 100%;
}

.step-icon img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.step-icon .active,
.steps .active{
    background:#f7c38c;
    border-radius: 10px;
}

.login_img{
    top: 50%;
    left: 50%;
    transform: translate(-180%,-50%);
}

/* アイコン */
.icon-parent {
    position: relative;
    width: 100%;
}

/* アイコン - ヘルプ */
.icon_help {
    font-family: "メイリオ","ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
    font-weight: 600;
    position: absolute;
    cursor:pointer;
    display: inline-block;
    width: 30px;
    height: 30px;
    color: #fff;
    background: #0c5ebf;
    border: 0px;
    font-size: 14pt;
    line-height: 150%;
    padding: 0;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* ヘルプ - ツールチップ本体 */
p.tgToolTip {
    position: absolute;
    bottom: 50%;
    right: 50%;
    z-index: 100;
    margin: 0;
    padding: 0.5em 1em;
    width:300px;
    min-height: 1em;
    text-align: left;
    font-size: 80%;
    color:#000;
    background-color: #fff;
    border: 3px solid #1078e0;
    border-radius: 5px;
    -moz-border-radius: 5px;
    box-sizing: border-box;
    transform: translate(9%, -39px);
}

p.tgToolTip:before{
    content: "";
    position: absolute;
    bottom: -24px;
    right: 2px;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #1078e0 transparent transparent transparent;
    border-width: 22px 22px 0 22px;
}

p.tgToolTip:after{
    content: "";
    position: absolute;
    bottom: -19px;
    right: 4px;
    width: 0px;
    height: 0px;
    margin: auto;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
    border-width: 20px 20px 0 20px;
}

#footer_inner{
    padding-top:10px;
    padding-bottom:10px;
    background:transparent;
    background-position: center center;
    background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
    .logo_japan,
    .logo_japan2{
        width:85px;
    }
    .header2 {
        position: relative;
        right: auto;
        /*transition: none;*/
        transform: none;
    }
    .nav_menu.dis_flex_c{
        align-items:stretch;
    }
    .nav_menu.dis_flex_c li{
        display:flex;
        align-items: center;
        font-size: 70%;
        line-height: normal;
    }
    #individual_login .ui-tabs .ui-tabs-panel{
        margin:20px auto 0;
        padding:0.5em;
    }
    #group_home #datepicker{
        width:100% !important;
    }
    #group_home .box_inner .ui-datepicker-multi .ui-datepicker-group{
        width:100%;
    }
    #group_home .box_inner .ui-datepicker-multi .ui-datepicker-group:nth-child(3n+2){
        margin:0 auto;
    }
    #footer_inner{
        padding:60px 0 0;
        background-position: center top;
    }

}
