@charset "utf-8";
/* CSS Document */

* {
  margin: 0;
  padding: 0;
}
html {
  height: 100%;
}
body {
  height: 100%;
}
table {
  border: 1px solid #ccc;
  border-collapse: collapse;
}
table td,
table th {
  padding: 5px;
  border: 1px solid #ccc;
}
.q_00 table tr:last-child td {
  border-top: 3px solid #ccc;
}
.sidebar {
  position: relative;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  padding: 0;/*padding: 48px 0 0;*/
  box-shadow: inset -1px 0 0 rgba(0, 0, 0, 0.1);
}
.sidebar .nav-link {
  font-weight: 500;
  color: #333;
}

input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;

  /* buttonのスタイル削除 */
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  -webkit-appearance: none;
}

input[type="radio"]:checked {
  border: 2px solid red;
}

.disnone {
  display: none;
}

input[type="checkbox"]:checked + img {
  opacity: 0.3;
}

table td input[type="number"] {
  width: calc(100% - 1em);
}

#plan_select_wrap > div .card {
  margin: 10px auto;
}

/* 前後ページ移動のcol-12を指定したい*/
main > .col-12 {
  display: flex;
}
/* 前解除のボタンを指定したい*/
#plan_select_wrap .col-12 button {
  margin-bottom: 30px;
}

.card-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.content label {
  width: 17em;
}
.card-body .btn {
  display: none;
}

.sidebar .active {
  font-weight: bold;
}

.sidebar-sticky dd {
	display: flex;
	font-size: 17px;
	padding:10px 0;
	margin-bottom:0;
}

.sidebar-sticky dd .item-name {
	width: 10em;
	text-align: left;
}

.q_4 table thead td:nth-of-type(1) {
  width: 12em;
}

.q_4 table,
.q_5,
.q_6 {
  margin-top: 5px;/*margin-top: 10px;*/
}

nav ol {
  padding-left: 2em;
}

.mouse_pointer {
  cursor: pointer;
}

/* 20211126追加分 */
.q_6 form input:not([type="checkbox"]),
    .q_6 form select {
      width: 190px;
    }

    .fontSize12px {
      font-size: 12px;
    }

    .em_2 {
      width: 2em;
    }

    .em_3 {
      width: 3em;
    }

    .em_4 {
      width: 4em;
    }

    .em_5 {
      width: 5em;
    }

    .em_6 {
      width: 6em;
    }

	.em_7 {
      width: 7em;
    }

    .em_8 {
      width: 8em;
    }

	.em_85 {
      width: 8.5em;
    }

	.em_9 {
		  width: 9em;
	}

	.em_10 {
		  width: 10em;
	}

	.em_12 {
      width: 12em;
    }

	.em_11 {
      width: 11em;
    }

    .em_13 {
      width: 13em;
    }

    .em_16 {
      width: 16em;
    }

  	.em_17 {
      width: 17em;
    }

    .em_18 {
      width: 18em;
    }

    .em_30 {
      width: 30em;
    }

    .q_6 .nav a {
      color: inherit;
    }
    /* ----------------- */


/* 印刷用*/
@media print {
  .sidebar {
    display: none !important;
  }
  main {
    margin-right: auto !important;
    background-color: transparent !important;
  }
}


/* 署名 */
#signCanvas {
  border: 1px solid #000;
}

.jSignature {
  width: 100% !important;
}

.visible{
  visibility: visible !important;
}
.sign-w-h{
  width: 100% !important;
  height: 350px !important;
}


/* 追加　入江 ↓ */
/* ハンバーガーメニュー ↓ */
nav.navbar.navbar-expand-lg.navbar-light.bg-light.mt-5{
	justify-content: flex-end;
}

