textarea {
  resize: vertical; }

input[type='submit'],
input[type='button'],
label,
button,
select {
  cursor: pointer; }

select::-ms-expand {
  display: none; }

dl, ol, ul {
  margin-bottom: 0px;
  margin-bottom: 0rem; }

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  margin-bottom: 0;
  line-height: 1.3em;
  font-family: "Noto Sans JP";
  font-weight: normal; }

.fv {
  width: 100%;
  height: 200px;
  background: url(../img/company/hero_bg.jpg) center center no-repeat;
  background-size: cover; }
  .fv .main-visual {
    position: relative; }
    .fv .main-visual h1.h1_ttl {
      text-align: center;
      color: #fff;
      line-height: 200px;
      filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur in="SourceAlpha" stdDeviation="3" /><feOffset dx="4" dy="4" result="offsetblur" /><feFlood flood-color="rgba(0,0,0,0.3)" /><feComposite in2="offsetblur" operator="in" /><feMerge><feMergeNode /><feMergeNode in="SourceGraphic" /></feMerge></filter></svg>#filter');
      -webkit-filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, .3));
              filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, .3)); }
  @media (max-width: 768px) {
    .fv {
      height: 100px; }
      .fv .main-visual h1.h1_ttl {
        line-height: 100px; } }

.bg_detail {
  background: #f0f9ff; }

.company_wrap .message_area1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 80px; }
  .company_wrap .message_area1 .message_img {
    width: 50%; }
  .company_wrap .message_area1 .message_text {
    width: 50%;
    padding-left: 20px;
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur in="SourceAlpha" stdDeviation="10" /><feOffset dx="11" dy="11" result="offsetblur" /><feFlood flood-color="rgba(255,255,255,0.6)" /><feComposite in2="offsetblur" operator="in" /><feMerge><feMergeNode /><feMergeNode in="SourceGraphic" /></feMerge></filter></svg>#filter');
    -webkit-filter: drop-shadow(10px 10px 10px rgba(255, 255, 255, .6));
            filter: drop-shadow(10px 10px 10px rgba(255, 255, 255, .6)); }
    .company_wrap .message_area1 .message_text h3 {
      margin-bottom: 10px;
      text-align: center;
      font-size: 28px; }
      .company_wrap .message_area1 .message_text h3 span {
        display: inline-block;
        margin: 0 .25em; }
    .company_wrap .message_area1 .message_text p {
      margin-top: .5em; }
    .company_wrap .message_area1 .message_text span img {
      width: 280px;
      float: right;
      margin-top: 20px; }
  @media (max-width: 768px) {
    .company_wrap .message_area1 {
      margin-bottom: 12%; }
      .company_wrap .message_area1 .message_img {
        width: 80%;
        margin: auto; }
      .company_wrap .message_area1 .message_text {
        width: 100%;
        padding-left: 0; }
        .company_wrap .message_area1 .message_text h3 {
          text-align: center;
          font-size: 18px; }
        .company_wrap .message_area1 .message_text span img {
          width: 60%;
          float: right;
          margin-top: 4%; } }

.company_wrap .message_area2 .message_text {
  width: 100%;
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur in="SourceAlpha" stdDeviation="10" /><feOffset dx="11" dy="11" result="offsetblur" /><feFlood flood-color="rgba(255,255,255,0.6)" /><feComposite in2="offsetblur" operator="in" /><feMerge><feMergeNode /><feMergeNode in="SourceGraphic" /></feMerge></filter></svg>#filter');
  -webkit-filter: drop-shadow(10px 10px 10px rgba(255, 255, 255, .6));
          filter: drop-shadow(10px 10px 10px rgba(255, 255, 255, .6)); }
  .company_wrap .message_area2 .message_text h3 {
    margin-bottom: 10px;
    text-align: center;
    font-size: 24px; }
    .company_wrap .message_area2 .message_text h3 span {
      display: inline-block;
      margin: 0 .25em; }
  .company_wrap .message_area2 .message_text p {
    text-align: center;
    margin-top: .5em; }

@media (max-width: 768px) {
  .company_wrap .message_area2 .message_text {
    width: 100%;
    padding-left: 0; }
    .company_wrap .message_area2 .message_text h3 {
      text-align: center;
      font-size: 18px; }
    .company_wrap .message_area2 .message_text p {
      text-align: left; }
    .company_wrap .message_area2 .message_text span img {
      width: 60%;
      float: right;
      margin-top: 4%; } }

.company_wrap .detail dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .company_wrap .detail dl dt {
    border-bottom: solid 1px #ccc;
    width: 10em;
    padding: 10px 1em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-weight: bold; }
  .company_wrap .detail dl dd {
    border-bottom: solid 1px #ccc;
    width: calc(100% - 10em);
    padding: 10px 1em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    .company_wrap .detail dl dd span {
      display: inline-block; }
    .company_wrap .detail dl dd ol {
      margin-left: 1em; }
      .company_wrap .detail dl dd ol li {
        list-style-type: decimal; }

@media (max-width: 768px) {
  .company_wrap .detail dl dt {
    width: 100%;
    padding: 2% 1em 1%;
    border-bottom: none; }
  .company_wrap .detail dl dd {
    width: 100%;
    padding: 1% 1em 4% 2em; } }

.company_wrap .group_company ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 80%;
  margin: auto; }
  .company_wrap .group_company ul li {
    width: calc(33.33333% - 20px);
    margin: 0 10px 20px 10px; }

@media (max-width: 768px) {
  .company_wrap .group_company ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    margin: auto; }
    .company_wrap .group_company ul li {
      width: 48%;
      margin: 0 1% 2% 1%; } }

.map_wrap {
  margin-top: 64px !important;
  display: block; }
  .map_wrap iframe {
    width: 100%; }
