@charset "UTF-8";
@media screen and (min-width: 601px) {
  .is-sp {
    display: none !important;
  }
}

@media screen and (max-width: 600px) {
  .is-pc {
    display: none !important;
  }
}

/* CSS Document */
/*@import url("mailform.flat.confirm.css");*/
/*//////////////////////////////////////////////////*/
/*// 01.ベースの設定                              //*/
/*//////////////////////////////////////////////////*/
form#mailform {
  margin: 0px auto 0px auto;
  padding: 0px;
}

form#mailform label {
  cursor: pointer;
  text-decoration: underline;
  display: block;
  padding: 5px 5px;
  margin-bottom: 1px;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
}

label.label_true {
  background-color: #FFFFEE;
  border: solid 1px #CCCCCC;
  text-decoration: none;
}

label.label_false {
  background-color: none;
  border: none;
  text-decoration: underline;
  background-image: none;
}

div#mailfrom_hidden_object {
  width: 1px;
  height: 1px;
  overflow: hidden;
}

div#mailfrom_hidden_object input {
  margin: 10px;
}

div#mfp_closed {
  display: none;
}

div.mfp_disp {
  display: none;
}

div#input_time_disp {
  padding: 10px;
}

div#expires_time_disp {
  padding: 10px;
  text-align: center;
}

div#expires_time_disp strong {
  font-size: 18px;
  color: #CC0000;
}

div#limit_disp {
  padding: 10px;
  text-align: center;
}

div#limit_disp strong {
  font-size: 24px;
  color: #CC0000;
}

img.must {
  width: 30px;
  height: 16px;
  float: left;
  margin: 0px 0px 0px 5px;
}

div.mfp_err {
  text-align: left;
  margin: 5px 0px 0px 0px;
  padding: 3px 0px 5px 17px;
  color: #FF0000;
  font-size: 12px;
  line-height: normal;
  display: none;
  background-image: url(../images/mfp_error.gif);
  background-repeat: no-repeat;
  background-position: 0px 1px;
}

input.mfp {
  padding: 2px;
}

textarea.mfp {
  padding: 5px;
}

div.mfp_buttons {
  /*padding: 0 0 10px 150px;*/
  text-align: center;
}

div.mfp_buttons ul {
  width: 360px;
  height: 60px;
  overflow: hidden;
  margin: 0px auto 0px auto;
}

@media screen and (max-width: 600px) {
  div.mfp_buttons ul {
    width: 100%;
    height: auto;
    text-align: center;
  }
}

div.mfp_buttons ul li {
  width: 180px;
  height: 60px;
  overflow: hidden;
  float: left;
}

@media screen and (max-width: 600px) {
  div.mfp_buttons ul li {
    display: inline-block;
    float: none;
  }
}

div.mfp_phase_buttons {
  height: 60px;
}

input.mfp_phase_next {
  background-image: url(../images/mfp_next.gif);
  float: right;
}

input.mfp_phase_prev {
  background-image: url(../images/mfp_prev.gif);
  float: left;
}

input.mfp_phase_next, input.mfp_phase_prev {
  width: 200px;
  height: 60px;
  overflow: hidden;
  text-indent: -5000px;
  border: none;
  border-style: none;
  cursor: pointer;
}

input#button_mfp_goconfirm {
  width: 180px;
  height: 60px;
  overflow: hidden;
  background-color: #FFFFFF;
  background-image: url(../images/mfp_goconfirm.gif);
  border: none;
  border-style: none;
  cursor: pointer;
}

input#button_mfp_gosend {
  width: 180px;
  height: 60px;
  overflow: hidden;
  background-color: #FFFFFF;
  background-image: url(../images/mfp_gosend.gif);
  border: none;
  border-style: none;
  cursor: pointer;
}

input#button_mfp_gocancel {
  width: 180px;
  height: 60px;
  overflow: hidden;
  background-color: #FFFFFF;
  background-image: url(../images/mfp_gocancel.gif);
  border: none;
  border-style: none;
  cursor: pointer;
}

