@font-face {
    font-family: 'DIN';
    src: url("/assets/fonts/DIN.ttf") format("truetype"),
    url("/assets/fonts/DIN.eot") format("embedded-opentype"),
    url("/assets/fonts/DIN.woff") format("woff");
}



/* YouTubeコンテンツエリア */
.yt-container{
    background-color: #fff; 
    border-radius: 5px;
}

.soc-yt {
    position: relative;
}

.soc-yt iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

.yt-container p {
    font-weight: 500;
    margin: 8px 0;
}

@media screen and  (min-width: 751px) {
    .yt-container {
        padding-bottom: 85px;
    }

    .soc-yt {
        width: 50%;
        padding-top: 28.125%;
        margin: 85px auto 0;
    }

    .yt-container p {
        font-size: 24px;
    }
}

@media screen and (max-width: 750px){
    .yt-container {
        padding-bottom: 60px;
    }

    .soc-yt {
        width: 80%;
        padding-top: 45%;
        margin: 60px auto 0;
    }

    .yt-container p {
        font-size: 18px;
    }
}
/*header*/
.site-header, .site-main, .site-sp-menu, .site-footer, body {
    font-family: 'YakuHanJP_Noto', 'Noto Sans JP', sans-serif;
    color: #333;
}

.site-header .gnav .con ul .en {
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-weight: 500;
    margin-top: 10px;
}

/*header*/


/*style.cssから*/

.site-header {
  position: relative
}

.site-header, .site-main, .site-sp-menu, .site-footer, body {
    font-family: 'YakuHanJP_Noto', 'Noto Sans JP', sans-serif;
}
.site-header .texts{
    color:#333;
}

.site-header .gnav {
  position: absolute;
  left: 0;
  z-index: 500;
  margin: 0;
  padding: 0;
  width: 100%;
  background: rgba(255, 255, 255, .8)
}

.site-header .gnav .logo {
  margin: 0;
  padding: 0
}

.site-header .gnav .logo img {
  width: 100%;
  height: auto
}

.site-header .gnav .logo a {
  display: block;
  height: 100%;
  line-height: 0
}

.site-header .gnav ul {
  margin: 0;
  padding: 0;
  list-style: none
}

.site-header .gnav ul a {
  position: relative;
  color: #333
}

.site-header .texts {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  background: #fff
}

.site-header .texts:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: #e9e9e9
}

.site-header .texts li {
  line-height: 1.2
}

.site-header .texts li+li {
  border-left: 1px solid #999
}

.site-header .contact {
  -webkit-transform: translateZ(1000px);
  transform: translateZ(1000px);
  margin: 0;
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 100
}

.site-header .contact a {
  display: block;
  color: #fff
}

.site-header .contact .inquiry a {
  background: #006633
}

.site-header .contact .request a {
  background: #018257
}

.site-header .contact .demo a {
  background: #16a6b4
}

.site-header .contact .partner a {
  background: #0594a9
}

.site-header .contact .tel a {
  background: #fff;
  color: #006633
}

.site-header .contact .fb a {
  background: #3b5998
}

.site-header .contact .ig a {
  background: #262626
}

.icon-emergency:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(/assets/img/common/icn_head_phone.svg) no-repeat center / contain;
}
.icon-headset:before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(/assets/img/common/icn_head_mail.svg) no-repeat center / contain;
}


@media (min-width:751px) {
  [type=button], [type=reset], [type=submit], button {
    cursor: pointer
  }
  a:hover {
    text-decoration: underline
  }
  .only-sp {
    display: none!important
  }
  .site-header {
    padding-bottom: 92px
  }
  .site-header .gnav {
    top: 48px
  }
  .site-header .gnav .con {
    position: relative;
    width: calc(100% - 12vw);
    min-width: 1120px;
    margin: 0 6vw;
  }
  .site-header .gnav .logo {
    width: 220px;
    height: 92px
  }
  .site-header .gnav .logo a {
    padding-top: 30px;
    -webkit-transition: opacity .26s cubic-bezier(.25, .46, .45, .94);
    transition: opacity .26s cubic-bezier(.25, .46, .45, .94)
  }
  .site-header .gnav .logo a:hover {
    opacity: .6
  }
  .site-header .gnav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    height: 92px
  }
  .site-header .gnav ul a {
    display: block;
    height: 100%;
    padding: 30px 16px 0;
    line-height: 1;
    text-align: center;
    font-weight: 700;
    -webkit-transition: background-color .26s cubic-bezier(.25, .46, .45, .94), color .26s cubic-bezier(.25, .46, .45, .94);
    transition: background-color .26s cubic-bezier(.25, .46, .45, .94), color .26s cubic-bezier(.25, .46, .45, .94)
  }
  .site-header .gnav ul a:hover {
    text-decoration: none;
    background-color: #000;
    color: #fff
  }
  .site-header .gnav ul span {
    display: block
  }
  .site-header .gnav ul .en {
    font-size: 1.4rem
  }
  .site-header .gnav ul .ja {
display:none!important;
    margin-top: 12px;
    font-size: 1.2rem
  }
  .site-header .gnav ul>li .sub {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity .26s cubic-bezier(.25, .46, .45, .94), visibility .26s cubic-bezier(.25, .46, .45, .94);
    transition: opacity .26s cubic-bezier(.25, .46, .45, .94), visibility .26s cubic-bezier(.25, .46, .45, .94)
  }
  .site-header .gnav ul>li:hover .sub {
    visibility: visible;
    opacity: 1
  }
  .site-header .gnav .sub {
    position: fixed;
    top: 140px;
    left: 0;
    width: 100%;
    padding: 24px 0;
    background: #f5f5f5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: auto
  }
  .site-header .gnav .sub li {
    border-right: 1px solid #ccc
  }
  .site-header .gnav .sub li:first-child {
    border-left: 1px solid #ccc
  }
  .site-header .gnav .sub a {
    padding: 0 28px;
    line-height: 3;
    font-weight: 400;
    font-size: 1.2rem
  }
  .site-header .gnav .sub a:hover {
    background-color: transparent;
    color: #006633
  }
  .site-header .texts {
    height: 48px;
    padding: 12px 0 12px 24px
  }
  .site-header .texts li {
    font-size: 1.4rem
  }
  .site-header .texts li+li {
    margin-left: 12px;
    padding-left: 12px
  }
  .is-scroll .site-header .emergency {
    position: absolute;
    top: calc(100% - 8px);
    left: 0;
  }
  .is-scroll .site-header .emergency .icon-emergency:before {
    width: 26px;
    height: 26px;
  }
  .is-scroll .site-header .contact .icon-headset:before {
    width: 26px;
    height: 26px;
  }

}

@media (max-width:750px) {
  .site-header .texts {
    height: 7.6vw;
    padding: 1.46667vw 4.26667vw
  }
  .site-header .texts li {
    font-size: 2.7vw
  }
  .site-header .texts li+li {
    margin-left: 2vw;
    padding-left: 2vw
  }
  .site-header .contact .icon-headset:before {
    width: 5.48vw;
    height: 5.48vw;
  }
  .site-header .emergency {
    order: 4;
  }
  .site-header .emergency .icon-emergency:before {
    width: 5.48vw;
    height: 5.48vw;
  }
}






/*lcm3.cssから*/

.gnav {
    border-bottom: 1px solid #e7e7e7;
}

.is-scroll .site-header .gnav .sub {
    top: 92px
}


/*パンくず*/
.mod-breadcrumbs {
    background: #fff;
}

.mod-breadcrumbs ol {
  margin: 0 auto;
  padding: 0;
  list-style: none
}

.mod-breadcrumbs ol li {
  display: inline-block;
  vertical-align: middle
}

.mod-breadcrumbs ol li+li:before {
  content: ">";
  margin: 0 .2em
}

.mod-breadcrumbs ol li:last-child {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis
}

.mod-breadcrumbs ol a {
  color: #000
}
@media (min-width:751px) {
  .mod-breadcrumbs {
    padding: 11px 0
  }
  .mod-breadcrumbs ol {
    width:calc(100% - 12vw);
    min-width: 1120px;   
  }
  .mod-breadcrumbs ol li:last-child {
    width: 60em
  }
  .mod-breadcrumbs ol a {
    -webkit-transition: color .26s cubic-bezier(.25, .46, .45, .94);
    transition: color .26s cubic-bezier(.25, .46, .45, .94)
  }
  .mod-breadcrumbs ol a:hover {
    color: #006633;
    text-decoration: none
  }

}

@media (max-width:750px) {

  .mod-breadcrumbs {
    padding: 2.13333vw 4.26667vw;
    font-size: 2.8vw
  }
  .mod-breadcrumbs li:last-child {
    /*width: 20em*/
  }
  .site-header{
    padding-bottom: 16vw;
  }
}






.site-header .contact .emergency a {
    background:#ff0000;
}

.site-header .contact .inquiry a, .mod-contact li.inquiry a {
    background:#1e5191;
}

.site-header .contact .request a, .mod-contact li.request a {
    background:#2c68a3;
}

.site-header .contact .demo a, .mod-contact li.demo a {
    background:#478bbd;
}

.site-header .contact .partner a{
    background:#3b80b6;
}

.site-header .gnav ul a:hover, .elm-btn:hover, .site-header .contact .inquiry a:hover, .site-header .contact .request a:hover, .site-header .contact .demo a:hover, .site-header .contact .partner a:hover {
    background:#333;
}

.site-main.home .contents-links ul a:hover {
    background:#e8f1f6;
    color: #333;
}

.site-main.home .contents-links ul a:hover .ttl .en {
    color: #1e519b
}

.new-label {
    color: #fff;
    background-color: #002244;
}

@media (min-width: 751px) { 

    .new-label {
        position: absolute;
        top: 13px;
        right: 15px;
        font-size: 11px;
        font-weight: 400;
        padding: 1px 10px;
    }
    .site-header .gnav ul .ja {
        font-size: 8.5pt;
        font-weight: normal;
    }

    .site-header .gnav .sub a:hover {
        color: #1e5191;
    }

    .site-header .gnav ul li.active>a:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 20px;
    width: calc(100% - 40px);
    height: 6px;
    background: #002244!important;
  }
  .site-header .gnav ul li.active a:after{
        background: none;
    }


    .mod-contact li.inquiry a:hover, .mod-contact li.request a:hover, .mod-contact li.demo a:hover {
        background:#333;
    }

    .mod-externals li a:hover .name, .mod-externals li a:hover .txt {
        color: #1e5191;
    }
}

@media screen and (max-width: 750px) {
  .only-pc {
    display: none!important
  }
    .lcm-new {
        padding: 0 10px;
        margin: 0 10px;
        background-color: #F12A2A;
    }
}

.mod-contact p a{
    display: block;
    text-align: center;
    background: #fff;
    border: 1px solid #3a6ca1;
    color: #3a6ca1; 
}

.site-header, .site-main, .site-sp-menu, .site-footer, body {
    font-family: 'YakuHanJP_Noto', 'Noto Sans JP', sans-serif;
}

