@charset "UTF-8";
/*
@include css3(transform, translate(-50%, -50%));
@include css3(transition, 0.3s ease-in-out);  
transform: rotate(0.03deg);
*/
@keyframes slide1 {
  0% {
    transform: translateX(100%); }
  to {
    transform: translateX(-100%); } }
@keyframes slide2 {
  0% {
    transform: translateX(0); }
  to {
    transform: translateX(-200%); } }
@keyframes AnimationTitle {
  0% {
    background-position: 0% 50%; }
  50% {
    background-position: 100% 50%; }
  100% {
    background-position: 0% 50%; } }
input, select, textarea {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

/*====================================
 お問い合わせ　
=====================================*/
.contact #content {
  padding: 20px 0 0 0; }
  .contact #content .inner {
    max-width: 860px; }
  .contact #content .contactBox p {
    padding: 0 0 0.5em;
    line-height: 200%; }
    @media screen and (max-width: 520px) {
      .contact #content .contactBox p {
        text-align: left;
        font-size: 14px; }
        .contact #content .contactBox p br {
          display: none; } }
    .contact #content .contactBox p.tx {
      text-align: center;
      font-weight: 700;
      padding: 0 0 1.5em;
      font-size: 18px; }
  .contact #content .tgl {
    background-color: #184081;
    padding: 0 50px 30px;
    color: #FFF;
    text-align: center; }
    @media screen and (max-width: 520px) {
      .contact #content .tgl {
        padding: 0 25px;
        margin: 10px auto; } }
    .contact #content .tgl .par {
      font-size: 20px;
      font-weight: 700;
      position: relative;
      padding: 30px; }
      @media screen and (max-width: 520px) {
        .contact #content .tgl .par {
          padding: 15px; } }
  .contact #content .form {
    padding: 50px 0 0 0; }
  .contact #content .post_form {
    display: none; }
  .contact #content .first_box.hide {
    display: none; }
  .contact #content .confirm_box {
    display: none; }
    .contact #content .confirm_box.show {
      -webkit-transition: 1s ease-in-out;
      -moz-transition: 1s ease-in-out;
      -ms-transition: 1s ease-in-out;
      -o-transition: 1s ease-in-out;
      transition: 1s ease-in-out;
      display: block; }
    .contact #content .confirm_box .confirm_code {
      padding: 0; }
    .contact #content .confirm_box .confirm_addresstx {
      padding: 0; }
    @media screen and (max-width: 767px) {
      .contact #content .confirm_box .submitArea p {
        width: 47%; }
        .contact #content .confirm_box .submitArea p input {
          width: 100%; } }
    @media screen and (max-width: 767px) {
      .contact #content .confirm_box .submitArea .modoru {
        width: 47%;
        margin: 0; } }
    @media screen and (max-width: 767px) {
      .contact #content .confirm_box .submitArea .modoru p {
        width: 100%; } }
  .contact #content .last_url {
    display: none; }
  .contact #content .last_step.disabled {
    pointer-events: none; }
  .contact #content .form_confirm {
    padding-bottom: 100px; }
  .contact #content .wpcf7-response-output {
    display: none; }
  .contact #content input, .contact #content select, .contact #content textarea {
    padding: 3px; }
    .contact #content input:focus, .contact #content select:focus, .contact #content textarea:focus {
      outline: none; }
    @media screen and (max-width: 1024px) {
      .contact #content input, .contact #content select, .contact #content textarea {
        width: 100%; } }
    .contact #content input.title, .contact #content select.title, .contact #content textarea.title {
      display: none; }
  .contact #content input[type="text"], .contact #content input[type="number"], .contact #content input[type="email"], .contact #content input[type="date"], .contact #content input[type="tel"], .contact #content textarea, .contact #content select {
    width: 100%;
    border: none;
    background-color: #FBFAF7;
    padding: 10px;
    border-radius: 5px;
    border: 1px solid #CCCCCC;
    -webkit-appearance: none; }
    @media screen and (max-width: 1024px) {
      .contact #content input[type="text"], .contact #content input[type="number"], .contact #content input[type="email"], .contact #content input[type="date"], .contact #content input[type="tel"], .contact #content textarea, .contact #content select {
        font-size: 12px; } }
  .contact #content input[type="date"] {
    min-height: 38px;
    text-align: left; }
  .contact #content input[type="number"] {
    -webkit-appearance: none;
    width: 100px;
    text-align: center; }
  .contact #content textarea {
    width: 100%; }
    .contact #content textarea.comment {
      max-height: 120px; }
  .contact #content .select {
    padding: 0; }
    .contact #content .select P {
      display: flex;
      justify-content: flex-start;
      gap: 0 20px; }
      .contact #content .select P span {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: 0 5px; }
  .contact #content input[type="radio"] {
    width: auto;
    margin: 0 5px 0 0; }
  .contact #content input[type="checkbox"] {
    display: inline-block;
    width: auto;
    margin: 0 !important;
    width: 20px;
    height: 20px;
    top: 5px;
    position: relative; }
  .contact #content label {
    margin: 0 10px 0 0; }
    @media screen and (max-width: 520px) {
      .contact #content label {
        margin: 0; } }
  .contact #content .hissu,
  .contact #content .nini {
    width: auto;
    margin: 0 0 0 5px;
    padding: 0px 10px;
    line-height: 180%;
    color: #FFF;
    font-size: 12px;
    border-radius: 50px;
    background-color: #C90508; }
  .contact #content .nini {
    background-color: #04837D; }
  @media screen and (max-width: 1240px) {
    .contact #content .form {
      padding: 0 20px; } }
  @media screen and (max-width: 520px) {
    .contact #content .form {
      padding: 0; } }
  .contact #content table {
    margin: 0 auto 50px;
    border: none;
    width: 100%; }
    @media screen and (max-width: 1260px) {
      .contact #content table {
        width: 100%; } }
    .contact #content table.type1 {
      margin-bottom: 0; }
    .contact #content table tr th, .contact #content table tr td {
      padding: 15px 0px;
      border: none;
      font-size: 15px; }
      @media screen and (max-width: 520px) {
        .contact #content table tr th, .contact #content table tr td {
          padding: 0 20px; } }
    .contact #content table tr th {
      position: relative;
      padding: 15px 0; }
      @media screen and (max-width: 520px) {
        .contact #content table tr th {
          padding: 10px 20px 0; } }
    .contact #content table tr td {
      padding: 15px 0 15px 10px; }
      @media screen and (max-width: 520px) {
        .contact #content table tr td {
          padding: 0 20px 10px; } }
      .contact #content table tr td p {
        line-height: 180%; }
        .contact #content table tr td p.mini {
          font-size: 14px;
          padding: 0; }
      .contact #content table tr td .addressBox {
        padding: 0; }
        .contact #content table tr td .addressBox .code {
          display: flex;
          justify-content: flex-start;
          gap: 0 10px;
          margin: 0 0 5px;
          padding: 0; }
          .contact #content table tr td .addressBox .code p {
            display: flex;
            justify-content: flex-start;
            align-items: center; }
            @media screen and (max-width: 520px) {
              .contact #content table tr td .addressBox .code p {
                width: 50%; } }
          .contact #content table tr td .addressBox .code .postcode {
            width: 200px; }
            @media screen and (max-width: 520px) {
              .contact #content table tr td .addressBox .code .postcode {
                width: 100%; } }
          .contact #content table tr td .addressBox .code .address_search {
            padding: 0; }
            @media screen and (max-width: 520px) {
              .contact #content table tr td .addressBox .code .address_search {
                width: 40%; } }
            .contact #content table tr td .addressBox .code .address_search p {
              cursor: pointer;
              background-color: #00AFF8;
              border-radius: 5px;
              padding: 8px 30px;
              color: #FFF; }
              @media screen and (max-width: 520px) {
                .contact #content table tr td .addressBox .code .address_search p {
                  width: 100%;
                  padding: 8px 0;
                  justify-content: center;
                  font-size: 14px; } }
        .contact #content table tr td .addressBox .address {
          padding: 0; }
  .contact #content .form_confirm {
    padding-bottom: 100px; }
    .contact #content .form_confirm table tr th, .contact #content .form_confirm table tr td {
      border-bottom: 1px solid #E0E0E0; }
      @media screen and (max-width: 520px) {
        .contact #content .form_confirm table tr th, .contact #content .form_confirm table tr td {
          border-bottom: none; } }
  @media screen and (max-width: 520px) {
    .contact #content .wpcf7-validates-as-date {
      margin: 0 0 5px; } }
  .contact #content .wpcf7-radio .wpcf7-list-item {
    margin: 0 1em 0 0; }
  .contact #content .wpcf7-checkbox.kikkake {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap; }
    .contact #content .wpcf7-checkbox.kikkake .wpcf7-list-item {
      width: 25%;
      margin: 0;
      padding: 5px 0; }
      @media screen and (max-width: 1024px) {
        .contact #content .wpcf7-checkbox.kikkake .wpcf7-list-item {
          padding: 0 0 2px;
          width: 100%;
          font-size: 15px; } }
  .contact #content .kakunin th {
    padding: 15px; }
  .contact #content .wpcf7-not-valid-tip {
    font-size: 14px; }
  .contact #content .privacyCh {
    font-size: 16px;
    padding: 0 50px 50px;
    border-bottom: 1px solid #D1D1D1; }
    @media screen and (max-width: 520px) {
      .contact #content .privacyCh {
        font-size: 14px;
        padding: 20px; } }
    .contact #content .privacyCh h2, .contact #content .privacyCh h3 {
      text-align: center;
      font-size: 24px;
      padding: 0 0 30px; }
      @media screen and (max-width: 768px) {
        .contact #content .privacyCh h2, .contact #content .privacyCh h3 {
          font-size: 18px; } }
    .contact #content .privacyCh p {
      padding: 0 0 1em;
      text-align: center; }
      @media screen and (max-width: 768px) {
        .contact #content .privacyCh p {
          font-size: 14px;
          text-align: left; } }
    .contact #content .privacyCh a {
      text-decoration: underline; }
    .contact #content .privacyCh .chBox {
      position: relative;
      padding: 10px 0 0 0; }
      .contact #content .privacyCh .chBox p {
        display: flex;
        justify-content: center;
        align-content: center;
        line-height: 100%; }
        @media screen and (max-width: 520px) {
          .contact #content .privacyCh .chBox p {
            font-size: 12px; } }
      .contact #content .privacyCh .chBox .hissu {
        -webkit-transform: translate(0%, 0%);
        -moz-transform: translate(0%, 0%);
        -ms-transform: translate(0%, 0%);
        -o-transform: translate(0%, 0%);
        transform: translate(0%, 0%);
        position: relative;
        top: auto;
        left: auto;
        right: auto; }
        @media screen and (max-width: 520px) {
          .contact #content .privacyCh .chBox .hissu {
            font-size: 10px; } }
    .contact #content .privacyCh label {
      position: relative; }
    .contact #content .privacyCh input[type="checkbox"] {
      width: 15px;
      height: 15px;
      top: 3px;
      margin: 0 7px 0 0 !important;
      position: relative; }
  .contact #content .submitArea {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 0 50px; }
    @media screen and (max-width: 620px) {
      .contact #content .submitArea {
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 10px 0 0 0; } }
    .contact #content .submitArea .in,
    .contact #content .submitArea .mo {
      background-image: none;
      width: 300px;
      margin: 0 10px; }
      @media screen and (max-width: 620px) {
        .contact #content .submitArea .in,
        .contact #content .submitArea .mo {
          width: 48%;
          margin: 5px 0 0; } }
    .contact #content .submitArea p {
      display: flex;
      justify-content: center;
      padding: 0 !important;
      background: linear-gradient(90deg, #014188 0%, #04aceb 100%);
      overflow: hidden;
      border-radius: 50px; }
      .contact #content .submitArea p .wpcf7-submit,
      .contact #content .submitArea p .modoru {
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        position: relative;
        display: flex;
        justify-content: space-around;
        align-items: center;
        width: 280px;
        padding: 16px 5px;
        line-height: 1.8;
        text-decoration: none;
        transition: 0.3s ease-in-out;
        font-weight: 500;
        background-color: transparent;
        color: #FFF;
        border: none;
        letter-spacing: 0.2em; }
        @media screen and (max-width: 520px) {
          .contact #content .submitArea p .wpcf7-submit,
          .contact #content .submitArea p .modoru {
            padding: 19px 5px; } }
        .contact #content .submitArea p .wpcf7-submit:hover,
        .contact #content .submitArea p .modoru:hover {
          opacity: 0.8;
          color: #FFF; }
        .contact #content .submitArea p .wpcf7-submit:disabled,
        .contact #content .submitArea p .modoru:disabled {
          opacity: 0.5;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -ms-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
      .contact #content .submitArea p .disable {
        border: 2px solid #184081; }
      .contact #content .submitArea p .wpcf7-spinner {
        display: none; }
    .contact #content .submitArea .send_confirm,
    .contact #content .submitArea .modoru {
      margin: 0 10px; }
      .contact #content .submitArea .send_confirm p,
      .contact #content .submitArea .modoru p {
        cursor: pointer;
        background: linear-gradient(90deg, #014188 0%, #04aceb 100%);
        overflow: hidden;
        border-radius: 50px;
        width: 280px;
        padding: 16px 5px !important;
        line-height: 1.8;
        text-decoration: none;
        transition: 0.3s ease-in-out;
        font-weight: 500;
        background-color: transparent;
        color: #FFF;
        border: none;
        letter-spacing: 0.2em; }
        @media screen and (max-width: 520px) {
          .contact #content .submitArea .send_confirm p,
          .contact #content .submitArea .modoru p {
            padding: 19px 5px; } }
        .contact #content .submitArea .send_confirm p:hover,
        .contact #content .submitArea .modoru p:hover {
          opacity: 0.8;
          color: #FFF; }
  .contact #content .bottomTx {
    text-align: center;
    padding: 0 0 40px;
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 25px; }
    @media screen and (max-width: 520px) {
      .contact #content .bottomTx {
        text-align: left;
        padding: 20px 0 40px; } }
    .contact #content .bottomTx a {
      color: #00A7E6; }
  .contact #content .bnr {
    background: url("../images/page/contactBr.webp") no-repeat center;
    background-size: cover;
    border-radius: 5px;
    width: 100%;
    height: 220px;
    margin-bottom: 70px;
    padding: 35px 0 0 0; }
    .contact #content .bnr p {
      text-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
      letter-spacing: 0.1em;
      text-align: center;
      line-height: 30px;
      color: #FFF;
      padding: 0; }
      .contact #content .bnr p.tx1 {
        font-size: 20px;
        font-weight: 700;
        padding: 0 0 20px; }
        @media screen and (max-width: 520px) {
          .contact #content .bnr p.tx1 {
            font-size: 15px;
            padding: 0 0 20px;
            line-height: 150%; } }
      .contact #content .bnr p.tx2 {
        font-size: 37px;
        font-weight: 700;
        padding: 0 0 20px; }
        @media screen and (max-width: 520px) {
          .contact #content .bnr p.tx2 {
            font-size: 28px; } }
      .contact #content .bnr p.tx3 {
        font-size: 16px;
        font-weight: 700; }
        @media screen and (max-width: 520px) {
          .contact #content .bnr p.tx3 {
            font-size: 14px; } }

