@charset "UTF-8";
/* Scss Document */
/*Webフォント*/
@font-face {
  font-family: "hannari";
  src: url("../font/hannari.eot?") format("eot"), url("../font/hannari.woff") format("woff"); }
/*------------------------------------------*/
body {
  font-family: "Noto Sans Japanese";
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5;
  font-size: 14px;
  color: #333; }
  @media screen and (max-width: 767px) {
    body {
      font-size: 12px; } }

.gothic {
  font-family: "Noto Sans Japanese"; }

.mincho {
  font-family: Georgia, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif; }

img {
  max-width: 100%;
  height: auto; }

header .inner, section .inner, footer .inner {
  width: 1000px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    header .inner, section .inner, footer .inner {
      width: 100%;
      box-sizing: border-box;
      padding: 0 16px; } }

section .inner {
  padding: 80px 0; }
  @media screen and (max-width: 767px) {
    section .inner {
      padding: 40px 16px; } }

a {
  color: #333;
  text-decoration: none; }
  a:hover {
    filter: alpha(opacity=80);
    /* IE 6,7*/
    -ms-filter: "alpha(opacity=80)";
    /* IE 8,9 */
    -moz-opacity: 0.8;
    /* FF , Netscape */
    -khtml-opacity: 0.8;
    /* Safari 1.x */
    opacity: 0.8;
    zoom: 1;
    /*IE*/
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition: 0.3s ease-in-out;
    -o-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out; }

h2 {
  text-align: center;
  font-size: 40px;
  font-weight: 600;
  letter-spacing: 0.15em;
  display: block;
  line-height: 1em; }
  h2.wh {
    color: #fff; }
    h2.wh span {
      color: #fff; }
  @media screen and (max-width: 767px) {
    h2 {
      font-size: 32px; } }
  h2 span {
    font-size: 14px;
    font-weight: 700;
    color: #009a7d;
    display: block;
    letter-spacing: 0.25em;
    line-height: 1em;
    margin-top: 20px; }
    @media screen and (max-width: 767px) {
      h2 span {
        font-size: 12px;
        margin-top: 10px; } }

.pc_only {
  display: inherit !important; }
  @media screen and (max-width: 767px) {
    .pc_only {
      display: none !important; } }

.sp_only {
  display: none !important; }
  @media screen and (max-width: 767px) {
    .sp_only {
      display: inherit !important; } }

/*------------------------------------------*/
header {
  position: relative;
  /*&::after {
  	content: "";
  	background: url(../images/trace1.png);
  	background-repeat: no-repeat;
  	background-size: contain;
  	width: 158px;
  	height: 210px;
  	position: absolute;
  	top: 0;
  	right: 0;
  	z-index: 2;
  	@media screen and (max-width: $sp_size) {
  		top: 48px;
  		width: calc( 158px / 2 );
  		height: calc( 210px / 2 );
  	}
  }
  &::before {
  	content: "";
  	background: url(../images/trace2.png);
  	background-repeat: no-repeat;
  	background-size: contain;
  	width: 345px;
  	height: 240px;
  	position: absolute;
  	bottom: 0;
  	left: 0;
  	z-index: 3;
  	@media screen and (max-width: $sp_size) {
  		width: calc( 345px / 2 );
  		height: calc( 240px / 2 );
  	}
  }*/ }
  header .pc_only .header_bg {
    background: #009a7d;
    position: relative;
    z-index: 4; }
    header .pc_only .header_bg .inner {
      padding-bottom: 16px; }
      header .pc_only .header_bg .inner > .header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-top: 24px;
        height: 40px !important; }
        header .pc_only .header_bg .inner > .header .link_area {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          font-size: 14px;
          letter-spacing: 0.1em; }
          header .pc_only .header_bg .inner > .header .link_area ul {
            display: flex; }
            header .pc_only .header_bg .inner > .header .link_area ul li {
              margin-right: 32px; }
          header .pc_only .header_bg .inner > .header .link_area .contact a {
            background: #fff;
            width: 160px;
            height: 40px;
            color: #009a7d;
            display: flex;
            justify-content: center;
            align-items: center; }
            header .pc_only .header_bg .inner > .header .link_area .contact a::before {
              content: "";
              background: url(../images/contact.png);
              background-repeat: no-repeat;
              background-position: center;
              width: 16px;
              height: 16px;
              margin-right: 8px; }
          header .pc_only .header_bg .inner > .header .link_area a {
            color: #fff;
            text-decoration: none; }
  header .sp_only {
    position: fixed;
    width: 100%;
    z-index: 4; }
    @media screen and (max-width: 767px) {
      header .sp_only .inner {
        padding: 0 !important; }
        header .sp_only .inner > .header {
          height: 48px !important;
          display: flex;
          align-items: center;
          background: #009a7d; }
          header .sp_only .inner > .header .logo {
            padding-left: 8px;
            line-height: 0; }
            header .sp_only .inner > .header .logo a img {
              width: 180px; } }
    header .sp_only .inner .sp_nav_btn {
      background: transparent url(../images/btn.png) no-repeat 0 0;
      display: block;
      width: 48px;
      height: 48px;
      position: absolute;
      top: 0;
      right: 0;
      cursor: pointer;
      z-index: 200; }
    header .sp_only .inner .sp_nav_btn_close {
      background-position: -48px 0; }
    header .sp_only .inner .sp_nav_drawr {
      display: none;
      background-color: rgba(250, 250, 250, 0.98);
      position: absolute;
      top: 48px;
      width: 100%;
      z-index: 100; }
    header .sp_only .inner .sp_nav_menu li {
      width: 100%;
      border-bottom: 1px solid #ccc;
      font-size: 14px; }
      header .sp_only .inner .sp_nav_menu li a {
        display: block;
        padding: 16px;
        text-decoration: none; }
        header .sp_only .inner .sp_nav_menu li a:hover {
          filter: alpha(opacity=80);
          -moz-opacity: 0.8;
          opacity: 0.8; }
      header .sp_only .inner .sp_nav_menu li:last-child {
        /*background-color:rgba(0,154,125,0.98);*/
        background-color: rgba(255, 78, 73, 0.98);
        border-bottom: none; }
        header .sp_only .inner .sp_nav_menu li:last-child a {
          color: #fff; }

/*------------------------------------------*/
#top_main_visual {
  width: 100%;
  position: relative; }
  #top_main_visual .bgImg {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    opacity: 0;
    animation: bgAnime 15s infinite;
    /* 3画像 × 各5s = 15s */ }
    #top_main_visual .bgImg.src1 {
      background: url(../images/slide1.jpg);
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat; }
    #top_main_visual .bgImg.src2 {
      background: url(../images/slide2.jpg);
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      animation-delay: 5s; }
    #top_main_visual .bgImg.src3 {
      background: url(../images/slide3.jpg);
      background-size: cover;
      background-position: center top;
      background-repeat: no-repeat;
      animation-delay: 10s; }