/* topページ ↓ */
ul.navbar-nav li{
	border: 2px solid #333;
	padding:10px 5px;
	border-radius: 5px;
	/*font-size: 15px;*/
	margin:0 10px;
	text-align: center;
}
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .active >.nav-link{
	color:#fff!important;
	font-weight:bold;
}
.navbar-light .navbar-nav .nav-link{
	color:#646464!important;
}
ul.navbar-nav li:first-child{
	border-color: #e5a487;
}
li.nav-item:first-child:hover,
li.nav-item:first-child.active{
	background: #e5a487;
}
ul.navbar-nav li:nth-of-type(2){
	border-color: #9acc77;
}
li.nav-item:nth-of-type(2):hover,
li.nav-item:nth-of-type(2).active{
	background: #9acc77;
}
ul.navbar-nav li:nth-of-type(3){
	border-color: #49b9cb;
}
li.nav-item:nth-of-type(3):hover,
li.nav-item:nth-of-type(3).active{
	background: #49b9cb;
}
ul.navbar-nav li:nth-of-type(4){
	border-color: #4F4F9D;
}
li.nav-item:nth-of-type(4):hover,
li.nav-item:nth-of-type(4).active{
	background: #4F4F9D;
}
ul.navbar-nav li:last-child{
	border-color: #ef858c;
}
li.nav-item:last-child:hover,
li.nav-item:last-child.active{
	background: #ef858c;
}
h1.top_name{
	color:#e88717;
	position:relative;
}
h1.top_name::before{
	content: url(../img/dentaku.png);
	display: inline-block;
	padding-right: 40px;
	vertical-align: middle;
}

/* topページ （ファイルドラッグ＆ドロップ箇所）↓ */
.rounded{
	background-color: #f9ecde;
    margin: 2em 0;
    padding: 1em;
    position: relative;
}
.rounded::after{
	content: "";
    border-color: #e48618 #fff #fff #e48618;
    border-style: solid;
    border-width: 0 0 24px 24px;
    bottom: 0;
    position: absolute;
    right: 0;
}
.rounded .dragdropwrap{
	border:2px dashed #fff;
	padding:30px;
}

/* customerInfo.html ↓ */
.submit input{
	border:1px solid #dee2e6;
	padding:5px 10px;
	border-radius: 10px;
}

/* topページ （見積り作成ボタン）↓ */
.btn-info.bg_orange{
	background-color:#e48618;
	border-color: #e48618;
	font-weight:bold;
}
/* login.html ↓ */
.nav-item.w-49{
	letter-spacing: 3px;
	width:49%!important;
}
table.tab-pane td.no-wrap{
	white-space: nowrap;
}
table.tab-pane td.w-auto input{
	width:auto;
}
#member.tab-pane td.no-wrap{
	white-space: nowrap;
}
#member .tab-pane td.w-auto input{
	width:auto;
}
/* member.html ↓ */
#member div.tab-content{
  display: flex;
  justify-content: center;
}
#member table{
  border:none;
}

/* トップ　左箇所 ↓ */
.col-md-3 h4{
	font-size: 1.3rem;
	text-align: center;
	background: url(../img/midashi.png) no-repeat center;
	background-size:cover;
}
.sentaku_plan dt{
	padding-left:24px;
	margin-bottom:2px;
}
.sentaku_plan dd{
	padding:0 0 0 23px;
}
i.fa.fa-sort.pl-2{
	color: #fff;
}

/* progressbar ↓ */
.progressbar {
    position: relative;
    margin: 0 auto;
    padding: 0;
    display: flex;
	width:90%;
}
.progressbar li {
    position: relative;
    list-style-type: none;
    text-transform: uppercase;
    color: #999999;
    font-weight: bold;
    counter-increment: steps;
	padding-left:13px;
}
.progressbar li:before {
    display: inline-block;
    width: 26px;
    height: 26px;
    margin: 7px auto 20px auto;
    content: '';
    line-height: 26px;
    font-size: 12px;
    text-align: center;
    border-radius: 50%;
    background-color: #dfd9d9;
    content: counter(steps);
}
.progressbar li:after {
	display:inline-block;
    position: absolute;
    z-index: -1;
    top: -30px;
    left: 24px;
    width: 3px;
    height: 100%;
    content: '';
    background-color: #dfd9d9;
}
.progressbar li:first-child:after {
    content: none;
}
.progressbar li.active,
.progressbar li.active a{
    color: #e88717;
}
.progressbar li.active:before,
.progressbar li.complete:before {
    background-color: #e88717;
    color: #FFF;
}
.progressbar li a{
	padding-left:5px;
}

/* トップ　右箇所 共通 ↓ */
div#plan_select_wrap{
	margin-top:46px;
}

