@charset "utf-8";

/*##### Base Width #####*/
.baseW {
  width: calc(100% - 40px);
  min-width: 1080px;
  max-width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
.baseW02 {
  width: 1080px;
  margin-left: auto;
  margin-right: auto;
}
@media all and (max-width: 750px){
  .baseW,
  .baseW02 {
    width: 100%;
    min-width: auto;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }
  .baseSpW {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
  }
}


/*##### 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;
}


/*##### 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;
}


/*##### 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;
}


/*##### 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.4em 0.2em 0.4em;
  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;
  }
}