@charset "UTF-8";
:root {
  --textPoint: #3F4672;
}

:root {
  --textMain: #000000;
}

:root {
  --textEm: #3F4672;
}

:root {
  --mainBg: #F5F6FA;
}

:root {
  --headerBg: #FFF;
}

:root {
  --naviText: #CCB778;
}

:root {
  --naviBg: #3F4672;
}

:root {
  --naviBgHover: #32385B;
}

:root {
  --naviTextHover: #CCB778;
}

:root {
  --spMenu1Bg: #FFF;
}

:root {
  --spMenu1Bdr: #3F4672;
}

:root {
  --spMenu2Text: #444444;
}

:root {
  --spMenu2OpenBg: #3F4672;
}

:root {
  --spMenu2CloseText: #FFFFFF;
}

:root {
  --spMenu2CloseBg: #9C9C9C;
}

:root {
  --spTelMenuText: #3F4672;
}

:root {
  --spTelMenuBtnText: #ccb778;
}

:root {
  --spTelMenuBtnBg: #3F4672;
}

:root {
  --icon1: #3F4672;
}

:root {
  --btnRequireText: #FFF;
}

:root {
  --btnRequireBg: #CCB778;
}

:root {
  --btnReserveText: #FFF;
}

:root {
  --btnReserveBg: #CCB778;
}

:root {
  --contText: #FFFFFF;
}

:root {
  --contBg: #3F4672;
}

:root {
  --footerMenuText1: #5A5A5A;
}

:root {
  --footerMenuText2: #646464;
}

:root {
  --footerMenuText3: #3B3B3B;
}

:root {
  --footerBg1: #f5f6fa;
}

:root {
  --footerBg2: #f0f1f7;
}

:root {
  --heading1Text: #3F4672;
}

:root {
  --heading2Text: #444444;
}

:root {
  --heading2Bg: #f9f8f4;
}

:root {
  --heading2Bdr: #3F4672;
}

:root {
  --heading3Text: #3F4672;
}

:root {
  --heading3Bg: #CCB778;
}

:root {
  --heading3Bdr: #3F4672;
}

:root {
  --dateText: #3F4672;
}

:root {
  --zabuton1Text: #3F4672;
}

:root {
  --zabuton1Bg: #CCB778;
}

:root {
  --zabuton2Text: #3F4672;
}

:root {
  --zabuton2Bg: #CCB778;
}

:root {
  --qaQ1Text: #CCB778;
}

:root {
  --qaQ1Bg: #3F4672;
}

:root {
  --qaQ2Text: #3F4672;
}

:root {
  --qaQ2Bg: #CCB778;
}

:root {
  --qaAText: #3F4672;
}

:root {
  --thText: #CCB778;
}

:root {
  --thBg: #3F4672;
}

:root {
  --tdText: #3F4672;
}

:root {
  --tdBg: #CCB778;
}

:root {
  --linkText: #1E86C9;
}

:root {
  --noteText: #808285;
}

:root {
  --gradientFirst: #4C5686;
}

:root {
  --gradientLast: #3F4672;
}

:root {
  --memberText: #3F4672;
}

:root {
  --commentText: #3F4672;
}

:root {
  --commentBg: #F4F5F9;
}

:root {
  --breadCrumbBg: #F4F5F9;
}

:root {
  --partnerText: #3F4672;
}

:root {
  --partnerBg: #CCB778;
}

:root {
  --partnerBtnText: #FFF;
}

:root {
  --cautionText: #DF263C;
}

:root {
  --breakpoint-xs: 0px;
}

:root {
  --breakpoint-sm: 320px;
}

:root {
  --breakpoint-md: 750px;
}

:root {
  --breakpoint-lg: 992px;
}

:root {
  --breakpoint-xl: 1200px;
}

:root {
  --breakpoint-xxl: 1400px;
}

:root {
  --fontGothic: Noto Sans JP, 游ゴシック体, YuGothic, 游ゴシック, Yu Gothic, ヒラギノ角ゴ ProN W3, Hiragino Kaku Gothic ProN, メイリオ, Meiryo, sans-serif;
}

