/**************************************
homeContents
**************************************/
#guideSection{
  display: block;
  width: 100%;
  max-width: var(--contentsMiddleOuterWidth);
  padding: 0 var(--contentsPadding) 10rem;
  margin: 0 auto;
  font-size: var(--fontSizeN);
  line-height: var(--lineHeight);
}

#guideSection.wide{
  max-width: var(--contentsOuterWidth);
}

#guideSection .mainTTL{
  display: block;
  margin: 0 auto 4rem;
  max-width: var(--contentsOuterWidth);
  font-family: var(--contentsTitleFont);
  font-size: var(--ttlFontSize);
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
  color: var(--txtColor);
}

#guideSection .mainTTL > span{
  display: block;
  padding-top: 0.5rem;
  font-size: var(--fontSizeN);
  font-family: var(--contentsOtherFont);
  text-align: center;
  letter-spacing: 0.08em;
  color: var(--txtSubColor);
}

#guideSection .outerLede{
  display: block;
  margin-bottom: 6rem;
}

#guideSection .outerLede > p{
  font-size: var(--fontSizeL);
  text-align: center;
  font-weight: 500;
}

#guideSection .bigCaution{
  display: block;
  max-width: 900px;
  margin: 3rem auto 0;
  padding: 2rem 2rem 2rem 2rem;
  background: var(--contentsBgColor);
}
#guideSection .bigCaution > p{
  font-size: var(--fontSizeL);
  padding-left: 1em;
  text-indent: -1em;
}

#guideSection .outerLedeCaution{
  display: block;
  max-width: 900px;
  margin: 3rem auto 0;
}

#guideSection .outerCaution{
  display: block;
  max-width: 900px;
  margin: 3rem auto 0;
}

#guideSection .outerCaution > li{
  padding-left: 1em;
  text-indent: -1em;
}

#guideSection strong{font-weight: 700;}
#guideSection .fcRed{color: var(--cautionColor);}

/**************************************
guideTable
**************************************/
.guideTable{}

.guideTable > dl{
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: space-between;
  max-width: var(--contentsSmallWidh);
  padding: 0 0;
  margin: 0 auto;
}
.guideTable > dl + dl{margin-top: 0.8rem;}

.guideTable > dl > dt{
  display: block;
  width: 30rem;
  padding: 2rem;
  background: var(--contentsBgGray);
  text-align: left;
  font-size: var(--fontSizeN);
  line-height: var(--lineHeightBig);
  font-weight: 500;
}


.guideTable > dl > dd{
  display: block;
  width: calc(100% - 30rem);
  padding: 2rem;
  font-size: var(--fontSizeN);
  line-height: var(--lineHeightBig);
  text-align: left;
  word-break: break-all;
}

.guideTable > dl > dd a{color: var(--txtColor); text-decoration: underline;}

.guideTable > dl > dd > dl{}
.guideTable > dl > dd > dl + dl{margin-top: 2rem;}


.guideTable > dl > dd .dotList,
.guideTable > dl > dd .caution{
  margin-top: 1rem;
}

.guideTable > dl > dd ol.dotList > li,
.guideTable > dl > dd ul.dotList > li,
.guideTable > dl > dd ol.caution > li,
.guideTable > dl > dd ul.caution > li{
  padding-left: 1rem;
  text-indent: -1em;
}


.guideTable > dl > dd ol.dotList > li > ul,
.guideTable > dl > dd ul.dotList > li > ul{
  display: block;
  padding-left: 1em;
}

.guideTable > dl > dd ol.caution > li,
.guideTable > dl > dd ul.caution > li{
    text-indent: -1em;
    padding-left: 1em;
}

.guideTable > dl > dd ol.caution > li > ul,
.guideTable > dl > dd ul.caution > li > ul{
  display: block;
  padding-left: 1em;
}

.guideTable .bgBox{
  padding: 3rem;
  background: var(--contentsBgGray);
}


/**************************************
kiyakkuSection
**************************************/
.kiyakuOuterSection{
	display: block;
	width: 100%;
  max-width: var(--contentsMiddleWidth);
	margin: 0 auto;
	font-size: var(--fontSizeN);
	line-height: 2;
}
.kiyakuOuterSection + .kiyakuOuterSection{
  padding-top: 4.5rem;
  margin-top: 4.5rem;
  border-top: 1px solid var(--borderColorLight);
}

.kiyakuOuterSection h3,
.kiyakuOuterSection .kiyakuTTL{
  font-family: var(--contentsTitleFont);
	font-size: var(--fontSizeLLL);
  margin-bottom: 2rem;
  text-align: left;
  font-weight: 500;
}

.kiyakuOuterSection h3 + .lede,
.kiyakuOuterSection .kiyakuTTL + .lede{margin-top: -3rem;}

