@charset "utf-8";

* {
    margin:0;
    padding:0;
    zoom:1;
    box-sizing:border-box;
    background-repeat: no-repeat;
    list-style:none;
}
    
table{margin:0;padding:0;}

ul,ul li{
    margin:0;
    padding:0;
    list-style-type:none;
}

img {
    border:0;
    vertical-align:bottom;
    max-width:100%;
}

html {height:100%;}


p {
  margin:0;
  padding:0;
}

.fwbold {font-weight: bold;}
.fwnormal {font-weight: normal;}

.flex_c_sb {
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.flex_c_c {
    display:flex;
    align-items:center;
    justify-content:center;
}

.flex_c_l {
    display:flex;
    align-items:center;
    justify-content:left;
}

.flex_fs_sb {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
}

.flex_fs_l {
    display:flex;
    align-items:flex-start;
    justify-content:left;
}

.flex_fs_r {
    display:flex;
    align-items:flex-start;
    justify-content:right;
}

.flex_fe_sb {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
}

.flex_fe_c {
    display:flex;
    align-items:flex-end;
    justify-content:center;
}

.flex_fe_l {
    display:flex;
    align-items:flex-end;
    justify-content:left;
}

.flex_str_sb {
    display:flex;
    align-items: stretch;
    justify-content: space-between;
}

.flex_str_l {
    display:flex;
    align-items: stretch;
    justify-content: left;
}

.flex_str_c {
    display:flex;
    align-items: stretch;
    justify-content: center;
}

.flex_wrap {
    flex-wrap:wrap;
}

.mgn_t10 {
    margin-top: 10px !important;
}

.mgn_t20 {
    margin-top: 20px !important;
}

.mgn_t30 {
    margin-top: 30px !important;
}

.mgn_t50 {
    margin-top:50px !important;
}

.mgn_t80 {
    margin-top:80px !important;
}

.mgn_t100 {
    margin-top:100px !important;
}

.mgn_t150 {
    margin-top:150px !important;
}

.mgn_b30 {
    margin-bottom:30px !important;
}

.mgn_b100 {
    margin-bottom:100px !important;
}

.pdg_t20 {
    padding-top:20px !important;
}

.pdg_b10 {
    padding-bottom:10px !important;
}

.pdg_b0 {
    padding-bottom:0px !important;
}

.pdg_b100 {
    padding-bottom:100px !important;
}

.pdg_x5per {
    padding-left:5% !important;
    padding-right:5% !important;
}

.pdg_x50 {
    padding-left:50px !important;
    padding-right:50px !important;
}

.smp_pdg_0_25 {padding:0 2.5%;}

.width1000 {
    width:1000px;
}

.width1000_0a {
    width:1000px;
    margin:0 auto;
}

.ta_c {text-align:center !important;}
.ta_l {text-align:left !important;}
.ta_r {text-align:right !important;}

.width100per {width:100%;}

.red {color:var(--red);}

.fsize1 {font-size: 1rem !important;}

.relative {
    position: relative;
}

/*トップページ*/

.top_banas>ul>li {
    width:100%;
    margin-top:10px;
}

li.top_bana_li50 {
    width:49.5% !important;
}

.top_banas_smp {
    margin-top:30px;
    padding:0 2.5%;
}

.top_banas_smp>ul>li,
.top_banas_smp>ul>a {
    display: block;
    width:100%;
    margin-top:10px;
}

.top_second_box {
    width:100%;
}

select.sche_form_select,
select.sche_form_select>option {
    font-size:1.5rem;
    padding:1px 20px;
}

.mm_btn {
    cursor: pointer;
}
.mm_footer_link:hover {
    text-decoration:underline;
}

/*トップ・ブルースカイorX*/
.bluesky_box {
    width:100%;
    text-align: center;
}

.bluesky_box_smp {
    width:100%;
    text-align: center;
    margin-top:50px;
    padding:50px 5% 0 5%;
    border-top:2px dashed #ddd;
}

span.bsky_post_smp {
    display:block;
    margin-top:10px;
}

.twx {
    width:90%;
    margin:20px auto 0 auto;
}

/*トップ・sns*/
.sns_item {
    background-color:#ffffff;
    padding:20px;
    border-radius:20px;
}

a.sns {
    width:50%;
    display: block;
    align-items:center;
    
    padding:15px;
    box-sizing: border-box;
    color:#000000;
}
a.sns:visited {
    color:#000;
}
a.sns:hover {
    text-decoration:none;
    opacity:0.7;
    color:#000000;
}
a.sns:nth-child(n + 3) {
    margin-top:30px;
}

.sns_img {
    width:100%;
    text-align: center;
    
}
.sns_img img {
    width:70px;
    border-radius:10px;
}

.sns_text {
    width:100%;
    font-size:1rem;
    line-height:1.5rem;
    margin-top:10px;
}

/*トップ・イベント*/
.event_box {
    margin-top:30px;
    width:100%;
}

.normal_eventbox,
.slide_eventbox {
    width:49%;
}

.event_box_smp {
    width:100%;
}

.slide_eventbox_smp {
    width:100%;
}

.event_box_smp>div:nth-child(n + 2) {
    width:100%;
    margin-top:20px;
}

/*トップ・インフォメーション*/

.top_info_box {
    background-color:var(--white);
    margin-top:10px;
    padding:40px;
}

.mm_1,.mm_2 {
    width:49%;
}

.mm_1 {
    font-family:'メイリオ';
    font-weight:800;
}
.mm_1>span {
    font-size:1rem;
    line-height:1.3rem;
}

.mm_b {
    margin-bottom:20px;
    color:var(--black);
}

.mm_3 {
    margin-top:70px;
    text-align: center;
}

h3.mm3_h3 {
    font-family:'メイリオ';
    font-weight:800;
    font-size:2.5rem;
    color:var(--black);

}

.mm3_text {
    font-family:'メイリオ';
    font-weight:normal;
    font-size:1.7rem;
    margin-top:50px;
    color:var(--black);
}

span.mm3_text_span {
    font-size:2.7rem;
    font-weight:bold;
}

img.mm3_img {
    margin-top:10px;
    display: block;
}
img.mm3_img:hover {
    opacity:0.6;
}

.info_other {
    width:100%;
}
.info_other>img {
    width:49%;
}


.top_info_box_smp {
    background-color:var(--white);
    margin-top:10px;
    padding:20px 5% 50px 5%;
}

.mm_1_smp,.mm_2_smp {
    width:100%;
}

.mm_2_smp {
    font-family:'メイリオ';
    font-weight:800;
    margin-top:30px;
}
.mm_2_smp>span {
    font-size:1rem;
    line-height:1.3rem;
}

.mm_b_smp {
    margin-bottom:20px;
    color:var(--black);
}

.mm_3_smp {
    margin-top:50px;
    text-align: center;
}

h3.mm3_h3_smp {
    font-family:'メイリオ';
    font-weight:800;
    font-size:1.7rem;
    color:var(--black);

}

.mm3_text_smp {
    font-family:'メイリオ';
    font-weight:normal;
    font-size:1.3rem;
    margin-top:50px;
    color:var(--black);
}

span.mm3_text_span_smp {
    display:inline-block;
    margin:10px 0;
    font-size:2.2rem;
    line-height:2.2rem;
    font-weight:bold;
}

.mm3_img_smp {
    padding-top:30px;
    display: block;
}

.info_other_smp {
    margin-top:20px;
}
.info_other_smp>img {
    width:90%;
}



/*トップ以外・底部バナー*/
aside.bottom_aside {
    margin:30px auto 0 auto;
}
.bottom_aside_div {
    width:49.5% !important;
}

/*求人・メールフォーム*/
.mf_errortext {
    text-align: center;
    font-size:1.3rem;
    line-height:3rem;
    color:var(--red);
}

#mf_title {
    background-color:#9da56a;
    font-size:1.5rem;
    color:var(--white);
    text-align:center;
    padding:40px;
}

