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

base

=========================================================================== */
:root {
    --black: #292C30;
    --white: #FFFFFF;
    --grey: #939495;
    
    --news-all: #78797B;
    --news-case: #363636;
    --news-howto: #184A36;
    --news-interview: #16365B;

    --wedo1: #000000;
    --wedo2: #78797B;
    --wedo3: #3C3C3C;
    --wedo4: #3C3C3C;
    --wedo5: #16365B;
    --wedo6: #27465B;
    --wedo7: #1D4073;
    --wedo8: #143D45;
    --wedo9: #184A36;
    --wedo10: #224241;
    
    --link-red: #FF5555;
    
    --border-grey: #E0E0E0;
    
    --slider-dot-active: #A9A8A8;
    --slider-dot-inactive: #D9D9D9;　/*opacity: 50%*/
    
}

/*  Made by Elly Loel - https://ellyloel.com/  */
*{margin:0;padding:0;line-height:calc(.25rem + 1em + .25rem)}*,::after,::before{box-sizing:border-box}:where(:not(fieldset,progress,meter)){border-width:0;border-style:solid;background-origin:border-box;background-repeat:no-repeat}html{block-size:100%;-webkit-text-size-adjust:none}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeSpeed;min-block-size:100%}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block}:where(img,svg,video){block-size:auto;max-inline-size:100%}:where(svg){stroke:none;fill:currentColor}:where(svg):where(:not([fill])){stroke:currentColor;fill:none;stroke-linecap:round;stroke-linejoin:round}:where(svg):where(:not([width])){inline-size:5rem}:where(input,button,textarea,select),:where(input[type=file])::-webkit-file-upload-button{color:inherit;font:inherit;font-size:inherit;letter-spacing:inherit;word-spacing:inherit}:where(textarea){resize:vertical}@supports (resize:block){:where(textarea){resize:block}}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}h1{font-size:2em}:where(ul,ol){list-style:none}a:not([class]){text-decoration-skip-ink:auto;text-decoration:none}:where(a[href],area,button,input,label[for],select,summary,textarea,[tabindex]:not([tabindex*="-"])){text-decoration:none;cursor:pointer;touch-action:manipulation}:where(input[type=file]){cursor:auto}:where(input[type=file])::-webkit-file-upload-button,:where(input[type=file])::file-selector-button{cursor:pointer}@media (prefers-reduced-motion:no-preference){html:focus-within{scroll-behavior:smooth}:focus-visible{transition:outline-offset 145ms cubic-bezier(.25, 0, .4, 1)}:where(:not(:active)):focus-visible{transition-duration:.25s}}:where(:not(:active)):focus-visible{outline-offset:5px}:where(button,button[type],input[type=button],input[type=submit],input[type=reset]),:where(input[type=file])::-webkit-file-upload-button,:where(input[type=file])::file-selector-button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none;text-align:center}:where(button,button[type],input[type=button],input[type=submit],input[type=reset])[disabled]{cursor:not-allowed}

/* -----------------------------------------------------------
common
----------------------------------------------------------- */
html {
    font-size: 62.5%;
    height: 100%;
}

body {
    background: var(--white);
    color: var(--black);
	font-size: 1.6rem;
    font-family: "Roboto Flex","Noto Sans JP", sans-serif;
    font-weight: 400;
    font-style: normal;
	letter-spacing: 0.05em;
    height: 100%;
}
a {
	color: var(--black);
    text-decoration: none;
	transition: all .3s ease;
	cursor: pointer;
}
a:hover {
    opacity: 0.7;
}

li {
	line-height: 2;
}
p {
	font-weight: 800;
    line-height: 1.5;
}

section {
	overflow: hidden;
}

ul,li {
	list-style: none;
}
.pc {
	display: block;
}

.sp {
	display: none;
}

.scroll-locked {
  overflow: hidden;
}

/* もし body に transition が指定されているなら… */
.scroll-locked,
.scroll-locked * {
  transition: none !important;
}