.contact.thanks #content {
  min-height: 100px; }
  .contact.thanks #content .contactComplete {
    text-align: center; }
    .contact.thanks #content .contactComplete .title {
      font-size: 60px;
      font-weight: 700;
      text-align: center;
      padding: 80px 0 50px; }
      @media screen and (max-width: 520px) {
        .contact.thanks #content .contactComplete .title {
          font-size: 24px;
          padding: 30px 0 20px; } }
    .contact.thanks #content .contactComplete .tx {
      font-size: 16px;
      font-weight: 600;
      line-height: 250%;
      background-color: rgba(24, 64, 129, 0.1);
      padding: 50px 60px;
      text-align: left; }
    .contact.thanks #content .contactComplete .btn {
      padding: 50px 0;
      text-align: center;
      display: flex;
      justify-content: center; }
      .contact.thanks #content .contactComplete .btn a, .contact.thanks #content .contactComplete .btn span {
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -ms-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        max-width: 400px;
        margin: 0 auto;
        height: 50px;
        padding: 9px 25px 9px 30px;
        line-height: 1.8;
        letter-spacing: 0.07em;
        text-decoration: none;
        transition: 0.3s ease-in-out;
        font-weight: 600;
        background: linear-gradient(90deg, #014188 0%, #04aceb 100%);
        color: #FFF;
        border-radius: 20px;
        font-size: 14px;
        overflow: hidden;
        /*
        &:before,
        &:after{
        	z-index: -1;
        	@include css3(transition, 0.3s ease-in-out);  
        	content: "";
        	background: linear-gradient(90deg,rgba(#014188, 1) 0%, rgba(#04ACEB, 1) 100%);
        	width: 100%;
        	height: 100%;
        	position: absolute;
        	top: 0;
        	left: 0;
        }
        &:after{
        	opacity: 0;
        	background: linear-gradient(-90deg,rgba(#014188, 1) 0%, rgba(#04ACEB, 1) 100%);
        }
        &:hover{
        	&:after{
        		@include css3(transition, 0.3s ease-in-out);  
        		opacity: 1;
        	}
        }
        */ }
      .contact.thanks #content .contactComplete .btn a {
        width: 300px; }