#mf_form {
    margin:100px 0;
    width: 100%;
    padding:0 50px;
}

#mf_form input,
#mf_form textarea {
    padding:5px 10px;
    font-size:1.5rem;
}
#mf_form input::placeholder,
#mf_form textarea::placeholder {
    color:#aaa;
}

.mf_q::before {
    content:"●";
}

.mf_q:not(:first-child) {
    margin-top:50px;
}

.mf_div {
    margin-top:10px;
}


.mf_ta {
    width:100%;
}

.mf_age {
    width:10%;
}

.mf_remail {
    margin-top:20px;
    color:var(--red);
}

.mf_radio {
    line-height:2.5rem;
    margin:0 auto;
    text-align: left;
    width:45%;
}

.mf_radio label {
    display:inline-block;
    margin-left:10px;
    background-color:#eeeeee;
    border:1px solid #aaaaaa;
    padding:0 15px;
    border-radius:10px;
    margin-top:10px;
    color:var(--black);
}

.mf_agree_box {
    width:100%;
    margin-top:50px;
    text-align: center;
    line-height:2.2rem;
}

.mf_agree_waku {
    font-size:0.9rem;
    line-height:1.7rem;
    border:1px dashed var(--mail);
    border-bottom:none;
    width:90%;
    margin:30px auto 0 auto;
    padding:20px;
    text-align: left;
}

.mf_agree {
    background-color:#e1e3ff;
    color:var(--mail);
    border:1px dashed var(--mail);
    border-top:none;
    width:90%;
    margin:0 auto;
    padding:15px;
    text-align: center;
}

.mf_agree_input + label {
    padding:10px 15px;
    border-radius:10px;
    display:inline-block;
    margin-left:10px;
}

.mf_agree_input:checked + label {
    background-color:var(--mail);
    color:var(--white);
}

.mf_notice {
    color:var(--red);
    margin-top:50px;
    text-align: center;
}

.mf_submit_div {
    text-align:center;
    margin-top:70px;
}

#ml_finish {
    padding:50px 0;
    text-align:left;
}
#ml_finish a {
    color:var(--red);
}

.btn_submit {
    padding:10px 20px;
    font-size:1.5rem;
    background-color:var(--mail);
    border:none;
    border-radius:5px;
    color:var(--white);
}

.btn_submit:hover {
    opacity: 0.6;
}

.error-message::before {
    content:"▲";
}