@media screen and (max-width: 1500px) and (min-width: 769px) {
	html {
		font-size: 0.6vw;
	}
    html.is_prevent_scroll {
        scroll-behavior: auto !important;
        overflow: hidden;
    }
}
@media only screen and (max-width: 768px) {
    html{
        font-size: 2.5vw;
        -webkit-overflow-scrolling: touch;
        scroll-behavior: auto !important;
    }
	body {
		font-size: 1.1rem;
		overflow-x: hidden;
        width: 100%;
	}
    .page_normal{
        padding: 8rem 2rem;
    }
    .page_form{
        padding: 8rem 2rem;
    }
    .pc {
		display: none !important;
	}

	.sp {
		display: block !important;
	}
    .ly_sec_inner + .ly_sec_inner{
        margin-top: 8rem;
    }
}
.ly_sec_inner{
    max-width: 90rem;
    margin-left: auto;
    margin-right: auto;
    padding-top: 10rem;
    padding-bottom: 10rem;
}
.ly_sec_header_inner{
    max-width: 90rem;
    margin-left: auto;
    margin-right: auto;
}
.ly_page_lower{
    padding-top: 12rem;
}
@media screen and (max-width:768px) {
    .ly_sec_inner{
        max-width: 80vw;
        padding-top: 5rem;
        padding-bottom: 5rem;
    }
    .ly_sec_header_inner{
        max-width: 100vw;
    }
    .ly_page_lower{
        padding-top: 6rem;
    }
}
/* -----------------------------------------------------------
anime
----------------------------------------------------------- */
.js_reveal {
  opacity: 0;
  transform: translateY(2rem);
  transition: opacity .6s ease, transform .6s ease;
  will-change: opacity, transform;
}

.js_reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* インライン要素で効きが弱いときだけ付与 */
.js_reveal-inline { display: inline-block; }

/* OVER 1,500,000,000 YEN FOUND */
@keyframes fontGlitch {
  0%, 85%, 100% {
    font-family: 'Roboto Flex', sans-serif;
    opacity: 1;
    transform: none;
  }

  10% {
    font-family: 'Orbitron', sans-serif;
    opacity: 0.6;
  }

  20% {
    font-family: 'Courier New', monospace;
    opacity: 0.4;
  }

  30% {
    font-family: 'Share Tech Mono', monospace;
    opacity: 0.7;
  }

  40% {
    font-family: 'Orbitron', sans-serif;
    opacity: 0.5;
  }

  50% {
    font-family: 'Courier New', monospace;
    opacity: 0.3;
  }

  60% {
    font-family: 'Share Tech Mono', monospace;
    opacity: 0.6;
    transform: none;
  }

  70% {
    font-family: 'Orbitron', sans-serif;
    opacity: 0.8;
  }

  80% {
    font-family: 'Roboto Flex', sans-serif;
    opacity: 1;
    transform: none;
  }
  90% {
    font-family: 'Roboto Flex', sans-serif;
    transform: translateX(1px);
  }

  91% {
    transform: translateX(-1px);
  }

  92% {
    transform: translateX(2px);
  }

  93% {
    transform: translateX(-2px);
  }

  94% {
    transform: translateX(1px);
  }

  95% {
    transform: none;
  }
}
.glitch-text {
    font-family: 'Roboto Flex', sans-serif;
    display: inline-block;
    font-size: 2rem;
    animation: fontGlitch 2.8s ease-in-out infinite;
    min-width: 10em;
    text-align: center;
    overflow: hidden;
}
@media screen and (max-width:768px) {
    .glitch-text {
      font-size: 1rem;
    }
}

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

base

