@charset "UTF-8";

/*========================================================================

  reset

========================================================================*/

body {
    overflow-x: hidden;
    font-family: inherit;
}
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    vertical-align: top;
}

/*========================================================================

  base

========================================================================*/

html {
    scroll-behavior: smooth;
}

.pbPage {
    position: relative;
    overflow: clip!important;
    -webkit-text-size-adjust: 100%;
    -webkit-print-color-adjust: exact;
    background: #fff;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 400;
    color: #333;
    font-size: 90%;
    line-height: 1.8;
}

@font-face {
    font-family: 'noto-serif-jp';
    src: url(/si-collaboration/assets/font/NotoSerifJP-Regular.woff)format("woff");
    font-weight: normal;
    font-display: swap;
}

@font-face {
  font-family: 'Noto Sans Japanese';
  font-weight: bold;
  font-display: swap;
  src: url(/si-collaboration/assets/font/NotoSansJP-Bold.woff)format('woff');
}

@font-face {
  font-family: 'Noto Sans Japanese';
  font-weight: normal;
  font-display: swap;
  src: url(/si-collaboration/assets/font/NotoSansJP-Regular.woff)format("woff");
}

@font-face {
  font-family: 'Noto Sans Japanese';
  font-weight: 500;
  font-display: swap;
  src: url(/si-collaboration/assets/font/NotoSansJP-Medium.woff)format("woff");
}

@media screen and (max-width: 767px) {
    .pbPage {
        font-family: 'Noto Sans Japanese', serif;
        font-weight: normal;
    }
}

.pbAreaWrapper1 {
    top: 0;
}
.pbNestedWrapper {
    overflow:visible;
}

@media screen and (min-width: 768px) {
    .pbMainArea {
        overflow: visible;
    }
    
}

/*  img
------------------------------------------------*/

img {
    max-width: 100%;
    height: auto;
}

/*  ol,ul
------------------------------------------------*/

:root ol, :root ul {
    margin: 0;
    padding: 0;
}

ul {
    list-style-type: none;
}

a {
    color: #333333;
    transition: all .3s;
    text-decoration: underline;
    -webkit-tap-highlight-color:rgba(0,0,0,0);
}

/*========================================================================

  utility

========================================================================*/

.anchor{
    display: block;
    padding-top: 150px;
    margin-top: -150px;
}

.br-pc {
    display: block;
}
.br-sp {
    display: none;
}
 
@media screen and (max-width: 767px) {
    .br-sp {
        display: block;
    }
    .br-pc {
        display: none;
    }
}

.pc {
    display: block;
}
.sp {
    display: none;
}
 
@media screen and (max-width: 767px) {
    .sp {
        display: block;
    }
    .pc {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    .u_sp-mt30 {
        margin-top: 30px!important;
    }
}
.u_center {
    text-align: center;
}

/*========================================================================

  s_h-header

========================================================================*/


.s_h-header {
    position: absolute;
    top: 0;
    z-index: 21;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 20px 30px;
    color: #ffffff;
    transition: background .5s, opacity .3s;
    background: linear-gradient(#15336EB3, #15336e00);
}
.s_h-header .heading {
    display: flex;
    align-items: center;
}
.s_h-header .h-logo path {
    fill: #fff;
    transition: fill .3s;
}
.s_h-header .h-text {
    margin-left: 21px;
    font-weight: bold;
    display: block;
    font-size: 83.33%;
}
.s_h-header.fixed .h-text {
    color: #45312A;
}

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

    .s_h-header {
        padding: 0;
        z-index: 999;
    }
    .s_h-header .heading {
        padding: 15px;
    }
    .s_h-header .h-logo svg {
        width: 58.31px;
    }
    .s_h-header .h-text {
        font-size: 9px;
        font-weight: 600;
    }
    .pbPage.open .s_h-header .h-text {
        color: #45312A;
    }
    .pbPage.open .s_h-header {
        background: #fff;
    }
}

.s_keyvisual {
    position: relative;
    background-image: url(/si-collaboration/assets/img/main.jpg);
    background-size: cover;
    background-position: center;
    height: 100vh;
}
.pbAreaWrapper1 {
    top: 0;
}
.s_keyvisual .catch {
    position: absolute;
    top: 50%;
    left: 9%;
    transform: translateY(-50%);
}
.s_keyvisual .catch h1 {
    font-family: 'noto-serif-jp', serif;
    font-size:736.11%;
    color: #fff;
    line-height: 1.2;
    font-weight: normal;
    position: relative;
    z-index: 100;
    letter-spacing: 11px;
    transition: all .3s;
    white-space: nowrap;
}
.s_keyvisual .catch:after {
    content: '';
    position: absolute;
    background-image: url(/si-collaboration/assets/img/bg_catch.png);
    width: 1168px;
    height: 478px;
    left: -16px;
    top: 18px;
}
.s_keyvisual .catch .logo{
    margin-top: 40px;
    z-index: 200;
    position: absolute;
}
.scrolldown1 {
    position:absolute;
    left:50%;
    bottom: -2px;
    height:50px;
}

.scrolldown1 span {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: -30px;
    color: #fff;
    font-size: 83%;
    font-family: 'Merriweather', serif;
    letter-spacing: 0.1em;
    text-shadow: 0 0 10px #655855;
}

.scrolldown1:after {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 2px;
    height: 30px;
    background: #fff;
    animation: pathmove 1.4s ease-in-out infinite;
}
.scrolldown1:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: 48px;
    background: #fff;
}

@keyframes pathmove{
    0%{
        height:0;
        top:0;
    }
    50%{
        height:30px;
    }
    100%{
        height:0;
        top:50px;
    }
}

@media screen and (max-width: 1440px) {
    .s_keyvisual .catch h1 {
        font-size: 541%;
    }
    .s_keyvisual .catch:after {
        content: '';
        background-image: url(/si-collaboration/assets/img/bg_catch.png);
        background-size: 890px;
        width: 890px;
        height: 363px;
        left: -16px;
        top: 18px;
    }
    .s_keyvisual .catch .logo{
        width: 209px;
    }

}

@media screen and (max-width: 767px) {
    .s_keyvisual {
        background-image: url(/si-collaboration/assets/img/main_sp.jpg);
    }
    .s_keyvisual .catch h1 {
        font-size: 13.8vw;
        letter-spacing: 0.03em;
        line-height: 1.38;
    }
    .s_keyvisual .catch {
        position: inherit;
        top: 130px;
        left: 0;
        width: calc(100% - 40px);
        margin: 0 auto;
        transform: none;
    }
    .s_keyvisual .catch:after {
        content: '';
        background-image: url(/si-collaboration/assets/img/bg_catch_sp.png);
        background-size: 532px;
        width: 532px;
        height: 346px;
        left: -110px;
        top: 45px;
    }
    .s_keyvisual .catch .logo {
        margin-top: 5px;
    }
    .s_keyvisual .catch .logo svg {
        width: 209px;
    }
}

/*========================================================================

  component

========================================================================*/

.si_c_subtitle {
    display: block;
    font-size: 125%;
    position: relative;
    font-weight: bold;
}
.si_c_subtitle > div {
    padding-left: 22px;
}
.si_c_subtitle:before {
    content: "";
    position: absolute;
    display: inline-block;
    height: 3px;
    width: 12px;
    margin-right: 10px;
    top: 50%;
    margin-top: -1px;
    bottom: 0;
    background-color: #333;
}
.img-box + .si_c_caption {
    margin-top: 20px;
}
.si_c_caption {
    font-size: 97.22%;
    margin-top: 10px;
}

/*========================================================================

  k-contact

========================================================================*/

a.k-contact {
    width: 140px;
    height: 140px;
    border-radius: 50%;
    background: #E6E6E1;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-direction: column;
    font-family: 'noto-serif-jp', serif;
    text-decoration: none;
    font-size: 100%;
    bottom: 37px;
    right: 80px;
    line-height: 1.3;
    transition: all .3s;
    position: fixed;
    z-index: 100;
    box-shadow: 0 0 12px #00000016;
}
a.k-contact p {
    margin-top: 10px;
    color: #45312A;
}
a.k-contact span {
    font-size: 69%;
    display: block;
}
a.k-contact:before {
    content: '';
    background-image: url(/si-collaboration/assets/img/ic_contact.png);
    width: 28px;
    height: 19px;
}
a.k-contact:after {
    content: url(/si-collaboration/assets/img/ic_arrow.png);
    position: absolute;
    bottom: 10px;
}
a.k-contact:hover {
    background: #fff;
}
a.k-contact:hover:before,
a.k-contact:hover:after {
    opacity: .6;
}
a.k-contact:hover:after {
    bottom: 5px;
    transition: all .3s;
}
.is-hidden {
  visibility: hidden;
  opacity: 0;
}

