/* all */
* {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    -webkit-tap-highlight-color: rgba( 0, 0, 0, 0);
    box-sizing: border-box;
}

.pc {
    display: none;
}

html {
    width: 100vw;
    margin: auto;
}

a {
    text-decoration: none;
}

body {
    color: #333333;
    width: 100vw;
    margin: 0;
    font-family: 'Lato', "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

.detail_frame_logo {
}

.detail_frame_fixed_top {
}


ul, dl, dt, dd {
    padding: 0;
    margin: 0;
}

/*body*/
.frame_inside {
    margin: 0 3.75vw;
    clear: both;
}

.detail_header_underline2 {
    margin-top: 3.75vw;
    border-top: 0.3125vw solid #e0e0e0;
}

.frame_head_title {
    padding-bottom: 1.5625vw;
}

.company_name {
    font-size: 4.6875vw;
    font-weight: bold;
    margin: 0 3.75vw;
    background: #fff;
    width: 92.5vw;
    top: 0;
    z-index: 10000;
}
.group_name {
    font-size: 3vw;
    font-weight: bold;
    background: #fff;
    opacity: 0.8;
}
.industry_type {
    font-size: 3.4375vw;
    margin: 0 3.75vw;
}
.company_lastupdated_at {
    font-size: 3.4375vw;
    text-align:right;
}
#motivation {
    float: right;
    margin-right: 3.75vw;
}
#motivation img {
    height: 7.5vw;
}

.frame_label {
/*     width: 100%; */
    height: 7.5vw;
    font-size: 3.4375vw;
    position: relative;
    padding: 0 0 1.875vw 0;
    /*
    border-bottom: 0.3125vw solid #e0e0e0;
    margin-bottom: 3.75vw;
    */
    margin: 0 3.75vw 3.75vw 3.75vw;
    z-index:-2;
}
.label {
    color: #ffffff;
    border-radius: 0.3125vw;
    display: inline-block;
    padding: 0.3125vw 1.875vw;
}
#listing {
    background: #3aabcb;
}
#regular {
    background: #6cb52c;
}
#permatemp {
    background: #6cb52c;
}


/**/
.btn_print {
    height: 9.6875vw;
    color: #ffffff;
    background: #7a7a7a;
    border-radius: 0.9375vw;
    text-align: center;
    line-height: 9.6875vw;
    margin: 3.125vw 0vw;
}

.btn_print img {
    width: 4.6875vw;
    height: 4.0625vw;
    display: inline-block;
}

.btn_print div {
    display: inline-block;
    margin-left: 1.875vw;
    font-size: 3.75vw;
    vertical-align: middle;
}

/*links*/
.frame_link {
    background: #f3f3f3;
    padding: 3.125vw 0;
    margin-bottom: 5vw;
    font-size: 3.75vw;
}

.btn_link {
    background: #ffffff;
    border: 0.3125vw solid #e0e0e0;
    border-radius: 0.9375vw;
    text-align: center;
    margin: 0 3.75vw;
}
.btn_link a {
    text-decoration: none !important;
}
.btn_link div {
    display:inline-block;
    vertical-align:middle;
}
.btn_link div img {
    width: 5vw;
    height: 5vw;
    margin-top: 1.875vw;
}
.btn_link div.btn_link_text {
    margin-left:1.875vw;
}
.btn_link_hp2 .btn_link_text {
    color: #389c15;
}

#frame_home {
    height: 9.6875vw;
    color: #4193e0;
    text-align: center;
}
#frame_home img {
    display: inline-block;
    width: 4.375vw;
    vertical-align: middle;
}
#frame_home div {
    display: inline-block;
    margin-left: 1.875vw;
}
#frame_recruit {
    height: 9.6875vw;
    color: #349a10;
    text-align: center;
    margin-top: 0.9375vw;
    margin-bottom: 3.125vw;
}
#frame_recruit img {
    width: 4.375vw;
    display: inline-block;
    vertical-align: middle;
}
#frame_recruit div {
    display: inline-block;
    margin-left: 1.875vw;
}

.frame_link a {
    text-align: center;
    display: block;
    text-decoration: underline;
    color: #4193e0;
    font-size: 3vw;
    height: 8.125vw;
}

/*tabs*/
.frame_btns1 {
    font-size: 3.4375vw;
    height: 9.6875vw;
    margin-bottom: 1.875vw;
}
.frame_btns2 {
    font-size: 3.4375vw;
    height: 9.6875vw;
    margin-bottom: 5vw;
}