input#button_mfp_reset {
  width: 180px;
  height: 60px;
  overflow: hidden;
  background-color: #FFFFFF;
  background-image: url(../images/mfp_reset.gif);
  border: none;
  border-style: none;
  cursor: pointer;
}

/*//////////////////////////////////////////////////*/
/*//////////////////////////////////////////////////*/
/*// 02.テーブルの指定                            //*/
/*//////////////////////////////////////////////////*/
table.mailform {
  width: 100%;
  padding: 10px;
}

table.mailform tr th {
  padding: 7px 0px 7px 0px;
  border-bottom: solid 1px #CCCCCC;
  font-weight: normal;
  font-size: 12px;
  text-align: right;
  width: 160px;
}

table.mailform tr th span {
  font-size: 10px;
  color: #999999;
  display: block;
}

table.mailform tr td {
  padding: 7px 10px 7px 10px;
  border-bottom: solid 1px #CCCCCC;
  font-size: 12px;
}

table.mailform tr td ul li, table.mailform tr td ul, table.mailform tr td ol, table.mailform tr td ol li {
  list-style: none;
  margin: 0px;
  padding: 0px;
}

table.mailform tr td ul li {
  float: left;
  padding: 0px 10px 0px 0px;
}

table.mailform tr td p, table.mailform tr td div, table.mailform tr td span {
  clear: both;
}

/*//////////////////////////////////////////////////*/
/*// 04.以下確認画面関連のスタイル                //*/
/*//////////////////////////////////////////////////*/
@media screen and (max-width: 600px) {
  table.infield, table.infield tbody, table.infield tr, table.infield tr th, table.infield tr td {
    display: block;
    width: auto;
    text-align: left;
    box-sizing: border-box;
  }
}

ul.confirm_layer {
  width: 720px;
  padding: 0px;
  margin: 0px;
}

@media screen and (max-width: 600px) {
  ul.confirm_layer {
    width: auto;
    float: inherit;
    height: calc(90vh - 153px);
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    width: 90vw;
    border-radius: 5px;
    margin: auto;
  }
}

ul.confirm_layer li {
  width: 720px;
  list-style: none;
  float: left;
  overflow: hidden;
  text-align: center;
  margin: 0px;
  padding: 0px;
}

@media screen and (max-width: 600px) {
  ul.confirm_layer li {
    width: auto;
    float: inherit;
    height: calc(90vh - 153px);
    overflow: scroll;
    -webkit-overflow-scrolling: touch;
    width: 90vw;
    border-radius: 5px;
    margin: auto;
  }
}

li.confirm_middle {
  background-image: url(../images/mfp_table_background.png?wide);
  _background: none;
  _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/mfp_table_background.png', sizingMethod='scale');
}

@media screen and (max-width: 600px) {
  li.confirm_middle {
    padding: 20px !important;
    box-sizing: border-box;
    background: white;
  }
}

li.confirm_top {
  height: 33px;
  background-image: url(../images/mfp_table_top.png?wide);
  _background: none;
  _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/mfp_table_top.png', sizingMethod='scale');
}

@media screen and (max-width: 600px) {
  li.confirm_top {
    background: none;
    display: none;
  }
}

li.confirm_bottom {
  height: 33px;
  background-image: url(../images/mfp_table_bottom.png?wide);
  _background: none;
  _filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/mfp_table_bottom.png', sizingMethod='scale');
}

@media screen and (max-width: 600px) {
  li.confirm_bottom {
    background: none;
    display: none;
  }
}

div#disabled_submit {
  width: 1px;
  height: 1px;
  overflow: hidden;
}

div#disabled_submit input {
  margin: 10px;
}

table.infield {
  width: 660px;
  margin: 0px auto 0px auto;
}

@media screen and (max-width: 600px) {
  table.infield {
    width: 100%;
  }
}

