@font-face {
  font-family: "HiraginoMinthyo";
  src: url(../font/HiraginoMinthyo.OTF);
}
html, body {
  color: #000;
  font-family: "HiraginoMinthyo", "游明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "Yu Mincho", "游明朝体", "HGS明朝E", "HG明朝E", "Hiragino Mincho Pro W3", "Hiragino Mincho Pro", "Noto Sans JP", "Noto Serif", "Helvetica Neue", "Helvetica", "Arial", "sans-serif";
}
/*--------------------------------------------------------------------------*/
/* Common
---------------------------------------------------------------------------------*/
body {
  position: relative;
  margin: 0;
}
h1 {
  color: white;
  line-height: 1.2;
}
h2 {
  font-size: 2.5em;
  text-align: center;
  font-weight: 500;
}
h2.md {
  font-size: 2.5em;
}
h2.sm {
  font-size: 2.0em;
}
h3 {
  font-size: 2.0em;
}
@media not all and (min-width: 960px) {
  h3 {
    font-size: 1.6em;
  }
}
h1, h2, h3, h4 {
  line-height: 1.3;
  display: block;
}
p, td, label, ul, li, strong {
  line-height: 2;
}
p {
  white-space: pre-line;
  font-size: 0.91em;
}
main {
  position: relative;
}
.recommend, .about, .detail, .point-wrap {
  background: #fafafa;
}
@media not all and (min-width: 960px) {
  html, body {
    font-size: calc(10vw / 2.7);
  }
  h2 {
    font-size: 2em;
  }
  h2.md {
    font-size: 1.8em;
  }
  h2.sm {
    font-size: 1.4em;
  }
}
.m-case__body {
  display: grid;
  margin-bottom: 0px;
}
.c-case-card {
  width: 100%;
  height: 100%;
  font-size: min(13 / 375 * 100 * var(--vw, 1vw), 20.8px);
  border-width: 1px;
  border-style: solid;
  border-color: rgb(186, 186, 186);
  border-image: initial;
}
.c-case-card__title {
  background-color: rgb(172, 165, 151);
  font-family: "Shippori Mincho", -apple-system, BlinkMacSystemFont, 游明朝体, "Yu Mincho", YuMincho, 游明朝, "Hiragino Mincho ProN", "ヒラギノ明朝 ProN W3", HiraMinProN-W3, "Hiragino Mincho Pro", "ヒラギノ明朝 Pro W3", Georgia, serif;
  color: rgb(255, 255, 255);
  font-size: min(17 / 375 * 100 * var(--vw, 1vw), 27.2px);
  line-height: 1.2;
  font-weight: 600;
  padding: min(9 / 375* 100* var(--vw, 1vw), 14.4px) min(10 / 375* 100* var(--vw, 1vw), 16px);
  border-width: 1px 1px 0px;
  border-style: solid solid solid;
  border-color: rgb(172, 165, 151) rgb(172, 165, 151) rgb(172, 165, 151);
  border-image: initial;
  border-bottom: 0px;
}
.c-case-card__inner {
  padding: min(14 / 375* 100* var(--vw, 1vw), 22.4px);
}
.c-case-card .l-case-pic {
  margin-bottom: 0px;
}
.c-supervisor {
  border-width: 1px;
  border-style: solid;
  border-color: rgb(186, 186, 186);
  border-image: initial;
  padding: 5px 5px 5px 5px;
  margin-top: 10px;
}
.c-supervisor__flex-text {
  color: rgb(104, 104, 104);
  line-height: 1.5;
  font-size: 10px;
}
@media (min-width: 960px) {
  .m-case__body {
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: min(100 / 1280* 100* var(--vw, 1vw), 6.25rem);
    gap: min(40 / 1280* 100* var(--vw, 1vw), 2.5rem) min(30 / 1280* 100* var(--vw, 1vw), 1.875rem);
  }
}
@media (min-width: 960px) {
  .m-case__body {
    grid-template-columns: repeat(2, 1fr);
    margin-bottom: 0px;
  }
  .c-case-card {
    display: flex;
    flex-direction: column;
    font-size: min(16 / 1280 * 100 * var(--vw, 1vw), 1rem);
  }
  .c-case-card__title {
    display: grid;
    min-height: min(96 / 1280* 100* var(--vw, 1vw), 6rem);
    font-size: min(28 / 1280 * 100 * var(--vw, 1vw), 1.25rem);
    place-items: center;
    padding: min(14 / 1280* 100* var(--vw, 1vw), 0.875rem);
  }
  .c-case-card.--is__archive .c-case-card__inner {
    justify-content: space-between;
  }
  .c-case-card__inner {
    display: flex;
    flex-direction: column;
    flex: 1 0 auto;
    padding: min(34 / 1280* 100* var(--vw, 1vw), 2.125rem);
  }
  .l-case-pic {
    margin-bottom: min(32 / 1280* 100* var(--vw, 1vw), 2rem);
  }
  .c-supervisor {
    border-width: 1px;
    border-style: solid;
    border-color: rgb(186, 186, 186);
    border-image: initial;
    padding: min(24 / 375* 100* var(--vw, 1vw), 38.4px);
  }
}
@media (min-width: 1280px) {
  .c-supervisor {
    padding: 1.5rem;
    margin-top: 20px;
  }
}
/*----------------------------------
メインビジュアル
---------------------------------- */
@media screen and (min-width: 768px) {
  .fvImg {
    background-color: #E7F1FA;
  }
  .fvImgIn {
    max-width: 1920px;
    margin: 0 auto;
  }
}
.fvImgIn img {
  width: 100%;
}
/*----------------------------------
単独
---------------------------------- */
.title {
  width: 1070px;
  margin: 0 auto;
}
.mt2-font {
  font-size: 17px;
  line-height: 27px;
}
.earTtl {
  max-width: 1070px;
  margin: 0 auto 30px auto;
  background: url("../img/ttl-bg.png");
  background-repeat: no-repeat;
  background-size: contain;
}
.earTtl-inner {
  color: #78A9A7;
  font-size: 1.0em;
  padding: 1rem;
  line-height: 1.5em;
  background: url("../img/ttl-bg.png");
  background-repeat: no-repeat;
  background-position: bottom;
  background-size: contain;
}
@media not all and (min-width: 1070px) {
  .earTtl {
    max-width: 96%;
  }
}
@media not all and (min-width: 960px) {
  .earTtl {
    margin: 0 auto 20px auto;
    background: url("../img/ttl-bg_sp.png");
    background-repeat: no-repeat;
    background-size: contain;
  }
  .earTtl-inner {
    font-size: 0.7em;
    padding: 1rem;
    line-height: 1.5em;
    background: url("../img/ttl-bg_sp.png");
    background-repeat: no-repeat;
    background-position: bottom;
    background-size: contain;
  }
}
/*----------------------------------
recommend
---------------------------------- */
.recommendTextList li {
  font-size: 2.0rem;
  padding-left: 1.0em;
  text-indent: -1.0em;
  text-align: left;
}
.recommendTextList li::before {
  content: "・";
}
.recommendMedia {
  position: relative;
}
.recommendText {
  padding: 1rem 2rem;
  background: rgba(255, 255, 255, 0.7);
  text-align: center;
  position: absolute;
  right: 3rem;
  bottom: 3rem;
}
.recommendTextTtl {
  color: #000000;
  font-family: 'Noto Serif JP', "游明朝", YuMincho, 'Cinzel', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
  font-size: 2.8rem;
  margin-bottom: 1rem;
}
.recommendTextList li {
  font-size: 1.1em;
  padding-left: 1.0em;
  text-indent: -1.0em;
  text-align: left;
}
.recommendTextList li:before {
  content: "・";
}
@media not all and (min-width: 960px) {
  .recommendMediaImg {
    content: url(../img/recommend_sp.jpg);
  }
  .recommendText {
    padding: 0.5rem;
    right: 1.0rem;
    bottom: 1.0rem;
    left: 7.5rem;
    line-height: 1.5;
  }
  .recommendTextTtl {
    font-size: 1.2em;
    line-height: 1.5em;
  }
  .recommendTextList li {
    font-size: 0.85em;
  }
}
/*----------------------------------
reason
---------------------------------- */
.reason h3 {
  background-color: #FF2E7C;
  color: #FFFFFF;
  text-align: center;
  line-height: 1.3;
  padding: 2rem;
  display: block;
}
.reasonIn {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  box-sizing: border-box;
  gap: 20px 2%;
}
.reasonBox {
  width: 49%;
  padding: 3rem;
  box-sizing: border-box;
  background: white;
  border: 1px solid #e6e6e6;
}
.reasonBoxTtl {
  font-size: 1.6em;
  color: #78A9A7;
  text-align: center;
  line-height: 1.1em;
}
.reasonBoxMedia img {
  width: 100%;
}
@media not all and (min-width: 960px) {
  .reasonIn {
    flex-direction: column;
    gap: 20px 0%;
  }
  .reasonBox {
    width: 100%;
  }
  .reasonBoxTtl {
    font-size: 3rem;
    text-align: center;
  }
}
/*----------------------------------
BoxGray / 調整
---------------------------------- */
.BoxGray {
  padding: 1rem;
  background: white;
  border: 1px solid #CCCCCC;
  text-align: center;
  margin-top: 20px;
}
/*----------------------------------
footer / 調整
---------------------------------- */
.footer {
  max-width: 100%;
  margin: 0;
}
/*----------------------------------
header / 調整
---------------------------------- */
.o-header-tel__small {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Segoe UI", "メイリオ", Meiryo, sans-serif;
}
.c-header-menu__button {
  font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Segoe UI", "メイリオ", Meiryo, sans-serif;
}
/*----------------------------------
	調整
---------------------------------- */
.featureMediaImg {
  border-radius: 0px;
}
@media not all and (min-width: 960px) {
  .featureMedia {
    float: none;
    width: 100%;
    margin-right: 0;
    margin-bottom: 0;
  }
}
.featureItem {
  margin-bottom: 40px;
  overflow: hidden;
}
.featureItem h3 {
  color: #78A9A7;
}
@media not all and (min-width: 960px) {
  .featureItem h3 {
    text-align: center;
  }
}
.point__tit-text {
  font-size: 0.8em;
}
.point__accent {
  font-size: 0.5em;
}
@media not all and (min-width: 960px) {
  .featureInfo {
    margin-bottom: 10px;
  }
}
@media not all and (min-width: 960px) {
  .reasonBox {
    padding: 2rem 1rem;
  }
}
@media not all and (min-width: 960px) {
  .reasonBoxTtl {
    font-size: 1.5em;
  }
}
.m_ttl_purpose {
  font-family: "HiraginoMinthyo", "游明朝", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "Yu Mincho", "游明朝体", "HGS明朝E", "HG明朝E", "Hiragino Mincho Pro W3", "Hiragino Mincho Pro", "Noto Sans JP", "Noto Serif", "Helvetica Neue", "Helvetica", "Arial", "sans-serif";
}
@media not all and (min-width: 960px) {
.btn-green {
    width: 80%;
  }
	}