@charset "UTF-8";
/*==========================================================================
# reset - ブラウザの差異や不要なスタイルを無くすためのスタイル
========================================================================== */
body {
  margin-right: 0;
  margin-left: 0;
}

.ambassador-wrap h1,
.ambassador-wrap h2,
.ambassador-wrap h3,
.ambassador-wrap h4,
.ambassador-wrap h5,
.ambassador-wrap h6,
.ambassador-wrap p,
.ambassador-wrap ul,
.ambassador-wrap ol,
.ambassador-wrap dd, .ambassador-wrap dt {
  border: 0;
  font: inherit;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  list-style: none;
}

/* cutting-head e変更 納品時削除
================================*/
/*===============================================
# common
=================================================*/
.wrap {
  overflow: hidden;
}

.ambassador-wrap {
  width: 100%;
  font-size: 16px;
  color: #707070;
  font-family: 'Noto Serif JP', serif;
  line-height: 1.875;
  letter-spacing: 0.05em;
  position: relative;
  font-weight: 400;
  z-index: 1;
  overflow-x: hidden;
  padding-bottom: 90px;
}

.ambassador-wrap a {
  cursor: pointer;
  text-decoration: none;
  color: #AE7D46;
}

@media screen and (max-width: 1100px) {
  .ambassador-wrap {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .ambassador-wrap {
    font-size: 15px;
  }
}

.ambassador-wrap img {
  width: 100%;
}

.ambassador-wrap iframe {
  width: 100%;
  height: inherit;
}

.container {
  max-width: 1080px;
  margin: 0 auto;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  padding: 0 20px;
  position: relative;
  z-index: 11;
}

@media screen and (max-width: 1279px) {
  .container {
    padding: 0 20px;
  }
}

@media screen and (max-width: 767px) {
  .container {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    margin: 0 auto;
    padding: 0 15px;
  }
}

@media screen and (max-width: 767px) {
  .is-pc {
    display: none !important;
  }
}

.is-sp {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .is-sp {
    display: block !important;
  }
}

/*===============================================
# メイン
=================================================*/
section {
  margin-bottom: 120px;
}

@media screen and (max-width: 767px) {
  section {
    margin-bottom: 80px;
  }
}

section:last-child {
  margin-bottom: 0;
}

.bg-color {
  background-color: #FFF5ED;
}

.btn {
  display: block;
  max-width: 475px;
  width: 100%;
  margin: auto;
  border-radius: 100px;
  border: 2px solid #AE7D46;
  padding: 23px 0;
  text-align: center;
  font-size: 20px;
  font-weight: 700;
  background-color: #fff;
  color: #707070;
  line-height: 1;
  position: relative;
}

@media screen and (max-width: 767px) {
  .btn {
    max-width: 340px;
    padding: 18px 0;
  }
}

.btn::after {
  position: absolute;
  content: "";
  background: url(/-/media/cojp/product/hsm/special/ambassador-2023/img/arrow) center center/contain no-repeat;
  width: 20px;
  height: 18px;
  right: 21px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .btn::after {
    width: 18px;
    height: 16px;
  }
}

/* title
================================*/
.section-title h2 {
  text-align: center;
  font-size: 36px;
  letter-spacing: 0.1em;
  line-height: 1.34;
  font-weight: bold;
  color: #804319;
}

@media screen and (max-width: 1100px) {
  .section-title h2 {
    font-size: 32px;
  }
}

@media screen and (max-width: 767px) {
  .section-title h2 {
    font-size: 26px;
  }
}

/* mv
================================*/
.mv {
  margin: auto;
  width: 100%;
  max-width: 1080px;
}

/* section01
================================*/
.section01 {
  padding: 95px 0;
}

@media screen and (max-width: 767px) {
  .section01 {
    padding: 80px 0;
  }
}

.section01-title {
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .section01-title {
    margin-bottom: 35px;
  }
}

.section01-title h2 {
  color: #804319;
  font-size: 40px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.75;
  text-align: center;
}

@media screen and (max-width: 1100px) {
  .section01-title h2 {
    font-size: 34px;
  }
}

@media screen and (max-width: 767px) {
  .section01-title h2 {
    font-size: 24px;
  }
}

.section01-text p {
  text-align: center;
  font-size: 24px;
  letter-spacing: 0.1em;
  line-height: 2;
}

@media screen and (max-width: 1100px) {
  .section01-text p {
    font-size: 20px;
  }
}

@media screen and (max-width: 767px) {
  .section01-text p {
    font-size: 18px;
  }
}

/* section02
================================*/
.section02-wrap {
  margin: auto;
  margin-top: 85px;
  padding: 40px 30px 45px 30px;
  border: #FFF5EE 3px solid;
  border-radius: 10px;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  gap: 85px;
}

@media screen and (max-width: 1279px) {
  .section02-wrap {
    gap: 60px;
  }
}

@media screen and (max-width: 1100px) {
  .section02-wrap {
    gap: 40px;
    padding: 40px 15px 45px 15px;
  }
}

@media screen and (max-width: 767px) {
  .section02-wrap {
    margin-top: 60px;
    max-width: 400px;
    padding: 30px 15px 35px 15px;
    -ms-grid-columns: (1fr)[1];
        grid-template-columns: repeat(1, 1fr);
    gap: 70px;
  }
}

.section02-item p {
  margin-top: 40px;
  text-align: center;
  color: #AE7D46;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .section02-item p {
    margin-top: 20px;
  }
}