.site-header .gnav .con ul .en {
    font-family: 'Roboto', 'Noto Sans JP', sans-serif;
    font-weight: 500;
    margin-top: 10px;
}

.site-header .gnav .con ul .ja {
    margin-top: 7px;
}

.site-header .gnav ul a, .mod-externals li a, .mod-casestudy .ttl .name, .mod-casestudy .con .con-ttl, .mod-casestudy .con p, .site-main.home .contents-links ul a {
    color: #333;
}

















.din {
    font-family: 'DIN';
    font-weight: normal;
}

.center {
    text-align: center;
}

.text-white {
    color: #fff;
}

.text-navy {
    color: #002C5B;
}

.bg-gray {
    background: #f2f2f2;
}
.bar-gray{
    display: block;
    height: 80px!important;
}

.border-bottom {
    border-bottom: 1px solid rgba(0,44,91,0.2);
}

.soc-txt {
    font-size: 14px;
    line-height: 25px;
}

.soc-pagettl {
    text-align: center;
    background-repeat:  no-repeat;         
    background-position:center center;
    background-size: cover;
}

.soc-pagettl h1 span {
    display: block;
}

.subttl {
    margin: 0;
}

.soc-h2 {
    text-align: center;
    font-weight: 400;
}



.soc-pagettl .mod-categories li {
    background: #fff;
    opacity: .95;
}

.soc-point, .soc-point-last {
    position: relative;
}

.point-content {
    background-color: #fff;
}

.point-ttl {
    color: #002C5B;
}

.point-txt-ttl {
    font-weight: 500;
}

.point-list, .s-point-list {
    list-style-type: none;
    list-style-position: outside;
    text-align:center;
    padding-left: 0;
    margin: 0;
}

.point-list li, .s-point-list li {
    padding: 12px 0;
    margin-top: 10px;
}

.point-btn a {
    color: #002c5b;
    border: 1px solid rgba(0,44,91,0.2);
    background: #fff;
}

.btn-white a{
    color: #002c5b!important;
    border: 1px solid rgba(0,44,91,0.2)!important;
    background: #fff!important;
}
.btn-white a:hover{
text-decoration: none;
    background: #e8f1f6!important;
}

.point-btn a:hover {
    text-decoration: none;
    background: #e8f1f6;
}

.soc-btn {
    text-align:center;
}

.soc-btn p {
    margin-top: 0;
}

.soc-btn a {
    color: #fff;
    background: #002c5b;
}

.soc-btn a:hover {
    background: #1f85bc;
    text-decoration: none;
}

/*btn*/
.btn_dark{
    background: #002c5b;
    text-align: center;
    width: 430px;
    margin: 0 auto;
}
.btn_dark a{
    color: #fff;
    font-size: 24px;
    line-height: 48px;
    display: block;
    text-decoration: none;
    transition: background .26s cubic-bezier(.25,.46,.45,.94);
}
.btn_dark a:hover{
    background: #1f85bc;
}

.btn_light{
    background: #fff;
    text-align: center;
    width: 430px;
    margin: 0 auto;
    border: 1px solid rgba(0,44,91,0.2);
}
.btn_light a{
    color: #002c5b;
    font-size: 24px;
    line-height: 48px;
    display: block;
    text-decoration: none;
    transition: background .26s cubic-bezier(.25,.46,.45,.94);
}
.btn_light a:hover{
    background: #def1f6;
}
.hover-opa {
    transition: opacity 0.2s;
}
.hover-opa:hover{
    opacity: .6;
}



.comment-txt-name {
    font-weight: 500;
}

.comment-txt .soc-txt {
    margin-bottom: 0;
}





@media (min-width: 751px) { 
    .point-btn a, .soc-btn a {
        transition: background .26s cubic-bezier(.25,.46,.45,.94);
    }

    .soc-sec1, .soc-sec2, .soc-sec3, .soc-sec4, .soc-sec5, .soc-sec6, .soc-sec7, .soc-sec8, .soc-sec {
        padding-bottom: 85px;
    }

    .soc-pagettl {
        padding-bottom: 85px;
    }

    .soc-pagettl div {
        margin-bottom: 50px;
    }
    .font-s22{
        font-size: 22px;
    }

    .ttl-s {
        font-size: 16px;
    }
    .ttl-m {
        font-size: 25px;
    }

    .ttl-mm {
        font-size: 40px;
    }

    .ttl-l {
        font-size: 54px;
    }
    .ttl-ll {
        font-size: 64px;
    }

    .subttl {
        font-size: 26px;
        line-height: 40px;
    }

    .soc-h2 {
        font-size: 26px;
    }
    .soc-h3 {
        font-size: 22px;
    }

    .img-p {
        padding: 30px 0;
    }

    .soc-point {
        height: 768.59px;
    }

    .soc-point-last {
        height: 698.59px;
    }

    .point-content {
        height: 638.59px;
    }

    .point-ttl {
        position: absolute;
        font-size: 40px;
        width: 40%;
        top: 0;
    }

    .point-ttl p {
        margin-top: 28px;
    }

    .point-txt-ttl {
        font-size: 24px;
        line-height: 40px;
    }
    .point-txt-ttl-sub{
        font-size: 0.7em;
    }

    .point-txt {
        position: absolute;
        width: 40%;
        top: 90px;
    }

    .point-img {
        position: absolute;
        width: 57%;
        top: 0;
        height: 536.36px;
    }

    .point-list {
        font-size: 16px;
    }

    .point-logo {
        position: absolute;
        font-size: 39px;
        width: 40%;
        bottom: 35px;        
    }

    .point-list-annotation {
        position: absolute;
        bottom: 70px;
        left: 30px;
        width: 10%;
        font-size: 12px;
    }

    .point-btn {
        position: absolute;
        bottom: 33px;
        left: 0;
        width: 100%;
        text-align: center;
    }
    .point-btn-2{
      bottom: -33px!important;
    }

    .btn-wide{
        bottom:0;
        position: relative;
        margin:60px 0;
    }

    .bg-right, .bg-left {
        position: absolute;
        top: 75px;
        width: calc(100% - ( 100% - 960px ) / 2);
        width: -webkit-calc(100% - ( 100% - 960px ) / 2);
        height: 624px;
    }

    .area-gray-left{
        height: 80px;
        background: #f2f2f2;
        width: calc(100% - (50% - 480px));
        width: -webkit-calc(100% - (50% - 480px));
    }

    .gray-wrap{
        background: #f2f2f2;
        width: calc(100% - ( 100% - 1120px ) / 2);
        width: -webkit-calc(100% - ( 100% - 1120px ) / 2);
        padding-top:60px;
        padding-bottom: 40px;
        margin-bottom:80px!important;
    }
    .gray-wrap-left{
        padding-left:calc((100% - 1120px)/2);
        padding-left:-webkit-calc((100% - 1120px)/2);
    }
    .gray-wrap-right{
        margin: 0 0 0 auto;
        padding-right:calc((100% - 1120px)/2);
        padding-right:-webkit-calc((100% - 1120px)/2);
    }

    .bg-right, .img-right .point-img {
        right: 0;
    }

    .bg-left, .img-left .point-img {
        left: 0;
    }

    .img-left .point-ttl, .img-left .point-txt, .img-left .point-logo {
        right: 0;
        padding-right: 3%;
    }

    .img-right .point-ttl, .img-right .point-txt, .img-right .point-logo {
        left: 0;
        padding-left: 3%;
    }

    .point-btn a {
        font-size: 20px;
        padding: 8px 60px;
    }

    .btn-wide a {
      width: 100%;
      display: inline-block;
      font-size: 24px;
      padding: 24px 60px;
    }

    .soc-concept {
        height: 638.57px !important;
    }

    .soc-concept .point-content {
        background-image: url(https://www.psc-securities.com/files/02-sec1.jpg);
        background-size:  cover;  
        color: #fff;
    }

    .soc-concept .point-content .point-ttl {
        font-size: 50px;
        font-weight: 400;
        top: 30px;
    }

    .soc-concept .point-content .point-txt {
        top: 100px;
        padding-right: 8%;
    }

    .soc-concept .point-content .point-txt .soc-txt {
        font-size: 16px;
        line-height: 29px;
    }

    .s-point {
        display: flex;
        flex-wrap:wrap;
        padding-bottom: 4%;
        margin-bottom: 85px;
    }

    .flex-wrapper {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        flex-wrap:wrap;
    }
    .flex{
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .flex >div{
        width: 100%;
    }

    .flex2col{
        width: calc(100% / 2);
    }
    .gap20 > .flex2col{
        width: calc(100% / 2 - 10px);
    }

    .flex3col{
        width: calc(100% / 3);
    }
    .gap60 > .flex3col{
        width: calc(100% / 3 - 40px);
    }
    .gap20 > .flex3col{
        width: calc(100% / 3);
    }
    .gap15{
        gap: 0 15px;
    }
    .gap20{
        gap: 0 20px;
    }
    .gap60{
        gap: 0 60px;
    }


    .div2-left, .div2-right {
        /*margin: 2% 0;*/
        width: 47.5%;
    }

    .div3-left, .div3-center, .div3-right {
        /*margin: 2% 0;*/
        width: 30%;
    }

    .div3-left2, .div3-right2 {
        /*margin: 2% 0;*/
        width: 65%;
    }

    .div2-left, .div3-left, .div3-center, .div3-left2 {
        margin-right: 5%;
    }

    .div3-left2 .s-point {
        padding-bottom: 0;
        margin-bottom: 0;
    }

    .div3-left2 .s-point .div2-left, .div3-left2 .s-point .div2-right {
        width: 46.155%;
        margin-top: 0;
        margin-bottom: 0;
    }

    .div3-left2 .s-point .div2-left {
        margin-right: 7.692%;
    }

    .div2-left .point-list li, .div2-right .point-list li {
        margin-top: 0;
    }
    .img_smc{
        width: 547px;
        right: 0;
        position: absolute;
    }

    .soc-btn {
        margin-top: 60px;
    }

    .soc-btn p {
        font-size: 24px;
        line-height: 14px;
    }

    .soc-btn a {
        font-size: 24px;
        padding: 10px 100px;
    }

    .soc-comment-content {
        height: 538.59px;
        margin-top: 85px;
    }

    .comment-img {
        position: absolute;
        width: 57%;
        top: 0;
        left: 0;
    }

    .comment-txt {
        position: absolute;
        width: 40%;
        bottom: 0;
        right: 0;
    }

    .comment-txt-name {
        font-size: 24px;
        line-height: 40px;
    }
}

@media screen and (max-width: 750px) {
    .soc-sec1, .soc-sec2, .soc-sec3, .soc-sec4, .soc-sec5, .soc-sec6, .soc-sec7, .soc-sec8, .soc-sec {
        padding-bottom: 15vw;
    }

    .soc-pagettl div {
        margin-bottom: 6vw;
    }

    .ttl-s {
        font-size: 3vw;
    }

    .ttl-l {
        font-size: 10vw;
    }

    .subttl {
        font-size: 3.5vw;
        line-height: 1.75;
    }

    .soc-txt {
        font-size: 3.5vw;
    }

    .soc-h2 {
        font-size: 4.25vw;
    }

    .soc-pagettl {
        padding-bottom: 15vw;
    }

    .img-p {
        padding: 20px 0;
    }

    .soc-point {
        margin-bottom: calc(15vw + 15vw);
    }

    .soc-point-last {
        margin-bottom: 15vw;
    }

    .point-content {
        padding: 0 3% 3%;
        margin: 0 8.53333vw;
    }

    .point-img {
        height: auto;
    }

    .point-ttl {
        font-size: 8vw;
    }


    .point-txt p, .comment-txt p {
        margin: 2% 0 0;
    }

    .point-txt .soc-txt, .comment-txt .soc-txt {
        margin: 1% 0 3%;
    }

    .point-txt-ttl {
        font-size: 20px;
        line-height: 34px;
    }
    .point-txt-ttl-sub{
        font-size: 0.4em;
    }
    .point-ttl p {
        margin: 0;
    }

    .point-list {
        font-size: 14px;
    }

    .point-list-annotation {
        text-align: left;
        font-size: 11px;
    }

    .point-list-annotation p {
        margin-top: 0;
    }

    .point-btn {
        text-align: center;
        margin: 6vw 0 12vw;
    }

    .point-btn a {
        font-size: 14px;
        padding: 10px 20%;
    }
  .btn-wide{
    margin: 8vw 0 8vw;
  }
  .btn-wide-2{
    margin: 0vw 0 12vw!important;
  }
    .btn-wide a {
      width: 100%;
      display: inline-block;
      font-size: 4vw;
      padding:16px 0; 
    }

    .bg-right, .bg-left {
        position: absolute;
        top: 15vw;
        width: calc(100% - 8.53333vw);
        height: 100%;
    }

    .bg-right {
        left: 8.53333vw;
    }

    .bg-left {
        right: 8.53333vw;
    }

    .soc-btn {
        margin-top: 15vw;
    }

    .soc-btn p {
        font-size: 14px;
        line-height: 1;
    }

    .soc-btn a {
        font-size: 14px;
        padding: 10px 20%;
    }



    .soc-comment-content {
        margin-top: 25vw;
    }

    .comment-txt-name {
        font-size: 20px;
        line-height: 34px;
    }


    /*3D SOC CONCEPT*/
        .soc-concept-sp {
    }

    .soc-concept-sp .point-content {
        background-image: url(https://www.psc-securities.com/files/02-sec1_sp.jpg);
        background-size:  cover;  
        color: #fff;
                height: 210vw !important;

    }

    .soc-concept-sp .point-content .point-ttl {
        font-size: 50px;
        font-weight: 400;
        top: 30px;
    }

    .soc-concept-sp .point-content .point-txt {
        top: 400px;
        position: relative;
    }

    .soc-concept-sp .point-content .point-txt .soc-txt {
        font-size: 3.5vw;
        line-height: 29px;
    }
    .flex > div{
        margin-bottom: 20px;
    }
    .flex2col{
        margin-bottom: 20px;
    }
    .flex3col{
        margin-bottom: 20px;
    }
    .area-gray-left{
        height: 40px;
        background: #f2f2f2;
        width: calc(100% - (50% - 480px));
        width: -webkit-calc(100% - 8.53333vw);
    }
    .gray-wrap{
        background: #f2f2f2;
        width: calc(100% - ( 100% - 90vw ) / 2);
        width: -webkit-calc(100% - ( 100% - 90vw ) / 2);
        padding-top:40px;
        padding-bottom: 40px;
        margin-bottom:60px!important;
    }
    .gray-wrap-left{
        padding-left:calc((100% - 90vw)/2);
        padding-left:-webkit-calc((100% - 90vw)/2);
    }
    .gray-wrap-right{
        margin: 0 0 0 auto;
        padding-right:calc((100% - 90vw)/2);
        padding-right:-webkit-calc((100% - 90vw)/2);
    }
    /*btn*/
    .btn_dark{
        width: auto;
        margin:0 8.53333vw;
    }
    .btn_dark a{
        font-size: 14px;
        line-height: 42px;
    }
    .btn_dark a:hover{
    }

    .btn_light{
        width: auto;
        margin: 0 8.53333vw;
    }
    .btn_light a{
        font-size: 14px;
        line-height: 42px;
    }
    .btn_light a:hover{
    }
}



/*メインビジュアル*/
#btn-1 , #btn-2 {
    position: absolute;
    display: block;
    color: #002C5B;
    text-decoration: none;
    vertical-align: middle;
    background: #ffffff;
    text-align: center;
    transition: opacity 0.2s;
    box-shadow: 0.2vw 0.2vw 0.4vw rgba(0, 0, 0, .15);
}
.mv-anchor-btn {
    position: absolute;
    display: block;
    color: #fff;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    vertical-align: middle;
    text-align: center;
    transition: opacity 0.2s;
}


#btn-1:hover , #btn-2:hover {
    background: #002C5B;
    color: #fff;
}
.mv-anchor-btn:hover {
    text-decoration: none;
}
@media (min-width:751px) {
    .keyvisual-zerotrust{
        background-image: url(https://www.psc-securities.com/files/01-main-zerotrust_bg.jpg);
        background-size: cover;
        height: 58vw;
    }
    .keyvisual-zero{
        position: relative;
        left: 4vw;
        width: 42vw;
    }
    .keyvisual-jisseki{
        position: relative;
        width: 37vw;
        top: 11vw;
        left: -36.5vw;
    }
    .keyvisual img {
        width: 100%;
        height: auto;
    }
    #btn-1 {
        height: 3.4vw;
        line-height: 3.4vw;
        font-size: 1.9vw;
        width: 23.3vw;
        top: 38vw;
        left: 5.8vw;
    }
    .mv-anchor-btn + #btn-1 {
        font-size: 1.7vw;
        width: 21.5vw;
    }
    .mv-anchor-btn {
        height: 3.4vw;
        line-height: 3.4vw;
        font-size: 1.7vw;
        top: 27vw;
        left: 5.8vw;
    }
    .collabo-right {
        width: 380px !important;
        padding: 178.31px 31px !important;
    }
    .collabo-left {
        width: 525.99px !important;
    }
}
@media screen and (max-width: 750px) {
    .keyvisual {
        background: #ffffff;
    }
    .keyvisual img {
        width: 100%;
        height: auto;
    }
    #btn-1 {
        height: 9vw;
        line-height: 9vw;
        font-size: 4.5vw;
        width: 51.5vw;
        top: 53vw;
        left: 8.2vw;
    }
    .mv-anchor-btn + #btn-1 {
        height: 12.8vw;
        line-height: 12.8vw;
        top: inherit;
        bottom: 15vw;
        left: 4vw;
        width: 92vw;
    }
    .mv-anchor-btn {
        height: 9vw;
        line-height: 9vw;
        font-size: 4.5vw;
        bottom: 43vw;
        left: 4vw;
    }
    .keyvisual-zerotrust-sp{
        background-image: url(https://www.psc-securities.com/files/01-main-zerotrust_bg_sp.jpg);
        background-size: cover;
        height: 128vw;
    }
    .keyvisual-zerotrust-sp .keyvisual-zero{
        position: relative;
        left: 4vw;
        width: 93vw;
    }
    .keyvisual-zerotrust-sp .keyvisual-jisseki{
        position: relative;
        width: 75vw;
        top: 7vw;
        left: 8vw;
    }
}

