@charset "utf-8";
/* ====================================================
　　CSS 3@ Document 2015.07.31
=======================================================

共通設定
	・改行指定（PCのみ改行・SPのみ改行）

スライドメニュー（右・左　設定切り換え可）

サイト枠
	・メインコンテンツ
	・サイドメニュー
	・ページトップ

ヘッダ
	・サイトロゴ
	・テキストメニュー
	・スライドメニュー開閉ボタン

グローバルナビ
	・グローバルナビに表示するメニューボタンを指定
	・グローバルナビ ボタンサイズを指定
	・グローバルナビ ボタン背景を指定
	・ページアクティブを指定

メインコンテンツ
	・コンテンツ枠
	・テーブル
	・フォームテーブル
	・フォーム
	・ボタン
	・写真
	・GoogleMap 埋め込み

サイドメニュー
	・アーカイブリスト
	・リンクバナー

フッタ
	・テキストメニュー　ブロック幅
	・テキストリンク
==================================================== */

@media print, screen and (min-width: 768px) {
}
@media only screen and (max-width: 767px){
}

/* ######################################################################################

	基本設定

###################################################################################### */

html { font-size: 10px; }
body {
    font-family: Hiragino Sans, "ヒラギノ角ゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", "YuGothic Medium", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif;
    font-size:1.4rem;
    color: #000;
}
a {color:#2CB7CB;}

@media print, screen and (min-width: 768px) {

}
@media only screen and (max-width: 767px){
}

.alignL{text-align:left;}
.alignC{text-align:center;}
.alignR{text-align:right;}
.nowrap {white-space: nowrap;}
img{max-width: 100%; height: auto;}


/* ======================================================================================
									↑設定ここまで↑
====================================================================================== */


/*　改行指定（PCのみ改行・SPのみ改行）
-------------------------------------*/
@media print, screen and (min-width: 768px) {
	br.sp {display:none;}
	br.pc {display:inline;}
}
@media only screen and (max-width: 767px){
	br.sp {display:inline;}
	br.pc {display:none;}
}

/* ######################################################################################

	スライドメニュー（右・左　設定切り換え可）

###################################################################################### */

@media only screen and (max-width: 767px){

	/*
		#Header #SlideMenu {display:block;}
		#Header #SlideToggle {display:block;}
	*/

	/*　HTML内設定：2箇所
	----------------------------------------------------
	<div class="slidemenu slideRight">	→右メニュー
	<div class="slidemenu slideLeft">	→左メニュー

	direction: 'right'	→右メニュー
	direction: 'left'	→左メニュー
	------------------------------------------------- */

	/* コンテンツ背景 */
	#SlideBase		{background:url(../../img/tpl2014/main_bg.gif);}

	/* メニュー背景・幅サイズ */
	.pushy {
		display:block;
		right:0;
		width:250px;
		padding-top: 44px;
		background:#ffffff;
	}

	/* メニューボタン色 */
	.pushy {background:#ffffff;}
	.pushy .menuList {margin-bottom: 58px; padding: 20px; background: #F4F8FE;}
	.pushy .menuList li {width:100%; position:relative;}
	.pushy .menuList li + li {margin-top: 5px;}
	.pushy .menuList li a {
		position: relative;
		display:block;
		padding: 10px 24px 11px 15px;
		background: #fff;
		border: 1px solid #EEEEEE;
		font-size: 1.3rem;
		color: #000;
		text-decoration: none;
	}
	.pushy .menuList li a:before {
		content: "";
		position: absolute;
		top: 50%;
		right: 12px;
		transform: translateY(-50%);
		display: block;
		width: 7px;
		height: 8px;
		background-image: url("../img/common/icon_arrow_outline.svg");
		background-size: 7px 8px;
	}

	.pushy .bloc_body {padding-left: 20px; padding-right: 20px;}

}


/* ######################################################################################

	サイト枠

###################################################################################### */

/* サイト幅 */
@media print, screen and (min-width: 768px) {
	#container {padding-top: 60px;}
	#container > .contents {display: flex; flex-flow: row-reverse;}
	#container .main_column {width: calc(100% - 248px);}
	#container .side_column {width: 248px; padding-right: 42px;}

	.contents {
		max-width:1300px;
		margin:0 auto;
		padding-left: 15px;
		padding-right: 15px;
	}
}
@media only screen and (max-width: 767px){
	.contents {padding-left: 15px; padding-right: 15px;}
}


/* pageBody */
@media print, screen and (min-width: 768px) {
    .pageBody{padding-top: 0; padding-bottom: 100px;}
    .pageInner{max-width: 850px; margin-left: auto; margin-right: auto;}
    .pageInner.wide{max-width: 970px;}
}
@media screen and (max-width: 767px) {
    .pageBody{padding-bottom: 80px;}
	.pageBody.spTop {padding-top: 50px;}
    .pageBody + *{padding-top: 50px;}
    .pageBody + .bgTitle{padding-top: 0;}
}




/* ######################################################################################

	ヘッダ

###################################################################################### */

#Header .logo {border-bottom: 1px solid #D7D7D7;}
#Header h1 a {display:block;}

@media print, screen and (min-width: 768px) {
	#Header .logo {height: 55px;}
	#Header h1 {max-width: 286px;}
	#Header .logo ul {display: none;}
	#Header .logo label.slideButton {display: none;}
	#Header .logo .company{position: absolute; top: 0; right: 2em;}
}
@media print, screen and (min-width: 1590px) {
	#Header h1 {max-width: 286px;}
	#Header .logo .company{right: calc(50% - 770px);}

}
@media only screen and (max-width: 767px){
	#Header {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 84px;
		z-index: 3;
		transition: left 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99);
		background: #fff;
	}
	input#SlideMenu:checked + .pushy + #Header {left: -250px;}
	#Header .logo {
		position: relative;
		height: 45px;
		padding: 0 45px 0 20px;
	}
	#Header .logo .contents,
	#Header .navi .contents {padding-left: 0; padding-right: 0;}
	#Header .logo .contents {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	#Header .logo .contents:after {display: none;}
	#Header .logo h1 img {height: 44px;}
	#Header .logo ul {
		margin-top: 0px;
		margin-right: 35px;
	}
	#Header .logo ul li a {
		position: relative;
		padding-top: 18px;
		text-decoration: none;
		color: #CF5749;
		font-size: 1.1rem;
	}
	#Header .logo ul li a:before {
		content: "";
		display: block;
		position: absolute;
		left: -25px;
		width: 20px;
		height: 20px;
		background-image: url(../img/common/balloon.svg);
		background-size: 20px;
	}
	#Header .logo label.slideButton {
		position: absolute;
		right: 0;
		top: 0;
		display: block;
		width: 45px;
		height: 45px;
		background-image: url(../img/common/icon_menu_open.svg);
		border-left: 1px solid #D7D7D7;
		border-right: 1px solid #D7D7D7;
		background-size: 20px;
		background-position: center;
		background-repeat: no-repeat;
		text-indent: -999999px;
	}
	#Header .logo .company {margin-right: 0.5em;}
	#Header .logo .company img{height: 30px; width: auto;}
	#Header .other{display: flex;}

	input#SlideMenu:checked + .pushy + #Header label[for="SlideMenu"] {
		background-image: url(../img/common/icon_menu_close.svg);
		background-size: 13px;
	}

}