.kiyakuOuterSection .lede{
  text-align: center;
  margin-bottom: 4rem;
}

.kiyakuOuterSection p.signature{text-align: right; margin-top: 5rem;}


.kiyakuOuterSection h5{
	margin-bottom: 3rem;
  font-size: var(--fontSizeL);
  font-weight: 500;
}

.kiyakuOuterSection h6{
	margin-bottom: 2rem;
  font-size: var(--fontSizeN);
  font-weight: 500;
}
.kiyakuOuterSection *:not(h5) + h6{
  margin-top: 3rem;
}


.kiyakuOuterSection p{margin-bottom: 1rem;}
.kiyakuOuterSection p:nth-last-child(1){margin-bottom: 0;}



.kiyakuOuterSection{
	display: block; 
}
.kiyakuInnerSection{
	display: block;
	margin-left: 100px;
	margin-right: 100px;
	text-align: center;
}
.kiyakuInnerSection p{
	margin-top: 10px;
	text-align: left;
	margin-left: 20px;
	margin-right: 20px;
	margin-bottom: 10px;
}
.kiyakuInnerSection p.lede{
	text-align: center;
}
.kiyakuOuterSection .kiyakuInnerSection + .kiyakuInnerSection{padding-top: 5rem;}
.kiyakuOuterSection p:not(.lede) + .kiyakuInnerSection{padding-top: 3rem;}

.kiyakuOuterSection .kiyakuInInnerSection{display: block; padding-left: 1.5rem;}
.kiyakuOuterSection .kiyakuInInnerSection + .kiyakuInInnerSection{padding-top: 3rem;}
.kiyakuOuterSection .kiyakuInInnerSection > dl{
  display: block;
}
.kiyakuOuterSection .kiyakuInInnerSection > dl + dl{margin-top: 1rem;}
.kiyakuOuterSection .kiyakuInInnerSection > dl > dt{font-weight: 700;}


.kiyakuOuterSection ol.numList > li{
    text-indent: -1.5em;
    padding-left: 1.5em;
}


.kiyakuOuterSection ol.numList > li > ol.buraList{
  text-indent: 0;
}

.kiyakuOuterSection ol.buraList > li{
  display: block;
  padding-left: 3.5rem;
  position: relative;
  text-indent: 0;
}

.kiyakuOuterSection ol.buraList > li > em{
  display: block;
  width: 4rem;
  text-align: center;
  position: absolute;
  left: -0.5em;
  top: 0;
}

.kiyakuOuterSection ol.dotList > li,
.kiyakuOuterSection ul.dotList > li{
    text-indent: -1em;
    padding-left: 1em;
}


.kiyakuOuterSection ol.dotList > li > ul,
.kiyakuOuterSection ul.dotList > li > ul{
  display: block;
  padding-left: 1em;
}

.kiyakuOuterSection ol.circleList > li,
.kiyakuOuterSection ul.circleList > li{
    text-indent: -1em;
    padding-left: 1em;
}

.kiyakuOuterSection ol.circleList > li > ul,
.kiyakuOuterSection ul.circleList > li > ul{
  display: block;
  padding-left: 1em;
}

.kiyakuOuterSection ol.dotList >  li + li,
.kiyakuOuterSection ul.dotList >  li + li,
.kiyakuOuterSection ol.circleList > li + li,
.kiyakuOuterSection ul.circleList > li + li{margin-top: 1rem;}


.kiyakuOuterSection .bgBox{
  padding: 1rem;
  background: var(--contentsBgGray);
  text-indent: 0;
}

.kiyakuOuterSection .bgBox:not(:first-child){margin-top: 2rem;}
.kiyakuOuterSection ul .bgBox,
.kiyakuOuterSection ol .bgBox{
  margin-top: 1rem;
  margin-bottom: 2rem;
}

/**************************************
guideContentsWrap
**************************************/
#guideSection .guideContentsWrap{
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: space-between;
}

/** nav *********/
#guideSection .guideContentsWrap .guideNav{
  display: block;
  width: 24rem;
}

#guideSection .guideContentsWrap .guideNav > ul{
  display: block;
  width: 100%;
  padding-bottom: 0.1rem;
  border-top: 1px solid var(--borderColor);
}

#guideSection .guideContentsWrap .guideNav > ul.sticky{
  position: sticky;
  top: 10rem;
}

#guideSection .guideContentsWrap .guideNav > ul > li{
  display: block;
}
#guideSection .guideContentsWrap .guideNav > ul > li + li{}