table.infield tr th {
  padding: 5px;
  margin: 0px;
  text-align: right;
  font-size: 12px;
  width: 150px;
  border-bottom: solid 1px #CCCCCC;
  color: #232323;
}

@media screen and (max-width: 600px) {
  table.infield tr th {
    display: block;
    width: auto;
    text-align: left;
    box-sizing: border-box;
    font-weight: bold;
    background-color: #E8EEF9 !important;
  }
}

table.infield tr td {
  padding: 5px;
  border-bottom: solid 1px #CCCCCC;
}

@media screen and (max-width: 600px) {
  table.infield tr td {
    display: block;
    width: auto;
    text-align: left;
    box-sizing: border-box;
  }
}

table.infield tr td.mfp_color {
  background: none;
}

table.infield tr td p {
  text-align: left;
  font-size: 12px;
  line-height: 1.5em;
  border-left: solid 2px #CCCCCC;
  padding: 5px 0px 5px 10px;
  margin: 0px;
}

@media screen and (max-width: 600px) {
  table.infield tr td p {
    border: none;
    padding: 5px 0px 5px 0;
  }
}

.mfp_color {
  background-color: #E8EEF9;
}

div#confirmWindow {
  filter: alpha(opacity=30);
  -moz-opacity: 0.3;
  -khtml-opacity: 0.3;
  opacity: 0.3;
  width: 100%;
  height: 100%;
  margin: 0px;
  overflow: hidden;
  z-index: 1;
  position: fixed !important;
  position/**/: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
  background-color: #000000;
  font-size: 12px;
  text-align: center;
  _top: expression( document.documentElement && document.documentElement.scrollTop  || document.body && body.scrollTop  || 0 + 0 + 'px' );
}

@media screen and (max-width: 600px) {
  div#confirmWindow {
    z-index: 10000;
  }
}

div#confirmBody {
  width: 1px;
  visibility: hidden;
  position: absolute;
  z-index: 10;
  text-align: center;
  margin: 0px auto 0px auto;
}

@media screen and (max-width: 600px) {
  div#confirmBody {
    z-index: 10001;
    position: fixed;
    width: 100% !important;
    left: 0 !important;
    top: 0 !important;
  }
}

div#confirmBody div.mfp_title {
  color: #FFFFFF;
  margin: 0px auto 0px auto;
  width: 294px;
  height: 33px;
  padding-top: 10px;
}

@media screen and (max-width: 600px) {
  div#confirmBody div.mfp_title {
    width: auto;
    padding: 0;
    margin: 14px auto 7px auto;
  }
}

div#confirmBody div.mfp_title img {
  width: 200px;
  height: auto;
}

div.buttons {
  margin: 0px auto 0px auto;
}

@media screen and (max-width: 600px) {
  div.buttons {
    margin-top: 15px;
  }
}

div#twex {
  margin: 0px;
  overflow: hidden;
  z-index: 100;
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  text-align: center;
  background-color: #000000;
  filter: alpha(opacity=60);
  -moz-opacity: 0.60;
  -khtml-opacity: 0.60;
  opacity: 0.60;
}

img#loading_proccess_image {
  position: absolute;
  z-index: 1000;
}

/*//////////////////////////////////////////////////*/
dl.mailform {
  padding: 0px 15px;
  margin: 0px;
}

dl.mailform dt {
  float: left;
  width: 180px;
  clear: both;
  font-size: 12px;
  text-align: right;
  font-weight: normal;
  padding: 5px 0px 0px 0px;
  margin: 0px;
}

dl.mailform dt span {
  display: block;
  font-size: 10px;
  color: #999999;
}

dl.mailform dd {
  padding: 10px 10px 15px 190px;
  border-bottom: solid 1px #CCCCCC;
  font-size: 12px;
  margin: 0px;
}

dl.mailform dd ul, dl.mailform dd ol {
  margin: 0px;
  padding: 0px;
}

