@charset "utf-8";
/*half共通*/
.half_h3_white,
.half_h3_black {
    font-size: 5rem;
    line-height:4rem;
}

.half_h3_white {
    text-align: left;
    color:var(--half1_gray);
}

.half_h3_black {
    text-align: right;
    color:var(--half2_gray);
    margin-left:auto;
}

.half_bottom {
    background-color: var(--white);
    padding-bottom:50px;
}

.swiper_half {
    border-bottom:10px solid var(--line_gray);
}

.half_cont_white {
    padding:calc(65px + 130px) 5% 50px 5%;
    background-color:var(--white);
    color:var(--black);
    background-image:url(/img/top_flower_clr_half.webp);
    background-position:right -50px;
    background-size:50vw;
}
.half_cont_black {
    padding:calc(65px + 130px) 5% 50px 5%;
    background-color:var(--black);
    color:var(--white);
    background-image:url(/img/top_flower_mono_half.webp);
    background-position:left -50px;
    background-size:50vw;
    
}

.half_top_text_white,
.half_top_text_black {
    font-size:1.1rem;
    line-height:1.7rem;
}

.half_top_text_white {
    text-align: left;
}
.half_top_text_black {
    text-align: right;
}

.half_top_text_white>span {
    background-color:var(--black);
    color:var(--white);
    padding:2px 10px;
}
.half_top_text_black>span {
    background-color:var(--white);
    color:var(--black);
    padding:2px 10px;
}

.half_fukidashi {
  position: relative;
  display: inline-block;
  margin: 50px auto 0 auto;
  padding: 10px 20px;
  min-width: 120px;
  max-width: 100%;
  font-size: 1.3rem;
  line-height:2.3rem;
  background: var(--enter_green);
  color:var(--white);
  text-align: left;
  border-right:1px solid var(--enter_green);
  border-radius:10px;
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-duration: 0.4s;
  animation-name: yurayura;
}

@keyframes yurayura {
  0% {
    left: -3px;
  }
  100% {
    left: 3px;
  }
}

.half_fukidashi:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -20px;
  border: 20px solid transparent;
  border-left: 20px solid var(--enter_green);
}

.half_fukidashi p {
  margin: 0;
  padding: 0;
}


/* index */
.ind_top_bsky {
    width:100%;
}

.ind_top_other {
    width:90%;
    margin:0 auto;
}

.sns_o_x {
    width:100%;
    margin-top:30px;
}
.sns_o_x>a {
    display: block;
    background-color:var(--black);
    color:var(--white);
    background-image:url(/img/icon/icon_x.webp);
    background-size:45px;
    background-position:20px center;
    padding:20px 20px 20px 90px;
    font-size:1.2rem;
}
.sns_o_x>p {
    font-size:1rem;
    text-align: right;
}

.sns_o_insta {
    width:100%;
    margin-top:15px;
}
.sns_o_insta>a {
    display: block;
    background-color:var(--white);
    color:var(--black);
    background-image:url(/img/icon/icon_insta.webp);
    background-size:45px;
    background-position:20px center;
    padding:20px 20px 20px 90px;
    font-size:1.2rem;
    border:2px solid var(--black);
}
.sns_o_insta>p {
    font-size:1rem;
    text-align: right;
}

.sns_o_x>a:hover,
.sns_o_insta>a:hover {
    opacity:0.6;
}

.swiper_box {
    width:100%;
    position: relative;
    margin-bottom:80px;
}
.swiper_box:last-child {
    margin-bottom:30px;
}

.ind_sche_absence {
    opacity:0.6;
}

.sche_dash_border {
    height:1px;
    border-top:1px dashed var(--black);
    margin-right:calc(50% - 50vw);
    margin-bottom:80px;
}

.sche_date {
    background-color:var(--black);
    color:var(--white);
    display:inline-block;
    padding:15px 40px;
    position:absolute;
    top:-25px;
    left: 0;
    font-size:1.1rem;
}

.swiper_1,
.swiper_2,
.swiper_3,
.swiper_4,
.swiper_5 {
  max-width: 95%;
}

.swiper-slide {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
  color: #ffffff;
  width: 100%;
  height: 100%;
  text-align: center;
}

