@charset "utf-8";

/*##### Base Width #####*/
.baseW {
  width: calc(100% - 40px);
  min-width: 1080px;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
.baseW02 {
  width: calc(100% - 40px);
  min-width: 1080px;
  max-width: 1820px;
  margin-left: auto;
  margin-right: auto;
}
.baseW03 {
  width: calc(100% - 40px);
  min-width: 1080px;
  max-width: 1724px;
  margin-left: auto;
  margin-right: auto;
}
.baseW04 {
  width: calc(100% - 40px);
  min-width: 1080px;
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
}
.baseW05 {
  width: calc(100% - 40px);
  min-width: 1080px;
  max-width: 1450px;
  margin-left: auto;
  margin-right: auto;
}
.baseW06 {
  width: calc(100% - 40px);
  min-width: 1080px;
  max-width: 1220px;
  margin-left: auto;
  margin-right: auto;
}
@media all and (max-width: 750px){
  .baseW,
  .baseW02,
  .baseW03,
  .baseW04,
  .baseW05,
  .baseW06 {
    width: 100%;
    min-width: auto;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }
  .baseSpW {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
  }
}


.boxBaseNoPost {
  padding: 3.0em 0;
  text-align: center;
}


/*##### ttlBase01 #####*/
.ttlBase01 {
  position: relative;
  margin-bottom: 0.55em;
  padding-left: 0.77em;
  padding-bottom: 0.83em;
  font-size: 2.0rem;
  color: #3b2916;
}
.ttlBase01.type02 {
  margin-bottom: 0.86em;
  padding: 0 0.2em 1.1em 0.27em;
  line-height: 1.55;
  letter-spacing: 0.023em;
  font-size: 2.05rem;
}
.ttlBase01.type03 {
  padding-left: 0;
  padding-bottom: 0.89em;
  text-align: center;
  letter-spacing: 0.036em;
  font-size: 2.3rem;
  font-weight: 700;
}
.ttlBase01.type04 {
  margin-bottom: 0.8em;
  padding-left: 0;
  padding-bottom: 1.1em;
  text-align: center;
  line-height: 1.59;
  letter-spacing: 0.06em;
  font-size: 2.145rem;
  font-weight: 700;
}
@media all and (max-width: 1520px){
  .ttlBase01.type03 {
    letter-spacing: 0.03em;
    font-size: 2.0vw;
  }
}
@media all and (max-width: 1135px){
  .ttlBase01.type03 {
    font-size: 1.6rem;
  }
}
@media all and (max-width: 750px){
  .ttlBase01 {
    padding-left: 0;
    font-size: 1.3rem;
  }
  .ttlBase01.type02 {
    padding: 0 0.2em 0.7em 0.27em;
    font-size: 1.3rem;
  }
  .ttlBase01.type03 {
    font-size: 1.3rem;
  }
  .ttlBase01.type04 {
    font-size: 1.3rem;
  }
}

.ttlBase01:before,
.ttlBase01:after {
  content: '';
  position: absolute;
  bottom: 0.05em;
  width: 0.25em;
  height: 0.25em;
  border-radius: 0.25em;
  background-color: #bfbeaa;
}
.ttlBase01:before {
  left: 0.15em;
}
.ttlBase01.type02:before {
  left: 0;
}
.ttlBase01.type03:before {
  left: calc(55% / 2 - 0.95em);/*calc(50% - 3.83em);*/
}
.ttlBase01:after {
  right: 0.15em;
}
.ttlBase01.type02:after {
  right: 0;
}
.ttlBase01.type03:after {
  right: calc(55% / 2 - 0.95em);;
}
@media all and (max-width: 750px){
  .ttlBase01.type03:before {
    left: calc((50% - 55% / 2) - 0.3em);
  }
  .ttlBase01.type03:after {
    right: calc((50% - 55% / 2) - 0.3em);
  }
}

.ttlBase01 .txtDeco01 {
  position: absolute;
  bottom: 0.09em;
  left: 0;
  right: 0;
  width: calc(100% - (0.53em * 2));
  height: 5px;
  margin: auto;
  border-top: 1px #bfbeaa solid;
  border-bottom: 1px #bfbeaa solid;
}
.ttlBase01.type02 .txtDeco01 {
  width: calc(100% - (0.4em * 2));
}
.ttlBase01.type03 .txtDeco01 {
  width: 55%;
}


/*##### ttlBase02 #####*/
.ttlBase02 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 3.65em;
}
@media all and (max-width: 750px){
  .ttlBase02 {
    margin-bottom: 1.8em;
  }
}