dl.mailform dd ul li, dl.mailform dd ol li {
  list-style: none;
  margin: 0px;
  padding: 0px;
}

dl.mailform dd ul li {
  /*float: left;*/
  padding: 0px 10px 0px 0px;
}

/*// Phase Input Style //*/
div.mfp_phase_section {
  display: none;
  padding: 2px 2px 15px 2px;
  margin: 10px 5px;
  border: solid 1px #EEEEEE;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  box-shadow: 0px 0px 5px #999999;
  clear: both;
}

p.mfp_caption {
  margin: 10px;
}

input.mfp_phase_ui {
  border-radius: 2px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  padding: 3px;
  margin: 5px 15px;
}

h3.mfp_phase_title {
  background-image: url(../images/mfp_h3.png);
  padding: 5px 15px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  font-size: 21px;
  margin: 0px 0px 10px 0px;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000000;
}

ol.mfp_phase_input_proccess {
  margin: 15px;
  height: 40px;
}

ol.mfp_phase_input_proccess li {
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  padding: 5px 10px;
  margin: 5px;
  float: left;
  font-weight: bolder;
}

li.mfp_phase_disabled {
  box-shadow: 1px 1px 4px #999999;
  background-color: #CCCCCC;
  border: solid 1px #999999;
}

li.mfp_phase_current {
  box-shadow: 1px 1px 4px #999999;
  color: #FFFFFF;
  text-shadow: 1px 1px 1px #000000;
  background-image: url(../images/mfp_h3.png);
  border: solid 1px #FFFFFF;
  background-color: #FFEEEE;
}

div#mfp_progress {
  margin: 10px;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border: solid 1px #CCC;
  overflow: hidden;
  text-align: left;
  background-image: url(../images/mfp_progress_disabled.jpg);
  position: relative;
  height: 30px;
}

p#mfp_progress_bar_text {
  z-index: 10;
  position: absolute;
  top: 5px;
  left: 0px;
  width: 100%;
  color: #FFF;
  font-weight: bolder;
  text-shadow: 1px 1px 2px #000;
  font-size: 10px;
  text-align: center;
}

div#mfp_progress_bar {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 0%;
  height: 30px;
  background-image: url(../images/mfp_progress.jpg);
  overflow: hidden;
}

/*===================================
	フォーム
=====================================*/
#form {
  width: 748px;
  /*748px*/
  margin: 0 auto;
  /*background-color:#FFF;*/
}

@media screen and (max-width: 600px) {
  #form {
    margin: 0 20px;
    width: calc(100% - 40px);
  }
}

/*===================================
　2011-09-24 solecolor ADD
=====================================*/
#formBox {
  padding: 18px 0 50px 0;
  margin: 0 auto;
}

#formBox h4 {
  font-size: 1.4em;
  margin-bottom: 8px;
  font-weight: bold;
  /*
	border-bottom: 2px solid #CCC;
	padding-bottom: 4px;
	*/
}

#formBox .lead {
  margin-bottom: 36px;
}

#formBox table {
  border-collapse: collapse;
  border: 1px #ccc solid;
  width: 748px;
}

@media screen and (max-width: 600px) {
  #formBox table {
    width: 100%;
  }
}

#formBox th {
  font-weight: bold;
}

#formBox th, #formBox td {
  border: 1px #ccc solid;
  padding: 1em;
  line-height: 1.4;
  vertical-align: middle;
}

@media screen and (max-width: 600px) {
  #formBox th, #formBox td {
    display: block;
  }
}

#formBox th {
  background-color: #f7f7f7;
  width: 200px;
}

@media screen and (max-width: 600px) {
  #formBox th {
    box-sizing: border-box;
    width: 100%;
  }
}

#formBox td {
  box-sizing: border-box;
}

@media screen and (max-width: 600px) {
  #formBox input[type="text"],
  #formBox textarea {
    box-sizing: border-box;
    width: calc(100% - 4px) !important;
    font-size: 16px;
  }
}