@media screen and (max-width: 767px) {
    a.k-contact {
        width: 96px;
        height: 96px;
    }
    a.k-contact {
        bottom: 11px;
        right: 10px;
        font-size: 75%;
    }
    a.k-contact p {
        margin-top: 2px;
        color: #45312A;
    }
    a.k-contact span {
        font-size: 37%;
    }
    a.k-contact:before {
        content: '';
        background-image: url(/si-collaboration/assets/img/ic_contact.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: contain;
    }
    a.k-contact:before {
        top: 15px;
        width: 20px;
    }
     a.k-contact:after {
        content: url(/si-collaboration/assets/img/ic_arrow.png);
        position: absolute;
        bottom: 5px;
    }
}

.si-activity {
    padding: 160px 0 274px;
    overflow: visible;
}
.si-activity .inner {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.si-activity .text-box {
    width: 52.5%;
}
.si-activity .text-box .lead {
    font-size: 152.7777%;
    line-height: 2.45;
    letter-spacing: .06em;
}
.si-activity .text-box .lead:not(:first-child) {
    margin-top: 40px
}
.si-activity .text-box .title {
    font-size: 291.6666%;
    font-family: 'Merriweather', serif;
    font-weight: normal;
    line-height: 1.5;
    letter-spacing: .095em;
    margin-top: 42px;
    margin-left: -0.6em;
    color: #45312A;
    white-space: nowrap;
}
.si-activity .text-box .title span {
    font-size: 28.57142%;
    display: block;
    font-family: initial;
    letter-spacing: .2em;
    margin-left: 1.5em;
}

@media screen and (max-width: 767px) {
    .si-activity {
        padding: 71px 0 118px;
    }
    .si-activity .inner {
        display: flex;
        flex-direction: column;
    }
    .si-activity .text-box {
        width: 100%;
    }
    .si-activity .text-box .lead {
        font-size: 111.111%;
        line-height: 2;
    }
    .si-activity .text-box .title {
        margin-top: 28px;
        font-size: 6.666666vw;
        margin-left: -0.6em;
    }
    .si-activity .text-box .title span {
        font-size: 3.2vw;
        margin-left: .6em;
        margin-top: 2px;
    }
    .si-activity .img-box {
        margin-top: 50px;
    }
    .si-activity .text-box .lead:not(:first-child) {
        margin-top: 30px
    }
}

/*========================================================================

  si-about

========================================================================*/

.si-about {
    padding: 94px 0 80px;
    background-color: #e6e5df;
    position: relative;
}
.si-about .inner {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
}
.si-about .heading {
    position: absolute;
    font-size: 361.111%;
    font-family: 'Merriweather', serif;
    top: -0.9em;
    left: 50%;
    transform: translateX(-50%);
    letter-spacing: 0.09em;
    font-weight: normal;
    color: #45312A;
    white-space: nowrap;
}
.si-about .heading span {
    font-size: 88.46%;
    letter-spacing: 0;
    font-family: 'noto-serif-jp', serif;
    vertical-align: baseline;
    margin-left: -2px;
}
.si-about .figure-area {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    background-color: #fff;
    padding: 60px 90px 60px;　
}
.si-about .figure-area .text-box .title {
    width: 260px;
    color: #fff;
    font-size: 111%;
    font-weight: bold;
    padding: 14px;
    text-align: center;
    line-height: 1;
}
.si-about .figure-area .text-box.--sekisui .title {
    background-color: #96847D;
}
.si-about .figure-area .text-box.--partner .title {
    background-color: #435F6C;
}
.si-about .figure-area .text-box .lead {
    font-size: 138.8%;
    font-weight: bold;
    margin-top: 40px;
    position: relative;
    margin-left: 2.4em;
}
.si-about .figure-area .text-box.--partner .lead:before,
.si-about .figure-area .text-box.--sekisui .lead:before{
    position: absolute;
    font-family: 'Merriweather', serif;
    font-size: 250%;
    line-height: 1;
    top: 50%;
    transform: translateY(-50%);
    left: -0.8em;
    font-weight: normal;
}
.si-about .figure-area .text-box.--sekisui .lead:before {
    content: 'S';
    color: #9F8D86;
}
.si-about .figure-area .text-box.--partner .lead:before {
    content: 'I';
    color: #698795;
}
.si-about .figure-area .text-box .list {
    margin-top: 20px;
    margin-left: 10px;
    padding-left: 20px;
    font-size: 125%;
    position: relative;
}
.si-about .figure-area .text-box ul.list > li:before {
    content: '・';
    position: absolute;
    left: 0;
}
.si-about .bottom-text {
    margin-top: 40px;
    font-size: 125%;
    line-height: 2;
}

@media screen and (max-width: 767px) {
    .si-about {
        padding: 80px 0 40px;
    }
    .si-about .heading {
        font-size: 6.66666vw;
        top: -0.6em;
        width: 100%;
        text-align: center;
        line-height: 1.3;
        letter-spacing: 0.1em;
    }
    .si-about .heading span {
        font-size: 6.66666vw;
        letter-spacing: 0;
    }
    .si-about .figure-area {
        padding: 30px 20px;
        flex-direction: column;
    }
    .si-about .figure-area > div {
        width: 100%;
    }
    .si-about .figure-area .text-box .title {
        line-height: 1;
        width: 100%;
    }
    .si-about .figure-area .text-box .lead {
        margin-top: 30px;
        line-height: 1.5;
    }
    .si-about .figure-area .text-box .list {
        margin-top: 10px;
        font-size: 111.11%;
    }
    .si-about .figure-area .img-box {
        margin-top: 20px;
    }
    .si-about .bottom-text {
        margin-top: 20px;
        font-size: 111.11%;
    }
}

.si-support {
    padding-top: 240px;
    position: relative;
}
.si-support .heading {
    font-size: 361.11%;
    font-family: 'Merriweather', serif;
    letter-spacing: 0.1em;
    font-weight: normal;
    color: #45312A;
    text-align: center;
    line-height: 1.3;
}
.si-support .heading span {
    font-size: 88.46%;
    letter-spacing: 0;
    font-family: 'noto-serif-jp', serif;
    vertical-align: baseline;
}
.si-support .heading span.small {
    font-size: 84.6%;
    margin-left: -0.85em;
}
.si-support .support-list-nav {
    padding-bottom: 80px;
}
.si-support .support-list-nav .inner {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
}
.si-support .support-list-nav .list {
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
}
.si-support .support-list-nav .list a {
    width: calc(33.333% - 20px);
    padding: 30px 0 30px 45px;
    border-top: 1px solid #9B9986;
    border-bottom: 3px solid #9B9986;
    font-family: 'noto-serif-jp', serif;
    font-size: 152.77%;
    color: #291A14;
    letter-spacing: 0.1em;
    position: relative;
    text-decoration:none;
    height: 95px;
    line-height: 1.5;
}
.si-support .support-list-nav .list a:after {
    content: '';
    content: url(/si-collaboration/assets/img/support-list-nav_icon.png);
    position: absolute;
    top: 50%;
    margin-top: -12px;
    right: 5px;
    transition: all .3s;
}
.si-support .support-list-nav .list a p {
    top: 50%;
}
@media (min-width: 768px) {
    .si-support .support-list-nav .list a:hover:after {
        top: 50%;
        margin-top: -5px;
    }
    .si-support .support-list-nav .list a:hover {
        background-color: #e6e5df;
    }
}
.si-support .support-list-nav .list a:before {
    content: '01';
    position: absolute;
    font-size: 90.90%;
    top: 50%;
    transform: translateY(-50%);
    left: 5px;
    color: #82929A;
}
.si-support .support-list-nav .list a:nth-child(2):before {
    content: '02';
}
.si-support .support-list-nav .list a:nth-child(3):before {
    content: '03';
}
.si-support .support-list-01 {
    padding-bottom: 180px;
}
.si-support .support-list-02 {
    padding: 180px 0;
    border-top: 1px solid #cdccc1;
}
.si-support .support-list-03 {
    padding: 230px 0 237px;
    border-top: 1px solid #cdccc1;
}
.si-support .support-list-01 .inner,
.si-support .support-list-02 .inner,
.si-support .support-list-03 .inner {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .si-support {
        padding-top: 120px;
    }
    .si-support .heading {
        font-size: 6.66666vw;
        letter-spacing: 0.01em;
        margin-left: -0.4em;
        white-space: nowrap;
    }
    .si-support .heading span {
        font-size: 6.66666vw;
    }
    .si-support .heading span.small {
        font-size: 6.4vw;
        margin-left: -0.7em;
    }
    .si-support .support-list-nav {
    }
    .si-support .support-list-nav .inner {
    }
    .si-support .support-list-nav .list {
        margin-top: 30px;
        display: flex;
        justify-content: space-between;
        flex-direction: column;
        border-top: 1px solid #9B9986;
    }
    .si-support .support-list-nav .list a {
        width: 100%;
        font-size: 125%;
        border-top: none;
    }
    .si-support .support-list-nav .list a p {
        top: 50%;
    }
    .si-support .support-list-nav .list a:before {
        left: 0;
    }
    .si-support .support-list-01 {
        padding-bottom: 90px;
    }
    .si-support .support-list-02 {
        padding: 82px 0;
    }
    .si-support .support-list-03 {
        padding: 135px 0 100px;
    }

}


/*  fadein
------------------------------------------------*/

.element {
  opacity: 0;
  visibility: hidden;
  transform: translateY(30px);
  transition: opacity 1s, visibility 1s, transform 1s;
}
.is-fadein {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}


/*
si-support intro-image-text
========================================================================*/

.si-support .intro-image-text {
    display: flex;
    justify-content: space-between;
}
.si-support .intro-image-text.column-1 {
    display: flex;
    flex-direction: column;
}
.si-support .intro-image-text.reverse {
    flex-direction: row-reverse;
}
.si-support .intro-image-text .text-box {
    width: calc(50% - 20px);
}
.si-support .intro-image-text.column-1 .text-box {
    width: 100%;
}
.si-support .intro-image-text .text-box .title {
    position: relative;
    font-size: 388%;
    font-family: 'noto-serif-jp', serif;
    font-weight: normal;
    margin-top: 105px;
    z-index: 1;
}
.si-support .intro-image-text.column-1 .text-box .title {
    text-align: center;
    font-size: 394%;
    margin-top: 50px;
}
.si-support .intro-image-text .text-box .title:before {
    content: '01';
    position: absolute;
    font-size: 232%;
    top: -129px;
    left: 0;
    color: #d9dfe2;
    z-index: -1;
    letter-spacing: 0.1em;
}
.si-support .intro-image-text .text-box .title.num02:before {
    content: '02';
}
.si-support .intro-image-text .text-box .title.num03:before {
    content: '03';
    left: 0;
    right: 0;
    top: -133px;
    font-size: 230%;
}
.si-support .intro-image-text .text-box .text {
    font-size: 138.8888%;
    margin-top: 25px;
    line-height: 2.2;
}
.si-support .intro-image-text .text-box .note {
    font-size: 97.22%;
    margin-top: 12px;
}


.si-support .point-aria {
    display: flex;
    justify-content: space-between;
    margin-top: 80px;
}
.si-support .point-aria__nav ul {
    position: sticky;
    top: 8rem;
}
.si-support .point-aria__nav a {
    display: block;
    padding: 40px;
    border-left: 3px solid #103141;
    opacity: .16;
    font-size: 125%;
    text-decoration: none;
    font-weight: bold;
}
.si-support .point-aria__nav a:hover {
    opacity: 1;
}
.si-support .point-aria__nav a.current {
    opacity: 1;
}

@media screen and (max-width: 767px) {
    .si-support .point-aria__nav a {
        text-align:center;
    }
}
    
.si-support .point-aria__main {
    width: 860px;
}

.si-support .point-image-text:not(:first-child) {
    border-top: 1px solid #9B9986;
    margin-top: 60px;
    padding-top: 60px;
}
.si-support .point-image-text .text-box:not(:first-child) {
    margin-top: 50px;
}
.si-support .point-image-text .text-box .title {
    font-size: 166.66%;
}
.si-support .point-image-text .text-box .subtitle {
    display: block;
    font-size: 75%;
    position: relative;
    left: 22px;
}
.si-support .point-image-text .text-box .subtitle:before {
    content: "";
    position: absolute;
    display: inline-block;
    height: 3px;
    width: 12px;
    margin-right: 10px;
    top: 50%;
    transform: translateX(-50%);
    bottom: 0;
    background-color: #333;
    left: -15px;
}
.si-support .point-image-text .text-box .text:not(:first-child) {
    margin-top: 23px;
}
.si-support .point-image-text .text-box .text {
    font-size: 125%;
    line-height: 2;
}
.si-support .point-image-text .img-box {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}
.si-support .point-image-text .img-box.point3 {
    display: flex;
    align-items: center;
    margin-top: 55px;
}
.si-support .point-image-text .img-box .img-box__inner {
    width: 30.232558%;
}
.si-support .point-image-text .img-box.point3 .img-box__inner {
    width: auto;
}
.si-support .point-image-text .img-box.column-1 .img-box__inner {
    width: 100%;
}
.si-support .point-image-text .img-box.column-2 .img-box__inner {
    width: calc(50% - 20px);
}
.si-support .point-image-text .img-box .img-box__inner .caption {
    margin-top: 16px;
    font-size: 111.11%;
}
.si-support .point-image-text .img-box .img-box__inner .note {
    margin-top: 10px;
    font-size: 97.222%;
}
.si-support .point-image-text .img-box.point3 .label {
    color: #fff;
    padding: 5px 15px;
    font-weight: bold;
    font-size: 111.11%;
    text-align: center;
}
.si-support .point-image-text .img-box.point3 .label.--general {
    background-color: #9B9986;
}
.si-support .point-image-text .img-box.point3 .label.--dj {
    background-color: #103141;
}
.si-support .point-image-text .img-box.point3 .img.arrow {
    width: 40px;
}
.si-support .point-image-text .img-box.point3 .img.arrow img {
    margin: 0 auto;
}

/*  support-list-03
------------------------------------------------*/

.si-support .support-list-03 .image-text {
    display: flex;
    margin-top: 60px;
    justify-content: space-between;
    align-items: center;
}
.si-support .support-list-03 .image-text > div {
    width: calc(50% - 20px)
}
.si-support .support-list-03 .image-text.reverse {
    flex-direction: row-reverse;
}
.si-support .support-list-03 .image-text .title {
    font-size: 166.66%
}
.si-support .support-list-03 .image-text .text {
    font-size: 111.11%;
    margin-top: 5px;
}
.si-support .support-list-03 .image-text.column-4 {
    margin-top: 60px;
    align-items: flex-start;
}
.si-support .support-list-03 .image-text.column-4 > div {
    width: calc(25% - 30px)
}
.si-support .support-list-03 .image-text.column-4 .title {
    margin-top: 16px;
    font-size: 125%;
    font-weight: bold;
}
.support-data-area {
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
}
.support-data-area .box {
    position: relative;
    width: 31.1%;
    padding: 30px 0 10px;
    color: #45312A;
}
.support-data-area .box .subtitle {
    text-align: center;
    font-size: 125%;
    font-family: 'noto-serif-jp', serif;
}
.support-data-area .box .title {
    text-align: center;
    font-size: 250%;
    font-family: 'noto-serif-jp', serif;
    line-height: 1.2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 5px;
}
.support-data-area .box .label {
    text-align: center;
    background-color:  #E6E6E1;
    padding: 5px 0;
    font-size: 111.11%;
    font-weight: bold;
    margin-top: 20px;
    letter-spacing: .05em;
}
.support-data-area .box .number {
    text-align: center;
    margin-top: 29px;
    font-size: 4.375rem;
    font-family: 'noto-serif-jp', serif;
    vertical-align: baseline;
    line-height: 1;
}
.support-data-area .box .number .small {
    font-size: 3.33rem;
    vertical-align: baseline;
}
.support-data-area .box .number .mini {
    font-size: 1.6rem;
    vertical-align: baseline;
}
.support-data-area .box .caption {
    text-align: center;
    margin-top: 20px;
    font-size: 97.22%;
}
.support-data-area .box:before, .support-data-area .box:after {
    content: '';
    width: 15px;
    height: 100%;
    position: absolute;
}

.support-data-area .box:before {
    border-left: solid 1px #000000;
    border-top: solid 1px #000000;
    border-bottom: solid 1px #000000;
    top: 0;
    left: 0;
}

.support-data-area .box:after {
    border-right: solid 1px #000000;
    border-top: solid 1px #000000;
    border-bottom: solid 1px #000000;
    top: 0;
    right: 0;
}


.si-support .support-list__image-text.column-2 {
    display: flex;
    margin-top: 60px;
    justify-content: space-between;
}
.si-support .support-list__image-text.column-2 > div {
    width: calc(50% - 20px);
}

@media screen and (max-width: 767px) {
    .si-support .intro-image-text {
        display: flex;
        justify-content: space-between;
        flex-direction: column;
    }
    .si-support .intro-image-text .img-box {
        margin-top: 40px;
    }
    .si-support .intro-image-text.column-1 {
        display: flex;
        flex-direction: column;
    }
    .si-support .intro-image-text.reverse {
        flex-direction: column;
    }
    .si-support .intro-image-text .text-box {
        width: 100%;
    }
    .si-support .intro-image-text.column-1 .text-box {
        width: 100%;
    }
    .si-support .intro-image-text .text-box .title {
        font-size: 277.77%;
        margin-top: 60px;
        line-height: 1.5;
    }
    .si-support .intro-image-text.column-1 .text-box .title {
        text-align: left;
        font-size: 277.77%;
        line-height: 1.5;
        margin-top: 0px;
    }
    .si-support .intro-image-text .text-box .title:before {
        content: '01';
        position: absolute;
        font-size: 280%;
        top: -107px;
        left: 0;
        color: #d9dfe2;
        z-index: -1;
        letter-spacing: 0.1em;
    }
    .si-support .intro-image-text .text-box .title.num02:before {
        content: '02';
    }
    .si-support .intro-image-text .text-box .title.num03:before {
        content: '03';
        left: 0;
        right: 0;
        top: -90px;
        font-size: 250%;
    }
    .si-support .intro-image-text .text-box .text {
        font-size: 125%;
        margin-top: 25px;
        line-height: 2;
    }
    .si-support .intro-image-text .text-box .note {
        font-size: 83.33%;
        margin-top: 12px;
    }
    .si-support .point-aria {
        display: flex;
        justify-content: space-between;
        margin-top: 60px;
        flex-direction: column;
    }
    .si-support .point-aria__nav ul {
        position: sticky;
        top: 8rem;
        display: flex;
        justify-content: space-between;
    }
    .si-support .point-aria__nav li {
        width: 30%;
        position: relative; 
    }
    .si-support .point-aria__nav li:after {
        content: '';
        content: url(/si-collaboration/assets/img/support-list-nav_icon.png);
        position: absolute;
        bottom: 10px;
        left: 50%;
        margin-left: -12px;
    }
    .si-support .point-aria__nav a {
        display: block;
        padding: 15px 15px 45px;
        border-left: unset;
        border-bottom: 3px solid #103141;
        opacity: 1;
        font-size: 97.22%;
        text-decoration: none;
        font-weight: bold;
    }
    .si-support .point-aria__nav a:hover {
        opacity: 1;
    }
    .si-support .point-aria__nav a.current {
        opacity: 1;
    }
    .si-support .point-aria__main {
        width: 100%;
        margin-top: 60px;
        padding-top: 60px;
        border-top: 1px solid #9B9986;
    }
    .si-support .point-image-text:not(:first-child) {
        border-top: 1px solid #9B9986;
        margin-top: 60px;
        padding-top: 60px;
    }
    .si-support .point-image-text .text-box .title {
        font-size: 152.77%;
        line-height: 1.5;
    }
    .si-support .point-image-text .text-box .subtitle {
        display: block;
        font-size: 75%;
        position: relative;
        left: 22px;
        margin-bottom: 18px;
    }
    .si-support .point-image-text .text-box .subtitle:before {
        content: "";
        position: absolute;
        display: inline-block;
        height: 3px;
        width: 12px;
        margin-right: 10px;
        top: 50%;
        transform: translateX(-50%);
        bottom: 0;
        background-color: #333;
        left: -15px;
    }
    .si-support .point-image-text .text-box .text {
        margin-top: 20px;
        font-size: 111.11%;
        line-height: 2;
    }
    .si-support .point-image-text .img-box {
        display: flex;
        margin-top: 40px;
        flex-direction: column;
    }
    .si-support .point-image-text .img-box .img-box__inner {
        width: 100%;
    }
     .si-support .point-image-text .img-box .img-box__inner .img img {
        width: 100%;
    }
    .si-support .point-image-text .img-box .img-box__inner:not(:first-child) {
        margin-top: 40px;
    }
    .si-support .point-image-text .img-box.point3 .img-box__inner:not(:first-child) {
        margin-top:20px;
    }
    .si-support .point-image-text .img-box.column-2 .img-box__inner {
        width: 100%;
    }
    .si-support .point-image-text .img-box .img-box__inner .caption {
        margin-top: 15px;
        font-size: 97.22%;
        line-height: 1.5;
    }
    
    /*  support-list-03
    ------------------------------------------------*/
    
    .si-support .support-list-03 .image-text {
        display: flex;
        margin-top: 50px;
        justify-content: space-between;
        flex-direction: column;
    }
    .si-support .support-list-03 .image-text > div {
        width: 100%;
    }
    .si-support .support-list-03 .image-text:not(.column-4) > div:not(:first-child) {
        margin-top: 14px;
    }
    .si-support .support-list-03 .image-text.reverse {
        flex-direction: row-reverse;
        flex-direction: column;
    }
    .si-support .support-list-03 .image-text .title {
        font-size: 137.5%
    }
    .si-support .support-list-03 .image-text.column-4 .text {
        font-size: 97.222%;
        margin-top: 12px;
        line-height: 1.5em;
    }
    .si-support .support-list-03 .image-text.column-4 {
        margin-top: 60px;
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
    }
    .si-support .support-list-03 .image-text.column-4 > div {
        width: calc(50% - 10px);
    }

    .si-support .support-list-03 .image-text.column-4 .img-box:nth-child(n+3) {
        margin-top: 34px;
    }

    .si-support .support-list-03 .image-text.column-4 .img-box: {
        margin-top: 30px;
    }
    .si-support .support-list-03 .image-text.column-4 .title {
        margin-top: 10px;
        font-size: 111.11%;
        line-height: 1.5;
    }
    
    .si-support .support-list__image-text.column-2 {
        display: flex;
        margin-top: 50px;
        justify-content: space-between;
        flex-direction: column;
    }
    .si-support .support-list__image-text.column-2 > div {
        width: 100%;
    }
    .si-support .support-list__image-text.column-2 > div:not(:first-child) {
        margin-top: 40px;
    }

.support-data-area {
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
.support-data-area .box {
    width: 100%;
    padding: 10px 0;
    color: #45312A;
}
.support-data-area .box:not(:first-child) {
    margin-top: 30px;
}
.support-data-area .box .subtitle {
    text-align: center;
    font-size: 111.11%;
    font-family: 'noto-serif-jp', serif;
}
.support-data-area .box .title {
    text-align: center;
    font-size: 194.44%;
    font-family: 'noto-serif-jp', serif;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 8px;
}
.support-data-area .box .label {
    text-align: center;
    background-color:  #E6E6E1;
    padding: 5px 0;
    font-size: 111.11%;
    font-weight: bold;
    margin-top: 18px;
}
.support-data-area .box .number {
    margin-top: 29px;
    font-size: 4.3rem;
    letter-spacing: 0.02em;
}
    .support-data-area .box .number .small {
        font-size: 3.33rem;
        vertical-align: baseline;
    }
    .support-data-area .box .number .mini {
        font-size: 1.6rem;
        vertical-align: baseline;
    }
    .support-data-area .box .caption {
        text-align: center;
        margin-top: 20px;
    }
    .support-data-area .box:before, .support-data-area .box:after {
        content: '';
        width: 15px;
        height: 100%;
        position: absolute;
    }
    
    .support-data-area .box:before {
        border-left: solid 1px #000000;
        border-top: solid 1px #000000;
        border-bottom: solid 1px #000000;
        top: 0;
        left: 0;
    }
    
    .support-data-area .box:after {
        border-right: solid 1px #000000;
        border-top: solid 1px #000000;
        border-bottom: solid 1px #000000;
        top: 0;
        right: 0;
    }

}

/*========================================================================

  si_flow

========================================================================*/

.si-flow {
    padding: 94px 0 60px;
    background-color: #e6e5df;
    position: relative;
}
.si-flow .inner {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
}
.si-heading {
    position: absolute;
    font-size: 361.11%;
    font-family: 'Merriweather', serif;
    top: -0.9em;
    letter-spacing: 0.1em;
    font-weight: normal;
    color: #45312A;
    width: 100%;
    white-space: nowrap;
}
.si-heading span {
    font-size: 88.46%;
    letter-spacing: 0;
    font-family: 'noto-serif-jp', serif;
}
.si-flow .flow-box ul {
    display: flex;
    justify-content: space-between;
}
.si-flow .flow-box li {
    width: 160px;
    display: block;
    background-color: #fff;
    position: relative;
    border-top: 2px solid #333;
    font-size: 125%;
    height: 140px;
    font-weight: bold;
}
.si-flow .flow-box li:not(:last-child) {
}
.si-flow .flow-box li:not(:last-child):before {
  content: url(/si-collaboration/assets/img/flow_arrow.png);
  position: absolute;
  top: 50%;
  right: -37px;
  margin-top: -70px;
}

.si-flow .flow-box li p {
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    position: absolute;
    font-weight: bold;
    left: 50%;
    white-space: nowrap;
}

.si-text-area {
    margin-top: 30px;
    font-size: 138.88%;
    line-height: 2;
}
.si-flow-block-area {
    background-color: #e6e5df;
    position: relative; /*20241206add*/
}
.si-flow-block-area .si-flow-block-area__lead {
    margin-top: 20px;
    font-size: 125%;
    line-height: 2;
}
.si-flow-block-area .si-flow-block-area__note {
    font-size: 97.22%;
    margin-top: 12px;
}
.si-flow-block-area > div:not(.pb-handle) {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
    padding: 98px 0 100px; /*20241206change*/
}
.si-flow-block-area .inner {
    background-color: #fff;
    padding: 60px 98px;
}
.si-flow-block-area .heading h2 {
    font-size: 222.22%;
    font-family: 'noto-serif-jp', serif;
    text-align: center;
    color: #103141;
    font-weight: normal;
}
.si-flow-block-area .partner-logo-area {
    margin: 40px 0;
}
.si-flow-block-area .partner-logo-area > div {
    display: flex;
    justify-content: space-between;
  /* justify-content: center;　20240325change*/
    flex-wrap: wrap;
}

.si-flow-block-area .partner-logo-area .box {
    width: 160px;
    margin: 0 4px;
    /* margin: 0 20px; 20240325change*/
}
/*
.si-flow-block-area .partner-logo-area .box:nth-child(n+5) {
    margin: 20px 20px 0;
}
20240325change*
*/
.example-area:first-child {
    margin-top: 40px;
}
.example-area {
    margin-top: 40px;
    border-top: 1px solid #9B9986;
}
.example-area > div {
    margin-top: 40px;
}
.example-area + .example-area,
.pbAnchor + .example-area {
    margin-top: 0;
}
.example-area .content {
    margin-top: 27px;
}
.example-area .trigger {
    position: relative;
    display: inline-block;
    font-size: 111.11%;
    font-weight: bold;
    transition: all .3s;
    width: 100%;
    height: 100px;
    padding: 37px;
    cursor: pointer;
    text-align: center;
}
@media (min-width: 768px) {
    .example-area .trigger:hover{
        opacity: .6;
    }
}
.example-area .trigger:before,
.example-area .trigger:after {
    content: '';
    position: absolute;
    top: 50%;
    margin-top: -12px;
    left: 42.2%;
}
.example-area .trigger:after {
    content: url(/si-collaboration/assets/img/ic_accordion_open.png);
}
.example-area.active .trigger:after {
    content: url(/si-collaboration/assets/img/ic_accordion_close.png);
}
.example-area.active .open { display: none; }
.example-area:not(.active) .close { display: none; }
.example-area .trigger p {
    position: absolute;
    left: 46.3%;
    top: 50%;
    transform: translateY(-50%);
}
.example-area .trigger a {
    text-decoration: none;
}
.example-area .trigger a:after {
    position: absolute;
    content:"";
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

@media screen and (max-width: 767px) {
    .si-flow {
        padding: 82px 0 55px;
    }
    .si-heading {
        font-size: 6.66666vw;
        top: -0.9em;
        left: 50%;
        transform: translateX(-50%);
        line-height: 1.5;
        text-align: center;
    }
    .si-heading span {
        font-size: 100%;
    }
    .si-flow .flow-box {
        width: 255px;
        margin: 0 auto;
    }
    .si-flow .flow-box ul {
        display: flex;
        flex-direction: column;
    }
    .si-flow .flow-box li {
        width: 100%;
        border-top: 2px solid #333;
        font-size: 111.11%;
        height: auto;
        padding: 20px 20px 10px;
        position: relative;
    }
    .si-flow .flow-box li:last-child {
        padding: 20px;
    }
    .si-flow .flow-box li:not(:last-child) {
        margin-bottom: 40px;
    }
    .si-flow .flow-box li:not(:last-child) {
        width: 100%;
    }
    .si-flow .flow-box li:not(:last-child):before {
        content: "";
        position: absolute;
        top: inherit;
        right: 0;
        left: 0;
        bottom: -30px;
        margin-top: 0;
        border-top: 30px solid #ffffff;
        border-left: 127px solid transparent;
        border-right: 127px solid transparent;
    }
    .si-flow .flow-box li p {
        transform: unset;
        position: unset;
        text-align: center;
        width: 100%;
        margin-top: 0;
    }
    
    .si-text-area {
        font-size: 125%;
    }
    .si-flow-block-area {
        /*background-color: #e6e5df; 20241206change*/
    }
    .si-flow-block-area .si-flow-block-area__lead {
        margin-top: 0;
        font-size: 111.11%;
    }
    .si-flow-block-area > div:not(.pb-handle) {
        width: calc(100% - 40px);
        max-width: 1160px;
        margin: 0 auto;
        padding: 48px 0 90px; /*20241206change*/
    }
    .si-flow-block-area .inner {
        background-color: #fff;
        padding: 24px 20px 15px;
    }
    .si-flow-block-area .heading h2 {
        font-size: 152.77%;
        font-family: 'noto-serif-jp', serif;
        text-align: center;
        color: #103141;
    }
    .si-flow-block-area .partner-logo-area {
        margin-top: 35px;
        margin-bottom: 60px;
    }
    .si-flow-block-area .partner-logo-area > div {
        display: flex;
        justify-content: space-between;
    }
    .si-flow-block-area .partner-logo-area .box {
        width: calc(50% - 10px);
        margin: 0;
    }
    .si-flow-block-area .partner-logo-area .box:nth-child(n+3)  {
        margin: 20px 0 0;
    }
    .si-flow-block-area .partner-logo-area :after {
        display: none;
    }
    .si-flow-block-area .example-area {
        border-top: 1px solid #9B9986;
    }
    .si-flow-block-area .example-area + .example-area {
        margin-top: 0;
    }
    .example-area {
        margin-top: 30px; /*20241206change*/
    }
    .example-area .trigger {
        padding: 35px 0;
    }
    .example-area .trigger:before,
    .example-area .trigger:after {
        left: 22.5%
    }
    .example-area .trigger p{
        position: relative;
        display: inline-block;
        font-size: 100%;
        font-weight: bold;
        left: 6.5%;
    }
}

/*  image-text
========================================================================*/

.c_image-text:not(:first-child) {
    margin-top: 30px;
}
.c_image-text > div {
    display: flex;
    justify-content: space-between;
}
.c_image-text > div:after {
    display: none;
}
.c_image-text .imagebox,
.c_image-text .textbox {
    width: 48%;
}
.c_image-text .title:not(:first-child) {
    margin-top: 11px;
}
.c_image-text .title {
    font-size: 138.88%;
    font-weight: bold;
    line-height: 1.5;
}
.c_image-text .text:not(:first-child) {
    margin-top: 10px;
}
.c_image-text .text {
    font-size: 125%;
    line-height: 2;
}
.c_image-text .image {
    background: #ddd;
    text-align: center;
}
.c_image-text .image a {
    overflow: hidden;
    display: block;
}
@media (min-width: 768px) {
    .c_image-text .image a:hover img {
        transform: scale(1.1);
    }
}
.c_image-text .caption {
    margin-top: 10px;
    font-size: 90%;
}
.c_image-text .caption * {
    color: #999;
}

@media screen and (max-width: 767px) {
    .c_image-text:not(:first-child) {
        margin-top: 20px;
    }
    .c_image-text > div {
        flex-direction: column;
    }
    .c_image-text .imagebox,
    .c_image-text .textbox {
        width: 100%;
    }
    .c_image-text .imagebox > div {
        display: table;
        margin: 0 auto;
    }
    .c_image-text .title {
        font-size: 124%;
        font-weight: bold;
        line-height: 1.5;
    }
    .c_image-text .caption {
        display: table-caption;
        caption-side: bottom;
    }
    .c_image-text .textbox {
        margin-top: 11px;
    }
    .c_image-text .text {
        font-size: 111.11%;
        line-height: 2;
    }
}

/*  panel
========================================================================*/

.c_panel:not(:first-child) {
    margin-top: 19px;
}
.c_panel .box > div:not(.pb-handle) {
    display: flex;
    flex-flow: column;
    height: 100%;
}
.c_panel .image {
    flex-shrink: 0;
    background: #ddd;
    text-align: center;
}
.c_panel .c_modal-image {
    flex-shrink: 0;
}
.c_panel .image a {
    overflow: hidden;
    display: block;
}
@media (min-width: 768px) {
    .c_panel .image a:hover img {
        transform: scale(1.1);
    }
}
.c_panel .title:not(:first-child) {
    margin-top: 20px;
}
.c_panel .title {
    font-weight: bold;
    font-size: 130%;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 1px;
}
.c_panel .title + div {
    margin-top: 10px;
}
.c_panel .text:not(:first-child) {
    margin-top: 15px;
}
.c_panel .text {
    font-size: 111.11%;
}
.c_panel .c_button {
    margin-top: auto;
}
.c_panel .c_button a {
    margin-top: 30px;
}

@media screen and (max-width: 767px) {
    .c_panel .box:not(:first-child) {
        margin-top: 30px;
    }
    .c_panel .text {
        font-size: 97.222%;
        line-height: 2;
    }
    .c_panel .text:not(:first-child) {
        margin-top: 15px;
    }
    .c_panel .c_button a {
        margin-top: 20px;
    }
}

/*  col-1
------------------------------------------------*/

@media print, screen and (min-width: 768px) {
    .c_panel.col-1 .title {
        font-size: 160%;
    }
}

/*  col-2
------------------------------------------------*/

@media print, screen and (min-width: 768px) {
    .c_panel.col-2 > div {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .c_panel.col-2 > div:after {
        display: none;
    }
    .c_panel.col-2 .box {
        width: 48%;
    }
    .c_panel.col-2 .box:nth-child(n+3) {
        margin-top: 35px;
    }
    .c_panel.col-2 .title {
        font-size: 160%;
    }
}

/*========================================================================

  si_faq

========================================================================*/

.si_faq > div:not(.pb-handle) {
    width: calc(100% - 40px);
    max-width: 960px;
    margin: 0 auto;
    padding: 100px 0;
}
.si_faq .title h2 {
    text-align: center;
    font-size: 222.22%;
    font-family: 'noto-serif-jp', serif;
    font-weight: normal;
    color: #45312A;
}

@media screen and (max-width: 767px) {
    .si_faq > div:not(.pb-handle) {
        width: calc(100% - 40px);
        padding: 50px 0;
    }
    .si_faq .title h2 {
        font-size: 152%;
    }
}

/*  accordion
========================================================================*/

.c_accordion {
    border-top: 1px solid #919081;
    position: relative;
}
.c_accordion:last-child {
    border-bottom: 1px solid #919081;
}
.c_accordion:not(:first-child) {
    margin-top: 25px;
}
.c_accordion + .c_accordion {
    margin-top: 0px;
}
.c_accordion > div {
    background: #fff;
}
.c_accordion .trigger {
    transition: all .3s;
    display: inline-block;
    width: 100%;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
 @media (min-width: 768px) {
    .c_accordion .trigger:hover {
        background-color: #fafaf9;
    }
}
.c_accordion .trigger > div {
    padding: 20px 100px 20px 14px;
    font-size: 125%;
    cursor: pointer;
}
.c_accordion .trigger:before,
.c_accordion .trigger:after {
    content: '';
    position: absolute;
    top: 50%;
    margin-top: -12px;
    right: 10px;
    transition: all .3s;
}
.c_accordion .trigger:after {
    content: url(/si-collaboration/assets/img/ic_accordion_open.png);
}
.c_accordion.active .trigger:after {
    content: url(/si-collaboration/assets/img/ic_accordion_close.png);
}
.c_accordion .trigger:hover:before,
.c_accordion .trigger:hover:after {
    opacity: .5;
}
.c_accordion .content {
    font-size: 125%;
}
.c_accordio.active:not(last-child) .content {
    border-bottom: none;
}
.c_accordion .content > div {
    padding: 0 100px 23px 14px;
}
.c_accordion .question p,
.c_accordion .answer p {
    padding-left: 30px;
    position: relative;
}
.c_accordion .image {
    margin-top: 17px;
    padding-left: 30px;
}
.c_accordion .question p:before,
.c_accordion .answer p:before {
    font-size: 111.11%;
    position: absolute;
    left: 0;
    top: -.1em;
    font-weight: bold;
}
.c_accordion .question p:before {
    content: "Q";
    color: #45312A;
}
.c_accordion .answer p:before {
    content: "A";
    color: #103141;
}

@media screen and (max-width: 767px) {
    .c_accordion:first-child {
        margin-top: 20px;
    }
    .c_accordion .trigger > div {
        padding: 18px 50px 18px 18px;
        font-size: 111.11%;
        line-height: 2;
    }
    .c_accordion .trigger > div:before,
    .c_accordion .trigger > div:after {
        right: 15px;
    }
    .c_accordion .content {
        font-size: 111.11%;
        line-height: 2;
    }
    .c_accordion .content > div {
        padding: 0 46px 24px 18px;
    }
    .c_accordion .question p:before,
    .c_accordion .answer p:before {
        font-size: 125%;
    }
    .c_accordion .image {
        margin-top: 20px;
    }
}

/*========================================================================

  footer

========================================================================*/

.si-footer .footer-contact-area {
    background-image: url(/si-collaboration/assets/img/footer_bg_img.jpg);
    background-size: cover;
    padding: 100px 0 120px;
}
.si-footer .footer-contact-area .inner {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
}
.si-footer .footer-contact-area .title {
    font-size: 375%;
    font-family: 'noto-serif-jp', serif;
    color: #fff;
    text-align: center;
}
.si-footer .footer-contact-area a.btn {
    font-size:138%;
    color: #45312A;
    background-color: #fff;
    padding: 26px 100px;
    text-decoration: none;
    font-weight: bold;
    display: block;
    width: 560px;
    margin: 30px auto 0;
    cursor: pointer;
    position: relative;
}
.si-footer .footer-contact-area a.btn:before,
.si-footer .footer-contact-area a.btn:after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.si-footer .footer-contact-area a.btn:before {
    content: url(/si-collaboration/assets/img/footer_contact_arrow_icon.jpg);
    right: 25px;
    margin-top: -3px;
    transition: all .3s;
}
.si-footer .footer-contact-area a.btn:hover:before {
    right: 20px;
}
.si-footer .footer-contact-area a.btn:after {
    width: 24px;
    height: 24px;
    border: 1px solid #919081;
    right: 16px;
}
.si-footer .footer-contact-area .note {
    font-size: 111.11%;
    color: #fff;
    text-align: center;
    margin-top: 40px;
    font-weight: bold;
}
.si-footer .footer-pagetop-area {
    background-color: #2E2421;
    padding: 24px;
    text-align: center;
}
.si-footer .footer-pagetop-area a {
    text-decoration: none;
    color: #fff;
    font-weight: bold;
    opacity: .6;
    position: relative;
}
.si-footer .footer-pagetop-area a:before {
    content: '';
    position: absolute;
    left: -40px;
    content: url(/si-collaboration/assets/img/footer_pagetop_img.png);
}
.si-footer .footer-pagetop-area a:hover:before {
    top: -10px;
}
.si-footer .footer-copyright-area {
    background-color: #2E2421;
    padding: 35px 0 100px;
    text-align: center;
    border-top: 1px solid #4B4645;
}
.si-footer .footer-copyright-area .copyright__logo path {
    fill: #fff;
    transition: fill .3s;
    width: 100px;
}
.si-footer .footer-copyright-area .copyright__text {
    color: #fff;
    font-size: 97.22%;
    margin-top: 35px;
}

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

    .si-footer .footer-contact-area {
        background-image: url(/si-collaboration/assets/img/footer_bg_img_sp.jpg);
        background-size: cover;
        padding: 50px 0 50px;
    }
    .si-footer .footer-contact-area .inner {
        width: calc(100% - 40px);
        max-width: 1160px;
        margin: 0 auto;
    }
    .si-footer .footer-contact-area .title {
        font-size: 208%;
        font-family: 'noto-serif-jp', serif;
        color: #fff;
        text-align: center;
    }
    .si-footer .footer-contact-area a.btn {
        font-size: 111.11%;
        padding: 11px;
        width: 100%;
        margin: 30px auto 0;
        text-align: center;
    }
    .si-footer .footer-contact-area a.btn:before,
    .si-footer .footer-contact-area a.btn:after {
        content: '';
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
    }
    .si-footer .footer-contact-area a.btn:before {
        content: url(/si-collaboration/assets/img/footer_contact_arrow_icon.jpg);
        right: 25px;
        margin-top: -3px;
    }
    .si-footer .footer-contact-area a.btn:hover:before {
        right: 20px;
    }
    .si-footer .footer-contact-area a.btn:after {
        width: 24px;
        height: 24px;
        border: 1px solid #919081;
        right: 16px;
    }
    .si-footer .footer-contact-area .note {
        font-size: 97.22%;
        margin-top: 32px;
    }
    .si-footer .footer-pagetop-area {
    }
    .si-footer .footer-pagetop-area a {
    }
    .si-footer .footer-pagetop-area a:hover:before {
        top: -10px;
    }
    .si-footer .footer-copyright-area {
    }
    .si-footer .footer-copyright-area .copyright__logo path {
        fill: #fff;
        transition: fill .3s;
        width: 100px;
    }
    .si-footer .footer-copyright-area .copyright__text {
        margin: 35px auto 0;
        text-align: left;
        width: calc(100% - 40px);
        line-height: 2;
    }
}

.u_animation {
    opacity: 0;
}
.u_animation.animation {
    animation: fade-in .8s ease-in-out 0s forwards;
}

@keyframes fade-in {
    0% {opacity: 0; transform: translateY(100px);}
    100% {opacity: 1; transform: translateY(0);}
}

/*========================================================================

  update202412

========================================================================*/

@media screen and (max-width: 1024px) {
    .pbPage.open {
        position: fixed;
    }
}

/*========================================================================

  header

========================================================================*/

.s_h-header.fixed {
    position: fixed;
    background: #ffffff;
}

.si_sp-menu {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width:  73%;
    gap: 25px;
}

@media screen and (max-width: 1200px) {
    .pbPage.open .si_sp-menu {
            visibility: visible;
            opacity: 1;
        }
    .si_sp-menu {
        visibility: hidden;
        opacity: 0;
        display: flex;
        position: absolute;
        width: 100vw;
        height: calc(100vh - 68px);
        background: #F0F0EC;
        top: 68px;
        left: 0;
        transition: all .3s;
        flex-direction: column;
        padding: 60px 20px;
        overflow: auto;
        justify-content: flex-start;
        gap: 15px;
    }
}

/*  logo
------------------------------------------------*/

/* fixed */
.s_h-header.fixed .h-logo path { fill: rgb(48 54 58); }
.s_h-header.fixed .h-logo path:nth-child(1),
.s_h-header.fixed .h-logo path:nth-child(1) {
    fill: rgb(0 108 184);
}
.s_h-header.fixed .h-logo path:nth-child(2),
.s_h-header.fixed .h-logo path:nth-child(2) {
    fill: rgb(230 0 57);
}

@media screen and (max-width: 1200px) {
    .pbPage.open .s_h-header .h-logo path { fill: rgb(48 54 58); }
    .pbPage.open .s_h-header .h-logo path:nth-child(1),
    .pbPage.open .s_h-header .h-logo path:nth-child(1) {
        fill: rgb(0 108 184);
    }
    .pbPage.open .s_h-header .h-logo path:nth-child(2),
    .pbPage.open .s_h-header .h-logo path:nth-child(2) {
        fill: rgb(230 0 57);
    }
}

/*  si_header-nav
========================================================================*/
.si_header-nav ul {
    display: flex;
    gap: 27px;
}
.si_header-nav a {
    color: #fff;
    text-decoration: none;
    font-size: 104.16%;
    font-family: "Noto Sans Japanese";
    font-weight: normal;
    letter-spacing: 0.1em;
    text-shadow: 0px 0px 15px #010101B3;
    padding: 10px;
    display: block;
}
.s_h-header.fixed .si_header-nav a {
    color: #45312A;
    text-shadow: none;
}
.si_header-nav .current a {
    pointer-events: none;
    opacity: .6;
}

@media (min-width: 768px) {
    .si_header-nav a:hover{
        opacity: .6;
    }
}
@media screen and (max-width: 1200px) {
    .si_header-nav ul {
        display: flex;
        flex-direction: column;
        gap: 18px;
    }
    .si_header-nav a {
        text-decoration: none;
        font-size: 104.16%;
        font-weight: 500;
        letter-spacing: 0.1em;
        text-shadow: none;
        padding: 5px 20px;
        width: 100%;
        display: block;
        color: #45312A;
        text-align: center;
    }
}

/*  si_header-btn
========================================================================*/

a.si_header-btn {
    color: #fff;
    text-decoration: none;
    border: 1px solid #fff;
    padding: 18px 50px 15px 30px;
    font-weight: bold;
    font-size: 111%;
    letter-spacing: 0.1em;
}
.si_header-btn {
    position: relative;
}
.si_header-btn:after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 25px;
    width: 6px;
    height: 6px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
}
@media (min-width: 768px) {
    a.si_header-btn:hover{
        opacity: .6;
    }
}

@media screen and (max-width: 1200px) {
    a.si_header-btn {
        color: #45312A;
        border: 1px solid #45312A;
        font-weight: 500;
        width: 100%;
        max-width: 350px;
        margin-top: 10px;
    } 
    .si_header-btn:after {
        border-top: 2px solid #45312A;
        border-right: 2px solid #45312A;
    }
}

/* fixed */
.s_h-header.fixed a.si_header-btn {
    color: #45312A;
    border: 1px solid #45312A;
}
.s_h-header.fixed .si_header-btn:after {
    border-top: 2px solid #45312A;
    border-right: 2px solid #45312A;
}

/*  hamburger
========================================================================*/

@media screen and (max-width: 1200px) {
    .s_h-header .hamburger {
        position: relative;
        top: 0;
        width: 68px;
        height: 68px;
    }
    .s_h-header .hamburger span {
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        width: 24px;
        height: 2px;
        background: #ffffff;
    }
    .pbPage.open .s_h-header .hamburger span,
    .s_h-header.fixed .hamburger span {
        background: #45312A;
    }
    .s_h-header .hamburger span:nth-of-type(1) {
        top: calc(50% - 8px);
    }
    .s_h-header .hamburger span:nth-of-type(2) {
        top: 50%;
    }
    .s_h-header .hamburger span:nth-of-type(3) {
        top: calc(50% + 8px);
    }
    .pbPage.open .s_h-header .hamburger span:nth-of-type(1) {
        transform: translateY(8px) rotate(45deg);
    }
    .pbPage.open .s_h-header .hamburger span:nth-of-type(2) {
        opacity: 0;
    }
    .pbPage.open .s_h-header .hamburger span:nth-of-type(3) {
        transform: translateY(-8px) rotate(-45deg);
    }
}

/*  image-map
========================================================================*/

.si_image-map {
    margin: 40px 0 60px;
}
.si_image-map .image-map-pc {
    max-width: 900px;
    margin: 0 auto;
}
@media print, screen and (min-width: 768px) {
    .si_image-map .image-map-sp {
        display: none;
    } 
}
@media screen and (max-width: 767px) {
    .si_image-map {
        margin: 16px 0 35px;
    }
    .si_image-map .image-map-pc {
        display: none;
    }  
}

/*  flow
========================================================================*/

.si_heading {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%)translateY(-50%);
    margin: 0 auto;
    min-width: 100px;
}
.si_heading h2 {
    font-size: 361.11%;
    font-family: 'Merriweather', 'noto-serif-jp', serif;
    font-weight: normal;
    color: #45312A;
    white-space: nowrap;
    text-align: center;
}
@media screen and (max-width: 767px) {
    .si_heading h2 {
        font-size: 173.6%;
        letter-spacing: 0;
    }
    .si_case.small .si_heading h2 {
        font-size: 180.6%;
        letter-spacing: 0.2em;
    }
}

/*  anchor
========================================================================*/
.pbAnchor a {
    display: block;
    padding-top: 150px;
    margin-top: -150px;
}
@media screen and (max-width: 767px) {
    .pbAnchor a {
        padding-top: 100px;
        margin-top: -100px;
    }
}

/*========================================================================

  case

========================================================================*/

.si_case {
    background-color: #F0F0EC;
    position: relative;
}
.si_case > div:not(.pb-handle) {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
    padding: 92px 0 100px;
}
.si_case.small {
    background-color: #E6E6E1;
}
.si_case.small > div:not(.pb-handle) {
    padding: 55px 0 120px;
}
@media screen and (max-width: 767px) {
    .si_case > div:not(.pb-handle) {
        margin: 0 auto;
        padding: 44px 0 60px;
    }
    .si_case.small > div:not(.pb-handle) {
        margin: 0 auto;
        padding: 48px 0 90px;
    }
}


/*  text
========================================================================*/

.si_case .text {
    text-align: center;
    font-size: 125%;
}
@media screen and (max-width: 767px) {
    .si_case .text {
        text-align: left;
    }
}

/*  button
========================================================================*/

.si_case-button:not(:first-child) {
    margin-top: 50px;
}
.si_case-button {
    text-align:center;
}
.si_case-button a {
    display: inline-block;
    width: 440px;
    max-width: 100%;
    padding: 16px 22px 16px 16px;
    background-color: #fff;
    font-size: 125%;
    color: #45312A;
    text-decoration: none;
    font-weight: bold;
    position: relative;
}
.si_case-button a:before,
.si_case-button a:after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.si_case-button a:before {
    content: url(/si-collaboration/assets/img/footer_contact_arrow_icon.jpg);
    right: 25px;
    margin-top: -3px;
    transition: all .3s;
}

@media (min-width: 768px) {
    .si_case-button a:hover:before {
        right: 20px;
    }
}

.si_case-button a:after {
    width: 24px;
    height: 24px;
    border: 1px solid #919081;
    right: 16px;
}
@media screen and (max-width: 767px) {
    .si_case-button a {
        display: inline-block;
        max-width: 100%;
        padding: 10px 60px 10px 16px;
        font-size: 111%;
    }
    .si_case-button:not(:first-child) {
        margin-top: 15px;
    }
}
/*  back
------------------------------------------------*/
.si_case-button.back {
    width: calc(100% - 40px);
    margin: 0 auto;
}
.si_case-button.back:not(:first-child) {
    margin-top: 60px;
}
.si_case-button.back a:before,
.si_case-button.back a:after {
    position: absolute;
    top: 50%;
    right: unset;
    left: 34px;
    transform: scale(-1, 1)translateY(-50%);
}
.si_case-button a:before {
    content: url(/si-collaboration/assets/img/footer_contact_arrow_icon.jpg);
    right: 25px;
    margin-top: -3px;
    transition: all .3s;
}
@media (min-width: 768px) {
    .si_case-button.back a:hover:before {left: 27px;right: unset;}
}
.si_case-button.back a:after {
    width: 24px;
    height: 24px;
    border: 1px solid #919081;
    right: auto;
    left: 25px;
}

@media screen and (max-width: 767px) {
    .si_case-button.back:not(:first-child) {
        margin-top: 40px;
    }
    .si_case-button.back a {
        padding: 18px 10px;
    }
}


/*  flow-box
========================================================================*/
.si_flow-box {
    margin: 20px 0 5px 30px;
}
.si_flow-box ul {
    display: flex;
    gap: 23px;
}
.si_flow-box li {
    background: #E6E6E1;
    font-size: 77.77%;
    padding: 35px 16px;
    font-weight: bold;
    border-top: 2px solid #242529;
    min-height: 120px;
    min-width: 116px;
    position: relative;
    display: flex;
    align-items: center;
}
.si_flow-box li:not(:last-child):before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 58px solid transparent;
    border-left: 22px solid #e6e6e2;
    border-bottom: 58px solid transparent;
    position: absolute;
    right: -22px;
    top: 2px;
}
.si_flow-box li:not(:last-child):after {
    content: "";
    display: inline-block;
    width: 65px;
    height: 2px;
    background: #333;
    right: -43px;
    top: 28px;
    position: absolute;
    transform: rotate(70deg);
}

@media screen and (max-width: 767px) {
    .si_flow-box {
        margin: 20px -27px 5px 0;
    }
    .si_flow-box ul {
        display: flex;
        flex-direction: column;
        gap: 40px;
        align-items: center;
    }
    .si_flow-box li {
        font-size: 97.22%;
        padding: 18px 16px 10px;
        min-height: 50px;
        min-width: 255px;
        display: flex;
        justify-content: center;
    }
    .si_flow-box li:last-child {
        padding: 18px 16px 18px;
    }
    .si_flow-box li:not(:last-child):before {
        border-top: 28px solid #e6e6e2;
        border-bottom: none;
        border-left: 127px solid transparent;
        border-right: 128px solid transparent;
        right: auto;
        left: 0;
        top: 100%;
    }
    .si_flow-box li:not(:last-child):after {
        content: none;
    }
}

/*========================================================================

  case-detail

========================================================================*/

/*  heading
========================================================================*/
.si_case-detail-heading {
    background-image: url(../../works/assets/img/case-detail_main.jpg);
    background-size: cover;
    background-position: center;
    padding: 174px 20px 118px;
}
.si_case-detail-heading .title {
    color: #fff;
    text-align: center;
    font-family: 'noto-serif-jp', serif;
    text-shadow: 0px 0px 30px #000000,0 0 30px #000;
}
.si_case-detail-heading .title h1 {
    margin: 0;
    font-size: 416.66%;
    letter-spacing: 6px;
    font-weight: normal;
}
@media screen and (max-width: 767px) {
    .si_case-detail-heading {
        background-image: url(../../works/assets/img/case-detail_main-sp.jpg);
        padding: 120px 20px 80px;
    }
    .si_case-detail-heading .title {
        color: #fff;
        text-align: center;
        font-family: 'noto-serif-jp', serif;
    }
    .si_case-detail-heading .title h1 {
        margin: 0;
        font-size: 222.22%;
        line-height: 1.43;
        letter-spacing: 3px;
    }
}

/*  section
========================================================================*/

.si_case-detail-section {
    background-color: #fff;
}
.si_case-detail-section > div:not(.pb-handle) {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
    padding: 90px 0 138px;
}
@media screen and (max-width: 767px) {
    .si_case-detail-section > div:not(.pb-handle) {
        padding: 46px 0 68px;
    }
}

/*  title
========================================================================*/

.si_case-detail-intro-title h2 {
    font-family: 'Merriweather','noto-serif-jp', serif;
    font-size: 222.22%;
    text-align: center;
    font-weight: normal;
    color: #333;
}
.si_case-detail-intro-title span {
    font-size: 125%;
    letter-spacing: 4px;
    vertical-align: baseline;
}
@media screen and (max-width: 767px) {
    .si_case-detail-intro-title h2 {
        font-size: 111.11%;
    }
    .si_case-detail-intro-title span {
        font-size: 125%;
        letter-spacing: 2px;
    }
}

/*  link
========================================================================*/

.si_case-detail-link:not(:first-child) {
    margin-top: 60px;
}
.si_case-detail-link ul {
    display: flex;
    justify-content: center;
    gap: 40px;
}
.si_case-detail-link a {
    width: 360px;
    display: inline-block;
    padding: 30px;
    border-top: 1px solid #9B9986;
    border-bottom: 3px solid #9B9986;
    font-family: 'noto-serif-jp', serif;
    font-size: 152.77%;
    color: #291A14;
    letter-spacing: 0.06em;
    position: relative;
    text-decoration:none;
    height: 95px;
    line-height: 1.5;
    text-align: center;
}
.si_case-detail-link a:after {
    content: url(/si-collaboration/assets/img/support-list-nav_icon.png);
    position: absolute;
    top: 50%;
    margin-top: -12px;
    right: 8px;
    transition: all .3s;
}
@media (min-width: 768px) {
    .si_case-detail-link a:hover:after {
        top: 50%;
        margin-top: -5px;
    }
    .si_case-detail-link a:hover {
        background-color: #e6e5df;
    }
}
@media screen and (max-width: 767px) {
    .si_case-detail-link:not(:first-child) {
        margin-top: 35px;
    }
    .si_case-detail-link ul {
        display: flex;
        justify-content: center;
        gap: 0;
        flex-direction: column;
    }
    .si_case-detail-link a {
        width: 100%;
        font-size: 124%;
    }
    .si_case-detail-link li:last-child a {
        border-top: none;
    }
}

/*  case-detail-list
========================================================================*/

.si_case-detail-list:not(:first-child) {
    margin-top: 50px;
}
@media screen and (max-width: 767px) {
    .si_case-detail-list:not(:first-child) {
        margin-top: 23px;
    }
}

/*  case-detail-title
========================================================================*/

.si_case-detail-title {
    margin-top: 90px;
}
.si_case-detail-title h2 {
    font-size: 361.11%;
    font-family: 'Merriweather', serif;
    letter-spacing: 0.2em;
    font-weight: normal;
    color: #45312A;
    text-align: center;
    line-height: 1.3;
}
@media screen and (max-width: 767px) {
    .si_case-detail-title {
        margin-top: 56px;
    }
    .si_case-detail-title h2 {
        font-size: 180.55%;

    }
}

/*  imagetext
========================================================================*/

.si_case-detail-imagetext:not(:first-child) {
    margin-top: 48px;
}
.si_case-detail-imagetext {
    padding-bottom: 37px;
    border-bottom: 1px solid #9B9986;
}
.si_case-detail-imagetext .image-box > div {
    display: flex;
    gap: 40px;
}
.si_case-detail-imagetext .image-box > div:after {
    display: none;
}
.si_case-detail-imagetext .image-box .image {
    width: 31%;
}
.si_case-detail-imagetext .image-box .image img {
    width: 100%;
}
.si_case-detail-imagetext .text-box .text {
    margin-top: 14px;
    font-size: 125%;
    line-height: 2;
}
.si_case-detail-imagetext .logo-box {
    margin-top: 20px;
}
.si_case-detail-imagetext .logo-box > div {
    display: flex;
    gap: 7px;
    align-items: center;
}
.si_case-detail-imagetext .logo-box .title {
    font-size: 125%;
    font-weight: bold;
    color: #45312A;
}
.si_case-detail-imagetext .logo-box .logo {
    min-width: 100px;
}
.si_case-detail-imagetext .logo-box .logo img {
    height: 40px;
}
@media screen and (max-width: 767px) {
    .si_case-detail-imagetext:not(:first-child) {
        margin-top: 40px;
    }
    .si_case-detail-imagetext {
        padding-bottom: 40px;
    }
    .si_case-detail-imagetext .image-box > div {
        display: flex;
        gap: 24px;
        flex-direction: column;
    }
    .si_case-detail-imagetext .image-box .image {
        width: 100%;
    }
    .si_case-detail-imagetext .logo-box > div {
        gap: 4px;
    }
    .si_case-detail-imagetext .logo-box .title {
        font-size: 111.11%;
    }
    .si_case-detail-imagetext .logo-box .logo img {
        height: 32px;
    }
    .si_case-detail-imagetext .text-box .text {
        margin-top: 19px;
        font-size: 111.11%;
    }
}

/*  more
------------------------------------------------*/

.si_case-detail-list .more {
    margin-top: 60px;
    text-align: center;
}
.si_case-detail-list .more button {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    width: 440px;
    padding: 15px 20px;
    border: 1px solid #9B9986;
    color: #45312A;
    font-size: 125%;
    font-weight: bold;
    background: #fff;
    cursor: pointer;
    position: relative;
    transition: all .3s;
}
@media (min-width: 768px) {
    .si_case-detail-list .more button:hover {
        opacity: 0.6;
    }
}
.si_case-detail-list .more button:after {
    content: url(/si-collaboration/assets/img/ic_accordion_open.png);
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 24px;
    display: inline-block;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 767px) {
    .si_case-detail-list .more {
        margin-top: 40px;
        text-align: center;
    }
    .si_case-detail-list .more button {
        width: 100%;
        padding: 18px 20px;
    }    
}

/*========================================================================

  case-detail-imagetext-voice

========================================================================*/

.si_case-detail-imagetext-voice:not(:first-child) {
    margin-top: 30px;
}
.si_case-detail-imagetext-voice > div {
    display: flex;
    justify-content: space-between;
    padding: 60px;
    background: #ffffff;
}
.si_case-detail-imagetext-voice > div:after {
    display: none;
}
.si_case-detail-imagetext-voice .image-box {
    width: 34.6%;
}
.si_case-detail-imagetext-voice .image-box .name {
    margin-top: 16px;
    font-weight: bold;
    color: #45312A;
    font-size: 125%;
}
.si_case-detail-imagetext-voice .image-box .logo-box {
    margin-top: 3px;
}
.si_case-detail-imagetext-voice .image-box .logo-box > div {
    display: flex;
    gap: 7px;
    align-items: center;
}
.si_case-detail-imagetext-voice .image-box .logo-box .title {
    font-size: 125%;
    font-weight: bold;
    color: #45312A;
}
.si_case-detail-imagetext-voice .image-box .logo-box .logo img {
    height: 40px;
}
.si_case-detail-imagetext-voice .text-box {
    width: 61.53%;
}
.si_case-detail-imagetext-voice .text-box .text {
    text-align: left;
    line-height: 2;
}
@media screen and (max-width: 767px) {
    .si_heading + .si_case-detail-imagetext-voice {
        margin-top: 0;
    }
    .si_case-detail-imagetext-voice {
        margin-top: 23px;
    }
    .si_case-detail-imagetext-voice > div {
        padding: 30px 20px;
        flex-direction: column;
    }
    .si_case-detail-imagetext-voice .image-box {
        width: 100%;
    }
    .si_case-detail-imagetext-voice .image-box .name {
        margin-top: 22px;
        font-size: 111%;
    }
    .si_case-detail-imagetext-voice .image-box .logo-box .title {
        font-size: 111%;
    }
    .si_case-detail-imagetext-voice .image-box .logo-box .logo img {
        height: auto;
        max-width: 159px;
    }
    .si_case-detail-imagetext-voice .text-box {
        width: 100%;
        margin-top: 11px;
    }
    .si_case-detail-imagetext-voice .text-box .text {
        font-size: 111.11%;
    }
}

.si_partner-map {
    position: relative;
    margin: 12px 0 33px;
}
.si_partner-map .partner-list a {
    position: absolute;
    display: block;
    transition: all .3s;
}
@media (min-width: 768px) {
    .si_partner-map .partner-list a:hover {
        background-color: #E6E5E0;
        mix-blend-mode: multiply;
    }
}
.si_partner-map .partner-list a.tsuchiyahome {
    width: 23%;
    height: 15%;
    top: 20%;
    right: 5%;
}
.si_partner-map .partner-list a.sekihokensetsu {
    width: 26%;
    height: 14%;
    top: 40%;
    right: 1.8%;
}
.si_partner-map .partner-list a.noble-home {
    width: 26%;
    height: 13%;
    top: 59%;
    right: 1.8%;
}
.si_partner-map .partner-list a.shoei-k {
    width: 19%;
    height: 15%;
    top: 79%;
    right: 8.8%;
}
.si_partner-map .partner-list a.income-house {
    width: 25%;
    height: 14%;
    top: 5%;
    left: 2%;
}
.si_partner-map .partner-list a.kanju {
    width: 21%;
    height: 14%;
    top: 24%;
    left: 2%;
}
.si_partner-map .partner-list a.totate-housing {
    width: 26%;
    height: 13%;
    top: 47.5%;
    left: 2%;
}
.si_partner-map .partner-list a.yuyuhome {
    width: 26%;
    height: 13%;
    top: 70%;
    left: 2%;
}

@media screen and (max-width: 767px) {
    .si_partner-map .partner-list a.tsuchiyahome {
        width: 29%;
        height: 15%;
        top: 34%;
        right: 3%;
    }
    .si_partner-map .partner-list a.sekihokensetsu {
        width: 33%;
        height: 14%;
        top: 51%;
        right: 1%;
    }
    .si_partner-map .partner-list a.noble-home {
        width: 36%;
        height: 15%;
        top: 72%;
        right: -0.2%;
    }
    .si_partner-map .partner-list a.shoei-k {
        width: 27%;
        height: 15%;
        top: 70%;
        right: 38%;
    }
    .si_partner-map .partner-list a.income-house {
        width: 40%;
        height: 13%;
        top: 3%;
        left: 0%;
    }
    .si_partner-map .partner-list a.kanju {
        width: 33%;
        height: 13%;
        top: 19%;
        left: 0%;
    }
    .si_partner-map .partner-list a.totate-housing {
        width: 32%;
        height: 13%;
        top: 37.5%;
        left: 1%;
    }
    .si_partner-map .partner-list a.yuyuhome {
        width: 32%;
        height: 15%;
        top: 71.5%;
        left: 1%;
    }
}

/*========================================================================

  si_works_main

========================================================================*/

.si_works-main-section {
  background-color: #fff;
}
.si_works-main-section > div {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
    padding: 70px 0 0;
}
@media screen and (max-width: 767px) {
    .si_works-main-section > div:not(.pb-handle) {
        padding: 37px 0 0;
    }
}
.si_works-intro {
    font-size: 125%;
    font-weight: normal;
    text-align: center;
    line-height: 2;
}
.si_works-intro span {
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .si_works-intro span.pc {
        display: none;
    }
    .si_works-intro [data-ruby] {
        position: relative;
    }
    .si_works-intro [data-ruby]::before {
        content: attr(data-ruby);
        position: absolute;
        top: 2em;
        left: -1em;
        margin: auto;
        font-size: 75%;
        width: 117%;
    }
}

/*  si_works-accordion
========================================================================*/

.si_works-intro + .si_works-accordion {
    margin-top: 80px;
}
.si_works-accordion {
    border-top: 1px solid #9B9986;
    border-bottom: 1px solid #9B9986;
    position: relative;
}
.si_works-accordion:last-child {
    border-top: none;
    border-bottom: 1px solid #9B9986;
}
.si_works-accordion .trigger {
    border:none;
    background: none;
    font-weight: bold;
    font-size: 125%;
    color: #333333;
    padding: 27px 15px;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: all .3s;
    font-family: "游ゴシック体", "YuGothic", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
.si_works-accordion .trigger:before,
.si_works-accordion .trigger:after {
    content: '';
    position: absolute;
    top: 50%;
    margin-top: -12px;
    right: 10px;
    transition: all .3s;
}
.si_works-accordion .trigger:after {
    content: url(/si-collaboration/assets/img/ic_accordion_open.png);
}
.si_works-accordion.active .trigger:after {
    content: url(/si-collaboration/assets/img/ic_accordion_close.png);
}
@media (min-width: 768px) {
   .si_works-accordion .trigger:hover {
        background-color: #fafaf9;
    }
}

@media screen and (max-width: 767px) {
    .si_works-intro {
        font-size: 111.11%;
        font-weight: normal;
        text-align: center;
        line-height: 2;
    }
    .si_works-intro + .si_works-accordion {
        margin-top: 63px;
    }
    .si_works-accordion {
        border-top: 1px solid #9B9986;
        border-bottom: 1px solid #9B9986;
    }
    .si_works-accordion:last-child {
        border-top: none;
        border-bottom: 1px solid #9B9986;
    }
    .si_works-accordion .trigger {
        border:none;
        background: none;
        font-weight: bold;
        font-size: 111.11%;
        padding: 27px 15px;
        width: 100%;
        text-align: left;
        cursor: pointer;
        font-family: "游ゴシック体", "YuGothic", "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    }
    .si_works-intro ruby {
        position: relative;
    }
    .si_works-intro rt {
        position: absolute;
        top: 3em;
        letter-spacing: 0.6em;
        left: 5px;
        width: 100%;
    }
    .si_works-intro .mt {
        margin-top: 15px;
        display: block;
    } 
}

/*  about
========================================================================*/

.si_works-about {
    max-width: 1040px;
    margin: 0 auto 40px;
}
.si_works-about .about_title {
    text-align: center;
    font-size: 152%;
    font-weight: normal;
    font-family: 'noto-serif-jp', serif;
}
.si_works-about .about_title span:first-child {
    color: #96847D;
}
.si_works-about .about_title span:last-child {
    color: #435F6C;
}
.si_works-about .about_subtitle {
    text-align: center;
    font-size: 125%;
    margin-top: 3px;
    line-height: 2;
}
.si_works-about .imagebox {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
}
.si_works-about .imagebox .image {
    width: 48.3%;
}
.si_works-about .about_text {
    margin-top: 25px;
    font-size: 125%;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .si_works-about {
        max-width: 1040px;
        margin: 0 auto 26px;
        padding: 0 45px 0 25px;
    }

.content.si_works-about {}
    .si_works-about .about_title {
        text-align: left;
        font-size: 125%;
        font-weight: normal;
        font-family: 'noto-serif-jp', serif;
    }
    .si_works-about .about_title span:first-child {
        color: #96847D;
    }
    .si_works-about .about_title span:last-child {
        color: #435F6C;
    }
    .si_works-about .about_subtitle {
        text-align: left;
        font-size: 111.11%;
        margin-top: 3px;
        line-height: 2;
    }
    .si_works-about .imagebox {
        margin-top: 21px;
        display: flex;
        justify-content: space-between;
        flex-direction: column;
        gap: 10px;
    }
    .si_works-about .imagebox .image {
        width: 100%;
    }
    .si_works-about .about_text {
        margin-top: 10px;
        font-size: 111.11%;
        text-align: left;
        line-height: 2;
    }
}

/*  about-panel
------------------------------------------------*/
.si_works-about .about-panel {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
}
.si_works-about .about-panel .box {
    width: 48.3%;
}
.si_works-about .about-panel .name {
    text-align: center;
    font-weight: bold;
    font-size: 111%;
    color: #fff;
    padding: 10px;
    letter-spacing: 0.06em;
}
.si_works-about .about-panel .name.sekisui {
    background-color: #96847D;
}
.si_works-about .about-panel .name.partner {
    background-color: #435F6C;
}
.si_works-about .about-panel .text-box {
    padding: 34px 40px 51px;
    background-color: #F4F3F2;
}
.si_works-about .about-panel .text-box .title {
    font-size: 138.8%;
    font-weight: bold;
    letter-spacing: 0.06em;
}
.si_works-about .about-panel .text-box ul.list {
    line-height: 2;
    margin-top: 7px;
    font-size: 125%;
    padding-left: 1em;
}
.si_works-about .about-panel .text-box ul.list li {
    position: relative;
    list-style: none;
}
.si_works-about .about-panel .text-box ul.list li::before {
    content: "";
    display: block;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #000;
    position: absolute;
    left: -10px;
    top: calc(1em - 1.5px);
}
@media screen and (max-width: 767px) {
    .si_works-about .about-panel {
        margin-top: 22px;
        display: flex;
        justify-content: space-between;
        flex-direction: column;
        gap: 16px;
    }
    .si_works-about .about-panel .box {
        width: 100%;
    }
    .si_works-about .about-panel .name {
        text-align: center;
        font-weight: bold;
        font-size: 111%;
        color: #fff;
        padding: 10px;
        letter-spacing: 0.6px;
    }
    .si_works-about .about-panel .name.sekisui {
        background-color: #96847D;
    }
    .si_works-about .about-panel .name.partner {
        background-color: #435F6C;
    }
    .si_works-about .about-panel .text-box {
        padding: 13px 16px 16px;
        background-color: #F4F3F2;
    }
    .si_works-about .about-panel .text-box .title {
        font-size: 111.11%;
        font-weight: bold;
        letter-spacing: 0.6px;
    }
    .si_works-about .about-panel .text-box ul.list {
        margin-top: 9px;
        font-size: 97.22%;
    }
    .si_works-about .about-panel .text-box ul.list li {
         line-height: 1.5;
         margin-top: 9px;
    }
    .si_works-about .about-panel .text-box ul.list li::before {
        top: calc(0.75em - 1.5px);
    }
}

/*  provide
========================================================================*/

.si_works-provide {
    max-width: 1040px;
    margin: 0 auto 30px;
}
.si_works-provide .provide-title {
    font-size: 152.777%
}
.si_works-provide .provide-title span {
    font-size: 90.9%;
    margin-right: 15px;
    letter-spacing: 2px;
    vertical-align: baseline;
}
.si_works-provide .provide-title + .provide-text {
    margin-top: 10px;
}
.si_works-provide .provide-text {
    font-size: 125%;
    margin-top: 35px;
    line-height: 2;
}
.si_works-provide .provide-note {
    font-size: 97.22%;
    margin-top: 8px;
}
ol.provide-list {
    font-size: 125%;
    line-height: 2;
}
 ol.provide-list li {
    list-style: none;
}
.si_works-provide .provide-image {
    margin-top: 25px;
}
@media screen and (max-width: 767px) {
    .si_works-provide {
        max-width: 1040px;
        margin: 0 auto 22px;
        padding: 0 45px 0 25px;
    }
    .si_works-provide .provide-title {
        font-size: 125%;
        list-style: none;
        list-style-position: outside;
        margin: 0;
        padding-left: 2em;
        position: relative;
    }
    .si_works-provide .provide-title span {
        font-size: 111.11%;
        letter-spacing: 2px;
        position: absolute;
        left: 0;
        margin: 0;
        top: -2px;
    }
    .si_works-provide .provide-title + .provide-text {
        margin-top: 18px;
    }
    .si_works-provide .provide-text {
        font-size: 111.11%;
        margin-top: 15px;
        line-height: 2;
    }
    .si_works-provide .provide-note {
        font-size: 83.33%;
        margin-top: 10px;
    }
    ol.provide-list  {
      position: relative;
      padding: 0;
      font-size: 111.11%;
      line-height: 2;
      margin-top: 10px;
    }
    ol.provide-list li  {
      list-style: none;
      list-style-position: outside;
      margin: 0;
      padding-left: 1.25em;
      margin-top: 10px;
    }
    ol.provide-list li span {
      position: absolute;
      left: 0;
      margin: 0;
    }
    .si_works-provide .provide-image {
        margin-top: 17px;
    } 
}

/*  provide-panel
------------------------------------------------*/
.si_works-provide .provide-panel {
    margin-top: 48px;
    display: flex;
    justify-content: space-between;
    background-image:  url(../img/background-image.jpg);
}
.si_works-provide .provide-panel .box {
    width: 48.07%;
}
.si_works-provide .provide-panel .box .name {
    text-align: center;
    font-weight: bold;
    font-size: 104.16%;
    color: #fff;
    padding: 7px;
    letter-spacing: 0.06em;
}
.si_works-provide .provide-panel .box.before .name {
    background-color: #9B9986;
}
.si_works-provide .provide-panel .box.after .name {
    background-color: #103141;
}
.si_works-provide .provide-panel .box .inner {
    padding: 33px 40px 40px;
    box-shadow: 0 0 12px #00000016;
    position: relative;
}
.si_works-provide .provide-panel .box.after .inner {
    padding: 15px 40px 40px;
}
.si_works-provide .provide-panel .box.before .inner:after {
    content: url(/si-collaboration/assets/img/ic_arrow.jpg);
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: -34px;
}
.si_works-provide .provide-panel .text {
    font-size: 125%;
    line-height: 2;
}
.si_works-provide .provide-panel .box .image {
    margin-top: 34px;
}
.si_works-provide .provide-panel .box.after .image {
    margin-top: 15px;
}
@media screen and (max-width: 767px) {
    .si_works-provide .provide-panel {
        margin-top: 22px;
        display: flex;
        justify-content: space-between;
        flex-direction: column;
        gap: 53px;
    }
    .si_works-provide .provide-panel .box {
        width: 100%;
    }
    .si_works-provide .provide-panel .box .name {
        text-align: center;
        font-weight: bold;
        font-size: 104.16%;
        color: #fff;
        padding: 6px;
        letter-spacing: 0.6px;
    }
    .si_works-provide .provide-panel .box.before .name {
        background-color: #9B9986;
    }
    .si_works-provide .provide-panel .box.after .name {
        background-color: #103141;
    }
    .si_works-provide .provide-panel .box .inner {
        padding: 16px;
        box-shadow: 0 0 12px #00000016;
    }
    .si_works-provide .provide-panel .box.after .inner {
        padding: 16px;
    }
    .si_works-provide .provide-panel .box.before .inner:after {
        content: url(/si-collaboration/assets/img/ic_arrow_sp.png);
            position: absolute;
            top: 103%;
            transform: translateY(0) translateX(50%);
            right: 50%;
    }
    .si_works-provide .provide-panel .text {
        font-size: 97.22%;
        line-height: 1.5;
    }
    .si_works-provide .provide-panel .box .image {
        margin-top: 16px;
    }
    .si_works-provide .provide-panel .box.after .image {
        margin-top: 15px;
    }
}

/*  point2 point3
------------------------------------------------*/
.si_works-provide .point2,
.si_works-provide .point3 {
    margin-top: 32px;
}
@media screen and (max-width: 767px) {
    .si_works-provide .point2,
    .si_works-provide .point3 {
        margin-top: 21px;
    } 
}

/*  provide-imagebox
------------------------------------------------*/

.si_works-provide .provide-imagebox {
    display: flex;
    justify-content: space-between;
    margin-top: 18px;
}
.si_works-provide .provide-imagebox .image {
    width: 48.07%;
}
@media screen and (max-width: 767px) {
   .si_works-provide .provide-imagebox {
        display: flex;
        justify-content: space-between;
        margin-top: 18px;
        flex-direction: column;
        gap: 8px 0;
    }
    .si_works-provide .provide-imagebox .image {
        width: 100%;
    } 
}

/*  provide-textimage
------------------------------------------------*/
.si_works-provide .provide-textimage {
    display: flex;
    justify-content: space-between;
    margin-top: 25px;
    align-items: center;
}
.si_works-provide .provide-textimage .text-box {
    width: 48.46%;
}
.si_works-provide .provide-textimage .image-box {
    width: 48.07%;
}
.si_works-provide .provide-textimage .text-box .title {
    font-size: 125%;
}
.si_works-provide .provide-textimage .text-box .text {
    font-size: 125%;
    margin-top: 8px;
    line-height: 2;
}
.si_works-provide .provide-textimage .image-box .note {
    font-size: 97.22%;
    margin-top: 15px;
    line-height: 2;
}
@media screen and (max-width: 767px) {
    .si_works-provide .provide-textimage {
        display: flex;
        justify-content: space-between;
        margin-top: 25px;
        align-items: center;
        flex-direction: column;
        gap: 20px;
    }
    .si_works-provide .provide-textimage .text-box {
        width: 100%;
    }
    .si_works-provide .provide-textimage .image-box {
        width: 100%;
    }
    .si_works-provide .provide-textimage .text-box .title {
        font-size: 125%;
    }
    .si_works-provide .provide-textimage .text-box .text {
        font-size: 111.11%;
        margin-top: 8px;
        line-height: 2;
    }
    .si_works-provide .provide-textimage .image-box .note {
        font-size: 83.33%;
        margin-top: 11px;
        line-height: 1.75;
    }
}

/*  si_works-partnerList
========================================================================*/

.si_works-partnerList {
  background-color: #F0F0EC;
  position: relative;
}
.si_works-partnerList > div {
    padding: 86px 0 120px;
}
.si_works-partnerList .partnerList-inner {
    width: calc(100% - 40px);
    max-width: 1160px;
    margin: 0 auto;
    padding: 55px 60px;
    background-color: #fff;
}
.si_partnerList-heading {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%)translateY(-50%);
    margin: 0 auto;
    min-width: 100px;
}
h2.si_partnerList-heading {
    font-size: 361.11%;
    font-family: 'Merriweather', 'noto-serif-jp', serif;
    font-weight: normal;
    color: #45312A;
    white-space: nowrap;
    text-align: center;
}
.si_works-partnerList .partnerList-text {
    font-size: 125%;
    text-align: center;
}
.si_works-partnerList .si_partner-map {
    max-width: 900px;
    margin: 30px auto 0;
}
@media screen and (max-width: 767px) {
    .si_works-partnerList > div {
        padding: 71px 0 50px;
    }
    .si_works-partnerList .partnerList-inner {
        padding: 28px 20px;
    }
    h2.si_partnerList-heading {
        font-size: 180.6%;
        letter-spacing: 0.2em;
        line-height: 1.42;
    }
    .si_works-partnerList .partnerList-text {
        font-size: 111.11%;
        text-align: left;
    }
    .si_works-partnerList .si_partner-map {
        margin: 23px auto 0;
    }
}

/*  si_partner-list-table
------------------------------------------------*/
.si_partner-list-table-box {
    margin-top: 70px;
}
.si_partner-list-table-box .title {
    font-size: 166.66%
}
.si_partner-list-table {
  border-collapse: collapse;
  table-layout: fixed;
  width: 100%;
  text-align: center;
  border: none;
  margin-top: 15px;
}
.si_partner-list-table th,
.si_partner-list-table td {
  border: 1px solid #9B9986;
  border-left: none;
  border-right: none;
  padding: 1em;
  text-align: left;
  font-size: 125%;
  padding: 11px 20px;
}
.si_partner-list-table thead th {
  background-color: #103141;
  color: #fff;
  border: 2px solid #103141;
  font-size: 125%;
  padding: 5px 20px;
}
@media screen and (max-width: 767px) {
    .si_partner-list-table-box {
        margin-top: 38px;
    }
    .si_partner-list-table-box .title {
        font-size: 125%;
    }
    .si_partner-list-table {
      border-collapse: collapse;
      table-layout: fixed;
      width: 100%;
      text-align: center;
      border: none;
      margin-top: 15px;
    }
    .si_partner-list-table th,
    .si_partner-list-table td {
      padding: 1em;
      text-align: left;
      font-size: 83.33%;
      padding: 11px 7px;
    }
    .si_partner-list-table thead th {
      font-size: 83.33%;
      padding: 6px 7px;
    }
    .si_partner-list-table thead th:first-child {
      width:58.5.5%;
    }
    .si_partner-list-table thead th:last-child {
      width:41.5%;
    }
}

/*========================================================================

  20260622

========================================================================*/

/*  si_works-about
========================================================================*/

.si_works-about .about-note {
    font-size: 97.22%;
    margin-top: 8px;
}

@media screen and (max-width: 767px) {
    .si_works-about .about-note {
        font-size: 83.33%;
        margin-top: 10px;
    }
}

/*  c_image-text
========================================================================*/

.c_image-text .subtitle:not(:first-child) {
    margin-top: 5px;
}
.c_image-text .subtitle {
    font-size: 138.88%;
    line-height: 1.5;
}

@media screen and (max-width: 767px) {
    .c_image-text .subtitle {
        font-size: 124%;
    }
}