@media only screen and (max-width: 767px){
	input#SlideMenu + .pushy {
		transition: transform 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99);
		-webkit-transform: translate3d(101%, 0, 0);
		-ms-transform: translate3d(101%, 0, 0);
		transform: translate3d(101%, 0, 0);
		background:#ffffff;
		box-shadow:2px 0 5px rgba(0,0,0,0.4);
		z-index: 3;
	}
	input#SlideMenu:checked + .pushy {
		-webkit-transform: translate3d(0, 0, 0);
		-ms-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}


	.pushy_body {
		padding-right:15px;
		padding-left:15px;
	}
	.pushy_body .bloc_body {
		padding-top: 0 !important;
		padding-left:0 !important;
		padding-right:0 !important;
	}
	.pushy_body .bloc_body input[type="text"] {
		border-color:#401d02;
	}
	.pushy_body .bloc_body input[type=text].search + button.search {
		border-color:#401d02;
	}
	.pushy_title {
		padding-top:10px;
		margin-bottom:12px;
		text-align: center;
	}
	.pushy_title.search {margin-bottom:0.25em;}
	.pushy ul:first-child {margin-top: 0;}


	.pushy .searchNum form{margin-top: 0.5em;}
}

/* ######################################################################################

	グローバルナビ

###################################################################################### */
#Header .navi {border-bottom: 5px solid #D7D7D7;}
#Header .navi ul {display: flex;}
#Header .navi li {position: relative;}
#Header .navi li:after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	display: block;
	width: 1px;
	height: 20px;
	background: #D7D7D7;
}
#Header .navi li a {
	position: relative;
	display: block;
	color: #000;
	text-decoration: none;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック Medium", "YuGothic Medium", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif;
	font-weight: bold;
	text-align: center;
	overflow: visible;
}
#Header .navi li.current a:before,
#Header .navi li a:hover:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -5px;
	display: block;
	width: 100%;
	height: 5px;
	background: #CF5749;
}