=========================================================================== */
/* -----------------------------------------------------------
heading text link
----------------------------------------------------------- */
.el_heading_top_h2{
    font-size: 6.4rem;
    font-weight: 300;
    position: relative;
    overflow: hidden;
}
.el_heading_top_h2 span{
    font-weight: 500;
}
.el_heading_top_h2:after{
    content: "";
    display: inline-block;
    width: 100%;
    height: 0.5rem;
    background: var(--black);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    margin-left: 2.4rem;
}
.el_heading_top_h3{
    font-size: 5rem;
    font-weight: 800;
}
.el_bg_black{
    background: var(--black);
    color: var(--white);
    font-size: 2.4rem;
    font-weight: 800;
    line-height: 1.5;
    display: inline;
    padding: 0.25em 0.4em;
}
.ly_linkbtn{
    display: flex;
    justify-content: center;
    margin-top: 4rem;
}
.el_link_normal{
    background: var(--black);
    color: var(--white);
    font-weight: 800;
    line-height: 1.5;
    border-radius: 3rem;
    padding: 0.8em 3em;
    display: inline-block;
    position: relative;
    text-align: center;
}
.el_link_window{
    background: var(--link-red);
    color: var(--white);
    font-size: 2rem;
    font-weight: 800;
    border-radius: 3rem;
    padding: 0.8em 4em 0.8em 3em;
    display: inline-block;
    position: relative;
}
.el_link_window:after{
    content: "";
    display: inline-block;
    width: 0.8em;
    height: 0.8em;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(/assets/oikaze_2025/images/ico_wondow_white.svg);
    position: absolute;
    right: 2em;
    top: 0;
    bottom: 0;
    margin: auto;
}
.el_note{
    font-size: 1rem;
    color: var(--grey);
    text-align: center;
}
.el_btn_inquiry{
    background: var(--black);
    color: var(--white);
    font-size: 2rem;
    font-weight: 800;
    padding: 0.5em 1.2em;
    border-radius: 3em;
}
.el_heading_news{
    font-size: 2.4rem;
}

@media screen and (max-width:768px) {
    .el_heading_top_h2{
        font-size: 3.6rem;
    }
    .el_heading_top_h2:after{
        height: 0.2rem;
        margin-left: 2rem;
    }
    .el_heading_top_h3{
        font-size: 3.6rem;
        position: relative;
        display: inline-block;
        background: var(--white);
        padding: 0.2em 0;
    }
    .bg_black .el_heading_top_h3{
        background: var(--black);
    }
    .ly_work_header{
        position: relative;
        overflow: hidden;
    }
    .ly_work_header:after{
        content: "";
        display: inline-block;
        width: 100%;
        height: 0.2rem;
        background: var(--black);
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        margin-left: 2.4rem;
    }
    .bg_black .ly_work_header:after{
        background: var(--white);
    }
    .el_bg_black{
        font-size: 1.5rem;
        padding: 0.25em 0.4em;
    }
    .el_link_window{
        font-size: 1.1rem;
        padding: 0.8em 3em 0.8em 1.5em;
    }
    .el_link_window:after{
        right: 1.5em;
    }
    .el_note{
        font-size: 1rem;
        font-weight: 400;
    }
    .el_btn_inquiry{
        font-size: 1.5rem;
    }
}

