@charset "UTF-8";
/* #home
=========================================== */

#home section h2 {
  font-size: 23px;
  line-height: 30px;
  text-align: center;
  margin-bottom: 10px;
}

#home #mainImg {
  padding: 35px 0 30px;
  text-align: center;
  position: relative;
}

#home #mainImg .tit01 {
  color: #ce343a;
  font-size: 20px;
  margin-bottom: 12px;
  display: inline-block;
  letter-spacing: 0;
}

#home #mainImg .tit02 {
  font-size: 35px;
  margin-bottom: 12px;
  display: inline-block;
  letter-spacing: 0;
}

#home #mainImg .txt {
  font-size: 10px;
  line-height: 1.7;
  margin-bottom: 10px;
}

#home #aboutSec {
  padding: 27px 0 20px;
}

#home #aboutSec .aboutSecIn .btn {
  margin-top: 20px;
}

#home #aboutSec .aboutSecIn .btn + .btn {
  margin-top: 10px;
}

#home #aboutSec .aboutSecIn .txt + .txt {
  margin-top: 0.5em;
}

#home #aboutSec .simpleService {
  margin-top: 25px;
  border: 2px solid #ce343a;
  line-height: 1.7;
  padding: 13px;
  position: relative;
}

#home #aboutSec .simpleService h3 {
  font-size: 17px;
  line-height: 1.3;
  margin-bottom: 16px;
  text-align: center;
}

#home #aboutSec .simpleService ul {
  margin-bottom: 18px;
  overflow: hidden;
}

#home #aboutSec .simpleService ul li {
  overflow: hidden;
}

#home #aboutSec .simpleService ul li .img {
  width: 50%;
  float: left;
}

#home #aboutSec .simpleService ul li .txt {
  width: 50%;
  padding-left: 10px;
  float: left;
}

#home #aboutSec .simpleService ul li + li {
  padding-top: 40px;
  position: relative;
}

#home #aboutSec .simpleService ul li + li:after {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 28px;
  height: 10px;
  background: url(../img/home/ico_yellow_arrow03.png);
  background-size: cover;
}

#home #aboutSec .simpleService .balloon {
  background-color: #3da9d1;
  color: #fff;
  font-size: 11px;
  border-radius: 5px;
  padding: 10px 15px;
  position: relative;
}

#home #aboutSec .simpleService .balloon:after {
  content: "";
  position: absolute;
  top: -7px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 9px 8px 9px;
  border-color: transparent transparent #3da9d1 transparent;
}

#home #appealSec {
  padding: 25px 0 20px;
  background: #f9f6f2;
}

#home #appealSec header .balloon {
  background: #333;
  color: #fff;
  font-weight: bold;
  font-size: 13px;
  line-height: 1.5;
  position: relative;
  width: 170px;
  margin: 0 auto;
  text-align: center;
  border-radius: 16px;
  margin-bottom: 5px;
}

#home #appealSec header .balloon:after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #333 transparent transparent transparent;
}

#home #appealSec header h2 .fs {
  font-size: 90%;
}

#home #appealSec .cmnList01 li:nth-child(2) .img {
  right: 60px;
}

#home #appealSec .cmnList01 li:nth-child(3) .img {
  right: 40px;
}

#home #appealSec .cmnList01 li:nth-child(1):after {
  top: 3px;
  left: 3px;
  width: 58px;
  height: 58px;
  background: url(../img/home/ico_appeal01.png);
  background-size: cover;
}

#home #appealSec .cmnList01 li:nth-child(2):after {
  top: 3px;
  left: 3px;
  width: 58px;
  height: 58px;
  background: url(../img/home/ico_appeal02.png);
  background-size: cover;
}

#home #appealSec .cmnList01 li:nth-child(3):after {
  top: 3px;
  left: 3px;
  width: 58px;
  height: 58px;
  background: url(../img/home/ico_appeal03.png);
  background-size: cover;
}

#home #appealSec .cmnList01 li:nth-child(4):after {
  top: 3px;
  left: 3px;
  width: 58px;
  height: 58px;
  background: url(../img/home/ico_appeal04.png);
  background-size: cover;
}

#home #appealSec .cmnList01 li:nth-child(5):after {
  top: 3px;
  left: 3px;
  width: 58px;
  height: 58px;
  background: url(../img/home/ico_appeal05.png);
  background-size: cover;
}

#home #successSec {
  padding: 30px 0 25px;
  background-color: #fff;
}

#home #successSec .caseList {
  overflow: hidden;
}

#home #successSec .caseList li .img {
  float: left;
  width: 33.3%;
}

#home #successSec .caseList li .txtBox {
  float: left;
  width: 66.6%;
  padding-left: 13px;
  padding-top: 15px;
}

#home #successSec .caseList li .txtBox h3 {
  font-size: 15px;
  line-height: 1.4;
}

#home #successSec .caseList li .txtBox .spec {
  font-weight: bold;
  font-size: 11px;
  line-height: 2;
}

#home #successSec .caseList li .txt {
  clear: both;
  padding-top: 16px;
}

#home #successSec .caseList li + li {
  margin-top: 20px;
}

#home #flowSec {
  padding: 25px 0 20px;
  background: #f9f6f2;
}

#home #flowSec ul {
  margin-bottom: 25px;
}

#home #flowSec ul li {
  overflow: hidden;
}

#home #flowSec ul li .img {
  float: left;
}

#home #flowSec ul li .txtBox {
  padding: 11px 73px 0 14px;
  width: 100%;
  float: left;
  margin-right: -73px;
}

#home #flowSec ul li .txtBox h3 {
  margin-bottom: 5px;
}

#home #flowSec ul li + li {
  padding-top: 42px;
  position: relative;
}

#home #flowSec ul li + li:after {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 28px;
  height: 10px;
  background: url(../img/home/ico_gray_arrow03.png);
  background-size: cover;
}

