@charset "UTF-8";
/********************************************************************************

kakuyasu.css

********************************************************************************/

/*============================================================
 アイコン
*============================================================*/
/* default setting
---------------------------------------- */
.kkys-bg-icon {
    --icon-width: 144px;
    --icon-color: #fff;
    --icon-position: center center;
}

/* 本体
---------------------------------------- */
.kkys-bg-icon {
    background-blend-mode: multiply;
    background-color: var(--icon-color);
    mask-size: var(--icon-width) auto;
    mask-position: var(--icon-position);
    mask-repeat: no-repeat;
    -webkit-mask-size: var(--icon-width) auto;
    -webkit-mask-position: var(--icon-position);
    -webkit-mask-repeat: no-repeat;
}

/* アイコンファイル(画像格納パスが違う場合のみ編集)
---------------------------------------- */
.kkys-bg-icon[data-icon="analysis"] {
    mask-image: url(../images/kakuyasu/icon-analysis.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-analysis.svg);
}
.kkys-bg-icon[data-icon="arrow"] {
    mask-image: url(../images/kakuyasu/icon-arrow.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-arrow.svg);
}
.kkys-bg-icon[data-icon="arrow-close"] {
    mask-image: url(../images/kakuyasu/icon-arrow-close.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-arrow-close.svg);
}
.kkys-bg-icon[data-icon="arrow-open"] {
    mask-image: url(../images/kakuyasu/icon-arrow-open.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-arrow-open.svg);
}
.kkys-bg-icon[data-icon="building"] {
    mask-image: url(../images/kakuyasu/icon-building.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-building.svg);
}
.kkys-bg-icon[data-icon="calendar"] {
    mask-image: url(../images/kakuyasu/icon-calendar.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-calendar.svg);
}
.kkys-bg-icon[data-icon="cart"] {
    mask-image: url(../images/kakuyasu/icon-cart.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-cart.svg);
}
.kkys-bg-icon[data-icon="check"] {
    mask-image: url(../images/kakuyasu/icon-check.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-check.svg);
}
.kkys-bg-icon[data-icon="cloud"] {
    mask-image: url(../images/kakuyasu/icon-cloud.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-cloud.svg);
}
.kkys-bg-icon[data-icon="comment"] {
    mask-image: url(../images/kakuyasu/icon-comment.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-comment.svg);
}
.kkys-bg-icon[data-icon="cross"] {
    mask-image: url(../images/kakuyasu/icon-cross.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-cross.svg);
}
.kkys-bg-icon[data-icon="document"] {
    mask-image: url(../images/kakuyasu/icon-document.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-document.svg);
}
.kkys-bg-icon[data-icon="download"] {
    mask-image: url(../images/kakuyasu/icon-download.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-download.svg);
}
.kkys-bg-icon[data-icon="error"] {
    mask-image: url(../images/kakuyasu/icon-error.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-error.svg);
}
.kkys-bg-icon[data-icon="figure"] {
    mask-image: url(../images/kakuyasu/icon-figure.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-figure.svg);
}
.kkys-bg-icon[data-icon="grow"] {
    mask-image: url(../images/kakuyasu/icon-grow.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-grow.svg);
}
.kkys-bg-icon[data-icon="hamburger"] {
    mask-image: url(../images/kakuyasu/icon-hamburger.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-hamburger.svg);
}
.kkys-bg-icon[data-icon="heart"] {
    mask-image: url(../images/kakuyasu/icon-heart.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-heart.svg);
}
.kkys-bg-icon[data-icon="idea"] {
    mask-image: url(../images/kakuyasu/icon-idea.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-idea.svg);
}
.kkys-bg-icon[data-icon="image"] {
    mask-image: url(../images/kakuyasu/icon-image.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-image.svg);
}
.kkys-bg-icon[data-icon="info"] {
    mask-image: url(../images/kakuyasu/icon-info.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-info.svg);
}
.kkys-bg-icon[data-icon="mail"] {
    mask-image: url(../images/kakuyasu/icon-mail.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-mail.svg);
}
.kkys-bg-icon[data-icon="minus"] {
    mask-image: url(../images/kakuyasu/icon-minus.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-minus.svg);
}
.kkys-bg-icon[data-icon="networks"] {
    mask-image: url(../images/kakuyasu/icon-networks.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-networks.svg);
}
.kkys-bg-icon[data-icon="outer"] {
    mask-image: url(../images/kakuyasu/icon-outer.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-outer.svg);
}
.kkys-bg-icon[data-icon="pc"] {
    mask-image: url(../images/kakuyasu/icon-pc.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-pc.svg);
}
.kkys-bg-icon[data-icon="plus"] {
    mask-image: url(../images/kakuyasu/icon-plus.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-plus.svg);
}
.kkys-bg-icon[data-icon="point"] {
    mask-image: url(../images/kakuyasu/icon-point.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-point.svg);
}
.kkys-bg-icon[data-icon="reader"] {
    mask-image: url(../images/kakuyasu/icon-reader.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-reader.svg);
}
.kkys-bg-icon[data-icon="security"] {
    mask-image: url(../images/kakuyasu/icon-security.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-security.svg);
}
.kkys-bg-icon[data-icon="serach"] {
    mask-image: url(../images/kakuyasu/icon-serach.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-serach.svg);
}
.kkys-bg-icon[data-icon="setting"] {
    mask-image: url(../images/kakuyasu/icon-setting.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-setting.svg);
}
.kkys-bg-icon[data-icon="shere"] {
    mask-image: url(../images/kakuyasu/icon-shere.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-shere.svg);
}
.kkys-bg-icon[data-icon="sitemap"] {
    mask-image: url(../images/kakuyasu/icon-sitemap.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-sitemap.svg);
}
.kkys-bg-icon[data-icon="sp"] {
    mask-image: url(../images/kakuyasu/icon-sp.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-sp.svg);
}
.kkys-bg-icon[data-icon="star"] {
    mask-image: url(../images/kakuyasu/icon-star.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-star.svg);
}
.kkys-bg-icon[data-icon="store"] {
    mask-image: url(../images/kakuyasu/icon-store.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-store.svg);
}
.kkys-bg-icon[data-icon="text"] {
    mask-image: url(../images/kakuyasu/icon-text.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-text.svg);
}
.kkys-bg-icon[data-icon="thunder"] {
    mask-image: url(../images/kakuyasu/icon-thunder.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-thunder.svg);
}
.kkys-bg-icon[data-icon="time"] {
    mask-image: url(../images/kakuyasu/icon-time.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-time.svg);
}
.kkys-bg-icon[data-icon="triangle"] {
    mask-image: url(../images/kakuyasu/icon-triangle.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-triangle.svg);
}
.kkys-bg-icon[data-icon="user"] {
    mask-image: url(../images/kakuyasu/icon-user.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-user.svg);
}
.kkys-bg-icon[data-icon="window"] {
    mask-image: url(../images/kakuyasu/icon-window.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-window.svg);
}
.kkys-bg-icon[data-icon="world"] {
    mask-image: url(../images/kakuyasu/icon-world.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-world.svg);
}
.kkys-bg-icon[data-icon="men"] {
    mask-image: url(../images/kakuyasu/icon-men.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-men.svg);
}
/* SNS */
.kkys-bg-icon[data-icon="sns-twitter"] {
    mask-image: url(../images/kakuyasu/icon-sns-twitter.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-sns-twitter.svg);
}
.kkys-bg-icon[data-icon="sns-facebook"] {
    mask-image: url(../images/kakuyasu/icon-sns-facebook.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-sns-facebook.svg);
}
.kkys-bg-icon[data-icon="sns-instagram"] {
    mask-image: url(../images/kakuyasu/icon-sns-instagram.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-sns-instagram.svg);
}
.kkys-bg-icon[data-icon="sns-youtube"] {
    mask-image: url(../images/kakuyasu/icon-sns-youtube.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-sns-youtube.svg);
}

