@media (max-width: 1511px) {
  .inner-res {
    max-width: 1219px !important;
  }
}

@media (max-width: 1218px) {
  .inner-res {
    max-width: 926px !important;
  }
}

@media (max-width: 1156px) {
  .title .searchs, .title img.svg-arrow, .title h1, button.brand-button {
    display: none;
  }
  article#article-search {
    min-height: calc(100vh - 55px);
  }
  article#article-planning .title img.svg-arrow, article#article-planning .title h1, article#article-search .title img.svg-arrow, article#article-search .title h1, article#article-contact .title img.svg-arrow, article#article-contact .title h1, article#article-company .title img.svg-arrow, article#article-company .title h1, article#article-access .title img.svg-arrow, article#article-access .title h1, article#article-single .title img.svg-arrow, article#article-single .title h1, article#article-special .title h1 {
    display: block;
  }
  button {
    background-color: rgba(160, 60, 80, 1);
    border: solid 1px rgba(160, 60, 80, 1);
    box-sizing: border-box;
    color: rgba(255, 255, 255, 1);
    cursor: pointer;
    font-size: 1.42rem;
    font-weight: 700;
    width: 144px;
    height: 33px;
  }
  button:hover {
    background-color: rgba(255, 255, 255, 1);
    color: rgba(160, 60, 80, 1);
  }
  button.category-button {
    float: left;
    margin-top: 8px;
    margin-left: 0;
    margin-right: 8px;
    width: 148px;
  }
  .category-list a:nth-child(3n+1) button.category-button {
    margin-left: 0;
  }
  .category-list {
    margin: 0 auto 20px auto;
    overflow: hidden;
    width: 460px;
  }
  .category-list a:nth-child(3n+3) button.category-button {
    margin-right: 0;
  }
  article#article-tech .topinner {
    display: none;
  }
  article#article-solution .topinner {
    display: none;
  }
  article#article-works .topinner, article#article-brand .topinner {
    height: 20px;
  }
  .theme-image {
    background-size: cover;
    background-position: 50% 55%;
    background-repeat: no-repeat;
    width: 100%;
    height: 0;
    padding-top: 30%;
    margin-bottom: 32px;
  }
  article#article-brand button.category-button, article#article-company button.category-button {
    font-size: 11.5px;
  }
}

@media (max-width: 960px) {
  .container-half1 {
    float: left;
    width: 100%;
    padding-right: 8px;
    padding-left: 8px;
  }
  .container-half2 {
    float: left;
    width: 100%;
    padding-right: 8px;
    padding-left: 8px;
  }
  .textarea-padding {
    padding: 0 8px 0 16px !important;
  }
  .container-half1.mb65 {
    margin-bottom: 55px !important;
  }
  article#article-access .container-half1, article#article-access .container-half2 {
    float: left;
    width: 100%;
    padding-right: 0;
    padding-left: 0;
    margin-bottom: 30px;
  }
  .tech-list {
    float: left;
    border-bottom: solid 1px rgba(200, 200, 200, .6);
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    padding: 30px 0 24px 0;
    margin: 0 16px;
    width: calc(100% - 32px);
    height: 204px;
  }
  .tech-list:hover {
    /* background-color: rgba(240,240,240,.6); */
  }
  .tech-list h2 {
    color: rgba(0, 0, 0, 1) !important;
    display: inline-block;
    font-size: 1.99rem !important;
    font-weight: 700 !important;
    float: left;
    text-align: left;
    margin-top: 20px;
    margin-bottom: 14px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    height: 1.7em;
    line-height: 1.75;
  }
  .tech-contents {
    color: rgba(0, 0, 0, 1) !important;
    display: inline;
    font-size: 1.28rem !important;
    font-weight: 400 !important;
    float: left;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    height: 6.72rem;
    line-height: 1.75;
  }
  .tech-thumbnail {
    background-color: inherit;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    float: left;
    margin-right: 32px;
    width: 150px;
    height: 150px;
  }
  .tech-info {
    float: none;
    overflow: hidden;
    width: auto;
  }
  .tech-category {
    color: rgba(255, 255, 255, 1);
    font-family: 'Oswald', sans-serif;
    font-size: 1.28rem;
    font-weight: 700;
    float: left;
    text-align: center;
    margin-right: 15px;
    width: 90px;
    height: 22px;
    line-height: 22px;
  }
  .tech-date {
    color: rgba(0, 0, 0, 1);
    font-size: 1.28rem;
    font-weight: 400;
    float: left;
    padding-top: 5.35px;
    width: 90px;
    height: 22px;
  }
  .container-half {
    float: left;
    width: 100%;
    padding: 0 0 0 0;
  }
  .contents-area {
    overflow: hidden;
    position: relative;
    padding: 0 8px 90px 8px;
    width: 100%;
  }
}