.swiper-button-prev_0,
.swiper-button-prev_1,
.swiper-button-prev_2 {
    background-image:url(/img/icon/icon_prev.webp);
    background-size:contain;
    position:absolute;
    left:0px;
    top:60%;
    width:30px;
    height:50px;
}

.swiper-button-next_0,
.swiper-button-next_1,
.swiper-button-next_2 {
    background-image:url(/img/icon/icon_next.webp);
    background-size:contain;
    position:absolute;
    right:0px;
    top:60%;
    width:30px;
    height:50px;
}

.swiper-button-prev_0:after,
.swiper-button-prev_1:after,
.swiper-button-prev_2:after,
.swiper-button-next_0:after,
.swiper-button-next_1:after,
.swiper-button-next_2:after {
 display: none;
}


a.sche_link {
    width:100%;
    margin:0 auto;
    display:block;
    color:var(--black);
    background-color:var(--light_gray);
    padding:10px;
}

.sche_l_img {
    width:50%;
}
.sche_l_img>img {
    width:200px;
}

.sche_l_text {
    width:48%;
}

.sche_l_text_labels>div {
    font-size:1rem;
    width:100%;
    padding:5px 0;
    text-align:center;
}

.sche_l_text_labels1 {
    background-color:var(--white);
    border:1px solid var(--black);
}
.sche_l_text_labels2 {
    margin-top:5px;
    background-color:var(--light_red);
    color:var(--white);
}

.sche_l_text_label_empty {
    width:100%;
    height:30px;
}

p.sche_l_text_name {
    margin:40px 0 25px 0;
    font-size:1.7rem;
    line-height:1.5rem;
}
p.sche_l_text_name>span {
    font-size:1.2rem;
}

.sche_l_text_3size {
    font-size:1.1rem;
}

.sche_l_text_time {
    width:100%;
    margin-top:10px;
    padding:10px 0;
    font-size:2rem;
}

.sche_l_text_time>span {
    font-size: 1rem;
    line-height:2rem;
}

.normal_eventbox {
    width:100%;
    text-align: center;
}

.pop {
    margin-top:20px;
    width:100%;
    text-align: center;
}

.pop_item {
    margin-top:10px;
    width:100%;
    text-align: center;
}
.pop_item img {
    max-width:80%;
}

section.syame {
    padding:30px 0;
    background-color:var(--line_gray);
}

/* companion */
ul.comp_list_ul {
    width:100%;
}

ul.comp_list_ul li {
    width:49%;
}
ul.comp_list_ul li:nth-child(n + 3) {
    margin-top:20px;
}
ul.comp_list_ul li:nth-child(2n + 1) {
    margin-right:2%;
}

.comp_list {
    margin:50px 0;
}

a.comp_list_a {
    display:block;
    width:100%;
    padding:10px 5%;
    background-color:var(--line_gray);
}

.comp_list_imgbox {
    width:100%;
    margin-top:10px;
}
.comp_list_imgbox>img {
    width:100%;
}

.comp_text {
    width:100%;
}

.comp_name {
    font-size:1.5rem;
    text-align: center;
    margin:10px 0;
}

.comp_new {
    font-size:1.2rem;
}

.comp_l_text_3size {
    font-size:1.3rem;
    text-align: center;
}

/* profile */

.prof_img {
    width:100%;
}
.prof_img img {
    max-width:100%;
}

.prof_img_main {
    width:100%;
}

.prof_img_small {
    width:100%;
}
ul.prof_img_small_ul {
    width:100%;
}

ul.prof_img_small_ul li {
    width:calc(95vw / 5 - 2%);
    margin:10px 1%;
}

img.img_thumb {
    cursor: pointer;
    border:1px solid #ccc;
}


h2.prof_obi_h2 {
    font-size:1.5rem;
    background-color:var(--line_gray);
    color:var(--black);
    padding:30px 0;
}

.prof_new {
    display:inline-block;
    font-size:1.5rem;
    margin-right:20px;
}

.prof_info {
    width:100%;
}

.prof_3size {
    margin-top:30px;
    font-size:2rem;
    text-align: center;
}

.prof_l_text_labels {
    margin-top:10px;
    text-align: center;
}

