@media screen and (max-width:800px) {

body, h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, caption, th, td, img, form {
	-webkit-text-size-adjust: 100%;
}

textarea{
	font-size: 100%;
}

img {
	max-width: 100%;
	height: auto;
}

hr{
	display: none;
}

html{
	min-height: 620px;
	height: 100%;
	overflow-y: scroll;
}

iframe[name="google_conversion_frame"]{
	position: absolute; top: 0;
}

body{
	height: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

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

.sp_view {
    display: block !important;
}

.pc_view{
	display: none !important;
}

.header-content {
    padding: 28px 4%;
}

.header-logo {
    width: 200px;
}

.header-policy-links {
    width: 88%;
    margin: 0 auto 0;
}

.header-policy-links li {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 24px;
}

.header-policy-links li a{
}

#g-nav.panelactive {
    display: flex;
    justify-content: flex-start;
    padding: 120px 0 40px;
    width: 100%;
    max-width: 100%;
}

.main-section {
    padding-top: 160px;
}

.main-section__content {
    margin: 0;
}

.main-visual-catchphrase {
    width: 100%;
}

.catchphrase-image img {
    width: 44%;
    margin: 0 auto;
}

.catchphrase-item-tsutawari {
    display: flex;
    justify-content: flex-start;
    width: 100%;
    flex-direction: column;
}

.company-info {
    margin: 0 auto;
    width: 88%;
}

.company-info__text {
    font-size: 1rem;
    margin-bottom: 40px;
    /* text-align: right; */
    margin-top: 32px;
}

.news-section {
    padding-left: 16px;
    padding-right: 16px;
    width: 88%;
    box-sizing: border-box;
    margin: 40px auto 0;
}

.news-section__header {
    justify-content: flex-start;
    margin-bottom: 12px;
    gap: 12px;
}

.news-section__header h2 {
    font-size: 1.4rem;
}

.catchphrase-item-tsutawari .catchphrase-image {
    width: 100%;
}

.catchphrase-item-hirogatte,
.catchphrase-item-tsunagari {
    display: none;
}

.main-visual-slide {
    display: none;
}

.main-section__footer {
    display: flex;
    flex-direction: column;
    padding: 0;
}

.top-about-section {
    overflow: hidden;
    margin-top: 0;
    padding-top: 160px;
}

.about-bubble-svg {
    transform: translate(-50%, -50%);
    left: 50%;
    top: 50%;
    width: 160%;
    height: 160%;
    max-width: unset;
}

.about-bubble-container {
    width: 100%;
    height: auto;
    margin-bottom: 140px;
}

.about-bubble-content {
    width: 80%;
    margin: 0 auto;
    height: auto;
}

.about-bubble-content h2 {
    font-size: 2.6rem;
    margin-bottom: 32px;
    text-align: center;
}

.about-bubble-content p:first-child {
    font-weight: 400;
}

.about-bubble-container__button {
    margin-top: 32px;
}

.common-arrow_white {
    width: 32px;
    height: 32px;
    background-size: 16px;
}

.top-about-text-group span {
    margin-right: 32px;
}

.top-about-illustration-content {
    width: 400%;
}

.top-about-illustration-group div {
    aspect-ratio: 4 / 4;
}

.strengths-section {
    overflow: hidden;
    padding: 100px 0;
}

.stats-card-header {
    margin-bottom: 32px;
}

.card-group {
    display: flex;
    flex-direction: column;
    padding: 0;
    width: 88%;
    margin: 0 auto;
}

.stats-card {
    width: 100%;
    box-sizing: border-box;
    border-right: none;
    border-top: solid;
    padding: 32px 0;
    /* padding-bottom: 32px; */
}

.stats-card:last-child {
    border-bottom: solid;
}

.partners-section {
    margin-top: 48px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    padding-left: 0;
    width: 100%;
}

.partners-text {
    width: 88%;
    margin: 0 auto 20px;
}

.partners-marquee {
    width: 100%;
}

.flow_right.partners-marquee-content {
    animation: partnersScroll_right 80s linear infinite;
}

@keyframes partnersScroll_right {
    0% {
        transform: translateX(-50%);
    }
    100% {
        transform: translateX(0);
    }
}

.solution-section {
    padding: 100px 0 60px;
    overflow: hidden;
}

.solution-section__subtitle {
    display: none;
}

.solution-section__wrapper {
    display: flex;
    flex-direction: column;
    width: 88%;
    margin: 0 auto;
    gap: 40px;
}

.solution-section__right {
    width: 100%;
}

.solution-section__drawer {
    padding: 0 32px;
}

.solution-section__card-plus::before {
    content: '+';
    top: 50%;
    left: 52%;
}

.solution-section__card {
    padding: 0 0 24px;
}

.solution-section__left {
    position: relative;
    top: 0;
}

.solution-section__title {
    font-size: 2.4rem;
    font-weight: bold;
    margin-bottom: 0;
    line-height: 1.6;
}

.solution-section__grid {
    margin-bottom: 20px;
    padding: 32px 20px 44px;
    border-radius: 8px;
}

.solution-section__grid:last-child{
	margin-bottom: 0;
}

.solution-section__card-example {
    font-size: 1.4rem;
}

.solution-section__card-action {
    top: 96px;
}

.solution-section__card-title {
    font-size: 1.8rem;
    margin-bottom: 20px;
}

.solution-section__card-text {
    font-size: 1.1rem;
    width: 180px;
}

.solution-section__drawer-grid {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.solution-section__drawer.is-open {
    padding: 32px;
    margin-top: 64px;
}

.solution-section__drawer-title {
    font-size: 1.6rem;
    line-height: 1.6;
}

.thanks-section__card-date {
    font-size: 1.2rem;
}

.thanks-section__card-text {
    font-size: 1.2rem;
}

.thanks-section__card-text-number {
    font-size: 1.8rem;
}

.solution-section__drawer-item-image {
    padding-top: 64%;
    border-radius: 4px;
}

.works-section {
    padding: 100px 0;
}

.works-section__side-scroll--list-wrapper {
    height: auto;
    padding-top: 0;
}

.works-section__side-scroll--list {
    transform: unset !important;
    display: flex;
    flex-direction: column;
    position: relative;
}

.works-section__title {
    margin: 0 auto 48px;
    width: 88%;
}

.works-section__title h2 {
    font-size: 2.4rem;
    line-height: 1.6;
}

.works-section__side-scroll--item-image-wrapper,
.works-section__side-scroll--item-image {
    border-radius: 0;
}

.works-section__card-arrow {
    display: none;
}

.works-section__side-scroll--item {
    width: 100%;
    margin-bottom: 48px;
}

.works-section__side-scroll--item-content {
    width: 88%;
    margin: 0 auto;
}

.works-section__side-scroll--item-title {
    margin-bottom: 12px;
}

.industry-list h3 {
    font-size: 1.6rem;
    margin-bottom: 24px;
}

.industry-list {
    padding: 24px 20px;
    width: 88%;
}

.industry-grid {
    gap: 12px 3%;
}

.industry-item {
    white-space: unset;
    width: auto;
    padding: 12px 12px;
}

.works-section__side-scroll .common-link__button {
    display: flex !important;
    border: solid 1px #fff;
    color: #fff;
    margin: 0 auto 80px;
}

.services-section {
    padding: 100px 0 0;
}

.services-section__title {
    text-align: left;
    margin: 0 auto 48px;
    width: 88%;
}

.services-section__title h2 {
    font-size: 2.4rem;
    line-height: 1.6;
}

.services-section__gridlist {
    width: 88%;
    margin: 0 auto;
}

.services-section__card {
    width: 48%;
    padding: 24px 24px;
    border-radius: 8px;
}

.services-section__card-content {
    gap: 16px;
    position: unset;
}

.services-section__card-arrow {
    display: none;
}

.services-section__card--video {
    display: none;
}

.services-section__card--tall .services-section__card-content--web, .services-section__card--tall .services-section__card-content--drone, .services-section__card--extra-tall .services-section__card-content--web {
    margin-top: 0;
}

.services-section__grid {
    display: flex;
    gap: 20px 4%;
    flex-wrap: wrap;
    margin: 0;
}

.services-section__card {
    width: 48%;
    display: flex;
    justify-content: flex-end;
}

.services-section__card--medium .services-section__card-content, .services-section__card--large .services-section__card-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.services-section__card-content--detail {
    width: 100%;
    order: 2;
}

.services-section__card-text {
    display: none;
}

.services-section__card-image {
    order: 1;
    width: 100%;
    padding-top: 100%;
    border-radius: 0;
    margin-top: 0;
}

.services-section__card--medium .services-section__card-image-container,
.services-section__card--large .services-section__card-image-container {
    overflow: hidden;
    width: 100%;
}

.services-section__card-title {
    order: 2;
    font-size: 1.2rem;
    margin-bottom: 0;
}

.services-section__card-title-3dcad {
}

.services-section__contact {
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding-bottom: 0;
    padding-top: 30px;
}

.services-section__contact--left {
    margin-left: 0;
}

.services-section__contact--title {
    font-size: 1.6rem;
    margin-bottom: 20px;
}

.services-section__contact--subtitle {
    margin-bottom: 32px;
    line-height: 1.8;
    font-size: 1.2rem;
}

.services-section__contact .common-link__button {
    width: 100%;
    justify-content: space-between;
    color: #000;
}

.services-section__contact--circle {
    width: 120%;
    transform: translate(-50%, -50%);
    left: 50%;
    top: 25%;
}

.services-section__card--bgimg01,
.services-section__card--bgimg02 {
    display: none;
}

.services-section__card-image--web {
    background-image: url("../images/home/top_service_web_sp.svg");
}

.services-section__card-image--drone {
    background-image: url("../images/home/top_service_drone_sp.svg");
}

.services-section__card-image--design {
    background-image: url("../images/home/top_service_drawing_sp.svg");
}

.services-section__card-image--print {
    background-position: top 20% center;
    background-size: 108%;
}

.blog-section {
    display: flex;
    flex-direction: column;
    padding: 100px 0;
    gap: 48px;
}

.blog-section__left {
    max-width: unset;
    width: 88%;
    margin: 0 auto;
}

.blog-section__title {
    font-size: 2.4rem;
    margin-bottom: 24px;
}

.blog-section__subtitle {
    font-size: 1.2rem;
    margin-bottom: 0;
}

.blog-section__card {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.blog-section__card-arrow {
    display: none;
}

.blog-section__card-title {
    font-size: 1.6rem;
    margin-bottom: 0;
}

.blog-section__card-text {
    display: none;
}

.blog-section__right {
    width: 88%;
    margin: 0 auto;
}

.blog-section__card-image {
    width: 100%;
    padding-top: 64%;
}

.blog-section__card-content {
    padding-bottom: 0;
}

.contact-section {
    padding: 80px 0px 160px;
}

.contact-section__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

.contact-section__text-block {
    text-align: center;
}

.contact-section__text-block h2 {
    font-size: 2.4rem;
}

.contact-section__text-block p {
    font-size: 1.2rem;
    line-height: 1.8;
}

.contact-section__scroll-text img {
    height: 123px;
}

.contact-button {
    font-size: 1.4rem;
}

.footer {
    padding: 80px 0 140px;
    overflow: hidden;
}

.footer-logo {
    margin-bottom: 0;
}

.footer-logo img {
    margin-bottom: 0;
}

.footer-left {
    flex: unset;
    margin-bottom: 64px;
}

.footer-sitemap {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.footer-sitemap ul {
    gap: 32px;
}

.footer-top {
    display: block;
    width: 80%;
    margin: 0 auto;
}

.footer-policy-links {
    gap: 24px;
    justify-content: center;
    width: 80%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.footer-sitemap ul:not(:first-child){
  display: none;
}

.footer-logo h2,
.footer-address,
.map-btn,
.footer-links,
.footer-line {
    display: none;
}

.footer-bottom {
    padding: 88px 0 32px;
}

.footer-copy {
    text-align: center;
    width: 100%;
}



.common-link__button {
    padding: 12px 12px 12px 24px;
    font-size: 1.6rem;
}



.otherpage-container {
    padding-top: 140px;
    margin: 0 auto 0;
}

.otherpage-container__headline {
    margin: 0 auto 64px;
    padding: 0;
    max-width: unset;
    width: 88%;
}

.otherpage-container__headline h2 {
    font-size: 2.4rem;
    text-align: center;
}

.otherpage-container__headline h3 {
    font-size: 1.8rem;
}

.otherpage-breadcrumb {
    display: none;
}




.service-list__wrapper {
    width: 88%;
    max-width: unset;
    padding: 0;
    gap: 20px 4%;
}

.service-list__item {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 48%;
}

.service-list__thumbnail {
    width: 100%;
}

.service-list__content {
    width: 100%;
}

.service-list__title {
    font-size: 1.2rem;
    margin-bottom: 0;
    line-height: 1.5;
}

.service-list__catchcopy {
    display: none;
}

.service-list__item .services-section__card-arrow {
    display: none;
}

.services-section__contact--right {
    width: 72% !important;
    height: 0;
    padding-top: 74%;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    position: relative;
    margin: 24px auto 0;
    margin-right: 60px !important;
    z-index: 100;
}

.related-links {
    background-color: #fff;
    padding: 64px 0 48px;
    position: relative;
    z-index: 100;
}

.related-links__list {
    padding: 0;
    max-width: unset;
    width: 88%;
    flex-direction: column;
}

.related-links__item {
    width: 100%;
    position: relative;
}



.service-section {
    margin-bottom: 80px;
}

.service-section__wrapper {
    display: flex;
    flex-direction: column;
    padding: 0;
    max-width: unset;
    width: 88%;
}

.otherpage-anchor-nav {
    display: none;
}

.single-service .otherpage-container__headline h2{
    text-align: left;
}

.single-service .otherpage-container__headline {
    margin: 0 auto 32px;
}

.service-section__block {
    padding: 40px 6%;
}

.service-section__body h4 {
    font-size: 1.6rem;
}

.service_use h3 {
    font-size: 1.8rem;
}

.service_use strong {
    font-size: 1.4rem;
}

.service-section__block {
    gap: 32px;
    margin-bottom: 40px;
}

.service-section__faq {
    padding: 32px 6%;
    gap: 32px;
    margin-bottom: 40px;
}

.service-section__faq-title {
    margin-bottom: 0;
}

.service_strength p {
    margin-bottom: 8px;
}

.service-section__related-works {
    padding: 32px 6%;
    margin-bottom: 40px;
}

.service-section__related-link {
    padding: 32px 6%;
    margin-bottom: 40px;
}

.service_faq_01_q, .service_faq_02_q, .service_faq_03_q, .service_faq_04_q, .service_faq_05_q {
    font-size: 1.4rem;
    margin-bottom: 20px;
}

.service_faq_01_a, .service_faq_02_a, .service_faq_03_a, .service_faq_04_a, .service_faq_05_a {
    line-height: 1.6;
}

.service-section__related-works-title h3 {
    font-size: 1.8rem;
}

.service-section__related-link-title h3 {
    font-size: 1.8rem;
}

.service_use p:last-child {
    margin-bottom: 0;
}




.certificationspage .otherpage-container__headline {
    margin-bottom: 80px;
}

.certifications-section__list {
    max-width: unset;
    width: 88%;
    padding: 0;
}

.certifications-section__list__item__right {
    order: 1;
    width: 100%;
}

.certifications-section__list__item {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.certifications-section__list__item__left {
    order: 2;
}




.newspage-section {
    padding: 0;
    max-width: unset;
    width: 92%;
}

.newspage-section__accordion-header {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.newspage-section__accordion-header {
    padding: 24px 16px;
    width: 100%;
}

.newspage-section__accordion-date{
    font-size: 1.2rem;
    font-weight: 400;
}

.newspage-section__accordion-content {
    margin-left: 0;
    padding: 0 20px;
}

.newspage-section__accordion-title {
    padding-right: 40px;
    line-height: 1.6;
}

.newspage-section__list {
    margin-bottom: 56px;
}

.wp-pagenavi {
    margin: 0 auto 80px;
}

.wp-pagenavi .pages {
    margin-right: 0;
    font-size: 1.4rem;
    border-radius: 5px;
    border: 1px solid #AEADAD;
    background: #E4E4E4;
    display: block;
    padding: 12px 20px;
}

.wp-pagenavi .page,
.wp-pagenavi .current {
    display: none !important;
}




.blogpage-section {
    display: flex;
    flex-direction: column;
    max-width: unset;
    padding: 0;
    width: 88%;
    margin-bottom: 120px;
}

.blogpage-section__featured {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 32px;
}

.blogpage-section__featured-title {
    font-size: 1.4rem;
    margin-bottom: 0;
}

.blogpage-section__featured-thumbnail-wrapper {
    width: 100%;
}

.blogpage-section__main {
    width: 100%;
}

.blogpage-section__details {
    width: 100%;
}

.blogpage-section__list-title {
    font-size: 1.4rem;
}

.blogpage-section__excerpt {
    display: none;
}

.blogpage-section__list {
    display: flex;
    flex-direction: column;
    gap: 32px;
    margin-bottom: 48px;
}

.blogpage-section__list-item {
    width: 100%;
}

.blogpage-section__sidebar {
    min-width: unset;
    width: 100%;
}

.blogpage-section__list-item {
    width: 100%;
}

.blogpage-section__list-thumbnail {
    margin-bottom: 12px;
}

.blogpage-section__popular-meta {
    display: flex;
    flex-direction: row;
    gap: 8px;
}

.blogpage-section__popular-title {
    font-size: 1.4rem;
    line-height: 1.6;
}

.blogpage-section__archives {
    margin-bottom: 40px;
}

.blogpage-section__categories {
    margin-bottom: 48px;
}

.blogpage-section__archives-select {
    padding: 16px 24px 16px 16px;
    color: #000;
    font-weight: 700;
}

.blogpage-section__article {
    padding: 16px;
    width: 88%;
    margin: 0 auto 56px;
}

.blogpage-section__article-body h1 {
    font-size: 2.2rem;
    margin: 3rem 0 1.5rem;
}

.blogpage-section__article-body h2 {
    font-size: 2rem;
    margin: 3rem 0 1.5rem;
}

.blogpage-section__article-body h3 {
    font-size: 1.7rem;
    margin: 2.5rem 0 1.2rem;
}

.blogpage-section__article-body h4 {
    font-size: 1.5rem;
    margin: 2rem 0 1rem;
}

.blogpage-section__article-body h5 {
    font-size: 1.3rem;
    margin: 2rem 0 1rem;
}

.blogpage-section__article-body li {
    padding-left: 24px;
}

.blogpage-section__article-body ol li::before {
    width: 1.5em;
    height: 1.5em;
}

.blogpage-section__article-header-meta {
    display: flex !important;
    gap: 12px;
    margin-bottom: 12px;
}

.blogpage-section__article-header .blogpage-section__article-date {
    margin-bottom: 0;
}

.blogpage-section__article-title {
    font-size: 1.6rem;
}

.blogpage-section__article-header {
    padding-bottom: 20px;
    margin-bottom: 24px;
}

.blogpage-section__author-info {
    display: flex;
    margin-top: 32px;
    box-sizing: border-box;
}

.blogpage-section__author-info-details {
}

.blogpage-section__author-info-department {
}

.blogpage-section__author-info .common-link__button {
    font-size: 1.2rem;
    color: #000;
    width: 100%;
    gap: 8px;
    justify-content: space-between;
    min-width: unset;
}

.blogpage-section__author-info-profile p {
    line-height: 1.4;
}

.blogpage-section__author-info-label {
    font-size: 1.6rem;
}

.blogsinglepage .blogpage-section {
    width: 100%;
}

.blogsinglepage .blogpage-section__sidebar {
    width: 88%;
    margin: 0 auto;
}

.blogpage-section__author-posts {
    width: 88%;
    margin: 0 auto;
    padding: 0;
    background-color: unset;
}

.blogpage-section__nav-wrapper {
    padding: 32px 4%;
    border-top: solid 1px;
}

.blogpage-section__nav-list {
    position: unset;
    transform: unset;
    display: flex;
    justify-content: center;
    border-bottom: solid 1px;
    border-top: solid 1px;
    padding: 32px 0;
}

.blogpage-section__nav-prev {
    width: 50%;
    padding-right: 0;
}

.blogpage-section__nav-next {
    border-left: none;
    padding-left: 0;
    width: 50%;
    text-align: right;
}


.contactpage-section {
    padding: 0;
    max-width: unset;
}

.contactpage-section-inner {
    display: flex;
    flex-direction: column;
    padding: 40px 6%;
}

.contactpage-section__info-title {
    text-align: center;
}

.contactpage-section__info {
    position: unset;
    height: auto;
}

.contactpage-section__info-description {
    width: 80%;
    margin: 0 auto;
}

.contactpage-section__form {
    padding: 40px 6%;
}

.contactpage-section__form-consent-group {
    display: flex;
    gap: 8px;
    line-height: 1.4;
}

.contactpage-section__info-phone-number {
    font-size: 3rem;
    text-align: center;
    margin-bottom: 12px;
}

.privacypolicy__sections {
    max-width: unset;
    padding: 0;
    width: 88%;
}

.privacypolicy__disclaimer {
    max-width: unset;
    padding: 0;
    width: 88%;
}

.privacypolicy__section-title {
    font-size: 1.8rem;
}

.privacypolicy__disclaimer-item-title {
    font-size: 1.6rem;
}

.privacypolicy__disclaimer-title {
    font-size: 1.8rem;
}

.privacypolicy__section {
    margin-bottom: 32px;
}

.privacypolicy__disclaimer-item {
    margin-bottom: 32px;
}

.privacypolicy__contact-wrapper {
    padding: 12px 16px;
}

.privacypolicy__footer {
    margin-top: 32px;
}

.securitypolicy__registration, .securitypolicy__basics {
    padding: 0;
    width: 88%;
}

.securitypolicy__registration-heading h3 {
    font-size: 1.8rem;
}

.securitypolicy .otherpage-container__headline h2 {
    line-height: 1.4;
}

.securitypolicy__registration-table th, .securitypolicy__registration-table td {
padding: 12px;
}

.securitypolicy__registration-table-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    width: 100%;
    border: solid;
    box-sizing: border-box;
}

.securitypolicy__registration-table {
width: 600px;
}

.securitypolicy__registration-table th,
.securitypolicy__registration-table td {
    font-size: 1.2rem;
}

.securitypolicy__registration-table th {
position: sticky;
left: 0;
z-index: 1;
}

.securitypolicy__registration-text p {
    margin-bottom: 32px;
    text-align: justify;
    line-height: 1.8;
}

/* About */
.map-section {
    margin-bottom: 160px;
}

#map-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 40px;
    height: 40px;
    transform: translate(-50%, -50%) scale(0);
    transform-origin: center center;
    pointer-events: none;
}

.aboutpage__vision {
    max-width: unset;
    padding: 0;
    bottom: -80px;
}

.aboutpage__vision-heading {
    font-size: 2rem;
}

.aboutpage__vision-text {
    font-size: 1.6rem;
}

.aboutpage__vision-content {
    width: 88%;
    margin: 0 auto;
}

.aboutpage__greeting-heading {
    font-size: 1.8rem;
}

.aboutpage__greeting {
    padding: 0;
    max-width: unset;
    width: 88%;
    margin: 0 auto 80px;
}

.aboutpage__greeting-inner {
    display: flex;
    flex-direction: column;
}

.aboutpage__greeting-image-wrapper {
    width: 80%;
    margin: 0 auto;
}

.aboutpage__greeting-content {
    width: 100%;
}

.aboutpage__philosophy-catch {
    padding: 0;
    max-width: unset;
    width: 88%;
    display: flex;
    flex-direction: column;
    margin-bottom: 80px;
}

.aboutpage__philosophy, .aboutpage__catch {
    width: 100%;
}

.aboutpage__timeline-outer {
    position: unset;
    height: auto;
}

.aboutpage__overview-inner {
    display: flex;
    flex-direction: column;
    gap: 48px;
    padding: 80px 0 48px;
    max-width: unset;
    width: 88%;
}

.aboutpage__history-heading-wrapper {
    margin: 0 auto 48px;
    padding: 0;
    width: 88%;
}

.aboutpage__overview-term {
    clear: unset;
    float: unset;
    width: 100%;
}

.aboutpage__overview-definition{
    padding-left: 0;
}

.aboutpage__history {
    padding: 80px 0 0;
}

.aboutpage__timeline-section {
height: auto !important;
}

.aboutpage__timeline-scroll-wrapper {
    overflow: unset;
}

.aboutpage__timeline-scroll {
    position: unset;
    display: flex;
    flex-direction: column;
    padding: 0;
    width: 94%;
    gap: 0;
}

.aboutpage__timeline-track {
display: none;
}

.aboutpage__timeline-item {
    display: flex;
    position: relative;
    padding-left: 80px;
    padding-bottom: 80px;
    flex-direction: column;
    min-width: unset;
}

.aboutpage__timeline-item:last-child {
    padding-bottom: 160px;
}

.aboutpage__timeline-imgwrap img.history_2023_02 {
    margin: 0 auto;
}

.aboutpage__timeline-imgwrap {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.aboutpage__timeline-item::before {
content: "";
display: block;
position: absolute;
top: 8px;
left: 41px;
width: 2px;
height: 100%;
transform: none;
border-radius: 0;
}

.aboutpage__timeline-item::after {
    content: "";
    position: absolute;
    top: 8px;
    left: 32px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #000;
    z-index: 1;
}

.aboutpage__timeline-img-year {
    display: none;
}

.aboutpage__timeline-date {

}

.aboutpage__timeline-date .year {

}

.aboutpage__timeline-date p {
}

.aboutpage__timeline-date p span {
}

.aboutpage__timeline-meta {
    margin-top: 8px;
    margin-bottom: 24px;
}

.aboutpage__timeline-desc {
}

/* 404ページ */
.errorpage.otherpage-container {
    padding-top: 100px;
}

.errorpage__logo {
    width: 56%;
}

.errorpage__content {
    background: unset;
    height: auto;
    padding-top: 0;
}

.errorpage__body {
    position: unset;
    transform: unset;
    width: 88%;
    margin: 0 auto;
}

.errorpage__bg {
    width: 100%;
}

/* 実績紹介 */
.workspage.otherpage-container {
    margin-bottom: 48px;
}

.work-section {
    padding: 0;
    gap: 48px;
}

.work-section__items {
    display: flex;
    flex-direction: column;
}

.workspage .work-section__item {
    width: 100%;
}

.work-section__categories {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 20px 4%;
    padding: 0;
    background-color: unset;
    border-radius: 0;
    width: 88%;
    margin: 0 auto;
}

.work-section__item-wrapper{
    width: 88%;
    margin:0 auto;
}

.work-section__thumbnail-wrapper {
    border-radius: 0;
}

.work-section__industry-filter, .work-section__category-filter {
    width: 48%;
    margin-bottom: 0;
}

.work-section__industry-filter-title, .work-section__category-filter-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 12px 16px;
    font-weight: 700;
    text-align: left;
    background-color: #fff;
    border-radius: 6px;
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    min-width: auto;
    position: relative;
    z-index: 20;
    color: #000;
}
  
.work-section__industry-filter.is-open .work-section__industry-filter-title,
.work-section__category-filter.is-open .work-section__category-filter-title{
    background-color: #E35449;
    color: #fff;
}

.work-section__industry-filter-title::after,
.work-section__category-filter-title::after {
    content: '+';
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    transition: all 0.3s ease;
    background-color: #e35449;
    color: #fff;
}

.work-section__industry-filter.is-open .work-section__industry-filter-title::after,
.work-section__category-filter.is-open .work-section__category-filter-title::after {
    content: '−';
    transform: rotate(180deg);
    background-color: #fff;
    color: #e35449;
}
  
.work-section__industry-filter.is-open .work-section__industry-filter-title::after {
    border-color: #fff;
    color: #e35449;
}

.work-section__industry-filter-list,
.work-section__category-filter-list {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    z-index: 10;
    overflow: hidden;
    visibility: hidden;
    max-height: 0;
    margin-top: 10px;
    padding: 0 16px;
    background-color: #fff;
    border: 1px solid #e0e0e0;
    box-sizing: border-box;
    border-radius: 5px;
    transition: max-height 0.4s ease-out, visibility 0.4s, padding-top 0.4s ease-out, padding-bottom 0.4s ease-out;
}

.work-section__industry-filter.is-open .work-section__industry-filter-list,
.work-section__category-filter.is-open .work-section__category-filter-list {
    visibility: visible;
    max-height: 1000px;
    padding-top: 16px;
    padding-bottom: 16px;
}

.worksingle .work-detail {
    padding: 0;
}

.work-detail__header {
    width: 88%;
    margin: 0 auto 48px;
}

.work-detail__content-wrapper {
    width: 88%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
}

.gallery-slider {
    margin: 24px auto 0;
}

.work-detail__category-list {
    gap: 24px 8px;
}

.work-detail__thumbnail {
    margin-bottom: 48px;
}

.work-detail-section {
    margin-top: 40px;
    padding: 32px 6%;
}

.work-detail__body {
    padding: 32px 6%;
}

.worksingle .service-section__related-works {
    margin-top: 48px;
}

.worksingle .swiper-pagination {
    display: none;
}

.work-detail__body-heading {
    font-size: 2.4rem;
    margin-bottom: 32px;
}

.worksingle .swiper-button-next,
.worksingle .swiper-button-prev {
    width: 24px !important;
    height: 24px !important;
}

.worksingle .swiper-button-next::after,
.worksingle  .swiper-button-prev::after {
    font-size: 1.2rem !important;
}

.worksingle .swiper-caption {
    bottom: 8px;
    left: 4px;
    text-align: center;
    font-size: 1.2rem;
}

.thankyoupage-section__title {
    font-size: 2rem;
    margin-bottom: 32px;
}

.thankyoupage-section {
    max-width: unset;
    padding: 40px;
    text-align: left;
}

.thankyoupage-section__button-wrapper {
    text-align: center;
}

.service-list .services-section__contact--right {
    width: 100% !important;
    margin: 0 auto !important;
    background-size: 100%;
    background-repeat: no-repeat;
    background-position: center bottom;
    padding-top: 72%;
}

.svg-container {
  position: relative;
  overflow: hidden;
}

.svg-container > svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.service-archive__contact--right {
    flex: unset;
    display: unset;
    height: auto;
    position: relative;
    width: 96%;
    right: unset;
    margin-right: 0;
    margin-top: 40px;
}

.services-section .services-section__contact--right {
    position: relative;
}

.not_category{
    width: 88%;
    margin:0 auto;
}


















}




