@media (max-width: 925px) {
  .inner-res {
    max-width: 633px !important;
  }
}

@media (max-width: 768px) {
  .category-list2 {
    margin: 0 auto 20px auto;
    overflow: hidden;
    width: 304px;
  }
  button.planning-button {
    margin-top: 15px;
    margin-left: 0;
  }
  .addinfo {
    clear: both;
    background-color: rgba(255, 255, 255, 0.045);
    width: 100%;
    height: auto;
    padding: 35px 16px;
    overflow: hidden;
    position: relative;
    margin-bottom: 35px;
  }
  .subinfo {
    padding-left: 0;
    margin-top: 45px;
  }
  .chartW {
    width: 100%;
  }
  .sns {
    display: none;
  }
  #back {
    display: none;
    position: fixed;
    bottom: 55px;
    right: 0;
    opacity: 0.82;
    z-index: 2;
    filter: brightness(120%);
    -webkit-transition-duration: 0.2s;
    -moz-transition-duration: 0.2s;
    -o-transition-duration: 0.2s;
    -ms-transition-duration: 0.2s;
    transition-duration: 0.2s;
  }
  .main-contents {
    padding: 0;
  }
  .profile {
    background-color: rgba(20, 60, 80, 1);
    padding: 10px 8px 16px 8px;
    overflow: hidden;
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    min-height: auto;
  }
  .profile h1 {
    display: none;
  }
  .profile h1 span {
    font-size: 1.71rem;
    font-weight: 300;
    display: inline;
    vertical-align: middle;
  }
  .profile h2 {
    display: none;
    font-size: 1.71rem;
    font-weight: 300;
    margin: 25px 0 0 0;
    opacity: 0.25;
  }
  .profile h3 {
    font-size: 1.71rem;
    font-weight: 300;
    margin: 8px 0 8px 0;
    margin-left: 96px;
    float: none;
  }
  .profile p {
    font-size: 1.14rem;
    font-weight: 300;
    line-height: 1.5;
    margin-bottom: 0;
    margin-left: 96px;
    float: none;
    word-break: break-all;
  }
  .profile .mail {
    display: none;
  }
  .profile-image img {
    float: left;
    border: solid 2px rgba(255, 255, 255, 0.5);
    border-radius: 100px;
    box-sizing: border-box;
    margin: 4px 0 8px 0;
    width: 80px;
    height: 80px;
  }
  .profile-arrow {
    position: absolute;
    top: 48px;
    left: 0;
    width: auto;
    height: 24px;
    display: none;
  }
  .body {
    float: left;
    background-color: rgba(255, 255, 255, 1);
    color: rgba(0, 0, 0, 1);
    margin-left: 0;
    /*padding: 8px 8px 110px 8px;*/
    padding: 20px 20px 110px 20px;
    position: relative;
    height: auto;
    min-height: calc(100vh - 55px);
    width: 100%;
  }
  .mobile-hidden {
    display: none;
  }
  table.contact {
    border-collapse: collapse;
    display: table;
    font-size: 1.42rem;
    position: relative;
    text-align: left;
    line-height: 1.75;
    width: 100%;
    margin-bottom: 30px;
  }
  table.contact tr {
    border-bottom: solid 1px rgba(0, 0, 0, 0.09);
  }
  table.contact tr th {
    color: rgba(0, 0, 0, 1);
    display: block;
    font-weight: bold;
    min-width: 100%;
    width: 100%;
    padding-top: 16px;
    padding-bottom: 0;
  }
  table.contact tr td {
    color: rgba(0, 0, 0, 1);
    display: block;
    padding-left: 0;
    width: 100%;
    padding-top: 16px;
    padding-bottom: 16px;
  }
  td.width50 input[type="text"], td.width50 input[type="email"], td.width50 input[type="date"] {
    background-color: #ffffff;
    border: 1px solid #c0c0c0;
    box-sizing: border-box;
    color: #000000;
    font-size: 1.28rem;
    padding: 0 0.5em;
    width: 49.5%;
    height: 28px;
    margin-right: 1%;
  }
  article#article-planning, article#article-search, article#article-contact, article#article-company, article#article-access, article#article-special {
    margin-top: 0;
    min-height: calc(100vh - 55px);
  }
  article#article-single {
    top: 55px;
  }
  article#article-planning .topinner, article#article-planning .container h2, article#article-contact .topinner, article#article-contact .container h2, article#article-access .topinner, article#article-access .container h2 {
    display: none;
  }
  article#article-planning .theme-image-box p {
    display: inline-block;
  }
  article#article-contact .theme-image-box p {
    display: inline-block;
  }
  .map {
    width: 100%;
    height: 0;
    padding-top: 57.25%;
  }
  .pc-space {
    margin-top: 0;
  }
  header {
    border-bottom: none;
  }
  .header {
    position: relative;
    top: 0;
    left: 0;
    padding: 0 16px;
    width: 100%;
    z-index: 4;
  }
  .menu-trigger {
    display: inline-block;
  }
  .searchs, table.tel, nav, #tab {
    display: none;
  }
  .header {
    padding: 0 8px;
  }
  header {
    height: 55px;
  }
  header .logo {
    left: 0;
    top: 20px;
    bottom: 20px;
  }
  .mobile-header ul {
    position: relative;
    overflow-y: auto;
    width: 100%;
  }
  .mobile-header ul li {
    border-top: solid 1px rgba(255, 255, 255, 0.18);
    width: 100%;
    height: 44px;
    line-height: 44px;
  }
  .mobile-header ul li:hover {
    background-color: rgba(255, 255, 255, 0.09);
  }
  .mobile-header .searchs {
    display: inline-block;
    margin: 0;
    width: 100%;
  }
  input[type="text"].searchs, input[type="email"].searchs, input[type="date"].searchs {
    background-color: rgba(255, 255, 255, 0.5);
    border: 1px solid rgba(255, 255, 255, .5);
    box-sizing: border-box;
    color: rgba(255, 255, 255, 1);
    font-size: 1.28rem;
    text-indent: .25em;
    width: 100%;
    height: 44px;
  }
  #svg-slogan {
    width: 80%;
    max-width: 80%;
  }
  #svg-logo {
    width: 40%;
    max-width: 40%;
  }
  #svg {
    top: calc(50% - 55px);
    left: 50%;
    position: relative;
  }
  .mobile-nav {
    display: inline-block;
  }
  article .title {
    padding: 20px 8px 64px 8px;
    position: relative;
    overflow: hidden;
    width: 100%;
    min-height: 120px;
  }
  .title h1, .svg-arrow {
    display: none;
  }
  article#article-tech .theme-image-box p, article#article-solution .theme-image-box p, article#article-company .theme-image-box p, article#article-contact .theme-image-box p, article#article-access .theme-image-box p {
    display: inline-block;
  }
  article#article-works .theme-image-box p {
    display: inline-block;
  }
  article#article-brand .theme-image-box p {
    display: inline-block;
  }
  article#article-works .theme-image-box {
    display: block;
  }
  article#article-brand .theme-image-box {
    display: block;
  }
  article#article-access .theme-image-box {
    display: block;
  }
  article#article-contact .theme-image-box {
    display: block;
  }
  article#article-works .topinner, article#article-brand .topinner, article#article-company .topinner {
    display: none;
  }
  .studio:nth-child(2n+1) {
    margin-left: 0;
  }
  .studio {
    margin: 0 0 32px 0;
    width: 50%;
    height: 0;
    padding-top: 33%;
  }
  .main-contents.wide-contents h1.main-title {
    padding: 36px 0 32px 0 !important;
  }
}

