@charset "UTF-8";
#container {
  width: 100%;
  margin: 0;
  padding: 114px 0 0;
}
@media screen and (max-width: 740px) {
  #container {
    padding: 45px 0 0;
  }
}

#main_column.colnum1 {
  width: 100%;
  margin: 0;
}

#main_column h2.title, #main-content h2.title {
  padding: 0 0 14px;
  border: none;
  text-align: left;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 20px;
  letter-spacing: 0.05em;
  border-bottom: solid 1px #959595;
  margin-bottom: 26px;
}
@media screen and (max-width: 740px) {
  #main_column h2.title, #main-content h2.title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 20px;
    line-height: 30px;
    letter-spacing: 0.05em;
    background: none;
    color: #383838;
    padding: 0 0 16px;
  }
}

.legal {
  padding-top: 120px;
  padding-bottom: 190px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  align-items: flex-start;
  -webkit-box-align: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-align: flex-start;
}
@media screen and (max-width: 740px) {
  .legal {
    padding-top: 65px;
    padding-bottom: 120px;
    display: block;
  }
}
.legal .side {
  position: sticky;
  top: 120px;
  left: 0;
  margin-top: 2px;
  width: 352px;
}
.legal .side .list .item + .item {
  margin-top: 20px;
}
.legal .side .list .item a {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  align-items: flex-start;
  -webkit-box-align: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-align: flex-start;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 15px;
  line-height: 25px;
  letter-spacing: 0.05em;
  gap: 10px;
  color: #959595;
}
.legal .side .list .item a:before {
  display: block;
  margin-top: 8px;
  content: "";
  width: 5px;
  height: 10px;
  background: #959595;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
@media screen and (max-width: 740px) {
  .legal .side {
    margin: 0 -15px 49px;
    position: relative;
    top: auto;
    left: auto;
    width: calc(100% + 30px);
    padding: 0 15px;
  }
  .legal .side .list {
    width: 100%;
    max-width: 100%;
  }
  .legal .side .list .item {
    border-bottom: solid 1px #F0F0F0;
  }
  .legal .side .list .item + .item {
    margin: 0;
  }
  .legal .side .list .item a {
    color: #646464;
    padding: 0 0 8px;
    background: url("../img2026/common/sp/icn-down2.png") no-repeat right center;
    background-size: 14px 7px;
  }
  .legal .side .list .item a:before {
    display: none;
  }
}
.legal .main {
  flex: 1;
}
.legal .block {
  padding-top: 57px;
  margin-top: -57px;
}
.legal .block + .block {
  margin-top: 0;
}
.legal .block .body {
  padding-top: 5px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 15px;
  line-height: 28px;
  letter-spacing: 0.05em;
}
.legal .block .body img {
  max-width: 100%;
  height: auto;
}
.legal .block .body p + p {
  margin-top: 14px;
}
.legal .block .body .field-sub + .field-sub {
  margin-top: 13px;
}
.legal .block .body .field .row {
  padding: 33px 4px 31px;
  border-bottom: dashed 1px #CCCCCC;
}
.legal .block .body .field .row-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  align-items: flex-start;
  -webkit-box-align: flex-start;
  -webkit-align-items: flex-start;
  -ms-flex-align: flex-start;
}
.legal .block .body .field .label {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 25px;
  letter-spacing: 0.05em;
  color: #646464;
}
.legal .block .body .field .label-sub {
  width: 116px;
  margin-left: -0.5em;
}
.legal .block .body .field .txt {
  padding: 8px 0 0;
}
.legal .block .body .field .txt-sub {
  flex: 1;
}
.legal .block .body .line {
  border-bottom: solid 1px #959595;
}
.legal .block .body .strong {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 28px;
  letter-spacing: 0.05em;
}
.legal .block .body .strong.down-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  align-items: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  gap: 8px;
}
.legal .block .body .strong.down-title:before {
  display: block;
  margin-top: 2px;
  content: "";
  width: 11px;
  height: 7px;
  background: #383838;
  clip-path: polygon(100% 0, 0 0, 50% 100%);
}
.legal .block .body .notice {
  margin-top: 2px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 28px;
  letter-spacing: 0.05em;
}
.legal .block .body .dot-blank {
  display: flex;
  align-items: flex-start;
}
.legal .block .body .dot-blank:before {
  content: "・";
}
.legal .block .body .dot-blank + .field-sub {
  margin-top: 14px;
}
.legal .block .body .dot-blank + .field-sub + .dot-blank {
  margin-top: 27px;
}
.legal .block .body p + .strong {
  margin-top: 10px;
}
.legal .block .body p + .down-title {
  margin-top: 18px;
}
.legal .block .body p + img {
  margin-top: 26px;
}
.legal .block .body img + .notice {
  margin-top: 6px;
}
.legal .block .body p + dl {
  margin-top: 17px;
}
.legal .block .body dl dd {
  margin-top: 6px;
}
.legal .block .body .down-title + p {
  margin-top: 8px;
}
.legal .block .body .return-box {
  margin-top: 36px;
  background: #F3F1F2;
  text-align: center;
  padding: 37px 0 33px;
}
.legal .block .body .return-box .item {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 15px;
  line-height: 28px;
  letter-spacing: 0.05em;
}
.legal .block .body .return-box .item + .item {
  margin-top: 27px;
}
.legal .block .body .image {
  display: flex;
  padding: 0 16px;
  gap: 75px;
}
.legal .block .body .image + .label {
  margin-top: 32px;
}
.legal .block .body .label + .image {
  margin-top: 17px;
}
.legal .block .body .date {
  margin-top: 22px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 22px;
  letter-spacing: 0.05em;
  color: #646464;
}
@media screen and (max-width: 740px) {
  .legal .block {
    padding-top: 98px;
    margin-top: -98px;
  }
  .legal .block + .block {
    margin-top: -42px;
  }
  .legal .block .body .field {
    display: block;
    width: 100%;
  }
  .legal .block .body .field.-full .row {
    padding: 22px 0;
  }
  .legal .block .body .field-sub {
    display: block;
  }
  .legal .block .body .field .row {
    display: block;
    width: 100%;
    padding: 22px 0;
  }
  .legal .block .body .field .row-sub {
    display: block;
  }
  .legal .block .body .field .row-sub + .row-sub {
    margin-top: 9px;
  }
  .legal .block .body .field .label {
    display: block;
    width: 100%;
    padding: 0;
  }
  .legal .block .body .field .txt {
    display: block;
    width: 100%;
    padding: 11px 0 0;
  }
  .legal .block .body .field .txt-sub {
    margin-top: 4px;
  }
  .legal .block .body .strong {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.05em;
  }
  .legal .block .body .notice {
    margin-top: 5px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 25px;
    letter-spacing: 0.05em;
  }
  .legal .block .body p + .strong {
    margin-top: 9px;
  }
  .legal .block .body p + .down-title {
    margin-top: 29px;
  }
  .legal .block .body .down-title + p {
    margin-top: 7px;
  }
  .legal .block .body p + dl {
    margin-top: 33px;
  }
  .legal .block .body dl dd {
    margin-top: 5px;
  }
  .legal .block .body .return-box {
    padding: 35px 0 41px;
  }
  .legal .block .body .return-box .item {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 15px;
    line-height: 25px;
    letter-spacing: 0;
  }
  .legal .block .body .return-box .item + .item {
    margin-top: 26px;
  }
  .legal .block .body .image {
    flex-wrap: wrap;
    gap: 20px;
  }
  .legal .block .body .image .item {
    width: calc(50% - 10px);
  }
}