/* 1.トップページ ↓ */
.top_nav li a{
	padding:0 5px/*0.3rem*/ !important;
}

/* 2.一般葬 ↓ */
#plan_select_wrap > div .card{
	margin-bottom:20px;
}
h1.text-center{
	margin-top:30px;
}
.card-body{
	padding:0 0 10px;
}
h5.card-title{
	text-align: center;
	margin:0 0 10px;
	padding:10px 0;
	color:#fff;
	font-weight: bold;
}
h5.card-title.lc001{
	background:#e5a487;
}
h5.card-title.lc002{
	background:#9acc77;
}
h5.card-title.lc003{
	background:#92d2dc;
}
h5.card-title.lc004,
h5.card-title.sc0010{
	background:#4F4F9D;
}
h5.card-title.lc005,
h5.card-title.sc0011{
	background:#ef858c;
}
.card-text{
	margin:0;
	padding:0 10px;
	font-size: 14px;
}

/* オプションの選択 ↓*/
.waku_option{
	margin: 10px 20px 10px;
	background-color: #fff;
	position: relative;
	width:calc(100%/5);
}
label.p_option{
	background-color: #fff;
	border: 2px solid #edd3b5;
	border-radius:10px;
	height: 80px;
}
.optbox{
	width: 126px;
	background-repeat: no-repeat;
	background-size: contain;
	border-radius: 8px 0 0 8px;
	height: 100%;
}

/* 背景画像 ↓*/
.optbox.op001{
	background-image:url(../img/icon/tentative/01.jpg);
}
.optbox.op002{
	background-image:url(../img/icon/option/03.png);
}
.optbox.op003{
	background-image:url(../img/icon/option/06.png);
}
.optbox.op004{
	background-image:url(../img/icon/option/13.png);
}
.optbox.op005{
	background-image:url(../img/icon/option/40.png);
}
.optbox.op006{
	background-image:url(../img/icon/option/08.png);
}
.optbox.op007{
	background-image:url(../img/icon/option/09.png);
}
.optbox.op008{
	background-image:url(../img/icon/option/29.png);
}
.optbox.op009{
	background-image:url(../img/icon/option/20.jpg);
}
.optbox.op0010{
	background-image:url("../img/icon/option/16.png");
}
.optbox.op0011{
	background-image:url("../img/icon/option/16.png");
}
.optbox.op0012{
	background-image:url("../img/icon/tentative/02.jpg");
}
.optbox.op0013{
	background-image:url("../img/icon/option/13.png");
}
.optbox.op0014{
	background-image:url("../img/icon/option/14.png");
}
.optbox.op0015{
	background-image:url("../img/icon/option/19.png");
	width:150px;
}
.optbox.op0016{
	background-image:url("../img/icon/option/07.png");
}
.optbox.op0017{
	background-image:url("../img/icon/option/30.png");
}
.optbox.op0018{
	background-image:url("../img/icon/option/11.png");
	width:125px;
}
.optbox.op0019{
	background-image:url("../img/icon/option/12.png");
}
.optbox.op0020{
	background-image:url("../img/icon/option/28.png");
	width:162px;
}
.optbox.op0021{
	background-image:url("../img/icon/option/42.png");
}
.optbox.op0022{
	background-image:url("../img/icon/option/31.png");
	width:151px;
}
.optbox.op0023{
	background-image:url("../img/icon/option/43.png");
}
.optbox.op0024{
	background-image:url("../img/icon/tentative/03.jpg");
}
.optbox.op0025{
	background-image:url("../img/icon/option/32.png");
}
.optbox.op0026{
	background-image:url("../img/icon/option/17.png");
	width:153px;
}
.optbox.op0027{
	background-image:url("../img/icon/option/22.png");
	width:152px;
}
.optbox.op0028{
	background-image:url("../img/icon/option/21.png");
}
.optbox.op0029{
	background-image:url("../img/icon/tentative/06.png");
}
.optbox.op0030{
	background-image:url("../img/icon/option/23.png");
}
.optbox.op0031{
	background-image:url("../img/icon/option/04.png");
}
.optbox.op0032{
	background-image:url("../img/icon/tentative/04.png");
}
.optbox.op0033{
	background-image:url("../img/icon/option/35.png");
}
.optbox.op0034{
	background-image:url("../img/icon/option/36.png");
}
.optbox.op0035{
	background-image:url("../img/icon/option/33.png");
}
.optbox.op0036{
	background-image:url("../img/icon/option/02.png");
}
.optbox.op0037{
	background-image:url("../img/icon/option/01.png");
}
.optbox.op0038{
	background-image:url("../img/icon/option/05.png");
}
.optbox.op0039{
	background-image:url("../img/icon/tentative/05.jpg");
}
.optbox.op0040{
	background-image:url("../img/icon/tentative/05.jpg");
}