.ttlBase02 .ttlEn {
  margin-bottom: 0.16em;
  letter-spacing: 0.1em;
  font-family: var(--base-font-en);
  font-size: 1.45rem;
  font-weight: 600;
  color: #dad7b7;
}
.ttlBase02.type02 .ttlEn {
  margin-bottom: 0.05em;
  padding-left: 0.1em;
  letter-spacing: 0.04em;
  font-size: 2.4rem;
  font-weight: 700;
}
@media all and (max-width: 750px){
  .ttlBase02 .ttlEn {
    font-size: 1.0rem;
  }
  .ttlBase02.type02 .ttlEn {
    font-size: 1.1rem;
  }
}

.ttlBase02 .ttlJa {
  padding-left: 0.35em;
  letter-spacing: 0.12em;
  font-family: var(--base-font-ttl);
  font-size: 3.98rem;
  font-weight: 700;
  color: #3b2916;
}
.ttlBase02.type02 .ttlJa {
  letter-spacing: 0.025em;
  font-family: var(--base-font-ttl);
  font-size: 3.3rem;
}
@media all and (max-width: 750px){
  .ttlBase02 .ttlJa {
    padding-left: 0;
    letter-spacing: 0.1em;
    font-size: 1.4rem;
  }
  .ttlBase02.type02 .ttlJa {
    font-size: 1.4rem;
  }
}

.ttlBase02 .ttlJa .txtSmall {
  font-size: 2.8rem;
}
.ttlBase02.type02 .ttlJa .txtSmall {
  margin: 0 -0.14em;
  font-size: 2.45rem;
}
@media all and (max-width: 750px){
  .ttlBase02 .ttlJa .txtSmall {
    font-size: 1.0rem;
  }
  .ttlBase02.type02 .ttlJa .txtSmall {
    font-size: 1.0rem;
  }
}


/*##### ttlBase03 #####*/
.ttlBase03 {
  margin-bottom: 1.18em;
  padding-left: 0.35em;
  text-align: center;
  line-height: 1.15;
  letter-spacing: 0.049em;
  font-family: var(--base-font-en);
  font-size: 3.2rem;
  font-weight: 700;
  color: #3b2916;
}
@media all and (max-width: 750px){
  .ttlBase03 {
    padding-left: 0;
    font-size: 1.4rem;
  }
}

.ttlBase03 > span {
  position: relative;
}

.ttlBase03 > span:before,
.ttlBase03 > span:after {
  content: '';
  position: absolute;
  top: 0.31em;
  width: 3px;
  height: 1.15em;
  background-color: #3b2916;
}
.ttlBase03 > span:before {
  left: -0.93em;
  transform: rotate(-23deg);
}
.ttlBase03 > span:after {
  right: -0.85em;
  transform: rotate(23deg);
}


/*##### ttlBase04 #####*/
.ttlBase04 {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  height: 2.86em;
  margin-bottom: 2.27em;
  padding-bottom: 0.1em;
  border-radius: 0.7em;
  background-color: #359682;
  letter-spacing: 0.08em;
  font-size: 2.2rem;
  font-weight: 700;
  color: #fff;
}
@media all and (max-width: 750px){
  .ttlBase04 {
    height: 2.3em;
    margin-bottom: 1.2em;
    border-radius: 3vw;
    font-size: 1.4rem;
  }
}


/*##### ttlBase05 #####*/
.ttlBase05 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 3.95em;
  font-weight: 700;
  color: #3b2916;
}
@media all and (max-width: 750px){
  .ttlBase05 {
    margin-bottom: 1.5em;
  }
}

