@charset "utf-8";
/* -------------------------------------------------------
/* CSS Document by Rakus
/* for only TOP page's HubSpot Form .
/*   common portalId: '315197'
/*    1st formId: 'fff8feba-869a-47f5-bbb9-9c8e20d0113d'
/*    2nd formId: '8377d5ca-8dc1-430f-b804-ddb2efef81dc'
/* -------------------------------------------------------*/

/* =================================
HubSpot's style reset
================================= */
form *{
  box-sizing: border-box;
  
}
input[type="text"] {
padding: 0;
border: none;
border-radius: 0;
outline: none;
background: none;
background: #fff;
}
input[type="radio"] {
display: none;
}
input[type="radio"]:checked + label {
background: #000;
}
input[type="checkbox"] {
display: none;
}
input[type="checkbox"]:checked + label {
background: #000;
}
select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none;
outline: none;
background: transparent;
}
textarea {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
resize: none;
padding: 0;
border: 0;
outline: none;
background: transparent;
}
button,
input[type="submit"] {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 0;
border: none;
outline: none;
background: transparent;
}
input:-webkit-autofill {
-webkit-box-shadow: 0 0 0px 1000px #fff inset;
}
input:-internal-autofill-selected {
background: #fff !important;
}
.hs-form input.hs-input:valid{
  background: #f2fafd;
}
.hs-form select.hs-input:valid{
  background: #f2fafd;
}

/* Common setting */
.hs-form-field label span{
  font-size: 14px;
  font-weight: bold;
}
.hs-form-field label span.hs-form-required {
    color: #ff9900;
    font-weight: normal;
    font-size: 12px;
    border: 1px solid #ffaa00;
    border-radius: 2px;
    padding: 2px 4px;
    line-height: 100%;
    margin: 0 5px 5px 5px;
  background: #fff;
  display: inline-block;
}
.hs-form input.hs-input:invalid{
background: #fff;
}
input[type="text"],input[type="email"],input[type="tel"],textarea{
  background: #fff;
  line-height: 1.8;
    letter-spacing: 0.5px;
    padding: 5px 10px;
    border-radius: 5px;
  width: 100%;
  border: 1px solid #ccc;
  margin-bottom: 5px;
  display: inline-block;
  font-size: 15px;
}
#product-contact input[type="text"], #product-contact input[type="email"], #product-contact input[type="tel"], #product-contact textarea{
  background: #fff;
  line-height: 1.8;
    letter-spacing: 0.5px;
    padding: 5px 10px;
    border-radius: 5px;
  width: 100% !important;
  border: 1px solid #ccc;
  margin-bottom: 5px;
  display: inline-block;
  font-size: 15px;
}
input[type="text"]:focus,input[type="email"]:focus,input[type="tel"]:focus,textarea:focus{
border: 1px solid #f3b840 !important;
background: #fff3d2 !important;
outline: 0;
}
select{
  line-height: 2;
    padding: 10px 10px;
    border-radius: 5px;
border: 1px solid #ccc !important;
outline: 0;
width: 100%;
color: #555;
text-shadow: 0 1px white;
/* Fallback for IE 8 */
background: #fff;
/* "transparent" doesn't work with Opera */
background: rgba("#000", 0) !important;
-webkit-appearance: none;
}
select {
  -moz-appearance: menulist;
  -webkit-appearance: menulist;
}
select::-ms-expand {
    display: block;
}
select::before {
  position: absolute;
  top: 0.8em;
  right: 0.8em;
  width: 0;
  height: 0;
  padding: 0;
  content: '';
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #da3c41;
  pointer-events: none;
}
#contact div.hs-form-field label {
  width: auto !important;
}
input[type="checkbox"] {
display: inline-block;
  width: 20px;
  height: 20px;
  vertical-align: -4px;
  margin-right: 5px;
}
.hs-fieldtype-checkbox ul{
margin-top: 5px;}

