@charset "UTF-8";

/**********************
Common (PC, mobile)
**********************/
html * :not(mark){
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size:14px;
		-webkit-text-size-adjust: 100%;
		-ms-text-size-adjust: 100%;
    color: #4F5456;
}

html[lang="JA"] {
    font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, sans-serif;
}

body {
    margin: 0;
}

/*********************
header PC
*********************/
header {
    position: sticky;
    top: 0;
    width: 100%;
    margin-top: 0;
    background: white;
    line-height: 1;
    border: 1px solid #E5E5E5;
    z-index: 999;
}

header .header-cont1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0px 2vw;
    border-bottom: 1px solid #E5E5E5;
    height: 5vw;
    max-height: 64px;
}

header .header-cont2 {
    display: flex;
    flex-direction: row;
    align-items: center;
    border-bottom: 1px solid #E5E5E5;
    height: 38px;
    justify-content: center;
}

header .subtitle-link {
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
}

header .subtitle-link:not(:first-child) {
    margin-left: 5vw;
}

header .logo {
    width: 10vw;
    max-width: 128px;
}

header .ikikimi-top-logo {
    width: 15.2vw;
    margin-left: 14.5vw;
}

.underline-center {
    position: relative;
}

.underline-center::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -0.7rem;
    transform: translateX(-50%);
    width: 0%;
    height: 5px;
    background: #418EE5;
    transition: all 0.5s;
}

.subtitle-link:hover .underline-center::after {
    width: 100%;
}

header .logo {
    vertical-align: middle;
}

header .ikikimi-title {
    font-family: 'Stick', sans-serif;
    vertical-align: middle;
}

header a.contact {
    display: inline-block;
    background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 35%, #92D4EC 77%, #9EE2CF 100%) 0% 0% no-repeat padding-box;
    border-radius: 4vw;
    padding: 0.8vw 2vw;
    font-size: 1.2vw;
    line-height: 1;
    font-weight: bold;
    text-decoration: none;
    color: #ffffff;
    vertical-align: middle;
}

header a.contact:hover {
    opacity: 0.5;
}

header a.contact2 {
    display: inline-block;
    background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 35%, #92D4EC 77%, #9EE2CF 100%) 0% 0% no-repeat padding-box;
    border-radius: 4vw;
    padding: 0.8vw 3vw;
    font-size: 1.2vw;
    line-height: 1;
    font-weight: bold;
    text-decoration: none;
    color: #ffffff;
    vertical-align: middle;
}

header a.contact2:hover {
    opacity: 0.5;
}

nav .toc-wrapper {
    display: none;
}

/***************************************
* コンテンツをまるごと考える
***************************************/
.top-contents {
    height: 170vw;
    background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 35%, #92D4EC 77%, #9EE2CF 100%) 0% 0% no-repeat padding-box;
    background-size: 100% 137vw;
}
@media (min-width: 346px) {
    .top-contents {
        background-size: 100% 142vw;
    }
}
@media (min-width: 375px) {
    .top-contents {
        background-size: 100% 145vw;
    }
}
@media (min-width: 408px) {
    .top-contents {
        background-size: 100% 148vw;
    }
}
@media (min-width: 430px) {
    .top-contents {
        background-size: 100% 153vw;
    }
}
@media (min-width: 480px) {
    .top-contents {
        background-size: 100% 158vw;
    }
}
@media (min-width: 530px) {
    .top-contents {
        background-size: 100% 161vw;
    }
}

.top-contents .top-back-image {
    width: 100%;
    background: center / contain no-repeat url(../img/top-background-sp.png);
    background-position: bottom center;
    background-size: 100%;
    z-index: 20;
    position: absolute;
    opacity: 0.7;
    overflow: hidden;
    left: 0px;
    height: 167vw;
}

.top-contents .top-cont-title-box {
    position: absolute;
    left: 10vw;
    padding: 0;
    margin: 0;
}

.top-contents .top-cont-title {
    font-size: 2.7vw;
    color: #ffffff;
    font-weight: bold;
    text-shadow: 0px 0px 10px #0F005099;
}

.top-contents .top-cont-description {
    color:#ffffff;
}

.container {
    z-index: 50;
    position: relative;
}

.top-ikikimi-illust {
    width: 43vw;
    position: absolute;
    top: calc(5vw + 60px);
    left: 55vw;
    padding: 0;
    margin: 0;
}

.download_box {
    background-image: url(../img/download_icon_1.svg);
    display: block;
    background-repeat: no-repeat;
    height: 11.5vw;
    margin-top: 1vw;
    margin-left: -1vw;
    width: 33vw;
}

.download_box:hover {
    background-image: url(../img/download_icon_1_hover.svg);
}

.download_box2 {
    background-image: url(../img/download_icon_2.svg);
    display: block;
    background-repeat: no-repeat;
    height: 9vw;
    margin-left: 7vw;
    margin-top:3vw;
    width: 29vw;
}

.download_box2:hover {
    background-image: url(../img/download_icon_2_hover.svg);
}

/***************************************
* 伝えたいのに、伝わらない・・・
***************************************/
.description1 {
    background: transparent linear-gradient(180deg, #FFFFFF 40%, #E2E2E2 120%) 0% 0% no-repeat;
    opacity: 1;
    height: 24vw;
    position: relative;
}
.description1 .wave {
    position: absolute;
    height: 192px;
    width: 100%;
    background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 35%, #92D4EC 77%, #9EE2CF 100%) 0% 0% no-repeat padding-box;
    background-size: 100% 100px;
    margin-top: -300px;
    z-index: 1;
    left: 0;
    overflow: hidden;

}
.description1 .wave::before, .wave::after {
    content: "";
    display: block;
    position: absolute;
    border-radius: 100% 50%;
  }
  .description1 .wave::before {
    width: 55%;
    height: 120%;
    background-color: #fff;
    right: -24%;
    top: 23%;
  }
  .description1 .wave::after {
    width: 88%;
    height: 100%;
    background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 50%, #92D4EC 95%, #9EE2CF 140%) 0% 0% no-repeat padding-box;
    left: -8.5%;
  }

.text-area {
    z-index: 15;
}

.dest-title {
    text-align: center;
    font-size: 3vw;
    font-weight: bold;
    z-index: 25;
}

.border_dest1 {
    width: 15vw;
    margin: 0 auto;
    height: 0px;
    border: 0.1vw solid #418EE5;
    opacity: 1;
    margin-top: 1vw;
    max-width: 192px;
}

.border_dest2 {
    width: 15vw;
    max-width: 192px;
    margin: 0 auto;
    height: 0px;
    border: 0.1vw solid #FFFFFF;
    opacity: 1;
    margin-top: 1vw;
    margin-bottom: 3vw;
}

.user-question-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin-top: 5vw;
    position: absolute;
    margin-left: 8.5vw;
}

.user-question-item {
    width: 20vw;
    max-width: 256px;
    background: #FFFFFF 0% 0% no-repeat;
    box-shadow: 0px 0px 10px #0000004D;
    border-radius: 15px;
    opacity: 1;
}

.user-question-wrapper .user-question-item:not(:first-child) {
    margin-left: 1vw;
}

.user-question-para {
    font-weight: bold;
    font-size: 1.5vw;
    text-align: center;
    margin: 2vw;
}

/***************************************
* イキキミがまとめて解決
***************************************/
.ikikimi-resolution {
    background: transparent linear-gradient(142deg, #CDD8EE 0%, #C3DFE9 25%, #AAE2DA 75%, #DFEBCD 95%, #EFFBBD 100%) 0% 0% no-repeat padding-box;
    opacity: 1;
}

.ikikimi-resolution-title {
    padding-top: 8vw;
    text-align: center;
    font-size: 3vw;
    font-weight: bold;
    color: #ffffff;
    text-shadow: 0px 0px 10px #0000004D;
}

.ikikimi-logo-1 {
    width: 20vw;
    vertical-align: middle;
    padding-right: 1vw;
}

.ikikimi-res-solutions {
    display: flex;
    flex-wrap: wrap;
    margin-top: 6vw;
    justify-content:center
}

.ikikimi-res-sol-item {
    width: 20vw;
    max-width: 256px;
    background: #FFFFFF 0% 0% no-repeat;
    box-shadow: 0px 0px 10px #0000004D;
    border-radius: 15px;
    opacity: 1;
}

.ikikimi-res-solutions .ikikimi-res-sol-item:not(:first-child) {
    margin-left: 1vw;
}

.resol-icon-touch {
    width: 3.5vw;
    max-width: 44.8px;
    margin-top: 5vw;
    margin-left: 8.5vw;
}

.resol-icon-selection {
    width: 7.1vw;
    max-width: 90.88px;
    margin-top: 5vw;
    margin-left: 6.5vw;
}

.resol-icon-graph {
    width: 6.1vw;
    margin-top: 5vw;
    margin-left: 7.5vw;
}

.resol-icon-target{
    width: 5.9vw;
    margin-top: 5vw;
    margin-left: 7.5vw;
}

.resol-circle {
    position: absolute;
    margin-top: -3vw;
    margin-left: 7vw;
    width: 7vw;
    max-width: 89.59px;
}

.resol-circle div {
    margin-top: 1vw;
}

.resol-circole-prefix {
    font-size: 1vw;
    font-family: 'Montserrat', sans-serif;
    padding-top: 3vw; 
}

.resol-circle-num {
    font-size: 1.5vw;
    font-weight: bold;
    font-family: 'Montserrat', sans-serif;
}

.resol-title {
    color:#418EE5;
    font-weight: bold;
    font-size: 1.5vw;
    margin-left:2.5vw;
    margin-right: 2.5vw;
    margin-top: 1vw;
    text-align: center;
}

.resol-description {
    margin-left:2vw;
    margin-right: 2vw;
    margin-top: 1vw;
    margin-bottom: 3vw;
    font-size: 1.2vw;
    text-align: left;
}

/***************************************
* イキキミとは
***************************************/
.next-contents {
    text-align: center;
    margin-top: 8vw;
}

.next-contents-title {
    color: #ffffff;
    text-shadow: 0px 0px 10px #0000004D;
    font-weight: bold;
    font-size: 3vw;
}

.next-contents-illust {
    display: inline-block;
    vertical-align: middle;
    line-height: 0;
    text-align: center;
    margin-right: 1vw;
    margin-left: 1vw;
}

.circle-illust {
    width: 5vw;
}

.circle-text {
    font-size: 1vw;
    font-weight: bold;
    text-shadow: none;

}

.circle-text.cross {
    color: #418EE5;
}

.animation-illust {
    text-align: center;
}

.animation-plus {
    position: absolute;
    margin-left: 26.5vw;
    margin-top: 11vw;
    width: 10vw;
    max-width: 128px;
    z-index: 2;
}

.animation-hang {
    position: absolute;
    margin-left: 24.6vw;
    margin-top: 11vw;
    width: 10vw;
    max-width: 128px;
    z-index: 1;
}

.animation-back {
    width: 80vw;
    max-width: 1024px;
    margin-left: 2.2vw;
}

.animation-descriptions {
    display: flex;
    padding-bottom: 5vw;
    justify-content: center;
}

.animation-desc-box {
    width: 33vw;
    max-width: 422.39px;
    background: #FFFFFF 0% 0% no-repeat;
    box-shadow: 0px 0px 10px #0000004D;
    border-radius: 15px;
    opacity: 1;
    text-align: center; 
}

.animation-desc-box:not(:first-child) {
    margin-left: 13vw;
}

.animation-desc-box-wrapper {
    margin-top: 2vw;
    margin-left: 3vw;
    margin-right: 3vw;
    margin-bottom: 2vw;
}

.animation-desc-band {
    border-radius: 15px;
    opacity: 1;
    color: #ffffff;
    font-size: 1.2vw;
    width: 20vw;
    max-width: 256px;
    margin-left: 4vw;
    margin-top: 2vw;
    font-weight: bold;
}

.gray {
    background: #9E9E9E 0% 0% no-repeat;
}

.gradation-blue {
    background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 35%, #92D4EC 77%, #9EE2CF 100%) 0% 0% no-repeat padding-box;
}

.animation-desc-title {
    font-weight: bold;
    font-size: 2vw;
}

.list-check {
    list-style-type: none;
    padding-left: 0;
}

.list-check>li {
    line-height: 2vw;
    padding-left: 3.5vw;
    background-image: url(../img/check.png);
    background-repeat: no-repeat;
    background-size: 2vw;
    text-align: left;
}

.list-check li p {
    font-size: 1.3vw;
}

.blue {
    color: #418EE5;
    font-size: inherit;
    font-weight: inherit;
}

.bold {
    font-weight: bold;
}

.animation-lis-p {
    font-weight: bold;
    font-size: 1.3vw;
}

.whatisikikimi-mask {
    position: relative;
    max-height: 667px;
    overflow: hidden;
}

.whatisikikimi-illust {
    width: 100%;
}

.whatisikikimi-mask::after {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .66);
    position: absolute;
    top: 0;
    left: 0;
}