#guideSection .guideContentsWrap .guideNav > ul > li > a{
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  padding: 2rem 5rem 2rem 2rem;
  border-bottom: 1px solid var(--borderColorLight);
  background: url("../img/system/arrow_right.svg") calc(100% - 1.5rem) center no-repeat;
  background-size: 0.8rem auto;
  font-size: var(--fontSizeN);
  line-height: var(--lineHeightSmall);
  font-weight: 500;
  text-align: left;
  text-decoration: none;
  position: relative;
}
#guideSection .guideContentsWrap .guideNav > ul > li.current > a{
  background: var(--contentsBgColor);
}

/** guideContents *********/
#guideSection .guideContentsWrap .guideContents{
  display: block;
  width: calc(100% - 30rem);
}

#guideSection .guideContents .guideDetail{
  display: block;
  font-size: var(--fontSizeN);
  text-align: left;
  line-height: var(--lineHeight);
}
#guideSection .guideContents .guideDetail:nth-of-type(1){margin-top: -4rem;}

#guideSection .guideContents .guideDetail + .guideDetail{}

#guideSection .guideContents .guideDetail a{
  color: var(--txtColor); text-decoration: underline;
}

#guideSection .guideContents .guideDetail > p{
  margin-top: 2rem;
}

#guideSection .guideContents .guideTTL{
  display: block;
  padding-top: 6rem;
  padding-bottom: 1.5rem;
  font-family: var(--contentsTitleFont);
  font-size: var(--fontSizeLLL);
  line-height: var(--lineHeightSmall);
  text-align: left;
  font-weight: 700;
  border-bottom: 2px solid var(--borderColor);
}


#guideSection .guideContents .guideSubTTL{
  display: block;
  width: 100%;
  padding: 1.3rem 1rem;
  margin-bottom: 2rem;
  border-top: 2px solid var(--borderColor);
  border-bottom: 2px solid var(--borderColor);
  font-family: var(--contentsTitleFont);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-align: left;
  border-radius: 4px;
}


#guideSection .guideContents .guideDetail > dl,
#guideSection .guideContents .guideDetail > ul{
  display: block;
}

#guideSection .guideContents .guideDetail > dl:not(:first-child){
  padding-top: 2.5rem;
}
#guideSection .guideContents .guideDetail > dl + dl:not(:first-child){padding-top: 4rem;}

#guideSection .guideContents .guideDetail > dl > dt{
  display: block;
  margin-bottom: 1.5rem;
  font-size: var(--fontSizeL);
  font-weight: 500;
}

#guideSection .guideContents .guideDetail > dl > dd{}

#guideSection .guideContents .guideDetail > dl > dd dl{}
#guideSection .guideContents .guideDetail > dl > dd dl{margin-top: 2rem;}
#guideSection .guideContents .guideDetail > dl > dd dl:not(:last-child){margin-bottom: 2rem;}

#guideSection .guideContents .guideDetail > dl > dd p + dl{margin-top: 1.5rem;}

#guideSection .guideContents .guideDetail > dl > dd dl > dt{font-weight: 700; margin-bottom: 1rem;}
#guideSection .guideContents .guideDetail > dl > dd dl > dd{}
#guideSection .guideContents .guideDetail > dl > dd dl > dd + dd{padding-top: 0.5rem;}


#guideSection .guideContents .guideDetail > dl > dd  .bgBox{
  display: block;
  padding: 1.5rem;
  margin-top: 2rem;
  background: var(--contentsBgGray);
}


#guideSection .guideContents .guideDetail > dl > dd > dl > dd.numLine{
  display: block;
  text-indent: -1.5em;
  padding-left: 1.5em;
}
#guideSection .guideContents .guideDetail > dl > dd > dl > dd.numLine .caution{
  text-indent: -1em;
  padding-left: 1em;
  font-size: var(--fontSizeS);
}


#guideSection .guideContents .guideDetail ul.dotList:not(:first-child),
#guideSection .guideContents .guideDetail ul.caution:not(:first-child){margin-top: 1.5rem;}
#guideSection .guideContents .guideDetail ul.dotList:not(:last-child),
#guideSection .guideContents .guideDetail ul.caution:not(:last-child){margin-bottom: 1.5rem;}

#guideSection .guideContents .guideDetail ul.circleList > li{
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}
#guideSection .guideContents .guideDetail ul.circleList > li::before{content: ''}
#guideSection .guideContents .guideDetail ul.circleList > li + li{margin-top: 0.5rem;}

#guideSection .guideContents .guideDetail ul.dotList > li,
#guideSection .guideContents .guideDetail ul.caution > li{
  display: block;
  text-indent: -1em;
  padding-left: 1em;
}
#guideSection .guideContents .guideDetail ul.dotList > li::before{content: ''}
#guideSection .guideContents .guideDetail ul.dotList > li + li{margin-top: 0.5rem;}


/**************************************
faqList
**************************************/
/*faqAnchor**/

#guideSection .faqAnchor{
  display: block;
  width: 100%;
}