/*============================================================
 パーツ共通
*============================================================*/
.kkys-section {
    padding: 80px 0;
}


/*============================================================
 【パーツ】メインビジュアル　kkys-mainvisual
*============================================================*/
/* メインビジュアル(共通)
---------------------------------------- */
.kkys-mainvisual {
	height: 680px;
    background-image: url(../images/top/mainvisual-bg.jpg);
	background-repeat: no-repeat;
	background-size: 1920px auto;
	background-position: top center;
    padding: 0 16px;
}
/* メインビジュアル01
---------------------------------------- */
.kkys-mainvisual[data-type="01"] .mainvisual-inner {
    width: 100%;
    max-width: 1060px;
    margin: 0 auto;
}
.kkys-mainvisual[data-type="01"] .info {
    padding: 180px 0 0 0;
    color: #fff;
}
.kkys-mainvisual[data-type="01"] .info .catch {
    font-weight: bold;
    font-size: 56px;
    line-height: 180%;
    margin-bottom: 48px;
}
/* メインビジュアル02
---------------------------------------- */
.kkys-mainvisual[data-type="02"] {
    overflow: hidden;
    position: relative;
}
.kkys-mainvisual[data-type="02"]::before {
    content: "";
    display: block;
    width: 518px;
    height: 1920px;
    background-color: #000;
    mix-blend-mode: hard-light;
    opacity: 0.3;
    transform: rotate(45deg);
    position: absolute;
    top: -680px;
    left: 50%;
    z-index: 0;
}
.kkys-mainvisual[data-type="02"] .mainvisual-inner {
    width: 50%;
    margin: 0 0 0 50%;
}
.kkys-mainvisual[data-type="02"] .info {
    padding: 204px 0 0 0;
    color: #fff;
    position: relative;
}
.kkys-mainvisual[data-type="02"] .info .catch {
    font-weight: bold;
    font-size: 72px;
    line-height: 104px;
    margin-bottom: 16px;
}
.kkys-mainvisual[data-type="02"] .info .catch-sub {
    font-weight: bold;
    font-size: 48px;
    line-height: 70px;
}
.kkys-mainvisual[data-type="02"] .info .lead {
    font-size: 20px;
    line-height: 29px;
    margin-bottom: 32px;
}
/* メインビジュアル03
---------------------------------------- */
.kkys-mainvisual[data-type="03"] {
    position: relative;
    padding: 0;
}
.kkys-mainvisual[data-type="03"] .sidebar {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    background-color: #323647;
    padding: 516px 22px 0 22px;
    font-size: 18px;
    line-height: 44px;
    color: #fff;
    writing-mode: vertical-rl;
    -webkit-text-orientation: sideways;
    text-orientation: sideways;
}
.kkys-mainvisual[data-type="03"] .sidebar .kkys-bg-icon {
    display: inline-block;
    width: 5px;
    height: 50px;
    mask-image: url(../images/kakuyasu/icon-maivisual-scroll.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-maivisual-scroll.svg);
    --icon-color: #fff;
    --icon-width: 5px;
    margin: 30px 0 0 6px;
}
.kkys-mainvisual[data-type="03"] .mainvisual-inner {
    /* max-width: 1280px; */
    height: 100%;
    padding: 214px 104px 0 0;
    margin: 0 auto;
}
.kkys-mainvisual[data-type="03"] .info {
    position: relative;
    height: 100%;
}
.kkys-mainvisual[data-type="03"] .info .catch {
    margin-bottom: 48px;
}
.kkys-mainvisual[data-type="03"] .info .catch > * {
    width: fit-content;
    font-weight: bold;
    font-size: 48px;
    line-height: 180%;
    letter-spacing: 0.08em;
    color: #fff;
    padding: 4px 28px 4px 32px;  
    background-color: #323647;
    border-radius: 0 8px 8px 0;
    margin-bottom: 28px;
}
.kkys-mainvisual[data-type="03"] .info .catch > *:last-child {
    margin-bottom: 0;
}
.kkys-mainvisual[data-type="03"] .info .parts-btn {
    margin-left: 32px;
}
.kkys-mainvisual[data-type="03"] .info .item-right {
    position: absolute;
    bottom: 108px;
    right: 0;
}
.kkys-mainvisual[data-type="03"] .info .result-list li {
    width: 162px;
    height: 162px;
    border-radius: 100%;
    background-color: #FFB800;
    font-weight: bold;
    font-size: 20px;
    line-height: 130%;
    text-align: center;
    color: #fff;
    padding: 36px 0 0 0;
    margin-right: 32px;
}
.kkys-mainvisual[data-type="03"] .info .result-list li:last-child {
    margin-right: 0;
}
.kkys-mainvisual[data-type="03"] .info .result-list li:nth-child(2) {
    line-height: 200%;
}
.kkys-mainvisual[data-type="03"] .info .result-list li .num {
    font-size: 40px;
    line-height: 130%;
}
/* メインビジュアル04
---------------------------------------- */
.kkys-mainvisual[data-type="04"] {
    padding: 0;
}
.kkys-mainvisual[data-type="04"] .mainvisual-inner {
    max-width: 480px;
    height: 100%;
    margin: 0 auto;
    background-color: rgba(50, 54, 71, 0.8);
    padding: 120px 12px 0 12px;
    text-align: center;
}
.kkys-mainvisual[data-type="04"] .info .logo {
    margin-bottom: 64px;
}
.kkys-mainvisual[data-type="04"] .info .catch {
    font-weight: bold;
    font-size: 40px;
    line-height: 200%;
    letter-spacing: 0.04em;
    color: #fff;
    margin-bottom: 64px;
}
.kkys-mainvisual[data-type="04"] .info .parts-btn {
    margin: 0 auto;
}

/*============================================================
 【パーツ】背景設定パーツ共通　data-bg
*============================================================*/
/* 背景1枚画像 */
.kkys-section[data-bg="image"] {
    background-repeat: no-repeat;
    background-size: 1920px auto;
    background-position: top center;
}
/* 背景パターン画像 */
.kkys-section[data-bg="pattern"] {
    background-repeat: repeat;
    background-position: top center;
}

/*============================================================
 【パーツ】コンセプト　kkys-concept
*============================================================*/
/* コンセプト01
---------------------------------------- */
.kkys-concept[data-type="01"] {
    background-color: #fff;
}
.kkys-concept[data-type="01"] .item-info {
    width: 335px;
}
.kkys-concept[data-type="01"] .item-info .catch {
    font-weight: bold;
    font-size: 48px;
    line-height: 160%;
    margin-bottom: 48px;
}
.kkys-concept[data-type="01"] .item-image {
    width: calc(100% - 40px - 335px);
    border-radius: 20px;
    overflow: hidden;
}
.kkys-concept[data-type="01"] .item-image img {
    width: 100%;
    height: 388px;
    object-fit: cover;
}

/* コンセプト02
---------------------------------------- */
/* 共通 */
.kkys-concept[data-type="02"] {
    text-align: center;
}
.kkys-concept[data-type="02"] .catch {
    font-weight: 900;
    font-size: 72px;
    line-height: 160%;
    margin-bottom: 48px;   
}
.kkys-concept[data-type="02"] .lead {
    font-size: 20px;
    line-height: 160%;
}
/* 背景1枚画像 */
.kkys-concept[data-type="02"][data-bg="image"] {
    color: #fff;
    background-image: url(../images/top/concept-02-bg.jpg);
}
/* 背景色 */
.kkys-concept[data-type="02"][data-bg="color"] {
    color: var(--ini-color);
    background-color: #fff;
}