@keyframes bgAnime {
  0% {
    opacity: 0; }
  15% {
    opacity: 1; }
  35% {
    opacity: 1; }
  40% {
    opacity: 0; }
  100% {
    opacity: 0; } }
  #top_main_visual .catch {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    color: #fff;
    font-weight: 700;
    letter-spacing: 0.1em;
    /*text-shadow: 0 0 16px #666;*/
    margin-top: -80px; }
    @media screen and (max-width: 767px) {
      #top_main_visual .catch {
        margin-top: 0; } }
    #top_main_visual .catch .text {
      background: rgba(0, 0, 0, 0.5);
      padding: 24px 40px 32px;
      text-align: center; }
      @media screen and (max-width: 767px) {
        #top_main_visual .catch .text {
          padding: 16px 32px 20px; } }
      #top_main_visual .catch .text p:first-child {
        font-size: 72px;
        letter-spacing: 0.15em;
        /*span {
        	font-size: 110px;
        	@media screen and (max-width: $sp_size) {
        		font-size: 34px;
        	}
        }*/ }
        @media screen and (max-width: 767px) {
          #top_main_visual .catch .text p:first-child {
            font-size: 24px; } }
      #top_main_visual .catch .text p:last-child {
        font-size: 32px; }
        @media screen and (max-width: 767px) {
          #top_main_visual .catch .text p:last-child {
            font-size: 18px; } }

