*{margin:0;padding:0;box-sizing:border-box}* :before,* :after{box-sizing:border-box}html{width:100%;height:100%;min-width:320px;font-size:16px;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{width:100%;height:100%;color:#000;background-color:#fff;line-height:1;font-weight:400;font-family:Inter,Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,sans-serif}ul,li,dl,dt,dd{list-style:none;font-weight:400}a{display:block;text-decoration:none;background-color:transparent;outline:0;color:inherit;cursor:pointer}a:active,a:hover{text-decoration:none;outline:0;color:inherit}button,input,select{padding:0;background-color:transparent;border:none;appearance:none;-moz-appearance:none;-webkit-appearance:none;cursor:pointer}button:disabled,input:disabled,select:disabled{opacity:.3!important;cursor:not-allowed}select:focus{outline:none}img{display:block;border:0;width:100%}h1,h2,h3,h4,h5,h6{font-weight:400}p{line-height:1.5}input::placeholder{color:#3c3c3c;font-weight:400}input:focus::placeholder{color:#000}input:focus,textarea:focus{outline:none}.btn{cursor:pointer;position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;font-weight:600;text-align:center;border-radius:.5rem;font-size:1rem;min-height:42px;border-radius:50px;padding-block:6px}.btn.btn-default{width:220px}.btn.btn-lg{width:372px}.btn-primary{background-color:#0f3b96;color:#fff!important}.btn-primary:hover:not(:disabled){background-color:#fff;border:2px solid #0f3b96;color:#0f3b96!important}.btn-white{background-color:#fff;border:1px solid #0f3b96;color:#0f3b96;box-shadow:0 2px 4px #0003}.btn-white.no-shadow{box-shadow:none}.btn-white:hover{background-color:#e6eeff;color:#0f3b96}.btn-arrow{position:absolute;display:block;width:7px;height:12px;background-image:url(../img/arrow.svg);background-repeat:no-repeat}.btn-default .btn-arrow{right:40px}.btn-lg .btn-arrow,.btn-news .btn-arrow{right:24px}.btn-contact{width:270px;height:50px}.btn-contact:hover .ic-mail-white{background-position:left center}.btn-download{width:388px}.btn-map{width:258px}.btn-send{width:346px;height:54px;font-size:1.5rem;margin:0 auto}.btn-arrow-prevnext{display:block;width:24px;height:24px;background-image:url(../img/arrow-prevnext.svg);background-repeat:no-repeat;background-size:48px 24px}.btn-prev,.btn-next,.btn-all{width:190px;height:40px;min-height:40px}.btn-prev{padding-right:12px}.btn-next{padding-left:12px}.btn-prev .btn-arrow-prevnext{margin-right:4px;background-position:left center}.btn-next .btn-arrow-prevnext{margin-left:4px;background-position:right center}@media screen and (max-width: 767px){.btn-prev,.btn-next,.btn-all{width:124px}}@media screen and (max-width: 479px){.btn{line-height:1.2}.btn-download{width:340px}.btn-prev,.btn-next,.btn-all{width:auto;padding-inline:10px}}@media screen and (max-width: 411px){.btn-download,.btn-send{width:100%}}.icon{position:relative;display:block;background-repeat:no-repeat;background-size:100%}.ic-place{width:32px;height:32px;background-image:url(../img/icon/ic_place_call.svg);background-position:left center;background-size:auto;margin-right:.5rem}.ic-call{width:32px;height:32px;background-image:url(../img/icon/ic_place_call.svg);background-position:right center;background-size:auto;margin-right:.5rem}.ic-mail{width:32px;height:32px;background-image:url(../img/icon/ic_mail.svg);background-position:left center;background-size:auto;margin-right:.75rem}.ic-mail-white{width:32px;height:32px;background-image:url(../img/icon/ic_mail.svg);background-position:right center;background-size:auto;margin-right:.75rem}.ic-tel-fill{width:30px;height:30px;background-image:url(../img/icon/ic_tel_mail.svg);background-position:left center;background-size:auto;margin-right:.5rem}.ic-mail-fill{width:30px;height:30px;background-image:url(../img/icon/ic_tel_mail.svg);background-position:right center;background-size:auto;margin-right:.5rem}.ic-download{width:24px;height:24px;background-image:url(../img/icon/ic_download.svg);margin-left:4px}.ic-jump{width:24px;height:24px;background-image:url(../img/icon/ic_jump.svg);margin-left:4px}.ic-sns{width:32px;height:32px;margin-right:32px}body.is-menu-open{overflow:hidden}.header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;position:fixed;top:0;left:0;z-index:1000;width:100%;min-height:60px;background-color:#fff;color:#000;padding:0 1.875rem}.header .DFlogo{position:relative;display:block;width:98px;height:60px}.header .DFlogo img{position:relative;top:50%;transform:translateY(-50%);aspect-ratio:98/22;width:100%}.header .menu{display:flex;flex-direction:row;align-items:center}.header .menu__item{color:#495264;font-size:1rem;margin-right:15px}.header .menu__item.underline{position:relative}.header .menu__item.underline:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background-color:#495264;transition:width .2s ease}.header .menu__item.underline:hover:after{width:100%}.header .menu__item li:last-of-type .menu__item{margin-right:0}.header .btn-primary{width:164px;height:35px;min-height:0;padding:0;border-radius:18px;margin-right:0}.footer{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;min-height:350px;background-color:#495264;color:#ccc}.footer__top,.footer__bottom{position:relative;width:1250px;display:flex;flex-direction:row;justify-content:space-between;padding-inline:20px}.footer__top{padding-top:34px;padding-bottom:25px;align-items:center}.footer__bottom{align-items:center;border-top:1px solid rgba(255,255,255,.2);padding-block:24px}.footer .footer-info .footer-DFlogo{width:200px;height:73px;margin-bottom:34px}.footer .footer-info__text{display:flex;flex-direction:row;align-items:center;margin-bottom:1.125rem}.footer .footer-info__text:last-child{margin-bottom:0}.footer .footer-info__text p{font-size:1.25rem}.footer .footer-info__text p .sm{display:block;margin-top:.25rem;font-size:.875rem}.footer .footer-links{display:flex;flex-direction:row;font-size:1.25rem;gap:55px}.footer .footer-links .footer-group__title{margin-bottom:1.25rem}.footer .footer-links .footer-group li a{color:#fff;position:relative;width:auto;display:inline-block;margin-bottom:1rem}.footer .footer-links .footer-group li a:after{content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background-color:#fff;transition:width .2s ease}.footer .footer-links .footer-group li a:hover:after{width:100%}.footer .footer-links .footer-group:nth-of-type(3) li:nth-of-type(4) a{margin-top:10px}.footer .footer-links .footer-group:nth-of-type(3) li:nth-of-type(4) a,.footer .footer-links .footer-group:nth-of-type(3) li:nth-of-type(5) a{margin-bottom:10px}.footer .footer-links .footer-group:nth-of-type(3) li:nth-of-type(4) a small,.footer .footer-links .footer-group:nth-of-type(3) li:nth-of-type(5) a small{font-size:1rem}.footer .footer-links .footer-group li:last-child a{margin-bottom:0}.footer .footer-sns{display:flex;width:auto;width:50%}@media screen and (max-width: 1365px){.footer__top,.footer__bottom{width:1100px}.footer .footer-info__text p,.footer .footer-links{font-size:1.125rem}}@media screen and (max-width: 1279px){.footer{padding-inline:24px}.footer__top,.footer__bottom{width:976px;padding-inline:0}.footer .footer-links{gap:24px}.footer .copyright{position:absolute;width:auto;left:50%;transform:translate(-50%);white-space:nowrap}.footer .footer-sns{width:auto;z-index:10}}@media screen and (max-width: 1023px){.footer{min-height:auto}.footer__top,.footer__bottom{width:100%;flex-direction:column;align-items:flex-start}.footer__top{padding-block:25px}.footer .footer-info .footer-DFlogo{width:161px;height:59px;margin-bottom:25px}.footer .footer-info__text{margin-bottom:1.125rem}.footer .footer-info__text p{font-size:1rem}.footer .footer-links{font-size:1rem;margin-top:25px}.footer .footer-links .footer-group:nth-of-type(3) li:nth-of-type(4) a{margin-top:6px}.footer .footer-links .footer-group:nth-of-type(3) li:nth-of-type(4) a small,.footer .footer-links .footer-group:nth-of-type(3) li:nth-of-type(5) a small{font-size:.875rem}.footer .footer-links .footer-group li:last-child a{margin-bottom:0}.footer .copyright{position:relative;width:auto;left:0;transform:none;margin-top:25px}}@media screen and (max-width: 767px){.header{padding:0 16px;min-height:60px}.header .DFlogo{height:60px}.header .menu{display:none;position:absolute;top:0;left:0;width:100%;padding:60px 16px;flex-direction:column;align-items:flex-start;gap:30px;background-color:#ffffffe6}.header .menu li{width:100%}.header .menu__item{margin:0;width:100%;padding:8px 0;font-size:1.375rem;font-weight:600}.header .menu__item.sm{font-size:1.125rem;font-weight:400}.header .menu__item.underline:after{height:0;background-color:none}.header .menu.open{display:flex}.header .btn-primary{width:288px;height:56px;border-radius:28px;font-size:1.5rem}.header .hamburger{display:flex;justify-content:center;align-items:center;width:60px;height:60px;cursor:pointer;position:relative;z-index:1100}.header .hamburger span{position:absolute;left:50%;width:30px;height:2px;background-color:#000;transition:all .3s ease;transform-origin:center;transform:translate(-50%)}.header .hamburger span:nth-child(1){top:calc(50% - 6px)}.header .hamburger span:nth-child(2){top:calc(50% + 6px)}.header .hamburger.active span:nth-child(1){top:50%;transform:translate(-50%) rotate(45deg)}.header .hamburger.active span:nth-child(2){top:50%;transform:translate(-50%) rotate(-45deg)}.footer .br-sp{display:none}.footer .footer-links{flex-wrap:wrap}.footer .footer-links .footer-group li a:after{height:0;background-color:none}}@media screen and (max-width: 479px){.header .btn-primary{width:100%}}@media screen and (max-width: 411px){.footer .br-sp{display:inline}}[id]{scroll-margin-top:60px}.row{display:flex;flex-direction:row}.col{display:flex;flex-direction:column}.hidden{display:none!important}.only-pc{display:block}.only-tab,.only-sp{display:none}.br-pc{display:inline}.br-sp{display:none}.wrapper{display:flex;flex-direction:column;min-height:100vh}main{padding-top:60px;flex:1}.section{display:flex;flex-direction:column;align-items:center;padding-bottom:42px;width:100%}.section__title{text-align:center;padding:46px 0 40px}.section__title h2{display:block;font-size:2.25rem;line-height:1.3}.section__title .subtitle{display:block;font-size:1.5rem;margin-top:.5rem}.section__content{display:flex;flex-direction:column;align-items:center;width:100%}.section__lead{font-size:1rem;margin-bottom:2rem}.tags{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;margin-top:12px;gap:10px;max-width:100%}.tags li{display:block;background-color:#e0eaff;color:#000;padding:4px 6px;border-radius:20px;font-size:.875rem;min-width:54px;text-align:center;flex-shrink:0;white-space:nowrap}.img-wrap{overflow:hidden;position:relative}.img-wrap img{width:100%;height:100%;object-fit:cover}.scroll-top-btn{position:fixed;bottom:20px;right:20px;width:48px;height:48px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .3s ease,visibility .3s ease;z-index:1000}.scroll-top-btn .arrow-up{width:28px;height:28px;border-left:3px solid #a8afbc;border-bottom:3px solid #a8afbc;transform:rotate(135deg);margin:0 auto;border-radius:2px}.scroll-top-btn.show{opacity:1;visibility:visible;pointer-events:auto}.page-title{display:flex;flex-direction:row;align-items:center;width:100%;padding-block:42px}.page-title h1{font-size:2rem;margin:0 auto;line-height:1.2}.page-title .subtitle{display:block;font-size:1.25rem}.page-title.align-left{flex-direction:column;align-items:flex-start;justify-content:center;padding-left:160px;padding-right:16px}.page-title.align-left.bgcolor{background-color:#eef2fa}.page-title.align-left h1{text-align:left;margin:0}.page-title.align-left .subtitle{margin-left:1rem}.page-title.align-left .row{align-items:center}.page-title.align-left .lead{font-size:1.25rem;line-height:1.4;margin-top:1.5rem}.cta-contact{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:38px;padding-bottom:42px;width:100%;height:367px;background-color:#e0eaff}.cta-contact p{font-size:1.25rem;line-height:1.2}.cta-contact p strong{font-size:2.25rem;font-weight:400}.cta-contact .text-wrap{margin:28px 0}.cta-contact .text-wrap p:nth-of-type(2){margin-top:1.25rem}.cta-contact .btn-contact{font-size:1.375rem}.footer__Portfolio{background-color:#495264;color:#fff}.footer__Portfolio .dfworks-grid .card-category{color:silver}.portfolio-list{padding-inline:10px}.dfworks-grid{position:relative;width:auto}.dfworks-grid .sizer{position:absolute;visibility:hidden;pointer-events:none}.dfworks-grid .sizer,.dfworks-grid .dfworks{width:25%}.dfworks-grid .dfworks{display:flex;flex-direction:column;padding:10px}.dfworks-grid .dfworks a{overflow:hidden;display:block;width:100%}.dfworks-grid img{width:100%;aspect-ratio:512/290;object-fit:cover;display:block;transition:transform .4s ease}.dfworks-grid .dfworks:hover img{transform:scale(1.1)}.dfworks-grid .card-text{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:6px 0;text-wrap:nowrap}.dfworks-grid .card-title{font-size:.875rem}.dfworks-grid .card-category{font-size:.625rem;color:#727272}.dfworks-grid.is-index{display:grid;gap:30px;padding-inline:32px;margin-inline:auto;max-width:100%;grid-template-columns:repeat(3,1fr)}.dfworks-grid.is-index .dfworks{padding:0;width:100%}.dfworks-grid.is-index+.btn{margin-top:36px}.dfworks.shuffle-item{transition:transform .3s ease,opacity .4s ease}.dfworks.shuffle-item--hidden{opacity:0;transform:scale(.95)}.my-shuffle{visibility:hidden}.my-shuffle.is-ready{visibility:visible}.my-shuffle.no-anim .shuffle-item{transition-duration:0s!important;-webkit-transition-duration:0s!important}.dfnews{display:flex;flex-direction:column;align-items:center;width:100%}.dfnews .news-list{width:70%;max-width:996px;text-align:left;margin-bottom:42px}.dfnews .news-title{font-size:1.25rem;font-weight:600;color:#495264;margin-bottom:14px}.dfnews .news-meta{display:flex;flex-direction:row;align-items:center;gap:12px;margin-bottom:30px}.dfnews .news-date{font-size:.9375rem;color:#7382a0}.dfnews .news-text{font-size:1rem;color:#000}.dfnews .news-category{background-color:#e0eaff;color:#000;padding:3px 12px;border-radius:20px;font-size:14px}.dfnews .news-item{padding:30px 0;border-bottom:1px solid #a8afbc}.dfnews .news-body{font-size:1rem;line-height:1.6;color:#000}.category-filter{display:flex;flex-direction:row;align-items:center;gap:18px;margin-block:26px;width:70%;max-width:996px}.category-filter label{font-size:1rem;color:#495264}.selectbox{width:300px;padding:8px 10px;font-size:1rem;border:1px solid #a8afbc;border-radius:2px;background-color:#fff;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg width='10' height='6' viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23444'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:14px 8px}.news-pager{display:flex;justify-content:center;gap:1rem;margin-top:20px}.pager-btn{padding:.5rem .75rem;cursor:pointer;font-size:1rem}.pager-btn.is-current{color:#000}.pager-btn.is-disabled{opacity:.5;cursor:not-allowed}.faq{display:flex;flex-direction:column;align-items:center;padding-bottom:90px}.faq html:has(.faq-cats){scroll-behavior:smooth}.faq .faq-cats,.faq__group{width:962px}.faq .faq-cats{margin-top:40px}.faq .faq-cats__list{display:flex;flex-wrap:wrap;gap:40px;align-items:center;justify-content:center}.faq .faq-cats__link{display:inline-flex;align-items:center;color:#000;font-size:1.125rem;transition:color .2s ease,transform .2s ease}.faq .faq-cats__link:hover,.faq .faq-cats__link:focus-visible{color:#0f3b96;outline:none}.faq .faq-cats .chev{width:12px;height:8px;margin-right:8px}.faq__group{margin-top:85px}.faq__group h2{text-align:center;color:#000;font-weight:600;margin-bottom:24px}.faq__group .sr-only{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap;border:0;padding:0}.faq__qmark,.faq__amark{font-size:2.125rem;font-weight:500;margin-right:20px}.faq__q{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;padding:16px 32px 16px 40px;background-color:#eef2fa;color:#000;font-size:1.25rem;font-weight:600;cursor:pointer;transition:background .2s ease}.faq__q:hover,.faq__q:focus-visible{background-color:#e0eaff;outline:none}.faq__panel{overflow:clip;background:#fff;transition:height .28s ease,opacity .2s ease;height:0;opacity:0}.faq__inner{padding:20px 32px 20px 40px;display:flex;color:#000}.faq__qtext{text-align:left}.faq__atext{padding-top:10px}.faq__atext p{margin-bottom:20px;line-height:1.6;font-size:1rem}.faq__cta{display:flex;flex-wrap:wrap;gap:12px}.faq__cta .btn{width:auto;padding-left:20px;padding-right:50px}.faq__cta .btn .btn-arrow{right:30px}.faq__icon{width:32px;height:32px;margin-left:10px;transition:all .25s ease}.faq__icon .line-h,.faq__icon .line-v{transition:transform .28s ease,opacity .28s ease;transform-origin:50% 50%;transform-box:fill-box}.faq__icon .line-h,.faq__icon .line-v{opacity:1;transform:rotate(0)}.faq__item+.faq__item{margin-top:24px}.faq__item.is-open .faq__icon .line-v{opacity:1;transform:rotate(90deg)}.faq__item.is-open .faq__icon .line-h{opacity:0;transform:rotate(0)}.faq__item.is-open .faq__panel{opacity:1}@media (prefers-reduced-motion: reduce){.faq__icon,.faq__panel,.faq__q{transition:none!important}}@media screen and (min-width: 1800px){.dfworks-grid .sizer,.dfworks-grid .dfworks{width:20%}.dfworks-grid.is-index{grid-template-columns:repeat(3,438px)}}@media screen and (max-width: 1439px){.tags{gap:6px}.tags li{font-size:.8125rem}.cta-contact{padding-bottom:32px;padding-inline:16px;height:auto;min-height:324px}.cta-contact p strong{font-size:1.875rem}.cta-contact .text-wrap{margin:28px 0}.cta-contact .text-wrap p:nth-of-type(2){margin-top:1rem}}@media screen and (max-width: 1365px){.dfworks-grid.is-index{gap:20px;padding-inline:169px}}@media screen and (max-width: 1279px){.only-pc{display:none}.only-tab{display:block}.section{padding-bottom:32px}.section__title{text-align:center;padding:38px 0 30px}.section__title h2{font-size:1.75rem}.dfworks-grid .sizer,.dfworks-grid .dfworks{width:33.3333333333%}.dfworks-grid.is-index{padding-inline:32px;grid-template-columns:repeat(2,1fr)}.news-list{margin-bottom:32px}}@media screen and (max-width: 1023px){.page-title{padding-block:18px}.page-title h1{font-size:1.375rem}.page-title .subtitle{font-size:1.25rem}.page-title.align-left{padding-left:48px}.page-title.align-left h1{font-size:1.75rem}.section__title{padding:28px 0 20px}.section__title h2{font-size:1.75rem}.section__title .subtitle{font-size:1.5rem;margin-top:4px}.dfworks-grid .sizer,.dfworks-grid .dfworks{width:50%}.faq{padding-bottom:40px}.faq .faq-cats,.faq__group{width:calc(100% - 64px)}.faq .faq-cats{display:none}.faq__group{margin-top:60px}.faq__q,.faq__inner{padding:16px 20px}.faq__qmark,.faq__amark{margin-right:16px}}@media screen and (max-width: 767px){.only-tab{display:none}.only-sp{display:block}.br-pc{display:none}.br-sp{display:inline}main{padding-top:60px}.dfworks-grid .sizer,.dfworks-grid .dfworks{width:100%}.dfworks-grid.is-index{width:100%;gap:10px;padding-inline:16px;grid-template-columns:repeat(1,1fr)}.dfnews .news-list{width:100%;padding-inline:16px}.category-filter{padding-inline:16px;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:8px 0;width:100%}.scroll-top-btn{bottom:16px;right:16px;width:32px;height:32px}.scroll-top-btn .arrow-up{width:20px;height:20px}.cta-contact p{font-size:1rem}.cta-contact p strong{font-size:1.75rem}.cta-contact .text-wrap p:nth-of-type(2){margin-top:1rem}.cta-contact .btn-contact{font-size:1.25rem}.faq__group{width:calc(100% - 32px)}.faq__qmark,.faq__amark{font-size:2.25rem}.faq__cta{gap:16px}.faq__cta .br-sp{display:none}.faq__icon{width:24px;height:24px}}@media screen and (max-width: 479px){.page-title,.page-title.align-left{padding-left:18px}.category-filter .selectbox,.faq__group{width:100%}.faq__qmark,.faq__amark{font-size:1.875rem}.faq__q,.faq__inner{padding:16px}.faq__cta .br-sp{display:inline}.faq__cta .btn{width:100%;padding-left:8px;padding-right:20px}.faq__cta .btn .btn-arrow{right:18px}}@media screen and (max-width: 411px){.faq .page-title.align-left .row{flex-direction:column;align-items:flex-start}.faq .page-title.align-left .row .subtitle{margin-left:4px}}