.hs-fieldtype-checkbox ul li{
  display: inline-block;
  padding: 0 10px;
}
.hs-fieldtype-checkbox ul li label span{
  font-weight: normal;
  font-size: 16px;
}
#product-contact .hs-fieldtype-checkbox ul li label span{
  font-weight: normal;
  font-size: 16px !important;
}



ul.hs-error-msgs li label{
line-height: 1.3;
  color: #ff6d6d;
  font-size: 12px;
  margin: 0 auto 5px auto;
  text-align: justify;
  display: block;
}
 ul.hs-error-msgs li label a{
text-decoration: underline;
}
 ul.hs-error-msgs li label a:hover{
text-decoration: none;
  color: #f48484;
}
 .hs_error_rollup ul.hs-error-msgs li label{
  padding: 0;
  display: block;
  margin: 0 auto;
  font-size: 13px;
  font-weight: bold;
}

/* =================================
HubSpot's style customize for 1st formId
#top-mailmag-form
================================= */
#top-mailmag-form {
  margin: 5px auto;
  width: 100%;
  padding: 5px;
  box-sizing: border-box;
}

#top-mailmag-form .submitted-message{
  border-bottom: 1px solid #2d98df;
  border-top: 1px solid #2d98df;
  padding: 5px;
  margin: 0 auto;
}

/* =================================
HubSpot's style customize for 2nd formId
#contact
================================= */
#contact{
width: 100%;
}
#contact h2{
text-align: center;
margin-top: 0px;
	letter-spacing: 2px;
	padding: 0.8em 0px;
  color: #fff;
}
#contact .gray{
width: 100%;
}
#contact .inner{
width: 95%;
  max-width: 880px;
  margin: 0 auto;
}
#contact .hs-form {
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 980px;
	padding: 50px 0;
  position: relative;
}
#contact div.hs-form-field{
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
  justify-content: space-between;
}
#contact div.hs-form-field label{
  width: 30%;
max-width: 180px;
  margin-top: 10px;
}
#contact div.hs-form-field div.input{
width: 70%;
max-width: 800px;
}
#contact ul.hs-error-msgs{
width: 100%;
position: relative;
}
#contact ul.hs-error-msgs li{
z-index: 10;
  position: absolute;
width: auto;
max-width: 400px;
font-family:Verdana,"游ゴシック Medium","Yu Gothic Medium","游ゴシック体",YuGothic,sans-serif;
-moz-font-feature-settings: "palt";
-webkit-font-feature-settings: "palt";
font-feature-settings: "palt";
font-variant-ligatures: no-common-ligatures;
text-align: right;
display: inline-block !important;
right: 10px;
  bottom: 15px;
}
#contact ul.hs-error-msgs li label{
width: 100%;
  max-width: none;
  margin: 0 auto;
    color: #ed6c56;
}
#contact ul.hs-error-msgs li label a{
padding-top: 50px;
  display: inline-block;
    bottom: 0px;
}
#contact ul.hs-error-msgs li label a:hover{
opacity: 0.8;
color: #ff6d6d;
}

#contact .hs_error_rollup ul.hs-error-msgs li {
  color:#ed6c56 !important;
width: 100% !important;
line-height: 1;
padding: 0 0 0.5em 0 !important;
margin: 20px auto 0 auto;
text-align: center;
  background: none;
  position: relative;
  right: inherit;
  max-width: none;
}
#contact .hs_error_rollup ul.hs-error-msgs li label {
    width: 100%;
  text-align: center;
  font-size: 18px !important;
    max-width: none;
    margin: 0 auto;
  color:#ed6c56 !important;
  position: relative;
}
#contact .hs_error_rollup ul.hs-error-msgs li::before {
display: none;
}
#contact .hs-form .hs-button {
    position: relative;
    color: #fff;
    background-color: #2d98df;
    border-bottom: 3px solid #ddd;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    font-size: 200%;
    font-weight: 700;
    line-height: 1.2;
    margin: 10px 0 0 0;
    padding: 20px;
    text-align: center;
    width: 100%;
    border-radius: 10px;
    -moz-user-select: none;
    -webkit-user-select: none;
    user-select: none;
    top: 1rem;
	left:0;
    word-wrap: break-word !important;
}
#contact .hs-form .hs-button:hover, .hs-form .hs-button:focus {
    background-color: #69b9e9;
      border-bottom: 3px solid #69b9e9;
}
#contact .lead {
    text-align: center;
    font-size: 110%;
    line-height: 180%;
	padding-bottom: 50px;
}
#contact .lead a {
    color: #066;
}
#contact .lead a:hover {
    text-decoration: underline;
}

