.case .l-single strong
{
  font-weight: 700;
}
.case .l-single em
{
  font-style: italic;
}
.case .l-single s
{
  text-decoration: line-through;
}

.case .p-caseLabels
{
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
}
@media screen and (min-width: 768px)
{
  .case .p-caseLabels
  {
    margin-bottom: 2rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-caseLabels
  {
    margin-bottom: 3.90625vw;
  }
}

.case .p-caseLabels__label {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center;

  color: #fff;
  background: #ffbd24;
  font-weight: bold;
}
@media screen and (min-width: 768px)
{
  .case .p-caseLabels__label
  {
    margin: 0 2rem 1rem 0;
    min-width: 19rem;
    padding: 0 2.8rem 0 1.8rem;
    height: 3rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-caseLabels__label
  {
    margin: 0 3.90625vw 1.953125vw 0;
    min-width: 37.109375vw;
    padding: 0 4.296875vw 0 2.34375vw;
    height: 5.85938vw;
    font-size: 3.125vw;
  }
}
.case .p-caseLabels__label:after
{
  content: '';
  position: absolute;
  right: 0;
  display: block;
  border: solid transparent;
  border-right-color: #ffffff;
}
@media screen and (min-width: 768px)
{
  .case .p-caseLabels__label:after
  {
    border-width: 1.5rem 1rem 1.5rem 0;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-caseLabels__label:after
  {
    border-width: 2.92969vw 1.953125vw 2.92969vw 0;
  }
}

.case .p-caseTtl
{
  font-weight: bold;
  line-height: 1.3333333333;
}
@media screen and (min-width: 768px)
{
  .case .p-caseTtl
  {
    margin-bottom: 3rem;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-caseTtl
  {
    margin-bottom: 30px;
    font-size: 4.6875vw;
  }
}

.case .p-photoWrapper
{
  text-align: center;
}

@media screen and (min-width: 768px)
{
  .case .p-facilityPhoto--large
  {
    margin-bottom: 8rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-facilityPhoto--large
  {
    margin-bottom: 10.4166666667vw;
    height: auto;
  }
}

@media screen and (min-width: 768px)
{
  .case .p-aboutInterviewee
  {
    margin-bottom: 7.5rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-aboutInterviewee
  {
    margin-bottom: 9.765625vw;
  }
}

.case .p-aboutInterviewee__name
{
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center;

  line-height: 1.8;
}
@media screen and (min-width: 768px)
{
  .case .p-aboutInterviewee__name
  {
    margin-bottom: 3.5rem;
    padding: 2.0rem 0;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-aboutInterviewee__name
  {
    margin-bottom: 4.5572916667vw;
    padding: 2.6041666667vw 0;
    border-top: 1px solid #000;
    border-bottom: .1rem solid #000;
    font-size: 2.734375vw;
  }
}

.case .p-aboutInterviewee__label
{
  font-weight: bold;
}
@media screen and (min-width: 768px)
{
  .case .p-aboutInterviewee__label
  {
    margin-right: 3rem;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-aboutInterviewee__label
  {
    margin-right: 3.90625vw;
    font-size: 3.515625vw;
  }
}

@media screen and (min-width: 768px)
{
  .case .p-aboutInterviewee__photo
  {
    margin-bottom: 3.5rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-aboutInterviewee__photo
  {
    margin-bottom: 4.5572916667vw;
    height: auto;
  }
}

.case .p-aboutFacility
{
  background: #fffbe4;
}
@media screen and (min-width: 768px)
{
  .case .p-aboutFacility
  {
    padding: 3.5rem;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-aboutFacility
  {
    padding: 4.5572916667vw;
    font-size: 2.734375vw;
  }
}

.case .p-aboutFacility__title
{
  font-weight: bold;
  color: #ff6600;
}
@media screen and (min-width: 768px)
{
  .case .p-aboutFacility__title
  {
    margin-bottom: 1.5rem;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-aboutFacility__title
  {
    margin-bottom: 1.953125vw;
    font-size: 3.515625vw;
  }
}

@media screen and (min-width: 768px)
{
  .case .p-facilityPhoto--small
  {
    margin-bottom: 7.5rem;
    width: 60rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-facilityPhoto--small
  {
    margin-bottom: 9.765625vw;
    width: 100%;
    height: auto;
  }
}

@media screen and (min-width: 768px)
{
  .case .p-faq
  {
    margin-bottom: 6rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-faq
  {
    margin-bottom: 7.8125vw;
  }
}

.case .p-faq__q
{
  font-weight: bold;
}
@media screen and (min-width: 768px)
{
  .case .p-faq__q
  {
    margin-bottom: 1.5rem;
    padding-left: 1.4em;
    font-size: 1.8rem;
    text-indent: -1.4em;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-faq__q
  {
    margin-bottom: 1.953125vw;
    padding-left: 1.822917vw;
    font-size: 3.515625vw;
    text-indent: -1.822917vw;
  }
}
.case .p-faq__q:before
{
  content: 'Q.';
}
@media screen and (min-width: 768px)
{
  .case .p-faq__q
  {
    margin-right: 0.5rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-faq__q
  {
    margin-right: 0.651042vw;
  }
}

@media screen and (min-width: 768px)
{
  .case .p-faq__a
  {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-faq__a
  {
    font-size: 2.734375vw;
  }
}

.case .p-faq__a img
{
  display: block;
  margin: 0 auto;
  height: auto;
}
@media screen and (min-width: 768px)
{
  .case .p-faq__a img
  {
    width: 60rem !important;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-faq__a img
  {
    width: auto !important;
  }
}

.case .p-senComment
{
  font-weight: bold;
}
@media screen and (min-width: 768px)
{
  .case .p-senComment
  {
    font-size: 1.4rem;
    margin-bottom: 7.5rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-senComment
  {
    font-size: 2.734375vw;
    margin-bottom: 9.765625vw;
  }
}

.case .p-ctaModal
{
  background: rgba(0, 0, 0, .5);
}
.case .p-ctaModal__container
{
  position: relative;
}
@media screen and (min-width: 768px)
{
  .case .p-ctaModal__container
  {
    padding-top: 5rem;
    width: 108rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-ctaModal__container
  {
    width: 90.16797vw;
  }
}
.case .p-ctaModal__closeBtn
{
  position: absolute;
  z-index: 999;

  width: 4rem;
  height: 4rem;

  -webkit-transition: all .2s;

  transition: all .2s;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);

  border: solid 4px #fff;
  border-radius: 100%;
  background-color: #f60;
}
@media screen and (min-width: 768px)
{
  .case .p-ctaModal__closeBtn
  {
    top: 4.2rem;
    left: -.8rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-ctaModal__closeBtn
  {
    top: -4.29688vw;
    left: -2.60417vw;

    width: 9.11458vw;
    height: 9.11458vw;

    border: solid 4px #fff;
  }
}
.case .p-ctaModal__closeBtn::before,
.case .p-ctaModal__closeBtn::after
{
  position: absolute;
  top: 50%;
  left: 50%;

  content: '';
  -webkit-transition: all .2s;
  transition: all .2s;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);

  border-radius: 10px;
  background-color: #fff;
}
.case .p-ctaModal__closeBtn::before
{
  width: 55%;
  height: 4px;
}
.case .p-ctaModal__closeBtn::after
{
  width: 4px;
  height: 55%;
}
@media screen and (min-width: 768px)
{
  .case .p-ctaModal__closeBtn:hover
  {
    cursor: pointer;

    background-color: #fff;
  }
  .case .p-ctaModal__closeBtn:hover::before
  {
    background-color: #f60;
  }
  .case .p-ctaModal__closeBtn:hover::after
  {
    background-color: #f60;
  }
}
.case .p-ctaModal__body
{
  border-radius: 20px;
  background-color: #fff;
}
@media screen and (min-width: 768px)
{
  .case .p-ctaModal__body
  {
    padding: 2rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-ctaModal__body
  {
    padding: 2.60417vw 5.20833vw;
  }
}
.case .p-ctaModal__lead
{
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 768px)
{
  .case .p-ctaModal__lead
  {
    margin-bottom: 2rem;
    font-size: 2.4rem;
    line-height: 1.25;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-ctaModal__lead
  {
    margin-bottom: 3.90625vw;
    font-size: calc((32 / 768) * 100vw);
    line-height: 1.1875;
  }
}
.case .p-ctaModal__services {
  text-align: center;
}
.case .p-ctaModal__services .c-link__logo {
  display: inline-flex;
}
@media screen and (min-width: 768px)
{
  .case .p-ctaModal__services .c-link__logo:first-of-type img
  {
    width: 30rem;
    height: auto;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-ctaModal__services .c-link__logo:not(:first-of-type) img
  {
    display: block;
    width: 70%;
    margin: 0 auto;
  }
}
.case .p-ctaModal__divider
{
  margin: 1.6rem 0;
  border-bottom: 1px solid #ccc;
}
.case .p-ctaModal__closeText
{
  position: relative;

  display: block;

  width: -webkit-fit-content;

  width: -moz-fit-content;

  width: fit-content;
  margin: 0 auto;

  color: #fff;
  cursor: pointer;
}
@media screen and (min-width: 768px)
{
  .case .p-ctaModal__closeText
  {
    font-size: 2.2rem;
    line-height: 2.95455;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-ctaModal__closeText
  {
    width: 57.29167vw;
    font-size: calc((34 / 768) * 100vw);
    line-height: 3.26471;
  }
}
.case .p-ctaModal__closeText::before,
.case .p-ctaModal__closeText::after
{
  position: absolute;
  top: 50%;

  display: block;

  content: '';

  border-radius: 10px;
  background-color: #fff;
}
@media screen and (min-width: 768px)
{
  .case .p-ctaModal__closeText::before,
  .case .p-ctaModal__closeText::after
  {
    right: -1.85rem;

    width: .4rem;
    height: 1.7rem;
    margin-top: .2rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-ctaModal__closeText::before,
  .case .p-ctaModal__closeText::after
  {
    right: 3.90625vw;

    width: .78125vw;
    height: 3.90625vw;
    margin-top: .26042vw;
  }
}
.case .p-ctaModal__closeText::before
{
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}
.case .p-ctaModal__closeText::after
{
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}

@media screen and (min-width: 768px)
{
  .case .p-caseList__item__thumbnail
  {
    border-radius: 1rem;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-caseList__item__thumbnail
  {
    border-radius: 1.30208vw;
  }
}

.case .l-archive__item__ttl
{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

@media screen and (min-width: 768px)
{
  .case .p-caseList__item__interviewee
  {
    margin-top: 1rem;
    font-size: 1.4rem;
    text-align: right;
  }
}
@media screen and (max-width: 767px)
{
  .case .p-caseList__item__interviewee
  {
    margin-top: 1.3020833333vw;
    font-size: 2.734375vw;
  }
}