.whatisikikimi-contents {
    position: absolute;
    margin-top: -46.3vw;
}

.whatsisikikimi-title {
    text-align: center;
    font-size: 3vw;
    font-weight: bold;
    color: #ffffff;
}

.ikikimi-logo-2 {
    width: 20vw;
    vertical-align: middle;
}

.montserrat {
    font-family: 'Montserrat', sans-serif;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
}

.stick-font {
    font-family: 'Stick', sans-serif;
    font-size: inherit;
    font-weight: inherit;
    color: inherit;
}

.normal {
    font-weight: normal;
}

.whatisikikimi-content {
    display: flex;
    margin-left: 10vw;
    margin-right: 10vw;
}

.whatsisikikimi-left {
    width: 30vw;
    max-width: 384px;
}

.whatsisikikimi-right-contents1 {
    color: #ffffff;
    margin-top: 5vw;
    margin-left: 7vw;
    font-size: 1.5vw;
    font-weight: bold;
}

/***************************************
* インタラクティブ動画とは
***************************************/
.interactive-video-top {
    background: transparent linear-gradient(316deg, #CDD8EE 0%, #C3DFE9 25%, #AAE2DA 75%, #DFEBCD 95%, #EFFBBD 100%) 0% 0% no-repeat padding-box;
    opacity: 1;
    position: relative;
    text-align: center;
}

.interactive-video-top::before {
    content: '';
    position: absolute;
    bottom: -6vw;
    left: 50%;
    margin-left: -3.1vw;
    border: 3.1vw solid transparent;
    border-top-color: #C3DFE9;
    z-index: 1;
}

.interactive-video-first {
    background: #F1F1F1 0% 0% no-repeat;
    box-shadow: 0px 0px 10px #0000004D;
    opacity: 1;
    border-radius: 15px;
    text-align: center;
    width: 85vw;
    max-width: 1088px;
    position: absolute;
    margin-top: -1vw;
    margin-left: 7vw;
}

.interactive-video-title {
    font-size: 2vw;
    font-weight: bold;
    margin-top: 4vw;
}

.interactive-video-illust1 {
    width: 70vw;
    max-width: 896px;
    margin-bottom: 3vw;
    margin-top: 2vw;
}

.interactive-video-text1 {
    font-size: 1.3vw;
    margin-top: 2vw;
}

.interactive-video-text2 {
    font-size: 1.3vw;
}

.interactive-video-second {
    padding-top: 47vw;
}

.interactive-video-title2 {
    font-size: 3vw;
    font-weight: bold;
    text-align: center;
    margin-left: 16vw;
    margin-right: 16vw;
}

.interactive-video-functions1 {
    display: flex;
    text-align: center;
    margin-top: 3vw;
    justify-content:space-around;
    margin-left: 20vw;
    margin-right: 20vw;
}

.interactive-video-functions2 {
    display: flex;
    text-align: center;
    justify-content:space-around;
    margin-left: 20vw;
    margin-right: 20vw;
    margin-top: 2vw;
    padding-bottom: 5vw;
}

.function_text {
    font-size: 1.3vw;
    font-weight: bold;
    margin-top: 0;
}

.funcgtion_illust {
    width: 15vw;
    max-width: 192px;
}

/***************************************
* インタラクティブ動画が可能にすること
***************************************/
.interactive-video-available {
    background: #F1F1F1 0% 0% no-repeat;
    opacity: 1;
    position: relative;
    margin: 0 auto 5vw;
    padding: 5vw;
    text-align: center;
}

.interactive-video-available::before {
    content: '';
    position: absolute;
    bottom: -6vw;
    left: 50%;
    margin-left: -3.1vw;
    border: 3.1vw solid transparent;
    border-top-color: #F1F1F1;
}

.available-title {
    margin-top: 1.5vw;
    font-weight: bold;
    font-size: 2vw;
}

.available-contents {
    display: flex;
    justify-content: center;
    margin-top: 3vw;
}

.available-content {
    background: #FFFFFF 0% 0% no-repeat;
    box-shadow: 0px 0px 10px #0000004D;
    border-radius: 15px;
    opacity: 1;
}

.available-left-margin {
    margin-left: 2vw;
}

.available-wrapper {
    margin-top: 4vw;
    margin-left: 3vw;
    margin-bottom: 4vw;
    margin-right: 3vw;
}

.available-illust {
    width: 31vw;
    max-width: 396.797px;
}

.available-detail {
    font-weight: bold;
    font-size: 1.8vw;
}

/***************************************
* サンプル動画を見る
***************************************/
.sample-movie-contents {
    text-align: center;
}

.sample-movie-title {
    font-weight: bold;
    font-size: 2vw;
}

.sample-movie-safety {
    margin-top: 1.5vw;
    font-size: 1.2vw;
}

.movie-illust {
    width: 50vw;
    max-width: 640px;
    margin-top: 5vw;
    margin-bottom: 2vw;
    cursor: pointer;
}

.movie-back {
    /*display: none;*/
}

.sample-movie-detail {
    font-weight: bold;
    font-size: 1vw;
    padding-bottom: 5vw;
}

/***************************************
* 幅広いビジネスシーンで活躍
***************************************/
.business-example-contents {
    background: #F1F1F1 0% 0% no-repeat;
    opacity: 1;
    text-align: center;
}

.business-example-title {
    padding-top: 6.2vw;
    font-size: 3vw;
    font-weight: bold;

}

.example-content-wrapper {
    display: flex;
    justify-content: center;
    margin-top: 3vw;
}

.business-example-item1 {
    width: 27vw;
    max-width: 345.594px;
    border-bottom: 0.1vw solid #717475;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 0.5vw;
    cursor: pointer;
}

.business-example-item1 .example-item-text {
    color: #717475;
}

.business-example-item1 .example-item-text:hover {
    color: #C7CAD6;
}

.business-example-item2 {
    width: 27vw;
    max-width: 345.594px;
    border-bottom: 0.1vw solid #717475;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 0.5vw;
    cursor: pointer;
}

.business-example-item2 .example-item-text {
    color: #717475;
}

.business-example-item2 .example-item-text:hover {
    color: #C7CAD6;
}

.business-example-item3 {
    width: 27vw;
    max-width: 345.594px;
    border-bottom: 0.1vw solid #717475;
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 0.5vw;
    cursor: pointer;
}

.business-example-item3 .example-item-text {
    color: #717475;
}

.business-example-item3 .example-item-text:hover {
    color: #C7CAD6;
}

.slect-illust {
    display: none;
}

.non-slect-illust {
    display: inline-block;
}

div[class~="selected"] > .slect-illust {
    display: inline-block;
}

div[class~="selected"] > .non-slect-illust {
    display: none;
}

.icon1 {
    width: 3.3vw;
    max-width: 42.2344px;
}

.icon2 {
    width: 4.6vw;
    max-width: 58.875px;
}

.icon3 {
    width: 4vw;
    max-width: 51.1875px;
}

.example-item-text {
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    margin-left: 2.5vw;
    font-size: 2vw;
}

.business-example-item1.selected {
    border-bottom: 0.2vw solid #418EE5;
}

.business-example-item1.selected .example-item-text {
    color: #418EE5;
}

.business-example-item2.selected {
    border-bottom: 0.2vw solid #418EE5;
}

.business-example-item2.selected .example-item-text {
    color: #418EE5;
}

.business-example-item3.selected {
    border-bottom: 0.2vw solid #418EE5;
}

.business-example-item3.selected .example-item-text {
    color: #418EE5;
}

.business-example-item1.selected::before
{
    content: '';
    position: absolute;
    margin-left: -1vw;
    border: 1vw solid transparent;
    border-top-color: #418EE5;
    margin-top: 7.0vw;
    border-top-width: 1.5vw;
}

.business-example-item2.selected::before
{
    content: '';
    position: absolute;
    margin-left: -1vw;
    border: 1vw solid transparent;
    border-top-color: #418EE5;
    margin-top: 7.0vw;
    border-top-width: 1.5vw;
}

.business-example-item3.selected::before
{
    content: '';
    position: absolute;
    margin-left: -1vw;
    border: 1vw solid transparent;
    border-top-color: #418EE5;
    margin-top: 7.0vw;
    border-top-width: 1.5vw;
}

.slider-wrapper {
    display: flex;
    align-items: center;
    margin-top: 2.7vw;
}

.business-arrow-box {
    position: relative;
}

.business-arrow-icon {
    position: absolute;
}

.left-arrow-icon {
    left: 5vw;
    width: 3.7vw;
    max-width: 47.3594px;
    display: none;
    cursor: pointer;
}

.right-arrow-icon {
    width: 3.7vw;
    left: 1vw;
    max-width: 47.3594px;
    cursor: pointer;
}

.business-contents-box {
    overflow: hidden;
    width: 81vw;
    max-width: 1036.8px;
    margin-left: 10vw;
    margin-top: -10vw;
    position: relative;
    background: #FFFFFF 0% 0% no-repeat;
    box-shadow: 0px 0px 10px #0000004D;
    border-radius: 15px;
    margin-bottom: 10vw;
}

.mask_img
{
    width: 100%;
    height: 43.5vw;
    max-height: 556.797px;
}

.mask_img > div {
    width: 4200px;
    margin-left: 0px;
    padding-left: 0.1vw;
}

#case01_display {
    float: left;
}