#home #successSec .btn {
  margin-top: 10px;
}
/* #reward
=========================================== */
#reward .rewardCv {
  margin-top: 10px;
  background: url(../img/reward/bg_apply01_sp.png) no-repeat;
  background-size: 100% auto;
  margin-left: -6px;
  padding-left: 6px;
  width: 100%;
  padding-top: 36%;
  position: relative;
  box-sizing: content-box;
}

#reward .rewardCv:after {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}

#reward .rewardCv p.tit {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

#reward .rewardCv .btn01 {
  position: absolute;
  bottom: 10px;
  left: 17px;
  padding-right: 24px;
  width: 100%;
  box-sizing: border-box;
}

#reward .rewardCv .btn01 a {
  position: relative;
  display: block;
}

#reward .rewardCv .btn01 img {
  width: 100%;
  height: auto;
}

#reward #flowSec {
  padding: 30px 0 20px;
}

#reward #flowSec .txt {
  font-size: 14px;
  line-height: 1.6;
}

#reward #flowSec h2 {
  font-size: 23px;
  line-height: 30px;
  text-align: center;
  margin-bottom: 20px;
}

#reward #flowSec .cmnList01 > li .txt {
  font-size: 15px;
  line-height: 1.9;
  margin-bottom: 5px;
}

#reward #flowSec .cmnList01 > li .notes {
  margin-bottom: 15px;
}

#reward #flowSec .cmnList01 > li .sub {
  background: #f9f6f2;
  margin: 10px -15px -20px;
  padding: 15px 15px 20px;
  font-size: 11px;
  line-height: 1.7;
}

#reward #flowSec .cmnList01 > li .sub .tit {
  text-align: center;
  font-size: 13px;
  color: #ce343a;
  font-weight: bold;
}

#reward #flowSec .cmnList01 > li .sub .mailList {
  margin-bottom: 8px;
}

#reward #flowSec .cmnList01 > li .sub .mailList li {
  font-weight: bold;
  border-bottom: 1px solid #e1dbd2;
  padding: 2px 0 3px;
}

#reward #flowSec .cmnList01 > li .sub .mailList li:before {
  content: "";
  background: #ce343a;
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  margin-right: 7px;
}

#reward #flowSec .cmnList01 > li + li {
  margin-top: 32px;
}

#reward #flowSec .cmnList01 > li + li:before {
  content: "";
  position: absolute;
  top: -25px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 35px;
  height: 13px;
  background: url(../img/home/ico_yellow_arrow03.png);
  background-size: cover;
}

#reward #flowSec .cmnList01 > li:nth-child(4) {
  border-color: #ffe0dd;
}

/* #services
=========================================== */
#services .red01 {
  color: #ce343a;
}
#services #mainImg .mainImgIn .mainTit .tit:before {
  background-image: url(../img/services/ico_main01.png);
}

#services .txt + .txt {
  margin-top: 0.2em;
}

#services h2 {
  font-size: 23px;
  line-height: 30px;
  text-align: center;
  margin-bottom: 20px;
}

#services #serviceNav {
  padding: 30px 10px 0 0;
  margin: 0 20px 30px;
}

#services #serviceNav ul {
  margin-bottom: -10px;
}

#services #serviceNav li {
  border: 2px solid #e5e2de;
  border-radius: 5px;
  float: left;
  margin-bottom: 10px;
  text-align: center;
  width: 50%;
}

#services #serviceNav li:nth-child(2n-1) {
  margin-right: 10px;
}

#services #serviceNav li:nth-child(2n) {
  margin-right: -10px;
}

#services #serviceNav li a {
  font-size: 12px;
  font-weight: bold;
  line-height: 1.4;
  display: block;
  padding: 6px 0;
  background: url(../img/services/ico_read_arrow03.png) right 10px center no-repeat;
  background-size: 5px 3px;
}

#services #auxSec {
  padding: 0 0 30px;
}

#services #auxSec .aboutSecIn {
  background: url(../img/services/bg_aux01.gif) no-repeat center 45px;
  background-size: 178px auto;
}

#services #auxSec h2 {
  margin-bottom: 175px;
}

#services #auxSec .btn {
  margin-top: 15px;
  line-height: 50px;
}

#services #ticketSec {
  padding: 30px 0 18px;
  background: #f9f6f2;
}

#services #ticketSec h2 {
  margin-bottom: 160px;
}

#services #ticketSec .ticketSecIn {
  background: url(../img/services/bg_ticket01.gif) no-repeat center 45px;
  background-size: 161px auto;
}

#services #ticketSec .box {
  margin-top: 20px;
  padding: 10px 6px 20px;
  border: 2px solid #ce343a;
  overflow: hidden;
  background: #fff;
}

#services #ticketSec .box img {
  float: left;
}

#services #ticketSec .box .txt {
  float: left;
  margin-right: -107px;
  padding: 5px 107px 0 10px;
  width: 100%;
  font-size: 11px;
  line-height: 1.7;
}

#services #ticketSec .box > div {
  overflow: hidden;
}

#services #ticketSec .box .box02 {
  margin-top: 10px;
}

#services #rewardSec {
  padding: 30px 0 20px;
}

#services #rewardSec .intro {
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 20px;
}

#services #rewardSec .balloon {
  background: #333;
  color: #fff;
  font-weight: bold;
  font-size: 13px;
  line-height: 1.5;
  position: relative;
  width: 300px;
  margin: 0 auto;
  padding: 3px 0 5px;
  text-align: center;
  border-radius: 35px;
  margin-bottom: 10px;
}

#services #rewardSec .balloon:after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 5px 0 5px;
  border-color: #333 transparent transparent transparent;
}

#services #rewardSec ul {
  margin-bottom: 25px;
}

#services #rewardSec ul li {
  overflow: hidden;
  display: table;
  table-layout: fixed;
  width: 100%;
}

#services #rewardSec ul li .img {
  display: table-cell;
  vertical-align: middle;
  width: 85px;
}

#services #rewardSec ul li .txtBox {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
}

