:root {
  --color-green: #07805d;
}

#contents header.contents-header {
  position: relative;
  background: url(/cs/products/if10/common/images/bg-if10.png) no-repeat center top/auto 100%;
  height: clamp(180px, 16.1458333333vw, 310px);
  border-radius: 0 0 clamp(40px, 4.1666666667vw, 80px) clamp(40px, 4.1666666667vw, 80px);
}
@media screen and (min-width: 1920px) {
  #contents header.contents-header {
    background-size: 100% auto;
  }
}
@media screen and (max-width: 390px) {
  #contents header.contents-header {
    background-image: url(/cs/products/if10/common/images/bg-if10-sp@2x.png);
    background-size: auto 100%;
  }
}

#contents header.contents-header .header-title {
  display: grid;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0 0 auto auto;
  place-items: center;
  font-weight: 600;
  font-size: clamp(27px, 3.125vw, 32px);
  color: #07865d;
}

.contact-form {
  background-color: #f7f7f7;
  padding: clamp(57px, 8vw, 80px) clamp(20px, 0.8vw, 80px) clamp(64px, 8.8vw, 88px);
  border-radius: 30px;
}
.contact-form > div {
  margin-left: auto;
  margin-right: auto;
  max-width: 680px;
  display: grid;
  gap: clamp(57px, 8vw, 80px);
  grid-template-columns: 1fr 1fr;
  text-align: center;
}
@media screen and (max-width: 720px) {
  .contact-form > div {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}
.contact-form h4 {
  font-size: clamp(22px, 2vw, 26px);
  font-weight: 700;
  text-align: center;
  vertical-align: middle;
  margin-bottom: 24px;
}

.headline-leafline {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  padding: 0 0 20px;
  font-weight: bold;
  line-height: 1.6;
  background: no-repeat left bottom/1200px 10px url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="10" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 1200 10"><defs><linearGradient id="k" x1="-294.87" y1="-303.79" x2="-293.84" y2="-303.79" gradientTransform="translate(19069.09 -2121) scale(64.67 -7)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="%234cb788"/><stop offset="1" stop-color="%2319b1bb"/></linearGradient></defs><g id="a"><g id="b"><g id="c"><g id="d" style="opacity:.5;"><g id="e"><path id="f" d="M-1457.31,51.01c-17.42,1.32-35.08,1.98-52.97,1.99h-1499.92l192.93-549.96c24.89-77.95,57.84-155.24,114.47-244.71,132.48-199.63,380.53-373.5,662.4-373.5l599.15,1.99c17.42-1.32,35.07-1.98,52.97-1.99H110.33L-1.93-792.59l-34.12,98.03-6.72,19.3-38.53,110.05c-24.89,77.95-57.84,155.24-114.47,244.71C-328.25-120.87-576.3,53.01-858.17,53.01l-599.14-2Z" style="fill:%2364d1a1; isolation:isolate; opacity:.5;"/></g></g></g></g></g><g id="g"><g id="h"><g id="i"><rect id="j" x="5" y="4" width="1195" height="3" style="fill:%23e4e7ea;"/><path id="l" d="M7,2h57.67c0,3.87-3.13,7-7,7H0C0,5.13,3.13,2,7,2Z" style="fill:url(%23k);"/></g></g></g></svg>');
}
@media screen and (max-width: 1240px) {
  .headline-leafline {
    margin-left: 20px;
    margin-right: 20px;
  }
}

.headline-leaf {
  max-width: 1200px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 0 0 0 1em;
  font-weight: bold;
  line-height: 1.6;
  background: no-repeat left top 0.5em/0.57em 0.57em url('data:image/svg+xml,<svg id="b" xmlns="http://www.w3.org/2000/svg" width="16" height="16" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 16 16"><defs><linearGradient id="f" x1="-329.58" y1="-371.93" x2="-328.66" y2="-372.86" gradientTransform="translate(4616 -3384.41) scale(14 -9.11)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="%234cb788"/><stop offset="1" stop-color="%2319b1bb"/></linearGradient></defs><g id="c"><g id="d"><g id="e"><path id="g" d="M8.84,3h6.16c0,5.03-2.81,9.11-7.84,9.11H1C1,7.08,3.81,3,8.84,3Z" style="fill:url(%23f);"/></g></g></g></svg>');
}

#contents .feature {
  display: grid;
  text-align: left;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  grid-template-columns: 63fr 37fr;
  -moz-column-gap: 6%;
       column-gap: 6%;
}
@media screen and (max-width: 1240px) {
  #contents .feature {
    margin-left: 20px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 599px) {
  #contents .feature {
    grid-template-columns: 1fr;
  }
}
@media screen and (min-width: 600px) {
  #contents .feature h3 {
    grid-column: 1/3;
    order: 1;
  }
}
@media screen and (max-width: 599px) {
  #contents .feature h3 span {
    display: block;
  }
}
@media screen and (max-width: 599px) {
  #contents .feature figure img {
    width: 80%;
    margin: 0 10%;
  }
}
@media screen and (min-width: 600px) {
  #contents .feature figure {
    order: 3;
  }
}
@media screen and (min-width: 600px) {
  #contents .feature > div {
    order: 2;
  }
}
#contents .feature .useful-scenes {
  border: 1px solid #64D1A1;
  border-radius: 12px;
}
#contents .feature .useful-scenes h5 {
  background-color: #64D1A1;
  border-radius: 10px 0 12px 0;
  color: #ffffff;
  font-weight: bold;
  padding: 0.5em 1em;
  display: inline-block;
}
@media screen and (max-width: 767px) {
  #contents .feature .useful-scenes h5 {
    display: block;
    border-radius: 12px 12px 0 0;
  }
}
#contents .feature .useful-scenes > div {
  min-height: 190px;
  padding: 25px 50px 50px 210px;
  background: url(/cs/products/if10/common/images/features_ico_01.webp) no-repeat left 35px top 25px/140px 140px;
}
@media screen and (max-width: 767px) {
  #contents .feature .useful-scenes > div {
    padding: 160px 20px 20px 20px;
    background-position: center top 20px;
    background-size: 120px 120px;
  }
}
#contents .feature .list-disc-blue li {
  width: 100%;
}
#contents .feature .useful-scenes > div.useful-scene-01 {
  background-image: url(/cs/products/if10/common/images/features_ico_01.webp);
}
#contents .feature .useful-scenes > div.useful-scene-02 {
  background-image: url(/cs/products/if10/common/images/features_ico_02.webp);
}
#contents .feature .useful-scenes > div.useful-scene-03 {
  background-image: url(/cs/products/if10/common/images/features_ico_03.webp);
}
#contents .feature .useful-scenes > div.useful-scene-04 {
  background-image: url(/cs/products/if10/common/images/features_ico_04.webp);
}
#contents .feature .useful-scenes > div.useful-scene-05 {
  background-image: url(/cs/products/if10/common/images/features_ico_05.webp);
}
#contents .feature .useful-scenes > div.useful-scene-06 {
  background-image: url(/cs/products/if10/common/images/features_ico_06.webp);
}
#contents .feature .useful-scenes > div.useful-scene-07 {
  background-image: url(/cs/products/if10/common/images/features_ico_07.webp);
}
#contents .feature .useful-scenes > div.useful-scene-08 {
  background-image: url(/cs/products/if10/common/images/features_ico_08.webp);
}
#contents .feature .useful-scenes > div.useful-scene-09 {
  background-image: url(/cs/products/if10/common/images/features_ico_09.webp);
}
#contents .feature .useful-scenes > div.useful-scene-10 {
  background-image: url(/cs/products/if10/common/images/features_ico_10.webp);
}

