@charset "UTF-8";
*, *::before, *::after {
  box-sizing: border-box;
}
html, body {
  font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
/* bootstrap */
.bg-secondary {
  background-color: #B1C4C9 !important;
}
.btn-primary {
  background-color: #3F3244 !important;
  border-color: #3F3244 !important;
}
.btn-primary:focus {
  box-shadow: 0 0 0 0.2rem rgb(41 22 22 / 50%) !important;
}
/* index */
body#index {
  width: 100%;
  height: 100%;
  cursor: pointer;
}
div#main_visual {
  background-image: url("../image/top_bg.jpg");
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  width: 100vw;
  height: 100vh;
  position: relative;
  animation-name: fade;
  animation-duration: 1s;
}
@keyframes fade {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes fade {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
div#main_visual div.inner {
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
  text-align: center;
  animation-name: fade2;
  animation-duration: 2.5s;
}
@keyframes fade2 {
  from {
    opacity: 0;
    transform: translateY(50%);
  }
  to {
    opacity: 1;
    transform: translateY(-50%);
  }
}
@-webkit-keyframes fade2 {
  from {
    opacity: 0;
    transform: translateY(50%);
  }
  to {
    opacity: 1;
    transform: translateY(-50%);
  }
}
div#main_visual footer {
  position: absolute;
  width: 100%;
  bottom: 0;
}
div#main_visual div.tap_enter {
  position: absolute;
  width: 100%;
  text-align: center;
  font-family: 'Varta', sans-serif;
  font-weight: bold;
  font-size: 2rem;
  bottom: calc(50% - 200px);
  opacity: 0;
  animation: fade3 1s ease-in-out 2s 1 normal forwards;
}
@keyframes fade3 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fade3 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* header */
header {
  color: #fff;
}
header h1 {
  font-size: 1.2rem;
  margin-bottom: 0;
}
div.logo img {
  width: 120px;
}
/* footer */
footer {
  text-align: center;
  padding: 0.5rem;
}
/* sidemenu */
div#sidemenu {
  position: fixed;
  top: 50%; /*親のtopから50%*/
  transform: translateY(-50%) translateX(0);
  right: 20px;
}
div#sidemenu ul li {
  list-style: none;
  width: 100px;
  height: 45px;
  line-height: 45px;
  -webkit-box-align: center;
  box-align: center;
  text-align: center;
}
div#sidemenu ul li a {
  color: #333;
  font-size: 0.9rem;
  font-weight: bold;
  display: inline-block;
  width: 100%;
  height: 100%;
  text-decoration: none;
}
div#sidemenu ul li:nth-child(even) {
  background-color: #3F3244;
}
div#sidemenu ul li:nth-child(even) a {
  color: #fff;
}
div#sidemenu ul li:nth-child(odd) {
  background-color: #B1C4C9;
}
div#sp_menu {
  display: none;
}

div#sidemenu ul li.tolist {
  background-color: crimson;
}
div#sidemenu ul li.tolist a {
  color:#fff;
}

/* main */
@media screen and (max-width:1400px) {
  div.main_area {
    padding-right: 120px;
  }
}
h2 {
  font-size: 1.2rem;
  font-weight: bold;
}
h3 {
  font-size: 1.1rem;
  font-weight: bold;
}
div.card-header h2 {
  margin-bottom: 0;
}

div.card-body img {
  width: 100%;
  border: solid 5px #fff;
  box-shadow: 0px 0px 5px #ccc;
  margin-bottom: 1rem;
}

div.card-body>img { /* 直下の時だけ */
    width:auto;
}
/* 基本仕様 */
table.specification_table th {
  width: 12rem;
  text-align: right;
}
table.specification_table td {
  text-align: left;
}
table.specification_table p.option {
  margin-bottom: 0;
}
/* 基本価格とかのページ */
table.select_table th {
  text-align: right;
  width: 5rem;
}
table.select_table_2 th {
  vertical-align: middle;
  width: 12rem;
}
/* その他オプション */
/* オプション選択画面 option.html */
table.approximate_table th {
  width: 12rem;
  text-align: right;
}
table.approximate_table p {
  margin-bottom: 0;
}
table.option_table {
  background-color: #fff;
}
table.option_table td {
  width: 14rem;
}
table.option_table td:nth-child(2) {
  width: 8rem;
  text-align: right;
}
table.option_table th div {
  padding: 0 15px;
}
table.option_table th div img {
  margin-bottom: 0.5rem;
}
table.option_table th div i {
  font-size: 3rem;
}
td.landing select {
  display: none;
}
select.sqmater {
  width: 6rem;
  display: inline-block;
}
/* 型番 */
div.card-body div.col-sm-5.col-12.text-center span {
  font-weight: normal;
  font-size: 0.9rem;
}
/* その他項目入力欄 */
div#other table td:nth-child(2) input[type="text"] {
  width: calc(100% - 1rem);
  display: inline-block;
}
/* 見積書作成 confirm.html */
span.input-group-text {
  width: 45px;
}
span.input-group-text i {
  margin: auto;
}
div.input-group-append > select {
  border-bottom-left-radius: 0;
  border-top-left-radius: 0;
}
div.confirm_box table td {
  vertical-align: middle;
}
div.confirm_box table th {
  vertical-align: middle;
  padding: 0.5rem;
}
div.confirm_box table td:nth-child(1) {}
div.confirm_box table td:nth-child(2) {
  width: 8rem;
  text-align: right;
}
div.confirm_box table tr.total {
  border-top-width: 3px !important;
}
table.expenses {
width:auto;

}
table.expenses th {
vertical-align:middle;
text-align:right;
}



