/* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- */
/* 部品関連のCSS */
/* +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- */
.component {
    margin: 10px 0;
}
/* ---------------- */
/* 枠 */
/* ---------------- */
.box-danger {
    border: 2px dashed #D8127D;
    background-color: #ffcccc;
    padding: 10px;
    margin: 5px 0px 5px 0px;
}
.box-warning {
    border: 2px dashed #ebc727;
    background-color: #fff6cc;
    padding: 10px;
    margin: 5px 0px 5px 0px;
}
.box-info {
    border: 2px dashed #1bb5e4;
    background-color: #dcf7ff;
    padding: 10px;
    margin: 5px 0px 5px 0px;
}
.box-success {
    border: 2px dashed #07ca27;
    background-color: #daffe0;
    padding: 10px;
    margin: 5px 0px 5px 0px;
}
.box-default {
    border: 2px dashed #686565;
    background-color: #d1d1d1;
    padding: 10px;
    margin: 5px 0px 5px 0px;
}



/* ---------------- */
/* ボタン */
/* ---------------- */
/* EA_develop_saito */
/* ブルーボタン */
.btn-blue {
    color: #ffffff !important;
    background-color: #177acb;
    padding: 5px 10px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1rem;
    text-align: center;
}
.btn-blue:hover {
    background-color: #177acbdb;
}
/* グレーボタン */
.btn-gray {
    color: #ffffff !important;
    background-color: #6b6b6b;
    padding: 5px 10px;
    border-radius: 5px;
    cursor: pointer;
    font-size: 1rem;
    text-align: center;
}
.btn-gray:hover {
    background-color: #9c9c9c;
}
/* グレーボタン */
.btn-default {
    color: #555;
    background: #f7f7f7;
    box-shadow: 0 1px 0 #ccc;
    vertical-align: top;
    cursor: pointer;
    border: 1px solid #ccc;
    border-radius: 3px;
    white-space: nowrap;
    padding: 5px;
}
.btn-default:hover {
    border-color: #8b8b8b;
}

/* ---------------- */
/* カラム関連 */
/* ---------------- */
.component.column {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
}
.component.column .wrap > a {
    display: block;
}
.component.column .wrap img {
	width: 100%;
}
.component.column .wrap .title {
    text-align: left;
}
.component.column .wrap .text {
    text-align: left;
}
/* 2カラム */
.component.column.num2 .wrap {
    width: 46%;
	margin: 0 60px 10px 0;
}
.component.column.num2 .wrap:nth-child(2n) {
    margin-right: 0;
}
/* 3カラム */
.component.column.num3 .wrap {
    width: 30%;
	margin: 0 40px 10px 0;
}
.component.column.num3 .wrap:nth-child(3n) {
    margin-right: 0;
}
/* 4カラム */
.component.column.num4 .wrap {
    width: 22.8%;
    margin: 0 30px 10px 0;
}
.component.column.num4 .wrap:nth-child(4n) {
    margin-right: 0;
}

/*----------------------------------------------------
	リスト
----------------------------------------------------*/
/* 見出しが太字 */
.dl-bold dt {
    font-weight: bold;
    margin: 20px 0 5px 0;
}

/*dlを使用しての崩れない表示*/
.dl-list dt {
	float: left;
}
.dl-list dd {
	text-align: left;
	margin: 0 0 10px 30px;
}

/*dlを利用した段組み*/
.dl01 dd {
	text-align: left;
	margin: 0 0 10px 15px;
}
.dl01.indent10 {
	margin: 0 0 0 10px;
}

/* listのインデント */
/* <h3>ご注文前にお見積書の必要な方</h3>
<ul class="ul_list indent33">
    <li>【１】下記よりご希望の条件を選択した後、価格表の金額をクリック</li>
    <li>【２】必要なオプション項目を選択して「料金を確認」ボタンをクリック（※オプション項目がない場合、こちらの画面遷移は省略されます）</li>
    <li>【３】「お見積書の発行」ボタンをクリックでお見積書がPDFファイルで発行されます</li>
</ul> */
.ul_list{
    margin:0 0 30px 0;
}
.ul_list li{
    margin: 0 0 10px 0;
}
.indent33{
	padding-left:3em;
	text-indent:-3em;
}
ul.list a {
    color: #1d3994;
}
/* ---------------- */
/* ボタン3セットレイアウト */
/* ---------------- */
/* 
【タグ例】
<div class="btn_3set_box">
    <div class="inner">
        <div class="top">
            <a href="" class="btn btn_primary">購入手続きへ進む<i class="fa fa-arrow-right ml5"></i></a>
        </div>
        <div class="bottom">
            <a href="" class="btn btn_default">その他の商品を選択する</a>
            <a href="" class="btn btn_estimate">お見積書の発行</a>
        </div>
    </div>
</div>
 */
.btn_3set_box {
	width: 100%;
	text-align: center;
	margin: 30px 0 ;
	clear:both;
}
.btn_3set_box .inner {
    width: 505px;
    margin: 0 auto;
}
/* 上段 */
.btn_3set_box .inner .top a {
    width: 100%;
    font-size: 1.3rem;
}
/* 下段 */
.btn_3set_box .inner .bottom {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 20px 0 0 0;
}
.btn_3set_box .inner .bottom a {
    width: 48%;
    font-size: 1rem;
    padding: 10px 30px;
}