.function-list {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
  display: grid;
  gap: 48px;
  grid-template-columns: 1fr 1fr 1fr;
  text-align: center;
}
@media screen and (max-width: 1240px) {
  .function-list {
    margin-left: 20px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 1479px) {
  .function-list {
    gap: 2.5vw;
  }
}
@media screen and (max-width: 1023px) {
  .function-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media screen and (max-width: 600px) {
  .function-list {
    grid-template-columns: 1fr;
    gap: 48px;
  }
}
.function-list .function {
  width: 100%;
  container-type: inline-size;
  background-color: #F7F7F7;
  border-radius: 20px;
  padding: 24px;
  display: grid;
}
.function-list .function .card-end {
  align-self: end;
}
.function-list .function .headline-function {
  padding: 0 4px 12px;
  margin-bottom: 16px;
  border-radius: 8px 8px 0 0;
  background-color: #ffffff;
  font-weight: bold;
  font-size: clamp(10px, 6cqw, 20px);
}
.function-list .function .headline-function span {
  display: block;
  padding-top: 2.4em;
}
.function-list .function .headline-function em {
  display: block;
  padding-top: 1.67em;
  background: url(/cs/products/if10/common/images/function-icon00.svg) no-repeat center top/3.56em 1.67em;
}
.function-list .function .headline-function + ul li,
.function-list .function .headline-function + p {
  text-align: left;
  font-size: clamp(10px, 5.5cqw, 18px);
  letter-spacing: 0 !important;
}
.function-list .function .available-device {
  background-color: #ffffff;
  border-radius: 8px;
  padding: 10px;
  display: grid;
  align-items: center;
  gap: 10px;
  grid-template-columns: 1fr 1fr 1fr;
}
.function-list .function .available-device *[class^=available-device-] {
  line-height: 1;
  border-radius: 8px 0;
  padding: 0.4em 0.3em;
  font-weight: bold;
  color: #ffffff;
  font-size: clamp(10px, 5cqw, 15px);
}
.function-list .function .available-device .available-device-android {
  background-color: #64D1A1;
}
.function-list .function .available-device .available-device-ios {
  background-color: #33A3CF;
}
.function-list .function .available-device .available-device-windows {
  background-color: #19B1BB;
}
.function-list .function .available-device.display-small {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
.function-list .function *[class^=available-device-]:has(.unsupported-model) {
  opacity: 0.1;
}
.function-list .function .unsupported-model {
  display: none;
}
.function-list .function .function-name {
  container-type: inline-size;
  font-size: 4cqw;
  white-space: nowrap;
}
.function-list .function:nth-child(1) .headline-function span {
  background: url(/cs/products/if10/common/images/function-icon01.svg) no-repeat center top/3.3em 2.4em;
}
.function-list .function:nth-child(2) .headline-function span {
  background: url(/cs/products/if10/common/images/function-icon02.svg) no-repeat center top/3.3em 2.4em;
}
.function-list .function:nth-child(3) .headline-function span {
  background: url(/cs/products/if10/common/images/function-icon03.svg) no-repeat center top/3.3em 2.4em;
}
.function-list .function:nth-child(4) .headline-function span {
  background: url(/cs/products/if10/common/images/function-icon04.svg) no-repeat center top/3.3em 2.4em;
}
.function-list .function:nth-child(5) .headline-function span {
  background: url(/cs/products/if10/common/images/function-icon05.svg) no-repeat center top/3.3em 2.4em;
}
.function-list .function:nth-child(6) .headline-function span {
  background: url(/cs/products/if10/common/images/function-icon06.svg) no-repeat center top/3.3em 2.4em;
}

#footer {
  margin-top: 130px !important;
}

.font-size-32 {
  font-size: clamp(30px, 3.6vw, 36px);
}

.font-size-15 {
  font-size: clamp(13.95px, 1.155vw, 15px);
}

.color-deep-blue-gray {
  color: #597B88;
}

.color-green {
  color: var(--color-green);
}

.mt20 {
  margin-top: 20px;
}

.mt0 {
  margin-top: 0 !important;
}