@media screen and (min-width: 768px) {
  .positionSect__head + .positionSect__cont {
    margin-top: 40px;
  }
}

@media screen and (max-width: 768px) {
  .positionSect__head + .positionSect__cont {
    margin-top: calc(24 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect__txt {
    color: #000000;
    font-size: 14px;
    letter-spacing: .1em;
    line-height: 2;
    margin-bottom: 40px;
  }
}

@media screen and (max-width: 768px) {
  .positionSect__txt {
    color: #000000;
    font-size: 12px;
    letter-spacing: .1em;
    line-height: 2;
    margin-bottom: calc(32 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect__cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media screen and (max-width: 768px) {
  .positionSect__cont {
    margin-top: calc(24 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect__main {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: calc(818 / 1248 * 100%);
  }
}

@media screen and (min-width: 768px) {
  .positionSect__image {
    margin-top: auto;
  }
}

@media screen and (max-width: 768px) {
  .positionSect__image {
    position: relative;
  }
}

@media screen and (max-width: 768px) {
  .positionSect__image .touchFigure {
    margin-left: calc(-24 / 390 * 100vw);
    margin-right: calc(-24 / 390 * 100vw);
  }
}

@media screen and (max-width: 768px) {
  .positionSect__image .touchFigure--swipe {
    height: calc(240 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect__side {
    -ms-flex-item-align: end;
        align-self: flex-end;
    width: calc(500 / 1248 * 100%);
  }
}

@media screen and (max-width: 768px) {
  .positionSect__side {
    margin-top: calc(32 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect__side .photo__capIn {
    bottom: 60px;
  }
}

@media screen and (max-width: 768px) {
  .positionSect__side .photo__capIn {
    bottom: calc(45 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect__side .caption {
    margin-top: 8px;
  }
}

@media screen and (max-width: 768px) {
  .positionSect__side .caption {
    margin-top: calc(12 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect02 {
    display: grid;
    gap: 48px calc(40 / 1248 * 100%);
    grid-template-columns: 1fr .47496947496fr;
  }
}

@media screen and (min-width: 768px) {
  .positionSect02__main {
    padding-top: 12px;
  }
}

@media screen and (min-width: 768px) {
  .positionSect02__side {
    grid-row: auto / span 3;
  }
}

@media screen and (max-width: 768px) {
  .positionSect02__side {
    margin: calc(32 / 390 * 100vw) auto 0;
    width: calc(280 / 390 * 100vw);
  }
}

.positionSect02__notes {
  color: #666464;
  font-size: 10px;
  letter-spacing: .1em;
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .positionSect02__notes {
    margin-top: 24px;
  }
}

@media screen and (max-width: 768px) {
  .positionSect02__notes {
    margin-top: calc(24 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect02__figure {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 768px) {
  .positionSect02__figure {
    margin-top: 64px;
  }
}

@media screen and (min-width: 768px) {
  .positionSect02__figure .photo:nth-child(1) {
    width: calc(307 / 819 * 100%);
  }
}

@media screen and (max-width: 768px) {
  .positionSect02__figure .photo:nth-child(1) {
    margin: 0 auto;
    width: 280px;
  }
}

@media screen and (min-width: 768px) {
  .positionSect02__figure .photo:nth-child(1) .photo__caption {
    padding: 0 40px;
  }
}

@media screen and (min-width: 768px) {
  .positionSect02__figure .photo:nth-child(2) {
    width: calc(496 / 819 * 100%);
  }
}

@media screen and (max-width: 768px) {
  .positionSect02__figure .photo:nth-child(2) {
    margin-top: 64px;
  }
}

.positionSect02 .headingCombi {
  max-width: 100%;
}

@media screen and (min-width: 768px) {
  .positionSect02 .heading--default {
    color: #000000;
    font-size: 24px;
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 1.95;
  }
}

@media screen and (max-width: 768px) {
  .positionSect02 .heading--default {
    color: #000000;
    font-size: calc(24 / 390 * 100vw);
    font-weight: 400;
    letter-spacing: .06em;
    line-height: 1.95;
  }
}

@media screen and (min-width: 768px) {
  .positionSect02 .heading + .txt {
    color: #000000;
    font-size: 14px;
    letter-spacing: .1em;
    line-height: 2;
  }
}

@media screen and (max-width: 768px) {
  .positionSect02 .heading + .txt {
    color: #000000;
    font-size: 12px;
    letter-spacing: .1em;
    line-height: 2;
    margin-top: calc(32 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect03 {
    display: grid;
    gap: 48px calc(40 / 1248 * 100%);
    grid-template-columns: 1fr .47496947496fr;
  }
}

@media screen and (min-width: 768px) {
  .positionSect03__main {
    padding-top: 12px;
  }
}

@media screen and (min-width: 768px) {
  .positionSect03__side {
    grid-row: auto / span 3;
  }
}

@media screen and (max-width: 768px) {
  .positionSect03__side {
    margin: calc(32 / 390 * 100vw) auto 0;
    width: calc(280 / 390 * 100vw);
  }
}

.positionSect03__notes {
  color: #666464;
  font-size: 10px;
  letter-spacing: .1em;
  line-height: 2;
}

@media screen and (min-width: 768px) {
  .positionSect03__notes {
    margin-top: 24px;
  }
}

@media screen and (max-width: 768px) {
  .positionSect03__notes {
    margin-top: calc(24 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .positionSect03__figure {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (max-width: 768px) {
  .positionSect03__figure {
    margin-top: 64px;
  }
}

@media screen and (min-width: 768px) {
  .positionSect03__figure .photo:nth-child(1) {
    width: calc(307 / 819 * 100%);
  }
}

@media screen and (max-width: 768px) {
  .positionSect03__figure .photo:nth-child(1) {
    margin: 0 auto;
    width: 280px;
  }
}

@media screen and (min-width: 768px) {
  .positionSect03__figure .photo:nth-child(1) .photo__caption {
    padding: 0 40px;
  }
}

@media screen and (min-width: 768px) {
  .positionSect03__figure .photo:nth-child(2) {
    width: calc(496 / 819 * 100%);
  }
}

@media screen and (max-width: 768px) {
  .positionSect03__figure .photo:nth-child(2) {
    margin-top: 64px;
  }
}

.positionSect03 .headingCombi {
  max-width: 100%;
}

@media screen and (min-width: 768px) {
  .positionSect03 .heading--default {
    color: #000000;
    font-size: 24px;
    font-weight: 400;
    letter-spacing: .1em;
    line-height: 1.95;
  }
}

@media screen and (max-width: 768px) {
  .positionSect03 .heading--default {
    color: #000000;
    font-size: calc(24 / 390 * 100vw);
    font-weight: 400;
    letter-spacing: .06em;
    line-height: 1.95;
  }
}

@media screen and (min-width: 768px) {
  .positionSect03 .heading + .txt {
    color: #000000;
    font-size: 14px;
    letter-spacing: .1em;
    line-height: 2;
  }
}

@media screen and (max-width: 768px) {
  .positionSect03 .heading + .txt {
    color: #000000;
    font-size: 12px;
    letter-spacing: .1em;
    line-height: 2;
    margin-top: calc(32 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .wrap {
    max-width: 1248px;
    width: calc(1248 / 1440 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .position-01 {
    margin-top: 160px;
  }
}

@media screen and (max-width: 768px) {
  .position-01 {
    margin-top: calc(63 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .position-02 {
    margin-top: 128px;
  }
}

@media screen and (max-width: 768px) {
  .position-02 {
    margin-top: calc(74 / 390 * 100vw);
  }
}

@media screen and (min-width: 768px) {
  .position-03 {
    margin-top: 128px;
  }
}

@media screen and (max-width: 768px) {
  .position-03 {
    margin-top: calc(74 / 390 * 100vw);
  }
}