/* section03
================================*/
.section03 {
  padding-top: 125px;
  padding-bottom: 245px;
}

@media screen and (max-width: 767px) {
  .section03 {
    padding-top: 80px;
    padding-bottom: 120px;
  }
}

.section03-text {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .section03-text {
    margin-top: 40px;
  }
}

.section03-text p {
  color: #AE7D46;
  text-align: center;
}

.section03-wrap {
  margin: auto;
  margin-top: 75px;
  max-width: 1238px;
  padding: 0 15px;
}

@media screen and (max-width: 767px) {
  .section03-wrap {
    margin-top: 60px;
  }
}

.section03-inner {
  background-color: #fff;
  border-radius: 10px;
}

.section03-body {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .section03-body {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}

.section03-content {
  width: 43.2%;
  padding-top: 50px;
  padding-bottom: 60px;
}

@media screen and (max-width: 767px) {
  .section03-content {
    width: 100%;
    padding-top: 35px;
    padding-bottom: 0;
  }
}

.section03-content h3 {
  display: inline-block;
  color: #AE7D46;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.6;
  position: relative;
  border-bottom: 2px solid #AE7D46;
  border-spacing: 5px;
}

@media screen and (max-width: 767px) {
  .section03-content h3 {
    font-size: 26px;
  }
}

.section03-content-item {
  margin-top: 45px;
}

@media screen and (max-width: 767px) {
  .section03-content-item {
    margin-top: 30px;
  }
}

.section03-content-item h4 {
  font-size: 24px;
  color: #AE7D46;
  letter-spacing: 0.1em;
  line-height: 2;
  margin-bottom: 10px;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .section03-content-item h4 {
    font-size: 20px;
  }
}

.section03-content-item ul li {
  position: relative;
  letter-spacing: 0.1em;
  line-height: 1.5;
}

.section03-content-item ul li::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
}

.section03-content-item .dot li {
  padding-left: 18px;
}

.section03-content-item .dot li::before {
  content: "・";
}

.section03-content-item .kome li {
  padding-left: 18px;
}

.section03-content-item .kome li::before {
  content: "※";
}

.section03-content-item p {
  letter-spacing: 0.1em;
  line-height: 1.5;
}

.section03-img {
  width: 50%;
  -webkit-transform: translateY(140px);
          transform: translateY(140px);
}

@media screen and (max-width: 767px) {
  .section03-img {
    width: 100%;
    -webkit-transform: translateY(70px);
            transform: translateY(70px);
  }
}

.section03-img img {
  -webkit-box-shadow: 0 5px 30px #d8d8d8;
          box-shadow: 0 5px 30px #d8d8d8;
  border-radius: 20px;
}

/* section04
================================*/
.section04-wrap {
  margin-top: 75px;
  padding: 55px 30px 45px 30px;
  border: #FFF5EE 3px solid;
  border-radius: 10px;
}

@media screen and (max-width: 1100px) {
  .section04-wrap {
    margin-top: 65px;
    padding: 55px 15px 45px 15px;
  }
}

@media screen and (max-width: 767px) {
  .section04-wrap {
    margin-top: 55px;
    padding: 45px 15px 35px 15px;
  }
}

.section04-item {
  text-align: center;
}

.section04-item + .section04-item {
  margin-top: 50px;
}

@media screen and (max-width: 767px) {
  .section04-item + .section04-item {
    margin-top: 30px;
  }
}

.section04-item h3 {
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 2;
  color: #AE7D46;
}

@media screen and (max-width: 767px) {
  .section04-item h3 {
    font-size: 20px;
  }
}

.section04-item p {
  margin-top: 30px;
  font-size: 20px;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .section04-item p {
    font-size: 18px;
    margin-top: 15px;
  }
}

.section04-btn {
  margin-top: 75px;
}

