@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

@media only screen and (min-width: 768px) {
  .sp {
    display: none !important;
  }
}

@media only screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

@media(prefers-reduced-motion:no-preference) {
    html {
        scroll-behavior: smooth;
        scroll-padding-top: clamp(0px, 10.6666666667vw, 80px);
    }
}

:root {
  --color-yellow_light: #fffcd9;
  --color-yellow_medium: #fff0a8;
  --color-lightblue_light: #ddeffb;
  --color-lightblue_medium: #cae4f5;
  --color-orenge: #f08539;
  --color-blue: #3790ce;
  --color-red: #e60012;
}

.rel {
  position: relative;
}

.abs {
  position: absolute;
}

.marugo {
  font-family: var(--font-family-marugo) !important;
}

#main {
  overflow: hidden;
}

#eesrescue {
  max-width: 750px;
  margin: auto;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Helvetica Neue", Arial, "Hiragino Sans", "BIZ UDPGothic", Meiryo, sans-serif;
}


#eesrescue .marker {
  text-decoration-line: underline;
  text-decoration-thickness: var(--mk--marker--thickness, 0.45em);
  text-decoration-color: rgb(0, 0, 0);
  text-underline-offset: -0.25em;
  text-decoration-skip-ink: none;
}

#eesrescue .fv p {
  bottom: 5%;
  left: 50%;
  transform: translateX(-50%);
  font-size: clamp(0px, calc(100vw / 750 * 26), 26px);
  line-height: 2;
  text-align: center;
  width: 100%;
}

#eesrescue .fv p span {
  text-decoration: underline;
}


#eesrescue .idea {
  background-color: #fff0a8;
  padding: clamp(0px, calc(100vw / 750 * 30), 30px);
}

#eesrescue .idea_inner {
  background-color: #fff;
  background-image: url(../img/idea_bg1.jpg);
  box-shadow: 10px 10px 10px rgba(221, 160, 0, 0.3);
  padding: clamp(0px, calc(100vw / 750 * 30), 30px) 0 clamp(0px, calc(100vw / 750 * 70), 70px);
  position: relative;
}

#eesrescue .idea_inner::before {
  content: "";
  width: clamp(0px, calc(100vw / 750 * 17), 17px);
  height: 98%;
  background-image: url(../img/idea_bg2.png);
  background-repeat: repeat-y;
  background-size: 100% auto;
  position: absolute;
  top: 1%;
  left: clamp(0px, calc(100vw / 750 * 12), 12px);
}

#eesrescue .idea_head {
  display: flex;
  align-items: center;
  margin-bottom: clamp(0px, calc(100vw / 750 * 40), 40px);
  padding: 0 clamp(0px, calc(100vw / 750 * 30), 30px) 0 clamp(0px, calc(100vw / 750 * 40), 40px);
  gap: clamp(0px, calc(100vw / 750 * 15), 15px);
}

#eesrescue .idea_head img {
  width: 29.84%;
}

#eesrescue .idea_head h2 {
  font-size: clamp(0px, calc(100vw / 750 * 37), 37px);
  font-weight: 600;
  font-feature-settings: "palt";
  line-height: 1.6;
  text-decoration-color: var(--color-lightblue_medium);
}

#eesrescue .idea_content {
  padding: 0 clamp(0px, calc(100vw / 750 * 30), 30px) 0 clamp(0px, calc(100vw / 750 * 65), 65px);
}

#eesrescue .idea_content_ttl {
  background-color: var(--color-yellow_light);
  border-radius: clamp(0px, calc(100vw / 750 * 20), 20px);
  padding: clamp(0px, calc(100vw / 750 * 40), 40px) clamp(0px, calc(100vw / 750 * 20), 20px);
  margin-bottom: clamp(0px, calc(100vw / 750 * 40), 40px);
}

#eesrescue .idea_content_ttl p {
  font-size: clamp(0px, calc(100vw / 750 * 32), 32px);
  font-weight: 600;
  font-feature-settings: "palt";
  text-align: center;
  line-height: 1.6;
  letter-spacing: 0.08em;
}

#eesrescue .idea_content_ttl p span {
  font-size: 1.4em;
  font-weight: bold;
  line-height: 1.4;
  color: var(--color-orenge);
}

#eesrescue .idea_content_txt {
  margin-bottom: clamp(0px, calc(100vw / 750 * 40), 40px);
}

#eesrescue .idea_content_txt p {
  font-size: clamp(0px, calc(100vw / 750 * 24), 24px);
  line-height: 2;
}

#eesrescue .idea_content_txt .marker {
  text-decoration-color: var(--color-yellow_medium);
}

#eesrescue .idea_content_point {
  background-color: var(--color-lightblue_light);
  border-radius: clamp(0px, calc(100vw / 750 * 20), 20px);
  margin-bottom: clamp(0px, calc(100vw / 750 * 35), 35px);
}

#eesrescue .idea_content_point p {
  font-size: clamp(0px, calc(100vw / 750 * 21), 21px);
  line-height: 1.4;
}