#services #rewardSec ul li .txtBox h3 {
  margin-bottom: 5px;
}

#services #rewardSec ul li + li {
  padding-top: 32px;
  position: relative;
}

#services #rewardSec ul li + li:after {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 28px;
  height: 10px;
  background: url(../img/home/ico_gray_arrow03.png);
  background-size: cover;
}

#services #rewardSec .kami {
  text-align: center;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5;
  margin: 0 -5px 15px;
  padding: 0 5px;
  background-image: url(../img/services/ico_kami01.png), url(../img/services/ico_kami02.png);
  background-repeat: no-repeat,no-repeat;
  background-position: 5px 0, right 0;
  background-size: 30px, 30px;
}

#services #rewardSec .point {
  background-color: #fff5d8;
  padding: 4px;
}

#services #rewardSec .point .pointIn {
  border: 2px solid #fff;
  padding: 0 10px 20px;
}

#services #rewardSec .point h3 {
  position: relative;
  top: -15px;
  font-size: 16px;
  text-align: center;
}

#services #rewardSec .point h3 .icon {
  position: relative;
  margin-right: 5px;
  top: 5px;
}

#services #rewardSec .point .txt {
  font-size: 14px;
  line-height: 1.6;
}

#services #exSec {
  background-color: #f9f6f2;
  padding-top: 30px;
}

#services #exSec h2 {
  margin-bottom: 130px;
}

#services #exSec .intro {
  font-size: 14px;
  line-height: 1.6;
  margin-bottom: 20px;
}

#services #exSec .exSecIn {
  background: url(../img/services/bg_ex00.gif) no-repeat center 45px;
  background-size: 163px auto;
}

#services #exSec .cmnList01 {
  margin-bottom: 20px;
}

#services #exSec .cmnList01 > li {
  padding-top: 20px;
}

#services #exSec .cmnList01 > li .img {
  margin: 0 auto 18px;
}

#services #exSec .cmnList01 > li .melit {
  margin-top: 10px;
  background: #fff5d8;
  padding: 15px;
}

#services #exSec .cmnList01 > li .melit .tit {
  color: #ce343a;
  margin-bottom: 7px;
  font-size: 13px;
}

#services #exSec .cmnList01 > li .melit .txt {
  line-height: 1.7;
  font-size: 11px;
}

#services #exSec .cmnList01 > li .caution {
  margin-top: 15px;
  color: #ce343a;
  line-height: 1.7;
  font-size: 11px;
}

#services #exSec .cmnList01 > li .caution .tit {
  font-weight: bold;
  border: 2px solid #ce343a;
  display: inline-block;
  padding: 0 9px;
  margin-bottom: 0.3em;
}

#services #exSec .cmnList01 > li .caution .txt {
  line-height: 1.7;
  font-size: 11px;
}

#services #exSec .cmnList01 li:nth-child(1) .img img {
  width: 141px;
}

#services #exSec .cmnList01 li:nth-child(2) .img img {
  width: 133px;
}

#services #exSec .cmnList01 li:nth-child(3) .img img {
  width: 140px;
}

#services #exSec .cmnList01 li:nth-child(4) .img img {
  width: 142px;
}

#services #exSec .cmnList01 li:nth-child(1):after {
  top: -4px;
  left: -4px;
  width: 50px;
  height: 50px;
  background: url(../img/services/ico_ex01.png);
  background-size: cover;
}

#services #exSec .cmnList01 li:nth-child(2):after {
  top: -4px;
  left: -4px;
  width: 50px;
  height: 50px;
  background: url(../img/services/ico_ex02.png);
  background-size: cover;
}

#services #exSec .cmnList01 li:nth-child(3):after {
  top: -4px;
  left: -4px;
  width: 50px;
  height: 50px;
  background: url(../img/services/ico_ex03.png);
  background-size: cover;
}

#services #exSec .cmnList01 li:nth-child(4):after {
  top: -4px;
  left: -4px;
  width: 50px;
  height: 50px;
  background: url(../img/services/ico_ex04.png);
  background-size: cover;
}

#services #exSec .cmnList01 li:nth-child(5):after {
  top: -4px;
  left: -4px;
  width: 50px;
  height: 50px;
  background: url(../img/services/ico_ex05.png);
  background-size: cover;
}

#services .cmnBtnArea {
  margin: 0 auto;
}

/* #faq
=========================================== */
#faq #mainImg .mainImgIn .mainTit .tit:before {
  background-image: url(../img/faq/ico_main01.png);
}

#faq section h2 {
  font-size: 23px;
  line-height: 30px;
  text-align: center;
  margin-bottom: 20px;
}

#faq #faqSec {
  padding: 30px 0 10px;
}

#faq #faqSec .faqList {
  margin: 0 -15px;
}

#faq #faqSec .faqList dl {
  padding: 0 15px;
  border-top: 2px solid #eeebe7;
}

#faq #faqSec .faqList dl .question {
  padding: 17px 0 6px 32px;
  font-size: 16px;
  line-height: 1.4;
  color: #ce343a;
  font-weight: bold;
  background: url(../img/faq/ico_q01.png) no-repeat;
  background-size: 25px;
  background-position: 0 15px;
}

#faq #faqSec .faqList dl .answer {
  padding: 13px 0 15px 32px;
  font-size: 14px;
  line-height: 1.6;
  border-top: 1px solid #eeebe7;
  background: url(../img/faq/ico_a01.png) no-repeat;
  background-size: 25px;
  background-position: 0 15px;
}
#faq .banner {
  margin: 10px 0;
}
#faq .faqList input {
  width: 100%;
}
#faq .faqList .bnrTxt {
  margin-top: 10px;
}

/* #company
=========================================== */
#company #mainImg .mainImgIn .mainTit .tit:before {
  background-image: url(../img/company/ico_main01.png);
}

#company section h2 {
  font-size: 23px;
  line-height: 30px;
  text-align: center;
  margin-bottom: 20px;
}