/*パートナーロゴ----------------*/
.partner{
    padding: 20px 0}

/*slidelogo*/

@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    -ms-transform: translateX(0); /* IE 11 */

    }
    to {
        transform: translateX(-3262px);
    -ms-transform: translateX(-3262px); /* IE 11 */
    }
}
@keyframes infinity-scroll-left-test {
    from {
        transform: translateX(0);
    -ms-transform: translateX(0); /* IE 11 */

    }
    to {
        transform: translateX(-2814px);
    -ms-transform: translateX(-2814px); /* IE 11 */
    }
}

/*@keyframes infinity-scroll-left {
    from {
        transform: translateX(0%);
    -ms-transform: translateX(0%);

    }
    to {
        transform: translateX(-100%);
    -ms-transform: translateX(-100%); 
    }
}*/


/*
IE11対策
----------------------------*/
_:-ms-lang(x)::-ms-backdrop,
.slide-logo {
    display: -ms-grid;
    overflow: hidden;
}
/*----------------------------*/

.slide-logo {
    padding: 0;
}
.slide-logo-wrap {
    display: flex;
    overflow: hidden;
}

.slide-logo-list {
    display: flex;
    list-style: none;
    padding: 0;
}
.slide-logo-list-left {
    perspective: 1000;
    animation :infinity-scroll-left 60s infinite linear 0.5s both;
}
.slide-logo-list-left-test {
    perspective: 1000;
    animation :infinity-scroll-left-test 200s infinite linear 0.5s both;
}

.slide-logo-item {
    height: 80px;
    margin: 0 30px;
}
.slide-logo-item > img{
    height: 100%;
    pointer-events: none;
    max-width: initial;
}

.slide-logo-item-test {
    height: 80px;
    margin: 0px;
}
.slide-logo-item-test > img{
    height: 100%;
    pointer-events: none;
    max-width: initial;
}

/*slidelogo*/

/*Banner*/
.banners em{
    color: #002C5B!important;
    font-weight: normal!important;
}
.banners span{
    font-weight: normal!important;
}
.site-main.home .banners{
    background: initial!important;
}
.slidebnr-item{
    margin:25px
}
.site-main.home .banners .swiper-slide .txt p span{
    color:#333;
}

@media (min-width: 751px){
    .site-main.home .banners{
        padding: 26px 0;
    }
    .home .swiper-container{
        width:1230px!important;
    }
    .site-main.home .banners .btns {
        width:1230px;
        top:60px;
    }
    .site-main.home .banners .btns button.prev {
        left: -50px;
    }
    .site-main.home .banners .btns button.next {
        right: -50px;
    }
}
@media screen and (max-width: 750px) {
    .home .swiper-container{
    }
    .site-main.home .banners .btns {
    }
    .site-main.home .banners .btns button.prev {
        left: -8.8vw;
    }
    .site-main.home .banners .btns button.next {
        right: -8.8vw;
    }
    .site-main.home .banners .swiper-pagination-bullet{
        width: 2.0vw;
        height: 2.0vw;
    }
}


.site-main.home .banners .btns button {
    position: absolute;
    outline: none;
    background: transparent;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #002D5B;
    background: none;
    border: none;
    border-radius: 50%;
}

/*/Banner*/

/*NEWS*/
@media screen and  (min-width: 751px) {
.site-main.home .news {
    margin-bottom: 72px;
    /*style.cssにmargin-top72アリ*/
}
}
.news-ttl{
    color: #002C5B!important;
}
.news li a{
    color: #002C5B!important;   
}