/* -----------------------------------------------------------
header
----------------------------------------------------------- */
.no-js .ly_header {
    display: none;
}
.ly_header{
    padding-bottom: 2rem;
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 1000;
    background: rgba(255, 255, 255, .95); /* 適宜 */
}
#oikaze_top .ly_header {
    transform: translateY(-100%);
    transition: transform .4s ease;
    will-change: transform;
}
#oikaze_top.show-header .ly_header {
    transform: translateY(0);
}
.ly_mv_header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.ly_mv_header_ttlArea {
    padding: 7.3rem 3rem 0 3rem;
}
.ly_mv_header_navArea {
    padding: 2rem 0;
    border-bottom: 5px solid var(--white);
    width: 100%;
}
.ly_header_navlist {
    display: flex;
    justify-content: flex-end;
    gap: 3rem;
}
.bl_header_navlistitem a{
    color: var(--white);
    font-weight: 800;
    font-size: 2rem;
    letter-spacing: 0;
    padding: 0.5em;
    border-radius: 0.5rem;
    display: inline-block;
}
.bl_header_navlistitem a.el_header_navlistitem_inquiry {
    background: var(--white);
    color: var(--black);
}
.ly_header .ly_mv_header_navArea {
    border-color: var(--black);
}
.ly_header .bl_header_navlistitem a{
    color: var(--black);
}
.ly_header .bl_header_navlistitem a.el_header_navlistitem_inquiry {
    background: var(--black);
    color: var(--white);
}
.ly_header .el_mv_header_ttl{
    color: var(--black);
}
.ly_mv_header_copyArea {
    padding: 6rem 6rem 0 6rem;
}
.ly_sp_header{
    display: none;
}
@media screen and (max-width:768px) {
    .ly_mv_header {
        display: none;
    }
    .ly_header{
        background: transparent;
        padding-bottom: 0;
    }
    #oikaze_top .ly_header {
        pointer-events: none;
    }
    #oikaze_top.show-header .ly_header {
        pointer-events: auto;
        overflow: inherit;
    }
    .ly_sp_header{
        display: block;
        position: relative;
    }
    .ly_sp_header:before{
        content: "";
        width: 100%;
        height: 2px;
        background: var(--white);
        display: inline-block;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 20vw;
        margin: auto;   
    }
    .ly_header .ly_sp_header:before{
        content: none;        
    }
    .ly_sp_menu{
        background: var(--white);
        color: var(--black);
        max-width: 80vw;
        position: fixed;
        left: 0;
        right: 0;
        margin: auto;
        width: 80vw;
        z-index: 999;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-8px);
        pointer-events: none; 
        transition:
        opacity .25s ease,
        transform .25s ease,
        visibility 0s linear .25s;
        will-change: opacity, transform;
    }
    .ly_sp_menu.is-open {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        pointer-events: auto; 
        transition:
        opacity .25s ease,
        transform .25s ease,
        visibility 0s;
    }
    .ly_sp_menu_inner{
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        padding: 10rem 2rem 4rem;
        gap: 10rem;
    }
    .ly_sp_header_navArea{
    }
    .ly_sp_header_navlist{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .bl_sp_header_navlistitem a{
        font-weight: 800;
        font-size: 2rem;
        padding: 0.25em 0.5em;
        letter-spacing: 0;
        display: inline-block;
    }
    .ly_sp_header_inquiry{
        text-align: center;
    }
    .nav-btn-open,
    .nav-btn-close{
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        display: flex;
        flex-direction: column;
        justify-content: end;
        align-items: center;
        box-sizing: content-box;
        border: 0;
        outline: 0;
        width: 7.2rem;
        height: 7.2rem;
        padding: 0;
        text-align: center;
        flex: 0 0 auto;
        cursor: pointer;
        background: var(--black);
        margin-left: auto;
    }
    .nav-btn-icon,
    .nav-btn-icon:after,
    .nav-btn-icon:before {
        position: absolute;
        left: 0;
        right: 0;
        display: block;
        background: var(--white);
        width: 4.3rem;
        text-align: center;
        height: 0.15rem;
        border-radius: 2px;
        margin: auto;
    }
    .nav-btn-icon:before,.nav-btn-icon:after {
        content: "";
    }
    .nav-btn-open .nav-btn-icon {
        top: -0;
        bottom: 0;
    }
    .nav-btn-close .nav-btn-icon {
        top: 0;
        bottom: 0;
    }
    .nav-btn-open .nav-btn-icon:before {
        top: -0.8rem;
    }
    .nav-btn-open .nav-btn-icon:after {
        top: 0.8rem;
    }
    .nav-btn-close .nav-btn-icon{
        background: var(--kajimared);
    }
    .nav-btn-close .nav-btn-icon:after,
    .nav-btn-close .nav-btn-icon:before {
        top: 0;
    }
    .nav-btn-close .nav-btn-icon:before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .nav-btn-close .nav-btn-icon:after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}
