@charset "utf-8";

/*  Common
====================================*/
.lp_dogmax {
  /* Anton(Web) → Win Impact系 → Mac/iOS 凝縮ゴシック → Android condensed */
  --ff-impact-text: "Anton", Impact, Haettenschweiler, "Arial Narrow", "Franklin Gothic Heavy", "Helvetica Neue Condensed Black", "Arial Black", "Roboto Condensed", sans-serif-condensed, sans-serif;
  font-size: 16px;
  overflow: hidden;
}

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

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

.lp_dogmax__small {
  font-size: 0.3em;
}

/*  layout
====================================*/
.lp_dogmax__container {
  width: 100%;
  max-width: 1200px;
  margin-inline: auto;
}

@media screen and (max-width:767px) {
  .lp_dogmax__container {
    width: 100%;
    max-width: 1200px;
    padding-inline: 10px;
  }
}

/*  MV
====================================*/
.lp_dogmax__mv .lp_dogmax__image img {
  width: 100%;
}

.lp_dogmax__lead {
  text-align: center;
  line-height: 1.9;
  margin: 24px 0;
}

@media screen and (max-width:767px) {
  .lp_dogmax__lead {
    text-align: left;
  }
}

/*  overview
====================================*/
.lp_dogmax__overview + .lp_dogmax__overview {
  margin-top: 60px;
}

.lp_dogmax__overview__layout {
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  gap: 32px 16px;
}

@media screen and (max-width:767px) {
  .lp_dogmax__overview__layout {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0 16px;
  }
}

.lp_dogmax__overview + .lp_dogmax__overview .lp_dogmax__overview__layout {
  border-top: solid 2px #abacac;
}

@media screen and (min-width:768px) {

  .lp_dogmax__overview__item:nth-of-type(1),
  .lp_dogmax__overview__item:nth-of-type(2) {
    grid-column: 1 / -1;
  }

  .lp_dogmax__overview__item:nth-of-type(3) {
    transform: translateY(-40px);
  }

  .lp_dogmax__overview__item:nth-of-type(4) {
    transform: translateY(40px);
  }
}

.lp_dogmax__overview__item__text.col2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

/*  CTA（共通）
====================================*/
.lp_dogmax__cta {
  margin-top: 40px;
  text-align: center;
  grid-column: 1 / -1;
}

.lp_dogmax__cta__link {
  display: inline-block;
  min-width: 280px;
  padding: 14px 40px;
  border: 1px solid #000;
  background: #fff;
  color: #000;
  font-size: 21px;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
  box-sizing: border-box;
  transition: opacity 0.2s ease;
}

.lp_dogmax__cta__link:hover {
  opacity: 0.7;
}

@media screen and (max-width:767px) {
  .lp_dogmax__cta {
    margin-top: 24px;
    margin-bottom: 10px;
  }

  .lp_dogmax__cta__link {
    min-width: 0;
    width: 100%;
    max-width: 320px;
    padding: 12px 24px;
  }
}

/*  Tech
====================================*/
.lp_dogmax__tech__heading__image img {
  width: 100%;
}