.prof_l_text_labels1 {
    width:49%;
    background-color:var(--white);
    border:1px solid var(--black);
}
.prof_l_text_labels2 {
    width:49%;
    background-color:var(--light_red);
    color:var(--white);
}

.prof_qa_box {
    overflow: hidden;
    margin-top:30px;
}

table.prof_qa_tbl {
    width:100%;
}

table.prof_qa_tbl td {
    padding:5px 10px;
    text-align: center;
    font-size:1.1rem;
}

table.prof_qa_tbl tr:nth-child(2){
    border-top:1px dashed var(--brown);
}

td.prof_question,
td.prof_question2 {
    width:40%;
    background-color:var(--line_gray);
}

td.prof_answer,
td.prof_answer2 {
    width:60%;
    background-color:var(--white);
    color:var(--black);
    text-align: left !important;
    padding:10px 10px 30px 10px !important;
}

td.prof_question2,
td.prof_answer2 {
    border-top:1px solid var(--white);
}

.prof_shukin {
    margin:30px 0;
}

ul.prof_shukin_ul {
    width:100%;
}

ul.prof_shukin_ul li {
    width:calc((100% / 3) - 1.2%);
    margin-left:1.5%;
    text-align: center;
    background-color:var(--white);
    border-radius:10px;
    padding:15px 0;
    font-size:1.4rem;
    line-height:2.3rem;
}
ul.prof_shukin_ul li:nth-child(5n + 1){
    margin-left:0;
}
ul.prof_shukin_ul li:nth-child(n + 6){
    margin-top:20px;
}

.prof_sk_box {border:1px solid var(--half2_gray);}

.prof_comment {
    padding:30px 0;
    margin-top:30px;
    background-color:var(--line_gray);
}

p.prof_comment_title {
    font-size:1.5rem;
    color:var(--black);
}

.prof_comment_box {
    margin-top:10px;
    width:100%;
    padding:20px 5%;
    background-color:var(--white);
    border-radius:10px;
}

.prof_comment_box>p {
    line-height:2rem;
    text-align: left !important;
    word-break: break-all;
}

.prof_urls {
    margin-top:50px;
}

.prof_urls>a {
    display: block;
    width:49.5%;
    background-color: var(--black);
    color:var(--white);
    padding:15px 0;
    text-align: center;
    border-radius:5px;
}
.prof_urls>a:nth-child(n + 3) {
    margin-top:10px;
}


.prof_urls>a:hover {
    opacity:0.6;
}

ul.prof_op_ul {
    margin-top:10px;
}

ul.prof_op_ul>li {
    display:inline-block;
    margin:5px;
    padding:15px 20px;
    font-size:1.3rem;
    line-height:1.3rem;
    border-radius: 10px;
}

/*system*/
h3.sys_title_h3 {
    width:80%;
    font-size:1.5rem;
    text-align:center;
    padding-bottom:3px;
    border-bottom:3px solid var(--brown);
    margin:0 auto 50px auto;
    border-bottom:1px dashed var(--black);
}


ul.sys_co_ul_white {
    width:100%;
    padding:30px 5%;
    font-size:1.5rem;
    border:solid 0.5px var(--black);
}
ul.sys_co_ul_black {
    width:100%;
    padding:30px 5%;
    font-size:1.5rem;
    border:solid 0.5px var(--white);
    margin-left:auto;
}

ul.sys_co_ul_white li:nth-child(n + 2),
ul.sys_co_ul_black li:nth-child(n + 2) {
    margin-top:10px;
    padding-top:10px;
}
ul.sys_co_ul_white li:last-child {
    border-top:1px dashed var(--black);
    margin-top:20px;
    padding-top:20px;
}
ul.sys_co_ul_black li:last-child {
    border-top:1px dashed var(--white);
    margin-top:20px;
    padding-top:20px;
}

.sys_pricelist_item {
    text-align:left;
    padding-left:20px;
    width:50%;
}
.sys_pricelist_item>span {
    font-size:1.2rem;
}

.sys_pricelist_price {
    width:50%;
    text-align: right;
    padding-right:20px;
}