/* -----------------------------------------------------------
mv
----------------------------------------------------------- */
.ly_mainVisualArea{
    background: var(--black);
    color: var(--white);
}
.ly_mv_body {
    position: relative;
}
.ly_mv_body_copyArea {
    transform: rotate(-90deg);
    transform-origin: left top;
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 3rem;
}
.ly_mv_body_mainArea {
    flex: 1;
    min-width: 0;
    border-left: 5px solid var(--white);
    padding: 10rem 4rem 0 13rem;
    margin-left: 4rem;
    margin-top: 3rem;
    margin-bottom: 6rem;
}
.ly_ttl_wrap {
    margin-bottom: 13rem;
}
.ly_detail_wrap {
    display: flex;
    justify-content: space-between;
}
.el_heading_top{
    font-size: 9.6rem;
    font-weight: 700;
    margin-bottom: 2.4rem;
}
.el_heading_topcopy{
    font-size: 2rem;
    font-weight: 400;
}
.el_mv_header_ttl{
    font-size: 2rem;
    font-weight: 800;
    color: var(--white);
}
.el_mv_header_copy{
    font-size: 1.3rem;
    white-space: nowrap;
    display: inline-block;
    line-height: 1.2em;
}
.el_mv_body_copy{
    font-size: 1.8rem;
    font-weight: 800;
    white-space: nowrap;
}
.el_mv_body_detail{
    font-size: 2.5rem;
    font-weight: 800;
    display: flex;
    align-items: flex-end;
}
.el_mv_body_detail span{
    font-size: 9rem;
    color: var(--black);
    position: relative;
    z-index: 0;
    display: inline-block;
}
.el_mv_body_detail span:after{
    content: "";
    display: inline-block;
    width: 100%;
    /*height: 85%;*/
    background: var(--white);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
    z-index: -1;
}
@media screen and (max-width:768px) {
    .ly_mv_body {
        position: relative;
    }
    .ly_mv_body_copyArea {
        left: 4vw;
        bottom: 19vh;
    }
    .ly_mv_body_mainArea {
        flex: 1;
        display: flex;
        flex-direction: column;
        justify-content: space-around;
        border-left: 2px solid var(--white);
        padding: 0 8vw;
        margin-left: 12vw;
        min-height: calc(100vh - 6.4rem - 26vh - 5vh);
        margin-top: 0;
        margin-bottom: 26vh;
    }
    .ly_ttl_wrap {
        margin-bottom: 0;
    }
    .ly_detail_wrap {
        flex-direction: column;
        gap: 2rem;
    }
    .el_heading_top{
        font-size: 7rem;
        margin-bottom: 2.4rem;
    }
    .el_heading_topcopy{
        font-size: 1.1rem;
        font-weight: 400;
    }
    .el_mv_body_copy{
        font-size: 1rem;
    }
    .el_mv_body_detail{
        font-size: 1.8rem;
    }
    .el_mv_body_detail span{
        font-size: 5rem;
    }
}

/* -----------------------------------------------------------
section
----------------------------------------------------------- */
.ly_sec_header{
    margin-bottom: 6.4rem;
}
.ly_sec_wrap + .ly_sec_wrap{
    margin-top: 5rem;
}
@media screen and (max-width:768px) {
}

/* -----------------------------------------------------------
news
----------------------------------------------------------- */
.el_news_date{
    font-size: 1.6rem;
    font-weight: 800;
}
.el_news_cat{
    font-size: 1.2rem;
    font-weight: 800;
    background: var(--news-all);
    color: var(--white);
    border-radius: 1.8rem;
    padding: 0.5em 1em;
    min-width: 10rem;
    text-align: center;
}
.ly_news_tabs{
    display: flex;
    gap: 3rem;
    margin-bottom: 4rem;
}
.el_news_tab{
    font-size: 1.36rem;
    font-weight: 800;
    background: var(--news-all);
    color: var(--white);
    border-radius: 1.8rem;
    padding: 0.5em 1em;
    min-width: 10rem;
    text-align: center;
}
.el_news_tab[data-cat="all"]       { background: var(--news-all); }
.el_news_tab[data-cat="case"]      { background: var(--news-case); }
.el_news_tab[data-cat="howto"]     { background: var(--news-howto); }
.el_news_tab[data-cat="interview"] { background: var(--news-interview); }
[data-cat="all"] .el_news_cat      { background: var(--news-all); }
[data-cat="case"] .el_news_cat     { background: var(--news-case); }
[data-cat="howto"] .el_news_cat    { background: var(--news-howto); }
[data-cat="interview"] .el_news_cat{ background: var(--news-interview); }