/*============================================================
 【パーツ】言いたいこと（シンプル）kkys-important
*============================================================*/
/* 言いたいこと（シンプル）01
---------------------------------------- */
.kkys-important[data-type="01"] {
    background-color: #1591EB;
    color: #fff;
}
.kkys-important[data-type="01"] .item {
    width: 256px;
    margin: 0 32px 64px 32px;
}
.kkys-important[data-type="01"] .item:nth-last-child(-n+2) {
    margin-bottom: 0;
}
.kkys-important[data-type="01"] .item .image.kkys-bg-icon {
    width: 100%;
    height: 144px;
    margin-bottom: 32px;
    --icon-width: 144px;
    --icon-color: #fff;
    --icon-position: center center;
}
.kkys-important[data-type="01"] .item .title {
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 16px;
    text-align: center;
}
.kkys-important[data-type="01"] .item .title {
    font-size: 16px;
    line-height: 140%;
}

/* 言いたいこと（シンプル）02
---------------------------------------- */
.kkys-important[data-type="02"] {
    background-color: #1591EB;
    color: #fff;
}
.kkys-important[data-type="02"] .inner {
    max-width: 832px;
}
.kkys-important[data-type="02"] .box-list .box:not(:last-child) {
    margin-bottom: 64px;
}
.kkys-important[data-type="02"] .item-title {
    width: 50%;
    font-weight: bold;
    font-size: 32px;
    line-height: 140%;
    padding: 0 40px 0 0;
}
.kkys-important[data-type="02"] .item-lead {
    width: 50%;
    font-size: 16px;
    line-height: 140%;
}

/* 言いたいこと(シンプル)03
---------------------------------------- */
.kkys-important[data-type="03"] {
    background-color: #323647;
    color: #fff;
}
.kkys-important[data-type="03"] .box {
    border-radius: 20px;
    overflow: hidden;
}
.kkys-important[data-type="03"] .item {
    width: calc(100% / 3);
    padding: 0 16px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    aspect-ratio: 320 / 480;
    position: relative;
}
.kkys-important[data-type="03"] .item:nth-child(1) {
    background-image: url(../images/top/important-03-bg-01.jpg);
}
.kkys-important[data-type="03"] .item:nth-child(2) {
    background-image: url(../images/top/important-03-bg-02.jpg);
}
.kkys-important[data-type="03"] .item:nth-child(3) {
    background-image: url(../images/top/important-03-bg-03.jpg);
}
.kkys-important[data-type="03"] .item .item-info {
    padding: 0 16px;
    position: absolute;
    bottom: 32px;
    left: 0;
}
.kkys-important[data-type="03"] .item .item-info .title {
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 12px;
}
.kkys-important[data-type="03"] .item .item-info .lead {
    font-weight: bold;
    font-size: 16px;
    line-height: 140%;
}

/* 言いたいこと(シンプル)04
---------------------------------------- */
.kkys-important[data-type="04"] {
    background-color: #1591EB;
    color: #fff;
}
.kkys-important[data-type="04"] .item-info {
    width: 416px;
}
.kkys-important[data-type="04"] .item-info .point-list li {
    margin-bottom: 24px;
}
.kkys-important[data-type="04"] .item-info .point-list li .num {
    font-weight: bold;
    font-size: 32px;
    line-height: 140%;
    margin-bottom: 8px;
}
.kkys-important[data-type="04"] .item-info .point-list li .lead {
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 24px;
}
.kkys-important[data-type="04"] .item-info .point-list li::after {
    content: "";
    display: block;
    width: 80px;
    border-bottom: solid 1px #fff;
}
.kkys-important[data-type="04"] .item-image {
    width: calc(100% - 416px - 64px);
}
.kkys-important[data-type="04"] .item-image img {
    width: 100%;
    height: 480px;
    object-fit: cover;
}

/*============================================================
 【パーツ】言いたいこと（詳細）3つ縦積み kkys-features
*============================================================*/
/* 言いたいこと（詳細）01
---------------------------------------- */
.kkys-features[data-type="01"] .box-list .box:not(:last-child) {
    margin-bottom: 80px;
}
.kkys-features[data-type="01"] .box-list .box .item-info {
    width: 430px;
    position: relative;
    /* padding: 68px 0; */
}
.kkys-features[data-type="01"] .box-list .box .item-info .item-info-inner {
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}
.kkys-features[data-type="01"] .box-list .box .item-info .title {
    font-weight: bold;
    font-size: 32px;
    line-height: 180%;
    margin-bottom: 32px;
}
.kkys-features[data-type="01"] .box-list .box .item-info .lead {
    font-size: 16px;
    line-height: 200%;
}
.kkys-features[data-type="01"] .box-list .box .item-image {
    width: calc(100% - 80px - 430px);
    max-height: 320px;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}
.kkys-features[data-type="01"] .box-list .box .item-image img {
    width: 100%;
    height: 320px;
    object-fit: cover;
}

/* 言いたいこと（詳細）02
---------------------------------------- */
.kkys-features[data-type="02"] {
    color: #fff;
    background-image: url(../images/top/features-02-bg.jpg);
    background-repeat: no-repeat;
    background-position: top center;
    background-size: cover;
}
.kkys-features[data-type="02"] .inner {
    max-width: 800px;
}
.kkys-features[data-type="02"] .item:not(:last-child) {
    margin-bottom: 48px;
}
.kkys-features[data-type="02"] .item .title {
    font-weight: bold;
    font-size: 32px;
    line-height: 180%;
    margin-bottom: 16px;
}
.kkys-features[data-type="02"] .item .lead {
    font-size: 16px;
    line-height: 200%;
}

/* 言いたいこと（詳細）03
---------------------------------------- */
.kkys-features[data-type="03"] .item {
    margin-bottom: 44px;
}
.kkys-features[data-type="03"] .item:last-child {
    margin-bottom: 0;
}
.kkys-features[data-type="03"] .item .image {
    border-radius: 100%;
    background-color: #1591EB;
}
.kkys-features[data-type="03"] .item .image .kkys-bg-icon {
    width: 56px;
    height: 56px;
    --icon-width: 94%;
    --icon-color: #fff;
    --icon-position: center center;
}
.kkys-features[data-type="03"] .item .info {
    width: calc(100% - 56px - 32px);
}
.kkys-features[data-type="03"] .item .info .title {
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 16px;
}
.kkys-features[data-type="03"] .item .info .lead {
    font-size: 16px;
    line-height: 140%;
}

/*============================================================
 【パーツ】フロー kkys-flow
*============================================================*/
/* フロー01
---------------------------------------- */
.kkys-flow[data-type="01"] {
    background-color: #F4F8FB;
}
.kkys-flow[data-type="01"] .item-list .item {
    padding: 32px 32px 32px 144px;
    background-color: #fff;
    box-shadow: 1px 1px 16px rgba(0, 0, 0, 0.1);
    border-radius: 20px;
    position: relative;
    margin-bottom: 24px;
}
.kkys-flow[data-type="01"] .item-list .item:last-child {
    margin-bottom: 0;
}
.kkys-flow[data-type="01"] .item-list .item .num {
    width: 72px;
    height: 72px;
    font-weight: bold;
    font-size: 32px;
    line-height: 100%;
    color: #fff;
    text-align: center;
    padding: 12px;
    background-color: #1591EB;
    border-radius: 100%;
    position: absolute;
    top: 32px;
    left: 32px;
}
.kkys-flow[data-type="01"] .item-list .item .num::before {
    content: "STEP";
    display: block;
    font-size: 12px;
    line-height: 100%;
    margin-bottom: 4px;
}
.kkys-flow[data-type="01"] .item-list .item .title {
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 8px;
}
.kkys-flow[data-type="01"] .item-list .item .lead {
    font-size: 16px;
    line-height: 160%;
}