.btn_type1, .btn_type2 {
    color: #4193e0;
    border: 0.3125vw solid #4193e0;
    line-height: 9.6875vw;
    text-align: center;
    position: absolute;
    border-radius: 0.9375vw;
    height: 9.0625vw;
}

.btn_type1 {
/*    width: 29.375vw;*/
    width: 45vw;
}
.btn_type2 {
/*    width: 45vw;*/
    width: 29.375vw;
}

.btn_type1.active, .btn_type2.active {
    color: #ffffff;
    background: #4193e0;
}

.btn_type1:after,.btn_type2:after,
.btn_type1.active:after,.btn_type2.active:after {
    content: "";
    width: 3.125vw;
    height: 1.875vw;
    position: absolute;
    right: 1.25vw;
    top: 3.75vw;
}
.btn_type1:after,.btn_type2:after {
    background: url('../img/icon_down_blue.png');
    background-size: 3.125vw 1.875vw;
}
.btn_type1.active:after,.btn_type2.active:after {
    background: url('../img/icon_up_white.png');
    background-size: 3.125vw 1.875vw;
}

.btn_company_detail {
/*    margin-left: calc( 92.5vw / 2 - 15vw);*/
    margin-left: calc( 92.5vw - 45.625vw);
}

.btn_career {
    margin-left: calc( 92.5vw / 2 - 15vw);
}

.btn_prev_recruit {
    margin-left: calc( 92.5vw - 30vw);
}


.btn_recruit_info {
    margin-left: calc( 92.5vw - 30vw);
}
.btn_pr {
    margin-left: calc( 92.5vw - 45.625vw);
}

/**/
.fixed_space {
    height: 15.9375vw;
}
.frame_outside_btns {
    background: rgba( 235,235,235,0.9);
    height: 15.9375vw;
    padding: 3.125vw 3.75vw;
    position: fixed;
    bottom: 0;
}

.frame_result_btns {
    position: relative;
    width: 92.5vw;
}

.btn_result {
    display: block;
    font-size: 3.4375vw;
    width: 27.5vw;
    color: #ffffff;
    padding: 2.5vw 0.625vw;
    border-radius: 0.9375vw;
    text-align: center;
}

/* #btn_entry { */
.btn_entry {
    color: #ff7070;
    background: #fcfcfc;
    border: 0.3125vw solid #ff7070;
    position: absolute;
    left: 0;
}
/* #btn_reserve { */
.btn_reserve {
    color: #7cd759;
    background: #fcfcfc;
    border: 0.3125vw solid #7cd759;
    text-align: center;
    position: absolute;
    left: calc( 50% - 14.375vw);
}
/* #btn_keep { */
.btn_keep {
    color: #4193e0;
    background: #fcfcfc;
    border: 0.3125vw solid #4193e0;
    position: absolute;
    right: 0;
}

.btn_result.disable {
    background: #ccc;
    border: 0.3125vw solid #ccc;
}
.btn_result.disable span {
    display: inline;
}

/*contents*/
.ci_head_title {
    color: #4193e0;
    border-bottom: 0.625vw solid #4193e0;
    font-size: 4.0625vw;
    margin-bottom: 3.125vw;
}
.ci_head_title:before {
    content: "";
    width: 3.125vw;
    height: 3.75vw;
    background: url('../img/icon_building_blue.png');
    background-size: 3.125vw 3.75vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}
#ci_contact_title {
    color: #4193e0;
    border-bottom: 0.625vw solid #4193e0;
    font-size: 4.0625vw;
    margin-bottom: 3.125vw;
}
#ci_contact_title:before {
    content: "";
    width: 3.125vw;
    height: 3.75vw;
    background: url('../img/icon_tell_blue.png');
    background-size: 3.125vw 3.75vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}

#ci_first_title, #ri_first_title {
    font-size: 3.59375vw;
    font-weight: bold;
    color: #eb6e8f;
    margin: 3.125vw 0;
}
#ci_first_image {
    width: 45.625vw;
    margin: auto;
}
#ci_first_image img, #ri_first_image img {
    width: 45.625vw;
}
#ci_first_text {
    padding-left: 0;
}

.ci_frame_images {
    position: relative;
    margin-bottom: 5vw;
    overflow: hidden;
}

.ci_imageframe {
    width: 30vw;
    font-size: 3.4375vw;
}
.ci_imageframe img {
    width: 30vw;
}