#product-contact .hs-form {
    display: block;
    margin: 0 auto;
    width: 100%;
    max-width: 980px;
	padding: 30px 0 20px;
  position: relative;
}
#product-contact div.hs-form-field {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 10px;
  justify-content: space-between;
}
#product-contact div.hs-form-field label{
  width: 30%;
max-width: 180px;
  margin-top: 10px;
}
#product-contact div.hs-form-field div.input{
width: 70%;
max-width: 800px;
}
#product-contact ul.hs-error-msgs{
width: 100%;
position: relative;
}
#product-contact ul.hs-error-msgs li{
z-index: 10;
  position: absolute;
width: auto;
max-width: 400px;
font-family:Verdana,"游ゴシック Medium","Yu Gothic Medium","游ゴシック体",YuGothic,sans-serif;
-moz-font-feature-settings: "palt";
-webkit-font-feature-settings: "palt";
font-feature-settings: "palt";
font-variant-ligatures: no-common-ligatures;
text-align: right;
display: inline-block !important;
right: 10px;
  bottom: 15px;
}
#product-contact ul.hs-error-msgs li label{
width: 100%;
  max-width: none;
  margin: 0 auto;
    color: #ed6c56;
}
#product-contact ul.hs-error-msgs li label a{
padding-top: 50px;
  display: inline-block;
    bottom: 0px;
}
#product-contact ul.hs-error-msgs li label a:hover{
opacity: 0.8;
color: #ff6d6d;
}

#product-contact .hs_error_rollup ul.hs-error-msgs li {
  color:#ed6c56 !important;
width: 100% !important;
line-height: 1;
padding: 0 0 0.5em 0 !important;
margin: 20px auto 0 auto;
text-align: center;
  background: none;
  position: relative;
  right: inherit;
  max-width: none;
}
#product-contact .hs_error_rollup ul.hs-error-msgs li label {
    width: 100%;
  text-align: center;
  font-size: 18px !important;
    max-width: none;
    margin: 0 auto;
  color:#ed6c56 !important;
  position: relative;
}
#product-contact .hs_error_rollup ul.hs-error-msgs li::before {
display: none;
}
#product-contact .hs-form .hs-button {
    position: relative;
    color: #fff;
    background-color: #2d98df;
    border-bottom: 3px solid #ddd;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    font-size: 200%;
    font-weight: 700;
    line-height: 1.2;
    margin: 10px 0 0 0;
    padding: 20px;
    text-align: center;
    width: 100%;
    border-radius: 10px;
    -moz-user-select: none;
    -webkit-user-select: none;
    user-select: none;
    top: 1rem;
	left:0;
    word-wrap: break-word !important;
}
#product-contact .hs-form .hs-button:hover, .hs-form .hs-button:focus {
    background-color: #69b9e9;
      border-bottom: 3px solid #69b9e9;
}
#product-contact .lead {
  text-align: left;
  font-size: 12px;
  line-height: 1.4;
}
#product-contact .lead a {
    color: #066;
}
#product-contact .lead a:hover {
    text-decoration: underline;
}

#product-contact div.hs-form-field label{
  width: 30%;
max-width: 180px;
  margin-top: 10px;
}
#product-contact div.hs-form-field div.input{
width: 70%;
max-width: 800px;
}
#product-contact ul.hs-error-msgs{
width: 100%;
position: relative;
}
#product-contact ul.hs-error-msgs li{
z-index: 10;
  position: absolute;