#case02_display {
    float: left;
}

#case03_display {
    float: left;
}

.business-contents-top-illust1 {
    width: 81vw;
    max-width: 1036.8px;
    margin-left: 10vw;
}

.business-contents-top-illust2 {
    width: 81vw;
    max-width: 1036.8px;
    margin-left: 10vw;
    display: none;
}

.business-contents-top-illust3 {
    width: 81vw;
    max-width: 1036.8px;
    margin-left: 10vw;
    display: none;
}

.business-contents-header {
    display: flex;
    padding-top: 4vw;
    margin-right: 3vw;
    border-bottom: 1px solid #717475;
    justify-content: space-between;
}

#case01_display .business-contents-header {
    margin-left: 2.8vw;
}

#case02_display .business-contents-header {
    margin-left: 3vw;
}

#case03_display .business-contents-header {
    margin-left: 3vw;
}

.business-contents-header-title {
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    font-size: 2.5vw;
}

.business-contents-header-connect {
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.business-left-text {
    font-weight: bold;
    font-size: 1.3vw;
    padding-right:1vw;
}

.connect-illust {
    width: 6vw;
    max-width: 76.7969px;
}

.business-right-text {
    font-weight: bold;
    font-size: 1.3vw;
    padding-left:1vw;
}

.business-contents-destination {
    text-align: left;
    margin-top: 0.8vw;
    font-size: 1vw;
    font-weight: bold;
}

#case01_display .business-contents-destination {
    margin-left: 2.8vw;
}

#case02_display .business-contents-destination {
    margin-left: 3vw;
}

#case03_display .business-contents-destination {
    margin-left: 3vw;
}

.business-contents-conts {
    display: flex;
    margin-right: 3vw;
    margin-top: 1.5vw;
}

#case01_display .business-contents-conts {
    margin-left: 2.8vw;
}

#case02_display .business-contents-conts {
    margin-left: 3vw;
}

#case03_display .business-contents-conts {
    margin-left: 3vw;
}

.business-contents-conts .business-contents-cont-item:not(:first-child) {
    margin-left: 6vw;
}

.business-contents-cont-item {
    text-align: left;
}

.business-contents-cont-illust {
    width: 21vw;
    max-width: 268.797px;
}

.business-contents-cont-text {
    width: 21vw;
    max-width: 268.797px;
    height: 5vw;
    max-height: 64px;
    margin-bottom: 4vw;
    font-size: 1.2vw;
    font-weight: bold;
}

.fadeIn{
    animation-name:fadeInAnime;
    animation-duration:1s;
    animation-fill-mode:forwards;
    opacity:0;
    }
    
    @keyframes fadeInAnime{
      from {
        opacity: 0;
      }
    
      to {
        opacity: 1;
      }
    }

/***************************************
* イキキミが選ばれる理由
***************************************/
.why-choose-ikikimi-contents {
    background: #F1F1F1 0% 0% no-repeat;
    opacity: 1;
    padding-bottom: 2vw;
}

.why-choose-ikikimi {
    background: transparent linear-gradient(90deg, #CDD8EE 0%, #C8DCEB 7%, #C3DFE9 25%, #AAE2DA 75%, #DFEBCD 95%, #EFFBBD 100%) 0% 0% no-repeat padding-box;
    opacity: 1;
    text-align: center;
    height: 16vw;
    max-height: 204.797px;
}

.why-choose-ikikimi-title {
    color: #FFFFFF;
    text-shadow: 0px 0px 10px #0000004D;
    opacity: 1;
    font-size: 3vw;
    font-weight: bold;
    padding-top: 6vw;
}

.ikikimi-logo-3 {
    width: 21vw;
    vertical-align: middle;
    margin-bottom: 0.5vw;
}

.approach-statement-contents {
    background: #ffffff 0% 0% no-repeat;
    opacity: 1;
    position: relative;
    margin: 0 auto 5vw;
    padding: 5vw;
    text-align: center;
}

.approach-statement-contents::before {
    content: '';
    position: absolute;
    bottom: -6vw;
    left: 50%;
    margin-left: -3.1vw;
    border: 3.1vw solid transparent;
    border-top-color: #ffffff;
}

.approach-statement-title {
    font-weight: bold;
    font-size: 2vw;
    margin-bottom: 2vw;
}

.approach-statement-para {
    font-size: 1.2vw;
}

.approach-statement-box {
    display: flex;
    justify-content: space-around;
    background: #FFFFFF 0% 0% no-repeat;
    box-shadow: 0px 0px 10px #0000004D;
    border-radius: 15px;
    opacity: 1;
    margin-left: 10vw;
    margin-right: 10vw;
    margin-bottom: 2vw;
}

.approach-statement-illust {
    width: 30vw;
    max-width: 348px;
    margin-left: 6vw;
    margin-top: 5vw;
    margin-bottom: 5vw;
}

.approach-statement-details {
    margin-right: 6vw;
    margin-top: 5vw;
    margin-left: 3vw;
    margin-bottom: 4vw;
}

.approach-statement-subtitle {
    font-weight: bold;
    font-size: 2vw;
}

.list-check ul {
    list-style-type: disc;
    font-size: 1vw;
    margin: 0 0 0 20px;
    padding: 0;
}

.list-check ul>li>p {
    line-height: 1.5em;
}

.list-check ul>li:first-child>p {
    margin-bottom: 0;
}

.list-check ul>li:not(:first-child)>p {
    margin-top: 0;
}

/***************************************
* ご利用の流れ
***************************************/
.usage-flow-contents {
    text-align: center;
    padding-bottom: 4vw;
}

.usage-flow-title {
    padding-top: 6.2vw;
    font-weight: bold;
    font-size: 3vw;
}

.usage-flow-illust {
    margin-top: 2vw;
    width: 80vw;
    max-width: 1024px;
    display: inline-block !important;
}

/***************************************
* 目的に合わせた
***************************************/
.the-purpose-contents {
    background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 35%, #92D4EC 77%, #9EE2CF 100%) 0% 0% no-repeat padding-box;
    opacity: 1;
    text-align: center;
    padding-bottom: 2vw;
}

.the-purpose-title {
    color: #FFFFFF;
    font-size: 3vw;
    font-weight: bold;
    padding-top: 6.2vw;
}

.the-purpose-para {
    color: #ffffff;
    font-weight: bold;
    font-size: 1.8vw;
}

.the-purpose-mail-back {
    border-radius: 5vw;
    background: #ffffff;
    display: inline-block;
    margin-top: 3vw;
    margin-bottom: 3vw;
}

a.dl-green-box2 {
    display: inline-block;
    text-decoration: none;
    background: #FF9285 0% 0% no-repeat;
    color: #ffffff;
    border-radius: 5vw;
    padding: 2vw 6.5vw;
}

a.dl-green-box2:hover {
    opacity: 0.5;
}

/***************************************
* Q&A
***************************************/
.qa-contents {
    text-align: center;
    padding-bottom: 5vw;
}

.qa-title {
    font-weight: bold;
    font-size: 3vw;
    padding-top: 6.2vw;
    font-family: 'Montserrat', sans-serif;
}

.qa-wrapper {
    text-align: left;
    margin-top: 4vw;
}

.qa-wrapper summary {
    display: block;
    margin-bottom: 1.5vw;
    margin-top: 1.5vw;
}

.qa-wrapper summary::-webkit-details-marker {
    display: none;
}

details {
    border-bottom: 1px solid #C2C2C2;
    margin-left: 25vw;
    margin-right: 25vw;
}

.A-contents {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.summary_inner {
    cursor: pointer;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.icon {
    display: block;
    position: relative;
    width: 1.5vw;
    max-width: 19.1875px;
    margin-left: 1vw;
    margin-right: 1.5vw;
    flex-shrink: 0;
    transform-origin: center 43%;
    transition: transform 0.4s;
}

details[opencontents] .icon {
    transform: rotate(180deg);
}

.icon::before, .icon::after {
  content: "";
  position: absolute;
  display: block;
  width: 0.9vw;
  max-width: 11.5156px;
  height: 0.2vw;
  max-height: 2.54688px;
  background-color: #707070;
}

.icon::before {
    left: 0;
    transform: rotate(45deg);
}
  
.icon::after {
    right: 0;
    transform: rotate(-45deg);
}

.summary-content img {
    vertical-align: middle;
}

.q-list {
    list-style-type: none;
    padding:0;
    margin:0;
}

.q-list>li {
    line-height: 2vw;
    padding-left: 2.5vw;
    background-image: url(../img/QA_Q.png);
    background-repeat: no-repeat;
    background-size: 2vw;
    text-align: left;
    margin-left: 0.5vw;
}

.q-list>li p {
    font-weight: bold;
    font-size: 1.2vw;
    margin-left: 1vw;
}

.qa-list {
    list-style-type: none;
    padding: 0;
    margin: 0;
}

.qa-list>li {
    line-height: 2vw;
    padding-left: 3.5vw;
    background-image: url(../img/QA_A.png);
    background-repeat: no-repeat;
    background-size: 2vw;
    text-align: left;
}

.qa-list>li p {
    margin:0;
    font-size: 1.2vw;
}

.content_inner {
    padding-top: 1vw;
    padding-bottom: 1vw;
    margin-bottom: 1vw;
    padding-left: 0.5vw;
    padding-right: 4vw;
    background-color: #F8F8F8;
}

/***************************************
* これからのコンテンツに欠かせないサービス
***************************************/

.next-contents-service {
	padding-top: 10.4vw;
	text-align: center;
}

.next-contents-mask {
    position: relative;
    max-height: 497px;
    overflow: hidden;
}

.next-contents-mask::after {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .66);
    position: absolute;
    top: 0;
    left: 0;
}

.next-contents-illust2 {
    width: 100%;
    margin: 0;
    vertical-align: middle;
}

.next-contents-detail {
    position: absolute;
    margin-top: -32.5vw;
    margin-left: 18vw;
    color: #ffffff;
    text-align: center;
}

.next-contents-detail-title {
    font-weight: bold;
    font-size: 3.1vw;
    margin-bottom: 3.9vw;
    color: #ffffff;
}

.next-contents-detail-para {
    font-size: 1.2vw;
    color: #ffffff;
}

.next-contents-dl-wrapper {
    margin-top: 4vw;
    margin-left: -0.5vw;
    display: flex;
}

a.dl-blue-box {
    display: inline-block;
    text-decoration: none;
    background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 35%, #92D4EC 77%, #9EE2CF 100%) 0% 0% no-repeat padding-box;
    color: #ffffff;
    border-radius: 5vw;
    padding: 2vw 5vw;
}

a.dl-blue-box:hover {
    opacity: 0.5;
}

a.dl-blue-box2 {
    display: inline-block;
    text-decoration: none;
    background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 35%, #92D4EC 77%, #9EE2CF 100%) 0% 0% no-repeat padding-box;
    color: #ffffff;
    border-radius: 5vw;
    padding: 2vw 6.5vw;
}

a.dl-blue-box2:hover {
    opacity: 0.5;
}

.dl-icon {
    width: 2.5vw;
    max-width: 32px;
    vertical-align: middle;
}

.mail-icon {
    width: 3vw;
    max-width: 38.3906px;
    vertical-align: middle;
}

.dl-box-text {
    font-size: 2vw;
    font-weight: bold;
    vertical-align: middle;
    padding-left: 1vw;
    color: #ffffff;
}

.dl-back {
    border-radius: 5vw;
    background: #ffffff;
}

.mail-back {
    border-radius: 5vw;
    background: #ffffff;
    margin-left: 4vw;
}

/***************************************
* Page Top
***************************************/
#page_top {
    width: 48px;
    height: 48px;
    position: fixed;
    right: 12px;
    bottom: 10px;
    display: none;
    opacity: 0.8;
    z-index: 60;
  }
  #page_top a {
    position: relative;
    display: block;
    width: 48px;
    height: 48px;
    text-decoration: none;
  }

  #page_top a img {
    width: 100%;
  }

