@charset "UTF-8";
html{
  scrollbar-gutter: stable;
}
body {
  font-family: 'Inter', 'Noto Sans JP', sans-serif;
  color: #262525;
  background: #F5F5F5;
  font-size: 1.6rem;
  line-height: 2em;
  letter-spacing: 0em;
  scrollbar-gutter: stable;
}
/* body.no-scroll.about-page{
  margin-right: 0 !important;
} */
body.no-scroll{
  margin-right: -15px;
}
_::-webkit-full-page-media, _:future, :root body.no-scroll {
  margin-right: 15px;
}
p {
  margin-bottom: 1em;
  line-height: 2em;
}
p:last-child {
  margin-bottom: 0 !important;
}
.button-toggle {
  display: none;
}
.text-right{
  text-align: right;
}

@media screen and (max-width: 767px){
  body.no-scroll{
    margin-right: 0;
  }
}


/*==================================================
head
==================================================*/
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  padding: 0 2.5rem;
  width: 100vw;
  transition: .4s;
  background: rgba(255, 255, 255, 0.9);
}
.site-header .site-title {
  float: left;
  position: relative;
  line-height: 0;
}
.site-header .site-title img {
  width: 10rem;
  line-height: 0;
  vertical-align: bottom;
}
.site-header .site-title, .site-header .gnavi {
  font-weight: bold;
}
.site-header .site-title, .site-header .gnavi > ul > li, .site-header .lang-box {
  display: table;
  font-size: 88.8888888%;
}
.site-header .gnavi > ul > li {
  float: left;
  position: relative;
}
.site-header .site-title a, .site-header .gnavi > ul > li > a, .site-header .lang-box .inner {
  display: table-cell;
  height: 65px;
  vertical-align: middle;
}
.site-header .gnavi > ul > li > a {
  position: relative;
  padding: 0 1.5rem;
}
.site-header .gnavi > ul > li > a:hover {
  opacity: 1;
}
.site-header .gnavi > ul > li > a > span {
  position: relative;
  display: inline-block;
  line-height: 1.8em;
  padding: 0 0.5rem;
  transition: .4s;
  font-size: 1.6rem;
}
.site-header .gnavi > ul > li > a:hover > span {
  color: #D92B42;
}
.site-header .gnavi > ul > li.parent > a > span:after {
  content: "";
  display: inline-block;
  background: url("../img/cmn/arrow_drop_down.svg") no-repeat center;
  background-size: contain;
  width: 1rem;
  height: 0.5rem;
  vertical-align: middle;
  transition: .4s;
  margin: -0.2em 0 0 1rem;
}
.site-header .gnavi > ul > li.parent > a:hover > span:after,
.site-header .gnavi > ul > li.parent.current > a > span:after{
  background-image: url("../img/cmn/arrow_drop_down_red.svg");
}
.site-header .gnavi > ul > li.parent:hover > a > span:after {
  transform: rotate(-180deg);
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .site-header .gnavi > ul > li.parent > a:hover span{
    color: #262525 !important;
  }
  .site-header .gnavi > ul > li > a > span:before{
    display: none !important;
  }
  .site-header .gnavi > ul > li.parent > a:hover > span:after{
    background-image: url(../img/cmn/arrow_drop_down.svg) !important;
  }
}