.ci_imageframe_02 {
    margin-left: calc( 92.5vw / 2 - 15vw);
    position: absolute;
    top: 0;
}
.ci_imageframe_03 {
    position: absolute;
    top: 0;
    right: 0;
}
/*
#ci_contact_value {
    font-size: 3.75vw;
    margin-bottom: 5vw;
}
*/
/**/
.cd_head_title {
    color: #4193e0;
    border-bottom: 0.625vw solid #4193e0;
    font-size: 4.0625vw;
    margin-bottom: 3.125vw;
}
.cd_head_title:before {
    content: "";
    width: 3.75vw;
    height: 3.4375vw;
    background: url('../img/icon_textpen_blue.png');
    background-size: 3.75vw 3.4375vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}

.cd_title {
    font-size: 4.0625vw;
    padding: 1.5625vw 0;
    font-weight: bold;
}
.cd_title:before {
    content: "";
    width: 1.25vw;
    height: 4.0625vw;
    background: url('../img/icon_rect_gray.png');
    background-size: 1.25vw 4.0625vw;
    float: left;
    margin: 0.9375vw 1.875vw 3.125vw 1.875vw;
}
.cd_value {
/*    font-size: 4.0625vw; */
/*	font-sizw:11.5px;*/
    font-size: 3.59375vw;
    padding: 0 0 1.25vw 5vw;
    overflow: auto;
    overflow-wrap: break-word;
}

.cd_value2 {
    font-size: 3.59375vw;
    padding: 0 0 1.25vw 5vw;
    overflow: auto;
    overflow-wrap: break-word;
}

.cd_title_flow {
    font-size: 4.0625vw;
    padding: 1.5625vw 0;
    font-weight: bold;
}
.cd_title_flow:before {
    content: "";
    width: 1.25vw;
    height: 4.0625vw;
    background: url('../img/icon_rect_gray.png');
    background-size: 1.25vw 4.0625vw;
    float: left;
    margin: 0.9375vw 1.875vw 3.125vw 1.875vw;
}
.cd_value_flow {
    font-size: 3.59375vw;
    padding: 0 0 1.25vw 5vw;
}


.cd_title_offtime{
    font-size: 4.0625vw;
    padding: 1.5625vw 0;
    font-weight: bold;
}
.cd_title_offtime:before {
    content: "";
    width: 1.25vw;
    height: 4.0625vw;
    background: url('../img/icon_rect_gray.png');
    background-size: 1.25vw 4.0625vw;
    float: left;
    margin: 0.9375vw 1.875vw 3.125vw 1.875vw;
}










.frame_contents {
    line-height : 1.75 ;
}

#recruit_info {

}

.ri_head_title {
    color: #4193e0;
    border-bottom: 0.625vw solid #4193e0;
    font-size: 4.0625vw;
    margin-bottom: 3.125vw;
}
.ri_head_title:before {
    content: "";
    width: 3.75vw;
    height: 3.4375vw;
    background: url('../img/icon_2persons_blue.png');
    background-size: 3.75vw 3.4375vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}
/*
#ri_contact_value {
    font-size: 3.75vw;
    margin-bottom: 5vw;
}
*/

#recruit_record {
}

.rr_head_title {
    color: #4193e0;
    border-bottom: 0.625vw solid #4193e0;
    font-size: 4.0625vw;
    margin-bottom: 3.125vw;
}
.rr_head_title:before {
    content: "";
    width: 3.75vw;
    height: 3.4375vw;
    background: url('../img/icon_personplus.png');
    background-size: 3.75vw 3.4375vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}
/*
#rr_contact_value {
    font-size: 3.75vw;
    margin-bottom: 5vw;
}
*/

/*PR*/
#pr {
}

.pr_head_title {
    color: #4193e0;
    border-bottom: 0.625vw solid #4193e0;
    font-size: 4.0625vw;
    margin-bottom: 3.125vw;
}
.pr_head_title:before {
    content: "";
    width: 3.75vw;
    height: 3.4375vw;
    background: url('../img/icon_good.png');
    background-size: 3.75vw 3.4375vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}

.pr_btns {
    margin: 10vw 0;
}
.pr_btn {
    border-radius: 1.875vw;
    border: 0.3125vw solid;
    color: #4193e0;
    margin: 5vw;
    height: 21.25vw;
    line-height: 21.25vw;
}

.pr_btn>p {
    height: 14.6875vw;
    width: 14.6875vw;
    margin: 0 7.5vw 0 5.625vw;
    display: inline-block;
    vertical-align: middle;
}