/* レスポンシブ幅調整 ↓*/
@media screen and (max-width: 1600px){
	.waku_option{
		width:28%;
	}
}
@media screen and (max-width: 1230px){
	.waku_option{
		width:43%;
	}
}

/* 3.葬儀プラン選択　top ↓*/
h5.card-title.sc001{
	background: #9acc77;
}
h5.card-title.sc002{
	background: #f29a86;
}
h5.card-title.sc003{
	background: #85b5e2;
}
h5.card-title.sc004{
	background: #f6ab1a;
}
h5.card-title.sc005{
	background: #bb96b7;
}

/* 小さな葬儀プラン ↓*/
h5.card-title.sc008{
	background: #92d2dc;
}
h5.card-title.sc009{
	background: #f19cb4;
}

/* 3.葬儀プラン選択　中身 ↓*/
h2.plan_dt{
	color: #fff;
    background-color: #9acc77;
    text-align: center;
    margin-bottom: 20px;
	padding:3px 0;
}
h2.plan_dt.plan_02{
	background-color: #f29a86;
}
h2.plan_dt.plan_03{
	background-color: #85b5e2;
}
h2.plan_dt.plan_04{
	background-color: #f6ab1a;
}
h2.plan_dt.plan_05{
	background-color: #bb96b7;
}
h2.plan_dt.plan_08{
	background-color: #92d2dc;
}
h2.plan_dt.plan_09{
	background-color: #f19cb4;
}
p.plan_ex{
	margin: 0 30px 30px;
	text-align: center;
}
dt.option{
	margin-top:20px;
	text-align: center;
	background: #e3e4e5;
	border-radius: 10px 10px 0 0;
	padding:7px 0;
	font-size: 20px;
}
dt.option:nth-of-type(2),
dt.option:last-of-type{
	margin-top:30px;
}
dd{
	text-align:center;
}
dd.in_op{
	border:1px solid #d3d0d0;
	padding:10px 0;
	border-radius: 0 0 10px 10px;
	border-top:none;
}
dd.in_op.last{
	padding:0;
	border:none;
}
dd.in_op.last img{
	border:1px solid #d3d0d0;
	border-radius: 0 0 10px 10px;
	border-top:none;
}
dd.in_op img{
	width:100%;
}
dd.in_op p{
	padding-right:14px;
	/*margin-bottom:15px;*/
}
.plan_ex .sp{
	display:none;
}


/*dd.in_op ul{
	list-style: none;
	margin:20px;
}
dd.in_op li{
	padding:20px;
}*/

/* レスポンシブ幅調整 ↓*/
@media screen and (max-width: 820px){
	.plan_ex .sp{
		display:block;
	}
}

/* 5.オプションの数量・価格選択 ↓*/
.q_5 table{
	margin-top:20px;	
}
.q_5 table thead{
	background: #539d5a;
	color: #fff;
	font-weight: bold;
}

/* 6.お客様情報入力 ↓*/
.content.q_6 .nav-tabs{
	margin:30px 0;
	justify-content: space-between;
}
.content.q_6 .nav-tabs .nav-item{
	width:30%;
	text-align: center;
	border: 1px solid #dee2e6;
	border-bottom:0;
	border-radius: 5px 5px 0 0;
	background: transparent;
}
.content.q_6 .nav-tabs .nav-link.active{
	background-color: #ad81c8;
	border-width:0 0 1px;
	color: #fff;
	border-color:transparent;
}
form.info_input{
	padding:0 3rem;
}
.info_input label{
	width:29em;
}
form.info_input input{
	margin-bottom:10px;
}
button.btn.btn-primary{
	margin-bottom:20px;
}
/* レスポンシブ幅調整 ↓*/
@media screen and (max-width: 1180px){
	form.info_input{
		padding:0;
	}
}
@media screen and (max-width: 820px){
	.info_input label{
		width:17em;
	}
}