#eesrescue .idea_content_point p.abs {
  font-size: clamp(0px, calc(100vw / 750 * 26), 26px);
  font-weight: 600;
  text-align: center;
  top: 5%;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}

#eesrescue .idea_content_point p span {
  color: var(--color-blue);
}

#eesrescue .idea_content_cv+.idea_content_cv {
  margin-top: clamp(0px, calc(100vw / 750 * 35), 35px);
}

#eesrescue .idea_content_cv>img {
  max-width: 101.2%;
}

#eesrescue .idea_content_cv .abs {
  width: 65%;
  bottom: clamp(0px, calc(100vw / 750 * 35), 35px);
  left: 32%;
}

#eesrescue .idea_content_cv h3 {
  font-size: clamp(0px, calc(100vw / 750 * 32), 32px);
  font-weight: 600;
  line-height: 1.3;
}

#eesrescue .idea_content_cv h3 span {
  font-size: .7em;
  display: block;
}
#eesrescue .idea_content_cv h3 sub {
  transform: translateY(0.2em);
  display: inline-block;
  line-height: 1;
}

#eesrescue .idea_content_cv .detail {
  font-size: clamp(0px, calc(100vw / 750 * 20), 20px);
  font-feature-settings: "palt";
  margin: 0.3em 0 0.4em;
  line-height: 1.4;
}

#eesrescue .idea_content_cv .detail span {
  font-size: clamp(0px, calc(100vw / 750 * 22), 22px);
  display: block;
}

#eesrescue .idea_content_cv ul.detail li {
  text-indent: -1em;
  padding-left: 1em
}

#eesrescue .idea_content_cv dl {
  display: flex;
  align-items: center;
  border: 1px solid #000;
  max-width: max-content;
  border-radius: 99px;
  overflow: hidden;
}

#eesrescue .idea_content_cv dt {
  font-size: clamp(0px, calc(100vw / 750 * 17), 17px);
  line-height: 1;
  padding: 0 .7em 0.1em;
}

#eesrescue .idea_content_cv dd {
  font-size: clamp(0px, calc(100vw / 750 * 27), 27px);
  line-height: 1;
  color: #fff;
  background-color: #000;
  padding: 0 1.3em 0.1em;
}

#eesrescue .idea_content_cv dl.clr_red {
  border-color: var(--color-red);
}

#eesrescue .idea_content_cv dl.clr_red dt {
  color: var(--color-red);
}

#eesrescue .idea_content_cv dl.clr_red dd {
  background-color: var(--color-red);
}

#eesrescue .idea_content_cv .price {
  font-size: clamp(0px, calc(100vw / 750 * 47), 47px);
  font-weight: 600;
  font-feature-settings: "palt";
  letter-spacing: 0.02em;
  line-height: 1;
  margin: 0.2em 0 0.4em;
}

#eesrescue .idea_content_cv .price span {
  font-size: clamp(0px, calc(100vw / 750 * 32), 32px);
}

#eesrescue .idea_content_cv .price span.normal {
  font-size: clamp(0px, calc(100vw / 750 * 22), 22px);
  font-weight: normal;
}

#eesrescue .idea_content_cv .special_price {
  margin-top: clamp(0px, calc(100vw / 750 * 10), 10px);
}

#eesrescue .idea_content_cv .special_price .clr_red {
  color: var(--color-red);
  margin-top: 0;
  font-weight: 600;
}

#eesrescue .idea_content_cv .special_price .normal,
#eesrescue .idea_content_cv .special_price .normal+p {
  font-size: clamp(0px, calc(100vw / 750 * 20), 20px);
  line-height: 1.6;
}

#eesrescue .idea_content_cv a {
  display: block;
  width: 98%;
}

#eesrescue .idea_content_cv a img {
  filter: drop-shadow(5px 5px 10px rgba(0, 0, 0, 0.2));
  transform: translateZ(0);
}

#eesrescue .idea_content_cv .tag {
  display: block;
}

#eesrescue .idea_content_cv .tag li {
  display: inline-block;
  background-color: var(--color-red);
  font-size: clamp(0px, calc(100vw / 750 * 17), 17px);
  color: #fff;
  line-height: 1;
  padding: .3em 0.6em;
  margin: 0 .5em .3em 0;
  border-radius: 99px;
}

#eesrescue .col_2 {
  display: flex;
  gap: clamp(0px, calc(100vw / 750 * 25), 25px);
}

#eesrescue .col_2>* {
  width: 50%;
}

#eesrescue .idea_content_cv .notice {
  font-size: clamp(0px, calc(100vw / 750 * 20), 20px);
  font-feature-settings: "palt";
  line-height: 1.4;
  margin-bottom: .8em;
}

/* idea-1 */
#eesrescue .idea.idea-1 {
    padding-top: clamp(0px, calc(100vw / 750 * 60), 60px);
}

/* idea-2 */
#eesrescue .idea-2 .idea_content_point {
  padding: clamp(0px, calc(100vw / 750 * 25), 25px);
}