@media (max-width: 767px) {
  .split1 {
    float: none;
    width: 100%;
  }
  .split2 {
    float: none;
    width: 100%;
    margin-right: 0;
  }
}

@media (max-width: 658px) {
  button.planning-button {
    float: none;
    margin-left: 0;
  }
}

@media (max-width: 632px) {
  .inner-res {
    max-width: 320px !important;
  }
  .tag-box {
    cursor: pointer;
    float: left;
    position: relative;
    width: 304px;
    height: 304px;
    margin-right: 0;
    margin-bottom: 8px;
  }
}

@media (max-width: 630px) {
  button.planning-button {
    margin-top: 10px;
    margin-left: 0;
    width: 304px !important;
    height: 33px !important;
  }
  .category-list a:nth-child(2n+1) button.planning-button {
    margin-left: 0;
  }
}

@media (max-width: 500px) {
  #svg-slogan {
    width: 90%;
    max-width: 90%;
  }
  #svg-logo {
    width: 45%;
    max-width: 45%;
  }
}

@media (max-width: 499px) {
  .split3 {
    float: none;
    width: 100%;
    margin-right: 0;
  }
  .split4 {
    float: none;
    width: 100;
    margin-right: 0;
  }
}

@media (max-width: 480px) {
  .container-half1 h2, .container-half2 h2 {
    font-size: 1.57rem;
    font-weight: bold;
    margin-bottom: 22.5px;
    line-height: 1.75;
  }
  .textarea {
    padding: 40px 1em 30px 1em;
  }
  .tech-list {
    float: left;
    border-bottom: solid 1px rgba(200, 200, 200, .6);
    box-sizing: border-box;
    overflow: hidden;
    position: relative;
    padding: 30px 0 24px 0;
    margin: 0 16px;
    width: calc(100% - 32px);
    height: 204px;
  }
  .tech-list:hover {
    /* background-color: rgba(240,240,240,.6); */
  }
  .tech-list h2 {
    color: rgba(0, 0, 0, 1) !important;
    display: inline-block;
    font-size: 1.99rem !important;
    font-weight: 700 !important;
    float: left;
    text-align: left;
    margin-top: 4px;
    margin-bottom: 8px;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
    height: 1.7em;
    line-height: 1.75;
  }
  .tech-contents {
    color: rgba(0, 0, 0, 1) !important;
    display: inline;
    font-size: 1.28rem !important;
    font-weight: 400 !important;
    float: left;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    height: 6.72rem;
    line-height: 1.75;
  }
  .tech-thumbnail {
    background-color: inherit;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    float: left;
    margin-right: 16px;
    width: 31.25%;
    height: 0;
    padding-top: 31.25%;
  }
  .tech-info {
    float: none;
    overflow: hidden;
    width: auto;
  }
  .tech-category {
    color: rgba(255, 255, 255, 1);
    font-family: 'Oswald', sans-serif;
    font-size: 1.28rem;
    font-weight: 700;
    float: left;
    text-align: center;
    margin-right: 15px;
    width: 90px;
    height: 22px;
    line-height: 22px;
  }
  .tech-date {
    color: rgba(0, 0, 0, 1);
    font-size: 1.28rem;
    font-weight: 400;
    float: left;
    padding-top: 5.35px;
    width: 90px;
    height: 22px;
  }
  .theme-image {
    background-size: cover;
    background-position: 50% 55%;
    background-repeat: no-repeat;
    width: 100%;
    height: 0;
    padding-top: 50%;
    margin-bottom: 32px;
  }
  .studio {
    margin: 0 0 32px 0;
    width: 50%;
    height: 0;
    padding-top: 50%;
  }
  .brand-list {
    overflow: hidden;
    width: 100%;
    height: 240px;
  }
  .brand-description {
    height: 110px;
    -webkit-line-clamp: 5;
  }
  .brand-image {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    background-size: cover;
    float: left;
    width: 31.875%;
    height: 0;
    padding-top: 31.875%;
  }
  .brand-logo {
    margin-left: calc(31.875% + 16px);
    width: calc(68.125% - 16px);
  }
  .brand-description {
    margin-left: calc(31.875% + 16px);
    width: calc(68.125% - 16px);
  }
  .brand-description p {
    margin-left: 16px;
  }
  button.brand-detail-button {
    font-size: 1.42rem;
    font-weight: 700;
    margin: 11px 0 0 calc(31.875% + 16px);
    width: 144px !important;
    height: 33px !important;
  }
}

@media (max-width: 474px) {
  button {
    background-color: rgba(160, 60, 80, 1);
    border: solid 1px rgba(160, 60, 80, 1);
    box-sizing: border-box;
    color: rgba(255, 255, 255, 1);
    cursor: pointer;
    font-size: 1.42rem;
    font-weight: 700;
    width: 143px !important;
    height: 33px;
  }
  button:hover {
    background-color: rgba(255, 255, 255, 1);
    color: rgba(160, 60, 80, 1);
  }
  button.category-button {
    float: left;
    margin-top: 8px;
    margin-left: 0;
    margin-right: 8px;
  }
  .category-list {
    margin: 0 auto 20px auto;
    overflow: hidden;
    width: 294px;
  }
  .category-list a:nth-child(3n+3) button.category-button {
    margin-right: 8px;
  }
  .category-list a:nth-child(2n+2) button.category-button {
    margin-right: 0;
  }
}

@media (max-width: 400px) {
  footer br {
    display: inline;
  }
}

iframe.wp-embedded-content {
  width: 100%;
}