#company #overviewSec {
  padding: 30px 0;
}

#company #overviewSec table {
  border-top: 2px solid #eeebe7;
}

#company #overviewSec table tr {
  border-bottom: 2px solid #eeebe7;
  text-align: left;
}

#company #overviewSec table th {
  font-weight: bold;
  font-size: 15px;
  line-height: 1.7;
  padding: 11px 20px 12px 0;
  vertical-align: top;
  width: 100px;
}

#company #overviewSec table td {
  font-size: 14px;
  line-height: 1.8;
  padding: 8px 0 9px;
  vertical-align: middle;
}

#company #personalSec {
  padding-bottom: 20px;
}

#company #personalSec .intro {
  font-size: 14px;
  line-height: 1.6;
}

#company #personalSec dl dt {
  color: #ce343a;
  font-weight: bold;
  font-size: 16px;
  line-height: 1.3;
  margin-top: 1em;
}

#company #personalSec dl dd {
  font-size: 14px;
  line-height: 1.8;
  margin-top: 0.2em;
}

#company #personalSec dl dd p {
  padding-left: 1em;
  text-indent: -1em;
}

/* #contact
=========================================== */
#contact #mainImg .mainImgIn .mainTit .tit:before {
  background-image: url(../img/contact/ico_main01.png);
}

#contact section h2 {
  font-size: 23px;
  line-height: 30px;
  text-align: center;
}

#contact #beforeSec {
  padding: 30px 0;
}

#contact #beforeSec h2 {
  margin-bottom: 15px;
}

#contact #beforeSec .intro .txt {
  margin-bottom: 20px;
  font-size: 14px;
}

#contact #contactSec {
  padding: 30px 0;
  background: #f9f6f2;
  /* thankyouページ */
}

#contact #contactSec h2 {
  margin-bottom: 15px;
}

#contact #contactSec.thankyou th {
  padding-bottom: 10px;
}

#contact #contactSec.thankyou .ex {
  display: none;
}

#errorMsg {
  margin-bottom: 1em;
  color: #ce343a;
}

/* .formTable */
.formTable {
  margin-bottom: 26px;
  /* input */
}

.formTable tr + tr {
  border-top: 2px solid #eeebe7;
}

.formTable th, .formTable td {
  display: block;
  width: 100%;
  text-align: left;
}

.formTable th {
  font-size: 15px;
  padding-top: 13px;
}

.formTable th .required {
  display: inline-block;
  background: #ce343a;
  color: #fff;
  float: right;
  font-size: 10px;
  line-height: 1.4;
  vertical-align: middle;
  padding: 0 7px 1px;
}

.formTable td {
  padding: 5px 0 14px;
}

.formTable td .ex {
  font-size: 11px;
  line-height: 1.7;
}

.formTable td .input_wrap {
  margin-bottom: 5px;
}

.formTable input[type="text"], .formTable input[type="tel"], .formTable input[type="email"] {
  width: 100%;
  height: 35px;
  border: 2px solid #eeebe7;
  -webkit-appearance: none;
}

.formTable select {
  width: 100%;
  height: 35px;
  border: 2px solid #eeebe7;
}

.formTable textarea {
  width: 100%;
  border: 2px solid #eeebe7;
  max-width: 100%;
  height: 200px;
  -webkit-appearance: none;
}

input[type="submit"] {
  text-indent: 150%;
  white-space: nowrap;
  overflow: hidden;
  -webkit-appearance: none;
  border: none;
  background: url(../img/contact/btn_submit01_sp.png) no-repeat;
  background-size: 280px 49px;
  width: 280px;
  height: 49px;
  display: block;
  margin: 0 auto;
}

/* #application
=========================================== */
#application #mainImg .mainImgIn .mainTit .tit:before {
  background-image: url(../img/application/ico_main01.png);
}

#application section h2 {
  font-size: 23px;
  line-height: 30px;
  text-align: center;
}

#application #applySec {
  padding: 30px 0;
  /* confirm thankyouページ */
}

#application #applySec h2 {
  margin-bottom: 45px;
}

#application #applySec.confirm th, #application #applySec.thankyou th {
  padding-bottom: 10px;
}

#application #applySec.confirm .ex, #application #applySec.thankyou .ex {
  display: none;
}

#application .formTable td .tit {
  font-size: 14px;
  line-height: 1.1;
  font-weight: bold;
  border-left: 4px solid #ce343a;
  padding-left: 8px;
  margin-bottom: 10px;
}

#application .formTable .address th {
  margin-bottom: 10px;
}

#application .formTable .address .ex {
  margin-bottom: 10px;
  margin-top: 5px;
}

#application .formTable .address .ex01 {
  margin-top: 0px;
}

#application .formTable .address .line {
  margin-bottom: 10px;
}

#application .formTable .address .line.spmargin {
  margin-bottom: 15px;
}

#application .formTable .address .line .input_wrap {
  margin-bottom: 10px;
}

#application .formTable .postcode {
  margin-bottom: 10px;
}

#application .formTable .postcode .input_wrap {
  display: inline-block;
  margin-bottom: 0;
}

#application .formTable .postcode .btn {
  width: 80px;
  display: inline-block;
  vertical-align: top;
  font-size: 10px;
  line-height: 1.3;
  padding: 4px 0 5px;
  margin-left: 5px;
  cursor: pointer;
}

#application .thankyou .btn{
  display: none !important;
}

#application .formTable .remarks {
  border-bottom: 2px solid #eeebe7;
}

#application .formTable .remarks .input_wrap {
  display: block;
}

#application .formTable .sex .input_wrap {
  line-height: 24px;
}

#application .formTable .sex .input_wrap input {
  margin: 0 5px 0 0;
}

#application .formTable .sex .input_wrap label + label {
  margin-left: 5px;
}

#application .formTable .terms th {
  padding-bottom: 0;
}

#application .formTable .terms td .termsBox {
  overflow-y: scroll;
  border: 2px solid #eeebe7;
  margin-bottom: 15px;
}

