@charset "UTF-8";
p, ul {
  margin: 0;
  line-height: 1;
}
@media screen and (max-width: 1024px) {
  .br_tab {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .br_sp {
    display: block;
  }
}
.lower_visual {
  padding-top: 160px;
  margin-bottom: 219px;
}
@media screen and (max-width: 1024px) {
  .lower_visual {
    padding-top: 60px;
  }
}
.lower_visual::after {
  width: 100%;
  height: 420px;
  bottom: -219px;
  background: linear-gradient(90deg, #a77d59 0%, #4c4347 100%);
  z-index: -1;
}
.lower_visual .lower_visual_main {
  background-image: url(../media/images/flat_link_cafe/kv.jpg);
}
@media print, screen and (min-width: 1025px) {
  .lower_visual .lower_visual_main {
    aspect-ratio: 4.1739130435;
  }
}
.lower_visual .lower_visual_main .visual_title_inner {
  transform: translateY(-17px);
}
@media screen and (max-width: 767px) {
  .lower_visual .lower_visual_main .visual_title_inner {
    transform: translateY(-30px);
  }
}
.lower_visual .lower_visual_main .visual_title_inner .supp {
  display: block;
  font-size: 18px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .lower_visual .lower_visual_main .visual_title_inner .supp {
    font-size: 13px;
  }
}
@media print, screen and (min-width: 1025px) {
  .lower_visual .lower_visual_main .pankuzu {
    bottom: 59px;
  }
}
@media screen and (max-width: 767px) {
  .lower_visual .lower_visual_main .pankuzu {
    bottom: 100px;
  }
}
.lower_visual .lower_visual_main .visual_desc {
  padding: 0 20px;
  width: 100%;
  position: absolute;
  top: 72%;
  left: 50%;
  transform: translateX(-50%);
}
@media print, screen and (max-width: 1500px) {
  .lower_visual .lower_visual_main .visual_desc {
    top: 80%;
  }
}
@media screen and (max-width: 1024px) {
  .lower_visual .lower_visual_main .visual_desc {
    top: 70%;
  }
}
@media screen and (max-width: 767px) {
  .lower_visual .lower_visual_main .visual_desc {
    top: 85%;
  }
}
@media screen and (max-width: 600px) {
  .lower_visual .lower_visual_main .visual_desc {
    top: 75%;
  }
}
.lower_visual .lower_visual_main .visual_desc .desc_image {
  margin: 0 auto;
  max-width: 217px;
}
@media print, screen and (max-width: 1500px) {
  .lower_visual .lower_visual_main .visual_desc .desc_image {
    max-width: 180px;
  }
}
@media screen and (max-width: 767px) {
  .lower_visual .lower_visual_main .visual_desc .desc_image {
    max-width: 130px;
  }
}
.lower_visual .lower_visual_main .visual_desc .desc_image img {
  display: block;
  width: 100%;
}
.lower_visual .lower_visual_main .visual_desc .desc_lead {
  margin: 46px 0 0;
  text-align: center;
  color: #FFFFFF;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media print, screen and (max-width: 1500px) {
  .lower_visual .lower_visual_main .visual_desc .desc_lead {
    margin-top: 23px;
  }
}
@media screen and (max-width: 1024px) {
  .lower_visual .lower_visual_main .visual_desc .desc_lead {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .lower_visual .lower_visual_main .visual_desc .desc_lead {
    font-size: 12px;
  }
}
#main {
  background-color: #faf9f7;
  padding-bottom: 120px;
}
#main .menu .menu_inner .grad_to_r {
  background: linear-gradient(90deg, rgba(167, 125, 89, 0.2) 0%, rgba(255, 255, 255, 0.2) 100%);
}
#main .menu .menu_inner .grad_to_l {
  background: linear-gradient(270deg, rgba(167, 125, 89, 0.2) 0%, rgba(255, 255, 255, 0.2) 100%);
}
#main .menu .menu_inner .title_inner {
  padding: 56px 0 55px;
}
#main .menu .menu_inner .title_inner .title {
  font-family: "Cormorant SC", serif;
  font-weight: 300;
  font-size: 45px;
  line-height: 1.2;
  letter-spacing: 0.25em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  #main .menu .menu_inner .title_inner .title {
    font-size: 25px;
  }
}
#main .menu .menu_inner .title_inner .title::first-letter {
  color: #a77d59;
  font-size: 60px;
}
@media screen and (max-width: 767px) {
  #main .menu .menu_inner .title_inner .title::first-letter {
    font-size: 40px;
  }
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit {
  max-width: 1062px;
  margin: 0 auto;
  padding: 35px 20px 61px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 54px;
  position: relative;
}
@media screen and (max-width: 767px) {
  #main .menu .menu_inner .menu_list .menu_list_inner .menu_unit {
    display: block;
  }
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit.bread {
  padding-top: 47px;
  padding-bottom: 63px;
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit.sweets {
  padding-top: 39px;
  padding-bottom: 93px;
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_image {
  margin-top: 25px;
  flex: 0 0 281px;
}
@media screen and (max-width: 767px) {
  #main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_image {
    max-width: 200px;
    margin: 0 auto;
  }
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_image img {
  display: block;
  width: 100%;
  border-radius: 10px;
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content {
  flex: 1 1 auto;
}
@media screen and (max-width: 767px) {
  #main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content {
    max-width: 500px;
    margin: 0 auto;
  }
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .content_title {
  font-family: "Cormorant SC", serif;
  font-weight: 300;
  font-size: 30px;
  letter-spacing: 0.25em;
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .content_title::first-letter {
  color: #a77d59;
  font-size: 42px;
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .content_lead {
  margin-top: 0;
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .content_lead {
    font-size: 13px;
  }
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .menu_items {
  margin-top: 60px;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 32px;
  list-style: none;
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .menu_items .item_name {
  font-size: 18px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .menu_items .item_name {
    font-size: 16px;
  }
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .menu_items .item_name span {
  font-size: 12px;
  letter-spacing: 0.05em;
  position: relative;
  top: -2px;
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .etc {
  margin-top: -19px;
  font-size: 14px;
  text-align: right;
  letter-spacing: 0.1em;
}
#main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .support {
  margin-top: 15px;
  color: #A77D59;
  font-size: 15px;
  text-align: right;
  letter-spacing: 0.115em;
}
@media screen and (max-width: 767px) {
  #main .menu .menu_inner .menu_list .menu_list_inner .menu_unit .menu_content .support {
    font-size: 13px;
  }
}
#main .concept {
  background: linear-gradient(90deg, #a77d59 0%, #4c4347 100%);
  position: relative;
  overflow: hidden;
}
#main .concept::before {
  margin: 0 auto;
  content: "";
  display: block;
  width: 100%;
  height: 290px;
  background: url(../media/images/flat_link_cafe/gallery_image_pc.jpg) no-repeat center center / 2030px;
}
@media screen and (max-width: 767px) {
  #main .concept::before {
    height: auto;
    aspect-ratio: 1.4992503748;
    background: url(../media/images/flat_link_cafe/gallery_image_sp.jpg) no-repeat center center / 100%;
  }
}
#main .concept .concept_inner {
  padding: 0 20px;
}
#main .concept .concept_inner .concept_lead {
  margin-top: 50px;
  color: #FFFFFF;
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 2;
}
#main .concept .concept_inner .concept_lead span {
  margin-top: 31px;
  display: block;
  font-size: 15px;
  letter-spacing: 0.115em;
}
@media screen and (max-width: 767px) {
  #main .concept .concept_inner .concept_lead span {
    font-size: 13px;
  }
}
#main .concept .concept_inner .story {
  margin: 69px auto 0;
  padding: 39px 20px 77px;
  max-width: 1220px;
  background-color: rgba(255, 255, 255, 0.1);
}
#main .concept .concept_inner .story .story_image {
  margin: 0px auto;
  max-width: 220px;
}
#main .concept .concept_inner .story .name_lead, #main .concept .concept_inner .story .logo_lead {
  color: #FFFFFF;
  text-align: center;
  letter-spacing: 0.1em;
  line-height: 2;
}
#main .concept .concept_inner .story .name_lead {
  margin-top: 20px;
}
#main .concept .concept_inner .story .logo_lead {
  margin-top: 30px;
}
#main .concept .access {
  margin: 80px 0 117px auto;
  padding-right: 20px;
  max-width: 1920px;
  display: flex;
  gap: 80px;
}
@media screen and (max-width: 1024px) {
  #main .concept .access {
    display: block;
    padding-left: 20px;
  }
}
#main .concept .access .google_map {
  max-width: 960px;
  width: 100%;
}
@media screen and (max-width: 1420px) {
  #main .concept .access .google_map {
    width: 60%;
  }
}
@media screen and (max-width: 1110px) {
  #main .concept .access .google_map {
    width: 55%;
  }
}
@media screen and (max-width: 1024px) {
  #main .concept .access .google_map {
    max-width: unset;
    width: 100%;
  }
}
#main .concept .access .google_map iframe {
  width: 100%;
  height: 450px;
  filter: sepia(33%);
}
@media screen and (max-width: 767px) {
  #main .concept .access .google_map iframe {
    height: 335px;
  }
}
#main .concept .access .desc_wrap {
  margin-top: 34px;
}
#main .concept .access .desc_wrap .access_desc {
  color: #FFFFFF;
  letter-spacing: 0.1em;
  line-height: 2;
}
@media screen and (max-width: 1024px) {
  #main .concept .access .desc_wrap .access_desc {
    text-align: center;
  }
}
#main .concept .access .desc_wrap .banner_cafe {
  margin: 42px auto 0;
  max-width: 530px;
}
#main .concept .access .desc_wrap .banner_cafe a {
  display: block;
}
#main .concept .access .desc_wrap .banner_cafe a img {
  display: block;
  width: 100%;
}
#main .recruit .recruit_bg {
  height: 580px;
  background: linear-gradient(90deg, #ebcd88 0%, #ed829c 100%);
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_bg {
    height: 400px;
  }
}
#main .recruit .recruit_bg .recruit_title {
  padding-top: 160px;
  color: #FFFFFF;
  font-size: 36px;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_bg .recruit_title {
    padding-top: 80px;
    font-size: 18px;
  }
}
#main .recruit .recruit_inner {
  padding: 0 20px;
  position: relative;
  counter-reset: number;
}
#main .recruit .recruit_inner .recruit_box {
  max-width: 1220px;
  width: 100%;
  position: absolute;
  top: -150px;
  left: 50%;
  transform: translateX(-50%);
}
#main .recruit .recruit_inner .recruit_box::before {
  content: "";
  display: block;
  width: 100%;
  height: 230px;
  background-color: #faf9f7;
  position: absolute;
  top: -68px;
  border-radius: 10px;
  z-index: -1;
}
#main .recruit .recruit_inner .recruit_box .box_title {
  font-size: 24px;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_box .box_title {
    font-size: 15px;
  }
}
#main .recruit .recruit_inner .recruit_box .box_lead {
  padding: 0 20px;
  max-width: 910px;
  margin: 57px auto 0;
  line-break: anywhere;
  letter-spacing: 0.12em;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_box .box_lead {
    margin-top: 30px;
    font-size: 13px;
  }
}
#main .recruit .recruit_inner .recruit_section {
  margin: 0 auto;
  padding-top: 158px;
  max-width: 1080px;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section {
    padding-top: 100px;
  }
}
@media print, screen and (min-width: 768px) {
  #main .recruit .recruit_inner .recruit_section.feature {
    padding-top: 140px;
  }
}
#main .recruit .recruit_inner .recruit_section .section_header {
  position: relative;
}
#main .recruit .recruit_inner .recruit_section .section_header::before {
  position: absolute;
  top: -40%;
  left: 48%;
  display: block;
  content: "";
  counter-increment: number;
  content: "0" counter(number);
  background: linear-gradient(to left, #ed829c, #fce3a9);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 24px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .section_header::before {
    top: -80%;
  }
}
#main .recruit .recruit_inner .recruit_section .section_header .section_title {
  font-size: 36px;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .section_header .section_title {
    font-size: 18px;
  }
}
#main .recruit .recruit_inner .recruit_section .target_list {
  margin: 55px auto 0;
  padding-left: 18px;
  max-width: 860px;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .target_list {
    margin-top: 30px;
  }
}
#main .recruit .recruit_inner .recruit_section .target_list .target_item {
  list-style: none;
  line-height: 2;
  letter-spacing: 0.1em;
  position: relative;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .target_list .target_item {
    font-size: 12px;
  }
}
#main .recruit .recruit_inner .recruit_section .target_list .target_item::before {
  content: "•";
  position: absolute;
  left: -1.5%;
  font-size: 12px;
  top: 6%;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .target_list .target_item::before {
    left: -12px;
  }
}
#main .recruit .recruit_inner .recruit_section .info_grid {
  margin: 72px auto 0;
  display: flex;
  justify-content: center;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .info_grid {
    display: block;
    margin-top: 30px;
  }
}
#main .recruit .recruit_inner .recruit_section .info_grid .info_card {
  padding: 40px 47px 55px;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .info_grid .info_card:not(:first-of-type) {
    margin-top: 20px;
  }
}
#main .recruit .recruit_inner .recruit_section .info_grid .info_card .card_icon.service {
  width: 38px;
}
#main .recruit .recruit_inner .recruit_section .info_grid .info_card .card_icon.reward {
  margin-bottom: 6px;
  width: 43px;
  transform: translate(0px, 4px);
}
#main .recruit .recruit_inner .recruit_section .info_grid .info_card .card_icon.purpose {
  margin-bottom: 3px;
  width: 43px;
  transform: translate(-3px, 2px);
}
#main .recruit .recruit_inner .recruit_section .info_grid .info_card .card_icon img {
  display: block;
  width: 100%;
}
#main .recruit .recruit_inner .recruit_section .info_grid .info_card .card_title {
  margin-top: 8px;
  font-size: 20px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  #main .recruit .recruit_inner .recruit_section .info_grid .info_card .card_title {
    font-size: 18px;
  }
}
#main .recruit .recruit_inner .recruit_section .info_grid .info_card .card_text {
  margin-top: 40px;
  font-size: 14px;
  letter-spacing: 0.15em;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .info_grid .info_card .card_text {
    margin-top: 20px;
    font-size: 12px;
  }
}
#main .recruit .recruit_inner .recruit_section .service_grid {
  margin: 65px auto 0;
  display: flex;
  justify-content: center;
  gap: 10px;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .service_grid {
    display: block;
    margin-top: 30px;
  }
}
#main .recruit .recruit_inner .recruit_section .service_grid .service_card {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .service_grid .service_card:not(:first-of-type) {
    margin-top: 20px;
  }
}
#main .recruit .recruit_inner .recruit_section .service_grid .service_card .service_content {
  padding: 22px 50px 55px;
}
#main .recruit .recruit_inner .recruit_section .service_grid .service_card .service_content .service_name {
  font-size: 24px;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .service_grid .service_card .service_content .service_name {
    font-size: 18px;
  }
}
#main .recruit .recruit_inner .recruit_section .service_grid .service_card .service_content .service_name::after {
  content: "";
  display: block;
  margin: 21px auto 0;
  background-image: linear-gradient(135deg, #fce3a9 0%, #ed829c 100%);
  width: 50px;
  height: 1px;
}
#main .recruit .recruit_inner .recruit_section .service_grid .service_card .service_content .service_sub {
  margin-top: 21px;
  font-size: 18px;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1024px) {
  #main .recruit .recruit_inner .recruit_section .service_grid .service_card .service_content .service_sub {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .service_grid .service_card .service_content .service_sub {
    font-size: 15px;
  }
}
#main .recruit .recruit_inner .recruit_section .service_grid .service_card .service_content .service_description {
  margin-top: 27px;
  font-size: 14px;
  letter-spacing: 0.109em;
  line-height: 2;
  line-break: anywhere;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .service_grid .service_card .service_content .service_description {
    font-size: 12px;
  }
}
#main .recruit .recruit_inner .recruit_section .recruit_text {
  margin-top: 90px;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 1024px) {
  #main .recruit .recruit_inner .recruit_section .recruit_text {
    font-size: 15px;
  }
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .recruit_text {
    font-size: 13px;
  }
}
#main .recruit .recruit_inner .recruit_section .document {
  margin-top: 35px;
  padding: 30px;
  background-color: #F6F3EF;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .document {
    padding: 15px;
  }
}
#main .recruit .recruit_inner .recruit_section .document .document_link {
  padding: 37px 30px 39px;
  display: block;
  background: #fff;
  color: inherit;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .document .document_link {
    padding: 15px;
  }
}
#main .recruit .recruit_inner .recruit_section .document .document_link .document_name {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 45px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .document .document_link .document_name {
    gap: 22px;
  }
}
#main .recruit .recruit_inner .recruit_section .document .document_link .document_name::before {
  content: "";
  display: block;
  width: 30px;
  height: 25px;
  background: url(../media/images/common/icon_dl.png) no-repeat center / 30px;
  transform: translateX(25px);
}
@media screen and (max-width: 767px) {
  #main .recruit .recruit_inner .recruit_section .document .document_link .document_name::before {
    background-size: 20px;
    transform: translateX(12px);
  }
}
/*# sourceMappingURL=./cafe.css.map */