@media screen and (min-width: 768px) {
  .site-header .gnavi > ul > li > a > span:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 0%;
    height: 2px;
    background: #D92B42;
    transition: .4s;
  }
  .site-header .gnavi > ul > li:hover > a > span:before {
    width: 100%;
  }
}
.site-header .gnavi .child {
  position: absolute;
  top: 65px;
  left: -5%;
  width: 110%;
  text-align: center;
  opacity: 0;
  visibility: hidden;
  transition: .4s;
}
.site-header .gnavi > ul > li:hover .child {
  opacity: 1;
  visibility: visible;
}
.site-header .gnavi .child li {
  border-top: 1px solid #fff;
  color: #000;
}
.site-header .gnavi .child li.current {
  color: #D92B42;
}
.site-header .gnavi .child li a {
  display: block;
  padding: 0.7rem 0;
  background: rgba(255, 255, 255, 0.9);
}
@media screen and (min-width: 768px) {
  .site-header .gnavi .child li a:hover {
    opacity: 1;
    color: #D92B42;
    background: rgba(255, 255, 255, 1);
  }
}
.gnavi .current, .fnavi .current {
  color: #D92B42;
}
.navi-box {
  float: right;
}
.navi-box .navi {
  float: right;
}
.navi-box .lang-box {
  float: right;
  margin-left: 2rem;
}
.navi-box .lang-box .inner {
  padding: 0;
}
.navi-box .lang-box select {
  font-weight: bold;
  text-align: center;
  width: 11.5rem;
  display: block;
  appearance: none;
  outline: none;
  border-radius: 0;
  position: relative;
  background: url("../img/cmn/arrow_drop_down.svg") no-repeat right center;
  background-size: 1rem;
  padding: 0 1.5rem;
}
.navi-box .lang-box .inner {
  position: relative;
}
.navi-box .lang-box .inner::before {
  content: '';
  background: url("../img/cmn/icon_lang.svg") no-repeat center;
  background-size: contain;
  width: 1.6rem;
  height: 1.6rem;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.hamburger {
  display: none;
}
.pin {
  display: block;
  position: relative;
  /*top: -80px;*/
}

@media screen and (max-width: 1280px) {
  .site-header .gnavi > ul > li:hover > a > span:before{
    display: none !important;
  }
  .site-header .gnavi > ul > li > a:hover > span{
    color: #000 !important;
  }
}
/*==================================================
foot
==================================================*/
.site-footer {
  background: #EFEFEF;
  border-top: 2px solid #D92B42;
  padding: 5rem 0 3rem;
}
.site-footer .fnavi li {
  font-size: 2rem;
  text-align: left;
  line-height: 1em;
}
.site-footer .fnavi li li {
  font-size: 88.8888888%;
  margin-top: 2.5rem;
}
.site-footer .sns-list {
  max-width: 60rem;
  width: 100%;
  margin: 5rem auto;
}
.site-footer .sns-list li {
  width: 3.6rem;
}
.site-footer {
  color: #5A5A5A;
  text-align: center;
}
.site-footer address {
  font-size: 88.8888888%;
  font-weight: 300;
}
.btn-pagetop {
  position: fixed;
  bottom: 4rem;
  left: calc(100vw - 6rem);
  width: 2rem;
	visibility: hidden;
	opacity: 0;
	transition: .3s;
}
.btn-pagetop.show{
		visibility:visible;
	opacity: 1;
}
/*==================================================
style
==================================================*/
main {
  overflow: hidden;
}
main.page-top {
  padding-top: 0;
}
section {
  padding: 0 0 15rem;
	position: relative;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}
.col-mid {
  align-items: center;
}
.col-end {
  align-items: flex-end;
}
.col-re {
  flex-direction: row-reverse;
}
.wrap {
  padding: 0 6.5rem;
}
.wrap-m {
  max-width: 100rem;
  width: 100%;
  margin: 0 auto;
}
.wrap-s {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
}
.wrap-sr {
  width: 98%;
	border-bottom: 2px solid #D92B42;
	margin: 8rem auto
}
main .inner {
  padding-left: 3.5rem;
}
main .inner-s {
  padding-left: 2rem;
}
.pad-t00 {
  padding-top: 0 !important;
}
.pad-b00 {
  padding-bottom: 0 !important;
}
.mar-t00 {
  margin-top: 0 !important;
}
.mar-b00 {
  margin-bottom: 0 !important;
}
.txt-center {
  text-align: center;
}
.txt-s {
  font-size: 1.6rem;
  line-height: 2em;
}
/*タイトル*/
.point-tit {
  font-size: 2.8rem;
  font-weight: bold;
  position: relative;
  line-height: 1.5em;
  margin-bottom: 4rem;
}
.point-tit:before {
  content: "";
  width: 2rem;
  height: 2rem;
  display: block;
  background: #D92B42;
  border-radius: 100%;
  position: absolute;
  top: 1rem;
  left: -4.4rem;
}
.point-lead {
  font-size: 1.8rem;
  padding-left: 1.6rem;
  line-height: 1.55;
  margin-top: 4rem;
}
/*ホバーで画像拡大*/
a.img_scale {
  opacity: 1;
}
a.img_scale .img {
  overflow: hidden;
}
a.img_scale .img img {
  transition: all 0.3s;
}
a.img_scale:hover .img img {
  transform: scale(1.1, 1.1);
}
/*ボタン*/
.btn-link {
  text-align: center;
  margin-top: 8rem;
}
.btn-link p {
  display: inline-block;
}
.btn-link a {
  display: block;
  background-color: #D92B42;
  color: #fff;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.4em;
  padding: 1.2rem 5rem;
  border-radius: 100px;
  cursor: pointer;
}
.btn-link.icon-arrow a:after {
  content: "";
  display: inline-block;
  width: 1.3rem;
  height: 2.2rem;
  background: url("../img/cmn/icon_arrow.svg") no-repeat center;
  background-size: contain;
  vertical-align: middle;
  margin: -0.2em 0 0 1.5rem;
}
.btn-link.more a:after {
  transition: all ease .5s;
  transform: rotate(90deg);
}
.btn-link.more a.is-show:after {
  transform: rotate(-90deg);
}
.btn-link.icon-download a:after {
  content: "";
  display: inline-block;
  width: 2.4rem;
  height: 2.4rem;
  background: url("../img/cmn/icon_download.svg") no-repeat center;
  background-size: contain;
  vertical-align: middle;
  margin: -0.2em 0 0 1.5rem;
}
.btn-link.icon-contact a:after {
  content: "";
  display: inline-block;
  width: 3rem;
  height: 2.5rem;
  background: url("../img/cmn/icon_contact.svg") no-repeat center;
  background-size: contain;
  vertical-align: middle;
  margin: -0.2em 0 0 1.5rem;
}
/*==================================================
ボーダーアニメーション
==================================================*/
/*ボーダー*/
.timeline-inner {
  position: relative;
  list-style: none;
  padding: 0 0 0;
}
.border-line {
  position: absolute;
  left: 6.5rem;
  top: 2rem;
  width: 2px;
  height: 0;
  background: #D92B42;
  transition: 0.1s;
}
.border-line:after {
  content: "";
  width: 1rem;
  height: 1rem;
  background: #D92B42;
  border-radius: 100%;
  display: block;
  position: absolute;
  bottom: -0.4rem;
  left: -0.4rem;
}
.last-line-sec .border-line{
	transition: 0s;
}
.border-line.slow {
  transition: 1s linear;
}
.border-line.on {
  animation: border-anime 1s linear;
}
/*ボーダー最後のアニメーション*/
@keyframes border-anime {
  0% {
    height: 100%;
  }
  50% {
    height: calc(100% + 10rem);
  }
  100% {
    height: 100%;
  }
}
/*ジャイロアイコン*/
.icon-box {
  padding-top: 11rem;
  padding-left: 2.5rem;
}
#icon-block {
  width: 8.2rem;
  margin-bottom: -0.7rem;
}
/*==================================================
メインヴィジュアル //下層ページ用
==================================================*/
.main-sec{
  position: relative;
}
.main-sec h1.main-sec-tit{
  display: block;
  text-align: center;
  width: 100%;
  max-width: 36rem;
  position: absolute;
  top: calc(50% - 6.5rem);
  left: 0;
  transform: translate(0, -50%);
  font-size: 2.8rem;
  line-height: 1;
  font-weight: bold;
  padding: 2.8rem 1rem;
  background: rgba(255, 255, 255, .75);
  border: 2px solid #D92B42;
  border-left: 0;
  border-radius: 0 5em 5em 0;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.50);
}

/*==================================================
イントロ
==================================================*/
.intro-sec {
  padding: 0;
  position: relative;
  margin-bottom: -1rem;
  margin-top: -8rem;
}
.intro-sec .border-right {
  width: 6.7rem;
  height: 10rem;
  border-bottom: 2px solid #D92B42;
  border-right: 0px solid #D92B42;
  display: block;
  position: absolute;
  top: -9.8rem;
  right: -0.2rem;
  border-radius: 0 0 0rem 0;
}
.intro-sec .inner {
  border-top: 2px solid #D92B42;
  border-left: 2px solid #D92B42;
  padding-top: 4rem;
  padding-bottom: 9rem;
  border-radius: 7rem 0 0 0;
  position: relative;
  z-index: 1;
}
.intro-sec .inner-s {
  padding-left: 0;
}
.intro-sec .inner.pb_section{
  padding-bottom: 15rem;
}
.intro-sec .inner.intro_none{
  padding: 7rem 0 0 0;
}
.intro-sec h2{
  font-size: 1.8rem;
  margin: 0;
  text-align: center;
	word-break: keep-all;
}
.intro-sec h3{
  font-size: 2.8rem;
  margin: 0;
  text-align: center;
  word-break: keep-all;
}
.intro-sec p{
  font-size: 1.8rem;
  margin: 0;
  text-align: center;
}
.intro-sec .intro-item.full{
  width: 100%;
}
.intro-sec .intro-item{
  margin: 8rem auto 0;
}
/*==================================================
制作分野(service)
==================================================*/
.production-wrap{
  width: 100%;
  margin-top: 16rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}