.ttlBase05 .ttlEn {
  margin-bottom: 0.1em;
  font-family: var(--base-font-en);
  font-size: 1.5rem;
  color: #dad7b7;
}
@media all and (max-width: 750px){
  .ttlBase05 .ttlEn {
    font-size: 1.0rem;
  }
}

.ttlBase05 .ttlJa {
  position: relative;
  padding-left: 0.14em;
  letter-spacing: 0.11em;
  font-size: 4.0rem;
}
@media all and (max-width: 750px){
  .ttlBase05 .ttlJa {
    padding-left: 0;
    letter-spacing: 0.1em;
    font-size: 1.3rem;
  }
}

.ttlBase05 .ttlJa:before,
.ttlBase05 .ttlJa:after {
  content: '';
  position: absolute;
  top: 0.07em;
  width: 3px;
  height: 1.43em;
  background-color: #3b2916;
}
.ttlBase05 .ttlJa:before {
  left: -1.8em;
  transform: rotate(-45deg);
}
.ttlBase05 .ttlJa:after {
  right: -1.9em;
  transform: rotate(45deg);
}

.ttlBase05 .ttlJa .txtSmall {
  font-size: 2.75rem;
}
@media all and (max-width: 750px){
  .ttlBase05 .ttlJa .txtSmall {
    font-size: 1.0rem;
  }
}


/*##### ttlBase06 #####*/
.ttlBase06 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  min-height: 10.7em;
  margin-bottom: 3.7em;
  padding: 1.53em 0 1.0em 0;
  background-image: url('./../../images/base/base-ttl-bg01.jpg');
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}
@media all and (max-width: 750px){
  .ttlBase06 {
    min-height: 5.0em;
    margin-bottom: 1.5em;
  }
}

.ttlBase06 .ttlJa {
  margin-bottom: 0.22em;
  margin-left: 0.25em;
  letter-spacing: 0.25em;
  font-size: 2.2rem;
  font-weight: 700;
  color: #3b2916;
}
@media all and (max-width: 750px){
  .ttlBase06 .ttlJa {
    margin-bottom: 0;
    margin-left: 0;
    letter-spacing: 0.1em;
    font-size: 1.4rem;
  }
}

.ttlBase06 .ttlEn {
  letter-spacing: 0.1em;
  font-family: var(--base-font-en);
  font-size: 1.13rem;
  color: rgb(59, 41, 22, 0.2);
}
@media all and (max-width: 750px){
  .ttlBase06 .ttlEn {
    font-size: 1.0rem;
  }
}

.ttlBase06 .ulSearchKeywords {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  margin: 0.7em 0.3em 0.3em 0.3em;
}

.ttlBase06 .ulSearchKeywords > li {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  margin: 0.2em;
  padding: 0.15em 0.5em;
  border-radius: 0.5em;
  background-color: #fff;
  letter-spacing: 0.12em;
  font-size: 1.25em;
}
@media all and (max-width: 750px){
  .ttlBase06 .ulSearchKeywords > li {
    padding: 0.15em 0.3em;
    letter-spacing: 0.05em;
    font-size: 0.85rem;
  }
}

.ttlBase06 .ulSearchKeywords > li:before {
  content: '#';
}


/*##### boxBaseCopy #####*/
.boxBaseCopy .ttlBaseCopy {
  margin-bottom: 1.6em;
  line-height: 1.83;
  letter-spacing: 0.235em;
  font-family: var(--base-font-min);
  font-size: 1.8rem;
  font-weight: 700;
}
@media all and (max-width: 750px){
  .boxBaseCopy .ttlBaseCopy {
    margin-bottom: 0.8em;
    line-height: 1.6;
    letter-spacing: 0.1em;
    font-size: 1.2rem;
  }
}

.boxBaseCopy .boxBaseCopyCom > p {
  line-height: 1.68;
  letter-spacing: 0.12em;
  font-size: 1.27rem;
}
@media all and (max-width: 750px){
  .boxBaseCopy .boxBaseCopyCom > p {
    letter-spacing: 0.1em;
    font-size: 0.9rem;
  }
}