.scroll #mouse {
  position: absolute;
  left: 50%;
  bottom: 16px;
  width: 32px;
  height: 56px;
  margin-left: -16px;
  margin-top: -28px;
  box-sizing: border-box;
  background: #fff;
  border-radius: 25px; }
  .scroll #mouse::before {
    z-index: 3;
    position: absolute;
    top: 5px;
    left: 50%;
    content: "";
    background: url(../images/arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 11px;
    height: 11px;
    margin-left: -5px;
    border-radius: 4px;
    animation: scroll 1.5s infinite;
    -webkit-animation: scroll 1.5s infinite;
    -moz-animation: scroll 1.5s infinite; }
@keyframes scroll {
  0% {
    opacity: 1; }
  100% {
    opacity: 0;
    transform: translateY(41px); } }
@-webkit-keyframes scroll {
  0% {
    opacity: 1; }
  100% {
    opacity: 0;
    transform: translateY(41px); } }
@-moz-keyframes scroll {
  0% {
    opacity: 1; }
  100% {
    opacity: 0;
    transform: translateY(41px); } }
.scroll > .txt {
  color: #fff;
  font-weight: 600;
  letter-spacing: 0.1em;
  font-size: 12px;
  position: absolute;
  bottom: 80px;
  display: flex;
  justify-content: center;
  width: 100%; }

/*------------------------------------------*/
@media screen and (max-width: 767px) {
  #service {
    padding-top: 40px;
    margin-top: -48px; } }
#service .inner .list {
  margin-top: 64px; }
  @media screen and (max-width: 767px) {
    #service .inner .list {
      margin-top: 32px; } }
  #service .inner .list ul li {
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px;
    padding-bottom: 20px;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 767px) {
      #service .inner .list ul li {
        flex-direction: column;
        margin-bottom: 10px;
        padding-bottom: 10px; } }
    #service .inner .list ul li:first-child {
      border-top: 1px solid #ccc;
      padding-top: 20px; }
      @media screen and (max-width: 767px) {
        #service .inner .list ul li:first-child {
          padding-top: 10px; } }
    #service .inner .list ul li .sub {
      width: 160px;
      padding: 0 5px;
      box-sizing: border-box;
      font-size: 15px;
      font-weight: 700;
      color: #009a7d; }
      @media screen and (max-width: 767px) {
        #service .inner .list ul li .sub {
          width: 100%;
          margin-bottom: 5px; } }
    #service .inner .list ul li .detail {
      width: 840px;
      padding: 0 5px;
      box-sizing: border-box; }
      @media screen and (max-width: 767px) {
        #service .inner .list ul li .detail {
          width: 100%;
          height: 100%; } }
      #service .inner .list ul li .detail .car_list {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-bottom: -10px; }
        @media screen and (max-width: 767px) {
          #service .inner .list ul li .detail .car_list {
            flex-direction: column;
            margin-bottom: -5px; } }
        #service .inner .list ul li .detail .car_list .block {
          background: #333;
          width: 410px;
          display: flex;
          justify-content: space-between;
          align-items: center;
          margin-bottom: 10px;
          position: relative; }
          @media screen and (max-width: 767px) {
            #service .inner .list ul li .detail .car_list .block {
              width: 100%;
              height: 100%;
              margin-bottom: 5px; } }
          #service .inner .list ul li .detail .car_list .block .img {
            width: 200px;
            line-height: 0; }
            @media screen and (max-width: 767px) {
              #service .inner .list ul li .detail .car_list .block .img {
                width: 40%; } }
          #service .inner .list ul li .detail .car_list .block .txt {
            width: 210px;
            padding: 0 20px;
            box-sizing: border-box;
            color: #fff; }
            @media screen and (max-width: 767px) {
              #service .inner .list ul li .detail .car_list .block .txt {
                width: 60%;
                font-size: 12px; } }
          #service .inner .list ul li .detail .car_list .block .number {
            color: #fff;
            background: linear-gradient(to bottom right, rgba(255, 255, 255, 0) 50%, #009a7d 50.5%) no-repeat top left/100% 100%;
            width: 64px;
            height: 64px;
            position: absolute;
            bottom: 0;
            right: 0; }
            @media screen and (max-width: 767px) {
              #service .inner .list ul li .detail .car_list .block .number {
                width: 40px;
                height: 40px; } }
            #service .inner .list ul li .detail .car_list .block .number p {
              position: absolute;
              bottom: 4px;
              right: 4px;
              font-weight: 600; }
              @media screen and (max-width: 767px) {
                #service .inner .list ul li .detail .car_list .block .number p {
                  bottom: 1px;
                  right: 1px;
                  font-size: 10px; } }
              #service .inner .list ul li .detail .car_list .block .number p span {
                font-size: 20px;
                font-weight: 700; }
                @media screen and (max-width: 767px) {
                  #service .inner .list ul li .detail .car_list .block .number p span {
                    font-size: 14px; } }
          #service .inner .list ul li .detail .car_list .block a {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            text-indent: -999px; }
          #service .inner .list ul li .detail .car_list .block:hover {
            filter: alpha(opacity=80);
            /* IE 6,7*/
            -ms-filter: "alpha(opacity=80)";
            /* IE 8,9 */
            -moz-opacity: 0.8;
            /* FF , Netscape */
            -khtml-opacity: 0.8;
            /* Safari 1.x */
            opacity: 0.8;
            zoom: 1;
            /*IE*/
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }

