/* common - 基礎設定
-------------------------------------------------- */
.sub_ttl {
  margin-bottom: 3rem;
  font-family: "Josefin Sans", sans-serif;
  font-size: 4rem;
  font-weight: 400;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .1em;
}

/* パンくず - breadcrumb_list
-------------------------------------------------- */
.breadcrumb_list {
  margin: 2rem auto 5rem;
  max-width: 1280px;
}
.breadcrumb_list > li,
.breadcrumb_list > li a {
  padding: 0 1rem;
}
.breadcrumb_list > li:first-child {
  padding-left: 0;
}
.breadcrumb_list > li:last-child {
  padding: 0;
}
.breadcrumb_list > li:not(:last-child)::after {
  content: '/';
}

body.contact .breadcrumb_list > li,
body.contact .breadcrumb_list > li a {
  color: #fff;
}

.breadcrumb_tag_list > li:nth-child(2),
.breadcrumb_tag_list > li:nth-child(2) a {
  padding-left: 0;
}

/* ゴーランドとは - about
-------------------------------------------------- */
.about_box {
  padding: 10rem 2rem;
  background-image: url( 'data:image/svg+xml;utf8,<svg width="100%" height="100%" viewBox="0 0 1000 250" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;"><g><path d="M92.861,5.915c27.569,-0 46.911,9.922 62.743,25.519c0.683,0.674 0.659,1.799 -0.047,2.446l-23.614,21.764c-0.623,0.572 -1.568,0.576 -2.211,0.02c-10.258,-8.852 -22.853,-14.308 -36.871,-14.308c-27.279,-0 -44.872,20.395 -44.872,46.142c-0,28.302 20.141,46.146 45.636,46.146c25.641,0 38.655,-13.563 40.6,-27.702c0.137,-0.992 -0.686,-1.87 -1.686,-1.87l-40.043,-0c-0.925,-0 -1.677,-0.749 -1.677,-1.678l-0,-29.024c-0,-0.925 0.752,-1.677 1.677,-1.677l80.784,-0c0.925,-0 1.674,0.752 1.674,1.677l-0,12.854c-0,45.131 -26.511,82.861 -82.093,82.861c-48.443,0 -82.861,-35.946 -82.861,-81.587c-0,-45.637 34.418,-81.583 82.861,-81.583" style="fill:%23F4F4F4;fill-rule:nonzero;"/><path d="M390.132,11.012l34.124,0c0.925,0 1.678,0.753 1.678,1.678l-0,115.46c-0,0.925 0.748,1.673 1.677,1.673l63.187,0c0.929,0 1.678,0.753 1.678,1.678l-0,30.811c-0,0.926 -0.749,1.674 -1.678,1.674l-100.666,0c-0.925,0 -1.678,-0.748 -1.678,-1.674l0,-149.622c0,-0.925 0.753,-1.678 1.678,-1.678" style="fill:%23F4F4F4;fill-rule:nonzero;"/><path d="M607.809,121.412c1.219,-0 2.031,-1.259 1.525,-2.368l-16.511,-36.386l-0.514,0l-16.754,36.374c-0.509,1.113 0.302,2.38 1.525,2.38l30.729,-0Zm-17.24,-115.495l4.504,-0c0.647,-0 1.239,0.368 1.513,0.956l73.371,154.719c0.525,1.113 -0.286,2.395 -1.517,2.395l-36.578,-0c-0.643,-0 -1.231,-0.365 -1.509,-0.945l-6.739,-13.916c-0.278,-0.576 -0.866,-0.945 -1.509,-0.945l-58.302,0c-0.651,0 -1.243,0.377 -1.517,0.965l-6.491,13.876c-0.275,0.588 -0.871,0.965 -1.521,0.965l-36.57,-0c-1.231,-0 -2.042,-1.278 -1.517,-2.392l72.865,-154.718c0.278,-0.588 0.87,-0.96 1.517,-0.96" style="fill:%23F4F4F4;fill-rule:nonzero;"/><path d="M695.343,11.012l36.934,0c0.564,0 1.094,0.286 1.403,0.761l55.825,85.299c0.913,1.395 3.081,0.749 3.081,-0.917l0,-83.465c0,-0.925 0.753,-1.678 1.678,-1.678l33.873,0c0.925,0 1.673,0.753 1.673,1.678l0,149.622c0,0.926 -0.748,1.674 -1.673,1.674l-36.429,0c-0.565,0 -1.094,-0.282 -1.403,-0.756l-56.084,-85.566c-0.913,-1.392 -3.077,-0.745 -3.077,0.921l-0,83.727c-0,0.926 -0.753,1.674 -1.678,1.674l-34.123,0c-0.926,0 -1.678,-0.748 -1.678,-1.674l-0,-149.622c-0,-0.925 0.752,-1.678 1.678,-1.678" style="fill:%23F4F4F4;fill-rule:nonzero;"/><path d="M909.134,129.805c23.979,-0 42.344,-16.837 42.344,-42.603c0,-23.724 -16.068,-42.348 -42.344,-42.348l-13.375,0c-0.925,0 -1.677,0.753 -1.677,1.678l-0,81.595c-0,0.929 0.752,1.678 1.677,1.678l13.375,-0Zm-52.551,-117.201c-0,-0.929 0.749,-1.681 1.678,-1.681l51.638,-0c45.154,-0 80.101,33.167 80.101,76.279c-0,40.815 -31.121,76.785 -80.101,76.785l-51.638,0c-0.929,0 -1.678,-0.753 -1.678,-1.678l-0,-149.705Z" style="fill:%23F4F4F4;fill-rule:nonzero;"/><path d="M280.175,132.203c-24.676,-0 -44.684,-20.008 -44.684,-44.684c0,-24.677 20.008,-44.684 44.684,-44.684c24.677,-0 44.684,20.007 44.684,44.684c0,24.676 -20.007,44.684 -44.684,44.684m0,-126.193c-45.017,0 -81.508,36.492 -81.508,81.509c-0,45.017 36.491,81.512 81.508,81.512c45.018,0 81.509,-36.495 81.509,-81.512c-0,-45.017 -36.491,-81.509 -81.509,-81.509" style="fill:%23F4F4F4;fill-rule:nonzero;"/></g></svg>' );
  background-size: contain;
  background-repeat: space;
  background-repeat: repeat-y
}
body.about h2.main_ttl {
  margin-top: 0;
  margin-bottom: 8rem;
}

