/* -----------------------------------------------
* 共通設定
* ----------------------------------------------- */

/* 上書き用
------------------------*/
html {
	overflow-x: hidden;
}
body {
	overflow-x: hidden;
}
div.bread_outer {
	background: url(/images/header/bg_bread.png);
}
em.hissu {
	display: inline-block;
	/display: inline;
	/zoom: 1;
	vertical-align: middle;
	padding: 2px 8px;
	background: #ff4900;
	font-size: 14px;
	color: #fff;
	margin-right: 5px;
}
em.nini {
	display: inline-block;
	/display: inline;
	/zoom: 1;
	vertical-align: middle;
	padding: 2px 8px;
	background: #8db1ff;
	font-size: 14px;
	color: #000;
	margin-right: 5px;
}
ul.ul_youto li:nth-child(1), ul.ul_youto li:nth-child(6),
ul.ul_youto li:nth-child(3), ul.ul_youto li:nth-child(8) {
	width: auto;
}
ul.ul_youto li:nth-child(6), ul.ul_youto li:nth-child(11) {
	clear: none;
}
table.tbl_size {
	width: 100%;
}
dl.dl_sozai dt, dl.dl_sozai dd {
	border-bottom: none;
}
dl.dl_sozai dd {
	display: block;
	width: auto;
}
input:focus::placeholder,
textarea:focus::placeholder {
	color: transparent;
}
textarea.bikou {
	box-sizing: border-box;
	width: 100%;
}
div.wrapper_estimate {
	padding-bottom: 70px;
}
ul.ul_colorHappi li {
	margin: 0;
}
.ul_colorHappi li dl {
	margin: 0;
}
.color_type div:first-of-type {
	margin-bottom: 0;
}
.color_type div {
	margin-top: 10px;
}
.color_type div:first-of-type {
	margin-top: 0;
}
dl.colorArea {
	width: auto;
}
dl.colorArea dd ul li {
	text-align: left;
	width: auto;
}
.radio label.mr0 {
	margin-right: 0;
}
.semi_kazu input {
	margin-left: 0;
}
.ul_colorHappi li dd p span {
	margin-bottom: 0;
}
.dl_semi > dt {
	font-size: 16px;
}


/* ユーティリティ
------------------------*/
img {
	max-width: 100%;
}
.dpl-table {
	display: table;
	width: 100%;
	table-layout: fixed;
}
.dpl-table__cell {
	display: table-cell;
	vertical-align: middle;
}
.dpl-flex {
	display: flex;
}
.dpl-flex__item {
	display: inline-block;
	vertical-align: top;
}
.align-line-head {
	margin-left: 1em;
	text-indent: -1em;
}




/* -----------------------------------------------
* フォーム
* ----------------------------------------------- */

.common-form-layout {
}


/* フォームタイトル部分
------------------------*/
.common-form-head {
	margin-bottom: 70px;
	margin-top: 50px;
}
.common-form-head__contents {
	justify-content: center;
}
.common-form-head__comment {
	margin-left: 20px;
}
.common-form-head__comment_page_happi {
	margin-top: -20px;
}
.common-form-head__title {
	border-bottom: 1px solid #666;
	color: #c00000;
	font-weight: bold;
	margin-bottom: 20px;
}
.common-form-head__title_page_happi {
	font-size: 50px;
}
.common-form-head__text {
	line-height: 1.75;
	margin-top: 1em;
}


/* 電話確認
------------------------*/
.confirm-telephone-call {
	border: solid 2px #000;
	margin-bottom: 30px;
	padding: 1.5em 1em;
}
.confirm-telephone-call dt {
	font-weight: bold;
}
.confirm-telephone-call p {
	margin-bottom: 1em;
}


/* テーブル形式のフォーム
------------------------*/
.table-form {
	border-bottom: 1px solid #a6a6a6;
	margin-bottom: 30px;
	table-layout: fixed;
	width: 100%;
}
.table-form_selected {
	margin-top: -30px;
}
.table-form__row {
	border: 1px solid #a6a6a6;
	border-bottom: none;
}
.table-form__row_selected {
	border-top: none;
}
.table-form__data {
	box-sizing: border-box;
	padding: 25px;
	vertical-align: top;
}
.table-form__data:nth-child(1) {
	padding-right: 0;
	width: 300px;
}
.table-form__data:nth-child(2) {
	padding-left: 26px;
}
.table-form__data_align_middle {
	vertical-align: middle;
}
.table-form__align-left {
	text-align: left;
}
.youto-row {
}
.youto-row__contents {
}
.youto-row__contents_page_happi {
	margin-left: -1em;
}
.variety-row {
}
.variety-row__contents {
}
.variety-row__contents_page_happi {
}
.variety-row__lineup {
}
.variety-row__lineup_page_happi {
	margin: 0 -5px;
}
.variety-row__item {
}
.variety-row__item_page_happi {
	padding: 0 5px;
	width: 33.33%;
}
.size-row {
}
.kiji-row {
}
.kiji-row .kiji-row__separator {
	border-bottom: 1px dotted #808080;
	margin-bottom: 10px;
}
.kiji-row .kiji-row__subtitle {
	padding-bottom: 0;
}
.kiji-row__lineup {
	flex-wrap: wrap;
}
.color-row {
}
.color-row .color-row__lineup {
	flex-wrap: wrap;
	margin: 0 -10px;
	text-align: left;
}
.color-row .color-row__lineup .color-row__item {
	background-size: 92%;
	background-position: center top;
	box-sizing: border-box;
	margin-right: 0;
	padding: 0 10px;
	padding-top: 115px;
	width: 50%;
}
.color-row .color-row__text {
	margin-right: 0;
}
.obi-row {
}
.obi-row__photo {
	margin-left: 25px;
}
.data-row {
}
.data-row__item {
	margin-top: 5px;
}
.data-row__item:first-child {
	margin-top: 0;
}
.order-row {
}
.order-row__lineup {
	font-size: 12px;
	justify-content: space-between;
}
.mojiire-row {
}
.mojiire-row .mojiire-row__contents {
	margin-bottom: -20px;
}
.mojiire-row__item {
	text-align: left;
}
.maisuu-row {
}
.maisuu-row__lineup {
	flex-wrap: wrap;
	justify-content: space-between;
	margin: -10px;
	margin-top: 0;
}
.maisuu-row__lineup_type_matsuri {
	align-items: center;
}
.maisuu-row__lineup_type_matsuri-adult:after,
.maisuu-row__lineup_type_matsuri-child::after {
	content: "";
	display: block;
	width:30%;
}
.maisuu-row__item {
	padding: 10px;
	padding-top: 0;
}
.maisuu-row__item_line_narrow {
	line-height: 1.2;
}
.naire-row {
}
.naire-row__item {
	width: 20%;
}
.naire-row__contents {
	font-size: 12px;
}
.design-row__lineup {
	margin: 0 -5px;
}
.design-row__item {
	padding: 0 5px;
	width: 50%;
}
.delivery-row__text-box {
	margin-right: 25px;
}
.table-form__note {
	color: #000;
	font-size: 14px;
}
.table-form__bordered-title {
	font-size: 16px;
	font-weight: bold;
	border-left: 5px solid #c70102;
	margin-bottom: 5px;
	line-height: 20px;
	padding: 4px 0px 0px 6px;
}
.table-form__text_line_narrow {
	line-height: 1.2;
}




/* -----------------------------------------------
* フッター
* ----------------------------------------------- */
.site-footer {
}
.site-footer__obi {
	background: #000;
	color: #fff;
	padding: 1em;
}
.site-footer__obi .copyright {
	text-align: center;
}