#Header .navi li a .cartCount {
	position: absolute;
	display: block;
	padding-top: 3px;
	background: #C30216;
	border-radius: 50%;
	color: #fff;
}

@media print, screen and (min-width: 768px) {
	#Header .navi ul.sp {display: none;}
	#Header .navi li {width: 16.6667%;}
	#Header .navi li a {padding-top: 16px; padding-bottom: 14px; font-size: 1.7rem;}
	#Header .navi li:first-of-type:before {
		content: "";
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		display: block;
		width: 1px;
		height: 20px;
		background: #D7D7D7;
	}
	#Header .navi li a .cartCount {
		top: 6px;
		right: 50%;
		transform: translateX(calc(50% + 80px));
		min-width: 18px;
		min-height: 18px;
		font-size: 1.1rem;
	}
}
@media only screen and (max-width: 767px){
	#Header .navi ul.pc {display: none;}
	#Header .navi li {width: 25%;}
	#Header .navi li:after {height: 15px;}
	#Header .navi li:last-of-type:after {display: none;}
	#Header .navi li a {
		padding-top: 14px;
		padding-bottom: 10px;
		font-size: 1.1rem;
	}
	#Header .navi li a .cartCount {
		top: 1px;
		right: 50%;
		z-index: 1;
		transform: translateX(calc(50% + 46px));
		min-width: 16px;
		min-height: 16px;
		font-size: 1.0rem;
	}
}

/* ######################################################################################

	フッタ

###################################################################################### */

#Footer {background: #F4F8FE;}
#Footer .rightBox dt a,
#Footer .rightBox li a {color: #000; text-decoration: none;}
#Footer .rightBox li a:before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 10px;
	background-image: url("../img/common/icon_arrow.svg");
	background-size: 5px 10px;
}
#Footer .rightBox {display: flex; flex-wrap: wrap;}

@media print, screen and (min-width: 768px) {
	#Footer {padding-top: 40px;}
	#Footer.zero {padding-top: 0;}
	#Footer .contents {
		display: flex;
		justify-content: space-between;
		max-width: 960px;
	}
	#Footer .leftBox {width: 369px; padding-bottom: 1em;}
	#Footer .leftBox .logo {margin-bottom: 10px;}
	#Footer .leftBox .logo img {width: 369px;}

	#Footer .rightBox {
		justify-content: flex-end;
		flex: 1;
		/* padding-top: 25px; */
	}
	#Footer .rightBox dl + dl {margin-left: 19.2513%;}
	#Footer .rightBox dt a:hover,
	#Footer .rightBox li a:hover {opacity: 0.7;}
	#Footer .rightBox dt {margin-bottom: 14px; font-size: 1.6rem;}
	#Footer .rightBox li + li {margin-top: 15px;}
	#Footer .rightBox li a:before {margin-right: 10px;}
	#Footer .rightBox .support {
		width: 100%;
		margin-top: 35px;
		padding-bottom: 5px;
		text-align: right;
	}
}
@media only screen and (max-width: 767px){
	#Footer {padding-top: 60px;}
	#Footer .leftBox .logo {margin-bottom: 15px; text-align: center;}
	#Footer .leftBox .logo img {height: 55px;}
	#Footer .rightBox {margin-top: 30px;}
	#Footer .rightBox dl {width: 50%;}
	#Footer .rightBox dt {margin-bottom: 10px;}
	#Footer .rightBox li {padding-left: 3px;}
	#Footer .rightBox li + li {margin-top: 16px;}
	#Footer .rightBox li a:before {margin-right: 7px;}
	#Footer .rightBox .support {
		width: 100%;
		margin-top: 40px;
		padding-bottom: 4px;
		text-align: center;
		font-size: 1.2rem;
	}
}