/* sample/施工例 */
.constraction_before, .constraction_after {
  text-align: center;
}
.constraction_before img, .constraction_after img {
  border: solid 5px #fff;
  box-shadow: 0px 0px 5px #ccc;
  width: 100%;
  margin-bottom: 1rem;
}
/* setting */
div.container-full.main_area {
  margin: 0 1rem;
  padding-right: 120px;
}
table.setting_table th {
  text-align: center;
}
div#kengu div.card-body {
  background-color: rgba(252, 237, 237, 1.00);
}
/* color */
/* color_select_body */
div.color_select_body p {
  font-size: 0.8rem;
  font-weight: bold;
  text-align: center;
}
div.color_select_add img {
  border: solid 5px #B1C4C9;
}
img.color_select_add {
  border: solid 5px #B1C4C9 !important;
}
table.confirm_color_table td {
    width:auto;
    text-align: left;
}

table.confirm_color_table img {
    width:300px;
}

/* デザイナープラン */

body#designer .bg-secondary{background-color:#c9b1c2!important;}
body#designer div#sidemenu ul li:nth-child(odd){background-color:#c9b1c2!important;}

body#designer div#sidemenu ul li.tolist {
  background-color: darkred !important;
}


tr.readonly td,
tr.readonly th {
background-color:#c0c0c0!important;
}


/* ディスプレイパック宣伝ページ用 */

div.mainVisual{
background-image: url("../image/dp/dr_a_01.jpg");
background-size: cover;
width: 100%;
height: 100vh;
position: relative;

}

div.mainVisual div.logo {
position: absolute;
right:15px;
top:15px;
}

div.mainwrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
justify-content: center;
align-items: center;

}

div.mainVisual h1 {
  text-align: center;
  margin:auto;
  width: 100%;
  color:#333;  text-shadow:1px 1px 0 #FFF, -1px -1px 0 #FFF,
  -1px 1px 0 #FFF, 1px -1px 0 #FFF,
  0px 1px 0 #FFF,  0-1px 0 #FFF,
  -1px 0 0 #FFF, 1px 0 0 #FFF;
}

div.mainVisual h1 img {
  max-width: 100%;
}
div.mainVisual p {
  position: absolute;
  bottom:15px;
  right: 15px;
  color:#fff;
  margin: 0;
}

body#DP div.main_area img {
  max-width: 100%;
  border: solid 5px #fff;
  box-shadow: 2px 2px 4px gray;
} 


@media screen and (max-width:1400px) {
  body#DP div.main_area {
    padding-right: 0px;
  }
}

h4 {
  padding:0.5rem;

  border-top:#B1C4C9 solid 5px;
  border-left:#B1C4C9 solid 10px;
  font-size: 1rem;
}


/* 見積もり一覧 */
table.mitsumori_list td {
  vertical-align: middle;
}
table.mitsumori_list td:nth-child(1){
  width:7rem;
}
table.mitsumori_list td:nth-child(2) {
  width:8rem;
}
table.mitsumori_list td:nth-child(3) {

}

table.mitsumori_list td:last-child {
  text-align: left;
  width:30rem;
}
table.mitsumori_list td button {
  margin:5px;
  }



  /* メールアドレスを呼び出すやつセットアップ */
.ui-autocomplete { max-height: 200px; overflow-y: auto; overflow-x: hidden; }
.ui-menu-item { display: flex; align-items: center; justify-content: space-between; }
div.ui-menu-item-wrapper { flex-grow: 1; }
.delete-icon { cursor: pointer; }