/* 7.見積書　 ↓*/
.print table td,
.print table th{
	font-size:14px;
	text-align:center;
}

/* サイドバー選択中のオプション、top nav 幅調整 */
@media screen and (max-width: 1024px){
	.top_nav li{
		margin:.5rem .4rem!important;
	}
	.progressbar{
		width:94%;
	}
}
@media screen and (max-width: 998px){
	.top_nav li{
		margin:.5rem!important;
	}
	.progressbar{
		width:100%;
	}
}

/* サイドバー選択中のオプション開閉 */
.open_sidebar_selectedOption{
	display: block;
}
.close_sidebar_selectedOption{
  display: none;
}
.isSelectedoption{
	background-color: #fff;
	border:1px solid #e88717;
	border-radius: 5px;
	padding:10px;
	margin: 10px;
}
.isSelectedoption dd{
	justify-content:space-around;
	padding:5px;
	font-size:16px;
}

/* 請求書 */
.text-justified{
	text-align: justify;
    text-align-last: justify;
}

/* お客様情報一覧ページ */
#member a.disabled{
	pointer-events:none;
}
#member .selected{
	background: #ccc;
}
#member .createSimulator{
	background: none;
    border: none;
    color: #007bff;
}
#member .createSimulator:hover{
	text-decoration: underline;
}

#users dl dd{
	text-align: left;
}

#users .nav-tabs .nav-item,#users_edit .nav-tabs .nav-item{
	width:22%;
	text-align: center;
	border: 1px solid #dee2e6;
	border-bottom:0;
	border-radius: 5px 5px 0 0;
}

/*----------------------------------------------*/
@media screen and (max-width: 820px){
	/* ハンバーガーメニュー　中身 */
	ul.navbar-nav{
		border:1px solid #e5e5e5;
	}
	ul.navbar-nav li{
		border: none;
		border-radius: 0;
		margin:0!important;
		padding:8px 0;
		letter-spacing: 2px;
	}
	/* サイドバー（オプション選択）*/
	.sidebar-sticky dd{
		display: inherit;
	}
	.sidebar-sticky dd span{
		display: block;
	}
	.sidebar-sticky dd span:last-of-type{
		text-align: right;
	}
	.isSelectedoption dd{
		padding:0;
	}
}

button a{
	text-decoration: none !important;
	color: #fff !important;
}

.btn_sidebar{
	position: absolute;
    background: #ccc;
    height: 30px;
    width: 15px;
    top: 10px;
    left: 0;
	z-index: 100;
}

.sidebar-sticky{
	position: sticky;
	top: 20px;
}

/* モーダルウィンドウ実装 */

/* 初期値 */
#modal_window{
	display: none;
	width: 100%;
	height: 100%;
	z-index: 10000;
	background: #111;
	position: fixed;
}

#modal{
	display: flex !important;
	position: relative;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
}

.close_modal{
	position: absolute;
	background: #fff;
	width: 50px;
	height: 50px;
    top: 10px;
    right: 40px;
}

.view_modal{
	display: block !important;
}

.iframe_wrap{
	width: 95%;
    height: 95%;
}

.view_halls_list, .view_foods_list, .view_gifts_list{
	border: none;	
	color: #007bff;
    text-decoration: none;
    background-color: transparent;
}

.view_halls_list:hover, .view_foods_list:hover, .view_gifts_list:hover{
	border-bottom: 1px solid #007bff;
}

/* 空欄であった場合の空間確保*/
.blank3em:empty {
    width:3em;
    height:1px;
    display: inline-table;
}
.blank5em:empty {
    width:5em;
    height:1px;
    display: inline-table;
}


/* 値段 */
p.price_display{
	font-size: 2.4em;
	margin-top: 3px;

	text-align: center;
	margin-bottom: 0;
	line-height: 1em;
}
p.price_display span{
	font-size:50%;
}
p.price_display small{
	letter-spacing:normal;
	font-size:35%;
}