.sys_kuro_caption {
    background-color:var(--enter_blue);
    width:100%;
    margin-top:10px;
    padding:3px 10px;
    line-height:1.3rem;
    font-size:0.9rem;
    text-align: left;
}

.sys_monshin_box {
    width:100%;
    margin:0 0 0 auto;
    padding:20px 0;
    line-height:1.5rem;
    font-size:1.1rem;
    text-align: left;
}

a.sys_monshin_a {
    width:95%;
    display:block;
    background-color:var(--red);
    border:1px solid var(--white);
    color:var(--white);
    border-radius:10px;
    background-image:url(/img/icon/icon_pdf.webp);
    background-size:30px;
    background-position:30px center;
    padding:20px 20px 20px 90px; 
    margin:20px auto 0 auto;
}
a.sys_monshin_a:hover {
    opacity:0.6;
}

.sys_op_item {display:inline-block;}
.sys_op_price {display:inline-block;}

.sys_op_caption {
    text-align: center;
}

.sys_poikatsu {
    display:block;
    width:90%;
    font-size:1rem;
    background-color:var(--red);
    margin:5px auto 0 auto;
    padding:5px 10px;
    text-align:left;
}

.sys_op {
    width:90%;
    margin:0 auto;
    padding:10px 5%;
    background-color:var(--white);
    border:2px solid var(--black);
}

.sys_op50 {
    width:45%;
    font-size:1.3rem;
}
.sys_op50:nth-child(n + 3) {
    margin-top:15px;
}

.sys_op_all {
    font-size:1.3rem;
    padding:10px 5%;
    border-top:1px dashed var(--brown);
}
.sys_op_all small {
    font-size: 1.1rem;
}

.sys_bottom_box {
    margin-top:30px;
}

img.sys_pay_cardimg {
    width:70%;
}

.sys_pay_c_text {
    padding:30px 5%;
}

.beg_kinshi {
    margin-top:30px;
}

.beg_ks_text {
    background-color:var(--white);
    padding:20px 5%;
    font-size:1.2rem;
    line-height:1.6rem;
    color:var(--red);
    border:1px solid var(--red);
}
.beg_ks_text>p:nth-child(n + 2) {
    margin-top:15px;
}

/*service*/
.ser_img {
    width:100%;   
}

.ser_normal_texts_white {
    width:100%;
}

.ser_normal_texts_box {
    width:97%;
}

.ser_normal_texts_number {
    font-size:3rem;
    width:40px;
}

.ser_normal_texts_text {
    width:calc(100% - 60px);
    font-size:1rem;
    text-align: left;
}

.ser_black_texts {
    width:100%;
    margin-left:auto;
    background-image:url(/img/flower_bg_mono_sp.webp);
    background-size:cover;
    background-position:center center;
    color:var(--white);
    border-radius:10px;
    border:1px solid var(--white);
    padding:40px 5% ;
    text-align: center;
    text-align: left;
    line-height:2rem;
}

.ser_black_texts>p:nth-child(n + 2) {
    margin-top:30px;
}

/* access*/
.acc_map {
    width:100%;
}
#map {
    width:100%;
    height:300px;
    border-radius:10px;
    border:1px solid var(--brown);
}

.acc_text {
    margin-top:30px;
    width:100%;
}

.acc_station {
    font-size:1.5rem;
    text-align: center;
    line-height:2rem;
}

.acc_station:nth-child(n + 2) {
    margin-top:30px;
}

/*recruit*/
.rec_cont {
    text-align: center;
}

h2.rec_top_h2 {
    font-size:2rem;
    width:90%;
    text-align: center;
    margin:60px auto;
}
h2.rec_top_h2>span {
    display:block;
    font-size:1.5rem;
    border-top:1px dashed var(--black);
    padding-top:10px;
    margin-top:10px;
}

h2.rec_h2 {
    display: inline-block;
    border:1px solid var(--black);
    padding:20px 10%;
    font-size: 1.7rem;
}

.rec_safety_title {
    width:100%;
    text-align: center;
    font-size:3rem;
    line-height:3rem;
}

.rec_safety_title>p {
    display:inline-block;
    padding:0 5px;
} 
.rec_safety_title>p:nth-child(n + 2) {
    margin-top:5px;
}