/*------------------------------------------*/
@media screen and (max-width: 767px) {
  #recruit {
    padding-top: 40px;
    margin-top: -48px; } }
#recruit .bg {
  background: #009a7d;
  position: relative;
  color: #fff;
  /*&::after {
  	content: "";
  	background: url(../images/trace1.png);
  	background-repeat: no-repeat;
  	background-size: contain;
  	width: 158px;
  	height: 210px;
  	position: absolute;
  	top: 0;
  	left: 0;
  	transform: scale(-1, 1);
  	@media screen and (max-width: $sp_size) {
  		width: calc( 158px / 2 );
  		height: calc( 210px / 2 );
  	}
  }
  &::before {
  	content: "";
  	background: url(../images/trace2.png);
  	background-repeat: no-repeat;
  	background-size: contain;
  	width: 345px;
  	height: 240px;
  	position: absolute;
  	bottom: 0;
  	right: 0;
  	transform: scale(-1, 1);
  	@media screen and (max-width: $sp_size) {
  		width: calc( 345px / 2 );
  		height: calc( 240px / 2 );
  	}
  }*/ }
  #recruit .bg .inner {
    position: relative; }
    #recruit .bg .inner .catch {
      text-align: center;
      margin-top: 56px;
      line-height: 1.7; }
      @media screen and (max-width: 767px) {
        #recruit .bg .inner .catch {
          margin-top: 20px;
          line-height: 1.5; } }
      #recruit .bg .inner .catch span {
        font-size: 30px;
        font-family: "hannari";
        font-weight: 500;
        letter-spacing: 0;
        padding-bottom: 4px;
        border-bottom: 2px solid #fff; }
        @media screen and (max-width: 767px) {
          #recruit .bg .inner .catch span {
            font-size: 20px; } }
    #recruit .bg .inner .lead {
      font-size: 15px;
      line-height: 30px;
      text-align: center;
      margin-top: 40px; }
      @media screen and (max-width: 767px) {
        #recruit .bg .inner .lead {
          margin-top: 20px;
          text-align: left;
          font-size: 14px;
          line-height: 1.5; } }
    #recruit .bg .inner .list_frame {
      background: #fff;
      color: #333;
      margin-top: 48px; }
      @media screen and (max-width: 767px) {
        #recruit .bg .inner .list_frame {
          margin-top: 24px; } }
      #recruit .bg .inner .list_frame .frame_inner {
        padding: 30px;
        display: flex;
        justify-content: space-between;
        box-sizing: border-box;
        flex-wrap: wrap; }
        @media screen and (max-width: 767px) {
          #recruit .bg .inner .list_frame .frame_inner {
            flex-direction: column;
            padding: 15px; } }
        #recruit .bg .inner .list_frame .frame_inner .list {
          width: 460px; }
          @media screen and (max-width: 767px) {
            #recruit .bg .inner .list_frame .frame_inner .list {
              width: 100%; } }
          #recruit .bg .inner .list_frame .frame_inner .list ul {
            margin-bottom: -20px; }
            @media screen and (max-width: 767px) {
              #recruit .bg .inner .list_frame .frame_inner .list ul {
                margin-bottom: -10px; } }
            #recruit .bg .inner .list_frame .frame_inner .list ul li {
              border-bottom: 1px solid #ccc;
              margin-bottom: 20px;
              padding-bottom: 20px;
              display: flex;
              justify-content: space-between; }
              @media screen and (max-width: 767px) {
                #recruit .bg .inner .list_frame .frame_inner .list ul li {
                  flex-direction: column;
                  margin-bottom: 10px;
                  padding-bottom: 10px; } }
              #recruit .bg .inner .list_frame .frame_inner .list ul li:first-child {
                border-top: 1px solid #ccc;
                padding-top: 20px; }
                @media screen and (max-width: 767px) {
                  #recruit .bg .inner .list_frame .frame_inner .list ul li:first-child {
                    padding-top: 10px; } }
              #recruit .bg .inner .list_frame .frame_inner .list ul li .sub {
                width: 120px;
                padding: 0 5px;
                box-sizing: border-box;
                font-size: 15px;
                font-weight: 700;
                color: #009a7d; }
                @media screen and (max-width: 767px) {
                  #recruit .bg .inner .list_frame .frame_inner .list ul li .sub {
                    width: 100%;
                    margin-bottom: 5px; } }
              #recruit .bg .inner .list_frame .frame_inner .list ul li .detail {
                width: 340px;
                padding: 0 5px;
                box-sizing: border-box; }
                @media screen and (max-width: 767px) {
                  #recruit .bg .inner .list_frame .frame_inner .list ul li .detail {
                    width: 100%; } }
        #recruit .bg .inner .list_frame .frame_inner .img {
          width: 460px;
          background: url(../images/recruit1.png);
          background-repeat: no-repeat;
          background-size: cover;
          background-position: center center; }
          @media screen and (max-width: 767px) {
            #recruit .bg .inner .list_frame .frame_inner .img {
              margin-top: 10px;
              width: 100%;
              height: 200px; } }
        #recruit .bg .inner .list_frame .frame_inner .contact {
          width: 800px;
          margin: 32px auto 0;
          background: #ff4e49;
          display: flex;
          justify-content: space-between;
          align-items: center; }
          @media screen and (max-width: 767px) {
            #recruit .bg .inner .list_frame .frame_inner .contact {
              width: 90%;
              flex-direction: column;
              margin: 16px auto 0; } }
          #recruit .bg .inner .list_frame .frame_inner .contact .left {
            text-align: center;
            font-size: 20px;
            font-weight: 600;
            color: #fff;
            width: 400px;
            box-sizing: border-box; }
            @media screen and (max-width: 767px) {
              #recruit .bg .inner .list_frame .frame_inner .contact .left {
                width: 100%;
                font-size: 16px;
                padding: 5px; } }
          #recruit .bg .inner .list_frame .frame_inner .contact .right {
            text-align: center;
            font-size: 32px;
            font-weight: 600;
            width: 400px;
            box-sizing: border-box;
            border: 4px solid #ff4e49;
            background: #fff;
            padding: 20px; }
            @media screen and (max-width: 767px) {
              #recruit .bg .inner .list_frame .frame_inner .contact .right {
                font-size: 24px;
                width: 100%;
                padding: 10px; } }
            #recruit .bg .inner .list_frame .frame_inner .contact .right span {
              font-size: 13px;
              font-weight: normal;
              display: block; }
              @media screen and (max-width: 767px) {
                #recruit .bg .inner .list_frame .frame_inner .contact .right span {
                  font-size: 12px; } }