.el_news_ttl{
    font-size: 1.6rem;
    font-weight: 800;
}
.ly_news_list{
    border-top: 2px solid var(--border-grey);
}
.bl_news_listitem{
    border-bottom: 2px solid var(--border-grey);
}
.bl_news_listitem a{
    padding: 2rem 4rem 2rem 0;
    display: flex;
    position: relative;
}
.bl_news_listitem a:after{
    content: "";
    background: url(/assets/oikaze_2025/images/ico_news_arrow_r.svg);
    width: 2.3rem;
    height: 1.6rem;
    background-repeat: no-repeat;
    position: absolute;
    right: 1rem;
    top: 0;
    bottom: 0;
    margin: auto;
}
.bl_news_listitem a:hover:after{
    right: 0.5rem;
}
.bl_news_item_inner{
    display: flex;
    gap: 2.2rem;
    align-items: center;
}
@media screen and (max-width:768px) {
    .el_news_date{
        font-size: 1rem;
    }
    .el_news_cat{
        font-size: 0.7rem;
        border-radius: 1.8rem;
        padding: 0.5em 1em;
        min-width: 6.4rem;
    }
    .ly_news_tabs{
        flex-wrap: wrap;
        gap: 0.7rem;
        margin-bottom: 2rem;
    }
    .el_news_tab{
        font-size: 0.8rem;
        min-width: 7rem;
    }
    .el_news_ttl{
        font-size: 1rem;
    }
    .ly_news_list{
        border-top: 1px solid var(--border-grey);
    }
    .bl_news_listitem{
        border-bottom: 1px solid var(--border-grey);
    }
    .bl_news_listitem a{
        padding: 1.2rem 0;
    }
    .bl_news_listitem a:after{
        content: none;
    }
    .bl_news_item_inner{
        gap: 1.3rem;
    }
}

/* -----------------------------------------------------------
wedo
----------------------------------------------------------- */
.ly_wedo_list{
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    flex: 0 1 38%;
}
.el_wedo_listitem{
    color: var(--white);
    font-style: italic;
    font-weight: 600;
    padding: 0 1em;
    white-space: nowrap;
    flex: 1 1 auto;
    text-align: center;
    z-index: 1;
}
.el_wedo_listitem.is_disabled{
    color: rgba(255, 255, 255, 0.2);
}
.el_wedo_listitem_1{ background: var(--wedo1); }
.el_wedo_listitem_2{ background: var(--wedo2); }
.el_wedo_listitem_3{ background: var(--wedo3); }
.el_wedo_listitem_4{ background: var(--wedo4); }
.el_wedo_listitem_5{ background: var(--wedo5); }
.el_wedo_listitem_6{ background: var(--wedo6); }
.el_wedo_listitem_7{ background: var(--wedo7); }
.el_wedo_listitem_8{ background: var(--wedo8); }
.el_wedo_listitem_9{ background: var(--wedo9); }
.el_wedo_listitem_10{ background: var(--wedo10); }
@media screen and (max-width:768px) {
    .ly_wedo_list{
        gap: 0.6rem;
        flex: 0 1 38%;
    }
    .el_wedo_listitem{
        font-size: 0.85rem;
    }
}

/* -----------------------------------------------------------
work
----------------------------------------------------------- */
.ly_work_body .el_wedo_listitem{
    font-size: 0.8rem;
    padding: 0.5em 0.8em;
}
.ly_work_list{
    margin: 5rem 0;
    position: relative;
}
.ly_work_list:after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(255, 254, 254, 0) 0%, rgba(255, 254, 254, 0) 51.97%, rgba(255, 254, 254, 0.85) 77.2%, #FFFFFF 100%);
    position: absolute;
    top: 0;
    left: 0;
}
.el_work_price_ttl{
    font-size: 2.4rem;
    font-weight: 800;
    margin-bottom: 2rem;
}
.el_work_price{
    font-size: 3.6rem;
    font-weight: 800;
    display: inline-block;
    padding: 0 0.2em;
}
.ly_sec_work_outer.bg_black .el_work_price{
    background: var(--white);
    color: var(--black);
}
.ly_sec_work_outer.bg_white .el_work_price{
    background: var(--black);
    color: var(--white);
}

