@charset "utf-8";
/*##################################################
 *トップページ */
.index_firstview {
  width: 100%;
  background-color: #fafaf2;
  position: relative;
  z-index: 0;
}
.index_firstview .message {
  position: relative;
  padding: 80px 0 0 0;
  overflow: hidden;
  animation: message-fadein 4s ease 0s 1 normal; /*ページ全体のフェードイン*/
  -webkit-animation: message-fadein 4s ease 0s 1 normal; /*ページ全体のフェードイン*/
}
.index_firstview .message::before {
  content: "";
  position: absolute;
  top: 192px;
  left: 0;
  width: 100%;
  height: 280px;
  background-image: url("../../image/index_firstview-bgtext.png");
  background-repeat: repeat-x;
  background-position: 0 0;
  background-size: 8000px 280px;
  animation: message-slidein 240s linear infinite;
  z-index: -1;
}
@keyframes message-fadein { /*ページ全体のフェードイン*/
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes message-fadein { /*ページ全体のフェードイン*/
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@keyframes message-slidein {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: -8000px 0;
  }
}
.index_firstview .message p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 40px;
  font-weight: bold;
  line-height: 72px;
  color: #499649;
  letter-spacing: 0.1em;
  text-align: center;
  margin: 0 0 24px 0;
}
.index_firstview .message figure {
  width: 90%;
  max-width: 1366px;
  margin: 0 auto 0 auto;
}
.index_firstview .message figure img {
  width: 100%;
  height: auto;
}
.index_news {
  overflow: hidden;
  margin-bottom: 64px !important;
}
.index_news .contfigu {
  float: right;
  width: 324px;
}
.index_news .contfigu img {
  width: 100%;
  max-width: 300px;
  height: auto
}
.index_news .conttext {
  float: left;
  width: 700px;
  text-align: left;
  padding: 12px 0 0 0;
  overflow: hidden;
}
.index_news .conttext h1 {
  float: left;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-weight: bold;
  color: #499649;
  text-align: left;
  width: 135px;
}
.index_news .conttext ul {
  float: left;
  border-left: 1px solid #ddd;
  padding: 12px 0 0 32px;
  width: 564px;
}
.index_news .conttext ul li {
  font-size: 16px;
  line-height: 28px;
  margin: 0 0 16px 0;
  display: flex;
}
.index_news .conttext ul li span {
  display: block;
}
.index_news .conttext ul li span:nth-child(1) {
  width: 160px;
}
.index_news .conttext ul li span:nth-child(2) {
  width: 404px;
}
.index_about {
  overflow: hidden;
  margin-bottom: 64px !important;
}
.index_about .contfigu {
  float: left;
  width: 484px;
}
.index_about .contfigu img {
  width: 100%;
  height: auto
}
.index_about .conttext {
  float: right;
  width: 484px;
  text-align: left;
}
.index_about .conttext p {
  line-height: 44px;
}
.index_business {
  overflow: hidden;
  padding-bottom: 64px;
}
.index_business h2 {
  margin-bottom: 20px !important;
}
.index_business .pillar {
  float: left;
  width: 280px;
}
.index_business .pillar p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-weight: bold;
  line-height: 40px;
}
.index_business .pillar:nth-of-type(1) {
  color: #8eccae;
}
.index_business .pillar:nth-of-type(2) {
  color: #96c15c;
}
.index_business .pillar:nth-of-type(3) {
  color: #5896d0;
}
.index_business .pillar figure {
  width: 280px;
}
.index_business .pillar figure img {
  width: 100%;
  height: auto
}
.index_company {
  overflow: hidden;
}
.index_company .contfigu {
  float: right;
  width: 50%;
}
.index_company .contfigu img {
  width: 100%;
  height: auto
}
.index_company .conttext {
  float: left;
  width: 50%;
  text-align: left;
  padding: 16px 0 0 0;
}
.index_company .conttext .btn_view-detail1 {
  margin: 32px 0 0 0 !important;
}
.index_recruit {
  overflow: hidden;
}
.index_recruit .contfigu {
  float: left;
  width: 50%;
}
.index_recruit .contfigu img {
  width: 100%;
  height: auto
}
.index_recruit .conttext {
  float: right;
  width: 50%;
  text-align: left;
  padding: 48px 0 0 0;
}
.index_recruit .conttext .btn_view-detail1 {
  margin: 32px 0 0 0 !important;
}
/* 1366px以下 */
@media screen and (max-width: 1366px) {
  .index_firstview .message {
    padding: 40px 0 0 0;
  }
}
/* 768px以下 */
@media screen and (max-width: 768px) {
  .index_firstview .message {
    padding: 32px 0 0 0;
  }
  .index_firstview .message::before {
    top: inherit;
    top: 136px;
    height: 140px;
    background-size: 4000px 140px;
  }
  .index_firstview .message p {
    font-size: 28px;
    line-height: 48px;
    margin: 0 0 48px 0;
  }
  .index_firstview .message figure {
    width: 98%;
  }
  .index_news {
    overflow: hidden;
    margin-bottom: 32px !important;
  }
  .index_news .contfigu {
    float: none;
    width: 100%;
    max-width: 300px;
    margin: 0 auto 0 auto;
  }
  .index_news .conttext {
    float: none;
    width: 100%;
    padding: 0;
    margin: 0 0 8px 0;
  }
  .index_news .conttext h1 {
    float: none;
    margin: 0 0 12px 0;
    text-align: center;
    width: auto;
    display: flex; /* 文字と横線を横並び */
    justify-content: center; /* 文字を中央寄せ */
    align-items: center; /* 横線を上下中央 */
  }
  .index_news .conttext h1::before, .index_news .conttext h1::after {
    content: "";
    height: 1px; /* 横線の高さ */
    flex-grow: 1; /* 横幅いっぱい */
    background-color: #ddd; /* 横線の色 */
  }
  .index_news .conttext h1::before {
    margin-right: 24px;
  }
  .index_news .conttext h1::after {
    margin-left: 24px;
  }
  .index_news .conttext ul {
    float: none;
    border-left: none;
    padding: 0;
    width: 100%;
  }
  .index_news .conttext ul li {
    line-height: 28px;
    margin: 0 0 16px 0;
    display: block;
  }
  .index_news .conttext ul li span:nth-child(1) {
    width: auto;
  }
  .index_news .conttext ul li span:nth-child(2) {
    width: auto;
  }
  .index_about {
    margin-bottom: 16px !important;
  }
  .index_about h1 {
    margin-bottom: 20px !important;
  }
  .index_about .contfigu {
    float: none;
    width: 100%;
    max-width: 480px;
    margin: 0 auto 0 auto;
    overflow: hidden;
  }
  .index_about .contfigu img {
    margin-top: -20px;
  }
  .index_about .conttext {
    float: none;
    width: 100%;
  }
  .index_about .conttext p {
    line-height: 36px;
  }
  .index_business {
    border-bottom: 1px solid #ddd;
  }
  .index_business p {
    text-align: center !important;
  }
  .index_business .pillar {
    float: none;
    width: 100%;
  }
  .index_business .pillar p {
    font-size: 24px;
    line-height: 36px;
  }
  .index_business .pillar figure {
    width: 100%;
    max-width: 280px;
    margin: 0 auto 0 auto;
    overflow: hidden;
  }
  .index_business .pillar:nth-of-type(1) figure img {
    margin-top: -28px;
  }
  .index_business .pillar:nth-of-type(2) figure img {
    margin-top: -28px;
  }
  .index_company {
    margin-bottom: 40px !important;
  }
  .index_company .contfigu {
    float: none;
    width: 100%;
  }
  .index_company .contfigu img {
    width: 90%;
    max-width: 440px;
  }
  .index_company .conttext {
    float: none;
    width: 100%;
    padding: 0 0 16px 0;
  }
  .index_company .conttext .btn_view-detail1 {
    margin: 16px 0 0 0 !important;
  }
  .index_recruit .contfigu {
    float: none;
    width: 100%;
  }
  .index_recruit .contfigu img {
    width: 90%;
    max-width: 440px;
  }
  .index_recruit .conttext {
    float: none;
    width: 100%;
    padding: 0 0 16px 0;
  }
  .index_recruit .conttext .btn_view-detail1 {
    margin: 16px 0 0 0 !important;
  }
}
/*##################################################
 *会社情報 */