:root {
  --normalFontSize: 1rem;
  --ctaBtnFontSize: 1rem;
  --spCtaBtnFontSize: 0.7857142857rem;
  --mainvFontSize: 1.7857142857rem;
}

@media only screen and (max-width: 750px) {
  :root {
    --normalFontSize: 3.73vw;
    --ctaBtnFontSize: 3.73vw;
    --spCtaBtnFontSize: 2.9307142857vw;
    --mainvFontSize: 3.9964285714vw;
  }
}
:root {
  --inner-xs: 1920px;
}

:root {
  --inner-md: 1000px;
}

:root {
  --inner-lg: 940px;
}

:root {
  --inner-sm: 800px;
}

@media only screen and (max-width: 750px) {
  :root {
    --inner-xs: 94vw;
  }
  :root {
    --inner-md: 94vw;
  }
  :root {
    --inner-lg: 94vw;
  }
  :root {
    --inner-sm: 94vw;
  }
}
:root {
  --shadow1: 0px 4px 2px rgba(203, 203, 203, 0.8);
}

:root {
  --shadow2: 0px 4px 2px rgba(0, 0, 0, 0.3);
}

/* --------------------------------------------------------------------------------------
メインヴィジュアル
--------------------------------------------------------------------------------------- */
#mainv {
  background-color: #F4F3F1;
}
#mainv .inner {
  background-image: linear-gradient(90deg, #F4F3F1, #F4F3F1 38%, rgba(244, 243, 241, 0) 60%, rgba(244, 243, 241, 0) 85%, #F4F3F1), var(--mainvBg);
  background-size: auto auto, 80% auto;
  background-position: left top, right -100px top;
}
#mainv .inner h1 {
  color: var(--textMain);
  font-size: var(--mainvFontSize);
  font-weight: 700;
  line-height: 1.2;
  padding: 110px 0 130px;
}
#mainv .inner h1 span {
  font-size: 1.44em;
}