/*-------------------------------------
　コピーライト
-------------------------------------*/
#Footer .copyright {
	padding-top: 12px;
	padding-bottom: 10px;
	background: #CF5749;
	color: #fff;
	text-align: center;
}





/* ######################################################################################

	メインコンテンツ

###################################################################################### */

h2.title,
p.title {
	border-radius:3px;
	margin-bottom:20px;
	padding-left:20px;
	height: 40px;
	line-height: 40px;
	font-size:1.7rem;
	font-weight:normal;
	color:#fff;
}

.attention {color: #C30216; font-weight: bold;}
.mini > .attention {font-size: 1.3rem; font-weight: normal;}
.formBloc .attention {display: block; margin-bottom: 0.25em; font-size: 1.3rem;}

#container { width:100%; overflow:hidden;}




@media only screen and (max-width: 767px){
    #container {padding-top:87px;}
	h2.title,
	p.title {
		/*margin-top:-20px;*/
		margin-left:-10px;
		margin-right:-10px;
	border-radius:0;
	padding:10px 10px;
	}
}






/*-------------------------------------
　ボックスサイズ設定
-------------------------------------*/
.box40  {width: 40px;}
.box60  {width: 60px;}
.box100 {width:100px;}
.box120 {width:120px;}
.box140 {width:140px;}
.box145 {width:145px;}
.box150 {width:150px;}
.box200 {width:150px;}
.box210 {width:210px;}
.box240 {width:240px;}
.box300 {width:300px;}
.box320 {width:320px;}
.box350 {width:350px;}
.box380 {width:380px;}
.box400 {width:400px;}
.box450 {width:450px;}
.box500 {width:500px;}
.box550 {width:550px;}
.box600 {width:600px;}











/*-------------------------------------
　アンカー設定
-------------------------------------*/
/* section.main と同じ背景を設定 */
section.contentsBox.ancher:before {background:;}

	/* 20pxくらい */
	section.contentsBox.ancher {margin-top:-10px; padding-top:10px;}
	section.contentsBox.ancher:before {height:10px;}

@media only screen and (max-width: 999px){
	/* PC値＋固定ヘッダの高さ */
	section.contentsBox.ancher {margin-top:-50px; padding-top:50px;}
	section.contentsBox.ancher:before {height:50px;}
}


/*-------------------------------------
　アイテムボックス
-------------------------------------*/
.itemBox dl {
	border:2px solid #555555;
	padding:15px;
	font-size:1.3rem;
}
/* ボックス間余白 */
section.contentsBox .wrap.item {margin:0 -2px;}/* .itemBox の左右 padding 分だけマイナス */
section.contentsBox .itemBox {padding:0 2px 4px;}/* 両側から取るので1/2値で指定する */


/*-------------------------------------
　新着ニュース
-------------------------------------*/
section.contentsBox.newsBox dl {border:dotted #000;}
section.contentsBox.newsBox dl a {color:#333333;}


/*-------------------------------------
　テーブル基本設定
-------------------------------------*/
section.contentsBox th {
	border:1px solid #333333;
	background:#eeeeee;
	padding:8px;
	}
section.contentsBox td {
	border:1px solid #333333;
	background:#ffffff;
	padding:8px;
	}

/* フォームエラー */
section.contentsBox form table p.error {font-weight:bold; color:#f00;}

@media only screen and (max-width: 999px){
	/* 見出しセルが左側のテーブル */
	section.contentsBox table.horizon tr {margin-bottom:10px;}
	section.contentsBox table.horizon th {border-width:1px;}
	section.contentsBox table.horizon td {border-width:0 1px 1px;}
	/* table.vertical は未設定 */

	/* フォームテーブル */
	section.contentsBox table.horizon.form tr {margin-bottom:30px;}
	section.contentsBox table.horizon.form th {border-width:1px;}
	section.contentsBox table.horizon.form td {border-width:0; background:#f3f3f3; padding:10px;}

}


/*-------------------------------------
　フォームパーツ
-------------------------------------*/

@media only screen and (max-width: 999px){
	/* ラジオボタン・チェックボックス枠線 */
	section.contentsBox form table li {border-color:#000000;}

	/* チェックボックス・ラジオボタン　アクティブ時の背景 */
/*
	input[type="radio"]:checked + label,
	input[type="checkbox"]:checked + label { background:#ffeeee;}
*/
}


/*-------------------------------------
　ボタン
-------------------------------------*/

/* ボタン
----------------------------------------------- */

/*---- 共通戻るボタン-----*/
.backbtn {
	display:block;
	border-radius:3px;
	margin:0 auto;
	/*padding:0.7em 1em;*/
	padding:0;
    line-height:1;
	text-decoration:none;
	text-align:center;
	font-size:1.8rem;
	font-weight:bold;
}
input.backbtn,
input.submitbtn,
a.backbtn{
	padding:0.7em 1em;
    width:100%;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    -ms-box-sizing:border-box;
    -o-box-sizing:border-box;
    box-sizing:border-box;
}
/*.backbtn.cart,
.backbtn.inputBtn,
.backbtn.detailBtn,
.backbtn.shopconfirm,
.backbtn.selectDetail {height:14px; line-height:14px;}

.backbtn.prevBtn,
.backbtn.naireBtn,
.backbtn.delivInput {padding-top:0; padding-bottom:0;}

*/

.backbtn2 {
    /*width:140px;*/
    display:block;
    border-radius:3px;
    margin:0 auto;
	padding:0.7em 1em;
    line-height:1;
    text-decoration:none;
    text-align:center;
	font-size:1.8rem;
	font-weight:bold;
}


@media only screen and (min-width: 400px){
.btn_area2{
	width:400px !important;
}
.btn_area .next160{width:160px;}
}

.btn_area .backbtn a,
.btn_area .next a,
.btn_area .next160 a {
	display:block;
	border-radius:3px;
    border:#ccc solid 1px;
    background:#fff;
	margin:0 auto;
	width:auto;
	padding:0.7em 1em;
    line-height:1;
	text-decoration:none;
	text-align:center;
	font-size:1.8rem;
	font-weight:bold;
	color:#fff;
}
/*	.btn_area .next a.cart {height:14px; line-height:14px;}*/




.backbtn.prevBtn,
.backbtn.naireBtn,
.backbtn.delivInput {
    background:none;
}
.backbtn.prevBtn a,
.backbtn.naireBtn a,
.backbtn.delivInput a {
    padding-left:15px;
    padding-right:15px;
    width:auto;
}




.btn_area div.center{
	width:122px;
	margin:0 auto;
}




/* デフォルト設定 */
a.button2 {
	box-shadow:1px 1px 1px rgba(0,0,0,0.2);
	border-radius:3px;
	padding:10px 20px;
	color:#333333;
}


.btn_area input.submitbtn {
	padding:0.7em 1em;
    height:auto;
	text-align:center;
	font-size:1.8rem;
	font-weight:bold;
}
@media only screen and (max-width: 400px){
    .btn_area input.submitbtn {width:100%;}
}

/* ======================================================================================
									遷移ボタン
====================================================================================== */
.btn_area {
	width:100%;
    margin-top: 10px;
    text-align: center;
	margin:0 auto;
}
.btn_area ul{
    margin:20px 0;
	text-align:center;
	font-size:0;
}

@media only screen and (min-width: 401px){
    .btn_area {
        width:100%;

    }

    .btn_area li {
        display:inline-block;
        margin:5px;
        vertical-align:middle;
    }
}
@media only screen and (max-width: 400px){
    .btn_area li {
        display:block;
        margin:10px 0;
        vertical-align:middle;
    }
}

/* ======================================================================================
									重複メッセージ
====================================================================================== */
.duplicationBox {
    border-radius:4px;
    border:2px solid #e14f44;
    background:#ffffff;
    padding:1em;
	margin-top: 15px;
}
.duplicationBox p {
    margin:0 !important;
    color:#e14f44 !important;
}

/* ======================================================================================
									↑設定ここまで↑
====================================================================================== */

/*-------------------------------------
　コンテンツ枠
-------------------------------------*/
section.contentsBox {margin-bottom:50px;}
@media only screen and (max-width: 999px){
	section.contentsBox {margin-bottom:50px;}
}
/* アンカー設定 */
section.contentsBox.ancher {position:relative;}
section.contentsBox.ancher:before {
	content:"";
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
}


/*-------------------------------------
　アイテムボックス
-------------------------------------*/
section.contentsBox .wrap.item {font-size:0;}
section.contentsBox .itemBox {
	-webkit-box-sizing:border-box;
	   -moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		 -o-box-sizing:border-box;
			box-sizing:border-box;
	display:inline-block;
	vertical-align:top;
}
section.contentsBox.itemCol2 .itemBox {width:50%;}
section.contentsBox.itemCol3 .itemBox {width:33.33%;}
section.contentsBox.itemCol4 .itemBox {width:25%;}
section.contentsBox.itemCol5 .itemBox {width:20%;}
section.contentsBox.itemCol6 .itemBox {width:16.6666%;}

@media only screen and (max-width: 999px){
section.contentsBox.itemCol2.pc .itemBox,
section.contentsBox.itemCol3.pc .itemBox,
section.contentsBox.itemCol4.pc .itemBox,
section.contentsBox.itemCol5.pc .itemBox,
section.contentsBox.itemCol6.pc .itemBox {width:100%;}
}


/*-------------------------------------
　新着ニュース
-------------------------------------*/
section.contentsBox.newsBox dl {border-width:0 0 1px;}
section.contentsBox.newsBox dl:first-of-type {border-top-width:1px; border-top-style:solid;}
section.contentsBox.newsBox dl:last-of-type  {border-bottom-style:solid;}
section.contentsBox.newsBox dl a {text-decoration:none;}
section.contentsBox.newsBox dl a:hover {text-decoration:underline;}

section.contentsBox.newsBox dl dt {display:table-cell; padding:10px 10px 10px 5px;}
section.contentsBox.newsBox dl dd {display:table-cell; padding:10px 0px 10px 10px;}
@media only screen and (max-width: 999px) {
	section.contentsBox.newsBox dl {padding:10px 0;}
	section.contentsBox.newsBox dl dt {display:block; padding:0 5px;}
	section.contentsBox.newsBox dl dd {display:block; padding:0 5px;}
}


/*-------------------------------------
　テーブル
-------------------------------------*/
section.contentsBox table {width:100%; margin-bottom:40px;}
section.contentsBox table th {text-align:left;}
@media only screen and (max-width: 999px){
	section.contentsBox table.horizon {display:block;}
	section.contentsBox table.horizon caption{display:block;}
	section.contentsBox table.horizon tbody {display:block;}
	section.contentsBox table.horizon tr {display:block;}
	section.contentsBox table.horizon td {display:block;}
	section.contentsBox table.horizon th {display:block; text-align:center;}
	/* table.vertical は未設定 */
}

/*-------------------------------------
　フォームテーブル
-------------------------------------*/
section.contentsBox table.form caption {text-align:right;}
section.contentsBox table.form caption span {color:#f00; font-weight:bold;}
section.contentsBox table.form th {white-space:nowrap; margin-bottom:1px;}
section.contentsBox table.form span.required {color:#f00; font-size:1.1rem;}
section.contentsBox table.form input {margin:2px;}
section.contentsBox table.form p.sample {
	display:block;
	margin-bottom:5px;
	font-size:1.2rem;
	color:#555555;
	width:auto;
	line-height:1.2;
	}
section.contentsBox table.form p.error + p.sample,
section.contentsBox table.form input + p.sample {margin-top:1em;}


section.contentsBox table.form p {margin-bottom:0.5em;}
section.contentsBox table.form p.error {margin:5px 0 0; line-height:1;}

section.contentsBox table.form p.error:before {content:"※";}
section.contentsBox table.form span.checkConf {display:block;}

/* システムエラー */
body.error .contentsBox p.error {font-weight:bold; color:#ff0000; font-size:1.7rem;}

section.contentsBox table.form ul:after {content:""; display:block; clear:both;}
section.contentsBox table.form li {display:inline-block; margin:5px 20px 5px 0;}
@media only screen and (max-width: 999px){
	section.contentsBox table.form ul {margin-bottom:4px;}
	section.contentsBox table.form ul li {display:block; border:1px solid; margin-bottom:-1px;}
	section.contentsBox table.form ul li:first-child label,
	section.contentsBox table.form ul li:first-child {border-radius:3px 3px 0 0;}
	section.contentsBox table.form ul li:last-child label,
	section.contentsBox table.form ul li:last-child {border-radius:0 0 3px 3px;}
}

/*-------------------------------------
　フォームパーツ
-------------------------------------*/
/* form textarea,
form input[type="text"],
form input[type="password"]{
	-webkit-appearance: button;
	-webkit-box-sizing:border-box;
	   -moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		 -o-box-sizing:border-box;
			box-sizing:border-box;
	border:1px solid;
	border-radius:3px;
	font-family:monospace;
	font-size:2rem;
	} */
form select {-webkit-appearance:pop-up-menu;}


input[type="checkbox"],
input[type="radio"] {display:none;}



input[type="checkbox"] + label,
input[type="radio"] + label {position:relative; padding:8px 3px 8px 30px;}

input[type="checkbox"] + label:before,
input[type="checkbox"] + label:after,
input[type="radio"] + label:before,
input[type="radio"] + label:after {
	content:"";
	-webkit-box-sizing:border-box;
	   -moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		 -o-box-sizing:border-box;
			box-sizing:border-box;
	display:inline-block;
	position:absolute;
	}
	input[type="radio"] + label:before,
	input[type="radio"] + label:after {border-radius:50%;}

/* テキスト・セレクト枠 */
/* form input[type="text"],
form input[type="password"] {height:1.8em;} */
/* form select,
form textarea,
form input[type="text"],
form input[type="password"] {
	border-color:#999999;
	box-shadow:inset 1px 1px 1px rgba(0,0,0,0.1);
	background:#ffffff;
	padding:3px 8px;
	} */

/* テキスト：フォーカス時の枠指定 */
/* form textarea:focus,
form input[type="text"]:focus,
form input[type="password"]:focus {
border-color:#ff0000;
box-shadow:inset 1px 1px 3px rgba(0,0,0,0.5);
} */

/* チェックボックス・ラジオボタン　設定 */
input[type="checkbox"] + label,
input[type="radio"] + label {padding-left: 35px; cursor:pointer;}
input[type="radio"] + label.redType {padding-left: 25px;}
input[type="checkbox"] + label:before,
input[type="radio"] + label:before {
	top:50%;
	left:0;
    border:1px solid #ddd;
	background:#ffffff;
	width:28px;
	height:28px;
	margin-top:-14px;
}
input[type="radio"] + label.redType:before {
	width: 18px;
	height: 18px;
	margin-top: -9px;
}

/* チェックボックス・ラジオボタン　アクティブ設定 */
input[type="checkbox"]:checked + label:after {
	content:"\002714";
    top: 5px;
    left: 4px;
    font-size:120%;
}
input[type="radio"]:checked + label:before{background-color: #C30216;}
input[type="radio"]:checked + label:after {
	/*content:"\002714";*/
	top:50%;
	left:8px;
	background:#fff;
	width: 12px;
	height: 12px;
	margin-top:-6px;
}

input[type="radio"]:checked + label.redType:before {
	border-color: #C30216;
	background: #fff;
}
input[type="radio"]:checked + label.redType:after {
	left: 4px;
	width: 10px;
	height: 10px;
	margin-top: -5px;
	background: #C30216;
}

/* IE8 */
input[type="checkbox"],
input[type="radio"] {display:inline\9;}
input[type="checkbox"] + label:before,
input[type="checkbox"] + label:after,
input[type="radio"] + label:before,
input[type="radio"] + label:after {display:none\9;}




@media only screen and (max-width: 999px){
	input[type="radio"] + label,
	input[type="checkbox"] + label {/*display:block;*/ padding:8px 3px 8px 36px;}
	/* input[type="checkbox"] + label:before,
	input[type="radio"] + label:before {left:8px;}
	input[type="checkbox"]:checked + label:after,
	input[type="radio"]:checked + label:after {left:13px;} */
}

/*-------------------------------------
　ボタンボックス
-------------------------------------*/
div.buttonBox		{position:relative; overflow:hidden;}
div.buttonBox p	{text-align:center;}
div.buttonBox ul	{text-align:center; font-size:0;}
div.buttonBox li	{display:inline-block; font-size:1.5rem; margin:0 5px;}
a.button {display:inline-block; text-decoration:none; line-height:1; cursor:pointer;}
a.button.block {display:block; margin-top:10px; margin-bottom:10px; text-align:center;}



a.button.sp {display:none;}
a.button.pc {display:inline;}
a.button.block.pc {display:block;}
@media only screen and (max-width: 999px){
	a.button.sp {display:inline;}
	a.button.block.sp {display:block;}
	a.button.pc {display:none;}

div.buttonBox ul.col1 li,
div.buttonBox ul.col2 li,
div.buttonBox ul.col3 li,
div.buttonBox ul.col4 li,
div.buttonBox ul.col5 li {
	-webkit-box-sizing:border-box;
	   -moz-box-sizing:border-box;
		-ms-box-sizing:border-box;
		 -o-box-sizing:border-box;
			box-sizing:border-box;
	margin:0;
	padding:0 2px;
	}

div.buttonBox ul.col1 li {width:100%;}
div.buttonBox ul.col2 li {width:50%;}
div.buttonBox ul.col3 li {width:33.333%;}
div.buttonBox ul.col4 li {width:25%;}
div.buttonBox ul.col5 li {width:20%;}

div.buttonBox ul.col1 a.button,
div.buttonBox ul.col2 a.button,
div.buttonBox ul.col3 a.button,
div.buttonBox ul.col4 a.button,
div.buttonBox ul.col5 a.button {display:block;}
}

/*-------------------------------------
　写真
-------------------------------------*/
section.contentsBox p.photo {
	text-align:center;
	line-height:1.3;
	font-size:1.3rem;
}
section.contentsBox p.photo img {
	border:1px solid #555555;
	background:#ffffff;
	padding:1px;
}

section.contentsBox p.photo.right {float:right; margin:0 0 15px 10px;}
section.contentsBox p.photo.left {float:left; margin:0 10px 15px 0;}
@media only screen and (max-width: 999px){
    section.contentsBox p.photo.right,
    section.contentsBox p.photo.left,
	section.contentsBox p.photo {
        display:block;
        float:none;
        margin:0 0 1.5em;
        text-align:center;
        }
	section.contentsBox p.photo img {width:80%; height:auto;}
}

/* ######################################################################################

	サイドメニュー

###################################################################################### */


@media print, screen and (min-width: 768px) {
	#Leftcolumn .bannerBox + .bannerBox {margin-top: 10px;}
	#Leftcolumn .nossearch {margin-top: 35px;}

}
@media only screen and (max-width: 767px){
	#Leftcolumn {display: none;}
}


/* ######################################################################################

　ページトップ

###################################################################################### */
.pageTop a {
	position: fixed;
    z-index: 9999;
    display: block;
	bottom: 50px;
	width: 60px;
	height: 60px;
	background-image: url("../img/common/pageTop.svg");
    background-size: 100% auto;
}
@media print, screen and (min-width: 768px) {
	.pageTop a {right: 50px;}
}
@media only screen and (max-width: 767px){
	.pageTop a {right: 60px;}
}


/* ======================================================================================
									↑設定ここまで↑
====================================================================================== */

/* #################################################

　アナウンス

################################################# */
div.announce {
    border: solid 2px #CC0000;
    padding: 6px 10px;
    margin-bottom: 20px;
    color: #333;
    font-size:1.2em;
}
div.announce h2 {font-size:1.4em;}
div.announce p {margin: 8px 0;}

/* #################################################

　jquery sticky風

################################################# */
.bottomScrollMenu {display:none}
.bottomScrollMenu * {
    margin:0;
    padding:0;
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    -ms-box-sizing:border-box;
    -o-box-sizing:border-box;
    box-sizing:border-box;
}
.bottomScrollMenu {
    position:fixed;
    z-index:9999;
    right:0;
    background:#ffffff;
}

.bottomScrollMenu li {
    border:1px solid #cccccc;
    background:#ffffff;
}
.bottomScrollMenu li + li {border-width:0 1px 1px;}
.bottomScrollMenu li a {
    display:block;
    padding:0.25em 1em;
    text-decoration:none;
    font-size:1.4rem;
    color:#333333;
}
.LC_Page_User .pageNaire.naire_menu_tab5 .bottomScrollMenu.naireMenu {display:none !important; opacity:0 !important;}

@media only screen and (min-width: 1000px){
    .LC_Page_User .pageNaire:not(.naire_menu_tab5) .bottomScrollMenu.naireMenu {display:block !important; opacity:1 !important;}
    .bottomScrollMenu {bottom:51px;}
}
@media only screen and (max-width: 999px){
    .LC_Page_User .pageNaire:not(.naire_menu_tab5) .bottomScrollMenu.naireMenu {display:block;}
    .bottomScrollMenu {bottom:91px;}
}



/* #################################################

	おおみだし

################################################# */


/*　こみだし
-------------------------------------*/

/* まごみだし */


/*end*/