/*CONCEPT*/
.concept{
    background-image: url(https://www.psc-securities.com/files/01-concept.jpg);
    background-size:  cover;  
    color: #fff;
    padding: 30px 0 60px 0;
}
.concept p{
    line-height: 1.8;
}
@media screen and (max-width: 750px) {
    .concept{
    background-image: url(https://www.psc-securities.com/files/01-concept-sp.jpg);
    background-position-x: center;
}
}



/*コラボレーション*/
@media screen and  (min-width: 751px) {
.collaborate {
    margin: 60px 0;
}
}



/*GROWTH RING 年表-----------*/

.growth-ring {
  }
.history {
  font-size:0;
  overflow-x: hidden;
  overflow-y: hidden;
  white-space: nowrap;
  margin-bottom:40px;
}
@media screen and (max-width: 750px) {
    .history {
      font-size:0;
      overflow-x: hidden;
      overflow-y: hidden;
      white-space: nowrap;
      margin-bottom:20px;
    }
}

.history::-webkit-scrollbar{
   width: 6px;
}
.history::-webkit-scrollbar-track{
   background-color: #f2f2f2;
}
.history::-webkit-scrollbar-thumb{
   background-color: #666;
}


.history .bar_black {
  background-color:#000;
  width:6000px;
  display:block;
}
@media screen and  (min-width: 751px) {
.history .bar_black{
    position: absolute;
    top: 12px;
    z-index: -10;
    height: 34px;
}
.gen_space{
    margin-left:calc(50vw - 480px);
}
}
@media screen and (max-width: 750px) {
 .history .bar_black{
    position: absolute;
    top: 12px;
    z-index: -10;
    height: 34px;
}   
}
.history_gen{
  font-size:12px;
  width:320px;
}
.history_gen_ttl{
  color:#fff;
  line-height:2.8em;
  text-align:center;
  padding-left: 230px;
}
.gen_symbol{
  color:#666666;
  left:0;
  position:;
}
.history li{
  margin:0 0 8px 0;
}
.history a {
  text-decoration: none;
  color:#333;
}
.history a:hover {
  opacity:0.6;
}



.history_gen {
  display: inline-block;
  vertical-align:top;
}

.history_gen_ttl {
}
.gen_symbol{
}

.history_gen ul {
  list-style: none;
  padding:0;
}
/*インデント調整*/
.event_1{
padding-left:78px;
}
.event_2{
padding-left:65px;
}
.event_3{
padding-left:52px;  
}
.event_4{
padding-left:39px;
}
.event_5{
padding-left:26px;
}
.event_6{
padding-left:13px;
}
.event_7{
padding-left:0px;
}
.history_gen.breakthrough_3 .event_2 {
  padding-left: 46px;
}
.history_gen.breakthrough_3 .event_3 {
  padding-left: 22px;
}

/*年代表示背景*/
.history ul{
    background-position: left top;
    background-repeat: no-repeat;
    position: relative;
    top: -35px;
    padding: 40px 0 0 51px;
    height: 270px;
}
.history .gen1{background-image:url("https://www.psc-securities.com/files/bg_history_gen1.png");}
.history .gen2{background-image:url("https://www.psc-securities.com/files/bg_history_gen2.png");}
.history .gen3{background-image:url("https://www.psc-securities.com/files/bg_history_gen3.png");}
.history .gen4{background-image:url("https://www.psc-securities.com/files/bg_history_gen4.png");}
.history .gen5{background-image:url("https://www.psc-securities.com/files/bg_history_gen5.png");}
.history .gen6{background-image:url("https://www.psc-securities.com/files/bg_history_gen6.png");}
.history .gen7{background-image:url("https://www.psc-securities.com/files/bg_history_gen7.png");}
.history .gen8{background-image:url("https://www.psc-securities.com/files/bg_history_gen8.png");}
.history .gen9{background-image:url("https://www.psc-securities.com/files/bg_history_gen9.png");}
.history .gen10{background-image:url("https://www.psc-securities.com/files/bg_history_gen10.png");}
.history .gen11{background-image:url("https://www.psc-securities.com/files/bg_history_gen11.png");}
.history .gen12{background-image:url("https://www.psc-securities.com/files/bg_history_gen12.png");}
.history .gen13{background-image:url("https://www.psc-securities.com/files/bg_history_gen13.png");}
.history .gen14{background-image:url("https://www.psc-securities.com/files/bg_history_gen14.png");}
.history .gen15{background-image:url("https://www.psc-securities.com/files/bg_history_gen15.png");}
.gen1,.gen2,.gen3,.gen4,.gen5,.gen6,.gen7,.gen8,.gen9,.gen10,.gen11,.gen12,.gen13,.gen14,.gen15{
    background-size:contain;
}


/*年表スクロールアニメーション*/
@keyframes history-scroll-left {
    from {
        transform: translateX(0%);
    -ms-transform: translateX(0%); /* IE 11 */

    }
    to {
        transform: translateX(-100%);
    -ms-transform: translateX(-100%); /* IE 11 */
    }
}

/*
IE11対策
----------------------------*/
_:-ms-lang(x)::-ms-backdrop,
.slide-logo {
    display: -ms-grid;
    overflow: hidden;
}
/*----------------------------*/

/*
.slide-logo {
    padding: 0;
}
.slide-logo-wrap {
    display: flex;
    overflow: hidden;
}

.slide-logo-list {
    display: flex;
    list-style: none;
    padding: 0;
}
*/
.history-scroll-wrap{
    display: flex;
}
.history-cont {
    animation :history-scroll-left 65s infinite linear 0.5s both;
}
.history-scroll-wrap:hover .history-cont{
    animation-play-state: paused;
}
/*
.slide-logo-item {
    height: 80px;
    margin: 0 30px;
}
.slide-logo-item > img{
    height: 100%;
    pointer-events: none;
    max-width: initial;
}
*/
/*/年表スクロールアニメーション*/

/*/GROWTH RING年表*/




/*SECURITY SURVEY---------------*/
/*診断プラン*/
.survey-plan .color-blue-02{
  color: #0068b7;
}
.survey-plan .cmn-txt {
  font-size: 16px;
  line-height: 1.8em;
}
.survey-plan .w250p {
  width: 250px;
}
.survey-plan .w500p {
  width: 500px;
}
.survey-plan .w230p {
  width: 230px;
}
.survey-plan{
    background: #f2f2f2;
    padding-top:80px;
}
.survey-plan.bg-white{
  background: #fff;
  padding-top:0;
  padding-bottom: 0;
}

.survey-plan .plan-ttl{
    font-size: 42px;

}
.survey-plan .menu-table{
    background: #fff;
    border: 1px solid #002c5b;
}
.survey-plan .menu-table.ver-2{
    border: 1px solid #aaa;
}
.survey-plan .plan-index{
    text-align: center;
    color: #fff;
    background: #002c5b;
    height: 72px;
	line-height: 72px;
    font-size: 22px;
}
.survey-plan .plan-index.img{
  background: transparent;
  margin: 0;
}
.survey-plan .plan-index p{
    margin:0;
}
.survey-plan .plan-detail{
    padding: 16px;
    font-size: 22px;
}
.survey-plan .plan-detail p{
    text-align: center;
    margin:0;
}
.survey-plan .plan-detail .plan-name{
    font-size: 18px;
}
.survey-plan .plan-detail.grade-box {
    padding: 16px;
    padding-bottom: 0;
}
.survey-plan .plan-detail.grade-box .plan-name{
  font-size: 22px;
  line-height: 1;
  margin-bottom: 20px !important;
  font-weight: 600;
}
.survey-plan .plan-detail.grade-box ul{
  height: auto;
}
.survey-plan .plan-detail.grade-box.inn-contact > ul{
  display:flex;
  flex-direction:column;
  height: 731px;
}
.survey-plan .plan-detail.grade-box ul li{
  font-size: 14px;
  margin-bottom: 10px;
}
.survey-plan .plan-detail.grade-box ul li:last-child{
    margin-bottom: 0;
  }
.survey-plan .plan-detail.grade-box ul .color-blue-02{
  font-size: 15px;
}
.survey-plan .plan-detail.grade-box ul li:nth-last-child(2){
  margin-top: auto;
  margin-bottom: 0;
}

.survey-plan .plan-detail .plan-price{
    font-size: 34px;
}
.survey-plan .plan-detail .plan-price span{
    font-size: 88px;
}
.survey-plan .plan-detail hr{
    height: 1px;
    border: none;
    border-top: 1px #002c5b solid;
}
.survey-plan .plan-detail ul{
    list-style: none;
    padding:0;
    font-size: 16px;
    height: 190px;
}
.survey-plan .plan-detail .icn-ttl{
  background-color: #0068b7;
  color: #fff;
  width: fit-content;
  margin: 0 auto 5px!important;
  padding: 5px 10px;
  line-height: 1;
  font-size: 14px;
}
.survey-plan .plan-detail .color-blue-02{
  font-size: 15px;
  color: #0068b7;
}
.survey-plan .plan-detail .bg-grade{
  padding: 10px 10px 30px;
  height: 310px;
  background-image: url(https://www.psc-securities.com/files/Agent-365_19.jpg);
}
.survey-plan .plan-detail .bg-grade.h200{
  height: 200px;
}
.survey-plan .plan-detail .bg-grade ul li{
  font-size: 14px;
  line-height: 1.5;
}
.survey-plan .plan-detail .bg-blue{
  background-color: #e8fafd;
  color: #0068b7;
  display: block;
  text-align: center;
}
.survey-plan .plan-detail .bg-blue .main{
  font-size: 15px;
}
.survey-plan .grid-item.child-col {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 4;
}
.keyvisual-agent {
aspect-ratio: 3842 / 1820;
background: url(/files/Agent-365_mv_bg.jpg) no-repeat center center / cover;
position: relative;
}
.keyvisual-agent .inner {
max-width: 1120px;
margin: 0 6.5vw;
}
.keyvisual-agent .lead-txt {
color: #fff;
font-weight: 400;
margin-top: 0;
}
.keyvisual-agent .lead-txt .lead-01 {
font-size: 2rem;
}
.keyvisual-agent .lead-txt .lead-02 {
font-size: 2rem;
}
.keyvisual-agent .lead-txt .lead-03 {
font-size: 2rem;
}
.keyvisual-agent .page-ttl {
color: #fff;
margin-top: 64px;
}
.keyvisual-agent .page-ttl .jp-ttl {
font-size: 3.6rem;
margin: 0;
}
.keyvisual-agent .page-ttl .en-ttl {
width: 520px;
}
.keyvisual-agent .link-wrap a {
color: #fff;
font-size: 2.8rem;
text-decoration: underline;
text-decoration-skip-ink: none;
font-weight: 400;
}
.keyvisual-agent .btn-wrap {
margin-top: 80px;
}
.keyvisual-agent .btn-wrap .btn {
background: #fff;
text-align: center;
width: 350px;
color: #002c5b;
font-size: 1.8rem;
line-height: 48px;
display: block;
text-decoration: none;
transition: opacity .2s;
}
@media (any-hover: hover) {
.keyvisual-agent .link-wrap a:hover {
    text-decoration: none;
}
.keyvisual-agent .btn-wrap .btn:hover {
    opacity: .8!important;
}
}
.contact-box {
text-align: center;
}
.contact-box .lead-txt {
color: #00f;
font-size: 1.8rem;
font-weight: bold;
}
.contact-box .lead-txt.ver-2 {
color: #0068b7;
font-size: 2.1rem;
}
.contact-box .lead-txt.text-navy {
color: #002C5B;
}
.contact-box .contact-link {
display: flex;
justify-content: center;
margin-top: 8px;
max-width: 300px;
margin: 0 auto;
}
.contact-box .contact-link a {
filter: drop-shadow(4px 6px 8px rgba(0, 0, 0, .25));
display: block;
transition: opacity .26s cubic-bezier(.25,.46,.45,.94);
}
@media (any-hover: hover) {
.contact-box .contact-link a:hover {
    opacity: .75;
}
}

@media screen and (max-width: 750px) {
    .survey-plan .plan-detail ul{
        height: auto;
    }
    .survey-plan-compare{
        display: flex;
    }
    .survey-plan .plan-detail .plan-name {
      font-size: 24px;
    }
    .survey-plan .plan-detail .color-blue-02 {
      font-size: 18px;
    }
    .survey-plan .plan-detail .bg-grade {
      height: inherit;
    }
    .survey-plan .w250p {
      width: 180px;
    }
    .survey-plan .w500p {
      width: 220px;
    }
    .survey-plan .w500p.sp-w100p {
        width: 100%;
      }
    .survey-plan .plan-detail.grade-box.inn-contact > ul{
      height: auto;
    }
    .keyvisual-agent {
        aspect-ratio: unset;
      }
      .keyvisual-agent .inner {
        margin: 0;
        padding: calc((64 / 375) * 100vw) 4.26667vw calc((80 / 375) * 100vw);
      }
      .keyvisual-agent .lead-txt .lead-01 {
        font-size: calc((14 / 375) * 100vw);
      }
      .keyvisual-agent .lead-txt .lead-02 {
        font-size: calc((16 / 375) * 100vw);
      }
      .keyvisual-agent .lead-txt .lead-03 {
        font-size: calc((14 / 375) * 100vw);
      }
      .keyvisual-agent .page-ttl {
        margin-top: calc((32 / 375) * 100vw);
      }
      .keyvisual-agent .page-ttl .jp-ttl {
        font-size: calc((22.5 / 375) * 100vw);
      }
      .keyvisual-agent .page-ttl .en-ttl {
        width: calc((200 / 375) * 100vw);
      }
      .keyvisual-agent .link-wrap {
        margin-top: calc((20 / 375) * 100vw);
      }
      .keyvisual-agent .link-wrap a {
        font-size: calc((16 / 375) * 100vw);
      }
      .keyvisual-agent .btn-wrap {
        margin-top: calc((64 / 375) * 100vw);
      }
      .keyvisual-agent .btn-wrap .btn {
        width: 100%;
        font-size: calc((16 / 375) * 100vw);
      }
    .contact-box .lead-txt {
      font-size: calc((18 / 375) * 100vw);
    }
    .contact-box .lead-txt.ver-2 {
      font-size: calc((18 / 375) * 100vw);
    }
    .contact-box .contact-link {
      margin-top: calc((8 / 375) * 100vw);
    }
    .contact-box .contact-link a {
      width: calc((204 / 375) * 100vw);
    }
    .plan-subject{
        width: 164px;
    }
    .plan-subject img{
        height: 310px;
    }
    .plan-table{
        width: calc(100% - 164px);
                overflow-x: scroll;
    }
    .plan-table img{
        max-width: unset;
        height: 310px;

    }
}


/*3D SOC---------------*/
/*施設概要*/
@media screen and (max-width: 750px) {
    .img-smc img{
        padding: 0 3%;
    }
}



/*SIEM---------------*/
/*スケジュール*/
@media screen and (max-width: 750px) {
    .siem-schedule{
        overflow-x: scroll;
        width: 100%;
    }
    .siem-schedule img{
        max-width: unset;
        height: 340px;
    }
    .arrow_pre, .arrow_next{
        font-size: 16px;
        color:#002C5B!important;
        position:absolute;
        top:33%;
    }
    .arrow_pre{
        left:4%;
    }
    .arrow_next{
        right: 4%;
    }
    .plan-table span{
        top:40%;
    }
}




/*--見出し用--------------------------*/


/*.text-navy*/

.ttl-center{
    text-align: center;
}
.ttl-bold{
    font-weight: 500;
}
@media screen and (max-width: 750px) {
    .ttl-bold{
        font-weight: 500;
    }
    .sp-ttl-bold{
        font-weight: 600;
    }
}
@media screen and  (min-width: 751px) {
    .annotation{
        font-size: 12px;
    }
}

@media screen and (max-width: 750px) {
    .sp-f42{
        font-size: 42px!important;
    }
    .annotation{
        font-size: 2.4vw;
    }
}

/*form*/
@media screen and  (min-width: 751px) {
    .mod-pagettl.no-kv{
        padding:0px;
    }
    .form-pagettl{
        padding-top:85px;
        padding-bottom: 85px;
    }
}
@media screen and (max-width: 750px) {
    .mod-pagettl.no-kv{
        padding:0px;
    }
    .form-pagettl{
        padding-top: 15vw;
        padding-bottom: 15vw;
    }
}

/*space*/

.no-space{
    margin: 0;
    padding: 0;
}

@media screen and  (min-width: 751px) {
    .padding-top20{
        padding-top: 20px;
    }
    .padding-top40{
        padding-top: 40px;
    }
    .padding-top85{
        padding-top: 85px;
    }
    .padding-b40{
        padding-bottom: 40px;
    }
    .padding-b125{
        padding-bottom:125px!important;
    }
    .padding-b0{
        padding-bottom:0;
    }
    .margin-t0{
        margin-top: 0;
    }
    .margin-t10{
        margin-top: 10px;
    }
    .margin-t20{
        margin-top: 20px;
    }
    .margin-t30{
        margin-top: 30px;
    }
    .margin-b0{
        margin-bottom: 0;
    }
    .margin-b10{
        margin-bottom: 10px;
    }    
    .margin-b20{
        margin-bottom:20px;
    }
    .margin-b30{
        margin-bottom:30px!important;
    }
    .margin-b35{
        margin-bottom:35px;
    }
    .margin-b40{
        margin-bottom:40px;
    }
    .margin-b45{
        margin-bottom:45px;
    }
    .margin-b50{
      margin-bottom:50px;
    }
    .margin-b60{
        margin-bottom:60px;
    }
    .margin-b70{
        margin-bottom:70px;
    }
    .margin-b80{
      margin-bottom:80px;
    }
    .margin-b100{
      margin-bottom:100px;
    }
    .margin-b108{
        margin-bottom: 108px;
    }
    .margin-b125{
        margin-bottom:125px!important;
    }
    .mod-paragraph-box{
        margin-top:0;
    }
    .site-main.home .contents-links{
        padding-top:0px!important;
    }
}
.posi-init{
    position: initial;
}
@media screen and (max-width: 750px) {
    .sp-margin-t15vw{
        margin-top: 15vw!important;
    }
    .sp-margin-t0{
        margin-top: 0!important;
    }
    .sp-margin-b0{
        margin-bottom: 0!important;
    }
    .sp-margin-b10{
        margin-bottom: 10px!important;
    }
    .sp-margin-b1em{
        margin-bottom: 1em!important;   
    }
    .sp-margin-b15{
        margin-bottom: 15px!important;
    }
    .sp-margin-b20{
        margin-bottom: 20px!important;
    }
    .sp-margin-b30{
        margin-bottom: 30px!important;
    }
    .sp-margin-b40{
        margin-bottom: 40px!important;
    }
    .sp-margin-b60{
        margin-bottom: 60px!important;
    }
    .padding-b0{
        padding-bottom:0!important;
    }
    .sp-padding-b10{
        padding-bottom: 10px!important;
    }
    .sp-padding-b20{
        padding-bottom: 20px;
    }
    .sp-padding-b40{
        padding-bottom: 40px;
    }
    .sp-padding-b40{
        padding-bottom: 40px;
    }
}

.label-lightblue{
    background: #C2C9D9;
    font-size: 16px;
    color: #002C5B;
    display: block;
    line-height: 52px;
    text-align: center;
}
.label-lightblue :hover{
    background: #002C5B;
    color: #fff;
}

.label-lightgray{
    background: #fff;
    font-size: 16px;
    color: #666;
    display: block;
    line-height: 52px;
    text-align: center;
    border: 1px solid #666;
}
.arrow{
    display: block;
    width: 40px;
    margin: 10px auto;
}

.edr-quick{
    border:1px solid #002c5b;
    padding:40px;
}
@media screen and (max-width: 750px) {
    .edr-quick{
    border:1px solid #002c5b;
    padding:20px;
    margin: 0 8.5333vw;
    }   
}



/*mod-contact*/
@media screen and  (min-width: 751px) {
    .mod-contact li .num{
        font-family: 'DIN';
        font-weight: bold;
        font-size: 4.6rem!important;
    }
}
@media screen and (max-width: 750px) {
    .mod-contact li .num{
        font-family: 'DIN';
        font-weight: bold;
        font-size: 4.6rem!important;
    }
}
/*mod-externals*/
.mod-externals{}

/*fotter*/
.site-footer{
    color: #ccc;
}


@media screen and  (min-width: 751px) {
    .site-footer h3{
        font-weight: normal;
    }
    .site-footer a{
        color:#ccc;
    }
    .site-footer .pscsec a{
        color:#ccc;
    }
    .site-footer .pscsec .service{
        width: 100%;
    }
    .site-footer .pscsec .service>ul{
        display: -webkit-box;
        font-weight: normal;
        -webkit-box-pack:initial;
    }
    .site-footer .pscsec .service>ul>li{
        width: 25%;
        padding:0 2px 0;
    }
    .site-footer .pscsec .contacts ul li{
        font-weight: normal;
    }
    .site-footer .pscsec .service .ttl{
        font-weight: normal;
        padding:0 2px 8px;
    }
    .site-footer .pscsec .lnks li{
        font-weight: normal;
        margin:0 12px 20px 0;
    }
}




.txt-layout-r {
text-align: right!important;
}
.txt-layout-l {
text-align: left!important;
}
.txt-layout-c {
text-align: center!important;
}
.txt-red-color {
color: #c1272d;
}
.txt-blue-color {
color: #0000ff;
}
.txt-dkblue-color {
color: #002c5b;
}
.txt-ltblue-color {
color: #0068b7;
}
.txt-gray-color {
color: rgba(0, 0, 0, .5);
}
.txt-b {
font-weight: bold;
}
.bg-ltblue-color {
background: #0068b7!important;
}
.label-lightblue-another {
background: #d3def1;
}
.fz-14 {
font-size: 14px!important;
}
.fz-34 {
font-size: 34px!important;
}
.fz-66 {
font-size: 66px!important;
}
.heading-ttl {
display: inline-block;
color: #fff;
background: #0068b7;
font-size: 18px;
font-weight: 300;
padding: 5px;
}
.heading-cat {
position: relative;
}
.heading-cat::before {
content: "2026年3末迄";
font-size: 9px;
position: absolute;
top: 30px;
right: 12px;
background: #0068b7;
color: #fff;
padding: 5px;
}
.txt-transform {
position: relative;
top: -10px;
}
.lh-ttl {
line-height: 1.5!important;
}
.label-lightblue:has(.txt-ltblue-color.annotation) .txt-ltblue-color.annotation:hover {
background: #C2C9D9;
color: #0068b7;
}
@media screen and  (min-width: 751px) {
.point-txt.tp-105 {
top: 105px;
}
.mt-0 {
margin-top: 0px!important;
}
.mt-5 {
margin-top: 5px!important;
}
.mt-10 {
margin-top: 10px!important;
}
.mt-20 {
margin-top: 20px!important;
}
.mt-30 {
margin-top: 30px!important;
}
.mt-50 {
margin-top: 50px!important;
}
.mt-59 {
margin-top: 59px!important;
}
.mt-60 {
margin-top: 60px!important;
}
.mb-10 {
margin-bottom: 10px!important;
}
.mb-20 {
margin-bottom: 20px!important;
}
.mb-25 {
margin-bottom: 25px!important;
}
.mb-30 {
margin-bottom: 30px!important;
}
.mb-40 {
margin-bottom: 40px!important;
}
.mb-50 {
margin-bottom: 50px!important;
}
.ml-80 {
margin-left: 80px!important;
}
.pr-20 {
padding-right: 20px!important;
}
.pr-25 {
padding-right: 25px!important;
}
.pr-30 {
padding-right: 30px!important;
}
.pr-50 {
padding-right: 50px!important;
}
.pl-20 {
padding-left: 20px!important;
}
.pl-25 {
padding-left: 25px!important;
}
.pl-30 {
padding-left: 30px!important;
}
.pl-50 {
padding-left: 50px!important;
}
.pb-20 {
padding-bottom: 20px!important;
}
.h-250 {
height: 250px!important;
}
.h-full {
height: 100%!important;
}
.keyvisual-aisecurity{
background-image: url(https://www.psc-securities.com/files/01-main-aisecurity_bg.jpg);
background-size: cover;
height: 58vw;
}
.keyvisual-ai{
position: relative;
left: 4vw;
width: 30vw;
top:3vw;
}
.keyvisual-jisseki-ai{
position: relative;
width: 37vw;
top: 27vw;
left: -24.5vw;
}
/* .keyvisual-agent{
  background-image: url(https://www.psc-securities.com/files/Agent-365_mv_bg.jpg);
  background-size: cover;
  height: 47vw;
}
.keyvisual-main-agent{
  position: relative;
  left: -28.5vw;
  width: 35vw;
  top:4vw;
} */
.grid-box {
display: grid;
grid-template-columns: repeat(3, 1fr);
}
.grid-box .flex-item {
display: flex;
grid-column: span 2;
}
.grid-box .flex-item .grid-item:first-child {
flex:1;
}
.bd-left-0 {
border-left: none!important;
}
}
@media screen and (max-width: 750px) {
.sp-txt-layout-l {
text-align: left;
}
.sp-mt-0 {
margin-top: 0px!important;
}
.sp-mt-15 {
margin-top: 15px!important;
}
.sp-mt-20 {
margin-top: 20px!important;
}
.sp-mt-30 {
margin-top: 30px!important;
}
.sp-mb-10 {
margin-bottom: 10px!important;
}
.sp-mb-20 {
margin-bottom: 20px!important;
}
.sp-ml-0 {
margin-left: 0px!important;
}
.sp-pl-20 {
padding-left: 20px!important;
}
.sp-pr-20 {
padding-right: 20px!important;
}
.sp-pb-20 {
padding-bottom: 20px!important;
}
.keyvisual-aisecurity-sp{
background-image: url(https://www.psc-securities.com/files/01-main-aisecurity_bg_sp.jpg);
background-size: cover;
height: 128vw;
}
.keyvisual-aisecurity-sp .keyvisual-ai{
position: relative;
left: 5vw;
width: 50vw;
top: 6vw;
}
.keyvisual-aisecurity-sp .keyvisual-jisseki-ai{
position: relative;
width: 75vw;
top: 58vw;
left: 8vw;
}
/* .keyvisual-agent-sp{
background-image: url(https://www.psc-securities.com/files/Agent-365_mv_bg.jpg);
background-size: cover;
background-position: center;
height: 128vw;
}
.keyvisual-agent-sp .keyvisual-main-agent{
position: relative;
left: -12vw;
width: 75vw;
top: 21vw;
} */
.grid-box {
display: grid;
grid-template-columns: repeat(2, 1fr);
}
.grid-box.sp-grid-column {
display: grid;
grid-template-columns: 1fr;
}
.grid-box .flex-item {
flex-direction: column;
}
.sp-grid.col-2 {
display: grid;
grid-template-columns: 1fr 1fr;
}
.sp-grid.col-2.sp-gap10 {
gap: 10px;
}
.heading-ttl {
font-size: 14px;
}
.sp-bd-top-0 {
border-top: none!important;
}
.h-auto {
height: auto!important;
}
.h-match {
height: 387.5px!important;
}
.heading-cat::before {
font-size: 8px;
}
}

/*footer logo*/
section.security-specialist {
background-color: #f3f2f2;
padding: 50px 0;
}
section.security-specialist .logo-wrap {
display: flex;
gap: 40px;
}
@media screen and  (min-width: 751px) {
section.security-specialist .logo-wrap a {
-webkit-transition: opacity .26s cubic-bezier(.25, .46, .45, .94);
transition: opacity .26s cubic-bezier(.25, .46, .45, .94);
}
section.security-specialist .logo-wrap a:hover {
text-decoration: none;
opacity: .8;
}
}
@media screen and (max-width: 750px) {
section.security-specialist .logo-wrap {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 3.2vw;
}
}

/*scs---------------*/
.keyvisual-agent.scs {
    background-image: url(/files/scs_mv_bg.jpg);
    display: flex;
    align-items: center;
}
@media screen and (max-width: 750px) {
    .keyvisual-agent.scs {
        background-position: 35% center;
    }
}
.keyvisual-agent.scs .inner {
    margin: 0 6.1vw;
}
@media screen and (max-width: 750px) {
    .keyvisual-agent.scs .inner {
        margin: 0;
        padding: calc((64 / 375) * 100vw) 4.26667vw calc((80 / 375) * 100vw);
        width: 100%;
    }
}
@media screen and (max-width: 750px) {
    .keyvisual-agent .link-wrap{
        margin-top: 0;
    }
}
.keyvisual-agent.scs .link-wrap a{
    color: #00ffff;
    font-size: 2.3rem;
}
@media screen and (max-width: 750px) {
    .keyvisual-agent.scs .link-wrap a {
        font-size: 1.4rem;
    }
}
.keyvisual-agent.scs .lead-txt .lead-01 {
    text-shadow: rgba(0,0,0,0.7) 0 0 15px;
}
@media screen and (max-width: 750px) {
    .keyvisual-agent.scs .lead-txt .lead-01 {
        font-size: 1.4rem;
    }
}
.keyvisual-agent.scs .page-ttl .jp-ttl {
    font-size: 3.6rem;
    letter-spacing: .02em;
    text-shadow: rgba(0,0,0,0.7) 0 0 15px;
}
.keyvisual-agent.scs .page-ttl .en-ttl {
    margin: -30px 0 -20px -40px;
}
@media screen and (max-width: 750px) {
    .keyvisual-agent.scs .page-ttl .jp-ttl {
        font-size: 2.25rem;
    }
    .keyvisual-agent.scs .page-ttl .en-ttl {
        width: 320px;
        margin: -20px 0 -20px -23px;
    }
}
section.scs-section {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smooth: never;
}
section.scs-section .hd03 {
    margin-bottom: 6px;
    font-size: 3.0rem;
}
section.scs-section .hd03.size-s {
    font-size: 2.4rem;
}
@media screen and (max-width: 750px) {
    section.scs-section .hd03 {
        font-size: 1.8rem;
    }
    section.scs-section .hd03.size-s {
        font-size: 1.8rem;
    }
}
section.scs-section .cmn-txt {
    margin-top: 0;
    font-size: 1.8rem;
    line-height: 1.7;
}
section.scs-section .cmn-txt.fz16 {
    font-size: 1.6rem;
}
@media screen and (max-width: 750px) {
    section.scs-section .cmn-txt {
        font-size: 1.4rem;
    }
    section.scs-section .cmn-txt.fz16 {
        font-size: 1.4rem;
    }
}
section.scs-section .box-point {
    padding: 20px;
}
section.scs-section .box-point.bg-blue {
    background-color: #ecf5fb;
}
section.scs-section .box-point .box-lead-txt {
    display: flex;
    gap: 30px;
    align-items: center;
    margin: 0 auto;
    width: fit-content;
    font-size: 3.5rem;
    font-weight: bold;
    text-align: center;
}
@media screen and (max-width: 750px) {
    section.scs-section .box-point .box-lead-txt {
        flex-direction: column;
        gap: 20px;
        font-size: 2rem;
    }
}
section.scs-section .box-point .box-lead-txt .highlight {
    position: relative;
    padding: 15px 30px;
    background-color: #fff;
}
section.scs-section .box-point .box-lead-txt .highlight::before {
    content: "▶︎";
    position: absolute;
    top: 50%;
    left: -20px;
    transform: translateY(-50%);
    color: #002C5B;
}
section.scs-section .box-point .box-lead-txt .highlight.right::before {
    right: -20px;
    left: auto;
}
@media screen and (max-width: 750px) {
    section.scs-section .box-point .box-lead-txt .highlight::before {
        top: -12px;
        left: 50%;
        transform: translateX(-50%) rotate(90deg);
    }
  section.scs-section .box-point .box-lead-txt .highlight.right {
    padding: 15px;
  }
  section.scs-section .box-point .box-lead-txt .highlight.right::before {
      top: auto;
      bottom: -12px;
      right: calc(50% - 20px);
      transform: translateX(-50%) rotate(90deg);
  }
}
@media screen and (max-width: 750px) {
    section.scs-section .table-wrap {
        overflow-x: scroll;
    }
}
section.scs-section .table-wrap.review {
    margin-bottom: 40px;
}
section.scs-section table {
    width: 100%;
    table-layout: fixed;
    color: #002C5B;
    border-collapse: collapse;
    font-size: 1.8rem;
}
@media screen and (max-width: 750px) {
    section.scs-section table {
        width: 600px;
        font-size: 1.4rem;
    }
}
section.scs-section table th,
section.scs-section table td {
    padding: 10px;
    border: 1px solid #ccc;
}
section.scs-section table th {
    padding: 28px 10px;
    min-width: 100px;
    font-weight: bold;
    background-color: #ECF5FB;
}
@media screen and (max-width: 750px) {
    section.scs-section table th {
        padding: 10px;
    }
}
section.scs-section table td {
    background-color: #fff;
}
section.scs-section table.review thead th:first-child {
    width: 120px;
}
@media screen and (max-width: 750px) {
    section.scs-section table.review thead th:first-child {
        width: 100px;
    }
}
section.scs-section table .bg-blue {
    background-color: #daeaf7;
}
section.scs-section table .bg-blue-02 {
    background-color: #ECF5FB;
}
section.scs-section table .tr-overview {
    height: 160px;
}
section.scs-section table .tr-overview td {
    vertical-align: top;
}
section.scs-section .txt-note {
    text-align: right;
}
section.scs-section .txt-link {
    font-size: 1.8rem;
    color: #008ac8;
    text-decoration: underline;
}
@media screen and (max-width: 750px) {
    section.scs-section .txt-link {
        font-size: 1.4rem;
    }
}
section.scs-section .logo-wrap {
    margin-top: 53px;
    margin-bottom: 62px;
    text-align: center;
}
section.scs-section .logo-wrap img {
    width: 735px;
}
section.scs-section table.service thead th {
    padding: 12px 10px;
    color: #0000ff;
}
section.scs-section table.service thead th:first-child {
    width: 240px;
    background-color: #CBE2F3;
}
@media screen and (max-width: 750px) {
    section.scs-section table.service thead th:first-child {
        width: 120px;
    }
}
section.scs-section table.service thead th:nth-child(2) {
    background-color: #daebf7;
}
section.scs-section table.service tbody th {
    color: #008ac8;
    padding: 10px;
}
section.scs-section table.service tbody td {
    padding: 15px 10px 10px;
}
section.scs-section .menu-wrap,
section.scs-section .label-wrap {
    margin: 0;
    padding: 0;
    list-style: none;
}
section.scs-section .menu-wrap {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    flex-wrap: wrap;
    font-size: 1.6rem;
}
@media screen and (max-width: 750px) {
    section.scs-section .menu-wrap {
        grid-template-columns: 1fr;
        font-size: 1.4rem;
    }
}
section.scs-section .menu-wrap > li {
    min-width: 0;
}
section.scs-section .menu-wrap > li:first-child {
    grid-column: span 2;
}
section.scs-section .menu-wrap > li.span-1 {
    grid-column: span 1;
}
section.scs-section .menu-wrap > li.span-2 {
    grid-column: span 2;
}
section.scs-section .menu-wrap > li.span-3 {
    grid-column: span 3;
}
section.scs-section .menu-wrap > .menu-column-3 {
    grid-column: 3;
}
section.scs-section .txt-menu {
    margin: 0;
    color: #000;
}
section.scs-section .txt-menu.txt-sm {
    font-size: 1.5rem;
    letter-spacing: -0.025em;
}
section.scs-section .txt-menu.txt-xs {
    letter-spacing: -0.08em;
    line-height: 24px;
}
section.scs-section .label-wrap {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(min(212px, 100%), 1fr));
    gap: 12px;
    margin-top: 2px;
}
section.scs-section .label-wrap .label {
    max-width: 212px;
    min-width: 0;
    width: auto;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
}
@media screen and (max-width: 750px) {
    section.scs-section .label-wrap .label {
        font-size: 1.4rem;
    }
}
section.scs-section .label-wrap .label.wide {
    max-width: none;
}
section.scs-section .label-wrap .label .txt-menu-ttl,
section.scs-section .label-wrap .label .txt-menu-content {
    margin: 0;
}
section.scs-section .label-wrap .label .txt-menu-ttl {
    padding: 4px 10px;
    background-color: #002c5b;
    color: #fff;
}
section.scs-section .label-wrap .label .txt-menu-ttl.txt-sm {
    min-height: 34px;
}
section.scs-section .label-wrap .label .txt-menu-content {
    padding: 2px;
    color: #008ac8;
    border: 1px solid #002c5b;
    min-height: 32px;
}
section.scs-section .label-wrap .label .txt-menu-content.txt-sm {
    min-height: 32px;
}
section.scs-section .label-wrap .label .txt-menu-content.txt-xs {
    font-size: 1.6rem;
    letter-spacing: -0.25rem;
}
section.scs-section .label-wrap .txt-sm {
    font-size: 1.6rem;
    letter-spacing: -0.025em;
}
section.scs-section .faq-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
section.scs-section .faq-list li + li {
    margin-top: 38px;
}
section.scs-section .faq-list .txt-question,
section.scs-section .faq-list .txt-answer {
    margin: 0;
}
section.scs-section .faq-list .txt-question {
    font-size: 1.6rem;
}
@media screen and (max-width: 750px) {
    section.scs-section .faq-list .txt-question.sp-fz14 {
        font-size: 1.4rem;
    }
}
section.scs-section .faq-list .txt-answer {
    color: #008ac8;
    font-size: 1.8rem;
    font-weight: bold;
    margin-top: 5px;
    line-height: 1.6;
}
@media screen and (max-width: 750px) {
    section.scs-section .faq-list .txt-answer.sp-fz16 {
        font-size: 1.6rem;
    }
}
section.scs-section .faq-list .txt-answer .highlight {
    color: #0000ff;
}

/*emergency---------------*/
.emergency-color{
color: #ff0000;
}

.emphasis-txt {
font-size: 28px;
font-weight: bold;
text-align: center;
}
@media screen and (max-width: 750px) {
.emphasis-txt {
    font-size: 20px;
}
}

.keyvisual-agent.emergency {
background-image: url(/files/emergency_mv_bg.png);
display: flex;
align-items: center;
}
@media screen and (max-width: 750px) {
.keyvisual-agent.emergency {
    background-position: 35% center;
}
}
.keyvisual-agent.emergency .inner {
margin: 0 6vw;
}
@media screen and (max-width: 750px) {
.keyvisual-agent.emergency .inner {
    margin: 0;
    padding: calc((64 / 375) * 100vw) 4.26667vw calc((80 / 375) * 100vw);
    width: 100%;
}
}
.keyvisual-agent.emergency .page-ttl {
margin-top: 0;
}
.keyvisual-agent.emergency .page-ttl .jp-ttl {
font-size: 3.6rem;
letter-spacing: -0.05em;
text-shadow: rgba(0,0,0,0.7) 0 0 15px;
}
.keyvisual-agent.emergency .page-ttl .en-ttl {
width: 575px;
margin: -20px 0 0 -33px;
}
@media screen and (max-width: 750px) {
.keyvisual-agent.emergency .page-ttl {
  margin-top: calc((32 / 375) * 100vw);
}
.keyvisual-agent.emergency .page-ttl .jp-ttl {
    font-size: 2.25rem;
}
.keyvisual-agent.emergency .page-ttl .en-ttl {
    width: 320px;
    margin: -10px 0 0px -20px;
}
}
.keyvisual-agent.emergency .btn-wrap {
margin-top: 20px;
}
.emergency-icn-wrap {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 5px;
position: relative;
}
@media screen and (max-width: 750px) {
.emergency-icn-wrap {
  grid-template-columns: 1fr;
}
}
.emergency-icn-wrap.arr-col::after {
content: "";
display: inline-block;
width: 100px;
height: 40px;
clip-path: polygon(50% 40px, 0% 0%, 100px 0%);
background: #002c5b;
position: absolute;
bottom: -60px;
left: 50%;
transform: translateX(-50%);
}
@media screen and (max-width: 750px) {
  .emergency-icn-wrap.arr-col::after {
    width: 80px;
    height: 30px;
    clip-path: polygon(50% 30px, 0% 0%, 80px 0%);
    bottom: -50px;
  }
}
.emergency-icn-wrap .icn-box {
background: #ecf5fb;
padding: 20px;
display: grid;
grid-template-columns: 80px auto;
align-items: center;
gap: 15px;
}
.emergency-icn-wrap .icn-box.icn-3,
.emergency-icn-wrap .icn-box.icn-5,
.emergency-icn-wrap .icn-box.icn-8 {
grid-template-columns: 90px auto;
}
@media screen and (max-width: 750px) {
.emergency-icn-wrap .icn-box,
.emergency-icn-wrap .icn-box.icn-3,
.emergency-icn-wrap .icn-box.icn-5,
.emergency-icn-wrap .icn-box.icn-8 {
  grid-template-columns: 50px auto;
}
}
.emergency-icn-wrap .icn-box .img-wrap {
text-align: center;
}
.emergency-icn-wrap .icn-box .txt-wrap .ttl {
font-size: 1.9rem;
color: #002c5b;
font-weight: bold;
margin: 0;
margin-bottom: 10px;
}
.emergency-icn-wrap .icn-box .txt-wrap .txt {
font-size: 1.6rem;
margin: 0;
font-weight: 600;
}
@media screen and (max-width: 750px) {
.emergency-icn-wrap .icn-box .txt-wrap .ttl {
  font-size: 1.8rem;
}
.emergency-icn-wrap .icn-box .txt-wrap .txt {
  font-size: 1.6rem;
}
}
.emergency-achieve-wrap .emergency-achieve-box {
border: 1px solid #808080;
position: relative;
}
.emergency-achieve-wrap .emergency-achieve-box::before {
content: "";
display: inline-block;
width: 13px;
height: 100%;
background: #002c5b;
position: absolute;
top: 0;
left: 0;
}
.emergency-achieve-wrap .emergency-achieve-box .box-inner {
padding: 0 30px;
display: flex;
justify-content: space-between;
align-items: center;
}
@media screen and (max-width: 750px) {
.emergency-achieve-wrap .emergency-achieve-box .box-inner {
  flex-direction: column;
  padding: 10px 30px;
}
.emergency-achieve-wrap .emergency-achieve-box:nth-of-type(2) .box-inner {
  flex-direction: row;
}
.emergency-achieve-wrap .emergency-achieve-box:nth-of-type(2) .box-inner img {
  width: 60px;
}
}
.emergency-achieve-wrap .emergency-achieve-box .box-inner .ttl {
font-size: 3.7rem;
font-weight: bold;
color: #002c5b;
}
@media screen and (max-width: 750px) {
.emergency-achieve-wrap .emergency-achieve-box .box-inner .ttl {
  font-size: 2rem;
  margin: 0 0 10px;
}
}
.emergency-achieve-wrap .emergency-achieve-box + .emergency-achieve-box {
margin-top: 5px;
}










/* security-survey */
.pt-0 {
    padding-top: 0 !important;
}
.pt-6 {
    padding-top: 6px !important;
}
.mb-90 {
    margin-bottom: 90px !important;
}
.mb-105 {
    margin-bottom: 105px;
}
.mt-90 {
    margin-top: 90px !important;
}
.mt--50 {
    margin-top: -50px !important;
}
.mt--70 {
    margin-top: -70px;
}
.h-150 {
    height: 150px !important;
}
.fw-500 {
    font-weight: 500;
}
.font-s27 {
    font-size: 27px;
}
.soc-pagettl h1 .jp {
    font-family: 'YakuHanJP_Noto', 'Noto Sans JP', sans-serif;
}
.soc-pagettl h1 .jp.ttl-l {
    font-weight: 500;
    font-size: 4.6rem;
}
.soc-pagettl h1 .jp.ttl-m {
    background: #008ac8;
    display: inline-block;
    padding: 4px 16px;
    font-size: 19px;
    color: #fff;
    width: 226px;
}
.btn-wrap.survey.col2 {
    display: flex;
    justify-content: center;
    gap: 12px;
    margin-bottom: 88px;
}
.btn-wrap.survey .btn {
    margin: 0;
    width: 390px;
    height: 88px;
    border: 1px solid #c7c7c7;
    text-align: center;
    font-size: 16px;
    color: #000;
    padding: 20px;
}
.btn-wrap.survey .btn.arrow {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.btn-wrap.survey .btn.arrow:after {
    content: "";
    display: block;
    background-image: url(https://www.psc-securities.com/files/arrow-right.svg);
    aspect-ratio: 6 / 12;
    width: 8px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.soc-h2.survey {
    font-size: 38px;
    color: #002c5b;
    margin: 0;
    font-weight: 500;
}
.soc-h3.survey.fz27 {
    font-size: 27px;
    margin-bottom: 27px;
    font-weight: 500;
}
.soc-h3.survey {
    font-size: 28px;
    text-align: center;
    color: #000;
    margin-bottom: 70PX;
}
.txt.survey {
    font-size: 19px;
    line-height: 1.8;
}
.survey-plan .grid-box.col4 {
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}
.survey-plan .grid-box.col4 .plan-detail .plan-name {
    font-size: 17px;
    font-weight: 500;
}
.survey-plan .plan-detail .plan-name {
    font-size: 24px;
    font-weight: 500;
}
.survey-plan .grid-box.col4 .grid-item.recommend .plan-index {
    background: #e56d0a;
}
.survey-plan .grid-box.col4 .grid-item.recommend .menu-table {
    border: 1px solid #e56d0a;
}
.survey-plan .grid-box.col4 .grid-item.recommend .label-lightblue {
    color: #e56d0a;
    background: #f9dfc9;
}
.txt-orange-color {
    color: #e56d0a;
}
.survey-plan .flex-item.col2 {
    display: grid;
    grid-template-columns: 420px 1fr;
}
.survey-plan .flex-item.col2 .plan-detail ul li .min {
    font-size: 10px;
}
.survey-plan .flex-item.col2 .plan-detail.col2 {
    display: flex;
    gap: 4px;
}
.survey-plan.soc-sec6 {
    background: #f2f2f2;
    padding-bottom: 200px;
}
.survey-plan .grid-item.top .menu-table {
    border-bottom: none;
}
.survey-plan .grid-item.bottom .menu-table {
    border-top: none;
}
.survey-plan .flex-item.col2-1 .grid-item.top .menu-table .plan-detail {
    display: grid;
    grid-template-columns: 420px 1fr;
    padding-bottom: 0;
}
.survey-plan .flex-item.col2-1 .grid-item.top .menu-table .plan-detail .plan-price {
    padding-right: 16px;
}
.survey-plan .flex-item.col2-1 .grid-item.top .menu-table .plan-detail .plan-text {
    padding-left: 48px;
    font-size: 16px;
    border-left: 1px #002c5b solid;
    display: flex;
    align-items: center;
    text-align: left;
}
.survey-plan .flex-item.col2-1 .plan-detail {
    padding: 26px;
}
.survey-plan .diagnosis-wrap {
    display: flex;
    justify-content: space-between;
    padding: 0;
    gap: 24px;
}
.survey-plan .diagnosis-wrap li {
    list-style: none;
    line-height: 1.66;
}
.survey-plan .diagnosis-wrap > li {
    width: 100%;
    display: flex;
    flex-direction: column;
}
.survey-plan .diagnosis-head {
    text-align: center;
    color: #fff;
    background: #002c5b;
    height: 72px;
    line-height: 72px;
    font-size: 22px;
}
.survey-plan .diagnosis-txt {
    line-height: 72px;
    margin: auto;
}
.survey-plan .diagnosis-body {
    background: #fff;
    border: 1px solid #002c5b;
    padding: 16px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.survey-plan .diagnosis-body > ul {
    padding: 0;
    font-size: 16px;
}
.survey-plan .diagnosis-list {
    flex: 1;
}
.point-list.col2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
    list-style: none;
    padding: 0;
    margin-top: 60px;
}
.point-list.col2 > li {
    margin-top: 0;
}
.survey.soc-pagettl h1 {
    margin-bottom: 36px;
}
.survey.soc-pagettl h1 .jp.ttl-m {
    margin-top: 10px;
}
.survey-plan .plan-detail .plan-price {
    line-height: 1.1;
    margin-bottom: -10px;
}
.survey-plan .plan-detail ul > li.bold {
    font-weight: bold;
}
.survey-plan .plan-index.pinpoint .plan-detail {
    padding-top: 16px;
}
.btn_dark.large a {
    line-height: 68px;
    font-size: 27px;
}
.survey-plan .plan-ttl {
    line-height: 1;
}
.survey-plan .plan-ttl.flex-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.recommend-batch {
    color: #fff;
    background-color: #e56d0a;
    font-size: 17px;
    border-radius: 9999px;
    padding: 5px 18px;
}
.btn_dark-wrap {
    background: #f2f2f2;
    margin-top: -60px;
    padding-top: 60px;
    margin-bottom: -235px;
    padding-bottom: 105px;
}
.survey-plan .plan-index.survey {
    text-align: center;
    color: #fff;
    background: #002c5b;
    height: 90px;
    font-size: 20px;
    padding: 10px 0;
    display: flex;
    align-items: center;
    justify-content: center;
}
.soc-pagettl.survey h1 .jp.ttl-l {
    font-weight: 400;
}
.survey-plan .grid-box.col4 .plan-detail ul,
.flex-item.pinpoint .plan-detail ul {
    line-height: 1.66;
}
@media screen and (min-width: 751px) {
    .fz-16 {
        font-size: 16px;
    }
    .h-180 {
        height: 180px !important;
    }
    .h-330 {
        height: 330px !important;
    }
    .h-350 {
        height: 350px !important;
    }
    .h-390 {
        height: 390px !important;
    }
    .point-content.report {
        height: 568px;
    }
    .survey-plan .plan-index.pinpoint p {
        line-height: 72px;
    }
    .mt-59 {
        margin-top: 42px !important;
    }
}
@media screen and (max-width: 750px) {
    .h-150 {
        height: auto !important;
    }
    .sp-fz18 {
        font-size: 18px !important;
    }
    .sp-pt-30 {
        padding-top: 30px;
    }
    .soc-h2.survey {
        font-size: 30px;
    }
    .soc-h3.survey {
        font-size: 22px;
    }
    .txt.survey {
        font-size: 16px;
    }
    .btn_dark.large a {
        line-height: 50px;
    }
    .survey-plan .grid-box.col4 {
        grid-template-columns: 1fr;
    }
    .survey-plan .flex-item.col2 {
        grid-template-columns: 1fr;
    }
    .survey-plan .flex-item.col2-1 .grid-item.top .menu-table .plan-detail {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .survey-plan .flex-item.col2-1 .grid-item.top .menu-table .plan-detail .plan-price {
        padding-right: 0;
    }
    .survey-plan .flex-item.col2-1 .grid-item.top .menu-table .plan-detail .plan-text {
        padding-left: 0;
        border: none;
    }
    .survey-plan .diagnosis-wrap {
        flex-direction: column;
    }
    .btn-wrap.survey.col2 {
        flex-direction: column;
        align-items: center;
    }
    .btn-wrap.survey .btn {
        width: 80%;
        max-width: 330px;
    }
    .survey-plan .flex-item.col2 .plan-detail.col2 {
        flex-direction: column;
        gap: 1em;
    }
    .soc-h3.survey.fz27 {
        font-size: 4.25vw;
        margin-bottom: 4.2vw;
    }
    .survey-plan .plan-index.pinpoint p {
        line-height: 1.5;
        padding: 0 4px;
    }
    .survey-plan .diagnosis-head {
        align-items: center;
        display: flex;
        justify-content: center;
    }
    .survey-plan .diagnosis-txt {
        line-height: 1.5;
        padding: 0 4px;
    }
    .survey-plan .flex-item.col2-1 .plan-detail {
        padding: 16px;
    }
    .survey-plan.soc-sec6 {
        padding-bottom: 100px;
    }
    .point-list.col2 {
        margin-top: 30px;
    }
    .plan-table.survey {
        width: calc(100% - 132px);
    }
    .btn_dark-wrap {
        background: #f2f2f2;
        padding-top: 90px;
        margin-bottom: -90px;
        padding-bottom: 40px;
    }
    .plan-subject.survey img {
        height: 387.5px !important;
    }
}


/* security-survey details */
.survey-details .soc-ttl.survey-details {
    font-weight: 500;
}
.soc-h2.survey-details {
    font-weight: 500;
}
.survey-details .step-list {
    counter-reset: step-count;
    list-style: none;
    padding: 0;
}
.survey-details .step-list > li {
    counter-increment: step-count;
    display: flex;
}
.survey-details .step-list > li:nth-child(n + 2) {
    position: relative;
    margin-top: 80px;
}
.survey-details .step-list > li:nth-child(n + 2)::before {
    content: "";
    position: absolute;
    top: -52px;
    inset-inline: 0;
    margin-inline: auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 16px solid transparent;
    border-left: 16px solid transparent;
    border-top: 28px solid #002c5b;
    border-bottom: 0;
}
.survey-details .step-list .num {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #002c5b;
    font-size: 44px;
    font-family: 'DIN';
    font-weight: bold;
    width: 142px;
}
.survey-details .step-list .num::before {
    content: counter(step-count);
}
.survey-details .step-main-wrap {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: start;
    padding: 8px 16px;
    gap: 12px;
    border: 1px solid #002c5b;
}
.survey-details .step-img-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}
.survey-details .step-img-wrap > img {
    width: 114px;
}
.survey-details .step-ttl {
    font-weight: bold;
    font-size: 22px;
    margin: auto;
}
.survey-details .step-text {
    font-size: 16px;
    margin: auto;
    margin-top: 10px;
}
.survey-details .soc-ttl {
    font-size: 40px;
    text-align: center;
    color: #002c5b;
    font-weight: bold;
    margin: auto;
}
.survey-details .flex.col3-single {
    width: calc(100% / 3 - 40px);
    margin: auto;
}
.survey-details .annotation-wrap {
    padding-inline: 340px;
}
.survey-details a.link-txt {
    color: #0900ff;
}
@media screen and  (min-width: 751px) {
	#title-web,
	#title-network {
  	scroll-margin-top: 93px;
	}
    #soc-sec3,
	#soc-sec5 {
  	scroll-margin-top: 93px;
	}
}
@media screen and (max-width: 750px) {
    .survey-details .step-main-wrap {
        padding: 16px;
        align-items: center;
    }
    .survey-details .step-ttl {
        font-size: 20px;
    }
    .survey-details .step-img-wrap {
        max-width: 40px;
        min-width: 40px;
        margin-top: -4px;
    }
    .survey-details .step-list .num {
        font-size: 32px;
        width: 52px;
    }
    .survey-details .soc-ttl {
        font-size: 30px;
    }
    .survey-details .flex.col3-single {
        width: 100%;
    }
    .survey-details .annotation-wrap {
        padding-inline: 0;
    }
}