.company_greeting {
  padding-top: 88px !important;
  padding-bottom: 64px !important;
}
.company_greeting .greeting {
  overflow: hidden;
}
.company_greeting .greeting .contfigu {
  float: right;
  width: 400px;
}
.company_greeting .greeting .contfigu img {
  width: 100%;
  height: auto;
  border-radius: 16px;
}
.company_greeting .greeting .conttext {
  float: left;
  width: 560px;
  text-align: left;
}
.company_greeting .greeting .conttext .ceo-name {
  font-size: 24px;
}
.company_greeting .greeting .conttext h3 {
  text-align: left;
}
.company_greeting .greeting .conttext p {
  text-align: left;
  margin: 0 0 24px 0;
}
.company_greeting .greeting .conttext p:last-child {
  text-align: right;
  margin: 0;
}
.company_outline {
  padding-bottom: 64px !important;
}
.company_outline .access .googlemap {
  margin: 0 0 24px 0;
  border-radius: 8px;
  overflow: hidden;
}
.company_outline .access .googlemap iframe {
  width: 100% !important;
}
/* 768px以下 */
@media screen and (max-width: 768px) {
  .company_greeting {
    padding-top: 0 !important;
    padding-bottom: 40px !important;
  }
  .company_greeting .greeting .contfigu {
    float: none;
    width: 100%;
  }
  .company_greeting .greeting .conttext {
    float: none;
    width: 100%;
    margin: 0 0 24px 0;
  }
  .company_greeting .greeting .conttext p {
    margin: 0 0 16px 0;
  }
  .company_outline .access .googlemap {
    margin: 0 0 16px 0;
  }
  .company_outline .access .googlemap iframe {
    height: 360px !important;
  }
}
/*##################################################
 *採用情報 */