/* ---------------- */
/* ボタン2列レイアウト */
/* ---------------- */
/*
【タグ例】
<div class="btn_2column_box">
    <div class="inner">
        <a href="" class="btn btn_default"><i class="fa fa-arrow-left mr5"></i>戻る</a>
        <a href="" class="btn btn_primary">次へ<i class="fa fa-arrow-right ml5"></i></a>
    </div>
</div>
*/
.btn_2column_box {
    margin: 30px 0 0 0;
}
.btn_2column_box .inner {
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
    justify-content: space-between;
    max-width: 500px;
    margin: 0 auto;
    position: relative;
}
.btn_2column_box .inner.large {
    width: 750px;
}
.btn_2column_box .inner a {
    display: block;
    width: 45%;
    text-align: center;
}

/* ---------------- */
/* ボタンn行レイアウト */
/* ---------------- */
/* 
【タグ例】
<div class="btn_rows_box">
    <div class="inner">
        <a href="" class="btn btn_estimate">お見積書の発行</a>
        <a href="" class="btn btn_default">戻る</a>
    </div>
</div>
 */
.btn_rows_box {
    margin: 30px 0 0 0;
}
.btn_rows_box .inner {
    width: 300px;
    margin: 0 auto;
}
.btn_rows_box .inner a, 
.btn_rows_box .inner input[type=submit], 
.btn_rows_box .inner input[type=button] {
    display: block;
    width: 100%;
    text-align: center;
    margin: 0 0 20px 0;
}
.btn_rows_box .inner a:last-child, 
.btn_rows_box .inner input[type=submit]:last-child, 
.btn_rows_box .inner input[type=button]:last-child {
    margin-bottom: 0;
}

/*----------------------------------------------------
	システム出力用メッセージ
----------------------------------------------------*/
.alert {
	border: 1px solid rgba(0, 0, 0, 0);
	border-radius: 4px;
	margin-bottom: 20px;
	padding: 10px;
    text-align: left;
}
.alert_danger {
	background-color: #FFF2F2;
	border-color: #ccc;
	color: #A94442;
}
.alert_success {
	background-color: #fafafa;
	border-color: #ccc;
	color: #434343;
}
.alert_error_item {
	border-radius: 4px;
	color: red;
	display: block;
	font-size:0.9em;
}
.alert_caution {
	background-color: #fffef2;
	border-color: #ccc;
	color: #434343;
}
.alert p {
	font-size: 1.2em;
	padding: 0px;
	display: table-cell;
	vertical-align: middle;
}
.alert p i {
	vertical-align: middle;
	margin: 0 5px 0 0;
	font-size: 1.5rem;
}
.form_item_error {
	display: block;
	color: red;
	font-weight: bold;
	font-size: 1rem;
}

.op4form_input_error_message {
	color: #f60169 !important;
	display: block;
}
.op4form_input_error {
	border: 1px solid #f60169 !important;
	background-color: #fdbdd8 !important;
}


/*----------------------------------------------------
	タブ
----------------------------------------------------*/
/* 
【タグ例】
<div class="tab-wrap">
<input id="タブID１" type="radio" name="タブグループ名" class="tab-switch" checked><label class="tab-label" for="タブID１">タブタイトル１</label>
<div class="tab-content">
タイトル1のテキストタイトル1のテキストタイトル1のテキストタイトル1のテキスト
タイトル1のテキストタイトル1のテキストタイトル1のテキストタイトル1のテキスト
</div>
<input id="タブID２" type="radio" name="タブグループ名" class="tab-switch"><label class="tab-label" for="タブID２">タブタイトル２</label>
<div class="tab-content">
タイトル2のテキストタイトル2のテキストタイトル2のテキストタイトル2のテキスト
タイトル2のテキストタイトル2のテキストタイトル2のテキストタイトル2のテキスト
</div>
</div>
 */
.tab-wrap {
    background: White;
    box-shadow: 0 0 5px rgba(0,0,0,.1);
    display: flex;
    flex-wrap: wrap;
    overflow: hidden;
    padding: 0 0 20px;
}
.tab-label {
    color: Gray;
    cursor: pointer;
    flex: 1;
    font-weight: bold;
    order: -1;
    padding: 12px 24px;
    position: relative;
    text-align: center;
    transition: cubic-bezier(0.4, 0, 0.2, 1) .2s;
    user-select: none;
    white-space: nowrap;
    -webkit-tap-highlight-color: transparent;
}
.tab-label:hover {
	background: rgba(180, 180, 180, 0.1);
}
.tab-switch:checked + .tab-label {
	color: #5a5a5a;
}
.tab-label::after {
	background: #5a5a5a;
	bottom: 0;
	content: '';
	display: block;
	height: 3px;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	transform: translateX(100%);
	transition: cubic-bezier(0.4, 0, 0.2, 1) .2s 80ms;
	width: 100%;
	z-index: 1;
}
.tab-switch:checked ~ .tab-label::after {
	transform: translateX(-100%);
}
.tab-switch:checked + .tab-label::after {
	opacity: 1;
	transform: translateX(0);
}
.tab-content {
    height:0;
    opacity:0;
    padding: 0 10px;
    pointer-events:none;
    transform: translateX(-30%);
    transition: transform .3s 80ms, opacity .3s 80ms;
    width: 100%;
}
.tab-switch:checked ~ .tab-content {
	transform: translateX(30%);
}
.tab-switch:checked + .tab-label + .tab-content {
	height: auto;
	opacity: 1;
	order: 1;
	pointer-events:auto;
	transform: translateX(0);
}
.tab-wrap::after {
	content: '';
	height: 20px;
	order: -1;
	width: 100%;
}
.tab-switch {
	display: none;
}

/*----------------------------------------------------
	safariボタンのデザイン打消し
----------------------------------------------------*/
.button_default,.button,.button_signup{
    -webkit-appearance: none;
}