/*------------------------------------------*/
@media screen and (max-width: 767px) {
  #about {
    padding-top: 40px;
    margin-top: -48px; } }
#about .inner .list_frame {
  margin-top: 64px; }
  @media screen and (max-width: 767px) {
    #about .inner .list_frame {
      margin-top: 32px; } }
  #about .inner .list_frame .frame_inner {
    display: flex;
    justify-content: space-between;
    box-sizing: border-box;
    flex-wrap: wrap;
    flex-direction: row-reverse; }
    @media screen and (max-width: 767px) {
      #about .inner .list_frame .frame_inner {
        flex-direction: column-reverse; } }
    #about .inner .list_frame .frame_inner .list {
      width: 480px; }
      @media screen and (max-width: 767px) {
        #about .inner .list_frame .frame_inner .list {
          width: 100%; } }
      #about .inner .list_frame .frame_inner .list ul {
        margin-bottom: -20px; }
        @media screen and (max-width: 767px) {
          #about .inner .list_frame .frame_inner .list ul {
            margin-bottom: -10px; } }
        #about .inner .list_frame .frame_inner .list ul li {
          border-bottom: 1px solid #ccc;
          margin-bottom: 20px;
          padding-bottom: 20px;
          display: flex;
          justify-content: space-between; }
          @media screen and (max-width: 767px) {
            #about .inner .list_frame .frame_inner .list ul li {
              flex-direction: column;
              margin-bottom: 10px;
              padding-bottom: 10px; } }
          #about .inner .list_frame .frame_inner .list ul li:first-child {
            border-top: 1px solid #ccc;
            padding-top: 20px; }
            @media screen and (max-width: 767px) {
              #about .inner .list_frame .frame_inner .list ul li:first-child {
                padding-top: 10px; } }
          #about .inner .list_frame .frame_inner .list ul li .sub {
            width: 120px;
            padding: 0 5px;
            box-sizing: border-box;
            font-size: 15px;
            font-weight: 700;
            color: #009a7d; }
            @media screen and (max-width: 767px) {
              #about .inner .list_frame .frame_inner .list ul li .sub {
                width: 100%;
                margin-bottom: 5px; } }
          #about .inner .list_frame .frame_inner .list ul li .detail {
            width: 340px;
            padding: 0 5px;
            box-sizing: border-box; }
            @media screen and (max-width: 767px) {
              #about .inner .list_frame .frame_inner .list ul li .detail {
                width: 100%; } }
    #about .inner .list_frame .frame_inner .img {
      width: 480px;
      background: url(../images/profile1.png);
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center center; }
      @media screen and (max-width: 767px) {
        #about .inner .list_frame .frame_inner .img {
          margin-top: 10px;
          width: 100%;
          height: 200px; } }

