@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lato:wght@700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Barlow:wght@700&family=GFS+Didot&family=M+PLUS+Rounded+1c:wght@700&display=swap");
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, .container_posts ol, ul, .container_posts ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

body { line-height: 1; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

nav ul, nav .container_posts ul, .container_posts nav ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

/* change colours to suit your needs */
ins { background-color: #ff9; color: #333333; text-decoration: none; }

/* change colours to suit your needs */
mark { background-color: #ff9; color: #333333; font-style: italic; font-weight: bold; }

del { text-decoration: line-through; }

abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }

table { border-collapse: collapse; border-spacing: 0; }

/* change border colour to suit your needs */
hr { display: block; height: 1px; border: 0; border-top: 1px solid #cccccc; margin: 1em 0; padding: 0; }

input, select { vertical-align: middle; }

body { color: #333333; -webkit-font-smoothing: antialiased; font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-size: 1rem; line-height: 1.7; letter-spacing: 0.04em; }

a { color: #333333; text-decoration: none; }

@media screen and (min-width: 1025px) { a:hover { color: #029aaa; text-decoration: underline; } }

hr { height: 0; margin: 0; padding: 0; border: 0; }

img { vertical-align: bottom; }

input, select, textarea { background-color: #f8f8f4; }

input::placeholder, select::placeholder, textarea::placeholder { color: #767676; }

select { appearance: none; background-image: url("/images/ico_expand_more.svg"); background-position: top 50% right 8px; background-repeat: no-repeat; color: #767676; }

@media screen and (max-width: 1024px) { pointer-events: none; }

.wrapper { position: relative; overflow-x: hidden; }

.wrapper .top-bg { position: absolute; width: 100%; height: 400px; background: url(/images/bg.png); z-index: -1; }

@media screen and (max-width: 992px) { .wrapper .top-bg { height: 208px; } }

@media screen and (max-width: 576px) { .wrapper .top-bg { height: 192px; } }

.wrapper .page-content { padding-top: 80px; }

@media screen and (max-width: 992px) { .wrapper .page-content { padding-top: 64px; } }

.home .page-content { padding-top: 0; }

.recruit .page-content { padding-top: 64px; }

@media screen and (max-width: 992px) { .recruit .page-content { padding-top: 0; } }

.recruit .header .sp-header-wrapper .sp-header:not(.bg-colored) .sp-menu-logo.green { display: none; }

.recruit .header .sp-header-wrapper .sp-header:not(.bg-colored) .sp-menu-logo.white { display: block; }

.recruit .header .sp-header-wrapper .sp-header:not(.bg-colored) .sp-header-btn { background-image: url("/images/ico_menu_white.svg"); background-size: cover; height: 24px; width: 32px; cursor: pointer; }

.sp-menu-logo.white { display: none; }

.sp-header-wrapper { display: none; position: relative; }

@media screen and (max-width: 992px) { .sp-header-wrapper { display: block; } }

.sp-header-wrapper .sp-header { align-items: center; display: flex; justify-content: space-between; padding: 0 24px; position: absolute; top: 0; height: 64px; width: 100%; z-index: 30; transition: 0.3s; }

.sp-header-wrapper .sp-header.bg-colored { background-color: rgba(255, 255, 255, 0.95); }

.sp-header-wrapper .sp-header .sp-header-btn { background-image: url("/images/ico_menu_primary-color.svg"); background-size: cover; height: 24px; width: 32px; }

.header.global-nav { position: fixed; top: 0; width: 100%; z-index: 30; }

.header.global-nav *, .header.global-nav *::before, .header.global-nav *::after { box-sizing: border-box; }

.header.global-nav a { text-decoration: none; }

.sp-menu-logo { width: 144px; }

@keyframes kf-icon-right-bounce { 0% { transform: translateX(0); }
  50% { transform: translateX(1px); }
  100% { transform: translateX(0); } }

@keyframes kf-icon-down-bounce { 0% { transform: translateY(0); }
  50% { transform: translateY(1px); }
  100% { transform: translateY(0); } }

.header-button { font-size: 0.875rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.035rem; text-align: center; padding: 8px 16px; color: #ffffff; border-radius: 6px; background-color: #029aaa; border: none; }

.header-button:hover { background-color: #007c8a; color: #ffffff; }

.header-button.header-button--secondary { background-color: #c7ebef; color: #006b77; }

.header-button.header-button--secondary:hover { background-color: #a3dde3; color: #006b77; }

.header-list-top-link { font-size: 1rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.04rem; color: #333333; display: flex; gap: 8px; align-items: center; padding: 4px 8px; border-radius: 6px; }

.header-list-top-link:hover { background-color: #00000008; }

.header-list-top-link:hover::after { animation: kf-icon-right-bounce 0.2s; }

.header-list-top-link::after { content: url("/images/ico-caret-circle-right.svg"); height: 20px; width: 20px; margin-top: 1px; }

.header-list-title { display: flex; align-items: center; font-size: 0.75rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.03rem; color: #008c9b; gap: 12px; padding: 0 8px; }

.header-list-title::after { content: ''; height: 1px; background-color: #029aaa; flex-grow: 1; }

.header-list-item { border-radius: 6px; }

.header-list-item a { display: block; padding: 4px 8px; }

.header-list-item:hover { background-color: #00000008; }

.header-list-item:hover .header-list-item__title { color: #007c8a; }

.header-list-item:hover .header-list-item__title::after { background-color: #007c8a; animation: kf-icon-right-bounce 0.2s; }

.header-list-item__title { display: flex; align-items: center; gap: 8px; font-size: 1rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.04rem; }

.header-list-item__title::after { content: ''; line-height: 1; width: 10px; height: 10px; background-color: #333333; clip-path: path("M2.907 8.968a.75.75 0 0 1 0-1.061l2.595-2.595-2.595-2.595a.75.75 0 0 1 1.061-1.061l3.125 3.125a.75.75 0 0 1 0 1.061L3.968 8.968a.75.75 0 0 1-1.061 0z"); }

.header-list-item__desc { font-size: 0.75rem; font-weight: 400; line-height: 1.7; letter-spacing: 0.015rem; color: #4d4d4d; }

.home .pc-header { background-color: transparent; box-shadow: none; transition: all 0.3s; }

.home .pc-header.hovered, .home .pc-header.scrolled { background-color: #ffffff; box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.05), 0px 10px 30px 6px rgba(0, 0, 0, 0.02); }

.pc-header { background-color: #ffffff; position: fixed; top: 0; width: 100%; display: flex; justify-content: center; height: 64px; box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.05), 0px 10px 30px 6px rgba(0, 0, 0, 0.02); }

@media screen and (max-width: 992px) { .pc-header { display: none; } }

.pc-gnavi { max-width: 1200px; width: 100%; display: flex; padding: 0 16px; height: 100%; justify-content: space-between; align-items: center; }

.pc-gnavi__logo { width: 192px; }

.pc-gnavi__right-block { display: flex; gap: 24px; height: 100%; }

.pc-gnavi__list { display: flex; gap: 16px; align-items: center; height: 100%; padding-top: 16px; }

.pc-gnavi__buttons { display: flex; gap: 12px; align-items: center; }

.pc-gnavi__list-item { height: 100%; display: flex; align-items: center; cursor: default; padding: 0 4px 16px; }

.pc-gnavi__list-item.pc-gnavi__list-item--link { padding: 0; }

.pc-gnavi__list-item.pc-gnavi__list-item--link a { padding: 0 4px 16px; }

.pc-gnavi__list-item-inner { font: inherit; color: #4d4d4d; gap: 2px; align-items: center; display: flex; font-weight: 700; font-size: 0.875rem; justify-content: center; line-height: 1.5; padding: 4px 0; position: relative; transition: color 0.3s; border: none; background: none; }

.pc-gnavi__list-item-inner::before { background-color: #008c9b; bottom: 0; content: ''; display: block; height: 2px; border-radius: 1px; left: 0; position: absolute; transition: 0.5s all; width: 0; }

.pc-mega-menu .pc-gnavi__list-item-inner::after { content: ''; line-height: 1; transition: content 0.3s; width: 14px; height: 14px; background-color: #333333; clip-path: path("M3.345 5.22a.75.75 0 0 1 1.061 0L7 7.814 9.595 5.22a.75.75 0 0 1 1.061 1.061L7.53 9.405a.75.75 0 0 1-1.061 0L3.345 6.28a.75.75 0 0 1 0-1.061z"); }

.pc-mega-menu:hover .pc-mega-menu__wrapper { -webkit-clip-path: inset(0 -50vw -100px); clip-path: inset(0 -50vw -100px); visibility: visible; }

.pc-mega-menu:hover .pc-gnavi__list-item-inner::after { animation: kf-icon-down-bounce 0.2s; background-color: #008c9b; }

.pc-gnavi__list-item:hover .pc-gnavi__list-item-inner { color: #008c9b; }

.pc-gnavi__list-item:hover .pc-gnavi__list-item-inner::before { width: 100%; }

.pc-mega-menu__wrapper { -webkit-clip-path: inset(0 -50vw 100%); background-color: #f7f7f7; clip-path: inset(0 -50vw 100%); left: 0; position: absolute; top: 100%; transition: all 0.4s; visibility: hidden; width: 100%; box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.05), 0px 10px 30px 6px rgba(0, 0, 0, 0.02); }

.pc-mega-menu__container { max-width: 1200px; width: 100%; padding: 40px 48px; display: flex; gap: 32px; margin: 0 auto; }

.pc-mega-menu__left-box { width: 196px; display: flex; flex-direction: column; align-items: flex-end; padding-right: 48px; border-right: solid 1px #00000033; margin-right: 16px; flex-shrink: 0; }

.pc-mega-menu__group { display: flex; flex-direction: column; gap: 8px; flex-shrink: 0; }

.pc-mega-menu__list { gap: 8px 32px; display: flex; flex-grow: 1; flex-wrap: wrap; }

.header-simple { height: 72px; display: flex; align-items: center; }

.header-simple .header-simple__logo { height: 32px; }

.container { width: 1200px; margin: 0 auto; }

@media screen and (max-width: 1200px) { .container { width: 100%; } }

.container01 { position: relative; width: 1200px; margin: 0 auto; }

.container02 { width: 1000px; margin: 0 auto; }

.container03 { width: 800px; margin: 0 auto; }

.container04 { width: 900px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .container, .container01, .container02, .container03, .container04 { width: 100%; } }

.container-xl, .home-interview .home-interview_container { max-width: 1200px; margin: 0 auto; width: 100%; box-sizing: border-box; }

.container-pc { max-width: 992px; margin: 0 auto; width: 100%; box-sizing: border-box; }

.container-md { max-width: 768px; margin: 0 auto; width: 100%; box-sizing: border-box; }

.container-tablet { max-width: 576px; margin: 0 auto; width: 100%; box-sizing: border-box; }

.container-pd { padding-right: 24px; padding-left: 24px; }

@media screen and (max-width: 576px) { .container-pd { padding-right: 16px; padding-left: 16px; } }

.container-pd-const { padding-right: 24px; padding-left: 24px; }

section { margin-bottom: 150px; }

@media screen and (max-width: 1024px) { section { margin-bottom: 50px; } }

section.section_bg_center { position: relative; }

section.section_bg_center:before { display: block; content: ""; position: absolute; top: 1%; left: 11%; width: 78.5%; height: 98%; background: #f8f8f4; z-index: -1; }

section.section_bg_all { position: relative; margin-bottom: 0; padding-bottom: 70px; }

section.section_bg_all:before { position: absolute; content: ""; top: 30px; right: 0; width: 1000%; height: 100%; background: #f8f8f4; z-index: -1; }

@media screen and (max-width: 1024px) { section.section_bg_all:before { top: 23px; } }

.text_area { width: 791px; margin: 0 auto; margin-bottom: 150px; }

.text_area p { margin-bottom: 1em; }

@media screen and (max-width: 1024px) { .text_area { margin-bottom: 20px; width: 100%; } .text_area p { padding: 30px; } .service_link { position: relative; width: 100%; height: 300px; margin: 0 auto; background: url(/images/service_link_bg_sp.png) no-repeat top center; background-size: contain; margin-bottom: 30px; } .button.service_link_button, .service_link_button.button--rectangle { display: none; } }

.footer { background-color: #f7f7f7; position: relative; overflow: hidden; background-image: url("/images/footer-bg-image-1.svg"), url("/images/footer-bg-image-2.svg"); background-position: bottom -400px left -200px, top -360px right -200px; background-repeat: no-repeat; }

.footer *, .footer *::before, .footer *::after { box-sizing: border-box; }

.footer .category-heading { font-size: 1rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.04em; margin-bottom: 4px; color: #4d4d4d; }

.footer .upper .upper__container { padding-top: 40px; padding-bottom: 64px; display: flex; flex-direction: column; gap: 40px; }

.footer .upper .footer-header { display: flex; justify-content: space-between; align-items: center; }

@media screen and (max-width: 768px) { .footer .upper .footer-header { flex-direction: column; justify-content: flex-start; gap: 40px; } }

.footer .upper .footer-header__logo { height: 48px; }

.footer .upper .footer-header__buttons { display: flex; align-items: center; gap: 24px; }

.footer .upper .footer-header__buttons .btn { width: 180px; }

@media screen and (max-width: 768px) { .footer .upper .footer-header__buttons { gap: 16px; } }

.footer .upper .footer-divider { border-top: 1px solid #0000001a; }

.footer .upper .footer-sitemap { column-count: 5; }

@media screen and (max-width: 1200px) { .footer .upper .footer-sitemap { column-count: 3; } }

@media screen and (max-width: 768px) { .footer .upper .footer-sitemap { column-count: 2; } }

@media screen and (max-width: 576px) { .footer .upper .footer-sitemap { column-count: 1; } }

.footer .upper .category { break-inside: avoid; margin-bottom: 24px; }

.footer .upper .category-items { list-style-type: none; display: flex; flex-direction: column; align-items: flex-start; }

.footer .upper .category-items .category-items__link { display: flex; gap: 8px; align-items: center; padding: 4px 0; font-size: 0.75rem; line-height: 1.5; letter-spacing: 0.04em; color: #4d4d4d; text-decoration: none; }

.footer .upper .category-items .category-items__link::after { content: ''; line-height: 1; width: 10px; height: 10px; background-color: #4d4d4d; clip-path: path("M3.084 8.791a.5.5 0 0 1 0-.707l2.771-2.771L3.084 2.54a.5.5 0 1 1 .707-.707l3.125 3.125a.5.5 0 0 1 0 .707L3.791 8.791a.5.5 0 0 1-.707 0"); }

.footer .upper .category-items .category-items__link:hover { color: #008c9b; text-decoration: none; }

.footer .upper .category-items .category-items__link:hover::after { background-color: #008c9b; animation: kf-icon-right-bounce 0.2s; }

.footer .lower { background-color: #00000008; }

.footer .lower .lower__container { padding-top: 40px; padding-bottom: 16px; display: flex; flex-direction: column; gap: 40px; }

.footer .lower .lower__copyright { text-align: right; font-size: 0.75rem; line-height: 1.8; letter-spacing: 0.06em; color: #767676; padding: 4px 0; }

.footer .lower .seo-links { padding: 8px 0; display: flex; flex-wrap: wrap; gap: 12px 20px; }

@media screen and (max-width: 576px) { .footer .lower .seo-links { flex-direction: column; } }

.footer .lower .seo-links .seo-links__item { font-size: 0.75rem; line-height: 1.5; letter-spacing: 0.06em; color: #4d4d4d; text-decoration: none; }

.footer .lower .seo-links .seo-links__item:hover { color: #029aaa; text-decoration: none; }

.sp-menu-modal { position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 100; visibility: hidden; overflow-y: scroll; overflow-x: hidden; background-color: #ffffff; opacity: 0; transition: opacity 0.3s ease, visibility 0.3s ease; display: none; }

.sp-menu-modal *, .sp-menu-modal *::before, .sp-menu-modal *::after { box-sizing: border-box; }

.sp-menu-modal.open { visibility: visible; opacity: 1; }

.sp-menu-modal.open .sp-header-btn { background-image: url("/images/ico_menu_close_primary-color.svg"); background-size: cover; height: 24px; width: 32px; }

@media screen and (max-width: 992px) { .sp-menu-modal { display: block; } }

@media screen and (max-width: 992px) { .bgfix { overflow: hidden; } }

.sp-menu-modal__header { align-items: center; display: flex; justify-content: space-between; padding: 0 24px; height: 64px; }

.sp-menu-modal__items { margin: 32px 0 48px; width: 100%; }

.sp-menu-modal__item-title.js_switch::before, .sp-menu-modal__item-title.js_switch::after { background-size: contain; content: ''; display: block; height: 22px; width: 22px; position: absolute; top: calc(50% - 22px * 0.5); transition: opacity 0.3s; right: 24px; }

.sp-menu-modal__item-title { display: flex; justify-content: space-between; padding: 16px 24px; font-size: 0.875rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.035rem; color: #4d4d4d; align-items: center; border-bottom: 1px solid #0000001a; position: relative; }

.sp-menu-modal__item-title.js_switch::after { background-image: url("/images/ico_plus-circle.svg"); opacity: 1; }

.sp-menu-modal__item-title.js_switch::before { background-image: url("/images/ico_minus-circle.svg"); opacity: 0; }

.sp-menu-modal__item-title.js_switch.open::after { opacity: 0; }

.sp-menu-modal__item-title.js_switch.open::before { opacity: 1; }

.sp-menu-modal__accordion { display: none; padding: 24px 32px 32px; background-color: #f7f7f7; }

.sp-menu-modal__accordion .header-list-top-link { margin-bottom: 24px; }

.sp-menu-modal__buttons { margin-bottom: 48px; display: flex; flex-direction: column; align-items: center; gap: 16px; }

.sp-menu-modal__buttons .header-button { width: 240px; padding: 12px 20px; }

.sp-menu-modal__link-lists { display: flex; gap: 32px 48px; flex-wrap: wrap; }

.sp-menu-modal__link-list { display: flex; flex-direction: column; gap: 8px; flex-grow: 1; }

.bg { background: #f8f8f4; position: relative; padding-bottom: 80px; }

.bg-white { background: #ffffff; }

@media screen and (max-width: 1024px) { .bg { padding-bottom: 0; } }

.clearfix:after { content: ""; display: block; clear: both; }

.js-tab-content { display: none; }

.js-tab-content.show { display: block; }

.d-flex { display: -webkit-box; display: flex; -webkit-box-align: center; align-items: center; }

.d-block { display: block !important; }

.d-inline-block { display: inline-block !important; }

.d-inline { display: inline !important; }

.d-flex { display: flex !important; }

.d-inline-flex { display: inline-flex !important; }

.d-table { display: table !important; }

.d-table-cell { display: table-cell !important; }

.d-table-row { display: table-row !important; }

.d-grid { display: grid !important; }

.d-inline-grid { display: inline-grid !important; }

.d-none { display: none !important; }

@media screen and (max-width: 1400px) { .d-xxl-block { display: block !important; } }

@media screen and (max-width: 1400px) { .d-xxl-inline-block { display: inline-block !important; } }

@media screen and (max-width: 1400px) { .d-xxl-inline { display: inline !important; } }

@media screen and (max-width: 1400px) { .d-xxl-flex { display: flex !important; } }

@media screen and (max-width: 1400px) { .d-xxl-inline-flex { display: inline-flex !important; } }

@media screen and (max-width: 1400px) { .d-xxl-table { display: table !important; } }

@media screen and (max-width: 1400px) { .d-xxl-table-cell { display: table-cell !important; } }

@media screen and (max-width: 1400px) { .d-xxl-table-row { display: table-row !important; } }

@media screen and (max-width: 1400px) { .d-xxl-grid { display: grid !important; } }

@media screen and (max-width: 1400px) { .d-xxl-inline-grid { display: inline-grid !important; } }

@media screen and (max-width: 1400px) { .d-xxl-none { display: none !important; } }

@media screen and (max-width: 1200px) { .d-xl-block { display: block !important; } }

@media screen and (max-width: 1200px) { .d-xl-inline-block { display: inline-block !important; } }

@media screen and (max-width: 1200px) { .d-xl-inline { display: inline !important; } }

@media screen and (max-width: 1200px) { .d-xl-flex { display: flex !important; } }

@media screen and (max-width: 1200px) { .d-xl-inline-flex { display: inline-flex !important; } }

@media screen and (max-width: 1200px) { .d-xl-table { display: table !important; } }

@media screen and (max-width: 1200px) { .d-xl-table-cell { display: table-cell !important; } }

@media screen and (max-width: 1200px) { .d-xl-table-row { display: table-row !important; } }

@media screen and (max-width: 1200px) { .d-xl-grid { display: grid !important; } }

@media screen and (max-width: 1200px) { .d-xl-inline-grid { display: inline-grid !important; } }

@media screen and (max-width: 1200px) { .d-xl-none { display: none !important; } }

@media screen and (max-width: 992px) { .d-lg-block { display: block !important; } }

@media screen and (max-width: 992px) { .d-lg-inline-block { display: inline-block !important; } }

@media screen and (max-width: 992px) { .d-lg-inline { display: inline !important; } }

@media screen and (max-width: 992px) { .d-lg-flex { display: flex !important; } }

@media screen and (max-width: 992px) { .d-lg-inline-flex { display: inline-flex !important; } }

@media screen and (max-width: 992px) { .d-lg-table { display: table !important; } }

@media screen and (max-width: 992px) { .d-lg-table-cell { display: table-cell !important; } }

@media screen and (max-width: 992px) { .d-lg-table-row { display: table-row !important; } }

@media screen and (max-width: 992px) { .d-lg-grid { display: grid !important; } }

@media screen and (max-width: 992px) { .d-lg-inline-grid { display: inline-grid !important; } }

@media screen and (max-width: 992px) { .d-lg-none { display: none !important; } }

@media screen and (max-width: 768px) { .d-md-block { display: block !important; } }

@media screen and (max-width: 768px) { .d-md-inline-block { display: inline-block !important; } }

@media screen and (max-width: 768px) { .d-md-inline { display: inline !important; } }

@media screen and (max-width: 768px) { .d-md-flex { display: flex !important; } }

@media screen and (max-width: 768px) { .d-md-inline-flex { display: inline-flex !important; } }

@media screen and (max-width: 768px) { .d-md-table { display: table !important; } }

@media screen and (max-width: 768px) { .d-md-table-cell { display: table-cell !important; } }

@media screen and (max-width: 768px) { .d-md-table-row { display: table-row !important; } }

@media screen and (max-width: 768px) { .d-md-grid { display: grid !important; } }

@media screen and (max-width: 768px) { .d-md-inline-grid { display: inline-grid !important; } }

@media screen and (max-width: 768px) { .d-md-none { display: none !important; } }

@media screen and (max-width: 576px) { .d-sm-block { display: block !important; } }

@media screen and (max-width: 576px) { .d-sm-inline-block { display: inline-block !important; } }

@media screen and (max-width: 576px) { .d-sm-inline { display: inline !important; } }

@media screen and (max-width: 576px) { .d-sm-flex { display: flex !important; } }

@media screen and (max-width: 576px) { .d-sm-inline-flex { display: inline-flex !important; } }

@media screen and (max-width: 576px) { .d-sm-table { display: table !important; } }

@media screen and (max-width: 576px) { .d-sm-table-cell { display: table-cell !important; } }

@media screen and (max-width: 576px) { .d-sm-table-row { display: table-row !important; } }

@media screen and (max-width: 576px) { .d-sm-grid { display: grid !important; } }

@media screen and (max-width: 576px) { .d-sm-inline-grid { display: inline-grid !important; } }

@media screen and (max-width: 576px) { .d-sm-none { display: none !important; } }

@media screen and (max-width: 0) { .d-xs-block { display: block !important; } }

@media screen and (max-width: 0) { .d-xs-inline-block { display: inline-block !important; } }

@media screen and (max-width: 0) { .d-xs-inline { display: inline !important; } }

@media screen and (max-width: 0) { .d-xs-flex { display: flex !important; } }

@media screen and (max-width: 0) { .d-xs-inline-flex { display: inline-flex !important; } }

@media screen and (max-width: 0) { .d-xs-table { display: table !important; } }

@media screen and (max-width: 0) { .d-xs-table-cell { display: table-cell !important; } }

@media screen and (max-width: 0) { .d-xs-table-row { display: table-row !important; } }

@media screen and (max-width: 0) { .d-xs-grid { display: grid !important; } }

@media screen and (max-width: 0) { .d-xs-inline-grid { display: inline-grid !important; } }

@media screen and (max-width: 0) { .d-xs-none { display: none !important; } }

.u-flex-grow-1, .flex-grow-1 { flex-grow: 1; }

.only-sp, .sp-only { display: none !important; }

@media screen and (max-width: 1024px) { .only-pc, .pc-only { display: none !important; } .only-sp, .sp-only { display: block !important; } }

.mt10 { margin-top: 10px; }

.mt20 { margin-top: 20px !important; }

.mt30 { margin-top: 30px; }

.mt40 { margin-top: 40px; }

.mt50 { margin-top: 50px; }

.mt60 { margin-top: 60px; }

.mt70 { margin-top: 70px; }

.mt80 { margin-top: 80px; }

.mt90 { margin-top: 90px; }

.mt100 { margin-top: 100px; }

.mb10 { margin-bottom: 10px; }

.mb20 { margin-bottom: 20px; }

.mb30 { margin-bottom: 30px; }

.mb40 { margin-bottom: 40px; }

.mb50 { margin-bottom: 50px; }

.mb50 { margin-bottom: 50px; }

.mb60 { margin-bottom: 60px; }

.mb70 { margin-bottom: 70px; }

.mb80 { margin-bottom: 80px; }

.mb90 { margin-bottom: 90px; }

.mb100 { margin-bottom: 100px; }

.mt0 { margin-top: 0px !important; }

.mt10 { margin-top: 10px !important; }

.mt20 { margin-top: 20px !important; }

.mt30 { margin-top: 30px !important; }

.mt40 { margin-top: 40px !important; }

.mt50 { margin-top: 50px !important; }

.mt60 { margin-top: 60px !important; }

.mt70 { margin-top: 70px !important; }

.mt80 { margin-top: 80px !important; }

.mt90 { margin-top: 90px !important; }

.mt100 { margin-top: 100px !important; }

.mb0 { margin-bottom: 0px !important; }

.mb10 { margin-bottom: 10px !important; }

.mb20 { margin-bottom: 20px !important; }

.mb30 { margin-bottom: 30px !important; }

.mb40 { margin-bottom: 40px !important; }

.mb50 { margin-bottom: 50px !important; }

.mb60 { margin-bottom: 60px !important; }

.mb70 { margin-bottom: 70px !important; }

.mb80 { margin-bottom: 80px !important; }

.mb90 { margin-bottom: 90px !important; }

.mb100 { margin-bottom: 100px !important; }

.ml0 { margin-left: 0px !important; }

.ml10 { margin-left: 10px !important; }

.ml20 { margin-left: 20px !important; }

.ml30 { margin-left: 30px !important; }

.ml40 { margin-left: 40px !important; }

.ml50 { margin-left: 50px !important; }

.ml60 { margin-left: 60px !important; }

.ml70 { margin-left: 70px !important; }

.ml80 { margin-left: 80px !important; }

.ml90 { margin-left: 90px !important; }

.ml100 { margin-left: 100px !important; }

.mr0 { margin-right: 0px !important; }

.mr10 { margin-right: 10px !important; }

.mr20 { margin-right: 20px !important; }

.mr30 { margin-right: 30px !important; }

.mr40 { margin-right: 40px !important; }

.mr50 { margin-right: 50px !important; }

.mr60 { margin-right: 60px !important; }

.mr70 { margin-right: 70px !important; }

.mr80 { margin-right: 80px !important; }

.mr90 { margin-right: 90px !important; }

.mr100 { margin-right: 100px !important; }

.mt4 { margin-top: 4px !important; }

.mt8 { margin-top: 8px !important; }

.mt12 { margin-top: 12px !important; }

.mt16 { margin-top: 16px !important; }

.mt20 { margin-top: 20px !important; }

.mt24 { margin-top: 24px !important; }

.mt28 { margin-top: 28px !important; }

.mt32 { margin-top: 32px !important; }

.mt36 { margin-top: 36px !important; }

.mt40 { margin-top: 40px !important; }

.mt44 { margin-top: 44px !important; }

.mt48 { margin-top: 48px !important; }

.mb4 { margin-bottom: 4px !important; }

.mb8 { margin-bottom: 8px !important; }

.mb12 { margin-bottom: 12px !important; }

.mb16 { margin-bottom: 16px !important; }

.mb20 { margin-bottom: 20px !important; }

.mb24 { margin-bottom: 24px !important; }

.mb28 { margin-bottom: 28px !important; }

.mb32 { margin-bottom: 32px !important; }

.mb36 { margin-bottom: 36px !important; }

.mb40 { margin-bottom: 40px !important; }

.mb44 { margin-bottom: 44px !important; }

.mb48 { margin-bottom: 48px !important; }

.ml4 { margin-left: 4px !important; }

.ml8 { margin-left: 8px !important; }

.ml12 { margin-left: 12px !important; }

.ml16 { margin-left: 16px !important; }

.ml20 { margin-left: 20px !important; }

.ml24 { margin-left: 24px !important; }

.ml28 { margin-left: 28px !important; }

.ml32 { margin-left: 32px !important; }

.ml36 { margin-left: 36px !important; }

.ml40 { margin-left: 40px !important; }

.ml44 { margin-left: 44px !important; }

.ml48 { margin-left: 48px !important; }

.mr4 { margin-right: 4px !important; }

.mr8 { margin-right: 8px !important; }

.mr12 { margin-right: 12px !important; }

.mr16 { margin-right: 16px !important; }

.mr20 { margin-right: 20px !important; }

.mr24 { margin-right: 24px !important; }

.mr28 { margin-right: 28px !important; }

.mr32 { margin-right: 32px !important; }

.mr36 { margin-right: 36px !important; }

.mr40 { margin-right: 40px !important; }

.mr44 { margin-right: 44px !important; }

.mr48 { margin-right: 48px !important; }

.remove-padding { padding: 0 !important; }

.pt0 { padding-top: 0px !important; }

.pt10 { padding-top: 10px !important; }

.pt20 { padding-top: 20px !important; }

.pt30 { padding-top: 30px !important; }

.pt40 { padding-top: 40px !important; }

.pt50 { padding-top: 50px !important; }

.pt60 { padding-top: 60px !important; }

.pt70 { padding-top: 70px !important; }

.pt80 { padding-top: 80px !important; }

.pt90 { padding-top: 90px !important; }

.pt100 { padding-top: 100px !important; }

.pb0 { padding-bottom: 0px !important; }

.pb10 { padding-bottom: 10px !important; }

.pb20 { padding-bottom: 20px !important; }

.pb30 { padding-bottom: 30px !important; }

.pb40 { padding-bottom: 40px !important; }

.pb50 { padding-bottom: 50px !important; }

.pb60 { padding-bottom: 60px !important; }

.pb70 { padding-bottom: 70px !important; }

.pb80 { padding-bottom: 80px !important; }

.pb90 { padding-bottom: 90px !important; }

.pb100 { padding-bottom: 100px !important; }

.pl0 { padding-left: 0px !important; }

.pl10 { padding-left: 10px !important; }

.pl20 { padding-left: 20px !important; }

.pl30 { padding-left: 30px !important; }

.pl40 { padding-left: 40px !important; }

.pl50 { padding-left: 50px !important; }

.pl60 { padding-left: 60px !important; }

.pl70 { padding-left: 70px !important; }

.pl80 { padding-left: 80px !important; }

.pl90 { padding-left: 90px !important; }

.pl100 { padding-left: 100px !important; }

.pr0 { padding-right: 0px !important; }

.pr10 { padding-right: 10px !important; }

.pr20 { padding-right: 20px !important; }

.pr30 { padding-right: 30px !important; }

.pr40 { padding-right: 40px !important; }

.pr50 { padding-right: 50px !important; }

.pr60 { padding-right: 60px !important; }

.pr70 { padding-right: 70px !important; }

.pr80 { padding-right: 80px !important; }

.pr90 { padding-right: 90px !important; }

.pr100 { padding-right: 100px !important; }

.pt0 { padding-top: 0px !important; }

.pt8 { padding-top: 8px !important; }

.pt16 { padding-top: 16px !important; }

.pt24 { padding-top: 24px !important; }

.pt32 { padding-top: 32px !important; }

.pt40 { padding-top: 40px !important; }

.pt48 { padding-top: 48px !important; }

.pt56 { padding-top: 56px !important; }

.pt64 { padding-top: 64px !important; }

.pt72 { padding-top: 72px !important; }

.pt80 { padding-top: 80px !important; }

.pb0 { padding-bottom: 0px !important; }

.pb8 { padding-bottom: 8px !important; }

.pb16 { padding-bottom: 16px !important; }

.pb24 { padding-bottom: 24px !important; }

.pb32 { padding-bottom: 32px !important; }

.pb40 { padding-bottom: 40px !important; }

.pb48 { padding-bottom: 48px !important; }

.pb56 { padding-bottom: 56px !important; }

.pb64 { padding-bottom: 64px !important; }

.pb72 { padding-bottom: 72px !important; }

.pb80 { padding-bottom: 80px !important; }

.pl0 { padding-left: 0px !important; }

.pl8 { padding-left: 8px !important; }

.pl16 { padding-left: 16px !important; }

.pl24 { padding-left: 24px !important; }

.pl32 { padding-left: 32px !important; }

.pl40 { padding-left: 40px !important; }

.pl48 { padding-left: 48px !important; }

.pl56 { padding-left: 56px !important; }

.pl64 { padding-left: 64px !important; }

.pl72 { padding-left: 72px !important; }

.pl80 { padding-left: 80px !important; }

.pr0 { padding-right: 0px !important; }

.pr8 { padding-right: 8px !important; }

.pr16 { padding-right: 16px !important; }

.pr24 { padding-right: 24px !important; }

.pr32 { padding-right: 32px !important; }

.pr40 { padding-right: 40px !important; }

.pr48 { padding-right: 48px !important; }

.pr56 { padding-right: 56px !important; }

.pr64 { padding-right: 64px !important; }

.pr72 { padding-right: 72px !important; }

.pr80 { padding-right: 80px !important; }

.p0 { padding: 0px !important; }

.p10 { padding: 10px !important; }

.p20 { padding: 20px !important; }

.p30 { padding: 30px !important; }

.p40 { padding: 40px !important; }

.p50 { padding: 50px !important; }

.p60 { padding: 60px !important; }

.p70 { padding: 70px !important; }

.p80 { padding: 80px !important; }

.p90 { padding: 90px !important; }

.p100 { padding: 100px !important; }

.p0 { padding: 0px !important; }

.p8 { padding: 8px !important; }

.p16 { padding: 16px !important; }

.p24 { padding: 24px !important; }

.p32 { padding: 32px !important; }

.p40 { padding: 40px !important; }

.p48 { padding: 48px !important; }

.p56 { padding: 56px !important; }

.p64 { padding: 64px !important; }

.p72 { padding: 72px !important; }

.p80 { padding: 80px !important; }

.f-24 { font-size: 1.5rem !important; }

.text-brand { color: #029aaa; }

.text-error { color: #db5e5e; white-space: nowrap; }

.text-secondary-500 { color: #f4f212; }

.text-bold { font-weight: 700; }

.text-high-light { background: linear-gradient(transparent 60%, #faf94e 40%); }

.text-outline-primary-600 { color: transparent; -webkit-text-stroke: 2px #008c9b; }

.text-shadow-secondary-500 { text-shadow: 3px 3px 0 #f4f212; }

.link-color { color: #029aaa; }

.link--no-decorate:hover { text-decoration: none; }

.text-link-primary, .news-post .article-body a, .interview .main-content a, .work .work-main-content .article .approach .approach__content a { color: #029aaa; text-decoration: none; text-underline-offset: 0.1rem; }

.text-link-primary:hover, .news-post .article-body a:hover, .interview .main-content a:hover, .work .work-main-content .article .approach .approach__content a:hover { color: #029aaa; text-decoration: underline; }

.text-link-secondary, .interview .company-data a, .interview .company-name a { color: #333333; text-decoration: underline; text-underline-offset: 0.1rem; }

.text-link-secondary:hover, .interview .company-data a:hover, .interview .company-name a:hover { color: #029aaa; text-decoration: underline; }

.text-link-tertiary { color: #333333; text-decoration: none; text-underline-offset: 0.1rem; }

.text-link-tertiary:hover { color: #029aaa; text-decoration: none; }

.text--emphasized { position: relative; }

.text--emphasized::before { position: absolute; content: ''; width: 0.2em; height: 0.2em; border-radius: 50%; background-color: white; top: -20px; left: 20px; transform: translate(-50%, 0); }

.u-text-center, .text-center { text-align: center !important; }

.w10 { width: 10% !important; }

.w20 { width: 20% !important; }

.w30 { width: 30% !important; }

.w40 { width: 40% !important; }

.w50 { width: 50% !important; }

.w60 { width: 60% !important; }

.w70 { width: 70% !important; }

.w80 { width: 80% !important; }

.w90 { width: 90% !important; }

.w100 { width: 100% !important; }

.banner_section { width: 100%; height: 360px; }

.banner_container { display: flex; height: 100%; flex-direction: row; }

@media screen and (max-width: 1024px) { .banner_container { flex-direction: column; } }

.banner_wrapper { position: relative; width: 50%; height: 100%; }

@media screen and (max-width: 1024px) { .banner_wrapper { width: auto; height: 50%; } }

.banner_about-image { position: absolute; width: 100%; height: 100%; object-fit: cover; filter: grayscale(1); opacity: 0.2; }

.banner_mask, .banner_mask--recruit, .banner_mask--about { display: flex; flex-direction: column; justify-content: center; align-content: center; align-items: center; height: 100%; }

.banner_mask--about { background-color: rgba(143, 143, 143, 0.8); }

.banner_mask--recruit { background-color: rgba(168, 168, 168, 0.8); }

.banner_card { width: 560px; height: 216px; background-color: white; filter: drop-shadow(2.3px 1.9px 3px gray); }

@media screen and (max-width: 1024px) { .banner_card { width: 288px; height: 156px; } }

.banner_subtext { display: inline-block; padding-top: 30px; padding-left: 30px; }

@media screen and (max-width: 1024px) { .banner_subtext { padding-top: 20px; padding-left: 20px; } }

.banner_headline { display: flex; justify-content: space-between; color: #029aaa; margin: 20px 0; padding: 0 27px; border-left: solid #029aaa 3px; font-size: 2.125rem; }

@media screen and (max-width: 1024px) { .banner_headline { padding: 4px 17px; font-size: 1.1875rem; margin: 0; } }

.banner_text { display: inline-block; padding: 0 30px 30px 30px; font-size: 0.8125rem; color: #252525; }

@media screen and (max-width: 1024px) { .banner_text { padding: 10px 20px 0 20px; font-size: 0.5625rem; line-height: 1.9em; } }

.banner_link:hover { text-decoration: none; }

.banner-dev-team-intro { display: flex; justify-content: center; }

@media screen and (max-width: 1024px) { .banner-dev-team-intro__link { width: 88.75%; } }

.banner-dev-team-intro__link:hover { opacity: 0.7; transition: 0.3s; }

@media screen and (max-width: 1024px) { .banner-dev-team-intro__img { width: 100%; } }

.blog-list_title { position: relative; padding-left: 20px; }

.blog-list_title:before { display: block; content: ""; position: absolute; top: 50%; left: 0; width: 450px; height: 1px; background: #029aaa; }

.blog-list_title-wrap { margin: 10px 0 20px 0; }

@media screen and (max-width: 1024px) { .blog-list_title-wrap { padding: 0 30px; } }

.blog-list_word-box { position: relative; display: block; float: left; width: 28px; height: 28px; text-align: center; line-height: 28px; background: #029aaa; font-size: 0.875rem; margin-right: 5px; color: #ffffff; z-index: 2; }

section.blog_list_items { padding: 0; margin: 10px; margin-bottom: 50px; width: 480px; }

section.blog_list_items ul { position: relative; }

section.blog_list_items ul li { list-style-type: none; }

section.blog_list_items ul li span.date { display: block; float: left; width: 85px; margin-right: 20px; font-size: 0.6875rem; }

section.blog_list_items ul li span.article_title { display: block; width: 60%; float: right; font-size: 0.875rem; line-height: 20px; }

@media screen and (max-width: 1024px) { section.blog_list_items ul li span.article_title { width: auto; } }

section.blog_list_items ul li img.feed_thumbnail { object-fit: cover; width: 15%; height: 15%; }

@media screen and (max-width: 1024px) { section.blog_list_items { margin: 0; width: 100%; } section.blog_list_items span.date, section.blog_list_items span.article_title { float: none; } section.blog_list_items ul li { text-align: center; font-size: 0.75rem; } section.blog_list_items ul li img.feed_thumbnail { width: 80%; height: 80%; } }

ul.blog_list_tec { position: relative; padding-top: 0; top: -12px; }

ul.blog_list_tec li { padding: 20px 70px 20px 20px; background-image: linear-gradient(to right, #029aaa 55%, rgba(255, 255, 255, 0) 0%); background-position: bottom; background-size: 4px 1px; background-repeat: repeat-x; }

ul.blog_list_tec li:after { content: ""; display: block; clear: both; }

ul.blog_list_tec:after { position: absolute; right: 27px; bottom: 1px; display: block; content: ""; width: 74px; height: 99px; background: url(../images/don.png) no-repeat; }

@media screen and (max-width: 1024px) { ul.blog_list_tec:after { display: none; } }

.blog_list_title02 { position: relative; padding-left: 20px; }

.blog_list_title02 span { position: relative; display: block; float: left; width: 28px; height: 28px; text-align: center; line-height: 28px; background: #029aaa; font-size: 0.875rem; margin-right: 5px; color: #ffffff; z-index: 2; }

.blog_list_title02:before { display: block; content: ""; position: absolute; top: 50%; left: 0; width: 470px; height: 1px; background: #029aaa; }

@media screen and (max-width: 1024px) { .blog_list_title_wrap { padding: 0 30px; } .blog_list_title02:before { width: 100%; } }

.btn { align-items: center; border-radius: 6px; display: flex; gap: 8px; line-height: 1.5; justify-content: center; margin: 0; padding: 12px 20px; position: relative; text-align: center; vertical-align: middle; font-size: 0.875rem; font-weight: 700; text-decoration: none; box-sizing: border-box; transition: background-color 0.1s; }

.btn > i { font-size: 1rem; margin-top: 0.0625rem; }

.btn:hover { text-decoration: none; }

.btn.btn-primary { border-width: 1px; border-style: solid; border-color: #029aaa; background: #029aaa; color: #ffffff; }

.btn.btn-primary:hover { background: #007c8a; }

.btn.btn-white { border-width: 1px; border-style: solid; border-color: #ffffff; background: #ffffff; color: #029aaa; }

.btn.btn-white:hover { background: #f2f2f2; }

.btn.btn-outline-primary { border-width: 1px; border-style: solid; font-weight: 500; background: #ffffff; border-color: #029aaa; color: #029aaa; }

.btn.btn-outline-primary:hover { background: #f2f2f2; }

.btn.btn-outline-white { border-width: 1px; border-style: solid; font-weight: 500; background: transparent; border-color: #ffffff; color: #ffffff; }

.btn.btn-outline-white:hover { background: #0000000d; }

.btn.btn-lg { font-size: 1.125rem; padding: 16px 24px; }

.btn.btn-lg > i { font-size: 1.25rem; }

.btn.btn-var-lg { font-size: 1.125rem; padding: 16px 24px; }

.btn.btn-var-lg > i { font-size: 1.25rem; }

@media screen and (max-width: 576px) { .btn.btn-var-lg { font-size: 0.875rem; padding: 12px 20px; } .btn.btn-var-lg > i { font-size: 1rem; } }

.btn.btn-sm { padding: 8px 12px; }

.btn.btn-rounded { border-radius: 100px; }

.btn.btn-block { width: 100%; }

.button, .button--rectangle { align-items: center; border: none; border-radius: 6px; display: flex; line-height: 1; justify-content: center; margin: 0; padding: 1em 5em; position: relative; text-align: center; vertical-align: middle; }

.button--rectangle::after { display: block; content: ''; position: absolute; top: calc(50% - 18px * 0.5); right: 26px; width: 11px; height: 18px; background: url(/images/arrow.svg) no-repeat center; background-size: contain; }

.button, .button--rectangle { color: #029aaa; font-family: inherit; font-size: 0.9rem; background-color: #ffffff; border: #029aaa solid 2px; border-radius: 0; filter: drop-shadow(2.3px 1.9px 3px lightgray); transition: background-color 0.25s ease-out, color 0.25s ease-out; -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out; -webkit-appearance: none; cursor: pointer; }

@media screen and (max-width: 1024px) { .button, .button--rectangle { padding: 1em 1em; width: 224px; } }

.button:hover, .button--rectangle:hover { background: #029aaa; color: #ffffff; text-decoration: none; }

@media screen and (max-width: 1024px) { .button:hover, .button--rectangle:hover { background: transparent; color: #029aaa; } }

.button--rectangle { background: #ffffff; border: solid 1px #029aaa; color: #029aaa; display: block; height: 60px; line-height: 60px; margin: 0 auto; padding: 0 26px; text-align: left; width: 100%; text-decoration: none; }

.button--rectangle.more { width: 400px; }

.button--rectangle:hover { color: #ffffff; }

@media screen and (max-width: 576px) { .button--rectangle { font-size: 0.875rem; padding: 10px 20px 10px 20px; border: #029aaa solid 1px; width: 100%; line-height: inherit; } .button--rectangle.more { width: 100%; margin-top: 30px; } }

.button--short { padding: 1.5em 1em; }

.button--no-deco { border: none; filter: none; }

.button_primary { text-align: left; background: #f4f212; color: #029aaa; position: relative; padding-right: 40px; }

.button_primary::after { position: absolute; display: block; content: ''; height: 100%; width: 9px; top: 0; right: 20px; background: url(../images/arrow.svg) no-repeat center; background-size: contain; }

.button_primary:hover { background: #029aaa; color: #ffffff; }

.button_primary:hover::after { background: url(../images/arrow_white.svg) no-repeat center; background-size: contain; }

@media screen and (max-width: 1024px) { .button_primary:hover { background: transparent; color: #029aaa; } }

.button_entry { position: relative; display: block; width: 250px; height: 60px; line-height: 60px; margin: 0 auto; padding: 0 26px; background: transparent; text-align: left; border: solid 1px #029aaa; color: #029aaa; }

@media screen and (max-width: 1024px) { .button_entry { width: 200px; height: 40px; line-height: 40px; } }

.button_entry::after { display: block; content: ''; position: absolute; top: 0; right: 26px; width: 11px; height: 60px; background: url(/images/arrow.svg) no-repeat center; background-size: contain; }

@media screen and (max-width: 1024px) { .button_entry::after { height: 40px; width: 11px; } }

#wantedly.button_entry:after { display: block; content: ''; position: absolute; top: 0; right: 26px; width: 11px; height: 60px; background: url(/images/new_window_icon.svg) no-repeat center; background-size: contain; }

@media screen and (max-width: 1024px) { #wantedly.button_entry:after { height: 40px; width: 11px; } }

.social-buttons { margin-top: 10px; }

.connpass_event { margin-bottom: 20px; padding-bottom: 10px; border-bottom: #029aaa solid 1px; text-align: center; }

.connpass_logo { width: 60%; }

.connpass_date { color: #333333; }

.connpass_head { color: #029aaa; margin-bottom: 10px; }

.connpass_head:hover { text-decoration: underline; }

.connpass_catch { font-size: 0.9em; }

.connpass_desc { font-size: 0.9em; }

.connpass_desc-head { color: #333333; }

.connpass_empty { font-size: 0.9em; color: #333333; text-align: center; margin: 20px 0; }

.connpass_link { color: #029aaa; }

.connpass_link--wrap { color: #333333; }

.connpass_link--wrap:hover { color: inherit; text-decoration: none; }

.content_info { width: 620px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .content_info { width: 80%; } }

.content_info dl { background-image: linear-gradient(to right, #029aaa 55%, rgba(255, 255, 255, 0) 0%); background-position: bottom; background-size: 4px 1px; background-repeat: repeat-x; }

.content_info dl dt { float: left; width: 8em; background-image: linear-gradient(to right, #029aaa 55%, rgba(255, 255, 255, 0) 0%); background-position: top; background-size: 4px 1px; background-repeat: repeat-x; padding: 15px 0 15px 7em; padding-top: 17px; padding-left: 100px; padding-bottom: 0; padding-right: 0; }

@media screen and (max-width: 1024px) { .content_info dl dt { width: 6rem; padding-left: 0; padding: 15px 0 15px 0.8em; } }

.content_info dl dd { margin-left: 10em; padding: 10px; background-image: linear-gradient(to right, #029aaa 55%, rgba(255, 255, 255, 0) 0%); background-position: top; background-size: 4px 1px; background-repeat: repeat-x; padding: 17px 0 15px 5.5em; }

@media screen and (max-width: 1024px) { .content_info dl dd { padding: 17px 0 15px 0; margin-left: 7.4em; } }

.contents_service { width: 1000px; margin: 0 auto; padding: 70px 0; background: url(/images/bg.svg) repeat-y center; background-size: 600px; margin-bottom: 55px; }

@media screen and (max-width: 1024px) { .contents_service { width: auto; max-width: 550px; padding: 50px 0; margin-bottom: 0; } }

.contents_service .sercive_img { float: right; width: 340px; }

@media screen and (max-width: 1024px) { .contents_service .sercive_img { float: none; width: auto; padding: 20px 30px; margin: 0 auto; } .contents_service .sercive_img img { max-width: 330px; } }

.contents_service .ttl_right { padding-top: 0px; }

.contents_service .sercive_txt { float: left; width: 560px; }

@media screen and (max-width: 1024px) { .contents_service .sercive_txt { width: auto; } }

.contents_service .sercive_txt h3 { margin-bottom: 30px; position: relative; }

.contents_service .sercive_txt h3 span { background: #f4f200; padding: 13px 30px; font-size: 1.5rem; color: #029aaa; line-height: 2.5; }

@media screen and (max-width: 1024px) { .contents_service .sercive_txt h3 span { padding: 9px 3px; font-size: 1.0625rem; line-height: 2.5; } }

.contents_service .sercive_txt h3 span.accent:before { content: url("/images/recruit/work-environment/accent_circle.png"); position: absolute; top: -20px; left: -30px; }

.contents_service .sercive_txt h3 a { text-decoration: none; }

@media screen and (max-width: 1024px) { .contents_service .sercive_txt { float: none; width: auto; padding: 0 30px; } }

.contents_service.right .sercive_img { float: left; }

@media screen and (max-width: 1024px) { .contents_service.right .sercive_img { float: none; } }

.contents_service.right .sercive_txt { float: right; }

.contents_service.rental { background: transparent; padding-top: 0; }

.contents_service.rental .sercive_img { padding-top: 0; }

.contents_service.rental .sercive_txt { width: 600px; }

@media screen and (max-width: 1024px) { .contents_service.rental .sercive_txt { width: auto; padding: 30px; } }

.entry-area * { box-sizing: border-box; }

.entry-area .recruit-section, .entry-area .recruit-section--bg-blue, .entry-area .recruit-section--bg-gray { position: relative; padding-top: 64px; padding-bottom: 64px; margin: 0; }

.entry-area .recruit-section--bg-gray { background-color: #f7f7f7; }

.entry-area .recruit-section--bg-blue { background-color: #e2f8fa; }

.entry-area .form-link-block { background-color: #ffffff; border-radius: 12px; padding: 48px; display: flex; flex-direction: column; gap: 40px; align-items: center; }

.entry-area .form-link-block > .btn { max-width: 296px; width: 100%; }

.entry-area .recruit-footer-nav { background-color: #ffffff; border-radius: 12px; padding: 40px 48px; display: grid; grid-template-rows: repeat(4, auto); grid-template-columns: repeat(3, auto); grid-auto-flow: column; width: 100%; gap: 12px; position: relative; margin: 16px 0; justify-items: start; }

@media screen and (max-width: 992px) { .entry-area .recruit-footer-nav { grid-template-rows: repeat(6, auto); grid-template-columns: repeat(2, auto); } }

@media screen and (max-width: 768px) { .entry-area .recruit-footer-nav { grid-template-rows: repeat(11, auto); grid-template-columns: repeat(1, auto); } }

.entry-area .recruit-footer-nav .recruit-footer__link { display: flex; align-items: center; gap: 8px; padding: 4px 8px; font-size: 1rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.04em; color: #029aaa; border-radius: 6px; text-decoration: none; }

.entry-area .recruit-footer-nav .recruit-footer__link::after { content: ''; line-height: 1; width: 10px; height: 10px; background-color: #029aaa; clip-path: path("M2.907 8.968a.75.75 0 0 1 0-1.061l2.595-2.595-2.595-2.595a.75.75 0 0 1 1.061-1.061l3.125 3.125a.75.75 0 0 1 0 1.061L3.968 8.968a.75.75 0 0 1-1.061 0z"); }

.entry-area .recruit-footer-nav .recruit-footer__link:hover { color: #008c9b; background-color: #00000008; text-decoration: none; }

.entry-area .recruit-footer-nav .recruit-footer__link:hover::after { background-color: #007c8a; animation: kf-icon-right-bounce 0.2s; }

.entry-area .recruit-footer-nav .footer-illust, .entry-area .recruit-footer-nav .footer-illust--right, .entry-area .recruit-footer-nav .footer-illust--left { position: absolute; bottom: 0; width: 80px; transition: .3s; }

.entry-area .recruit-footer-nav .footer-illust--left { left: -80px; }

.entry-area .recruit-footer-nav .footer-illust--right { right: -80px; }

@media screen and (max-width: calc(992px + 160px)) { .entry-area .recruit-footer-nav .footer-illust--left, .entry-area .recruit-footer-nav .footer-illust--right { visibility: hidden; opacity: 0; } }

@media screen and (max-width: 992px) { .entry-area .recruit-footer-nav .footer-illust--right { visibility: visible; opacity: 1; top: -48px; right: 24px; } }

@media screen and (max-width: 576px) { .entry-area .recruit-footer-nav .footer-illust--right { right: 16px; } }

.floating-banner { display: none; position: fixed; margin: 36px; z-index: 10; bottom: 0; right: 0; }

@media screen and (max-width: 992px) { .floating-banner { display: none !important; } }

.floating-banner .floating-banner__close-button { background-color: transparent; display: flex; position: absolute; top: 0; right: 0; padding: 8px; border: none; cursor: pointer; z-index: inherit; border-radius: 6px; }

.floating-banner .floating-banner__close-button::after { content: ''; width: 20px; height: 20px; background-color: #999999; clip-path: path("M10 10.88 5.77 15.1a.6.6 0 0 1-.43.17.59.59 0 0 1-.45-.17.6.6 0 0 1-.18-.44.6.6 0 0 1 .18-.44L9.12 10 4.9 5.77a.6.6 0 0 1-.17-.43.6.6 0 0 1 .62-.62.6.6 0 0 1 .43.17L10 9.12l4.23-4.23a.6.6 0 0 1 .43-.17.6.6 0 0 1 .62.62.6.6 0 0 1-.17.43L10.88 10l4.23 4.23a.6.6 0 0 1 .17.43.6.6 0 0 1-.62.62.6.6 0 0 1-.43-.17L10 10.88Z"); }

.floating-banner .floating-banner__close-button:hover { background-color: #0000000d; }

.floating-banner .floating-banner__close-button:hover::after { background-color: #029aaa; }

.floating-banner .floating-banner__back-img { width: 300px; transition: transform 0.3s ease; box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.05), 0px 10px 30px 6px rgba(0, 0, 0, 0.02); }

.floating-banner .floating-banner__back-img:hover { transform: scale(1.02); }

.footernav { display: flex; justify-content: space-between; margin-top: 64px; margin-bottom: 64px; }

@media screen and (max-width: 992px) { .footernav { flex-direction: column; } }

.footernav .footernav_link:hover { text-decoration: none; }

.footernav .footernav_item { width: 560px; height: 240px; margin: 30px auto; filter: drop-shadow(2.3px 1.9px 3px lightgray); }

@media screen and (max-width: 992px) { .footernav .footernav_item { width: 90%; height: 180px; } }

.footernav .footernav_content { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; }

.footernav .footernav_image { position: absolute; width: 100%; height: 100%; object-fit: cover; z-index: -1; }

.footernav .footernav_title { display: inline-block; width: 400px; background-color: white; color: #029aaa; text-align: center; padding: 15px; }

@media screen and (max-width: 992px) { .footernav .footernav_title { width: 80%; } }

.footernav .footernav_more-button { position: absolute; right: 20px; bottom: -22px; filter: none; }

.form-wrapper { background-color: #f7f7f7; border-radius: 12px; padding: 48px 24px; width: 100%; }

@media screen and (max-width: 768px) { .form-wrapper { padding: 24px 16px 48px; } }

.form-content { display: flex; flex-direction: column; gap: 16px; }

@media screen and (max-width: 768px) { .form-content { gap: 32px; } }

.form-content .form-group { align-items: center; display: flex; gap: 12px; height: 48px; padding: 0; }

@media screen and (max-width: 768px) { .form-content .form-group { align-items: flex-start; flex-direction: column; height: auto; } }

.form-content .form-group:has(textarea) { height: auto; }

.form-content .form-group:has(textarea) textarea { resize: block; min-height: 256px; }

.form-content .form-group .form-label { flex: 0 0 200px; font-size: 0.875rem; font-weight: bold; line-height: 150%; width: 100%; display: flex; justify-content: space-between; align-items: center; gap: 12px; }

@media screen and (max-width: 768px) { .form-content .form-group .form-label { justify-content: start; flex: auto; } }

.form-content .form-group .form-label.required::after { align-items: center; background-color: #db5e5e; border-radius: 6px; color: #ffffff; content: '必須'; display: inline-flex; font-size: 0.75rem; font-weight: normal; height: 24px; line-height: 170%; margin-left: 4px; padding: 0 8px; flex-shrink: 0; }

.form-content .form-group .form-control { background: #ffffff; border-radius: 6px; border: none; font-size: 1rem; height: 3rem; line-height: 1.4; padding: 0 16px; width: 100%; }

.form-content .form-group .form-control::placeholder { color: #b3b3b3; }

.form-content .form-group select.form-control { background: url("/images/ico_chevron-down_gray.svg") no-repeat right 12px center/16px auto; background-color: #ffffff; position: relative; width: auto; max-width: 100%; padding-right: 40px; }

.form-content .form-group textarea.form-control { padding: 12px 16px; }

.entry_form .form-group { padding: 0 25px; margin-bottom: 16px; }

.entry_form .form_control { display: block; width: 100%; height: 34px; padding: 7px 25px; margin-right: -25px; margin-left: -25px; margin-bottom: 25px; font-size: 0.875rem; line-height: 1.42857143; color: #555; background-color: #ffffff; border: 1px solid #ccc; -webkit-transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s; -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }

.entry_form .form_label { display: inline-block; color: #029aaa; padding-bottom: 2px; margin-left: -25px; max-width: 100%; }

.entry_form .input_check { width: 24px; }

.entry_form textarea.form_control { height: auto; resize: none; margin-bottom: 50px; }

.entry_form .submit { position: relative; width: 200px; text-align: left; padding-left: 20px; }

@media screen and (max-width: 1024px) { .entry_form .submit { display: block; width: 180px; margin: 0 auto; } }

.entry_form .submit:after { position: absolute; top: 0; right: 20px; display: block; content: ''; width: 11px; height: 100%; background: url(/images/contact/arrow_submit.png) no-repeat center; background-size: contain; }

.entry_form .button.submit, .entry_form .submit.button--rectangle { padding: 1rem 1rem; bottom: 30px; }

.form__submit-group .privacy-policy-agreement { display: grid; grid-template-columns: 40px 1fr; grid-template-rows: 1fr; margin: 0 auto 20px auto; width: fit-content; }

.form__submit-group .privacy-policy-agreement input[type='checkbox'] { grid-row: 1; grid-column: 1; }

.form__submit-group .privacy-policy-agreement label { grid-row: 1; grid-column: 2; }

.form__submit-group .privacy-policy-agreement label br { display: none; }

.form__submit-group .privacy-policy-agreement .error-message { grid-row: 2; grid-column: 2; }

.form__submit-group .privacy-policy-agreement .error-message br { display: none; }

@media screen and (max-width: 576px) { .form__submit-group .privacy-policy-agreement { margin-bottom: 40px; max-width: 100%; } }

.form__submit-button { display: flex; justify-content: center; }

.form__submit-button button { width: 300px; }

input.designed-checkbox[type='checkbox'] { display: none; }

input.designed-checkbox[type='checkbox'] + .label-with-designed-checkbox { display: inline-block; position: relative; white-space: nowrap; }

input.designed-checkbox[type='checkbox'] + .label-with-designed-checkbox a:link { color: #029aaa; }

input.designed-checkbox[type='checkbox'] + .label-with-designed-checkbox::before { background-color: #ffffff; border-radius: 4px; border: solid 1px #029aaa; content: ''; display: flex; align-items: center; justify-content: center; height: 24px; left: -36px; position: absolute; top: 2px; width: 24px; }

input[type='checkbox']:checked + .label-with-designed-checkbox::before { content: '\e182'; font-family: 'Phosphor'; background-color: #029aaa; color: #ffffff; }

.content-heading { font-size: 1.5rem; font-weight: bold; border-bottom: solid 1px #e6e6e6; position: relative; padding: 16px 0 12px 40px; margin-bottom: 8px; }

.content-heading::before { background-color: #5dbec9; border-radius: 2px; bottom: -8px; content: ''; display: block; height: 64px; left: 8px; position: absolute; transform: skewX(-15deg); width: 12px; }

.content-heading.lg { font-size: 2rem; padding: 0 0 12px 48px; margin-bottom: 32px; }

@media screen and (max-width: 992px) { .content-heading.lg { font-size: 1.5rem; } }

.content-heading.lg::before { left: 12px; height: 84px; }

.content-heading.lg .en, .content-heading.lg .ja { display: block; line-height: 150%; }

.content-heading.lg .en { color: #029aaa; font-size: 0.75rem; }

.page-top-heading { display: flex; flex-direction: column; align-items: center; color: #029aaa; font-family: "Lato", sans-serif; font-size: 5rem; font-weight: 700; line-height: 1; letter-spacing: 0.0625rem; padding: 32px 0; gap: 4px; }

.page-top-heading .subtext { font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-size: 1.25rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.05rem; }

@media screen and (max-width: 992px) { .page-top-heading { padding: 24px 0; font-size: 4rem; } .page-top-heading .subtext { font-size: 1rem; letter-spacing: 0.04rem; line-height: 1.7; } }

@media screen and (max-width: 576px) { .page-top-heading { font-size: 3rem; } }

.ttl-desc, .ttl { color: #029aaa; font-family: "Lato", sans-serif; font-size: 4rem; letter-spacing: 3px; line-height: 1; margin-bottom: 70px; text-align: center; }

@media screen and (max-width: 576px) { .ttl-desc, .ttl { font-size: 3rem; } }

.ttl-desc span, .ttl span, .ttl-desc .subtext, .ttl .subtext { display: block; font-size: 1rem; font-weight: bold; text-align: center; }

@media screen and (max-width: 992px) { .ttl { font-size: 2.5rem; line-height: 40px; margin-bottom: 15px; } }

.ttl.ttl_sm { font-size: 2.5rem; margin-bottom: 20px; }

.ttl.ttl_sm span { line-height: 2; }

.ttl.ttl_md { font-size: 3.5rem; margin-bottom: 20px; }

@media screen and (max-width: 1024px) { .ttl.ttl_md { font-size: 2rem; line-height: 40px; margin-bottom: 15px; } .ttl.ttl_md span { font-size: 0.75rem; } }

.ttl.ttl_lg { font-size: 6.5rem; margin-bottom: 20px; }

@media screen and (max-width: 992px) { .ttl.ttl_lg { font-size: 4rem; } }

.ttl.ttl_left { text-align: left; }

.ttl.ttl_left span { text-align: left; }

.ttl.ttl_left.ttl_sm { line-height: 2; margin-bottom: 0px; padding-top: 70px; }

@media screen and (max-width: 992px) { .ttl.ttl_left.ttl_sm { font-size: 1.875rem; margin-bottom: 10px; padding-top: 30px; text-align: center; } .ttl.ttl_left.ttl_sm span { font-size: 0.875rem; text-align: center; } }

.ttl.ttl_right { text-align: right; }

.ttl.ttl_right span { text-align: right; }

.ttl-desc { font-size: 2.5rem; line-height: 1.7rem; margin-bottom: 0; padding-top: 16px; }

.ttl--search-result { font-family: "Lato", sans-serif; color: #029aaa; text-align: center; font-size: 1.5rem; margin-bottom: 16px; display: block; }

.ttl--search-tag { font-family: "Lato", sans-serif; text-align: center; font-size: 1rem; display: block; }

.ttl--search-tag a { color: #767676; font-weight: bold; text-decoration: none; margin-right: 8px; }

.ttl--search-tag a:hover { color: #029aaa; }

.ttl--column { font-family: "Lato", sans-serif; color: #029aaa; text-align: center; font-size: 1.75rem; margin-bottom: 28px; display: block; line-height: 1.5; }

.ttl_recruit { position: relative; border-bottom: solid 1px #029aaa; font-size: 1rem; padding: 38px 30px; margin-top: 50px; }

.ttl_recruit:first-child { margin-top: 0; }

@media screen and (max-width: 992px) { .ttl_recruit { background: #ffffff; font-size: 0.75rem; padding: 20px; margin-top: 10px; } }

.ttl_recruit::after { position: absolute; display: block; content: ''; top: 0; right: 20px; width: 20px; height: 100%; background: url(/images/button_open.svg) no-repeat center; background-size: contain; }

.ttl_recruit.open { border-bottom: none; }

.ttl_recruit.open::after { background: url(/images/button_close.svg) no-repeat center; }

.ttl_blog { font-family: "Lato", sans-serif; font-size: 1.25rem; }

.ttl_blog img { vertical-align: middle; }

.ttl_blog .logo_m { width: 30px; height: 27px; padding-right: 15px; }

.ttl_blog .logo { padding-right: 14px; width: 90px; }

h1.page_title { position: relative; font-size: 1.75rem; text-align: center; padding: 80px 0; padding-bottom: 60px; color: #029aaa; }

h1.page_title::after { position: absolute; display: block; content: ''; width: 1px; height: 100px; position: absolute; top: -120px; left: 50%; background: #029aaa; }

@media screen and (max-width: 992px) { h1.page_title { font-size: 1.5rem; padding: 30px 15px; } h1.page_title::after { top: -85px; height: 30px; } }

.ttl_case { position: relative; margin: 0 auto; margin-bottom: 50px; color: #029aaa; text-align: center; padding-bottom: 50px; background-image: linear-gradient(to right, #029aaa 55%, rgba(255, 255, 255, 0) 0%); background-position: bottom; background-size: 4px 1px; background-repeat: repeat-x; }

.ttl_case .main_ttl { display: inline-block; font-size: 1.875rem; text-align: center; border-bottom: solid 1px #029aaa; margin-bottom: 10px; }

.ttl_case .sub_ttl { display: block; font-weight: normal; font-size: 1rem; }

@media screen and (max-width: 992px) { .ttl_case { padding: 30px; margin-bottom: 30px; } .ttl_case .main_ttl { font-size: 1.25rem; } .ttl_case .sub_ttl { font-size: 0.625rem; } }

.info_items { width: 100%; }

.info_items:hover { color: #029aaa; }

.info_items_inner { position: relative; margin: 0 auto; padding: 15px; background: #ffffff; border: 1px solid #eee; }

.info_item_box { position: relative; margin: 0 auto; }

.info_img_trim { background-position: center center; background-repeat: no-repeat; background-size: cover; overflow: hidden; position: relative; padding-top: 66.667%; }

.info_item_text { font-size: 0.875rem; font-weight: bold; }

.client-interview .main_visual .main_img { background: url(/images/interview/main_interview.png) no-repeat center center; background-size: cover; width: auto; height: 100%; }

.member_interview .main_visual .main_img { background: url(/images/main_member_interview.jpg) no-repeat center center; background-size: cover; width: auto; height: 100%; }

.interview .interview_item_list { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media screen and (max-width: 1024px) { .interview .interview_item_list { max-width: 480px; margin: 0 auto; padding: 30px; } }

.interview .interview_item { position: relative; width: 480px; margin-bottom: 50px; }

@media screen and (max-width: 1024px) { .interview .interview_item { min-height: 150px; margin-bottom: 30px; } }

@media screen and (max-width: 420px) { .interview .interview_item { min-height: 180px; margin-bottom: 30px; } }

@media screen and (max-width: 380px) { .interview .interview_item { min-height: 200px; } }

.interview .interview_item_img { float: left; padding-right: 30px; width: 150px; height: 145px; }

.interview .interview_item_img img { width: 150px; }

@media screen and (max-width: 1024px) { .interview .interview_item_img { width: 150px; height: 150px; padding-right: 10px; } }

.interview .interview_label { position: absolute; top: 20px; left: 120px; background: #029aaa; padding: 6px 17px; color: #ffffff; margin-bottom: 40px; }

@media screen and (max-width: 1024px) { .interview .interview_label { position: relative; top: auto; left: auto; padding: 3px 14px; font-size: 0.625rem; margin-bottom: 10px; } }

.interview .interview_comment_wrap { padding-top: 77px; padding-left: 180px; }

@media screen and (max-width: 1024px) { .interview .interview_comment_wrap { padding-left: 160px; font-size: 0.75rem; } }

@media screen and (max-width: 330px) { .interview .interview_comment_wrap { padding-top: 0px; } }

.interview .interview_comment { margin-bottom: 10px; }

@media screen and (max-width: 1024px) { .interview .interview_comment { top: 20px; width: auto; } }

@media screen and (max-width: 330px) { .interview .interview_comment { top: 0px; } }

.interview .interview_name { font-size: 0.75rem; }

@media screen and (max-width: 1024px) { .interview .interview_name { font-size: 0.625rem; text-align: right; margin-right: 10px; } }

@media screen and (max-width: 420px) { .interview .interview_name { position: absolute; font-size: 0.625rem; text-align: left; top: 160px; left: 10px; } }

@media screen and (max-width: 330px) { .interview .interview_name { top: 180px; } }

.interview .interview_main { height: 500px; }

.interview .dialog_main { height: 550px; }

@media screen and (max-width: 1024px) { .interview .dialog_img { height: 420px; } }

@media screen and (max-width: 768px) { .interview .dialog_img { height: 230px; } }

.interview .interview_main, .interview .dialog_main { position: relative; }

.interview .interview_main .interview_main_title, .interview .dialog_main .interview_main_title { position: relative; width: 675px; margin: 0 auto; text-align: center; padding-top: 110px; padding-bottom: 40px; z-index: 2; font-size: 1.625rem; color: #029aaa; line-height: 1.7; }

.interview .interview_main .interview_img, .interview .dialog_main .interview_img { position: absolute; top: 0; left: 0; z-index: -1; }

.interview .interview_main .interview_speaker, .interview .dialog_main .interview_speaker { width: 400px; text-align: center; padding: 20px; }

.interview .interview_main .interview_interviewer, .interview .dialog_main .interview_interviewer { width: 300px; text-align: right; padding: 20px; }

@media screen and (max-width: 1024px) { .interview .interview_main, .interview .dialog_main { position: relative; height: auto; padding-bottom: 20px; } .interview .interview_main .interview_img, .interview .dialog_main .interview_img { padding: 80px 0; position: relative; height: 100px; } .interview .interview_main .interview_main_title, .interview .dialog_main .interview_main_title { position: absolute; top: 0; width: 74%; font-size: 1rem; padding: 40px 13%; } .interview .interview_main .interview_speaker, .interview .dialog_main .interview_speaker { width: 100%; text-align: left; padding: 3px 20px; } .interview .interview_main .interview_interviewer, .interview .dialog_main .interview_interviewer { width: 100%; text-align: left; padding: 3px 20px; } }

.interview .dialog_main .interview_main_title { padding-top: 0; }

@media screen and (max-width: 1024px) { .interview .dialog_main .interview_main_title { padding-top: 20px; } }

@media screen and (max-width: 1024px) { .interview .interview_main .interview_img { padding-top: 0; padding-bottom: 45px; } .interview .interview_main .interview_main_title { padding: 20px 13%; } }

.interview .interviewer_name { display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; width: 1200px; position: absolute; bottom: 70px; text-shadow: 2px 2px 3px #ffffff; }

@media screen and (max-width: 1024px) { .interview .interviewer_name { width: auto; bottom: 0; } }

.interview_banner { position: relative; min-height: 300px; }

.interview_banner .interview_title { position: relative; width: 350px; margin: 0 auto; padding-top: 80px; z-index: 2; }

.interview_banner .interview_title h2 { text-align: center; font-size: 0.8125rem; margin-bottom: 14px; }

.interview_banner .interview_title span { font-size: 0.625rem; }

.interview_banner .interview_post_title { font-size: 1.3125rem; color: #029aaa; }

.interview_banner .interview_img { position: absolute; top: 0; left: 0; z-index: -1; }

.interview_banner .interview_interviewer, .interview_banner .interview_speaker { z-index: 2; }

.interview_banner .interview_interviewer { position: absolute; bottom: 20px; left: 30px; }

.interview_banner .interview_speaker { position: absolute; bottom: 20px; right: 30px; }

.interview_img { position: relative; width: 100%; height: 100%; background: url(/images/interview/interview_base.png) no-repeat center; background-size: cover; }

@media screen and (max-width: 1024px) { .interview_banner { height: auto; } .interview_banner .interview_title { width: auto; position: relative; padding: 0 30px; } .interview_banner .interview_title h2 { float: left; width: 55px; padding: 5px 1px; font-size: 0.8125rem; color: #ffffff; background: #029aaa; } .interview_banner .interview_img { padding: 0 30px 10px 30px; position: relative; } .interview_banner .interview_post_title { float: right; width: 80%; font-size: 1rem; line-height: 1.4; } .interview_banner .interview_interviewer, .interview_banner .interview_speaker { position: relative; left: auto; right: auto; bottom: auto; padding: 0 30px; padding-top: 12px; font-size: 0.75rem; } .home .interview_banner .interview_img { padding: 0; } }

.interview-card-container { container-type: inline-size; transition: 0.3s; }

.interview-card-container:hover { text-decoration: none; color: inherit; }

.interview-card-container:hover .interview-card__cover-image { scale: 1.05; opacity: 0.8; }

.interview-card-container:hover .interview-card__title { color: #029aaa; }

.interview-card, .interview-card--reverse { display: grid; height: 100%; grid-template-rows: auto 1fr auto; gap: 16px; transition: 0.3s; }

.interview-card > *, .interview-card--reverse > * { min-width: 0; }

@container (width >= 560px) { .interview-card, .interview-card--reverse { grid-template-columns: 40% 1fr; grid-template-rows: auto auto; } }

@container (width >= 960px) { .interview-card, .interview-card--reverse { grid-template-columns: 1fr 50%; grid-template-rows: auto 1fr; gap: 8px 40px; } }

@container (width >= 560px) { .interview-card--reverse { grid-template-columns: 1fr 40%; } }

@container (width >= 960px) { .interview-card--reverse { grid-template-columns: 50% 1fr; } }

.interview-card__image-block, .interview-card__image-block--reverse { position: relative; width: 100%; padding-top: 50%; grid-column: 1 / 3; }

@container (width >= 560px) { .interview-card__image-block, .interview-card__image-block--reverse { grid-column: 1 / 2; grid-row: 1 / 3; } }

@container (width >= 560px) { .interview-card__image-block--reverse { grid-column: 2 / 3; } }

.interview-card__cover-image-container { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 12px; overflow: hidden; }

.interview-card__cover-image { width: 100%; height: 100%; object-fit: cover; transition: all 0.3s; }

.interview-card__logo-image { position: absolute; right: 0; bottom: 0; background-color: #ffffff; padding: 12px; border-radius: 12px 0 0 0; width: 32.3741007194%; max-height: 35.7142857143%; object-fit: contain; opacity: 0; transition: opacity 0.3s ease; }

.interview-card__logo-image.hidden { display: none; }

.interview-card__mid-block, .interview-card__mid-block--reverse { display: flex; flex-direction: column; gap: 4px; align-items: flex-start; grid-column: 1 / 3; }

@container (width >= 560px) { .interview-card__mid-block, .interview-card__mid-block--reverse { grid-column: 2 / 3; } }

@container (width >= 960px) { .interview-card__mid-block, .interview-card__mid-block--reverse { padding-top: 24px; } }

@container (width >= 560px) { .interview-card__mid-block--reverse { grid-column: 1 / 2; } }

.interview-card__title { font-size: 1.75rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; transition: color 0.3s; }

@container (width >= 560px) { .interview-card__title { font-size: 1.25rem; } }

@container (width >= 960px) { .interview-card__title { font-size: 1.5rem; } }

@container (width <= 520px) { .interview-card__title { font-size: 1.5rem; } }

@container (width <= 400px) { .interview-card__title { font-size: 1.25rem; } }

@container (width <= 300px) { .interview-card__title { font-size: 1rem; } }

.interview-card__company-info, .interview-card__company-info--reverse { display: flex; flex-direction: column; gap: 8px; grid-column: 1 / 3; }

@container (width >= 560px) { .interview-card__company-info, .interview-card__company-info--reverse { grid-column: 2 / 3; } }

@container (width <= 300px) { .interview-card__company-info, .interview-card__company-info--reverse { gap: 4px; } }

@container (width >= 560px) { .interview-card__company-info--reverse { grid-column: 1 / 2; } }

.interview-card__company-name { font-size: 0.875rem; font-weight: 500; line-height: 1.7; letter-spacing: 0.04em; }

@container (width <= 300px) { .interview-card__company-name { font-size: 0.75rem; } }

.interview-card__company-business, .interview-card__company-size { color: #666666; display: flex; align-items: center; gap: 12px; font-size: 0.875rem; font-weight: 500; line-height: 1.8; }

.interview-card__company-business > i, .interview-card__company-size > i { font-size: 1.25rem; }

.interview-card__company-business > span, .interview-card__company-size > span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

@container (width <= 300px) { .interview-card__company-business, .interview-card__company-size { font-size: 0.75rem; }
  .interview-card__company-business > i, .interview-card__company-size > i { font-size: 1rem; } }

.news-list { display: flex; flex-direction: column; gap: 20px; }

.news-list__item { display: flex; gap: 40px; padding-bottom: 20px; border-bottom: solid 1px #0000001a; }

@media screen and (max-width: 576px) { .news-list__item { flex-direction: column; gap: 4px; } }

.news-list__date { width: 100px; flex-shrink: 0; }

.paginator { box-sizing: border-box; list-style-type: none; display: flex; justify-content: center; gap: 8px; width: 100%; padding-top: 16px; padding-bottom: 16px; font-size: 0.875rem; font-weight: 500; color: #b3b3b3; }

@media screen and (max-width: 576px) { .paginator { justify-content: space-between; } }

.paginator * { box-sizing: border-box; }

.paginator .paginator__numbers { display: flex; gap: 4px; }

.paginator .paginator__item, .paginator .paginator__item--sp, .paginator .paginator__item--next, .paginator .paginator__item--prev, .paginator .paginator__item--current { padding: 4px 8px; border-radius: 6px; text-align: center; min-width: 32px; color: #b3b3b3; }

.paginator .paginator__item:hover, .paginator .paginator__item--sp:hover, .paginator .paginator__item--next:hover, .paginator .paginator__item--prev:hover, .paginator .paginator__item--current:hover { background-color: #0000000d; text-decoration: none; }

.paginator .paginator__item--current { color: #029aaa; background-color: #e2f8fa; }

.paginator .paginator__item--current:hover { background-color: #e2f8fa; }

.paginator .paginator__item--next, .paginator .paginator__item--prev { color: #029aaa; display: flex; align-items: center; gap: 4px; }

.paginator .paginator__item--next > i, .paginator .paginator__item--prev > i { margin-top: 0.0625rem; }

.paginator .paginator__item--invisible { color: transparent; background-color: transparent; }

.paginator .paginator__item--sp:hover { background-color: transparent; }

.breadcrumbs { color: #767676; font-size: 0.875rem; padding: 16px 24px; }

.breadcrumbs a { color: #029aaa; }

.middle { width: 200px; }

.large { width: 300px; }

.well { padding: 25px; background: #f7f7f7; margin-bottom: 20px; }

.img-circle { border-radius: 50%; }

.img-small { width: 150px; }

.img-middle { max-width: 300px !important; }

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

.video { position: relative; width: 100%; padding-top: 56.25%; }

.video iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }

.danger { color: #db5e5e; }

ol.list-default, .container_posts ol, ul.list-default, .container_posts ul { padding-left: 25px; padding-bottom: 10px; padding-top: 7px; line-height: 1.8; }

ol.list-default li, .container_posts ol li, ul.list-default li, .container_posts ul li { line-height: 2; }

.related { padding: 70px 0 100px; }

@media screen and (max-width: 1024px) { .related { padding: 100px 15px 60px; } }

.related-posts { margin: 0 0 50px; }

@media screen and (max-width: 1024px) { .related-posts { margin: 0 0 30px; } }

.related-posts a { display: block; float: left; width: 24.25%; }

@media screen and (max-width: 1024px) { .related-posts a { float: none; margin-bottom: 10px; width: 100%; } }

.related-posts a:not(:last-child) { margin-right: 1%; }

@media screen and (max-width: 1024px) { .related-posts a:not(:last-child) { margin-right: 0; } }

.related-posts a:hover { text-decoration: none; }

.related-posts a:hover .related-posts_img_trim { opacity: 0.7; }

.related-posts_items { width: 100%; }

.related-posts_items_inner { position: relative; margin: 0 auto; padding: 10px; background: #ffffff; border: 1px solid #eee; }

.related-posts_img_trim { background-position: center center; background-repeat: no-repeat; background-size: cover; margin: 0 0 10px; overflow: hidden; position: relative; padding-top: 66.667%; }

@media screen and (max-width: 1024px) { .related-posts_img_trim { padding-top: 45%; } }

.related-posts_date_box { color: #029aaa; font-size: 0.75rem; margin: 10px 0 5px; }

.related-posts_item_text { display: block; font-size: 0.875rem; font-weight: bold; }

.related-posts_item_name { display: block; font-size: 0.75rem; }

.more_link_related { margin: 0 auto; }

.work .work-main-content .information .technologies .technologies__list .technologies__list--item, .work .work-main-content .information .industry .industry__list .industry__list--item, .work .work-main-content .information .service .service__name, .service-name__tag { border-radius: 6px; background-color: #f2f2f2; color: #666666; display: inline-block; font-size: 0.75rem; font-weight: 500; line-height: 1; letter-spacing: 0.04em; padding: 8px 12px; }

.service-name__tag { padding: 8px; }

.service-name__tag.start-up, .service-name__tag.scale-up { background-color: #e2f8fa; color: #029aaa; }

.service-name__tag.mvp { background-color: #e3f8f3; color: #08a082; }

.service-name__tag.pro-pl { background-color: #fef4eb; color: #f06b06; }

.voice-card { background-color: #f2f2f2; border-radius: 6px; display: grid; gap: 16px 32px; grid-template-rows: 52px 1fr; grid-template-columns: 96px 1fr; padding: 32px; }

@media screen and (max-width: 576px) { .voice-card { align-items: center; gap: 24px 32px; grid-template-rows: 96px 1fr; grid-template-columns: 96px 1fr; } }

.voice-card .voice-card__image { align-items: center; border-radius: 50%; display: flex; grid-column: 1 / 2; grid-row: 1 / 3; height: 96px; justify-content: center; min-width: 96px; overflow: hidden; width: 96px; }

.voice-card .voice-card__image img { height: 100%; object-fit: cover; width: 100%; }

@media screen and (max-width: 576px) { .voice-card .voice-card__image { grid-column: 1; grid-row: 1; } }

@media screen and (max-width: 576px) { .voice-card .voice-card__info { grid-column: 2; grid-row: 1; } }

.voice-card .voice-card__info .voice-card__info--name { font-weight: bold; }

.voice-card .voice-card__info .voice-card__info--position { color: #767676; font-size: 0.75rem; }

@media screen and (max-width: 576px) { .voice-card .voice-card__message { grid-column: 1 / 3; grid-row: 2; } }

.page_nav_items { float: left; width: 480px; }

.page_nav_items.common { width: 100%; margin: 0; }

.page_nav_items.common .page_nav_inner { margin: 0 30px; }

@media screen and (max-width: 1024px) { .page_nav_items.common .page_nav_inner { margin: 0; } }

.page_nav_items.common .blog_items, .page_nav_items.common .blog_post_items { float: none; width: 100%; }

.page_nav_items.common .page_nav_items { float: none; }

.page_nav_items.common .page_nav_left { float: left; width: 50%; }

.page_nav_items.common .page_nav_left .page_nav_item_box { margin-right: 20px; }

.page_nav_items.common .page_nav_right { float: right; width: 50%; }

.page_nav_items.common .page_nav_right .page_nav_item_box { margin-left: 20px; }

.page_nav_items.common .page_nav_item_box img { width: 100%; }

@media screen and (max-width: 1024px) { .page_nav_items.common .page_nav_left .page_nav_item_box { margin-right: 10px; margin-bottom: 0; padding-bottom: 0; } .page_nav_items.common .page_nav_right .page_nav_item_box { margin-left: 10px; margin-bottom: 0; padding-bottom: 0; } }

@media screen and (max-width: 1024px) { .page_nav_items { width: 100%; margin: 0; } .blog_items, .blog_post_items { float: none; width: 100%; max-width: 500px; margin: 0 auto; margin-bottom: 70px; } .home .blog_items { margin-bottom: 0; } .home .blog_post_items { margin-bottom: 70px; } .page_nav_items { float: none; } .page_nav_left { float: left; width: 50%; } .page_nav_left .page_nav_item_box { margin-right: 10px; margin-bottom: 0; padding-bottom: 0; } .page_nav_right { float: right; width: 50%; } .page_nav_right .page_nav_item_box { margin-left: 10px; margin-bottom: 0; padding-bottom: 0; } .page_nav_button { background: transparent; color: #029aaa; } .page_nav_button:hover { background: transparent; } }

.page_nav_item_box { position: relative; padding-bottom: 30px; margin-bottom: 30px; }

.page_nav_item_box:hover .page_nav_button { background: #029aaa; color: #ffffff; }

.page_nav_item_box:hover .page_nav_button::after { position: absolute; right: 20px; content: ''; width: 9px; height: 100%; background: url(../images/arrow_white.svg) no-repeat center center; background-size: contain; }

.page_nav_button { position: absolute; bottom: 0; right: 30px; width: 240px; height: 60px; }

@media screen and (max-width: 1024px) { .page_nav_button { position: relative; bottom: auto; right: auto; width: auto; } .page_nav_button::after { display: none; } .button.page_nav_button, .page_nav_button.button--rectangle { padding: 10px 0; } }

.more_link { width: 200px; height: 60px; }

.more_link .button_more { display: inline-block; position: relative; top: auto; vertical-align: middle; background: #aaa; width: 100%; height: 100%; text-align: left; color: #ffffff; line-height: 60px; }

.more_link .button_more span { position: relative; left: 30px; }

.more_link .button_more::after { display: block; width: 11px; height: 60px; content: ''; position: absolute; background: url(../images/arrow_more.png) no-repeat center; top: 0; right: 30px; }

.more_link .button_more:hover { border: solid 1px #aaa; color: #333333; text-decoration: none; background: rgba(255, 255, 255, 0.5); -webkit-transition: background-color 0.25s ease-out, color 0.25s ease-out; transition: background-color 0.25s ease-out, color 0.25s ease-out; }

.more_link .button_more:hover::after { background: url(../images/arrow_more_hover.png) no-repeat center; }

@media screen and (max-width: 1024px) { .more_link { position: relative; margin: 0 auto; width: 150px; height: 30px; font-size: 0.625rem; } .more_link .button_more { line-height: 30px; background: transparent; border: solid 1px #029aaa; color: #029aaa; } .more_link .button_more::after { height: 30px; width: 9px; right: 15px; background: url(../images/arrow.svg) no-repeat center; background-size: contain; } .more_link .button_more:hover { background: #029aaa; color: #ffffff; } .more_link .button_more span { left: 15px; } }

.slick-prev, .slick-next { background: #aaa; }

button.slick-prev { width: 36px; height: 36px; left: 30px; background: #aaa url(../images/nav_left_arrow.png) no-repeat center; z-index: 2; }

button.slick-prev::before { color: #333333; content: ''; background: #aaa; }

button.slick-prev:hover, button.slick-prev:focus { background: #ddd url(../images/nav_left_arrow.png) no-repeat center; background-color: #029aaa; }

button.slick-next { width: 36px; height: 36px; right: 30px; background: #aaa url(../images/nav_right_arrow.png) no-repeat center; z-index: 2; }

button.slick-next::before { color: #333333; content: ''; background: #aaa; }

button.slick-next:hover, button.slick-next:focus { background: #ddd url(../images/nav_right_arrow.png) no-repeat center; background-color: #029aaa; }

blockquote { position: relative; margin-bottom: 25px; padding: 25px 10px 5px; box-sizing: border-box; font-style: italic; background: #f3f3f3; }

blockquote:before { display: inline-block; position: absolute; top: -8px; left: 9px; width: 40px; height: 30px; text-align: center; content: '\f10d'; font-family: FontAwesome; color: #ffffff; font-size: 1.125rem; line-height: 30px; background: #6fcdd9; font-weight: 900; }

blockquote:after { position: absolute; content: ''; top: -8px; left: 49px; border: none; border-bottom: solid 8px #6cacb5; border-right: solid 9px transparent; }

.post-items { width: 100%; margin: 0 auto; }

.post-items_item { display: block; float: left; width: 32.083333%; margin: 0 .625% 20px; }

@media screen and (max-width: 1024px) { .post-items_item { float: none; width: 100%; margin: 0 0 20px; box-sizing: border-box; } }

.post-items_item:hover { text-decoration: none; }

.post-items_item:hover .info_item_text { color: #029aaa; }

.post-items_item:hover .info_img_trim { opacity: .7; }

.post-items_date-box { color: #029aaa; font-size: 0.75rem; margin: 10px 0 5px; }

.post-items_info-box { color: #767676; margin: 10px 0 5px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

.post-items_date { color: #029aaa; font-size: 0.75rem; margin-right: 16px; }

.post-items_tags { font-size: 0.875rem; font-weight: bold; }

.post-items_tags a { color: #767676; text-decoration: none; }

.post-items_tags a:hover { color: #029aaa; }

@media screen and (max-width: 1024px) { .post-items { width: 100%; max-width: 340px; } .info_items { position: relative; height: auto; } .info_item_box { width: auto; top: auto; } }

@media screen and (max-width: 1024px) { .posts { width: auto; } }

.container_posts { width: 750px; margin: 0 auto; margin-bottom: 70px; }

.container_posts p { margin-bottom: 1.5em; }

.container_posts img { width: 100%; }

.container_posts h2 { font-size: 1.25rem; padding-bottom: 20px; color: #029aaa; padding-top: 30px; }

.container_posts h2#contact_text { margin: 1rem; }

.container_posts a { color: #029aaa; }

.container_posts img { margin-bottom: 10px; }

.container_posts .img-pull-left { float: left; margin-right: 30px; }

.container_posts .img-pull-right { float: right; margin-left: 30px; }

@media screen and (max-width: 1024px) { .container_posts { width: auto; padding: 30px; margin-bottom: 0; } }

@media screen and (min-width: 1024px) { #blog_posts.container_posts { display: flex; width: 1024px; } #blog_posts.container_posts .author { background: white; } }

.recruit-item_container { display: flex; justify-content: space-around; width: 900px; margin: 100px auto; }

@media screen and (max-width: 1024px) { .recruit-item_container { width: 100%; } }

.recruit-item_content { width: 49%; }

@media screen and (max-width: 1024px) { .recruit-item_content { width: 90%; } .recruit-item_content--erasable { display: none; } }

.recruit-item_ttl { font-size: 1rem; padding-bottom: 20px; color: #029aaa; }

.recruit-item_connpass-section { margin-bottom: 30px; }

.recruit-item_logo-wrapper { text-align: center; }

.recruit-item_event-logo { width: 60%; margin: 15px; }

.recruit-item_link-section { margin-bottom: 15px; text-align: center; }

.recruit-item_link { color: #029aaa; }

.section_service { position: relative; padding-bottom: 130px; margin-bottom: 0; }

@media screen and (max-width: 1024px) { .section_service { padding-top: 30px; padding-bottom: 0; margin-bottom: 0; } .section_service .text_area { padding: 0 30px; width: auto; } .section_service .text_area p { padding: 0; } }

.section_service .ttl { font-size: 2rem; }

.section_service .ttl_development_process { padding-top: 80px; font-size: 4.125rem; line-height: 50px; }

@media screen and (max-width: 1024px) { .section_service .ttl_development_process { padding-top: 30px; font-size: 2.0625rem; } .section_service .ttl_development_process:after { display: none; } }

.section_service.bg_right { background: url(/images/bg.svg) repeat-y right; background-size: 1100px; }

.sns-buttons { display: flex; gap: 12px; padding: 4px 0; justify-content: flex-end; }

.sns-buttons .btn-sns { width: 48px; height: 48px; display: flex; align-items: center; justify-content: center; border: solid 1px #666666; border-radius: 30px; font-size: 1.5rem; transition: all 0.3s; }

.sns-buttons .btn-sns svg { fill: #666666; transition: fill 0.3s; }

@media screen and (max-width: 992px) { .sns-buttons .btn-sns { width: 32px; height: 32px; font-size: 1rem; } }

.sns-buttons .btn-x:hover { border-color: #000000; background-color: #000000; }

.sns-buttons .btn-x:hover svg { fill: #ffffff; }

.sns-buttons .btn-fb:hover { border-color: #0c66fd; background-color: #0c66fd; /* facebook ブランドカラー */ }

.sns-buttons .btn-fb:hover svg { fill: #ffffff; }

#survey { display: none; position: fixed; z-index: 5; bottom: 30px; right: 30px; margin: 20px; background-color: white; filter: drop-shadow(5px 5px 7px rgba(0, 0, 0, 0.15)); }

#survey_description-form { display: none; }

.survey_container { position: relative; padding: 25px 20px; }

.survey_headline { font-size: 1.1em; color: #029aaa; }

.survey_form { margin-top: 20px; width: 330px; }

.survey_close-button { position: absolute; top: -23px; right: -23px; display: block; width: 50px; /*枠の大きさ*/ height: 50px; /*枠の大きさ*/ background: white; border: none; filter: drop-shadow(5px 5px 7px rgba(0, 0, 0, 0.15)); cursor: pointer; }

.survey_close-button::before, .survey_close-button::after { content: ""; display: block; width: 65%; /*バツ線の長さ*/ height: 2px; /*バツ線の太さ*/ background: #029aaa; transform: rotate(45deg); transform-origin: 0% 50%; position: absolute; top: calc(37% - 5px); left: 27%; }

.survey_close-button::after { transform: rotate(-45deg); transform-origin: 100% 50%; left: auto; right: 26%; }

.survey_submit:not(:first-child) { margin-top: 20px; }

.survey_contact-link { font-weight: bold; color: #029aaa; }

.survey_contact-message { margin: 14px 0; }

.survey_textarea { width: calc(100% - 22px); border: 1px solid #dedede; padding: 10px; margin-top: 20px; }

.survey_textarea:hover { border: 1px solid #444; }

.survey_request { margin: 10px 0; }

.techs { display: flex; flex-direction: column; gap: 20px; }

.techs .tech-nodesc__inner, .techs .tech-desc__inner { border-radius: 16px; background-color: #ffffff; box-shadow: 2px 2px 10px 0px rgba(211, 211, 211, 0.3); display: flex; flex-grow: 1; }

.techs .tech-desc-group { display: flex; gap: 20px; }

@media screen and (max-width: 768px) { .techs .tech-desc-group { flex-direction: column; } }

.techs .tech-desc { container: tech-desc / inline-size; flex: 1; align-items: stretch; }

.techs .tech-desc__inner { height: 100%; gap: 24px; padding: 24px; }

@media screen and (max-width: 1200px) { .techs .tech-desc__inner { padding: 16px; } }

@container tech-desc (inline-size <= 300px) { .techs .tech-desc__inner { flex-direction: column; align-items: center; text-align: center; } }

.techs .tech-desc__text-box { display: flex; flex-direction: column; gap: 4px; }

.techs .tech-desc__image { width: 96px; height: 96px; }

.techs .tech-desc__title { font-size: 1.25rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.04em; }

.techs .tech-desc__description { font-size: 0.875rem; line-height: 1.8; letter-spacing: 0.06em; }

.techs .tech-nodesc-group { display: flex; gap: 20px; }

@media screen and (max-width: 992px) { .techs .tech-nodesc-group { display: grid; grid-template-columns: 1fr 1fr; } }

@media screen and (max-width: 576px) { .techs .tech-nodesc-group { grid-template-columns: 1fr; } }

.techs .tech-nodesc { container: tech-nodesc / inline-size; flex: 1; }

.techs .tech-nodesc__inner { flex-direction: column; align-items: center; text-align: center; height: 100%; gap: 24px; padding: 24px 12px; }

@media screen and (max-width: 1200px) { .techs .tech-nodesc__inner { gap: 16px; padding: 12px 8px 16px; } }

@container tech-nodesc (inline-size >= 224px) { .techs .tech-nodesc__inner { flex-direction: row; text-align: left; padding: 12px 8px; padding-left: calc(50% - 96px); } }

@media screen and (max-width: 576px) { .techs .tech-nodesc__inner { padding-top: 8px; padding-bottom: 8px; } }

.techs .tech-nodesc__image { width: 96px; height: 96px; }

@media screen and (max-width: 1200px) { .techs .tech-nodesc__image { width: 80px; height: 80px; } }

@media screen and (max-width: 576px) { .techs .tech-nodesc__image { width: 64px; height: 64px; } }

.techs .tech-nodesc__title { font-size: 1rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.04em; }

.techs-etc { display: flex; flex-direction: column; align-items: center; row-gap: 8px; padding: 24px 16px; }

.techs-etc .title { display: flex; justify-content: center; align-items: center; column-gap: 24px; line-height: 175%; letter-spacing: 0.02rem; text-align: center; }

.techs-etc .icons { display: flex; justify-content: center; align-items: center; column-gap: 24px; }

@media screen and (max-width: 992px) { .techs-etc .icons { column-gap: 0px; } }

.techs-etc .icons .icon { width: 96px; height: 96px; }

.techs-etc .icons .text { display: flex; align-items: end; height: 60px; font-size: 0.875rem; line-height: 1.8; letter-spacing: 0.06em; color: #999999; }

.experienced-fields { display: flex; justify-content: center; flex-wrap: wrap; column-gap: 40px; row-gap: 32px; max-width: 992px; margin: 0 auto; }

@media screen and (max-width: 576px) { .experienced-fields { column-gap: 24px; } }

.experienced-fields .field { display: flex; flex-direction: column; align-items: center; row-gap: 8px; width: 148px; }

.experienced-fields .field .field__image--container { display: flex; justify-content: center; align-items: center; width: 145px; height: 145px; border-radius: 50%; background-color: #ffffff; box-shadow: 2px 2px 10px rgba(211, 211, 211, 0.3); }

.experienced-fields .field .field__image--container .field__image { width: 100px; height: 100px; }

@media screen and (max-width: 576px) { .experienced-fields .field .field__image--container { width: 120px; height: 120px; } .experienced-fields .field .field__image--container .field__image { width: 84px; height: 84px; } }

.experienced-fields .field .field__title { font-weight: 700; line-height: 175%; letter-spacing: 0.02rem; color: #4d4d4d; }

.about .main_visual .main_img { background-repeat: none; background-position: center; background-size: cover; width: auto; height: 100%; }

.about_01 { position: relative; width: 1000px; height: 450px; margin-bottom: 100px; background-repeat: no-repeat; -webkit-transition: .3s ease-in-out; transition: .3s ease-in-out; }

@media screen and (max-width: 1024px) { .about_01 { width: 100%; height: auto; } }

.about_01.hover { background: url(/images/about/about_harada_on.png) no-repeat; }

.about_message { font-size: 0.875rem; color: #333333; float: right; width: 580px; height: 450px; padding-right: 60px; padding-top: 60px; }

.about_message p { margin-bottom: 20px; }

@media screen and (max-width: 1024px) { .about_message { float: none; width: 100%; height: auto; padding: 40px 0 0; } .about_message p { padding: 0 30px; } }

.about_meta { position: relative; width: 360px; height: 450px; float: left; }

@media screen and (max-width: 1024px) { .about_meta { float: none; width: 100%; } }

.about_meta span { margin-right: 10px; }

@media screen and (max-width: 1024px) { .about_meta span { margin: 1px; } }

.about_meta span img { width: auto; }

.about_name { position: absolute; bottom: 0; padding: 30px; }

@media screen and (max-width: 1024px) { .about_name { bottom: auto; right: 0; text-align: center; } }

.about_name-jp { font-size: 1.25rem; line-height: 3; }

@media screen and (max-width: 1024px) { .about_name-jp { font-size: 1.75rem; line-height: 1.6; } }

.about_job-title { font-size: 0.625rem; }

.about_name-en { font-size: 0.625rem; margin-bottom: 20px; }

#map { width: 100%; height: 450px; margin-bottom: 150px; }

.client-interview * { box-sizing: border-box; }

.client-interview .container02 { padding: 0 24px; }

.client-interview .client-interview_title { position: relative; margin-top: 110px; margin-bottom: 60px; }

.client-interview .client-interview_title::before { content: ''; position: absolute; top: -160px; left: 0; right: 0; margin: auto; width: 1px; height: 100px; background: #029aaa; }

@media screen and (max-width: 1024px) { .client-interview .client-interview_title { margin-top: 70px; margin-bottom: 40px; font-size: 2.125rem; } .client-interview .client-interview_title span { font-size: 0.875rem; } .client-interview .client-interview_title::before { top: -100px; height: 60px; } }

.client-interview .client-interview_item_list { display: flex; flex-direction: column; gap: 40px; margin-bottom: 48px; }

.client-interview .client-interview_item { position: relative; width: 100%; max-width: 900px; margin: 0 auto; padding-bottom: 40px; }

@media screen and (max-width: 1024px) { .client-interview .client-interview_item { border-right: none; padding-bototm: 16px; } }

.client-interview .client-interview_item_bg { position: absolute; top: 0; right: 0; width: calc(100% - 80px); height: 100%; background: #f8f8f4; }

.client-interview .client-interview_item_label { position: absolute; bottom: -20px; left: 0; z-index: 2; padding: 10px 30px; color: #ffffff; font-size: 1.125rem; }

.client-interview .client-interview_item_label.rental { background: #c3443e; }

.client-interview .client-interview_item_label.mvp { background: #f4f212; color: #333333; }

.client-interview .client-interview_item_label.share { background: #029aaa; }

.client-interview .client-interview_item_label.product-team-plus { background: #029aaa; }

@media screen and (max-width: 1024px) { .client-interview .client-interview_item_label { left: -20px; } }

.client-interview .client-interview_item_container { position: relative; z-index: 1; display: flex; }

@media screen and (max-width: 1024px) { .client-interview .client-interview_item_container { display: block; padding-left: 20px; } }

.client-interview .client-interview_item_container_main-content { padding-top: 65px; padding-right: 30px; }

@media screen and (max-width: 1024px) { .client-interview .client-interview_item_container_main-content { padding-top: 0; padding-right: 36px; } }

.client-interview .client-interview_item_image-wrap { position: relative; height: 100%; }

@media screen and (max-width: 1024px) { .client-interview .client-interview_item_image-wrap { padding-top: 40px; margin-bottom: 40px; } }

.client-interview .client-interview_item_image-wrap .client-interview_item_image-wrap_image { width: 290px; height: 218px; margin: 40px 30px 0; background-size: cover; background-position: center; }

@media screen and (max-width: 1024px) { .client-interview .client-interview_item_image-wrap .client-interview_item_image-wrap_image { width: 100%; max-width: 290px; margin-top: 0; margin-left: 0; } }

.client-interview .client-interview_item_link:hover .client-interview_item_num, .client-interview .client-interview_item_link:hover .client-interview_item_comment, .client-interview .client-interview_item_link:hover .client-interview_item_name { color: #029aaa; text-decoration: underline; }

.client-interview .client-interview_item_link:hover .client-interview_item_date { text-decoration: none; }

.client-interview .client-interview_item_num { margin-bottom: 20px; }

.client-interview .client-interview_item_comment { margin-bottom: 10px; font-size: 1.5rem; line-height: 34px; }

.client-interview .client-interview_item_date { margin-top: 20px; color: #888; }

@media screen and (max-width: 1024px) { .client-profile { padding-left: 20px; padding-right: 20px; } }

.client-profile_company { position: relative; margin-bottom: 20px; padding: 100px 75px 40px; background: #f8f8f4; }

.client-profile_company_title { position: absolute; top: -15px; left: 0; right: 0; margin: auto; }

@media screen and (max-width: 1024px) { .client-profile_company { padding: 80px 16px 40px; } .client-profile_company_title { font-size: 2.125rem; } .client-profile_company_title span { margin-top: 10px; font-size: 0.875rem; } }

.client-profile_table { font-size: 0.875rem; }

.client-profile_table_row { display: flex; margin-bottom: 20px; }

.client-profile_table_row:last-of-type { margin-bottom: 0; }

.client-profile_table_title { width: 80px; }

.client-profile_table_content { display: flex; width: calc(100% - 80px); word-break: break-word; }

.client-profile_table_content span { display: inline-block; margin-right: 20px; }

.client-profile_table_content a { color: #029aaa; text-decoration: underline; }

.client-profile_interviewee { background: #f8f8f4; padding: 20px 75px 10px; }

.client-profile_interviewee_wrap { display: flex; justify-content: space-between; padding: 30px 0; border-bottom: 1px dashed #888; }

.client-profile_interviewee_wrap:last-of-type { border: none; }

.client-profile_interviewee_image { width: 100px; height: 100px; border-radius: 50%; object-fit: cover; }

.client-profile_interviewee_image + .client-profile_interviewee_content { width: calc(100% - 140px); }

.client-profile_interviewee_name { font-size: 1.125rem; }

.client-profile_interviewee_position { margin-top: 10px; margin-bottom: 14px; color: #888; font-size: 0.75rem; }

.client-profile_interviewee_career { font-size: 0.75rem; }

@media screen and (max-width: 1024px) { .client-profile_interviewee { padding: 10px 20px; } .client-profile_interviewee_wrap { content: ""; display: block; clear: both; } .client-profile_interviewee_image { float: left; width: 100px !important; margin-right: 26px; } .client-profile_interviewee_image + .client-profile_interviewee_content { width: inherit; } .client-profile_interviewee_name { margin-top: 26px; } .client-profile_interviewee_position { margin-top: 6px; margin-bottom: 34px; color: #888; font-size: 0.75rem; } .client-profile_interviewee_career { font-size: 0.75rem; } }

.comment_member { float: left; width: 22%; text-align: center; }

@media screen and (max-width: 1024px) { .comment_member { width: 100%; float: none; } }

.comment_img { width: 100%; }

@media screen and (max-width: 1024px) { .comment_img { max-width: 200px; } }

.comment_content { float: right; width: 68%; margin-left: 15px; min-height: 130px; }

@media screen and (max-width: 1024px) { .comment_content { width: 80%; margin: 0 auto; float: none; } }

.contact .main_visual .main_img { background: url(/images/main_contact.jpg) no-repeat center center; background-size: cover; width: auto; height: 100%; }

@media screen and (max-width: 1024px) { .contact_container { max-width: 600px; margin: 0 auto; margin-bottom: 20px; } }

@media screen and (min-width: 1024px) { .contact_container #blog h2.ttl_left--small { margin-bottom: 30px; padding-top: 0px; padding-left: 15%; } }

@media screen and (max-width: 1024px) { .contact_section { float: none; width: 100%; padding-top: 0; padding-bottom: 60px; } .contact_section form { width: 80%; margin: 0 auto; } }

@media screen and (min-width: 1024px) { .contact_section .contact_form { padding-top: 70px; width: 65%; display: flex; justify-content: flex-end; } .contact_section .contact_form form { width: 80%; } }

.contact_wrap { position: relative; top: -60px; }

@media screen and (max-width: 1024px) { .contact_wrap { top: 0; } }

@media screen and (max-width: 1024px) { .contact_wrap .contact_image { margin-bottom: 15px; } }

.contact_wrap .contact_notice { margin-bottom: 20px; }

.contact_text { float: left; width: 350px; font-size: 0.875rem; }

.contact_text ul { margin: 20px; }

@media screen and (max-width: 1024px) { .contact_text { float: none; width: 100%; font-size: 0.75rem; margin-bottom: 30px; } .contact_text ul { width: 220px; margin: 0 auto; margin-bottom: 10px; } .contact_text p { text-align: center; } }

body.contact #footer_contact { display: none; }

.document-dl-page .main_visual .main_img { background: url(/images/mof-logo-and-meeting.png) no-repeat center center; background-size: cover; width: auto; height: 100%; }

.document-dl-page_section { width: 700px; margin: auto; margin-top: 15px; }

@media screen and (max-width: 1024px) { .document-dl-page_section { float: none; width: 100%; padding-top: 0; padding-bottom: 60px; } .document-dl-page_section form { width: 80%; margin: 0 auto; } }

@media screen and (min-width: 1024px) { .document-dl-page_section .contact_form { padding-top: 70px; width: 65%; display: flex; justify-content: flex-end; } .document-dl-page_section .contact_form form { width: 80%; } }

.document-dl-page_text { margin-bottom: 20px; }

@media screen and (max-width: 1024px) { .document-dl-page_text { margin: 15px; } }

.document-dl-page_submit { margin-top: 40px; }

.document-dl-page_button-container { margin-top: 45px; display: flex; justify-content: center; }

.download *, .download *::before, .download *::after { box-sizing: border-box; }

.download .content { max-width: 944px; padding: 48px 24px 104px 24px; width: 100%; margin: 0 auto; }

.download .document-info { margin-bottom: 64px; }

.download .document-info .title { font-size: 2rem; line-height: 1.5; margin-bottom: 24px; text-align: center; }

@media screen and (max-width: 768px) { .download .document-info .title { font-size: 1.5rem; } }

.download .document-info .description { font-size: 0.875rem; line-height: 180%; margin-bottom: 24px; text-align: center; }

.download .document-info .image__wrap { margin-bottom: 40px; }

@media screen and (max-width: 768px) { .download .document-info .image__wrap { height: 320px; } }

@media screen and (max-width: 576px) { .download .document-info .image__wrap { height: 240px; } }

.download .document-info .image__wrap .image { border-radius: 12px; height: 100%; object-fit: cover; width: 100%; }

.download .document-info .what-is-included { padding-left: 24px; }

.download .document-info .what-is-included .what-is-included__item { font-weight: bold; }

.download .document-info .what-is-included .what-is-included__item.nested { font-weight: normal; list-style-type: none; padding-left: 16px; }

.download .document-info .what-is-included .what-is-included__item.nested::before { content: '\2022'; position: relative; right: 12px; }

.downloads *, .downloads *::before, .downloads *::after { box-sizing: border-box; }

.downloads .downloads_title-sub { margin: 0 auto; padding: 16px 24px 48px; text-align: center; }

@media screen and (max-width: 576px) { .downloads .downloads_title-sub { font-size: 0.875rem; max-width: 480px; } }

.downloads .downloads-wrapper { background-color: #f7f7f7; padding: 40px 0 104px 0; }

@media screen and (max-width: 1200px) { .downloads .downloads-wrapper { padding: 40px 24px 104px; } }

@media screen and (max-width: 768px) { .downloads .downloads-wrapper { padding-top: 24px; } }

.downloads .downloads-wrapper .downloads-container { margin: 0 auto; width: calc(1200px - 24px * 2); }

@media screen and (max-width: 1200px) { .downloads .downloads-wrapper .downloads-container { display: flex; flex-direction: column; width: 100%; } }

.downloads .downloads-wrapper .downloads-container .nav-tabs { border-bottom: solid 1px #0000004d; display: block; margin-bottom: 40px; width: 100%; }

.downloads .downloads-wrapper .downloads-container .nav-tabs .tabs { display: flex; }

@media screen and (max-width: 1200px) { .downloads .downloads-wrapper .downloads-container .nav-tabs .tabs { width: 100%; } }

.downloads .downloads-wrapper .downloads-container .nav-tabs .tabs .tab .tab__link { align-items: center; color: #767676; display: flex; font-weight: bold; height: 64px; justify-content: center; padding: 16px; width: 166px; }

.downloads .downloads-wrapper .downloads-container .nav-tabs .tabs .tab .tab__link:hover { background: #0000000d; text-decoration: none; }

.downloads .downloads-wrapper .downloads-container .nav-tabs .tabs .tab .tab__link.active { border-bottom: solid 2px #029aaa; color: #029aaa; padding-bottom: calc(16px - 2px); }

@media screen and (max-width: 576px) { .downloads .downloads-wrapper .downloads-container .nav-tabs .tabs .tab .tab__link { font-size: 0.875rem; height: 45px; padding: 12px; white-space: nowrap; width: auto; } .downloads .downloads-wrapper .downloads-container .nav-tabs .tabs .tab .tab__link.active { padding-bottom: calc(12px - 2px); } }

.downloads .downloads-wrapper .downloads-container .cards { display: none; }

.downloads .downloads-wrapper .downloads-container .cards.show { display: grid; gap: 48px 24px; grid-template-columns: 1fr 1fr 1fr; margin: 0 auto; }

@media screen and (max-width: 1200px) { .downloads .downloads-wrapper .downloads-container .cards.show { grid-template-columns: 1fr 1fr; max-width: 964px; } }

@media screen and (max-width: 768px) { .downloads .downloads-wrapper .downloads-container .cards.show { display: flex; flex-direction: column; align-items: center; } }

.downloads .downloads-wrapper .downloads-container .cards .card { background-color: #ffffff; border-radius: 12px; box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.1), 0px 4px 16px 3px rgba(0, 0, 0, 0.05); display: flex; flex-direction: column; height: 448px; overflow: hidden; width: 100%; }

@media screen and (max-width: 1200px) { .downloads .downloads-wrapper .downloads-container .cards .card { max-width: 400px; width: 100%; } }

@media screen and (max-width: 768px) { .downloads .downloads-wrapper .downloads-container .cards .card { width: 400px; } }

@media screen and (max-width: 576px) { .downloads .downloads-wrapper .downloads-container .cards .card { width: 100%; } }

.downloads .downloads-wrapper .downloads-container .cards .card .image { width: 100%; height: 200px; }

.downloads .downloads-wrapper .downloads-container .cards .card .image img { width: 100%; height: 100%; object-fit: cover; }

.downloads .downloads-wrapper .downloads-container .cards .card .contents { display: flex; flex-direction: column; flex-grow: 1; justify-content: space-between; padding-bottom: 24px; }

.downloads .downloads-wrapper .downloads-container .cards .card .contents .top-contents { padding: 16px; }

.downloads .downloads-wrapper .downloads-container .cards .card .contents .top-contents .tag { border-radius: 6px; display: inline-block; font-size: 0.75rem; font-weight: bold; line-height: 150%; margin-bottom: 12px; padding: 4px 8px; }

.downloads .downloads-wrapper .downloads-container .cards .card .contents .top-contents .tag.service-guide { background-color: #c7ebef; color: #006b77; }

.downloads .downloads-wrapper .downloads-container .cards .card .contents .top-contents .tag.help-document { background-color: #e6e6e6; color: #767676; }

.downloads .downloads-wrapper .downloads-container .cards .card .contents .top-contents .title { margin-bottom: 12px; font-weight: bold; }

.downloads .downloads-wrapper .downloads-container .cards .card .contents .top-contents .description { font-size: 0.75rem; line-height: 150%; color: #767676; }

.downloads .downloads-wrapper .downloads-container .cards .card .contents .bottom-contents { padding: 0 24px; }

.downloads .downloads-wrapper .downloads-container .cards .card .contents .bottom-contents a { gap: 8px; }

.download-thanks_title { margin-top: 50px; }

.download-thanks_title .f-24 { font-size: 1.5rem; }

.download-thanks_section { text-align: center; margin-top: 60px; }

.download-thanks_section a { display: inline-block; margin-top: 36px; margin-bottom: 40px; padding: 16px 40px; border: 2px solid #00a4b4; border-radius: 999px; color: #00a4b4; font-weight: bold; }

.download-thanks_section img { width: 400px; }

@media screen and (max-width: 1024px) { .download-thanks_section { width: 90%; margin: 0 auto; } .download-thanks_section img { max-width: 400px; width: 90%; } }

.faq .main_visual .main_img { background: url(/images/main_faq.png) no-repeat center center; background-size: cover; width: auto; height: 100%; }

@media screen and (max-width: 1024px) { .faq_contents { padding: 30px; } }

.faq_contents a { color: #029aaa; }

.faq_contents p { position: relative; padding-left: 50px; line-height: 2; }

.faq_contents .question { position: absolute; top: 0; left: 0; border: solid 1px #029aaa; color: #029aaa; padding: 0 6px 0 8px; }

.faq_contents dt { min-height: 34px; margin-bottom: 20px; }

.faq_contents dd { position: relative; background: #f8f8f4; padding: 26px 26px 26px 70px; margin-bottom: 30px; }

.faq_contents dd p { padding-left: 0; font-size: 0.8125rem; }

.faq_contents dd:before { position: absolute; top: 28px; left: 30px; display: block; content: ""; background: url(../images/logo/logo-symbol.svg) no-repeat; background-size: contain; width: 20px; height: 20px; }

.guideline-container { width: 900px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .guideline-container { width: 100%; } }

#entry_form_container { position: relative; }

#entry_form_container #entry_form_modal { position: absolute; display: inline; left: 0; right: 0; top: 0; bottom: 0; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: -flex; justify-content: center; align-items: center; background: rgba(255, 255, 255, 0.5); }

#entry_form_container #entry_form_modal p { display: block; line-height: 1.5; color: white; font-size: 2.1875rem; font-weight: bold; width: calc(100% - 40px); background: #0CA6AF; border-radius: 0; padding: 25px; text-align: center; box-sizing: border-box; margin: auto 20px; }

@media screen and (max-width: 768px) { #entry_form_container #entry_form_modal p { font-size: 1.875rem; width: 100%; margin: auto; } }

.home * { box-sizing: border-box; }

.home .home-kv-service-wrapper { background-color: #ffffff; background-image: url(/images/home/home-bg-grid.svg); position: relative; overflow: hidden; }

.home .home-title { display: flex; flex-direction: column; align-items: center; gap: 16px; margin: 0 auto 80px; }

@media screen and (max-width: 768px) { .home .home-title { margin-bottom: 52px; } }

.home .home-title .home-title__en, .home .home-title .home-title__en--white { color: #029aaa; font-family: "Lato", sans-serif; font-size: 4.5rem; font-weight: 900; line-height: 1; letter-spacing: 0.08em; text-align: center; }

@media screen and (max-width: 768px) { .home .home-title .home-title__en, .home .home-title .home-title__en--white { font-size: 3.5rem; } }

.home .home-title .home-title__ja, .home .home-title .home-title__ja--white { color: #333333; font-size: 1rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.06em; text-align: center; }

.home .home-title .home-title__en--white { color: #ffffff; }

.home .home-title .home-title__ja--white { color: #ffffff; }

@media screen and (max-width: 1024px) { .interview_comment { position: absolute; top: 0; width: 100%; text-align: left; padding-right: 12px; color: #029aaa; } }

ul.article_list li { padding: 26px 0; background-image: linear-gradient(to right, #029aaa 55%, rgba(255, 255, 255, 0) 0%); background-position: bottom; background-size: 4px 1px; background-repeat: repeat-x; }

ul.article_list li:after { content: ''; display: block; clear: both; }

ul.article_list li a { display: block; }

@media screen and (max-width: 1024px) { ul.article_list { padding: 0 30px; margin-bottom: 30px; } ul.blog_list_tec { padding: 0 30px; margin-bottom: 30px; } ul.blog_list_tec li { padding-right: 82px; padding-left: 0; } ul.blog_list_tec:after { right: 42px; } }

.main_visual { position: relative; width: 100%; height: 550px; text-align: center; }

@media screen and (max-width: 1024px) { .main_visual { height: 400px; overflow: hidden; } .main_visual .main_img { width: auto; height: 100%; } }

.main_service_text { position: absolute; top: 30px; left: 100px; }

.main_text_jp { position: absolute; color: #029aaa; font-size: 1.25rem; width: 100%; text-align: center; top: 52px; }

.main_text_en_wrap { position: absolute; bottom: 80px; left: 100px; text-align: left; }

.main_text_en_wrap p { margin-bottom: 40px; }

.main_text_en_wrap .main_text_en1, .main_text_en_wrap .main_text_en2, .main_text_en_wrap .main_text_en3 { font-family: "Lato", sans-serif; font-size: 3.125rem; background: #029aaa; text-align: left; color: #ffffff; padding: 6px 40px; }

.main_text_en_wrap .main_text_en1 { margin-bottom: 16px; }

@media screen and (max-width: 1024px) { .main_visual { position: relative; width: auto; height: 400px; text-align: center; overflow: hidden; } .main_visual img { position: relative; width: 800px; } img.main_service_text { position: absolute; width: 53%; top: 58px; left: 30px; } .main_text_jp { top: 30px; font-size: 1rem; } .main_text_en_wrap { bottom: 3px; left: 25px; } .main_text_en_wrap .main_text_en1, .main_text_en_wrap .main_text_en2, .main_text_en_wrap .main_text_en3 { font-size: 1.5625rem; padding: 6px 20px; } }

.home-kv { display: contents; }

.home-kv .home-kv__container { position: relative; display: grid; column-gap: 144px; row-gap: 32px; padding-top: 200px; padding-bottom: 64px; grid-template-rows: max-content 1fr; max-width: 1200px; margin: 0 auto; z-index: 1; }

@media screen and (max-width: 1400px) { .home-kv .home-kv__container { padding-left: 24px; padding-right: 24px; } }

@media screen and (max-width: 1200px) { .home-kv .home-kv__container { padding-left: 48px; padding-right: 48px; column-gap: calc(14vw - 24px); } }

@media screen and (max-width: 992px) { .home-kv .home-kv__container { padding-top: 120px; padding-left: 48px; padding-right: 48px; grid-template-rows: max-content 1fr max-content; } }

@media screen and (max-width: 576px) { .home-kv .home-kv__container { padding: 104px 24px 0; } }

.home-kv .home-kv__title, .home-kv .home-kv__title--emphasized { font-size: 4rem; line-height: 1.4; letter-spacing: 0.085em; grid-column: 1/2; z-index: 1; }

@media screen and (max-width: 1400px) { .home-kv .home-kv__title, .home-kv .home-kv__title--emphasized { font-size: 3.5rem; } }

@media screen and (max-width: 992px) { .home-kv .home-kv__title, .home-kv .home-kv__title--emphasized { grid-row: 1/2; } }

@media screen and (max-width: 768px) { .home-kv .home-kv__title, .home-kv .home-kv__title--emphasized { font-size: 3rem; } }

@media screen and (max-width: 576px) { .home-kv .home-kv__title, .home-kv .home-kv__title--emphasized { font-size: clamp(2rem, 8vw, 3rem); text-align: center; } }

.home-kv .home-kv__title--emphasized { color: #029aaa; margin-right: 8px; position: relative; z-index: 0; }

.home-kv .home-kv__title--emphasized::before { position: absolute; content: ''; left: 0; bottom: 0.1em; width: 100%; height: 0.4em; background-color: #f4f212; border-radius: 4px; z-index: -1; }

.home-kv .text-box { display: flex; flex-direction: column; gap: 32px; top: 228px; z-index: 1; grid-column: 1/2; }

@media screen and (max-width: 992px) { .home-kv .text-box { grid-row: 3/4; align-items: center; text-align: center; } }

@media screen and (max-width: 576px) { .home-kv .text-box { font-size: 0.875rem; } }

.home-kv .text-box__buttons { display: flex; gap: 24px; }

.home-kv .text-box__buttons .btn { min-width: 200px; }

@media screen and (max-width: 576px) { .home-kv .text-box__buttons { flex-direction: column; align-items: center; width: 100%; max-width: 400px; gap: 16px; } .home-kv .text-box__buttons .btn { width: 100%; } }

.home-kv .photo-group { z-index: 0; grid-column: 2/3; grid-row: 1/3; display: grid; place-items: center; }

@media screen and (max-width: 1200px) { .home-kv .photo-group { font-size: clamp(1.5rem, 3vw, 2.5rem); } }

@media screen and (max-width: 992px) { .home-kv .photo-group { grid-column: 1/2; grid-row: 2/3; padding: 64px 24px 24vw; } }

.home-kv .photo-group__wrapper { position: relative; width: 100%; }

.home-kv .kv-photo { opacity: 0; }

.home-kv .kv-photo--left-top-cross { position: absolute; top: -19.0476190476%; left: -22.1428571429%; width: 27.1428571429%; z-index: 2; }

@media screen and (max-width: 992px) { .home-kv .kv-photo--left-top-cross { top: -17.1428571429%; left: -25%; } }

.home-kv .kv-photo--left-bottom { position: absolute; bottom: -25.9523809524%; left: -24.6428571429%; width: 64.2857142857%; z-index: 1; }

@media screen and (max-width: 992px) { .home-kv .kv-photo--left-bottom { left: -12.5%; width: 57.1428571429%; bottom: -24.2857142857%; } }

.home-kv .kv-photo--center { width: 100%; }

.home-kv .kv-photo--right-bottom { position: absolute; bottom: -41.9047619048%; right: -22.5%; width: 53.5714285714%; z-index: -1; }

@media screen and (max-width: 992px) { .home-kv .kv-photo--right-bottom { bottom: -34.7619047619%; right: -18.2142857143%; width: 47.1428571429%; } }

.home-kv .kv-photo--right-top { position: absolute; top: -34.2857142857%; right: -21.4285714286%; width: 32.1428571429%; }

.home-kv .kv-photo--bottom-dot { position: absolute; bottom: -57.1428571429%; left: 39.2857142857%; width: 23.2142857143%; z-index: -1; }

@media screen and (max-width: 992px) { .home-kv .kv-photo--bottom-dot { bottom: -38.5714285714%; left: 35.7142857143%; } }

.home-kv .bg-group { width: 100%; height: 100%; }

.home-kv .bg-group__left-circle { position: absolute; width: 640px; top: -300px; left: -360px; }

@media screen and (max-width: 1200px) { .home-kv .bg-group__left-circle { width: 560px; top: -240px; left: -300px; } }

@media screen and (max-width: 992px) { .home-kv .bg-group__left-circle { width: 480px; top: -200px; left: -240px; } }

@media screen and (max-width: 768px) { .home-kv .bg-group__left-circle { width: 320px; top: -100px; left: -160px; } }

@media screen and (max-width: 576px) { .home-kv .bg-group__left-circle { width: 240px; top: -36px; left: -108px; } }

.home-kv .bg-group__right-circle { position: absolute; width: 800px; top: 180px; right: -400px; }

@media screen and (max-width: 1200px) { .home-kv .bg-group__right-circle { width: 640px; top: 180px; right: -300px; } }

@media screen and (max-width: 992px) { .home-kv .bg-group__right-circle { width: 600px; top: 200px; right: -240px; } }

@media screen and (max-width: 768px) { .home-kv .bg-group__right-circle { width: 400px; top: 500px; right: -180px; } }

@media screen and (max-width: 576px) { .home-kv .bg-group__right-circle { width: 320px; top: 300px; right: -148px; } }

.home-service { position: relative; }

.home-service .home-service__container { padding-top: 120px; padding-bottom: 200px; position: relative; z-index: 1; }

@media screen and (max-width: 576px) { .home-service .home-service__container { padding-bottom: 120px; } }

.home-service .description { display: flex; gap: clamp(24px, 4vw, 64px); align-items: center; margin: 0 0 160px; }

@media screen and (max-width: 1200px) { .home-service .description { margin-left: clamp(24px, 3vw, 48px); margin-right: clamp(24px, 3vw, 48px); } }

@media screen and (max-width: 768px) { .home-service .description { flex-direction: column-reverse; margin-bottom: 80px; gap: 64px; } }

@media screen and (max-width: 576px) { .home-service .description { margin: 0 0 64px; gap: 40px; } }

.home-service .description__image img { width: 100%; }

@media screen and (max-width: 768px) { .home-service .description__image { max-width: 600px; margin: 0 48px; } }

@media screen and (max-width: 576px) { .home-service .description__image { margin: 0; } }

.home-service .description__text-box { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; flex: 1; }

@media screen and (max-width: 576px) { .home-service .description__text-box { text-align: center; align-items: center; } }

.home-service .description__title { font-size: 2.5rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; white-space: nowrap; }

@media screen and (max-width: 1200px) { .home-service .description__title { font-size: clamp(1.5rem, 3vw, 2.5rem); } }

@media screen and (max-width: 576px) { .home-service .description__text { font-size: 0.875rem; } }

.home-service .service-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 64px; margin-bottom: 200px; }

@media screen and (max-width: 1200px) { .home-service .service-cards { gap: 64px 48px; } }

@media screen and (max-width: 768px) { .home-service .service-cards { grid-template-columns: 1fr; } }

@media screen and (max-width: 576px) { .home-service .service-cards { max-width: 400px; margin: 0 auto 92px; } }

.home-service .service-card { row-gap: 24px; container-type: inline-size; display: grid; grid-template-columns: 1fr; grid-template-rows: max-content 1fr max-content; }

@media screen and (max-width: 1200px) { .home-service .service-card { row-gap: 16px; } }

@media screen and (max-width: 768px) { .home-service .service-card { grid-template-columns: 50% 1fr; grid-template-rows: 1fr max-content; column-gap: 24px; } }

@media screen and (max-width: 576px) { .home-service .service-card { grid-template-columns: 1fr; } }

.home-service .service-card__image { width: 100%; border-radius: 12px; }

@media screen and (max-width: 768px) { .home-service .service-card__image { grid-column: 1/2; grid-row: 1/3; } }

@media screen and (max-width: 576px) { .home-service .service-card__image { grid-column: auto; grid-row: auto; } }

.home-service .service-card__text { margin-top: 8px; width: 100%; display: flex; flex-direction: column; gap: 16px; flex: 1; }

@media screen and (max-width: 1200px) { .home-service .service-card__text { gap: 8px; } }

@media screen and (max-width: 768px) { .home-service .service-card__text { grid-column: 2/3; } }

@media screen and (max-width: 576px) { .home-service .service-card__text { grid-column: auto; } }

.home-service .service-card__label { font-size: 0.875rem; color: #029aaa; font-weight: 700; line-height: 1; letter-spacing: 0.04em; }

@media screen and (max-width: 1200px) { .home-service .service-card__label { font-size: 0.75rem; } }

.home-service .service-card__title { font-size: 1.25rem; font-weight: 700; line-height: 1; letter-spacing: 0.04em; }

@media screen and (max-width: 1200px) { .home-service .service-card__title { font-size: 1rem; } }

.home-service .service-card__description { font-size: 1rem; line-height: 1.5; letter-spacing: 0.04em; }

@media screen and (max-width: 1200px) { .home-service .service-card__description { font-size: 0.875rem; } }

.home-service .service-card__btn { padding: 12px 24px; font-size: 1.125rem; }

.home-service .service-card__btn > i { font-size: 1.25rem; }

@media screen and (max-width: 1200px) { .home-service .service-card__btn { padding: 12px 20px; font-size: 0.875rem; } }

@media screen and (max-width: 768px) { .home-service .service-card__btn { grid-column: 2/3; } }

@media screen and (max-width: 576px) { .home-service .service-card__btn { grid-column: auto; } }

.home-service .partners-loop-track { width: 100vw; margin: 0 calc(50% - 50vw); overflow: hidden; display: flex; }

.home-service .partners-loop { display: flex; align-items: center; gap: 48px; padding-right: 48px; opacity: 0; }

.home-service .partners-loop__item { max-width: 132px; max-height: 72px; }

.home-service .bg-image__left-top { position: absolute; width: 290px; top: -52px; left: -48px; }

@media screen and (max-width: 1200px) { .home-service .bg-image__left-top { width: 240px; top: 0; left: -48px; } }

@media screen and (max-width: 992px) { .home-service .bg-image__left-top { width: 200px; top: 24px; left: -56px; } }

@media screen and (max-width: 768px) { .home-service .bg-image__left-top { width: 172px; top: 32px; left: -64px; } }

@media screen and (max-width: 576px) { .home-service .bg-image__left-top { width: 145px; top: 48px; left: -82px; } }

.home-interview { background-color: #ffffff; padding-top: 120px; padding-bottom: 120px; position: relative; }

.home-interview .home-interview_container { position: relative; padding: 0 24px; z-index: 1; }

.home-interview .home-interview__cards { display: grid; grid-template-columns: repeat(1, 1fr); gap: 80px 40px; margin-bottom: 80px; }

@media screen and (max-width: 992px) { .home-interview .home-interview__cards { grid-template-columns: 1fr; gap: 56px; } }

.home-interview .home-interview__btn-group { width: 100%; display: flex; justify-content: center; margin-top: 48px; }

@media screen and (max-width: 576px) { .home-interview .home-interview__btn-group > .btn { width: 100%; max-width: 400px; } }

.home-interview .bg-image-right-top-dot { position: absolute; width: 290px; top: 40px; right: -140px; }

@media screen and (max-width: 1200px) { .home-interview .bg-image-right-top-dot { width: 240px; top: 48px; right: -100px; } }

@media screen and (max-width: 992px) { .home-interview .bg-image-right-top-dot { width: 200px; top: 40px; right: -80px; } }

@media screen and (max-width: 768px) { .home-interview .bg-image-right-top-dot { width: 172px; top: 52px; right: -60px; } }

@media screen and (max-width: 576px) { .home-interview .bg-image-right-top-dot { width: 145px; top: 28px; right: -56px; } }

.home-interview .bg-image-right-top-circle { position: absolute; width: 400px; top: -332px; right: -186px; }

@media screen and (max-width: 1200px) { .home-interview .bg-image-right-top-circle { width: 360px; top: -280px; right: -160px; } }

@media screen and (max-width: 992px) { .home-interview .bg-image-right-top-circle { width: 320px; top: -240px; right: -160px; } }

@media screen and (max-width: 768px) { .home-interview .bg-image-right-top-circle { width: 240px; top: -160px; right: -120px; } }

@media screen and (max-width: 576px) { .home-interview .bg-image-right-top-circle { width: 200px; top: -152px; right: -108px; } }

.home-interview .bg-image-right-top-illust { position: absolute; width: 360px; top: -160px; right: 32px; }

@media screen and (max-width: 1200px) { .home-interview .bg-image-right-top-illust { width: 300px; top: -120px; right: 32px; } }

@media screen and (max-width: 992px) { .home-interview .bg-image-right-top-illust { width: 240px; top: -100px; right: 24px; } }

@media screen and (max-width: 768px) { .home-interview .bg-image-right-top-illust { width: 200px; top: -64px; right: 16px; } }

@media screen and (max-width: 576px) { .home-interview .bg-image-right-top-illust { width: 160px; top: -64px; right: 12px; } }

.home-member { padding-top: 120px; padding-bottom: 120px; position: relative; }

.home-member .home-member__container { position: relative; z-index: 1; }

.home-member .member-loop-track { width: 100vw; margin: 0 calc(50% - 50vw); overflow: hidden; display: flex; }

.home-member .member-loop { display: flex; align-items: center; gap: 48px; padding-right: 48px; opacity: 0; }

@media screen and (max-width: 1200px) { .home-member .member-loop { gap: 32px; } }

@media screen and (max-width: 576px) { .home-member .member-loop { gap: 20px; } }

.home-member .member-loop__item { width: 360px; }

@media screen and (max-width: 1200px) { .home-member .member-loop__item { width: 300px; } }

@media screen and (max-width: 992px) { .home-member .member-loop__item { width: 240px; } }

.home-member .bg-image-right-circle { position: absolute; width: 640px; top: -148px; right: -328px; }

@media screen and (max-width: 1200px) { .home-member .bg-image-right-circle { width: 480px; top: -24px; right: -240px; } }

@media screen and (max-width: 992px) { .home-member .bg-image-right-circle { width: 400px; right: -240px; } }

@media screen and (max-width: 768px) { .home-member .bg-image-right-circle { width: 320px; top: 24px; right: -200px; } }

@media screen and (max-width: 576px) { .home-member .bg-image-right-circle { width: 240px; top: 96px; right: -148px; } }

.home-member .bg-image-left-top-dot { position: absolute; width: 290px; top: -40px; left: -108px; }

@media screen and (max-width: 992px) { .home-member .bg-image-left-top-dot { width: 240px; top: -80px; left: -108px; } }

@media screen and (max-width: 768px) { .home-member .bg-image-left-top-dot { width: 200px; top: -64px; left: -108px; } }

@media screen and (max-width: 576px) { .home-member .bg-image-left-top-dot { width: 145px; top: -24px; left: -72px; } }

.home-member .bg-image-left-top-illust { position: absolute; top: 0; left: 52px; width: 280px; }

@media screen and (max-width: 992px) { .home-member .bg-image-left-top-illust { width: 240px; top: -48px; left: 32px; } }

@media screen and (max-width: 768px) { .home-member .bg-image-left-top-illust { width: 200px; top: -24px; left: 16px; } }

@media screen and (max-width: 576px) { .home-member .bg-image-left-top-illust { width: 140px; top: 8px; left: 16px; } }

.home-works { background-color: #fafafa; padding-top: 120px; padding-bottom: 120px; position: relative; }

.home-works .home-works__container { position: relative; z-index: 1; }

.home-works .work-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 64px 56px; margin: 0 auto 80px; }

@media screen and (max-width: 1200px) { .home-works .work-cards { gap: 64px 48px; } }

@media screen and (max-width: 992px) { .home-works .work-cards { grid-template-columns: repeat(2, 1fr); max-width: 880px; } }

@media screen and (max-width: 768px) { .home-works .work-cards { grid-template-columns: 1fr; max-width: 560px; } }

.home-works .work-card { display: flex; flex-direction: column; align-items: start; text-decoration: none; transition: 0.3s; container-type: inline-size; }

.home-works .work-card:hover .work-card__image { scale: 1.05; opacity: 0.8; }

.home-works .work-card__image-container { width: 100%; height: 200px; border-radius: 12px; overflow: hidden; margin-bottom: 24px; background-color: #ffffff; }

@container (inline-size <= 340px) { .home-works .work-card__image-container { height: 180px; } }

.home-works .work-card__image { width: 100%; height: 100%; object-fit: cover; transition: 0.3s; }

.home-works .work-card__tag { margin-bottom: 16px; }

.home-works .work-card__title { font-size: 1.25rem; font-weight: 700; line-height: 1; letter-spacing: 0.04em; margin-bottom: 8px; }

.home-works .work-card__intro { color: #333333; font-feature-settings: 'pwid' on; font-size: 0.875rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.04em; margin-bottom: 16px; }

.home-works .work-card__client-name { display: flex; gap: 8px; font-size: 0.875rem; font-weight: 500; line-height: 1.7; letter-spacing: 0.04em; color: #7f7f7f; }

.home-works .work-card__client-name > i { font-size: 1.25rem; margin-top: 0.125rem; }

.home-works .home-works__btn-group { margin: 0 auto; display: flex; justify-content: center; }

.home-skilled-at { padding-top: 120px; padding-bottom: 120px; position: relative; background-color: #fafafa; background-image: url(/images/home/home-bg-grid.svg); }

.home-skilled-at .home-skilled-at__container { position: relative; z-index: 1; }

.home-skilled-at .home-skilled-at__heading { font-size: 1.5rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; text-align: center; margin-bottom: 40px; margin-top: 80px; }

.home-skilled-at .techs { margin-bottom: 20px; }

.home-skilled-at .bg-image-left-top-circle { position: absolute; width: 640px; top: -340px; left: -296px; }

@media screen and (max-width: 1200px) { .home-skilled-at .bg-image-left-top-circle { width: 480px; top: -200px; left: -200px; } }

@media screen and (max-width: 992px) { .home-skilled-at .bg-image-left-top-circle { width: 320px; top: -200px; left: -160px; } }

@media screen and (max-width: 768px) { .home-skilled-at .bg-image-left-top-circle { width: 240px; top: -200px; left: -120px; } }

.home-skilled-at .bg-image-left-top-cross { position: absolute; top: -144px; left: 96px; width: 152px; transform: rotate(180deg); }

@media screen and (max-width: 992px) { .home-skilled-at .bg-image-left-top-cross { width: 112px; top: -144px; left: 48px; } }

@media screen and (max-width: 768px) { .home-skilled-at .bg-image-left-top-cross { width: 76px; top: -148px; left: 16px; } }

.home-feature { padding-top: 120px; padding-bottom: 120px; position: relative; }

.home-feature .home-feature__container { position: relative; z-index: 1; }

.home-feature .features { display: flex; gap: 80px; }

@media screen and (max-width: 1200px) { .home-feature .features { margin: 0 24px; gap: 64px; } }

@media screen and (max-width: 768px) { .home-feature .features { gap: 48px; } }

@media screen and (max-width: 576px) { .home-feature .features { flex-direction: column; margin: 0 auto; width: 100%; max-width: 300px; } }

.home-feature .feature { flex: 1; }

.home-feature .feature__img { width: 100%; margin-bottom: 24px; }

.home-feature .feature__text { font-size: 1.25rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.04em; text-align: center; word-break: auto-phrase; }

@media screen and (max-width: 1200px) { .home-feature .feature__text { font-size: 1rem; } }

@media screen and (max-width: 768px) { .home-feature .feature__text { font-size: 0.875rem; } }

@media screen and (max-width: 576px) { .home-feature .feature__text { font-size: 1rem; } }

.home-feature .feature__text > span { display: inline-block; }

.home-feature .bg-image-right-top-circle { position: absolute; width: 240px; top: -170px; right: -76px; }

@media screen and (max-width: 768px) { .home-feature .bg-image-right-top-circle { width: 200px; top: -100px; right: -72px; } }

@media screen and (max-width: 576px) { .home-feature .bg-image-right-top-circle { width: 160px; top: -100px; right: -72px; } }

.home-feature .bg-image-right-top-cross { position: absolute; top: -12px; right: -76px; width: 152px; transform: rotate(-90deg); }

@media screen and (max-width: 768px) { .home-feature .bg-image-right-top-cross { width: 112px; top: 12px; right: -36px; } }

@media screen and (max-width: 576px) { .home-feature .bg-image-right-top-cross { width: 76px; top: 12px; right: -36px; } }

.home-news { background-color: #fafafa; position: relative; width: 100%; padding: 120px 0; }

.home-news * { box-sizing: border-box; }

@media screen and (max-width: 1400px) { .home-news { padding-bottom: 200px; } }

@media screen and (max-width: 992px) { .home-news { padding-bottom: 160px; } }

@media screen and (max-width: 576px) { .home-news { padding-bottom: 120px; } }

.home-news .home-news-container { width: 100%; max-width: 960px; margin: 0 auto; position: relative; z-index: 1; }

.home-news .news-list-container { background-color: #ffffff; padding: 40px; border-radius: 12px; box-shadow: 2px 2px 10px 0px rgba(211, 211, 211, 0.3); }

@media screen and (max-width: 576px) { .home-news .news-list-container { padding: 32px; } }

.home-news .home-news-buttons { display: flex; justify-content: center; margin-top: 40px; }

.home-news .home-news-buttons > .btn { width: 100%; max-width: 200px; }

.home-news .bg-image-left-top-circle { position: absolute; top: -120px; left: -220px; width: 400px; }

@media screen and (max-width: 768px) { .home-news .bg-image-left-top-circle { width: 300px; top: -120px; left: -140px; } }

@media screen and (max-width: 576px) { .home-news .bg-image-left-top-circle { width: 200px; top: -104px; left: -104px; } }

.home-news .bg-image-left-top-dot { position: absolute; top: 172px; left: 96px; }

@media screen and (max-width: 1200px) { .home-news .bg-image-left-top-dot { width: 240px; top: 48px; left: -48px; } }

@media screen and (max-width: 768px) { .home-news .bg-image-left-top-dot { width: 200px; top: 48px; left: -48px; } }

@media screen and (max-width: 576px) { .home-news .bg-image-left-top-dot { width: 144px; top: 36px; left: -56px; } }

.home-news .bg-image-right-bottom-illust { position: absolute; bottom: 0; right: 0; width: 280px; }

@media screen and (max-width: 992px) { .home-news .bg-image-right-bottom-illust { width: 200px; } }

@media screen and (max-width: 576px) { .home-news .bg-image-right-bottom-illust { width: 160px; } }

.home-contact { background-color: #029aaa; background-image: url(/images/home/home-bg-grid.svg), url(/images/home/home-bg-ornament-10.svg), url(/images/home/home-bg-ornament-11.svg), url(/images/home/home-bg-ornament-12.svg), url(/images/home/home-bg-ornament-13.svg); background-blend-mode: normal, multiply, multiply, normal, normal; background-position: top, bottom -296px left -196px, top -312px right -176px, bottom 64px left -76px, top 64px right -64px; background-repeat: repeat, no-repeat, no-repeat, no-repeat, no-repeat; padding: 120px 0; }

.home-contact * { box-sizing: border-box; }

@media screen and (max-width: 1200px) { .home-contact { background-size: auto, 480px, 480px, 180px, 180px; background-position: top, bottom -148px left -108px, top -164px right -88px, bottom 32px left -32px, top 32px right -32px; } }

@media screen and (max-width: 768px) { .home-contact { background-size: auto, 320px, 320px, 144px, 144px; background-position: top, bottom -148px left -108px, top -164px right -88px, bottom 32px left -32px, top 32px right -32px; } }

.home-contact .home-contact-container { display: flex; flex-direction: column; align-items: center; }

.home-contact .home-title { margin-bottom: 48px; }

.home-contact .button-group { display: flex; width: 100%; justify-content: center; gap: 20px; }

.home-contact .button-group > .btn { width: 252px; }

@media screen and (max-width: 576px) { .home-contact .button-group { flex-direction: column; gap: 16px; align-items: center; } .home-contact .button-group > .btn { width: 100%; max-width: 320px; } }

.home-banner { padding-top: 80px; padding-bottom: 80px; }

@media screen and (max-width: 576px) { .home-banner { padding-top: 40px; padding-bottom: 40px; } }

.home-banner .home-banner__container { border-radius: 16px; overflow: hidden; display: grid; grid-template-columns: repeat(2, 1fr); }

@media screen and (max-width: 992px) { .home-banner .home-banner__container { grid-template-columns: 1fr; } }

.home-banner .home-banner__inner, .home-banner .home-banner__inner--right, .home-banner .home-banner__inner--left { padding: 48px 40px; display: grid; grid-template-rows: subgrid; grid-row: span 5; color: #ffffff; height: 400px; position: relative; background-color: #00131580; overflow: hidden; text-decoration: none; transition-duration: 500ms; transition-property: background-color; }

@media screen and (max-width: 576px) { .home-banner .home-banner__inner, .home-banner .home-banner__inner--right, .home-banner .home-banner__inner--left { padding: 24px 16px; } }

.home-banner .home-banner__inner:hover, .home-banner .home-banner__inner--right:hover, .home-banner .home-banner__inner--left:hover { background: #0013154c; }

.home-banner .home-banner__inner:hover .home-banner__bg, .home-banner .home-banner__inner--right:hover .home-banner__bg, .home-banner .home-banner__inner--left:hover .home-banner__bg { transform: scale(1.1); }

.home-banner .home-banner__inner:hover .btn-banner, .home-banner .home-banner__inner--right:hover .btn-banner, .home-banner .home-banner__inner--left:hover .btn-banner { color: #000000; }

.home-banner .home-banner__inner:hover .btn-banner::after, .home-banner .home-banner__inner--right:hover .btn-banner::after, .home-banner .home-banner__inner--left:hover .btn-banner::after { transform: scale(1, 1); }

.home-banner .home-banner__inner--right { border-left: 1px solid #ffffff; }

@media screen and (max-width: 992px) { .home-banner .home-banner__inner--right { border-left: none; border-top: 1px solid #ffffff; } }

.home-banner .home-banner__bg { width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: -1; transition-duration: 500ms; object-fit: cover; }

.home-banner .title-en { font-family: "Lato", sans-serif; font-size: 1.5rem; font-weight: 900; line-height: 1; letter-spacing: 0.04em; margin-bottom: 40px; text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.25); }

@media screen and (max-width: 992px) { .home-banner .title-en { font-size: 1.125rem; margin-bottom: 32px; } }

@media screen and (max-width: 576px) { .home-banner .title-en { font-size: 0.75rem; margin-bottom: 24px; } }

.home-banner .title-ja { font-size: 2.5rem; font-weight: 700; line-height: 1; letter-spacing: 0.04em; margin-bottom: 32px; text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.25); }

@media screen and (max-width: 992px) { .home-banner .title-ja { font-size: 2rem; margin-bottom: 20px; } }

@media screen and (max-width: 576px) { .home-banner .title-ja { font-size: 1.5rem; margin-bottom: 16px; } }

.home-banner .heading { font-size: 1.25rem; font-weight: 700; line-height: 1; letter-spacing: 0.04em; margin-bottom: 8px; text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.25); }

@media screen and (max-width: 992px) { .home-banner .heading { font-size: 1rem; } }

@media screen and (max-width: 576px) { .home-banner .heading { font-size: 0.875rem; margin-bottom: 4px; } }

.home-banner .text { font-size: 1rem; line-height: 1.5; letter-spacing: 0.04em; margin-bottom: 32px; text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.25); }

@media screen and (max-width: 992px) { .home-banner .text { font-size: 0.875rem; margin-bottom: 20px; } }

@media screen and (max-width: 576px) { .home-banner .text { font-size: 0.75rem; margin-bottom: 16px; } }

.home-banner .btn-group { display: flex; gap: 40px; }

@media screen and (max-width: 576px) { .home-banner .btn-group { gap: 24px; } }

.home-banner .btn-banner { border-width: 1px; border-style: solid; font-weight: 500; background: transparent; border-color: #ffffff; color: #ffffff; overflow: hidden; position: relative; z-index: 1; }

.home-banner .btn-banner::after { background: #ffffff; position: absolute; top: 0; left: 0; content: ''; width: 100%; height: 100%; transform: scale(0, 1); transform-origin: left top; transition: transform 0.2s cubic-bezier(0.45, 0, 0.55, 1); z-index: -1; }

.home-banner .btn-banner:hover::after { background: #e6e6e6; }

@media screen and (max-width: 576px) { .home-banner .btn-banner { flex: 1; } }

.information_img { overflow: hidden; width: 100%; height: 500px; position: relative; }

@media screen and (max-width: 1024px) { .information_img { height: auto; min-height: 250px; } }

.information_img img { width: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

.jekyll-linkpreview { display: flex; padding: 12px; background-color: #ffffff; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: 3px; }

.jekyll-linkpreview-image { flex-shrink: 0; width: 100px; height: 100px; }

.jekyll-linkpreview-body { width: 100%; }

.jekyll-linkpreview-title { margin-bottom: 4px; }

.jekyll-linkpreview-title a { color: #3d4245; text-decoration: none; }

.jekyll-linkpreview-description { font-size: 0.75rem; line-height: 1.5; }

.jekyll-linkpreview-footer { margin-top: 8px; font-size: 0.75rem; }

.jekyll-linkpreview-footer a { color: #666; font-weight: normal; text-decoration: none; }

@media screen and (max-width: 1024px) { .jekyll-linkpreview-title, .jekyll-linkpreview-description { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } .jekyll-linkpreview-image { display: none; } }

.member-interview { margin-top: 120px; margin-bottom: 120px; }

.member-interview .client-profile_interviewee { position: relative; padding-top: 80px; }

.member-interview_title { position: absolute; top: -15px; left: 0; right: 0; margin: auto; }

@media screen and (max-width: 1024px) { .member-interview { margin-bottom: 0; padding-left: 20px; padding-right: 20px; } .member-interview_title { top: -20px; font-size: 2.125rem; line-height: 1.2; } .member-interview_title span { margin-top: 10px; font-size: 0.875rem; } }

.mainvisual { margin-bottom: 50px; }

@media screen and (max-width: 1024px) { .mainvisual { margin-bottom: 30px; } }

.mainvisual .mainvisual__image { display: flex; margin-bottom: 30px; }

@media screen and (max-width: 1024px) { .mainvisual .mainvisual__image { margin-bottom: 20px; } }

.mainvisual .mainvisual__image img { width: 100%; }

.personal-info { margin-bottom: 30px; }

@media screen and (max-width: 1024px) { .personal-info { margin-bottom: 20px; } }

.personal-info .personal-info__name { font-size: 1.75rem; margin-bottom: 20px; }

@media screen and (max-width: 1024px) { .personal-info .personal-info__name { margin-bottom: 15px; } }

.personal-info .personal-info__name .name_ja { font-size: 1.75rem; }

@media screen and (max-width: 1024px) { .personal-info .personal-info__name .name_ja { font-size: 1.125rem; } }

.personal-info .personal-info__name .name_en { font-size: 1.5rem; }

@media screen and (max-width: 1024px) { .personal-info .personal-info__name .name_en { font-size: 0.875rem; } }

.personal-info .personal-info__role { font-size: 1.25rem; margin-bottom: 20px; }

@media screen and (max-width: 1024px) { .personal-info .personal-info__role { font-size: 0.875rem; margin-bottom: 15px; } }

.personal-info .personal-info__sns { display: flex; justify-content: center; margin-bottom: 30px; }

@media screen and (max-width: 1024px) { .personal-info .personal-info__sns { margin-bottom: 20px; } }

.personal-info .personal-info__sns .personal-info__sns--item { list-style-type: none; }

.personal-info .personal-info__sns .personal-info__sns--item:not(:last-child) { margin-right: 10px; }

.personal-info .personal-info__sns .personal-info__sns--item a:hover { opacity: 0.7; transition: 0.3s; }

.personal-info .personal-info__sns .personal-info__sns--item img { width: 30px; height: 30px; display: inline-block; }

.personal-info .personal-info__introduction { color: #029aaa; line-height: 200%; background-color: #f8f8f4; display: flex; flex-direction: column; align-items: center; padding: 30px; }

@media screen and (max-width: 1024px) { .personal-info .personal-info__introduction { margin: 0 20px; padding: 20px; } }

.personal-info .personal-info__introduction .personal-info__introduction--content { font-size: 1rem; margin-bottom: 20px; }

@media screen and (max-width: 1024px) { .personal-info .personal-info__introduction .personal-info__introduction--content { font-size: 0.75rem; } }

.personal-info .personal-info__introduction .personal-info__interview { text-decoration: none; max-width: 400px; width: 100%; }

.personal-info .personal-info__introduction .personal-info__interview .personal-info__interview--button { padding: 20px 24px; display: flex; justify-content: space-between; border-width: 1px; }

@media screen and (max-width: 1024px) { .personal-info .personal-info__introduction .personal-info__interview .personal-info__interview--button { padding: 18px 20px; font-size: 0.875rem; border-radius: 100vh; width: initial; } }

.profile { margin-bottom: 50px; }

@media screen and (max-width: 1024px) { .profile { margin-left: 20px; margin-right: 20px; } }

.profile .profile__title { font-size: 1.25rem; padding-bottom: 15px; margin-bottom: 20px; border-bottom: 1px dashed #029aaa; }

@media screen and (max-width: 1024px) { .profile .profile__title { font-size: 1rem; margin-bottom: 15px; } }

.profile .profile__content { line-height: 200%; opacity: 0.5; }

@media screen and (max-width: 1024px) { .profile .profile__content { line-height: 28px; font-size: 0.75rem; opacity: 1; } }

.qa { margin-bottom: 50px; }

@media screen and (max-width: 1024px) { .qa { margin-left: 20px; margin-right: 20px; } }

.qa .qa__title { font-size: 1.25rem; padding-bottom: 15px; margin-bottom: 30px; border-bottom: 1px dashed #029aaa; }

@media screen and (max-width: 1024px) { .qa .qa__title { font-size: 1rem; margin-bottom: 20px; } }

.qa .qa__content { padding: 30px; border: 1px solid #029aaa; margin-bottom: 30px; }

@media screen and (max-width: 1024px) { .qa .qa__content { padding: 20px; margin-bottom: 20px; } }

.qa .qa__content .qa__content--title { color: #029aaa; font-weight: 700; font-size: 1rem; margin-bottom: 15px; display: flex; gap: 20px; }

@media screen and (max-width: 1024px) { .qa .qa__content .qa__content--title { gap: 10px; margin-bottom: 10px; } }

.qa .qa__content .qa__content--title .qa__content--title-q { font-size: 1.25rem; line-height: 1.2; }

.qa .qa__content .qa__content--title .qa__content--title-text { font-size: 1rem; }

@media screen and (max-width: 1024px) { .qa .qa__content .qa__content--title .qa__content--title-text { font-size: 0.875rem; } }

.qa .qa__content .qa__content--answer { font-size: 0.875rem; line-height: 200%; margin-left: 43px; }

@media screen and (max-width: 1024px) { .qa .qa__content .qa__content--answer { font-size: 0.75rem; opacity: 0.5; margin-left: 0px; } }

.project { margin-bottom: 50px; }

@media screen and (max-width: 1024px) { .project { margin-left: 20px; margin-right: 20px; } }

.project .project__title { font-size: 1.25rem; padding-bottom: 15px; margin-bottom: 30px; border-bottom: 1px dashed #029aaa; }

@media screen and (max-width: 1024px) { .project .project__title { font-size: 1rem; margin-bottom: 20px; } }

.project .project__content { display: flex; align-items: center; gap: 30px; background-color: #f8f8f4; border-radius: 10px; padding: 40px; margin-bottom: 30px; }

@media screen and (max-width: 1024px) { .project .project__content { flex-direction: column; gap: 0px; padding: 20px; } }

.project .project__content .project__content--image img { object-fit: cover; aspect-ratio: 6 / 5; width: 320px; }

@media screen and (max-width: 1024px) { .project .project__content .project__content--image img { width: 100%; } }

.project .project__content .project__content--detail .interview--title { font-size: 1rem; color: #029aaa; margin: 20px 0px; line-height: 150%; }

@media screen and (max-width: 1024px) { .project .project__content .project__content--detail .interview--title { font-size: 0.875rem; margin: 15px 0px; } }

.project .project__content .project__content--detail .interview--border { color: #029aaa; background-color: #029aaa; width: 50px; height: 2px; }

.project .project__content .project__content--detail .interview--content { margin: 20px 0px 30px 0px; line-height: 200%; font-size: 0.75rem; }

@media screen and (max-width: 1024px) { .project .project__content .project__content--detail .interview--content { margin: 20px 0px 20px 0px; } }

.project .project__content .project__content--detail .interview__read-more { display: block; width: 80px; line-height: 8px; border-radius: 70px; margin-bottom: 20px; margin-left: auto; margin-right: 0px; text-decoration: none; }

@media screen and (max-width: 1024px) { .project .project__content .project__content--detail .interview__read-more { width: initial; } }

.personal-apps { margin-bottom: 50px; }

@media screen and (max-width: 1024px) { .personal-apps { margin-left: 20px; margin-right: 20px; } }

.personal-apps .personal-apps__title { font-size: 1.25rem; padding-bottom: 15px; margin-bottom: 30px; border-bottom: 1px dashed #029aaa; }

@media screen and (max-width: 1024px) { .personal-apps .personal-apps__title { font-size: 1rem; margin-bottom: 20px; } }

.personal-apps .personal-apps__content { display: flex; gap: 30px; }

@media screen and (max-width: 1024px) { .personal-apps .personal-apps__content { flex-direction: column; gap: 20px; } }

.personal-apps .personal-apps__content .personal-app { width: 50%; border: 1px solid #029aaa; border-radius: 10px; }

@media screen and (max-width: 1024px) { .personal-apps .personal-apps__content .personal-app { width: 100%; } }

.personal-apps .personal-apps__content .personal-app .personal-app__image { margin-bottom: 20px; }

.personal-apps .personal-apps__content .personal-app .personal-app__image img { object-fit: cover; aspect-ratio: 16 / 9; width: 100%; border-radius: 10px 10px 0px 0px; }

.personal-apps .personal-apps__content .personal-app .personal-app__title { color: #029aaa; font-weight: 700; font-size: 1rem; text-align: center; margin-bottom: 15px; padding: 0px 25px; }

.personal-apps .personal-apps__content .personal-app .personal-app__content { font-size: 0.875rem; line-height: 2em; height: calc( 2em * 3); display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; padding: 0px 25px; margin-bottom: 20px; }

.personal-apps .personal-apps__content .personal-app .personal-app__read-more { display: block; width: 30%; line-height: 8px; border-radius: 70px; margin-bottom: 20px; margin-left: auto; margin-right: auto; text-decoration: none; }

@media screen and (max-width: 1024px) { .personal-apps .personal-apps__content .personal-app .personal-app__read-more { width: 60%; } }

.other-member-profile { position: relative; }

.other-member-profile .container-wrapper { position: relative; background-color: rgba(2, 154, 170, 0.05); border-top: 2px solid #029aaa; width: 100vw; height: 600px; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }

@media screen and (max-width: 1024px) { .other-member-profile .container-wrapper { height: calc(250px + 100vw); max-height: 900px; } }

.other-member-profile .container-wrapper:before { position: absolute; content: ""; width: 100%; height: 100%; background: #ffffff url(/images/bg.png); z-index: -1; }

.other-member-profile .container { position: absolute; top: 0px; }

.other-member-profile .container .title { font-weight: 700; font-size: 1.5625rem; color: #029aaa; text-align: center; margin-top: 100px; margin-bottom: 45px; }

@media screen and (max-width: 1024px) { .other-member-profile .container .title { font-size: 1.125rem; margin-top: 40px; margin-bottom: 30px; margin-left: 50px; margin-right: 50px; } }

.other-member-profile .container .slider-member .slider-member-items { width: 90%; margin: 0 auto 60px; }

@media screen and (max-width: 1024px) { .other-member-profile .container .slider-member .slider-member-items { width: 100%; margin: 0 auto 40px; } }

.other-member-profile .container .slider-member .slider-member-items .item { display: block; background: #ffffff; border: 1px solid #029aaa; padding: 20px; margin: 0 15px; }

@media screen and (max-width: 1024px) { .other-member-profile .container .slider-member .slider-member-items .item { margin: 0 7px; } }

.other-member-profile .container .slider-member .slider-member-items .item:hover { opacity: 0.7; transition: 0.3s; text-decoration: none; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content { display: flex; align-items: center; gap: 20px; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content .item__content--image img { object-fit: cover; aspect-ratio: 5 / 4; width: 200px; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content .item__content--detail .name-and-role { display: flex; justify-content: space-between; align-items: start; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content .item__content--detail .name-and-role .name { width: max-content; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content .item__content--detail .name-and-role .name .name_ja { font-size: 1.125rem; font-weight: 700; margin-bottom: 5px; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content .item__content--detail .name-and-role .name .name_en { font-size: 0.875rem; font-weight: 700; margin-bottom: 10px; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content .item__content--detail .name-and-role .role { color: #029aaa; font-size: 0.875rem; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content .item__content--detail .introduction { font-size: 0.875rem; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content-sp { display: flex; flex-direction: column; gap: 15px; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content-sp .item__content--image img { object-fit: cover; aspect-ratio: 5 / 4; width: 100%; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content-sp .name-and-role { display: flex; flex-direction: column; align-items: center; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content-sp .name-and-role .name { width: max-content; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content-sp .name-and-role .name .name_ja { font-size: 0.875rem; font-weight: 700; margin-bottom: 5px; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content-sp .name-and-role .name .name_en { font-size: 0.875rem; font-weight: 700; margin-bottom: 10px; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content-sp .name-and-role .role { color: #029aaa; font-size: 0.875rem; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.other-member-profile .container .slider-member .slider-member-items .item .item__content-sp .introduction { font-size: 0.75rem; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }

@media screen and (max-width: 1024px) { .other-member-profile .container .slider-member .slider-member-items .item .item__content { display: none; } }

@media screen and (min-width: 1025px) { .other-member-profile .container .slider-member .slider-member-items .item .item__content-sp { display: none; } }

.other-member-profile .container .slider-member .slider-member-items .slick-next, .other-member-profile .container .slider-member .slider-member-items .slick-prev { background-color: #029aaa; border-radius: 50%; color: #ffffff; height: 40px; width: 40px; box-shadow: 2px 2px 3px #d3d3d3; }

.other-member-profile .container .slider-member .slider-member-items .slick-next:hover, .other-member-profile .container .slider-member .slider-member-items .slick-prev:hover { background-color: #008c9b; }

.other-member-profile .container .slider-member .slider-member-items .slick-next { right: -50px; }

@media screen and (max-width: 1024px) { .other-member-profile .container .slider-member .slider-member-items .slick-next { right: 15px; } }

.other-member-profile .container .slider-member .slider-member-items .slick-prev { left: -50px; }

@media screen and (max-width: 1024px) { .other-member-profile .container .slider-member .slider-member-items .slick-prev { left: 15px; } }

.other-member-profile .container .other-member-profile-link { text-decoration: none; display: flex; justify-content: center; }

.other-member-profile .container .other-member-profile-link .other-member-profile-link--button { padding: 20px 24px; display: flex; justify-content: space-between; width: 400px; border-width: 1px; }

@media screen and (max-width: 1024px) { .other-member-profile .container .other-member-profile-link .other-member-profile-link--button { padding: 18px 20px; font-size: 0.875rem; border-radius: 100vh; width: 100%; margin-left: 40px; margin-right: 40px; } }

.member .main_visual .main_img { background-position: center; background-repeat: no-repeat; background-size: cover; width: auto; height: 100%; }

.member_container { width: 1000px; display: -webkit-flex; display: flex; -webkit-justify-content: space-between; justify-content: space-between; -webkit-box-lines: multiple; -moz-box-lines: multiple; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media screen and (max-width: 1024px) { .member_container { width: 100%; } }

.member_container::after { content: ""; display: block; width: 300px; }

@media screen and (max-width: 1024px) { .member_container::after { margin: 0 auto; margin-bottom: 50px; } }

.member_name { float: left; font-size: 0.8125rem; line-height: 3; }

.member_jobtitle { float: right; font-size: 0.6875rem; line-height: 3.5; color: #029aaa; }

.member_thumb { position: relative; width: 300px; height: 200px; }

.member_thumb img { transition: .3s ease-in-out; position: absolute; top: 0; left: 0; }

.member_thumb__out { z-index: 1; }

.member_thumb__over { z-index: 0; opacity: 0; visibility: hidden; }

.member_thumb:hover .member_thumb__out { z-index: 0; opacity: 0; visibility: hidden; }

.member_thumb:hover .member_thumb__over { z-index: 1; opacity: 1; visibility: visible; }

.member_item { width: 300px; border-top: solid 1px #029aaa; margin-bottom: 50px; display: -webkit-flex; display: flex; flex-direction: column; }

@media screen and (max-width: 1024px) { .member_item { margin: 0 auto; margin-bottom: 50px; } }

.member_message { font-size: 0.75rem; padding-top: 20px; }

.member_area { width: 100%; padding-top: 80px; padding-bottom: 60px; }

@media screen and (max-width: 1024px) { .member_area { padding-top: 50px; } }

.member_area .service_area_inner { margin-top: 120px; }

@media screen and (max-width: 1024px) { .member_area .service_area_inner { margin-top: 40px; padding: 0 20px; } }

.member_link { border-color: #00a4b4; background: white; padding-top: 0.5em; padding-bottom: 0.5em; margin-top: auto; margin-right: auto; }

.member_link-button { margin-top: 16px; }

.work_environment .main_visual .main_img { background: url(/images/main_work_environment.jpg) no-repeat center center; background-size: cover; width: auto; height: 100%; }

.work_environment_nav { margin: 0 30px; }

.recruit * { box-sizing: border-box; }

.recruit .main_visual { height: 600px; position: relative; }

.recruit .main_visual::after { background: url("/images/recruit/dot.png") left top repeat; content: ''; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 0; }

.recruit .main_visual .main_img { background: url(/images/main_contact.jpg) no-repeat center top; background-size: cover; width: auto; height: 100%; }

.recruit .main_text_wrap { position: absolute; top: 50%; transform: translate(0, -50%); z-index: 1; width: 100%; }

.recruit .main_text_jp { position: static; color: #ffffff; font-size: 4.5rem; font-weight: bold; line-height: 1.5em; }

@media screen and (max-width: 1024px) { .recruit .main_text_jp { font-size: 2rem; line-height: 1.2; } }

.recruit .main_text_jp br { display: none; }

@media screen and (max-width: 1024px) { .recruit .main_text_jp br { display: inline; } }

.recruit .main_text_en { position: static; color: #ffffff; font-size: 2.25rem; font-weight: bold; }

@media screen and (max-width: 1024px) { .recruit .main_text_en { font-size: 1.125rem; } }

.recruit .recruit_container { background-color: #f7f7f7; padding: 50px 0; }

.recruit .recruit_container p { padding-bottom: 50px; }

.recruit .recruit_container a { color: #029aaa; }

.recruit .recruit_container .flow-image { width: 80%; margin-left: 10%; }

@media screen and (max-width: 1024px) { .recruit .recruit_container { font-size: 0.75rem; padding: 20px; background: #ffffff; } .recruit .recruit_container .flow-image { width: 100%; margin-left: 0; } }

.recruit .recruit-title { color: #029aaa; font-size: 1.5rem; margin-bottom: 24px; text-align: center; line-height: 1.5; letter-spacing: 0.04em; }

@media screen and (max-width: 576px) { .recruit .recruit-title { font-size: 1.25rem; margin-bottom: 32px; } }

.recruit .recruit_content { width: 700px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .recruit .recruit_content { width: 100%; } }

.recruit .recruit_flow { width: 700px; margin: 40px auto; }

@media screen and (max-width: 1024px) { .recruit .recruit_flow { width: 100%; } }

.recruit .recruit_guideline { margin-bottom: 50px; background-image: linear-gradient(to right, #029aaa 55%, rgba(255, 255, 255, 0) 0%); background-position: bottom; background-size: 4px 1px; background-repeat: repeat-x; }

@media screen and (max-width: 1024px) { .recruit .recruit_guideline { width: 100%; } }

.recruit .recruit_guideline-list { padding-left: 25px; padding-bottom: 10px; padding-top: 7px; line-height: 1.8; }

@media screen and (max-width: 1024px) { .recruit .recruit_guideline-list { padding: 7px 0 10px 0; line-height: 1.8; width: 70%; margin: 0 auto; } }

.recruit .recruit_guideline-term { width: 10.3em; float: left; background-image: linear-gradient(to right, #029aaa 55%, rgba(255, 255, 255, 0) 0); background-position: top; background-size: 4px 1px; background-repeat: repeat-x; padding-top: 17px; padding-right: 0; padding-bottom: 0; padding-left: 0; }

@media screen and (max-width: 1024px) { .recruit .recruit_guideline-term { width: 10em; padding: 15px 0 15px 0; } }

.recruit .recruit_guideline-desc { margin-left: 10em; background-image: linear-gradient(to right, #029aaa 55%, rgba(255, 255, 255, 0) 0); background-position: top; background-size: 4px 1px; background-repeat: repeat-x; padding: 17px 0 15px 0; }

@media screen and (max-width: 1024px) { .recruit .recruit_guideline-desc { margin-left: 9em; } }

.recruit .recruit_entry-text { float: right; width: 350px; font-size: 0.875rem; }

@media screen and (max-width: 1024px) { .recruit .recruit_entry-text { float: none; width: 100%; font-size: 0.75rem; margin-bottom: 30px; } }

.recruit .recruit_entry-notice { text-align: left; margin-bottom: 20px; }

@media screen and (max-width: 1024px) { .recruit .recruit_entry-notice { padding: 0 30px; } }

.recruit .recruit_entry-section { width: 50%; float: left; }

.recruit .recruit_entry-section input[type='file'] { height: auto; }

@media screen and (max-width: 1024px) { .recruit .recruit_entry-section { padding-bottom: 80px; } }

.recruit .recruit_entry-section .entry_form { width: 100%; }

@media screen and (max-width: 1024px) { .recruit .recruit_entry-section { float: none; width: 100%; padding-top: 0; padding-bottom: 60px; } .recruit .recruit_entry-section form { width: 80%; margin: 0 auto; } }

.recruit .recruit_entry-section label { display: inline-block; color: #029aaa; padding-bottom: 2px; margin-left: -25px; max-width: 100%; }

.recruit .recruit_entry-section label.label-with-designed-checkbox { float: right; bottom: 200px; right: -550px; color: #333333; }

@media screen and (max-width: 1024px) { .recruit .recruit_entry-section label.label-with-designed-checkbox { float: initial; bottom: initial; right: initial; font-size: 0.75rem; margin-left: 24px; } }

.recruit .recruit_entry-section label.label-with-designed-checkbox a { color: #029aaa; }

.recruit .recruit_entry-section .text-error { float: right; position: absolute; bottom: 176px; right: -18px; }

@media screen and (max-width: 1024px) { .recruit .recruit_entry-section .text-error { float: initial; position: initial; bottom: initial; right: initial; font-size: 0.75rem; } }

.recruit .recruit_entry-button { float: right; bottom: 100px; width: 330px; height: 60px; position: absolute; right: 20px; padding: 1rem 1rem; text-align: left; color: #00a4b4; }

@media screen and (max-width: 1024px) { .recruit .recruit_entry-button { float: initial; bottom: initial; right: initial; position: initial; height: initial; text-align: center; padding: 1em 1em; width: 224px; } }

.recruit .recruit_entry-button:hover { background: #00a4b4; color: #ffffff; }

.recruit .recruit_nav { background: #029aaa; padding: 8px 16px; display: flex; justify-content: center; }

@media screen and (max-width: 992px) { .recruit .recruit_nav { padding: 0; } }

.recruit .recruit_nav-list { max-width: 992px; display: flex; justify-content: center; gap: 0; list-style: none; }

@media screen and (max-width: 992px) { .recruit .recruit_nav-list { padding: 0; justify-content: space-between; flex-wrap: wrap; width: 100%; } }

@media screen and (max-width: 992px) { .recruit .recruit_nav-item { width: 50%; box-sizing: border-box; } .recruit .recruit_nav-item:nth-child(odd) { border-right: 1px solid #ffffff; } .recruit .recruit_nav-item:nth-child(odd):last-child { width: 100%; } .recruit .recruit_nav-item:nth-child(n + 3) { border-top: 1px solid #ffffff; } .recruit .recruit_nav-item:last-child { border-right: none; } }

.recruit .recruit_nav-link { display: block flex; align-items: center; justify-content: center; height: 56px; padding: 0 16px; margin: 0; font-family: inherit; transition: background-color 0.25s ease-out, color 0.25s ease-out; font-size: 0.875rem; line-height: 1.2; text-align: center; background: #029aaa; color: #ffffff; }

@media screen and (max-width: 576px) { .recruit .recruit_nav-link { font-size: 0.75rem; } }

.recruit .recruit_nav-link:hover { text-decoration: none; background: #ffffff; color: #029aaa; }

.recruit .recruit-section, .recruit .recruit-section--bg-blue, .recruit .recruit-section--bg-gray { position: relative; padding-top: 64px; padding-bottom: 64px; margin: 0; }

.recruit .recruit-section--bg-gray { background-color: #f7f7f7; }

.recruit .recruit-section--bg-blue { background-color: #e2f8fa; }

.recruit .recruit_message-list { font-size: 0.875rem; padding-left: 25px; padding-bottom: 10px; padding-top: 7px; line-height: 1.8; }

@media screen and (max-width: 1024px) { .recruit .recruit_message-list { padding: 7px 0 10px 0; line-height: 1.8; width: 70%; margin: 0 auto; } }

.recruit .ceo-section { margin-top: 80px; width: 100%; display: grid; grid-template-columns: 2fr 3fr; gap: 48px; transition: 0.3s ease-in-out; }

@media screen and (max-width: 768px) { .recruit .ceo-section { grid-template-columns: 1fr; } }

.recruit .recruit_ceo-meta { width: 100%; }

@media screen and (max-width: 768px) { .recruit .recruit_ceo-meta { max-width: 400px; margin: 0 auto; } }

.recruit .recruit_ceo-meta img.img-ceo { border: solid 1px #029aaa; }

.recruit .recruit_ceo-name { color: #029aaa; }

.recruit .recruit_ceo-name .name-wrap { display: flex; justify-content: space-between; align-items: center; margin: 20px 0 15px; }

@media screen and (max-width: 1024px) { .recruit .recruit_ceo-name .name { display: flex; justify-content: space-between; align-items: center; } .recruit .recruit_ceo-name .name-wrap { display: block; margin: 15px 0 10px; } }

.recruit .recruit_ceo-link-icon { margin-right: 10px; }

@media screen and (max-width: 1024px) { .recruit .recruit_ceo-link-icon { margin: 1px; } }

.recruit .recruit_ceo-link-icon-image { width: auto !important; }

.recruit .recruit_ceo-name-jp { font-size: 1.25rem; display: inline-block; font-weight: bold; margin-right: 5px; }

.recruit .recruit_ceo-job-title { font-size: 0.875rem; }

.recruit .recruit_ceo-name-en { font-size: 0.875rem; }

.recruit .recruit_ceo-message { width: 100%; }

.recruit .recruit_ceo-message-header { font-size: 1.0625rem; margin-bottom: 20px; color: #029aaa; padding: 15px; background: #f7f7f7; border-radius: 6px; }

@media screen and (max-width: 1024px) { .recruit .recruit_ceo-message-header { padding: 15px; } }

.recruit .recruit_ceo-message-paragraph { margin-bottom: 15px; font-size: 0.875rem; }

@media screen and (max-width: 1024px) { .recruit .recruit_ceo-message-paragraph { padding: 5px 0; } }

.recruit .recruit_bnr { margin: 80px 0 0; display: block; }

.recruit .recruit_bnr:hover { opacity: 0.7; transition: 0.3s; }

.recruit .feature-cover { margin-bottom: 32px; aspect-ratio: 9/4; object-fit: cover; }

.recruit .recruit_feature-heading { color: #029aaa; font-size: 1rem; margin-bottom: 15px; }

.recruit .environment { list-style: none; display: flex; align-items: start; gap: 48px; }

.recruit .environment li { width: 100%; }

.recruit .environment img { border: solid 1px #029aaa; margin-bottom: 24px; }

.recruit .environment h4 { text-align: center; background: #f4f212; padding: 10px; }

@media screen and (max-width: 768px) { .recruit .environment { flex-direction: column; align-items: center; } .recruit .environment li { max-width: 440px; } }

.recruit .recruit_top-interview .interview-list { background: #ffffff; border: solid 1px #029aaa; border-radius: 5px; list-style: none; text-align: center; margin: 0 15px; min-height: 345px; }

.recruit .recruit_top-interview .interview-link { display: block; padding: 30px; }

.recruit .recruit_top-interview .interview-link:hover { opacity: 0.7; transition: 0.3s; text-decoration: none; }

.recruit .recruit_top-interview .interview-img { border-radius: 50%; width: 150px; height: 150px; object-fit: cover; margin-bottom: 15px; display: inline-block; }

.recruit .recruit_top-interview .interview-name { color: #029aaa; }

.recruit .recruit_top-interview .interview-job { display: block; color: #029aaa; font-size: 0.8125rem; margin-bottom: 10px; }

.recruit .recruit_top-interview .interview-txt { font-size: 0.875rem; text-align: left; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; overflow: hidden; }

.recruit .recruit_top-interview .slick-next, .recruit .recruit_top-interview .slick-prev { background-color: #029aaa; border-radius: 50%; color: #ffffff; height: 40px; width: 40px; box-shadow: 2px 2px 3px #d3d3d3; }

.recruit .recruit_top-interview .slick-next:hover, .recruit .recruit_top-interview .slick-prev:hover { background-color: #008c9b; }

.recruit .recruit_top-interview .slick-next { right: 0; }

.recruit .recruit_top-interview .slick-prev { left: 0; }

.recruit .recruit_container-posts { display: flex; width: 900px; justify-content: space-around; margin-top: 100px; margin-bottom: 70px; }

@media screen and (max-width: 1024px) { .recruit .recruit_container-posts { width: 100%; margin-top: 100px; padding: 0; } }

.recruit .recruit-slide { aspect-ratio: 16/9; }

.recruit .recruit-faq a { color: #029aaa; }

.recruit .recruit-faq .recruit-faq_question { font-size: 1rem; display: flex; gap: 16px; margin-bottom: 8px; padding: 0 16px; }

.recruit .recruit-faq .recruit-faq_question:before { display: block; flex-shrink: 0; content: ''; background: url(../../images/recruit/recruit_qa_question.svg) no-repeat; background-size: contain; width: 20px; height: 20px; margin-top: calc(0.5lh - 10px); }

.recruit .recruit-faq .recruit-faq_answer { font-size: 0.875rem; background: #f7f7f7; border-radius: 6px; padding: 16px; display: flex; gap: 16px; margin-bottom: 24px; }

.recruit .recruit-faq .recruit-faq_answer:before { display: block; flex-shrink: 0; content: ''; background: url(../../images/recruit/recruit_qa_answer.svg) no-repeat; background-size: contain; width: 20px; height: 20px; margin-top: calc(0.5lh - 10px); }

.recruit .recruit-faq .recruit-faq_answer:last-child { margin-bottom: 0; }

.mofmof-charactor { background: #f8f8f4; padding: 60px 80px; }

.mofmof-charactor h2 { color: #029aaa; font-size: 2.1875rem; text-align: center; margin-bottom: 40px; }

.mofmof-charactor .list li { display: flex; justify-content: space-between; align-items: center; margin-bottom: 30px; }

.mofmof-charactor .list li img { display: block; width: 25%; }

.mofmof-charactor .list li .contents { width: 70%; }

.mofmof-charactor .list li span { background: #029aaa; padding: 10px 15px; font-size: 0.75rem; margin-right: 5px; border-radius: 5px; color: #ffffff; vertical-align: text-bottom; }

.mofmof-charactor .list li h3 { color: #029aaa; font-size: 1.75rem; margin-bottom: 25px; }

.mofmof-charactor .list li p { font-size: 1.0625rem; line-height: 1.8; background: #ffffff; padding: 40px; border: solid 2px #029aaa; }

@media screen and (max-width: 1024px) { .mofmof-charactor { padding: 40px 30px; } .mofmof-charactor h2 { font-size: 1.5625rem; margin-bottom: 20px; } .mofmof-charactor .list li { display: block; margin-bottom: 30px; } .mofmof-charactor .list li img { width: 200px; margin: 0 auto; } .mofmof-charactor .list li .contents { width: 100%; } .mofmof-charactor .list li span { font-size: 0.6875rem; } .mofmof-charactor .list li h3 { font-size: 1.5rem; margin: 20px 0 20px 0; } .mofmof-charactor .list li p { font-size: 0.875rem; padding: 20px; } }

.container--main { width: 1200px; margin: 0 auto; }

.chat_faq section.section { margin-bottom: 60px; }

.chat-faq ul { list-style: none; }

.chat-faq__comment li { display: flex; justify-content: flex-start; align-items: center; margin-bottom: 30px; }

.chat-faq__comment .icon { border-radius: 50%; width: 150px; height: 150px; border: solid 2px #029aaa; background-position: center; background-repeat: no-repeat; background-size: cover; margin: 0 60px 0 0; text-indent: -9999px; }

.chat-faq__comment .icon.don1 { background-image: url("/images/illust/icon_donusagi-1.png"); }

.chat-faq__comment .icon.don2 { background-image: url("/images/illust/icon_donusagi-2.png"); }

.chat-faq__comment .icon.don3 { background-image: url("/images/illust/icon_donusagi-3.png"); }

.chat-faq__comment .icon.don5 { background-image: url("/images/illust/icon_donusagi-5.png"); }

.chat-faq__comment .icon.ope1 { background-image: url("/images/illust/icon_opeko-1.png"); }

.chat-faq__comment .icon.ope2 { background-image: url("/images/illust/icon_opeko-2.png"); }

.chat-faq__comment .icon.ope3 { background-image: url("/images/illust/icon_opeko-3.png"); }

.chat-faq__comment .icon.ope4 { background-image: url("/images/illust/icon_opeko-4.png"); }

.chat-faq__comment .balloon { background: #f8f8f4; padding: 30px; position: relative; display: inline-block; min-width: 120px; max-width: 100%; box-sizing: border-box; border-radius: 10px; }

.chat-faq__comment .balloon:before { content: ''; position: absolute; top: 40px; margin-top: -15px; border: 15px solid transparent; }

.chat-faq__comment .balloon p { margin: 0; padding: 0; }

.chat-faq__comment li.left .balloon:before { left: -27px; border-right: 15px solid #f8f8f4; }

.chat-faq__comment li.right { flex-direction: row-reverse; }

.chat-faq__comment li.right .icon { margin: 0 0 0 60px; }

.chat-faq__comment li.right .balloon:before { left: 100%; border-left: 15px solid #f8f8f4; }

.chat-faq__contents h3.tit { background: #f4f212; padding: 15px; font-size: 1.5625rem; color: #029aaa; border-left: solid 5px #029aaa; margin-bottom: 100px; }

.chat-faq__contents .box { position: relative; background: #f8f8f4; padding: 80px 60px 60px 60px; border-radius: 10px; margin-bottom: 100px; }

.chat-faq__contents .box .number { text-align: center; position: absolute; left: 50%; transform: translateX(-50%); top: -60px; font-size: 3.75rem; font-weight: bold; color: #029aaa; line-height: 1; }

.chat-faq__contents .box .number span { display: block; font-size: 1.875rem; }

.chat-faq__contents .box h4 { font-size: 1.875rem; color: #029aaa; text-align: center; margin-bottom: 40px; }

.chat-faq__contents .box .txt { font-size: 1rem; margin-bottom: 40px; position: relative; }

.chat-faq__contents .box .txt__icon { height: 120px; position: absolute; right: -40px; top: -32px; width: 120px; }

.chat-faq__contents .box .txt__tit { background: #029aaa; width: 230px; padding: 10px; border-radius: 10px 10px 0 0; }

.chat-faq__contents .box .txt__tit h5 { text-align: center; font-size: 1.25rem; color: #ffffff; }

.chat-faq__contents .box .txt p { background: #ffffff; padding: 40px; border: solid 2px #029aaa; color: #029aaa; font-size: 1.125rem; line-height: 1.8; }

.chat-faq__contents .box .txt.gray .txt__tit { background: #666666; }

.chat-faq__contents .box .txt.gray p { border: solid 2px #666666; color: #333333; }

.chat-faq__contents .box .txt:last-of-type { margin-bottom: 0; }

.chat-faq__contents .box:last-of-type { margin-bottom: 60px; }

.chat-faq__tab { display: flex; justify-content: space-between; align-items: center; margin: 60px 0; }

.chat-faq__tab--item { display: block; list-style-type: none; width: 50%; }

.chat-faq__tab a { display: block; text-align: center; color: #029aaa; background: #f8f8f4; padding: 30px; font-size: 1.375rem; font-weight: bold; }

.chat-faq__tab a:hover { text-decoration: none; background: #029aaa; color: #ffffff; transition: 0.3s; }

.chat-faq__tab a.active { pointer-events: none; background: #029aaa; color: #ffffff; position: relative; }

.chat-faq__tab a.active::before { content: ''; position: absolute; top: 100%; left: 50%; margin-left: -15px; border: 15px solid transparent; border-top: 15px solid #029aaa; }

@media screen and (max-width: 1024px) { .chat_faq .header { padding-bottom: 50px; } .chat_faq h1.page_title:after { display: none; } .chat_faq .section { padding: 0 20px; } .container--main { width: 100%; } }

@media screen and (max-width: 1024px) and (max-width: 1024px) { .chat-faq__comment li { display: flex; justify-content: flex-start; align-items: center; margin-bottom: 30px; } .chat-faq__comment .icon { width: 50px; height: 50px; margin: 0 15px 0 0; } .chat-faq__comment .balloon { padding: 20px; width: 250px; } .chat-faq__comment .balloon:before { top: 30px; margin-top: -15px; border: 15px solid transparent; } .chat-faq__comment .balloon p { font-size: 0.75rem; line-height: 1.7; } .chat-faq__comment li.right .icon { margin: 0 0 0 15px; } .chat-faq__contents h3.tit { font-size: 1rem; margin-bottom: 70px; } .chat-faq__contents .box { padding: 40px 20px 20px 20px; margin-bottom: 100px; } .chat-faq__contents .box .number { font-size: 2.5rem; top: -50px; } .chat-faq__contents .box .number span { font-size: 1.5625rem; } .chat-faq__contents .box h4 { font-size: 1.25rem; margin-bottom: 30px; } .chat-faq__contents .box .txt { font-size: 0.875rem; margin-bottom: 40px; } .chat-faq__contents .box .txt__icon { right: -40px; top: -25px; width: 100px; height: 100px; } .chat-faq__contents .box .txt__tit { background: #029aaa; } .chat-faq__contents .box .txt__tit h5 { font-size: 1rem; } .chat-faq__contents .box .txt p { padding: 20px; font-size: 1rem; line-height: 1.8; } .chat-faq__contents .box:last-of-type { margin-bottom: 60px; } .chat-faq__tab { margin: 60px 0 30px; } .chat-faq__tab a { padding: 20px; font-size: 1rem; } }

.mof-mof-assessment .header_wrapper { height: 300px; }

.mof-mof-assessment .section.beige { background: #f8f8f4; }

.mof-mof-assessment .mofmof-charactor { max-width: 1000px; margin: 0 auto; padding: 80px; }

.mof-mof-assessment .assessment-menu { display: flex; gap: 50px; justify-content: space-between; width: 100%; }

.mof-mof-assessment .assessment-menu .card { align-items: center; border: solid 2px #029aaa; border-radius: 10px; color: #029aaa; display: flex; flex-direction: column; padding: 50px 40px; width: 50%; }

.mof-mof-assessment .assessment-menu .card .card__explanation { font-size: 1.125rem; margin-bottom: 15px; }

.mof-mof-assessment .assessment-menu .card .card__image { text-align: center; margin-bottom: 15px; }

.mof-mof-assessment .assessment-menu .card .card__image .card__image--pic { width: 75%; }

.mof-mof-assessment .assessment-menu .card .card__title { font-size: 1.875rem; font-weight: bold; letter-spacing: 2px; }

.mof-mof-assessment .assessment-menu .card .card__wrap { background: #f8f8f4; padding: 20px; margin-bottom: 25px; }

.mof-mof-assessment .assessment-menu .card .card__wrap p { color: #333333; font-size: 0.875rem; }

.mof-mof-assessment .assessment-menu .card .btn { width: 100%; }

.mof-mof-assessment .page-title { margin-top: 24px; margin-bottom: 40px; line-height: 1.4; color: #029aaa; font-size: 3.75rem; text-align: center; letter-spacing: 2px; }

.mof-mof-assessment .introduction { color: #029aaa; font-size: 1.25rem; line-height: 1.8; text-align: center; }

.quiz { color: #029aaa; }

.quiz__section { padding: 80px 0; background: #f8f8f4; }

.quiz__tit { text-align: center; font-size: 2.1875rem; letter-spacing: 2px; margin-bottom: 50px; }

.quiz__btns { justify-content: center; }

.quiz__btn { text-align: center; display: block; color: #ffffff; border-radius: 99px; border: solid 1px #029aaa; background: #029aaa; width: 200px; padding: 0; box-sizing: border-box; font-weight: bold; margin: 0 10px; position: relative; font-size: 0.9375rem; letter-spacing: 1px; line-height: 41px; }

.quiz__btn::before { display: block; position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.quiz__btn:hover { opacity: 0.7; transition: 0.3s; text-decoration: none; color: #ffffff; }

.quiz__btn.disable { opacity: 0.5; cursor: no-drop; pointer-events: none; }

.quiz__btn.outline { color: #029aaa; background: #ffffff; }

.quiz__btn.outline:hover { color: #029aaa; }

.quiz__btn.previous::before { content: '←'; left: 15px; }

.quiz__btn.next::before { content: '→'; right: 15px; }

.quiz__btn.last { font-size: 1.375rem; width: 350px; line-height: 60px; margin: 15px auto 0; }

.quiz .answer { background: #ffffff; padding: 80px; width: 850px; margin: 0 auto; position: relative; box-sizing: border-box; }

.quiz .answer__number { font-size: 2.5rem; position: absolute; left: 50px; top: -10px; }

.quiz .answer__icon { width: 150px; position: absolute; right: 0; top: -80px; }

.quiz .answer__tag { width: 115px; position: absolute; right: 125px; top: -70px; }

.quiz .answer__tit { text-align: center; font-size: 1.25rem; letter-spacing: 1px; margin-bottom: 20px; }

.quiz .answer__status { position: relative; width: 600px; margin: 0 auto; text-align: center; margin-bottom: 40px; }

.quiz .answer__status .bar { width: 100%; height: 10px; border-radius: 99px; border: solid 1px #029aaa; margin-bottom: 15px; }

.quiz .answer__status .running { width: calc(1 / 8 * 100%); height: 10px; background: #029aaa; border: solid 1px #029aaa; border-radius: 99px; position: absolute; left: 0; top: 0; }

.quiz .answer__list { list-style: none; margin-bottom: 50px; }

.quiz .answer__list .item { position: relative; margin-bottom: 30px; }

.quiz .answer__list .label { position: absolute; top: -15px; left: 15px; display: inline-block; background-color: #029aaa; padding: 3px 8px; font-size: 0.8125rem; color: #ffffff; letter-spacing: 2px; font-weight: bold; }

.quiz .answer__list .code-box { background: #4d4d4d; color: #ffffff; border-radius: 3px; margin-bottom: 15px; }

.quiz .answer__list .choice { display: block; width: 100%; border: solid 1px #029aaa; height: 60px; padding: 10px; box-sizing: border-box; position: relative; border-radius: 3px; }

.quiz .answer__list .choice:hover { background: #e2f8fa; transition: 0.3s; }

.quiz .answer__list .choice.checked .round { background: #f4f212; position: relative; }

.quiz .answer__list .choice.checked .round:before { content: '\e876'; font-family: 'Material Icons'; font-size: 1.4375rem; color: #029aaa; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%); transform: translate(-50%, -50%); }

.quiz .answer__list .choice input[type='radio'] { display: none; }

.quiz .answer__list .choice .round { display: block; width: 35px; height: 35px; border-radius: 50%; border: solid 2px #029aaa; background: #ffffff; margin-right: 10px; }

.quiz .answer__list .choice .txt { letter-spacing: 1px; font-size: 1rem; }

.quiz .answer__list .choice .txt span:not(.normal-txt) { font-weight: bold; font-size: 1.0625rem; }

.quiz .answer__list .choice .label-answer { position: absolute; right: 10px; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); border-radius: 50px; padding: 4px 8px; font-weight: bold; font-size: 0.8125rem; }

.quiz .answer__list .choice .label-answer .material-icons { font-size: 0.9375rem; vertical-align: middle; }

.quiz .answer__list .choice .label-answer.right { color: #4db84b; background: #edf9ec; }

.quiz .answer__list .choice .label-answer.wrong { color: #db5e5e; background: #fceeee; }

.quiz .description { padding: 30px; box-sizing: border-box; background: #edf9ec; border-radius: 10px; margin-bottom: 40px; }

.quiz .description__tit { font-size: 1.875rem; font-weight: bold; text-align: center; color: #4db84b; line-height: 1.5; }

.quiz .description__tit::before { content: '\e24e'; font-family: 'Material Icons'; font-size: 2.125rem; color: #029aaa; vertical-align: middle; color: #4db84b; }

.quiz .description__tit span { font-size: 0.875rem; vertical-align: baseline; }

.quiz .description__heading { border-bottom: dashed 1px #029aaa; margin-bottom: 15px; font-size: 1.125rem; padding: 10px 0; }

.quiz .description__heading .material-icons { display: inline-block; margin-right: 5px; font-size: 1.125rem; }

.quiz .description__txt { color: #333333; }

.quiz .description__txt a { color: #029aaa; }

.quiz .description.wrong { background: #fceeee; }

.quiz .description.wrong .description__tit { color: #db5e5e; }

.quiz .description.wrong .description__tit::before { content: '\e814'; color: #db5e5e; }

.result__section { background: #f8f8f4; padding: 100px 0; }

.result__tit { position: relative; font-size: 1.875rem; background: #e2f8fa; text-align: center; padding: 30px 0; border-bottom: solid 2px #029aaa; letter-spacing: 2px; }

.result__tit .tit-balloon { position: absolute; left: 25%; top: -30px; width: 100px; }

.result__box { width: 850px; margin: 0 auto; background: #ffffff; border: solid 2px #029aaa; }

.result__contents { padding: 50px 70px; }

.result .illust { width: 200px; text-align: center; margin-right: 30px; }

.result .illust span { display: inline-block; background: #f4f212; padding: 5px; font-weight: bold; width: 170px; margin-bottom: 10px; border-radius: 3px; }

.result .illust img { width: 200px; }

.result .percentage { font-size: 1.375rem; line-height: 0.3; padding-bottom: 30px; border-bottom: dashed 1px #029aaa; margin-bottom: 20px; }

.result .percentage span { font-size: 5.5625rem; }

.result .description { color: #333333; }

.result .description a { color: #029aaa; text-decoration: underline; }

.result__btns { margin: 10px 0 24px 0; }

.result__btns .btn-wantedly { min-width: 350px; font-weight: bold; border-radius: 99px; background: linear-gradient(to right, #6ea6e0 50%, #75ced4); padding: 1.3rem 2rem; color: #ffffff; font-size: 1.125rem; margin-bottom: 20px; }

.result__btns .btn-wantedly:after { content: '\e89e'; font-family: 'Material Icons'; color: #ffffff; font-size: 1.125rem; vertical-align: bottom; padding-left: 10px; }

.result__btns .btn-wantedly:hover { color: #ffffff; text-decoration: none; opacity: 0.7; transition: 0.3s; }

.result__btns .link { color: #029aaa; display: block; }

.result .result__sns-btns { background-color: #f8f8f4; border-radius: 10px; padding: 24px 0; }

.result .result__sns-btns .txt { color: #029aaa; font-size: 1.125rem; font-weight: bold; margin-bottom: 16px; }

@media screen and (max-width: 1024px) { .quiz__section { padding: 40px 0; } .quiz__tit { font-size: 1.875rem; margin-bottom: 50px; } .quiz__btns { justify-content: center; } .quiz__btn { width: 165px; font-size: 0.8125rem; line-height: 41px; } .quiz__btn.last { font-size: 1.125rem; width: 300px; line-height: 50px; margin: 15px auto 0; } .quiz .answer { padding: 50px 20px 50px 20px; width: 100%; } .quiz .answer__number { font-size: 1.875rem; left: 30px; } .quiz .answer__icon { width: 100px; right: 0; top: -50px; } .quiz .answer__tag { width: 80px; position: absolute; right: 85px; top: -40px; } .quiz .answer__tit { font-size: 1.125rem; margin-bottom: 15px; } .quiz .answer__status { width: 80%; margin-bottom: 20px; } .quiz .answer__status .bar { margin-bottom: 10px; } .quiz .answer__list { margin-bottom: 40px; } .quiz .answer__list .item { margin-bottom: 20px; } .quiz .answer__list .label { top: -15px; left: 15px; font-size: 0.8125rem; } .quiz .answer__list .code-box { font-size: 0.875rem; letter-spacing: 0; } .quiz .answer__list .code-box code.hljs { padding: 0 !important; } .quiz .answer__list .choice { height: auto; } .quiz .answer__list .choice.checked .round { background: #f4f212; position: relative; } .quiz .answer__list .choice.checked .round:before { font-size: 1.25rem; } .quiz .answer__list .choice .round { width: 30px; height: 30px; } .quiz .answer__list .choice .txt { width: calc(100% - 40px); letter-spacing: 0; font-size: 0.875rem; line-height: 1.5; } .quiz .answer__list .choice .txt span { font-size: 0.9375rem; } .quiz .answer__list .choice .label-answer { position: absolute; right: 10px; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); font-size: 0.8125rem; } .quiz .description { padding: 20px; margin-bottom: 20px; } .quiz .description__tit { font-size: 1.5625rem; } .quiz .description__tit::before { font-size: 1.875rem; } .quiz .description__tit span { font-size: 0.875rem; vertical-align: baseline; } .quiz .description__heading { margin-bottom: 10px; font-size: 0.9375rem; } .quiz .description__heading .material-icons { font-size: 0.9375rem; } .quiz .description__txt { font-size: 0.875rem; line-height: 1.7; } .result__section { padding: 50px 0; } .result__tit { font-size: 1.25rem; padding: 20px 0; } .result__tit .tit-balloon { left: 25px; top: -25px; width: 65px; } .result__box { width: 90%; } .result__contents { padding: 30px; } .result__contents .d-flex { display: block; } .result .illust { width: 100%; margin-right: 0; margin-bottom: 10px; } .result .percentage { font-size: 1.25rem; line-height: 1.3; padding-bottom: 0; text-align: center; } .result .percentage span { font-size: 4.375rem; } .result__btns { margin-top: 15px; } .result__btns .btn-wantedly { min-width: 100%; box-sizing: border-box; font-size: 1rem; margin-bottom: 10px; } .mof-mof-assessment .header { padding-bottom: 80px; } .mof-mof-assessment .header_wrapper { height: 70px; } .mof-mof-assessment .mofmof-charactor { padding: 30px; } .mof-mof-assessment .assessment-menu { display: block; } .mof-mof-assessment .assessment-menu .card { padding: 40px 30px; width: 70%; margin: 30px auto; } .mof-mof-assessment .assessment-menu .card .card__explanation { font-size: 1rem; } .mof-mof-assessment .assessment-menu .card .card__title { font-size: 1.5625rem; } .mof-mof-assessment .assessment-menu .card .btn { font-size: 1rem; } .mof-mof-assessment .page-title { font-size: 2.1875rem; margin-bottom: 25px; } .mof-mof-assessment .introduction { color: #029aaa; font-size: 1rem; max-width: 90%; margin: 0 auto; } }

.thanks .main_visual .main_img { background: url("/images/about/about_harada_on.png") left center no-repeat; background-size: cover; width: auto; height: 100%; }

@media screen and (max-width: 1024px) { .thanks .page_title { padding: 30px 10px; } }

@media screen and (max-width: 1024px) { .thanks .container02 { margin-bottom: 35px; padding-bottom: 30px; } }

.thanks .ttl { margin-bottom: 30px; }

.thanks_notice { margin-bottom: 30px; }

@media screen and (max-width: 1024px) { .thanks_notice { padding: 0 10px; } }

.thanks_button { position: relative; width: 220px; }

@media screen and (max-width: 1024px) { .thanks_button { display: block; margin: 0 auto; } }

.toc { padding: 24px 20px 8px; margin-bottom: 32px; background-color: #ffffff; border: 3px solid #ccc; }

.toc h4 { display: flex; align-items: center; margin-bottom: 20px; padding-bottom: 16px; padding-left: 16px; border-bottom: 2px dotted #ccc; font-size: 1.125rem; }

.toc h4::before { content: ''; background-image: url("/images/toc.svg"); display: inline-block; height: 15px; width: 16px; margin-right: 10px; }

.toc ol { padding-left: 42px; color: #4498a7; }

.toc ol a { color: #333333; text-decoration: none; }

.toc ol li { margin-top: 8px; margin-bottom: 8px; font-weight: bold; }

.toc ol ol { margin-top: 8px; padding-bottom: 0; padding-left: 24px; }

.toc ol ol li { margin-top: 0px; margin-bottom: 0px; }

.toc ol ol li, .toc ol ol li a { font-weight: normal; }

.work *, .work *:before, .work *:after { -webkit-box-sizing: border-box; box-sizing: border-box; }

.work .header { padding-bottom: 0; }

.work .pc-only { display: block !important; }

@media screen and (max-width: 992px) { .work .pc-only { display: none !important; } }

.work .sp-only { display: none !important; }

@media screen and (max-width: 992px) { .work .sp-only { display: block !important; } }

.work .container { margin-bottom: 104px; max-width: 1200px; padding: 0 24px; width: 100%; }

@media screen and (max-width: 992px) { .work .container { padding: 0; } }

@media screen and (max-width: 992px) { .work .breadcrumbs__outer { padding-left: 16px; } }

.work .main-visual { border-radius: 12px; display: flex; justify-content: center; margin-bottom: 64px; object-fit: contain; overflow: hidden; height: 400px; }

@media screen and (max-width: 992px) { .work .main-visual { border-radius: 0; } }

@media screen and (max-width: 992px) { .work .main-visual { margin-bottom: 32px; } }

@media screen and (max-width: 576px) { .work .main-visual { height: 280px; } }

.work .work-main-content { align-items: flex-start; color: #333333; display: flex; gap: 64px; width: 100%; }

@media screen and (max-width: 992px) { .work .work-main-content { flex-direction: column; padding: 0 24px; } }

.work .work-main-content .information { border-radius: 12px; border: solid 1px #0000001a; display: flex; flex-direction: column; gap: 32px; padding: 16px; width: 280px; }

@media screen and (max-width: 992px) { .work .work-main-content .information { display: grid; gap: 32px; grid-template-columns: 1fr 1fr; width: 100%; } }

@media screen and (max-width: 576px) { .work .work-main-content .information { display: flex; flex-direction: column; gap: 32px; width: 100%; } }

.work .work-main-content .information [class$='__label'] { color: #4d4d4d; font-size: 0.875rem; font-weight: bold; margin-bottom: 12px; }

.work .work-main-content .information [class$='__list'] { display: flex; flex-wrap: wrap; gap: 12px 16px; list-style-type: none; }

.work .work-main-content .information .service .service__name { border-color: #029aaa; color: #029aaa; padding: 12px 16px; }

.work .work-main-content .information .duration .duration__name { color: #666666; }

@media screen and (max-width: 992px) { .work .work-main-content .headline { margin-bottom: 0; } }

.work .work-main-content .headline .heading { border-bottom: solid 1px #e6e6e6; margin-bottom: 32px; padding-bottom: 32px; position: relative; }

.work .work-main-content .headline .heading::before { background-color: #5dbec9; border-radius: 2px; bottom: calc(-12px * 0.5); content: ''; display: block; height: 12px; left: 0; position: absolute; width: 300px; }

.work .work-main-content .headline .heading .project-title { font-size: 3rem; line-height: 140%; font-weight: bold; margin-bottom: 8px; }

@media screen and (max-width: 992px) { .work .work-main-content .headline .heading .project-title { font-size: 2.5rem; } }

@media screen and (max-width: 576px) { .work .work-main-content .headline .heading .project-title { font-size: 1.75rem; } }

.work .work-main-content .headline .heading .client-name { font-size: 1.25rem; font-weight: 500; }

@media screen and (max-width: 576px) { .work .work-main-content .headline .heading .client-name { font-size: 1rem; } }

.work .work-main-content .headline .brief-introduction .brief-introduction__title { color: #333; font-size: 1.5rem; font-weight: 500; line-height: 150%; margin: 0 0 16px 40px; position: relative; }

@media screen and (max-width: 576px) { .work .work-main-content .headline .brief-introduction .brief-introduction__title { font-size: 1rem; } }

@media screen and (max-width: 576px) { .work .work-main-content .headline .brief-introduction .brief-introduction__title { font-size: 1.25rem; } }

.work .work-main-content .headline .brief-introduction .brief-introduction__title::before { border-bottom: solid 1px #333; content: ''; display: block; left: calc(-30px - 10px); position: absolute; top: 20px; width: 30px; }

.work .work-main-content .headline .brief-introduction .brief-introduction__content { margin-bottom: 16px; }

.work .work-main-content .headline .brief-introduction .brief-introduction__link { text-align: right; }

.work .work-main-content .headline .brief-introduction .brief-introduction__link a { color: #029aaa; font-size: 0.875rem; position: relative; text-decoration: none; }

.work .work-main-content .headline .brief-introduction .brief-introduction__link a:hover { text-decoration: underline #029aaa; }

.work .work-main-content .headline .brief-introduction .brief-introduction__link a:before { background-image: url("/images/ico_link.svg"); background-size: cover; content: ''; display: block; height: 16px; left: calc(-16px - 8px); position: absolute; top: calc(50% - 16px * 0.5); width: 16px; }

.work .work-main-content .article { max-width: calc(100% - 64px - 280px); }

@media screen and (max-width: 992px) { .work .work-main-content .article { max-width: 100%; } }

.work .work-main-content .article * { text-align: justify; }

.work .work-main-content .article section { margin-bottom: 64px; }

.work .work-main-content .article section:last-child { margin-bottom: 0; }

.work .work-main-content .article .separator { width: 140px; border-bottom: solid 1px #0000001a; margin: 0 auto 64px auto; }

.work .work-main-content .article .approach .approach__content > *:first-child { margin-top: 0; }

.work .work-main-content .article .approach .approach__content h1 { border-bottom: solid 1px #0000001a; font-size: 1.5rem; font-weight: 500; margin-bottom: 16px; margin-top: 80px; padding-bottom: 8px; }

.work .work-main-content .article .approach .approach__content h2 { font-size: 1.25rem; font-weight: 500; margin-bottom: 16px; margin-top: 32px; }

.work .work-main-content .article .approach .approach__content h3 { font-size: 1rem; font-weight: bold; margin-bottom: 16px; margin-top: 24px; }

.work .work-main-content .article .approach .approach__content p { margin-bottom: 16px; margin-top: 16px; }

.work .work-main-content .article .approach .approach__content img { max-width: 100%; margin: 32px auto; display: block; border-radius: 6px; }

.work .work-main-content .article .approach .approach__content ul, .work .work-main-content .article .approach .approach__content ol { margin-bottom: 16px; margin-left: 20px; margin-top: 16px; }

.work .work-main-content .article .approach .approach__content ul ul, .work .work-main-content .article .approach .approach__content ul ol, .work .work-main-content .article .approach .approach__content ol ol, .work .work-main-content .article .approach .approach__content ol ul { margin-bottom: 0; margin-top: 0; }

.work .work-main-content .article .approach .approach__content ol ol, .work .work-main-content .article .approach .approach__content ul ol { list-style-type: lower-alpha; }

.work .work-main-content .article .approach .approach__content ul ul ol, .work .work-main-content .article .approach .approach__content ul ol ol, .work .work-main-content .article .approach .approach__content ol ul ol, .work .work-main-content .article .approach .approach__content ol ol ol { list-style-type: lower-roman; }

.work .work-main-content .article .approach .approach__content ul { list-style-type: none; }

.work .work-main-content .article .approach .approach__content ul li { position: relative; }

.work .work-main-content .article .approach .approach__content ul li::before { background: #333333; border-radius: 50%; content: ''; display: block; height: 4px; left: calc(-18px); position: absolute; top: calc(0.5*1.0lh - 2px); width: 4px; }

.work .work-main-content .article .approach .approach__content code { padding: .2em .4em; margin: 0 .2em; font-size: 0.875rem; background-color: #0000001a; border-radius: 3px; }

.work .work-main-content .article .approach .approach__content pre { word-wrap: normal; }

.work .work-main-content .article .approach .approach__content pre > code { padding: 0; margin: 0; font-size: 100%; word-break: normal; white-space: pre; background: transparent; border: 0; }

.work .work-main-content .article .approach .approach__content .highlight { margin-top: 16px; margin-bottom: 16px; }

.work .work-main-content .article .approach .approach__content .highlight pre { margin-bottom: 0; word-break: normal; }

.work .work-main-content .article .approach .approach__content .highlight pre, .work .work-main-content .article .approach .approach__content pre { padding: 16px; overflow: auto; font-size: 0.875rem; line-height: 1.45; color: #ffffff; background-color: #333333; border-radius: 6px; }

.work .work-main-content .article .approach .approach__content pre code { display: inline; max-width: auto; padding: 0; margin: 0; overflow: visible; line-height: inherit; word-wrap: normal; background-color: initial; border: 0; }

.work .work-main-content .article .approach .approach__content blockquote { background-color: #fff; border-left: solid 4px #0000001a; margin-bottom: 24px; margin-top: 24px; padding: 0 0 0 24px; }

.work .work-main-content .article .approach .approach__content blockquote::before, .work .work-main-content .article .approach .approach__content blockquote::after { display: none; }

.work .work-main-content .article .approach .approach__content hr { border-bottom: solid 1px #0000001a; margin: 24px 0; width: 100%; }

.work .work-main-content .article .approach .approach__content table { margin-bottom: 24px; margin-top: 24px; width: 100%; }

.work .work-main-content .article .approach .approach__content table th { border-bottom: solid 2px #00000033; padding: 8px; }

.work .work-main-content .article .approach .approach__content table td { border-bottom: solid 1px #0000001a; padding: 8px; }

.work .work-main-content .article .members-voice__content, .work .work-main-content .article .clients-voice .clients-voice__content { display: flex; flex-direction: column; gap: 24px; }

.work .work-main-content .article .clients-voice .btn-box { display: flex; justify-content: end; }

.works *, .works *::before, .works *::after { box-sizing: border-box; }

.works .breadcrumbs__outer { padding: 16px 24px; max-width: 100%; }

.works .container { width: 100%; max-width: 1200px; }

.works .posts-container { margin: 0 auto; width: 100%; padding: 0 24px; margin-top: 16px; margin-bottom: 64px; }

.works .posts-container .posts { display: grid; grid-template-columns: 1fr 1fr; gap: 64px 40px; margin-bottom: 48px; justify-content: center; justify-items: center; }

@media screen and (max-width: 992px) { .works .posts-container .posts { align-items: center; display: flex; flex-direction: column; gap: 64px; } }

.works .posts-container .posts .post { border-bottom: solid 1px #0000001a; width: 100%; overflow: hidden; transition: 0.3s; }

@media screen and (max-width: 992px) { .works .posts-container .posts .post { max-width: 600px; } }

.works .posts-container .posts .post .main-visual { border-radius: 6px; height: 300px; margin-bottom: 16px; overflow: hidden; display: flex; justify-content: center; }

@media screen and (max-width: 576px) { .works .posts-container .posts .post .main-visual { height: 200px; } }

.works .posts-container .posts .post .main-visual .main-visual__image { height: 100%; transition: 0.3s; }

.works .posts-container .posts .post .post__content { padding-bottom: 20px; }

.works .posts-container .posts .post .post__content .service-name { margin-bottom: 4px; }

.works .posts-container .posts .post .post__content .project-name { font-size: 2rem; line-height: 150%; margin-bottom: 4px; transition: 0.3s; }

@media screen and (max-width: 576px) { .works .posts-container .posts .post .post__content .project-name { font-size: 1.75rem; } }

.works .posts-container .posts .post .post__content .project-summary { color: #333333; font-size: 1.25rem; font-weight: 500; line-height: 150%; margin-bottom: 20px; }

@media screen and (max-width: 576px) { .works .posts-container .posts .post .post__content .project-summary { font-size: 1rem; } }

.works .posts-container .posts .post .post__content .separator { background-color: #5dbec9; border-radius: 2px; height: 4px; margin-bottom: 20px; width: 80px; }

.works .posts-container .posts .post .post__content .client-name { color: #333333; font-size: 0.875rem; font-weight: 500; }

.works .posts-container .posts .post:hover { opacity: .8; }

.works .posts-container .posts .post:hover .main-visual__image { scale: 1.05; }

.works .posts-container .posts .post:hover .post__content .project-name { color: #029aaa; }

.works .posts-container .posts .post:hover, .works .posts-container .posts .post:hover * { text-decoration: none; }

.works .various-works-section { background-color: #f2f2f2; padding: 104px 0; display: flex; flex-direction: column; align-items: center; }

.works .various-works-section .various-works-section__title { text-align: center; font-size: 1.75rem; font-weight: 700; line-height: 150%; letter-spacing: 0.07rem; }

.works .various-works-section .various-works-section__title > span { display: inline-block; }

@media screen and (max-width: 768px) { .works .various-works-section .various-works-section__title { font-size: 1.5rem; letter-spacing: 0.06rem; } }

.works .various-works-section .various-works-wrapper { max-width: 1200px; width: 100%; padding: 0 24px; display: flex; flex-direction: column; align-items: center; gap: 32px; }

@media screen and (max-width: 768px) { .works .various-works-section .various-works-wrapper { padding: 0 16px; } }

.works .various-works-section .pc-container { background-color: #ffffff; padding: 24px; border-radius: 12px; }

@media screen and (max-width: 768px) { .works .various-works-section .pc-container { display: none; } }

.works .various-works-section .pc-table { font-size: 0.75rem; line-height: 1.8; }

.works .various-works-section .pc-table thead { background-color: #e6e6e6; }

.works .various-works-section .pc-table th { padding: 0 12px; height: 40px; text-align: center; vertical-align: middle; }

.works .various-works-section .pc-table td { padding: 12px; }

.works .various-works-section .pc-table tbody > tr:nth-of-type(even) { background-color: #00000008; }

.works .various-works-section .pc-table tbody > tr:not(:last-child) { border-bottom: solid 1px #0000001a; }

.works .various-works-section .pc-table .pc-table__category { width: 132px; text-align: center; vertical-align: middle; }

.works .various-works-section .pc-table .pc-table__service-name { width: 122px; font-weight: 700; text-align: center; vertical-align: middle; }

.works .various-works-section .pc-table .pc-table__project-name { width: 160px; vertical-align: middle; text-align: justify; }

.works .various-works-section .pc-table .pc-table__summary { text-align: justify; }

.works .various-works-section .mobile-accordion { background-color: #ffffff; padding: 0 0 8px; width: 100%; border-radius: 6px; box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.1), 0px 4px 16px 3px rgba(0, 0, 0, 0.05); display: none; transform: translate3d(0, 0, 0); }

@media screen and (max-width: 768px) { .works .various-works-section .mobile-accordion { display: flex; flex-direction: column; } }

.works .various-works-section .mobile-accordion .mobile-accordion__item:not(:last-child) { border-bottom: 1px solid #0000000d; }

.works .various-works-section .mobile-accordion .mobile-accordion__header { padding: 12px; display: flex; flex-direction: column; gap: 4px; cursor: pointer; }

.works .various-works-section .mobile-accordion .mobile-accordion__header.open .mobile-accordion__header-lower::after { transform: rotate(-180deg); }

.works .various-works-section .mobile-accordion .mobile-accordion__project-name { color: #333333; font-size: 0.875rem; font-weight: 500; line-height: 170%; letter-spacing: 0.035rem; padding-right: 40px; }

.works .various-works-section .mobile-accordion .mobile-accordion__header-lower { display: flex; justify-content: space-between; align-items: center; gap: 16px; }

.works .various-works-section .mobile-accordion .mobile-accordion__header-lower::after { flex-shrink: 0; transition: 0.5s; content: ''; width: 20px; height: 20px; background-image: url("/images/ico_chevron-down-primary.svg"); }

.works .various-works-section .mobile-accordion .mobile-accordion__description { color: #767676; font-size: 0.625rem; font-weight: 500; line-height: 150%; letter-spacing: 0.025rem; display: flex; }

.works .various-works-section .mobile-accordion .mobile-accordion__description .mobile-accordion__category { text-wrap: nowrap; }

.works .various-works-section .mobile-accordion .mobile-accordion__description .mobile-accordion__separator { display: inline-block; width: 1px; height: 13px; border-left: 1px solid #0000001a; margin: 2px 8px 0; }

.works .various-works-section .mobile-accordion .mobile-accordion__content { display: none; background-color: #f7f7f7; border-top: 1px solid #0000000d; }

.works .various-works-section .mobile-accordion .mobile-accordion__content-inner { padding: 12px 12px 24px; display: flex; flex-direction: column; gap: 4px; }

.works .various-works-section .mobile-accordion .mobile-accordion__summary-title { font-size: 0.625rem; font-weight: 700; line-height: 150%; letter-spacing: 0.025rem; }

.works .various-works-section .mobile-accordion .mobile-accordion__summary { font-size: 0.75rem; line-height: 180%; letter-spacing: 0.045rem; text-align: justify; }

.interview-related { padding-left: 30px; padding-right: 30px; }

.interview-related .more_link { width: 160px; height: 36px; padding-top: 80px; padding-bottom: 180px; }

.interview-related .more_link .button_more { text-align: center; line-height: 36px; }

.interview-related .more_link .button_more span { position: static; }

.interview-related .more_link .button_more:after { content: none; }

@media screen and (max-width: 1024px) { .interview-related .more_link { width: 160px; height: 36px; padding-top: 80px; padding-bottom: 180px; } .interview-related .more_link .button_more { font-size: 0.75rem; background: #888; color: #ffffff; border: none; } }

.interview-related_wrap { content: ""; display: block; clear: both; }

.interview-related_post { width: 230px; position: relative; font-size: 0.875rem; }

.interview-related_post:first-of-type { float: left; }

.interview-related_post:nth-of-type(2) { float: right; }

.interview-related_post_wrap { content: ""; display: block; clear: both; }

.interview-related_post_prev, .interview-related_post_next { position: relative; display: block; width: 17px; margin-top: 90px; }

.interview-related_post_prev::after, .interview-related_post_next::after { content: ""; position: absolute; left: 0; width: 0; height: 0; border-style: solid; border-width: 8.5px 14.7px 8.5px 0; border-color: transparent #888 transparent transparent; }

.interview-related_post_prev { float: left; }

.interview-related_post_prev + .interview-related_post_content { margin-left: 46px; }

.interview-related_post_next { float: right; }

.interview-related_post_next::after { border-width: 8.5px 0 8.5px 14.7px; border-color: transparent transparent transparent #888; }

.interview-related_post_content { width: 184px; }

.interview-related_post_link { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.interview-related_post_link:hover + div .interview-related_post_title { color: #029aaa; }

.interview-related_post_link:hover + div .interview-related_post_comment { color: #029aaa; text-decoration: underline; }

.interview-related_post_link:hover + div .interview-related_post_prev::after { border-color: transparent #029aaa transparent transparent; }

.interview-related_post_link:hover + div .interview-related_post_next::after { border-color: transparent transparent transparent #029aaa; }

.interview-related_post_image { width: 100%; height: 138px; margin-top: 8px; margin-bottom: 16px; background-size: cover; background-position: center; }

@media screen and (max-width: 1024px) { .interview-related_post { width: 100%; box-sizing: border-box; } .interview-related_post:first-of-type, .interview-related_post:nth-of-type(2) { float: inherit; } .interview-related_post:first-of-type { margin-bottom: 40px; } .interview-related_post_prev, .interview-related_post_next { width: 14px; margin-top: 5px; } .interview-related_post_prev::after, .interview-related_post_next::after { border-width: 7px 12.1px 7px 0; } .interview-related_post_prev + .interview-related_post_content, .interview-related_post_next + .interview-related_post_content { margin-left: 26px; } .interview-related_post_next { float: left; } .interview-related_post_next::after { border-width: 7px 0 7px 12.1px; } .interview-related_post_content { width: inherit; } .interview-related_post_image { width: 136px; height: 102px; } }

.interview * { box-sizing: border-box; }

.interview .contents-blocks { display: flex; align-items: flex-start; padding: 0 24px; gap: 64px; width: 100%; margin-bottom: 64px; }

@media screen and (max-width: 992px) { .interview .contents-blocks { flex-direction: column; } }

.interview .heading-block { padding: 0 24px; display: flex; flex-direction: column; gap: 16px; margin-bottom: 48px; }

@media screen and (max-width: 992px) { .interview .heading-block { margin-bottom: 32px; } }

.interview .heading-block__heading { font-size: 3rem; font-weight: 700; line-height: 1.4; letter-spacing: 0.04em; }

@media screen and (max-width: 992px) { .interview .heading-block__heading { font-size: 2.25rem; } }

@media screen and (max-width: 768px) { .interview .heading-block__heading { font-size: 2rem; } }

@media screen and (max-width: 576px) { .interview .heading-block__heading { font-size: 1.5rem; line-height: 1.5; } }

.interview .heading-block__lower { display: flex; justify-content: space-between; align-items: center; }

.interview .heading-block__company { width: 100%; font-size: 1.25rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.04em; }

@media screen and (max-width: 768px) { .interview .heading-block__company { font-size: 1rem; } }

.interview .mobile-top-image { width: 100%; margin-bottom: 32px; }

.interview .mobile-top-image .mobile-top-image__image { width: 100vw; margin: 0 calc(50% - 50vw); max-height: 400px; aspect-ratio: 2/1; object-fit: cover; }

.interview .info { width: 280px; flex-shrink: 0; padding: 16px; display: flex; flex-direction: column; gap: 16px; border-radius: 12px; border: 1px solid #0000001a; }

@media screen and (max-width: 992px) { .interview .info { width: 100%; display: grid; grid-template-columns: 248px 1fr; gap: 48px; } .interview .info > .info__divider { display: none; } }

@media screen and (max-width: 576px) { .interview .info { gap: 16px; } }

@media screen and (max-width: 576px) { .interview .info { display: flex; } .interview .info > .info__divider { display: block; } }

.interview .info__group { display: flex; flex-direction: column; gap: 16px; }

.interview .info-item { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }

.interview .info-item__heading { color: #4d4d4d; font-size: 0.875rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; margin-bottom: 4px; }

.interview .company-logo { object-fit: contain; max-width: 320px; max-height: 120px; padding-bottom: 8px; width: 100%; }

.interview .company-data, .interview .company-name { color: #666666; display: flex; gap: 12px; font-size: 0.875rem; font-weight: 400; line-height: 1.4; }

.interview .company-data > i, .interview .company-name > i { font-size: 1.25rem; }

.interview .company-data a, .interview .company-name a { color: #666666; }

.interview .company-data > span > i, .interview .company-name > span > i { padding-left: 4px; vertical-align: -0.0625rem; font-size: 1rem; }

.interview .company-name { font-weight: 700; line-height: 1.5; padding-bottom: 4px; }

.interview .info__divider { border-bottom: solid 1px #0000001a; }

.interview .info-opener { display: none; justify-content: center; gap: 4px; align-items: center; font-weight: 500; font-size: 0.875rem; color: #029aaa; }

.interview .info-opener > i { font-size: 1.25rem; }

@media screen and (max-width: 576px) { .interview .info-opener { display: flex; } }

.interview .info-opener.open { display: none; }

.interview .info-wrap { display: block; }

@media screen and (max-width: 576px) { .interview .info-wrap { display: none; } }

.interview .interviewees { width: 100%; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 8px 12px; }

.interview .interviewee { display: flex; gap: 8px; align-items: center; }

.interview .interviewee__icon { width: 60px; height: 60px; border-radius: 30px; object-fit: cover; }

.interview .interviewee__text { display: flex; flex-direction: column; }

.interview .interviewee__name { font-size: 1rem; line-height: 1.8; letter-spacing: 0.06em; }

.interview .interviewee__position { font-size: 0.75rem; line-height: 1.2; letter-spacing: 0.06em; color: #767676; }

.interview .main-block { overflow: hidden; display: flex; flex-direction: column; gap: 64px; }

.interview .main-block .main-block__top-image { width: 100%; aspect-ratio: 2/1; border-radius: 12px; object-fit: cover; }

.interview .main-block .main-block__heading { font-size: 1.75rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; margin-bottom: 20px; }

@media screen and (max-width: 576px) { .interview .main-block .main-block__heading { font-size: 1.25rem; margin-bottom: 32px; } }

.interview .main-content h1 { border-bottom: solid 1px #0000001a; font-size: 1.5rem; font-weight: 500; margin-bottom: 16px; margin-top: 80px; padding-bottom: 8px; }

.interview .main-content h2 { font-size: 1.25rem; font-weight: 500; margin-bottom: 16px; margin-top: 32px; }

.interview .main-content h3 { font-size: 1rem; font-weight: bold; margin-bottom: 16px; margin-top: 24px; }

.interview .main-content p { margin-bottom: 16px; margin-top: 16px; }

.interview .main-content img { max-width: 100%; margin: 32px auto; display: block; border-radius: 6px; }

.interview .main-content ul, .interview .main-content ol { margin-bottom: 16px; margin-left: 20px; margin-top: 16px; }

.interview .main-content ul ul, .interview .main-content ul ol, .interview .main-content ol ol, .interview .main-content ol ul { margin-bottom: 0; margin-top: 0; }

.interview .main-content ol ol, .interview .main-content ul ol { list-style-type: lower-alpha; }

.interview .main-content ul ul ol, .interview .main-content ul ol ol, .interview .main-content ol ul ol, .interview .main-content ol ol ol { list-style-type: lower-roman; }

.interview .main-content ul { list-style-type: none; }

.interview .main-content ul li { position: relative; }

.interview .main-content ul li::before { background: #333333; border-radius: 50%; content: ''; display: block; height: 4px; left: calc(-18px); position: absolute; top: calc(0.5*1.0lh - 2px); width: 4px; }

.interview .main-content code { padding: .2em .4em; margin: 0 .2em; font-size: 0.875rem; background-color: #0000001a; border-radius: 3px; }

.interview .main-content pre { word-wrap: normal; }

.interview .main-content pre > code { padding: 0; margin: 0; font-size: 100%; word-break: normal; white-space: pre; background: transparent; border: 0; }

.interview .main-content .highlight { margin-top: 16px; margin-bottom: 16px; }

.interview .main-content .highlight pre { margin-bottom: 0; word-break: normal; }

.interview .main-content .highlight pre, .interview .main-content pre { padding: 16px; overflow: auto; font-size: 0.875rem; line-height: 1.45; color: #ffffff; background-color: #333333; border-radius: 6px; }

.interview .main-content pre code { display: inline; max-width: auto; padding: 0; margin: 0; overflow: visible; line-height: inherit; word-wrap: normal; background-color: initial; border: 0; }

.interview .main-content blockquote { background-color: #fff; border-left: solid 4px #0000001a; margin-bottom: 24px; margin-top: 24px; padding: 0 0 0 24px; }

.interview .main-content blockquote::before, .interview .main-content blockquote::after { display: none; }

.interview .main-content hr { border-bottom: solid 1px #0000001a; margin: 24px 0; width: 100%; }

.interview .main-content table { margin-bottom: 24px; margin-top: 24px; width: 100%; }

.interview .main-content table th { border-bottom: solid 2px #00000033; padding: 8px; }

.interview .main-content table td { border-bottom: solid 1px #0000001a; padding: 8px; }

.interview .main-content .lead-body-divider { border-bottom: 1px solid #0000001a; width: 140px; margin: 64px auto; }

.interview .main-content .interview-speaker-block { display: flex; gap: 8px; align-items: center; margin-top: 24px; margin-bottom: 8px; }

.interview .main-content .interview-speaker-block .interview-speaker-block__icon { width: 40px; height: 40px; border-radius: 20px; object-fit: cover; margin: 0; }

.interview .main-content .interview-speaker-block span { font-size: 1rem; font-weight: 700; line-height: 1.7; letter-spacing: 0.04em; }

.interview .main-content p { font-size: 1rem; line-height: 1.8; letter-spacing: 0.06em; text-align: justify; margin-top: 16px; margin-bottom: 16px; }

.interview .main-content .interview-speaker-block + p { margin-top: 8px; }

.interview .main-content img { width: 100%; border-radius: 6px; margin: 8px 0; }

.interview .main-content h2 { display: flex; gap: 12px; font-size: 1.75rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; padding-bottom: 12px; border-bottom: 1px solid #0000001a; margin-top: 64px; margin-bottom: 32px; }

.interview .main-content h2::before { content: 'Q.'; font-family: lato; color: #029aaa; font-size: 2.5rem; font-weight: 700; line-height: 1; }

@media screen and (max-width: 768px) { .interview .main-content h2 { font-size: 1.25rem; } .interview .main-content h2::before { font-size: 2rem; } }

.interview .main-content h3 { font-size: 1.5rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; margin-top: 48px; margin-bottom: 24px; }

.interview .main-content h4 { font-size: 1.25rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; margin-top: 40px; margin-bottom: 20px; }

.interview .main-content h5 { font-size: 1rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; margin-top: 32px; margin-bottom: 16px; }

.interview .members-voice__content { display: flex; flex-direction: column; gap: 24px; }

.interview .related-work-card { display: flex; gap: 24px; width: 100%; overflow: hidden; transition: 0.3s; }

@media screen and (max-width: 576px) { .interview .related-work-card { flex-direction: column; } }

.interview .related-work-card:hover { opacity: .8; text-decoration: none; color: inherit; }

.interview .related-work-card:hover .related-work-card__image > img { scale: 1.05; }

.interview .related-work-card:hover .related-work-card__title { color: #029aaa; }

.interview .related-work-card__image { border-radius: 12px; width: 50%; overflow: hidden; }

@media screen and (max-width: 576px) { .interview .related-work-card__image { height: 200px; width: 100%; } }

.interview .related-work-card__image > img { transition: scale 0.3s; width: 100%; height: 100%; object-fit: cover; }

.interview .related-work-card__title { color: #333333; font-size: 2rem; line-height: 1.5; font-weight: 700; letter-spacing: 0.08rem; margin-bottom: 4px; transition: 0.3s; }

@media screen and (max-width: 576px) { .interview .related-work-card__title { font-size: 1.75rem; } }

.interview .related-work-card__summary { color: #333333; font-size: 1.25rem; font-weight: 500; line-height: 1.5; letter-spacing: 0.05rem; margin-bottom: 20px; }

@media screen and (max-width: 576px) { .interview .related-work-card__summary { font-size: 1rem; } }

.interview .related-work-card__separator { background-color: #5dbec9; border-radius: 2px; height: 4px; margin-bottom: 20px; width: 80px; }

.interview .related-work-card__client-name { color: #333333; font-size: 0.875rem; font-weight: 500; line-height: 1.7; letter-spacing: 0.035rem; }

.interview .interview-dl { width: 100vw; margin: 0 calc(50% - 50vw); display: flex; background-color: #e2f8fa; }

@media screen and (max-width: 576px) { .interview .interview-dl { flex-direction: column; } }

.interview .interview-dl .interview-dl__image { width: 50%; background-size: cover; background-position: center; }

@media screen and (max-width: 992px) { .interview .interview-dl .interview-dl__image { width: 40%; } }

@media screen and (max-width: 576px) { .interview .interview-dl .interview-dl__image { width: 100%; height: 200px; } }

.interview .interview-dl .interview-dl__contents { padding: 80px; width: 50%; max-width: 700px; display: flex; flex-direction: column; align-items: start; }

@media screen and (max-width: 1200px) { .interview .interview-dl .interview-dl__contents { padding: 48px; } }

@media screen and (max-width: 992px) { .interview .interview-dl .interview-dl__contents { width: 60%; } }

@media screen and (max-width: 576px) { .interview .interview-dl .interview-dl__contents { width: 100%; padding: 24px 24px 32px; } }

.interview .interview-dl .interview-dl__label { font-size: 1rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; color: #029aaa; background-color: #c7ebef; padding: 6px 12px; border-radius: 6px; margin-bottom: 16px; }

@media screen and (max-width: 992px) { .interview .interview-dl .interview-dl__label { font-size: 0.875rem; padding: 4px 8px; margin-bottom: 8px; } }

@media screen and (max-width: 768px) { .interview .interview-dl .interview-dl__label { font-size: 0.75rem; } }

.interview .interview-dl .interview-dl__title { font-size: 2rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.04em; color: #333333; margin-bottom: 20px; }

@media screen and (max-width: 992px) { .interview .interview-dl .interview-dl__title { font-size: 1.5rem; } }

.interview .interview-dl .interview-dl__description { font-size: 1rem; line-height: 1.8; letter-spacing: 0.06em; color: #767676; margin-bottom: 32px; }

@media screen and (max-width: 768px) { .interview .interview-dl .interview-dl__description { font-size: 0.75rem; } }

.interview .interview-dl .btn { width: min(300px, 100%); }

@media screen and (max-width: 576px) { .interview .interview-dl .btn { margin: 0 auto; } }

.interview .related-interview { margin-top: 64px; margin-bottom: 104px; padding: 0 24px; }

.interview .related-interview__heading { color: #333333; font-size: 1.75rem; font-weight: 700; line-height: 1.5; letter-spacing: 0.07rem; margin-bottom: 24px; }

@media screen and (max-width: 576px) { .interview .related-interview__heading { font-size: 1.25rem; margin-bottom: 32px; } }

.interview .related-interview__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 64px 40px; }

@media screen and (max-width: 992px) { .interview .related-interview__cards { grid-template-columns: 1fr; gap: 48px; } }

.interviews * { box-sizing: border-box; }

.interviews .cta-block { display: flex; justify-content: center; gap: 20px; padding: 0 24px 20px; }

@media screen and (max-width: 576px) { .interviews .cta-block { gap: 12px; padding: 16px 24px 32px; } }

.interviews .cta-block .btn { max-width: 252px; flex: 1 auto; }

.interviews .interview-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 64px 40px; padding: 16px 24px 24px; }

@media screen and (max-width: 768px) { .interviews .interview-cards { grid-template-columns: 1fr; gap: 48px; } }

.request-flow_heading { width: 1200px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .request-flow_heading { width: 100%; } }

.request-flow_main-img { overflow: hidden; width: 100%; height: 300px; position: relative; }

@media screen and (max-width: 1024px) { .request-flow_main-img { height: 160px; } }

.request-flow_main-img img { width: 100%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

.request-flow_section { position: relative; }

.request-flow_container { position: relative; width: 1160px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .request-flow_container { width: 100%; } }

.request-flow_container::after { content: ''; width: 0; height: 75%; position: absolute; border: 1px solid #049AAA; top: 0; left: 579px; }

@media screen and (max-width: 1024px) { .request-flow_container::after { height: 62%; top: 850px; left: 50%; } }

.request-flow_overview { filter: drop-shadow(11.18px 16.58px 35px lightgray); background-color: white; width: 960px; margin: 0 auto; padding: 60px 0 60px 0; position: relative; top: -45px; z-index: 2; }

@media screen and (max-width: 1024px) { .request-flow_overview { width: 85%; margin: 0 auto; } }

.request-flow_overview-headline { color: #029aaa; font-size: 2rem; text-align: center; width: 700px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .request-flow_overview-headline { width: 100%; margin: 0 auto; line-height: 2rem; } }

.request-flow_overview-headline--sub { display: block; font-size: 1rem; margin: 20px 0; color: #029aaa; }

.request-flow_headline--block { display: block; }

@media screen and (max-width: 1024px) { .request-flow_headline--block { display: inline; } }

.request-flow_overview-button { position: absolute; top: 375px; right: 50px; }

@media screen and (max-width: 1024px) { .request-flow_overview-button { position: relative; top: 80px; right: 0; width: 83.3%; margin: 0 auto; text-align: center; } }

.request-flow_spacer { color: #029aaa; font-size: 2rem; margin: 20px 0; text-align: center; }

.request-flow_overview-desc { width: 700px; margin: 0 auto; }

@media screen and (max-width: 1024px) { .request-flow_overview-desc { width: 83.3%; } }

.request-flow_grobal-headline { font-size: 10rem; margin-bottom: 100px; width: 50%; margin: 100px 0 0 auto; color: #029aaa; text-align: center; position: relative; top: 100px; }

@media screen and (max-width: 1024px) { .request-flow_grobal-headline { font-size: 5rem; margin: 100px auto; width: 100%; z-index: 3; position: static; } }

.request-flow_grobal-headline.last-headline { position: relative; top: -350px; }

@media screen and (max-width: 1024px) { .request-flow_grobal-headline.last-headline { top: 0px; width: 90%; margin: 50px 0 100px auto; text-align: right; } }

.request-flow_items { width: 100%; position: relative; top: -50px; display: -webkit-flex; display: flex; flex-direction: row; flex-wrap: wrap; -webkit-justify-content: space-between; justify-content: space-between; margin-top: 300px; }

@media screen and (max-width: 1024px) { .request-flow_items { position: static; top: 0; margin-top: 0; } }

.request-flow_item { filter: drop-shadow(11.18px 16.58px 35px lightgray); background-color: white; width: 520px; margin-bottom: 120px; }

@media screen and (max-width: 1024px) { .request-flow_item { width: 90%; margin: 0 0 40px auto; z-index: 3; } }

.request-flow_item::after { content: ''; width: 0; height: 100px; position: absolute; border: 1px solid #049AAA; top: 200px; }

@media screen and (max-width: 1024px) { .request-flow_item::after { display: none; } }

.request-flow_circle { width: 10px; height: 10px; border-radius: 50%; background: #049AAA; position: absolute; }

@media screen and (max-width: 1024px) { .request-flow_circle { display: none; } }

.request-flow_circle.circle-left { right: -65px; top: 295px; }

.request-flow_circle.circle-right { left: -65px; top: 298px; }

.request-flow_item:nth-child(2n+1)::after { right: -32px; transform: skewX(-150deg); }

.request-flow_item:nth-child(2n)::after { left: -30px; transform: skewX(150deg); }

.request-flow_item:nth-child(2n+1) { position: relative; top: -300px; }

@media screen and (max-width: 1024px) { .request-flow_item:nth-child(2n+1) { position: static; margin: auto 0 40px 0; } }

.request-flow_item:nth-child(2n) { position: relative; top: 70px; }

@media screen and (max-width: 1024px) { .request-flow_item:nth-child(2n) { position: static; } }

.request-flow_item-image { height: 336px; width: 430px; z-index: 2; position: absolute; object-fit: contain; }

@media screen and (max-width: 1024px) { .request-flow_item-image { width: 70%; height: auto; } }

.request-flow_item-image.img-left { top: -50px; left: -120px; }

@media screen and (max-width: 1024px) { .request-flow_item-image.img-left { top: -10px; left: 0px; } }

.request-flow_item-image.img-right { top: -50px; right: -120px; }

@media screen and (max-width: 1024px) { .request-flow_item-image.img-right { top: -10px; right: 0px; } }

.request-flow_item-image.img-last { top: -250px; left: 50px; }

@media screen and (max-width: 1024px) { .request-flow_item-image.img-last { position: relative; top: 170px; left: 0; } }

.request-flow_item-number { position: absolute; top: 50px; width: 100px; height: 100px; line-height: 100px; font-size: 3.625rem; color: white; background-color: #029aaa; border-radius: 50%; text-align: center; }

@media screen and (max-width: 1024px) { .request-flow_item-number { width: 70px; height: 70px; line-height: 70px; font-size: 2rem; top: 80px; } }

.request-flow_item-number.number-1 { right: 70px; }

@media screen and (max-width: 1024px) { .request-flow_item-number.number-1 { right: 25px; } }

.request-flow_item-number.number-2 { left: 50px; }

@media screen and (max-width: 1024px) { .request-flow_item-number.number-2 { left: 25px; } }

.request-flow_item-number.number-3 { right: 70px; }

@media screen and (max-width: 1024px) { .request-flow_item-number.number-3 { right: 25px; } }

.request-flow_item-number.number-4 { left: 110px; }

@media screen and (max-width: 1024px) { .request-flow_item-number.number-4 { left: 25px; } }

.request-flow_item-number.number-5 { top: -140px; right: 530px; }

@media screen and (max-width: 1024px) { .request-flow_item-number.number-5 { position: relative; top: -180px; left: 0; margin: 0 auto; } }

.request-flow_item-headline, .request-flow_align-right { color: #029aaa; font-size: 2rem; text-align: center; position: absolute; top: 150px; }

@media screen and (max-width: 1024px) { .request-flow_item-headline, .request-flow_align-right { position: static; margin-top: 50%; } }

.request-flow_item-headline.headline-left, .headline-left.request-flow_align-right { right: 50px; }

@media screen and (max-width: 1024px) { .request-flow_item-headline.headline-left, .headline-left.request-flow_align-right { right: 0; } }

.request-flow_align-right { text-align: right; }

@media screen and (max-width: 1024px) { .request-flow_align-right { text-align: center; } }

@media screen and (max-width: 1024px) { .request-flow_slash::after { content: "/"; } }

.request-flow_item-headline.headline-right, .headline-right.request-flow_align-right { left: 50px; }

@media screen and (max-width: 1024px) { .request-flow_item-headline.headline-right, .headline-right.request-flow_align-right { left: 0; } }

.request-flow_item-headline.headline-last, .headline-last.request-flow_align-right { top: -40px; right: 510px; }

@media screen and (max-width: 1024px) { .request-flow_item-headline.headline-last, .headline-last.request-flow_align-right { margin-top: 0; position: relative; top: -180px; right: 0; } }

.request-flow_item-headline--sub { display: block; font-size: 1rem; margin: 10px 0; color: #029aaa; }

.request-flow_item-descs { padding: 40px; margin-top: 280px; }

@media screen and (max-width: 1024px) { .request-flow_item-descs { margin-top: 0; padding: 25px; } }

.request-flow_item-desc { margin-top: 30px; }

.request-flow_item-descs.last-descs { margin-top: 400px; }

@media screen and (max-width: 1024px) { .request-flow_item-descs.last-descs { margin-top: 0; padding: 20px 0 0; text-align: left; } }

.request-flow_item-last { width: 100%; position: relative; top: -300px; }

@media screen and (max-width: 1024px) { .request-flow_item-last { top: 0px; width: 90%; margin: 50px auto 0; } }

.request-flow_item-last-content { background-color: white; width: 600px; text-align: center; margin: 0 auto; }

@media screen and (max-width: 1024px) { .request-flow_item-last-content { width: 100%; } }

.request-flow_link { color: #029aaa; text-decoration: none; font-weight: bold; }

.contact *, .contact *::before, .contact *::after { box-sizing: border-box; }

.contact .container-lg { max-width: 992px; padding: 48px 24px 104px 24px; width: 100%; margin: 0 auto; }

.contact .contact__title-sub { width: 100%; margin-bottom: 64px; text-align: center; }

.contact .form-content select.form-control { width: 400px; }

/* =============================================
mofmof開発チーム紹介ページ
============================================= */
/* 共通項目
====================================================*/
.u-flex-center { display: flex; align-items: center; -webkit-box-align: center; }

.u-justifyx-center { justify-content: center; -webkit-box-pack: center; }

.u-align-bottom { -webkit-box-align: end; align-items: flex-end; }

.u-w-50 { width: 50% !important; box-sizing: border-box; }

.u-w-33 { width: 33% !important; box-sizing: border-box; }

.u-w-16 { width: 16.6% !important; box-sizing: border-box; }

.only-sp { display: none; }

.mofmof-team__heading { font-size: 4.0625rem; margin-top: 48px; margin-bottom: 80px; line-height: 100%; letter-spacing: 2px; color: #029aaa; }

.mofmof-team__tabmenu { width: 1200px; padding: 0 20px; margin: 0 auto; box-sizing: border-box; }

.mofmof-team__tabmenu .link-item { display: inline-block; line-height: 75px; font-size: 1.125rem; color: #029aaa; width: 230px; margin-right: 40px; border-radius: 10px 10px 0 0; text-align: center; border: solid 2px #029aaa; border-bottom: none; }

.mofmof-team__tabmenu .link-item:hover { text-decoration: none; background-color: #f8f8f4; }

.mofmof-team__tabmenu .link-item.active { background-color: #f8f8f4; font-weight: bold; }

.mofmof-team__container { border-top: solid 2px #029aaa; background-color: #f8f8f4; margin-top: -2px; }

.mofmof-team__section { width: 1200px; margin: 0 auto; padding: 70px 0; box-sizing: border-box; }

.mofmof-team__title { margin-bottom: 50px; text-align: center; }

.mofmof-team__title h2 { color: #029aaa; margin-bottom: 20px; font-size: 3.4375rem; line-height: 100%; }

.mofmof-team__title span { color: #029aaa; font-size: 1.5625rem; display: block; margin-bottom: 30px; }

.mofmof-team__title p { line-height: 1.8; }

@media screen and (max-width: 1024px) { .mofmof-team__heading { font-size: 2.1875rem; margin-top: 24px; margin-bottom: 60px; } .mofmof-team__tabmenu { width: 100%; padding: 0 10px; } .mofmof-team__tabmenu .link-item { line-height: 55px; font-size: 1rem; width: 150px; margin-right: 10px; } .mofmof-team__section { width: 100% !important; padding: 30px 0; } .mofmof-team__title { margin-bottom: 40px; } .mofmof-team__title h2 { margin-bottom: 10px; font-size: 1.875rem; } .mofmof-team__title span { font-size: 1rem; margin-bottom: 30px; } .mofmof-team__title p { font-size: 0.875rem; } .only-sp { display: block; } .only-pc { display: none !important; } }

/* mofmofの開発とは
====================================================*/
.mofmof-team__section.feature { width: 1200px; margin: 0 auto; padding: 120px 20px 70px; }

.mofmof-team .feature .mofmof-team__title { margin-bottom: 0; }

.mofmof-team .feature__list { padding: 0 20px; }

.mofmof-team .feature__item { margin: 30px 0; }

.mofmof-team .feature__item p { font-size: 1.5rem; color: #029aaa; font-weight: bold; margin-left: 15px; }

@media screen and (max-width: 1024px) { .mofmof-team__section.feature { width: 100%; padding: 50px 20px; } .mofmof-team__section.feature > .u-flex-center { display: block; } .u-w-50 { width: 100% !important; } .mofmof-team .feature .mofmof-team__title { margin-bottom: 30px; } .mofmof-team .feature__list { padding: 0; display: flex; flex-wrap: wrap; justify-content: center; } .mofmof-team .feature__item { margin: 20px 0; } .mofmof-team .feature__item img { width: 50px; } .mofmof-team .feature__item p { font-size: 1rem; width: 204px; } }

/* mofmofが選ばれる3つの理由
====================================================*/
.mofmof-team .sttength { padding: 0 20px; }

.mofmof-team .sttength .mofmof-team__title { margin-bottom: 120px; }

.mofmof-team .sttength__list { text-align: center; }

.mofmof-team .sttength__list h4 { color: #029aaa; font-size: 1.125rem; margin: 20px 0 10px; }

.mofmof-team .sttength__list p { font-size: 0.8125rem; }

.mofmof-team .sttength__illust { position: relative; width: 300px; margin: 0 auto; }

.mofmof-team .sttength__number { position: absolute; top: -30px; left: -30px; width: 60px; height: 60px; border: solid 2px #029aaa; background-color: #e2f8fa; color: #029aaa; border-radius: 50%; text-align: center; font-size: 2rem; line-height: 55px; font-weight: bold; }

@media screen and (max-width: 1024px) { .mofmof-team .sttength .mofmof-team__title { margin-bottom: 60px; } .mofmof-team .sttength .u-flex-center { display: block; } .mofmof-team .sttength .u-w-33 { width: 100% !important; } .mofmof-team .sttength__list { margin-bottom: 50px; } .mofmof-team .sttength__list h4 { font-size: 1rem; margin: 15px 0 10px; } .mofmof-team .sttength__list p { font-size: 0.75rem; line-height: 1.5; } .mofmof-team .sttength__illust { position: relative; width: 300px; margin: 0 auto; } .mofmof-team .sttength__number { position: absolute; top: -30px; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); width: 50px; height: 50px; font-size: 1.5625rem; line-height: 50px; } }

/* mofmofのプロダクトで使われている技術
====================================================*/
.mofmof-team__section.skill { width: 1000px; padding: 70px 20px; }

.mofmof-team__skill .u-w-33, .mofmof-team__skill .u-w-16 { padding: 10px; }

.mofmof-team__skill .skill-card { background: #ffffff; border-radius: 10px; padding: 30px; justify-content: space-between; -webkit-box-pack: justify; }

.mofmof-team__skill .skill-card__caption { width: 60%; font-size: 0.75rem; }

.mofmof-team__skill .skill-card__caption h5 { font-size: 1.375rem; color: #029aaa; margin-bottom: 10px; }

.mofmof-team__skill .skill-card__caption p { line-height: 2; }

.mofmof-team__skill .skill-card.sm { text-align: center; }

.mofmof-team__skill .skill-card.sm h5 { font-size: 1rem; color: #029aaa; margin-bottom: 10px; letter-spacing: 0; }

.mofmof-team__skill .skill-other { width: 98%; background: #ffffff; border: dashed 2px #029aaa; margin: 40px auto 0; padding: 30px; box-sizing: border-box; }

.mofmof-team__skill .skill-other h5 { font-size: 1.125rem; color: #029aaa; margin-bottom: 15px; }

.mofmof-team__skill .skill-other img { display: inline-block; margin: 0 15px; }

@media screen and (max-width: 1024px) { .mofmof-team__section.skill { width: 100%; } .mofmof-team__skill .skill-card-box--lg { display: block; } .mofmof-team__skill .skill-card-box--sm { flex-wrap: wrap; } .mofmof-team__skill .u-w-33 { width: 100% !important; } .mofmof-team__skill .u-w-16 { width: 50% !important; } .mofmof-team__skill .skill-other { width: 100%; } .mofmof-team__skill .skill-other h5 { font-size: 1rem; } }

/* mofmof流プロジェクトの進め方
====================================================*/
.mofmof-team__flow { margin-top: 80px; padding: 0 20px; }

.mofmof-team__flow .u-w-50 { padding: 10px; }

.mofmof-team__flow .flow-list { margin-bottom: 80px; }

.mofmof-team__flow .flow-list__balloon { font-weight: bold; position: relative; text-align: center; width: 100%; display: inline-block; margin: 15px 0 30px; padding: 15px; color: #029aaa; font-size: 1rem; background: #e2f8fa; border: solid 2px #029aaa; box-sizing: border-box; border-radius: 99px; }

.mofmof-team__flow .flow-list__balloon:before { content: ''; position: absolute; bottom: -24px; left: 50%; margin-left: -15px; border: 12px solid transparent; border-top: 12px solid #e2f8fa; z-index: 2; }

.mofmof-team__flow .flow-list__balloon:after { content: ''; position: absolute; bottom: -29px; left: 50%; margin-left: -17px; border: 14px solid transparent; border-top: 14px solid #029aaa; z-index: 1; }

.mofmof-team__flow .flow-list__balloon p { margin: 0; padding: 0; }

.mofmof-team__flow .flow-list__balloon img { position: absolute; left: 15px; top: -55px; }

.mofmof-team__flow .flow-list__contents { color: #029aaa; font-weight: bold; border: solid 2px #029aaa; border-radius: 10px; background: #ffffff; font-size: 0.875rem; }

.mofmof-team__flow .flow-list__contents li { padding: 35px; border-bottom: dashed 1px #029aaa; list-style: none; }

.mofmof-team__flow .flow-list__contents li:last-child { border-bottom: none; }

.mofmof-team__flow .flow-list__contents li.bg-blue { background: rgba(226, 248, 250, 0.5); }

.mofmof-team__flow .flow-list__contents li::before { content: ''; display: inline-block; margin-right: 10px; width: 10px; height: 10px; background-color: #029aaa; border-radius: 50%; }

.mofmof-team__flow .flow-list__contents span { color: #333333; font-weight: normal; }

.mofmof-team__flow .flow-list.unsuitable .flow-list__balloon { color: #db5e5e; background: #fceeee; border: solid 2px #db5e5e; }

.mofmof-team__flow .flow-list.unsuitable .flow-list__balloon:before { content: ''; border-top: 12px solid #fceeee; }

.mofmof-team__flow .flow-list.unsuitable .flow-list__balloon:after { border-top: 14px solid #db5e5e; }

.mofmof-team__flow .flow-list.unsuitable .flow-list__contents { color: #db5e5e; border: solid 2px #db5e5e; }

.mofmof-team__flow .flow-list.unsuitable .flow-list__contents li { border-bottom: dashed 1px #db5e5e; }

.mofmof-team__flow .flow-list.unsuitable .flow-list__contents li:last-child { border-bottom: none; }

.mofmof-team__flow .flow-list.unsuitable .flow-list__contents li.bg-red { background: rgba(252, 238, 238, 0.5); }

.mofmof-team__flow .flow-list.unsuitable .flow-list__contents li::before { background-color: #db5e5e; }

.mofmof-team__flow .flow-engineer { position: relative; text-align: center; width: 100%; display: inline-block; padding: 100px 20px 150px; background: #ffffff; border: solid 2px #029aaa; box-sizing: border-box; border-radius: 10px; margin-bottom: 100px; }

.mofmof-team__flow .flow-engineer__tit { font-size: 2.1875rem; color: #029aaa; font-weight: bold; margin-bottom: 50px; }

.mofmof-team__flow .flow-engineer__tit h3 { display: inline-block; border-bottom: solid 10px #f4f212; margin-bottom: 20px; }

.mofmof-team__flow .flow-engineer__tit span { font-size: 1.5625rem; display: block; }

.mofmof-team__flow .flow-engineer__list { list-style: none; }

.mofmof-team__flow .flow-engineer__item { position: absolute; }

.mofmof-team__flow .flow-engineer__contents { position: relative; }

.mofmof-team__flow .flow-engineer__caption { position: absolute; width: 210px; }

.mofmof-team__flow .flow-engineer__caption h4 { color: #029aaa; margin-bottom: 8px; line-height: 150%; }

.mofmof-team__flow .flow-engineer__caption p { font-size: 0.8125rem; line-height: 1.8; }

.mofmof-team__flow .flow-engineer .agile { top: 200px; left: 150px; }

.mofmof-team__flow .flow-engineer .agile .flow-engineer__caption { left: -55px; top: 115px; }

.mofmof-team__flow .flow-engineer .business { bottom: 180px; left: 130px; }

.mofmof-team__flow .flow-engineer .business .flow-engineer__caption { left: -55px; top: 180px; }

.mofmof-team__flow .flow-engineer .management { top: 170px; right: 170px; }

.mofmof-team__flow .flow-engineer .management .flow-engineer__caption { right: -50px; top: 115px; }

.mofmof-team__flow .flow-engineer .communication { top: 400px; right: 80px; }

.mofmof-team__flow .flow-engineer .communication .flow-engineer__caption { right: -50px; top: 105px; }

.mofmof-team__flow .flow-engineer .think { bottom: 160px; right: 200px; }

.mofmof-team__flow .flow-engineer .think .flow-engineer__caption { right: -55px; top: 155px; }

.mofmof-team__flow .flow-engineer:before { content: ''; position: absolute; bottom: -100px; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); border: 60px solid transparent; border-top: 40px solid #ffffff; z-index: 2; }

.mofmof-team__flow .flow-engineer:after { content: ''; position: absolute; bottom: -108px; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); border: 64px solid transparent; border-top: 44px solid #029aaa; z-index: 1; }

.mofmof-team__flow .flow-detail__tit { font-size: 1.5625rem; color: #029aaa; margin-bottom: 30px; }

.mofmof-team__flow .flow-detail__card { background: #ffffff; border: solid 2px #029aaa; border-radius: 10px; box-sizing: border-box; padding: 40px; margin: 0 auto; width: 750px; }

.mofmof-team__flow .flow-detail__contents { width: 340px; margin-left: 30px; }

.mofmof-team__flow .flow-detail__contents h4 { font-size: 1rem; color: #029aaa; margin-bottom: 20px; }

.mofmof-team__flow .flow-detail__contents h4::after { content: ''; display: block; width: 50px; height: 2px; background: #029aaa; margin-top: 20px; }

.mofmof-team__flow .flow-detail__contents p { font-size: 0.8125rem; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; margin-bottom: 20px; }

.mofmof-team__flow .flow-detail__button { text-align: right; }

.mofmof-team__flow .flow-detail__button .button, .mofmof-team__flow .flow-detail__button .button--rectangle { border-radius: 99px; border: solid 1px #029aaa; }

@media screen and (max-width: 1024px) { .mofmof-team__flow { margin-top: 0; } .mofmof-team__flow > .u-flex-center { display: block; } .mofmof-team__flow .u-w-50 { padding: 10px; } .mofmof-team__flow .flow-list { margin-bottom: 40px; } .mofmof-team__flow .flow-list__balloon img { left: 0; top: -35px; width: 85px; } .mofmof-team__flow .flow-engineer { width: 100%; padding: 40px 15px; margin-bottom: 80px; } .mofmof-team__flow .flow-engineer__tit { font-size: 1.5625rem; margin-bottom: 30px; } .mofmof-team__flow .flow-engineer__tit h3 { display: inline-block; margin-bottom: 15px; line-height: 1.8; } .mofmof-team__flow .flow-engineer__tit span { font-size: 1.125rem; display: block; } .mofmof-team__flow .flow-engineer .flow-engineer__cover { width: 80%; margin-bottom: 20px; } .mofmof-team__flow .flow-engineer__list { display: flex; justify-content: center; align-items: flex-start; flex-wrap: wrap; } .mofmof-team__flow .flow-engineer__item { position: inherit; width: 50%; box-sizing: border-box; padding: 10px; } .mofmof-team__flow .flow-engineer__caption { position: inherit; width: 100%; } .mofmof-team__flow .flow-engineer__caption h4 { margin-bottom: 8px; margin-top: 10px; font-size: 0.875rem; line-height: 1.5; } .mofmof-team__flow .flow-engineer__caption p { font-size: 0.75rem; line-height: 1.8; } .mofmof-team__flow .flow-detail__tit { font-size: 1.25rem; margin-bottom: 15px; } .mofmof-team__flow .flow-detail__card { padding: 30px; width: 100%; } .mofmof-team__flow .flow-detail__card .u-flex-center { display: block; } .mofmof-team__flow .flow-detail__card img { width: 100%; } .mofmof-team__flow .flow-detail__contents { width: 100%; margin-left: 0; margin-top: 15px; } .mofmof-team__flow .flow-detail__contents h4 { font-size: 1rem; margin-bottom: 15px; } .mofmof-team__flow .flow-detail__contents h4::after { margin-top: 15px; } .mofmof-team__flow .flow-detail__contents p { font-size: 0.75rem; margin-bottom: 25px; } .mofmof-team__flow .flow-detail__button { text-align: center; } }

/* 実績
====================================================*/
.mofmof-team__section.works { padding: 70px 20px; }

.mofmof-team__works { margin-bottom: 40px; }

.mofmof-team__works span { color: #029aaa; font-size: 1rem; font-weight: bold; display: block; text-align: center; margin-bottom: 30px; }

.mofmof-team__works .works__card { background: #ffffff; border-radius: 10px; padding: 30px; justify-content: space-between; -webkit-box-pack: justify; }

.mofmof-team__works .works__supplement p { font-size: 0.875rem; }

.mofmof-team__works .works__logo { margin-bottom: 30px; }

.mofmof-team__works .works__logo img { display: inline-block; margin: 0 20px; }

.mofmof-team__works .works__logo a:hover { opacity: 0.5; transition: 0.3s; }

@media screen and (max-width: 1024px) { .mofmof-team__works { margin-bottom: 20px; } .mofmof-team__works span { color: #029aaa; font-size: 1rem; font-weight: bold; text-align: center; display: block; margin-bottom: 0; } .mofmof-team__works .works__supplement p { font-size: 0.75rem; } .mofmof-team__works .works__logo { margin-bottom: 15px; flex-wrap: nowrap; overflow: hidden; } .mofmof-team__works .works__logo img { margin: 0 10px; height: 30px; } .mofmof-team__works .works__wrap { display: flex !important; } }

/* 下部のナビゲーションボタン
====================================================*/
.mofmof-team__nav-btn { background: #f2fafb url(/images/bg-transparent.png) repeat center top; border-top: solid 2px #029aaa; margin-bottom: 50px; }

.mofmof-team__nav-btn h3 { font-size: 1.5625rem; color: #029aaa; margin-bottom: 50px; }

.mofmof-team__nav-btn button { margin-top: 0 !important; margin: 0 10px; }

.mofmof-team__nav-btn .btn-wrap { -webkit-box-pack: center; justify-content: center; margin-bottom: 50px; }

@media screen and (max-width: 1024px) { .mofmof-team__nav-btn { margin-bottom: 30px; } .mofmof-team__nav-btn .mofmof-team__section { padding: 50px 20px; } .mofmof-team__nav-btn h3 { font-size: 1.25rem; line-height: 1.5; margin-bottom: 30px; } .mofmof-team__nav-btn button { margin-top: 0 !important; margin: 15px 0; width: 100% !important; } .mofmof-team__nav-btn .btn-wrap { display: block; margin-bottom: 40px; } }

/* 興味・関心ごと
====================================================*/
.mofmof-team__section.interests { width: 1200px; margin: 0 auto; padding: 120px 20px 0; }

.mofmof-team .interests .mofmof-team__title { margin-bottom: 0; }

.mofmof-team .interests__list { padding: 0 40px; }

.mofmof-team .interests__item { margin: 30px 0; }

.mofmof-team .interests__item p { font-size: 1.5rem; color: #029aaa; font-weight: bold; margin-left: 15px; }

@media screen and (max-width: 1024px) { .mofmof-team__section.interests { width: 100%; padding: 50px 20px; } .mofmof-team__section.interests > .u-flex-center { display: block; } .u-w-50 { width: 100% !important; } .mofmof-team .interests .mofmof-team__title { margin-bottom: 30px; } .mofmof-team .interests__list { padding: 0; } .mofmof-team .interests__item { margin: 20px 0; } .mofmof-team .interests__item img { margin: 0 auto; width: 300px; } .mofmof-team .interests__item p { font-size: 1rem; width: calc(100% - 65px); } }

/* 年代
====================================================*/
.mofmof-team__section.age { width: 1200px; margin: 0 auto; padding: 0 20px 70px; }

.mofmof-team .age .mofmof-team__title { margin-bottom: 0; }

.mofmof-team .age__list { padding: 0 40px; }

.mofmof-team .age__item { margin: 30px 0; }

.mofmof-team .age__item img { margin: 0 auto; }

.mofmof-team .age__item p { font-size: 1.5rem; color: #029aaa; font-weight: bold; margin-left: 15px; }

@media screen and (max-width: 1024px) { .mofmof-team__section.age { width: 100%; padding: 0 20px 50px; } .mofmof-team__section.age > .u-flex-center { display: block; } .u-w-50 { width: 100% !important; } .mofmof-team .age .mofmof-team__title { margin-bottom: 30px; } .mofmof-team .age__list { padding: 0; } .mofmof-team .age__item { margin: 20px 0; } .mofmof-team .age__item img { margin: 0 auto; width: 300px; } .mofmof-team .age__item p { font-size: 1rem; width: calc(100% - 65px); } }

/* 私たちがお届けしたもの
====================================================*/
.mofmof-team .interview { width: 100%; }

.mofmof-team .interview .mofmof-team__title { margin-bottom: 60px; }

.mofmof-team .interview__slider { width: 100%; }

.mofmof-team .interview__slider-list { background: #ffffff; border-radius: 10px; list-style: none; text-align: center; margin: 0 15px; width: 350px; }

.mofmof-team .interview__slider .img { height: 180px; object-fit: cover; border-radius: 10px 10px 0px 0px; }

.mofmof-team .interview__slider-content { height: 150px; padding: 20px 30px; }

.mofmof-team .interview__slider-content .name { color: #029aaa; }

.mofmof-team .interview__slider-content .discription { padding: 10px 0; font-size: 0.75rem; text-align: left; overflow: hidden; }

.mofmof-team .interview__slider .read-more { display: block; max-width: 180px; margin: 20px auto; padding: 5px; border: solid 1px #029aaa; border-radius: 70px; box-shadow: 2px 2px 3px #d3d3d3; color: #029aaa; }

.mofmof-team .interview__slider .read-more:hover { text-decoration: none; background-color: #008c9b; color: #ffffff; transition: 0.3s; }

.mofmof-team .interview__slider .slick-next, .mofmof-team .interview__slider .slick-prev { background-color: #029aaa; border-radius: 50%; color: #ffffff; height: 40px; width: 40px; box-shadow: 2px 2px 3px #d3d3d3; }

.mofmof-team .interview__slider .slick-next:hover, .mofmof-team .interview__slider .slick-prev:hover { background-color: #008c9b; }

.mofmof-team .interview__slider .slick-next { right: 60px; }

.mofmof-team .interview__slider .slick-prev { left: 60px; }

@media screen and (max-width: 1024px) { .mofmof-team .interview .mofmof-team__title { margin-bottom: 30px; } .mofmof-team .interview__slider .slick-next { right: 15px; } .mofmof-team .interview__slider .slick-prev { left: 15px; } }

/* 大切にしていること
====================================================*/
.mofmof-team .value { padding: 70px 20px; }

.mofmof-team .value .mofmof-team__title { margin-bottom: 60px; }

.mofmof-team .value__content { position: relative; overflow: hidden; max-width: 350px; background-color: #ffffff; padding: 40px 30px; margin: 0 20px; border-radius: 40px 0px; }

.mofmof-team .value__content h3 { line-height: 40px; font-size: 1.4375rem; font-weight: 700; color: #029aaa; }

.mofmof-team .value__content .divider { width: 50px; margin: 20px 0; border: #029aaa 1px solid; }

.mofmof-team .value__content .text { font-size: 0.75rem; }

.mofmof-team .value__content .read-more { position: relative; z-index: 1; display: block; max-width: 180px; margin: 30px auto 10px; padding: 5px; background-color: #ffffff; border: solid 1px #029aaa; border-radius: 70px; box-shadow: 2px 2px 3px #d3d3d3; text-align: center; color: #029aaa; }

.mofmof-team .value__content .read-more:hover { text-decoration: none; background-color: #008c9b; color: #ffffff; transition: 0.3s; }

.mofmof-team .value__content .illust-commit { position: absolute; z-index: 0; opacity: 0.4; width: 196px; bottom: -60px; right: -40px; transform: rotate(2.92deg); }

.mofmof-team .value__content .illust-pleasure { position: absolute; z-index: 0; opacity: 0.4; width: 231px; bottom: -80px; right: -40px; transform: rotate(2.37deg); }

.mofmof-team .value__content .illust-mvp { position: absolute; z-index: 0; opacity: 0.4; width: 290px; bottom: 10px; right: -120px; }

@media screen and (max-width: 1024px) { .mofmof-team .value { padding: 70px 20px 0; } .mofmof-team .value .u-flex-center { display: block; } .mofmof-team .value .mofmof-team__title { margin-bottom: 30px; } .mofmof-team .value__content { margin: 0 auto 30px; } }

/* メンバー
====================================================*/
.mofmof-team .members { padding-top: 0px; }

.mofmof-team .members .mofmof-team__title { margin-bottom: 60px; }

.mofmof-team .members__list { max-width: 1000px; margin: 0 auto; display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap; }

.mofmof-team .members__list .member-card { position: relative; width: 33%; padding: 15px 20px; box-sizing: border-box; margin-bottom: 20px; }

.mofmof-team .members__list .member-card__name { margin-bottom: 15px; display: flex; flex-direction: column; justify-content: center; }

.mofmof-team .members__list .member-card__name .name { width: max-content; display: flex; justify-content: center; gap: 2px; }

.mofmof-team .members__list .member-card__name .name .name_ja { font-size: 1rem; font-weight: 700; }

.mofmof-team .members__list .member-card__name .name .name_en { font-size: 0.75rem; font-weight: 700; }

.mofmof-team .members__list .member-card__name .role { color: #029aaa; font-size: 0.75rem; font-weight: 700; }

.mofmof-team .members__list .member-card__txt { font-size: 0.75rem; margin-bottom: 15px; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 6; line-height: 2em; height: calc(2em * 6); }

.mofmof-team .members__list .member-card .member-thumb { border-top: 2px solid #029aaa; height: 200px; margin-bottom: 15px; padding-top: 15px; position: relative; width: 300px; }

.mofmof-team .members__list .member-card .member-thumb img { transition: 0.3s ease-in-out; position: absolute; top: 15px; left: 0; }

.mofmof-team .members__list .member-card .member-thumb .member-thumb__out { width: 100%; z-index: 1; }

.mofmof-team .members__list .member-card .member-thumb .member-thumb__over { z-index: 0; opacity: 0; visibility: hidden; }

.mofmof-team .members__list .member-card .member-thumb:hover .member-thumb__out { z-index: 0; opacity: 0; visibility: hidden; }

.mofmof-team .members__list .member-card .member-thumb:hover .member-thumb__over { z-index: 1; opacity: 1; top: 15px; visibility: visible; }

.mofmof-team .members__list .member-card__sns a:hover { opacity: 0.7; transition: 0.3s; }

.mofmof-team .members__list .member-card__sns img { width: 30px; height: 30px; display: inline-block; margin-right: 15px; }

.mofmof-team .members__list .member-card .button.see-more, .mofmof-team .members__list .member-card .see-more.button--rectangle { width: 70%; display: block; margin-top: 20px; margin-left: auto; margin-right: auto; box-sizing: border-box; padding-left: 0; padding-right: 0; border-radius: 99px; }

@media screen and (max-width: 1024px) { .mofmof-team .members { margin: 0px; } .mofmof-team .members__list .member-card { min-height: initial; height: fit-content; padding: 0 20px 40px; margin: 0px 5px; border-top: 2px solid #029aaa; background-color: #ffffff; } .mofmof-team .members__list .member-card .member-thumb { width: 100%; height: fit-content; border-top: initial; } .mofmof-team .members__list .member-card .member-thumb img { width: 100%; transition: initial; position: initial; top: initial; left: initial; } .mofmof-team .members__list .member-card .member-thumb__over { display: none; } .mofmof-team .members__list .member-card__name { border-top: none; padding-top: 0; } .mofmof-team .members__list .member-card__name h5 { font-size: 0.875rem; } .mofmof-team .members__list .member-card__name span { font-size: 0.75rem; } .mofmof-team .members__list .member-card__txt { font-size: 0.75rem; -webkit-line-clamp: 8; line-height: 2em; height: calc(2em * 8); } .mofmof-team .members__list .member-card__footer { height: 100px; } .mofmof-team .members__list .member-card .button.see-more, .mofmof-team .members__list .member-card .see-more.button--rectangle { width: 100%; box-sizing: border-box; position: inherit; bottom: inherit; left: inherit; transform: inherit; -webkit-transform: inherit; margin: 15px 0 20px; } .mofmof-team .members__list button.slick-next, .mofmof-team .members__list button.slick-prev { background-color: #029aaa; border-radius: 50%; color: #ffffff; height: 40px; width: 40px; box-shadow: 2px 2px 3px #d3d3d3; } .mofmof-team .members__list .slick-next { right: 15px; } .mofmof-team .members__list .slick-prev { left: 15px; } }

.team-feature .main_visual .main_img { background-position: center; background-repeat: no-repeat; background-size: cover; width: auto; height: 100%; }

.team-feature .section { padding: 100px 0; }

.team-feature__container.ob { background-color: #f8f8f4; padding-top: 80px; }

.team-feature__container.banner { margin-bottom: 40px; }

.team-feature__title { font-size: 2.8125rem; letter-spacing: 3px; text-align: center; margin-bottom: 50px; color: #029aaa; }

.team-feature__title p { font-size: 1.25rem; margin-top: 20px; }

.team-feature__member { max-width: 1000px; margin: 0 auto; display: flex; align-items: flex-start; justify-content: flex-start; flex-wrap: wrap; }

.team-feature__member .member-card { position: relative; width: 33%; padding: 15px 20px; box-sizing: border-box; margin-bottom: 20px; }

.team-feature__member .member-card__name { margin-bottom: 15px; display: flex; flex-direction: column; justify-content: center; }

.team-feature__member .member-card__name .name { width: max-content; display: flex; justify-content: center; gap: 2px; }

.team-feature__member .member-card__name .name .name_ja { font-size: 1rem; font-weight: 700; }

.team-feature__member .member-card__name .name .name_en { font-size: 0.75rem; font-weight: 700; }

.team-feature__member .member-card__name .role { color: #029aaa; font-size: 0.75rem; font-weight: 700; }

.team-feature__member .member-card__txt { font-size: 0.75rem; margin-bottom: 15px; overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 6; line-height: 2em; height: calc( 2em * 6); }

.team-feature__member .member-card .member-thumb { border-top: 2px solid #029aaa; display: flex; height: 200px; justify-content: center; margin-bottom: 15px; overflow: hidden; padding-top: 15px; position: relative; width: 300px; }

.team-feature__member .member-card .member-thumb img { transition: .3s ease-in-out; position: absolute; top: 15px; }

.team-feature__member .member-card .member-thumb .member-thumb__out { width: 100%; z-index: 1; }

.team-feature__member .member-card .member-thumb.big .member-thumb__out { width: 130%; }

.team-feature__member .member-card .member-thumb .member-thumb__over { z-index: 0; opacity: 0; visibility: hidden; }

.team-feature__member .member-card .member-thumb:hover .member-thumb__out { z-index: 0; opacity: 0; visibility: hidden; }

.team-feature__member .member-card .member-thumb:hover .member-thumb__over { z-index: 1; opacity: 1; top: 15px; visibility: visible; }

.team-feature__member .member-card__sns a:hover { opacity: 0.7; transition: 0.3s; }

.team-feature__member .member-card__sns img { width: 30px; height: 30px; display: inline-block; margin-right: 15px; }

.team-feature__member .member-card .button.see-more, .team-feature__member .member-card .see-more.button--rectangle { width: 70%; display: block; margin-top: 20px; margin-left: auto; margin-right: auto; box-sizing: border-box; padding-left: 0; padding-right: 0; border-radius: 99px; }

@media screen and (max-width: 1024px) { .team-feature .section { padding: 60px 0; } .team-feature__title { font-size: 1.875rem; margin-bottom: 40px; } .team-feature__title p { font-size: 1rem; margin-top: 10px; } .team-feature__container.ob { padding-top: 60px; padding-bottom: 60px; } .team-feature__container.ob .team-feature__member { margin: 0px; } .team-feature__container.ob .team-feature__member .member-card { min-height: initial; height: fit-content; padding: 0 20px; margin: 0px 5px; border-top: 2px solid #029aaa; } .team-feature__container.ob .team-feature__member .member-card .member-thumb { border-top: initial; } .team-feature__container.ob .team-feature__member .member-card__name h5 { font-size: 0.875rem; } .team-feature__container.ob .team-feature__member .member-card__name span { font-size: 0.75rem; } .team-feature__container.ob .team-feature__member .member-card__txt { font-size: 0.75rem; -webkit-line-clamp: 8; line-height: 2em; height: calc( 2em * 8); } .team-feature__member { max-width: 1000px; display: block; margin-left: 20px; margin-right: 20px; } .team-feature__member .member-card { width: 100%; margin-bottom: 40px; padding: 0px; background-color: #ffffff; } .team-feature__member .member-card .member-thumb { width: 100%; height: fit-content; } .team-feature__member .member-card .member-thumb img { width: 100%; transition: initial; position: initial; top: initial; left: initial; } .team-feature__member .member-card .member-thumb__over { display: none; } .team-feature__member .member-card__name { border-top: none; padding-top: 0; } .team-feature__member .member-card__txt { font-size: 0.75rem; -webkit-line-clamp: 8; line-height: 2em; height: initial; } .team-feature__member .member-card .button.see-more, .team-feature__member .member-card .see-more.button--rectangle { width: 100%; box-sizing: border-box; position: inherit; bottom: inherit; left: inherit; transform: inherit; -webkit-transform: inherit; margin: 15px 0 20px; } .team-feature__member button.slick-next, .team-feature__member button.slick-prev { background-color: #029aaa; border-radius: 50%; color: #ffffff; height: 40px; width: 40px; box-shadow: 2px 2px 3px #d3d3d3; } .team-feature__member .slick-next { right: 15px; } .team-feature__member .slick-prev { left: 15px; } }

.our-products-section { display: flex; flex-direction: column; align-items: center; padding: 100px 0px; background: #f8f8f4; width: 100vw; box-sizing: border-box; margin: 0px calc(50% - 50vw); }

@media screen and (max-width: 1024px) { .our-products-section { padding-left: 20px; padding-right: 20px; } }

.our-products-section .our-products-section__title { font-size: 3.5rem; font-weight: 700; color: #029aaa; line-height: 100%; margin-bottom: 16px; }

@media screen and (max-width: 1024px) { .our-products-section .our-products-section__title { font-size: 2.5rem; } }

.our-products-section .our-products-section__sub-title { font-size: 1rem; font-weight: 500; color: #029aaa; line-height: 100%; margin-bottom: 50px; }

.our-products-section .product__my-ope-office { position: relative; display: flex; width: 900px; background-color: #ffffff; box-shadow: 2px 2px 10px rgba(211, 211, 211, 0.3); }

@media screen and (max-width: 1024px) { .our-products-section .product__my-ope-office { flex-direction: column; width: 100%; } }

.our-products-section .product__my-ope-office .product__my-ope-office__image { width: 100%; object-fit: cover; }

@media screen and (max-width: 1024px) { .our-products-section .product__my-ope-office .product__my-ope-office__image { height: 250px; } }

.our-products-section .product__my-ope-office .product__my-ope-office__content { padding: 50px 40px 40px 40px; }

@media screen and (max-width: 1024px) { .our-products-section .product__my-ope-office .product__my-ope-office__content { padding: 30px 20px; } }

.our-products-section .product__my-ope-office .product__my-ope-office__content .product__my-ope-office__content--title { font-size: 1.875rem; font-weight: 700; color: #029aaa; margin-bottom: 25px; }

.our-products-section .product__my-ope-office .product__my-ope-office__content .product__my-ope-office__content--divider { background-color: #029aaa; height: 2px; width: 50px; margin-bottom: 20px; }

.our-products-section .product__my-ope-office .product__my-ope-office__content .product__my-ope-office__content--sub-title { font-size: 1rem; font-weight: 700; color: #029aaa; line-height: 180%; margin-bottom: 30px; }

.our-products-section .product__my-ope-office .product__my-ope-office__content .product__my-ope-office__content--description { font-size: 0.75rem; font-weight: 400; color: #333333; line-height: 200%; margin-bottom: 30px; }

.our-products-section .product__my-ope-office .product__my-ope-office__content .product__my-ope-office__content--read-more { display: flex; justify-content: end; }

@media screen and (max-width: 1024px) { .our-products-section .product__my-ope-office .product__my-ope-office__content .product__my-ope-office__content--read-more { justify-content: center; } }

.our-products-section .product__my-ope-office .product__my-ope-office__content .product__my-ope-office__content--read-more .product__my-ope-office__content--read-more-button { border-radius: 99px; }

.news-post * { box-sizing: border-box; }

.news-post .container { width: 100%; max-width: 1200px; }

.news-post .article-container { width: 100%; max-width: 800px; margin: 64px auto 80px; padding: 0 24px; }

@media screen and (max-width: 576px) { .news-post .article-container { margin-top: 32px; } }

.news-post .article-heading { border-bottom: solid 1px #e6e6e6; margin-bottom: 64px; padding-bottom: 32px; position: relative; }

.news-post .article-heading::before { background-color: #5dbec9; border-radius: 2px; bottom: calc(-12px * 0.5); content: ''; display: block; height: 12px; left: 0; position: absolute; width: 300px; }

.news-post .article-title { font-size: 2rem; font-weight: 700; line-height: 1.4; letter-spacing: 0.08rem; margin-bottom: 8px; }

@media screen and (max-width: 576px) { .news-post .article-title { font-size: 1.5rem; line-height: 1.5; letter-spacing: 0.06rem; } }

.news-post .article-date { font-size: 1.25rem; font-style: normal; font-weight: 500; line-height: 1.5; /* 30px */ letter-spacing: 0.05rem; }

.news-post .article-body { margin-bottom: 64px; }

.news-post .article-body > *:first-child { margin-top: 0; }

.news-post .article-body h1 { border-bottom: solid 1px #0000001a; font-size: 1.5rem; font-weight: 500; margin-bottom: 16px; margin-top: 80px; padding-bottom: 8px; }

.news-post .article-body h2 { font-size: 1.25rem; font-weight: 500; margin-bottom: 16px; margin-top: 32px; }

.news-post .article-body h3 { font-size: 1rem; font-weight: bold; margin-bottom: 16px; margin-top: 24px; }

.news-post .article-body p { margin-bottom: 16px; margin-top: 16px; }

.news-post .article-body img { max-width: 100%; margin: 32px auto; display: block; border-radius: 6px; }

.news-post .article-body ul, .news-post .article-body ol { margin-bottom: 16px; margin-left: 20px; margin-top: 16px; }

.news-post .article-body ul ul, .news-post .article-body ul ol, .news-post .article-body ol ol, .news-post .article-body ol ul { margin-bottom: 0; margin-top: 0; }

.news-post .article-body ol ol, .news-post .article-body ul ol { list-style-type: lower-alpha; }

.news-post .article-body ul ul ol, .news-post .article-body ul ol ol, .news-post .article-body ol ul ol, .news-post .article-body ol ol ol { list-style-type: lower-roman; }

.news-post .article-body ul { list-style-type: none; }

.news-post .article-body ul li { position: relative; }

.news-post .article-body ul li::before { background: #333333; border-radius: 50%; content: ''; display: block; height: 4px; left: calc(-18px); position: absolute; top: calc(0.5*1.0lh - 2px); width: 4px; }

.news-post .article-body code { padding: .2em .4em; margin: 0 .2em; font-size: 0.875rem; background-color: #0000001a; border-radius: 3px; }

.news-post .article-body pre { word-wrap: normal; }

.news-post .article-body pre > code { padding: 0; margin: 0; font-size: 100%; word-break: normal; white-space: pre; background: transparent; border: 0; }

.news-post .article-body .highlight { margin-top: 16px; margin-bottom: 16px; }

.news-post .article-body .highlight pre { margin-bottom: 0; word-break: normal; }

.news-post .article-body .highlight pre, .news-post .article-body pre { padding: 16px; overflow: auto; font-size: 0.875rem; line-height: 1.45; color: #ffffff; background-color: #333333; border-radius: 6px; }

.news-post .article-body pre code { display: inline; max-width: auto; padding: 0; margin: 0; overflow: visible; line-height: inherit; word-wrap: normal; background-color: initial; border: 0; }

.news-post .article-body blockquote { background-color: #fff; border-left: solid 4px #0000001a; margin-bottom: 24px; margin-top: 24px; padding: 0 0 0 24px; }

.news-post .article-body blockquote::before, .news-post .article-body blockquote::after { display: none; }

.news-post .article-body hr { border-bottom: solid 1px #0000001a; margin: 24px 0; width: 100%; }

.news-post .article-body table { margin-bottom: 24px; margin-top: 24px; width: 100%; }

.news-post .article-body table th { border-bottom: solid 2px #00000033; padding: 8px; }

.news-post .article-body table td { border-bottom: solid 1px #0000001a; padding: 8px; }

.news-post .button-box { display: flex; justify-content: center; }

.news-posts * { box-sizing: border-box; }

.news-posts .container { width: 100%; max-width: 1200px; }

.news-posts .posts-container { width: 100%; max-width: 768px; margin: 0 auto; margin-top: 48px; margin-bottom: 80px; padding: 0 24px; }

@media screen and (max-width: 576px) { .news-posts .posts-container { margin-top: 16px; } }

.news-posts .news-list { margin-bottom: 24px; }

/*# sourceMappingURL=main.css.map */