/*##### icnBaseWeekDay #####*/
.icnBaseWeekDay {
  position: relative;
  top: -0.15em;
  display: -webkit-inline-flex;
  display: inline-flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  width: 1.5em;
  height: 1.5em;
  margin-left: 0.4em;
  padding-bottom: 0.1em;
  border-radius: 1.5em;
  background-color: #939393;
  line-height: 1.0;
  letter-spacing: normal;
  font-size: 1.0rem;
  color: #fff;
}
.icnBaseWeekDay.type6 {
  background-color: #3c7bd1;
}
.icnBaseWeekDay.type0,
.icnBaseWeekDay.typeHoliday {
  background-color: #f1564a;
}
@media all and (max-width: 750px){
  .icnBaseWeekDay {
    font-size: 0.8rem;
  }
}


/*##### BasePageMenu01 #####*/
.ulBasePageMenu01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.ulBasePageMenu01 > li {
  margin-right: 1.4em;
}
.ulBasePageMenu01 > li:last-child {
  margin-right: 0;
}
@media all and (max-width: 750px){
  .ulBasePageMenu01 > li {
    margin-right: 1.0em;
    margin-bottom: 1.5em;
  }
}

.ulBasePageMenu01 > li > a {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  min-height: 3.6em;
  padding: 0.5em 1.85em 0.6em 1.85em;
  border-top: 1px #000 solid;
  letter-spacing: 0.1em;
  font-size: 1.25rem;
}
@media all and (max-width: 1200px){
  .ulBasePageMenu01 > li > a {
    padding: 0.5em 1.5em 0.6em 1.5em;
  }
}
@media all and (max-width: 750px){
  .ulBasePageMenu01 > li > a {
    min-height: 3.0em;
    padding: 0.5em 0.7em 0.5em 0.7em;
    font-size: 1.0rem;
  }
}

.ulBasePageMenu01 > li > a:after {
  content: '';
  position: absolute;
  bottom: 0.05em;
  left: 0;
  right: 0;
  width: 0.35em;
  height: 0.35em;
  margin: auto;
  border-right: 1px #000 solid;
  border-bottom: 1px #000 solid;
  transform: rotate(45deg) skew(-8deg, -8deg);
}

.ulBasePageMenu01 > li > a .str2 {
  letter-spacing: 1.0em;
}


/*##### Base Com #####*/
.boxBaseCom > p {
  line-height: 1.7;
  letter-spacing: 0.08em;
  font-size: 1.13rem;
}
@media all and (max-width: 750px){
  .boxBaseCom > p {
    line-height: 1.6;
    font-size: 0.9rem;
  }
}

.boxBaseCom > p + p {
  margin-top: 1.5em;
}


/*##### Box Base Img #####*/
.boxBaseImg,
.boxBaseImg.typeLeft {
  text-align: left;
}
.boxBaseImg.typeCenter {
  text-align: center;
}
.boxBaseImg.typeRight {
  text-align: right;
}


/*##### Box Base Link #####*/
.boxBaseLink,
.boxBaseLink.typeLeft {
  text-align: left;
}
.boxBaseLink.typeCenter {
  text-align: center;
}
.boxBaseLink.typeRight {
  text-align: right;
}


/*##### linkBase01 #####*/
.linkBase01 {
  position: relative;
  padding-top: 0.3em;
  padding-right: 1.75em;
  letter-spacing: 0.14em;
  font-size: 1.35rem;
  color: #8e8a75;
}
@media all and (max-width: 750px){
  .linkBase01 {
    padding-top: 0.3em;
    padding-right: 1.5em;
    letter-spacing: 0.1em;
    font-size: 1.0rem;
  }
}