@media screen and (max-width: 767px) {
  .section04-btn {
    margin-top: 55px;
  }
}

/* section05
================================*/
.section05 {
  padding-top: 138px;
  padding-bottom: 125px;
}

@media screen and (max-width: 767px) {
  .section05 {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

.section05-text {
  text-align: center;
  margin-top: 50px;
}

.section05-text p {
  color: #AE7D46;
}

.section05-wrap {
  margin-top: 25px;
}

.section05-item {
  margin-top: 87px;
  padding-left: 132px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .section05-item {
    padding-left: 80px;
    margin-top: 50px;
  }
}

.section05-item h3 {
  font-size: 30px;
  letter-spacing: 0.1em;
  font-weight: bold;
  line-height: 1.6;
  color: #AE7D46;
}

@media screen and (max-width: 767px) {
  .section05-item h3 {
    font-size: 16px;
  }
}

.section05-item .section05-item-body {
  margin-top: 23px;
  background-color: #fff;
  border-radius: 10px;
  padding: 28px 34px;
}

@media screen and (max-width: 767px) {
  .section05-item .section05-item-body {
    padding: 20px 15px;
    margin-top: 18px;
  }
}

.section05-item .section05-item-body p {
  letter-spacing: 0.1em;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .section05-item .section05-item-body p {
    font-size: 14px;
  }
}

.section05-item::before {
  position: absolute;
  content: "";
  background: url(/-/media/cojp/product/hsm/special/ambassador-2023/img/step1) center center/contain no-repeat;
  width: 107px;
  height: 139px;
  top: -82px;
  left: 0;
}

@media screen and (max-width: 767px) {
  .section05-item::before {
    width: 65px;
    height: 100px;
    top: -30px;
  }
}

.section05-item.-two::before {
  background: url(/-/media/cojp/product/hsm/special/ambassador-2023/img/step2) center center/contain no-repeat;
}

.section05-item.-three::before {
  background: url(/-/media/cojp/product/hsm/special/ambassador-2023/img/step3) center center/contain no-repeat;
}

.section05-item:not(:last-child)::after {
  position: absolute;
  content: "";
  background: url(/-/media/cojp/product/hsm/special/ambassador-2023/img/dot) center center/contain no-repeat;
  left: 52px;
  top: 80px;
  width: 5px;
  height: 105px;
}

@media screen and (max-width: 767px) {
  .section05-item:not(:last-child)::after {
    left: 31px;
    top: 80px;
  }
}

/* section06
================================*/
.section06-wrap {
  margin: auto;
  margin-top: 10px;
  max-width: 897px;
}

.section06-item {
  margin-top: 50px;
  border-radius: 20px;
  padding: 42px 44px;
}

@media screen and (max-width: 767px) {
  .section06-item {
    padding: 35px 15px;
    margin-top: 35px;
  }
}

.section06-item dt, .section06-item dd {
  position: relative;
  font-weight: bold;
  padding-left: 40px;
}

.section06-item dt::before, .section06-item dd::before {
  position: absolute;
  content: "";
  left: 0;
  top: -2px;
  border-radius: 50%;
  color: #fff;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 1.7;
}

@media screen and (max-width: 767px) {
  .section06-item dt::before, .section06-item dd::before {
    width: 28px;
    height: 28px;
  }
}

.section06-item dt {
  margin-bottom: 30px;
}

.section06-item dt::before {
  content: "Q";
  background-color: #707070;
}

.section06-item dd {
  font-weight: 300;
}

.section06-item dd::before {
  content: "A";
  background-color: #AE7D46;
}

/* section07
================================*/
.section07-text {
  margin: auto;
  margin-top: 50px;
  margin-bottom: 30px;
  max-width: 888px;
  word-break: break-all;
}

@media screen and (max-width: 767px) {
  .section07-text {
    margin-top: 40px;
  }
}

/* section08
================================*/
.section08-wrap {
  margin: auto;
  margin-top: 50px;
  max-width: 904px;
}

@media screen and (max-width: 767px) {
  .section08-wrap {
    margin-top: 40px;
  }
}

.section08-wrap ul li {
  padding-left: 18px;
  letter-spacing: 0.05em;
  position: relative;
}

@media screen and (max-width: 767px) {
  .section08-wrap ul li {
    margin-top: 3px;
  }
}

.section08-wrap ul li::before {
  position: absolute;
  content: "・";
  left: 0;
  top: 0;
}

.section08-btn {
  margin-top: 125px;
}

@media screen and (max-width: 767px) {
  .section08-btn {
    margin-top: 80px;
  }
}
/*# sourceMappingURL=style.css.map */