/***************************************
* Footer
***************************************/
footer {
    background: #1E2022 0% 0% no-repeat;
    opacity: 1;
    text-align: center;
}

.footer-text-first {
    padding-top: 20px;
    padding-bottom: 20px;
}

footer .footer-ul {
    text-align: center;
    margin: 0 auto 20px;
    list-style-type: none;
    padding: 0;
}

footer .footer-ul li {
    display: inline-block;
}

footer .footer-ul li a {
    display: block;
    padding: 0 20px;
    color: #ffffff;
    text-decoration: none;
    font-size: 13px;
    position: relative;
}

footer .footer-ul li a:hover {
    text-decoration: underline;
}

footer .footer-ul li:not(:last-child) a:after {
    width: 1px;
    height: 20px;
    position: absolute;
    content: "";
    right: 0;
    background-color: #ffffff;
}

.footer-copyright {
    font-size: 12px;
    font-family: 'Montserrat', sans-serif;
    padding-bottom: 20px;
    color: #FFFFFF;
}

.footer-link {
    font-size: 13px;
    text-decoration: none;
    color: #FFFFFF;
}

.footer-link:hover {
    text-decoration: underline;
}

.fadeUp{
    animation-name:fadeUpAnime;
    animation-duration:1s;
    animation-fill-mode:forwards;
    opacity:0;
}