.lp_dogmax__tech__heading__title {
  margin: 64px auto 24px;
  text-align: center;
  font-family: var(--ff-impact-text, "Impact");
  font-weight: 400;
  font-size: 64px;
  background: #6FB9E6;
  background: linear-gradient(to bottom, #6FB9E6 0%, #8E98CC 27%, #ED7F88 63%, #F5C673 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

@media screen and (max-width:767px) {
  .lp_dogmax__tech__heading__title {
    font-size: 32px;
  }

}

.lp_dogmax__tech__heading__title .lp_dogmax__small {
  background: unset;
  -webkit-background-clip: unset;
  -webkit-text-fill-color: #727171;
  color: #727171;
}


.lp_dogmax__tech__content__item__title {
  font-family: var(--ff-impact-text, "Impact");
  font-weight: 400;
}

.lp_dogmax__tech__content__item__explain-main {
  font-size: 36px;
  font-weight: 900;
  line-height: 1.2;
  background: #6FB9E6;
  background: linear-gradient(to right, #6FB9E6 0%, #8E98CC 27%, #ED7F88 63%, #F5C673 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}


@media screen and (min-width:768px) {

  .lp_dogmax__tech__content__item:nth-of-type(n + 2) {
    margin-top: -100px;
  }

  .lp_dogmax__tech__content__item__image img {
    display: inline-block;
    max-width: 75%;
  }

  .lp_dogmax__tech__content__item__title {
    font-size: 28px;
  }

  .lp_dogmax__tech__content__item__text {
    font-size: 14px;
  }

  .lp_dogmax__tech__content__item__explain-main {
    font-size: 36px;
    font-weight: 900;
    line-height: 1.2;
    background: #6FB9E6;
    background: linear-gradient(to right, #6FB9E6 0%, #8E98CC 27%, #ED7F88 63%, #F5C673 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
  }


  /*------ layout-01 -------*/
  .lp_dogmax__tech__content__item.layout-01 {
    position: relative;
    margin-bottom: 50px;
    z-index: 1;
  }

  .layout-01 .lp_dogmax__tech__content__item__image {
    text-align: right;
  }

  .layout-01 .lp_dogmax__tech__content__item__content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 10%;
    column-gap: 10%;
    margin-top: -50px;
  }

  /*------ layout-02 -------*/
  .lp_dogmax__tech__content__item.layout-02 {
    display: grid;
    grid-template-columns: 1fr 1.6fr;
    align-items: center;
  }

  .layout-02 .lp_dogmax__tech__content__item__content {
    grid-column: 2 / -1;
    grid-row: 1 / -1;
    display: flex;
    flex-direction: column-reverse;
    gap: 24px;
  }

  .layout-02 .lp_dogmax__tech__content__item__image {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
  }

  .layout-02 .lp_dogmax__tech__content__item__image img {
    max-width: 85%;
  }

  .layout-02 .lp_dogmax__tech__content__item__text {
    max-width: 320px;
    margin-left: auto;
  }

  .layout-02 .lp_dogmax__tech__content__item__title {
    text-align: right;
  }


  /*------ layout-03 -------*/
  .lp_dogmax__tech__content__item.layout-03 {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    align-items: center;
  }

  .layout-03 .lp_dogmax__tech__content__item__content {
    grid-column: 1 / 2;
    grid-row: 1 / -1;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .layout-03 .lp_dogmax__tech__content__item__image {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    text-align: right;
  }

  .layout-03 .lp_dogmax__tech__content__item__image img {
    max-width: 66%;
  }

  .layout-03 .lp_dogmax__tech__content__item__explain {
    text-align: right;
  }

  .layout-03 .lp_dogmax__tech__content__item__explain-main {
    text-align: left;
  }


  /*------ layout-04 -------*/
  .lp_dogmax__tech__content__item.layout-04 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
  }

  .layout-04 .lp_dogmax__tech__content__item__content {
    grid-column: 2 / -1;
    grid-row: 1 / -1;
    display: flex;
    flex-direction: column;
    gap: 24px;
  }

  .layout-04 .lp_dogmax__tech__content__item__image {
    grid-column: 1 / -1;
    grid-row: 1 / -1;
    text-align: left;
  }

  .layout-04 .lp_dogmax__tech__content__item__image img {
    max-width: 66%;
  }

  .layout-04 .lp_dogmax__tech__content__item__image img {
    max-width: 50%;
  }

  .layout-04 .lp_dogmax__tech__content__item__explain {
    transform: translate(-90px, 60px);
  }

}

@media screen and (max-width:767px) {

  .lp_dogmax__tech__content__item {
    position: relative;
    z-index: 1;
  }

  .lp_dogmax__tech__content__item.layout-02 {
    z-index: 0;
  }

  .lp_dogmax__tech__content__item__content {
    display: flex;
    flex-direction: column-reverse;
    gap: 10px;
  }

  .lp_dogmax__tech__content__item__title {
    font-size: clamp(14px, 5.6vw, 25px);
    letter-spacing: -0.02em;
  }

  .lp_dogmax__tech__content__item__text {
    font-size: clamp(12px, 3.6vw, 16px);
  }

  .lp_dogmax__tech__content__item__explain-main {
    font-size: clamp(14px, 4.3vw, 21px);
    line-height: 1.5;
  }

  .lp_dogmax__tech__content__item__explain-sub {
    font-size: clamp(12px, 3.3vw, 16px);
  }

  /*------ layout-01 -------*/
  .layout-01 .lp_dogmax__tech__content__item__explain,
  .layout-01 .lp_dogmax__tech__content__item__title {
    text-align: center;
  }

  /*------ layout-02 -------*/
  .layout-02.lp_dogmax__tech__content__item {
    position: relative;
    margin-top: 36px;
  }

  .layout-02 .lp_dogmax__tech__content__item__image {
    padding-block: 24px;
    position: relative;
    overflow: hidden;
    margin-bottom: 21px;
  }

  .layout-02 .lp_dogmax__tech__content__item__image img {
    transform: scale(1.4) translate(11vw, 21px);
  }

  .layout-02 .lp_dogmax__tech__content__item__explain {
    position: absolute;
    top: -10px;
    right: 0;
    width: 60%;
  }

  /*------ layout-03 -------*/
  .layout-03 .lp_dogmax__tech__content__item__image {
    overflow: hidden;
  }

  .layout-03 .lp_dogmax__tech__content__item__content {
    margin-top: -100px;
    gap: 30px;
  }

  .layout-03 .lp_dogmax__tech__content__item__image img {
    transform: translate(18%, -1em);
  }

  .layout-03 .lp_dogmax__tech__content__item__explain {
    width: 50%;
  }


  /*------ layout-04 -------*/
  .layout-04 .lp_dogmax__tech__content__item__image img {
    width: 80%;
    margin-top: -2em;
  }

  .layout-04 .lp_dogmax__tech__content__item__content {
    margin-top: -40px;
    display: flex;
    align-items: flex-end;
  }

  .layout-04 .lp_dogmax__tech__content__item__title {
    text-align: right;
  }

  .layout-04 .lp_dogmax__tech__content__item__explain {
    width: 50%;
  }

}


/*  Chart
====================================*/
.lp_dogmax__chart {
  margin: 64px 0 128px;
}

@media screen and (max-width:767px) {
  .lp_dogmax__chart {
    margin: 64px 0 40px;
  }

}

.lp_dogmax__chart__subheading__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: solid 1px #595757;
  border-inline: solid 1px #595757;
}

.lp_dogmax__chart__content__tab {
  display: none;
}

.lp_dogmax__chart__content__tab:first-of-type {
  display: block;
}

.lp_dogmax__chart__subheading__image img {
  width: 100%;
}

.lp_dogmax__chart__subheading__image:nth-of-type(2) {
  background-color: #595757;
}

.lp_dogmax__chart__subheading {
  z-index: 1;
  position: relative;
}

.lp_dogmax__chart__subheading [data-tab-for] {
  display: block;
  background-color: #595757;
}

.lp_dogmax__chart__subheading [data-tab-for] .active-image {
  display: none;
}

.lp_dogmax__chart__subheading [data-tab-for].active {
  background-color: #fff;
  pointer-events: none;
}

.lp_dogmax__chart__subheading [data-tab-for].active .inactive-image {
  display: none;
}

.lp_dogmax__chart__subheading [data-tab-for].active .active-image {
  display: block;
}

.lp_dogmax__chart__heading__title img {
  width: 100%;
}

@media screen and (min-width:768px) {

  .lp_dogmax__chart__content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    border-left: solid 1px #595757;
    border-bottom: solid 1px #595757;
    border-right: solid 1px #595757;
    padding: 32px;
  }
}

@media screen and (max-width:767px) {

  .lp_dogmax__chart__content {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    border-left: solid 1px #595757;
    border-bottom: solid 1px #595757;
    border-right: solid 1px #595757;
    padding: 8px;
  }

}

@media screen and (min-width:768px) {

  .lp_dogmax__chart__content__item__name {
    margin-top: -20px;
    position: relative;
    z-index: 1;
    padding-inline: 1.5em;
  }

}

@media screen and (max-width:767px) {

  .lp_dogmax__chart__content__item__name {
    margin-top: -2em;
    position: relative;
    z-index: 1;
    padding-inline: 1.5em;
    text-align: center;
  }

}

/*  Series
====================================*/
.lp_dogmax__series {
  background: #f7f8f8;
  padding: 40px 0 64px;
  margin-bottom: 64px;
}

.lp_dogmax__series__heading__title {
  font-family: var(--ff-impact-text, "Impact");
  font-size: clamp(24px, 10vw, 64px);
  text-align: center;
}

.lp_dogmax__series__heading {
  margin-bottom: 24px;
}

.lp_dogmax__container + .lp_dogmax__series__heading {
  margin-top: 64px;
}

@media screen and (min-width:768px) {

  .lp_dogmax__series__content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
  }

}

@media screen and (max-width:767px) {

  .lp_dogmax__series__content {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

}

.lp_dogmax__series__content__item a {
  color: hsl(0 0% 20% / 1);
  text-decoration: currentColor;
}

.lp_dogmax__series__content__item__image {
  text-align: center;
}

.lp_dogmax__series__content__item__name {
  line-height: 1.2;
  font-family: var(--ff-impact-text, "Impact");
  font-size: 32px;
  color: hsl(0 0% 20% / 1);
  text-align: center;
  margin: 8px 0 0;
}

.lp_dogmax__series__content__item__desc {
  text-align: center;
  margin: 0 0 8px;
  color: hsl(0 0% 20% / 1);
}

.lp_dogmax__series__appeal {
  margin-top: 64px;
}

@media screen and (max-width:767px) {

  .lp_dogmax__series__appeal__slider {
    padding: 0 20px;
  }
}


.lp_dogmax__series__appeal__slider__item img {
  width: 100%;
  height: auto;
  display: block;
}

.lp_dogmax__series__appeal__aside {
  margin-top: 16px;
}

.lp_dogmax__series__appeal__aside img {
  width: 100%;
  height: auto;
  display: block;
}

.js-lp-dogmax-series-appeal-slider .slick-dots {
  position: static;
  margin: 12px 0 0;
  line-height: 1;
}

.js-lp-dogmax-series-appeal-slider .slick-dots li button:before {
  font-size: 10px;
  color: #b5b6b6;
  opacity: 0.35;
}

.js-lp-dogmax-series-appeal-slider .slick-dots li.slick-active button:before {
  opacity: 1;
  color: #898989;
}

.lp_dogmax__chart__content__item__image {
  text-align: center;
}

.lp_dogmax__chart__content__item__name__tag {
  position: relative;
  color: #fff;
  padding: 0 4px;
  line-height: 1;
  margin: 0 4px;
}

.lp_dogmax__chart__content__item__name__tag::after {
  content: "";
  display: inline-block;
  background-color: #0b6f93;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  transform: skewX(-15deg);
  z-index: -1;
}

/*  Relate
====================================*/
.lp_dogmax__relate {
  margin-top: 60px;
  margin-bottom: 120px;
}

@media screen and (max-width:767px) {
  .lp_dogmax__relate {
    margin-top: 20px;
    margin-bottom: 0px;
  }
}

.lp_dogmax__relate__banner {
  text-align: center;
}

.lp_dogmax__relate__banner a {
  display: inline-block;
}

.lp_dogmax__relate__banner img {
  width: 100%;
  max-width: 980px;
  display: block;
  margin-inline: auto;
}