.pr_btn>img {
    margin: 3.75vw;
}

.pr_btn>div {
    display: inline-block;
    width: 46.875vw;
    vertical-align: middle;
    font-size: 4.375vw;
    line-height: 1.4;
}
table.type1 {
    border-collapse: separate;
    border-spacing: 0.3125vw;
    text-align: center;
    line-height: 1;
    border-collapse:collapse;
    border: 0vw;
    margin: 3.75vw 0;
}
table.type1 th {
/*    width: 18.75vw; */
    width: 40vw;
/*    padding: 3.125vw; */
    padding-top: 3.125vw;
    padding-bottom: 3.125vw;
    font-weight: bold;
    vertical-align: top;
    border-right: 0.3125vw solid #666;
    border-bottom: 0.3125vw solid #666;
    border-top: 0.3125vw solid #666;
}
table.type1 th:first-child {
/*    width: 93.75vw; */
    width: 80.75vw;
    border-top: none;
    border-bottom: none;
}
table.type1 td:first-child {
/*    width: 93.75vw; */
    width: 80.75vw;
    border-bottom: none;
    text-align: left;
    vertical-align: bottom;
}
table.type1 td {
/*    width: 18.75vw; */
    width: 40vw;
/*    padding: 3.125vw; */
    padding-top: 3.125vw;
    padding-bottom: 3.125vw;
    vertical-align: top;
    border-right: 0.3125vw solid #666;
    border-bottom: 0.3125vw solid #666;
}
table.type2 {
    border-collapse: separate;
    border-spacing: 0.3125vw;
    text-align: center;
    line-height: 1;
    border-collapse:collapse;
    border: 0vw;
    margin: 3.75vw 0;
}
table.type2 th {
    width: 40vw;
    padding: 3.125vw;
    font-weight: bold;
    vertical-align: top;
    border-right: 0.3125vw solid #666;
    border-bottom: 0.3125vw solid #666;
    border-top: 0.3125vw solid #666;
    line-height: 1.4;
}
table.type2 th:first-child {
    width: 20vw;
    border-top: none;
    border-bottom: none;
}
table.type2 td:first-child {
    width: 20vw;
    border-bottom: none;
    text-align: left;
    vertical-align: bottom;
}
table.type2 td {
    width: 40vw;
    padding: 3.125vw;
    vertical-align: top;
    border-right: 0.3125vw solid #666;
    border-bottom: 0.3125vw solid #666;
}


.company_kana {
    display:none;
}
.panel:hover {
    cursor:pointer;
}
.flow_head_title {
    color: #4193e0;
    border-bottom: 0.625vw solid #4193e0;
    font-size: 4.0625vw;
    margin-bottom: 3.125vw;
}
/*
.flow_head_title:before {
    content: "";
    width: 3.75vw;
    height: 3.4375vw;
    background: url(../img/icon_recuruit_blue.png);
    background-size: 3.75vw 3.4375vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}
*/
#area_flow .flow_head_title:before {
    content: "";
    width: 3.75vw;
    height: 3.4375vw;
    background: url(../img/icon_recuruit_blue.png);
    background-size: 3.75vw 3.4375vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}
#area_offtime .flow_head_title:before {
    content: "";
    width: 3.75vw;
    height: 3.4375vw;
    background: url(../img/icon_offtime_blue.png);
    background-size: 3.75vw 3.4375vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}
#area_personnel .flow_head_title:before {
    content: "";
    width: 3.75vw;
    height: 3.4375vw;
    background: url(../img/icon_personnel_blue.png);
    background-size: 3.75vw 3.4375vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}
#area_boss .flow_head_title:before {
    content: "";
    width: 3.75vw;
    height: 3.4375vw;
    background: url(../img/icon_president_blue.png);
    background-size: 3.75vw 3.4375vw;
    float: left;
    margin-top: 1.25vw;
    margin-right: 1.875vw;
}

.btn_pr_back {
/*    width: 9.375vw; */
    max-width:20%;
    height:auto;
    color: #4193e0;
    border: 0.3125vw solid #4193e0;
    text-align: center;
    position: relative;
    border-radius: 0.9375vw;
    margin-left: auto;
}
.pull_left {
    float:left;
    margin-right:0.78125vw;
}
/*
.pull_right {
    float:right;
}
.pull_right .img{
    text-align:right;
}
.pull_right .text{
    font-size: 3.59375vw;
}

*/