.production-wrap:first-of-type{
  margin-top: 4rem;
}
.production-txtbox{
  width: 60%;
  padding: 0 6.5rem 0 4rem;
  box-sizing: border-box;
}
.production-txtbox h2{
  position: relative;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.1;
}
.production-txtbox h3:before{
  content: '';
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  background: url(../img/cmn/icon-hishigata.svg) no-repeat;
  background-size: 1.6rem 1.6rem;
  margin-right: 1.6rem;
}
.production-txtbox h4{
  position: relative;
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.1;
}
.production-txtbox h4:before{
  content: '';
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  background: url(../img/cmn/icon-hishigata.svg) no-repeat;
  background-size: 1.6rem 1.6rem;
  margin-right: 1.6rem;
}
.production-txtbox p{
  font-size: 1.8rem;
  line-height: 1.55;
  margin: 4rem 0 0 0;
}
.production-txtbox ul{
  margin: 4rem 0 0 0;
}
.production-txtbox ul li{
  font-size: 1.6rem;
  line-height: 1.8;
}
.production-img{
  width: 40%;
}
.production-img img{
  border-radius: .6rem;
}
figcaption {
/*  text-align: left; */
/*  text-align: center; */
  text-align: right;
}
/*==================================================
制作プロセス(service)
==================================================*/
.process-box{
  position: relative;
  width: 100%;
  max-width: 86rem;
  background: #fff;
  margin: 7rem auto 0;
  padding: 3rem 0 1.5rem 3rem;
  box-sizing: border-box;
  border-radius: 1rem;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: flex-start;
}
.process-box:first-of-type{
  margin: 4rem auto 0;
}
.process-sec .process-box.last:after{
  display: none;
}
.process-box:after{
  content: '';
  display: inline-block;
  width: 6rem;
  height: 3.8rem;
  background-size: 100%;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -5.6rem;
  left: 50%;
  transform: translate(-50%, 0);
}
.process-box.process_red:after{
  background-image: url(../img/service/icon-process-arrow_red.svg);
}
.process-box.process_red{
  border: 1px solid #D92B42;
}
.process-box.process_red .process-txtbox h4{
  color: #D92B42;
}
.process-box.process_blue:after{
  background-image: url(../img/service/icon-process-arrow_blue.svg);
}
.process-box.process_blue{
  border: 1px solid #3857A5;
}
.process-box.process_blue .process-txtbox h4{
  color: #3857A5;
}
.process-box.process_green:after{
  background-image: url(../img/service/icon-process-arrow_green.svg);
}
.process-box.process_green{
  border: 1px solid #0C7515;
}
.process-box.process_green .process-txtbox h4{
  color: #0C7515;
}
.process-txtbox{
  width: 67.5%;
}
.process-txtbox h4{
  font-size: 2.4rem;
  font-weight: bold;
}
.process-txtbox p{
  font-size: 1.8rem;
  line-height: 1.55;
  margin-top: 5rem;
}
.process-img{
  width: 32.5%;
}
/*==================================================
こんな場合もぜひご相談ください(service)
==================================================*/
.consultation-item{
  margin-top: 2rem;
}
.consultation-item.full{
  width: 100%;
}
/*==================================================
事例紹介(works)
==================================================*/
.works-wrap{
  width: 100%;
  display: flex;
  justify-content: flex-start;
  /* align-items: flex-start; */
  flex-wrap: wrap;
}
.works-list{
  position: relative;
  width: calc(100% / 3 - 1.341rem);
  border-radius: .6rem;
  background: #F6F6F6;
  padding: 2.4rem 2rem 4.5rem 2rem;
  box-sizing: border-box;
  margin-right: 2rem;
  margin-top: 2rem;
}
.works-list:nth-of-type(1), .works-list:nth-of-type(2), .works-list:nth-of-type(3) {
  margin-top: 0;
}
.works-list:nth-child(3n){
  margin-right: 0;
}
.works-list:hover{
  box-shadow: 0 0 2rem rgba(0, 0, 0, 0.2);
  opacity: 1;
  cursor: pointer;
}
.works-list:before {
  transition: all 0.3s;
  content: "";
  bottom: 0;
  right: 0;
  border-top: 5.4rem solid transparent;
  border-right: 5.4rem solid #D92B42;
  position: absolute;
  z-index: 100;
  opacity: 0;
  border-radius: 0 0 0.6rem 0;
}
.works-list:hover:before{
  opacity: 1;
}
.works-list img{
  border-radius: .6rem;
}
.works-list h3{
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.2;
  margin-top: 2rem;
}
.works-list ul{
  margin-top: 1rem;
}
.works-list ul li{
  display: inline-block;
  font-size: 1.8rem;
  line-height: 1.55;
}
/*==================================================
会社概要(about)
==================================================*/
.company-info{
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: wrap;
  color: #000;
}
.company-info dt{
  width: 12rem;
  text-align: right;
  font-size: 1.8rem;
  margin-top: 4rem;
}
.company-info dd{
  width: calc(100% - 12rem);
  text-align: left;
  padding-left: 3rem;
  box-sizing: border-box;
  font-size: 1.8rem;
  margin-top: 4rem;
}
.company-info dt:first-of-type,
.company-info dd:first-of-type{
  margin-top: 0;
}
.company-map {
  width: 100%;
  max-width: 800px;
  margin: 4rem auto 0;
  transition: all 0.7s ease;
}
.company-map-wrap {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56%;
}
.company-map-wrap::before {
  content: "";
  display: block;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
  pointer-events: none;
  mix-blend-mode: hue;
  background: rgba(182, 34, 47, 1);
  z-index: 1;
}
.company-map-wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.company-map p{
  font-size: 1.8rem;
  margin: 2rem 0 0 0;
  line-height: 1.55;
  color: #000;
}
/*==================================================
代表あいさつ(about)
==================================================*/
.president-sec{
  padding-bottom: 8rem;
}
.president-wrap{
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  margin-top: 4rem;
}
.president-img{
  width: 35%;
  text-align: center;
  margin-top: 4rem;
}
.president-img img{
  width: 100%;
  max-width: 22rem;
  border-radius: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
.president-txtbox{
  width: 65%;
  padding-left: 4rem;
  box-sizing: border-box;
}
.president-txtbox p.name{
  font-size: 2.8rem;
  line-height: 1;
  font-weight: bold;
}
.president-txtbox p.name .en{
  display: block;
  font-size: 1.4rem;
  line-height: 1;
  margin-top: 1rem;
  font-weight: normal;
}
.president-txtbox p.prof{
  font-size: 1.8rem;
  line-height: 1.55;
  margin: 2rem 0 0 0;
}
.president-txtbox p.career{
  font-size: 1.8rem;
  line-height: 1.55;
  margin: 2rem 0 0 0;
  padding-top: 2rem;
  border-top: 1px solid #8C8C8C;
}
/*==================================================
メンバー(about)
==================================================*/
.member-wrap{
  width: 100%;
  display: flex;
  justify-content: flex-start;
  /* align-items: flex-start; */
  flex-wrap: wrap;
}
.member-list{
  width: calc(100% / 3 - 0.6777rem);
  margin-right: 1rem;
  margin-top: 6rem;
}
.member-list a{
  position: relative;
  cursor: pointer;
  width: 100%;
  padding: 2.4rem 0 4.5rem;
  border-radius: 0.6rem;
  opacity: 1;
  max-width: 325px;
  margin: 0 auto;
  display: block;
  aspect-ratio: 43.391 / 56.609;
}
.member-list a:before {
  transition: all 0.3s;
  content: "";
  bottom: 0;
  right: 0;
  border-top: 5.4rem solid transparent;
  border-right: 5.4rem solid #D92B42;
  position: absolute;
  z-index: 100;
  opacity: 0;
  border-radius: 0 0 0.6rem 0;
}
.member-list a:hover{
  background: #fff;
  box-shadow: 0 0 2rem rgba(0, 0, 0, 0.2);
  opacity: 1;
  cursor: pointer;
}
.member-list a:hover:before {
  opacity: 1;
}
.member-list:nth-of-type(1),
.member-list:nth-of-type(2),
.member-list:nth-of-type(3){
  margin-top: 0;
}
.member-list:nth-child(3n){
  margin-right: 0;
}
.member-list figure{
  text-align: center;
}
.member-list figure img{
  width: 100%;
  max-width: 22rem;
  border-radius: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
.member-list p{
  line-height: 1;
}
.member-list p.name{
  display: block;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 2rem 0 0 0;
}
.member-list p.name .en{
  display: block;
  text-align: center;
  font-size: 1.4rem;
  font-weight: normal;
  margin: 1.5rem 0 0 0;
}
.member-list p.katagaki{
  display: block;
  text-align: center;
  font-size: 1.6rem;
  margin: 1.5rem 0 0 0;
}
/*==================================================
アドバイザー(about)
==================================================*/
.advisor-wrap{
  width: 100%;
  display: flex;
  justify-content: flex-start;
  /* align-items: flex-start; */
  flex-wrap: wrap;
}
.advisor-list{
  width: calc(100% / 3 - 0.6777rem);
  margin-right: 1rem;
  margin-top: 6rem;
}
.advisor-list a{
  position: relative;
  cursor: pointer;
  width: 100%;
  padding: 2.4rem 0 4.5rem;
  border-radius: 0.6rem;
  opacity: 1;
  max-width: 325px;
  margin: 0 auto;
  display: block;
  aspect-ratio: 43.391 / 56.609;
}
.advisor-list a:before {
  transition: all 0.3s;
  content: "";
  bottom: 0;
  right: 0;
  border-top: 5.4rem solid transparent;
  border-right: 5.4rem solid #D92B42;
  position: absolute;
  z-index: 100;
  opacity: 0;
  border-radius: 0 0 0.6rem 0;
}
.advisor-list a:hover{
  background: #fff;
  box-shadow: 0 0 2rem rgba(0, 0, 0, 0.2);
  opacity: 1;
  cursor: pointer;
}
.advisor-list a:hover:before {
  opacity: 1;
}
.advisor-list:nth-of-type(1),
.advisor-list:nth-of-type(2),
.advisor-list:nth-of-type(3){
  margin-top: 4rem;
}
.advisor-list:nth-child(3n){
  margin-right: 0;
}
.advisor-list figure{
  text-align: center;
}
.advisor-list figure img{
  width: 100%;
  max-width: 22rem;
  border-radius: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
.advisor-list p{
  line-height: 1;
}
.advisor-list p.name{
  display: block;
  text-align: center;
  font-size: 1.8rem;
  font-weight: bold;
  margin: 2rem 0 0 0;
}
.advisor-list p.name .en{
  display: block;
  text-align: center;
  font-size: 1.4rem;
  font-weight: normal;
  margin: 1.5rem 0 0 0;
}
.advisor-list p.katagaki{
  display: block;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.6;
  margin: 1.5rem 0 0 0;
}
/*==================================================
賞歴(about)
==================================================*/
.award-list,
.event-list{
  width: 100%;
}
.award-list li,
.event-list li{
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  font-size: 1.8rem;
  line-height: 1.55;
  margin-top: .5rem;
  color: #000;
}
.award-list li:first-of-type,
.event-list li:first-of-type{
  margin-top: 0;
}
.award-list li span.date,
.event-list li span.date{
  width: 8rem;
}
.award-list li span.txt,
.event-list li span.txt{
  width: calc(100% - 8rem);
}
/*==================================================
取引実績(about)
==================================================*/
.client-box {
  margin-bottom: 4rem;
}
.client-box .col-box{
  width: 50%;
}
.client-box .col-box ul li{
  font-size: 1.8rem;
}
.client-industry_bottom{
  margin-bottom: 1rem;
}
.client-industry{
  font-weight: bold;
}
/*==================================================
会社の歩み(about)
==================================================*/
.history-wrap{
  width: 100%;
  margin-top: 4rem;
}
.history-list{
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 2rem;
}
.history-wrap.is-show .history-list{
  display: flex;
}
.history-list:nth-child(n+4){
  display: none;
}
.history-list:first-of-type{
  margin-top: 0;
}
.history-list h3{
  width: 100%;
  margin-bottom: 2rem;
  border-bottom: 2px solid #D92B42;
  padding-bottom: 1rem;
  position: relative;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.1;
}
.history-list h3:before{
  content: '';
  display: inline-block;
  width: 1.6rem;
  height: 1.6rem;
  background: url(../img/cmn/icon-hishigata.svg) no-repeat;
  background-size: 1.6rem 1.6rem;
  margin-right: 1.6rem;
}
.history-img{
  width: 35%;
}
.history-img img{
  width: 100%;
  max-width: 17.8rem;
  height: auto;
  display: block;
  margin: 0 auto;
}
.history-txtbox{
  width: 65%;
  font-size: 1.8rem;
}
.history-txtbox ul{
  margin: 0;
}
.history-txtbox ul li{
  font-size: 1.8rem;
  line-height: 1.55;
}
/*==================================================
採用情報(recruit)
==================================================*/
.recruit-wrap{
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.recruit-txtbox{
  width: 58%;
  padding-left: 2rem;
  padding-right: 6rem;
  box-sizing: border-box;
}
.recruit-txtbox p{
  font-size: 1.8rem;
  line-height: 2;
  margin: 3rem 0 0 0;
}
.recruit-txtbox p:first-of-type{
  margin: 0;
}
.recruit-img{
  text-align: center;
  width: 42%;
}
.recruit-img img{
  max-width: 28.8rem;
  margin: 0 auto;
  display: block;
}
.recruit-table{
  width: 100%;
  margin: 5rem auto 5rem;
}
.recruit-table table{
  width: 100%;
}
.recruit-table th{
  width: 19%;
  font-size: 1.6rem;
  padding: 1rem;
  border-bottom: 1px solid #8C8C8C;
}
.recruit-table table tr:last-of-type th{
  border-bottom: 0;
}
.recruit-table td{
  font-size: 1.6rem;
  padding: 1rem;
  border-bottom: 1px solid #8C8C8C;
}
.recruit-table td a{
  color: #D92B42;
  text-decoration: none;
}
.recruit-table table tr:last-of-type td{
  border-bottom: 0;
}
.icon-recruit{
  margin: 4rem auto 0;
  text-align: right;
}
.icon-recruit img{
  width: 13.7rem;
  height: auto;
}
/*==================================================
お問い合わせ(contact)
==================================================*/
.contact-qa{
  margin: 4rem auto 0;
}
.contact-qa dl.is-show dt:nth-child(n+7),
.contact-qa dl.is-show dd:nth-child(n+7){
  display: block;
}
.contact-qa dl dt{
  margin: 6rem auto 0;
  font-size: 2rem;
  line-height: 1.2;
}
.contact-qa dl dt:first-of-type{
  margin-top: 0;
}
.contact-qa dl dt:nth-child(n+7){
  display: none;
}
.contact-qa dl dd:nth-child(n+7){
  display: none;
}
.contact-qa dl dd{
  margin-top: 1.5rem;
  padding-left: 2rem;
  font-size: 2rem;
  line-height: 1.5;
}
.contact-qa dl dd .cl-red{
  color: #D92B42;
}
.contact-qa .btn-link{
  margin: 4rem auto 0;
}
/*==================================================
お問い合わせフォーム(contact)
==================================================*/
.form-wrap{
  margin: 4rem auto 0;
}
.form-block{
  width: 100%;
  margin: 1.5rem auto 0;
}
.form-block:first-of-type{
  margin-top: 0;
}
.form-block .form-tit{
  display: block;
  margin: 0.5rem 0;
  font-size: 1.6rem;
  line-height: 1.6;
}
.form-block input,
.form-block textarea{
  width: 100%;
  border: 1px solid #5A5A5A;
  padding: 0.2rem 1.2rem;
  font-size: 1.6rem;
  box-sizing: border-box;
  background: #fff;
  border-radius: 0.8rem;
}

.mwform-checkbox-field label{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 2rem;
}

.mwform-checkbox-field input{
    background-color: #fff;
    border: 1px solid #5a5a5a;
    border-radius: 50%;
    width: 18px;
    height: 18px;
    padding: 0;
    left: 5px;
}


.form-block input::placeholder{
  color: #8C8C8C;
}
.form-wrap .form-btnWrap{
  display: block;
  text-align: center;
  margin-top: 2.5rem;
}
input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
}
.form-wrap .form-btnWrap button,
.form-wrap .form-btnWrap input[type="submit"] {
  display: inline-block;
  width: 14rem;
  background-color: #D92B42;
  border: 1px solid #D92B42;
  color: #fff;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1;
  padding: 1.5rem 3rem;
  border-radius: 100px;
  cursor: pointer;
  margin: 0 1rem;
}
.form-wrap .form-btnWrap .back-btn {
  display: inline-block;
  width: 14rem;
  background-color: transparent !important;
  border: 1px solid #D92B42;
  color: #D92B42 !important;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1;
  padding: 1.5rem 3rem;
  border-radius: 100px;
  cursor: pointer;
  margin: 0 1rem;
}
.form-wrap .form-btnWrap .back-btn.back-to-top {
  width: auto !important;
}
.form-wrap .form-btnWrap button:hover,
.form-wrap .form-btnWrap input[type="submit"]:hover,
.form-wrap .form-btnWrap .back-btn:hover{
  opacity: .7;
}
/*==================================================
個人情報について(privacy)
==================================================*/
.privacy-sec .border-line{
  top: 1rem;
}
.privacy-sec p{
  font-size: 1.8rem;
  line-height: 1.55;
  margin: 3rem 0 0 0;
  color: #000;
}
.privacy-sec p:first-of-type{
  margin-top: 0;
}
.privacy-sec ul{
  margin: 3rem 0 0 0;
}
.privacy-sec ul li{
  position: relative;
  color: #000;
  font-size: 1.8rem;
  line-height: 1.55;
}
.privacy-sec ul li:before{
  content: '・';
  font-size: 1.8rem;
}
/*==================================================
決算公告(settlement)
==================================================*/
.settlement-sec .settlement-list{
  width: max-content;
  margin: 0 auto;
}
.settlement-sec .settlement-list li{
  position: relative;
  color: #000;
  font-size: 1.8rem;
  line-height: 1.55;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  /*==================================================
  主要取引先(about)
  ==================================================*/
  .client-box {
    margin-bottom: 4rem;
  }
  .client-box .col-box{
    width: 100%;
  }
  .suppliers-sec .txt-s{
    line-height: 1.6;
  }
}

@media screen and (max-width: 767px) {
  body {
    font-size: 1.5rem;
  }
  .wrap {
    padding: 0 2.8rem;
  }
  main {
    padding-top: 9rem;
  }
  section {
    padding: 0 0 5rem;
  }
  main .inner, main .inner-s {
    padding: 0;
  }
  .border-line {
    display: none;
  }
  .icon-box {
    padding: 3rem 0 0;
    width: 5rem;
    margin: 0 auto -0.5rem;
  }
  .txt-s {
    font-size: 1.2rem;
    line-height: 1.55;
  }
  .txt-center {
    text-align: left;
  }
  .sp_pab0{
    padding-bottom: 0;
  }
  /*タイトル*/
  .point-tit {
    font-size: 1.8rem;
    margin-bottom: 2rem;
  }
  .point-tit:before {
    width: 1rem;
    height: 1rem;
    top: 0.8rem;
    left: -1.8rem;
  }
  .point-lead {
    font-size: 1.5rem;
    padding-left: 0;
    line-height: 1.33;
    margin-top: 1.5rem;
    margin-bottom: 0;
    line-height: 1.55;
  }
  /*ボタン*/
  .btn-link {
    margin-top: 3rem;
  }
  .btn-link a {
    font-size: 1.5rem;
    padding: 1.2rem 2.5rem;
  }
  .btn-link.icon-arrow a:after {
    width: 1.1rem;
    height: 1.1rem;
    margin: -0.2em 0 0 0.7rem;
  }
  .btn-link.icon-download a:after {
    width: 1.5rem;
    height: 1.5rem;
    margin: -0.2em 0 0 0.7rem;
  }
  /*==================================================
head
==================================================*/
    .site-header {
    height: 5rem;
  }
  .site-header .site-title img {
    max-width: 62px;
    width: 6.2rem;
    padding-bottom: 1.5rem;
  }
  .site-header .site-title a, .site-header .gnavi > ul > li > a, .site-header .lang-box .inner {
    display: table-cell;
    height: 9rem;
    vertical-align: bottom;
  }
  .site-header .navi-box {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 9rem;
    right: 0;
    padding-bottom: 5rem;
    transition: ease .3s;
    display: none;
    width: 67%;
    z-index: 100;
    background: rgba(255, 255, 255, 0.9);
    height: calc(100vh - 9rem);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .site-header .navi-box.open {
    opacity: 1;
    visibility: visible;
  }
  .navi-box .lang-box {
    display: none;
  }
  .navi-box .navi {
    float: none;
  }
  .site-header .gnavi {
    font-weight: normal;
  }
  .site-header .gnavi > ul {
    display: block;
    font-size: 2rem;
  }
  .site-header .gnavi > ul > li {
    float: none;
    text-align: left;
    width: auto;
    margin: 0;
    padding: 0;
    height: auto;
    display: block;
    border-top: 1px solid #fff;
  }
  .site-header .gnavi > ul > li > a {
    padding: 1.5rem 2rem;
    position: relative;
    height: inherit;
    display: block;
    line-height: 1em;
  }
  .site-header .gnavi > ul > li > a > span {
    padding: 0;
    line-height: 1em;
  }
  .site-header .gnavi > ul > li.parent > a > span:after {
    display: none;
  }
  .site-header .gnavi .child {
    opacity: 1;
    visibility: visible;
    position: inherit;
    top: inherit;
    left: inherit;
    text-align: left;
    width: auto;
  }
  .site-header .gnavi .child li {
    border-top: 1px solid #fff;
  }
  .site-header .gnavi .child li a {
    padding: 1.5rem 2rem 1.5rem 4rem;
  }
  .navi-box {
    display: none;
  }
  .hamburger {
    width: 2rem;
    height: 1.5rem;
    position: absolute;
    bottom: 1.5rem;
    right: 2.5rem;
    z-index: 900;
    display: block;
  }
  .hamburger_bar {
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    left: 0;
    background: #202e61;
    transition: top 0.24s, transform 0.24s, opacity 0.24s;
  }
  .hamburger_bar:nth-child(1) {
    top: 0;
  }
  .hamburger_bar:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
  }
  .hamburger_bar:nth-child(3) {
    top: 100%;
    transform: translateY(-100%);
  }
  .hamburger_bar.is_active:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotate(135deg);
  }
  .hamburger_bar.is_active:nth-child(2) {
    transform: translate(50%, -50%);
    opacity: 0;
  }
  .hamburger_bar.is_active:nth-child(3) {
    top: 50%;
    transform: translateY(-50%) rotate(-135deg);
  }

  @media screen and (orientation: landscape) {
    /* 横向きの場合のスタイル */
    main{
      padding-top: 4rem;
    }
    .site-header .site-title a, .site-header .gnavi > ul > li > a, .site-header .lang-box .inner {
      height: 4rem;
    }
    .site-header .navi-box {
      top: 4rem;
      height: calc(100vh - 4rem);
    }
  }
  @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape){
    .site-header .gnavi > ul > li:hover > a > span:before {
      display: none;
    }
  }
  @media screen and (max-width: 767px){
    main {
      padding-top: 0rem;
    }
    .site-header .site-title a, .site-header .gnavi > ul > li > a, .site-header .lang-box .inner {
      height: 5rem;
    }
    .site-header .navi-box {
      top: 5rem;
      height: calc(100vh - 5rem);
    }
  }
/*==================================================
footer
==================================================*/
  .site-footer {
    padding: 2rem 0;
  }
  .site-footer .wrap-m {
    padding: 0 2.8rem;
  }
  .site-footer .fnavi li {
    font-size: 100%;
    width: 100%;
    line-height: 2em;
  }
  .site-footer .fnavi li li {
    margin-top: 0;
    font-size: 100%;
  }
  .site-footer .fnavi li.parent {
    margin: 1rem 0;
  }
  .site-footer .fnavi li ul {
    margin-left: 1.5rem;
  }
  .site-footer .sns-list {
    max-width: 20rem;
    margin: 2.5rem auto;
  }
  .site-footer .sns-list li {
    width: 2.6rem;
  }
  .site-footer address {
    font-size: 0.8rem;
  }
  .btn-pagetop {
    bottom: 2rem;
    right: 0.6rem;
    width: 1.2rem;
    left: calc(100vw - 2.8rem);
  }
  /*==================================================
  メインヴィジュアル //下層ページ用
  ==================================================*/
  .main-sec h1.main-sec-tit{
    position: static;
    max-width: 100%;
    transform: unset;
    font-size: 1.8rem;
    line-height: 1;
    font-weight: bold;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: unset;
    margin-top: .5em;
  }
  /*==================================================
  イントロ
  ==================================================*/
  .intro-sec {
    margin-top: 0;
    padding-bottom: 4rem;
  }
  .intro-sec .inner {
    border: none;
    padding: 0;
  }
  .intro-sec .border-right {
    display: none;
  }
  .intro-sec .intro-item{
    margin: 3rem auto 0;
  }
  .intro-sec p{
    font-size: 1.5rem;
    line-height: 1.55;
    margin-top: 1.5rem;
  }
  /*==================================================
  制作分野(service)
  ==================================================*/
  .production-wrap{
    margin-top: 5rem;
    width: calc(100% + 5.6rem);
    margin-left: -2.8rem;
  }
  .production-wrap:first-of-type{
    margin-top: 5rem;
  }
  .production-txtbox{
    width: 100%;
    padding: 0;
  }
  .production-txtbox h4{
    font-size: 1.8rem;
    padding-left: 1.1rem;
  }
  .production-txtbox h4:before{
    content: '';
    display: inline-block;
    width: 0.8rem;
    height: 0.8rem;
    background: url(../img/cmn/icon-hishigata.svg) no-repeat;
    background-size: 0.8rem 0.8rem;
    margin-right: 0.7rem;
    margin-bottom: 0.3rem;
  }
  .production-txtbox p{
    font-size: 1.5rem;
    line-height: 1.55;
    margin: 1.5rem 0 0 0;
    padding: 0 2.8rem;
    box-sizing: border-box;
  }
  .production-txtbox ul{
    margin: 1.5rem 0 0 0;
    padding: 0 2.8rem;
    box-sizing: border-box;
  }
  .production-txtbox ul li{
    font-size: 1.2rem;
    line-height: 1.6;
  }
  .production-img{
    width: 100%;
    margin-top: 1.5rem;
  }
  .production-img img{
    width: 100%;
    max-width: 54%;
    margin: 0 auto;
    display: block;
  }
  .production-sec .btn-link{
    margin-top: 3rem;
  }
  figcaption {
  text-align: center; 
  }
  /*  text-align: left; */
  /*==================================================
  制作プロセス(service)
  ==================================================*/
  .process-box{
    max-width: 100%;
    background: #fff;
    margin: 2.5rem auto 0;
    padding: 1.5rem 3rem;
    justify-content: center;
  }
  .process-box:first-of-type{
    margin: 1.5rem auto 0;
  }
  .process-box:after{
    width: 3rem;
    height: 1.9rem;
    bottom: -2.4rem;
  }
  .process-txtbox{
    width: 100%;
  }
  .process-txtbox h4{
    font-size: 1.8rem;
  }
　.process-txtbox p{
    font-size: 1.5rem;
    line-height: 1.55;
    margin-top: 1.5rem;
  }
  .process-img{
    width: 100%;
  }
  .process-sec .btn-link{
    margin-top: 3rem;
  }
  /*==================================================
  こんな場合もぜひご相談ください(service)
  ==================================================*/
  .consultation-item{
    margin-top: 1.5rem;
  }
  .consultation-sec .btn-link{
    margin-top: 3rem;
  }
  /*==================================================
  事例紹介(works)
  ==================================================*/
  .works-wrap{
    display: block;
  }
  .works-list{
    cursor: pointer;
	  width: 80%;
    padding: 2.5rem 2rem 1rem;
    margin: 4rem auto 0;
    display: block;
  }
  .works-list:before {
    border-top: 2.1rem solid transparent;
    border-right: 2.1rem solid #D92B42;
  }
  .works-list:nth-child(3n) {
    margin-right: auto;
  }
  .works-list:nth-of-type(3){
    margin-top: 4rem;
  }
  .works-list:nth-of-type(2), .works-list:nth-of-type(3){
    margin-right: auto;
    margin-top: 4rem;
  }
  .works-list h3{
    font-size: 1.6rem;
    margin-top: 1rem;
  }
  .works-list ul{
    margin: 1rem 0;
  }
  .works-list ul li{
    font-size: 1.2rem;
    display: list-item;
  }
  .about-overlay .modal-close.top-close,
  .works-overlay .modal-close.top-close {
    display: none;
  }
  .about-overlay .modal-btnWrap .modal-close,
  .works-overlay .modal-btnWrap .modal-close {
    border: none !important;
    color: #5A5A5A;
    font-weight: bold;
    margin: 0 auto;
    font-size: 1.5rem;
    padding: 0;
  }
  .about-overlay .modal-btnWrap .modal-close::after,
  .works-overlay .modal-btnWrap .modal-close::after {
    display: none;
  }
  /*==================================================
  会社概要(about)
  ==================================================*/
  .company-info dt{
    width: 100%;
    text-align: left;
    margin-top: 1.5rem;
    font-weight: bold;
    font-size: 1.5rem;
  }
  .company-info dd{
    width: 100%;
    padding-left: 0;
    font-size: 1.5rem;
    margin-top: 0;
    line-height: 1.55;
  }
  .company-map {
    margin: 3rem auto 0;
  }
  .company-map p{
    font-size: 1.5rem;
  }
  .map-txt{
    line-height: 1.55
  }
  /*==================================================
  代表あいさつ(about)
  ==================================================*/
  .president-sec{
    padding-bottom: 5rem;
  }
  .president-img{
    width: 34.375%;
    margin: 0 auto;
  }
  .president-txtbox{
    width: 100%;
    padding-left: 0;
    margin-top: 2rem;
  }
  .president-txtbox p.name{
    font-size: 1.2rem;
    text-align: center;
  }
  .president-txtbox p.name .en{
    font-size: 1.0rem;
    margin-top: 0.5rem;
  }
  .president-txtbox p.prof{
    font-size: 1.5rem;
  }
  .president-txtbox p.career{
    font-size: 1.0rem;
  }
  /*==================================================
  メンバー(about)
  ==================================================*/
  .member-wrap{
    display: block;
  }
  .member-list{
    cursor: pointer;
    width: 52.1333%;
    padding: 0;
    margin: 4rem auto 0;
    display: block;
  }
  .member-list a {
    padding: 1rem 5% 2.5rem;
    aspect-ratio: 48.538 / 51.462;
  }
  .member-list:nth-of-type(2),
  .member-list:nth-of-type(3){
    margin-top: 2rem;
  }
  .member-list:nth-child(3n){
    margin-right: auto;
  }
  .member-list:nth-child(even){
    margin-right: auto;
  }
  .member-list figure {
    width: 66%;
    margin: 0 auto;
  }
  .member-list figure img{
    max-width: unset;
  }
  .member-list p.name{
    font-size: 1.2rem;
    margin: 1rem 0 0 0;
  }
  .member-list p.name .en{
    font-size: 1.0rem;
    margin: .5rem 0 0;
  }
  .member-list p.katagaki{
    font-size: 1.0rem;
    line-height: 1.5;
    margin: 0.5rem 0 0 0;
  }
  .member-list a:before {
    border-top: 2.1rem solid transparent;
    border-right: 2.1rem solid #D92B42;
  }
  .member-list a:hover:before {
    border-top: 2.1rem solid transparent;
    border-right: 2.1rem solid #D92B42;
  }
  /*==================================================
  アドバイザー(about)
  ==================================================*/
  .advisor-wrap{
    display: block;
  }
  .advisor-list{
    cursor: pointer;
    width: 52.1333%;
    /* width: 100%; */
    padding: 0;
    margin: 4rem auto 0;
    display: block;
  }
  .advisor-list a {
    padding: 1rem 5% 2.5rem;
    aspect-ratio: 48.538 / 51.462;
  }
  .advisor-list:nth-of-type(2),
  .advisor-list:nth-of-type(3){
    margin-right: auto !important;
  }
  .advisor-list:nth-child(3n){
    margin-right: auto;
  }
  .advisor-list:nth-child(even){
    margin-right: auto;
  }
  .advisor-list figure{
    width: 66%;
    margin: 0 auto;
  }
  .advisor-list figure img{
    max-width: unset;
  }
  .advisor-list p.name{
    font-size: 1.2rem;
    margin: 1rem 0 0 0;
  }
  .advisor-list p.name .en{
    font-size: 1.0rem;
    margin: .5rem 0 0;
  }
  .advisor-list p.katagaki{
    font-size: 1.0rem;
    line-height: 1.5;
    margin: 0.5rem 0 0 0;
  }
  .advisor-list a:before {
    border-top: 2.1rem solid transparent;
    border-right: 2.1rem solid #D92B42;
  }
  .advisor-list a:hover:before {
    border-top: 2.1rem solid transparent;
    border-right: 2.1rem solid #D92B42;
  }
  .about-overlay .modal-prof-thumb figure {
    width: 43%;
    max-width: 220px;
    margin: 0 auto
  }
  .about-overlay .modal-prof-thumb figcaption.name{
    font-size: 1.2rem;
  }
  .about-overlay .modal-prof-thumb figcaption.name .en{
    font-size: 1.0rem;
    margin: .5rem 0 0 0;
  }
  /*==================================================
  賞歴(about)
  ==================================================*/
  .award-list,
  .event-list{
    width: 100%;
  }
  .award-list li,
  .event-list li{
    font-size: 1.5rem;
    margin-top: 1rem;
    display: block;
  }
  .award-list li span.date,
  .event-list li span.date{
    width: 100%;
    display: block;
    font-weight: bold;
  }
  .award-list li span.txt,
  .event-list li span.txt{
    width: 100%;
    display: block;
  }
  /*==================================================
  主要取引先(about)
  ==================================================*/
  .client-box .col-box{
    width: 100%;
  }
  .client-box .col-box ul li{
    line-height: 1.55;
    font-size: 1.6rem;
  }
  /*==================================================
  会社の歩み(about)
  ==================================================*/
  .history-list h3{
    font-size: 2rem;
  }
  .history-list h3:before{
    width: 1.4rem;
    height: 1.4rem;
    background-size: 1.4rem 1.4rem;
    margin-right: 1.4rem;
  }
  .history-img{
    width: 100%;
  }
  .history-txtbox{
    width: 100%;
    margin-top: 2rem;
    font-size: 1.5rem;
    line-height: 1.55
  }
  .history-txtbox ul li{
    font-size: 1.5rem;
  }
  /*==================================================
  採用情報(recruit)
  ==================================================*/
  .recruit-txtbox{
    width: 100%;
    padding-right: 0;
    padding-left: 0;
  }
  .recruit-txtbox p {
    font-size: 1.5rem;
    line-height: 1.55;
    margin: 3rem 0 0 0;
  }
  .recruit-img{
    width: 100%;
    margin: 3rem auto 0;
  }
  .recruit-img img{
    max-width: 20rem;
  }
  .recruit-table{
    margin: 4rem auto 0;
  }
  .recruit-table th{
    width: 35%;
    font-size: 1.4rem;
  }
  .recruit-table td{
    font-size: 1.4rem;
  }
  .icon-recruit{
    margin: 3rem auto 0;
  }
  .icon-recruit img{
    width: 10rem;
  }
  /*==================================================
  お問い合わせ(contact)
  ==================================================*/
  .contact-qa{
    margin: 3rem auto 0;
  }
  .contact-qa dl.is-show dt:nth-child(n+7),
  .contact-qa dl.is-show dd:nth-child(n+7){
    display: block;
  }
  .contact-qa dl dt{
    margin: 4rem auto 0;
    font-size: 1.5rem;
  }
  .contact-qa dl dd{
    padding-left: 1rem;
    font-size: 1.5rem;
  }
  .contact-qa .btn-link{
    margin: 3rem auto 0;
  }
  /*==================================================
  お問い合わせフォーム(contact)
  ==================================================*/
  .form-wrap{
    margin: 3rem auto 0;
  }
  .form-block .form-tit{
    font-size: 1.5rem;
  }
  .form-block input,
  .form-block textarea{
    font-size: 1.5rem;
  }
  .form-wrap .form-btnWrap{
    margin-top: 1.5rem;
  }
  .form-wrap .form-btnWrap button{
    font-size: 1.5rem;
  }
  /*==================================================
  個人情報について(privacy)
  ==================================================*/
  .privacy-sec p{
    font-size: 1.5rem;
    margin: 2rem 0 0 0;
  }
  .privacy-sec ul{
    margin: 2rem 0 0 0;
  }
  .privacy-sec ul li{
    font-size: 1.5rem;
  }
  .privacy-sec ul li:before{
    content: '・';
    font-size: 1.5rem;
  }
  /*==================================================
  決算公告(settlement)
  ==================================================*/
  .settlement-sec .settlement-list{
    width: 100%;
  }
  .settlement-sec .settlement-list li{
    font-size: 1.5rem;
  }
}


@media screen and (min-width: 1201px) {
.wrap-s,
.company-map{
  max-width: 100%;
  width: 68%;
  }
.compnay-box,
.company-info {
  max-width: 1600px;
  margin: 0 auto;
  }
.intro-sec .intro-item.full figure {
  max-width: 800px;
  margin: 0 auto;
  }
}

_::-webkit-full-page-media, _:future, :root .gmap::before,.company-map-wrap::before {
	mix-blend-mode: unset;
  background: none;
}