/* フロー02
---------------------------------------- */
.kkys-flow[data-type="02"] .box {
    padding: 80px;
    background-color: #F9F9F9;
    border-radius: 20px;
}
.kkys-flow[data-type="02"] .box .item {
    width: 240px;
    margin: 0 40px 64px 40px;
    text-align: center;
}
.kkys-flow[data-type="02"] .box .item:nth-last-child(-n+2) {
    margin-bottom: 0;
}

.kkys-flow[data-type="02"] .box .item .num {
    font-weight: bold;
    font-size: 24px;
    line-height: 100%;
    color: #1591EB;
    margin-bottom: 16px;
}
.kkys-flow[data-type="02"] .box .item .image {
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 16px;
}
.kkys-flow[data-type="02"] .box .item .title {
    font-weight: bold;
    font-size: 20px;
    line-height: 160%;
}

/* フロー03
---------------------------------------- */
.kkys-flow[data-type="03"] .box-list {
    padding: 80px 60px;
    background-color: #F9F9F9;
    border-radius: 20px;
}
.kkys-flow[data-type="03"] .box-list .box:not(:last-child) {
    margin-bottom: 56px;
}
.kkys-flow[data-type="03"] .box-list .box .item-info {
    width: 480px;
}
.kkys-flow[data-type="03"] .box-list .box .item-info .num {
    font-weight: bold;
    font-size: 20px;
    line-height: 100%;
    color: #1591EB;
    margin-bottom: 24px;
}
.kkys-flow[data-type="03"] .box-list .box .item-info .title {
    font-weight: bold;
    font-size: 24px;
    line-height: 160%;
    margin-bottom: 16px;
}
.kkys-flow[data-type="03"] .box-list .box .item-info .lead {
    font-size: 16px;
    line-height: 160%;
}
.kkys-flow[data-type="03"] .box-list .box .item-image {
    width: calc(100% - 480px - 40px);
    border-radius: 20px;
    overflow: hidden;
}
.kkys-flow[data-type="03"] .box-list .box .item-image img {
    width: 100%;
    height: 240px;
    object-fit: cover;
}


/*============================================================
 【パーツ】お客様の声　kkys-voice
*============================================================*/
/* お客様の声01
---------------------------------------- */
.kkys-voice[data-type="01"] .item {
    width: calc((100% - 80px) / 2);
    max-width: 440px;
    box-shadow: 1px 1px 16px rgba(0, 0, 0, 0.1);
    border-radius: 20px;
    overflow: hidden;
    margin: 0 20px 40px 20px;
}
.kkys-voice[data-type="01"] .item:nth-last-child(-n+2) {
    margin-bottom: 0;
}
.kkys-voice[data-type="01"] .item .image img {
    object-fit: cover;
}
.kkys-voice[data-type="01"] .item .info {
    padding: 16px;
}
.kkys-voice[data-type="01"] .item .info .title {
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
    margin-bottom: 8px;
}
.kkys-voice[data-type="01"] .item .info .lead {
    font-size: 16px;
    line-height: 160%;
    margin-bottom: 8px;
}
.kkys-voice[data-type="01"] .item .info .cat {
    font-size: 12px;
    line-height: 160%;
    color: #8B8B8B;
}

/* お客様の声02
---------------------------------------- */
.kkys-voice[data-type="02"] {
    background-color: #F9F9F9;
}
.kkys-voice[data-type="02"] .item-list {
    max-width: 720px;
    margin: 0 auto;
}
.kkys-voice[data-type="02"] .item {
    position: relative;
    padding-left: 80px;
    margin-bottom: 48px;
}
.kkys-voice[data-type="02"] .item:last-child {
    margin-bottom: 0;
}
.kkys-voice[data-type="02"] .item .image {
    border-radius: 100%;
    background-color: #1591EB;
    position: absolute;
    top: calc(50% - 28px);
    left: 0;
}
.kkys-voice[data-type="02"] .item .image .kkys-bg-icon {
    width: 56px;
    height: 56px;
    --icon-width: 75%;
    --icon-color: #fff;
    --icon-position: center center;
}
.kkys-voice[data-type="02"] .item .info {
    padding: 28px 40px;
    background-color: #fff;
    border-radius: 20px;
    box-shadow: 1px 1px 16px rgba(0, 0, 0, 0.1);
}
.kkys-voice[data-type="02"] .item .info .lead {
    font-size: 16px;
    line-height: 160%;
    margin-bottom: 24px;
}
.kkys-voice[data-type="02"] .item .info .cat {
    font-size: 12px;
    line-height: 160%;
    color: #8B8B8B;
}


/*============================================================
 【パーツ】よくある質問　kkys-faq
*============================================================*/
/* よくある質問01
---------------------------------------- */
/* アコーディオンパーツ設定 */
.kkys-faq[data-type="01"] .parts-accordions {
    --sw-color: #1591EB; 
}
/* Qアイコン */
.kkys-faq[data-type="01"] .parts-accordions .accordion-sw .accordion-sw-inner::before {
    background-image: none;
    border-radius: 100%;
    background-color: #1591EB;
    content: "Q";
    color: #fff;
    font-weight: bold;
    font-size: 32px;
    line-height: 100%;
    text-align: center;
    padding: 8px 0 0 0;
}
/* アコーディオンopenアイコン */
.kkys-faq[data-type="01"] .parts-accordions .accordion-sw .accordion-sw-inner::after {
    background-image: none;
    background-blend-mode: multiply;
    background-color: var(--icon-color);
    mask-size: 24 auto;
    mask-position: center center;
    mask-repeat: no-repeat;
    -webkit-mask-size: 24px auto;
    -webkit-mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    mask-image: url(../images/kakuyasu/icon-arrow-open.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-arrow-open.svg);
}
/* アコーディオンcloseアイコン */
.kkys-faq[data-type="01"] .parts-accordions .accordion.open .accordion-sw .accordion-sw-inner::after {
    background-image: none;
    mask-image: url(../images/kakuyasu/icon-arrow-close.svg);
    -webkit-mask-image: url(../images/kakuyasu/icon-arrow-close.svg);
}
/* Aアイコン */
.kkys-faq[data-type="01"] .parts-accordions .accordion-content .accordion-content-inner::before {
    background-image: none;
    border-radius: 100%;
    background-color: #F7A429;
    content: "A";
    color: #fff;
    font-weight: bold;
    font-size: 32px;
    line-height: 100%;
    text-align: center;
    padding: 8px 0 0 0;
}

/* よくある質問02
---------------------------------------- */
.kkys-faq[data-type="02"] {
    background-color: #1591EB;
}
.kkys-faq[data-type="02"] .sec-title {
    color: #fff;
}
.kkys-faq[data-type="02"] .item-list .item {
    background-color: #fff;
    padding: 40px 20px;
    border-radius: 20px;
    box-shadow: 0px 3px 4px 2px rgba(157, 200, 232, 0.5);
    margin-bottom: 40px;
}
.kkys-faq[data-type="02"] .item-list .item:last-child {
    margin-bottom: 0;
}
.kkys-faq[data-type="02"] .item-list .item .title {
    padding-left: 44px;
    font-weight: 900;
    font-size: 24px;
    line-height: 160%;
    margin-bottom: 24px;
    position: relative;
}
.kkys-faq[data-type="02"] .item-list .item .title::before {
    content: "Q";
    display: block;
    color: #1591EB;
    position: absolute;
    left: 0;
    top: 0;
}
.kkys-faq[data-type="02"] .item-list .item .lead {
    font-size: 16px;
    line-height: 160%;
}