#application .formTable .terms td .termsBox .termsBoxIn {
  padding: 20px;
  font-size: 11px;
  line-height: 1.7;
  height: 250px;
}

#application .formTable .terms td .agreeBox {
  background: #f9f6f2;
  padding: 9px 0 11px;
  text-align: center;
}

#application .formTable .terms td .agreeBox p {
  font-size: 15px;
  line-height: 2;
  font-weight: bold;
  display: inline-block;
}

#application .formTable .terms td .agreeBox p input {
  position: relative;
  margin: 0 5px 0 0;
  top: -2px;
}

#application #form_postcode, #application #form_pref, #application #form_work {
  width: 190px;
}

#application #form_msg {
  width: 100%;
  height: 160px;
}

#application #mhMailForm .postcode .btn a {
  text-decoration: none;
}

#application #mhMailForm .error {
  color: #ce343a;
  margin-left: 15px;
}

#application .formTable td .ex span {
      margin: 0 7px;
}

#application #mhMailForm input.done ,#application #mhMailForm select.done ,#application #mhMailForm textarea.done {
    -webkit-box-shadow: 0 0 0px 1000px rgb(250,255,189) inset;
    -moz-box-shadow: 0 0 0px 1000px rgb(250,255,189) inset;
    -ms-box-shadow: 0 0 0px 1000px rgb(250,255,189) inset;
    box-shadow: 0 0 0px 1000px rgb(250,255,189) inset;
}

/*#application #mhMailForm .formTable .done {
  background: rgb(250,255,189) !important;
}
#application #mhMailForm .formTable .sex .done {
  background: none!important;
}*/



