body{color:#333;}
h3.heading{font-size:38px;font-weight:700;color:#000;text-align:center;margin-bottom:40px;line-height:1.6;}
p.subtext{font-size:16px;margin:-20px auto 50px auto;width:fit-content;line-height:1.6;}
h4.sub{font-size:28px;font-weight:700;color:#000;margin-bottom:20px;line-height:1.6;}
h5.cap{font-size:20px;font-weight:700;color:#000;line-height:1.6;}
p.text{font-size:16px;line-height:1.8;}
.box-shadow{border-radius:10px;box-shadow:0px 6px 20px 0px rgba(89, 87, 87, 0.25);}
.bg-gray{background:#eee;}
.bg-white-gray{background:#f8f8f8;}
.bg-gradation{background:linear-gradient(64.16deg, #902AF3 9.28%, #0762DC 53.06%, #00D3BC 98.2%);}
.bg-gradation h3.heading,.bg-gradation p.subtext{color:#fff;}
.bg-element{
 background-image:url("https://www.worksap.co.jp/assets/img/landing/common/hue_lp_bg.svg");
 background-position:right 80% bottom -200px;
 background-repeat:no-repeat;
 background-size:760px;
 padding-bottom:40px;
}
@media (max-width:768px) {
 h3.heading{font-size:30px;}
 h4.sub{font-size:25px;}
 h5.cap{font-size:20px;}
 p.subtext,p.text{font-size:16px;}
 p.subtext{margin-bottom:20px;}
 .bg-element{
  background-size:200px;
  background-position:left -100px TOP -45px;
 }
}

/* --------------------------- SP用ハンバーガーメニュー --------------------------- */

.layerOn .layerMenu.forLP{z-index:auto;}
.layerMenu:not(.forLP){display:none;}

/* --------------------------- リンクボタン --------------------------- */

.c-btn01 a:after{background-image:linear-gradient(128deg, #912AF4 50%, transparent 50%);}
body.landing main .c-btn01{width:fit-content;}
body.landing main .c-btn01 a{max-width:unset;padding-right:40px;}
@media (max-width:850px){body.landing main .c-btn01{width:100%;}}
.LPblock_link_button .c-btn01{margin:0 auto;}
@media (max-width:768px) {.LPblock_link_button{max-width:230px;margin:0 auto;}}

/* --------------------------- カード内リンクボタン --------------------------- */

.link_button{
 width:fit-content;
 z-index:1;
}
.link_button a{
 position:absolute;
 width:auto;
 height:auto;
 margin:auto;
 top:0;
 bottom:0;
 right:0;
 left:0;
 z-index:30;
}
.link_button .c-btn01{
 position:relative;
 color:#fff;
 font-size:14px;
 font-size:1.4rem;
 line-height:1.71429em;
 letter-spacing:.04em;
 font-weight:bold;
 text-align:left;
 cursor:pointer;
 padding:8px 17px 8px;
}
.link_button .c-btn01:before,.link_button .c-btn01:after{
 content:"";
 position:absolute;
 top:0;
 left:0;
 bottom:0;
 border-radius:999px;
}
.link_button .c-btn01:before{
 right:0;
 background:#595757;
 border:1px solid #595757;
 z-index:-2;
}
.link_button .c-btn01:after{
 z-index:-1;
 width:100%;
 background-position:bottom right;
 background-size:200% 200%;
 transition:0.5s;
 background-image:linear-gradient(128deg, #912AF4 50%, transparent 50%);
 height:unset;
 transform:none;
}
.link_button a:hover + .c-btn01:after{
 background-position:top left;
}
.link_button .c-btn01 span{padding-right:30px;}

/* --------------------------- Header --------------------------- */

.header .gNavi{padding-top:16px;}
.naviBot,p.h-search.js-popup,.naviTop-language{display:none;}
#footer .block02 .right,#footer .left>.social{display:none;}
@media (min-width:781px){#footer .block02 .left{padding-top:0;}}
#footer .block03{margin-top:36px;}

/* --------------------------- MV（共通・デフォルト） --------------------------- */

.main-visual-default{
 background-color:#f8f9fa;
 background-image:url("https://www.worksap.co.jp/assets/img/landing/common/hue_lp_mv.svg");
 background-position:right 80% bottom;
 background-repeat:no-repeat;
 background-size:contain;
 overflow:hidden;
 padding:70px 0 70px;
}
.main-visual-default .mv-main-block{
 display:flex;
 align-items:center;
 gap:60px;
}
.main-visual-default .mv-text{
 flex:1 1 0%;
 padding-top:0;
}
.main-visual-default .mv-logo{
 flex:0 0 auto;
 max-width:32%;
}
.main-visual-default .mv-logo img{
 max-height:170px;
 width:auto;
 max-width:100%;
}
.mv-ttl{
 font-size:4rem;
 line-height:1.5;
 font-weight:700;
 color:#000;
 margin-bottom:10px;
 letter-spacing:0.05em;
}
.mv-sub{
 font-size:2.8rem;
 line-height:1.6;
 font-weight:700;
 color:#000;
 margin-bottom:20px;
}
.mv-desc{font-size:16px;line-height:1.6;}
.links{
 display:flex;
 gap:20px;
 flex-wrap:wrap;
 margin-top:25px;
}
@media (max-width:850px){
 .main-visual-default{
  padding-top:20px;
  background-position:right -70px bottom;
  background-size:150%;
 }
 .main-visual-default .mv-main-block{
  flex-direction:column-reverse;
  align-items:initial;
  gap:20px;
 }
 .main-visual-default .mv-logo{max-width:100%;height:90px;}
 .main-visual-default .mv-logo img{height:inherit;}
 .mv-ttl{font-size:3.6rem;}
 .mv-sub{font-size:2.2rem}
 .mv-desc{font-size:18px;}
 .links{
  flex-direction:column;
  gap:10px;
  align-items:center;
  max-width:230px;
  margin-right:auto;
  margin-left:auto;
 }
}

/* --------------------------- MV（カスタム） --------------------------- */

.main-visual-custom{
 width:100%;
 padding:70px 0;
 background-position:center;
 background-size:cover;
 background-repeat:no-repeat;
}
.main-visual-custom .mv-text{
 width:49%;
 background:rgba(5,5,5,0.55);
 padding:40px 65px;
}
.main-visual-custom .mv-ttl,
.main-visual-custom .mv-sub,
.main-visual-custom .mv-desc{
 color:#fff;
}
.main-visual-custom .mv-ttl{margin-bottom:20px;}
@media (max-width:850px){
 .main-visual-custom{
  padding:50px 0;
 }
 .main-visual-custom .mv-text{
  width:100%;
  padding:10px 15px;
 }
}

/* --------------------------- アンカーリンク --------------------------- */

.anchor{padding-top:50px; padding-bottom:50px;}
@media (max-width:768px){
 .anchor{display:none;}
}

/* --------------------------- チェックリスト --------------------------- */

.LPblock_check{padding:80px 0 90px;}
.LPblock_check .container{
 width:100%;
 padding:10px 70px 0;
}
.LPblock_check p{
 position:relative;
 padding:20px 20px 20px 60px;
 font-size:18px;
 font-weight:700;
 color:#002772;
 line-height:1.8;
 background:#fff;
 border-radius:5px;
 margin-bottom:15px;
}
.LPblock_check p:before{
 position:absolute;
 content:"";
 width:1.5em;
 height:1.5em;
 margin:auto;
 top:0;
 bottom:0;
 left:15px;
 background:url("https://www.worksap.co.jp/assets/img/landing/common/check.svg") no-repeat;
 background-position:center;
 background-size:contain;
}
@media (max-width:768px){
 .LPblock_check .container{padding:10px 0 0;}
 .LPblock_check p{padding:15px 15px 15px 55px;}
}

/* --------------------------- アイコン入りカード --------------------------- */

.LPblock_3rowA{padding:80px 0 90px;}
.LPblock_3rowA .container{
 display:flex;
 flex-wrap:wrap;
 gap:20px;
 width:100%;
 padding-top:10px;
}
.LPblock_3rowA_card{
 display:flex;
 flex-direction:column;
 flex-wrap:wrap;
 justify-content:space-between;
 width:calc((100% - 40px) / 3);
 background:#fff;
 padding:20px 30px;
}
.LPblock_3rowA_card .text{margin-bottom:20px;}
.LPblock_3rowA_card img{
 width:100%;
 height:90px;
 text-align:center;
 object-fit:contain;
}
@media (max-width:768px){
 .LPblock_3rowA .container{flex-direction:column;}
 .LPblock_3rowA_card{width:100%;}
}

/* --------------------------- 1列カードA --------------------------- */

.LPblock_1rowA{padding:80px 0 90px;}
.LPblock_1rowA .container{ display:flex;flex-direction:column;gap:20px;}
.LPblock_1rowA_card{
 display:flex;
 flex-wrap:wrap;
 justify-content:space-between;
 background:#fff;
 padding:30px 30px;
 gap:40px;
}
@media (min-width:769px){
 .container .LPblock_1rowA_card:nth-child(2n){flex-direction:row-reverse;}
}
.LPblock_1rowA_card .text-container{flex:3;}
.LPblock_1rowA_card .img-container{
 flex:2;
 aspect-ratio:2 / 1;
 background:#eee;
 border-radius:10px;
 background-size:cover;
 background-position:center;
}
.LPblock_1rowA_card .label{
 display:inline-block;
 background:linear-gradient(45deg, #902AF3 0%, #0762DC 58.22%, #00D3BC 92.92%);
 color:#fff;
 font-size:14px;
 font-weight:700;
 padding:6px 20px 4px 15px;
 border-radius:0 50px 50px 0;
 margin-bottom:20px;
}
@media (max-width:768px){
 .LPblock_1rowA .container{gap:50px;}
 .LPblock_1rowA_card{padding:0;align-items:center;gap:15px;}
 .LPblock_1rowA_card.box-shadow{box-shadow:none;}
 .LPblock_1rowA_card .text-container{flex:initial;width:100%;}
 .LPblock_1rowA_card .img-container{
  flex:initial;
  width:80%;
  margin:0 auto;
 }
 .LPblock_1rowA_card .label{font-size:18px;padding:12px 20px 10px 15px;}
}

/* --------------------------- 3列カードB --------------------------- */

.LPblock_3rowB{padding:80px 0 90px;}
.LPblock_3rowB .container{
 display:flex;
 flex-wrap:wrap;
 gap:20px;
 width:100%;
}
.LPblock_3rowB_card{
 display:flex;
 flex-direction:column;
 width:calc((100% - 40px) / 3);
 background:#fff;
 border-radius:10px;
 overflow:hidden;
}
.LPblock_3rowB_card .img-container{
 aspect-ratio:3 / 2;
 width:100%;
 background:#eee;
 background-size:cover;
 background-position:center;
 margin-bottom:20px;
}
.LPblock_3rowB_card .cap{text-align:center;}
.LPblock_3rowB_card .cap, .LPblock_3rowB_card .text{padding:0 20px;margin-bottom:20px;}
@media (max-width:768px){.LPblock_3rowB_card{width:100%;}}
/* --------------------------- アイコングリッド --------------------------- */

.LPblock_icongrid{padding:80px 0 90px;}
.LPblock_icongrid .container{
 display:flex;
 flex-wrap:wrap;
 width:100%;
 justify-content:center;
 align-items:center;
 gap:30px 35px;
}
.LPblock_icongrid_card{
 display:flex;
 flex-direction:column;
 flex-wrap:wrap;
 justify-content:space-between;
 align-items:center;
 justify-content:center;
 width:220px;
 height:220px;
 background:#fff;
 border-radius:50%;
 text-align:center;
 font-size:20px;
 padding:20px;
}
.LPblock_icongrid_card .text{}
.LPblock_icongrid_card img{
 width:110px;
 height:85px;
 margin-bottom:15px;
 object-fit:contain;
}

/* --------------------------- タブ切り替え --------------------------- */

.LPblock_tablist{padding:80px 0 90px;}
.LPblock_tablist .tabs{
 display:flex;
 gap:10px;
 width:100%;
 padding:0;
 margin:0;
 z-index:10;
}
.LPblock_tablist .tabs li{
 width:calc((100% - 20px) / 3);
 background:#eaeaea;
 color:#666;
 text-align:center;
 border-radius:10px 10px 0 0;
 padding:18px;
}
.LPblock_tablist .tabs li.active{
 background:#fff;
 color:#000;
 margin-bottom:-2px;
 padding-bottom:20px;
 box-shadow:
   -7px -4px 10px -1px rgba(89, 87, 87, 0.07),
    7px -4px 10px -1px rgba(89, 87, 87, 0.07)
}
.LPblock_tablist .tabs li span{
 position:relative;
 font-size:16px;
 padding-left:1.7em;
 font-weight:700;
}
.LPblock_tablist .tabs li span:before{
 position:absolute;
 content:"";
 width:2.5em;
 height:2.5em;
 margin:auto;
 top:0;
 bottom:0;
 left:-2rem;
 background-size:contain;
}
.LPblock_tablist_tab{
 display:flex;
 flex-wrap:wrap;
 width:100%;
 background:#fff;
 padding:35px 30px 30px;
 margin-bottom:20px;
 border-radius:0 0 10px 10px;
 box-shadow:0px 4px 20px 0px rgba(89, 87, 87, 0.25);
}
.LPblock_tablist_tab .img-container{flex:2;text-align:center;}
.LPblock_tablist_tab .img-container img{
 width:32%;
 object-fit:contain;
 margin-bottom:25px;
}
.LPblock_tablist_tab .img-container h4{font-size:22px;margin-bottom:0;}
.LPblock_tablist_tab .text-container{flex:5;}
.LPblock_tablist_tab .text-container ul{
 list-style-type:disc;
 font-size:16px;
 line-height:2.4;
 padding-left:25px;
}
@media (max-width:768px){
 .LPblock_tablist .tabs li{
  padding:30px 18px 8px;
 }
 .LPblock_tablist .tabs li.active{padding-bottom:10px;}
 .LPblock_tablist .tabs li span{
  display:block;
  padding-top:1.9em;
  padding-left:0;
 }
 .LPblock_tablist .tabs li span:before{
  right:0;
  left:0;
  top:-1.9rem;
  bottom:auto;
 }
 .LPblock_tablist_tab .img-container{display:none;}
}

/* --------------------------- 2列カード --------------------------- */

.LPblock_2rowA{padding:80px 0 90px;}
.LPblock_2rowA .container{
 display:flex;
 flex-wrap:wrap;
 gap:20px;
}
.LPblock_2rowA_card{
 position:relative;
 flex:1;
 display:flex;
 flex-direction:column;
 gap:18px;
 background:#fff;
 padding:30px;
}
.LPblock_2rowA_card img{
 width:100%;
 height:90px;
 object-fit:cover;
}
.LPblock_2rowA_card .cap-container{
 display:flex;
 align-items:center;
 gap:10px;
 padding-bottom:5px;
}
.LPblock_2rowA_card .label{
 display:inline-block;
 background:linear-gradient(45deg, #902AF3 0%, #0762DC 58.22%, #00D3BC 92.92%);
 color:#fff;
 font-size:14px;
 font-weight:700;
 padding:7px 15px 7px 30px;
 border-radius:0 30px 30px 0;
 margin-left:-30px;
}
.LPblock_2rowA_card .cap{display:inline-block;}
.LPblock_2rowA_card .num-container{
 text-align:center;
 padding:23px 10px 15px;
 box-shadow:0px 3px 10px 0px rgba(89, 87, 87, 0.25);
 margin-bottom:10px;
}
.LPblock_2rowA_card .num{
 color:#002772;
 font-size:18px;
 margin-bottom:8px;
}
.LPblock_2rowA_card .num strong{
 font-size:210%;
 font-weight:700;
}
.LPblock_2rowA_card .sup{
 color:#0762dc;
 font-size:14px;
 line-height:1.6;
}
.LPblock_2rowA_card .link_button{margin:0 auto;}
@media (max-width:768px){
 .LPblock_2rowA_card{
  flex:initial;
  width:100%;
  padding:20px 0;
 }
 .LPblock_2rowA_card .label{margin-left:0;}
 .LPblock_2rowA_card .num-container{margin:0 30px 10px;}
}

/* --------------------------- 1列カードB --------------------------- */

.LPblock_1rowB{padding:80px 0 90px;}
.LPblock_1rowB_card{
 position:relative;
 display:flex;
 flex-wrap:wrap;
 gap:20px;
 align-items:center;
 background:#fff;
 padding:30px 30px;
 margin-bottom:30px;
}
.LPblock_1rowB_card .text-container{
 flex:3;
 display:flex;
 flex-direction:column;
 gap:15px;
}
.LPblock_1rowB_card .img-container{
 flex:2;
 aspect-ratio:5 / 3;
 background-size:contain;
 background-position:center;
 background-repeat:no-repeat;
}
.LPblock_1rowB_card .label,
.LPblock_1rowB_card .sub,
.LPblock_1rowB_card .link a{
 color:#0762dc;
 font-weight:700;
 margin-bottom:0;
}
.LPblock_1rowB_card .label{font-size:18px;}
.LPblock_1rowB_card .sub{font-size:20px;}
@media (max-width:768px){
 .LPblock_1rowB_card .text-container,.LPblock_1rowB_card .img-container{flex:initial;}
 .LPblock_1rowB_card .text-container{width:100%;padding-top:15px;}
 .LPblock_1rowB_card .img-container{width:80%;margin:0 auto;}
}

/* --------------------------- Q&A --------------------------- */

.LPblock_FAQ{padding:80px 0 90px;}
.LPblock_FAQ .container{
 counter-reset:faq-counter;
 display:flex;
 flex-direction:column;
 gap:15px;
}
.LPblock_FAQ_card{
 background:#fff;
 padding:15px 30px;
 cursor:pointer;
}
.LPblock_FAQ_card .question{
 counter-increment:faq-counter;
 position:relative;
 font-size:20px;
 color:#000;
 font-weight:700;
 line-height:1.6;
 padding:0 55px;
 transition:.2s;
}
.LPblock_FAQ_card:hover .question{
 color:#777;
}
.LPblock_FAQ_card .question:before{
 position:absolute;
 content:"Q" counter(faq-counter); 
 width:2em;
 height:1em;
 font-size:130%;
 font-weight:700;
 color:#912AF4;
 margin:auto;
 top:-4px;
 left:0;
}
.LPblock_FAQ_card .question:after{
 content:"";
 position:absolute;
 background-image:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iOSIgdmlld0JveD0iMCAwIDE0IDkiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0xLjM0MzE1IDEuNDk5NEw3IDcuMTU2MjVMMTIuNjU2OSAxLjQ5OTQiIHN0cm9rZT0iIzU5NTc1NyIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L3N2Zz4K");
 background-repeat:no-repeat;
 background-size:cover;
 width:14px;
 height:9px;
 margin:auto;
 top:0;
 bottom:0;
 right:0;
 transform:scale(1);
 background-position:center center;
 transition:.32s ease-in-out;
}
.LPblock_FAQ_card .question._active:after{
 transform:rotate(180deg);
}
.LPblock_FAQ_card .answer{
 max-height:0;
 overflow:hidden;
 opacity:0;
 transition:max-height 0.35s ease-out, opacity 0.35s ease-out;
}
.LPblock_FAQ_card .question._active + .answer{
 opacity:1;
}
.LPblock_FAQ_card .answer_inner{
 font-size:16px;
 line-height:1.6;
 padding-top:15px;
}
/* --------------------------- 数字グリッド --------------------------- */

.LPblock_numgrid{padding:80px 0 90px;}
.LPblock_numgrid .inner_994{
 border:solid 2px;
 border-image:linear-gradient(45deg, #902AF3 0%, #0762DC 58.22%, #00D3BC 92.92%) 1;
 background:#fff;
 padding:40px 50px 30px 50px;
}
.LPblock_numgrid .container{
 position:relative;
 display:flex;
 flex-wrap:wrap;
 width:100%;
}
.LPblock_numgrid .container:before,.LPblock_numgrid .container:after{
 position:absolute;
 content:"";
 margin:auto;
 background:#fff;
}
.LPblock_numgrid .container:before{
 height:100%;
 width:3px;
 top:0;
 bottom:0;
 right:0;
 z-index:50;
}
.LPblock_numgrid .container:after{
 height:3px;
 width:100%;
 bottom:0;
 right:0;
 left:0;
 z-index:55;
}
.LPblock_numgrid_card{
 position:relative;
 display:flex;
 flex-direction:column;
 flex-wrap:wrap;
 justify-content:space-between;
 align-items:center;
 width:calc(100% / 4);
 text-align:center;
 padding:30px 20px;
}
.LPblock_numgrid_card:before,.LPblock_numgrid_card:after{
 position:absolute;
 content:"";
 margin:auto;
 background:#ddd;
}
.LPblock_numgrid_card:before{
 height:calc(100% - 50px);
 width:1px;
 top:0;
 bottom:0;
 right:0;
}
.LPblock_numgrid_card:after{
 height:1px;
 width:calc(100% - 40px);
 bottom:0;
 right:0;
 left:0;
}
.LPblock_numgrid_card .num{
 color:#FF7631;
 font-size:18px;
 margin-bottom:10px;
}
.LPblock_numgrid_card .num strong{
 font-size:180%;
 font-weight:700;
}
.LPblock_numgrid_card .sup{
 color:#666;
 font-size:90%;
}
@media (max-width:768px){
 .LPblock_numgrid .inner_994{
  margin:0 20px;
  padding:30px 10px;
  width:auto;
 }
 .LPblock_numgrid p.subtext{margin-bottom:0;}
 .LPblock_numgrid .container:after,.LPblock_numgrid_card:after{content:none;}
 .LPblock_numgrid_card{width:calc(100% / 2);padding:30px 10px;}
 .LPblock_numgrid_card:before{height:calc(100% - 20px);}
 .LPblock_numgrid_card .num{margin-bottom:5px;}
}

/* --------------------------- 動画 --------------------------- */

.LPblock_movie{padding:80px 0 90px;}
.LPblock_movie .container{
 height:400px;
 margin:0 auto 40px auto;
 text-align:center;
 max-width:100%;
}
.LPblock_movie .container iframe{
 height:100%;
 border:none;
 margin:0;
 aspect-ratio:16 / 9;
}
.LPblock_movie .link_button{margin:0 auto;}
@media (max-width:768px){
 .LPblock_movie{padding-right:50px;padding-left:50px;}
 .LPblock_movie .container{
  height:auto;
  width:100%;
 }
 .LPblock_movie .container iframe{height:auto;width:100%;}
}
/* --------------------------- 見出し付きテキスト --------------------------- */

.LPblock_simple_text{padding:80px 40px;}
.LPblock_simple_text .sub{text-align:center;}

/* --------------------------- 画像付きテキスト --------------------------- */

.LPblock_img_text{padding:80px 0 90px;}
.LPblock_img_text .sub{line-height:1.4;}
.LPblock_img_text .container{
 display:flex;
 flex-wrap:wrap;
 gap:50px;
}
.LPblock_img_text .container .text-container{
 flex:2;
 display:flex;
 flex-direction:column;
 gap:20px;
}
.LPblock_img_text .container .img-container{
 flex:1;
 aspect-ratio:1 / 1;
 background:#eee;
 background-size:cover;
 background-position:center;
 background-repeat:no-repeat;
 border-radius:5px;
}
.LPblock_img_text .container .text-container .sub{margin-bottom:0;}
@media (max-width:768px){
 .LPblock_img_text .container{flex-direction:column-reverse;gap:30px;}
 .LPblock_img_text .container .text-container,.LPblock_img_text .container .img-container{
  flex:initial;
 }
 .LPblock_img_text .container .img-container{width:80%;margin:0 auto;}
}

/* --------------------------- 資料ダウンロード --------------------------- */

#download_form{padding:80px 40px;}
.dc-form{padding:25px 30px;}

/* 26/10/06追加　ヘッダ修正 */
body:not(.landing) .header .gNavi{padding-top:0}body:not(.landing) .naviBot,body:not(.landing) p.h-search.js-popup,body:not(.landing) .naviTop-language{display:block!important}