.about_ttl {
  margin-bottom: 5rem;
  font-family: "Josefin Sans", sans-serif;
  white-space: nowrap;
  letter-spacing: .1em;
}
.about_img {
  display: block;
  margin: 0 auto;
  max-width: 980px;
}

.about_box .text_space {
  font-weight: 500;
  letter-spacing: .1em;
}

body.about .life_is_more_link .list_lifeismore {
  padding: 0;
}
body.about .life_is_more_link .list_lifeismore > li {
  width: 100%;
}

.about_txt {
  margin: 0 auto 5rem;
  line-height: 2.5;
  max-width: 450px;
}


.company_box {
  padding: 10rem 2rem 15rem;
  border-bottom: 1px solid #333;
}

.company_info {
  margin: 0 auto;
  max-width: 1280px;
  border-top: 1px solid #333;
  border-bottom: 1px solid #333;
}
.company_info h3 {
  font-weight: normal;
}
.company_right {
  padding: 5rem 0 5rem 5rem;
  border-left: 1px solid #333;
}

.tbl_company table,
.tbl_company table tr td,
.tbl_enkaku table,
.tbl_enkaku table tr td {
  border: none;
}
.tbl_company table tr td:first-child {
  padding-right: 2.5rem;
  width: 20%;
  line-height: 2.5;
  vertical-align: top;
  text-align: justify;
  text-align-last: justify;
}
.tbl_company table tr td:last-child {
  padding-left: 2.5rem;
  width: 80%;
  line-height: 2.5;
}
.tbl_company table tr:last-of-type {
  border-top: 1px solid #333;
}
.tbl_company table tr:nth-child(6) td {
  padding-bottom: 2rem;
}
.tbl_company table tr:last-of-type td {
  padding-top: 2rem;
}

.tbl_enkaku table tr td:first-child {
  padding-right: 1rem;
  width: 25%;
}
.tbl_enkaku table tr td:last-child {
  padding-left: 1rem;
  width: 75%;
}

.enkaku_info {
  border-top: none;
}

.people_box {
  padding: 8rem 2rem;
}
.people_info {
  margin: 5rem auto 0;
  padding: 10rem 2rem;
  max-width: 1280px;
  border-top: 1px solid #333;
}

.people_name {
  font-size: 3rem;
  letter-spacing: .5em;
}
.people_name > span {
  display: block;
  margin-top: 1rem;
  font-family: "Josefin Sans", sans-serif;
  font-weight: normal;
  font-size: 1.8rem;
}

.people_post {
  margin: 5rem 0;
  font-size: 1.4rem;
}

.people_txt {
  line-height: 2.25;
}

.people_info_txt p.people_txt:not(:last-child) {
  margin-bottom: 2rem;
}


/* クリエイティブの考え方 - creative
-------------------------------------------------- */
.creative_box, .creative_think, .creative_activity {
  margin: 0 auto !important;
  padding: 10rem 2rem;
  max-width: 1280px;
}
.creative_box svg {
  width: 100%;
  height: 100%;
}
.creative_txt {
  line-height: 2.5;
}
.creative_txt p {
  font-weight: 500;
}
.creative_txt p:not(:last-child) {
  margin-bottom: 2rem;
}

.btn_square a {
  padding: 2.5rem 2rem;
  border-width: 1px;
}
.btn_square a:hover {
  opacity: 1;
  color: #fff;
  background-color: #333;
}