#guideSection .faqAnchor > ul{
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: flex-start;
  gap: 2rem 2rem;
}

#guideSection .faqAnchor > ul > li{
  display: block;
  width: calc((100% - 4rem) / 3);
}

#guideSection .faqAnchor > ul > li > a{
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  padding: 2rem 4.5rem 2rem 2rem;
  border: 1px solid var(--borderColor);
  background: url("../img/system/arrow_select.svg") calc(100% - 1.5rem) center no-repeat;
  background-size: 1.5rem auto;
  font-size: var(--fontSizeN);
  line-height: 1.7;
  font-weight: 500;
}

#guideSection .faqList{
  display: block;
  width: 100%;
  max-width: var(contentsMiddleWidth);
  margin: 0 auto;
  padding: 6rem 0 0;
}

#guideSection .faqList + .faqList{
  padding-top: 8rem;
}

#guideSection .faqSmallList{display: block;}
#guideSection .faqSmallList + .faqSmallList{margin-top: 5rem;}

#guideSection .faqList .guideTTL{
  display: block;
  margin-bottom: 2.5rem;
  font-family: var(--contentsTitleFont);
  font-size: var(--fontSizeLLL);
  line-height: var(--lineHeightSmall);
  text-align: center;
  font-weight: 700;
}

#guideSection .faqList .guideTTL + p{
  display: block;
  font-size: var(--fontSizeN);
  line-height: var(--lineHeight);
  text-align: center;
  margin-bottom: 1.5rem;
}

#guideSection .faqList .guideSubTTL{
  display: block;
  width: 100%;
  padding: 1.3rem 1rem;
  margin-bottom: 2rem;
  border-top: 2px solid var(--borderColor);
  border-bottom: 2px solid var(--borderColor);
  font-family: var(--contentsTitleFont);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--txtColor);
  text-align: center;
  border-radius: 4px;
}


#guideSection .faqList dl.faqBox{
  display: block;
  font-size: var(--fontSizeN);
  text-align: left;
  line-height: var(--lineHeight);
}

#guideSection .faqList dl.faqBox + dl.faqBox{margin-top: 1rem;}

#guideSection .faqList dl.faqBox > dt{
  display: flex;
  flex-wrap: nowrap;
  align-items: stretch;
  justify-content: flex-start;
  padding: 2rem;
  background: var(--contentsBgColor);
  font-size: var(--fontSizeL);
  font-weight: 500;
  position: relative;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
#guideSection .faqList dl.faqBox > dt:hover{opacity: .6;}

#guideSection .faqList dl.faqBox > dt::before{
  content: 'Q.';
  width: 3rem;
}

#guideSection .faqList dl.faqBox > dt > span{
  display: block;
  width: calc(100% - 4.6rem);
  padding-right: 2rem;
}

#guideSection .faqList dl.faqBox > dt > em{
  display: block;
  width: 3rem;
  position: relative;
}

#guideSection .faqList dl.faqBox > dt > em::before,
#guideSection .faqList dl.faqBox > dt > em::after{
  content: '';
  display: block;
  width: 2rem;
  height: 1px;
  background: var(--txtColor);
  position: absolute;
  left: calc(50% - 1rem);
  top: calc(50% - 1px);
  transition: opacity 0.3s ease,transform 0.3s ease;
}

#guideSection .faqList dl.faqBox > dt > em::after{
  transform: rotate(90deg);
}

#guideSection .faqList dl.faqBox > dt.active > em::after{
  transform: rotate(0);
  opacity: 0;
}

#guideSection .faqList dl.faqBox > dd{
  display: none;
  padding: 2rem 2rem 2rem 5rem;
  position: relative;
}
#guideSection .faqList dl.faqBox > dd::before{
  content: 'A.';
  display: block;
  width: 3rem;
  height: 100%;
  font-size: var(--fontSizeL);
  font-weight: 500;
  position: absolute;
  left: 2rem;
  top: 1.8rem;
}


#guideSection .faqList dl.faqBox > dd p{padding-top: 1.5rem;}
#guideSection .faqList dl.faqBox > dd p.caution{
  padding-left: 1em;
  text-indent: -1em;
}
#guideSection .faqList dl.faqBox > dd p.caution + p.caution{padding-top: 0.5rem;}

#guideSection .faqList dl.faqBox > dd p.caution.num{
  padding-left: 2em;
  text-indent: -2em;
}


#guideSection .faqList dl.faqBox > dd a{text-decoration: underline;}
#guideSection .faqList dl.faqBox > dd img{display: block; max-width: 100%;}


/*2025.07.11追記**/
.pc-only {
  display: inline;
}
.sp-only {
  display: none;
}

@media screen and (max-width: 767px) {
  .pc-only {
    display: none;
  }
  .sp-only {
    display: inline;
  }
}