/*--------------------------endPC--------------------------------*/
/*SP
-----------------------------------------------------------------*/
@media only screen and (max-width: 750px) {
  #mainv .inner {
    background-image: linear-gradient(90deg, #F4F3F1, #F4F3F1 20%, rgba(244, 243, 241, 0) 36%, rgba(244, 243, 241, 0)), var(--mainvBg);
    background-size: auto auto, auto 100%;
    background-position: left top, right 70% bottom;
  }
  #mainv .inner h1 {
    color: var(--textMain);
    font-size: var(--mainvFontSize);
    font-weight: 700;
    line-height: 1.2;
    padding: 26.6vw 0;
    filter: drop-shadow(0 0 3px rgb(255, 255, 255)) drop-shadow(0 0 3px rgb(255, 255, 255)) drop-shadow(0 0 3px rgb(255, 255, 255)) drop-shadow(0 0 3px rgb(255, 255, 255));
  }
  #mainv .inner h1 span {
    font-size: 1.44em;
  }
}
/*--------------------------endSP--------------------------------*/
/* --------------------------------------------------------------------------------------
メインカラム
--------------------------------------------------------------------------------------- */
#mainColmun .inner .aboutBlock {
  margin: 0 0 80px;
  font-size: 1.0714285714rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .aboutBlock {
    font-size: 3.9964285714vw;
  }
}
#mainColmun .inner .aboutBlock .catch {
  margin: 0 0 30px;
  font-size: 1.4285714286rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .aboutBlock .catch {
    font-size: 5.3285714286vw;
  }
}
#mainColmun .inner .aboutBlock .catch span {
  color: var(--textEm);
}
#mainColmun .inner .aboutBlock .catch + p {
  margin: 0 0 50px;
}
#mainColmun .inner .aboutBlock ul.image {
  margin: 0 30px;
  column-gap: 30px;
}
#mainColmun .inner .aboutBlock ul.image li {
  flex: 0.5;
}
#mainColmun .inner .faqBlock {
  margin: 0 0 50px;
}
#mainColmun .inner .faqBlock dl dt {
  margin: 0 0 30px;
  padding: 0 0 0 80px;
  position: relative;
}
#mainColmun .inner .faqBlock dl dt::before {
  content: "Q";
  color: var(--qaQ1Text);
  line-height: 60px;
  text-align: center;
  width: 60px;
  background: var(--qaQ1Bg);
  border-radius: 50%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.8571428571rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dt::before {
    font-size: 6.9271428571vw;
  }
}
#mainColmun .inner .faqBlock dl dt span {
  color: var(--qaQ2Text);
  font-weight: 700;
  background: var(--qaQ2Bg);
  border-radius: 10px;
  display: block;
  padding: 20px;
  position: relative;
  font-size: 1.2857142857rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dt span {
    font-size: 4.7957142857vw;
  }
}
#mainColmun .inner .faqBlock dl dt span::before {
  content: "";
  width: 15px;
  height: 16px;
  background: var(--qaQ2Bg) url(../images/parent/fukidashi_bg.png);
  background-size: 15px auto;
  display: block;
  position: absolute;
  left: -15px;
  bottom: 10px;
}
#mainColmun .inner .faqBlock dl dd {
  margin: 0 0 50px;
  padding: 0 40px 0 80px;
  position: relative;
}
#mainColmun .inner .faqBlock dl dd:last-of-type {
  margin: 0;
}
#mainColmun .inner .faqBlock dl dd::before {
  content: "A.";
  color: var(--textEm);
  font-weight: 700;
  line-height: 1;
  margin: 0 0 0 25px;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.8571428571rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dd::before {
    font-size: 6.9271428571vw;
  }
}
#mainColmun .inner .faqBlock dl dd .em {
  color: var(--textEm);
  font-weight: 700;
  margin: 0 0 15px;
  font-size: 1.2857142857rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dd .em {
    font-size: 4.7957142857vw;
  }
}
#mainColmun .inner .contactBlock {
  border-top: dashed 1px #CACACA;
  margin: 50px 0 0;
  padding: 40px 0 0;
  column-gap: 30px;
}
#mainColmun .inner .contactBlock .tel .heading {
  font-weight: 700;
  font-size: 1.0714285714rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock .tel .heading {
    font-size: 3.9964285714vw;
  }
}
#mainColmun .inner .contactBlock .tel .num span {
  font-weight: 700;
  font-size: 2.1428571429rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock .tel .num span {
    font-size: 7.9928571429vw;
  }
}
#mainColmun .inner .contactBlock .tel .num span::before {
  margin: 0 0.2em 0 0;
  content: "";
  width: 0.9em;
  height: 0.9em;
  background-color: var(--icon1);
  mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" fill="var(--icon1)" viewBox="0 0 13 13"><path d="M3.6,9.4c1.7,1.7,4.5,3.3,6,3.2c1,0,2-0.5,2.7-1.2c0.1-0.2,0.2-0.4,0.2-0.6l0.1-0.8c0-0.2,0-0.3-0.4-0.5L10,8.2C9.8,8.1,9.5,8.1,9.3,8.4L8.1,9.6c-0.1,0.1-0.3,0-0.4,0C6.7,9.2,5.9,8.6,5.1,7.8l0,0C4.4,7.1,3.8,6.3,3.4,5.5c-0.1-0.1-0.1-0.2,0-0.2c0.2-0.2,0.7-0.8,0.9-1C4.5,4,4.6,3.7,4.5,3.4C4.4,3,3.7,1,3.6,0.8c0-0.2-0.3-0.4-0.5-0.4h-1c-0.2,0-0.4,0.1-0.5,0.2C0.8,1.3,0.4,2.3,0.4,3.4C0.4,4.9,1.9,7.7,3.6,9.4z"/></svg>');
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" fill="var(--icon1)" viewBox="0 0 13 13"><path d="M3.6,9.4c1.7,1.7,4.5,3.3,6,3.2c1,0,2-0.5,2.7-1.2c0.1-0.2,0.2-0.4,0.2-0.6l0.1-0.8c0-0.2,0-0.3-0.4-0.5L10,8.2C9.8,8.1,9.5,8.1,9.3,8.4L8.1,9.6c-0.1,0.1-0.3,0-0.4,0C6.7,9.2,5.9,8.6,5.1,7.8l0,0C4.4,7.1,3.8,6.3,3.4,5.5c-0.1-0.1-0.1-0.2,0-0.2c0.2-0.2,0.7-0.8,0.9-1C4.5,4,4.6,3.7,4.5,3.4C4.4,3,3.7,1,3.6,0.8c0-0.2-0.3-0.4-0.5-0.4h-1c-0.2,0-0.4,0.1-0.5,0.2C0.8,1.3,0.4,2.3,0.4,3.4C0.4,4.9,1.9,7.7,3.6,9.4z"/></svg>');
  display: inline-block;
}
#mainColmun .inner .contactBlock .tel .reception {
  font-size: 0.9285714286rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock .tel .reception {
    font-size: 3.4635714286vw;
  }
}
#mainColmun .inner .contactBlock .btn a {
  text-align: center;
  border-radius: 10px;
  box-sizing: border-box;
  padding: 24px 0;
  padding-left: 2%;
  padding-right: 10%;
  position: relative;
  transition: all 0.3s;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  color: var(--btnReserveText);
  background-color: var(--btnReserveBg);
  font-size: 1.1428571429rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock .btn a {
    font-size: 4.2628571429vw;
  }
}
#mainColmun .inner .contactBlock .btn a::after {
  content: "";
  width: 2.5em;
  height: 2.5em;
  background-color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6l-6 6" /></svg>');
  mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6l-6 6" /></svg>');
  line-height: 1;
  pointer-events: none;
  position: absolute;
  top: 50%;
  translate: 0 -50%;
  right: 5%;
}
@media (hover: hover) and (pointer: fine) {
  #mainColmun .inner .contactBlock .btn a:hover {
    opacity: 0.7;
  }
}
#mainColmun .inner .contactBlock .btn a span {
  font-size: 2em;
  font-weight: 700;
}
#mainColmun .inner .soudankaiBlock .image {
  font-weight: 700;
  line-height: 1.3;
  background-image: linear-gradient(90deg, #E7E7E7, #F2F2F1 45%, rgba(242, 242, 241, 0) 65%, rgba(242, 242, 241, 0)), url(../images/parent/soudankai_bg.jpg);
  background-size: auto auto, 60% auto;
  background-position: left top, right top;
  margin: 0 0 30px;
  padding: 65px;
  font-size: 2.8571428571rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .soudankaiBlock .image {
    font-size: 10.6571428571vw;
  }
}
#mainColmun .inner .soudankaiBlock .image span {
  color: var(--textEm);
}
#mainColmun .inner .soudankaiBlock .catch {
  font-weight: 700;
  margin: 0 0 30px;
  font-size: 1.5714285714rem;
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .soudankaiBlock .catch {
    font-size: 5.8614285714vw;
  }
}