.border_bottom { border-bottom: 1px solid #333; }

.creative_list {
  margin-bottom: 10rem;
}
.creative_list h3 {
  margin: 2rem 0 1rem;
}


/* お知らせ - news
-------------------------------------------------- */
body.news main {
  margin: 0 auto;
  padding: 5rem 2rem;
  max-width: 1280px;
}


/* プロジェクト - project
-------------------------------------------------- */
body.project main, body.category main,
body.tag main {
  margin: 0 auto;
  padding: 5rem 2rem;
  max-width: 1280px;
}
body.tag .sub_ttl > span,
body.project .sub_ttl > span,
body.category .sub_ttl > span {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  padding: .5rem 2rem 0;
  width: fit-content;
  font-size: 2.1rem;
  color: #fff;
  background-color: #333;
}


.project_blog_list {
  margin: 5rem auto;
  max-width: 1280px;
  flex-wrap: wrap;
}

.project_blog_list > li {
  margin-bottom: 6%;
  width: 22%;
}
.project_blog_list > li:not(:nth-child(4n)) {
  margin-right: 4%;
}

.project_blog_list > li.error_txt {
  margin: 0 auto;
  width: 100% !important;
}

.thumbnail_img {
  flex-direction: column;
}
.thumbnail_img > a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.thumbnail_img > a:hover {
  opacity: 1;
}
.thumbnail_img > a::before {
  content: '';
  display: block;
  padding-top: 100%;
}
.thumbnail_img img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  object-fit: cover;
  transition: all ease .6s;
}
.thumbnail_img > a:hover img {
  opacity: 1;
  transform: scale( 1.2 );
}

.blog_ttl {
  margin: 1rem 0;
  font-size: 1.8rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.blog_tag_list {
  display: inline-flex;
  flex-wrap: wrap;
}
.blog_tag_list > li {
  margin-right: 1rem;
  margin-bottom: .5rem;
  font-size: 1.2rem;
}
.blog_tag_list > li a {
  border-bottom: 1px solid #333;
}

/* 404 - notfound
-------------------------------------------------- */
body.error404 main {
  margin: 0 auto;
  padding: 5rem 2rem;
  max-width: 1280px;
}

/* お問い合わせ - contact
-------------------------------------------------- */
body.contact main {
  padding: 5rem 2rem;
  background-color: #333;
}

body.contact main .page_content {
  margin: 0 auto;
  max-width: 980px;
}

body.contact main .sub_ttl,
body.contact main p {
  color: #fff;
}

body.contact main p {
  margin-bottom: 5rem;
}
body.contact main p > span {
  font-size: 1.2rem;
}


body.contact main .contact_main p {
  margin-bottom: 2rem;
}
.wpcf7 {
  margin: 5rem 0;
}

.contact_main ::placeholder {
  color: #555;
  font-weight: bold;
}
.contact_main p input, .contact_main p textarea {
  padding: 1rem;
  width: 100%;
  border: none;
}

.wpcf7-form-control-wrap {
  position: static;
}
.wpcf7-spinner {
  display: block;
  margin: 2rem auto 0;
}
.wpcf7-response-output {
  margin-top: 0;
  color: #fff;
  background-color: #46b450;
  border-radius: 50vh;
  text-align: center;
}
.wpcf7 form.invalid .wpcf7-response-output {
  background-color: #ffb900;
}

.btn_submit {
  cursor: pointer;
  padding: 1rem;
  width: 100%;
  border: none;
  border-radius: 50vh;
  font-weight: bold;
  color: #fff;
  background-color: rgba( 163, 164, 167, 1 );
  letter-spacing: .1em;
  transition: all ease .6s;
}
.btn_submit:hover {
  background-color: rgba( 70, 130, 180, 1 );
}


/* pagenavi - ページネーション
-------------------------------------------------- */
.wp-pagenavi {
  margin-bottom: 5rem;
  display: flex;
  display: -ms-flexbox;
  display: -webkit-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.wp-pagenavi .pages {
  padding: .5rem 1rem;
  color: #333;
  border: none;
  font-weight: bold;
  border-bottom: 1.5px solid #333;
}
.wp-pagenavi .current {
  margin: 0 1rem;
  padding: .5rem 1rem;
  color: #fff;
  background-color: #333;
  border: none !important;
}
.wp-pagenavi .page,
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink  {
  display: block;
  padding: .5rem;
  color: #333;
  border: none;
}
.wp-pagenavi .page {
  font-weight: bold;
  border-bottom: 1.5px solid #333;
}
.wp-pagenavi .previouspostslink {
  margin: 0 1rem;
}
.wp-pagenavi .nextpostslink {
  margin-left: 1rem;
}

.wp-pagenavi .extend {
  border: none;
}
.wp-pagenavi .first,
.wp-pagenavi .last {
  margin-left: 1rem;
  padding: .5rem 2rem;
  color: #fff;
  background: #333;
  border-radius: 50vh;
}



/* サイトマップ - sitemap
-------------------------------------------------- */
body.sitemap main, body.privacypolicy main {
  padding: 5rem 2rem 10rem;
}