#formBox input.text2 {
  width: calc(50% - 4px) !important;
}

@media screen and (max-width: 600px) {
  #formBox select {
    display: block;
    font-size: 16px;
  }
}

#formBox .form_ol li {
  margin: 0 0 5px;
}

#formBox th span, p.hissu span {
  color: #cc0000;
}

@media screen and (max-width: 600px) {
  #formBox td.tel {
    text-align: center;
  }
}

#formBox td.tel em {
  font-size: 2em;
  font-weight: bold;
  font-family: Arial, Helvetica, sans-serif;
}

@media screen and (max-width: 600px) {
  #formBox td.tel em {
    display: block;
  }
}

#formBox .thanks {
  border: 4px #43bdd7 solid;
  text-align: center;
  padding: 20px;
  margin-bottom: 20px;
}

#formBox .thanks em {
  display: block;
  color: #43bdd7;
  font-size: 1.6em;
  font-weight: bold;
  line-height: 120%;
  margin-bottom: 10px;
}

#formBox textarea {
  border-radius: 2px;
}

#formBox input, #formBox textarea {
  padding: 0.6em;
  margin: 4px;
  border: 1px solid #D5D5D5;
}

#formBox .mfp_buttons #button_mfp_reset, #formBox .mfp_buttons #button_mfp_goconfirm {
  border: none;
}

#formBox .hissu {
  color: #cc0000;
}

#form_thanks #formBox {
  padding: 30px 50px 50px;
}

#form_thanks #formBox {
  padding: 50px;
  width: 700px;
  margin: 0px auto;
}

@media screen and (max-width: 600px) {
  #form_thanks #formBox {
    padding: 20px;
    box-sizing: border-box;
    width: 100%;
  }
}

#form_thanks #formBox .lead {
  margin-bottom: 36px;
}

#form_thanks .thanks {
  border: 4px double #367912;
  padding: 30px;
  text-align: center;
  margin-bottom: 20px;
}

#form_thanks #formBox .thanks em {
  display: block;
  color: #367912;
  font-size: 1.6em;
  font-weight: bold;
  line-height: 120%;
  margin-bottom: 10px;
}

#form_thanks #formBox h4 {
  font-size: 1.4em;
  margin-bottom: 8px;
}

#form_thanks #formBox table {
  border-collapse: collapse;
  border: 1px solid #CCC;
  width: 700px;
}

@media screen and (max-width: 600px) {
  #form_thanks #formBox table {
    width: 100%;
  }
}

#form_thanks #formBox th {
  background-color: #F7F7F7;
  width: 200px;
}

#form_thanks #formBox th {
  font-weight: bold;
}

#form_thanks #formBox th, #formBox td {
  border: 1px solid #CCC;
  padding: 1em;
  line-height: 1.4;
  vertical-align: middle;
}

@media screen and (max-width: 600px) {
  #form_thanks #formBox th, #formBox td {
    box-sizing: border-box;
    width: 100%;
  }
}

#form_thanks #formBox td.tel em {
  font-size: 2em;
  font-weight: bold;
  font-family: Arial,Helvetica,sans-serif;
}

#ttl-page, #ttl-cate {
  margin: 0 0px 20px;
  border-left: 1px solid #FFF;
  border-right: 1px solid #FFF;
  padding: 18px 0px 18px 18px;
  line-height: 1.3;
  background-color: #FFF;
}

@media screen and (max-width: 600px) {
  #ttl-page, #ttl-cate {
    padding: 15px;
  }
}

#ttl-page span, #ttl-cate span {
  /*border-left: 6px solid #367912;*/
  text-align: center;
  font-size: 2em;
  display: block;
  /*padding-left: 10px;*/
  font-weight: 900;
  line-height: 1.3;
}

@media screen and (max-width: 600px) {
  #ttl-page span, #ttl-cate span {
    font-size: 1.5em;
  }
}
/*# sourceMappingURL=mailform.css.map */