/*============================================================
 【パーツ】金額表　kkys-plan
*============================================================*/
/* 金額表01　共通
---------------------------------------- */
.kkys-plan[data-type="01"] {
    background-color: #F4F8FB;
}
.kkys-plan[data-type="01"] .box {
    margin-bottom: 16px;
}
.kkys-plan[data-type="01"] .item {
    max-width: 304px;
    min-width: 304px;
    border-radius: 20px;
    box-shadow: 1px 1px 16px rgba(0, 0, 0, 0.1);
    margin: 0 12px 24px 12px;
}
.kkys-plan[data-type="01"] .item:first-child {
    margin-left: 0;
}
.kkys-plan[data-type="01"] .item:last-child {
    margin-right: 0;
}
.kkys-plan[data-type="01"] .item[data-type="recommend"] {
    position: relative;
}
.kkys-plan[data-type="01"] .item[data-type="recommend"]::before {
    content: "おすすめ";
    display: block;
    width: 112px;
    height: 44px;
    border-radius: 100px 100px 100px 0;
    background-color: #FFB800;
    font-weight: bold;
    font-size: 14px;
    line-height: 44px;
    letter-spacing: -0.03em;
    text-align: center;
    color: #fff;
    position: absolute;
    top: -25px;
    left: 0;
}
.kkys-plan[data-type="01"] .item .item-header {
    color: #fff;
    padding: 28px 16px;
    background-color: #323647;
    border-radius: 20px 20px 0 0;
    text-align: center;
}
.kkys-plan[data-type="01"] .item[data-type="recommend"] .item-header {
    background-color: #1591EB;
}
.kkys-plan[data-type="01"] .item .item-header .lead {
    font-weight: 500;
    font-size: 12px;
    line-height: 180%;
    margin-bottom: 8px;
}
.kkys-plan[data-type="01"] .item .item-header .title {
    font-weight: bold;
    font-size: 24px;
    line-height: 180%;
    letter-spacing: 0.04em;
}
.kkys-plan[data-type="01"] .item .item-info {
    background-color: #fff;
    padding: 32px 12px 24px 12px;
    text-align: center;
    border-radius: 0 0 20px 20px;
}
.kkys-plan[data-type="01"] .item .item-info .price {
    font-weight: bold;
    font-size: 56px;
    line-height: 140%;
    margin-bottom: 24px;
}
.kkys-plan[data-type="01"] .item .item-info .price .curr {
    font-weight: bold;
    font-size: 24px;
    line-height: 140%;
}
.kkys-plan[data-type="01"] .item .item-info .price .unit {
    font-weight: bold;
    font-size: 16px;
    line-height: 140%;
}
.kkys-plan[data-type="01"] .item .item-info .info-list {
    margin-bottom: 24px;
}
.kkys-plan[data-type="01"] .item .item-info .info-list .info:not(:last-child) {
    margin-bottom: 24px;
}
.kkys-plan[data-type="01"] .item .item-info .info-list .info .label {
    font-weight: 900;
    font-size: 12px;
    line-height: 220%;
}
.kkys-plan[data-type="01"] .item .item-info .info-list .info .data {
    font-weight: bold;
    font-size: 24px;
    line-height: 180%;
}
.kkys-plan[data-type="01"] .item .item-info .note .parts-list[data-type="mark-dot"] {
    --li-margin-bottom: 8px;
    --li-mark-width: 8px;
    --li-mark-margin-right: 8px;
    --li-mark-color: #FFB800;
    background-color: #FFF0C8;
    border-radius: 20px;
}
.kkys-plan[data-type="01"] .item .item-info .note .parts-list[data-type="mark-dot"] li {
    font-size: 14px;
    line-height: 200%;
    text-align: left;
}
.kkys-plan[data-type="01"] .item .item-info .note .parts-list[data-type="mark-dot"] li::before {
    top: 3px;
}
.kkys-plan[data-type="01"] .notice {
    width: fit-content;
    margin: 0 auto;
}

/* 金額表01　単数列
---------------------------------------- */
.kkys-plan[data-type="01"][data-col="single"] .item {
    max-width: 480px;
    width: 100%;
    margin: 0 auto 24px auto;
}
.kkys-plan[data-type="01"][data-col="single"] .item .item-header {
    background-color: #1591EB;
}
.kkys-plan[data-type="01"][data-col="single"] .item .item-info .note {
    width: 272px;
    margin: 0 auto;
}
.kkys-plan[data-type="01"][data-col="single"] .notice {
    width: fit-content;
    margin: 0 auto;
}


/*============================================================
 【パーツ】代表者挨拶　kkys-message
*============================================================*/
/* 代表者挨拶01
---------------------------------------- */
.kkys-message[data-type="01"] .item-image {
    width: 30%;
    max-width: 280px;
}
.kkys-message[data-type="01"] .item-image .image {
    border-radius: 100%;
    overflow: hidden;
}
.kkys-message[data-type="01"] .item-info {
    width: 65%;
    max-width: 624px;
}
.kkys-message[data-type="01"] .item-info .sec-title {
    font-weight: bold;
    margin-bottom: 24px;
    text-align: left;
}
.kkys-message[data-type="01"] .item-info .lead {
    font-size: 16px;
    line-height: 200%;
    letter-spacing: 0.04em;
    margin-bottom: 16px;
}
.kkys-message[data-type="01"] .item-info .name {
    font-weight: bold;
    font-size: 18px;
    line-height: 200%;
    text-align: right;
    letter-spacing: 0.04em;
}


/*============================================================
 【パーツ】会社情報　kkys-company
*============================================================*/
/* 会社情報01
---------------------------------------- */
.kkys-company[data-type="01"] dl.parts-table {
	--row-border-bottom: solid 1px #C4C4C4;
	--row-padding: 16px 0;
	--dt-width: 80px;
	--col-margin: 20px;
	--font-size: 14px;
	--line-height: 200%;

	--sp-font-size: 14px;

    margin-bottom: 40px;
}
.kkys-company[data-type="01"] .item-info {
    width: 374px;
}
.kkys-company[data-type="01"] .item-info .title {
    font-weight: bold;
    font-size: 24px;
    line-height: 35px;
    margin-bottom: 24px;
}
.kkys-company[data-type="01"] .item-info .addr {
    font-size: 16px;
    line-height: 160%;
    padding-left: 24px;
    background-image: url(../images/common/icon-googlemap.svg);
    background-repeat: no-repeat;
    background-size: 18px auto;
    background-position: top 4px left;
    margin-bottom: 16px;
}
.kkys-company[data-type="01"] .item-info .info {
    font-size: 16px;
    line-height: 180%;
    margin-bottom: 16px;
}
.kkys-company[data-type="01"] .item-info .parts-btn {
    /* --color: #fff;
    --background: var(--site-color);
    --border-color: var(--site-color);
    --hover-color: #fff;
    --hover-background: #277AB6;
    --hover-border-color: #277AB6; */
}

.kkys-company[data-type="01"] .item-map {
    width: calc(100% - 24px - 374px);
}
.kkys-company[data-type="01"] .item-map iframe {
    width: 100%;
}