.linkBase01:before,
.linkBase01:after {
  content: '';
  position: absolute;
  bottom: 0;
  margin: auto;
}
.linkBase01:before {
  top: 0.3em;
  right: 0;
  width: 1.1em;
  height: 1.1em;
  border-radius: 1.1em;
  background-color: #dad7b7;
}
.linkBase01:after {
  z-index: 2;
  top: 0.3em;
  right: 0.42em;
  width: 0.4em;
  height: 0.4em;
  border-top: 1px #fff solid;
  border-right: 1px #fff solid;
  transform: rotate(45deg);
}


/*##### baseArrow01 #####*/
.baseArrow01 {
  position: relative;
  color: #8e8a75;
}

.baseArrow01:before,
.baseArrow01:after {
  content: '';
  position: absolute;
  bottom: 0;
  margin: auto;
}
.baseArrow01:before {
  top: 0.3em;
  right: 0;
  width: 1.1em;
  height: 1.1em;
  border-radius: 1.1em;
}
.baseArrow01:before {
  background-color: #dad7b7;
}
.baseArrow01:after {
  z-index: 2;
  top: 0.3em;
  right: 5.4%;
  width: 0.4em;
  height: 0.4em;
  border-top: 1px #fff solid;
  border-right: 1px #fff solid;
  transform: rotate(45deg);
}


/*##### Dl Base #####*/
.dlBase {
  letter-spacing: 0.08em;
  font-size: 1.13rem;
}
.dlBase.typeCol {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}
@media all and (max-width: 750px){
  .dlBase {
    font-size: 0.9rem;
  }
}

.dlBase.typeCol > dt {
  padding-right: 0.5em;
}
.dlBase.typeCol.addMark01 > dt {
  position: relative;
  padding-right: 0.8em;
}

.dlBase.typeCol.addMark01 > dt:after {
  content: '：';
  position: absolute;
  right: 0.2em;
}


/*##### dlBase01 #####*/
.dlBase01 {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  margin-bottom: 1.18em;
  padding-bottom: 1.1em;
  line-height: 1.7;
  letter-spacing: 0.12em;
  font-size: 1.13rem;
}
@media all and (max-width: 750px){
  .dlBase01 {
    margin-bottom: 0.8em;
  }
}

.dlBase01:last-child {
  margin-bottom: 0;
}
@media all and (max-width: 750px){
  .dlBase01 {
    display: block;
    padding-bottom: 0.8em;
    font-size: 0.9rem;
  }
}

.dlBase01:before,
.dlBase01:after {
  content: '';
  position: absolute;
  bottom: -1px;
  height: 1px;
  background-color: #d9d9d9;
}
.dlBase01:before {
  left: 0;
  width: calc(185px - 32px);
}
.dlBase01:after {
  right: 0;
  width: calc(100% - 185px);
}
@media all and (max-width: 750px){
  .dlBase01:before {
    content: none;
  }
  .dlBase01:after {
    width: 100%;
    right: auto;
    left: 0;
  }
}

.dlBase01 > dt {
  position: relative;
  width: 185px;
  padding-left: 1.6em;
}
@media all and (max-width: 750px){
  .dlBase01 > dt {
    width: 100%;
    margin-bottom: 0.2em;
    padding-left: 1.2em;
  }
}

.dlBase01 > dt:before {
  content: '';
  position: absolute;
  top: 0.7em;
  left: 0.5em;
  width: 0.32em;
  border-radius: 0.32em;
  background-color: #379b87;
  aspect-ratio: 1 / 1;
}
@media all and (max-width: 750px){
  .dlBase01 > dt:before {
    left: 0.3em;
  }
}

.dlBase01 > dt .str2 {
  letter-spacing: 1.2em;
}

.dlBase01 > dd {
  width: calc(100% - 185px);
  padding-left: 0.1em;
}
@media all and (max-width: 750px){
  .dlBase01 > dd {
    width: 100%;
    padding-left: 1.2em;
  }
}

.dlBase01 > dd a {
  text-decoration: underline;
}


/*##### Ul Base #####*/
.ulBase > li {
  margin-bottom: 0.8em;
  line-height: 1.7;
  letter-spacing: 0.08em;
  font-size: 1.13rem;
}
@media all and (max-width: 750px){
  .ulBase > li {
    line-height: 1.6;
    font-size: 0.9rem;
  }
}