/*------------------------------------------*/
#map {
  margin-top: -40px; }
  @media screen and (max-width: 767px) {
    #map {
      margin-top: -20px; } }
  #map #map_canvas {
    width: 100%;
    height: 400px; }
    @media screen and (max-width: 767px) {
      #map #map_canvas {
        height: 300px; } }

/*------------------------------------------*/
#pankuzu {
  background: #fafafa; }
  @media screen and (max-width: 767px) {
    #pankuzu {
      padding-top: 48px; } }
  #pankuzu .inner {
    font-size: 13px;
    padding: 0; }
    @media screen and (max-width: 767px) {
      #pankuzu .inner {
        font-size: 10px;
        width: 95%; } }
    #pankuzu .inner ul {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      align-items: center;
      height: 40px; }
      #pankuzu .inner ul li::after {
        content: ">";
        margin: 0 8px; }
      #pankuzu .inner ul li:last-child::after {
        content: none; }

/*------------------------------------------*/
footer {
  background: #333;
  color: #fff; }
  footer .inner {
    text-align: center;
    padding: 40px 0; }
    @media screen and (max-width: 767px) {
      footer .inner {
        font-size: 12px;
        padding: 20px 0; } }

/*------------------------------------------*/
#contact .inner {
  width: 800px; }
  @media screen and (max-width: 767px) {
    #contact .inner {
      width: 100%; } }
  #contact .inner form {
    margin-top: 64px; }
    @media screen and (max-width: 767px) {
      #contact .inner form {
        margin-top: 32px; } }
    #contact .inner form ul li {
      border-bottom: 1px solid #ccc;
      margin-bottom: 20px;
      padding-bottom: 20px;
      display: flex;
      justify-content: space-between;
      align-items: flex-start; }
      @media screen and (max-width: 767px) {
        #contact .inner form ul li {
          flex-direction: column;
          margin-bottom: 10px;
          padding-bottom: 10px; } }
      #contact .inner form ul li:first-child {
        border-top: 1px solid #ccc;
        padding-top: 20px; }
        @media screen and (max-width: 767px) {
          #contact .inner form ul li:first-child {
            padding-top: 10px; } }
      #contact .inner form ul li .sub {
        width: 250px;
        padding: 0 5px;
        box-sizing: border-box;
        font-size: 15px;
        font-weight: 700;
        color: #009a7d;
        display: flex;
        justify-content: space-between;
        align-items: center; }
        @media screen and (max-width: 767px) {
          #contact .inner form ul li .sub {
            width: 100%;
            margin-bottom: 5px; } }
        #contact .inner form ul li .sub span {
          background: #ff4e49;
          color: #fff;
          padding: 8px;
          line-height: 1;
          font-size: 12px; }
          @media screen and (max-width: 767px) {
            #contact .inner form ul li .sub span {
              font-size: 10px;
              padding: 6px; } }
      #contact .inner form ul li .detail {
        width: 500px;
        padding: 0 5px;
        box-sizing: border-box; }
        @media screen and (max-width: 767px) {
          #contact .inner form ul li .detail {
            width: 100%;
            height: 100%; } }
        #contact .inner form ul li .detail.double {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          #contact .inner form ul li .detail.double .mfp_err {
            width: 250px;
            box-sizing: border-box; }
            @media screen and (max-width: 767px) {
              #contact .inner form ul li .detail.double .mfp_err {
                width: 49%; } }
        #contact .inner form ul li .detail input {
          padding: 8px;
          box-sizing: border-box;
          border-radius: 0;
          box-shadow: none;
          margin: 0;
          -webkit-appearance: none;
          border: 1px solid #ccc;
          background: #eee; }
          #contact .inner form ul li .detail input.w50 {
            width: 240px; }
            @media screen and (max-width: 767px) {
              #contact .inner form ul li .detail input.w50 {
                width: 49%; } }
          #contact .inner form ul li .detail input.w100 {
            width: 100%;
            max-width: 100%; }
        #contact .inner form ul li .detail textarea {
          width: 100% !important;
          max-width: 100%;
          height: 200px !important;
          background: #eee;
          border: 1px solid #ccc;
          padding: 8px;
          box-sizing: border-box;
          border-radius: 0;
          box-shadow: none;
          margin: 0;
          -webkit-appearance: none; }
  #contact .inner .btn {
    display: flex;
    justify-content: center;
    margin: 40px 0 0 0; }
    @media screen and (max-width: 767px) {
      #contact .inner .btn {
        margin: 20px auto 0 auto;
        width: 90%; } }
    #contact .inner .btn button {
      text-decoration: none;
      background-color: transparent;
      border: none;
      cursor: pointer;
      outline: none;
      padding: 0;
      appearance: none;
      text-shadow: none; }
      @media screen and (max-width: 767px) {
        #contact .inner .btn button {
          width: 100%; } }
      #contact .inner .btn button span {
        background: #ff4e49;
        width: 280px;
        height: 64px;
        color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 20px;
        font-weight: 600;
        letter-spacing: 0.1em; }
        @media screen and (max-width: 767px) {
          #contact .inner .btn button span {
            width: 100%; } }