@keyframes fadeUpAnime{
    from {
        opacity: 0;
        transform: translateY(100px);
    }
  
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fadeUpTrigger{
    opacity: 0;
}

.fadeUp2{
    animation-name:fadeUpAnime;
    animation-duration:1s;
    animation-fill-mode:forwards;
    opacity:0;
}

@keyframes fadeUpAnime2{
    from {
        opacity: 0;
        transform: translateY(100px);
    }
  
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fadeUpTrigger2{
    opacity: 0;
}

.fadeUp3{
    animation: move-to-right 1s linear forwards;
    opacity: 1;
}

@keyframes move-to-right{
    0% {
      transform:rotateZ(0);
      left: 15vw;
      opacity: 1;
    }
    50% {
        transform:rotateZ(180deg);
        left: 21vw;
      }
    100% {
      transform:rotateZ(360deg);
      left: 29vw;
      opacity: 1;
    }
  }

.fadeUpTrigger3{
    opacity: 0;
}

/**********************
PC only
**********************/

@media (min-width: 600px) {
    .pc {
        display: block;
    }

    .pc-inline {
        display: inline-block;
    }
    
    .mobile {
        display: none;
    }

    .top-contents {
        height: 40vw;
        background-size: auto 100%;
    }

    .top-contents .top-back-image {
        width: 97vw;
        background: center / contain no-repeat url(../img/top-background.png);
        background-size: 124vw auto;
        height: 55vw;
        overflow: hidden;
    }

    .top-contents .container {
        width: 100%;
            display: flex;
            position: absolute;
            padding: 0 50px;
            left: 50%;
            transform: translate(-50%, -50%);
            -webkit-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
            z-index: 30;
            top: 36vw;
    }

    .top-contents .container .top-cont-title-box {
        text-align: left;
        width: 50%;
        height: auto;
        position: static;
        margin-top: 50px;
        padding-left: 25px;
    }

    .top-contents .container .top-cont-img-box {
        width: 50%;
    }
    
    .top-contents .container .top-cont-img-box img {
        width: 105%;
        margin-top: 20px;
    }

    .top-contents .top-cont-description {
        width: 38vw;
        font-size: 1.1vw;
        margin-top: 1.5vw;
    }

    .description1 {
        top: 17vw;
        margin-bottom: 17vw;
    }

    .description1 .wave {
        height: 23vw;
        background-size: 100% 12vw;
        top: 20vw;
    }
    
    .description1 .wave::before, .wave::after {
        border-radius: 100% 50%;
    }
    
    .description1 .wave::before {
        width: 64vw;
        height: 28vw;
        top: 2vw;
        left: 52.4vw;
    }
    
    .description1 .wave::after {
        width: 68vw;
        height: 22vw;
        top: 0vw;
        background: transparent linear-gradient(90deg, #365BB1 15%, #7D90EB 60%, #92D4EC 130%, #9EE2CF 180%) 0% 0% no-repeat padding-box;
    }
}

@media (min-width: 660px) {
    .top-contents .top-back-image {
        width: 97vw;
        height: 53vw;
    }
    .description1 {
        margin-bottom: 18vw;
    }
    .description1 .wave {
        top: 15vw;
    }
    .ikikimi-resolution {
        margin-top: -7vw;
    }
    .ikikimi-resolution-title {
        padding-top: 14vw;
    }
    .text-area {
        position: sticky;
    }
}

@media (min-width: 750px) {
    .top-contents .container {
        top: 40vw;
    }
    .top-contents .top-back-image {
        height: 58vw;
    }
    .text-area {
        padding-top: 5vw;
    }
    .description1 {
        margin-bottom: 23vw;
    }
}

@media (min-width: 900px) {
    .top-contents {
        height: 51vw;
    }
    .top-contents .container {
        top: 32vw;
    }
    .top-contents .container .top-cont-title-box {
        width: 55%;
        margin-top: 9vw;
        padding-left: 40px;
    }
    .top-contents .top-cont-title {
        font-size: 3.2vw;
    }
    .top-contents .container .top-cont-img-box {
        width: 45%;
    }
    .description1 {
        top: -17vw;
        margin-bottom: 0;
        height: 45vw;
        background-size: auto 45vw;
        padding-top: 50px;
    }
    .description1 .wave {
        top: 20vw;
    }
    .description1 .wave::before, .wave::after {
        border-radius: 100% 50%;
    }
    .description1 .wave::before {
        width: 55vw;
        height: 27vw;
        top: 3vw;
        left: 55.2vw;
    }
    .description1 .wave::after {
        height: 20vw;
        left: -7.2vw;
        top: 3vw;
        background: transparent linear-gradient(90deg, #365BB1 10%, #7D90EB 60%, #92D4EC 126%, #9EE2CF 180%) 0% 0% no-repeat padding-box;
    }
    .text-area {
        padding-top: 16vw;
    }
    .top-contents .top-back-image {
        width: 97vw;
        background-size: 124vw auto;
        height: 50vw;
    }
    .ikikimi-resolution {
        margin-top: -17vw;
    }
    .ikikimi-resolution-title {
        padding-top: 10vw;
    }
    .user-question-wrapper {
        margin-top: 5vw;
    }
}

@media (min-width: 1280px) {
    .top-contents {
        position: relative;
        height: 620px;
        background-size: auto 625px;

    }

    .top-contents .top-back-image {
        width: 100%;
        background: center / contain no-repeat url(../img/top-background.png);
        background-position: bottom center;
        z-index: 30;
        position: absolute;
        height: 658px;
        opacity: 0.7;
    }

    .top-contents .container {
        display: flex;
        position: absolute;
        width: 1260px;
        height: 500px;
        padding: 0 50px;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        z-index: 30;
        top: 270px;
    }
    
    .description1 .wave {
        position: absolute;
        height: 240px;
        width: 100%;
        background: transparent linear-gradient(90deg, #365BB1 0%, #7D90EB 35%, #92D4EC 80%, #9EE2CF 100%) 0% 0% no-repeat padding-box;
        margin-top: -21%;
        z-index: 10;
        background-size: 100% 108px;
    }
    .description1 .wave::before, .wave::after {
        content: "";
        display: block;
        position: absolute;
        border-radius: 100% 50%;
    }
    .description1 .wave::before {
        width: 54%;
        height: 106%;
        background-color: #fff;
        top: 2%;
        left: 51.7vw;
    }
    .description1 .wave::after {
        width: 57.9%;
        height: 83%;
        background: transparent linear-gradient(90deg, #365BB1 3%, #7D90EB 62%, #92D4EC 135%, #9EE2CF 150%) 0% 0% no-repeat padding-box;
        left: -1.0%;
        top: 1%;
    }

    .text-area {
        padding-top: 230px;
    }
    .top-contents .container .top-cont-title-box {
        text-align: left;
        width: 55%;
        height: auto;
        position: static;
        margin-top: 100px;
        padding-left: 30px;
    }

    .top-contents .container .top-cont-title-box .top-cont-title {
        width: 100%;
        font-size: 44px;
    }

    .top-contents .container .top-cont-title-box .top-cont-description {
        margin-top: 30px;
    }

    .top-contents .container .top-cont-img-box {
        width: 45%;
    }
    .top-contents .container .top-cont-img-box img {
        width: 100%;
        margin-top: 0;
    }
    .top-contents .top-cont-description {
        font-size: 16px;
        max-width: 600px;
    }
    .download_box {
        width: 400px;
        margin-top: 20px;
    }
    .user-question-wrapper {
        margin-top: -330px;
    }
    header .ikikimi-title {
        font-size: 38.48px;
        margin-left: 216px;
    }

    header .ikikimi-top-logo {
        width: 194px;
        margin-left: 185px;
    }

    .top-ikikimi-illust {
        top: 125px;
    }

    header a.contact {
        font-size: 15.36px;
        padding: 10.24px 25.65px;
    }

    header a.contact2 {
        font-size: 15.36px;
        padding: 10.24px 38.4px;
    }

    .description1 {
        margin-top: 8vw;
        height: 594px;
        background-size: auto 45vw;
    }

    .dest-title {
        font-size: 38.4px;
    }

    .border_dest1 {
        margin-top: 12.8px;
    }

    .user-question-wrapper {
        margin-top: 50px;
        margin-left: calc((100vw - 1062.39px) / 2);
    }

    .user-question-wrapper .user-question-item:not(:first-child) {
        margin-left: 12.8px;
    }

    .user-question-para {
        font-size: 19.2px;
        margin: 25.6px;
    }

    .ikikimi-resolution {
        margin-top: -18.5vw;
        height: 1600px;

    }

    .ikikimi-resolution-title {
        padding-top: 102.32px;
        font-size: 38.4px;
    }

    .ikikimi-logo-1 {
        width: 255.797px;
        padding-right: 12.79px;
    }

    .ikikimi-title-span {
        font-size: 76.8px;
        color: #ffffff;
    }

    .ikikimi-res-solutions {
        margin-top: 76.8px;
    }

    .resol-circle {
        margin-top: -38.4px;
        margin-left: 89.59px;
    }

    .resol-icon-touch {
        margin-top: 64px;
        margin-left: 108.8px;
    }

    .resol-title {
        font-size: 19.2px;
        margin-top: 12.8px;
        margin-left: 32px;
        margin-right: 32px;
    }

    .resol-description {
        font-size: 15.36px;
        margin-top: 12.8px;
        margin-left: 25.6px;
        margin-right: 25.6px;
        margin-bottom: 38.4px;
    }

    .resol-icon-selection {
        margin-top: 64px;
        margin-left: 83.2px;
    }

    .resol-icon-graph {
        width: 78.08px;
        margin-top: 64px;
        margin-left: 96px;
    }

    .resol-icon-target{
        width: 75.52px;
        margin-top: 64px;
        margin-left: 96px;
    }

    .next-contents {
        margin-top: 102.4px;
    }

    .next-contents-title {
        font-size: 38.4px;
    }

    .next-contents-illust {
        margin-right: 12.8px;
        margin-left: 12.8px;
    }

    .circle-illust {
        width: 64px;
    }

    .circle-text {
        font-size: 12.8px;
    }

    .animation-plus {
        margin-left: 338.935px;
        margin-top: 140.8px;
    }

    .animation-hang {
        margin-left: 307.634px;
        margin-top: 140.8px;
    }

    .animation-back {
        margin-left: 28.138px;
    }

    .animation-descriptions {
        padding-bottom: 64px;
    }

    .animation-desc-box-wrapper {
        margin-top: 25.6px;
        margin-left: 38.4px;
        margin-right: 38.4px;
        margin-bottom: 25.6px;
    }

    .animation-desc-box:not(:first-child) {
        margin-left: 166.4px;
    }

    .animation-desc-band {
        font-size: 15.36px;
        margin-left: 51.2px;
        margin-top: 25.6px;
    }

    .animation-desc-title {
        font-size: 25.6px;
    }

    .list-check>li {
        line-height: 25.6px;
        padding-left: 44.8px;
        background-size: 25.6px;
    }

    .list-check li p {
        font-size: 16.64px;
    }

    .animation-lis-p {
        font-size: 16.64px;
    }

    .whatisikikimi-contents {
        margin-top: -593.6px;
    }

    .whatsisikikimi-title {
        font-size: 38.4px;
    }

    .ikikimi-logo-2 {
        width: 255.797px;
    }

    .interactive-video-top::before {
        content: '';
        position: absolute;
        bottom: -76.8px;
        left: calc(100vw / 2);
        margin-left: -39.68px;
        border: 39.68px solid transparent;
        border-top-color: #C3DFE9;
    }

    .interactive-video-first {
        margin-top: -12.8px;
        margin-left: calc((100vw - 1088px) / 2);
    }

    .interactive-video-title {
        font-size: 25.6px;
        margin-top: 51.2px;
    }

    .interactive-video-text1 {
        font-size: 16.64px;
        margin-top: 25.6px;
    }

    .interactive-video-text2 {
        font-size: 16.64px;
    }

    .interactive-video-illust1 {
        margin-bottom: 38.4px;
        margin-top: 25.6px;
    }

    .interactive-video-second {
        padding-top: 601.6px;
    }

    .interactive-video-title2 {
        font-size: 38.4px;
        margin-left: calc((100vw - 870.406px) /2);
        margin-right: calc((100vw - 870.406px) /2);
    }

    .interactive-video-functions1 {
        margin-top: 38.4px;
        margin-left: calc((100vw - 768px) /2);
        margin-right: calc((100vw - 768px) /2);
    }

    .function_text {
        font-size: 16.64px;
    }

    .interactive-video-functions2 {
        margin-top: 38.4px;
        margin-left: calc((100vw - 768px) /2);
        margin-right: calc((100vw - 768px) /2);
        padding-bottom: 64px;
    }

    .interactive-video-available {
        margin: 0 auto 64px;
        padding: 64px;
    }
    
    .interactive-video-available::before {
        content: '';
        position: absolute;
        bottom: -76.8px;
        left: calc(100vw / 2);
        margin-left: -39.68px;
        border: 39.68px solid transparent;
        border-top-color: #F1F1F1;
    }

    .available-title {
        margin-top: 19.2px;
        font-size: 25.6px;
    }

    .available-contents {
        margin-top: 38.4px;
    }

    .available-wrapper {
        margin-bottom: 51.2px;
        margin-left: 38.4px;
        margin-right: 38.4px;
        margin-top: 51.2px;
    }

    .available-detail {
        font-size: 23.04px;
    }

    .sample-movie-title {
        font-size: 25.6px;
    }

    .sample-movie-safety {
        margin-top: 19.2px;
        font-size: 15.36px;
    }

    .movie-illust {
        margin-top: 64px;
        margin-bottom: 25.6px;
    }

    .sample-movie-detail {
        padding-bottom: 64px;
        font-size: 12.8px;
    }

    .business-example-title {
        font-size: 38.4px;
        padding-top: 79.298px;
    }

    .example-content-wrapper {
        margin-top: 38.4px;
    }

    .why-choose-ikikimi-contents {
        padding-bottom: 25.6px;
    }

    .why-choose-ikikimi-title {
        font-size: 38.4px;
        padding-top: 76.8px;
    }

    .ikikimi-logo-3 {
        width: 268.578px;
        margin-bottom: 6.395px;
    }

    .approach-statement-contents {
        margin: 0 auto 64px;
        padding: 64px;
    }
    
    .approach-statement-contents::before {
        content: '';
        position: absolute;
        bottom: -76.8px;
        left: calc(100vw / 2);
        margin-left: -39.68px;
        border: 39.68px solid transparent;
        border-top-color: #ffffff;
    }

    .approach-statement-title {
        font-size: 25.6px;
        margin-bottom: 25.6px;
    }

    .approach-statement-para {
        font-size: 15.36px;
    }

    .approach-statement-box {
        margin-left: calc((100vw - 1024px) /2);
        margin-right: calc((100vw - 1024px) /2);
        margin-bottom: 25.6px;
    }

    .approach-statement-illust {
        margin-left: 76.8px;
        margin-top: 64px;
        margin-bottom: 64px;
    }

    .approach-statement-details {
        margin-right: 76.8px;
        margin-top: 64px;
        margin-left: 38.4px;
        margin-bottom: 51.2px;
    }

    .approach-statement-subtitle {
        font-size: 25.6px;
    }

    .usage-flow-contents {
        padding-bottom: 51.2px;
    }

    .usage-flow-title {
        padding-top: 80px;
        font-size: 38.4px;
    }

    .usage-flow-illust {
        margin-top: 25.6px;
    }

    .the-purpose-contents {
        padding-bottom: 25.6px;
    }

    .the-purpose-title {
        font-size: 38.4px;
        padding-top: 80px;
    }

    .border_dest2 {
        border: 1px solid #FFFFFF;
        margin-top: 12.8px;
        margin-bottom: 38.4px
    }

    .the-purpose-para {
        font-size: 23.04px;
    }

    .the-purpose-mail-back {
        border-radius: 64px;
        margin-top: 38.4px;
        margin-bottom: 38.4px;
    }

    a.dl-green-box2 {
        border-radius: 64px;
        padding: 25.6px 83.2px;
    }

    .dl-box-text {
        font-size: 25.6px;
        padding-left: 12.8px;
    }

    .qa-contents {
        padding-bottom: 64px;
    }

    .qa-title {
        font-size: 38.4px;
        padding-top: 80px;
    }

    .qa-wrapper {
        margin-top: 51.2px;
    }

    details {
        margin-left: calc((100vw - 640px)/2);
        margin-right: calc((100vw - 640px)/2);
    }

    .qa-wrapper summary {
        margin-bottom: 19.2px;
        margin-top: 19.2px;
    }

    .q-list>li {
        line-height: 25.6px;
        padding-left: 32px;
        background-size: 25.5938px;
        margin-left: 6.4px;
    }
    
    .q-list>li p {
        font-size: 15.36px;
        margin-left: 12.8px;
    }

    .icon {
        margin-left: 12.8px;
        margin-right: 19.2px;
    }

    .content_inner {
        padding-top: 20px;
        padding-bottom: 20px;
        margin-bottom: 20px;
        padding-left: 10px;
        padding-right: 51.2px;
    }

    .qa-list>li {
        line-height: 25.6px;
        padding-left: 44.8px;
        background-size: 25.6px;
    }

    .qa-list>li p {
        font-size: 15.36px;
    }

    .next-contents-service {
        padding-top: 133.12px;
    }

    .next-contents-detail {
        margin-top: -416.6px;
        margin-left: calc((100vw - 868.53px) / 2);
    }

    .next-contents-detail-title {
        font-size: 40px;
        margin-bottom: 50px;
    }

    .next-contents-detail-para {
        font-size: 18.408px;
    }

    .next-contents-dl-wrapper {
        margin-top: 61.36px;
        margin-left: -6.4px;
    }

    .dl-back {
        border-radius: 76.7px;
    }

    .mail-back {
        border-radius: 76.7px;
        margin-left: 61.36px;
    }

    a.dl-blue-box {
        border-radius: 76.7px;
        padding: 30.68px 76.7px;
    }

    a.dl-blue-box2 {
        border-radius: 76.7px;
        padding: 30.68px 99.71px;
    }

    .whatisikikimi-content {
        margin-left: calc((100vw - 1024px)/2);
        margin-right: calc((100vw - 1024px)/2);;
    }

    .whatsisikikimi-right-contents1 {
        margin-top: 64px;
        margin-left: 89.6px;
        font-size: 19.2px;
    }

    .download_box2 {
        height: 115.109px;
        margin-left: 89.53px;
        margin-top: 38.37px;
        width: 370.906px;
    }

    .business-example-item1.selected {
        border-bottom: 2px solid #418EE5;
    }

    .business-example-item1 {
        border-bottom: 1px solid #717475;
        padding-bottom: 6.4px;
    }

    .example-item-text {
        margin-left: 32px;
        font-size: 25.6px;
    }

    .business-example-item2.selected {
        border-bottom: 2px solid #418EE5;
    }

    .business-example-item2 {
        border-bottom: 1px solid #717475;
        padding-bottom: 6.4px;
    }

    .business-example-item3.selected {
        border-bottom: 2px solid #418EE5;
    }

    .business-example-item3 {
        border-bottom: 1px solid #717475;
        padding-bottom: 6.4px;
    }

    .left-arrow-icon {
        left: calc(((100vw - 1036.8px)/2) - 66px);
    }

    .business-contents-top-illust1
    {
        margin-left: calc((100vw - 1036.8px)/2);
    }

    .business-contents-top-illust2
    {
        margin-left: calc((100vw - 1036.8px)/2);
    }

    .business-contents-top-illust3
    {
        margin-left: calc((100vw - 1036.8px)/2);
    }

    .business-contents-box {
        margin-left: calc((100vw - 1036.8px)/2);
        margin-top: -128px;
        margin-bottom: 128px;
    }

    .mask_img > div {
        padding-left: 1.28px;
    }

    .business-contents-header {
        padding-top: 51.2px;
        margin-right: 38.4px;
    }

    #case01_display .business-contents-header {
        margin-left: 35.84px;
    }
    
    #case02_display .business-contents-header {
        margin-left: 38.4px;
    }
    
    #case03_display .business-contents-header {
        margin-left: 38.4px;
    }

    .business-contents-header-title {
        font-size: 32px;
    }

    .business-left-text {
        font-size: 16.64px;
        padding-right: 12.8px;
    }

    .business-right-text {
        font-size: 16.64px;
        padding-left: 12.8px;
    }

    .business-contents-destination {
        margin-top: 10.24px;
        font-size: 12.8px;
    }

    #case01_display .business-contents-destination {
        margin-left: 35.84px;
    }
    
    #case02_display .business-contents-destination {
        margin-left: 38.4px;
    }
    
    #case03_display .business-contents-destination {
        margin-left: 38.4px;
    }

    .business-contents-conts {
        margin-right: 38.4px;
        margin-top: 19.2px;
    }

    #case01_display .business-contents-conts {
        margin-left: 35.84px;
    }
    
    #case02_display .business-contents-conts {
        margin-left: 38.4px;
    }
    
    #case03_display .business-contents-conts {
        margin-left: 38.4px;
    }

    .business-contents-cont-text {
        margin-bottom: 51.2px;
        font-size: 15.36px;
    }

    .business-contents-conts .business-contents-cont-item:not(:first-child) {
        margin-left: 76.8px;
    }

    .business-example-item1.selected::before
    {
        content: '';
        position: absolute;
        margin-left: -12.8px;
        border: 12.8px solid transparent;
        border-top-color: #418EE5;
        margin-top: 89.6px;
        border-top-width: 19px;
    }
    
    .business-example-item2.selected::before
    {
        content: '';
        position: absolute;
        margin-left: -12.8px;
        border: 12.8px solid transparent;
        border-top-color: #418EE5;
        margin-top: 89.6px;
        border-top-width: 19px;
    }
    
    .business-example-item3.selected::before
    {
        content: '';
        position: absolute;
        margin-left: -12.8px;
        border: 12.8px solid transparent;
        border-top-color: #418EE5;
        margin-top: 89.6px;
        border-top-width: 19px;
    }

    .slider-wrapper {
        margin-top: 34.56px;
    }
    
    @keyframes move-to-right{
        0% {
          transform:rotateZ(0);
          left: calc(((100vw - 1024px)/2) + 71px);
          opacity: 1;
        }
        50% {
            transform:rotateZ(180deg);
            left: calc(((100vw - 1024px)/2) + 147.8px);
          }
        100% {
          transform:rotateZ(360deg);
          left: calc(((100vw - 1024px)/2) + 250.2px);
          opacity: 1;
        }
      }
    
    .fadeUpTrigger3{
        opacity: 0;
    }
}