/*##### ulBase01 #####*/
.ulBase01 > li {
  margin-bottom: 0.3em;
  padding-left: 1.3em;
  line-height: 1.6;
  letter-spacing: 0.12em;
  font-size: 1.13rem;
  text-indent: -1.3em;
}
@media all and (max-width: 750px){
  .ulBase01 > li {
    letter-spacing: 0.1em;
    font-size: 0.9rem;
  }
}

.ulBase01 > li:last-child {
  margin-bottom: 0;
}

.ulBase01 li:before {
  content: '・';
  margin-right: 0.3em;
}


/*##### ulBaseTopMenu #####*/
.ulBaseTopMenu {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.ulBaseTopMenu > li {
  position: relative;
  width: 23.6%;
  margin-right: calc((100% - 23.6% * 4) / 3);
  margin-bottom: 2.85em;
}
.ulBaseTopMenu.type02 > li {
  width: auto;
  margin: 0 1% 2.85em 1%;
}
.ulBaseTopMenu > li:nth-child(4n),
.ulBaseTopMenu > li:last-child {
  margin-right: 0;
}
.ulBaseTopMenu.type02 > li:nth-child(4n),
.ulBaseTopMenu.type02 > li:last-child {
  margin-right: 2%;
}
@media all and (max-width: 750px){
  .ulBaseTopMenu > li {
    width: auto;
    margin-left: 0.6vw;
    margin-right: 0.6vw;
    margin-bottom: 1.3em;
  }
  .ulBaseTopMenu > li:nth-child(4n),
  .ulBaseTopMenu.type02 > li:last-child {
    margin-right: 0.6vw;
  }
}

.ulBaseTopMenu > li:before {
  content: '';
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 100%;
  height: calc(100% + 4px);
  border-radius: 15px;
  border-top-left-radius: 17px;
  border-top-right-radius: 17px;
  background-color: #379b87;
}
@media all and (max-width: 750px){
  .ulBaseTopMenu > li:before {
    bottom: -1vw;
    height: calc(100% + 1vw);
    border-radius: 3vw;
    border-top-left-radius: 3vw;
    border-top-right-radius: 3vw;
  }
}

.ulBaseTopMenu > li a {
  position: relative;
  z-index: 2;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  height: 2.65em;
  padding-top: 0.1em;
  padding: 0.6em 0.8em 0.5em 0.8em;
  border-radius: 15px;
  background-color: #fff;
  letter-spacing: 0.08em;
  font-size: 1.8rem;
  font-weight: 700;
  color: #379b87;
}
@media all and (max-width: 750px){
  .ulBaseTopMenu > li a {
    height: 2.3em;
    padding: 0.4em 0.5em 0.4em 0.5em;
    border-radius: 2vw;
    font-size: 1.0rem;
  }
}

.ulBaseTopMenu > li a:before {
  content: '';
  position: absolute;
  bottom: -0.5em;
  left: 0;
  right: 0;
  width: 0.85em;
  height: 0.85em;
  margin: auto;
  border-radius: 0.85em;
  background-color: #379b87;
}

.ulBaseTopMenu > li a:after {
  content: '';
  position: absolute;
  z-index: 2;
  bottom: -0.13em;
  left: 0;
  right: 0;
  width: 0.3em;
  height: 0.3em;
  margin: auto;
  border-right: 1px #fff solid;
  border-bottom: 1px #fff solid;
  transform: rotate(45deg);
}


/*##### ulBaseCaution01 #####*/
.ulBaseCaution01 > li {
  margin-bottom: 0.3em;
  padding-left: 1.3em;
  line-height: 1.6;
  letter-spacing: 0.12em;
  font-size: 1.0rem;
  text-indent: -1.3em;
}
@media all and (max-width: 750px){
  .ulBaseCaution01 > li {
    letter-spacing: 0.1em;
    font-size: 0.9rem;
  }
}

.ulBaseCaution01 > li:last-child {
  margin-bottom: 0;
}

.ulBaseCaution01 > li:before {
  content: '※';
  margin-right: 0.2em;
}


/*##### ulBaseCatMenu01 #####*/
.boxBaseCatMenu01 {
  margin-top: 4.1em;
  margin-bottom: 8.95em;
}

.ulBaseCatMenu01 {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.ulBaseCatMenu01 > li {
  margin-right: 2.0%;
}
.ulBaseCatMenu01 > li:last-child {
  margin-right: 0;
}

.ulBaseCatMenu01 > li a {
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  min-width: 140px;
  height: 42px;
  padding: 0.4em 1.8em 0.3em 1.8em;
  background: linear-gradient(30deg, #05c2b7 0%, #37aedf 89%);
  border-radius: 48px;
  letter-spacing: 0.01em;
  font-size: 1.25rem;
  color: #005a9e;
}
.ulBaseCatMenu01 > li.current a,
.ulBaseCatMenu01 > li a:hover {
  color: #fff;
  opacity: 1;
}
.ulBaseCatMenu01 > li.current a {
  pointer-events: none;
}

.ulBaseCatMenu01 > li a:after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  width: calc(100% - 4px);
  height: calc(100% - 4px);
  margin: auto;
  background-color: #fff;
  border-radius: 50px;
}
.ulBaseCatMenu01 > li.current a:after,
.ulBaseCatMenu01 > li a:hover:after {
  background-color: transparent;
}

.ulBaseCatMenu01 > li a > span {
  position: relative;
  z-index: 3;
}


/*##### UlBaseListCat #####*/
.ulBaseListCat {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
}

.ulBaseListCat.typeBg > li,
.ulBaseListCat.typeBorder > li {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  -webkit-align-items: center;
  align-items: center;
  min-height: 1.7em;
  margin-bottom: 0.3em;
  padding: 0.3em 0.6em 0.2em 0.6em;
  border-radius: 1.7em;
  background-color: #eee;
  line-height: 1.0;
  font-size: 0.9rem;
}

.ulBaseListCat.typeBg > li + li,
.ulBaseListCat.typeBorder > li + li {
  margin-left: 0.3em;
}


/*##### Color #####*/
.cBaseRed {
  color: #e60012;
}

.txtMarker01 {
  background: linear-gradient(transparent 1%, #ffe63d 1%);
}


.txtBaseUnitSuper {
  position: relative;
  left: -0.1em;
  vertical-align: super;
  font-size: 0.73rem;
}
@media all and (max-width: 750px){
  .txtBaseUnitSuper {
    font-size: 0.4rem;
  }
}

.txtBaseUnitSub {
  position: relative;
  bottom: 0.34em;
  vertical-align: sub;
  font-size: 0.73rem;
}
@media all and (max-width: 750px){
  .txtBaseUnitSub {
    font-size: 0.4rem;
  }
}


/*##### baseTextShadow #####*/
.txtBaseShadowWhite {
  text-shadow: 1px 1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, -1px -1px 0 #fff, 0 0 5px #fff, 0 0 10px #fff, 0 0 15px #fff;
}

.txtBaseShadowGray {
  text-shadow: 1px 1px 0 #f6f6f6, 1px -1px 0 #f6f6f6, -1px 1px 0 #f6f6f6, -1px -1px 0 #f6f6f6, 0 0 5px #f6f6f6, 0 0 10px #f6f6f6, 0 0 15px #f6f6f6;
}


/*##### BaseMB #####*/
.baseMB {
  margin-bottom: 1.0em;
}

.baseMB02 {
  margin-bottom: 1.5em;
}

.baseMB03 {
  margin-bottom: 2.0em;
}

.baseMB04 {
  margin-bottom: 2.5em;
}

.baseMB05 {
  margin-bottom: 3.0em;
}

.baseMB06 {
  margin-bottom: 3.5em;
}

.baseMB07 {
  margin-bottom: 4.0em;
}

.baseMB08 {
  margin-bottom: 4.5em;
}

@media all and (max-width: 767px){
  .baseMB07,
  .baseMB08 {
    margin-bottom: 3.5em;
  }
}