/*------------------------------------------*/
.mfp_element_submit:hover {
  box-shadow: none; }

/*------------------------------------------*/
#thanks .inner {
  padding-bottom: 80px; }
  @media screen and (max-width: 767px) {
    #thanks .inner {
      padding-bottom: 40px; } }
  #thanks .inner .txt {
    text-align: center;
    font-size: 16px;
    line-height: 32px;
    margin-top: 56px;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      #thanks .inner .txt {
        text-align: left;
        font-size: 12px;
        line-height: 21px;
        margin-top: 28px;
        margin-bottom: 20px; } }
  #thanks .inner .btn {
    display: flex;
    justify-content: center; }
    @media screen and (max-width: 767px) {
      #thanks .inner .btn {
        width: 90%;
        margin: 0 auto; } }
    #thanks .inner .btn a {
      position: relative;
      text-decoration: none; }
      @media screen and (max-width: 767px) {
        #thanks .inner .btn a {
          width: 100%; } }
      #thanks .inner .btn a span {
        background: #ff4e49;
        width: 280px;
        height: 64px;
        color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 20px;
        font-weight: 600;
        letter-spacing: 0.1em; }
        @media screen and (max-width: 767px) {
          #thanks .inner .btn a span {
            width: 100%; } }

/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
/*------------------------------------------*/