#eesrescue .idea-2 .idea_content_point p {
  width: 50%;
  margin-left: 50%;
}

#eesrescue .idea-2 .idea_content_point .abs {
  top: -12%;
  left: -5%;
  width: 54%;
}

/* idea-3 */
#eesrescue .idea-3 .idea_content_ttl p {
  letter-spacing: 0.04em;
}

#eesrescue .idea-3 .idea_content_txt {
  margin-bottom: clamp(0px, calc(100vw / 750 * 60), 60px);
}

#eesrescue .idea-3 .idea_content_point {
  margin-bottom: clamp(0px, calc(100vw / 750 * 60), 60px);
  padding: clamp(0px, calc(100vw / 750 * 25), 25px);
}

#eesrescue .idea-3 .idea_content_point p {
  width: 50%;
  margin-left: 50%;
}

#eesrescue .idea-3 .idea_content_point .abs {
  top: -26%;
  left: 7%;
  width: 40%;
}

/* idea-4 */
#eesrescue .idea-4 .idea_content_ttl p {
  letter-spacing: 0.04em;
}

#eesrescue .idea-4 .idea_content_txt {
  margin-bottom: clamp(0px, calc(100vw / 750 * 60), 60px);
}

#eesrescue .idea-4 .idea_content_point {
  margin-bottom: clamp(0px, calc(100vw / 750 * 60), 60px);
  padding: clamp(0px, calc(100vw / 750 * 35), 35px);
}

#eesrescue .idea-4 .idea_content_point p {
  width: 60%;
  margin-right: 40%;
}

#eesrescue .idea-4 .idea_content_point .abs {
  top: -55%;
  left: 61%;
  width: 33%;
}

/* idea-5 */
#eesrescue .idea-5 .idea_content_point {
  padding: 0 clamp(0px, calc(100vw / 750 * 20), 20px) clamp(0px, calc(100vw / 750 * 20), 20px);
}

#eesrescue .idea-5 .idea_content_point>div {
  margin-top: -4%;
}

#eesrescue .idea-5 .idea_content_cv.cv-1 .abs h3 {
  font-feature-settings: "palt";
  white-space: nowrap;
}

/* idea-6 */
#eesrescue .idea-6 .idea_content_point {
  padding: clamp(0px, calc(100vw / 750 * 35), 35px);
}

#eesrescue .idea-6 .idea_content_point p {
  width: 55%;
  margin-right: 45%;
}

#eesrescue .idea-6 .idea_content_point .abs {
  top: -36%;
  left: 62%;
  width: 38%;
}

/* idea-7 */
#eesrescue .idea-7 .idea_content_point {
  padding: clamp(0px, calc(100vw / 750 * 35), 35px);
}

#eesrescue .idea-7 .idea_content_point p {
  width: 55%;
  margin-right: 45%;
}

#eesrescue .idea-7 .idea_content_point .abs {
  top: -6%;
  left: 56%;
  width: 42%;
}

#eesrescue .idea-7 .idea_content_cv .price {
  margin-bottom: .2em;
}

/* idea-8 */
#eesrescue .idea-8 {
  padding-bottom: clamp(0px, calc(100vw / 750 * 60), 60px);
}
#eesrescue .idea-8 .idea_content_txt .marker {
  letter-spacing: 0.05em;
}
#eesrescue .idea-8 .idea_content_point {
  padding: 0 clamp(0px, calc(100vw / 750 * 20), 20px) clamp(0px, calc(100vw / 750 * 20), 20px);
}

#eesrescue .idea-8 .idea_content_point>div {
  margin-top: -14%;
}

#eesrescue .idea-8 .idea_content_cv.cv-1 .abs h3 {
  font-feature-settings: "palt";
}



/* =============================== */
#eesrescue .regist-btn {
  bottom: clamp(0px, 3.3333333333vw, 25px);
  display: flex;
  flex-direction: column;
  opacity: 0;
  position: fixed;
  right: clamp(0px, 3.3333333333vw, 25px);
  transition: opacity .3s ease;
  width: clamp(0px, 21.3333333333vw, 120px);
  z-index: 1;
  gap: 20px;
}

#eesrescue .regist-btn a {
  display: block;
  filter: drop-shadow(5px 5px 10px rgba(0, 0, 0, .16));
  width: 100%;
}

@media (hover: hover) {
  #eesrescue .regist-btn a:hover {
    opacity: .6;
  }
}

#eesrescue .regist-btn.on {
  opacity: 1;
}

@media screen and (min-width: 751px) {
  #eesrescue .regist-btn {
    bottom: clamp(0px, 5.3333333333vw, 40px);
    left: calc(50% + 375px + clamp(0px, 13.3333333333vw, 100px));
    right: auto;
    transform: translateX(-50%);
    width: clamp(0px, 18.6666666667vw, 140px);
  }
}

@media screen and (max-width: 1100px) {
  #eesrescue .regist-btn {
    bottom: 10px;
    left: auto;
    right: 10px;
    transform: none;
    width: clamp(0px, 22vw, 140px);
    gap: 2vw;
  }
}