.ly_sec_work_outer{
    padding: 12rem 2rem;
}
.ly_sec_work_outer.bg_black{
    background: var(--black);
    color: var(--white);
}
.ly_sec_work_inner{
    max-width: 90rem;
    margin-left: auto;
    margin-right: auto;
    padding: 0 5rem;
}
.bg_black .ly_sec_work_inner{
    border-left: 5px solid var(--white);
}
.bg_white .ly_sec_work_inner{
    border-left: 5px solid var(--black);
}
.ly_work_header{
    margin-bottom: 4rem;
}
.ly_work_body_inner{
    display: flex;
    gap: 10rem;
    align-items: flex-end;
    margin-bottom: 8rem;
}
.bl_work_img{
    flex: 1 1 50%;
}
.ly_work_footer{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.ly_work_footer_left .el_note{
    text-align: left;
    margin-top: 1rem;
    
}
@media screen and (max-width:768px) {
    .ly_work_body .el_wedo_listitem{
        font-size: 0.78rem;
    }
    .ly_work_list{
        margin: 5rem 0;
        position: relative;
    }
    .ly_work_list:after{
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        background: linear-gradient(180deg, rgba(255, 254, 254, 0) 0%, rgba(255, 254, 254, 0) 51.97%, rgba(255, 254, 254, 0.85) 77.2%, #FFFFFF 100%);
        position: absolute;
        top: 0;
        left: 0;
    }
    .el_work_price_ttl{
        font-size: 1.8rem;
        margin-bottom: 1.2rem;
    }
    .el_work_price{
        font-size: 2.4rem;
    }
    .ly_sec_work_outer.bg_black .el_work_price{
        background: var(--white);
        color: var(--black);
    }
    .ly_sec_work_outer.bg_white .el_work_price{
        background: var(--black);
        color: var(--white);
    }
    .ly_sec_work_outer{
        padding: 8rem 2rem;
    }
    .ly_sec_work_outer.bg_black{
        background: var(--black);
        color: var(--white);
    }
    .ly_sec_work_inner{
        max-width: 100vw;
        padding: 0 6vw;
    }
    .bg_black .ly_sec_work_inner{
        border: none;
    }
    .bg_white .ly_sec_work_inner{
        border: none;
    }
    .ly_work_header{
        margin-bottom: 2rem;
    }
    .ly_work_body_inner{
        flex-direction: column-reverse;
        gap: 3rem;
        margin-bottom: 6rem;
    }
    .bl_work_img{
        flex: 1 1 50%;
        border-left: 2px solid var(--black);
        padding: 10vw 0 10vw 10vw;
    }
    .bg_black .bl_work_img{
        border-color: var(--white);
    }
    .ly_work_footer{
        gap: 1rem;
    }
    .ly_work_footer_right{
        align-self: center;
        margin-top: auto;
    }
}
/* -----------------------------------------------------------
testimonial
----------------------------------------------------------- */
.el_testimonial_mes{
    font-size: 1.1rem;
}
.el_testimonial_name{
    font-size: 1.4rem;
}
.bl_testimonial_listitem{
    border: 1px solid var(--border-grey);
    border-radius: 1rem;
    padding: 1.7rem 2rem;
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
    flex: 1;
    height: 100% !important;
    gap: 2rem;
}
.slick-track {
    display: flex !important;
    align-items: stretch;
}
.slick-slide {
    height: auto !important;
    margin: 0 2.5rem;
}
.slick-slide > div{
    height: 100% !important;
}
.slick-list {
    margin: 0 -2.5rem;
}
.dots-wrap {
    display: flex;
    justify-content: center;
    margin-top: 5rem;
}
.dots-wrap li {
    width: 1.2rem;
    height: 1.2rem;
    margin: 0 0.75rem;
    background: var(--slider-dot-inactive);
    border-radius: 50%;
    cursor: pointer;
    opacity: 0.5;
}
.dots-wrap li:hover,
.dots-wrap li.slick-active {
    background: var(--slider-dot-active);
    opacity: 1;
}
.dots-wrap li button {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 0;
    border: none;
    background-color: transparent;
}
@media screen and (max-width:768px) {
    .el_testimonial_mes{
        font-size: 1rem;
    }
    .el_testimonial_name{
        font-size: 1.2rem;
    }
    .slick-slide { margin: 0 1rem; }
    .slick-list  { margin: 0 -1rem; }
    .bl_testimonial_listitem { padding: 1.4rem 1.6rem; }
    .dots-wrap { margin-top: 3rem; }
    .dots-wrap li {
        width: 0.8rem;
        height: 0.8rem;
        margin: 0 0.5rem;
    }
}
/* -----------------------------------------------------------
footer
----------------------------------------------------------- */
.ly_footer_wrap{
    max-width: 90rem;
    margin-left: auto;
    margin-right: auto;
    padding-top: 8rem;
    padding-bottom: 8rem;
}
.ly_footer_cv{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2.5rem;
    margin-bottom: 10rem;
}
.el_footer_copy{
    font-size: 2rem;
}
.ly_footer_link{
    padding: 2rem 0;
}
.ly_footer_linklist{
    display: flex;
    justify-content: center;
    gap: 8rem;
}
.ly_footer_linklistitem a{
    font-size: 1rem;
    font-weight: 800;
    padding: 1em;
}
.ly_footer_copyright{
    text-align: center;
}
.el_copyright{
    font-size: 1.2rem;
}
@media screen and (max-width:768px) {
    .ly_footer_wrap{
        max-width: 90vw;
        padding-top: 6rem;
        padding-bottom: 30vh;
    }
    .ly_footer_cv{
        margin-bottom: 10rem;
    }
    .ly_footer_link {
        padding: 4rem 0;
    }
    .ly_footer_linklist{
        gap: 4rem;
    }
    .ly_footer_linklistitem a{
        font-size: 0.8;
    }
    .el_copyright{
        font-size: 0.8rem;
    }
}
.bl_pagination_list{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    margin-top: 5rem;
}
.bl_pagination_list li{
    display: flex;
    align-items: center;
}
.bl_pagination_list li:not(.prev,.next) a,
.bl_pagination_list li span{
    font-size: 2rem;
    font-weight: 800;
    color: var(--black);
    opacity: 0.3;
    padding: 0.5em;
    display: inline-block;
}
.bl_pagination_list li.is-current span{
    opacity: 1;
}
@media screen and (max-width:768px) {
    .bl_pagination_list{
        gap: 1rem;
        margin-top: 3rem;
    }
    .bl_pagination_list li:not(.prev,.next) a,
    .bl_pagination_list li span{
        font-size: 1.2rem;
    }
    .bl_pagination_list li img{
        width: 1.45rem;
        height: 1.45rem;
    }
}

.ly_news_lower .el_news_date{
    font-size: 1.6rem;
    font-weight: 800;
    opacity: 0.5;
    margin-bottom: 2rem;
    display: inline-block;
}
.ly_news_lower .ly_sec_body{
    display: flex;
    flex-direction: column;
    gap: 4rem;
}
.ly_news_lower .ly_sec_body p{
    font-weight: 400;
}
.ly_news_lower figure{
    text-align: center;
    margin-bottom: 4rem;
}
.ly_news_lower figure img{
    margin: auto;
}
.ly_news_lower figure figcaption{
    margin-top: 2rem;
    font-weight: 800;
    font-size: 0.8em;
    color: var(--grey);
}
.ly_news_lower ul{
    padding-left: 2rem;
}
.ly_news_lower ul li{
    list-style: disc;
}
.ly_news_lower blockquote{
    padding-left: 2rem;
    border-left: 2px solid var(--grey);
}
.ly_news_lower blockquote p{
    font-size: 1.5em;
    margin-bottom: 0.5em;
}
.ly_news_lower table{
    width: 100%;
}
.ly_news_lower table th{
    padding: 0.5em;
    background: var(--black);
    color: var(--white);
}
.ly_news_lower table td{
    padding: 0.5em;
}
.ly_news_lower .ly_sec_body a{
    text-decoration: underline;
    font-weight: 800;
}
.ly_news_lower .ly_sec_footer{
    margin-top: 20rem;
    text-align: center;
}
.el_link_news_top{
    font-weight: 800;
}