@media screen and (min-width: 641px){

  #home section .txt{
    font-size: 15px;
    line-height: 1.9;
  }

  #home section h2{
    font-size: 30px;
    letter-spacing: 0;
  }

  #home #mainImg{
    padding: 72px 0 0;
    height: 404px;
  }

  #home #mainImg .mainImgIn{
    text-align: left;
    width: 1000px;
    margin: 0 auto;
  }

  #home #mainImg .mainImgIn h2{
    text-align: left;
    line-height: 1;
  }

  #home #mainImg .tit01{
    font-size: 36px;
  }

  #home #mainImg .tit02{
    font-size: 70px;
    position: relative;
    z-index: 1;
  }

  #home #mainImg .txt{
    font-size: 20px;
    font-weight: bold;
  }

  #home #mainImg .man{
    width: 569px;
    position: absolute;
    left: 50%;
    top: 22px;
    z-index: 0;
  }

  #home #aboutSec{
    padding: 50px 0 80px;
  }

  #home #aboutSec .aboutSecIn{
    padding: 34px 0 12px 430px;
    background: url(../img/home/img_about01.png) no-repeat;
    margin-bottom: 45px;
  }

  #home #aboutSec .aboutSecIn h2{
    text-align: left;
    margin-bottom: 20px;
  }

  #home #aboutSec .aboutSecIn .btn{
    width: 280px;
    line-height: 52px;
  }

  #home #aboutSec .aboutSecIn .btn + .btn{
    margin-left: 10px;
  }

  #home #aboutSec .simpleService{
    padding: 30px 0 18px;
  }

  #home #aboutSec .simpleService h3{
    font-size: 22px;
    margin-bottom: 26px;
  }

  #home #aboutSec .simpleService h3 br{
    display: none;
  }

  #home #aboutSec .simpleService ul{
    padding: 0 65px 0 65px;
  }

  #home #aboutSec .simpleService ul li{
    float: left;
  }

  #home #aboutSec .simpleService ul li .img{
    float: none;
    width: auto;
    margin-bottom: 5px;
  }

  #home #aboutSec .simpleService ul li .txt{
    width: auto;
    float: none;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
  }

  #home #aboutSec .simpleService ul li + li{
    padding: 0 0 0 36px;
  }

  #home #aboutSec .simpleService .balloon{
    position: absolute;
    top: -26px;
    right: -38px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url(../img/home/txt_balloon01.png) no-repeat;
    width: 160px;
    height: 160px;
  }

  #home #appealSec{
    padding: 50px 0 60px;
  }

  #home #appealSec header{
    background: url(../img/home/bg_kami01.png) no-repeat center top;
    margin-bottom: 30px;
  }

  #home #appealSec header .balloon{
    font-size: 26px;
    line-height: 36px;
    padding: 1px 0 3px;
    width: 340px;
    margin-bottom: 20px;
  }

  #home #appealSec header .balloon:after{
    bottom: -7px;
    border-width: 10px 10px 0 10px;
  }

  #home #appealSec header h2{
    font-size: 60px;
    line-height: 1.1;
  }

  #home #appealSec .cmnList01 li{
    height: 247px;
    padding: 32px 410px 0 42px;
  }

  #home #appealSec .cmnList01 li h3{
    padding-left: 80px;
  }

  #home #appealSec .cmnList01 li h3 .theme{
    font-size: 30px;
  }

  #home #appealSec .cmnList01 li:nth-child(1):after{
    width: 66px;
    height: 66px;
    left: 42px;
    top: 32px;
  }

  #home #appealSec .cmnList01 li:nth-child(2):after{
    width: 66px;
    height: 66px;
    left: 42px;
    top: 32px;
  }

  #home #appealSec .cmnList01 li:nth-child(3):after{
    width: 66px;
    height: 66px;
    left: 42px;
    top: 32px;
  }

  #home #appealSec .cmnList01 li:nth-child(4):after{
    width: 66px;
    height: 66px;
    left: 42px;
    top: 32px;
  }

  #home #appealSec .cmnList01 li:nth-child(5):after{
    width: 66px;
    height: 66px;
    left: 42px;
    top: 32px;
  }

  #home #successSec{
    padding: 50px 0 100px;
  }

  #home #successSec h2{
    margin-bottom: 44px;
  }

  #home #successSec h2 br{
    display: none;
  }

  #home #successSec .caseList li{
    width: 466px;
    float: left;
  }

  #home #successSec .caseList li .img{
    width: 181px;
  }

  #home #successSec .caseList li .img img {
    width: 181px;
  }

  #home #successSec .caseList li .txtBox{
    width: 285px;
    padding: 30px 0 0 26px;
  }

  #home #successSec .caseList li .txtBox h3{
    font-size: 20px;
  }

  #home #successSec .caseList li .txtBox .spec{
    font-size: 15px;
    line-height: 1.9;
  }

  #home #successSec .caseList li + li{
    margin: 0 0 0 50px;
  }

  #home #flowSec{
    padding: 60px 0;
  }

  #home #flowSec h2{
    margin-bottom: 39px;
  }

  #home #flowSec ul{
    overflow: hidden;
    margin-bottom: 30px;
  }

  #home #flowSec ul li{
    width: 201px;
    float: left;
    overflow: visible;
  }

  #home #flowSec ul li .img{
    float: none;
    text-align: center;
    margin-bottom: 15px;
  }

  #home #flowSec ul li .img img{
    width: auto;
  }

  #home #flowSec ul li .txtBox{
    float: none;
    padding: 0;
    margin: 0;
  }

  #home #flowSec ul li .txtBox .txt{
    font-size: 13px;
  }

  #home #flowSec ul li .txtBox h3{
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 1em;
    text-align: center;
  }

  #home #flowSec ul li + li{
    margin-left: 62px;
    padding: 0;
  }

  #home #flowSec ul li + li:after{
    background: url(../img/home/ico_gray_arrow02.png);
    width: 13px;
    height: 36px;
    left: -33px;
    top: 55px;
    right: auto;
  }

  #home #flowSec ul li:nth-child(3) .txt{
    margin-top: -0.4em;
  }

  #home #flowSec .btn{
    width: 280px;
    display: block;
    margin: 0 auto;
  }

  #home #successSec .btn{
    width: 280px;
    display: block;
    margin: 30px auto 0;
  }

  #reward .rewardCv{
    background: url(../img/reward/bg_apply01.png) no-repeat;
    width: 600px;
    padding: 0;
    margin: 0;
    height: 92px;
  }

  #reward .rewardCv .btn01{
    width: auto;
    left: auto;
    right: 15px;
    bottom: 15px;
    padding: 0;
  }

  #reward .rewardCv .btn01 a:after{
    position: absolute;
    top: 19px;
    right: 13px;
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 4px;
    border-color: transparent transparent transparent #5c2014;
    -webkit-transition: all 0.2s;
            transition: all 0.2s;
  }

  #reward .rewardCv .btn01 a:hover:after{
    right: 10px;
  }

  #reward .rewardCv .btn01 img{
    width: auto;
  }

  #reward #flowSec{
    padding: 30px 0 60px;
  }

  #reward #flowSec h2{
    font-size: 30px;
    letter-spacing: 0;
    margin-bottom: 40px;
  }

  #reward #flowSec .cmnList01 > li{
    padding: 32px 342px 32px 42px;
  }

  #reward #flowSec .cmnList01 > li .img{
    right: 32px;
    top: 27px;
  }

  #reward #flowSec .cmnList01 > li .img img{
    width: 270px;
  }

  #reward #flowSec .cmnList01 > li .sub{
    margin: 0;
    padding: 15px 30px 20px;
    font-size: 13px;
  }

  #reward #flowSec .cmnList01 > li .sub .tit{
    text-align: left;
    font-size: 15px;
  }

  #reward #flowSec .cmnList01 > li .sub .mailList{
    margin-bottom: 12px;
  }

  #reward #flowSec .cmnList01 > li .sub .mailList li{
    font-size: 13px;
    line-height: 30px;
    padding: 0;
  }

  #reward #flowSec .cmnList01 > li .sub .notes{
    font-size: 13px;
    line-height: 1.7;
  }

  #reward #flowSec .cmnList01 > li + li{
    margin-top: 50px;
  }

  #reward #flowSec .cmnList01 > li + li:before{
    width: 71px;
    height: 26px;
    top: -44px;
  }

  #reward #flowSec .cmnList01 > li:nth-child(1) h3,
  #reward #flowSec .cmnList01 > li:nth-child(2) h3,
  #reward #flowSec .cmnList01 > li:nth-child(4) h3{
    position: relative;
    top: 11px;
    margin-bottom: 32px;
  }

  #services section .txt{
    font-size: 15px;
    line-height: 1.9;
  }

  #services h2{
    font-size: 30px;
    letter-spacing: 0;
    margin-bottom: 40px;
  }

  #services #serviceNav{
    padding: 30px 30px 0 0;
    width: 1000px;
    margin: 0 auto 80px;
  }

  #services #serviceNav li{
    width: 25%;
  }

  #services #serviceNav li:nth-child(2n-1){
    margin: 0;
  }

  #services #serviceNav li:nth-child(2n){
    margin: 0;
  }

  #services #serviceNav li:nth-child(n+1){
    margin-right: 10px;
  }

  #services #serviceNav li:last-child{
    margin-right: -30px;
  }

  #services #serviceNav li a{
    padding: 0;
    font-size: 14px;
    background-size: 7px 4px;
    line-height: 46px;
  }

  #services #serviceNav li a br{
    display: none;
  }

  #services #auxSec{
    padding-bottom: 80px;
  }

  #services #auxSec .aboutSecIn{
    padding: 0 0 0 390px;
    background: url(../img/services/bg_aux01.gif) no-repeat left 19px;
    background-size: 355px auto;
  }

  #services #auxSec h2{
    margin-bottom: 23px;
    text-align: left;
  }

  #services #auxSec .btn{
    margin-top: 32px;
    width: 280px;
  }

  #services #ticketSec{
    padding: 62px 0 80px;
  }

  #services #ticketSec h2{
    margin-bottom: 22px;
    text-align: left;
  }

  #services #ticketSec .ticketSecIn{
    padding: 0 393px 0 0;
    background: url(../img/services/bg_ticket01.gif) no-repeat right 19px;
    background-size: 323px auto;
  }

  #services #ticketSec .box{
    padding: 18px 24px 33px;
    margin-top: 52px;
  }

  #services #ticketSec .box img{
    width: auto;
  }

  #services #ticketSec .box .txt{
    margin-right: -214px;
    padding: 15px 214px 0 10px;
    font-size: 13px;
    line-height: 1.7;
  }

  #services #ticketSec .box > div{
    float: left;
    width: 450px;
  }

  #services #ticketSec .box .box02{
    margin: 0 0 0 30px;
  }

  #services #rewardSec{
    padding: 60px 0 80px;
  }

  #services #rewardSec .intro{
    font-size: 15px;
    text-align: center;
    margin-bottom: 35px;
  }

  #services #rewardSec .balloon{
    font-size: 18px;
    line-height: 2;
    padding: 1px 55px 3px;
    width: 500px;
    margin-bottom: 20px;
  }

  #services #rewardSec .balloon br{
    display: none;
  }

  #services #rewardSec .balloon:after{
    bottom: -7px;
    border-width: 10px 10px 0 10px;
  }

  #services #rewardSec ul{
    overflow: hidden;
    margin-bottom: 15px;
  }

  #services #rewardSec ul li{
    width: 201px;
    float: left;
    overflow: visible;
  }

  #services #rewardSec ul li .img{
    width: auto;
    display: block;
    text-align: center;
    margin-bottom: 15px;
  }

  #services #rewardSec ul li .img img{
    width: auto;
  }

  #services #rewardSec ul li .txtBox{
    display: block;
    padding: 0;
    margin: 0;
  }

  #services #rewardSec ul li .txtBox .txt{
    font-size: 13px;
  }

  #services #rewardSec ul li .txtBox h3{
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 15px;
    text-align: center;
  }

  #services #rewardSec ul li + li{
    margin-left: 63px;
    padding: 0;
  }

  #services #rewardSec ul li + li:after{
    background: url(../img/home/ico_gray_arrow02.png);
    width: 13px;
    height: 36px;
    left: -33px;
    top: 55px;
    right: auto;
  }

  #services #rewardSec .kami{
    background: url(../img/services/bg_kami01.png) no-repeat;
    background-position: 55px 0;
    margin-bottom: 55px;
    font-size: 24px;
  }

  #services #rewardSec .point .pointIn{
    padding: 0 40px 30px;
  }

  #services #rewardSec .point h3{
    font-size: 22px;
    top: -37px;
    margin-bottom: -10px;
  }

  #services #rewardSec .point h3 .icon{
    width: auto;
    top: 15px;
  }

  #services #exSec{
    padding: 60px 0 100px;
  }

  #services #exSec h2{
    margin-bottom: 30px;
    margin-right: -393px;
  }

  #services #exSec .intro{
    font-size: 15px;
    text-align: left;
    margin-bottom: 55px;
  }

  #services #exSec .exSecIn{
    padding: 0 393px 0 0;
    background: url(../img/services/bg_ex00.gif) no-repeat right 110px;
    background-size: 327px auto;
  }

  #services #exSec .cmnList01{
    margin-bottom: 60px;
  }

  #services #exSec .cmnList01 > li{
    padding: 25px 32px 25px 42px;
  }

  #services #exSec .cmnList01 > li h3{
    padding: 0 0 15px 0;
    border-bottom: 2px solid #eeebe7;
    margin-bottom: 20px;
  }

  #services #exSec .cmnList01 > li .in{
    padding-left: 319px;
  }

  #services #exSec .cmnList01 > li .img{
    right: auto;
  }

  #services #exSec .cmnList01 > li .melit{
    display: table;
    table-layout: fixed;
    width: 100%;
  }

  #services #exSec .cmnList01 > li .melit .tit{
    content: url("../img/services/ico_melit01.png");
    display: table-cell;
    vertical-align: middle;
    width: 75px;
  }

  #services #exSec .cmnList01 > li .melit .txt{
    display: table-cell;
    vertical-align: middle;
    padding-left: 20px;
    font-size: 15px;
    line-height: 1.8;
    width: 486px;
  }

  #services #exSec .cmnList01 > li .caution{
    display: table;
  }

  #services #exSec .cmnList01 > li .caution .titWrap{
    display: table-cell;
    vertical-align: top;
    width: 64px;
    padding: 0;
    text-align: center;
  }

  #services #exSec .cmnList01 > li .caution .titWrap .tit{
    margin: 0;
    font-size: 13px;
  }

  #services #exSec .cmnList01 > li .caution .txt{
    display: table-cell;
    vertical-align: middle;
    padding-left: 12px;
    font-size: 14px;
  }

  #services #exSec .cmnList01 li:nth-child(1) .img{
    left: 47px;
    top: 138px;
  }

  #services #exSec .cmnList01 li:nth-child(1) .img img{
    width: auto;
  }

  #services #exSec .cmnList01 li:nth-child(2) .img{
    left: 47px;
    top: 129px;
  }

  #services #exSec .cmnList01 li:nth-child(2) .img img{
    width: auto;
  }

  #services #exSec .cmnList01 li:nth-child(3) .img{
    left: 47px;
    top: 148px;
  }

  #services #exSec .cmnList01 li:nth-child(3) .img img{
    width: auto;
  }

  #services #exSec .cmnList01 li:nth-child(4) .img{
    left: 47px;
    top: 106px;
  }

  #services #exSec .cmnList01 li:nth-child(4) .img img{
    width: auto;
  }

  #services #exSec .cmnList01 li:nth-child(1):after{
    top: -8px;
    left: -8px;
    width: 66px;
    height: 66px;
  }

  #services #exSec .cmnList01 li:nth-child(2):after{
    top: -8px;
    left: -8px;
    width: 66px;
    height: 66px;
  }

  #services #exSec .cmnList01 li:nth-child(3):after{
    top: -8px;
    left: -8px;
    width: 66px;
    height: 66px;
  }

  #services #exSec .cmnList01 li:nth-child(4):after{
    top: -8px;
    left: -8px;
    width: 66px;
    height: 66px;
  }

  #services #exSec .cmnList01 li:nth-child(5):after{
    top: -8px;
    left: -8px;
    width: 66px;
    height: 66px;
  }

  #faq section h2{
    font-size: 30px;
    letter-spacing: 0;
    margin-bottom: 26px;
  }

  #faq #faqSec{
    margin-bottom: 20px;
  }

  #faq #faqSec .faqList dl{
    border: none;
  }

  #faq #faqSec .faqList dl .question{
    padding: 19px 0 9px 53px;
    font-size: 20px;
    background-size: 38px;
  }

  #faq #faqSec .faqList dl .answer{
    padding: 16px 0 30px 53px;
    font-size: 15px;
    background-size: 38px;
  }

  #faq .banner {
    margin: 20px 0;
  }

  #faq .faqList .bnrTxt {
    margin-top: 15px;
  }

  #company section h2{
    font-size: 30px;
    letter-spacing: 0;
    margin-bottom: 40px;
  }

  #company #overviewSec{
    padding: 30px 0 75px;
  }

  #company #overviewSec table{
    border: 8px solid #eeebe7;
  }

  #company #overviewSec table th{
    padding: 14px 0 15px 30px;
    width: 220px;
    font-size: 16px;
    line-height: 1.9;
  }

  #company #overviewSec table td{
    font-size: 15px;
    line-height: 2;
    padding: 12px 0 12px 30px;
  }

  #company #personalSec{
    padding-bottom: 90px;
  }

  #company #personalSec h2{
    margin-bottom: 33px;
  }

  #company #personalSec .intro{
    font-size: 15px;
    line-height: 1.9;
  }

  #company #personalSec dl dt{
    font-size: 16px;
    line-height: 2;
    border-bottom: 2px solid #eeebe7;
    margin-bottom: 10px;
    margin-top: 1.5em;
  }

  #company #personalSec dl dd{
    font-size: 15px;
    line-height: 1.9;
  }

  #contact section h2{
    font-size: 30px;
    letter-spacing: 0;
  }

  #contact #beforeSec{
    padding: 30px 0 80px;
  }

  #contact #beforeSec h2{
    margin-bottom: 35px;
  }

  #contact #beforeSec .intro{
    text-align: center;
  }

  #contact #beforeSec .intro .btn{
    width: 280px;
  }

  #contact #beforeSec .intro .txt{
    margin-bottom: 25px;
    font-size: 15px;
    line-height: 2;
  }

  #contact #contactSec{
    padding: 60px 0 110px;
  }

  #contact #contactSec.thankyou th{
    padding-bottom: 15px;
  }

  .formTable th, .formTable td{
    display: table-cell;
    vertical-align: top;
  }

  .formTable th{
    width: 190px;
    font-size: 16px;
    padding: 24px 0;
  }

  .formTable th .required{
    font-size: 12px;
    line-height: 22px;
    position: relative;
    top: -2px;
    padding: 0 10px 1px;
  }

  .formTable td{
    padding: 20px 0 20px 60px;
  }

  .formTable td .ex{
    display: inline-block;
    vertical-align: middle;
    margin-left: 20px;
    font-size: 13px;
  }

  .formTable td .ex span {
    margin: 0 10px;
  }

  .formTable td.mailD .ex{
    margin: 10px 0 0 0;
  }

  .formTable td .input_wrap{
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 0;
  }

  .formTable td.msgD .input_wrap{
    display: block;
  }

  .formTable input[type="text"], .formTable input[type="tel"], .formTable input[type="email"], .formTable select{
    width: 400px;
  }

  input[type="submit"]{
    background: url(../img/contact/btn_submit01_m.png) no-repeat;
    width: 306px;
    height: 56px;
    cursor: pointer;
  }

  input[type="submit"]:hover{
    background-position: 0 bottom;
  }

  #application section h2{
    font-size: 30px;
    letter-spacing: 0;
  }

  #application #applySec{
    padding: 30px 0 100px;
  }

  #application #applySec.confirm th, #application #applySec.thankyou th{
    padding-bottom: 15px;
  }

  #application .formTable td .tit{
    display: inline-block;
    vertical-align: middle;
    width: 90px;
    border: none;
    padding-left: 0;
  }

  #application .formTable .address .ex01{
    margin-left: 0;
    margin-top: 15px;
  }

  #application .formTable .address .line{
    margin-bottom: 15px;
  }

  #application .formTable .address .line .input_wrap{
    margin-bottom: 0;
  }

  #application .formTable .postcode{
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 0;
  }

  #application .formTable .postcode .btn{
    width: 200px;
    line-height: 36px;
    padding: 0;
    font-size: 14px;
  }

  #application .formTable .postcode .btn br{
    display: none;
  }

  #application .formTable .terms td{
    display: block;
    width: 1000px;
    padding-left: 0;
  }

  #application .formTable .terms td .termsBox::-webkit-scrollbar{
    width: 10px;
    background: #eee;
  }

  #application .formTable .terms td .termsBox::-webkit-scrollbar:horizontal{
    display: none;
  }

  #application .formTable .terms td .termsBox::-webkit-scrollbar-button{
    display: none;
  }

  #application .formTable .terms td .termsBox::-webkit-scrollbar-thumb{
    background: #ce343a;
  }

  #application .formTable .terms td .termsBox::-webkit-scrollbar-corner{
    display: none;
  }

  #application .formTable .terms td .termsBox .termsBoxIn{
    font-size: 15px;
    line-height: 1.9;
  }

  #application .formTable .terms td .agreeBox p input{
    position: relative;
    top: 0;
  }

  #application .formTable .terms th{
    display: block;
  }
}