/*--------------------------endPC--------------------------------*/
/*SP
-----------------------------------------------------------------*/
@media only screen and (max-width: 750px) {
  #mainColmun {
    margin: 0 0 12vw;
  }
  #mainColmun .inner .aboutBlock {
    margin: 0 3.3vw 12vw;
    font-size: 0.9285714286rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .aboutBlock {
    font-size: 3.4635714286vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .aboutBlock .catch {
    margin: 0 0 5vw;
    font-size: 1.2142857143rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .aboutBlock .catch {
    font-size: 4.5292857143vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .aboutBlock .catch + p {
    margin: 0 0 6.5vw;
  }
  #mainColmun .inner .aboutBlock ul.image {
    margin: 0;
    column-gap: 0;
    flex-direction: column;
    row-gap: 2vw;
  }
  #mainColmun .inner .aboutBlock ul.image li {
    flex: 1;
  }
  #mainColmun .inner .faqBlock {
    margin: 0 0 8.5vw;
  }
  #mainColmun .inner .faqBlock dl dt {
    margin: 0 0 25px;
    padding: 0 0 0 16vw;
  }
  #mainColmun .inner .faqBlock dl dt::before {
    line-height: 13vw;
    width: 13vw;
    font-size: 1.1428571429rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dt::before {
    font-size: 4.2628571429vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dt span {
    padding: 4vw;
    font-size: 1.1428571429rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dt span {
    font-size: 4.2628571429vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dt span::before {
    width: 14px;
    height: 15px;
    background-size: 14px auto;
    left: -14px;
  }
  #mainColmun .inner .faqBlock dl dd {
    margin: 0 auto 10vw;
    padding: 0 3.3vw;
  }
  #mainColmun .inner .faqBlock dl dd::before {
    margin: 0 0 0 3vw;
    font-size: 1.8571428571rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dd::before {
    font-size: 6.9271428571vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dd .em {
    margin: 0 0 4vw;
    padding: 0 0 0 8vw;
    font-size: 1.2857142857rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .faqBlock dl dd .em {
    font-size: 4.7957142857vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock {
    margin: 8.5vw 0 0;
    padding: 6.5vw 0 0;
    column-gap: 0;
    flex-direction: column;
  }
  #mainColmun .inner .contactBlock .tel {
    text-align: center;
  }
  #mainColmun .inner .contactBlock .tel .heading {
    margin: 0 0 3vw;
    font-size: 1.2857142857rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .contactBlock .tel .heading {
    font-size: 4.7957142857vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock .tel .num span {
    font-size: 1.9285714286rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .contactBlock .tel .num span {
    font-size: 7.1935714286vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock .tel .reception {
    font-size: 0.9285714286rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .contactBlock .tel .reception {
    font-size: 3.4635714286vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock .btn {
    margin: 5vw 0 0;
  }
  #mainColmun .inner .contactBlock .btn a {
    border-radius: 10px;
    padding: 5.5vw 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    color: var(--btnReserveText);
    background-color: var(--btnReserveBg);
    font-size: 0.9285714286rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .contactBlock .btn a {
    font-size: 3.4635714286vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock .btn a::after {
    content: "";
    width: 2.5em;
    height: 2.5em;
    background-color: currentColor;
    -webkit-mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6l-6 6" /></svg>');
    mask-image: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6l-6 6" /></svg>');
    line-height: 1;
    pointer-events: none;
    position: absolute;
    top: 50%;
    translate: 0 -50%;
    right: 0.2em;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .contactBlock .btn a span {
    font-size: 2em;
  }
  #mainColmun .inner .soudankaiBlock .image {
    background-image: -webkit-linear-gradient(0deg, #E7E7E7, #F2F2F1 30%, rgba(242, 242, 241, 0) 60%, rgba(242, 242, 241, 0)), url(../images/parent/soudankai_bg.jpg);
    background-size: auto auto, 110% auto;
    background-position: left top, right -15vw top;
    filter: drop-shadow(0 0 3px rgb(255, 255, 255)) drop-shadow(0 0 3px rgb(255, 255, 255)) drop-shadow(0 0 3px rgb(255, 255, 255)) drop-shadow(0 0 3px rgb(255, 255, 255));
    margin: 0 0 6.5vw;
    padding: 20vw 6.6vw;
    font-size: 2.1428571429rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .soudankaiBlock .image {
    font-size: 7.9928571429vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .soudankaiBlock .catch {
    margin: 0 0 3.5vw;
    font-size: 1.2857142857rem;
  }
}
@media only screen and (max-width: 750px) and (max-width: 750px) {
  #mainColmun .inner .soudankaiBlock .catch {
    font-size: 4.7957142857vw;
  }
}
@media only screen and (max-width: 750px) {
  #mainColmun .inner .soudankaiBlock .contactBlock {
    padding: 6.5vw 3.3vw 0;
  }
}
/*--------------------------endSP--------------------------------*/
/* タイトル背景：inline-styleでCF差し替え可。未設定時の既定 */
#mainv {
  --mainvBg:url(../images/parent/mainv_bg.jpg);
}

/*# sourceMappingURL=parent.css.map */