@media (min-width: 2950px) {
    .text-area {
        padding-top: 275px;
    }
    .description1 {
        height: 631px;
    }
    .ikikimi-resolution-title {
        padding-top: 150.32px;
    }
    .top-contents {
        height: 689px;
    }
}

/**********************
mobile only
**********************/
@media (max-width: 599px) {
    .pc {
        display: none !important;
    }

    .pc-inline {
        display: none !important;
    }

    .mobile {
        display: block;
    }

    header .header-cont1 {
        height: 58px;
        padding-left: 30px;
    }

    header .logo {
        width: 65px;
    }

    header .ikikimi-title {
        font-size: 26px;
        margin-right: 8vw;
        margin-left: 0;
    }

    header .togglewrap {
        background: none;
        border: none;
        padding-right: 10px;
    }

    header .toggle_open_img {
        right: 22.5px;
        top: 22.5px;
    }

    header .ikikimi-top-logo {
        margin-left: -48px;
        width: 132px;
    }

    .top-contents .top-cont-title-box {
        left: 0;
        top: 10vw;
    }

    .top-contents .top-cont-title {
        text-align: center;
        font-size: 6.2vw;
    }

    .top-cont-titles {
        margin-left: 8vw;
        margin-right: 7.4vw;
    }

    .top-cont-download-btn {
        margin-left: 8vw;
        margin-right: 7.4vw;
        text-align: center;
    }

    .download_box {
        height: 24vw;
        margin-left: 6vw;
        margin-top: -2vw;
        width: 69vw;
    }

    .top-contents .top-cont-description {
        text-align: center;
        font-size: 3.8vw;
        margin-top: 5.4vw;
    }

    .top-ikikimi-illust-mobile {
        left: 0;
        width: 100%;
    }

    .description1 {
        margin-top: 25vw;
        padding-left: 8vw;
        padding-right: 7.4vw;
        height: 99vw;
        max-height: initial;
    }

    .dest-title {
        font-size: 5.8vw;
    }

    .border_dest1 {
        margin-top: 3vw;
        width: 31.7vw;
    }

    .user-question-wrapper {
        margin-top: 11vw;
        left: 8vw;
        right: 7.4vw;
        margin-left: 0;
    }

    .user-question-item {
        width: 39vw;
        max-width: initial;
        margin-bottom: 5vw;
        margin-left: 1vw;
    }

    .user-question-wrapper .user-question-item:not(:first-child) {
        margin-left: 0;
    }

    .user-question-para {
        margin: 5.1vw 2.7vw;
        font-size: 4.2vw;
    }

    .ikikimi-resolution-title {
        padding-top: 25vw;
    }

    .ikikimi-logo-1 {
        width: 50vw;
        padding-right: 0vw;
    }

    .ikikimi-title-span {
        font-size: 18.6vw;
        line-height: 18.6vw;
    }

    .ikikimi-title2 {
        font-size: 7.4vw;
        color: #ffffff;
    }

    .ikikimi-res-solutions {
        display: block;
        margin-left: 8vw;
        margin-right: 7.4vw;
        margin-top: 20vw;
    }

    .ikikimi-res-solution-mobile {
        display: flex;
        justify-content: space-around;
    }

    .ikikimi-res-solution-mobile:not(:first-child) {
        margin-top: 15vw;
    }

    .ikikimi-res-sol-item {
        width: 40vw;
    }

    .resol-circle {
        margin-top: -8vw;
        margin-left: 12vw;
        width: 16vw;
    }

    .resol-icon-touch {
        width: 8.5vw;
        margin-top: 9vw;
        margin-left: 15vw;
    }

    .resol-title {
        font-size: 4.1vw;
        text-align: center;
        margin-left: 1.5vw;
        margin-right: 1.5vw;
    }

    .resol-description {
        font-size: 3.8vw;
        margin-bottom: 8vw;
        margin-left: 3vw;
    }

    .resol-icon-selection {
        width: 17.5vw;
        margin-top: 9vw;
        margin-left: 10vw;
    }

    .resol-icon-graph {
        width: 15.2vw;
        margin-top: 9vw;
        margin-left: 12vw;
    }

    .resol-icon-target {
        width: 14.7vw;
        margin-top: 9vw;
        margin-left: 12.7vw;
    }

    .next-contents {
        margin-top: 13.3vw;
        margin-bottom: 9vw;
    }

    .next-contents-title {
        font-size: 7.4vw;
        margin-bottom: -5vw;
    }

    .circle-illust {
        width: 14vw;
        padding-top: 5vw;
    }

    .circle-text {
        font-size: 4vw;
    }

    .animation-illust-mobile {
        text-align: center;
    }

    .animation-back-mobile {
        width: 100%;
    }

    .animation-descriptions {
        justify-content: space-around;
        margin-left: 6vw;
        margin-right: 6vw;
        padding-bottom: 14vw;
    }

    .animation-desc-box {
        width: 40vw;
    }

    .animation-desc-box:not(:first-child) {
        margin-left: 0;
    }

    .animation-desc-box-wrapper {
        margin-left: 0;
        margin-right: 0;
    }

    .animation-desc-band {
        border-radius: initial;
        width: 100%;
        margin-left: 0;
        font-size: 3.4vw;
        margin-bottom: 2.5vw;
        margin-top: 4.5vw;
    }

    .animation-desc-title {
        font-size: 4vw;
        margin-left: 1.5vw;
        margin-right: 1.5vw;
    }

    .animation-desc-box-wrapper .list-check {
        margin-left: 1.5vw;
        margin-right: 1.5vw;
        margin-top: 1.5vw;
    }

    .animation-desc-box-wrapper .list-check li:not(:first-child) {
        margin-top: 0.5vw;
    }

    .list-check>li {
        background-size: 4.5vw;
        line-height: 6.5vw;
        padding-left: 7.5vw;
        background-position-y: 1vw;
    }

    .list-check li p {
        font-size: 3.7vw;
        margin-top: 0;
        margin-bottom: 0;
    }

    .animation-lis-p {
        font-size: 3.7vw;
    }

    .whatisikikimi-mask {
        max-height: initial;
    }

    .whatisikikimi-illust-mmobile {
        width: 100%;
    }

    .whatisikikimi-contents {
        margin-top: -234vw;
    }

    .why-choose-ikikimi-contents {
        padding-bottom: 8vw;
    }

    .whatsisikikimi-title {
        font-size: 6.4vw;
    }

    .ikikimi-logo-2 {
        width: 55vw;
    }

    .whatisikikimi-content {
        display: initial;
        margin-left: 0;
        margin-right: 0;
    }

    .whatsisikikimi-right-contents1 {
        margin-top: 8vw;
        margin-left: 8vw;
        margin-right: 7.4vw;
        margin-bottom: 6vw;
        font-size: 4.2vw;
    }

    .whatsisikikimi-left {
        width: 100%;
        max-width: initial;
    }

    .top-cont-download-btn2 {
        margin-left: 8vw;
        margin-right: 7.4vw;
    }

    .download_box2 {
        height: 19.5vw;
        margin-left: 8vw;
        margin-top: 0;
        width: 69vw;
    }

    .interactive-video-top {
        padding-left: 8vw;
        padding-right: 7.4vw;
    }

    .interactive-video-top::before {
        content: '';
        position: absolute;
        bottom: -13.9vw;
        left: 50%;
        margin-left: -7.5vw;
        border: 7.5vw solid transparent;
        border-top-color: #C3DFE9;
    }

    .interactive-video-first {
        margin-top: -6vw;
        margin-left: 0;
    }

    .interactive-video-title {
        margin-top: 8vw;
        font-size: 5.4vw;
        margin-bottom: 4.5vw;
    }

    .interactive-video-text2 {
        font-size: 3.6vw;
        margin-left: 4vw;
        margin-right: 4vw;
    }

    .interactive-video-second {
        padding-top: 189vw;
    }

    .interactive-video-illust1-mobile {
        display: inline-block;
        margin-top: 10vw;
        width: 80%;
        padding-bottom: 8vw;
    }

    .interactive-video-title2 {
        margin-left: 0;
        margin-right: 0;
        font-size: 6.4vw;
    }

    .interactive-video-functions1 {
        margin-left: 0;
        margin-right: 0;
        margin-top: 6vw;
    }

    .interactive-video-functions2 {
        margin-left: 0;
        margin-right: 0; 
    }

    .funcgtion_illust {
        width: 28vw;
        max-width: initial;
    }

    .function_text {
        font-size: 3.7vw;
    }

    .interactive-video-available {
        padding-left: 8vw;
        padding-right: 7.4vw;
    }

    .available-title {
        margin-top: 6.4vw;
        margin-left: 8vw;
        margin-right: 7.4vw;
        font-size: 6.4vw;
    }

    .available-contents {
        display: block;
    }

    .available-wrapper {
        padding-top: 8.5vw;
        padding-left: 5.4vw;
        padding-bottom: 4vw;
        padding-right: 5.4vw;
        margin: 0;
    }

    .available-left-margin {
        margin-left: 0;
        margin-top: 4vw;
    }

    .available-illust {
        width: 100%;
        max-width: initial;
    }

    .available-detail {
        margin-top: 3vw;
        font-size: 4.8vw;
    }

    .interactive-video-available::before {
        content: '';
        position: absolute;
        bottom: -13.9vw;
        left: 50%;
        margin-left: -7.5vw;
        border: 7.5vw solid transparent;
        border-top-color: #F1F1F1;
    }

    .sample-movie-title {
        margin-top: 13vw;
        font-size: 5.4vw;
    }

    .sample-movie-safety {
        font-size: 3.7vw;
    }

    .movie-illust {
        width: 85vw;
    }

    .sample-movie-detail {
        font-size: 3.7vw;
        padding-bottom: 11vw;
        margin-top: 5vw;
    }

    .business-example-title {
        padding-top: 12vw;
        font-size: 6.4vw;
    }

    .slider-wrapper {
        justify-content: space-around;
        margin-top: 8vw;
    }

    .business-contents-box-mobile {
        display: flex;
        color: #ffffff;
        font-family: 'Montserrat', sans-serif;
        font-weight: bold;
        justify-content: center;
    }

    .business-contents-box-mobile>div:not(:first-child) {
        margin-left: 2.4vw;
    }

    .business-contents-title1 {
        position: absolute;
        margin-left: 5vw;
        font-size: 4.2vw;
        margin-top: -18vw;
        z-index: 1;
        color: #ffffff;
    }

    .business-contents-title2 {
        position: absolute;
        margin-left: 3.5vw;
        font-size: 4.2vw;
        margin-top: -16.4vw;
        z-index: 1;
        color: #ffffff;
    }

    .business-contents-title3 {
        position: absolute;
        margin-left: 1.5vw;
        font-size: 4.2vw;
        margin-top: -16.4vw;
        z-index: 1;
        color: #ffffff;
    }

    .business-cont-mask {
        position: relative;
    }
    
    .business-cont-mask::after {
        content: "";
        width: 100%;
        height: 100%;
        background: rgba(0,0,0,.66);
        position: absolute;
        top: 0;
        left: 0;
    }

    .business-contents-top-illust1 {
        width: 26.6vw;
        margin-left: 0;
    }

    .business-contents-top-illust2 {
        width: 26.6vw;
        display: block;
        margin-left: 0;
    }

    .business-contents-top-illust3 {
        width: 26.6vw;
        display: block;
        margin-left: 0;
    }

    .business-contents-box-mobile2 {
        display: flex;
        margin: auto;
        overflow-x: auto;
        max-width: 100vw;
        padding-top: 3.7vw;
        padding-bottom: 13.3vw;
    }

    .case01_mobile {
        margin-left: 8vw;
        background: #FFFFFF 0% 0% no-repeat;
        box-shadow: 0px 0px 10px #0000004D;
        border-radius: 15px;
        padding-top: 5.3vw;
        padding-bottom: 8vw;
        padding-left: 4.6vw;
        padding-right: 5vw;
    }

    .case02_mobile {
        margin-left: 4.8vw;
        background: #FFFFFF 0% 0% no-repeat;
        box-shadow: 0px 0px 10px #0000004D;
        border-radius: 15px;
        padding-top: 5.3vw;
        padding-bottom: 8vw;
        padding-left: 4.6vw;
        padding-right: 5vw;
    }

    .case03_mobile {
        margin-left: 4.8vw;
        background: #FFFFFF 0% 0% no-repeat;
        box-shadow: 0px 0px 10px #0000004D;
        border-radius: 15px;
        padding-top: 5.3vw;
        padding-bottom: 8vw;
        padding-left: 4.6vw;
        padding-right: 5vw;
        margin-right: 8.4vw;
    }

    .business-contents-header-title-wrapper {
        display: flex;
        justify-content: space-between;
        border-bottom: solid 1px #717475;
    }

    .business-contents-header-title {
        font-size: 5.3vw;
    }

    .connect-illust {
        width: 30vw;
        max-width: initial;
        padding-bottom: 2vw;
    }

    .business-contents-destination {
        font-size:max(1.8vw,10px);
        font-weight: bold;
        font-family: 'Montserrat', sans-serif;
        margin-left: 0;
        margin-top: 2vw;
    }
    
    .business-contents-cont-item1 {
        display: flex;
        margin-top: 3.8vw;
    }

    .business-contents-cont-item2 {
        display: flex;
        margin-top: 3.2vw;
    }

    .business-contents-cont-item3 {
        display: flex;
        margin-top: 3.2vw;
    }

    .business-contents-cont-illust {
        width: 39.1vw;
    }

    .business-contents-cont-text {
        width: 35vw;
        height: initial;
        max-width: initial;
        max-height: initial;
        padding-top: 2.6vw;
        padding-left: 2.1vw;
        text-align: left;
        font-size: 3.7vw;
    }

    .business-contents-title1::after {
        content: '';
        position: absolute;
        left: 50%;
        bottom: -0.2rem;
        transform: translateX(-50%);
        width: 0%;
        height: 3px;
        background: #418EE5;
        transition: all 0.5s;
    }

    .select-business-content.business-contents-title1::after {
        width: 100%;
    }

    .business-contents-title2::after {
        content: '';
        position: absolute;
        left: 50%;
        bottom: -0.2rem;
        transform: translateX(-50%);
        width: 0%;
        height: 3px;
        background: #418EE5;
        transition: all 0.5s;
    }

    .select-business-content.business-contents-title2::after {
        width: 100%;
    }

    .business-contents-title3::after {
        content: '';
        position: absolute;
        left: 50%;
        bottom: -0.2rem;
        transform: translateX(-50%);
        width: 0%;
        height: 3px;
        background: #418EE5;
        transition: all 0.5s;
    }

    .select-business-content.business-contents-title3::after {
        width: 100%;
    }

    .why-choose-ikikimi {
        height: 33.3vw;
    }

    .why-choose-ikikimi-title {
        font-size: 6.4vw;
        padding-top: 12vw;
    }

    .ikikimi-logo-3 {
        width: 48vw;
        margin-bottom: 0.8vw;
    }

    .approach-statement-contents {
        padding-top: 10.5vw;
        padding-bottom: 24vw;
        padding-left: 8vw;
        padding-right: 7.4vw;
    }

    .approach-statement-contents::before {
        content: '';
        position: absolute;
        bottom: -14.9vw;
        left: 50%;
        margin-left: -7.5vw;
        border: 7.5vw solid transparent;
        border-top-color: #ffffff;
    }

    .approach-statement-title {
        font-size: 5.3vw;
        margin-left: 5vw;
        margin-right: 5vw;
        margin-bottom: 4vw;
    }

    .approach-statement-para {
        font-size: 4.2vw;
    }

    .approach-statement-box {
        display: block;
        padding-top: 8vw;
        padding-left: 5.3vw;
        padding-right: 5.3vw;
        padding-bottom: 3vw;
    }

    .approach-statement-box:first-child {
        margin-top: 11vw;
    }

    .approach-statement-illust {
        margin-top: 0vw;
        margin-left: 0vw;
        margin-right: 0vw;
        margin-bottom: 5.3vw;
        width: 100%;
        max-width: initial;
    }

    .approach-statement-details {
        margin-top: 0;
        margin-left: 0;
        margin-right: 0;
    }

    .approach-statement-subtitle {
        text-align: center;
        font-size: 4.8vw;
    }

    .list-check ul>li>p {
        line-height: initial;
        margin-top: 0;
        margin-bottom: 0;
    }

    .usage-flow-title {
        padding-top: 12vw;
        font-size: 6.4vw;
    }

    .usage-flow-illust-mobile {
        width: 100%;
        padding-left: 8vw;
        padding-right: 7.4vw;
        padding-top: 7vw;
        padding-bottom: 4vw;
    }

    .the-purpose-contents {
        padding-left: 8vw;
        padding-right: 7.4vw;
    }

    .the-purpose-title {
        padding-top: 12vw;
        font-size: 6.4vw;
    }

    .the-purpose-title2 {
        font-size: 6.4vw;
        font-weight: bold;
        color: #ffffff;
    }

    .border_dest2 {
        margin-top: 3vw;
        width: 31.7vw;
    }

    .the-purpose-para:nth-of-type(5) {
        margin-top: 7vw;
    }

    .the-purpose-para {
        font-size: 4.2vw;
    }

    .the-purpose-mail-back {
        margin-top: 11vw;
        margin-bottom: 11vw;
        border-radius: 8vw;
    }

    .mail-icon {
        max-width: initial;
        width: 6.6vw;
    }

    .dl-box-text {
        font-size: 4.8vw;
        padding-left: 2vw;
    }

    a.dl-green-box2 {
        border-radius: 8vw;
        padding: 4.5vw 14vw;
    }

    .qa-contents {

    }

    .qa-title {
        padding-top: 12vw;
        font-size: 6.4vw;
    }

    .js-details {
        margin-left: 8vw;
        margin-right: 7.4vw;
    }

    .qa-wrapper summary {
        margin-bottom: 5.3vw;
        margin-top: 6.1vw;
    }

    .q-list {
        list-style-type: none;
        padding:0;
        margin:0;
    }

    .q-list>li {
        line-height: 7.2vw;
        padding-left: 11vw;
        background-image: url(../img/QA_Q.png);
        background-repeat: no-repeat;
        background-size: 7.2vw;
        text-align: left;
        margin-left: 2.4vw;
    }

    .q-list>li p {
        margin: 0;
        font-size: 4.2vw;
        font-weight: bold;
    }

    .icon {
        display: block;
        position: relative;
        width: 3.5vw;
        max-width: initial;
        margin-left: 1vw;
        margin-right: 1.5vw;
    }
    
    .icon::before, .icon::after {
      content: "";
      position: absolute;
      display: block;
      width: 2vw;
      max-width: initial;
      height: 0.2vw;
      max-height: initial;
      background-color: #707070;
    }

    .qa-list>li {
        line-height: 7.2vw;
        padding-left: 10vw;
        background-size: 7.2vw;
        margin-left: 2.4vw;
        padding-right: 5.3vw;
    }

    .qa-list>li p {
        margin: 0;
        font-size: 4.2vw;
    }

    .content_inner {
        padding-top: 5.3vw;
        padding-bottom: 6.1vw;
        margin-bottom: 6.1vw;
        padding-right: 0;
    }

    .next-contents-mask {
        position: relative;
        max-height: initial;
        overflow: hidden;
    }

    .next-contents-detail {
        margin-top: -104vw;
        margin-left: 8vw;
        margin-right: 7.4vw;
    }

    .next-contents-detail-title {
        font-size: 6.4vw;
        margin-bottom: 8vw;
    }

    .next-contents-detail-para {
        font-size: 3.6vw;
    }

    .next-contents-dl-wrapper {
        display: initial;
        margin-top: 0;
        margin-left: 0;
    }

    .dl-back {
        margin-top: 13vw;
        display: inline-block;
        border-radius: 8vw;
    }

    .dl-icon {
        width: 5vw;
    }

    .mail-back {
        margin-top: 6vw;
        display: inline-block;
        margin-left: 0;
        border-radius: 8vw;
    }

    a.dl-blue-box {
        border-radius: 8vw;
        padding: 4vw 8vw;
    }

    a.dl-blue-box2 {
        border-radius: 8vw;
        padding: 4vw 12vw; 
    }

    #page_top {
        width: 34px;
        height: 34px;
        right: 28px;
        bottom: 10px;
        opacity: 0.6;
    }

    #page_top a {
        width: 34px;
        height: 34px;
    }

    footer {
        padding-right: 5.3vw;
        padding-left: 5.3vw;
    }

    .footer-text-first {
        border-bottom: 1px solid #ffffff;
        padding-top: 40px;
    }

    footer .footer-ul {
        padding-left: 0;
    }

    footer .footer-ul li {
        display: initial;
    }

    footer .footer-ul li:not(:last-child) a:after {
        content: "";
        width: initial;
        height: initial;
        position: initial;
        right: initial;
        background-color: initial;
    }

    footer .footer-ul li a {
        border-bottom: 1px solid #ffffff;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    nav .toc-wrapper {
        top:0;
        left:0;
        right: 0;
        bottom: 0;
        overflow-y: scroll;
        background-color: #4F5456;
        display: none;
        position: fixed;
        z-index: 999;
    }

    nav .toc-wrapper>ul>li {
        color: #ffffff;
    }

    nav .toc-wrapper>ul>li>span {
        color: #ffffff;
        font-family: 'Montserrat', sans-serif;
    }

    nav .toc-wrapper>ul>li:last-child {
        font-family: 'Montserrat', sans-serif;
    }

    nav .toggle-img-wrapper {
        display: flex;
        justify-content: flex-end;
    }

    nav .toggle_close_img {
        padding-right: 19px;
        padding-top: 19px;
    }

    nav ul {
        list-style-type: none;
        font-size: 16px;
        font-weight: bold;
        color: #ffffff;
        padding-left: 40px;
        margin-top: 60px;
    }

    nav ul>li:not(:first-child) {
        margin-top: 40px;
    }

    nav .dl-back {
        margin-top: 40px;
        border-radius: 30px;
    }

    nav .dl-blue-box {
        border-radius: 30px;
        padding: 15px 30px;
    }

    nav .dl-icon {
        width: 21.3438px;
    }

    nav .dl-box-text {
        font-size: 18px;
        padding-left: 7.5px;
    }

    nav .mail-back {
        margin-top: 20px;
        border-radius: 30px;
    }

    nav .dl-blue-box2 {
        border-radius: 30px;
        padding: 15px 45px;
    }

    nav .mail-icon {
        width: 24.75px;
    }
}