/*============================================================
 【パーツ】CTA　kkys-cta
*============================================================*/
/* CTA01
---------------------------------------- */
.kkys-cta[data-type="01"][data-bg="pattern"] {
    color: #346677;
    background-image: url(../images/top/cta-01-bg.svg);
    background-size: 24px auto;
}
.kkys-cta[data-type="01"] .item-info {
    width: 384px;
    padding: 24px;
    background-color: #fff;
    box-shadow: 1px 1px 16px rgba(0, 0, 0, 0.1);
    border-radius: 20px;
}
.kkys-cta[data-type="01"] .item-info .label {
    font-weight: bold;
    font-size: 24px;
    line-height: 35px;
    margin-bottom: 16px;
}
.kkys-cta[data-type="01"] .item-info .lead {
    font-size: 20px;
    line-height: 29px;
}
.kkys-cta[data-type="01"] .item-action {
    padding: 24px 0 0 0;
}
.kkys-cta[data-type="01"] .item-action .sec-title {
    font-weight: 900;
    font-size: 48px;
    line-height: 140%;
    text-align: left;
    margin-bottom: 16px;
}
.kkys-cta[data-type="01"] .item-action .parts-btn {
	/* --color: #333333;
	--background: #F2E45F;
	--border-color: #F2E45F;
	--hover-color: #333333;
	--hover-background: #E8D840;
	--hover-border-color: #E8D840; */
}

/* CTA02
---------------------------------------- */
.kkys-cta[data-type="02"][data-bg="gradation"] {
    color: #fff;
    background: linear-gradient(90deg, #336DC1 0%, #3EAAC4 100%);
}
.kkys-cta[data-type="02"] {
    text-align: center;
}
.kkys-cta[data-type="02"] .inner > *:not(:last-child) {
    margin-bottom: 24px;
}
.kkys-cta[data-type="02"] .label {
    font-weight: 500;
    font-size: 24px;
    line-height: 180%;
}
.kkys-cta[data-type="02"] .catch {
    font-weight: 900;
    font-size: 40px;
    line-height: 140%;
}
.kkys-cta[data-type="02"] .lead {
    font-weight: 500;
    font-size: 20px;
    line-height: 180%;
}
.kkys-cta[data-type="02"] .parts-btn {
	/* --color: #333333;
	--background: #FFB800;
	--border-color: #FFB800;
	--hover-color: #333333;
	--hover-background: #dd9f00;
	--hover-border-color: #dd9f00; */
}

/* CTA03
---------------------------------------- */
.kkys-cta[data-type="03"][data-bg="color"] {
    color: #fff;
    background-color: #323647;
}
.kkys-cta[data-type="03"] {
    text-align: center;
}
.kkys-cta[data-type="03"] .inner > *:not(:last-child) {
    margin-bottom: 24px;
}
.kkys-cta[data-type="03"] .logo {
    width: fit-content;
    position: relative;
    margin: 0 auto;
}
.kkys-cta[data-type="03"] .logo::after {
    content: "なら、";
    display: block;
    font-weight: bold;
    font-size: 32px;
    line-height: 56px;
    position: absolute;
    top: 0;
    right: calc(-24px - (32px * 3));
}
.kkys-cta[data-type="03"] .catch {
    font-weight: 900;
    font-size: 40px;
    line-height: 140%;
}

/* CTA04
---------------------------------------- */
.kkys-cta[data-type="04"][data-bg="color"] {
    color: #fff;
    background-color: #323647;
}
.kkys-cta[data-type="04"] .item-image {
    width: 43%;
    max-width: 410px;
    aspect-ratio: 1 / 1;
    border-radius: 20px;
    overflow: hidden;
}
.kkys-cta[data-type="04"] .item-action {
    width: 50%;
    max-width: 486px;
}
.kkys-cta[data-type="04"] .item-action .sec-title {
    margin-bottom: 24px;
}
.kkys-cta[data-type="04"] .item-action .lead {
    font-weight: bold;
    font-size: 20px;
    line-height: 180%;
    margin-bottom: 40px;
}
.kkys-cta[data-type="04"] .parts-btn {
	--min-width: 320px;
	--padding: 24px 22px;
	--font-size: 20px;
	--line-height: 28px;
	/* --color: #333333;
	--background: #fff;
	--border-color: #fff;
	--hover-color: #333333;
	--hover-background: #f7f7f7;
	--hover-border-color: #f7f7f7; */
}

/* CTA05
---------------------------------------- */
.kkys-cta[data-type="05"][data-bg="image"] {
    background-image: url(../images/top/cta-05-bg.jpg);
}
.kkys-cta[data-type="05"] .item-action {
    width: 48%;
    max-width: 430px;
    padding: 4%;
    margin: 0 1%;
    background-color: #fff;
    border-radius: 20px;
    text-align: center;
    box-shadow: 1px 1px 16px rgb(0 0 0 / 10%);
}
.kkys-cta[data-type="05"] .item-action > *:not(:last-child) {
    margin-bottom: 24px;
}
.kkys-cta[data-type="05"] .item-action .lead {
    font-weight: bold;
    font-size: 20px;
    line-height: 160%;
}
.kkys-cta[data-type="05"] .item-action .parts-btn {
	--max-width: 320px;
    --width: 100%;
	/* --color: #fff;
	--background: #323647;
	--border-color: #323647;
	--hover-color: #fff;
	--hover-background: #44495f;
	--hover-border-color: #44495f; */
    --sp-width: 100%;
}


/*============================================================
 【パーツ】見出し文章　※極力使わない。　kkys-appeal
*============================================================*/
/* 見出し文章01
---------------------------------------- */
.kkys-appeal[data-type="01"] {
    background-color: #fff;
    text-align: center;
}
.kkys-appeal[data-type="01"] .image {
    margin-bottom: 32px;
}
.kkys-appeal[data-type="01"] .lead {
    font-size: 16px;
    line-height: 160%;
}


/*============================================================
 【パーツ】お問い合わせ（iframeの場合）　kkys-contact
*============================================================*/
/* お問い合わせ（iframeの場合）01
---------------------------------------- */
.kkys-contact[data-type="01"] {
    background-color: #fff;
    text-align: center;
}
.kkys-contact[data-type="01"] .lead {
    font-size: 16px;
    line-height: 180%;
    text-align: center;
    margin-bottom: 32px;
}
.kkys-contact[data-type="01"] .form-code {
    height: 752px;
    border: solid 2px #0D9FCD;
    border-radius: 4px;
}



/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 for Tablet
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/*/

@media screen and (max-width: 1024px) {
    /*============================================================
     【パーツ】メインビジュアル　kkys-mainvisual
    *============================================================*/
    /* メインビジュアル02
    ---------------------------------------- */
    .kkys-mainvisual[data-type="02"]::before {
        left: calc(50% - 80px);
    }
    .kkys-mainvisual[data-type="02"] .mainvisual-inner {
        width: calc(50% + 80px);
        margin: 0 0 0 calc(50% - 80px);
    }

    /* メインビジュアル03
    ---------------------------------------- */
    .kkys-mainvisual[data-type="03"] .sidebar {
        padding: 456px 20px 0 20px;
        /* background-position: bottom 20px center; */
    }
    .kkys-mainvisual[data-type="03"] .sidebar .kkys-bg-icon {
        margin: 14px 0 0 6px;
    }
    .kkys-mainvisual[data-type="03"] .mainvisual-inner {
        padding: 104px 104px 0 0;
    }
    .kkys-mainvisual[data-type="03"] .info .catch {
        margin-bottom: 88px;
    }
    .kkys-mainvisual[data-type="03"] .info .catch > * {
        border-radius: 0 8px 8px 0;
        font-size: 32px;
        padding: 6px 24px 8px 16px;
        margin-bottom: 12px;
    }
    .kkys-mainvisual[data-type="03"] .info .parts-btn {
        margin-left: 16px;
    }
    .kkys-mainvisual[data-type="03"] .info .item-right {
        bottom: 48px;
    }
    .kkys-mainvisual[data-type="03"] .info .result-list li {
        width: 104px;
        height: 104px;
        font-size: 14px;
        padding: 24px 0 0 0;
        margin-right: 12px;
    }
    .kkys-mainvisual[data-type="03"] .info .result-list li .num {
        font-size: 32px;
        line-height: 120%;
    }
    .kkys-mainvisual[data-type="03"] .info .result-list li:nth-child(3) {
        padding: 16px 0 0 0;
    }
        
    /*============================================================
     【パーツ】コンセプト　kkys-concept
    *============================================================*/
    /* コンセプト01
    ---------------------------------------- */
    .kkys-concept[data-type="01"] .item-info .catch {
        font-size: 36px;
        margin-bottom: 32px;
    }

    /* コンセプト02
    ---------------------------------------- */
    .kkys-concept[data-type="02"] .catch {
        font-size: 40px;
        margin-bottom: 40px;   
    }
    
    /*============================================================
     【パーツ】言いたいこと（シンプル）kkys-important
    *============================================================*/
    /* 言いたいこと（シンプル）01
    ---------------------------------------- */
    .kkys-important[data-type="01"] .item:nth-last-child(-n+2) {
        margin-bottom: 64px;
    }
    .kkys-important[data-type="01"] .item:last-child {
        margin-bottom: 0;
    }

    /*============================================================
     【パーツ】フロー kkys-flow
    *============================================================*/
    /* フロー01
    ---------------------------------------- */
    .kkys-flow[data-type="01"] .item-list .item {
        padding: 16px 16px 16px 88px;
    }
    .kkys-flow[data-type="01"] .item-list .item .num {
        width: 44px;
        height: 44px;
        font-size: 16px;
        padding: 8px;
        top: 16px;
        left: 16px;
    }
    .kkys-flow[data-type="01"] .item-list .item .num::before {
        font-size: 10px;
        margin-bottom: 2px;
    }
    .kkys-flow[data-type="01"] .item-list .item .title {
        font-size: 20px;
    }

    /* フロー02
    ---------------------------------------- */
    .kkys-flow[data-type="02"] .box .item {
        margin: 0 24px 64px 24px;
    }
    
    /* フロー03
    ---------------------------------------- */
    .kkys-flow[data-type="03"] .box-list .box .item-info {
        width: 57%;
    }
    .kkys-flow[data-type="03"] .box-list .box .item-image {
        width: 38%;
    }
    
    /*============================================================
     【パーツ】金額表　kkys-plan
    *============================================================*/
    /* 金額表01
    ---------------------------------------- */
    .kkys-plan[data-type="01"] .item:first-child {
        margin-left: 12px;
    }
    .kkys-plan[data-type="01"] .item:last-child {
        margin-right: 12px;
    }
    
    /*============================================================
     【パーツ】CTA　kkys-cta
    *============================================================*/
    /* CTA01
    ---------------------------------------- */
    .kkys-cta[data-type="01"] .item-action .sec-title {
        text-align: center;
    }
    .kkys-cta[data-type="01"] .item-action .parts-btn {
        margin: 0 auto;
    }

    /* CTA05
    ---------------------------------------- */
    .kkys-cta[data-type="05"] .item-action {
        text-align: center;
    }


}