width: auto;
max-width: 400px;
font-family:Verdana,"游ゴシック Medium","Yu Gothic Medium","游ゴシック体",YuGothic,sans-serif;
-moz-font-feature-settings: "palt";
-webkit-font-feature-settings: "palt";
font-feature-settings: "palt";
font-variant-ligatures: no-common-ligatures;
text-align: right;
display: inline-block !important;
right: 10px;
  bottom: 15px;
}
#product-contact ul.hs-error-msgs li label{
width: 100%;
  max-width: none;
  margin: 0 auto;
    color: #ed6c56;
}
#product-contact ul.hs-error-msgs li label a{
padding-top: 50px;
  display: inline-block;
    bottom: 0px;
}
#product-contact ul.hs-error-msgs li label a:hover{
opacity: 0.8;
color: #ff6d6d;
}

#product-contact .hs_error_rollup ul.hs-error-msgs li {
  color:#ed6c56 !important;
width: 100% !important;
line-height: 1;
padding: 0 0 0.5em 0 !important;
margin: 20px auto 0 auto;
text-align: center;
  background: none;
  position: relative;
  right: inherit;
  max-width: none;
}
#product-contact .hs_error_rollup ul.hs-error-msgs li label {
    width: 100%;
  text-align: center;
  font-size: 18px !important;
    max-width: none;
    margin: 0 auto;
  color:#ed6c56 !important;
  position: relative;
}
#product-contact .hs_error_rollup ul.hs-error-msgs li::before {
display: none;
}
#product-contact .hs-form .hs-button {
    position: relative;
    color: #fff;
    background-color: #2d98df;
    border-bottom: 3px solid #ddd;
    text-decoration: none;
    cursor: pointer;
    display: inline-block;
    font-size: 200%;
    font-weight: 700;
    line-height: 1.2;
    margin: 10px 0 0 0;
    padding: 20px;
    text-align: center;
    width: 100%;
    border-radius: 10px;
    -moz-user-select: none;
    -webkit-user-select: none;
    user-select: none;
    top: 1rem;
	left:0;
    word-wrap: break-word !important;
}
#product-contact .hs-form .hs-button:hover, .hs-form .hs-button:focus {
    background-color: #69b9e9;
      border-bottom: 3px solid #69b9e9;
}

#product-contact select {
  padding: 10px 10px !important;
}
#product-contact .hs-form .inputs-list {
  margin: 0 0 5px;
  width: 100%;
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}
/*
#product-contact  li.hs-form-checkbox {
  width: 50% !important;
}
*/


@media (max-width: 859px){
  #contact .hs-form{
    width: 98%;
    padding: 20px 0;
  }
  #contact div.hs-form-field{
    display: block;
  }
  #contact div.hs-form-field label{
  width: 100%;
max-width: none;
}
#contact div.hs-form-field div.input{
width: 100%;
max-width: none;
}
#contact ul.hs-error-msgs li{
z-index: 10;
  width: 100%;
  position: relative;
max-width: none;
text-align: justify;
display: block !important;
right: auto;
  bottom: auto;
}
  #contact ul.hs-error-msgs li label a{
    padding-top: 0;
  }
  
#product-contact .hs-form{
  width: 98%;
  padding: 20px 0;
}
#product-contact div.hs-form-field{
  display: block;
}
#product-contact div.hs-form-field label{
  width: 100%;
  max-width: none;
}
#product-contact div.hs-form-field div.input{
  width: 100%;
  max-width: none;
}
#product-contact ul.hs-error-msgs li{
  z-index: 10;
  width: 100%;
  position: relative;
  max-width: none;
  text-align: justify;
  display: block !important;
  right: auto;
  bottom: auto;
}
#product-contact ul.hs-error-msgs li label a{
  padding-top: 0;
}
  
  
  
  
}
