@import url(base.css);
@import url(common.css);
@import url(lib.css);
/*PC*/
/*SP*/
/* ---------------------------------
---------------------------------- */
#mainv { line-height: 230px; background: url(../img/bg_buildings.png) repeat-x 100% 100%; position: relative; text-align: center; color: #e60012; font-size: 18px; letter-spacing: 5px; }
#mainv span { width: 370px; height: 230px; position: absolute; top: 0; right: 0; background: url(../img/bg_air.png) no-repeat; }

.container { padding: 60px 0; }

.m_copy { font-weight: bold; font-size: 17px; text-align: center; letter-spacing: 2px; line-height: 50px; margin-bottom: 70px; }

article { zoom: 1; padding-bottom: 50px; margin-bottom: 60px; border-bottom: solid 1px #c9c9c9; }
article:after { display: table; clear: both; content: ""; }
article:before { display: table; content: ""; }
article:last-child { border-bottom: none; }
article.bn { border: none; padding-bottom: 0px; margin-bottom: 30px; }
article .cont_ex { width: 680px; }
article .cont_ex_case { width: 100%; }
article .cont_ex_case p { font-size: 16px; line-height: 35px; }
@media (max-width:640px){
  article .cont_ex_case p { font-size: 14px; line-height: 35px; }
}
article .cont_ex_case h2 { font-size: 22px; font-weight: bold; margin-bottom: 30px; letter-spacing: 2px; color: #e60012; border-bottom: solid 2px; }
article .cont_ex p { font-size: 16px; line-height: 35px; }
article .cont_ex h2 { font-size: 22px; font-weight: bold; margin-bottom: 30px; letter-spacing: 2px; color: #e60012; }
article .cont_ex.box { zoom: 1; }
article .cont_ex.box:after { display: table; clear: both; content: ""; }
article .cont_ex.box:before { display: table; content: ""; }
article .cont_ex.box p { width: 520px; float: left; }
article .cont_ex.box .box02 { float: right; }
article .cont_img { width: 215px; }
article.art01 .cont_ex { float: left; }
article.art01 .cont_img { float: right; }
article.art01.mb0 { margin-bottom: 0; padding-bottom: 0; }
article.art02 .cont_ex { float: right; }
article.art02 .cont_img { float: left; }
article.row2 .cont_ex { width: 520px; }
article.row2 .cont_img { width: 440px; }
article.row2 .cont_img ul li { margin-top: 50px; float: left; }
article.row2 .cont_img ul li:first-child { margin-right: 10px; }
article.row3 .cont_ex { width: 100%; }
article.row3 .cont_img { width: 100%; }
article.row3 .cont_img ul { text-align: center; }
article.row3 .cont_img ul li { padding: 10px; padding-bottom: 0px; display: inline-block; }

.box01 { background: #f5f5f5; padding: 25px 40px; }
.box01 dl dt { width: 350px; margin: 0 auto; border: solid 1px #ccc; background: white; font-size: 20px; letter-spacing: 2px; color: #e60012; font-weight: bold; text-align: center; margin-bottom: 20px; padding: 12px; }
.box01 dl dd { font-size: 15px; line-height: 2em; }

.box02 { width: 450px; float: right; display: block; border: solid 1px black; padding: 17px; }
.box02 dl { margin-bottom: 15px; font-size: 15px; }
.box02 dl:last-child { margin: 0; }
.box02 dl dt { margin-bottom: 5px; }
.box02 dl dd { text-indent: 20px; }

.box03 { zoom: 1; margin-bottom: 20px; }
.box03:after { display: table; clear: both; content: ""; }
.box03:before { display: table; content: ""; }
.box03 article { width: 50%; padding: 34px; float: left; margin-bottom: 30px; height: 200px; margin-right: -1px; border: solid 1px #ccc; }
.box03 article h3 { font-size: 22px; font-weight: bold; margin-bottom: 15px; letter-spacing: 2px; color: #e60012; }
.box03 article p { font-size: 16px; line-height: 40px; }

.box04 { width: 920px; margin: 0 auto; border: solid 1px #ccc; padding: 30px; margin-bottom: 40px; }
.box04 p { font-size: 16px; font-weight: bold; line-height: 2.7em; color: #555; }

.table01 { width: 920px; margin: 0 auto; }
.table01 tr th, .table01 tr td { padding: 15px; font-size: 16px; border: solid 1px #ccc; vertical-align: top; text-align: left; }
.table01 tr th { width: 300px; background: #f5f5f5; }
.table01 tr td input[type="text"], .table01 tr td input[type="tel"], .table01 tr td input[type="mail"] { border: solid 1px #ccc; padding: 2px 5px; width: 200px; font-size: 15px; }
.table01 tr td input textarea { padding: 5px; }
.table01 tr td dl { margin-bottom: 12px; }
.table01 tr td dl dt { font-weight: bold; }

.required { display: inline-block; margin-right: 5px; padding-left: 5px; font-size: 10px; font-weight: bold; color: #e60012; }

.error { color: #e60012; font-size: 12px; font-weight: bold; }

.ex01 { font-size: 15px; margin-bottom: 20px; line-height: 2em; }

.form_submit { text-align: center; margin-top: 50px; margin-bottom: 50px; zoom: 1; }
.form_submit:after { display: table; clear: both; content: ""; }
.form_submit:before { display: table; content: ""; }
.form_submit li input { width: 210px; background: #e60012; border: none; text-align: center; display: inline-block; cursor: pointer; color: white; font-size: 20px; letter-spacing: 2px; font-weight: bold; line-height: 57px; border: solid 1px #e60012; }
.form_submit li input:hover { background: white; color: #e60012; border: solid 1px #e60012; }
.form_submit.two li { display: inline-block; margin: 10px; }

.video {
  width: 60%;
  aspect-ratio: 16 / 9;
  margin: 0px auto;
}
.video iframe {
  width: 100%;
  height: 100%;
}

/*SP*/
@media (max-width: 640px) { #mainv { line-height: 140px; font-size: 13px; letter-spacing: 2px; }
  #mainv span { width: 370px; height: 140px; }
  .container { padding: 20px 5%; }
  .m_copy { font-weight: 500; font-size: 14px; text-align: left; letter-spacing: 1px; line-height: 2em; margin-bottom: 20px; }
  article { zoom: 1; padding-bottom: 25px; margin-bottom: 25px; border-bottom: dotted 1px #ccc; }
  article:after { display: table; clear: both; content: ""; }
  article:before { display: table; content: ""; }
  article:last-child { border-bottom: none; }
  article.bn { border: none; padding-bottom: 0px; margin-bottom: 25px; }
  article .cont_ex { width: 100%; margin-bottom: 15px; }
  article .cont_ex p { font-size: 15px; line-height: 2em; }
  article .cont_ex h2 { font-size: 18px; font-weight: bold; margin-bottom: 10px; letter-spacing: 1px; color: #e60012; }
  article .cont_img { width: 80%; margin: 0 auto; }
  article .cont_img img { width: 100%; }
  article.art01 .cont_ex { float: none; }
  article.art01 .cont_img { float: none; }
  article.art01.mb0 { margin-bottom: 20px; padding-bottom: 0; }
  article.art02 .cont_ex { float: none; }
  article.art02 .cont_img { float: none; }
  article.row2 .cont_ex { width: 100%; }
  article.row2 .cont_img { width: 100%; }
  article.row2 .cont_img ul { text-align: center; }
  article.row2 .cont_img ul li { float: none; margin: 5px; }
  article.row2 .cont_img ul li img { width: inherit; }
  .box01 { background: #f5f5f5; padding: 15px 20px; }
  .box01 dl dt { width: 100%; margin: 0 auto; border: solid 1px #ccc; background: white; font-size: 16px; letter-spacing: 2px; color: #e60012; font-weight: bold; text-align: center; margin-bottom: 20px; padding: 12px; }
  .box01 dl dd { font-size: 15px; line-height: 2em; }
  .box02 { width: 100%; display: inline-block; border: solid 1px black; padding: 15px; margin-bottom: 10px; }
  .box02 dl { margin-bottom: 15px; font-size: 15px; }
  .box03 { zoom: 1; margin-bottom: 30px; }
  .box03:after { display: table; clear: both; content: ""; }
  .box03:before { display: table; content: ""; }
  .box03 article { width: 100%; padding: 15px; float: none; height: inherit; margin-right: 0px; margin-bottom: -1px; border: solid 1px #ccc; }
  .box03 article h3 { font-size: 18px; font-weight: bold; margin-bottom: 0px; letter-spacing: 1px; color: #e60012; }
  .box03 article p { font-size: 15px; line-height: 30px; }
  .box04 { width: 100%; margin: 0 auto; border: solid 1px #ccc; padding: 15px; margin-bottom: 40px; }
  .box04 p { font-size: 15px; font-weight: 500; line-height: 2em; color: #555; }
  .table01 { width: 100%; margin: 0 auto; }
  .table01 tr th, .table01 tr td { display: block; width: 100%; padding: 8px 0; font-size: 15px; border: none; vertical-align: top; margin-bottom: -1px; text-align: left; }
  .table01 tr th { padding: 8px; background: #eee; }
  .table01 tr td input[type="text"], .table01 tr td input[type="tel"], .table01 tr td input[type="mail"] { border: solid 1px #ccc; padding: 8px 5px; width: 100%; font-size: 15px; }
  .table01 tr td textarea { width: 100%; padding: 5px; }
  .required { display: inline-block; margin-right: 5px; padding-left: 5px; font-size: 10px; font-weight: bold; color: #e60012; }
  .error { color: #e60012; font-size: 12px; font-weight: bold; }
  .ex01 { font-size: 15px; margin-bottom: 20px; line-height: 2em; }
  .ex01.al-c { text-align: left; }
  .form_submit { text-align: center; margin-top: 30px; margin-bottom: 30px; zoom: 1; }
  .form_submit:after { display: table; clear: both; content: ""; }
  .form_submit:before { display: table; content: ""; }
  .form_submit li input { width: 210px; background: #e60012; border: none; text-align: center; display: inline-block; cursor: pointer; color: white; font-size: 18px; letter-spacing: 2px; font-weight: bold; line-height: 40px; border: solid 1px #e60012; }
  .form_submit li input:hover { background: white; color: #e60012; border: solid 1px #e60012; }
  .form_submit.two li { display: inline-block; margin: 10px; } }