/*_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 for SP
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/*/

@media screen and (max-width: 767px) {
    /*============================================================
     【パーツ】メインビジュアル　kkys-mainvisual
    *============================================================*/
    /* メインビジュアル(共通)
    ---------------------------------------- */
    .kkys-mainvisual {
        height: 600px;
        background-size: auto 600px;
        background-image: url(../images/top/mainvisual-bg-sp.jpg);
    }
    
    /* メインビジュアル01
    ---------------------------------------- */
    .kkys-mainvisual[data-type="01"] .info {
        padding: 188px 0 0 0;
    }
    .kkys-mainvisual[data-type="01"] .info .catch {
        font-size: 32px;
        line-height: 200%;
        text-align: center;
        margin-bottom: 32px;
    }
    .kkys-mainvisual[data-type="01"] .info .parts-btn {
        margin: 0 auto;
    }

    /* メインビジュアル02
    ---------------------------------------- */
    .kkys-mainvisual[data-type="02"]::before {
        width: 450px;
        left: calc(50% - 180px);
    }
    .kkys-mainvisual[data-type="02"] .mainvisual-inner {
        width: fit-content;
        margin: 0 auto;
    }
    .kkys-mainvisual[data-type="02"] .info {
        padding: 212px 0 0 0;
    }
    .kkys-mainvisual[data-type="02"] .info .catch-sub {
        font-weight: bold;
        font-size: 40px;
        line-height: 58px;
    }
    .kkys-mainvisual[data-type="02"] .info .catch {
        font-size: 56px;
        line-height: 81px;
        margin-bottom: 32px;
    }
    .kkys-mainvisual[data-type="02"] .info .lead {
        margin-bottom: 24px;
    }

    /* メインビジュアル03
    ---------------------------------------- */
    .kkys-mainvisual[data-type="03"] .mainvisual-inner {
        padding: 104px 0 0 0;
    }
    .kkys-mainvisual[data-type="03"] .info .catch {
        margin-bottom: 108px;
    }
    .kkys-mainvisual[data-type="03"] .info .catch > * {
        font-size: 28px;
        padding: 6px 20px 6px 16px;  
    }
    .kkys-mainvisual[data-type="03"] .info .item-right {
        right: unset;
        left: 16px;
    }

    /* メインビジュアル04
    ---------------------------------------- */
    .kkys-mainvisual[data-type="04"] {
        padding: 100px 0;
    }
    .kkys-mainvisual[data-type="04"] .mainvisual-inner {
        max-width: unset;
        padding: 44px 16px;
    }
    .kkys-mainvisual[data-type="04"] .info .logo {
        margin-bottom: 32px;
    }
    .kkys-mainvisual[data-type="04"] .info .catch {
        font-size: 32px;
        margin-bottom: 32px;
    }

    /*============================================================
     【パーツ】共通　kkys-section
    *============================================================*/
    .kkys-section {
        padding: 56px 0;
    }


    /*============================================================
     【パーツ】コンセプト　kkys-concept
    *============================================================*/
    /* コンセプト01
    ---------------------------------------- */
    .kkys-concept[data-type="01"] .item-info .lead {
        margin-bottom: 32px;
    }
    .kkys-concept[data-type="01"] .item-image img {
        height: 240px;
    }

    /* コンセプト02
    ---------------------------------------- */
    .kkys-concept[data-type="02"] {
        padding: 56px 0;
    }
    .kkys-concept[data-type="02"] .catch {
        font-size: 32px;
        margin-bottom: 24px;
    }
    .kkys-concept[data-type="02"] .lead {
        font-size: 16px;
        text-align: left;
    }

    /*============================================================
     【パーツ】言いたいこと（シンプル）kkys-important
    *============================================================*/
    /* 言いたいこと（シンプル）01
    ---------------------------------------- */
    .kkys-important[data-type="01"] .item .image.kkys-bg-icon {
        height: 104px;
        --icon-width: 104px;
    }

    /* 言いたいこと（シンプル）02
    ---------------------------------------- */
    .kkys-important[data-type="02"] .inner {
        max-width: 592px;
    }
    .kkys-important[data-type="02"] .box-list .box:not(:last-child) {
        margin-bottom: 32px;
    }
    .kkys-important[data-type="02"] .item-title {
        font-size: 24px;
        padding: 0;
        margin-bottom: 16px
    }

    /* 言いたいこと(シンプル)03
    ---------------------------------------- */
    .kkys-important[data-type="03"] .item {
        background-position: top 80% center;
        aspect-ratio: 480 / 320;
    }

    /* 言いたいこと(シンプル)04
    ---------------------------------------- */
    .kkys-important[data-type="04"] .item-image img {
        height: 240px;
    }

    /*============================================================
     【パーツ】言いたいこと（詳細）3つ縦積み kkys-features
    *============================================================*/
    /* 言いたいこと（詳細）01
    ---------------------------------------- */
    .kkys-features[data-type="01"] .box-list .box:not(:last-child) {
        margin-bottom: 56px;
    }
    .kkys-features[data-type="01"] .box-list .box .item-info {
        padding: 0;
        margin-bottom: 24px;
    }
    .kkys-features[data-type="01"] .box-list .box .item-info .item-info-inner {
        position: static;
        transform: unset;
        -webkit-transform: unset;
        -ms-transform: unset;
    }    
    .kkys-features[data-type="01"] .box-list .box .item-info .title {
        font-size: 24px;
        margin-bottom: 16px;
    }
    .kkys-features[data-type="01"] .box-list .box .item-image img {
        height: 240px;
    }

    /* 言いたいこと（詳細）02
    ---------------------------------------- */
    .kkys-features[data-type="02"] .inner {
        max-width: 592px;
    }
    .kkys-features[data-type="02"] .item:not(:last-child) {
        margin-bottom: 32px;
    }
    .kkys-features[data-type="02"] .item .title {
        font-size: 24px;
    }

    /* 言いたいこと（詳細）03
    ---------------------------------------- */
    .kkys-features[data-type="03"] .item {
        margin-bottom: 32px;
    }
    .kkys-features[data-type="03"] .item .image .kkys-bg-icon {
        width: 32px;
        height: 32px;
    }
    .kkys-features[data-type="03"] .item .info {
        width: calc(100% - 32px - 12px);
    }
    .kkys-features[data-type="03"] .item .info .title {
        font-size: 20px;
    }

    /*============================================================
     【パーツ】フロー kkys-flow
    *============================================================*/
    /* フロー02
    ---------------------------------------- */
    .kkys-flow[data-type="02"] .box {
        padding: 32px 0;
    }
    .kkys-flow[data-type="02"] .box .item {
        margin-bottom: 40px;
    }
    .kkys-flow[data-type="02"] .box .item:nth-last-child(-n+2) {
        margin-bottom: 40px;
    }
    .kkys-flow[data-type="02"] .box .item:last-child {
        margin-bottom: 0;
    }
    .kkys-flow[data-type="02"] .box .item .num {
        font-size: 20px;
    }
    .kkys-flow[data-type="02"] .box .item .title {
        font-size: 16px;
    }
    
    /* フロー03
    ---------------------------------------- */
    .kkys-flow[data-type="03"] .box-list {
        padding: 48px 32px;
    }
    .kkys-flow[data-type="03"] .box-list .box:not(:last-child) {
        margin-bottom: 56px;
    }
    .kkys-flow[data-type="03"] .box-list .box .item-info {
        margin-bottom: 16px;
    }
    .kkys-flow[data-type="03"] .box-list .box .item-info .num {
        font-size: 16px;
        margin-bottom: 16px;
    }
    .kkys-flow[data-type="03"] .box-list .box .item-info .title {
        font-size: 20px;
        margin-bottom: 16px;
    }
    .kkys-flow[data-type="03"] .box-list .box .item-image img {
        height: 200px;
    }

    /*============================================================
     【パーツ】お客様の声　kkys-voice
    *============================================================*/
    /* お客様の声01
    ---------------------------------------- */
    .kkys-voice[data-type="01"] .item {
        margin: 0 auto 40px auto;
    }
    .kkys-voice[data-type="01"] .item:nth-last-child(-n+2) {
        margin-bottom: 40px;
    }
    .kkys-voice[data-type="01"] .item:last-child {
        margin-bottom: 0;
    }
    .kkys-voice[data-type="01"] .item .info .title {
        font-size: 20px;
    }

    /* お客様の声02
    ---------------------------------------- */
    .kkys-voice[data-type="02"] .item {
        padding-left: 48px;
        margin-bottom: 32px;
    }
    .kkys-voice[data-type="02"] .item .image .kkys-bg-icon  {
        width: 32px;
        height: 32px;
    }
    .kkys-voice[data-type="02"] .item .info {
        padding: 20px;
    }

    /*============================================================
     【パーツ】よくある質問　kkys-faq
    *============================================================*/
    /* よくある質問01
    ---------------------------------------- */
    .kkys-faq[data-type="01"] .parts-accordions .accordion-sw .accordion-sw-inner::before {
        padding: 6px 0 0 0;
        font-size: 18px;
    }
    .kkys-faq[data-type="01"] .parts-accordions .accordion-content .accordion-content-inner::before {
        padding: 6px 0 0 0;
        font-size: 18px;
    }

    /* よくある質問02
    ---------------------------------------- */
    .kkys-faq[data-type="02"] .item-list .item {
        padding: 20px 16px;
        margin-bottom: 24px;
    }
    .kkys-faq[data-type="02"] .item-list .item .title {
        padding-left: 28px;
        font-weight: bold;
        font-size: 16px;
        margin-bottom: 16px;
    }
    

    /*============================================================
     【パーツ】代表者挨拶　kkys-message
    *============================================================*/
    /* 代表者挨拶01
    ---------------------------------------- */
    .kkys-message[data-type="01"] .item-image {
        margin-bottom: 24px;
    }
    .kkys-message[data-type="01"] .item-info .sec-title {
        text-align: center;
    }

    
    /*============================================================
     【パーツ】会社情報　kkys-company
    *============================================================*/
    /* 会社情報01
    ---------------------------------------- */
    .kkys-company[data-type="01"] .item-info .title {
        font-size: 20px;
        margin-bottom: 20px;
    }
    .kkys-company[data-type="01"] .item-info {
        margin-bottom: 24px;
    }
    

    /*============================================================
     【パーツ】CTA　kkys-cta
    *============================================================*/
    /* CTA01
    ---------------------------------------- */
    .kkys-cta[data-type="01"] .item-action .sec-title {
        font-size: 28px;
        margin-bottom: 24px;
    }

    /* CTA02
    ---------------------------------------- */
    .kkys-cta[data-type="02"] .label {
        font-size: 20px;
    }
    .kkys-cta[data-type="02"] .catch {
        font-size: 22px;
    }
    .kkys-cta[data-type="02"] .lead {
        font-size: 16px;
    }

    /* CTA03
    ---------------------------------------- */
    .kkys-cta[data-type="03"] .logo::after {
        font-size: 20px;
        top: 8px;
        right: calc(-16px - (20px * 3));
    }
    .kkys-cta[data-type="03"] .catch {
        font-size: 22px;
    }

    /* CTA04
    ---------------------------------------- */
    .kkys-cta[data-type="04"] .item-image {
        max-width: 240px;
        margin-bottom: 24px;
    }

    /* CTA05
    ---------------------------------------- */
    .kkys-cta[data-type="05"] .item-action {
        padding: 24px;
        margin: 0 auto 40px auto;
    }
    .kkys-cta[data-type="05"] .item-action:last-child {
        margin-bottom: 0;
    }


    
}