.rec_safety_text {
    width:90%;
    text-align: left;
    font-size:1.2rem;
    line-height:2rem;
    margin:30px auto;
}

.rec_years {
    margin-top:80px;
    font-size:2.5rem;
    line-height:3rem;
}
.rec_years>span {
    display:inline-block;
    font-size:1.5rem;
    line-height:2.2rem;
    margin-top:10px;
}

.rec_reward_text {
    text-align: left;
    margin:30px auto 0 auto;
    font-size:1.2rem;
    line-height:2rem;
    width:90%;
}

.rec_gray_area {
    margin-top:30px;
    padding:50px 0;
    background-color:var(--line_gray);
    background-image:url(/img/top_flower_clr.webp),url(/img/top_flower_mono.webp);
    background-size:400px,400px;
    background-position:calc(50% - 150px) -50px,calc(50% + 150px) bottom;
}

.rec_ga_title {
    display:inline-block;
    text-align: center;
    font-size:1.5rem;
    line-height:2.3rem;
    padding:5px 20px;
    background-color:rgba(255,255,255,0.7);
}

.rec_ga_white_box {
    background-color:var(--white);
    width:90%;
    margin:30px auto;
    border-radius:10px;
    padding:20px 5%;
}

table.rec_ga_tbl {
    width:100%;
    text-align: right;
    font-size:1.3rem;
}

table.rec_ga_tbl td {
    padding:10px 0;
}

.rec_ga_tdleft {
    width:100px;
}

p.rec_ga_bottom_text {
    text-align: center;
    font-size:1.3rem;
    background-color:var(--red);
    color:var(--white);
    padding:10px 0;
    width:90%;
    margin:0 auto;
}

.rec_items {
    margin:50px auto;
}

.rec_items1 {
    width:90%;
    text-align: center;
    margin:0 auto;
}

.rec_items2 {
    width:100%;
    margin:0 auto;
}

.rec_item2_item {
    margin-top:50px;
}

h3.rec_items_h3 {
    font-size:2rem;
    line-height:2rem;
    padding:0 10px;
    border-bottom:2px solid var(--brown);
    display:inline-block;
}

table.rec_amount_tbl {
    width:100%;
    margin-top:10px;
    font-size:1.4rem;
    text-align: right;
}

.rec_amount_other {
    width:49%;
    padding:10px 0;
    font-size:1.2rem;
    line-height:1.2rem;
    border-radius:5px;
    margin-top:7px;
    color:var(--white);
}


.rec_items2 p {
    margin-top:30px;
    text-align: left;
    font-size:1.1rem;
    line-height: 1.8rem;
}

.rec_oubo {
    margin-bottom:80px;
}

.rec_tel {
    font-size: 1.5rem;
    text-align: center;
}

.rec_line {
    display: inline-block;
    width:50%;
    margin-top:10px;
}

.rec_rel_btn {
    display:block;
    padding:10px 0;
    width:80%;
    text-align: center;
    background-color:var(--enter_blue);
    color:var(--white);
    border-radius: 5px;
    margin:0 auto;
}


/*for_english*/
.eng_cont {
    text-align: center;
    font-size:1.7rem;
    line-height:2.8rem;
    margin-bottom:150px;
}

.eng_cont p {
    margin-top:30px;
    padding-left:30px;
}

h2.eng_top_h2 {
    text-align: center;
    font-size:2rem;
    margin:50px 0;
    display: inline-block;
    color:var(--enter_blue);
    padding:0 10px;
}

.eng_services,
.eng_note,
.eng_rules {
    text-align: left;
    line-height:2rem;
}

.eng_services span,
.eng_note span,
.eng_rules span {
    font-size:2rem;
    background-color:var(--black);
    color:var(--white);
    display: inline-block;
    padding:3px 10px;   
    text-align: left;
}

.eng_note {
    background-color:var(--line_gray);
    padding:50px 0;
}

a.eng_top_link {
    display: block;
    width:80%;
    background-color:var(--enter_green);
    color:var(--white);
    padding:10px 0;
    border-radius:5px;
    font-size:1.5rem;
    margin:80px auto 0 auto;
}
a.eng_top_link:hover {
    opacity: 0.6;
}