.recruit_about {
  padding-top: 88px !important;
  padding-bottom: 64px !important;
}
.recruit_about .merit {
  overflow: hidden;
}
.recruit_about .merit .contfigu {
  float: left;
  width: 380px;
  overflow: hidden;
  border-radius: 16px;
}
.recruit_about .merit .contfigu img {
  width: 100%;
  height: auto;
}
.recruit_about .merit .conttext {
  float: right;
  width: 580px;
  text-align: left;
}
.recruit_about .merit .conttext p {
  margin: 0 0 32px 0;
}
.recruit_about .merit .conttext p:last-child {
  margin-bottom: 0;
}
.recruit_welfare {
  padding-bottom: 64px !important;
}
.recruit_welfare .welfare .welfare-list {
  display: flex;
  flex-wrap: wrap;
}
.recruit_welfare .welfare .welfare-list .conttext {
  width: 400px;
  margin: 40px 40px 0 0;
}
.recruit_welfare .welfare .welfare-list .conttext:nth-child(2n) {
  margin-right: 0;
}
.recruit_welfare .welfare .welfare-list .conttext:nth-child(-n+2) {
  margin-top: 0;
}
.recruit_welfare .welfare .welfare-list .conttext h3 {
  text-align: left;
  margin-bottom: 16px !important;
  padding: 0 0 16px 32px;
  background-image: url("../../image/common_icon-checkmark.png");
  background-repeat: no-repeat;
  background-position: left bottom 20px;
  background-size: 24px;
  border-bottom: 1px solid #ddd;
}
.recruit_welfare .welfare .welfare-list .conttext p {
  text-align: left;
}
.recruit_faq {
  padding-bottom: 64px !important;
}
.recruit_faq .faq .faq-list .conttext {
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #ddd;
}
.recruit_faq .faq .faq-list .conttext:last-child {
  margin-bottom: 0;
  border-bottom: none;
}
.recruit_faq .faq .faq-list .conttext h3 {
  font-size: 20px !important;
  text-align: left;
  margin-bottom: 16px !important;
  padding: 0 0 0 48px;
  background-image: url("../../image/recruit_icon-faq-q.png");
  background-repeat: no-repeat;
  background-position: left top 4px;
  background-size: 28px;
}
.recruit_faq .faq .faq-list .conttext p {
  text-align: left;
  padding: 0 0 0 48px;
  background-image: url("../../image/recruit_icon-faq-a.png");
  background-repeat: no-repeat;
  background-position: left top 1px;
  background-size: 28px;
}
.recruit_faq .faq .faq-list .conttext ul {
  padding: 0 0 0 52px;
}
.recruit_faq .faq .faq-list .conttext ul li {
  font-size: 16px;
  text-align: left;
  list-style-type: disc;
  list-style-position: inside;
}
.recruit_requirement .requirement .job-list {
  margin: 0 0 24px 0;
}
.recruit_requirement .requirement .job-list ul {
  display: flex;
  flex-wrap: wrap;
}
.recruit_requirement .requirement .job-list ul li {
  width: 410px;
  margin: 0 20px 24px 0;
}
.recruit_requirement .requirement .job-list ul li:nth-child(2n) {
  margin-right: 0;
}
.recruit_requirement .requirement .job-list ul li a {
  width: 100%;
  display: table;
  font-size: 20px;
  line-height: 28px;
  color: #71c16e;
  text-decoration: none;
  padding: 8px 8px 8px 24px;
  background-color: #ecf4ec;
  background-image: url("../../image/common_icon-arw-d.png");
  background-repeat: no-repeat;
  background-position: right 24px center;
  background-size: 20px;
  border-radius: 8px;
  border: 2px solid #dbeadb;
}
.recruit_requirement .requirement .job-list ul li a:hover {
  color: #499649;
  background-color: #dbeadb;
}
.recruit_requirement .requirement .job-list ul li a:hover img {
  opacity: 1;
}
.recruit_requirement .requirement .job-list ul li a figure {
  display: table-cell;
  width: 80px;
  height: 80px;
  background-color: #fff;
  border-radius: 40px;
}
.recruit_requirement .requirement .job-list ul li a figure img {
  width: 100%;
  height: auto;
}
.recruit_requirement .requirement .job-list ul li a p {
  display: table-cell;
  font-weight: bold;
  text-align: left;
  vertical-align: middle;
  padding: 2px 0 0 16px;
}
.recruit_requirement .requirement .conttable1 {
  margin-bottom: 48px;
}
.recruit_requirement .requirement .apply {
  width: 100%;
  margin: 28px 0 0 0;
  overflow: hidden;
}
.recruit_requirement .requirement .apply h3 {
  font-weight: bold;
  font-size: 20px;
}
.recruit_requirement .requirement .apply .telnumber {
  margin: 0 16px 0 0 !important;
}
.recruit_requirement .requirement .apply .btn {
  width: 200px;
  margin: 8px 0 0 24px;
  background: -moz-linear-gradient(left, #6ec171, #199d91);
  background: -webkit-linear-gradient(left, #6ec171, #199d91);
  background: linear-gradient(to right, #6ec171, #199d91);
  border-radius: 28px;
}
.recruit_requirement .requirement .apply .btn a {
  width: 100%;
  display: block;
  font-size: 16px;
  font-weight: bold;
  line-height: 53px;
  color: #fff;
  text-align: center;
  text-decoration: none;
  padding: 3px 0 0 0;
  background-image: url("../../image/common_icon-arw-r-w.png");
  background-repeat: no-repeat;
  background-position: right 20px center;
  background-size: 20px;
  border-radius: 28px;
}
.recruit_requirement .requirement .apply .btn a:hover {
  background-color: #007700;
}
.recruit_requirement .cbox_figure {
  margin-top: -48px;
}
/* 768px以下 */
@media screen and (max-width: 768px) {
  .recruit_about {
    padding-top: 0 !important;
    padding-bottom: 40px !important;
  }
  .recruit_about .merit .contfigu {
    float: none;
    width: 100%;
  }
  .recruit_about .merit .contfigu img {
    width: 50%;
    height: auto;
  }
  .recruit_about .merit .conttext {
    float: none;
    width: 100%;
    margin: 0 0 32px 0;
  }
  .recruit_about .merit .conttext p {
    margin: 0 0 24px 0;
  }
  .recruit_welfare .welfare .welfare-list {
    display: block;
  }
  .recruit_welfare .welfare .welfare-list .conttext {
    width: 100%;
    margin: 24px 0 0 0;
  }
  .recruit_welfare .welfare .welfare-list .conttext:nth-child(2) {
    margin-top: 24px;
  }
  .recruit_welfare .welfare .welfare-list .conttext h3 {
    margin-bottom: 8px !important;
    padding: 0 0 8px 32px;
    background-position: left bottom 12px;
  }
  .recruit_faq {
    padding-bottom: 32px !important;
  }
  .recruit_faq .faq .faq-list .conttext {
    margin-bottom: 32px;
    padding-bottom: 32px;
  }
  .recruit_faq .faq .faq-list .conttext h3 {
    padding: 0 0 0 40px;
  }
  .recruit_faq .faq .faq-list .conttext p {
    padding: 0 0 0 40px;
  }
  .recruit_faq .faq .faq-list .conttext ul {
    padding: 0 0 0 44px;
  }
  .recruit_requirement .requirement .job-list ul {
    display: block;
  }
  .recruit_requirement .requirement .job-list ul li {
    width: 100%;
    margin: 0 0 16px 0;
  }
  .recruit_requirement .requirement .job-list ul li a {
    padding: 8px;
    background-position: right 16px center;
  }
  .recruit_requirement .requirement .job-list ul li a:hover {
    color: #71c16e;
    background-color: #ecf4ec;
  }
  .recruit_requirement .requirement .job-list ul li a p {
    padding: 0 0 0 8px;
  }
  .recruit_requirement .requirement .apply {
    margin: 24px 0 0 0;
  }
  .recruit_requirement .requirement .apply .telnumber {
    padding-left: 0 !important;
    font-size: 28px !important;
    text-align: left !important;
    display: block;
  }
  .recruit_requirement .requirement .apply .btn {
    width: 100%;
    margin: 8px 0 0 0;
    border-radius: 32px;
  }
  .recruit_requirement .requirement .apply .btn a {
    font-size: 20px;
    line-height: 64px;
    padding: 0;
    border-radius: 32px;
  }
  .recruit_requirement .requirement .apply .btn a:hover {
    background-color: transparent;
  }
  .recruit_requirement .requirement .apply .btn_call_sp {
    margin: 8px 0 0 0 !important;
  }
}
/*##################################################
 *お問い合わせ */
.contact_mailform {
  padding-top: 88px !important;
  padding-bottom: 120px !important;
}
.contact_mailform .guidance {
  margin: 0 0 80px 0;
  padding: 40px 0 40px 0;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}
.contact_mailform .guidance h2 {
  margin-bottom: 12px !important;
}
.contact_mailform .guidance .telnumber {
  font-size: 40px !important;
}
.contact_mailform .guidance p {
  font-weight: bold;
  color: #71c16e;
}
.contact_mailform .mailform {
  overflow: hidden;
}
.contact_mailform .mailform h2 {
  margin-bottom: 48px !important;
}
.contact_mailform .mailform .input-field {
  width: 680px;
  float: left;
}
.contact_mailform .mailform .input-field .input-item {
  text-align: left;
  margin: 0 0 32px 0;
}
.contact_mailform .mailform .input-field .input-item h3 {
  text-align: left !important;
}
.contact_mailform .mailform .input-field .input-item h3 span.req {
  font-size: 16px;
  color: #e07575;
  padding: 0 0 0 16px;
}
.contact_mailform .mailform .input-field .input-item h3 span.opt {
  font-size: 16px;
  color: #888;
  padding: 0 0 0 16px;
}
.contact_mailform .mailform .input-field .input-item p.note {
  margin: 0 0 16px 0;
}
.contact_mailform .mailform .input-field .input-item .textbox1, .contact_mailform .mailform .input-field .input-item .textbox2, .contact_mailform .mailform .input-field .input-item .textbox3 {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 8px 0 8px 0;
  padding: 8px 12px 8px 12px;
  font-weight: normal;
  line-height: 36px;
  border-radius: 8px;
}
.contact_mailform .mailform .input-field .input-item .textbox1 {
  width: 100% !important;
}
.contact_mailform .mailform .input-field .input-item .textbox2 {
  width: 40% !important;
}
.contact_mailform .mailform .input-field .input-item .textbox3 {
  width: 100% !important;
  height: 242px !important;
}
.contact_mailform .mailform .input-field .input-item label {
  line-height: 48px;
  display: block;
  float: left;
  margin: 4px 16px 4px 0;
}
.contact_mailform .mailform .input-field .input-item .label-1col {
  overflow: hidden;
}
.contact_mailform .mailform .input-field .input-item .label-1col label {
  width: 100%;
  float: none !important;
  margin-right: 0 !important;
}
.contact_mailform .mailform .input-field .input-item .label-2col {
  overflow: hidden;
}
.contact_mailform .mailform .input-field .input-item .label-2col label {
  width: calc((100% - 32px) / 2);
}
.contact_mailform .mailform .input-field .input-item .label-4col {
  overflow: hidden;
}
.contact_mailform .mailform .input-field .input-item .label-4col label {
  width: calc((100% - 64px) / 4);
}
.contact_mailform .mailform .input-field .input-item .confirm-check {
  width: 100%;
  text-align: center;
  background-color: #ecf4ec;
  border-radius: 8px;
  transition: all 0.3s;
}
.contact_mailform .mailform .input-field .input-item .confirm-check:hover {
  background-color: #dbeadb;
}
.contact_mailform .mailform .input-field .input-item .confirm-check label {
  display: block;
  width: 100%;
  line-height: 56px;
  float: none;
}
.contact_mailform .mailform .input-field .button-zip {
  width: auto;
  font-size: 14px;
  font-weight: bold;
  line-height: 52px;
  color: #499649;
  margin: 0 0 0 16px;
  padding: 0 16px 0 16px;
  background-color: #fafaf2;
  border: 1px solid #499649;
  border-radius: 27px;
  transition: all 0.3s;
}
.contact_mailform .mailform .input-field .button-zip:hover {
  color: #fff;
  background: #007700;
  border: 1px solid #007700;
}
.contact_mailform .mailform .input-field .btn-submit {
  width: 320px;
  margin: 0 auto 0 auto;
  background: -moz-linear-gradient(left, #6ec171, #199d91);
  background: -webkit-linear-gradient(left, #6ec171, #199d91);
  background: linear-gradient(to right, #6ec171, #199d91);
  border-radius: 32px;
}
.contact_mailform .mailform .input-field .btn-submit input {
  display: block;
  width: 100%;
  font-size: 20px;
  font-weight: bold;
  line-height: 62px;
  color: #fff;
  text-align: center;
  padding: 2px 0 0 0;
  border-radius: 32px;
  transition: all 0.3s;
}
.contact_mailform .mailform .input-field .btn-submit input:hover {
  background-color: #007700;
}
.contact_mailform .mailform .thanks-field {
  width: 680px;
  float: left;
  margin: 16px 0 0 0;
  padding: 80px 16px 80px 16px;
  border: solid 1px #ccc;
  border-radius: 8px;
}
.contact_mailform .mailform .notice-field {
  width: 240px;
  float: right;
}
.contact_mailform .mailform .notice-field h4 {
  font-size: 14px;
  line-height: 48px;
  text-align: left;
  margin: 0 0 16px 0;
  border-bottom: solid 1px #ddd;
}
.contact_mailform .mailform .notice-field p {
  font-size: 14px;
  text-align: justify;
  margin: 0 0 16px 0;
}
/* 768px以下 */
@media screen and (max-width: 768px) {
  .contact_mailform {
    padding-top: 0 !important;
    padding-bottom: 40px !important;
  }
  .contact_mailform .guidance {
    margin: 0 0 40px 0;
    padding: 40px 0 48px 0;
  }
  .contact_mailform .guidance .telnumber {
    font-size: 32px !important;
  }
  .contact_mailform .guidance p {
    text-align: center !important;
  }
  .contact_mailform .guidance .btn_call_sp {
    margin-top: 16px !important;
  }
  .contact_mailform .mailform h2 {
    margin-bottom: 24px !important;
  }
  .contact_mailform .mailform .input-field {
    width: auto;
    float: none;
    margin: 0 0 40px 0;
  }
  .contact_mailform .mailform .input-field .input-item label {
    line-height: 36px;
    float: none;
    margin: 8px 0 8px 0;
  }
  .contact_mailform .mailform .input-field .input-item .label-2col label {
    width: 100%;
  }
  .contact_mailform .mailform .input-field .input-item .label-4col label {
    width: 100%
  }
  .contact_mailform .mailform .input-field .input-item .confirm-check:hover {
    background-color: #ecf4ec;
  }
  .contact_mailform .mailform .input-field .button-zip:hover {
    color: #499649;
    background-color: #fafaf2;
    border: 1px solid #499649;
  }
  .contact_mailform .mailform .input-field .btn-submit {
    width: 100%;
  }
  .contact_mailform .mailform .input-field .btn-submit input {
    width: 100%;
    line-height: 64px;
    padding: 0;
  }
  .contact_mailform .mailform .input-field .btn-submit input:hover {
    background-color: transparent;
  }
  .contact_mailform .mailform .thanks-field {
    width: auto;
    float: none;
    margin: 16px 0 24px 0;
    padding: 40px 16px 40px 16px;
  }
  .contact_mailform .mailform .notice-field {
    width: auto;
    float: none;
  }
}
/*##################################################
 *プライバシーポリシー */
.privacy_content {
  padding-top: 88px !important;
  padding-bottom: 120px !important;
}
.privacy_content .privacy-policy {
  padding: 48px 0 48px 0;
  border-top: solid 1px #ddd;
}
.privacy_content .privacy-policy h2 {
  text-align: left !important;
  margin: 0 0 24px 0;
}
.privacy_content .privacy-policy p {
  text-align: left;
}
.privacy_content .privacy-policy ol {
  margin-top: 24px;
}
.privacy_content .privacy-policy ol li {
  font-size: 16px;
  text-align: left;
  list-style-type: decimal;
  list-style-position: outside;
  margin: 0 0 16px 32px;
}
.privacy_content .privacy-policy ol li:last-child {
  margin-bottom: 0px;
}
/* 768px以下 */
@media screen and (max-width: 768px) {
  .privacy_content {
    padding-top: 0 !important;
    padding-bottom: 40px !important;
  }
  .privacy_content .privacy-policy {
    padding: 32px 0 32px 0;
  }
  .privacy_content .privacy-policy h2 {
    margin: 0 0 16px 0;
  }
  .privacy_content .privacy-policy ol {
    margin-top: 16px;
  }
  .privacy_content .privacy-policy ol li {
    margin: 0 0 8px 32px;
  }
}
/*##################################################
 *コンテンツ */
.xxxxx_xxxxx {}
/* 1280px以下 */
@media screen and (max-width: 1280px) {}
/* 1024px以下 */
@media screen and (max-width: 1024px) {}
/* 980px以下 */
@media screen and (max-width: 980px) {}
/* 768px以下 */
@media screen and (max-width: 768px) {}
/*560px以下*/
@media screen and (max-width: 560px) {}
/*360px以下*/
@media screen and (max-width: 360px) {}