/**************************************
homeContents
**************************************/
#guideSection{
  display: block;
  width: 100%;
  max-width: var(--contentsMiddleOuterWidth);
  padding: 2rem var(--contentsPadding) 4rem;
  margin: 0 auto;
  font-size: var(--fontSizeN);
  line-height: var(--lineHeight);
}

#guideSection.wide{
  max-width: var(--contentsOuterWidth);
}

#guideSection .mainTTL{
  display: block;
  margin: 0 auto 3rem;
  max-width: var(--contentsOuterWidth);
  font-family: var(--contentsTitleFont);
  font-size: var(--ttlFontSize);
  font-weight: 700;
  text-align: center;
  line-height: 1.4;
  color: #2C2C2C;
}

#guideSection .mainTTL > span{
  display: block;
  padding-top: 0.5rem;
  font-size: var(--fontSizeSS);
  font-family: var(--contentsOtherFont);
  text-align: center;
  color: #7C7C7C;
}

#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: #F2F3EF;
  color: #2c2c2c;
}
#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;
  color: #2c2c2c;
}
.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;
}




/**************************************
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;
  color: #2C2C2C;
  text-align: left;
  font-weight: 500;
}

.kiyakuOuterSection h3 + .lede,
.kiyakuOuterSection .kiyakuTTL + .lede{margin-top: -3rem;}

.kiyakuOuterSection .lede{
  text-align: center;
  color: #2C2C2C;
  margin-bottom: 4rem;
}

.kiyakuOuterSection p.signature{text-align: right; margin-top: 5rem;}


.kiyakuOuterSection h5{
	margin-bottom: 3rem;
  font-size: var(--fontSizeL);
  font-weight: 500;
  color: #2C2C2C;
}

.kiyakuOuterSection h6{
	margin-bottom: 3rem;
  font-size: var(--fontSizeN);
  font-weight: 500;
  color: #2C2C2C;
}



.kiyakuOuterSection p{margin-bottom: 1rem;}
.kiyakuOuterSection p:nth-last-child(1){margin-bottom: 0;}



.kiyakuOuterSection .kiyakuInnerSection{display: block;}
.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;  
}
.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: 3rem;
  background: var(--contentsBgGray);
  color: #2C2C2C;
}

.kiyakuOuterSection .bgBox:not(:first-child){margin-top: 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 #F3F3F3;
}

#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 #F3F3F3;
  background: url("../img/common/arrow_narrow_right_gray.svg") calc(100% - 1.5rem) center no-repeat;
  background-size: 0.8rem auto;
  font-size: var(--fontSizeN);
  line-height: var(--lineHeightSmall);
  color: #2c2c2c2;
  font-weight: 500;
  text-align: left;
  text-decoration: none;
  position: relative;
}
#guideSection .guideContentsWrap .guideNav > ul > li.current > a{
  background: #F3F3F3;
}

/** 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;
  color: #2c2c2c;
  border-bottom: 2px solid #F3F3F3;
}


#guideSection .guideContents .guideSubTTL{
  display: block;
  width: 100%;
  padding: 1.3rem 1rem;
  margin-bottom: 2rem;
  border-top: 2px solid #F2F3EF;
  border-bottom: 2px solid #F2F3EF;
  font-family: var(--contentsTitleFont);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #7C7C7C;
  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;
  color: #2c2c2c;
}

#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);
  color: #2C2C2C;
}
.bgBox{
    display: block;
  padding: 1.5rem;
  margin-top: 2rem;
  background: var(--contentsBgGray);
  color: #2C2C2C;
}

#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 #F3F3F3;
  background: url("../img/common/arrow_narrow_bottom_gray.svg") calc(100% - 1.5rem) center no-repeat;
  background-size: 1.5rem auto;
  font-size: var(--fontSizeN);
  line-height: 1.7;
  color: #2c2c2c;
  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;
  color: #2c2c2c;
}

#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 #F2F3EF;
  border-bottom: 2px solid #F2F3EF;
  font-family: var(--contentsTitleFont);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #7C7C7C;
  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: #F2F3EF;
  font-size: var(--fontSizeL);
  font-weight: 500;
  color: #2c2c2c;
  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: #707070;
  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);
  color: #2c2c2c;
  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%;}



/* handling **********************/
#guideSection.handlingSection .faqList#IMPORTANT{
  display: block;
  margin-top: 6rem;
  padding: 2rem;
  border: 2px solid #EFEFEF;
}


#guideSection.handlingSection .faqList dl.faqBox{}


#guideSection.handlingSection .faqList dl.faqBox > dt::before{
  content: '';
  display: none;
}

#guideSection.handlingSection .faqList dl.faqBox > dt > span{
  display: block;
  width: 100%;
}

#guideSection.handlingSection .faqList dl.faqBox > dt > em{ display: none;}



#guideSection.handlingSection .faqList dl.faqBox > dd{
  display: block;
  padding: 2rem 2rem 2rem 2rem;
  position: relative;
}
#guideSection.handlingSection .faqList dl.faqBox > dd::before{
  content: '';
  display: none;
}


/**************************************
giftServiceBox
**************************************/
#guideSection .giftServiceBox{
  display: block;
  width: 100%;
}

#guideSection .giftServiceBox > .lede{
  display: block;
  margin-bottom: 5rem;
  text-align: center;
  font-size: var(--fontSizeN);
  line-height: 1.7;
  color: #2C2C2C;
}


#guideSection .giftServiceSection{
  display: block;
  width: 100%;
}

#guideSection .giftServiceSection + .giftServiceSection{padding-top: 8rem;}


#guideSection .giftServiceSection .giftServiceTTL{
  display: block;
  width: 100%;
  padding: 1.3rem 1rem;
  margin-bottom: 4rem;
  background: #F2F3EF;
  font-family: var(--contentsTitleFont);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #7C7C7C;
  text-align: center;
  border-radius: 4px;
}

#guideSection .giftServiceSection .img{display: block; margin: 0 auto 3rem;}
#guideSection .giftServiceSection .img > img{
  display: block;
  max-width: 100%;
  margin: 0 auto;
}

#guideSection .giftServiceSection p{
  text-align: center;
  line-height: 1.7;
}

#guideSection .giftServiceSection .price{
  margin-bottom: 1.5rem;
  font-size: 1.6rem;
  text-align: center;
  font-weight: 500;
  text-decoration: underline;
}

#guideSection .giftServiceSection > ul.caution{
  margin-top: 3rem;
  font-size: 1.2rem;
  line-height: 2;
  text-align: center;
}