/* オフタイムSP版は画像を全部左に表示する為 */
.pull_right_offtime {
    float:left;
    margin-right:0.78125vw;
}
.pull_right_offtime .img{
    text-align:left;
}
.pull_right_offtime .text{
    font-size: 3.59375vw;
}

.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}
.clearfix {
    display: block;
}

.btn_entry.disable {
    color: #ffffff;
    background: #ff7070;;
}
.btn_keep.disable {
    color: #ffffff;
    background: #4193e0;
}
.hidden{
    display:none;
}


.offtime_pull_left {
    max-width:100%;
    height:auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1.5625vw;
}

.offtime_text{
    overflow: auto;
    word-wrap:break-word;
}

/* ビッグバナー */
#ci_big_banner {
    text-align:center;
}
#ci_big_banner img {
/* max-width:100vw; */
    max-width:100%;
    height: auto;
}

#ri_first_image {
    text-align:center;
}

/* 人事メッセージのトップ画像 */
img.pull_personnel_top {
    max-width:100%;
    height:auto;
    display:block;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:1.5625vw;
}

/* 人事メッセージのはみだし画像 */
#area_personnel .pull_right img{
    max-width:100%;
    height:auto;
    display:block;
    margin-left:auto;
    margin-right:auto;
    margin-top:2vw;
    margin-bottom:1.5625vw;
}

/* 問い合わせ窓口 */
#ci_contact_value, #cd_contact_value, #ri_contact_value, #rr_contact_value {
    font-size: 3.75vw;
    margin-bottom: 5vw;
}


/* 社長メッセージのトップ画像 */
img.pull_boss_top {
    max-width:100%;
    height:auto;
    display:block;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:1.5625vw;
}

/* 社長メッセージのはみだし画像 */
#area_boss .pull_right img{
    max-width:100%;
    height:auto;
    display:block;
    margin-left:auto;
    margin-right:auto;
    margin-top:2vw;
    margin-bottom:1.5625vw;
}



.seminar_row{
  border-bottom: 0.625vw dotted #bbbbbb;
  margin-bottom: 3.125vw;
}

.sm_head_title {
    color: #4193e0;
    border-bottom: 0.625vw solid #4193e0;
    font-size: 4.0625vw;
    margin-bottom: 3.125vw;
    margin-top: 3.125vw;
}

.sm_head_icon{
    width: 92.5vw;
    display: block;
    margin-bottom: 3.125vw;
    /* margin-bottom: 7.8125vw; */
}

.head_icon{
    font-size: 3.4375vw;
    width: 28.125vw;
    color: #ffffff;
    display: inline-block;
    margin-right: 0.46875vw;
    margin-bottom: 0.78125vw;
    text-align: center;
}

.intern_base_type1{
    background: #ffc000;
}
.intern_base_type2{
    background: #81AE29;
}
.intern_base_type3{
    background: #AF1E24;
}
.intern_base_type4{
    background: #7030A0;
}
/* 就業体験あり */
.intern_program_type{
    background: #2A99BF;
}
/* 開催日数 */
.intern_days{
    background: #2A99BF;
}
/* 開催日程 */
.intern_schedule{
    background: #2A99BF;
}
/* 経験内容 */
.intern_experience{
    background: #2A99BF;
}
/* 給与・報酬あり */
.intern_salary{
    background: #2A99BF;
}
/* 交通費支給あり */
.intern_expenses{
    background: #2A99BF;
}

.sm_intern_program_img {
    width:100%;
/*
    width: 78.125vw;
    margin: auto;
*/
    /*margin-right: 12px;*/
    /*display: inline-block;*/
    vertical-align: top;
    text-align:center;
    padding: 0.9375vw 0;
}
.sm_intern_program_img img{
    max-width:100%;
    height: auto;
    margin: 0 auto;
/*    width: 78.125vw; */
}

.sm_seminar_title{
    font-size: 3.59375vw;
    font-weight: bold;
    color: #538ED5;
    margin: 1.5625vw 0;
}

.sm_title {
    font-size: 3.59375vw;
}

.sm_value {
    font-size: 3.59375vw;
    padding: 1.5625vw 0 3.125vw;
    display: inline-block;
}
.sm_value2 {
    font-size: 3.59375vw;
    padding: 1.5625vw 0 3.125vw;
    overflow: auto;
    overflow-wrap: break-word;
    /* display: inline-block; */
}

.weekday_warning{
  color:red;
  font-weight:bold;
}
