@charset "utf-8";

/*===============================================================
	/assets_v9/common/red/css/style.css
===============================================================*/

/* フロート関係
----------------------------------------------------------------*/
.clear {
	width:100%;
	overflow:hidden;
}
.clearboth {
	clear:both;
}
.cf:before,
.cf:after {
	content: " ";
	display: table;
}
.cf:after {
	clear: both;
}
.cf {
  *zoom: 1;
}
.flol {
	float:left;
}
.flor {
	float:right;
}
/* マージン
----------------------------------------------------------------*/
.mt0	{	margin-top:0px !important; }
.mt05	{	margin-top:5px;		}
.mt10	{	margin-top:10px;	}
.mt15	{	margin-top:15px;	}
.mt20	{	margin-top:20px;	}
.mt25	{	margin-top:25px;	}
.mt30	{	margin-top:30px;	}
.mt40	{	margin-top:40px;	}
.mt50	{	margin-top:50px;	}
.mt60	{	margin-top:60px;	}
.mt70	{	margin-top:70px;	}
.mt80	{	margin-top:80px;	}
.mt90	{	margin-top:90px;	}
.mt100	{	margin-top:100px;	}

.mb05	{	margin-bottom:5px;	}
.mb10	{	margin-bottom:10px;	}
.mb15	{	margin-bottom:15px;	}
.mb20	{	margin-bottom:20px;	}
.mb25	{	margin-bottom:25px;	}
.mb30	{	margin-bottom:30px;	}
.mb40	{	margin-bottom:40px;	}
.mb50	{	margin-bottom:50px;	}

/*===============================================================

	基本文字サイズ

===============================================================*/
/* h2 {
	font-weight:bold;
}
h3 {
	font-weight:bold;
}
h4 {
	line-height:1.4;
	font-weight:bold;
}
p {
	line-height:1.8;
}
sup {
	margin:0;
	padding:0;
	font-size:11px;
	line-height:15px;
} */
/*===============================================================

	PC/SP/TABLET

===============================================================*/
.sp {
	display:none;
}
.pc {
}
.tablet {
	display:none;
}
.sp {
	display:none;
}
.sp_tablet {
	display:none;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.pc {
	display:none;
}
.tablet,
.pc_tablet,
.sp_tablet {
	display:block;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.sp {
	display:block;
}
.pc_tablet,
.tablet {
	display:none;
}
}	/* for SP max-width: 480px */

/*===============================================================

	img fig

===============================================================*/
.fitimg img,
.photo img,
.thumb img {
	width:100%;
	height:auto;
}
.fig,
.fig img {
	text-align:center;
	margin:0 auto;
}
.content .fig {
	margin-top:30px;
}
.borderimg {
	border:solid 1px #ddd;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.content .fig {
	margin-top:15px;
}
}	/* for SP max-width: 480px */


/*===============================================================

	レイアウト

===============================================================*/
.wrapper {
	position:relative;
}
.content_width {
	width:1280px;
	margin-left:auto;
	margin-right:auto;
	padding:0 20px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.content_width.toppics_narrow {
	width:1000px;
}
.narrow_width {
	width:700px;
	margin-left:auto;
	margin-right:auto;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
/* タブレット以下 */
@media screen and (max-width: 1280px) {
.content_width {
	width:100%;
	padding:0;
}
.content_width.toppics_narrow {
	width:100%;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.narrow_width {
	width:100%;
}
}	/* for SP max-width: 480px */

/*===============================================================

	header .nav

===============================================================*/
.header .nav ul li a:before {
	content:'';
	position:absolute;
	margin:auto;
	top:5px;
	left:0; right:0;
	width:40px;
	height:40px;
	background-image:url(../images/header_icons.png);
	background-repeat:no-repeat;
	background-position:0 0;
	background-size:280px 40px;
}

/*-------------------------------------------------------------
	.header .nav ul li
-------------------------------------------------------------*/
.header .nav ul li.home a:before {	background-position: 0px 0px;	}
.header .nav ul li.guide a:before {	background-position: -40px 0px;	}
.header .nav ul li.faq a:before {	background-position: -80px 0px;	}
.header .nav ul li.mypage a:before {	background-position: -120px 0px;	}
.header .nav ul li.signin a:before {	background-position: -160px 0px;	}
.header .nav ul li.login a:before {	background-position: -200px 0px;	}
.header .nav ul li.logout a:before {	background-position: -240px 0px;	}

.notmember .nav ul li.mypage,
.notmember .nav ul li.logout {
	display:none;
}
.member .nav ul li.signin,
.member .nav ul li.login {
	display:none;
}


/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	header	.username
-------------------------------------------------------------*/
.header .username {
	text-align:right;
	width:100%;
	height:30px;
	color:#6f0f10;
	font-size:14px;
	line-height:30px;
	padding-right:0;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.header .username {
	font-size:12px;
	line-height:20px;
	height:20px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	非表示
-------------------------------------------------------------*/
.header_wrp .btn_lang,
.header_wrp .btn_cart {
	display:none;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.header_wrp .btn_lang,
.header_wrp .btn_cart {
	display:block;
}
.navigation_wrp .btn_cart,
.navigation_wrp .btn_lang {
	display:none;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	subpanel
-------------------------------------------------------------*/
.subpanel {
	display:none;
	z-index:999;
}
/*===============================================================

	navigation

===============================================================*/
.navigation_wrp {
	width:100%;
	height:60px;
	position:relative;
	/*z-index:999;*/
	background:#861718;
	z-index:10;
}
.navigation_wrp .nav {
	display:none;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.navigation_wrp .nav {
	display:block;
	background:#861718;
	border-bottom:solid 1px rgba(0,0,0,0.1);
}
.navigation_wrp .nav li {
	float:left;
	width:20%;
	text-align:center;
}
.navigation_wrp .nav li a {
	color:#fff;
	text-decoration:none;
	font-size:12px;
	display:block;
	line-height:14px;
	padding:8px 0;
}
.navigation_wrp .nav li.home {
	width:17%;
}
.navigation_wrp .nav li.faq {
	width:13%;
}
.navigation_wrp .nav li.guide {
	width:27%;
}
.navigation_wrp .nav li.login,
.navigation_wrp .nav li.logout {
	width:23%;
}
.navigation_wrp .nav li.mypage,
.navigation_wrp .nav li.signin {
	width:20%;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 320px) {

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	navigation
-------------------------------------------------------------*/
.navigation {
	position:relative;
	width:100%;
	height:60px;
}
.navitem a:hover {
	opacity:0.5;
}
/*-------------------------------------------------------------
	.btn_product
-------------------------------------------------------------*/
.btn_product {
	float:left;
	width:110px;
	position:relative;
}
.btn_product p {
	font-size:16px;
	line-height:30px;
}
.btn_product a {
	color:#fff;
	text-decoration:none;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.btn_product {
	width:100px;
}
.btn_product p {
	font-size:14px;
	line-height:30px;
}
.btn_product a {
	color:#fff;
	text-decoration:none;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */








/*===============================================================

	フッタ

===============================================================*/
.footer_wrp {
	width:100%;
	color:#fff;
	background:#861718;
	padding:40px 0;
}
.footer {
	text-align:left;
}
.footer a {
	text-decoration:none;
	color:#fff;
}
.footer a:hover {
	text-decoration:underline;
	color:#fff;
}
.footer .block {
	width:33.33%;
	float:left;
	padding-left:20px;
	border-left:solid 1px rgba(255,255,255,0.3);
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.footer ul li {
	font-size:14px;
	line-height:20px;
	font-weight:bold;
	margin-top:20px;
}
.footer ul li:first-child {
	margin-top:0;
}
.footer_wrp .menubtn {
	display:none;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.footer_wrp {
	padding:20px 0;
}
.footer .foote_link {
	display:none;
}
.footer .block {
	width:100%;
	height:auto !important;
	float:none;
	padding:0 20px;
	border-left:solid 0px rgba(255,255,255,0.3);
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	text-align:center;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */




/*-------------------------------------------------------------
	footer_wrp
-------------------------------------------------------------*/
.footer_wrp .copyright {
	color:#fff;
	text-align:center;
	padding-top:40px;
	clear:both;
	font-size:12px;
	line-height:1.2;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.footer_wrp .copyright {
	padding-top:20px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*===============================================================

	pankuzu

===============================================================*/
.pankuzu {
	text-align:left;
	padding:10px;
}
.pankuzu li {
	display:inline-block;
	padding-left:10px;
}
.pankuzu li:first-child {
	padding-left:0;
}
.pankuzu li a {
	text-decoration:none;
	position:relative;
	padding-right:20px;
	color:#6f0f10;
}
.pankuzu li a:hover {
	color:#861718;
}
.pankuzu li a:after {
	content:'';
	position:absolute;
	margin:auto;
	top:0; bottom:0;
	right:0;
	border-right:solid 1px #861718;
	border-bottom:solid 1px #861718;
	width:6px;
	height:6px;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	transition: all .3s;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.pankuzu {
	text-align:left;
	padding:10px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.pankuzu {
	display:none;
}
}	/* for SP max-width: 480px */




/*===============================================================

	fixed

===============================================================*/
.fixed {
	position: fixed;
	top: 0;
}
.bg_fixed {
	background-attachment: fixed;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.fixed {
	position: fixed;
	top: 0;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */


/*===============================================================

	PAGETOP

===============================================================*/
#btn_pagetop {
	width:100%;
	overflow:hidden;
}
#btn_pagetop a {
	display:block;
	position:fixed;
	right:-300px; top:0;
	width:50px; height:50px;
	color:#fff;
	background-color:#fff;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
	z-index:101;
	border-radius:30px;
}
#btn_pagetop a:hover {
	background-color:rgba(134,23,24, 0.5);

}
#btn_pagetop a:after {
	position:absolute;
	content:" ";
	width:14px; height:14px;
	top:20px; left:0; right:0; bottom:auto;
	margin:auto;
	border-top:solid 2px #861718;
	border-left:solid 2px #861718;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	border-radius:2px;
}
#btn_pagetop a:hover:after {
	border-top:solid 2px #fff;
	border-left:solid 2px #fff;
}
/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
#btn_pagetop a {
	width:40px;
	height:40px;
	background-size:40px 40px;
}
#btn_pagetop a:after {
	width:12px; height:12px;
	top:17px; left:0; right:0; bottom:auto;
}
}	/* for SP max-width: 480px */

/*===============================================================

	テーブル

===============================================================*/
table {
	width:100%;
	text-align:left;
	font-size:14px;
	line-height:20px;
	border-collapse: separate;
	border-spacing: 0;
	border-bottom:solid 1px #ddd;
	margin-top:20px;
}
table th {
	padding:10px 0;
	border-top:solid 1px #ddd;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	width:20%;
	font-weight:normal;
}
table td {
	padding:10px 0;
	border-top:solid 1px #ddd;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	font-weight:normal;
}
table th.bt0,
table td.bt0 {
	border-top: 0;
	padding-top: 0;
}
table th.pb0,
table td.pb0 {
	padding-bottom: 0;
}
table.total {
	margin-top:0;
}

.form table {
	margin-top:0;
}
.form * + table {
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
table {
	padding:0;
	margin-top:20px;
}
table th {
	display: list-item;
	list-style:none;
	width:100%;
	padding:8px 0;
	font-size:12px;
	color:#666;
	font-weight:bold;
}
table td {
	display: list-item;
	list-style:none;
	width:100%;
	padding:8px 0;
	font-size:12px;
	line-height:1.5;
	border-top:dotted 1px #ddd;
}
table th.pb0,
table td.pb0 {
	padding-bottom: 8px;
}
table th.bt0 {
	border-top:solid 1px #ddd;
	padding-top: 10px;
}
table td.bt0 {
	border-top:dotted 1px #ddd;
	padding-top: 10px;
}
table td +td {
}
table tr:nth-child(odd) ,
table tr:nth-child(even) {
	background:#fff;
}
}	/* for SP max-width: 480px */












/*===============================================================

	headline
	見だし

===============================================================*/
.headline {
	position:relative;
	max-width: 1280px;
	/* margin: 0 auto; */

	@media only screen and (max-width: 1280px) {
		padding: 0 8px;
	}
	@media only screen and (max-width: 1000px) {
		padding: 0 16px;
	}
}
.headline .title {
	display:inline-block;
	border-bottom:solid 2px #861718;
	padding-bottom:5px;
	font-size:32px;
	line-height:1.5;
	color:#861718;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}   /* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.headline .title {
	font-size:25px;
}
}   /* for SP max-width: 480px */

/*===============================================================

	content_headline
	見だし

===============================================================*/
.content_headline {
	text-align:left;
	position:relative;
}
.content_headline .title {
	font-size:25px;
	line-height:1.5;
	padding:15px;
	background:#861718;
	color:#fff;
}

/*-------------------------------------------------------------
	btn_more
-------------------------------------------------------------*/
.btn_more {
	width:120px;
	height:35px;
	position:absolute;
	top:0;
	right:0;
}
.btn_more a {
	display:block;
	text-align:center;
	border:solid 1px #861718;
	color:#6f0f10;
	font-size:14px;
	line-height:35px;
	border-radius:3px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	text-decoration:none;
}
.btn_more a:hover {
	opacity:0.7;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.btn_more {
	width:75px;
	height:25px;
	top:5px;
	right:-10px;
}
.btn_more a {
	font-size:12px;
	line-height:25px;
}
}	/* for SP max-width: 480px */

/*===============================================================

	subhead
	小見出し

===============================================================*/
.subhead {
}
.subhead .title {
	font-size:20px;
	color:#666;
	border-bottom:solid 1px #ccc;
	padding-bottom:15px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.subhead .title {
	font-size:16px;
	padding-bottom:10px;
}
}	/* for SP max-width: 480px */
/*===============================================================

	背景

===============================================================*/
.bg_graytile {
	background-image:url(../images/bg_graytile.jpg);
	background-position:top center;
	background-repeat:repeat;
}
.bg_blue {
	background:#f6f2ef;
}

/*===============================================================

	seciton
	headlineとcontentなど、複数の要素、機能を取りまとめるコンテナ的な親要素。
	幅はsection_innerに記述する

===============================================================*/
.section_wrp {
	margin-top:5px;
}
.section {
	width:100%;
}
.section_inner {
	margin:0 auto;
	padding:50px 20px 70px 20px;
}
/* タブレット以下 */
@media screen and (max-width: 1260px) {
.section_inner {
	margin:0 auto;
	padding:50px 50px 70px 50px;
}
}	/* for tablet max-width: 768px */

/* タブレット以下 */
@media screen and (max-width: 768px) {
.section_inner {
	margin:0 auto;
	padding:30px 20px 30px 20px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.section_inner {
	margin:0 auto;
	padding:20px;
}
}	/* for SP max-width: 480px */
/* SP向けレイアウトの指定：～320px */
@media only screen and (max-width: 320px) {
.section_inner {
	margin:0 auto;
	padding:10px;
}
}	/* for SP max-width: 320px */


/*===============================================================

	content
	個別のコンテンツ

===============================================================*/
.subhead + .content {
	margin-top:35px;
}
.content + .subhead,
.content + .content {
	margin-top:80px;
}
.content_step + .content {
	margin-top:40px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.content {
	width:100%;
	margin:0 auto;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.content {
	width:100%;
	margin:0 auto;
}
.subhead + .content {
	margin-top:10px;
}
.content + .subhead,
.content + .content {
	margin-top:20px;
}
}	/* for SP max-width: 480px */


/*===============================================================

	column
	囲み、メモなどサブ的な括り。

===============================================================*/
.column {
	width:700px;
	margin:0 auto;
}
.column h3 {
	font-size:20px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}
.column h4 {
	font-size:18px;
	font-weight:bold;
	text-align:center;
	margin-top:30px;
}
.column p {
	margin-top:30px;
	font-size:16px;
}
.column * + p {
	margin-top:20px;
	font-size:16px;
}
.column p.caution {
	font-size:12px;
}
.column .bbottom {
	border-bottom:1px solid #000;
	padding-bottom:10px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.column {
	width:100%;
	margin:0 auto;
}
.column h3 {
	font-size:18px;
	margin-top:15px;
}
.column h4 {
	font-size:16px;
	margin-top:15px;
}
.column p {
	margin-top:10px;
	font-size:14px;
	line-height:1.6;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.notes
-------------------------------------------------------------*/
.notes {
	background:#eee;
	padding:15px;
	margin-top:20px;
	font-size:14px;
	line-height:28px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.memo
-------------------------------------------------------------*/
.memo {
	margin-top:20px;
}
.memo p {
	font-size:14px;
	line-height:25px;
	margin-top:20px;
}
.memo h4 {
	margin-top:0;
}
.memo * + h4 {
	margin-top:20px;
}
.memo h4 + p {
	margin-top:0;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */
/*===============================================================

	txtlink 2016/11/16

===============================================================*/
.txtlink a {
	padding-left:15px;
	color:#000;
	text-decoration:none;
	position:relative;
	display:inline-block;
}
.txtlink a:hover {
	color:#c00;
}
.txtlink a:after {
	position:absolute;
	content:" ";
	width:6px; height:6px;
	top:7px; bottom:auto; left:0; right:auto;
	margin:auto;
	border-top:solid 2px #c00;
	border-left:solid 2px #c00;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
.txtlink.arw_prev a {
}
.txtlink.arw_prev a:after {
	top:7px; bottom:auto; left:3px; right:auto;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.txtlink.arw_after a {
	padding-left:0;
	padding-right:10px;
}
.txtlink.arw_after a:after {
	left:auto; right:0;
}
.txtlink.arw_down a:after {
	top:7px; bottom:auto; left:2px; right:auto;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
.txtlink.arw_after_down a {
	padding-left:0;
	padding-right:10px;
}
.txtlink.arw_after_down a:after {
	top:7px; bottom:auto; left:auto; right:0;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
/*	arw_box */
.txtlink.arw_box a {
	padding-left:25px;
}
.txtlink.arw_box a:before {
	content:' ';
	width:20px;
	height:20px;
	background:#000;
	position:absolute;
	top:2px; bottom:auto; left:0; right:auto; margin:auto;
}
.txtlink.arw_box a:after {
	border-top:solid 1px #fff;
	border-left:solid 1px #fff;
	top:8px; bottom:auto; left:5px; right:auto;
}


/*===============================================================

	modal 2016/10/11

===============================================================*/
.modal_bg {
	position:absolute;
	top:0;
	left:0;
	background:rgba(255,255,255,0.7);
	display:none;
	z-index:9998;
}
.modal {
	position:absolute;
	top:0;
	left:0;
	width:800px;
	display:none;
	z-index:9999;

	transition:top 0.2s linear,left 0.1s linear;
	-moz-transition:top 0.2s linear,left 0.1s linear;
	-ms-transition:top 0.2s linear,left 0.1s linear;
	-o-transition:top 0.2s linear,left 0.1s linear;
	-webkit-transition:top 0.2s linear,left 0.1s linear;
}
.modal .close {
	position:absolute;
	width:30px; height:30px;
	top:0; right:0;
	text-indent:100%;
	overflow:hidden;
	white-space:nowrap;
	cursor:pointer;
	z-index:9999;
}
.modal .close:before,
.modal .close:after {
	content:" ";
	position:absolute;
	width:30px; height:1px;
	background:#000;
	top:10px; right:0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.modal .close:after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.modal .close:hover {
	opacity:0.7;
}
.modal .modal_container {
	padding:0;
	position:relative;
}
.modal .modal_contents_wrp {
	position: relative;
	padding:40px;
	width: 100%;
	height: 100%;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.modal .modal_inner {
	padding:30px;
	background:#fff;
	border:solid 1px #ddd;
	box-shadow:0px 0px 5px 0px rgba(0, 0, 0, 0.20);
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.modal .modal_contents_wrp::-webkit-scrollbar {
  display: none;
}

/* タブレット以下 */
@media screen and (max-width: 800px) {
.modal {
	width:100%;
}
.modal .modal_contents_wrp {
	padding:30px;
}
.modal .modal_inner {
	padding:15px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.modal {
	width:100%;
}
.modal .modal_contents_wrp {
	padding:30px 10px;
}
.modal .modal_container {
}
.modal .close {
	top:5px; right:0px;
}
.modal .modal_inner {
	padding:15px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.modal .modal_pager
-------------------------------------------------------------*/
.modal .modal_pager li a {
	position:absolute;
	top:0; bottom:0;
	margin:auto;
	display:block;
	width:30px;
	height:30px;
	white-space:nowrap;
	text-indent:100%;
	overflow:hidden;
}
.modal .modal_pager li a:after {
	position:absolute;
	content:" ";
	width:15px; height:15px;
	top:6px; left:0;
	border-top:solid 2px #fff;
	border-left:solid 2px #fff;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
.modal .modal_pager li.prev a {
	left:0;
	-webkit-transform: rotate(-180deg);
	-moz-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	transform: rotate(-180deg);
}
.modal .modal_pager li.next a {
	right:0;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */


/*-------------------------------------------------------------
	.modal_container
-------------------------------------------------------------*/
.modal .modal_container .modal_header {
	background:#861718;
	color:#fff;
	padding:10px;
}
.modal .modal_container .modal_header h3 {
	font-size:20px;
	line-height:30px;
	text-align:left;
	font-weight:bold;
	text-shadow:none;
}
.modal .modal_container .modal_header p {
	font-size:14px;
	line-height:20px;
	text-align:left;
	font-weight:bold;
}
.modal .btn {
	width:560px;
	margin:0 auto;
	margin-top:40px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.modal .modal_container .modal_header h3 {
	font-size:16px;
	line-height:25px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.modal .modal_container .modal_header h3 {
	font-size:16px;
	line-height:25px;
}
.modal .btn {
	width:100%;
	margin:0 auto;
	margin-top:40px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	modal_body
-------------------------------------------------------------*/
.modal_body {
	margin-top:15px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */


/*-------------------------------------------------------------
	.modal_container .btn
-------------------------------------------------------------*/
.modal_container .btn {
	width:450px;
	margin:0 auto;
	margin-top:30px;
}
.modal_container .btn a {
	position:relative;
	display:block;
	background-color:#e63412;
	text-align:center;
	color:#fff;
	font-size:18px;
	line-height:20px;
	font-weight:bold;
	padding:20px 0;
	border-radius:5px;
	box-shadow:rgba(0, 0, 0, 0.2) 0px 3px 0px 0px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.2) 0px 3px 0px 0px;
	-moz-box-shadow:rgba(0, 0, 0, 0.2) 0px 3px 0px 0px;
	text-decoration:none;
}
.modal_container .btn a:hover {
	text-decoration:none;
	background-color:#ff6600;
}
.modal_container .btn a:after {
	position:absolute;
	content:" ";
	width:13px; height:13px;
	top:0; left:auto; bottom:0; right:10px;
	margin:auto;
	border-top:solid 2px #fff;
	border-left:solid 2px #fff;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg);
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.modal_container .btn {
	width:100%;
	margin:0 auto;
	margin-top:15px;
}
.modal_container .btn a {
	font-size:16px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	closebtn
-------------------------------------------------------------*/
.modal .closebtn a {
	display:block;
	width:120px;
	margin:0 auto;
	line-height:30px;
	border:solid 1px #fff;
	text-align:center;
	margin-top:20px;
	color:#fff;
}
.modal_gamedetail .closebtn a:hover {
	color:#000;
	background:#fff;
	text-decoration:none;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.modal .close {
	top:0px;
	right:5px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	モーダル制作時の確認用
-------------------------------------------------------------*/
.modal {
	/*display:block;*/
}
.modal_demo1 .modal_inner,
.modal_demo2 .modal_inner {
	color:#fff;
	background:#333;
	padding:30px;
}

/*===============================================================

	carousel_slider（BxSlider）

===============================================================*/
.carousel_slider {
	color:#000;
	position:relative;
}
.carousel_slider .slide {
}
.carousel_slider .slide .inner {
	padding:30px;
}
.carousel_slider .slide img {
	width:100%; height:auto;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*===============================================================

	BxSlider override

===============================================================*/
/*-------------------------------------------------------------
	wrapper
-------------------------------------------------------------*/
.bx-wrapper {
	position: relative;
	margin: 0 auto;
	padding: 0;
	*zoom: 1;
	border:0;
	box-shadow:none;
	padding-bottom:40px;
	background:none;
}
.section_mainvisual .bx-wrapper {
	padding-bottom:0;
}
@media only screen and (max-width: 480px) {
.bx-wrapper {
	padding-bottom:40px;
}
.section_mainvisual .bx-wrapper {
	padding-bottom:40px;
	background:#fff;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	pager
-------------------------------------------------------------*/
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	bottom: 10px;
}
.bx-wrapper .bx-pager {
	padding-top: 0;
	text-align:right;
}
.porduct_slider .bx-wrapper .bx-pager {
	text-align:center;
}
@media only screen and (max-width: 480px) {
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	bottom: 18px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	pager dot
-------------------------------------------------------------*/
.bx-wrapper .bx-pager.bx-default-pager a {
	background: rgba(255,255,255,1);
	text-indent: -9999px;
	display:block;
	width: 10px;
	height: 10px;
	margin: 0 10px 0 0;
	outline: 0;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 10px;
	border:solid 3px rgba(0,0,0,1);
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	opacity:0.4;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: rgba(255,255,255,1);
	opacity:1;
}
@media only screen and (max-width: 480px) {
.bx-wrapper .bx-pager.bx-default-pager a {
	width: 5px;
	height: 5px;
	margin: 0 5px 0 0;
	border-radius: 5px;
	border:solid 2px rgba(0,0,0,1);
}
}	/* for SP max-width: 480px */


/*-------------------------------------------------------------
	pager arw
-------------------------------------------------------------*/
.bx-wrapper .bx-controls-direction a {
	display:none;	/*	デフォルトの矢印は使わない */

	position: absolute;
	outline: 0;
	width:50px;
	height:50px;
	text-indent: -9999px;
	z-index: 100;
	top:0; bottom:0; margin:auto;
	border:solid 1px #fff;
	border-radius:50% 50%;
	overflow:hidden;
	display:block;
}
.bx-wrapper .bx-prev {
	left: 20px;
	background:none;
}
.bx-wrapper .bx-next {
	right:20px;
	background:none;
}
.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-next:hover {
	background:rgba(255,255,255,0.5);
}
.bx-wrapper .bx-next:after,
.bx-wrapper .bx-prev:after {
	content:'';
	position:absolute;
	top:0; bottom:0; left:0; right:0; margin:auto;
	border-right:solid 1px #fff;
	border-bottom:solid 1px #fff;
	width:12px;
	height:12px;
	-webkit-transform: rotate(-45deg) translate(-2px,-2px);
	-moz-transform: rotate(-45deg) translate(-2px,-2px);
	-ms-transform: rotate(-45deg) translate(-2px,-2px);
	transform: rotate(-45deg) translate(-2px,-2px);
	transition: all .3s;
}
.bx-wrapper .bx-prev:after {
	-webkit-transform: rotate(135deg) translate(-2px,-2px);
	-moz-transform: rotate(135deg) translate(-2px,-2px);
	-ms-transform: rotate(135deg) translate(-2px,-2px);
	transform: rotate(135deg) translate(-2px,-2px);
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*===============================================================

	.carousel_slider .slider

===============================================================*/
.carousel_slider .slider {
	position:relative;
	background:none;
}
.carousel_slider .slider .slide {
	width:100%;
	position:relative;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.carousel_slider .slider .slide ,
.carousel_slider .slider .slide:nth-child(even) {
	float:none;
	width:100%;
}
.carousel_slider .slider .slide img {
	width:100%;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.carousel_slider .slider .pager
-------------------------------------------------------------*/
.carousel_slider .slider .pager {
	position:absolute;
	bottom:0;
	margin:auto;
	width:50px;
	height:30px;
	z-index:1;
}
.carousel_slider .slider .prev {
	left:0;
}
.carousel_slider .slider .pouse {
	left:60px;
}
.carousel_slider .slider .next {
	left:120px;
}
.recommend_slider .carousel_slider .slider .next,
.campaign_slider .carousel_slider .slider .next,
.campaign_slider2 .carousel_slider .slider .next{
	left:60px;
}
.carousel_slider .slider .owl-controls {
	position:absolute;
	height:30px;
	bottom:0;
	right:0;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.mainvisual_slider .slider .pager
-------------------------------------------------------------*/
.mainvisual_slider {
	overflow:hidden;
}
.mainvisual_slider .slider .pager {
	bottom:5px;
}
.mainvisual_slider .slider .prev {
	left:5px;
}
.mainvisual_slider .slider .pouse {
	left:65px;
}
.mainvisual_slider .slider .next {
	left:125px;
}
.recommend_slider .carousel_slider .slider .next,
.campaign_slider .carousel_slider .slider .next,
.campaign_slider2 .carousel_slider .slider .next{
	left:65px;
}
.mainvisual_slider .slider .owl-controls {
	position:absolute;
	height:30px;
	bottom:5px;
	right:5px;
}
/* タブレット以下 */
@media screen and (max-width: 1280px) {
.mainvisual_slider {
	height:auto;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */
/*-------------------------------------------------------------
	.carousel_slider .slider .pager a
-------------------------------------------------------------*/
.carousel_slider .slider .pager a {
	display:block;
	width:50px;
	height:30px;
	background:rgba(0,0,0,0.7);
	overflow:hidden;
	text-indent:-200%;
	position:relative;
}
.carousel_slider .slider .pager a:hover {
	background:rgba(0,0,0,0.6);
}
.carousel_slider .slider .pager a:after {
	content:'';
	position:absolute;
	top:0; bottom:0; left:0; right:0; margin:auto;
	border-right:solid 1px #fff;
	border-bottom:solid 1px #fff;
	width:12px;
	height:12px;
	-webkit-transform: rotate(-45deg) translate(-2px,-2px);
	-moz-transform: rotate(-45deg) translate(-2px,-2px);
	-ms-transform: rotate(-45deg) translate(-2px,-2px);
	transform: rotate(-45deg) translate(-2px,-2px);
	transition: all .3s;
}
.carousel_slider .slider .prev a:after {
	-webkit-transform: rotate(135deg) translate(-2px,-2px);
	-moz-transform: rotate(135deg) translate(-2px,-2px);
	-ms-transform: rotate(135deg) translate(-2px,-2px);
	transform: rotate(135deg) translate(-2px,-2px);
}
.carousel_slider .slider .pager a:hover:after {
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.carousel_slider .slider .pouse a
-------------------------------------------------------------*/
.carousel_slider .slider .pouse a:before,
.carousel_slider .slider .pouse a:after {
	content:'';
	position:absolute;
	top:0; bottom:0; left:0; right:0; margin:auto;
	width:1px;
	height:18px;
	-webkit-transform:  translate(-2px,0);
	-moz-transform: translate(-2px,0);
	-ms-transform: translate(-2px,0);
	transform: translate(-2px,0);
	background:#ccc;
	border:0;
}
.carousel_slider .slider .pouse a:after {
	-webkit-transform:  translate(2px,0);
	-moz-transform: translate(2px,0);
	-ms-transform: translate(2px,0);
	transform: translate(2px,0);
}
.carousel_slider .slider .pouse.active a {
	background:#eee;
}
.carousel_slider .slider .pouse.active a:hover {
	background:#ccc;
}
.carousel_slider .slider .pouse.active a:before,
.carousel_slider .slider .pouse.active a:after {
	background:#666;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */
/*-------------------------------------------------------------
	.carousel_slider .slider .slide .photo
-------------------------------------------------------------*/
.carousel_slider .slider .slide .photo img {
	width: inherit;
	max-width: 100%;
	min-width: 100%;
	height: auto;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */



/*===============================================================

	基本のレイアウト
	section_contents

===============================================================*/
.section_contents {
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	headline
-------------------------------------------------------------*/
.section_contents .headline {
	text-align:center;
}
.section_contents .headline .title {
	font-size:35px;
	line-height:1.5;
}
.section_contents .headline .read {
	font-size:22px;
	line-height:1.5;
	font-weight:bold;
	margin-top:5px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	visual
-------------------------------------------------------------*/
.section_contents .visual {
	margin-top:30px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	content
-------------------------------------------------------------*/
.section_contents .headline + .content,
.section_contents .visual + .content {
	margin-top:30px;
}
.section_contents .content + .content {
	margin-top:80px;
}
/*	h3	*/
.section_contents .content h3 {
	font-size:25px;
	line-height:1.8;
}
/*	h4	*/
.section_contents .content h4 {
	font-size:18px;
	line-height:1.8;
}
/*	p	*/
.section_contents .content p {
	font-size:16px;
	line-height:2;
}
/*	margin	*/
.section_contents .content * + h3,
.section_contents .content * + h4,
.section_contents .content * + p {
	margin-top:2em;
}
.section_contents .content h3 + p,
.section_contents .content h3 + h4,
.section_contents .content h4 + p {
	margin-top:0;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.section_contents .headline + .content,
.section_contents .visual + .content {
	margin-top:15px;
}
.section_contents .content + .content {
	margin-top:30px;
}
/*	h3	*/
.section_contents .content h3 {
	font-size:20px;
}
/*	h4	*/
.section_contents .content h4 {
	font-size:16px;
}
/*	p	*/
.section_contents .content p {
	font-size:14px;
}
/*	margin	*/
.section_contents .content * + h3,
.section_contents .content * + h4,
.section_contents .content * + p {
	margin-top:1em;
}


}	/* for SP max-width: 480px */



/*===============================================================

	section_mainvisual

===============================================================*/
.section_mainvisual {
}
.section_mainvisual .section_inner {
	padding:0;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*===============================================================

	products_search

===============================================================*/
.product_search {
	width: 600px;
	margin: 40px auto;
}
.product_search .inputfld {
	float: left;
	width: 460px;
}
.product_search .inputfld input {
	width: 100%;
	padding: 10px 10px 9px;
	font-size: 14px;
	color: #333;
	border: solid 1px #ccc;
	margin: 0;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-shadow: 1px 1px 3px 0px rgba(0, 0, 0, 0.20) inset;
}
.product_search .btn {
	float: right;
	width: 120px;
}
.product_search .btn a {
	position: relative;
	text-decoration: none;
	display: block;
	background-color: rgba(0, 0, 0, 0.7);
	text-align: center;
	color: #fff;
	font-size: 16px;
	line-height: 20px;
	font-weight: bold;
	padding: 10px 0;
	border-radius: 3px;
	border: solid 1px #000;
	width: 100%;
	-webkit-transition: .1s;
	transition: .1s;
}
.product_search .btn a:hover {
	text-decoration: none;
	background-color: rgba(0, 0, 0, 0.5);
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.product_search {
	width: 100%;
}
.product_search .inputfld {
	width: 76%;
}
.product_search .btn {
	width: 20%;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.product_search {
	margin: 20px auto 30px auto;
}
.product_search .inputfld {
	float: none;
	width: 100%;
}
.product_search .btn {
	float: none;
	width: 40%;
	margin: 10px auto 0;
}
}	/* for SP max-width: 480px */

/*===============================================================

	products_list

===============================================================*/
.display_result {
	position: relative;
	text-align: center;
	margin: 30px 0 40px;
}
.display_result p {
	line-height: 26px;
}
.display_result p span {
	color: #6f0f10;
	font-size: 18px;
	line-height: 28px;
	font-weight: bold;
	padding: 0 10px;
}
.display_result form span {
	line-height: 28px;
}
.display_result .selector {
	position: absolute;
	top: 0;
	right: 0;
}
.display_result .selector .select_wrap {
	width: 60px;
	min-width: 60px;
	vertical-align: middle;
}
.products_list {
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.display_result {
	margin: 20px 0 30px;
}
.display_result .selector {
	position: static;
	margin: 10px auto 0;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	item
-------------------------------------------------------------*/
.products_list .item .clickarea {
	position:relative;
}
.products_list .item .clickarea {
	cursor:pointer;
}
.products_list .item .title {
	margin-top:10px;
	font-size:16px;
	line-height:1.3;
	color:#6f0f10;
	font-weight:normal;
}
.products_list .item .title a {
	text-decoration:none;
}
.products_list .item .caption {
}
.products_list .item .btn_detail {
	width: 80%;
	margin-top: 10px;
}
.products_list .item .btn_detail input {
	font-size: 14px;
	font-weight: normal;
	padding: 10px 0;
}
.products_list .item .btn_detail input:hover {
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.products_list .item .btn_detail input {
	font-size: 8px;
	padding: 5px 0;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.products_list .item .title {
	font-size:14px;
}
.products_list .item .btn_detail input {
	font-size: 11px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.products_list .item .photo
-------------------------------------------------------------*/
.products_list .item .photo {
	position:relative;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.products_list .item .hoverbox
-------------------------------------------------------------*/
.products_list .item .hoverbox {
	background:rgba(51,0,0,0.8);
	padding:15px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	position:absolute;
	top:0;
	left:0;
	overflow:hidden;
	opacity:0;
	transition:opacity .3s;
	cursor:pointer;
}
.products_list .hover .hoverbox {
	opacity:1;
}
.products_list .item .hoverbox .caption {
	color:#fff;
	font-size:14px;
	line-height:20px;
}
.products_list .item .hoverbox .link {
	position:absolute;
	right:15px;
	bottom:15px;
	line-height:15px;
}
.products_list .item .hoverbox .link a {
	color:#ff6674;
	font-weight:bold;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.products_list .item .hoverbox .caption {
	color:#fff;
	font-size:12px;
	line-height:16px;
}
.products_list .item .hoverbox .link {
	font-size:12px;
	line-height:16px;
}
}	/* for SP max-width: 480px */


/*-------------------------------------------------------------
	new
-------------------------------------------------------------*/
.new {
	position:absolute;
	z-index:3;
	top:0;
	left:0;
	color:#fff;
	font-size:10px;
	line-height:16px;
	font-weight:bold;
	background:#c00;
	text-align:center;
	width:40px;
	height:16px;
}
.new:after {
	content:"";
	position:absolute;
	top:0;
	right:-8px;
	border-top: 8px solid #C00;
	border-right: 8px solid transparent;
	border-bottom: 8px solid #C00;
	border-left: 8px solid transparent;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	boxshadow
-------------------------------------------------------------*/
.boxshadow {
	background:#fff;
	border:solid 1px rgba(0, 0, 0, 0.1);
	box-shadow:1px 1px 2px 0px rgba(0, 0, 0, 0.1);
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	position:relative;
}
.grid_1.grid.boxshadow {
	box-shadow: none;
}
.linkarea {
	cursor:pointer;
}
.linkarea.hover {
	opacity:0.7;
}

/*===============================================================

	cp_list

===============================================================*/
.cp_list {
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.cp_list .gridwrp_3 { width:105.000%;}
.cp_list .gridwrp_3 .grid_1 { width:45.238%; margin-right:4.762%; }
.cp_list .gridwrp_3 .grid:nth-child(2n+1) {
	clear:both;
}
.cp_list .gridwrp_3 .grid:nth-child(3n+1) {
	clear:inherit;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	item
-------------------------------------------------------------*/
.cp_list .item {
	padding:20px;
}
.cp_list .item .title {
	margin-top:10px;
	font-size:16px;
	line-height:1.3;
	color:#6f0f10;
	font-weight:normal;
}
.cp_list .item .title a {
	text-decoration:none;
}
.cp_list .item .caption {
	font-size:14px;
	line-height:20px;
	margin-top:5px;
	word-wrap:break-word;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.cp_list .item {
	padding:10px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.cp_list .item {
	padding:15px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.cp_list .item .title {
	margin-top:5px;
	font-size:12px;
}
.cp_list .item .caption {
	font-size:11px;
	line-height:15px;
	margin-top:3px;
}
}	/* for SP max-width: 480px */


/*===============================================================

	section_topics_bnr

===============================================================*/
.section_topics_bnr {
}
.section_topics_bnr .topic_list {
	float:left;
	width:64.89%;
}
.section_topics_bnr .bnr_list {
	float:right;
	width:29.78%;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.section_topics_bnr .topic_list,
.section_topics_bnr .bnr_list {
	float:none;
	width:100%;
}
.section_topics_bnr .bnr_list {
	margin-top:20px;
}
.section_topics_bnr .btn_more {
	top:auto;
	bottom:-37px;
}
}	/* for SP max-width: 480px */


/*-------------------------------------------------------------

	.section_topics_bnr .topic_list

-------------------------------------------------------------*/
.section_topics_bnr .topic_list h3 {
	font-size:25px;
}
.content .topic_list dl {
	width:100%;
	overflow:hidden;
	border-bottom:solid 1px #ddd;
	margin-top:30px;
}
.content .topic_list dt {
	width:8em;
	float:left;
	padding:15px 0;
	font-size:14px;
}
.content .topic_list dd {
	padding:15px 0;
	padding-left:8em;
	border-top:solid 1px #ddd;
	font-size:14px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.section_topics_bnr .topic_list h3 {
	font-size:18px;
}
.content .topic_list dl {
	margin-top:15px;
}
.content .topic_list dt {
	width:100%;
	float:none;
	padding:10px 0 0 0;
	font-size:12px;
	font-weight:bold;
	border-top:solid 1px #ddd;
}
.content .topic_list dd {
	padding:0px 0 10px 0;
	border-top:solid 0px #ddd;
	font-size:12px;
	line-height:1.5;
}
}	/* for SP max-width: 480px */


/*-------------------------------------------------------------

	.section_topics_bnr .bnr_list

-------------------------------------------------------------*/
.section_topics_bnr .bnr_list img {
	width:100%;height:auto;
}
.section_topics_bnr .bnr_list li {
	margin-top:10px;
}
.section_topics_bnr .bnr_list li:first-child {
	margin-top:0;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */


/*===============================================================

	two_column_slider

===============================================================*/
.two_column_slider {
}
.two_column_slider .photo {
	float:left;
}
.two_column_slider .txt {
	float:right;
	background:none;
}
.two_column_slider .photo,
.two_column_slider .txt {
	width:47.91%;
}
.two_column_slider .txt h3 {
	font-size:20px;
	line-height:30px;
}
.two_column_slider .txt p {
	font-size:16px;
	line-height:30px;
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.two_column_slider .photo,
.two_column_slider .txt {
	width:100%;
	float:none;
}
.two_column_slider .txt h3 {
	font-size:14px;
	line-height:22px;
	margin-top:15px;
}
.two_column_slider .txt p {
	font-size:12px;
	line-height:18px;
	margin-top:5px;
}
}	/* for SP max-width: 480px */


/*===============================================================

	six_column

===============================================================*/
.six_column {
}
.six_column .gridconatiner {
	margin-top:-15px;
	padding-bottom:5px;
}
.six_column .gridwrp_3 { width:101.538%;}
.six_column .gridwrp_3 .grid_1 {
	width:31.818%; margin-right:1.515%;
	margin-top:15px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.content.six_column + .content {
	margin-top:0;
}
.six_column .grid {
	margin:0;
}
.six_column .gridwrp_3 { width:103.333%;}
.six_column .gridwrp_3 .grid_1 {
	width:46.774%; margin-right:3.226%;
	margin-top:10px;
}
.six_column .gridwrp_3 .grid_1:nth-child(2n+1){
	clear:both;
}
.six_column .gridwrp_3 .grid_1:nth-child(3n+1){
	clear:inherit;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	six_column_slider
-------------------------------------------------------------*/
.six_column_slider .item {
	padding:15px;
}
.six_column_slider .photo {
	width:100px;
	float:left;
}
.six_column_slider .photo img {
	width:100%; height:auto;
}
.six_column_slider .txt {
	padding-left:110px;
}
.six_column_slider .txt h3 {
	font-size:14px;
	line-height:20px;
	margin-top:5px;
	font-weight:normal;
}
.six_column_slider p {
	font-size:14px;
	line-height:20px;
}
.six_column_slider .date {
	color:#666;
}
.six_column_slider .link {
	margin-top:-20px;
	text-align:right;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.six_column_slider .link {
	margin-top:5px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.six_column_slider .item {
	padding:10px;
}
.six_column_slider .photo {
	width:100%;
	float:none;
}
.six_column_slider .txt {
	padding-left:0;
	margin-top:10px;
}
.six_column_slider .txt h3 {
	font-size:13px;
	line-height:15px;
	margin-top:5px;
	font-weight:normal;
}
.six_column_slider p {
	font-size:12px;
	line-height:14px;
}
.six_column_slider .link {
	margin-top:5px;
	text-align:right;
}

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	six_column_slider
-------------------------------------------------------------*/
.six_column_slider .new {
	top:0px;
	left:0px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.six_column_slider .new {
	top:0;
	left:0;
}
.six_column_slider_sp .bx-viewport {
	padding-bottom:15px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
}	/* for SP max-width: 480px */

/*===============================================================

	section_login

===============================================================*/
.section_login {
}
.login_panel {
	width:640px;
	margin:0 auto;
	padding:30px;
}
.login_panel .form {
	width:300px;
	margin:0 auto;
	padding-top:10px;
}
.login_panel .form .inputfld {
	margin-top:20px;
}
.login_panel .form p {
	text-align:center;
	margin-top:20px;
}
.login_panel .form p + p {
	margin-top:10px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.login_panel {
	width:80%;
}
.login_panel .form {
	width:80%;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.section_login {
	background:#fff;
}
.section_login .boxshadow {
	box-shadow:none;
	padding:0;
	border:0;
}
.login_panel {
	width:100%;
	padding:0;
}
.login_panel .form {
	width:100%;
	padding:0;
}
}	/* for SP max-width: 480px */

/*===============================================================

	pager_num：数字のページング

===============================================================*/
.pager_num {
	position: relative;
	overflow: hidden;
	margin-top:30px;
}
.pager_num ul {
	position: relative;
	left: 50%;
	float: left;
	margin-top:-10px;
}
.pager_num ul li {
	position: relative;
	left: -50%;
	float: left;
	padding:0 10px;
	margin-top:10px;
}
.pager_num li a {
	display:block;
	margin:0 auto;
	text-decoration:none;
	text-align:center;
	font-weight:bold;
	font-size:18px;
	line-height:40px;
	width:40px;
	color:#fff;
	background:#861718;
	border:solid 1px #861718;
	border-radius:3px;
}
.pager_num li a:hover {
	background:#a61617;
	border:solid 1px #a61617;
}
.pager_num li.current a {
	background:#fff;
	color:#6f0f10;
	border:solid 1px #861718;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.pager_num ul li {
	padding:0 5px;
}
.pager_num li a {
	font-size:14px;
	line-height:30px;
	width:30px;
}
}	/* for SP max-width: 480px */

/*===============================================================

	section_product_detail

===============================================================*/
.section_product_detail {
}
.section_product_detail .section_inner {
	padding-top:10px;
}
.column_left {
	float:left;
	width:65.10%;
}
.column_right {
	float:right;
	width:30.20%;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.column_left,
.column_right {
	float:none;
	width:100%;
}
.column_right {
	margin-top:20px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	product_detail
-------------------------------------------------------------*/
.product_detail .product_name {
	font-size:25px;
	line-height:30px;
	color:#6f0f10;
}
.product_detail .maker {
	margin-top:10px;
}
.product_detail .price_data {
	overflow:hidden;
	width:100%;
	padding:15px;
	margin-top:20px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.product_detail .price_data + .price_data {
	margin-top:10px;
}
.product_detail .price_data dt {
	float:left;
	width:50%;
	font-size:20px;
	line-height:1.2;
}
.product_detail .price_data dd {
	float:right;
	width:50%;
	text-align:right;
	font-size:20px;
	line-height:1.2;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.product_detail .product_name {
	font-size:16px;
	line-height:1.3;
}
.product_detail .maker {
	margin-top:15px;
}
.product_detail .price_data {
	padding:10px;
	margin-top:15px;
}
.product_detail .price_data + .price_data {
	margin-top:5px;
}
.product_detail .price_data dt {
	float:left;
	width:40%;
	font-size:14px;
	line-height:1.2;
}
.product_detail .price_data dd {
	float:right;
	width:60%;
	text-align:right;
	font-size:20px;
	line-height:1.2;
	font-weight:bold;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	product_detail .detail_txt
-------------------------------------------------------------*/
.product_detail .detail_txt {
}
.product_detail .detail_txt p,
.product_detail .detail_txt .photo {
	margin-top:20px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.product_detail .detail_txt p,
.product_detail .detail_txt .photo {
	margin-top:15px;
}
.product_detail .detail_txt p {
	font-size:12px;
	line-height:1.5;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	product_detail .address_info
-------------------------------------------------------------*/
.product_detail .address_info {
	border:solid 1px #ddd;
	overflow:hidden;
	width:100%; height:auto;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	margin-top:20px;
	padding:20px;
}
.product_detail .address_info dt {
	float:left;
	width:180px;
	font-weight:bold;
}
.product_detail .address_info dd {
	padding-left:180px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.product_detail .address_info {
	margin-top:20px;
	padding:10px;
}
.product_detail .address_info dt {
	float:none;
	width:100%;
	font-weight:bold;
	font-size:12px;
}
.product_detail .address_info dd {
	padding-left:0;
	font-size:12px;
	line-height:1.5;
	padding-top:5px;
}
}	/* for SP max-width: 480px */


/*===============================================================

	section_product_detail2

===============================================================*/
.section_product_detail2 {
}
.section_product_detail2 .section_inner {
	padding-top:10px;
}
/* 合計95.30% */
.section_product_detail2 .column_left {
	float:left;
	width:75%;
}
.section_product_detail2 .column_left .porduct_photo {
	float:left;
	width:220px;
	min-width: 220px;
}
.section_product_detail2 .column_left .product_details {
	float:right;
	width:auto;
}
.section_product_detail2 .column_right {
	float:right;
	width:20%;
}
#section04.btn .section_inner {
	padding-top: 0;
}
#section04.btn .section_inner .btn_prev {
	margin-top: 0;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.section_product_detail2 .column_left,
.section_product_detail2 .column_right {
	float:none;
	width:100%;
}
.section_product_detail2 .column_right {
	margin-top:20px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.section_product_detail2 .column_left,
.section_product_detail2 .column_left .porduct_photo,
.section_product_detail2 .column_left .product_details,
.section_product_detail2 .column_right {
	float:none;
	width:100%;
}
.section_product_detail2 .column_right {
	margin-top:20px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	product_detail2
-------------------------------------------------------------*/
.product_detail2 .product_name {
	font-size:25px;
	line-height:30px;
}
.product_detail2 ul.charges_model {}
.product_detail2 ul.charges_model li {
	margin-top: 20px;
}
.product_detail2 ul.charges_model li p label {
	font-weight: bold;
}
.product_detail2 ul.charges_model li p input {
	margin-right: 10px;
}
.product_detail2 ul.charges_model li ul.charges_list {
	border-bottom: 1px dotted #ddd;
	margin-left: 1em;
}
.product_detail2 ul.charges_model li ul.charges_list li {
	float: left;
	box-sizing: border-box;
	padding: 0 10px;
	margin-top: 10px;
}
.product_detail2 ul.charges_model li ul.charges_list li.name {
	width: 50%;
}
.product_detail2 ul.charges_model li ul.charges_list li.price {
	width: 50%;
	text-align: right;
}
.product_detail2 ul.charges_model li ul.style-flex {
	display: flex;
}
.product_detail2 ul.charges_model li ul.price_one {
	margin-left: 0px;
	margin-right: 10px;
	border-bottom: 1px dotted #ddd;
}
.product_detail2 ul.charges_model li ul.price_one li {
	padding-left: 0px;
	padding-right: 0px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.product_detail2 .product_name {
	font-size:16px;
	line-height:1.3;
	margin-top: 0px;
}
.product_detail2 ul.charges_model {}
.product_detail2 ul.charges_model li {
	margin-top: 10px;
}
.product_detail2 ul.charges_model li ul.charges_list li {
	font-size: 12px;
	line-height: 1.5;
	margin-top: 5px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	product_detail .detail_txt
-------------------------------------------------------------*/
.product_detail2 .detail_txt {
}
.product_detail2 .detail_txt p,
.product_detail2 .detail_txt .photo {
	margin-top:20px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.product_detail2 .detail_txt p,
.product_detail2 .detail_txt .photo {
	margin-top:15px;
}
.product_detail2 .detail_txt p {
	font-size:12px;
	line-height:1.5;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	product_detail .address_info
-------------------------------------------------------------*/
.product_detail2 .address_info {
	border:solid 1px #ddd;
	overflow:hidden;
	width:100%; height:auto;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	margin-top:20px;
	padding:20px;
}
.product_detail2 .address_info dt {
	float:left;
	width:180px;
	font-weight:bold;
}
.product_detail2 .address_info dd {
	padding-left:180px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.product_detail2 .address_info {
	margin-top:20px;
	padding:10px;
}
.product_detail2 .address_info dt {
	float:none;
	width:100%;
	font-weight:bold;
	font-size:12px;
}
.product_detail2 .address_info dd {
	padding-left:0;
	font-size:12px;
	line-height:1.5;
	padding-top:5px;
}
}	/* for SP max-width: 480px */



/*===============================================================

	blanklink

===============================================================*/
.blanklink a {
	color:#6f0f10;
	text-decoration:none;
	position:relative;
	padding-left:18px;
	background:url(../images/icon_blank.gif) no-repeat left center;
	background-size:12px 12px;
}
.blanklink a:hover {
	color:#861718;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	linkbtn
-------------------------------------------------------------*/
.linkbtn {
	margin-top:10px;
}
.linkbtn li {
	display:inline-block;
	border:solid 1px #ccc;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	padding:5px 15px;
	text-align:center;
	border-radius:3px;
	margin-top:10px;
	margin-right:5px;
}
.product_details .linkbtn {
	margin-top: 20px;
}
.product_details .linkbtn .blanklink {
	float: right;
	display:inline-block;
	border:solid 1px #ccc;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	padding:5px 15px;
	text-align:center;
	border-radius:3px;
}
.linkbtn li a,
.product_details .linkbtn .blanklink a {
	color:#666;
}
.linkbtn li a:hover,
.product_details .linkbtn .blanklink a:hover {
	color:#333;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.linkbtn {
	margin-top:10px;
}
.product_details .linkbtn {
	margin-top: 10px;
}
.linkbtn li {
	padding:5px 10px;
	font-size:12px;
}
.linkbtn li a {
	color:#666;
}
.linkbtn li a:hover {
	color:#333;
}
}	/* for SP max-width: 480px */


/*===============================================================

	estimate

===============================================================*/
.estimate {
	background:#f93;
	padding:5px;
	margin-top:30px;
}
.section_product_detail2 .estimate {
	margin-top: 0;
}
.estimate .title {
	text-align:center;
	color:#fff;
	font-size:20px;
	padding:10px 0;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.estimate {
	margin-top:20px;
}
.estimate .title {
	font-size:16px;
	padding:10px 0;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.estimate .form
-------------------------------------------------------------*/
.estimate .form {
	background:#fff;
	padding:15px;
}
.estimate .form h4 {
}
.estimate .form p {
	font-size:14px;
	line-height:1.4;
}
.estimate .form * + p,
.estimate .form * + h4 {
	margin-top:15px;
}
.estimate .form .btn_detail {
	margin-top:15px;
	width:100%;
}
.section_product_detail2 .estimate .form .btn_detail {
	margin-top: 0;
}
.estimate .form .btn_detail a {
	padding:8px 0;
}
.estimate .form .select_wrap {
	width:100%;
	margin-top:5px;
}
.estimate .form .price {
	text-align:right;
	font-size:20px;
	line-height:1.2;
	font-weight:bold;
	margin-top:10px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.estimate .form {
	padding:10px;
}
.estimate .form h4 {
}
.estimate .form p {
	font-size:12px;
	line-height:1.4;
}
.estimate .form * + p,
.estimate .form * + h4 {
	margin-top:10px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	estimate table
-------------------------------------------------------------*/
.estimate table,
.estimate table	 th,
.estimate table	 td {
	border:0;
}
.estimate table {
	border-bottom:solid 1px #ddd;
}
.estimate table	 th,
.estimate table	 td {
	width:50%;
	padding:0 0 10px 0;
}
.estimate table	 td {
	text-align:right;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	info_with_txt
-------------------------------------------------------------*/
.info_with_txt {
	margin-top:15px;
	padding-right:30px;
	position:relative;
	line-height:1.5;
}

.info_with_txt .icon_info {
	position:absolute;
	top:0;
	right:0;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	sp_estimate
-------------------------------------------------------------*/
.sp_estimate {
	display:none;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {

}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.sp_estimate {
	display:block;
	position:fixed;
	bottom:0;
	left:0;
	z-index:100;
	background:#f93;
	width:100%;
	height:100px;
	padding:10px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.sp_estimate .thumb {
	width:80px;
	float:left;
}
.sp_estimate p {
}
.sp_estimate p a {
	font-size:20px;
	line-height:80px;
	padding-left:90px;
	font-weight:bold;
	display:block;
	color:#fff;
	text-decoration:none;
}
.sp_estimate.linkarea.hover {
	opacity:1;
}
}	/* for SP max-width: 480px */


/*===============================================================

	tab2

===============================================================*/
.tabhead {
	margin-top:30px;
	text-align:center;
}
.section_inner.mypage .tabhead {
	margin-top: 0;
}
.tabhead li {
	width:auto;
	float:left;
	display:inline-block;
}
.tabhead li a {
	display:block;
	padding:15px 20px;
	border-left:0;
	color:#6f0f10;
	font-size:18px;
	background:none;
	text-decoration:none;
}
.tabhead li.active a {
	background:#fff;
	border-left:0;
	color:#333;
}
.tabhead li:first-child a,
.tabhead li.active:first-child a {
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.tabhead {
	margin-top:50px;
}
.tabhead.mypage li {
	width:25%;
}
.tabhead li a {
	padding:5px 15px;
	font-size:14px;
}
.tabhead.mypage li a {
	font-size:14px;
	line-height: 18px;
	padding:5px;
}
}	/* for SP max-width: 480px */


/*-------------------------------------------------------------
	.tabbody
-------------------------------------------------------------*/
.tabbody {
	margin-top:-1px;
	background:#fff;
	padding:65px 80px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	text-align:left;
}
.tabbody.mypage {
	padding: 30px;
}
.tabbody h3 {
	font-size:20px;
}
.tabbody h4 {
	font-size:18px;
}
.tabbody p {
	font-size:14px;
}

.tabbody * + h3 {
	margin-top:40px;
}
.tabbody * + h4 {
	margin-top:30px;
}
.tabbody * +p {
	margin-top:20px;
}
.tabbody * + .fig {
	margin-top:20px;
}
.tabbody td.bt0 span > span {
	margin: 0;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.tabbody {
	padding:30px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.tabbody {
	padding:20px;
}
.tabbody.mypage {
	padding: 10px;
}
.tabbody .fig img {
	max-width:100%;
	height:auto;
}
.tabbody h3 {
	font-size:16px;
}
.tabbody h4 {
	font-size:14px;
}
.tabbody p {
	font-size:12px;
	line-height:1.5;
}
.tabbody * + h3 {
	margin-top:30px;
}
.tabbody * + h4 {
	margin-top:20px;
}
.tabbody * +p {
	margin-top:10px;
}
.tabbody * + .fig {
	margin-top:10px;
}
.tabbody th.bt0 span {
	display: none;
}
.tabbody td.bt0 span > span {
	display: none;
}
}	/* for SP max-width: 480px */

/*===============================================================

	accordion tab

===============================================================*/
.tabaccordionhead {
	margin-top:30px;
	text-align:center;
}
.section_inner.mypage .tabaccordionhead {
	margin-top: 0;
}
.tabaccordionhead li {
	width:auto;
	float:left;
	display:inline-block;
}
.tabaccordionhead li a {
	display:block;
	padding:15px 20px;
	border-left:0;
	color:#6f0f10;
	font-size:18px;
	background:none;
	text-decoration:none;
}
.tabaccordionhead li.active a {
	background:#fff;
	border-left:0;
	color:#333;
}
.tabaccordionhead li:first-child a,
.tabaccordionhead li.active:first-child a {
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.tabaccordionhead {
	display: none;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */


/*-------------------------------------------------------------
	.tabaccordionbody
-------------------------------------------------------------*/
.tabaccordionbody {
	margin-top:-1px;
	background:#fff;
	padding:65px 80px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	text-align:left;
}
.tabaccordionbody .accordion_header {
	display:none;
}
.tabaccordionbody .tabcontent {
	display: block;
}
.tabaccordionbody.mypage {
	padding: 30px;
}
.tabaccordionbody h3 {
	font-size:20px;
}
.tabaccordionbody h4 {
	font-size:18px;
}
.tabaccordionbody p {
	font-size:14px;
}
.tabaccordionbody * + h3 {
	margin-top:40px;
}
.tabaccordionbody * + h4 {
	margin-top:30px;
}
.tabaccordionbody * +p {
	margin-top:20px;
}
.tabaccordionbody * + .fig {
	margin-top:20px;
}
.tabaccordionbody td.bt0 span > span {
	margin: 0;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.tabaccordionbody {
	padding:30px;
}
.tabaccordionbody .accordion_header {
	display:block;
}
.tabaccordionbody .accordion_header a {
	display:block;
	padding:10px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	text-align:left;
	position:relative;
	text-decoration:none;
	color:#6f0f10;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border:solid 1px #861718;
	border-radius: 3px;
	background: #fff;
}
.tabaccordionbody .accordion_header a:before,
.tabaccordionbody .accordion_header a:after {
	content:' ';
	position:absolute;
	width:15px;
	height:1px;
	background:#6f0f10;
	top:0; bottom:0; right:10px; margin:auto;
	transition:all .3s;
}
.tabaccordionbody .accordion_header a:after {
	transform:rotate(90deg);
}
.tabaccordionbody .accordion_header.active a:after {
	transform:rotate(0deg);
}
.tabaccordionbody .tabcontent + .accordion_header {
	margin-top:10px;
}
.tabaccordionbody .tabcontent {
	/*display: none;*/
	padding: 20px 0;
}

.tabaccordionbody.mypage {
	padding: 10px;
}
.tabaccordionbody .fig img {
	max-width:100%;
	height:auto;
}
.tabaccordionbody h3 {
	font-size:16px;
}
.tabaccordionbody h4 {
	font-size:14px;
}
.tabaccordionbody p {
	font-size:12px;
	line-height:1.5;
}
.tabaccordionbody * + h3 {
	margin-top:30px;
}
.tabaccordionbody * + h4 {
	margin-top:20px;
}
.tabaccordionbody * +p {
	margin-top:10px;
}
.tabaccordionbody * + .fig {
	margin-top:10px;
}
.tabaccordionbody th.bt0 span {
	display: none;
}
.tabaccordionbody td.bt0 span > span {
	display: none;
}

.tabaccordionbody {
	background: none;
	padding:0;
}
.tabaccordionbody .accordion_header.active a {
	border-radius:3px 3px 0 0;
	border-bottom:0;
}
.tabaccordionbody .tabcontent {
	padding: 20px;
	background:#fff;
	border:solid 1px #861718;
	border-radius:0 0 3px 3px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

}	/* for SP max-width: 480px */


/*===============================================================

	content_form

===============================================================*/
.content_form {
	padding-bottom:30px;
}

.content_form h3 {
	font-size:20px;
}
.content_form * + h3 {
	margin-top:50px;
}
.content_form th,
.content_form td {
	padding:20px 10px;
	vertical-align:middle;
	position:relative;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.content_form td p.caution {
	color: #666;
	font-size: 14px;
	line-height: 20px;
	margin-top: 5px;
}
.content_form td p.caution.right {
	position: absolute;
	top: 20px;
	left: 24%;
	margin-top: 0;
	margin-left: 20px;
}
.content_form td span {
	margin-left: 20px;
}
.content_form td span:first-child {
	margin-left: 0;
}
.content_form th {
	width:25%;
}
.content_form .ness {
	border:solid 1px #c00;
	color:#c00;
	padding:0px 5px;
	line-height:22px;
	height:20px;
	/*
	display:block;
	position:absolute;
	top:0; bottom:0; right:5px; margin:auto;
	*/
	display:inline-block;
	float:right;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.content_form th.s {
	width:18%;
}
.content_form td.s {
	width:32%;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.content_form {
	padding:10px;
	/*padding-bottom:20px;*/
}
.content_form h3 {
	font-size:16px;
}
.content_form * + h3 {
	margin-top:20px;
}
.content_form th {
	width:100%;
	padding: 8px 0;
}
.content_form td {
	padding: 8px 0;
}
.content_form td p.caution {
	font-size: 12px;
	line-height: 18px;
	margin-top: 5px;
}
.content_form td p.caution.right {
	position: static;
	margin-top: 5px;
	margin-left: 0;
}
.content_form .ness {
	display:block;
	position:absolute;
	top:0; bottom:0; right:5px; margin:auto;
	border:solid 1px #c00;
	color:#c00;
	padding:0px 5px;
	line-height:22px;
	height:20px;
}

}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	submit_btns
-------------------------------------------------------------*/
.submit_btns {
	width:520px;
	margin:0 auto;
}
.submit_btns .btn_detail {
	width:250px;
	margin-top:30px;
}
.submit_btns.wide {
	width:550px;
}
.submit_btns.wide .btn_detail.pdf {
	width:280px;
}
.submit_btns .btn_detail a,
.submit_btns .btn_detail input {
	padding:10px 0;
	font-size:16px;
	font-weight:normal;
}
.submit_btns .btn_prev {
	float:left;
}
.submit_btns .btn_next {
	float:right;
}
.submit_btns .btn_center {
	clear:both;
	float:none;
	margin:0 auto;
	padding-top:20px;
}
.submit_btns .btn_prev a:hover,
.submit_btns .btn_prev input:hover {
	background:#fff;
	color:#999;
}
.submit_btns .btn_estimate.btn_prev a:hover,
.submit_btns .btn_estimate.btn_prev input:hover {
	background:#ff9900;
	color:#fff;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.submit_btns {
	width:250px;
}
.submit_btns .btn_detail.btn_prev {
	margin-top:10px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.submit_btns,
.submit_btns.wide {
	width:100%;
	margin-top:20px;
}
.submit_btns.wide {
	margin-top:50px;
}
.submit_btns .btn_detail {
	width:48%;
	margin:0 auto;
}
.submit_btns .btn_detail.wide {
	width: 60%;
}
.submit_btns.wide .btn_prev,
.submit_btns.wide .btn_next {
	float:none;
}
.submit_btns .btn_detail.btn_prev {
	margin-top:0;
}
.submit_btns.wide .btn_detail.pdf {
	width: 80%;
	margin-bottom: 20px;
}
.submit_btns .btn_detail a,
.submit_btns .btn_detail input {
	font-size:14px;
	padding:8px 0;
}
.submit_btns .btn_detail.txts input {
	font-size:13px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	submit_3btns
-------------------------------------------------------------*/
.submit_3btns {
	width: 730px;
	margin: 20px auto;
}
.submit_3btns .btn_detail {
	width: 230px;
	margin-top: 30px;
}
.submit_3btns .btn_detail a,
.submit_3btns .btn_detail input {
	padding: 10px 0;
	font-size: 16px;
	font-weight: normal;
}
.submit_3btns .right {
	float: right;
}
.submit_3btns .center {
	float: right;
	margin-right: 20px;
}
.submit_3btns .left {
	float: left;
}
.submit_3btns .btn_prev a:hover,
.submit_3btns .btn_prev input:hover {
	background: #fff;
	color: #999;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.submit_3btns {
	width: 100%;
	margin-top: 10px;
}
.submit_3btns .btn_detail {
	width: 60%;
	margin: 10px auto 0;
}
.submit_3btns .btn_detail a,
.submit_3btns .btn_detail input {
	/*font-size: 14px;*/
	padding: 8px 0;
}
.submit_3btns .right,
.submit_3btns .center,
.submit_3btns .left {
	float: none;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.submit_3btns .btn_detail a,
.submit_3btns .btn_detail input {
	font-size: 14px;
}
}	/* for SP max-width: 480px */



/*-------------------------------------------------------------
	update_btns
-------------------------------------------------------------*/
.update_btns {
	width:100%;
}
.update_btns .btn_detail {
	float:left;
	width:160px;
	max-width: 160px;
	font-weight:normal;
	margin:20px 20px 0 0;
}
.update_btns .btn_detail.wide {
	width:250px;
	max-width: 250px;
}
.update_btns .btn_detail:last-child {
	margin-right:0;
}
.update_btns .btn_detail input {
	font-size: 14px;
	font-weight: normal;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.update_btns .btn_detail {
	float:none;
	width:250px;
	max-width: 250px;
	padding:0;
	font-weight:normal;
	margin:10px auto 0;
}
.update_btns .btn_detail:first-child {
	margin-top: 20px;
}
.update_btns .btn_detail:last-child {
	margin-right: auto;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.update_btns {}
.update_btns .btn_detail {
	width: 100%;
	padding: 0;
	margin: 10px auto 0;
}
.update_btns .btn_detail input {
	font-size:14px;
	padding:8px 0;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.caution
-------------------------------------------------------------*/
.caution {
	color:#c00;
}
.submit_btns .caution {
	clear:both;
	padding-top:20px;
	text-align:center;
	color:#c00;
	font-size:16px;
	font-weight:bold;
}
.cart_table + p.caution {
	margin-top:10px;
	line-height:1.5;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.submit_btns .caution {
	padding-top:10px;
	text-align:left;
	font-size:12px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.payment
-------------------------------------------------------------*/
.content_form dl.payment {}
.content_form dl.payment dt input {
	margin-right: 5px;
}
.content_form dl.payment dd {
	padding: 10px 20px 20px;
}
.content_form dl.payment dd:last-child {
	padding-bottom: 0;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.content_form dl.payment dd {
	font-size: 12px;
	line-height: 1.5;
	padding: 5px 15px 15px;
}
}	/* for SP max-width: 480px */

/*===============================================================

	pagetitle

===============================================================*/
.pagetitle {
	background:#f4f4f4;
	padding:50px 20px;
}
.pagetitle .title {
	font-size:30px;
	line-height:1.2;
}
.pagetitle .read {
	font-size:20px;
	line-height:1.2;
	margin-top:10px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.pagetitle {
	padding:20px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.pagetitle .title {
	font-size:20px;
	line-height:1.2;
}
.pagetitle .read {
	font-size:14px;
	line-height:1.2;
	margin-top:5px;
}
}	/* for SP max-width: 480px */

/*===============================================================

	.simulator

===============================================================*/
.simulator {
}
.simulator .content_width {
	width:1240px;
}
@media screen and (max-width: 1280px) {
.simulator .content_width {
	width:100%;
}
}	/* for tablet max-width: 768px */

/* タブレット以下 */
@media screen and (max-width: 768px) {
.simulator .content_width,
.simulator .navigation_wrp,
.simulator .pagetitle,
.simulator .bg_blue,
.simulator .footer_wrp {
	width:768px;
	min-width:768px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}

/*
.simulator .column_left {
	margin-top:-10px;
}
*/
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {

.simulator .content_width {
	width:768px;
}
.simulator .column_left {
	float:left;
	width:65.10%;
}
.simulator .column_right {
	float:right;
	width:30.20%;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	icon
-------------------------------------------------------------*/
.icon_info {
	width:24px;
	height:24px;
	border:solid 2px #861718;
	color:#861718;
	text-align:center;
	font-size:16px;
	line-height:24px;
	font-weight:bold;
	display:inline-block;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	border-radius:12px;
	position:relative;
	cursor:pointer;
}
.icon_info.active {
	border:solid 2px #ccc;
	color:#ccc;
}
.icon_close {
	width:26px;
	height:26px;
	position:relative;
	display:inline-block;
	white-space:nowrap; text-indent:100%; overflow:hidden;
	margin-top:1px;
	cursor:pointer;
}
.icon_close:before,
.icon_close:after {
	content:" ";
	position:absolute;
	width:26px; height:2px;
	background:#861718;
	top:10px; right:0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.icon_close:after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.icon_close:hover:before,
.icon_close:hover:after {
	background:#ccc;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	info_panel
-------------------------------------------------------------*/
.icon_info .info_panel {
	position:absolute;
	z-index:30;
	min-width:250px;
	top:-35px;
	left:22px;
	display:none;
}
.icon_info .info_panel_right {
	position:absolute;
	z-index:30;
	min-width:250px;
	max-width:250px;
	top:-35px;
	left:-250px;
	display:none;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	popbox
-------------------------------------------------------------*/
.popbox {
	position:relative;
	text-align:left;
	color:#fff;
	margin-top:30px;
}
.popbox .popbox_body {
	background:#861718;
	box-shadow:0px 0px 5px rgba(0, 0, 0, 0.20);
	margin-left:10px;
}
.popbox .popbox_arw {
	overflow:hidden;
	position:absolute;
	width:20px;
	height:20px;
	margin:auto;
	top:5px; bottom:auto; left:0; right:auto;
	z-index:1;
}
.popbox .popbox_arw:after {
	position: absolute;
	z-index:5;
	content:'';
	margin: auto;
	top:0; bottom:0; left:8px; right:auto;
	width: 30px;
	height: 30px;
	background: #861718;
	box-shadow:0px 0px 5px rgba(0, 0, 0, 0.20);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform:rotate(45deg);
}
.popbox .popbox_inner {
	padding:15px;
}
.popbox .popbox_body h3 {
	font-size:16px;
}
.popbox .popbox_body p {
	font-size:12px;
	line-height:1.4;
	margin-top:5px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.popbox .popbox_inner {
	padding:10px;
	text-align:left;
}
.popbox .popbox_body h3 {
	font-size:12px;
	line-height:20px;
	float:left;
	width:4.5em;
}
.popbox .popbox_body p {
	font-size:12px;
	line-height:20px;
	margin-top:0px;
	padding-left:4.5em;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	右
-------------------------------------------------------------*/
.info_panel_right .popbox {
	position:relative;
	margin-top:30px;
}
.info_panel_right .popbox .popbox_body {
	margin-right:15px;
}
.info_panel_right .popbox .popbox_arw {
	position:absolute;
	width: 20px;
	height: 20px;
	margin:auto;
	top:5px; bottom:auto; left:auto; right:4px;
	z-index:1;
}
.info_panel_right .popbox .popbox_arw:after {
	top:0; bottom:0; left:auto; right:8px;
}


/*===============================================================

	sim_function_btns

===============================================================*/

.sim_function_btns {
	padding:10px 20px;
}
.sim_function_btns .content_width {
	position:relative;
}
.sim_function_btns .btn_detail {
	margin:0;
	float:left;
	width:250px;
}
.sim_function_btns .btn_detail_white {
	margin:0;
	float:right;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
.sim_function_btns {
	padding:10px 20px;
	width:100%;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.simulator .sim_function_btns .content_width {
	width:100%;
	min-width:100%;
}
.sim_function_btns .btn_detail {
	width:250px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.sim_function_btns .btn_detail {
	width:48%;
}
.sim_function_btns .btn_detail a {
	padding:5px;
}
}	/* for SP max-width: 480px */


/*-------------------------------------------------------------
	menupanel
-------------------------------------------------------------*/
.menupanel {
	width:807px !important;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	position:absolute;
	padding:20px;
	background:#fff;
	top:52px;
	left:20px;
	z-index:5;
	width:100%;
	display:none;
}

.menupanel .panel_header h3 {
	float:left;
	font-size:20px;
}
.menupanel .closebtn {
	width:24px;
	height:24px;
	position:relative;
	display:inline-block;
	white-space:nowrap; text-indent:100%; overflow:hidden;
	float:right;
}
.menupanel .closebtn a {
	z-index:10;
	width:24px;
	height:24px;
	display:block;
	position:relative;
}
.menupanel .closebtn a:before,
.menupanel .closebtn a:after {
	content:" ";
	position:absolute;
	width:25px; height:2px;
	background:#861718;
	top:10px; right:0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index:10;
}
.menupanel .closebtn a:after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.menupanel .closebtn a:hover:before,
.menupanel .closebtn a:hover:after {
	background:#ccc;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */


/*-------------------------------------------------------------
	menupanel .panel_body
-------------------------------------------------------------*/
.menupanel .content_left {
	float:left;
	width:30%;
}
.menupanel .content_right {
	float:right;
	width:65%;
}
.menupanel .panel_body .title {
	border-top:solid 2px #861718;
	padding:30px 0;
}
.menupanel .panel_body .title h4 {
	font-size:18px;
	line-height:35px;
	color:#6f0f10;
	float:left;
}
.menupanel .panel_body .title .searxhbox {
	float:right;
}
.menupanel .panel_body .title .searxhbox .inputfld,
.menupanel .panel_body .title .searxhbox .btn {
	display:inline-block;
}
.menupanel .panel_body .title .searxhbox .inputfld .txtinput {
	width:350px;
}
.menupanel .panel_body .title .searxhbox .btn a {
	display:inline-block;
	background:#861718;
	line-height:35px;
	padding:0 15px;
	color:#fff;
	text-decoration:none;
	border-radius:3px;
}
.menupanel .switch_wrp .switch_contents,
.menupanel .switch_wrp .switch_menu {
	float:none;
	width:100%;
}
.menupanel .panel_body .switch_contents .item a {
	text-decoration:none;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */



/*-------------------------------------------------------------
	menupanel .switch_contents
-------------------------------------------------------------*/
.menupanel .switch_contents {
	border:solid 1px #ddd;
	padding:15px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}
.menupanel .switch_contents .item .thumb {
	width:50px;
	float:left;
}
.menupanel .switch_contents .item .txt {
	padding-left:60px;
}
.menupanel .switch_contents .item + .item {
	margin-top:20px;
}


/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */


/*===============================================================

	section_sim

===============================================================*/
.section_sim {
}
.section_sim .section_inner {
	padding-top:10px;
}
.section_sim .boxshadow {
	padding:20px;
	margin-top:30px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.section_sim .boxshadow {
	padding:15px;
	margin-top:20px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	content_header
-------------------------------------------------------------*/
.content_header {
}
.content_header .title {
	font-size:20px;
	line-height:1.2;
	color:#6f0f10;
}
.content_header .title .caption {
	font-size:14px;
	color:#999;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	product_header
-------------------------------------------------------------*/
.product_header {
}
.product_header .thumb {
	width:50px;
	float:left;
}
.product_header .title {
	padding-left:60px;
	margin-top:12.5px;
}
.product_header .icons {
	float:right;
	margin-top:10px;
}
.product_header .icons li {
	float:left;
	margin-left:8px;
}


/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	recommend_productlist
-------------------------------------------------------------*/
.recommend_productlist {
	margin-top:0px;
}
.recommend_productlist .grid {
	margin-top:20px;
	text-align:center;
}
.recommend_productlist .grid p {
	font-size:12px;
	line-height:1.2;
	margin-top:5px;
}
.recommend_productlist a {
	color:#333;
	text-decoration:none;
}
.recommend_productlist a:hover img {
	opacity:0.7;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */


/*===============================================================

	content_body

===============================================================*/
.content_body {
}
.content_body .item_container {
}
.content_body .item {
	float:left;
	padding-left:20px;
	padding-top:20px;
	vertical-align:middle;
}
.item_long {
	width:380px;
}
.item_harf {
	width:180px;
}
.item_short {
	width:80px;
}
.content_body .item:first-child {
	padding-left:0;
}
.content_body .item .icon_info {
	margin-top:25px;
	margin-left:-10px;
}
.content_body h3 {
	font-size:20px;
	line-height:1.2;
	margin-top:0;
}
.content_body * + h3 {
	margin-top:25px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	dropdown
-------------------------------------------------------------*/
.dropdown {
	display:inline-block;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	width:100%;
}

.dropdown .select_wrap {
	width:100%;
}
.dropdown .label {
	font-size:12px;
	line-height:1.5;
}
.dropdown .label + .select_wrap {
	margin-top:5px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	calculator
-------------------------------------------------------------*/
.calculator {
	background:#f6f2ef;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	margin-top:20px;
	padding:20px 15px;
	width:100%;
	table-layout: auto;
}
.calculator ,
.calculator th,
.calculator td {
	border:0;
}
.calculator td {
	padding:0;
	margin:0;
	width:auto;
	font-size:0;
	line-height:5px;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	vertical-align:top;
	position:relative;
}
.calculator .dropdown {
	width:auto;
	margin:0;
	margin-right:5px;
}
.calculator .dropdown .select_wrap {
	min-width:auto;
	padding-right:15px;
	width:auto;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	height:30px;
	line-height:1;
}
.calculator td * + .icon_info {
	position:absolute;
	top:3px;
}

.calculator .icon_close {
}
.calculator .icon_close:after,
.calculator .icon_close:before {
	background:#d89898;
}
.content_body .calculator .icon_info {
}
.calculator .price {
	line-height:1;
	vertical-align:baseline;
}
.calculator .total {
	text-align:right;
}
.calculator .price p {
	font-size:25px;
	line-height:30px;
	font-weight:bold;
	position:relative;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	white-space:nowrap;
}
.calculator .price .label,
.calculator .label {
	font-size:12px;
	line-height:15px;
	margin-top:5px;
	font-weight:normal;
}
.calculator .icon,
.calculator .equal {
	color:#d89898;
	font-size:30px;
	line-height:30px;
	padding:0 5px;
}
.calculator .price .subtotal {
	font-size:20px;
	font-weight:bold;
	padding-right:10px;
}
.price .unit {
	font-size:15px;
	font-weight:bold;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.calculator .dropdown .select_wrap {
	height:auto;
	padding-right:20px;
}
.calculator td {
	display:table-cell;
}
}	/* for SP max-width: 480px */


/*===============================================================

	switch_wrp

===============================================================*/
.switch_wrp {
	margin-top:20px;
}
.switch_wrp .switch_menu {
	float:left;
	width:48%;
}
.switch_wrp .switch_contents {
	float:right;
	width:48%;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
/*
.switch_wrp .switch_menu {
	width:30%;
	margin-left:-20px;
}
.switch_wrp .switch_contents {
	width:70%;
}
*/
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.switch_menu
-------------------------------------------------------------*/
.switch_menu {
}
.switch_menu ul {
	border-bottom:solid 1px #ddd;
}
.switch_menu li a {
	text-align:left;
	display:block;
	font-size:14px;
	line-height:20px;
	padding:10px;
	color:#6f0f10;
	background:#eee;
	border-top:solid 1px #ddd;
	position:relative;
	text-decoration:none;
}
.switch_menu li.active a,
.switch_menu li a:hover {
	background:#861718;
	color:#fff;
	text-decoration:none;
}
.switch_menu li a span {
	float:right;
	font-size:12px;
}
.switch_menu li.active a:after {
	content: '';
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: -29px;
	width: 10px;
	height: 0px;
	border-top: 20px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 20px solid transparent;
	border-left: 10px solid #861718;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	switch_contents
-------------------------------------------------------------*/
.switch_contents {
	text-align:left;
}
.switch_contents h3 {
	font-size:15px;
	line-height:1.5;
}
.switch_contents p {
	font-size:14px;
	line-height:1.6;
	margin-top:5px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */


/*===============================================================

	flowbox

===============================================================*/
.flowbox {
}
.flowbox  .popbox {
	float:left;
	margin-top:0;
}
.flowbox .popbox:last-child .popbox_body {
	margin-right:0;
}
.flowbox2  .popbox {
	width:50%;
}
.flowbox3  .popbox {
	width:33.3%;
}
.flowbox4  .popbox {
	width:25%;
}
.flowbox5  .popbox {
	width:20%;
}
.flowbox6  .popbox {
	width:16.6%;
}
.flowbox7  .popbox {
	width:14%;
}
.flowbox + .flowbox {
	margin-top:50px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.flowbox2  .popbox,
.flowbox3  .popbox,
.flowbox4  .popbox,
.flowbox5  .popbox,
.flowbox6  .popbox,
.flowbox7  .popbox {
	width:100%;
}
.flowbox + .flowbox {
	margin-top:20px;
}
}	/* for SP max-width: 480px */


/*-------------------------------------------------------------
	.flowbox .popbox_body
-------------------------------------------------------------*/
.flowbox .popbox .popbox_body {
	margin-left: 0px;
	margin-right: 20px;
	background:#fff;
	color:#861718;
	border:solid 2px #861718;
}
.flowbox .popbox .popbox_body p {
	font-size:14px;
}
.flowbox .popbox.active .popbox_body {
	background:#861718;
	color:#fff;
}
.flowbox .popbox_right .popbox_arw {
	position:absolute;
	width:20px;
	height:50px;
	margin:auto;
	top:0; bottom:0; left:auto; right:0;
	z-index:1;
}
.flowbox .popbox_right .popbox_arw:after {
	top:0; bottom:0; left:auto; right:15px;
}
/* タブレット以下 */
@media screen and (max-width: 768px) {
.flowbox .popbox .popbox_body p {
	font-size:11px;
}
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.flowbox .popbox_right {
	position:relative;
	margin-top:0;
}
.flowbox .popbox_right .popbox_body {
	margin-left:0;
	width:100%;
	border:solid 1px #861718;
}
.flowbox .popbox_right .popbox_arw {
	position:relative;
	width:100%;
	height:10px;
	margin:auto;
	overflow:hidden;
}
.flowbox .popbox_right .popbox_arw:after {
	left: 0;
	right:0;
	top: auto;
	bottom:10px;
	width: 30px;
	height: 30px;
}
.flowbox .popbox .popbox_body p {
	font-size:14px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	stepnumber
-------------------------------------------------------------*/
.flowbox .stepnumber {
	position:absolute;
	top:-10px;
	left:-10px;
	width:40px;
	height:40px;
	border-radius:50% 50%;
	background:#00A0E8;
	color:#fff;
	font-size:18px;
	line-height:40px;
	font-weight:bold;
	text-align:center;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.flowbox .stepnumber {
	top:-10px;
	left:-10px;
}
}	/* for SP max-width: 480px */


/*===============================================================

	step_circle

===============================================================*/
.step_circle {
	margin-bottom:50px;
}
.step_circle li {
	float:left;
	width:25%;
	position:relative;
	text-align:center;
}
.step_circle li {
	float:left;
	width:33.333%;
	position:relative;
	text-align:center;
}
.step_circle_4 li {
	width:25%;
}
.step_circle_5 li {
	width:20%;
}
.step_circle_6 li {
	width:16.666%;
}
.step_circle_7 li {
	width:14.28%;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.step_circle {
	margin-bottom:20px;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
	.step_circle .num
-------------------------------------------------------------*/
.step_circle .num {
	position:absolute;
	top:0; left:0; right:0; margin:auto;
	width:50px;
	height:50px;
	font-size:25px;
	line-height:44px;
	font-weight:bold;
	background:#fff;
	border:solid 3px #861718;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	color:#861718;
	border-radius:50%;
	z-index:2;
}
.step_circle .past .num {
	background:#ddd;
	color:#861718;
}
.step_circle .active .num {
	background:#861718;
	color:#fff;
}

.step_circle li:before,
.step_circle li:after {
	content:' ';
	width:50%;
	height:3px;
	position:absolute;
	background:#861718;
	top:25px;
	z-index:1;
}
.step_circle li:before {
	left:0;
}
.step_circle li:after {
	right:0;
}
.step_circle li:first-child:before {
	content:none;
}
.step_circle li:last-child:after {
	content:none;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.step_circle .num {
	width:30px;
	height:30px;
	font-size:15px;
	line-height:28px;
	border:solid 2px #861718;
}
.step_circle li:before,
.step_circle li:after {
	height:2px;
	top:15px;
}
}	/* for SP max-width: 736px */

/*-------------------------------------------------------------
 .step_circle .txt
-------------------------------------------------------------*/
.step_circle .txt {
	padding-top:60px;
	color:#861718;
	font-size:16px;
	font-weight:bold;
}

/* タブレット以下 */
@media screen and (max-width: 960px) {
}	/* for tablet max-width: 960px */

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
.step_circle .txt {
	padding-top:35px;
	font-size:12px;
	line-height:1.2;
}
.step_circle .txt.small {
	font-size:10px;
	line-height:1.2;
}
}	/* for SP max-width: 736px */

/*===============================================================

	box

===============================================================*/
.box {
	border:solid 1px #ddd;
	padding:30px;
	margin-top:20px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.box {
	padding:10px;
	margin-top:10px;
}
}	/* for SP max-width: 480px */

/*===============================================================

	message_container

===============================================================*/
.message_container h3 {
	font-size:16px;
}
.message_container.message_error {
	color: #d62c1a;
	background-color: #fdf3f2;
	border-color: #fbdbdd;
}

/*===============================================================

	headline_wrp

===============================================================*/
.headline_wrp {
	text-align:left;
	position:relative;
	padding-bottom:30px;
}
.headline_wrp .title {
	font-size:25px;
	line-height:1.5;
}
.section * + .headline_wrp {
	margin-top:50px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.headline_wrp {
	padding-bottom:10px;
}
.headline_wrp .title {
	font-size:20px;
}
.section .headline + .headline_wrp {
	margin-top:20px;
}
}	/* for SP max-width: 480px */

/*-------------------------------------------------------------
	.headline_wrp .btn_left
-------------------------------------------------------------*/
.headline_wrp .btn_left {
	position:absolute;
	top:0;
	right:0;
	margin:0;
	text-align:right;
}
.headline_wrp .btn_left a,
.headline_wrp .btn_left input {
	padding:5px 15px;
	font-size:14px;
	width:auto;
	display:inline-block;
	font-weight:normal;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
.headline_wrp .btn_left {
	position:static;
	text-align:left;
}
.headline_wrp .btn_left a,
.headline_wrp .btn_left input {
	padding:5px 10px;
	font-size:14px;
	width:auto;
	margin-top:5px;
}
}	/* for SP max-width: 480px */


/*===============================================================

	inline_module

===============================================================*/
.inline_module {
	padding:10px;
	margin-top:10px;
	background:#fafafa;
	display:inline-block;
}
.inline_module .item {
	display:inline-block;
}
.inline_module .item + .item {
	margin-left:10px;
}

/* タブレット以下 */
@media screen and (max-width: 768px) {
}	/* for tablet max-width: 768px */

/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
}	/* for SP max-width: 480px */


/*===============================================================

	2017/11/10　追加

===============================================================*/
/*-------------------------------------------------------------
	カートボタン
-------------------------------------------------------------*/
.content_cart + .submit_3btns .btn_detail a,
.submit_3btns .btn_detail input {
	background-color:#DAD9D6;
	border:solid 1px #DAD9D6;
	color:#000;
}
.content_cart + .submit_3btns .btn_detail a:hover,
.submit_3btns .btn_detail input:hover {
	background-color:#DAD9D6;
	border:solid 1px #DAD9D6;
	color:#000;
	opacity:0.7 !important;
}
.content_cart + .submit_3btns .btn_order a,
.content_cart + .submit_3btns .btn_order input {
	background-color:#FF0000;
	border:solid 1px #FF0000;
	color:#fff;
}
.content_cart + .submit_3btns .btn_order a:hover,
.content_cart + .submit_3btns .btn_order input:hover {
	background-color:#FF0000;
	border:solid 1px #FF0000;
	color:#fff;
	opacity:0.7 !important;
}
.content_cart + .submit_3btns .btn_estimate a,
.content_cart + .submit_3btns .btn_estimate input {
	background-color:#A30B1A;
	border:solid 1px #A30B1A;
	color:#fff;
}
.content_cart + .submit_3btns .btn_estimate a:hover,
.content_cart + .submit_3btns .btn_estimate input:hover {
	background-color:#A30B1A;
	border:solid 1px #A30B1A;
	color:#fff;
	opacity:0.7 !important;
}

.content_cart + .submit_3btns .btn_deactive a,
.content_cart + .submit_3btns .btn_deactive input,
.content_cart + .submit_3btns .btn_deactive a:hover,
.content_cart + .submit_3btns .btn_deactive input:hover {
	opacity: 1 !important;
}

/*-------------------------------------------------------------
	カートボタン
-------------------------------------------------------------*/
.product_detail2 .btn_detail.favorite {
	width:250px;
	margin:0;
	margin-top: 0;
	margin-bottom: 20px;
}
.product_detail2 .btn_detail.favorite a {
	font-weight: normal;
	text-decoration:none;
	background:#FF0000;
	border:solid 1px #FF0000;
	padding:10px 0;
	border-radius:3px;
	opacity:1 !important;
}
.product_detail2 .btn_detail.favorite a:hover {
	background:#FF0000;
	opacity:0.7 !important;
}
.product_detail2 .btn_detail.favorite a:after {
	content:none;
}

.estimate {
	background:#a4a4a4;
}


/*===============================================================
	/assets_v9/common/css/newdesign.css
===============================================================*/
/* clearfix */
.cf:after, .u-2cols-container .o-row:after, .js-radioSelectBox-container:after, .ui-spinner:after, .content:after, .content_cart.a-EC-view:after, .section_inner.l-section-wide .content_cart.a-EC-view:after, .l-categoryBox-wide .sidemenu_select dd:after, .l-categoryBox-wide .topFilterCategory dd:after, .m-topFilterBox .o-box-body:after, .m-product-detail:after, .m-charges-model:after, .m-charges-model > ul > li > ul > li:after, .m-product-option .charges_list:after, .l-cartListBox:after, .l-cartTotalBox:after, .o-row-total_notax:after, .l-cartItem:after, .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row:after, .m-bank-payment:after,
.m-credit-payment:after, .m-payment-item .o-radio-paymentItem:after, .l-orderSideBox:after, .l-itemDetailMainBox:after, .m-itemDetail-head:after, .l-itemDetailSideBox:after, .m-itemDetailSideBox-inner .o-row:after, .m-itemImage-5box .o-itemimage-small:after, .l-productOption-multiSelect:after {
  content: " ";
  display: block;
  clear: both;
}

.section_inner {
  width: 100%;
  max-width: 1280px;
  box-sizing: border-box;
}

.content_width,
.localnav,
.localnav .navlist,
.section_inner.wideSection {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}
.content_width,
.localnav .navlist {
  padding: 0 5%;
}
.localnav .navlist {
  margin-left: -12px;
}
.section_inner.wideSection {
  padding: 50px 5% 70px 5%;
}
section {
  margin: 0 0 40px 0;
}
.headline + .content {
  margin-top: 40px;
}
@media screen and (max-width: 834px) {
  .headline + .content {
	margin-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  .content_width {
	padding: 0;
  }
  .section_inner.wideSection {
	padding: 20px;
  }
  .localnav .navlist {
	padding: 0 10px;
  }
}
@media screen and (max-width: 480px) {
  section {
	margin: 0 0 30px 0;
  }
  .headline + .content {
	margin-top: 20px;
  }
  .localnav .navlist {
	margin-left: 0;
	padding: 40px 0 0 0;
  }
  .localnav .navlist ul {
	  display: none;
  }
}

.set-right {
  text-align: right !important;
}

.set-center {
  text-align: center !important;
}

.set-left {
  text-align: left !important;
}
h3.title {
  margin: 30px 0 10px;
  font-size: 1.6em;
  line-height: 1.5;
}

/* 基本テーブルスタイル */
table.basic {
  border-collapse: collapse;
  width: 100%;
  margin: 0 0 20px;
}
table.basic tr {
  border-top: 1px solid #ddd;
  background: #fff;
}
table.basic.itemTable td ul.costs li {
  margin-bottom: 5px;
}

table.basic.itemTable .gray {
	color: #666;
}
table.basic.itemTable td ul.costs:last-of-type li:last-of-type {
  margin-bottom: 0;
}
@media only screen and (min-width: 769px){/* PCサイズのみ */
  table.basic tr.childItem {
	border-top: 1px dotted #ddd;
  }
  table.basic tr.childItem .name {
	padding: 5px 10px 5px 20px;
  }
  /* PCサイズのみ一覧のhoverカラー設定
  ※rowspanが変化するitemTableクラスのテーブルはtbodyにスタイルをかける */
  table.basic tbody tr:not(.canceled):hover,
  table.basic.itemTable tbody:hover {
	background: #f4f4f4;
  }
  /* 要素内のスクロールを許可する(table等でコンテンツが領域外にはみ出る対策) */
  .scroll_box_x {
	max-width: 100%;
	overflow-x: auto;
  }
  .scroll_box_x table.basic thead th {
	white-space: nowrap;
  }
  table.basic.itemTable td ul.costs li {
	font-size: 13px;
  }
}
table.basic thead tr th {
	color: #fff;
	font-weight: bold;
	text-align: center;
}
table.basic th,
table.basic td {
	border: none;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	padding: 5px 10px;
}
table.basic td.no {
	word-break: break-all;
}
table.basic td.name {
	word-break: break-word;
}
@media screen and (min-width: 769px) { /*769px以上*/
	table.basic th,
	table.basic td {
		position: static; /*style.css打ち消し　border消え対策*/
	}
}
table.basic td.detail {
  width: 5%;
  text-align: center;
}
table.basic td.detail a {
  font-size: 0.8em;
  display: inline-block;
  padding: 4px 10px;
  border-radius: 0.5em;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
}
table.basic td.detail a.remove {
	color: #d64747;
	border-color: #d64747;
}
table.basic td.detail a.remove:hover {
	color: #fff;
	background: #d64747;
}
table.basic td.action a {
	padding: 4px 8px;
}
table.basic td.action a i {
	margin-right: 2px;
}
@media screen and (max-width: 768px) {
	table.basic td.detail a {
	  padding: 8px 10px;
	}
}
table.basic .id {
  width: 5%;
  text-align: center;
}

table.basic td.employee-type {
  white-space: nowrap;
}

/* セレクタブルテーブル */
table.selectable_table tbody:hover {
  cursor: pointer;
}
table.selectable_table label.checkbox_text {
  vertical-align: top;
  z-index: 2;
  margin: 0;
  padding: 2px 2px 2px 12px;
}
@media only screen and (max-width: 768px) {
	table.basic,
	table.basic tbody,
	table.basic tr,
	table.basic th,
	table.basic td {
		display: block;
		max-width: 100%;
	}
	table.basic {
	  border-bottom: none;
	  box-sizing: border-box;
	  border-radius: 3px;
	}
	table.basic thead {
	  display: none;
	}
	table.basic tbody tr {
	  margin: 36px 0 0 0;
	  border: 1px solid #ddd;
	  border-radius: 3px;
	  position: relative;
	}
	table.basic.adjust_mt tbody tr:first-of-type {
	  margin-top: 0;
	}
	table.basic tbody tr.haveChild {
	  border-bottom: none;
	  border-radius: 3px 3px 0 0;
	}
	table.basic tbody tr.childItem {
	  margin: 0;
	  border-radius: 0;
	}
	table.basic tbody tr.childItem:not(:last-of-type) {
	  border-bottom: none;
	}
	table.basic tbody tr.childItem:last-of-type {
	  border-radius: 0 0 3px 3px;
	}
	table.basic tbody tr td {
	  width: 100%!important;
	  text-align: left!important;
	  padding: 5px 10px;
	  border: none;
	  border-bottom: 1px dotted #ddd;
	  font-size: 12px;
	  overflow: hidden;
	  min-height: 2.4em;
	}
	table.basic tbody tr td ul {
	  display: inline-block;
	}
	table.basic.itemTable td ul.costs {
	  display: block;
	  margin-top: 5px;
	}
	table.basic tbody tr td ul li {
	  font-size: 12px;
	}
	table.basic td.detail {
	  margin: 0 auto;
	  max-width: 300px;
	  text-align: center!important;
	}
	table.basic td.detail a {
	  display: block;
	  font-size: 1em;
	}
	table.basic tbody tr td:last-of-type {
	  border-bottom: none;
	}
	table.basic tbody tr:not(.childItem) td:first-of-type,
	table.basic tbody tr td.id+td:nth-of-type(2) {
	  font-size: 14px;
	  padding: 10px;
	  background: #f4f4f4;
	  font-weight: bold;
	}
	table.basic tbody tr td .sp {
	  display: inline-block;
	  font-size: 11px;
	  line-height: 1.4;
	  border-radius: 2px;
	  margin: -2px 5px 0 -5px;
	  padding: 4px;
	  color: #666;
	  border: 1px solid #ddd;
	  background: #fff;
	  vertical-align: middle;
	}
	table.basic tbody tr td.id {
	  width: auto!important;
	  padding: 5px 10px!important;
	  font-size: 12px!important;
	  font-weight: normal!important;
	  position: absolute;
	  content: "";
	  display: inline-block;
	  left: -1px;
	  top: -26px;
	  background: #f4f4f4;
	  border: 1px solid #ddd;
	  text-align: center;
	  border-radius: 4px;
	}
	table.basic tbody tr td.id .sp {
	  border: none;
	  background: transparent;
	  margin-right: 0;
	}
	table.basic tbody tr.canceled td.id,
	table.basic tbody tr.canceled td:first-of-type,
	table.basic tbody tr.canceled td.id+td:nth-of-type(2),
	table.basic tbody tr.canceled td .sp {
	  background: #eee;
	}
	table.selectable_table tbody tr {
	  margin: 20px 0 0 0;
	}
	table.selectable_table tbody tr td.id {
	  border: none;
	  top: 4px;
	  left: 0;
	}
	table.selectable_table tbody tr td.id:first-of-type:not(.checkbox) {
		padding-left: 36px!important;
		background: transparent;
		z-index: 2;
	}
	table.selectable_table tbody tr td.id+td:nth-of-type(2) {
	  padding-left: 32px!important;
	}
	table.selectable_table label.checkbox_text {
	  padding: 0 2px 2px 24px;
	  min-height: 20px;
	}
	table.selectable_table td.id+td:nth-of-type(2).checkbox {
	  padding-left: 10px!important;
	}
}

/* 選択・解除ボタン */
.selectable_table_buttons,
.operation_buttons {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	margin: 20px 0;
}
.selectable_table_buttons button {
	cursor: pointer;
	display: block;
	border: solid 1px #ccc;
	border-radius: 3px;
	margin: 0;
	padding: 10px 20px;
	color: #333;
	text-align: center;
	font-size: 100%;
	line-height: 1.2;
	background-color: #fff;
}
.selectable_table_buttons button:hover {
	background-color: #eee;
}
.selectable_table_buttons .select_all {
	border-right: none;
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}
.selectable_table_buttons .deselect_all {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}
.operation_buttons .baseBtn {
	min-width: 140px;
	margin-right: 10px;
}
.operation_buttons [class^="icon-"].baseBtn::before {
	margin-top: -9px;
	font-size: 16px;
}
@media screen and (max-width: 480px) {
	.operation_buttons {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	.operation_buttons .baseBtn {
		width: 49%;
		min-width: auto;
		margin: 0;
	}
}
.notice,
.caution,
.has-error,
.warning_msg {
  color: #d64747;
  line-height: 1.2;
}
.has-error {
  margin-top: 5px!important;/*style.css打ち消し*/
  font-weight: bold;
}
.warning_msg {
  margin: 10px 5px;
  padding: 5px 10px;
}
.disabledItem .warning_msg {
  text-align: center;
  border: 1px solid #d64747;
  border-radius: 2px;
}
div[class$="[quantity]"] .has-error {
  text-align: right;
}

/*-------------------------------------------------------------
  input text
-------------------------------------------------------------*/
input[type='text'],
input[type='password'] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 36px;
  display: inline-block;
  padding: 3px 6px 0px;
  background: #fff;
  border: 1px solid #c8c8c8;
  border-radius: 4px;
  line-height: 1;
  font-size: 16px;
  outline: none;
}

input[type='text']:placeholder-shown,
input[type='password']:placeholder-shown {
  color: #bbb;
}

input[type='text']:focus,
input[type='password']:focus {
  color: #333;
  -webkit-box-shadow: 0px 0px 2px 2px #ffd8d8;
  box-shadow: 0px 0px 2px 2px #ffd8d8;
}

input[type='text']::-webkit-input-placeholder,
input[type='password']::-webkit-input-placeholder {
  color: #bbb;
}

input[type='text']:-moz-placeholder,
input[type='password']:-moz-placeholder {
  color: #bbb;
  opacity: 1;
}

input[type='text']::-moz-placeholder,
input[type='password']::-moz-placeholder {
  color: #bbb;
  opacity: 1;
}

input[type='text']:-ms-input-placeholder,
input[type='password']:-ms-input-placeholder {
  color: #bbb;
}

input[type='text'].alertRed {
  background: #ffd8d8;
}

input.input_error[type='text'],
input.input_error[type='password'],
textarea.input_error {
	background-color: #FCE4E3;
}

.u-zipcode-box {
  position: relative;
  width: 100%;
}
input[type='text'].u-zipcode {
  width: 8em !important;
}
.u-zipcode-box > .btn_detail {
  position: absolute;
  top: 0;
  left: 8.5em;
}

textarea {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  padding: 3px 6px 0px;
  background: #fff;
  border: 1px solid #c8c8c8;
  border-radius: 4px;
  font-size: 16px;
  outline: none;
}

textarea:placeholder-shown {
  color: #bbb;
}

textarea:focus {
  color: #333;
  -webkit-box-shadow: 0px 0px 2px 2px #ffd8d8;
  box-shadow: 0px 0px 2px 2px #ffd8d8;
}

textarea::-webkit-input-placeholder {
  color: #bbb;
}

textarea:-moz-placeholder {
  color: #bbb;
  opacity: 1;
}

textarea::-moz-placeholder {
  color: #bbb;
  opacity: 1;
}

textarea:-ms-input-placeholder {
  color: #bbb;
}

textarea.alertRed {
  background: #ffd8d8;
}

textarea.u-zipcode {
  width: 8em !important;
}

/*-------------------------------------------------------------
  file upload
-------------------------------------------------------------*/
label.fileupload {
  border-radius: 5px;
  padding: 6px;
  margin-right: 10px;
  display: inline-block;
  position: relative;
  text-align: center;
}
label.fileupload {
  border: 1px solid #c8c8c8;
  background: #fff;
}
label.fileupload input[type='file'] {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
}

label.fileupload input[type='text'] {
  border: none;
  width: 30px;
}

.uploaded_file .delete,
.file_delete_button,
.fileClear,
.delete_inherit_file,
.btn_delete {
  display: inline-block;
  padding: 6px;
  vertical-align: middle;
  color: #fff;
  background: #d64747;
  padding: 3px 6px;
  margin: 0 8px;
  border-radius: 4px;
  cursor: pointer;
  border: none;
  text-decoration: none;
}
@media screen and (max-width: 480px) {
	.uploaded_file .delete,
	.file_delete_button,
	.fileClear,
	.delete_inherit_file,
	.btn_delete {
		margin: 3px 8px;
	}
}
.btn_delete:hover {
	color: #fff;
	background: #d64747;
}
.uploaded_file .delete i,
.file_delete_button i,
.btn_delete i {
  margin-right: 2px;
  color: #fff;
}

/*-------------------------------------------------------------
  radio, checkbox
-------------------------------------------------------------*/
input[type=radio],
input[type=checkbox] {
  display: none!important;
}
.cms-content input[type=radio],
.cms-content input[type=checkbox] {
  display: inline-block!important;
}
label.radio_text, label.checkbox_text {
  display: inline-block;
  box-sizing: border-box;
  position: relative;
  margin: 0 10px 8px 0;
  padding: 2px 2px 2px 24px;
  cursor: pointer;
  line-height: 1.2;
}
@media screen and (max-width: 480px) {
  label.radio_text, label.checkbox_text {
	display: block;
  }
}
label.radio_text .inputLabel, label.checkbox_text .inputLabel {
  vertical-align: top;
}
input[type=radio] + .inputLabel:before,
input[type=checkbox] + .inputLabel:before {
  position: absolute;
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  top: 1px;
  left: 0;
  display: block;
  background: #fff;
  vertical-align: top;
}
input[type=radio] + .inputLabel:before {
  border: 1px solid #a2a2a2;
  border-radius: 50%;
}
input[type=radio] + .inputLabel.widget-store-payment-confirm:before {
	display: none;
}
input[type=checkbox] + .inputLabel:before {
  border: 1px solid #c8c8c8;
}
input[type=radio] + .inputLabel:after,
input[type=checkbox] + .inputLabel:after {
  transition: opacity 0.1s linear;
  position: absolute;
  content: '';
  display: block;
  opacity: 0;
}
input[type=radio] + .inputLabel:after {
  width: 10px;
  height: 10px;
  top: 5px;
  left: 4px;
  border-radius: 50%;
}
input[type=radio] + .inputLabel.widget-store-payment-confirm:after {
	display: none;
}
input[type=checkbox] + .inputLabel:after {
  width: 5px;
  height: 14px;
  top: -2px;
  left: 5px;
  transform: rotate(45deg);
}
input[type=radio]:checked + .inputLabel:after,
input[type=checkbox]:checked + .inputLabel:after {
  opacity: 1;
}
span.confirm-checked {
  min-width: 20px;
  min-height: 20px;
  padding-left: 20px;
  display: inline-block;
  position: relative;
}
span.confirm-checked::before {
  position: absolute;
  content: '';
  display: block;
  width: 4px;
  height: 10px;
  top: 2px;
  left: 6px;
  transform: rotate(45deg);
}










/*===============================================================

	pankuzu

===============================================================*/

.pankuzu li {
  max-width: 100%;
}
/* SP向けレイアウトの指定：～480px */
@media only screen and (max-width: 480px) {
  .pankuzu {
	display: block;
  }
}  /* for SP max-width: 480px */


/*-------------------------------------------------------------
  ヘッダー
-------------------------------------------------------------*/
.header {
	min-height: 90px;
	padding: 5px 5%;
	height: auto;
	position:relative;
	box-sizing: border-box;
}
.header .cf {
	padding: 0 5px;
}
.header .header-content {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header .nav,
.header .logo {
	width: auto;
	box-sizing: border-box;
}
.header .logo {
	width: 300px;
	max-width: 100%;
}
.header .logo span {
	font-weight: bold;
	color: #898989;
}
.header .logo a {
	color: #333;
	text-decoration: none;
	display: block;
}
.header .logo img {
	display: block;
	max-width: 100%;
	max-height: 100%;
}
.header_wrp {
	width: 100%;
	background: #fff;
	z-index: 2000;
}
.header_wrp .username {
	height: auto;
	word-break: break-all;
	line-height: 1.3;
}
.header .nav ul {
}
.header .nav ul li {
	float:left;
	width:80px;
	text-align:center;
	font-size:12px;
	line-height:15px;
	position:relative;
}
.header .nav ul li a {
	display:block;
	text-decoration:none;
	color:#333;
	padding-top:50px;
}
@media screen and (min-width: 769px) {
  .username.pcOnly {
	display: block;
  }
}
@media screen and (max-width: 1280px) {
  .header {
	padding: 5px 65px 5px 5%;
  }
}
@media screen and (max-width: 768px) {
  .header {
	width: 100%;
	padding: 0;
	height: auto;
	min-height: 60px;
	background :#fff;
	z-index: 500;
	text-align: center;
	border-bottom: 1px solid #c8c8c8;
	box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.20);
  }
  .header .header-content {
	justify-content: center;
	height: 60px;
	width: calc( 100% - 60px);
  }
  .header .header-content .logo {
	margin: 0 auto;
	padding-left: 60px;
  }
  .header .header-content .logo img {
	margin: 0 auto;
  }
  .header_wrp .header .nav {
	box-sizing: border-box;
	display: block;
	position: absolute;
	width: 60px;
	height: 60px;
	top: 0;
	left: 0;
	right: auto;
	background-color: #fff;
	border: 1px solid #c8c8c8;
  }
  .header_wrp .header .nav .navlist {
	display: none;
  }
  .header_wrp .header .nav:after {
	position: absolute;
	right: 14px;
	top: 18px;
	content: "\f0c9";
	font-family: FontAwesome;
	font-size: 36px;
  }
  .header_wrp .header .nav.open:after {
	content: "\f00d";
  }
  .header_wrp .username {
	  padding: 5px;
  }
  .header_wrp .username.membercard {
	  padding: 5px 70px 5px 5px;
  }
  .header .nav,
  .navigation_wrp .navigation .btn_cart,
  .navigation_wrp .nav {
	display: none;
  }
  .header_wrp .nav .navlist.open {
	display: block;
  }
  .header_wrp .nav {
	z-index: 2;
  }
}

@media screen and (max-width: 768px) {
  .header_wrp .nav .navlist {
	display: none;
	position: absolute;
	width: 280px;
	left: 0;
	top: 60px;
  }
  .header_wrp .nav .navlist li.home,
  .header_wrp .nav .navlist li.inquiry,
  .header_wrp .nav .navlist li.mypage,
  .header_wrp .nav .navlist li.signin,
  .header_wrp .nav .navlist li.login,
  .header_wrp .nav .navlist li.logout {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 0 10px;
  }
  .header_wrp .nav .navlist li.home a,
  .header_wrp .nav .navlist li.inquiry a,
  .header_wrp .nav .navlist li.mypage a,
  .header_wrp .nav .navlist li.signin a,
  .header_wrp .nav .navlist li.login a,
  .header_wrp .nav .navlist li.logout a {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 70px;
	text-align: left;
	color: #fff;
	font-size: 18px;
	line-height: 70px;
	font-weight: bold;
	margin: 0;
	padding-top: 0;
	padding-left: 55px;
  }
  .header_wrp .nav .navlist li.home a:before,
  .header_wrp .nav .navlist li.inquiry a:before,
  .header_wrp .nav .navlist li.mypage a:before,
  .header_wrp .nav .navlist li.signin a:before,
  .header_wrp .nav .navlist li.login a:before,
  .header_wrp .nav .navlist li.logout a:before {
	display: none;
  }
  .header_wrp .nav .navlist li.home:before,
  .header_wrp .nav .navlist li.inquiry:before,
  .header_wrp .nav .navlist li.mypage:before,
  .header_wrp .nav .navlist li.signin:before,
  .header_wrp .nav .navlist li.login:before,
  .header_wrp .nav .navlist li.logout:before {
	content: "";
	position: absolute;
	top: 20px;
	left: 20px;
	width: 30px;
	height: 30px;
	background-size: 30px 30px;
  }
  .header_wrp .nav .navlist li:last-child a {
	border-bottom: none;
  }
  .header_wrp .nav .navlist .home:before {
	background: url(../images/icon_home.png) no-repeat top center;
  }
  .header_wrp .nav .navlist .inquiry:before {
	background: url(../images/icon_help.png) no-repeat top center;
  }
  .header_wrp .nav .navlist .mypage:before {
	background: url(../images/icon_person_plus.png) no-repeat top center;
  }
  .header_wrp .nav .navlist .signin:before {
	background: url(../images/icon_person_plus.png) no-repeat top center;
  }
  .header_wrp .nav .navlist .login:before,
  .header_wrp .nav .navlist .logout:before {
	background: url(../images/icon_door_in.png) no-repeat top center;
  }
  .header_wrp .nav .navlist .login:before a,
  .header_wrp .nav .navlist .logout:before a {
	border-bottom: none;
  }
}

@media screen and (max-width: 480px) {
  .header_wrp .nav .navlist {
	top: 60px;
  }
}






/* ナビゲーションバンド */
.navigation {
  width: 100%;
  height: auto;
  position: relative;
  display: flex; /*IE11対策*/
}
.menu_icon {
  min-height: 80px;
  height: auto;
  padding: 15px 5px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  box-sizing: border-box;
}
@media screen and (min-width: 769px) {
	.menu_icon {
		width: calc( 100% - 120px );
	}
}
.menu_icon a {
	margin-right: 20px;
	padding: 5px;
	line-height: 1.4;
	font-size: 140%;
	font-weight: bold;
	display: block;
	box-sizing: border-box;
}
.menu_icon a:last-of-type {
	margin-right: 0;
}
@media screen and (max-width: 1024px) {
	.menu_icon a {
		font-size: 120%;
	}
}
@media screen and (max-width: 768px) {
	.navigation {
		height: auto;
	}
	.menu_icon {
		padding: 0;
		min-height: auto;
	}
	.menu_icon a {
		margin: 0;
		padding: 10px 15px;
	}
}
@media screen and (max-width: 480px) {
	.menu_icon {
		width: 100%;
		flex-direction: column;
	}
	.menu_icon a {
		width: 100%;
		border-bottom: 1px solid #fff;
		font-size: 100%;
	}
}
/*-------------------------------------------------------------
  お知らせ
-------------------------------------------------------------*/
#page_news_index .headline {
  margin: 0 auto;
}
/* 一覧 */
.topics {
	width: 100%;
	max-width: 1280px;
	box-sizing: border-box;
	margin: 50px auto 80px;
	padding: 0 50px;
	font-size: 14px;
}
.my_page_topics {
	 width: 100%;
	 max-width: 1280px;
	 box-sizing: border-box;
	 margin: 50px auto 10px;
	 padding: 0 50px;
	 font-size: 14px;
}
.topics h3,.my_page_topics h3 {
  margin: 10px 0;
}
.topics .topic_list {
  margin: 0 0 50px 0;
  border-top: solid 1px #ddd;
  position: relative;
}
.my_page_topics .topic_list {
	margin: 0 0 5px 0;
	border-top: solid 1px #ddd;
	position: relative;
}
.topic_list dt {
  clear: left;
  float: left;
  width: 12em;
  padding: 12px 0 0;
}
.topic_list dd {
  padding: 15px 0;
  padding-left: 10em;
  border-bottom: solid 1px #ddd;
}
.topic_list dt .icon i {
	color: #fff;
	vertical-align: middle;
}
.topic_list dt.important .icon {
	visibility: visible;
}
.topic_list dt .icon {
	visibility: hidden;
	display: inline-block;
	margin-right: 5px;
	width: 25px;
	height: 25px;
	line-height: 25px;
	text-align: center;
	background-color: #d64747;
	border-radius: 50%;
}

@media only screen and (max-width: 768px) {
  .topics {
	margin: 30px 0 40px;
	padding: 0 20px;
  }
}
@media only screen and (max-width: 480px) {
  .topics h3 {
	font-size: 18px;
  }
  .topic_list {
	margin: 0 0 30px;
  }
  .topic_list dt {
	font-size: 12px;
  }
  .topic_list dt {
	width: 100%;
	float: none;
	padding: 10px 0 0 0;
	font-weight: bold;
  }
  .topic_list dt .icon {
	width: 20px;
	height: 20px;
	line-height: 20px;
	margin-right: 3px;
  }
  .topic_list dd {
	padding: 2px 0 10px 26px;
	font-size: 12px;
	line-height: 1.5;
  }
}
/* お知らせ詳細 */
.newsDetail section {
  width: 100%;
  max-width: 780px;
  box-sizing: border-box;
}
.newsDetail .headline .title {
  display: block;
  text-align: left;
  line-height: 1.2;
}
.newsDetail .headline .title .important {
  margin-right: 10px;
  padding: 5px;
  display: inline-block;
  font-size: 0.4em;
  color: #d64747;
  border: 1px solid #d64747;
  border-radius: 2px;
  vertical-align: middle;
  line-height: 1;
}
.newsDetail .newsDate {
  margin: 5px 0 0 0;
  /* text-align: right; */
}
.newsDetail .newsContent{
  padding: 30px 0;
  border-bottom: 1px solid #ddd;
  margin-bottom: 40px;
}
@media screen and (min-width: 769px) {
  .newsDetail .submit_btns .btn_detail{
	width: 270px;
  }
}
@media screen and (max-width: 768px) {
  .newsDetail .newsContent{
	padding: 20px 0;
  }
}
@media screen and (max-width: 480px) {
  .newsDetail .headline .title .important {
	font-size: 0.45em;
  }
  .newsDetail .newsDate {
	font-size: 12px;
  }
}

/* カートボタン */
.btn_cart p a,
.btn_cart p,
.btn_cart {
  width: 63px;
  height: 56px;
}

.btn_cart p a {
  font-size: 21px;
  line-height: 33px;
  background-size: 63px 56px;
  padding-left: 7px;
}

@media screen and (max-width: 768px) {
  .header .btn_cart {
	width: 60px;
	height: 60px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border: 1px solid #c8c8c8;
	margin: 0;
	position: absolute;
	right: 0;
	top: 0;
  }
  .header .btn_cart p {
	width: 60px;
	height: 60px;
	background: transparent no-repeat center center;
	background-size: 37px 35px;
	left: 0;
  }
  .header .btn_cart p > a {
	width: 60px;
	height: 60px;
	font-size: 12px;
	color: #fff;
	padding-left: 5px;
	background: none;
	line-height: 48px;
  }
}

/* EC表示用ダミー */
.a-ec-dummy {
  display: none;
}

.content_cart.a-EC-view .a-ec-dummy {
  display: inherit;
}

/* 上下レイアウト */
.section_inner.l-section-wide .sidemenu_wrp {
  width: 100%;
}

.section_inner.l-section-wide .contents_wrp {
  width: 100%;
  max-width: inherit;
}

.section_inner.l-section-wide .content_cart {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.section_inner.l-section-wide .content_cart:after {
  display: none;
}

@media screen and (max-width: 768px) {
  .section_inner.l-section-wide .content_cart {
	display: block;
  }
}

.section_inner.l-section-wide .l-productListItem {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -ms-flex-preferred-size: calc( 50% - 15px);
  flex-basis: calc( 50% - 15px);
}
.favorites .l-productListItem {
  background: #fff;
}
.section_inner.l-section-wide .m-charges-model > ul > li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 30px;
  float: none;
}

.section_inner.l-section-wide .m-charges-model > ul > li:nth-child(odd) {
  margin-right: 0;
}

.section_inner.l-section-wide .m-charges-model > ul > li:nth-child(even) {
  margin-left: 0;
}

.section_inner.l-section-wide .m-charges-model > ul > li:nth-child(n+3) {
  margin-top: 0;
}

.section_inner.l-section-wide .m-charges-model > ul > li:last-child {
  margin-bottom: 0;
}

.section_inner.l-section-wide .m-charges-model > ul > li > ul > li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
}

/* 左右レイアウト */
.bg_blue {
  background-color: #fff;
}

.sidemenu_wrp {
  width: 410px;
  float: left;
}
.contents_wrp {
  width: calc(100% - 450px);
  float: right;
}
@media screen and (max-width: 1350px) {
  .contents_wrp {
	width: calc(100% - 380px);
  }
  .sidemenu_wrp {
	width: 340px;
  }
}
@media screen and (max-width: 1100px) {
  .contents_wrp {
	width: calc(100% - 330px);
  }
  .sidemenu_wrp {
	width: 300px;
  }
}


.content_cart {
  padding: 0;
  margin-bottom: 40px;
}

.content_cart .cart_table {
  border: none;
}

.content_cart .cart_table div:not(:first-child) .l-cartItem {
  margin-top: 40px;
}

/* 請求詳細 */
.billing_cart .cart_table td.totalprice p {
  color: #e37d39;
}

/* EC表示時 */
.content_cart.a-EC-view {
  display: block;
}

.content_cart.a-EC-view .l-productListItem {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  border-radius: 0;
  margin: 0 10px 20px;
  width: calc( 25% - 16px);
}

.content_cart.a-EC-view .l-productListItem:nth-child(4n) {
  margin-right: 0;
}

.content_cart.a-EC-view .l-productListItem:nth-child(4n+1) {
  margin-left: 0;
}

@media screen and (max-width: 768px) {
  .content_cart.a-EC-view {
	margin: 0 -10px;
  }
  .content_cart.a-EC-view .l-productListItem {
	width: 33.33%;
	margin: 0;
	padding: 0 10px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
  }
  .content_cart.a-EC-view .l-productListItem:nth-child(2n) {
	margin-right: 0;
	margin-bottom: 20px;
  }
  .content_cart.a-EC-view .l-productListItem:nth-child(2n+1) {
	margin-left: 0;
	margin-bottom: 20px;
  }
}

@media screen and (max-width: 480px) {
  .content_cart.a-EC-view {
	margin: 0 auto;
  }
  .content_cart.a-EC-view .l-productListItem {
	width: calc( 50% - 10px);
	padding: 0;
  }
  .content_cart.a-EC-view .l-productListItem:nth-child(2n) {
	margin-right: 10px;
	margin-left: 0;
  }
  .content_cart.a-EC-view .l-productListItem:nth-child(2n+1) {
	margin-left: 0;
	margin-right: 10px;
  }
}

.content_cart.a-EC-view .m-product-detail .o-product-photo {
  max-width: inherit;
}

.section_inner.l-section-wide .content_cart.a-EC-view {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: flex-start;
  margin-top: -30px;
}

@media screen and (max-width: 768px) {
  .section_inner.l-section-wide .content_cart.a-EC-view {
	margin-top: -10px;
  }
}

.section_inner.l-section-wide .content_cart.a-EC-view .l-productListItem {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  border-radius: 0;
  margin: 43px 10px 0;
  width: calc( 16.66% - 17px);
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
}

.section_inner.l-section-wide .content_cart.a-EC-view .l-productListItem:nth-child(4n+1), .section_inner.l-section-wide .content_cart.a-EC-view .l-productListItem:nth-child(4n) {
  margin: 43px 10px 0;
}

.section_inner.l-section-wide .content_cart.a-EC-view .l-productListItem:nth-child(6n) {
  margin-right: 0;
}

.section_inner.l-section-wide .content_cart.a-EC-view .l-productListItem:nth-child(6n+1) {
  margin-left: 0;
}

@media screen and (max-width: 768px) {
  .section_inner.l-section-wide .content_cart.a-EC-view .l-productListItem {
	width: calc( 50% - 10px);
	margin-top: 10px;
  }
  .section_inner.l-section-wide .content_cart.a-EC-view .l-productListItem:nth-child(2n) {
	margin-bottom: 20px;
	margin-right: 0;
	margin-top: 10px;
  }
  .section_inner.l-section-wide .content_cart.a-EC-view .l-productListItem:nth-child(2n+1) {
	margin-bottom: 20px;
	margin-left: 0;
	margin-top: 10px;
  }
}

.section_inner.l-section-wide .content_cart.a-EC-view .m-product-detail .o-product-photo {
  max-width: inherit;
}

/* フローチャート: ショッピングカート */
.flowbox .popbox .popbox_body {
  color: #9d9d9d;
  border: solid 2px #9d9d9d;
}

.flowbox .popbox_right .popbox_body {
  border: solid 1px #9d9d9d;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.popbox .popbox_arw:after {
  background: #9d9d9d;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.popbox .popbox_arw.js-popbox_arw_overWhite {
  z-index: 2;
  background: none;
  right: 1px;
}

.popbox .popbox_arw.js-popbox_arw_overWhite:after {
  background: #fff;
  -webkit-box-shadow: none;
  box-shadow: none;
}

@media screen and (max-width: 480px) {
  .popbox .popbox_arw.js-popbox_arw_overWhite {
	display: none;
  }
}

.flowbox .popbox.active .popbox_body {
  color: #fff;
}

.flowbox .popbox_right.active .popbox_body {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.popbox.active .popbox_arw:after {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.flowbox .popbox .popbox_body p {
  display: inline-block;
  margin-top: 0px;
  padding-left: 0;
  font-size: 19px;
  line-height: 1.2;
  font-weight: bold;
  vertical-align: middle;
}

.popbox .popbox_body h3 {
  font-size: 16px;
  font-weight: bold;
}

.popbox .popbox_inner {
  padding: 10px 20px 10px;
}

/* セパレータライン (マージンは mb00/mt00 クラスで調整)
// --------------------------------------------- */
.m-separate-line {
  width: 100%;
  height: 1px;
  border-top: 1px solid #c8c8c8;
}

.m-separate-line-dotted {
  width: 100%;
  height: 1px;
  border-top: 1px dotted #c8c8c8;
}

/* 2ボタン
// --------------------------------------------- */
.l-2btns-container {
  text-align: center;
}

.l-2btns-container a {
  display: inline-block;
  vertical-align: top;
  width: 35%;
  max-width: 400px;
  margin: 0 10px;
}

/* SP幅
// --------------------------------------------- */
@media screen and (max-width: 1280px) {
  .pcOnly {
	display: none;
  }
}

@media screen and (max-width: 999px) {
  .tabletOver {
	display: none;
  }
}

.tabletOnly {
  display: none;
}

@media screen and (max-width: 999px) {
  .tabletOnly {
	display: block;
  }
}

@media screen and (max-width: 768px) {
  .spOver {
	display: none;
  }
}

.spOnly {
  display: none;
}

@media screen and (max-width: 768px) {
  .spOnly {
	display: block;
  }
}

.spSmallOnly {
  display: none;
}

@media screen and (max-width: 480px) {
  .spSmallOnly {
	display: block;
  }
}

.footer_wrp {
  padding: 0;
  position: -webkit-sticky; /*for Safari*/
  position: sticky;
  top: 100vh;
}
.footer_wrp .content_width {
  padding: 40px 5%;
}
@media screen and (max-width: 768px) {
  .footer_wrp .content_width {
	padding: 20px 0 0;
  }
}
.footer_wrp .copyright {
  height: 40px;
  padding: 0;
  line-height: 40px;
  background: #333;
  color: #fff;
  text-align: center;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .footer_wrp .copyright {
	height: 40px;
	line-height: 40px;
  }
}

.footer_wrp .free_area{
  margin: 0 0 20px 0;
}

.l-footer-right + .l-footer-left {
  width: calc( 100% - 460px);
}

@media screen and (max-width: 768px){
  .l-footer-right + .l-footer-left {
	width: 100%;
	margin-top: 0;
  }
}

.l-footer-left {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  float: left;
  padding-bottom: 0;
  padding-left: 10px;
}

@media screen and (max-width: 768px) {
  .l-footer-left {
	width: 100%;
	margin-top: 30px;
	padding-left: 0;
	padding-bottom: 0;
	float: none;
  }
}

.l-footer-right {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  float: right;
  width: 450px;
  padding: 0 20px;
  border-left: 1px solid #fff;
  text-align: right;
}
.footer_info{
  padding-bottom: 0;
}

@media screen and (max-width: 768px) {
  .l-footer-right {
	width: 100%;
	padding: 0 0 20px 0;
	border-left: none;
	float: none;
  }
}

@media screen and (max-width: 768px) {
  .l-footer-right {
	padding: 0 5% 20px;
	text-align: center;
  }
}

@media screen and (max-width: 999px) {
  .l-footer-right .tabletOver {
	display: block;
  }
}
@media screen and (max-width: 768px) {
  .l-footer-right .tabletOver {
	display: none;
  }
}
.l-footer-right h3,
.l-footer-right .footer_info_detail {
  max-width: 350px;
  margin-left: auto;
  margin-top: 20px;
  text-align: left;
}
.l-footer-right h3 {
  margin-top: 0;
  font-size: 18px;
  line-height: 1.5;
  display: block;
}
@media screen and (max-width: 768px) {
  .l-footer-right h3 {
	margin: 0 auto;
  }
}
.l-footer-right .btn_detail {
	margin: 20px auto 0;
}
@media screen and (max-width: 768px) {
  .l-footer-right .footer_info_detail {
	margin: 10px auto 0;
  }
}

.l-footer-right .btn_detail {
  display: inline-block;
  width: 100%;
  max-width: 350px;
}

@media screen and (max-width: 768px) {
  .l-footer-right .btn_detail {
	display: block;
  }
}

.l-footer-right .btn_detail a {
  position: relative;
  padding: 13px 0;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
}

@media screen and (max-width: 1280px) {
  .l-footer-right .btn_detail a {
	font-size: 21px;
  }
}

@media screen and (max-width: 999px) {
  .l-footer-right .btn_detail a {
	font-size: 18px;
  }
}

@media screen and (max-width: 768px) {
  .l-footer-right .btn_detail a {
	font-size: 16px;
  }
}

@media screen and (max-width: 480px) {
  .l-footer-right .btn_detail a {
	font-size: 15px;
  }
}

@media screen and (max-width: 768px) {
  .l-footer-right .btn_detail a {
	padding: 6px 0 4px;
  }
}

.l-footer-right .btn_detail.o-inquiries > a {
  background-color: #fff;
}

.l-footer-right .btn_detail.o-inquiries > a:after {
  content: '';
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  width: 7px;
  height: 7px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
}

.l-footer-right .btn_detail.o-inquiries > a:after {
  right: 13px;
}

.l-footer-right .btn_detail.o-inquiries > a:before {
  display: inline-block;
  content: '';
  position: relative;
  top: -1px;
  left: -8px;
  width: 26px;
  height: 26px;
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.l-footer-right .btn_detail.o-phonenumber a {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #fff;
  padding: 14px 0 12px;
}

.l-footer-right .btn_detail.o-phonenumber a:before {
  display: inline-block;
  content: '';
  position: relative;
  top: -3px;
  left: -8px;
  width: 26px;
  height: 26px;
  background-repeat: no-repeat;
  background-size: contain;
  vertical-align: middle;
}

.l-footer-right .btn_detail.o-phonenumber a {
  cursor: auto;
  font-family:"Roboto",-apple-system,BlinkMacSystemFont,"Helvetica Neue",arial,sans-serif;
  font-size: 27px;
  line-height: 1.2;
}
.l-footer-right .btn_detail.o-phonenumber a {
  cursor: auto;
  font-family:"Roboto",-apple-system,BlinkMacSystemFont,"Helvetica Neue",arial,sans-serif;
  font-size: 27px;
}
@media screen and (max-width: 1280px) {
  .l-footer-right .btn_detail.o-phonenumber a {
	font-size: 24px;
  }
}
@media screen and (max-width: 999px) {
  .l-footer-right .btn_detail.o-phonenumber a {
	font-size: 19px;
  }
}
@media screen and (max-width: 768px) {
  .l-footer-right .btn_detail.o-phonenumber a {
	font-size: 18px;
	padding: 7px 0 2px;
  }
}
@media screen and (max-width: 480px) {
  .l-footer-right .btn_detail.o-phonenumber a {
	font-size: 16px;
  }
}

.footer .block {
  width: 100%;
  float: none;
  padding: 0;
  border: none;
}

.footer .foote_link {
  display: inherit;
}

ul.foote_link > li {
  margin: 0 0 12px 0;
  position: relative;
  display: block;
  float: left;
  padding: 0 15px;
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  ul.foote_link > li {
	margin: 0;
	line-height: inherit;
  }
}
@media screen and (min-width: 769px) {/*PC*/
  ul.foote_link > li.foot-content {
	clear: left;
  }
}

@media screen and (max-width: 768px) {
  .l-footer-left{
	border-top: 1px solid #e3e3e3;
	position: relative;
  }
  .l-footer-left:before{/* 最後のリストの下線をテンプレートの色で上書きする */
	content: " ";
	display: block;
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
  }
  .l-footer-left:after{
	content: " ";
	clear: both;
	display: block;
  }
  ul.foote_link > li {
	box-sizing: border-box;
	float: left;
	width: 50%;
	min-height: 43px;
	text-align: left;
	overflow: hidden;
	border-bottom: 1px solid #e3e3e3;
	padding: 0;
	position: relative;
	height: auto;
	display: block;
  }
  ul.foote_link > li:nth-child(odd) {
	border-right: 1px solid #e3e3e3;
  }
  ul.foote_link > li > a {
	display: block;
	padding: 15px 0 0 40px;
	line-height: 1.2;
  }
}

@media screen and (max-width: 480px) {
  ul.foote_link > li > a {
	font-size: 12px;
	padding: 15px 0 0 20px;
  }
}
@media screen and (max-width: 374px) {
  ul.foote_link > li > a {
	font-size: 11px;
	padding: 15px 0 0 18px;
  }
}

.foote_link > li > a:after {
  content: '';
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  border-right: solid 1px #ffffff;
  border-bottom: solid 1px #ffffff;
  width: 7px;
  height: 7px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
}

.foote_link > li > a:after {
  top: -3px;
  left: 0;
  right: inherit;
}

@media screen and (max-width: 768px) {
  .foote_link > li > a:after {
	top: -1px;
	left: 10px;
  }
}

@media screen and (max-width: 480px) {
  .foote_link > li > a:after {
	left: 4px;
  }
}

/* おすすめ商品 */
.m-FeaturedProducts {
  margin-top: -5px;
}
@media screen and (min-width: 769px) {
  .m-FeaturedProducts .section_inner.wideSection {
	padding: 30px 5% 50px 5%;
  }
}
.m-FeaturedProducts .headline .title {
  font-size: 36px;
  padding-bottom: 10px;
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .m-FeaturedProducts .headline .title {
	font-size: 23px;
	padding-bottom: 3px;
  }
}
.bx-wrapper{
  padding: 0;
}
/*読み込み時の崩れ対応*/
.recommendArea .mainvisual_slider.recommends_name {
  max-height: 280px;
}
.recommendArea .mainvisual_slider.recommends_thumbnail {
  max-height: 190px;
}
@media screen and (max-width: 768px) {
  .recommendArea .mainvisual_slider.recommends_name {
	max-height: 220px;
  }
}
@media screen and (max-width: 480px) {
  .recommendArea .mainvisual_slider.recommends_name,
  .recommendArea .mainvisual_slider.recommends_thumbnail {
	max-height: 142px;
  }
  .recommendArea .mainvisual_slider.recommends_thumbnail {
	max-height: 100px;
  }
}
.mainvisual_slider div {
  display: none;
}
.bx-viewport .mainvisual_slider div {
  display: block !important;
}
.mainvisual_slider .slide_img + a,
.recommendArea .recommend_name {
  display: block;
  font-size: 20px;
  line-height: 1.2;
  font-weight: bold;
  margin-top: 12px;
  overflow: hidden;
  text-decoration: none;
  text-align: center;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media screen and (max-width: 768px) {
  .mainvisual_slider .slide_img + a,
  .recommendArea .recommend_name {
	font-size: 18px;
  }
}
@media screen and (max-width: 480px) {
  .mainvisual_slider .slide_img + a,
  .recommendArea .recommend_name {
	font-size: 12px;
  }
}
/* コントローラー */
.bx-wrapper .bx-controls-direction a {
  border: none;
  background: rgba(0, 0, 0, 0.2);
  top: 36%;
  bottom: auto;
}
.bx-wrapper .bx-controls-direction a:hover {
  background: rgba(0, 0, 0, 0.4);
}
.bx-wrapper .bx-controls-direction a.bx-prev {
  left: -30px;
}
.bx-wrapper .bx-controls-direction a.bx-next {
  right: -30px;
}
.bx-wrapper .slide_img {
  margin: 0 auto;
  width: 220px;
  height: 220px;
}
.bx-wrapper .recommends_thumbnail .slide_img {
  width: 190px;
  height: 190px;
}
.bx-wrapper .recommend_detailbox .slide_img {
  width: 220px;
  height: 220px;
}
.bx-wrapper .slide_img a {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.bx-wrapper img {
  width: auto;
  height: auto;
  max-width: 220px;
  max-height: 220px;
}
.bx-wrapper .recommends_thumbnail img {
  max-width: 190px;
  max-height: 190px;
}
.bx-wrapper .recommend_detailbox img {
  max-width: 220px;
  max-height: 220px;
}
@media screen and (max-width: 768px) {
  .bx-wrapper .slide_img {
	width: 150px;
	height: 150px;
  }
  .bx-wrapper img {
	max-width: 150px;
	max-height: 150px;
  }
  .bx-wrapper .recommends_thumbnail .slide_img {
	width: 160px;
	height: 160px;
  }
  .bx-wrapper .recommends_thumbnail img {
	max-width: 160px;
	max-height: 160px;
  }
}
@media screen and (max-width: 480px) {
  .bx-wrapper .slide_img,
  .bx-wrapper .recommends_thumbnail .slide_img {
	width: 100px;
	height: 100px;
  }
  .bx-wrapper img,
  .bx-wrapper .recommends_thumbnail img {
	margin: 0 auto;
	max-width: 100px;
	max-height: 100px;
  }
  .bx-wrapper .recommend_detailbox .slide_img {
	width: 220px;
	height: 220px;
  }
  .bx-wrapper .recommend_detailbox img {
	max-width: 220px;
	max-height: 220px;
  }
}
.a-image-label-new {
  position: relative;
}

.a-image-label-new:after {
  content: 'NEW';
  display: block;
  position: absolute;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  top: 0;
  right: 0;
  width: 60px;
  height: 30px;
  line-height: 30px;
  padding: 1px 0 0;
  text-align: center;
  color: #fff;
  background: #e37d39;
  font-size: 14px;
  font-weight: bold;
}

@media screen and (max-width: 1280px) {
  .a-image-label-new:after {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .a-image-label-new:after {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .a-image-label-new:after {
	font-size: 11px;
  }
}

@media screen and (max-width: 480px) {
  .a-image-label-new:after {
	font-size: 11px;
  }
}

@media screen and (max-width: 768px) {
  .a-image-label-new:after {
	width: 45px;
	height: 24px;
	line-height: 24px;
  }
}

.a-image-label-soldout {
  position: relative;
}

.a-image-label-soldout:after, .a-image-label-soldout:before {
  position: absolute;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.a-image-label-soldout:before {
  width: 100%;
  height: 100%;
  display: block;
  content: '';
  top: 0;
  left: 0;
  background: #000;
  opacity: 0.5;
}

.a-image-label-soldout:after {
  display: inline-block;
  content: 'SOLD OUT';
  width: 100%;
  top: 50%;
  left: 50%;
  text-align: center;
  color: #fff;
  font-weight: bold;
  font-size: 28px;
  padding: 1px 0 0;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.recommends_thumbnail,
.recommends_name,
.recommends_detail {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.recommends_thumbnail a img,
.recommends_name a img,
.recommends_detail a img {
  width: 100%;
  margin: 0 auto;
}
/* サムネイルのみ */
.recommends_thumbnail .thumbnail {
  margin: 10px;
  width: calc((100% / 8) - 20px);
  min-width: 140px;
  position: relative;
  box-sizing: border-box;
}
/* サムネイル+名前 */
.recommends_name .recommend_namebox {
  margin: 10px;
  width: calc((100% / 7) - 20px);
  min-width: 200px;
  position: relative;
  box-sizing: border-box;
}
/* 詳細ありタイプ */
.recommend_detailbox {
  margin: 10px;
  padding: 20px 20px 70px;
  width: 30%;
  max-width: 340px;
  background: #fff;
  position: relative;
  box-sizing: border-box;
}
.bx-wrapper .recommend_detailbox {
  margin: 0;
  width: auto;
}
.recommend_detailbox > a {
  display: block;
  text-align: center;
}
.recommend_detailbox > a > img {
  max-width: 220px;
}
.recommend_detailbox .recommend_detailtext {
  margin: 10px auto;
  padding: 10px 0 0 0;
  border-top: 1px solid #333;
  line-height: 1.6;
}
.recommend_detailbox .btn_next {
  margin: 0 auto;
  position: absolute;
  bottom: 20px;
  left: 0;
  right: 0;
}

@media screen and (max-width: 1280px) {
  .a-image-label-soldout:after {
	font-size: 24px;
  }
}

@media screen and (max-width: 999px) {
  .a-image-label-soldout:after {
	font-size: 21px;
  }
  .recommend_detailbox {
	width: calc(50% - 20px);
  }
}

@media screen and (max-width: 768px) {
  .a-image-label-soldout:after {
	font-size: 18px;
  }
  .recommends_thumbnail .thumbnail,
  .recommends_name .recommend_namebox {
	min-width: 120px;
  }
}

@media screen and (max-width: 600px) {
  .recommend_detailbox {
	margin: 0 0 20px;
	width: 100%;
  }
}

@media screen and (max-width: 480px) {
  .a-image-label-soldout:after {
	font-size: 16px;
  }
  .recommends_thumbnail .thumbnail,
  .recommends_name .recommend_namebox {
	margin: 5px;
	min-width: 100px;
  }
  .recommend_detailbox {
	padding: 20px 20px 60px;
  }
  .recommend_detailbox .recommend_detailtext {
	font-size: 12px;
  }
  .recommend_detailbox .btn_next {
	width: 80%;
  }
}

/* 絞り込み、検索、カテゴリ */
.l-searchBox-wide {
  margin-bottom: 20px;
}

.l-searchBox-wide .sidemenu_searchbox {
  border-color: #c8c8c8 !important;
}
/* 商品一覧・商品詳細の検索フォーム */
.sidemenu_searchbox .submit_btn {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: 40px;
	height: 100%;
	text-indent: -9999px;
	border: none;
	line-height: 1;
	cursor: pointer;
}
.sidemenu_searchbox .submit_btn:hover {
	opacity: .8;
}
.sidemenu_searchbox .submit_btn:after {
  position: absolute;
  content: "\f002";
  font-family: FontAwesome;
  right: 11px;
  top: 50%;
  margin-top: -9px;
  font-size: 18px;
  font-weight: normal;
  color: #fff;
  text-indent: 0;
}
@media screen and (min-width: 768px) {/*PC表示かつ検索のみの場合、文字を表示*/
  .l-section-wide .l-searchBox-wide>.sidemenu_searchbox .submit_btn {
	width: auto;
	padding-left: 40px;
	padding-right: 20px;
	text-indent: 0;
	color: #fff;
	line-height: 1.2;
	background-position: left 10px center;
  }
  .l-section-wide .l-searchBox-wide>.sidemenu_searchbox .submit_btn:after {
	right: 3em;
	margin-top: -11px;
  }
}

.l-searchBox-wide .sidemenu_searchbox .submit_btn.a-view-text {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  background-position: 18px center;
  width: 100px;
  text-indent: inherit;
  color: #fff;
  font-size: 16px;
  padding-left: 25px;
}

.l-categoryBox-wide {
  margin-bottom: 40px;
}

.l-categoryBox-wide .topFilterCategory {
  margin-bottom: 20px;
}

.l-categoryBox-wide .topFilterCategory dt {
  padding: 8px 10px;
  color: #fff;
  font-weight: 700;
}

.l-categoryBox-wide .topFilterCategory dd {
  display: none;
}

.l-categoryBox-wide .sidemenu_select dd,
.l-categoryBox-wide .topFilterCategory dd {
  margin-top: 20px;
}

.l-categoryBox-wide .sidemenu_select dd > ul,
.l-categoryBox-wide .topFilterCategory dd > ul {
  padding-left: 0;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-wrap: wrap;
}

.l-categoryBox-wide .sidemenu_wrp.m-sideSearchBox .sidemenu_select dd > ul > li,
.m-topFilterBox .l-categoryBox-wide dd > ul > li {
  box-sizing: border-box;
  margin-left: 30px;
}
.l-categoryBox-wide .sidemenu_wrp.m-sideSearchBox .sidemenu_select dd > ul > li{
  width: calc( 20% - 30px);
}
.l-categoryBox-wide .sidemenu_wrp.m-sideSearchBox .sidemenu_select dd > ul.column4 > li,
.m-topFilterBox .l-categoryBox-wide dd > ul > li {
  width: calc( 25% - 30px);
}
.l-categoryBox-wide .sidemenu_wrp.m-sideSearchBox .sidemenu_select dd > ul.column3 > li,
.m-topFilterBox .l-categoryBox-wide dd > ul.column3 > li {
  width: calc( 33.3% - 30px);
}
.l-categoryBox-wide .sidemenu_wrp.m-sideSearchBox .sidemenu_select dd > ul.column2 > li,
.m-topFilterBox .l-categoryBox-wide dd > ul.column2 > li {
  width: calc( 50% - 30px);
}
.l-categoryBox-wide .sidemenu_wrp.m-sideSearchBox .sidemenu_select dd > ul.column1 > li,
.m-topFilterBox .l-categoryBox-wide dd > ul.column1 > li {
  width: 100%;
}
/*検索・カテゴリ両表示の時*/
@media screen and (max-width: 1400px) {
  .l-categoryBox-wide .sidemenu_wrp.m-sideSearchBox .sidemenu_select dd > ul > li {
	width: calc( 25% - 30px);
  }
  .m-topFilterBox .l-categoryBox-wide dd > ul:not(.column1) > li {
	width: calc( 50% - 30px);
  }
}
@media screen and (max-width: 1280px) {
  .l-categoryBox-wide .sidemenu_wrp.m-sideSearchBox .sidemenu_select dd > ul > li {
	width: calc( 33.3% - 30px);
  }
  .m-topFilterBox .l-categoryBox-wide dd > ul:not(.column1) > li {
	width: calc( 50% - 30px);
  }
}
@media screen and (max-width: 1024px) {
  .l-categoryBox-wide .sidemenu_wrp.m-sideSearchBox .sidemenu_select dd > ul:not(.column1) > li {
	width: calc( 50% - 30px);
  }
  .m-topFilterBox .l-categoryBox-wide dd > ul {
	margin-left: 10px;
  }
  .m-topFilterBox .l-categoryBox-wide dd > ul > li {
	width: 100%!important;
	margin-left: 0;
  }
}

.l-categoryBox-wide .sidemenu_select ul, .l-categoryBox-wide .sidemenu_select li,
.l-categoryBox-wide .topFilterCategory ul, .l-categoryBox-wide .topFilterCategory li {
  list-style: disc;
  border: none;
}

.l-categoryBox-wide .topFilterCategory ul ul {
  padding-left: 22px;
}

.l-categoryBox-wide .sidemenu_select dd > ul > li > ul,
.l-categoryBox-wide .sidemenu_select dd > ul > li > ul li,
.l-categoryBox-wide .topFilterCategory dd > ul > li > ul,
.l-categoryBox-wide .topFilterCategory dd > ul > li > ul li {
  list-style: circle;
}

.l-categoryBox-wide .sidemenu_select a ,
.l-categoryBox-wide .topFilterCategory a {
  padding: 6px 0;
}

.l-categoryBox-wide .sidemenu_select a > span,
.l-categoryBox-wide .topFilterCategory a > span {
  text-decoration: underline;
}

.l-categoryBox-wide .topFilterCategory .list_head {
  display: inline-block;
}

.l-categoryBox-wide .sidemenu_select .list_head,
.l-categoryBox-wide .topFilterCategory .list_head {
  vertical-align: top;
  padding: 0 6px;
}

.js-scrolled {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: auto;
  max-width: 1242px;
  background-color: #fff;
  z-index: 1;
  -webkit-box-shadow: 1px 2px 10px 2px rgba(0, 0, 0, 0.2);
  box-shadow: 1px 2px 10px 2px rgba(0, 0, 0, 0.2);
}

/* 検索・絞り込み(左右) */
.sidemenu_wrp.m-sideSearchBox .sidemenu_search,
.sidemenu_wrp.m-sideSearchBox .sidemenu_select {
  border-color: #c8c8c8;
  background: #fff;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_select ul {
  background: #fff;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_search li,
.sidemenu_wrp.m-sideSearchBox .sidemenu_select li {
  border-top: none;
  margin-left: 20px;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_select li {
  border-top: none;
  list-style-type: disc;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_select li a span{
  display: block;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_select li ul li{
  border-left: none;
  list-style-type: circle;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_search dt,
.sidemenu_wrp.m-sideSearchBox .sidemenu_select dt {
  text-align: center;
  position: relative;
  border-radius: 3px;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_select.open dt {
  border-radius: 3px 3px 0 0;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_select dd {
  display: none;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_search dd,
.sidemenu_wrp.m-sideSearchBox .sidemenu_select dd {
  line-height: 1.2em;
  padding: 10px 20px;
}

.sidemenu_wrp.m-sideSearchBox .sidemenu_search .sidemenu_searchbox,
.sidemenu_wrp.m-sideSearchBox .sidemenu_select .sidemenu_searchbox {
  border-color: #c8c8c8;
}

@media screen and (max-width: 999px) {
  .sidemenu_wrp.m-sideSearchBox .sidemenu_search,
  .sidemenu_wrp.m-sideSearchBox .sidemenu_select {
	width: 100%;
  }
}

@media screen and (max-width: 999px) {
  .sidemenu_wrp.m-sideSearchBox {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	max-width: inherit;
	float: none;
	display: block;
  }
}

/* 一覧表示コンテナ */
@media screen and (max-width: 999px) {
  .contents_wrp {
	width: 100%;
	max-width: inherit;
	float: none;
	display: block;
  }
}

/* 検索・絞り込み(上下) */
.m-topFilterBox {
  margin-bottom: 30px;
}

@media screen and (max-width: 999px) {
  .m-topFilterBox {
	width: 100%;
	max-width: inherit;
	float: none;
	display: block;
  }
}

.m-topFilterBox .o-box-head {
  position: relative;
  text-align: center;
  font-size: 20px;
  line-height: 28px;
  font-weight: bold;
  color: #fff;
  padding: 11px 0;
  border-radius: 5px;
  cursor: pointer;
}

.m-topFilterBox .o-box-head.open {
  border-radius: 5px 5px 0 0;
}

@media screen and (max-width: 768px) {
  .sidemenu_wrp.m-topFilterBox .o-box-head {
	display: none;
  }
}

.m-topFilterBox .o-box-body {
  display: none;
  padding: 20px;
  border: 1px solid #c8c8c8;
  border-top: none;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}
.sidemenu_wrp.m-topFilterBox .o-box-body {
  padding: 15px 20px 20px;
}
@media screen and (min-width: 769px) {
  .m-topFilterBox .o-box-body {
	background: #fff;
  }
}
/* マイページ系はSP表示も背景色設定 */
.content_mypage .m-topFilterBox .o-box-body {
  background: #fff;
}

@media screen and (max-width: 999px) {
  .m-topFilterBox .o-box-body {
	padding: 15px;
  }
  .sidemenu_wrp.m-topFilterBox .o-box-body {
	padding: 15px;
  }
}

@media screen and (max-width: 768px) {
  .sidemenu_wrp.m-topFilterBox .o-box-body {
	display: block !important;
	border: none;
	padding: 0;
  }
}
/* 検索条件パネル（主にマイページ系） */
.m-topFilterBox .o-box-body ul.conditions,
.m-topFilterBox .o-box-body .date_range_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.m-topFilterBox .o-box-body .date_range_box {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-start;
}
.m-topFilterBox .o-box-body ul.conditions li {
	display: block;
	width: 48%;
	margin: 0 0 10px 0;
	list-style: none;
}
@media screen and (max-width: 768px) {
  .m-topFilterBox  .o-box-body ul.conditions li {
	  width: 100%;
  }
}
.m-topFilterBox  .o-box-body ul.conditions li .label {
	font-weight: bold;
}
.m-topFilterBox  .o-box-body ul.conditions li input[type='text'] {
	width: 100%;
	font-size: 14px;
}
.m-topFilterBox  .o-box-body .conditions .date_range_box div {
	width: 46%;
}
.m-topFilterBox  .o-box-body .conditions div .date_range_box input[type='text'] {
	width: 100%;
}
.m-topFilterBox  .o-box-body .date_range_box .wavyline {
	margin: 0 0 5px 0;
	line-height: 36px;
}
.m-topFilterBox .o-box-body .btn_container {
	position: relative;
	text-align: center;
	margin: 0;
}
.m-topFilterBox .o-box-body .btn_container span {
	display: inline-block;
	width: 140px;
	margin: 0 5px;
	vertical-align:top;
}
@media screen and (max-width: 480px) {
  .m-topFilterBox .o-box-body .btn_container span {
	  display: block;
	  max-width: 200px;
	  margin: 10px auto 0;
  }
}
.m-topFilterBox .o-box-body .btn_container span a,
.m-topFilterBox .o-box-body .btn_container span button {
	width: 100%;
	box-sizing: border-box;
	padding: 4px 10px;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	border-radius: 5px;
}
.m-topFilterBox .o-box-body .btn_container .baseBtn,
.m-sideSearchBox .clearBtn .baseBtn {
  position: relative;
  padding: 8px 10px 8px 22px;
  top:auto;
  left: auto;
  height: auto;
  text-indent: 0;
  cursor: pointer;
  border: none;
  display: block;
  line-height: 1;
}
.m-topFilterBox .o-box-body .btn_container .baseBtn::before,
.m-sideSearchBox .clearBtn .baseBtn::before {
  position: absolute;
  font-family: FontAwesome;
  left: 10px;
  top: 8px;
  font-weight: normal;
}
.m-topFilterBox .o-box-body .btn_container .searchBtn .baseBtn::before {
  content: "\f002";
}
.m-topFilterBox .o-box-body .btn_container .clearBtn .baseBtn::before,
.sidemenu_wrp .clearBtn .baseBtn::before {
  content: "\f021";
}
.m-sideSearchBox .clearBtn {
  max-width: 140px;
  margin: 0 auto 20px;
  display: block;
}
.m-sideSearchBox .clearBtn .baseBtn {
  width: 140px;
  display: block;
}
.m-topFilterBox .clearBtn .baseBtn:after,
.m-sideSearchBox .clearBtn .baseBtn:after {
  content: none;
}
.m-topFilterBox .clearBtn .baseBtn > span,
.m-sideSearchBox .clearBtn .baseBtn > span {
  font-size: 14px;
  padding-right: 0;
}

.m-topFilterBox .l-searchBox-wide {
  width: 400px;
}

.m-topFilterBox .l-categoryBox-wide {
  width: calc( 100% - 446px);
}

.m-topFilterBox .l-categoryBox-wide,
.m-topFilterBox .l-searchBox-wide {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  vertical-align: top;
  margin: 10px 10px;
}

@media screen and (max-width: 999px) {
  .m-topFilterBox .l-categoryBox-wide,
  .m-topFilterBox .l-searchBox-wide {
	width: calc( 50% - 26px);
  }
}

@media screen and (max-width: 768px) {
  .m-topFilterBox .l-categoryBox-wide,
  .m-topFilterBox .l-searchBox-wide {
	width: 100%;
	display: block;
	margin: 10px 0;
  }
}

@media screen and (max-width: 768px) {
  .sidemenu_wrp .sidemenu_search {
	border: none;
  }
  .sidemenu_wrp .sidemenu_search > dt {
	display: none;
  }
  .sidemenu_wrp .sidemenu_search > dd {
	padding: 0 !important;
  }
}

.m-topFilterBox .sidemenu_search,
.m-topFilterBox .sidemenu_select,
.m-topFilterBox .topFilterCategory {
  border: none;
}

.m-topFilterBox .sidemenu_search li,
.m-topFilterBox .sidemenu_select li,
.m-topFilterBox .topFilterCategory li {
  border-top: none;
}

.m-topFilterBox .topFilterCategory li a {
  display: block;
}

.m-topFilterBox .sidemenu_search > dt,
.m-topFilterBox .sidemenu_select > dt,
.m-topFilterBox .topFilterCategory > dt {
  border-radius: 4px;
  text-align: center;
}

.m-topFilterBox .sidemenu_search dd,
.m-topFilterBox .sidemenu_select dd,
.m-topFilterBox .topFilterCategory dd {
  line-height: 1.2em;
  padding: 10px 20px;
}

.m-topFilterBox .sidemenu_search .submit_btn,
.m-topFilterBox .sidemenu_select .submit_btn,
.m-topFilterBox .topFilterCategory .submit_btn {
}

@media screen and (max-width: 768px) {
  .m-topFilterBox .sidemenu_search > dt,
  .m-topFilterBox .sidemenu_select > dt,
  .m-topFilterBox .topFilterCategory > dt,
  .m-topFilterBox .sidemenu_search .submit_btn,
  .m-topFilterBox .sidemenu_select .submit_btn,
  .m-topFilterBox .topFilterCategory .submit_btn {
  }
}

.m-topFilterBox .sidemenu_search .sidemenu_searchbox,
.m-topFilterBox .sidemenu_select .sidemenu_searchbox,
.m-topFilterBox .topFilterCategory .sidemenu_searchbox {
  margin-top: 20px;
  border-color: #c8c8c8;
}

.m-topFilterBox .sidemenu_search .js-category-menu-body,
.m-topFilterBox .sidemenu_select .js-category-menu-body,
.m-topFilterBox .topFilterCategory .js-category-menu-body {
  width: calc( 100% - 40px);
}

/* 商品一覧アイテム */
.l-productListItem {
  border: 1px solid #c8c8c8;
  border-radius: 10px;
  margin-bottom: 30px;
  width: 100%;
  overflow: hidden;
  position: relative;
}

.l-productListItem .l-productListItem-inner {
  padding: 40px 40px 20px;
  background: #fff;
}

@media screen and (max-width: 1280px) {
  .l-productListItem .l-productListItem-inner {
	padding: 15px;
  }
}

/* お気に入り削除ボタン表示位置 */
.m-charges-model.favMode {
  margin: 50px 0 70px 0;
}
.l-productListItem .btn_remove {
  position: absolute;
  margin: 0;
  bottom: 10px;
  right: 40px;
}
.l-productListItem .btn_remove a {
  padding: 5px 20px 5px 30px;
  min-width: auto;
}
.l-productListItem .btn_remove:before {
  top: 5px;
}
@media screen and (max-width: 768px) {
  .m-charges-model.favMode {
	margin: 0 0 50px;
  }
  .l-productListItem .btn_remove {
	right: 10px;
  }
}

/* 商品一覧アイテム(上下/EC表示時) */
.content_cart.a-EC-view .l-productListItem {
  border: none;
}

.content_cart.a-EC-view .l-productListItem-inner {
  padding: 0px;
}

.content_cart.a-EC-view .o-product-photo {
  float: none;
  width: 100%;
}

.content_cart.a-EC-view .m-product-detail .o-product-text,
.content_cart.a-EC-view .o-product-text {
  float: none;
  width: 100%;
  padding-left: 0;
}

.content_cart.a-EC-view .o-product-name {
  border: none;
  overflow: hidden;
  padding: 12px 0 2px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.content_cart.a-EC-view .m-charges-model {
  margin: 0;
}

.content_cart.a-EC-view .o-newicon,
.content_cart.a-EC-view .o-soldouticon,
.content_cart.a-EC-view .o-product-description {
  display: none;
}

/* 商品詳細 (モーダル表示でも使用) */
.m-product-detail {
  width: 100%;
}

.m-product-detail .o-product-photo {
  float: left;
  width: 25%;
  display: block;
  text-align: center;
}
.m-product-detail .o-product-photo a {
  display: block;
  text-align: center;
}
.m-product-detail .o-product-photo img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 200px;
}

.m-product-detail .o-product-text {
  float: none;
  width: 100%;
  padding: 0;
}

.m-product-detail .o-product-photo + .o-product-text {
  float: right;
  width: 70%;
  padding-left: 5%;
}

.m-product-detail .o-product-name {
  position: relative;
  padding: 10px 0;
  font-size: 24px;
  font-weight: bold;
  text-align: left;
}

@media screen and (max-width: 1280px) {
  .m-product-detail .o-product-name {
	font-size: 21px;
  }
  .m-product-detail .o-product-photo {
	width: 27%;
  }
  .m-product-detail .o-product-photo + .o-product-text {
	padding-left: 3%;
  }
}

@media screen and (max-width: 999px) {
  .m-product-detail .o-product-name {
	font-size: 18px;
  }
}

@media screen and (max-width: 768px) {
  .m-product-detail .o-product-name {
	font-size: 16px;
  }
}

@media screen and (max-width: 480px) {
	.m-product-detail .o-product-photo,
	.m-product-detail .o-product-photo + .o-product-text {
		float: none;
		width: 100%;
	}
	.m-product-detail .o-product-photo {
		margin: 0 auto;
		max-width: 200px;
	}
	.m-product-detail .o-product-photo + .o-product-text {
		padding: 10px 0 0 0;
	}
	.m-product-detail .o-product-name {
		font-size: 15px;
	}
}

.m-product-detail .o-product-name a {
  display: block;
  font-size: 20px;
  line-height: 30px;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media screen and (max-width: 768px) {
  .a-EC-view .m-product-detail .o-product-name a {
	  font-size: 18px;
  }
}

@media screen and (max-width: 480px) {
  .a-EC-view .m-product-detail .o-product-name a {
	  font-size: 12px;
  }
}

.m-product-detail .o-product-description {
  margin-top: 15px;
  text-align: left;
}

.m-product-detail .o-product-description div {
  font-size: 14px;
}

@media screen and (max-width: 1280px) {
  .m-product-detail .o-product-description div {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-product-detail .o-product-description div {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-product-detail .o-product-description div {
	font-size: 11px;
  }
}

@media screen and (max-width: 480px) {
  .m-product-detail .o-product-description div {
	font-size: 11px;
  }
}

.m-product-detail .o-product-description.shadow-curtail {
	position: relative;
}

.m-product-detail .o-product-description.shadow-curtail > div {
	overflow: hidden;
	width: 100%;
	position: relative;
}

.m-product-detail .o-product-description.shadow-curtail:after,
.m-product-detail .o-product-description.shadow-curtail > div:after {
	position: absolute;
}

.m-product-detail .o-product-description.shadow-curtail:after {
	content: "";
	display: block;
	width: 20px;
	height: 4px;
	left: 50%;
	bottom: -22px;
	margin-left: -10px;
	border-bottom: 4px dotted #c8c8c8;
}

.m-product-detail .o-product-description.shadow-curtail > div:after {
	bottom: 0;
	left: 0;
	background: -moz-linear-gradient(top, rgba(255,255,255,0), #fff);
	background: -webkit-linear-gradient(top, rgba(255,255,255,0), #fff);
	background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
	content: "";
	height: 50px;
	width: 100%;
}

@media screen and (min-width: 1280px) {
  .m-product-detail span.o-newicon, .m-product-detail span.o-soldouticon {
	top: -22px;
	font-size: 14px;
	padding: 2px 10px;
  }
}

.m-product-detail .o-newicon {
  display: inline-block;
  position: absolute;
  top: -11px;
  right: 0;
  background-color: #e37d39;
  font-weight: bold;
  color: #fff;
  padding: 0px 10px;
  font-size: 11px;
}

@media screen and (max-width: 768px) {
  .m-product-detail .o-newicon {
	top: -10px;
	font-size: 11px;
	line-height: 10px;
	padding: 4px 4px;
  }
}

@media screen and (max-width: 480px) {
  .m-product-detail .o-newicon {
	top: -10px;
	padding: 2px 4px;
  }
}

.m-product-detail .o-soldouticon {
  display: inline-block;
  position: absolute;
  top: -11px;
  right: 0;
  background-color: #555;
  font-weight: bold;
  color: #fff;
  padding: 0px 10px;
  font-size: 11px;
}

@media screen and (max-width: 768px) {
  .m-product-detail .o-soldouticon {
	top: -10px;
	font-size: 11px;
	line-height: 10px;
	padding: 4px 4px;
  }
}

@media screen and (max-width: 480px) {
  .m-product-detail .o-soldouticon {
	top: -10px;
	padding: 2px 4px;
  }
}

.m-product-detail .o-product-name span + span {
  right: 70px;
}

@media screen and (max-width: 1280px) {
  .m-product-detail .o-product-name span + span {
	right: 55px;
  }
}

@media screen and (max-width: 768px) {
  .m-product-detail .o-product-name span + span {
	right: 40px;
  }
}

/* 在庫シリアルのアラート文言 DIV */
.o-product-serial-alerts {
  margin-top: 10px;
  margin-bottom: 10px;
}
.l-productListItem .o-product-serial-alerts {
  width: 100%;
  text-align: center;
  margin-bottom: 0;
}

/* 在庫シリアルのアラート文言 SPAN */
.o-product-serial-alerts .status-frame {
  font-weight: normal;
  border-radius: 2px;
  padding: 1px 12px;
  font-size: 13px;
}

/* 支払い */
.m-charges-model {
  width: 100%;
  margin: 50px 0 0 0;
}

@media screen and (max-width: 768px) {
  .m-charges-model {
	margin: 30px 0 0;
  }
}

.m-charges-model > ul {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 0 auto;
}

@media screen and (max-width: 768px) {
  .m-charges-model > ul.spOver {
	display: none;
  }
}

.m-charges-model > ul > li {
  width: 48%;
}

.m-charges-model > ul > li:nth-child(odd) p.o-model-title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.m-charges-model > ul > li:nth-child(even) p.o-model-title {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.m-charges-model > ul > li:only-child {
  width: 100%;
}

.m-charges-model > ul > li:nth-child(n+3) {
  margin-top: 25px;
}

@media screen and (max-width: 480px) {
  .m-charges-model > ul > li {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
  }
  .m-charges-model > ul > li:nth-child(n+3) {
	margin-top: 0;
  }
}

.m-charges-model p.o-model-title {
  padding: 5px;
  color: #fff;
  text-align: center;
  border-radius: 3px;
  font-size: 16px;
}

@media screen and (max-width: 1280px) {
  .m-charges-model p.o-model-title {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-charges-model p.o-model-title {
	font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .m-charges-model p.o-model-title {
	font-size: 12px;
  }
}

@media screen and (max-width: 480px) {
  .m-charges-model p.o-model-title {
	font-size: 11px;
  }
}

@media screen and (max-width: 480px) {
  .m-charges-model p.o-model-title {
	padding: 2px 5px;
  }
}

.m-charges-model > ul > li > ul > li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
  width: 100%;
  padding: 15px 5px 5px;
  border-bottom: 1px dotted #c8c8c8;
}

@media screen and (max-width: 480px) {
  .m-charges-model > ul > li > ul > li {
	padding: 5px 2% 5px;
  }
}

.m-charges-model .o-name {
  text-align: left;
  float: left;
  font-size: 16px;
}

@media screen and (max-width: 1280px) {
  .m-charges-model .o-name {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-charges-model .o-name {
	font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .m-charges-model .o-name {
	font-size: 12px;
  }
}

@media screen and (max-width: 480px) {
  .m-charges-model .o-name {
	font-size: 11px;
  }
}

.m-charges-model li.o-ladder {
	padding-left: 50px;
}

.a-EC-view .m-charges-model .o-price {
  font-weight: normal;
  text-align: left;
  float: none;
}

@media screen and (max-width: 768px) {
  .a-EC-view .m-charges-model .o-price {
	font-size: 16px;
  }
}

.m-charges-model .o-price {
  text-align: right;
  float: right;
  font-size: 16px;
  font-weight: bold;
}

@media screen and (max-width: 1280px) {
  .m-charges-model .o-price {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-charges-model .o-price {
	font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .m-charges-model .o-price {
	font-size: 12px;
  }
}

@media screen and (max-width: 480px) {
  .m-charges-model .o-price {
	font-size: 11px;
  }
  .content_cart.a-EC-view .m-charges-model .o-price {
	font-size: 12px;
  }
}

.m-charges-model .o-btn-modelDetail {
  position: relative;
  display: block;
  width: 220px;
  margin: 0;
  padding: 6px;
  border-radius: 5px;
  text-align: center;
  font-size: 14px;
  text-decoration: none;
  background-color: #fff;
  box-sizing: border-box;
}

.m-charges-model .o-btn-modelDetail > span {
  position: relative;
  font-weight: bold;
  padding-right: 15px;
  line-height: 1.3;
}

.m-charges-model .o-btn-modelDetail:after {
  content: '';
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 0;
  width: 8px;
  height: 8px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-transition: all .3s;
  -o-transition: all .3s;
  transition: all .3s;
}

.m-charges-model .o-btn-modelDetail:after {
  top: -2px;
  right: 10px;
}

.m-charges-model .o-btn-modelDetail > span {
  font-weight: normal;
  padding: 0 20px;
}
.m-charges-model .submit_btns {
	margin: 20px auto 0;
}
.m-charges-model .submit_btns .select_main_product {
	width: auto;
	margin-left: 10px;
}
.m-charges-model .submit_btns .btn_detail {
	width: auto;
	width: 220px;
}
.m-charges-model .submit_btns .btn_detail a {
	display: block;
}
@media screen and (max-width: 768px) {
	.m-charges-model .submit_btns {
		flex-direction: row;
	}
	.m-charges-model .submit_btns .btn_detail {
		margin: 0!important;
	}
}
@media screen and (max-width: 480px) {
	.m-charges-model .submit_btns {
		flex-direction: column;
	}
	.m-charges-model .submit_btns .select_main_product {
		width: auto;
		margin: 15px 0 0 0;
	}
	.m-charges-model .o-btn-modelDetail,
	.m-charges-model .submit_btns .btn_detail {
		width: 100%;
	}
}

/* カテゴリ表示(SPメニュー: ヘッダ) Tablet幅以下 */
@media screen and (max-width: 999px) {
  .sidemenu_select dt.js-category-menu-head,
  .topFilterCategory dt.js-category-menu-head {
	text-align: center;
  }
  .sidemenu_select dt.js-category-menu-head:after,
  .topFilterCategory dt.js-category-menu-head:after {
	position: absolute;
	right: 70px;
	content: "\f078";
	font-family: FontAwesome;
  }
}

@media screen and (max-width: 768px) {
  .sidemenu_select dt.js-category-menu-head:after,
  .topFilterCategory dt.js-category-menu-head:after {
	right: 40px;
  }
}

@media screen and (max-width: 999px) {
  .sidemenu_select.open dt.js-category-menu-head:after,
  .topFilterCategory.open dt.js-category-menu-head:after {
	content: "\f077";
	z-index: 2;
  }
}

@media screen and (min-width: 1000px) {
  .sidemenu_select dt.js-category-menu-head:after,
  .topFilterCategory dt.js-category-menu-head:after {
	position: absolute;
	right: 30px;
	content: "\f078";
	font-family: FontAwesome;
  }
  .sidemenu_select.open dt.js-category-menu-head:after,
  .topFilterCategory.open dt.js-category-menu-head:after {
	content: "\f077";
	z-index: 2;
  }
}

.m-topFilterBox .sidemenu_select dt.js-category-menu-head,
.m-topFilterBox .topFilterCategory dt.js-category-menu-head {
  position: relative;
  text-align: center;
}

.m-topFilterBox .sidemenu_select dt.js-category-menu-head:after,
.m-topFilterBox .topFilterCategory dt.js-category-menu-head:after {
  position: absolute;
  right: 30px;
  content: "\f078";
  font-family: FontAwesome;
}

.m-topFilterBox .sidemenu_select.open dt.js-category-menu-head:after,
.m-topFilterBox .topFilterCategory.open dt.js-category-menu-head:after {
  content: "\f077";
  z-index: 2;
}

/* カテゴリ表示(サイド:1000px以上) */
@media screen and (min-width: 1000px) {
  .sidemenu_wrp:not(.m-topFilterBox) .sidemenu_select dd.js-category-menu-body {
	overflow-y: auto;
	max-height: calc( 100vh - 150px );/*キーワード検索なし*/
	height: auto;
  }
  .sidemenu_wrp:not(.m-topFilterBox) .sidemenu_search + .sidemenu_select dd.js-category-menu-body {
	max-height: calc( 100vh - 280px );/*キーワード検索あり*/
  }
  .sidemenu_wrp:not(.m-topFilterBox) .sidemenu_select dd.js-category-menu-body::-webkit-scrollbar{
	width: 10px;
  }
  .sidemenu_wrp:not(.m-topFilterBox) .sidemenu_select dd.js-category-menu-body::-webkit-scrollbar-track {
	background: #fff;
	border-left: solid 1px #e8e8e8;
  }
  .sidemenu_wrp:not(.m-topFilterBox) .sidemenu_select dd.js-category-menu-body::-webkit-scrollbar-thumb {
	background: #e9e9e9;
	border-radius: 10px;
  }
  .sidemenu_wrp:not(.m-topFilterBox) .sidemenu_select dd.js-category-menu-body {
	scrollbar-width: thin;
	scrollbar-color: #e9e9e9 #f4f4f4;
  }
}

/* カテゴリ表示(SPメニュー: ボディ) */
@media screen and (max-width: 768px) {
  .sidemenu_select dd.js-category-menu-body,
  .topFilterCategory dd.js-category-menu-body {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	display: none;
	margin: 0;
	padding: 0 !important;
	width: calc( 100% - 42px);
	background-color: #fff;
	border: 1px solid #c8c8c8;
	z-index: 10;
	-webkit-box-shadow: 0px 4px 15px 0px #666;
	box-shadow: 0px 4px 15px 0px #666;
  }
  .sidemenu_select dd.js-category-menu-body > ul,
  .sidemenu_wrp.m-sideSearchBox .sidemenu_select ul,
  .topFilterCategory dd.js-category-menu-body > ul {
	height: auto;
	margin: 0;
	padding: 0 10px;
	line-height: 1em;
	list-style-type: none;
  }
  .sidemenu_select dd.js-category-menu-body > ul ul,
  .topFilterCategory dd.js-category-menu-body > ul ul {
	margin: 20px 0 0;
	list-style-type: none;
	position: relative;
  }
  .sidemenu_select dd.js-category-menu-body > ul > li,
  .topFilterCategory dd.js-category-menu-body > ul > li {
	float: none;
	display: block;
	width: 100%!important;
	max-width: 100%;
	margin: 0!important;
	padding: 0;
	border-bottom: 1px solid #c8c8c8;
	list-style: none;
  }
  .sidemenu_select dd.js-category-menu-body > ul li.selected,
  .topFilterCategory dd.js-category-menu-body > ul li.selected {
	background: transparent!important;
  }
  .sidemenu_select dd.js-category-menu-body > ul li a,
  .topFilterCategory dd.js-category-menu-body > ul li a{
	padding: 0.8em;
	box-sizing: border-box;
  }

  .sidemenu_select dd.js-category-menu-body > ul > li:last-child,
  .topFilterCategory dd.js-category-menu-body > ul > li:last-child {
	border-bottom: none;
  }
  .sidemenu_select dd.js-category-menu-body > ul > li:before,
  .topFilterCategory dd.js-category-menu-body > ul > li:before {
	content: none;
  }
  .sidemenu_select dd.js-category-menu-body > ul > li .list_head,
  .topFilterCategory dd.js-category-menu-body > ul > li .list_head {
	padding: 0;
  }
  .sidemenu_select dd.js-category-menu-body > ul ul,
  .topFilterCategory dd.js-category-menu-body > ul ul {
	position: relative;
	margin-top: 0;
	margin-left: 1em;
  }
  .sidemenu_select dd.js-category-menu-body > ul ul li,
  .topFilterCategory dd.js-category-menu-body > ul ul li {
	position: relative;
	margin: 0;
	padding: 0 0 0 0.2em;
	list-style: none !important;
  }
  .sidemenu_select dd.js-category-menu-body > ul ul li:before,
  .topFilterCategory dd.js-category-menu-body > ul ul li:before {
	content: "";
	display: block;
	position: absolute;
	top: -0.5em;
	left: 0;
	width: 10px;
	height: calc(100% + 1em);
	border-left: 1px solid #c8c8c8;
  }
  .sidemenu_select dd.js-category-menu-body > ul ul li:last-child:before,
  .topFilterCategory dd.js-category-menu-body > ul ul li:last-child:before {
	height: calc(1em + 1em);
  }
  .sidemenu_select dd.js-category-menu-body > ul ul li::after,
  .topFilterCategory dd.js-category-menu-body > ul ul li::after {
	content: "";
	display: block;
	position: absolute;
	top: 1.5em;
	left: 0;
	width: 0.8em;
	height: 0;
	border-top: 1px solid #c8c8c8;
  }
}
@media screen and (max-width: 320px) {
  .sidemenu_select dd.js-category-menu-body,
  .topFilterCategory dd.js-category-menu-body {
	width: calc( 100% - 22px)!important;
  }
}
/* カートの中身を確認 */
.l-cartListBox,
.l-cartTotalBox {
  width: 100%;
}

.l-cartListBox > div,
.content_cart > div {
  margin-bottom: 20px;
}

/* カートの追加情報（ユーザーCSSとの兼ね合いでスタイル調整） */
.l-cartListBox .content_form.additional {
  padding: 20px; /*paddingは削除不可*/
  background: #fff;
  border: 1px solid #c8c8c8;
}
.l-cartListBox .content_form.additional .m-confirmCustomerInfo {
  padding: 0;
  border: none;
}
.headline + .l-cartListBox {
  margin-top: 40px;
}
@media screen and (max-width: 834px) {
  .headline + .l-cartListBox {
	margin-top: 30px;
  }
}
@media only screen and (max-width: 480px) {
  .headline + .l-cartListBox {
	margin-top: 20px;
  }
  .l-cartListBox .content_form.additional {
	padding: 10px;
  }
}
@media screen and (min-width: 1241px) {
  .section_inner:not(.box-bottom) .l-cartListBox {
	float: left;
	width: calc( 100% - 400px - 40px);
	max-width: 890px;
	margin-top: 40px;
	margin-right: 40px;
  }
  .section_inner:not(.box-bottom) .l-cartTotalBox {
	float: left;
	width: 400px;
  }
}

.l-cartTotalBox-inner {
  width: 100%;
  border-radius: 3px;
  border: solid 1px #c8c8c8;
  padding: 0;
  background: #fff;
}

.l-cartTotalBox-inner .o-header {
  text-align: center;
  padding: 10px 20px 8px;
  color: #fff;
  font-size: 21px;
  font-weight: bold;
}

.l-cartTotalBox-inner .o-body_product {
  padding: 10px 20px;
  font-size: 16px;
}
.l-cartTotalBox-inner .o-body {
	padding: 20px;
	font-size: 16px;
}
.l-cartTotalBox-inner .taxtypeBox {
	margin: 0;
	padding: 0;
	line-height: 1.3;
	box-sizing: border-box;
}
.l-cartTotalBox-inner .taxtypeBox .taxTitle {
	margin: 0 auto 4px;
	padding: 8px 10px 4px;
	font-size: 16px;
	font-weight: bold;
	box-sizing: border-box;
	background: #efefef;
	border-radius: 4px;
}
.l-cartTotalBox-inner .row-unit {
	margin: 0;
	padding: 0 0 8px 10px;
	box-sizing: border-box;
}
.l-cartTotalBox-inner [class^="o-row-"] {
	width: 100%;
	padding: 5px 0 0;
	display: flex;
	justify-content: space-between;
	box-sizing: border-box;
}
.l-cartTotalBox-inner .o-row-product {
	border-top: 1px solid #ccc;
}
.l-cartTotalBox-inner .o-body_product {
	font-size: 14px;
	line-height: 1.4;
}
.l-cartTotalBox-inner .o-body_product > div {
	padding: 0 0 5px;
}
.l-cartTotalBox-inner .o-body_product > .o-row-product,
.l-cartTotalBox-inner .o-body_product > .o-row-product_noline {
	padding: 10px 0 5px;
}
.l-cartTotalBox-inner .o-text-right {
	text-align: right;
}
.l-cartTotalBox-inner .o-row-total .o-text-left {
	font-size: 16px;
	font-weight: bold;
}
.l-cartTotalBox-inner .o-row-total .o-text-right {
	font-size: 20px;
	font-weight: bold;
	color: #e37d39;
}
.l-cartTotalBox-inner .o-row-subtotal.separate {
	margin: 4px 0 0 0;
	padding-top: 6px;
	border-top: 1px dotted #ccc;
}
.l-cartTotalBox-inner .o-row-fee-total {
	margin: 5px 0 0 0;
	padding: 3px 0 5px 8px;
	line-height: 1.4;
	align-items: center;
}
.l-cartTotalBox-inner .o-row-fee-total.separate {
	margin: 0;
}
.l-cartTotalBox-inner .o-row-fee-total .o-text-left {
	font-size: 18px;
	font-weight: bold;
	padding: 0;
}
.l-cartTotalBox-inner .o-row-fee-total .o-text-right,
.l-cartTotalBox-inner .o-row-initial-total .o-text-right {
	font-size: 20px;
	font-weight: bold;
	color: #e37d39;
	padding: 0;
}

.l-cartTotalBox-inner .hide {
	display: none;
}

@media screen and (max-width: 480px) {
  .l-cartTotalBox-inner .o-body {
	  padding: 15px;
	  font-size: 14px;
  }
  .l-cartTotalBox-inner .o-row-fee-total .o-text-left,
  .l-cartTotalBox-inner .o-row-initial-total .o-text-left,
  .l-cartTotalBox-inner .taxtypeBox .taxTitle {
	  font-size: 14px;
  }
  .l-cartTotalBox-inner .o-row-total .o-text-right,
  .l-cartTotalBox-inner .o-row-fee-total .o-text-right,
  .l-cartTotalBox-inner .o-row-initial-total .o-text-right {
	  font-size: 16px;
  }
  .l-cartTotalBox-inner .o-body_product {
	  font-size: 12px;
  }
}

.l-cartItem {
  border-radius: 3px;
  border: solid 1px #c8c8c8;
  padding: 30px;
  text-align: center;
  background: #fff;
}
.disabledItem {
  background: #ddd;
}

@media screen and (max-width: 768px) {
  .l-cartItem {
	padding: 30px 10px 10px;
  }
}

@media screen and (max-width: 480px) {
  .l-cartItem {
	padding: 30px 4px 4px;
  }
}

.m-cartItemPhoto {
  float: left;
  width: 175px;
}

@media screen and (max-width: 1280px) {
  .m-cartItemPhoto {
	width: 20%;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemPhoto {
	display: inline-block;
	float: none;
	width: 50%;
	margin-bottom: 30px;
  }
}

.m-cartItemPhoto img.product_img {
  width: 175px;
  height: auto;
}

@media screen and (max-width: 1280px) {
  .m-cartItemPhoto img.product_img {
	width: 100%;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemPhoto img.product_img {
	width: 80%;
  }
}

.m-cartItemPhoto .btn_modal a,
.m-cartItemPhoto .btn_externalLink a {
  position: relative;
  margin-top: 10px;
  padding: 12px;
  min-width: 100%;
}

.m-cartItemPhoto .btn_modal a > span,
.m-cartItemPhoto .btn_externalLink a > span {
  padding-right: 14px;
}

.m-cartItemPhoto .agree.item .checkbox_text {
  margin: 8px auto;
}

@media screen and (max-width: 1280px) {
  .m-cartItemPhoto .btn_modal a,
  .m-cartItemPhoto .btn_externalLink a {
	padding: 5px 0;
  }
  .m-cartItemPhoto .btn_modal a > span,
  .m-cartItemPhoto .btn_externalLink a > span {
	padding-right: 20px;
  }
}

.m-cartItemList {
  float: left;
  margin-left: 30px;
  width: calc( 100% - 175px - 30px);
  position: relative;
  text-align: left;
  /* 行: ヘッダ(数量・価格) */
}

@media screen and (max-width: 1280px) {
  .m-cartItemList {
	width: calc( 100% - 20% - 30px);
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemList {
	display: inline-block;
	float: none;
	width: 100%;
	margin-left: 0;
	margin-top: 20px;
  }
}

.m-cartItemList .o-treeMenu {
  margin: 0 15px;
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-treeMenu {
	margin: 0;
  }
}

.m-cartItemList .o-row-head > span:nth-child(1),
.m-cartItemList .o-row-mainItem > span:nth-child(1),
.m-cartItemList .o-row-subItem > span:nth-child(1),
.m-cartItemList .o-row-subTotal > span:nth-child(1) {
  width: calc(100% - 110px);
  text-align: left;
  display: inline-block;
  margin: 0 0 5px;
}
.m-cartItemList .o-row-mainItem.editable > span:nth-child(1),
.m-cartItemList .o-row-subItem.editable > span:nth-child(1) {
  width: calc(100% - 130px);
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(1) {
  text-align: left;
  display: inline-block;
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-head > span:nth-child(1),
  .m-cartItemList .o-row-mainItem > span:nth-child(1),
  .m-cartItemList .o-row-subItem > span:nth-child(1),
  .m-cartItemList .o-row-subTotal > span:nth-child(1) {
	width: calc(100% - 90px);
	margin: 5px 0 5px 5px;
  }
  .m-cartItemList .o-row-mainItem.editable > span:nth-child(1),
  .m-cartItemList .o-row-subItem.editable > span:nth-child(1) {
	width: calc(100% - 125px);
  }
}

.m-cartItemList .o-row-head > span:nth-child(2),
.m-cartItemList .o-row-mainItem > span:nth-child(2),
.m-cartItemList .o-row-subItem > span:nth-child(2),
.m-cartItemList .o-row-subTotal > span:nth-child(2) {
  width: 90px;
  position: absolute;
  right: 10px;
  text-align: center;
  display: inline-block;
}
.m-cartItemList .o-row-mainItem.editable > span:nth-child(2),
.m-cartItemList .o-row-subItem.editable > span:nth-child(2) {
  width: 110px;
  right: 0;
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-head > span:nth-child(2),
  .m-cartItemList .o-row-mainItem > span:nth-child(2),
  .m-cartItemList .o-row-subItem > span:nth-child(2),
  .m-cartItemList .o-row-subTotal > span:nth-child(2) {
	right: 5px;
  }
}

.m-cartItemList .o-row-head > span:nth-child(3),
.m-cartItemList .o-row-mainItem > span:nth-child(3),
.m-cartItemList .o-row-subItem > span:nth-child(3),
.m-cartItemList .o-row-subTotal > span:nth-child(3) {
  width: 155px;
  text-align: right;
  display: inline-block;
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(3) {
  text-align: right;
  display: inline-block;
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-head > span:nth-child(3),
  .m-cartItemList .o-row-mainItem > span:nth-child(3),
  .m-cartItemList .o-row-subItem > span:nth-child(3),
  .m-cartItemList .o-row-subTotal > span:nth-child(3) {
	width: 115px;
  }
}

.m-cartItemList .o-row-head input[type='text'],
.m-cartItemList .o-row-mainItem input[type='text'],
.m-cartItemList .o-row-subItem input[type='text'],
.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem input[type='text'],
.m-cartItemList .o-row-subTotal input[type='text'] {
  width: 80px;
  height: 30px;
  text-align: center;
}

.m-cartItemList .o-row-mainItem input[type='text'].preferred-use-start-date-text,
.m-cartItemList .o-row-subItem input[type='text'].preferred-use-start-date-text,
.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem input[type='text'].preferred-use-start-date-text,
.m-cartItemList .o-row-subTotal input[type='text'].preferred-use-start-date-text {
	width: 130px;
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-head input[type='text'],
  .m-cartItemList .o-row-mainItem input[type='text'],
  .m-cartItemList .o-row-subItem input[type='text'],
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem input[type='text'],
  .m-cartItemList .o-row-subTotal input[type='text'] {
	width: 40px;
  }
}

.m-cartItemList .o-row-head {
  border-bottom: 1px solid #ddd;
  font-size: 18px;
}

@media screen and (max-width: 1280px) {
  .m-cartItemList .o-row-head {
	font-size: 18px;
  }
}

@media screen and (max-width: 999px) {
  .m-cartItemList .o-row-head {
	font-size: 15px;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-head {
	font-size: 14px;
  }
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-head {
	font-size: 12px;
  }
}

.m-cartItemList .o-row-head > span:nth-child(3) {
  margin-left: -35px;
}

.m-cartItemList .o-row-mainItem {
  margin: 13px 0 5px;
  position: relative;
  text-align: left;
}

.m-cartItemList .o-row-mainItem > span {
  font-size: 21px;
  font-weight: bold;
}

@media screen and (max-width: 1280px) {
  .m-cartItemList .o-row-mainItem > span {
	font-size: 19px;
  }
}

@media screen and (max-width: 999px) {
  .m-cartItemList .o-row-mainItem > span {
	font-size: 17px;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-mainItem > span {
	font-size: 15px;
  }
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-mainItem > span {
	font-size: 14px;
  }
}

.m-cartItemList .o-row-mainItem > span:nth-child(3) {
  margin-left: -15px;
  word-break: keep-all;
}

.m-cartItemList .o-item-group:nth-child(n+2) {
  margin-top: 30px;
}
.m-cartItemList .info,
.cart_table .info .info {
  width: 100%;
  font-size: 14px;
  margin: 5px 0 0 0;
}
.m-cartItemList .info span,
.cart_table .info .info span {
  margin: 0 5px 0 0;
  padding: 2px 4px;
  display: inline-block;
  line-height: 1.2;
  font-size: 12px;
  border: 1px solid #ddd;
  background: #fff;
  min-width: 6em;
  text-align: center;
  vertical-align: middle;
}
.m-cartItemList .o-group-subItem {
  width: 100%;
  display: block;
  background-color: #efefef;
  padding: 10px 15px;
  border-top: 1px dotted #c8c8c8;
  box-sizing: border-box;
  position: relative;
  text-align: left;
}
.userInfoInput {
	float: left;
	margin-right: 1%;
}

/* 商品明細部分 */
.cart_table td.product_sub {
	width: 45%;
}

.m-cartItemList .o-row-mainItem+.o-group-subItem {
  border-top: none;
}

.m-cartItemList .o-row-subItem > span {
  display: table-cell;
  vertical-align: middle;
  font-size: 16px;
}

@media screen and (max-width: 1280px) {
  .m-cartItemList .o-row-subItem > span {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-cartItemList .o-row-subItem > span {
	font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-subItem > span {
	font-size: 14px;
  }
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subItem > span {
	font-size: 14px;
  }
}

.m-cartItemList .o-row-subItem > span:nth-child(1) {
  left: 0;
  font-size: 16px;
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subItem > span:nth-child(1) {
	font-size: 14px;
  }
}

.m-cartItemList .o-row-subItem > span:nth-child(1) > a {
  color: #333;
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-subItem > span:nth-child(1) {
	margin-right: 0;
	margin-left: 0;
  }
}

.m-cartItemList .o-row-subItem > span:nth-child(3) {
  font-weight: bold;
  margin-left: -15px;
}
.m-cartItemList .o-group-subItem .o-row-subItem .btn_externalLink,
.m-cartItemList .o-group-subItem .o-row-subItem .btn_modal,
table .btn_externalLink,
table .btn_modal {
  min-width: auto;
  min-height: auto;
  text-align: left;
  margin: 0;
  line-height: 1.4;
}
.m-cartItemList .o-group-subItem .o-row-subItem > .btn_externalLink,
.m-cartItemList .o-group-subItem .o-row-subItem .btn_modal {
  margin: 5px 0;
}
.m-cartItemList .o-row-subItem .btn_externalLink a,
.m-cartItemList .o-row-subItem .btn_modal a,
table .btn_externalLink a,
table .btn_modal a,
.btn_usage a {
  position: relative;
  display: inline-block;
  width: auto;
  min-width: auto;
  text-decoration: underline;
  margin: 0;
  padding: 0;
  font-weight: normal;
  border: none;
  font-size: 15px;
  background: transparent;
  border-radius: 5px;
}
table .btn_externalLink a,
table .btn_modal a,
.btn_usage a {
  margin-top: 5px;
  min-width: 15em;
  padding: 3px 4px;
  font-size: 12px!important;
  text-decoration: none;
  text-align: center;
}
.btn_usage a {
  min-width: 10em;
}
table .btn_externalLink span,
table .btn_modal span {
  padding-right: 0;
}
.m-cartItemList .o-group-subItem .o-row-subItem > .btn_externalLink a,
.m-cartItemList .o-group-subItem .o-row-subItem .btn_modal a {
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  .m-cartItemList .o-group-subItem .o-menuitem {
	line-height: 1.2;
  }
  .m-cartItemList .o-group-subItem .o-row-subItem > .btn_externalLink a,
  .m-cartItemList .o-group-subItem .o-row-subItem .btn_modal a {
	font-size: 14px;
  }
}
@media screen and (min-width: 481px) {
  .m-cartItemList .o-row-subItem .o-treeMenu .btn_externalLink a,
  .m-cartItemList .o-row-subItem .o-treeMenu .btn_modal a {
	margin: 8px 0 0 -12px;
  }
}
table .btn_externalLink a,
table .btn_modal a {
  font-size: 100%;
}
@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subItem .btn_externalLink a,
  .m-cartItemList .o-row-subItem .o-modalBtn {
	margin: 8px 0 0 0;
  }
}

.m-cartItemList .o-row-subItem .btn_modal a:after,
.m-cartItemList .o-row-subItem .btn_externalLink a:after,
.billing_cart .btn_modal a:after,
.billing_cart .btn_externalLink a:after,
table .btn_modal a:after,
table .btn_externalLink a:after {
  display: none;
}

.m-cartItemList .o-row-subItem .btn_externalLink a:before,
.m-cartItemList .o-row-subItem .o-modalBtn:before,
.billing_cart .btn_externalLink a:before,
.billing_cart .o-modalBtn:before,
table .btn_modal a:before,
table .btn_externalLink a:before,
.btn_usage a:before {
  font-family: "FontAwesome";
  content: '\f0f6';
  margin-right: 3px;
  font-size: 14px;
  vertical-align: middle;
}
.btn_modal a.icon-play:before,
.btn_externalLink a.icon-play:before {
  content: '\f04b';
}
.btn_modal a.icon-pause:before,
.btn_externalLink a.icon-pause:before {
  content: '\f04c';
}
.btn_modal a.icon-chart:before,
.btn_externalLink a.icon-chart:before {
  content: '\f080';
}
.btn_modal a.icon-config:before,
.btn_externalLink a.icon-config:before {
  content: '\f013';
}
a.icon-note:before {
	font-family: "FontAwesome";
	content: '\f0f6';
	margin-right: 3px;
	font-size: 14px;
	vertical-align: middle;
}
.m-cartItemList .o-row-subItem .btn_externalLink a > span,
.m-cartItemList .o-row-subItem .btn_modal a > span,
table .btn_externalLink a > span,
table .btn_modal a > span{
  position: relative;
  font-weight: normal;
}

.m-cartItemList .o-row-subItem .agree.item {
  text-align: left;
  margin: 0 0 0 -12px;
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-subItem .agree.item {
	text-align: left;
	margin: 0;
  }
}

@media screen and (max-width: 1280px) {
  .m-cartItemList .o-row-subItem .btn_externalLink a,
  .m-cartItemList .o-row-subItem .o-externalLinkBtn,
  .m-cartItemList .o-row-subItem .o-modalBtn span,
  .m-cartItemList .o-row-subItem .agree.item .checkbox_text {
	font-size: 13px;
  }
}

@media screen and (max-width: 999px) {
  .m-cartItemList .o-row-subItem .btn_externalLink a,
  .m-cartItemList .o-row-subItem .o-externalLinkBtn,
  .m-cartItemList .o-row-subItem .o-modalBtn span,
  .m-cartItemList .o-row-subItem .agree.item .checkbox_text {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-subItem .btn_externalLink a,
  .m-cartItemList .o-row-subItem .o-externalLinkBtn,
  .m-cartItemList .o-row-subItem .o-modalBtn span,
  .m-cartItemList .o-row-subItem .agree.item .checkbox_text {
	font-size: 12px;
  }
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subItem .btn_externalLink a,
  .m-cartItemList .o-row-subItem .o-externalLinkBtn,
  .m-cartItemList .o-row-subItem .o-modalBtn span,
  .m-cartItemList .o-row-subItem .agree.item .checkbox_text {
	font-size: 12px;
  }
}

.m-cartItemList .o-row-subItem .m-treeMenu,
.m-cartItemList .o-row-mainItem .m-treeMenu {
  margin: 0;
  text-align: left;
}
.m-cartItemList .o-row-mainItem .m-treeMenu .o-menuitem:before{
  display: none;
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem {
  padding: 5px 0;
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem > span {
  vertical-align: middle;
  font-size: 16px;
}

@media screen and (max-width: 1280px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem > span {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem > span {
	font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem > span {
	font-size: 13px;
  }
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem > span {
	font-size: 13px;
  }
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(1), .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(1) {
  margin-right: 5px;
  margin-left: 5px;
  display: inline-block;
  max-width: 100%;
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(1) {
  margin-right: 15px;
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(1) {
	margin-left: 15px;
  }
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(2), .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(2) {
  margin-right: 5px;
  margin-left: -5px;
  display: inline-block;
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(3), .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem > span:nth-child(3) {
  font-weight: bold;
  margin-left: -15px;
}

.m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu:before {
  border-left: 0px;
}

.m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem:last-child:before {
  background-color: transparent;
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box {
  background-color: #fff;
  margin-top: 5px;
  padding: 5px;
  z-index: 2;
}
@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box {
	width: auto;
	margin: 5px 0 0 0;
  }
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1.2;
  padding: 3px 0;
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row:first-child, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row:first-child {
  border-bottom: 1px dotted #c8c8c8;
}

.m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span {
  font-size: 12px;
}

@media screen and (max-width: 1280px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span {
	font-size: 12px;
  }
}

@media screen and (max-width: 999px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span {
	font-size: 12px;
  }
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span, .m-cartItemList .o-row-mainItem .m-treeMenu .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row span {
	font-size: 12px;
  }
}
.o-treeMenu .o-menuitem .o-plan-box > .o-plan-row > span {
  box-sizing: border-box;
  display: inline-block;
}
.taxType {
  font-size: 86%;
  display: inline-block;
  vertical-align: middle;
  margin-top: -1px;
}
.o-treeMenu .o-menuitem .o-plan-box > .o-plan-row > span:nth-child(1) {
  width: calc( 52% - 50px );
  text-align: left;
}
.o-treeMenu .o-menuitem .o-plan-box > .o-plan-row > span:nth-child(2) {
  width: 18%;
}
.o-treeMenu .o-menuitem .o-plan-box > .o-plan-row > span:nth-child(3) {
  width: 30%;
}
.o-treeMenu .o-menuitem .o-plan-box > .o-plan-row > span:nth-child(4) {
  width: 50px;
}
@media screen and (max-width: 600px) {
  .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row > span:nth-child(1) {
	width: calc( 52% - 42px );
  }
  .o-treeMenu .o-menuitem .o-plan-box > .o-plan-row > span:nth-child(4) {
	width: 42px;
  }
}

.m-cartItemList .o-row-subTotal {
  margin-top: 10px;
  padding: 20px 0 15px;
  border-top: 1px solid #d0dbdc;
  /* display: table-row; */
}

.m-cartItemList .o-row-subTotal > span {
  font-size: 18px;
  font-weight: bold;
}

@media screen and (max-width: 1280px) {
  .m-cartItemList .o-row-subTotal > span {
	font-size: 18px;
  }
}

@media screen and (max-width: 999px) {
  .m-cartItemList .o-row-subTotal > span {
	font-size: 15px;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-subTotal > span {
	font-size: 14px;
  }
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subTotal > span {
	font-size: 12px;
  }
}

.m-cartItemList .o-row-subTotal > span:nth-child(3) {
  font-size: 21px;
  margin-left: -15px;
  word-break: keep-all;
}

@media screen and (max-width: 1280px) {
  .m-cartItemList .o-row-subTotal > span:nth-child(3) {
	font-size: 19px;
  }
}

@media screen and (max-width: 999px) {
  .m-cartItemList .o-row-subTotal > span:nth-child(3) {
	font-size: 17px;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemList .o-row-subTotal > span:nth-child(3) {
	font-size: 15px;
  }
}

@media screen and (max-width: 480px) {
  .m-cartItemList .o-row-subTotal > span:nth-child(3) {
	font-size: 14px;
  }
}

.m-cartItemActionBox {
  padding: 10px 5px;
}

.m-cartItemActionBox a {
  font-size: 15px;
}

@media screen and (max-width: 1280px) {
  .m-cartItemActionBox a {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-cartItemActionBox a {
	font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .m-cartItemActionBox a {
	font-size: 12px;
  }
}

/* 利用開始希望日 */
.m-cartItemList .preferred_date {
	margin-top: 10px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
 .m-cartItemList .o-row-mainItem .preferred_date {
	padding: 0 5px;
}
.m-cartItemList .preferred_date label {
	margin: 0 10px 0 0;
}
.m-cartItemList .preferred_date input[type='text'] {
	height: 32px;
}
.m-cartItemList .preferred_date .has-error {
	width: 100%;
}
a.preferred_setting {
	margin: 0 0 0 10px;
	padding: 5px 24px 5px 10px;
	font-weight: bold;
}
.preferredall a.preferred_setting,
.l-cartTotalBox a.preferred_setting {
	max-width: 220px;
	margin: 15px auto 0;
}
.preferredall {
	display: none;
}
@media screen and (max-width: 1240px) {
	.l-cartListBox > .preferredall:last-of-type {
		margin-bottom: 30px;
	}
	.preferredall {
		display: block;
	}
	.preferredall a.preferred_setting {
		margin: 0 0 0 auto;
	}
	.l-cartTotalBox a.preferred_setting {
		display: none;
	}
}
@media screen and (max-width: 600px) {
	.m-cartItemList .preferred_date {
		margin: 10px 0;
	}
	.btn_preferred {
	  width: 100%;
	}
	a.preferred_setting {
		margin: 10px auto 0;
		max-width: 240px;
		box-sizing: border-box;
	}
}
@media screen and (max-width: 480px) {
	.m-cartItemList .preferred_date {
		padding: 10px 5px;
	}
	.m-cartItemList .o-row-subItem .preferred_date {
		padding: 10px 0;
	}
}

/* 追加費用・利用料 */
.charge_additional_main,
.m-cartItemList div[id^="additional_child"] {
	width: 100%;
}
.addcost-title {
	margin: 10px 0 0;
	padding: 5px 0;
	border-top: 1px solid #d64747;
	color: #d64747;
}
.m-cartItemList .addcost {
	margin-top: 4px;
	padding: 4px;
	background: #fff;
	box-sizing: border-box;
}
 .m-cartItemList .o-row-mainItem .addcost {
	padding: 4px 0;
}
.m-cartItemList .addcost .addcost-head,
.m-cartItemList .addcost .addcost-body {
	display: flex;
	align-items: center;
}
.m-cartItemList .addcost .addcost-head > div,
.m-cartItemList .addcost .addcost-body > div {
	font-size: 12px;
	padding: 4px 0;
	line-height: 1.2;
}
.m-cartItemList .addcost .addcost-head {
	border-bottom: 1px dotted #c8c8c8;
}
.m-cartItemList .addcost .addcost-head div {
	text-align: center;
}
.m-cartItemList .addcost * {
	box-sizing: border-box;
}
.m-cartItemList .addcost .addcost-head {
	text-align: center;
}
.m-cartItemList .addcost .addcost-body {
	flex-wrap: wrap;
}
.m-cartItemList .addcost .title {
	width: calc( 52% - 50px );
	background: transparent;
}
.m-cartItemList .addcost .quantity {
	width: 18%;
}
.m-cartItemList .addcost .cost {
	width: 30%;
}
.m-cartItemList .addcost .taxtype {
	width: 50px;
}
.m-cartItemList .modal_body .addcost .title {
	width: calc( 56% - 50px );
}
.m-cartItemList .modal_body .addcost .quantity {
	width: 14%;
}
.m-cartItemList .modal_body .addcost .taxtype {
	width: 50px;
}
@media screen and (max-width: 600px) {
  .m-cartItemList .addcost .taxtype,
  .m-cartItemList .modal_body .addcost .taxtype {
	  width: 42px;
  }
  .m-cartItemList .addcost .title {
	  width: calc( 52% - 42px );
  }
  .m-cartItemList .modal_body .addcost .title {
	  width: calc( 56% - 42px );
  }
}
.m-cartItemList .addcost .addcost-body .spOnly {
	display: none;
}
.m-cartItemList .addcost .addcost-body .quantity,
.m-cartItemList .addcost .addcost-body .taxtype {
	text-align: center;
}
.m-cartItemList .addcost .addcost-body .cost {
	text-align: right;
}
.m-cartItemList .addcost .addcost-body .plan {
	margin: 4px 0 0 auto;
	padding: 4px 6px;
	background: #efefef;
	position: relative;
}
.m-cartItemList .addcost .addcost-body .plan::before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-bottom-color: #efefef;
	position: absolute;
	left: 10px;
	top: -16px;
}
.m-cartItemList .addcost .addcost-body .plan-main {
	display: flex;
	flex-wrap: nowrap;
	text-align: right;
}
.m-cartItemList .addcost .addcost-body .plan .difference-price {
	margin-right: 3em;
	text-align: right;
}
.m-cartItemList .addcost .addcost-body .plan-cost {
	width: 7.2em;
}
.m-cartItemList .addcost .addcost-body .symbol {
	width: 1.5em;
}
.m-cartItemList .addcost .addcost-body .plan-detail {
	width: 8em;
}
#modal_body_preferred_use_start_date_all_set .o-right,
#modal_body_preferred_use_start_date_all_set .o-left {
	padding: 6px;
}
#modal_body_preferred_use_start_date_all_set .addcost {
	margin-top: 20px;
}
@media screen and (max-width: 480px) {
	.m-cartItemList .preferred_date label {
		margin: 0 10px 0 0;
	}
	.m-cartItemList .addcost-title {
		padding: 4px 0;
	}
	.m-cartItemList .o-row-mainItem .addcost {
		padding: 5px 0;
	}
}

/*申請書*/
.form tr.dispform {
  cursor: pointer;
}
.form tr.dispform th,
.form tr.dispform td {
  vertical-align: middle;
}

.m-agreeTermsOfService {
  display: table;
  margin: 10px 0;
  background-color: #efefef;
  width: 100%;
}
.m-agreeTermsOfService .o-inner {
  display: table-cell;
  padding: 0 20px;
  width: 100%;
  height: 90px;
  vertical-align: middle;
  text-align: center;
}
.m-agreeTermsOfService p {
  margin-bottom: 5px;
}
@media screen and (max-width: 480px) {
  .m-agreeTermsOfService .o-inner {
	text-align: left;
  }
  .m-agreeTermsOfService p {
	margin-bottom: 10px;
  }
}
.m-agreeTermsOfService .checkbox_text {
  display: inline-block;
  margin: 0;
  padding-top: 0;
}
.m-agreeTermsOfService .checkbox_text span {
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 480px) {
	.m-agreeTermsOfService .checkbox_text span {
	  font-size: 16px;
	}
}
/* 非アクティブボタン */
.btn_deactive a, .btn_deactive input, .btn_deactive a:hover, .btn_deactive input:hover{
  border: none!important;/* style.cssのボーダー打ち消し */
  pointer-events: none;
  cursor: default;
}
/* カスタム管理項目チェックボックス */
.checkbox-image {
	width:20px;
}
.checkbox-display {
	display: flex;
}
.checkbox-wh {
	width: 20px;
	height: 20px;
}
.main-store-final-message {
	padding-left:1.5em;
}
.option-store-final-message {
	padding-left:2em;
}
/* 完了画面 */
.complete-number {
  margin: 30px auto;
  max-width: 1000px;
  padding: 80px 10px;
  text-align: center;
  border: 1px solid #c8c8c8;
  font-size: 28px;
  font-weight: bold;
  background: #fff;
}
.complete-number .no {
  display: inline-block;
  font-weight: bold;
}
@media screen and (max-width: 1280px) {
  .complete-number {
	padding: 40px 10px;
	font-size: 24px;
  }
}
@media screen and (max-width: 999px) {
  .complete-number {
	font-size: 21px;
  }
}
@media screen and (max-width: 768px) {
  .complete-number {
	font-size: 18px;
  }
}
@media screen and (max-width: 480px) {
  .complete-number {
	padding: 20px 10px;
	font-size: 16px;
  }
}

/* お見積り有効期限 */
.m-estimated-date {
  margin: 30px 0 10px;
  text-align: center;
}

@media screen and (max-width: 480px) {
  .m-estimated-date {
	text-align: left;
  }
}

/* お見積り商品情報 */
/* お客様情報 */
.m-customer-complete-container {
  text-align: center;
  margin: 0 auto;
}

.m-estimated-info,
.m-customer-info {
  width: 100%;
  max-width: 1280px;
  display: inline-block;
  text-align: center;
  margin-bottom: 30px;
}

.m-estimated-info .o-header,
.m-customer-info .o-header {
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  width: 100%;
  max-width: 790px;
  color: #fff;
  padding: 15px 0 12px;
  font-size: 24px;
  font-weight: bold;
  border-radius: 4px;
}

@media screen and (max-width: 1280px) {
  .m-estimated-info .o-header,
  .m-customer-info .o-header {
	font-size: 21px;
  }
}

@media screen and (max-width: 999px) {
  .m-estimated-info .o-header,
  .m-customer-info .o-header {
	font-size: 18px;
  }
}

@media screen and (max-width: 768px) {
  .m-estimated-info .o-header,
  .m-customer-info .o-header {
	font-size: 16px;
  }
}

@media screen and (max-width: 480px) {
  .m-estimated-info .o-header,
  .m-customer-info .o-header {
	font-size: 15px;
  }
}

.m-estimated-info .open .o-header, .m-customer-info .open .o-header {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.m-estimated-info .o-header:after,
.m-customer-info .o-header:after {
  content: '';
  position: absolute;
  margin: auto;
  top: 0;
  bottom: 0;
  right: 30px;
  width: 29px;
  height: 29px;
  background-image: url("../images/icon_chevron-circle-down.png");
  background-repeat: no-repeat;
  background-position: 0 0;
}

.m-estimated-info .open .o-header:after, .m-customer-info .open .o-header:after {
  background-image: url("../images/icon_chevron-circle-up.png");
}

.m-estimated-info .o-body,
.m-customer-info .o-body {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  width: 100%;
  max-width: 790px;
  text-align: left;
  padding: 40px 40px 0;
  border-left: 1px solid #c8c8c8;
  border-right: 1px solid #c8c8c8;
  border-bottom: 1px solid #c8c8c8;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
}

@media screen and (max-width: 768px) {
  .m-estimated-info .o-body,
  .m-customer-info .o-body {
	padding: 10px 10px 0;
  }
}

.m-estimated-info .u-2cols-container .o-right,
.m-estimated-info .u-2cols-container .o-left,
.m-customer-info .u-2cols-container .o-right,
.m-customer-info .u-2cols-container .o-left {
  padding: 8px;
  font-size: 14px;
}

@media screen and (max-width: 1280px) {
  .m-estimated-info .u-2cols-container .o-right,
  .m-estimated-info .u-2cols-container .o-left,
  .m-customer-info .u-2cols-container .o-right,
  .m-customer-info .u-2cols-container .o-left {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-estimated-info .u-2cols-container .o-right,
  .m-estimated-info .u-2cols-container .o-left,
  .m-customer-info .u-2cols-container .o-right,
  .m-customer-info .u-2cols-container .o-left {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-estimated-info .u-2cols-container .o-right,
  .m-estimated-info .u-2cols-container .o-left,
  .m-customer-info .u-2cols-container .o-right,
  .m-customer-info .u-2cols-container .o-left {
	font-size: 11px;
  }
}

@media screen and (max-width: 480px) {
  .m-estimated-info .u-2cols-container .o-right,
  .m-estimated-info .u-2cols-container .o-left,
  .m-customer-info .u-2cols-container .o-right,
  .m-customer-info .u-2cols-container .o-left {
	font-size: 11px;
  }
}

@media screen and (max-width: 768px) {
  .m-estimated-info .u-2cols-container .o-right,
  .m-estimated-info .u-2cols-container .o-left,
  .m-customer-info .u-2cols-container .o-right,
  .m-customer-info .u-2cols-container .o-left {
	padding: 0;
  }
}

.m-estimated-info .u-2cols-container .o-left,
.m-customer-info .u-2cols-container .o-left {
  width: 39%;
  text-align: right;
}

.m-estimated-info .u-2cols-container .o-right,
.m-customer-info .u-2cols-container .o-right {
  width: 59%;
}

/* ご請求先情報 */
/* お届け先情報 */
/* お支払い方法 */
.m-customer-subinfo {
  border: 1px solid #c8c8c8;
  border-radius: 5px 5px 0 0;
}
.m-payment-method .o-title,
.m-customer-subinfo .o-title {
  color: #fff;
  padding: 8px 20px 5px;
  font-size: 18px;
  font-weight: bold;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  text-align: center;
}

.m-payment-method .open {
  background:#ffffff;
}

@media screen and (max-width: 1280px) {
  .m-payment-method .o-title,
  .m-customer-subinfo .o-title {
	font-size: 18px;
  }
}

@media screen and (max-width: 999px) {
  .m-payment-method .o-title,
  .m-customer-subinfo .o-title {
	font-size: 15px;
  }
}

@media screen and (max-width: 768px) {
  .m-payment-method .o-title,
  .m-customer-subinfo .o-title {
	font-size: 14px;
  }
}

@media screen and (max-width: 480px) {
  .m-payment-method .o-title,
  .m-customer-subinfo .o-title {
	font-size: 12px;
  }
}

.m-payment-method .o-inner,
.m-customer-subinfo .o-inner {
  padding: 20px;
  font-size: 14px;
  background: #fff;
}

@media screen and (max-width: 1280px) {
  .m-payment-method .o-inner,
  .m-customer-subinfo .o-inner {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-payment-method .o-inner,
  .m-customer-subinfo .o-inner {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-payment-method .o-inner,
  .m-customer-subinfo .o-inner {
	font-size: 12px;
	padding: 5px 10px;
  }
}

@media screen and (max-width: 400px) {
  .m-payment-method .o-inner,
  .m-customer-subinfo .o-inner {
	padding: 5px;
  }
}

.m-payment-method .o-credit-title,
.m-customer-subinfo .o-credit-title {
  font-size: 16px;
  font-weight: bold;
}

@media screen and (max-width: 1280px) {
  .m-payment-method .o-credit-title,
  .m-customer-subinfo .o-credit-title {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-payment-method .o-credit-title,
  .m-customer-subinfo .o-credit-title {
	font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .m-payment-method .o-credit-title,
  .m-customer-subinfo .o-credit-title {
	font-size: 12px;
  }
}

@media screen and (max-width: 480px) {
  .m-payment-method .o-credit-title,
  .m-customer-subinfo .o-credit-title {
	font-size: 11px;
  }
}

.m-payment-method .o-credit-header,
.m-customer-subinfo .o-credit-header {
  position: relative;
  z-index: 1;
}

/* お支払い方法 */
.m-payment-method {
  border: 1px solid #c8c8c8;
  border-radius: 5px;
}
@media screen and (max-width: 480px) {
  .o-inner.payment .m-inputCustomerInfo .btn_detail {
	width: 100%;
  }
}
@media screen and (min-width: 480px) {
  .payment_credit .o-right #name,
  .payment_credit .o-right #card_no {
	min-width: 200px;
  }
}
/* クレジットカード表示 */
.m-credit-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (max-width: 999px) {
  .m-credit-list {
	display: block;
  }
}

.m-credit-list .o-row:nth-child(1) {
  width: 35%;
}

.m-credit-list .o-row:nth-child(2) {
  width: 25%;
}

.m-credit-list .o-row:nth-child(3) {
  width: 15%;
  text-align: center;
}

@media screen and (max-width: 999px) {
  .m-credit-list .o-row:nth-child(3) {
	text-align: left;
  }
}

.m-credit-list .o-row:nth-child(4) {
  width: 25%;
}

@media screen and (max-width: 999px) {
  .m-credit-list .o-row:nth-child(1), .m-credit-list .o-row:nth-child(2), .m-credit-list .o-row:nth-child(3), .m-credit-list .o-row:nth-child(4) {
	width: 100%;
  }
}

.m-credit-list .o-row span {
  display: block;
  font-size: 14px;
}

@media screen and (max-width: 1280px) {
  .m-credit-list .o-row span {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-credit-list .o-row span {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-credit-list .o-row span {
	font-size: 11px;
  }
}

@media screen and (max-width: 480px) {
  .m-credit-list .o-row span {
	font-size: 11px;
  }
}

@media screen and (max-width: 999px) {
  .m-credit-list .o-row span {
	display: inline-block;
	width: 49%;
  }
}

/* クレジットカード　本人確認欄 */
.payment_credit .verification {
  margin: 20px auto 0;
  border-top: 1px solid #c8c8c8
}
.payment_credit .verification h3 {
  font-size: 16px;
  margin: 20px auto;
  text-align: center;
}
.payment_credit .verification .notice {
  color: #333;
  font-weight: bold;
  margin: 0 0 10px;
  padding: 0 8px;
}
@media screen and (max-width: 480px) {
  /*.content.form h3を上書きする*/
  .content.form .payment_credit .verification h3 {
	font-size: 16px;
  }
}

.m-confirmCustomerInfo {
  box-sizing: border-box;
  border-radius: 5px;
  border: 1px solid #c8c8c8;
  margin: 20px 0 40px;
  padding: 40px;
  background: #fff;
}

@media screen and (max-width: 768px) {
  .m-confirmCustomerInfo {
	margin: 20px 0;
	padding: 15px 10px;
  }
}
@media screen and (max-width: 400px) {
  .m-confirmCustomerInfo {
	padding: 15px 5px;
  }
}

@media screen and (max-width: 480px) {
  .l-cartListBox .m-confirmCustomerInfo {
	margin: 10px 0;
  }
}

.m-customer-subinfo .m-confirmCustomerInfo {
  border: none;
  margin: 0;
  border-radius: 0;
}

/* input, confirm共通 */
.content.form h3 {
  font-size: 20px;
}
h3 + form > .u-2cols-container {
  margin-top: 10px;
}
.u-2cols-container .o-left {
  width: 18em;
  text-align: left;
}
.u-2cols-container .o-right {
  width: calc( 100% - 18em);
}
@media screen and (min-width: 1024px) {
  /* フルサイズのフォーム用 */
  .u-2cols-container.wide .o-left {
	width: 22em;
  }
  .u-2cols-container.wide .o-right {
	width: calc( 100% - 23em);
  }
}

.m-confirmCustomerInfo.u-2cols-container {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.m-confirmCustomerInfo.u-2cols-container .o-right,
.m-confirmCustomerInfo.u-2cols-container .o-left {
  padding: 16px 8px;
  font-size: 16px;
  line-height: 1.4;
}

@media screen and (max-width: 1280px) {
  .m-confirmCustomerInfo.u-2cols-container .o-right,
  .m-confirmCustomerInfo.u-2cols-container .o-left {
	font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  .m-confirmCustomerInfo.u-2cols-container .o-right,
  .m-confirmCustomerInfo.u-2cols-container .o-left {
	font-size: 13px;
  }
}

@media screen and (max-width: 480px) {
  .m-confirmCustomerInfo.u-2cols-container .o-right,
  .m-confirmCustomerInfo.u-2cols-container .o-left {
	font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  .m-confirmCustomerInfo.u-2cols-container .o-right,
  .m-confirmCustomerInfo.u-2cols-container .o-left {
	padding: 6px 0 4px;
  }
}

.m-confirmCustomerInfo.u-2cols-container .o-left {
  text-align: left;
}

@media screen and (max-width: 768px) {
  .m-confirmCustomerInfo.u-2cols-container .o-left,
  .m-confirmCustomerInfo.u-2cols-container .o-right {
	width: 100%;
	display: block;
  }
  .m-confirmCustomerInfo.u-2cols-container .o-left {
	border-bottom: 1px dotted #c8c8c8;
	font-weight: bold;
	color: #666;
  }
  .m-confirmCustomerInfo.u-2cols-container .o-right {
	margin: 0 0 10px;
  }
}

.m-bank-payment,
.m-credit-payment {
  margin-left: 30px;
}

.m-bank-payment .selectWrap select,
.m-credit-payment .selectWrap select {
  width: 100%;
  background: transparent;
}

.m-bank-payment .radio_text,
.m-credit-payment .radio_text {
  margin-left: -30px;
}

.m-bank-payment .radio_text span,
.m-credit-payment .radio_text span {
  padding-left: 2px;
  font-size: 16px;
  font-weight: bold;
}

@media screen and (max-width: 1280px) {
  .m-bank-payment .radio_text span,
  .m-credit-payment .radio_text span {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-bank-payment .radio_text span,
  .m-credit-payment .radio_text span {
	font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .m-bank-payment .radio_text span,
  .m-credit-payment .radio_text span {
	font-size: 13px;
  }
}

@media screen and (max-width: 480px) {
  .m-bank-payment .radio_text span,
  .m-credit-payment .radio_text span {
	font-size: 13px;
  }
}

.m-bank-payment .o-creditcard-text,
.m-credit-payment .o-creditcard-text {
}

.m-bank-payment .o-creditcard-text p,
.m-credit-payment .o-creditcard-text p {
  font-size: 14px;
}

@media screen and (max-width: 1280px) {
  .m-bank-payment .o-creditcard-text p,
  .m-credit-payment .o-creditcard-text p {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-bank-payment .o-creditcard-text p,
  .m-credit-payment .o-creditcard-text p {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-bank-payment .o-creditcard-text p,
  .m-credit-payment .o-creditcard-text p {
	font-size: 11px;
  }
}

@media screen and (max-width: 480px) {
  .m-bank-payment .o-creditcard-text p,
  .m-credit-payment .o-creditcard-text p {
	font-size: 11px;
  }
}

.m-bank-payment .o-bankAccount-text,
.m-credit-payment .o-bankAccount-text {
  float: left;
  width: 100%;
}

.m-bank-payment .o-bankAccount-text p,
.m-credit-payment .o-bankAccount-text p {
  font-size: 14px;
}

@media screen and (max-width: 1280px) {
  .m-bank-payment .o-bankAccount-text p,
  .m-credit-payment .o-bankAccount-text p {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-bank-payment .o-bankAccount-text p,
  .m-credit-payment .o-bankAccount-text p {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-bank-payment .o-bankAccount-text p,
  .m-credit-payment .o-bankAccount-text p {
	font-size: 11px;
  }
}

@media screen and (max-width: 480px) {
  .m-bank-payment .o-bankAccount-text p,
  .m-credit-payment .o-bankAccount-text p {
	font-size: 11px;
  }
}

.m-bank-payment .o-creditcard-pict,
.m-credit-payment .o-creditcard-pict {
  float: right;
  width: 157px;
  height: 80px;
  margin-bottom: 10px;
  background-image: url("../images/pict_credit_card.png");
  background-repeat: no-repeat;
  background-position: 0 0;
}

.m-bank-payment .o-select-history,
.m-credit-payment .o-select-history {
  margin-top: 20px;
}

.m-bank-inputForm {
  position: relative;
  display: inline-block;
  width: 100%;
}

@media screen and (max-width: 999px) {
  .m-bank-inputForm {
	display: block;
  }
}

.m-bank-inputForm .o-row {
  display: inline-block;
  vertical-align: top;
  margin-bottom: 10px;
}

/* .m-bank-inputForm .o-row.o-name {
  width: 215px;
}

.m-bank-inputForm .o-row.o-number {
  width: 240px;
}

.m-bank-inputForm .o-row.o-date {
  width: 165px;
} */

.m-bank-inputForm .o-row.o-line {
  position: relative;
  top: 25px;
  width: 1px;
  height: 36px;
  border-left: 1px solid #c8c8c8;
  margin-right: 15px;
}

.m-bank-inputForm .o-row.o-line {
  display: none;
}

/* .m-bank-inputForm .o-row.o-code {
  width: 130px;
}

.m-bank-inputForm .o-row.o-bankname {
  width: 200px;
}

.m-bank-inputForm .o-row.o-branch {
  width: 160px;
}

.m-bank-inputForm .o-row.o-accountType {
  width: 90px;
}

.m-bank-inputForm .o-row.o-accountNo {
  width: 130px;
}

.m-bank-inputForm .o-row.o-accountHolderKana {
  width: 170px;
} */

.m-bank-inputForm .o-row.o-name, .m-bank-inputForm .o-row.o-number, .m-bank-inputForm .o-row.o-date, .m-bank-inputForm .o-row.o-code, .m-bank-inputForm .o-row.o-bankname, .m-bank-inputForm .o-row.o-branch, .m-bank-inputForm .o-row.o-accountType, .m-bank-inputForm .o-row.o-accountNo, .m-bank-inputForm .o-row.o-accountHolderKana {
  width: 100%;
}

.m-bank-inputForm .o-row selectWrap,
.m-bank-inputForm .o-row input[type="text"] {
  width: 95%;
}

.m-bank-inputForm .o-row span {
  display: block;
  word-break: keep-all;
  font-size: 14px;
}

@media screen and (max-width: 1280px) {
  .m-bank-inputForm .o-row span {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-bank-inputForm .o-row span {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-bank-inputForm .o-row span {
	font-size: 11px;
  }
}

@media screen and (max-width: 480px) {
  .m-bank-inputForm .o-row span {
	font-size: 11px;
  }
}

.m-bank-inputForm .o-row span {
  display: inline-block;
  width: 49%;
}

.m-inputCustomerInfo {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-radius: 5px;
  border: 1px solid #c8c8c8;
  margin: 20px 0 40px;
  padding: 40px;
}
/* モーダル内の余白調整 */
@media screen and (min-width: 769px) {
  .modal_content .m-inputCustomerInfo {
	padding: 25px;
  }
  .modal_content .u-2cols-container .o-left {
	  width: 15em;
  }
  .modal_content .u-2cols-container .o-right {
	  width: calc( 100% - 15em);
  }
}
@media screen and (max-width: 768px) {
  .m-inputCustomerInfo {
	padding: 15px 10px;
  }
  .modal_content .u-2cols-container .o-left {
	  font-weight: bold;
  }
}
@media screen and (max-width: 400px) {
  .m-inputCustomerInfo {
	padding: 15px 5px;
  }
}

.m-inputCustomerInfo.o-paymentInfo {
  border: none;
  margin: 0;
  margin-left: -30px;
  padding: 0;
}

.m-inputCustomerInfo.o-paymentInfo.u-2cols-container {
  margin-left: 0;
}

.m-inputCustomerInfo.u-2cols-container {
  box-sizing: border-box;
}

.m-inputCustomerInfo.u-2cols-container:not(.o-paymentInfo) {
  background: #fff;
}


.m-inputCustomerInfo.u-2cols-container .o-right,
.m-inputCustomerInfo.u-2cols-container .o-left {
  padding: 16px 8px;
  line-height: 1.4;
}

.m-inputCustomerInfo.u-2cols-container .inputType .o-right {
  padding-top: 0;
}

.m-inputCustomerInfo.u-2cols-container .o-right .caption {
  color: #999;
  font-size: 14px;
  margin-top: 5px;
  line-height: 1.2;
}

@media screen and (max-width: 480px) {
  .m-inputCustomerInfo.u-2cols-container .o-right .caution,
  .m-inputCustomerInfo.u-2cols-container .o-right .caption {
	font-size: 12px;
  }
}

.m-inputCustomerInfo.u-2cols-container .o-right,
.m-inputCustomerInfo.u-2cols-container .o-left,
.m-inputCustomerInfo.u-2cols-container .o-left input[type='text'],
.m-inputCustomerInfo.u-2cols-container .o-right input[type='text'],
.m-inputCustomerInfo.u-2cols-container .o-left input[type='password'],
.m-inputCustomerInfo.u-2cols-container .o-right input[type='password']  {
  font-size: 16px;
}

@media screen and (max-width: 1280px) {
  .m-inputCustomerInfo.u-2cols-container .o-right,
  .m-inputCustomerInfo.u-2cols-container .o-left,
  .m-inputCustomerInfo.u-2cols-container .o-left input[type='text'],
  .m-inputCustomerInfo.u-2cols-container .o-right input[type='text'],
  .m-inputCustomerInfo.u-2cols-container .o-left input[type='password'],
  .m-inputCustomerInfo.u-2cols-container .o-right input[type='password'] {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-inputCustomerInfo.u-2cols-container .o-right,
  .m-inputCustomerInfo.u-2cols-container .o-left,
  .m-inputCustomerInfo.u-2cols-container .o-left input[type='text'],
  .m-inputCustomerInfo.u-2cols-container .o-right input[type='text'] {

  }
}

@media screen and (max-width: 768px) {
  .m-inputCustomerInfo.u-2cols-container .o-right,
  .m-inputCustomerInfo.u-2cols-container .o-left,
  .m-inputCustomerInfo.u-2cols-container .o-left input[type='text'],
  .m-inputCustomerInfo.u-2cols-container .o-right input[type='text'] {

  }
}

@media screen and (max-width: 480px) {
  .m-inputCustomerInfo.u-2cols-container .o-right,
  .m-inputCustomerInfo.u-2cols-container .o-left,
  .m-inputCustomerInfo.u-2cols-container .o-left input[type='text'],
  .m-inputCustomerInfo.u-2cols-container .o-right input[type='text'] {

  }
}

@media screen and (max-width: 768px) {
  .m-inputCustomerInfo.u-2cols-container .o-left {
	padding: 8px 0 4px 0;
  }
  .m-inputCustomerInfo.u-2cols-container .o-right {
	padding: 2px 0 10px;
  }
}

.m-inputCustomerInfo.u-2cols-container .o-left {
  position: relative;
  padding-right: 30px;
  text-align: left;
}

@media screen and (max-width: 768px) {
  .m-inputCustomerInfo.u-2cols-container .o-left {
	display: block;
	width: 100%;
	text-align: left;
	padding-right: 0;
  }
}

.m-inputCustomerInfo.u-2cols-container .o-right input[type='text'],
.m-inputCustomerInfo.u-2cols-container .o-right input[type='password'] {
  width: 100%;
  box-shadow: none;
  vertical-align: middle;
}

@media screen and (min-width: 370px) {
	.modal_content .m-inputCustomerInfo.u-2cols-container .o-right input[type='text'].date,
	.modal_content .m-inputCustomerInfo.u-2cols-container .o-right input[type='text'].preferred-use-start-date-text
	{
		width: 160px;
		text-align: center;
	}
}

.m-inputCustomerInfo.u-2cols-container .o-right input[type='text']:focus,
.m-inputCustomerInfo.u-2cols-container .o-right input[type='password']:focus {
  -webkit-box-shadow: 0px 0px 2px 2px #ffd8d8;
  box-shadow: 0px 0px 2px 2px #ffd8d8;
}

.m-inputCustomerInfo.u-2cols-container .o-right textarea {
  width: 100%;
  max-width: 100%;
  min-height: 38px;
  -webkit-box-shadow: none;
  box-shadow: none;
  resize: vertical !important;
}

.m-inputCustomerInfo.u-2cols-container .o-right textarea:focus {
  -webkit-box-shadow: 0px 0px 2px 2px #ffd8d8;
  box-shadow: 0px 0px 2px 2px #ffd8d8;
}

/* PC表示は入力フォームを8px上にあげる（確認画面に存在するフォームも） */
@media screen and (min-width: 769px) {
  .u-2cols-container div:not(.inputType) .o-right input[type='text'],
  .u-2cols-container div:not(.inputType) .o-right input[type='password'],
  .u-2cols-container div:not(.inputType) .o-right textarea,
  .u-2cols-container div:not(.inputType) .o-right .selectWrap,
  .u-2cols-container div:not(.inputType) .o-right label.fileupload {
	margin-top: -8px;
  }
  .u-2cols-container .inputType .o-right .selectWrap {
	margin-top: 8px;
  }
  .u-2cols-container div:not(.inputType) .o-right p+input[type='text'],
  .u-2cols-container div:not(.inputType) .o-right p+input[type='password'],
  .u-2cols-container div:not(.inputType) .o-right p+textarea,
  .u-2cols-container div:not(.inputType) .o-right p+.selectWrap,
  .u-2cols-container div:not(.inputType) .o-right p+label.fileupload,
  .u-2cols-container div:not(.inputType) .o-right div+label.fileupload {
	margin-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .m-inputCustomerInfo.u-2cols-container .o-right {
	display: block;
	width: 100%;
  }
}
.o-require {
  display: inline-block;
  height: 16px;
  font-size: 11px;
  line-height: 16px;
  border: 1px solid #e37d39;
  color: #e37d39;
  padding: 1px 3px;
  word-break: keep-all;
  vertical-align: middle;
  margin-left: 5px;
}
.m-inputCustomerInfo.u-2cols-container .o-require {
  position: absolute;
  top: 16px;
  right: 0;
}

@media screen and (max-width: 768px) {
  .m-inputCustomerInfo.u-2cols-container .o-require {
	right: -8px;
	position: relative;
	top: inherit;
  }
}

.m-inputCustomerInfo .btn_detail {
  display: inline-block;
  width: auto;
  margin-top: -7px;
  vertical-align: top;
}
.m-inputCustomerInfo .o-right p:not(.has-error)+.btn_detail {
  margin-top: 0;
}
.m-inputCustomerInfo .submit_btns .btn_detail {
  min-width: 220px;
  margin-top: 0px;
}
@media screen and (max-width: 768px) {
  .m-inputCustomerInfo .btn_detail {
	width: auto;
	margin-top: 1px;
  }
}

.m-inputCustomerInfo .btn_detail input {
  color: #333;
  border: none;
  background-color: #e3e3e3;
  padding: 7px 18px;
  font-weight: normal;
  font-size: 14px;
}

@media screen and (max-width: 1280px) {
  .m-inputCustomerInfo .btn_detail input {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-inputCustomerInfo .btn_detail input {
	font-size: 12px;
  }
}

@media screen and (max-width: 768px) {
  .m-inputCustomerInfo .btn_detail input {
	font-size: 11px;
  }
}

@media screen and (max-width: 480px) {
  .m-inputCustomerInfo .btn_detail input {
	font-size: 11px;
  }
}

.m-payment-item {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid #c8c8c8;
  border-radius: 5px;
  padding: 20px;
  margin-bottom: 20px;
}

.m-payment-item .o-radio-paymentItem {
  margin-left: 30px;
}

.m-payment-item .o-radio-paymentItem p {
  margin-left: -7px;
}

.m-payment-item .o-radio-paymentItem .o-label-inputPayment {
  display: inline-block;
  width: 100%;
  border-bottom: 1px solid #000;
}

.m-payment-item .o-radio-paymentItem .radio_text {
  width: 100%;
  margin-left: -30px;
}

.m-payment-item .o-radio-paymentItem .radio_text span {
  padding-left: 8px;
  font-size: 16px;
  font-weight: bold;
}

@media screen and (max-width: 1280px) {
  .m-payment-item .o-radio-paymentItem .radio_text span {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-payment-item .o-radio-paymentItem .radio_text span {
	font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .m-payment-item .o-radio-paymentItem .radio_text span {
	font-size: 12px;
  }
}

@media screen and (max-width: 480px) {
  .m-payment-item .o-radio-paymentItem .radio_text span {
	font-size: 11px;
  }
}

.l-orderSideBox {
  float: left;
  width: 310px;
}

@media screen and (max-width: 999px) {
  .l-orderSideBox {
	float: none;
	width: 100%;
  }
}

.m-orderSideBox-inner {
  width: 100%;
  border-radius: 3px;
  border: solid 1px #c8c8c8;
  padding: 0;
}

.m-orderSideBox-inner .o-header {
  text-align: center;
  padding: 10px 20px 8px;
  color: #fff;
  font-size: 21px;
  font-weight: bold;
}

.m-orderSideBox-inner .o-body {
  padding: 20px;
  font-size: 16px;
}

.m-orderSideBox-inner .m-treeMenu {
  width: 100%;
}

.m-orderSideBox-inner .m-treeMenu .o-menuitem {
  position: relative;
}

.m-orderSideBox-inner .m-treeMenu .o-left {
  display: inline-block;
  width: 160px;
}

.m-orderSideBox-inner .m-treeMenu .o-right {
  position: absolute;
  display: inline-block;
  width: 85px;
  right: 0;
  text-align: right;
}

.m-orderSideBox-inner .o-tax {
  position: relative;
  margin-bottom: 15px;
}

.m-orderSideBox-inner .o-tax .o-left {
  display: inline-block;
  width: 160px;
}

.m-orderSideBox-inner .o-tax .o-right {
  position: absolute;
  display: inline-block;
  width: 85px;
  right: 0;
  text-align: right;
}

.m-orderSideBox-inner .o-subtotal {
  position: relative;
  border-top: 1px solid #c8c8c8;
  padding-top: 15px;
  font-size: 24px;
}

@media screen and (max-width: 1280px) {
  .m-orderSideBox-inner .o-subtotal {
	font-size: 21px;
  }
}

@media screen and (max-width: 999px) {
  .m-orderSideBox-inner .o-subtotal {
	font-size: 18px;
  }
}

@media screen and (max-width: 768px) {
  .m-orderSideBox-inner .o-subtotal {
	font-size: 16px;
  }
}

@media screen and (max-width: 480px) {
  .m-orderSideBox-inner .o-subtotal {
	font-size: 15px;
  }
}

.m-orderSideBox-inner .o-subtotal .o-left {
  display: inline-block;
  width: 60px;
  font-weight: bold;
}

.m-orderSideBox-inner .o-subtotal .o-right {
  position: absolute;
  display: inline-block;
  width: 185px;
  right: 0;
  text-align: right;
  font-weight: bold;
  color: #e37d39;
}

.l-itemDetailMainBox > div:nth-child(n+2) .product_sets {
  margin-top: 50px;
}

.selectSetProduct .product_sets .product_set_separate {
  margin-top: 50px;
  padding-top: 50px;
  border-top: 1px solid #ccc;
}
.m-product-select-checkbox {
  position: relative;
}
.product_set_name .radio_text,
.product_set_name .checkbox_text {
  margin: 0;
  padding: 4px 4px 6px 40px;
  line-height: 1.3;
}
.product_set_name .checkbox_text_only {
	margin: 0;
	padding: 4px 4px 6px 0px;
	line-height: 1.3;
}
.product_set_name input[type=radio] + .inputLabel:before,
.product_set_name input[type=checkbox] + .inputLabel:before {
  width: 26px;
  height: 26px;
  border-width: 2px;
}
.product_set_name input[type=radio] + .inputLabel:after {
  width: 16px;
  height: 16px;
  top: 8px;
  left: 7px;
}
.product_set_name input[type=checkbox] + .inputLabel:after {
  width: 8px;
  height: 18px;
  top: 2px;
  left: 10px;
}
.product_set_name label.radio_text span,
.product_set_name label.checkbox_text span {
  font-size: 24px;
  font-weight: bold;
}
/*選択しない*/
.product_sets_list .product_sets.not_select {
  box-sizing: border-box;
  border-left: none;
  border: 1px solid #c8c8c8;
  border-radius: 5px;
  padding: 20px 20px 16px 35px;
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .product_sets_list .product_sets.not_select {
	margin-bottom: 20px;
	padding: 15px 15px 10px 20px;
  }
}

@media screen and (max-width: 768px) {
  .m-product-select-checkbox .nodelay.cf.caption {
	margin-left: 0;
	text-align: center;
  }
}

.m-product-select-checkbox .column_left.product_detail2.option_left {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 220px;
}

@media screen and (max-width: 768px) {
  .m-product-select-checkbox .column_left.product_detail2.option_left {
	display: inline-block;
	margin-bottom: 20px;
	float: none;
  }
}

.m-product-select-checkbox .column_right.option_right {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: calc( 100% - 220px);
  padding-left: 20px;
}

@media screen and (max-width: 768px) {
  .m-product-select-checkbox .column_right.option_right {
	width: 100%;
	padding-left: 0;
	float: none;
  }
}

.m-product-select-checkbox .column_right.option_right .detail_txt {
  text-align: left;
}

.m-product-select-checkbox .no-photo .column_left.product_detail2.option_left {
  display: none;
}

.m-product-select-checkbox .no-photo .column_right.option_right {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  padding-left: 0;
}

.m-product-option .product_details {
  width: 100% !important;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.m-product-option .o-radioBtn-header {
  font-weight: bold;
}

.m-product-option ul.charges_model > li {
  border: 2px solid #c8c8c8;
  border-radius: 5px;
  padding: 20px;
  margin-top: 20px;
}

.m-product-option .radio_text {
  font-weight: bold;
  font-size: 18px;
  padding: 1px 2px 2px 24px;
}

.m-product-option .radio_text_only {
  font-weight: bold;
  font-size: 18px;
  padding: 1px 2px 2px 0px;
}

.m-product-option .charges_list {
  display: block;
  border-bottom: 1px solid #c8c8c8;
  padding: 20px 0;
}

.m-product-option .charges_list:last-child {
  border: none;
  padding-bottom: 0;
}

.m-product-option .charges_list:first-of-type {
  padding-top: 0;
}

.m-product-option .charges_list .name {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 70%;
  float: left;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.3;
}
@media screen and (min-width: 1024px) {
	.m-product-option .charges_list .name {
	  width: 60%;
	}
}
@media screen and (max-width: 480px) {
  .m-product-option .charges_list .name {
	width: 100%;
	float: none;
  }
}

.m-product-option .charges_list .name.o-indent {
  text-align: right;
}

.m-product-option .charges_list .name.o-indent span {
  font-weight: bold;
}

.charges_list span.charges_list_amount {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  justify-content: flex-end;
}

.charges_list span.charges_list_amount_item:nth-child(1) {
  min-width: 6em;
}

.charges_list span.charges_list_amount_item:nth-child(2) {
  min-width: 2em;
  text-align: center;
}

.charges_list span.charges_list_amount_item:nth-child(3) {
  min-width: 4.5em;
}
@media screen and (max-width: 480px) {
  .charges_list span.charges_list_amount_item:nth-child(1) {
	min-width: auto;
	width: 80px;
  }

  .charges_list span.charges_list_amount_item:nth-child(2) {
	min-width: auto;
	width: 12px;
  }

  .charges_list span.charges_list_amount_item:nth-child(3) {
	min-width: auto;
	width: 80px;
  }
}

.m-product-option .charges_list .price {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 30%;
  float: right;
  text-align: right;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (min-width: 1024px) {
	.m-product-option .charges_list .price {
	  width: 40%;
	}
}
@media screen and (max-width: 480px) {
  .m-product-option .charges_list .price {
	width: 100%;
  }
}
.m-charges-model .o-price .o-non-taxed,
.m-product-option .charges_list .price .o-non-taxed {
  display: inline-block;
  font-weight: bold;
  font-size: 14px;
  vertical-align: middle;
}
.m-charges-model .o-price .o-non-taxed {
  vertical-align: top;
  margin: 1px 0 0 1px;
}


.m-product-option .charges_list .discription {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  float: left;
  padding: 5px 5px 0;
}

.m-productSets-link {
  display: none;
}

@media screen and (max-width: 768px) {
  .m-productSets-link {
	display: block;
  }
  .m-productSets-link ul{
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
   -ms-flex-wrap: wrap;
	   flex-wrap: wrap;
  }
  .m-productSets-link > ul > li {
	width: 45%;
	margin: 0 1%;
	text-align: center;
  }
}


.l-itemDetailMainBox {
  float: left;
  width: calc( 100% - 400px - 40px);
  margin-top: 40px;
  margin-right: 40px;
}

@media screen and (max-width: 1240px) {
  .l-itemDetailMainBox {
	float: none;
	width: 100%;
  }
}

.l-itemDetailSideBox {
  float: left;
  width: 400px;
}

@media screen and (max-width: 1240px) {
  .l-itemDetailSideBox {
	float: none;
	width: 100%;
  }
}

.m-itemDetailSideBox-inner {
  width: 100%;
  border-radius: 3px;
  border: solid 1px #c8c8c8;
  padding: 0;
  background: #fff;
}

.m-itemDetailSideBox-inner .o-header {
  /* text-align: center; */
  padding: 11px 20px 8px;
  color: #fff;
  font-size: 1rem;
  font-weight: bold;
}

.m-itemDetailSideBox-inner .o-body {
  padding: 20px;
  font-size: 16px;
}

.m-itemDetailSideBox-inner .o-row {
  padding: 5px 0;
}

.m-itemDetailSideBox-inner .o-row:first-child .o-product_name {
  font-weight: bold;
}

.m-itemDetailSideBox-inner .o-row .o-model_name {
  margin: 5px 0 0 0;
  font-weight: normal;
}

.m-itemDetailSideBox-inner .o-row hr {
  border: none;/*デフォルト打ち消し*/
  border-top: 1px solid #ccc;
}

.m-itemDetailSideBox-inner .o-row .o-plan_name {
  margin-top: 15px;
}

.m-itemDetailSideBox-inner .o-row .o-plan_name + .o-model_name {
  margin-top: 5px;
  padding-left: 1em;
}

.m-itemDetailSideBox-inner .o-left {
  display: inline-block;
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 100%;
}
.m-itemDetailSideBox-inner .o-left.o-indent {
  text-align: right;
}

.m-itemDetailSideBox-inner .o-right {
  display: inline-block;
  /* float: right; */
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: right;
  font-weight: bold;
  max-width: 100%;
}

/* .m-itemDetailSideBox-inner .o-button-box {
  margin-top: 20px;
} */

.l-itemDetailMainBox .product_sets,
.product_sets_list .product_sets {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #c8c8c8;
  border-radius: 5px;
  padding: 30px 20px 20px 30px;
  margin-bottom: 50px;
  background: #fff;
}

@media screen and (max-width: 768px) {
  .l-itemDetailMainBox .product_sets,
  .product_sets_list .product_sets {
	padding: 15px;
  }
}

.m-itemDetail-head {
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  .m-itemDetail-head {
	text-align: center;
  }
}

.m-itemDetail-head .o-left-box {
  float: left;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: top;
  width: 237px;
}

@media screen and (max-width: 768px) {
  .m-itemDetail-head .o-left-box {
	float: none;
	display: inline-block;
  }
}

.m-itemDetail-head .o-right-box {
  float: right;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: top;
  width: calc( 100% - 267px);
  padding: 10px 0 0 0;
}

@media screen and (max-width: 768px) {
  .m-itemDetail-head .o-right-box {
	float: none;
	width: 100%;
	text-align: left;
  }
}

.m-itemDetail-head .o-right-header {
  position: relative;
  width: 100%;
  padding-bottom: 10px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  .m-itemDetail-head .o-right-header {
	padding-top: 30px;
  }
}

.m-itemDetail-head .o-soldouticon,
.m-itemDetail-head .o-newicon {
  display: inline-block;
  position: absolute;
  top: 10px;
  right: 0;
  font-weight: bold;
  padding: 2px 10px;
}

@media screen and (max-width: 1280px) {
  .m-itemDetail-head .o-soldouticon,
  .m-itemDetail-head .o-newicon {
	font-size: 12px;
	padding: 2px 5px;
  }
}

@media screen and (max-width: 1280px) and (max-width: 1280px) {
  .m-itemDetail-head .o-soldouticon,
  .m-itemDetail-head .o-newicon {
	font-size: 12px;
  }
}

@media screen and (max-width: 1280px) and (max-width: 999px) {
  .m-itemDetail-head .o-soldouticon,
  .m-itemDetail-head .o-newicon {
	font-size: 11px;
  }
}

@media screen and (max-width: 1280px) and (max-width: 768px) {
  .m-itemDetail-head .o-soldouticon,
  .m-itemDetail-head .o-newicon {
	font-size: 11px;
  }
}

@media screen and (max-width: 1280px) and (max-width: 480px) {
  .m-itemDetail-head .o-soldouticon,
  .m-itemDetail-head .o-newicon {
	font-size: 11px;
  }
}

@media screen and (max-width: 768px) {
  .m-itemDetail-head .o-soldouticon,
  .m-itemDetail-head .o-newicon {
	line-height: 15px;
  }
}

.m-itemDetail-head .o-newicon {
  background-color: #e37d39;
  color: #fff;
}

.m-itemDetail-head .o-soldouticon {
  background-color: #555;
  color: #fff;
}

.m-itemDetail-head span:nth-child(3) + span:nth-child(4) {
  right: 70px;
}

@media screen and (max-width: 1280px) {
  .m-itemDetail-head span:nth-child(3) + span:nth-child(4) {
	right: 45px;
  }
}

.m-itemDetail-head .o-itemname {
  font-size: 36px;
  font-weight: bold;
  max-width: 100%;
  line-height: 1.1;
  position: relative;
  word-break: break-all;
}
.m-itemDetail-head .o-favstar {
  line-height: 1.1;
  font-size: 30px;
  margin: 2px 0 0 5px;
  vertical-align: top;
  display: inline-block;
}
@media screen and (max-width: 1280px) {
  .m-itemDetail-head .o-itemname {
	font-size: 32px;
  }
  .m-itemDetail-head .o-favstar {
	font-size: 28px;
  }
}
@media screen and (max-width: 999px) {
  .m-itemDetail-head .o-itemname {
	font-size: 28px;
  }
  .m-itemDetail-head .o-favstar {
	margin-top: 1px;
	font-size: 24px;
  }
}
@media screen and (max-width: 768px) {
  .m-itemDetail-head .o-itemname {
	font-size: 24px;
  }
  .m-itemDetail-head .o-favstar {
	font-size: 22px;
  }
}
@media screen and (max-width: 480px) {
  .m-itemDetail-head .o-favstar {
	font-size: 21px;
  }
  .m-itemDetail-head .o-favstar {
	font-size: 20x;
  }
}
.m-itemDetail-head .o-right-body {
  position: relative;
  padding: 20px 0 10px;
}

/* シリアル情報 */
.m-itemDetail-head .serial-info {
  margin: 20px 0 0 0;
  padding: 10px 20px;
  color: #666;
  background: #f4f4f4;
  position: relative;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  line-height: 1.4;
}
.m-itemDetail-head .serial-info .serial-info_title {
  width: auto;
}
.m-itemDetail-head .serial-info .serials {
  margin: 0 0 0 1em;
  padding: 0 0 0 1em;
  border-left: 1px solid #ddd;
}
@media screen and (max-width: 480px) {
  .m-itemDetail-head .serial-info {
	margin: 10px 0 0;
	padding: 10px 15px;
  }
  .m-itemDetail-head .serial-info .serial-info_title {
	width: 100%;
	padding: 0 0 5px 0;
	border-bottom: 1px solid #ddd;
  }
  .m-itemDetail-head .serial-info .serials {
	margin: 0;
	padding: 5px 0 0 0;
	border-left: none;
  }
}

.m-itemImage-5box img {
  max-width: 100%;
  max-height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.m-itemImage-5box .o-itemimage-large {
  width: 237px;
  height: 237px;
  margin-bottom: 7px;
  overflow: hidden;
}

.m-itemImage-5box .o-itemimage-small span {
  overflow: hidden;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  float: left;
  width: 54px;
  height: 54px;
  margin-right: 5px;
  border: 1px solid #fff;
}

.m-itemImage-5box .o-itemimage-small span:last-child {
  margin-right: 0;
}

.m-payMonthModel-selectBox {
  border: 1px solid #c8c8c8;
  border-radius: 5px;
}

.m-payMonthModel-selectBox .o-payModel-box {
  padding: 10px 20px;
  border-bottom: 1px dotted #c8c8c8;
  background: none;
}

.m-payMonthModel-selectBox .o-payModel-box:last-child {
  border-bottom: none;
}


.m-payYearModel-selectBox {
  border: 1px solid #c8c8c8;
  border-radius: 5px;
}

.m-payYearModel-selectBox .o-payModel-box {
  padding: 10px 20px;
  border-bottom: 1px dotted #c8c8c8;
  background: none;
}

.m-payYearModel-selectBox .o-payModel-box:last-child {
  border-bottom: none;
}

.m-productOption-item {
  display: inline-block;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  width: calc( 25% - 12px);
  max-width: 215px;
  padding: 20px 15px;
  margin-right: 8px;
  margin-bottom: 8px;
}

@media screen and (max-width: 768px) {
  .m-productOption-item {
	width: calc( 50% - 8px);
	max-width: inherit;
  }
}

.m-productOption-item .m-product-detail .o-product-name {
  text-align: left;
}

.m-productOption-item .o-item-image {
  padding: 10px 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.m-productOption-item .o-item-image img {
  width: 100%;
  height: auto;
}

.m-productOption-item .o-item-name {
  padding: 5px 0;
  font-size: 21px;
  font-weight: bold;
  text-align: left;
}

@media screen and (max-width: 1280px) {
  .m-productOption-item .o-item-name {
	font-size: 19px;
  }
}

@media screen and (max-width: 999px) {
  .m-productOption-item .o-item-name {
	font-size: 17px;
  }
}

@media screen and (max-width: 768px) {
  .m-productOption-item .o-item-name {
	font-size: 15px;
  }
}

@media screen and (max-width: 480px) {
  .m-productOption-item .o-item-name {
	font-size: 14px;
  }
}

.m-productOption-item .o-price {
  padding: 5px 0;
  font-size: 16px;
  text-align: left;
}

@media screen and (max-width: 1280px) {
  .m-productOption-item .o-price {
	font-size: 14px;
  }
}

@media screen and (max-width: 999px) {
  .m-productOption-item .o-price {
	font-size: 13px;
  }
}

@media screen and (max-width: 768px) {
  .m-productOption-item .o-price {
	font-size: 12px;
  }
}

@media screen and (max-width: 480px) {
  .m-productOption-item .o-price {
	font-size: 11px;
  }
}

.m-productOption-multiSelect-allDelete {
  text-align: right;
}

.m-productOption-multiSelect-allDelete .o-button {
  display: inline-block;
  border: 1px solid #9d9d9d;
  border-radius: 4px;
  padding: 8px 15px 0;
}

.m-addToCart {
  /* text-align: center; */
}

.m-addToCart a {
  display: inline-block;
  width: 50%;
  max-width: 270px;
}

@media screen and (max-width: 999px) {
  .m-addToCart.pcOnly {
	display: none;
  }
}

.product_sets.js-unchecked-product .m-product-option {
  opacity: 0.3;
}

@media only screen and (max-width: 480px) {
  .mypage_menu .link {
	display: none;
  }
}

@media screen and (max-width: 834px) {
  .flowbox2 .popbox,
  .flowbox3 .popbox,
  .flowbox4 .popbox,
  .flowbox5 .popbox,
  .flowbox6 .popbox,
  .flowbox7 .popbox {
	width: 100%;
  }
  .flowbox .popbox_right {
	position: relative;
	margin-top: 0;
  }
  .flowbox .popbox_right .popbox_body {
	margin-left: 0;
	width: 100%;
	border: solid 1px;
  }
  .flowbox .popbox .popbox_body h3,
  .flowbox .popbox .popbox_body p {
	float: none;
	display: inline-block;
	font-size: 18px;
	line-height: 20px;
	vertical-align: middle;
  }
  .flowbox .popbox .popbox_body h3{
	width: 4.5em;
  }
  .flowbox .popbox_right .popbox_arw {
	position: relative;
	width: 100%;
	height: 10px;
	margin: auto;
	overflow: hidden;
  }
  .flowbox .popbox_right .popbox_arw:after {
	left: 0;
	right: 0;
	top: auto;
	bottom: 10px;
	width: 30px;
	height: 30px;
  }
  .popbox .popbox_arw.js-popbox_arw_overWhite {
	display: none;
  }
}

/* width(%)
----------------------------------------------------- */
.pc_width_5p {
  width: 5% !important;
}

.pc_width_10p {
  width: 10% !important;
}

.pc_width_15p {
  width: 15% !important;
}

.pc_width_20p {
  width: 20% !important;
}

.pc_width_25p {
  width: 25% !important;
}

.pc_width_30p {
  width: 30% !important;
}

.pc_width_35p {
  width: 35% !important;
}

.pc_width_40p {
  width: 40% !important;
}

.pc_width_45p {
  width: 45% !important;
}

.pc_width_50p {
  width: 50% !important;
}

.pc_width_55p {
  width: 55% !important;
}

.pc_width_60p {
  width: 60% !important;
}

.pc_width_65p {
  width: 65% !important;
}

.pc_width_70p {
  width: 70% !important;
}

.pc_width_75p {
  width: 75% !important;
}

.pc_width_80p {
  width: 80% !important;
}

.pc_width_85p {
  width: 85% !important;
}

.pc_width_90p {
  width: 90% !important;
}

.pc_width_95p {
  width: 95% !important;
}

.pc_width_100p {
  width: 100% !important;
}

.float-left-and-margin-right {
	float: left !important;
	margin-right: 1% !important;
}

@media screen and (max-width: 768px) {
  .tab_width_5p {
	width: 5% !important;
  }

  .tab_width_10p {
	width: 10% !important;
  }

  .tab_width_15p {
	width: 15% !important;
  }

  .tab_width_20p {
	width: 20% !important;
  }

  .tab_width_25p {
	width: 25% !important;
  }

  .tab_width_30p {
	width: 30% !important;
  }

  .tab_width_35p {
	width: 35% !important;
  }

  .tab_width_40p {
	width: 40% !important;
  }

  .tab_width_45p {
	width: 45% !important;
  }

  .tab_width_50p {
	width: 50% !important;
  }

  .tab_width_55p {
	width: 55% !important;
  }

  .tab_width_60p {
	width: 60% !important;
  }

  .tab_width_65p {
	width: 65% !important;
  }

  .tab_width_70p {
	width: 70% !important;
  }

  .tab_width_75p {
	width: 75% !important;
  }

  .tab_width_80p {
	width: 80% !important;
  }

  .tab_width_85p {
	width: 85% !important;
  }

  .tab_width_90p {
	width: 90% !important;
  }

  .tab_width_95p {
	width: 95% !important;
  }

  .tab_width_100p {
	width: 100% !important;
  }
}

@media screen and (max-width: 480px) {
  .sp_width_5p {
	width: 5% !important;
  }

  .sp_width_10p {
	width: 10% !important;
  }

  .sp_width_15p {
	width: 15% !important;
  }

  .sp_width_20p {
	width: 20% !important;
  }

  .sp_width_25p {
	width: 25% !important;
  }

  .sp_width_30p {
	width: 30% !important;
  }

  .sp_width_35p {
	width: 35% !important;
  }

  .sp_width_40p {
	width: 40% !important;
  }

  .sp_width_45p {
	width: 45% !important;
  }

  .sp_width_50p {
	width: 50% !important;
  }

  .sp_width_55p {
	width: 55% !important;
  }

  .sp_width_60p {
	width: 60% !important;
  }

  .sp_width_65p {
	width: 65% !important;
  }

  .sp_width_70p {
	width: 70% !important;
  }

  .sp_width_75p {
	width: 75% !important;
  }

  .sp_width_80p {
	width: 80% !important;
  }

  .sp_width_85p {
	width: 85% !important;
  }

  .sp_width_90p {
	width: 90% !important;
  }

  .sp_width_95p {
	width: 95% !important;
  }

  .sp_width_100p {
	width: 100% !important;
  }
}
/* datepicker */
.ui-datepicker{
	z-index: 5!important;
}
.ui-datepicker td span,
.ui-datepicker td a {
	text-align: center;
	box-sizing: border-box;
}
.ui-datepicker-header {
	border: none;
	background: #eee;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
	background-image: none;
	content: '';
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 0;
	right: 2px;
	border-right: solid 1px #666;
	border-bottom: solid 1px #666;
	width: 8px;
	height: 8px;
	transform: rotate(-45deg);
	transition: all .3s
}
.ui-widget-header .ui-datepicker-prev span {
	transform: rotate(135deg);
	left: 2px;
	right: 0;
}
.ui-datepicker .ui-datepicker-prev:hover,
.ui-datepicker .ui-datepicker-next:hover {
	background: #666;
	border: solid 1px #666;
}
.ui-datepicker .ui-datepicker-prev:hover span,
.ui-datepicker .ui-datepicker-next:hover span {
	border-color: #fff;
}
.ui-datepicker th {
	width: 14.2857142%;
}
.ui-datepicker-calendar .ui-state-default {
	color: #666;
	background: #fff;
	font-weight: bold;
	border: 1px solid #fff;
}
.ui-datepicker-calendar .ui-datepicker-today .ui-state-default {
	border: 1px solid #ccc;
}
.ui-datepicker-calendar .ui-state-default:not(.ui-state-active):hover {
	color: #666;
	background: #f4f4f4;
	border: 1px solid #666;
}
.ui-datepicker-calendar .ui-state-off .ui-state-default {
	color: #d64747;
	background: rgba(214, 71, 71, 0.3);
	border: 1px solid rgba(214, 71, 71, 0.1);
}
@media screen and (max-width: 768px) {
	.ui-datepicker th,
	.ui-datepicker td {
		display: table-cell;
		width: 14.2857142%;
		font-size: 14px;
		line-height: 1.4;
		vertical-align: middle;
	}
}

/*///// フォーム用暫定対応 /////*/
.form input.txtinput,
.form textarea.txtinput {
  box-shadow: none;
}

/* 契約変更系 */
.select_main_product .selectedProduct {
  margin: 0;
  padding: 20px;
  border: 1px solid #c8c8c8;
  background: #fff;
  border-radius: 3px;
}
.select_main_product .m-cartItemActionBox {
  margin: 0 0 30px 0;
}

/* メンテナンスなど案内用 */
.infoBox {
  padding: 30px;
  border: 4px solid #eee;
  border-radius: 10px;
  text-align: center;
}
.infoBox p.date {
  font-size: 120%;
  font-weight: bold;
}

/* フッターコンテンツ（Pages） */
.footerContent .content {
  margin: 40px 0;
}
.footerContent .section_inner p {
  line-height: 1.6;
}

/* エラーページ */
.errorMsg {
  margin: 20px 0 70px;
  padding: 50px 30px;
  text-align: center;
}
.errorMsg h1 {
  font-size: 2.4em;
  font-weight: bold;
  margin: 0 0 20px 0;
  padding: 0 0 0 20px;
  position: relative;
  display: inline-block;
  line-height: 1.2;
  color: #d64747;
}
/* .errorMsg h1::before {
  content: "\f071";
  font-family: FontAwesome;
  margin: 0 0.2em 0 -1em;
} */

.errorMsg h1::before {
  content: "";
  display: inline-block;
  inline-size: 1em;
  block-size: 1em;
  margin: 0 0.2em 0 -1em;
  vertical-align: -0.125em;
  background-color: currentColor;
  -webkit-mask: url("/common/images/triangle-exclamation-solid.svg") no-repeat center / contain;
		  mask: url("/common/images/triangle-exclamation-solid.svg") no-repeat center / contain;
}

.errorMsg strong {
  display: block;
  font-size: 1.4em;
  font-weight: bold;
  margin: 0;
}
.errorMsg p {
  margin: 10px 0 0 0;
}
@media screen and (max-width: 768px) {
  .errorMsg h1 {
	font-size: 2em;
  }
}
@media screen and (max-width: 480px) {
  .errorMsg {
	margin: 20px 0;
	padding: 20px 15px;
  }
  .errorMsg h1 {
	font-size: 1.4em;
  }
  .errorMsg strong {
	font-size: 1.1em;
  }
  .errorMsg p {
	text-align: left;
  }
}
/* Infonova用エラー */
.errorMsg .infonova {
	white-space: pre-wrap;
	text-align: left;
	color: #d64747;
}

/* 認証設定がIDパスワード認証・シングルサインオンを併用する場合のエラー */
.errorMsg .errorMsgSSO {
	text-align: left;
	color: #d64747;
}

/* ウォレット決済連携ボタン */
.m-inputCustomerInfo .btn_linked input {
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	padding: 10px 30px;
}

/* ウォレット決済連携ボタン直下メッセージ */
.notice_wallet {
	line-height: 40px;
}
/* 設定系フォーム */
.config-forms ul.note {
	color: #666;
	margin: 20px 0;
}
.config-forms ul.note li {
	margin: 0 0 5px 0;
	padding: 0 0 0 20px;
}
.config-forms ul.note li .mark {
	display: inline-block;
	margin: 0 5px 0 -20px;
}
.config-forms {
	box-sizing: border-box;
	border-radius: 5px;
	border: 1px solid #c8c8c8;
	margin: 20px 0 40px;
	padding: 40px;
}
.config-forms.login_panel {
	margin: auto;
	border: solid 1px rgba(0, 0, 0, 0.1);
	border-radius: 0;
}
.config-forms.login_panel .headline {
	margin-bottom: 20px;
}
.config-forms.login_panel label {
	display: inline-block;
	margin-right: 5px;
}
.config-forms.login_panel .submit_btns .btn_detail {
	margin-top: 20px;
}
.config-forms.login_panel .submit_btns .btn_detail {
	min-width: 250px;
}
.config-forms .flex {
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.config-forms .flex .txtinput,
.config-forms .flex .selectWrap {
	margin-right: 5px;
	max-height: 34px;
}
.config-forms .flex .txtinput
{
	max-width: 270px;
}
.config-forms .flex select {
	max-height: 34px;
}
.config-forms .note {
	display: inline-block;
	margin-top: 5px;
	color: #666;
}
.config-forms .radio {
	display: inline-block;
}
.config-forms .o-row {
	margin-bottom: 20px;
}
.config-forms .o-row .form-group {
	margin: 10px 20px 30px 20px;
	padding: 0;
	position: relative;
}
.config-forms .o-row .form-group > legend {
	margin: 0;
	padding: 10px 20px;
	font-weight: bold;
	background: #fff;
	border: 2px solid #f4f4f4;
	border-bottom: none;
	background: #fff;
	border-radius: 3px 3px 0 0;
	box-sizing: border-box;
}
.config-forms .o-row .form-group .g-row {
	box-sizing: border-box;
	min-height: 60px;
	margin: 0;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	border-top: 1px solid #ddd;
	padding: 20px;
	background: #f4f4f4;
	border-radius: 3px;
}
.config-forms .o-row .form-group .g-row:first-of-type {
	border-top: none;
}
.config-forms .o-row .form-group strong {
	font-weight: bold;
}
.config-forms .o-row .form-group .radio_text {
	margin: 0;
}
.config-forms p {
	margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
	.config-forms .txtinput.mail {
		min-width: 400px;
	}
}
.config-forms ol.step {
	margin-left: 20px;
}
.config-forms ol.step > li {
	list-style: decimal;
	margin: 0 0 30px 0;
}
.config-forms ol.num-list {
	margin: 20px 0 0 40px;
}
.config-forms ol.num-list > li {
	list-style: decimal;
	margin: 0 0 8px;
}
.config-forms ul li {
	margin: 0 0 8px;
}
.config-forms img.qrcode {
	margin: 10px 0;
}
.config-forms .step .inputfld {
	margin: 10px 0;
}
.config-forms .baseBtn {
	display: inline-block;
	width: auto;
	min-width: 100px;
	min-height: 35px;
	margin: 0;
	padding: 8px 20px;
	text-decoration: none;
	text-align: center;
	font-size: 100%;
	box-sizing: border-box;
	color: #fff;
	line-height: 1.4;
	cursor: pointer;
}
.config-forms .baseBtn:hover {
	opacity: 0.9;
}
.config-forms .baseBtn::after {
	display: none;
}
@media screen and (max-width: 768px) {
	.config-forms {
		padding: 20px;
	}
	.config-forms.login_panel {
		padding: 40px;
	}
	.config-forms .o-row .form-group {
		margin: 10px 0 30px 0;
		padding: 20px 10px 0;
	}
	.config-forms .o-row .form-group > legend {
		margin-bottom: -20px;
		display: block;
		width: 100%;
	}
	.config-forms .flex {
		margin: 0;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
	}
	.config-forms .flex .txtinput,
	.config-forms .flex .selectWrap {
		margin-right: 0;
		margin-bottom: 5px;
	}
	.config-forms .flex .txtinput {
		width: 100%;
		max-width: 100%;
	}
	.config-forms ol.step {
		margin-left: 10px;
	}
	.config-forms .o-row .form-group .g-row {
		margin: 0;
		border-radius: 0 0 3px 3px;
		word-break: break-all;
	}
	.config-forms .baseBtn {
		display: block;
		width: 100%;
		max-width: 280px;
		margin: 10px auto 0;
	}
	.config-forms img.qrcode {
		margin: 10px auto;
		display: block;
	}
}
@media screen and (max-width: 480px) {
	.config-forms {
		padding: 20px 10px;
	}
	.config-forms.login_panel {
		border: none;
	}
	.config-forms.login_panel {
		padding: 0;
	}
	.config-forms ol.step {
		margin-left: 0;
	}
	.config-forms .o-row {
		padding: 0 10px;
		list-style-position: inside!important;
	}
	.config-forms .o-row .form-group {
		padding: 20px 0 0;
	}
}

/* 会員証 */
#member_card {
	padding: 10px;
	width: 60px;
	height: 60px;
	display: block;
	position: fixed;
	right: 0;
	top: 70px;
	margin: auto;
	background: #fff;
	z-index: 999;
	box-sizing: border-box;
	border-radius: 6px 0 0 6px;
	box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.4);
	text-align: center;
}
@media screen and (min-width: 769px) {
	#member_card {
		top: 20px;
	}
}
#member_card svg {
	margin-top: -2px;
	width: 36px;
	height: 36px;
}
#member_card span {
	display: block;
	position: absolute;
	bottom: 5px;
	left: 0;
	right: 0;
	font-size: 11px;
	line-height: 1;
}
#member_card span {
	display: block;
	position: absolute;
	bottom: 5px;
	left: 0;
	right: 0;
	font-size: 11px;
	line-height: 1;
}
/* 汎用的な背景色有りボックス */
div[class^="box-bg-"] {
	margin: 40px auto;
	padding: 30px 20px;
	max-width: 1200px;
	border-radius: 5px;
}
.box-bg-gray {
	background: #f4f4f4;
}

.mb-5 { margin-bottom: 5px; }
/* flex汎用クラス */
*[class^="flex-"] {
	display: flex;
}
.flex-middle {
	align-items: center;
}

/* システムメッセージ */
.systemMsg {
	margin: 0;
}
.systemMsg p {
	margin: 0 0 20px;
	line-height: 1.6;
}
.systemMsg ul.list {
	margin: 20px 0;
}
.systemMsg ul.list li {
	margin: 0 0 10px;
	padding: 0 0 0 15px;
	position: relative;
	line-height: 1.4;
}
.systemMsg ul.list li::before {
	content: "";
	display: block;
	width: 3px;
	height: 3px;
	background:#333;
	border-radius: 2px;
	position: absolute;
	left: 5px;
	top: 0.5rem;
}
@media screen and (min-width: 769px) {
	.systemMsg + .submit_btns {
		margin-top: 30px;
	}
}

/* 下部 Cookie確認 */
.cookie-consent {
	width: 100%;
	max-height: 150px;
	padding: 20px 20px 0;
	position: fixed;
	bottom: 0;
	left: 0;
	background: #fff;
	border: 1px solid #333;
	box-sizing: border-box;
	z-index: 110;
	overflow-y: auto;
}
.cookie-consent .btn-cookie {
	text-align: center;
	margin: 0 0 20px;
}
.cookie-consent .baseBtn {
	margin: 7px 0 0 0;
	padding: 8px 12px;
	border-radius: 0;
}
.cookie-consent #btn_bottom_terms_of_cookie_consent_disagree {
	padding: 7px 12px;
	color: #333;
	background-color: #fff;
	border: 1px solid #b1b1b1;
}
@media screen and (min-width: 481px) {
	.cookie-consent .baseBtn:last-child {
		margin: 5px 0 0 10px;
	}
}
@media screen and (max-width: 480px) {
	.cookie-consent .btn-cookie {
		float: none;
		display: flex;
		flex-direction: column;
	}
	.cookie-consent .baseBtn {
		display: block;
		margin: 15px auto 0;
		width: 260px;
		max-width: 90%;
	}
	.cookie-consent #btn_bottom_terms_of_cookie_consent_disagree {
		order: 2;
	}
}
.baseBtn.btn_modal {
	width: auto;
	min-height: auto;
}

/* SP表示時ボタン横並び画面用 */
.submit_btns.sp_row .btn_detail.btn_prev {
	order: 1;
}
.submit_btns.sp_row .btn_detail.btn_next {
	order: 2;
}
.submit_btns.sp_row .btn_detail.btn_prev::after,
.submit_btns.sp_row .btn_detail.btn_next::after {
	display: none;
}
@media screen and (max-width: 768px) {
	.submit_btns.sp_row {
		flex-flow: row;
		justify-content: space-between;
	}
	.submit_btns.sp_row [class^="btn_"].btn_detail {
		width: 48%;
	}
	.submit_btns.sp_row [class^="btn_"].btn_detail a {
		font-size: 14px;
	}
}

/*** TOYOTA Wallet WidgetStore決済 start ***/
/* お支払方法 非表示 */
.widget-store-payment-hidden {
  display: none;
}
.widget-store-payment-div .m-separate-line-dotted {
  margin-bottom: 10px;
}
input[type=radio].wallet_widget_store  + .inputLabel::before {
  top: calc(50% - 2px);
}
input[type=radio].wallet_widget_store  + .inputLabel::after {
  top: calc(50% + 2px);
}
/* カードのアイコンと情報のセット */
.widget-store-payment-icon-and-info {
  display: flex;
  align-items: center;
}
/* カードのアイコン画像 */
.widget-store-payment-icon {
  width: 72px;
  height: 50px;
  object-fit: cover;
}
/*** TOYOTA Wallet WidgetStore決済 end ***/

/*** TOYOTA Wallet 会員登録 start ***/
.widget-store-entries-message {
  margin-top: 10px;
  margin-bottom: 10px;
  color:#c00;
  font-size:16px;
  font-weight:bold;
}
/*** TOYOTA Wallet 会員登録 end ***/

/*===============================================================
マイページ メニュー
===============================================================*/
.mypage_menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.mypage_menu.menu_column1 {
  justify-content: flex-start;
}
.mypage_menu li {
  width: 31%;
  margin: 0 1% 15px;
  padding: 10px 15px;
  box-sizing: border-box;
  border: 1px solid #ddd;
  display: table; /*flexに変更するとユーザーCSSに影響するので注意*/
  position: relative;
}
.mypage_menu img {
  display: table-cell;
  vertical-align: middle;
  width: 100px;
  height: 100px;
}
.mypage_menu .title {
  width: 100%;
  padding: 0 0 0 5px;
  line-height: 1.2;
  display: table-cell;
  vertical-align: middle;
  font-size: 20px;
  font-weight: bold;
}
.mypage_menu a {
  display: block;
  margin: 0;
  position: absolute;
  bottom: 10px;
  right: 10px;
}
@media only screen and (max-width: 768px){
  .mypage_menu li {
	padding: 10px;
  }
  .mypage_menu .title {
	font-size: 18px;
  }
  .mypage_menu img {
	width: 60px;
	height: 60px;
  }
  .mypage_menu a {
	display: none;
  }
}
@media only screen and (max-width: 480px){
  .mypage_menu li {
	width: 48%;
	padding: 7px;
  }
  .mypage_menu .title {
	font-size: 16px;
  }
  .mypage_menu img {
	width: 40px;
	height: 40px;
  }
  .mypage_menu .title {
	font-size: 12px;
  }
}
/* .localnav .mypage_menu */
.localnav .mypage_menu li {
  line-height: 1.5;
}
.localnav .mypage_menu li a {
  text-decoration: none;
  position: relative;
  bottom: auto;
  right: auto;
}
@media only screen and (min-width: 481px) {
  .localnav {
	padding: 10px 0;
	text-align: center;
  }
  .localnav .mypage_menu {
	margin: 0 auto;
	display: inline-flex;
	justify-content: flex-start;
  }
  .localnav .mypage_menu li {
	width: auto;
	margin: 0;
	padding: 0;
	border: none;
	position: relative;
	display: inline-block;
	text-align: left;
  }
  .localnav .mypage_menu li .title {
	width: auto;
	padding: 4px 20px;
	color: #333;
	display: inline-block;
	vertical-align: middle;
	font-size: 14px;
	font-weight: normal;
  }
  .localnav .mypage_menu li.linkarea.current,
  .localnav .mypage_menu li.current .title {
	pointer-events: none;
  }
  .localnav img {
	display: none;
  }
  .localnav .mypage_menu li:not(:last-child)::after {
	content: '';
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 0px;
	width: 1px;
	height: 20px;
	background: rgba(0,0,0,0.2);
  }
}
@media only screen and (min-width: 769px) {
  .localnav {
	padding: 20px 5%;
  }
  .localnav .mypage_menu {
	margin: 0 0 0 -10px;
  }
  .localnav .mypage_menu li .title {
	padding: 3px 20px;
	font-size: 16px;
  }
}
@media only screen and (max-width: 480px) {
  .localnav .mypage_menu {
	padding: 0 10px 5px;
	justify-content: space-between;
  }
  .localnav .mypage_menu li {
	width: 49%;
	min-height: 40px;
	margin: 0 0 5px;
	padding: 0 4px;
	background: #fff;
  }
  .localnav .mypage_menu li.top {
	display: none;
  }
  .localnav .mypage_menu li .title {
	padding: 5px 8px;
	text-align: left;
	font-weight: normal;
  }
}
/* local_menu_btn */
.local_menu_btn {
  display:none;
}
@media only screen and (max-width: 480px) {
  .local_menu_btn {
	display: block;
	padding: 6px 12px;
	width: auto;
	height :auto;
	text-indent: 0;
	font-size: 12px;
	position: relative;
	text-align: left;
  }
  .local_menu_btn i {
	font-family: FontAwesome;
	font-size: 16px;
	vertical-align: middle;
	margin-right: 6px;
  }
  .local_menu_btn::before,
  .local_menu_btn::after {
	content: "";
	display: block;
	position: absolute;
	right: 10px;
	top: calc(50% - 9px);
	width: 18px;
	height: 18px;
	transition: .3s;
	background-repeat: no-repeat;
	background-position: 0 0;
  }
  .local_menu_btn::before {
	display: block;
  }
  .local_menu_btn::after {
	display: none;
  }
  .local_menu_btn.active::before {
	display: none;
  }
  .local_menu_btn.active::after {
	display: block;
  }
}


/*===============================================================
	/gallery/fjcloud_common.css
===============================================================*/
strong {
	font-weight: 700
}

h2 {
	font-weight: 700;
	line-height: 1.5
}

h3 {
	font-weight: 700;
	line-height: 1.5
}

h4 {
	line-height: 1.5;
	font-weight: 700
}

p {
	line-height: 1.5
}

sup {
	margin: 0;
	padding: 0;
	font-size: 11px;
	line-height: 1.5
}

.wrapper {
	background: #fff
}

.content_width {
	width: auto;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	padding: 0
}

.mid_width {
	width: auto;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.narrow_width {
	width: auto;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

@media screen and (max-width:1160px) {
	.mid_width {
		width: 100%
	}
}

@media screen and (max-width:1000px) {
	.narrow_width {
		width: 100%
	}
}

@media screen and (max-width:768px) {
	.narrow_width {
		padding: 0
	}

	.content_width {
		padding: 0
	}
}

.gridcontainer_mt0 {
	margin-top: 0
}

.gridcontainer .grid {
	float: left
}

.grid {
	margin-top: 50px
}

.gridwrp_2 {
	width: 105.319%
}

.gridwrp_2 .grid_2 {
	width: 94.949%;
	margin-right: 5.051%
}

.gridwrp_2 .grid_1 {
	width: 44.949%;
	margin-right: 5.051%
}

.gridwrp_2 .grid:nth-child(2n+1) {
	clear: both
}

.gridwrp_3 {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row
}

.gridwrp_3 .grid_1 {
	width: 30.303%;
	margin-left: 1.515%;
	margin-right: 1.515%;
	padding: 0;
	margin-top: 40px;
	box-sizing: border-box
}

.gridwrp_3 img {
	width: 100% !important
}

.six_column .gridwrp_3 {
	width: 100%
}

.six_column .gridwrp_3 .grid_1 {
	width: 31.3%;
	margin-right: 1.515%;
	margin-top: 15px
}

.gridwrp_4 {
	width: 104.167%
}

.gridwrp_4 .grid_4 {
	width: 96%;
	margin-right: 4%
}

.gridwrp_4 .grid_3 {
	width: 71%;
	margin-right: 4%
}

.gridwrp_4 .grid_2 {
	width: 46%;
	margin-right: 4%
}

.gridwrp_4 .grid_1 {
	width: 21%;
	margin-right: 4%
}

.gridwrp_4 .grid:nth-child(4n+1) {
	clear: both
}

.column + .gridcontainer {
	margin-top: -20px
}

@media screen and (max-width:768px) {
	.gridwrp_3 {
		display: block
	}

	.gridwrp_3 .grid_1 {
		width: 100%
	}

	.six_column .gridwrp_3 .grid_1 {
		width: 100%
	}

	.gridcontainer_mt0 {
		margin-top: -20px
	}

	.grid {
		margin-top: 20px
	}

	.grid_border > * {
		padding: 20px
	}
}

@media only screen and (max-width:480px) {

	.gridwrp_2,
	.gridwrp_2 .grid_1 {
		width: 100%;
		margin-right: 0
	}

	.gridwrp_4 {
		width: 105%
	}

	.gridwrp_4 .grid_1 {
		width: 45.238%;
		margin-right: 4.762%
	}

	.sp_gridwrp2 .gridwrp_3 {
		width: 105.319%
	}

	.sp_gridwrp2 .gridwrp_3 .grid_2 {
		width: 94.949%;
		margin-right: 5.051%
	}

	.sp_gridwrp2 .gridwrp_3 .grid:nth-child(2n+1) {
		clear: both
	}

	.sp_gridwrp2 .gridwrp_3 .grid:nth-child(3n+1) {
		clear: none
	}

	.sp_gridwrp2 .gridwrp_2 {
		width: 105.319%
	}

	.sp_gridwrp2 .gridwrp_2 .grid_2 {
		width: 94.949%;
		margin-right: 5.051%
	}

	.sp_gridwrp2 .gridwrp_2 .grid_1 {
		width: 44.949%;
		margin-right: 5.051%
	}

	.sp_gridwrp2 .gridwrp_2 .grid:nth-child(2n+1) {
		clear: both
	}

	.sp_gridwrp2 .gridwrp_2 .grid:nth-child(3n+1) {
		clear: none
	}

	.sp_gridwrp2 .linkarea p {
		padding: 0
	}

	.column + .gridcontainer {
		margin-top: 0
	}
}

.fixed {
	position: fixed;
	top: 0
}

.bg_fixed {
	background-attachment: fixed
}

@media screen and (max-width:768px) {
	.fixed {
		position: fixed;
		top: 0
	}
}

.btn_detail {
	width: auto;
	margin: 0 auto;
	margin-top: 40px
}

.btn_detail a {
	position: relative;
	display: block;
	color: #fff;
	font-size: 16px;
	line-height: 20px;
	font-weight: 700;
	text-align: center;
	padding: 15px 0;
	border-radius: 2px;
	background: #000;
	text-decoration: none
}

.btn_detail a:after {
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	width: 10px;
	height: 10px;
	border-top: none;
	border-left: none;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
}

.btn_detail a:hover {
	text-decoration: none;
	background: #333
}

.btn_detail.pdf a {
	font-weight: 400;
	background: url(https://clouddirect.jp.fujitsu.com/image/btn_pdf) #f93 no-repeat 20px center;
	background-size: auto 20px
}

.btn_order a:hover,
.btn_order input:hover {
	text-decoration: none;
	background-color: #ffab33;
	opacity: 1 !important
}

.btn_detail.zip_search {
	position: absolute;
	top: 20px;
	left: 13%;
	width: 200px;
	margin: 0 0 0 20px
}

.btn_detail.zip_search a {
	font-size: 15px;
	line-height: 17px;
	font-weight: 400;
	padding: 10px 0;
	border-radius: 2px
}

.btn_detail.zip_search a:after {
	content: none
}

.btn_detail_red a {
	background-color: #c91b36
}

.btn_detail_red a:hover {
	background-color: #e31838
}

.btn_detail_black a {
	background-color: #000
}

.btn_detail_black a:hover {
	background-color: #222
}

.btn_window {
	font-weight: 400;
	background: url(https://clouddirect.jp.fujitsu.com/image/btn_window) no-repeat 0 center;
	background-size: 10px auto;
	padding-left: 20px;
	color: #a30b1a;
	font-size: 14px
}

@media screen and (max-width:768px) {
	.btn_detail {
		width: 90%;
		margin: 0 auto;
		margin-top: 20px
	}

	.btn_detail a {
		font-size: 16px;
		background-size: 18px 30px
	}
}

@media only screen and (max-width:480px) {
	.btn_detail {
		width: 50%;
		margin: 0 auto;
		margin-top: 20px
	}

	.btn_detail.zip_search {
		position: absolute;
		top: 10px;
		left: 36%;
		width: 63%;
		margin: 0
	}

	.btn_detail.zip_search a {
		font-size: 14px
	}

	.btn_detail.pdf {
		float: none;
		width: 80%;
		margin: 0 auto
	}

	.btn_detail a,
	.btn_detail input {
		font-size: 14px;
		background-size: 18px 30px
	}

	.btn_detail.pdf {
		margin: 20px auto 10px
	}
}

.btn_white {
	width: 300px;
	margin: 0 auto;
	margin-top: 30px
}

.btn_white a {
	text-decoration: none;
	display: block;
	background-color: #fff;
	text-align: center;
	color: #1d50a2;
	font-size: 18px;
	line-height: 20px;
	font-weight: 700;
	padding: 15px 0;
	border: solid 1px #1d50a2
}

.btn_white a:hover {
	text-decoration: none;
	color: #fff;
	background-color: #1d50a2
}

.btn_white a:after {
	border-top: solid 1px #1d50a2;
	border-left: solid 1px #1d50a2
}

.btn_white a:hover:after {
	border-top: solid 2px #fff;
	border-left: solid 2px #fff
}

@media screen and (max-width:768px) {
	.btn_white {
		width: 90%;
		margin: 0 auto;
		margin-top: 20px
	}

	.btn_white a {
		font-size: 14px;
		line-height: 20px;
		padding: 10px 0
	}
}

.btn_detail2 {
	width: 400px;
	margin: 30px auto 0
}

.btn_detail2 a {
	text-decoration: none;
	display: block;
	background-color: #fff;
	text-align: center;
	color: #000;
	font-size: 18px;
	line-height: 20px;
	font-weight: 700;
	padding: 15px 0;
	border: solid 1px #333;
	position: relative
}

.btn_detail2 a:hover {
	text-decoration: none;
	color: #a30b1a
}

.btn_detail2 a span {
	position: relative;
	padding-right: 25px
}

.btn_detail2 a span:after {
	position: absolute;
	content: '';
	margin: auto;
	top: 0;
	bottom: 0;
	right: 0;
	width: 5px;
	height: 5px;
	border-top: 3px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 5px solid #a30b1a;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

@media screen and (max-width:768px) {
	.btn_detail2 {
		width: 90%;
		margin: 0 auto;
		margin-top: 20px
	}

	.btn_detail2 a {
		font-size: 14px;
		line-height: 20px;
		padding: 10px 0
	}
}

.localnav {
	width: 100%
}

.content_cart + .submit_3btns .btn_detail a,
.submit_3btns .btn_detail input {
	background-color: #DAD9D6;
	border: solid 1px #DAD9D6;
	color: #000
}

.content_cart + .submit_3btns .btn_detail a:hover,
.submit_3btns .btn_detail input:hover {
	background-color: #DAD9D6;
	border: solid 1px #DAD9D6;
	color: #000;
	opacity: 0.7 !important
}

.content_cart + .submit_3btns .btn_order a,
.content_cart + .submit_3btns .btn_order input {
	background-color: red;
	border: solid 1px #FF0000 !important;
	color: #fff
}

.content_cart + .submit_3btns .btn_order a:hover,
.content_cart + .submit_3btns .btn_order input:hover {
	background-color: red;
	border: solid 1px red;
	color: #fff;
	opacity: 0.7 !important
}

.content_cart + .submit_3btns .btn_estimate a,
.content_cart + .submit_3btns .btn_estimate input {
	background-color: #A30B1A;
	border: solid 1px #A30B1A;
	color: #fff
}

.content_cart + .submit_3btns .btn_estimate a:hover,
.content_cart + .submit_3btns .btn_estimate input:hover {
	background-color: #A30B1A;
	border: solid 1px #A30B1A;
	color: #fff;
	opacity: 0.7 !important
}

.content_cart + .submit_3btns .btn_deactive a,
.content_cart + .submit_3btns .btn_deactive input,
.content_cart + .submit_3btns .btn_deactive a:hover,
.content_cart + .submit_3btns .btn_deactive input:hover {
	opacity: 1 !important
}

.product_detail2 .btn_detail.favorite {
	width: 250px;
	margin: 0;
	margin-top: 0;
	margin-bottom: 20px
}

.product_detail2 .btn_detail.favorite a {
	font-weight: 400;
	text-decoration: none;
	background: red;
	border: solid 1px red;
	padding: 10px 0;
	border-radius: 3px;
	opacity: 1 !important
}

.product_detail2 .btn_detail.favorite a:hover {
	background: red;
	opacity: 0.7 !important
}

.product_detail2 .btn_detail.favorite a:after {
	content: none
}

.estimate {
	background: #C6C6C0
}

.headline_fsas {
	position: relative;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: block;
	margin: 0 auto;
	text-align: left;
	background: #6f0f10;
	width: 1080px;
	margin-left: auto;
	margin-right: auto
}

.headline_fsas .title {
	font-size: 20px;
	line-height: 1.2;
	color: #fff;
	padding: 0;
	border: 0;
	padding: 10px
}

.headline_fsas .comment {
	color: #333;
	padding-top: 10px
}

@media screen and (max-width:1140px) {
	.headline_fsas {
		width: 100%
	}
}

@media screen and (max-width:768px) {
	.headline_fsas {
		padding: 0
	}

	.section_label + .headline_fsas {
		margin-top: 20px
	}

	.headline_fsas::before,
	.headline_fsas::after {
		width: 5px;
		height: 100%;
		border-top: 1px solid #333;
		border-bottom: 1px solid #333
	}

	.headline_fsas::before {
		left: 0;
		border-left: 1px solid #333
	}

	.headline_fsas::after {
		right: 0;
		border-right: 1px solid #333
	}

	.headline_fsas .title {
		font-size: 20px
	}
}

@media only screen and (max-width:480px) {
	.headline_fsas .title {
		font-size: 16px
	}
}

.subhead {
	font-size: 24px;
	line-height: 1.4;
	text-align: center;
	margin-top: 30px
}

.subhead2 {
	font-size: 20px;
	line-height: 1.4;
	text-align: left;
	margin: 30px 0 10px
}

@media screen and (max-width:768px) {
	.subhead {
		font-size: 18px;
		line-height: 1.4;
		text-align: center;
		margin-top: 20px
	}

	.subhead2 {
		font-size: 16px;
		line-height: 1.4;
		text-align: left;
		margin: 20px 0 10px
	}
}

.bg_graytile {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/bg_graytile);
	background-position: top center;
	background-repeat: repeat
}

.bg_gray {
	background-color: #eee
}

.bg_gray2 {
	background-color: #dad9d6
}

.bg_gray3 {
	background-color: #3c3c35
}

.bg_baige {
	background-color: #f6efdd
}

.bg_photo_leaf {
	background-color: #fff;
	background-image: url(https://clouddirect.jp.fujitsu.com/bplats/image/top/bg_photo_leaf.jfif);
	background-position: top center;
	background-repeat: repeat;
	background-size: cover
}

.section_wrp {
	margin-top: 0
}

.section {
	width: 100%;
	border-top: solid 0 #ddd;
	text-align: left;
	position: relative
}

.section_inner {
	margin: 0 auto;
	padding: 60px 0 60px 0
}

.section_inner.wideSection {
	max-width: 1280px;
	padding: 50px 0 70px
}

.section_inner.wideSection {
	padding: 30px
}
}

@media screen and (max-width:768px) {
	.section_wrp {}

	.section_inner {
		margin: 0 auto;
		padding: 20px 20px 20px
	}

	.section_inner.wideSection {
		padding: 20px
	}
}

@media only screen and (max-width:480px) {
	.section_inner {
		margin: 0 auto;
		padding: 10px
	}

	.section_inner.wideSection {
		padding: 10px
	}
}

.label_wrp {
	position: relative
}

.section_label {
	position: absolute;
	display: inline-block;
	top: 0;
	left: 0;
	background: #6f0f10;
	color: #fff;
	padding: 10px 30px;
	font-size: 16px;
	line-height: 20px;
	font-weight: 700
}

@media screen and (max-width:768px) {
	.section_label {
		padding: 5px 15px;
		font-size: 14px;
		line-height: 15px;
		display: inline-block
	}
}

.content {
	text-align: left
}

.bm_width {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto
}

.headline_fsas + .content {
	margin-top: 25px
}

.content + .content {
	margin-top: 80px
}

@media screen and (max-width:768px) {
	.content {
		width: 100%;
		margin: 0 auto;
		box-sizing: border-box;
		-webkit-box-sizing: border-box
	}

	.headline_fsas + .content {
		margin-top: 20px
	}

	.content + .content {
		margin-top: 30px
	}
}

@media only screen and (max-width:480px) {
	.headline_fsas + .content {
		margin-top: 5px
	}

	.content + .content {
		margin-top: 20px
	}
}

.column {
	width: 100%;
	margin: 0 auto
}

.column h3 {
	font-size: 18px;
	font-weight: 700;
	text-align: left;
	margin-top: 30px
}

.column h4 {
	font-size: 18px;
	font-weight: 700;
	text-align: left;
	margin-top: 30px
}

.column p {
	margin-top: 30px;
	font-size: 18px
}

.column * + p {
	margin-top: 20px;
	font-size: 18px
}

.column p + p {
	margin-top: 15px
}

.column p.caution {
	font-size: 12px !important
}

.column .bbottom {
	border-bottom: 1px solid #000;
	padding-bottom: 10px
}

.column p img.icon-a {
	vertical-align: middle;
	margin-left: 3px;
	margin-right: 6px
}

@media screen and (max-width:768px) {
	.column {
		width: 100%;
		margin: 0 auto
	}

	.column h3 {
		font-size: 18px;
		margin-top: 15px
	}

	.column h4 {
		font-size: 16px;
		margin-top: 15px
	}

	.column p {
		margin-top: 10px
	}
}

@media only screen and (max-width:480px) {
	.column h3 {}
}

.notes {
	background: #eee;
	padding: 20px;
	margin-top: 20px
}

.notes p {
	font-size: 12px;
	line-height: 20px
}

.notes > p {
	margin-top: 0
}

.txtlink a {
	padding-left: 15px;
	color: #6f0f10;
	text-decoration: none;
	position: relative;
	display: inline-block;
	text-decoration: underline
}

.txtlink a:hover {
	opacity: .7
}

.txtlink a:after {
	position: absolute;
	content: " ";
	width: 6px;
	height: 6px;
	top: 0;
	bottom: 0;
	left: 0;
	right: auto;
	margin: auto;
	border-top: solid 2px #6f0f10;
	border-left: solid 2px #6f0f10;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg)
}

.txtlink.arw_prev a:after {
	top: 0;
	bottom: 0;
	left: 3px;
	right: auto;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
}

.txtlink.arw_after a {
	padding-left: 0;
	padding-right: 10px
}

.txtlink.arw_after a:after {
	left: auto;
	right: 0
}

.txtlink.arw_down a:after {
	top: 7px;
	bottom: auto;
	left: 2px;
	right: auto;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	transform: rotate(-135deg)
}

.txtlink.arw_after_down a {
	padding-left: 0;
	padding-right: 10px
}

.txtlink.arw_after_down a:after {
	top: 7px;
	bottom: auto;
	left: auto;
	right: 0;
	-webkit-transform: rotate(-135deg);
	-moz-transform: rotate(-135deg);
	-ms-transform: rotate(-135deg);
	transform: rotate(-135deg)
}

.txtlink.arw_box a {
	color: #861718;
	font-weight: 700;
	padding-left: 25px
}

.txtlink.arw_box a:before {
	content: ' ';
	width: 20px;
	height: 20px;
	background: #861718;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: auto;
	margin: auto
}

.txtlink.arw_box a:after {
	border-top: solid 1px #fff;
	border-left: solid 1px #fff;
	top: 0;
	bottom: 0;
	left: 5px;
	right: auto;
	margin: auto
}

.arw_btn {
	width: 440px;
	margin: 0 auto;
	margin-top: 30px
}

.arw_btn a {
	display: block;
	border: solid 1px #5e5e5e;
	padding: 10px 0;
	font-size: 17px;
	text-align: center;
	text-decoration: none;
	color: #000
}

.arw_btn a span {
	padding-right: 20px;
	position: relative
}

.arw_btn a span:after {
	position: absolute;
	content: '';
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 0;
	width: 5px;
	height: 5px;
	border-top: 3px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 5px solid #a30b1a;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.arw_btn a:hover {
	color: #a30b1a
}

@media only screen and (max-width:480px) {
	.arw_btn {
		width: 100%;
		margin-top: 20px
	}
}

.morelink a {
	position: relative;
	padding-left: 12px
}

.morelink a:after {
	content: '';
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 0;
	width: 5px;
	height: 5px;
	border-top: 4px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 4px solid transparent;
	border-left: 5px solid #a30b1a;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.modal_bg {
	position: absolute;
	top: 0;
	left: 0;
	background: #000;
	display: none;
	z-index: 9998
}

.modal {
	position: absolute;
	top: 0;
	left: 0;
	width: 800px;
	display: none;
	z-index: 9999;
	transition: top 0.2s linear, left 0.1s linear;
	-moz-transition: top 0.2s linear, left 0.1s linear;
	-ms-transition: top 0.2s linear, left 0.1s linear;
	-o-transition: top 0.2s linear, left 0.1s linear;
	-webkit-transition: top 0.2s linear, left 0.1s linear
}

.modal .close {
	position: absolute;
	width: 30px;
	height: 30px;
	top: 0;
	right: 0;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	cursor: pointer;
	z-index: 9999
}

.modal .close:before {
	content: " ";
	position: absolute;
	width: 30px;
	height: 2px;
	background: #fff;
	top: 10px;
	right: 0;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg)
}

.modal .close:after {
	content: " ";
	position: absolute;
	width: 30px;
	height: 2px;
	background: #fff;
	top: 10px;
	right: 0;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg)
}

.modal .close:hover {
	opacity: .7
}

.modal .modal_container {
	padding: 0;
	position: relative
}

.modal .modal_contents_wrp {
	position: relative;
	padding: 40px;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.modal .modal_inner {
	padding: 30px
}

.modal .modal_contents_wrp::-webkit-scrollbar {
	display: none
}

@media screen and (max-width:768px) {
	.modal {
		width: 100%
	}

	.modal .close {
		top: 5px;
		right: 0
	}
}

.modal .modal_pager li a {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	display: block;
	width: 30px;
	height: 30px;
	white-space: nowrap;
	text-indent: 100%;
	overflow: hidden
}

.modal .modal_pager li a:after {
	position: absolute;
	content: " ";
	width: 15px;
	height: 15px;
	top: 6px;
	left: 0;
	border-top: solid 2px #fff;
	border-left: solid 2px #fff;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg)
}

.modal .modal_pager li.prev a {
	left: 0;
	-webkit-transform: rotate(-180deg);
	-moz-transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	transform: rotate(-180deg)
}

.modal .modal_pager li.next a {
	right: 0
}

.modal .modal_container .modal_header h3 {
	font-size: 25px;
	line-height: 50px;
	text-align: center;
	font-weight: 700;
	text-shadow: none
}

.modal .modal_container .modal_header p {
	font-size: 14px;
	line-height: 20px;
	text-align: center;
	font-weight: 700
}

.modal .btn {
	width: 560px;
	margin: 0 auto;
	margin-top: 40px
}

@media screen and (max-width:768px) {
	.modal .modal_container .modal_header h3 {
		font-size: 20px;
		line-height: 25px;
		padding-top: 5px
	}

	.modal .btn {
		width: 100%;
		margin: 0 auto;
		margin-top: 40px
	}
}

.modal_container .btn {
	width: 450px;
	margin: 0 auto;
	margin-top: 30px
}

.modal_container .btn a {
	position: relative;
	display: block;
	background-color: #e63412;
	text-align: center;
	color: #fff;
	font-size: 18px;
	line-height: 20px;
	font-weight: 700;
	padding: 20px 0;
	border-radius: 5px;
	box-shadow: rgba(0, 0, 0, .2) 0 3px 0 0;
	-webkit-box-shadow: rgba(0, 0, 0, .2) 0 3px 0 0;
	-moz-box-shadow: rgba(0, 0, 0, .2) 0 3px 0 0;
	text-decoration: none
}

.modal_container .btn a:hover {
	text-decoration: none;
	background-color: #f60
}

.modal_container .btn a:after {
	position: absolute;
	content: " ";
	width: 13px;
	height: 13px;
	top: 0;
	left: auto;
	bottom: 0;
	right: 10px;
	margin: auto;
	border-top: solid 2px #fff;
	border-left: solid 2px #fff;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	transform: rotate(135deg)
}

@media screen and (max-width:768px) {
	.modal_container .btn {
		width: 100%;
		margin: 0 auto;
		margin-top: 15px
	}

	.modal_container .btn a {
		font-size: 16px
	}
}

.modal .nodata {
	padding: 50px 15px;
	text-align: center
}

.modal .nodata h3 {
	font-size: 16px;
	color: #fff
}

.modal .closebtn a {
	display: block;
	width: 120px;
	margin: 0 auto;
	line-height: 30px;
	border: solid 1px #fff;
	text-align: center;
	margin-top: 20px;
	color: #fff
}

.modal_gamedetail .closebtn a:hover {
	color: #000;
	background: #fff;
	text-decoration: none
}

@media screen and (max-width:768px) {
	.modal .close {
		top: 30px;
		right: 0
	}
}

.modal_demo1 .modal_inner,
.modal_demo2 .modal_inner {
	color: #fff;
	background: #333;
	padding: 30px
}

.section_contents .headline_fsas {
	text-align: center
}

.section_contents .headline_fsas .title {
	font-size: 35px;
	line-height: 1.4
}

.section_contents .headline_fsas .read {
	font-size: 22px;
	line-height: 1.4;
	font-weight: 700;
	margin-top: 5px
}

.section_contents .visual {
	margin-top: 30px
}

.section_contents .headline_fsas + .content,
.section_contents .visual + .content {
	margin-top: 30px
}

.section_contents .content + .content {
	margin-top: 80px
}

.section_contents .content h3 {
	font-size: 25px;
	line-height: 1.8
}

.section_contents .content h4 {
	font-size: 18px;
	line-height: 1.8
}

.section_contents .content p {
	font-size: 16px;
	line-height: 2
}

.section_contents .content * + h3,
.section_contents .content * + h4,
.section_contents .content * + p {
	margin-top: 2em
}

.section_contents .content h3 + p,
.section_contents .content h3 + h4,
.section_contents .content h4 + p {
	margin-top: 0
}

@media screen and (max-width:768px) {

	.section_contents .headline_fsas + .content,
	.section_contents .visual + .content {
		margin-top: 15px
	}

	.section_contents .content + .content {
		margin-top: 30px
	}

	.section_contents .content h3 {
		font-size: 20px
	}

	.section_contents .content h4 {
		font-size: 16px
	}

	.section_contents .content p {
		font-size: 14px
	}

	.section_contents .content * + h3,
	.section_contents .content * + h4,
	.section_contents .content * + p {
		margin-top: 1em
	}
}

* + .txt_area {
	margin-top: 30px
}

.txt_area .tag {
	display: inline-block;
	color: #861718;
	font-size: 24px;
	line-height: 1;
	text-align: center;
	padding: 10px;
	border: 1px solid #861718
}

.txt_area .read {
	font-size: 20px;
	line-height: 1.4
}

.txt_area .title {
	font-size: 30px;
	line-height: 1.4
}

.txt_area * + .title {
	margin-top: 10px
}

.txt_area .subtitle {
	font-size: 24px
}

.txt_area p {
	font-size: 16px;
	text-align: left
}

.txt_area * + p {
	margin-top: 10px
}

@media screen and (max-width:768px) {
	.txt_area {}

	* + .txt_area {
		margin-top: 20px
	}

	.txt_area .tag {
		display: block;
		font-size: 14px;
		padding: 5px;
		border: 1px solid #861718
	}

	.txt_area .read {
		font-size: 14px
	}

	.txt_area .title {
		font-size: 20px
	}

	.txt_area * + .title {
		margin-top: 5px
	}

	.txt_area .subtitle {
		font-size: 16px
	}

	.txt_area p {
		font-size: 14px
	}

	.txt_area * + p {
		margin-top: 10px
	}
}

@media only screen and (max-width:480px) {
	.txt_area .title {
		font-size: 16px
	}

	.txt_area .subtitle {
		font-size: 14px
	}

	.txt_area p {
		font-size: 14px
	}
}

.pickup_product {
	background: #eee;
	text-align: left;
	padding: 50px 0
}

.pickup_product .photo_area,
.pickup_product .txt_area {
	width: 48%;
	margin-top: 0
}

@media screen and (max-width:1160px) {
	.pickup_product {
		padding: 30px
	}

	.pickup_product img {
		width: 100%;
		height: auto
	}
}

@media only screen and (max-width:768px) {
	.pickup_product {
		padding: 20px
	}

	.pickup_product .photo_area,
	.pickup_product .txt_area {
		width: 100%;
		float: none
	}

	.pickup_product .txt_area {
		margin-top: 20px
	}
}

.pickup_item {
	position: relative;
	z-index: 1;
	background: #fff;
	text-align: left;
	padding: 0;
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, .2)
}

.pickup_item .pickup_item_label {
	position: absolute;
	top: 0;
	right: 0;
	width: 130px;
	height: 130px;
	text-align: center;
	font-size: 19px;
	line-height: 25px;
	padding: 30px 0;
	background: #fe0000;
	color: #fff;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

@media screen and (max-width:1160px) {
	.pickup_item .pickup_item_label {
		width: 80px;
		height: 80px;
		font-size: 14px;
		line-height: 18px;
		padding: 15px 0
	}
}

@media only screen and (max-width:480px) {
	.pickup_item .pickup_item_label {
		width: 70px;
		height: 70px;
		font-size: 12px;
		line-height: 12px;
		padding: 8px 0
	}
}

@media only screen and (max-width:480px) {
	.pickup_item .pickup_item_label {
		width: 50px;
		height: 50px;
		font-size: 10px;
		line-height: 12px;
		padding: 8px 0
	}
}

.pickup_item .txt {
	float: right;
	width: 60%;
	padding: 40px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.pickup_item .txt .read {
	font-size: 18px;
	line-height: 1.4;
	font-weight: 700
}

.pickup_item .txt * + .title {
	margin-top: 10px
}

.pickup_item .txt .title {
	font-size: 32px;
	line-height: 1.3
}

.pickup_item .txt .title .label {
	font-size: 26px;
	color: #fe0000
}

.pickup_item .txt .title .type {
	color: #a30b1a
}

.pickup_item .txt p {
	font-size: 16px;
	line-height: 1.68;
	margin-top: 15px
}

.pickup_item .txt p.red {
	color: #fe0000;
	font-weight: 700
}

.pickup_item .img {
	float: left;
	width: 40%
}

.pickup_item .txt .btn {
	width: 440px;
	margin: 0 auto;
	margin-top: 30px
}

.pickup_item .txt .btn a {
	display: block;
	border: solid 1px #5e5e5e;
	padding: 8px 0;
	font-size: 17px;
	text-align: center;
	text-decoration: none;
	color: #000
}

.pickup_item .txt .btn a span {
	padding-right: 20px;
	position: relative
}

.pickup_item .txt .btn a span:after {
	position: absolute;
	content: '';
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 0;
	width: 5px;
	height: 5px;
	border-top: 3px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 5px solid #a30b1a;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.pickup_item .txt .btn a:hover {
	color: #a30b1a
}

@media screen and (max-width:1160px) {
	.pickup_item .txt {
		padding: 20px
	}

	.pickup_item .txt .read {
		font-size: 16px
	}

	.pickup_item .txt .title {
		font-size: 25px
	}

	.pickup_item .txt .title .label {
		font-size: 18px;
		color: #fe0000
	}

	.pickup_item .txt p {
		font-size: 14px;
		line-height: 1.68;
		margin-top: 15px
	}

	.pickup_item .txt .btn {
		width: 90%
	}
}

@media screen and (max-width:768px) {
	.pickup_item .txt {
		float: none;
		width: 100%;
		margin-top: 0;
		padding: 20px
	}

	.pickup_item .txt .read {
		font-size: 16px
	}

	.pickup_item .txt * + .title {
		margin-top: 5px
	}

	.pickup_item .txt .title {
		font-size: 18px
	}

	.pickup_item .txt p {
		font-size: 14px;
		line-height: 1.6;
		margin-top: 10px
	}

	.pickup_item .img {
		float: none;
		width: 100%;
		margin-top: 15px
	}

	.pickup_item .txt .btn {
		margin-top: 15px
	}
}

@media only screen and (max-width:480px) {
	.pickup_item .txt .title {
		font-size: 16px
	}

	.pickup_item .txt p {
		font-size: 12px
	}

	.pickup_item .txt .btn a {
		font-size: 14px
	}

	.pickup_item .txt .btn a span {
		padding-right: 15px
	}

	.pickup_item .txt .btn {
		width: 100%
	}
}

@media only screen and (max-width:320px) {
	.pickup_item .txt .btn a {
		font-size: 12px
	}
}

.pickup_items .flol,
.pickup_items .flor {
	width: 49%
}

.pickup_items .pickup_item .txt {
	float: right;
	width: 66%;
	padding: 30px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.pickup_items .pickup_item .img {
	float: left;
	width: 34%
}

.pickup_items .pickup_item .txt .btn {
	width: 100%;
	margin: 0 auto;
	margin-top: 25px
}

@media screen and (max-width:768px) {

	.pickup_items .flol,
	.pickup_items .flor {
		width: 100%;
		float: none
	}

	.pickup_items .flor {
		margin-top: 20px
	}

	.pickup_items .pickup_item .img {
		margin-top: 0;
		width: 25%
	}

	.pickup_items .pickup_item .txt {
		width: 75%
	}
}

@media only screen and (max-width:480px) {
	.pickup_items .pickup_item .txt {
		padding: 20px
	}
}

.pickup_items .pickup_item .txt .title {
	font-size: 25px
}

.pickup_items .pickup_item .txt .title .label {
	font-size: 20px
}

.pickup_items .pickup_item .txt p {
	font-size: 16px;
	line-height: 1.68;
	margin-top: 15px
}

@media screen and (max-width:1160px) {
	.pickup_items .pickup_item .txt .title {
		font-size: 20px
	}

	.pickup_items .pickup_item .txt .title .label {
		font-size: 18px;
		color: #fe0000
	}

	.pickup_items .pickup_item .txt p {
		font-size: 14px;
		margin-top: 10px
	}

	.pickup_items .pickup_item .txt .btn a {
		font-size: 14px
	}
}

@media screen and (max-width:768px) {
	.pickup_items .pickup_item .txt * + .title {
		margin-top: 5px
	}

	.pickup_items .pickup_item .txt .title {
		font-size: 18px
	}

	.pickup_items .pickup_item .txt p {
		font-size: 14px;
		line-height: 1.6;
		margin-top: 10px
	}

	.pickup_items .pickup_item .txt .btn {
		margin-top: 15px
	}

	.pickup_items .pickup_item .txt .btn a {
		font-size: 13px
	}
}

@media only screen and (max-width:480px) {
	.pickup_items .pickup_item .txt .title {
		font-size: 16px
	}

	.pickup_items .pickup_item .txt p {
		font-size: 12px
	}

	.pickup_items .pickup_item .txt .btn a {
		font-size: 14px
	}

	.pickup_items .pickup_item .txt .btn a span {
		padding-right: 15px
	}

	.pickup_items .pickup_item .txt .btn {
		width: 100%
	}
}

@media only screen and (max-width:320px) {
	.pickup_items .pickup_item .txt .btn a {
		font-size: 12px
	}
}

.price_off {
	text-align: center
}

.price_off .title {
	font-size: 25px;
	line-height: 1.2;
	font-weight: 700;
	color: #C00
}

.price_off .price {
	background-color: #666;
	color: #fff;
	margin-top: 20px;
	padding: 10px 10px;
	font-size: 40px;
	line-height: 1.2;
	font-weight: 700;
	position: relative
}

.price_off .price + .price {
	margin-top: 30px
}

.price_off .price .cap {
	font-size: 14px;
	font-weight: 400
}

.price_off .btn_detail {
	width: auto;
	max-width: 400px;
	margin: 0 auto;
	margin-top: 30px
}

@media screen and (max-width:1280px) {
	.price_off .price .cap {
		display: block
	}
}

@media screen and (max-width:960px) {
	.price_off .title {
		font-size: 23px
	}

	.price_off .price {
		font-size: 30px
	}
}

@media screen and (max-width:768px) {
	.price_off .title {
		font-size: 20px
	}

	.price_off .price {
		padding: 5px;
		margin-top: 10px;
		font-size: 20px
	}

	.price_off .price .cap {
		font-size: 12px
	}

	.price_off .btn_detail {
		width: 90%;
		margin: 0 auto;
		margin-top: 20px
	}
}

.org_price:after,
.org_price:before {
	content: ' ';
	position: absolute;
	width: 90%;
	height: 3px;
	background: #c00;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	transform: rotate(-12deg)
}

.org_price:after {
	transform: rotate(12deg)
}

.price_off .off_price {
	background: #c00
}

.off_price:after {
	content: ' ';
	position: absolute;
	top: -25px;
	left: 0;
	right: 0;
	margin: auto;
	width: 30px;
	height: 30px;
	border-top: 20px solid #c00;
	border-right: 15px solid transparent;
	border-bottom: 20px solid transparent;
	border-left: 15px solid transparent;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.itemlist h3 {
	text-align: center
}

.itemlist .item {
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, .2);
	background: #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: relative
}

.itemlist_case .item {
	box-shadow: none;
	background: none
}

.itemlist .item .head {
	color: #fff;
	font-size: 14px;
	line-height: 40px;
	font-weight: 700;
	text-align: center;
	background: #333;
	width: 120px;
	height: 40px;
	position: absolute;
	top: 10px;
	left: -10px
}

.itemlist .item .head.head_campaign {
	background: #308dd3
}

.itemlist .item .head.head_column {
	background: #1ca12c
}

.itemlist .item .head.head_service {
	background: #fe0000
}

.itemlist .item .head.head_case {
	background: #706aba
}

.itemlist .youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%
}

.itemlist .youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important
}

.itemlist .item .txt {
	padding: 15px
}

.itemlist_case .item .txt {
	padding: 15px 5px
}

.itemlist .item .txt .title {
	font-size: 18px;
	margin-bottom: 10px
}

.itemlist .item .txt .title.new_icon::before {
	content: "NEW";
	color: red;
	margin-right: 5px;
	font-size: 14px
}

.itemlist .item .txt .title .case {
	font-size: 15px;
	font-weight: 700;
	display: block
}

.itemlist .item .txt .tag01 {
	background-color: #a30b1a;
	width: auto;
	color: #fff;
	padding: 4px;
	font-size: 12px;
	margin-right: 4px;
	margin-bottom: 3px;
	display: inline-block
}

.itemlist .item .txt p {
	font-size: 14px
}

.itemlist .item .txt p span {
	font-size: 10px
}

.itemlist .item .txt * + p {
	margin-top: 5px
}

.itemlist .item .morelink {
	text-align: right
}

@media screen and (max-width:768px) {
	.itemlist .title {
		width: auto;
		font-size: 18px
	}

	.itemlist .item {
		margin-top: 20px
	}

	.itemlist .item .head {
		font-size: 12px;
		line-height: 30px;
		width: 100px;
		height: 30px
	}

	.itemlist .item .txt {
		padding: 10px
	}

	.itemlist .item .txt .title {
		font-size: 14px
	}

	.itemlist .item .txt p {
		font-size: 14px;
		margin-top: 5px
	}
}

.headline_fsas_wrp {
	position: relative
}

.headline_fsas_wrp .title {
	font-size: 26px;
	line-height: 1.4;
	padding-bottom: 15px;
	border-bottom: 1px solid #333
}

.headline_fsas_wrp .read {
	color: #000;
	font-size: 15px;
	line-height: 2;
	text-align: center;
	margin-top: 30px
}

.headline_fsas_wrp .txtlink {
	position: absolute;
	bottom: 10px;
	right: 0;
	font-size: 16px
}

@media screen and (max-width:768px) {
	.headline_fsas_wrp .title {
		font-size: 18px
	}

	.headline_fsas_wrp .txtlink {
		font-size: 14px
	}
}

.section_news .narrow_width {
	position: relative
}

.news_list {
	margin-top: 0
}

.news_list dt,
.news_list dd {
	font-size: 16px;
	line-height: 1.5;
	padding-top: 5px
}

.news_list dt {
	width: 160px;
	float: left;
	font-weight: 700;
	font-size: 14px
}

.news_list dd {
	margin-left: 100px
}

.news_list dd.news_new::before {
	content: "NEW";
	color: red;
	margin-right: 10px;
	font-weight: 700
}

.news_list dd + dt,
.news_list dd + dt + dd {
	margin-top: 10px
}

.news_list dd a {
	color: #000;
	text-decoration: underline
}

.news_list dd a:hover {
	color: #ccc
}

@media screen and (max-width:768px) {
	.news_list {
		margin-top: 15px
	}

	.news_list dt {
		font-size: 14px;
		font-weight: 700;
		width: 100%;
		float: none
	}

	.news_list dd {
		font-size: 14px;
		margin-left: 0;
		margin-top: 0 !important;
		border: 0;
		padding-top: 5px
	}

	.news_list dd + dt {
		margin-top: 10px
	}
}

.section_news .arw_btn {
	position: absolute;
	top: 0;
	right: 0;
	width: auto;
	margin: 0 auto
}

.section_news .arw_btn a {
	display: block;
	color: #000;
	font-size: 14px;
	padding: 0;
	border: none;
	margin-top: 8px;
	text-decoration: underline
}

.section_news .arw_btn a:hover {
	color: #a30b1a
}

.contact_link {
	background: #fff;
	width: 100%;
	color: #000;
	max-width: 100%;
	padding: 50px 0
}

.contact_link .read {
	color: #000;
	font-size: 24px;
	font-weight: 400;
	text-align: center;
	border-bottom: none;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.contact_link .contact_box {
	width: 990px;
	margin: 0 auto
}

.contact_link .contact_box .box {
	background: #eee;
	width: 47%;
	border: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	min-height: 235px;
	max-height: 235px
}

.contact_link .contact_box .box .txt {
	padding: 20px;
	padding-bottom: 0
}

.contact_link .contact_box .box h3 {
	text-align: center;
	font-size: 26px;
	line-height: 1.5;
	border-bottom: solid 1px #000;
	padding-bottom: 10px
}

.contact_link .contact_box .box p {
	font-size: 14px;
	line-height: 20px
}

.contact_link .contact_box .box .cap {
	font-size: 12px;
	margin-top: 5px;
	line-height: 15px
}

.contact_link .contact_box .box .btn a {
	background: #000;
	display: block;
	color: #fff;
	text-align: center;
	font-size: 16px;
	text-decoration: none;
	line-height: 60px
}

@media screen and (max-width:1050px) {
	.contact_link .contact_box {
		width: 100%
	}

	.contact_link .contact_box .box {
		width: 49%;
		padding: 15px;
		min-height: inherit
	}

	.contact_link .contact_box .box .txt {
		padding: 15px;
		padding-bottom: 0
	}
}

@media screen and (max-width:768px) {
	.contact_link .read {
		font-size: 18px
	}

	.contact_link .contact_box .box h3 {
		font-size: 18px
	}

	.contact_link .contact_box .box p {
		font-size: 12px
	}

	.contact_link .contact_box .box .cap {
		font-size: 12px
	}

	.contact_link .contact_box .box .btn a {
		font-size: 14px;
		line-height: 40px
	}
}

@media only screen and (max-width:480px) {
	.contact_link {
		padding: 20px 20px
	}

	.contact_link .contact_box .box {
		width: 100%;
		float: none
	}
}

.read_visual {
	background: #666 no-repeat center center;
	background-size: cover;
	padding: 80px 40px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.read_visual .txt {
	color: #fff
}

.read_visual .txt h2 {
	font-size: 40px;
	line-height: 1.4
}

.read_visual .txt p {
	font-size: 18px;
	line-height: 1.8;
	margin-top: 20px
}

@media screen and (max-width:768px) {
	.read_visual {
		padding: 0;
		background: none
	}

	.read_visual .txt {
		width: 100%;
		padding: 20px;
		color: #333
	}

	.read_visual .txt h2 {
		font-size: 20px;
		line-height: 1.4
	}

	.read_visual .txt p {
		font-size: 14px;
		line-height: 1.6;
		margin-top: 10px
	}
}

.product_menu {
	background: #a30b1a;
	margin-top: -150px;
	text-align: center
}

.product_menu .inner {
	width: 1000px;
	margin: 0 auto
}

.product_menu li {
	display: inline-block;
	box-sizing: border-box;
	margin-right: 30px
}

.product_menu li a {
	display: block;
	text-align: left;
	font-size: 16px;
	line-height: 60px;
	color: #fff;
	text-decoration: none
}

.product_menu li a::after {
	display: inline-flex;
	content: "";
	width: 5px;
	height: 5px;
	border: 2px solid;
	border-color: transparent transparent #fff #fff;
	transform: rotate(-45deg);
	position: relative;
	top: -7px;
	margin-left: 10px
}

.product_menu li a:hover {
	opacity: .6
}

@media screen and (max-width:1160px) {
	.product_menu {
		margin-top: 0
	}
}

@media screen and (max-width:1000px) {
	.product_menu {
		margin-top: 0;
		text-align: center
	}

	.product_menu .inner {
		width: 100%;
		margin: 0 auto;
		border-right: dotted 0 #fff
	}

	.product_menu li {
		box-sizing: border-box;
		-webkit-box-sizing: border-box
	}

	.product_menu li a {
		display: block;
		text-align: center;
		font-size: 14px;
		line-height: 50px;
		color: #fff;
		text-decoration: none
	}

	.product_menu li a:hover {
		background: #333
	}
}

@media screen and (max-width:768px) {
	.product_menu li {
		display: none
	}
}

.section_product {
	border: 0
}

.section_product p {
	font-size: 16px
}

.section_product strong {
	color: #fe0000;
	font-weight: 700
}

.section_product .arw_btn {
	margin-top: 40px
}

@media screen and (max-width:768px) {
	.section_product .arw_btn {
		margin-top: 20px
	}
}

@media only screen and (max-width:480px) {
	.section_product p {
		font-size: 14px
	}
}

.section_product .headline .title {
	background: #fe0000;
	color: #fff;
	display: block;
	border-bottom: solid 0 #861718;
	padding: 0 20px;
	font-size: 26px;
	line-height: 55px;
	width: 1100px;
	margin: 0 auto;
	text-align: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

@media screen and (max-width:1160px) {
	.section_product .headline .title {
		width: 100%
	}
}

@media only screen and (max-width:480px) {
	.section_product .headline .title {
		font-size: 18px;
		line-height: 1.5;
		padding: 5px 10px
	}
}

.section_product .subhead {
	text-align: center;
	margin-top: 60px
}

.section_product .subhead h3 {
	display: inline-block;
	border-bottom: solid 1px #000;
	font-size: 26px;
	line-height: 1.5;
	margin: 0 auto
}

@media screen and (max-width:1160px) {
	.section_product .headline .title {
		width: 100%
	}

	.section_product .subhead {
		text-align: center;
		margin-top: 40px
	}
}

@media only screen and (max-width:480px) {
	.section_product .subhead {
		margin-top: 30px
	}

	.section_product .subhead h3 {
		font-size: 18px
	}
}

.section_product .txtlink {
	margin-top: 10px
}

.section_product .txtlink a {
	padding-left: 10px
}

.section_product .txtlink a:after {
	position: absolute;
	content: " ";
	top: 7px;
	bottom: auto;
	left: 0;
	right: auto;
	margin: auto;
	width: 6px;
	height: 6px;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	border-left: 4px solid #a30b1a;
	border-right: 4px solid transparent;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg)
}

.section_overview .photo_area {
	width: 40%
}

.section_overview .txt_area {
	width: 53%
}

.section_overview .txt_area .title {
	font-size: 24px;
	color: #fe0000;
	margin-top: 20px
}

.section_overview .txt_area p {
	line-height: 2.25
}

.section_overview .gridcontainer {
	margin-top: 20px
}

@media screen and (max-width:768px) {
	.section_overview .photo_area {
		width: 40%
	}

	.section_overview .txt_area {
		width: 57%
	}

	.section_overview .gridcontainer {
		margin-top: 0
	}

	.section_overview .txt_area .title {
		font-size: 18px;
		margin-top: 0
	}

	.section_overview .txt_area p {
		line-height: 1.5
	}

	.section_overview .gridcontainer {
		margin-top: -10px
	}
}

@media only screen and (max-width:480px) {

	.section_overview .photo_area,
	.section_overview .txt_area {
		width: 100%
	}

	.section_overview .txt_area .title {
		font-size: 16px;
		margin-top: 0
	}
}

.pointlist .item {
	border: solid 10px #eee;
	padding: 15px 25px 30px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.pointlist .item .point {
	color: #a30b1a;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	background: url(https://clouddirect.jp.fujitsu.com/image/overview_point1) top center no-repeat;
	background-size: 40px 63px;
	padding-top: 80px;
	margin-top: -50px
}

.pointlist .item .point1 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_point1)
}

.pointlist .item .point2 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_point2)
}

.pointlist .item .point3 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_point3)
}

.pointlist .item .title {
	font-size: 21px;
	text-align: center;
	margin-top: 30px
}

.section_overview .pointlist .item p {
	font-size: 15px;
	margin-top: 20px;
	line-height: 1.7
}

@media screen and (max-width:768px) {
	.pointlist .item {
		border: solid 5px #eee;
		padding: 10px 20px
	}

	.pointlist .item .point {
		font-size: 16px;
		background-size: 25px 40px;
		padding-top: 50px;
		margin-top: -30px
	}

	.pointlist .item .title {
		font-size: 18px;
		margin-top: 20px
	}

	.pointlist .item p {
		font-size: 14px;
		margin-top: 15px
	}
}

@media only screen and (max-width:480px) {
	.pointlist {
		margin-top: 20px
	}

	.pointlist .item {
		border: solid 5px #eee;
		padding: 10px 20px
	}

	.pointlist .item .point {
		font-size: 14px;
		background-size: 20px 32px;
		padding-top: 40px;
		margin-top: -25px
	}

	.pointlist .item .title {
		font-size: 16px;
		margin-top: 10px
	}

	.pointlist .item p {
		font-size: 14px;
		margin-top: 5px
	}
}

.section_overview .numberlist {
	margin-top: -10px
}

.section_overview .numberlist .item {
	background: #eee;
	padding: 25px 0 0
}

.section_overview .numberlist .txtblock {
	background: #ffefef;
	padding: 10px 20px;
	display: inline-flex;
	align-items: center;
	text-align: center
}

.section_overview .numberlist .txtblock h4 {
	font-weight: 700;
	font-size: 20px;
	color: red;
	margin-bottom: 10px
}

.section_overview .numberlist .txtblock [class*="txt"] {
	display: block;
	font-weight: 700
}

.section_overview .numberlist .txtblock .txt1 {
	background: #FFF;
	font-size: 15px;
	padding: 5px 10px;
	margin-bottom: 10px
}

.section_overview .numberlist .txtblock .txt2 {
	font-size: 20px
}

.section_overview .numberlist .txtblock .txt2 strong {
	font-size: 26px
}

.section_overview .numberlist .txtblock .txt3 {
	font-size: 15px
}

.section_overview .numberlist .txtblock .submit_btn a {
	font-size: 16px !important;
	padding: 15px 10px 15px 0;
	box-sizing: border-box
}

.section_overview .numberlist .item .title {
	font-size: 20px;
	line-height: 36px;
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_01);
	background-position: left top;
	background-repeat: no-repeat;
	padding-left: 95px
}

.section_overview .numberlist .item h5 {
	font-size: 17px;
	font-weight: 700;
	margin: 5px 0 13px
}

.section_overview .numberlist .item .number1 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_01)
}

.section_overview .numberlist .item .number2 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_02)
}

.section_overview .numberlist .item .number3 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_03)
}

.section_overview .numberlist .item .number4 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_04)
}

.section_overview .numberlist .item .number5 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_05)
}

.section_overview .numberlist .item .number6 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_06)
}

.section_overview .numberlist .item .number7 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_07)
}

.section_overview .numberlist .item .number8 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_08)
}

.section_overview .numberlist .item .number9 {
	background-image: url(https://clouddirect.jp.fujitsu.com/image/overview_number_09)
}

.section_overview .numberlist .item .txt {
	padding: 20px 30px 30px 30px
}

.section_overview .numberlist .item .txt p {
	margin-top: 20px
}

@media screen and (max-width:768px) {
	.section_overview .numberlist .item {
		padding: 20px 0
	}

	.section_overview .numberlist .item .title {
		font-size: 16px;
		line-height: 25px;
		background-size: 53px 25px;
		padding-left: 60px
	}

	.section_overview .numberlist .item .txt {
		padding: 10px 15px 15px 15px
	}

	.section_overview .numberlist .item .txt p {
		margin-top: 10px
	}

	.section_overview .numberlist .item h5 {
		font-size: 14px;
		font-weight: 700;
		margin: 5px 0 7px
	}

	.section_overview .numberlist .txtblock {
		padding: 20px
	}

	.section_overview .numberlist .txtblock .adjuster {
		width: 100%
	}

	.section_overview .numberlist .txtblock h4 {
		font-size: 16px;
		margin-bottom: 5px
	}

	.section_overview .numberlist .txtblock .txt1 {
		margin-bottom: 5px;
		font-size: 12px
	}

	.section_overview .numberlist .txtblock .txt2 {
		font-size: 16px
	}

	.section_overview .numberlist .txtblock .txt2 strong {
		font-size: 18px
	}

	.section_overview .numberlist .txtblock .txt3 {
		font-size: 12px
	}

	.section_overview .numberlist .txtblock .submit_btn {
		margin-top: 10px
	}

	.section_overview .numberlist .txtblock .submit_btn a {
		font-size: 12px !important
	}
}

@media only screen and (max-width:480px) {
	.section_overview .numberlist .item {
		padding: 15px 0
	}

	.section_overview .numberlist .item h5 {
		font-size: 14px;
		font-weight: 700;
		margin: 5px 0 7px
	}
}

.section_result .list,
.section_features .list {
	padding: 0;
	margin-right: 50px
}

.section_result .list li,
.section_features .list li {
	width: calc(100% / 3.1);
	box-sizing: border-box;
	border-right: 1px dotted #FFF;
	background: #a30b1a;
	color: #FFF;
	padding: 20px 30px 30px
}

.section_result .list li:last-child,
.section_features .list li:last-child {
	border: none
}

.section_result .list strong,
.section_features .list strong {
	display: block;
	padding: 7px 0 5px;
	font-size: 18px;
	margin-bottom: 15px;
	color: #FFF;
	border-bottom: 1px solid #BB686A
}

.section_result .list .subtitle,
.section_features .list .subtitle {
	font-size: 26px
}

.section_result .list .txtlink,
.section_features .list .txtlink {
	background: #FFF;
	font-size: 14px;
	padding: 10px 20px
}

@media screen and (max-width:768px) {

	.section_result .list li,
	.section_features .list li {
		width: 100%;
		border: none;
		border-bottom: 1px dotted #FFF;
		padding: 15px 20px 20px
	}

	.section_result .list strong,
	.section_features .list strong {
		font-size: 16px
	}

	.section_result .list .subtitle,
	.section_features .list .subtitle {
		font-size: 20px
	}
}

@media only screen and (max-width:480px) {

	.section_result .list dt strong,
	.section_features .list dt strong {
		font-size: 16px;
		padding-top: 2px
	}

	.section_result .list dt,
	.section_features .list dt {
		width: 4em;
		float: left;
		text-align: center
	}

	.section_result .list dd,
	.section_features .list dd {
		margin-left: 5em
	}

	.section_result .list dd .subtitle,
	.section_features .list dd .subtitle {
		font-size: 16px
	}

	.section_result .list dd p,
	.section_features .list dd p {
		font-size: 14px
	}
}

.movie_content {
	width: 100%;
	height: auto;
	margin-top: 30px
}

.movie_content .inner {
	background: #eee
}

.movie_content .movie_area,
.movie_content .txt_area {
	padding: 45px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.movie_content .movie_area {
	width: 58%;
	background: #000
}

.movie_content .txt_area {
	width: 42%;
	background: #eee;
	margin: 0
}

.movie_content .catchtxt {
	margin-top: 50px;
	text-align: center;
	font-size: 26px;
	font-weight: 400
}

.youtube_wrp {
	position: relative;
	width: 100%
}

.youtube_wrp iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important
}

@media screen and (max-width:1100px) {

	.movie_content .movie_area,
	.movie_content .txt_area {
		padding: 20px
	}
}

@media screen and (max-width:768px) {
	.movie_content {
		margin-top: 20px
	}

	.movie_content .movie_area,
	.movie_content .txt_area {
		padding: 20px
	}

	.movie_content .catchtxt {
		margin-top: 30px;
		font-size: 20px
	}
}

@media only screen and (max-width:480px) {

	.movie_content .movie_area,
	.movie_content .txt_area {
		padding: 20px;
		width: 100%;
		float: none
	}

	.movie_content .catchtxt {
		margin-top: 20px;
		font-size: 16px;
		text-align: left
	}
}

.movie_label {
	font-size: 26px;
	line-height: 1;
	font-weight: 700;
	position: relative;
	padding-left: 50px;
	background-image: url(https://clouddirect.jp.fujitsu.com/image/icon_movie);
	background-position: left top;
	background-repeat: no-repeat
}

@media screen and (max-width:768px) {
	.movie_label {
		font-size: 20px;
		padding-left: 44px;
		background-size: 36px 20px
	}
}

@media only screen and (max-width:480px) {
	.movie_label {
		font-size: 14px;
		line-height: 16px;
		padding-left: 35px;
		background-size: 29px 16px
	}
}

.section_operating_environment .btn_detail {
	width: 400px
}

@media screen and (max-width:768px) {
	.section_operating_environment .btn_detail {
		width: 90%
	}
}

.speclist1 table {
	width: 100%;
	text-align: left;
	border-collapse: collapse;
	border-spacing: 0;
	border: 0
}

.speclist1 table .bold {
	font-weight: 700
}

.speclist1 table th {
	width: 200px;
	padding: 15px;
	border: solid 1px #fff;
	border-right: solid 10px #fff;
	border-bottom: 0;
	background: #dad9d6;
	color: #000;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-size: 18px
}

.speclist1 table td {
	padding: 15px;
	border: solid 1px #fff;
	background: #eee;
	border-bottom: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-size: 18px
}

.speclist1 table td + td {
	border-left: 0
}

.speclist1 table tr:nth-child(odd) {
	background: #fff
}

.speclist1 table tr:nth-child(even) {
	background: #fafafa
}

.subhead + .speclist1 {
	margin-top: 10px
}

@media screen and (max-width:768px) {
	.speclist1 .table {
		margin-top: 15px
	}

	.speclist1 table {
		padding: 0;
		margin-top: 10px
	}

	.speclist1 table a:hover {
		color: #003b77
	}

	.speclist1 table th {
		padding: 10px;
		display: list-item;
		list-style: none;
		border-right: solid 0 #ddd;
		width: 100%
	}

	.speclist1 table td {
		padding: 10px;
		display: list-item;
		list-style: none;
		width: 100%;
		border-right: solid 0 #ddd
	}

	.speclist1 table tr:nth-child(odd),
	.speclist1 table tr:nth-child(even) {
		background: #fff
	}
}

.speclist2 {
	margin-top: 50px
}

.speclist2 table {
	text-align: left;
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%
}

.speclist2 table th {
	padding: 15px;
	border: solid 1px #fff;
	border-bottom: 0;
	color: #000;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: auto;
	vertical-align: middle
}

.speclist2 table td {
	padding: 15px;
	border: solid 1px #fff;
	background: #eee;
	border-bottom: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	text-align: center;
	vertical-align: middle
}

.speclist2 table th.th {
	background: #dad9d6
}

.speclist2 table th.col2 {
	width: 240px
}

.speclist2 table th.col1 {
	width: 160px
}

.speclist2 table .cell_margin {
	border-right: solid 10px #fff
}

.speclist2 table th.th_label {
	background: #a30b1a;
	color: #fff;
	text-align: center;
	font-size: 16px;
	font-weight: 700
}

.speclist2 table tbody th.feat {
	text-align: center
}

.speclist2 table tbody th.func {
	vertical-align: middle
}

.speclist2 table .strong {
	font-size: 16px
}

@media screen and (max-width:768px) {
	.speclist2 {
		margin-top: 20px
	}

	.speclist2 table {
		display: block;
		border-bottom: 0
	}

	.speclist2 table thead {
		display: none
	}

	.speclist2 table tbody {
		display: block
	}

	.speclist2 table tbody tr {
		display: block
	}

	.speclist2 table tbody th,
	.speclist2 table tbody td {
		display: list-item;
		list-style: none;
		border: none;
		font-size: 14px
	}

	.speclist2 table tbody th {
		list-style-type: none;
		padding: 10px;
		width: 100%;
		box-sizing: border-box;
		border-bottom: 1px solid #fff
	}

	.speclist2 table tbody td {
		margin-left: 0;
		padding: 10px;
		border-bottom: solid 1px #fff;
		text-align: left;
		width: 100%;
		box-sizing: border-box
	}

	.speclist2 table tbody th.feat {
		text-align: left
	}

	.speclist2 table tbody tr:nth-child(2) {
		border-top: 0;
		border-left: 0;
		border-right: 0
	}

	.speclist2 table tbody tr:nth-child(3),
	.speclist2 table tbody tr:nth-child(4),
	.speclist2 table tbody tr:nth-child(5),
	.speclist2 table tbody tr:nth-child(6) {
		border-top: 0
	}

	.speclist2 table tbody tr:nth-child(2) th,
	.speclist2 table tbody tr:nth-child(2) td {
		border-left: 0 solid #ddd;
		border-right: 0 solid #ddd
	}

	.speclist2 table th.col2,
	.speclist2 table th.col1 {
		width: 100%
	}

	.speclist2 table .cell_margin {
		border-right: solid 0 #fff
	}

	.speclist2 table .strong {
		font-size: 14px
	}

	.speclist2 table tbody th.feat,
	.speclist2 table tbody tr th.func {
		width: 100%;
		text-align: center;
		border-left: 0;
		border-right: 0;
		background: #666;
		color: #fff;
		vertical-align: middle
	}

	.speclist2 table tbody th.func + th {
		width: 100%
	}

	.speclist2 table tbody td:nth-of-type(1):before,
	.speclist2 table tbody td:nth-of-type(2):before {
		content: "SaaS版（クラウド）";
		display: block;
		padding-right: 15px;
		color: #666;
		font-size: 12px
	}

	.speclist2 table tbody td.afternone:nth-of-type(1):before,
	.speclist2 table tbody td.afternone:nth-of-type(2):before {
		display: none
	}

	.speclist2 table tbody td:nth-of-type(2):before {
		content: "パッケージ版（オンプレミス）"
	}
}

.circle_numlist li {
	font-size: 16px;
	padding: 15px 0;
	padding-left: 45px;
	border-bottom: dotted 1px #ccc;
	position: relative
}

.circle_numlist li .number {
	width: 35px;
	height: 35px;
	background: #a30b1a;
	color: #fff;
	display: block;
	text-align: center;
	font-size: 16px;
	line-height: 35px;
	font-weight: 700;
	border-radius: 50%;
	margin-right: 10px;
	position: absolute;
	top: 8px;
	left: 0
}

.circle_numlist li .txtlink {
	font-size: 12px;
	margin-left: 30px
}

@media screen and (max-width:768px) {
	.circle_numlist li {
		font-size: 14px;
		padding-left: 35px
	}

	.circle_numlist li .number {
		width: 25px;
		height: 25px;
		font-size: 14px;
		line-height: 25px;
		top: 12px;
		left: 0
	}

	.circle_numlist li .txtlink {
		display: block;
		margin-left: 0
	}
}

.section_costcheck .form_section {
	margin: 0 auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

@media screen and (max-width:768px) {
	.section_costcheck .form_section {
		width: 100%;
		margin: 0 auto;
		padding: 50px;
		box-sizing: border-box;
		-webkit-box-sizing: border-box
	}
}

@media only screen and (max-width:480px) {
	.section_costcheck .form_section {
		padding: 20px
	}
}

.section_costcheck .form_section .txt {
	margin-top: 30px
}

.section_costcheck .form_section .txt p {
	font-size: 14px;
	line-height: 1.6;
	text-align: center
}

@media only screen and (max-width:480px) {
	.section_costcheck .form_section .txt {
		margin-top: 15px
	}

	.section_costcheck .form_section .txt p {
		font-size: 12px;
		text-align: left
	}
}

.section_costcheck .form_content {
	text-align: left;
	margin-top: 30px;
	font-size: 16px
}

@media screen and (max-width:768px) {
	.section_costcheck .form_content {
		margin-top: 15px
	}
}

.section_costcheck .form_content dl {
	border-bottom: solid 1px #ddd;
	margin: 0
}

.section_costcheck .form_content dt,
.section_costcheck .form_content dd {
	padding: 20px 10px;
	border-top: solid 1px #ddd;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-size: 14px;
	line-height: 20px
}

.section_costcheck .form_content dt {
	padding-top: 32.5px;
	float: left;
	width: 25%;
	font-weight: 700;
	clear: both
}

.section_costcheck .form_content dt span {
	padding-left: 3px
}

.section_costcheck .form_content dd {
	float: right;
	width: 75%
}

.section_costcheck .form_content .red {
	font-size: 11px;
	color: #FF6283;
	font-weight: 400
}

@media screen and (max-width:768px) {
	.section_costcheck .form_content dt {
		padding: 15px 0 0 0;
		float: none;
		width: 100%
	}

	.section_costcheck .form_content dd {
		border: 0;
		padding: 10px 0 15px 0;
		float: left;
		width: 100%
	}
}

.section_costcheck .form_item {
	position: relative;
	width: 100%
}

.section_costcheck .form_item + .section_costcheck .form_item {
	margin-top: 20px
}

.section_costcheck .btns {
	width: 100%;
	height: auto;
	padding: 15px 0
}

.section_costcheck .btns .btn {
	display: block;
	width: 150px;
	float: left;
	margin-right: 20px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.section_costcheck .btns .btn a {
	display: block;
	padding: 5px 25px;
	border-radius: 2px;
	text-decoration: none;
	text-align: center
}

@media only screen and (max-width:480px) {
	.section_costcheck .btns .btn {
		width: 48%;
		margin: 0
	}

	.section_costcheck .btns .clearbtn {
		float: right
	}
}

.checkbtn a {
	background: #a30b1a;
	border: solid 1px #a30b1a;
	color: #fff
}

.checkbtn a:hover {
	opacity: .7
}

.clearbtn a {
	position: relative;
	background: #eee;
	border: solid 1px #ddd;
	color: #666
}

.clearbtn a:hover {
	opacity: .7
}

.clearbtn a:after,
.clearbtn a:before {
	position: absolute;
	content: ' ';
	width: 10px;
	height: 1px;
	background: #999;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto;
	transform: rotate(45deg)
}

.clearbtn a:before {
	transform: rotate(-45deg)
}

@media only screen and (max-width:480px) {
	.section_costcheck .form_item .clearbtn {
		top: -38px
	}
}

.section_costcheck .form_content table,
.section_costcheck .form_content table th,
.section_costcheck .form_content table td {
	background: none;
	border: 0
}

.section_costcheck .form_content input.txtinput {
	width: 90%;
	border: 0;
	padding: 10px;
	font-size: 14px;
	line-height: 1.6;
	border: solid 1px #ccc;
	margin: 0;
	border-radius: 5px;
	-webkit-appearance: none;
	outline: 0;
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	transition: all 0.1s linear
}

.section_costcheck .form_content input.input_error {
	background: #ffebeb;
	border: solid 1px #fe0000
}

.section_costcheck .form_content input.txtinput_m {
	width: 60%
}

.section_costcheck .form_content input.txtinput_s {
	width: 25%
}

.section_costcheck .form_content input.txtinput_postal {
	width: 150px;
	border: 0;
	padding: 10px;
	font-size: 14px;
	line-height: 1.6;
	border: solid 1px #ccc;
	margin: 0;
	border-radius: 5px;
	-webkit-appearance: none;
	outline: 0;
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	transition: all 0.1s linear
}

.section_costcheck .form_content textarea {
	width: 90%;
	border: 0;
	padding: 10px;
	font-size: 14px;
	line-height: 1.6;
	border: solid 1px #ccc;
	margin: 0;
	vertical-align: middle;
	border-radius: 5px;
	-webkit-appearance: none;
	outline: 0;
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	transition: all 0.1s linear
}

.section_costcheck .form_content input.txtinput:focus,
.section_costcheck .form_content input.txtinput_postal:focus,
.section_costcheck .form_content textarea:focus {
	border-color: #333
}

.section_costcheck .form_content .sample {
	font-size: 90%;
	line-height: 1;
	margin-top: 10px;
	color: #999
}

.section_costcheck .form_content .sample a {
	color: #999;
	text-decoration: none
}

@media screen and (max-width:768px) {

	.section_costcheck .form_content input.txtinput_m,
	.section_costcheck .form_content input.txtinput_s {
		width: 50%
	}
}

@media only screen and (max-width:480px) {

	.section_costcheck .form_content input.txtinput,
	.section_costcheck .form_content textarea,
	.section_costcheck .form_content input,
	.section_costcheck .form_content textarea {
		width: 100%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		font-size: 12px
	}

	.section_costcheck .form_content input.txtinput_postal {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		font-size: 12px
	}

	.section_costcheck .form_content .sample {
		margin-top: 5px
	}
}

.section_costcheck .form_content .radio li input {
	width: auto;
	display: none;
	border: 0;
	margin: 0
}

.section_costcheck .form_content .radio li {
	padding: 0
}

.section_costcheck .form_content .radio li + li {
	margin-top: 10px
}

.section_costcheck .form_content .radio li label {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	padding-left: 24px;
	cursor: pointer;
	font-size: 14px;
	line-height: 20px
}

.section_costcheck .form_content .radio li label:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50%;
	width: 16px;
	height: 16px;
	background: #fff;
	border: 1px solid #333;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.section_costcheck .form_content .radio li label:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 4px;
	margin: auto;
	border-radius: 50%;
	width: 8px;
	height: 8px;
	background: #333;
	-webkit-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	transition: all 0.1s linear;
	-webkit-transform: scale(0);
	-moz-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0)
}

.section_costcheck .form_content .radio li input:checked + label:after {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1)
}

@media only screen and (max-width:480px) {
	.section_costcheck .form_content .radio li label {
		font-size: 12px;
		line-height: 20px
	}
}

.section_costcheck .form_content .checkbox li {
	float: left;
	width: 33.3333%;
	padding: 0
}

.section_costcheck .form_content .checkbox li:nth-child(4),
.section_costcheck .form_content .checkbox li:nth-child(5),
.section_costcheck .form_content .checkbox li:nth-child(6) {
	margin-top: 10px
}

.section_costcheck .form_content .agreebox {
	padding-top: 20px;
	font-size: 14px;
	line-height: 20px;
	text-align: center
}

.section_costcheck .form_content .checkbox li input,
.section_costcheck .form_content .agreebox input {
	width: auto;
	display: none;
	border: 0;
	margin: 0
}

.section_costcheck .form_content .checkbox li label,
.section_costcheck .form_content .agreebox label {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	padding-left: 24px;
	cursor: pointer;
	font-size: 14px;
	line-height: 20px
}

.section_costcheck .form_content .checkbox li label:before,
.section_costcheck .form_content .agreebox label:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 10%;
	width: 16px;
	height: 16px;
	background: #fff;
	border: 1px solid #333;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.section_costcheck .form_content .checkbox li label:after,
.section_costcheck .form_content .agreebox label:after {
	content: "";
	position: absolute;
	top: -4px;
	left: 5px;
	margin: auto;
	width: 6px;
	height: 14px;
	border-right: 2px solid transparent;
	border-bottom: 2px solid transparent;
	-webkit-transform: rotate(40deg);
	-moz-transform: rotate(40deg);
	-ms-transform: rotate(40deg);
	transform: rotate(40deg);
	-webkit-transition: border-bottom-color, border-right-color .2s linear;
	-moz-transition: border-bottom-color, border-right-color .2s linear;
	-ms-transition: border-bottom-color, border-right-color .2s linear;
	transition: border-bottom-color, border-right-color .2s linear
}

.section_costcheck .form_content .checkbox li input:checked + label:after,
.section_costcheck .form_content .agreebox input:checked + label:after {
	border-color: #333
}

@media only screen and (max-width:480px) {
	.section_costcheck .form_content .checkbox li {
		width: 100%
	}

	.section_costcheck .form_content .checkbox li + li {
		margin-top: 10px
	}

	.section_costcheck .form_content .checkbox li label,
	.section_costcheck .form_content .agreebox label {
		font-size: 12px
	}

	.section_costcheck .form_content .agreebox {
		padding-top: 10px;
		font-size: 12px;
		text-align: left
	}
}

.section_costcheck .form_content select {
	background: #fff
}

.section_costcheck .form_content select option {
	background: #fff;
	color: #333
}

.section_costcheck .form_content optgroup.area {
	color: #333;
	background: #eee
}

.section_costcheck .form_content .submit {
	padding: 40px 0;
	margin: 0
}

.section_costcheck .form_content .submit input {
	width: 200px;
	margin: 0 auto;
	padding: 15px 0;
	display: block;
	color: #eee;
	font-size: 18px;
	line-height: 20px;
	font-weight: 700;
	text-decoration: none;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .8);
	border: 0;
	border-radius: 5px;
	background: #333;
	box-shadow: 0 2px 0 0 rgba(0, 0, 0, .2);
	-moz-box-shadow: 0 2px 0 0 rgba(0, 0, 0, .2);
	-webkit-box-shadow: 0 2px 0 0 rgba(0, 0, 0, .2);
	-webkit-transition: all 0.1s linear;
	-ms-transition: all 0.1s linear;
	-moz-transition: all 0.1s linear;
	transition: all 0.1s linear;
	cursor: pointer;
	-webkit-appearance: none
}

.section_costcheck .form_content .submit input:hover {
	background: #D4145A
}

.section_costcheck .form_content .submit .cap {
	color: #666;
	font-size: 12px;
	line-height: 1.6;
	margin-top: 40px
}

@media only screen and (max-width:480px) {
	.section_costcheck .form_content .submit {
		padding: 15px 0
	}

	.section_costcheck .form_content .submit input {
		width: 100%;
		padding: 10px 0;
		font-size: 14px
	}

	.section_costcheck .form_content .submit .cap {
		margin-top: 15px
	}
}

.section_costcheck .form_content .submit_two {
	width: 440px;
	margin: 0 auto
}

.section_costcheck .form_content .submit_two .flol,
.section_costcheck .form_content .submit_two .flor {
	width: 50%
}

@media only screen and (max-width:480px) {
	.section_costcheck .form_content .submit_two {
		width: 100%
	}

	.section_costcheck .form_content .submit_two .flol,
	.section_costcheck .form_content .submit_two .flor {
		width: 49%
	}
}

.validate {
	padding-bottom: 5px;
	margin-bottom: 10px
}

.validate p {
	background: #fee;
	padding: 10px;
	color: #c00;
	font-size: 14px;
	line-height: 1.6
}

.validate_submit {
	margin: 0 auto;
	text-align: center;
	padding-bottom: 20px
}

.validate_submit p {
	padding: 10px
}

@media only screen and (max-width:480px) {
	.validate {
		margin-bottom: 5px
	}

	.validate p {
		font-size: 12px;
		padding: 7px
	}

	.validate_submit {
		margin: 0 auto;
		text-align: left
	}
}

.section_costcheck {
	border: 0
}

.section_costcheck .form_section {
	width: 100%;
	padding: 50px;
	padding-bottom: 80px;
	background: #fff
}

.section_costcheck .form_content .result input {
	text-align: right;
	font-weight: 700;
	color: #000;
	font-size: 20px
}

.content_costcheck .val {
	font-weight: 700
}

@media screen and (max-width:768px) {
	.section_costcheck .form_section {
		padding: 30px;
		padding-bottom: 50px
	}
}

@media only screen and (max-width:480px) {
	.section_costcheck .section_inner {
		padding: 0
	}

	.section_costcheck .form_section {
		padding: 20px
	}

	.section_costcheck .form_content .result input {
		font-size: 20px;
		color: #000
	}
}

.content_costcheck .content_title {
	text-align: center;
	background-image: url(https://clouddirect.jp.fujitsu.com/image/costcheck_title_arw);
	background-position: bottom center;
	background-repeat: no-repeat;
	padding-bottom: 100px;
	padding-top: 150px;
	margin-top: -270px
}

.content_costcheck .content_title .title {
	font-size: 30px;
	line-height: 1.5;
	padding: 20px;
	font-weight: 400
}

.content_costcheck .content_title .title {
	font-size: 30px;
	line-height: 1.5;
	padding: 20px;
	font-weight: 400
}

@media screen and (max-width:1280px) {
	.content_costcheck .content_title {
		margin-top: -200px
	}
}

@media screen and (max-width:768px) {
	.content_costcheck .content_title {
		background-size: contain;
		padding-bottom: 50px;
		padding-top: 150px;
		margin-top: -200px
	}

	.content_costcheck .content_title .title {
		font-size: 25px;
		line-height: 1.4;
		padding: 15px
	}
}

@media only screen and (max-width:480px) {
	.content_costcheck .content_title {
		padding-bottom: 30px;
		padding-top: 0;
		margin-top: -30px
	}

	.content_costcheck .content_title .title {
		font-size: 16px;
		padding: 30px 10px 10px
	}

	.content_costcheck .content_title:after {
		bottom: -30px;
		width: 50px;
		height: 30px;
		border-top: 10px solid #6f0f10;
		border-bottom: 10px solid transparent;
		border-right: 30px solid transparent;
		border-left: 30px solid transparent
	}
}

.content_block {
	margin-top: 30px
}

.content_block + .content_block {
	margin-top: 50px
}

.content_block .title {
	font-size: 22px;
	line-height: 1.5;
	padding: 10px;
	color: #fff;
	background: #6f0f10;
	text-align: center
}

.content_block .subtitle {
	font-size: 16px;
	font-weight: 700;
	margin-top: 20px
}

.content_block p {
	margin-top: 20px
}

.content_block .subtitle + p {
	margin-top: 10px
}

.content_block .catchtxt {
	font-size: 20px;
	line-height: 1.5;
	font-weight: 700;
	text-align: center;
	color: #c00
}

.content_block .error {
	margin-top: 10px;
	font-size: 14px;
	color: #fe0000;
	font-weight: 700;
	display: none
}

@media screen and (max-width:768px) {
	.content_block {
		margin-top: 0
	}

	.content_block + .content_block {
		margin-top: 50px
	}

	.catchtxt {
		font-size: 16px
	}
}

@media only screen and (max-width:480px) {
	.content_block .title {
		font-size: 16px;
		padding: 5px
	}

	.catchtxt {
		text-align: left
	}
}

.section_costcheck .form_content table {
	margin-top: 20px
}

.section_costcheck .form_content table th,
.section_costcheck .form_content table td {
	vertical-align: middle;
	font-weight: 400;
	white-space: nowrap
}

.section_costcheck .form_content table td.second {
	text-align: right
}

@media screen and (max-width:768px) {
	.section_costcheck .form_content table {
		margin-top: 10px
	}

	.section_costcheck .form_content table th {
		white-space: nowrap;
		display: inline
	}

	.section_costcheck .form_content table td.second {
		text-align: left;
		display: inline;
		padding: 0
	}
}

@media only screen and (max-width:480px) {

	.section_costcheck .form_content table th,
	.section_costcheck .form_content table td.second {
		white-space: normal;
		width: auto;
		text-align: left;
		display: inline-block;
		font-size: 14px
	}

	.section_costcheck .form_content table th,
	.section_costcheck .form_content table td {
		padding: 0;
		white-space: normal
	}

	.section_costcheck .form_content table td.second {
		text-align: left;
		width: auto
	}

	.section_costcheck .form_content table td.result {
		text-align: right
	}

	.section_costcheck .form_content table td input {
		margin-top: 5px
	}

	.section_costcheck .form_content table td.result input {
		margin-bottom: 5px
	}
}

.section_costcheck .form_content_input dt {
	text-align: right
}

@media screen and (max-width:768px) {
	.section_costcheck .form_content_input dt {
		text-align: left
	}

	.section_costcheck .form_content_input .bold + .bold {
		display: block;
		margin-top: 10px
	}
}

@media only screen and (max-width:480px) {
	.content_costcheck .section_costcheck .form_content dd {
		text-align: right
	}

	.section_costcheck .form_content .bold {
		display: inline-block;
		margin-top: 10px
	}

	.section_costcheck .form_content_input .bold + .bold {
		display: inline;
		margin-top: 0
	}
}

.section_costcheck .form_content2 dt {
	width: 60%
}

.section_costcheck .form_content2 dd {
	width: 40%
}

@media screen and (max-width:768px) {
	.section_costcheck .form_content dt {
		padding: 15px 0 0 0;
		float: none;
		width: 100%
	}

	.section_costcheck .form_content dd {
		border: 0;
		padding: 10px 0 15px 0;
		float: left;
		width: 100%
	}
}

@media only screen and (max-width:480px) {
	.section_costcheck .form_content2 dl {
		padding-bottom: 10px
	}

	.section_costcheck .form_content2 dt {
		border: 0
	}

	.section_costcheck .form_content2 dt,
	.section_costcheck .form_content2 dd,
	.section_costcheck .form_content2 dd .section_costcheck .form_item,
	.section_costcheck .form_content2 dd .align_right {
		display: inline;
		width: auto;
		text-align: left !important
	}

	.section_costcheck .form_content2 dd {
		padding-top: 0;
		float: none
	}

	.section_costcheck .form_content2 * + .bold {
		float: right
	}
}

.section_costcheck .offer_area {
	background: #eee;
	padding: 20px;
	text-align: center;
	margin-top: 10px;
	display: none
}

.section_costcheck .offer_area h3 {
	font-size: 25px
}

.section_costcheck .offer_area p {
	font-size: 20px;
	margin: 0
}

.section_costcheck .offer_area .submit_btn {
	width: 500px;
	margin: 0 auto;
	margin-top: 5px
}

.section_costcheck .offer_area .submit_btn a {
	padding: 15px 0
}

.section_costcheck .offer_area.package .submit_btn a {
	background: #000
}

.section_costcheck .offer_area.sass h3 {
	color: #fe0000
}

.section_costcheck .offer_area.sass .submit_btn a {
	background: #fe0000
}

@media screen and (max-width:768px) {
	.section_costcheck .offer_area {
		padding: 15px;
		margin-bottom: 10px
	}

	.section_costcheck .offer_area .submit_btn {
		width: 100%
	}

	.section_costcheck .offer_area h3 {
		font-size: 16px
	}

	.section_costcheck .offer_area p {
		font-size: 14px
	}

	.section_costcheck .offer_area .submit_btn a {
		padding: 10px 0;
		font-size: 16px
	}
}

.locallink_box {
	background: #eee;
	padding: 30px
}

.locallink_box .locallink {
	width: 48%
}

.locallink_box .locallink h3 {
	font-size: 18px
}

.locallink_box .locallink * + h3 {
	margin-top: 30px
}

.locallink_box .locallink li {
	margin-top: 10px;
	padding-left: 15px;
	position: relative;
	font-size: 18px
}

@media screen and (max-width:768px) {
	.locallink_box {
		padding: 20px
	}

	.locallink_box .locallink * + h3 {
		margin-top: 20px
	}
}

@media only screen and (max-width:480px) {
	.locallink_box .locallink {
		width: 100%;
		float: none
	}

	.locallink_box .locallink li {
		margin-top: 5px
	}

	.locallink_box .locallink + .locallink {
		margin-top: 20px
	}
}

.static_content .column + .column {
	margin-top: 30px
}

.static_content h2 {
	font-size: 20px
}

.static_content .title {
	background: #a30b1a;
	color: #fff;
	padding: 10px
}

.static_content .column + .title {
	margin-top: 50px
}

.static_content .column .title {
	background: #eee;
	color: #000;
	margin-top: 15px
}

.static_content .column * + .title {
	margin-top: 30px
}

.static_content .column .subtitle {
	border-left: solid 3px #a30b1a;
	padding-left: 15px
}

.static_content .column .fc-black {
	color: #000
}

.static_content .column .box-b {
	background: #f2f2f2;
	padding: 16px
}

.static_content .column .box-b h4 {
	margin-top: 0
}

.static_content .column .contact {
	margin-top: 0;
	display: flex;
	justify-content: space-between
}

.static_content .column .contact li {
	padding-left: 0
}

.static_content .column .contact li:before {
	display: none
}

.static_content .column .contact > * {
	width: 49%
}

.static_content .column .contact > * > * {
	padding: 10px;
	margin-top: 6px;
	background: #fff;
	font-size: 1.125rem;
	font-weight: 700;
	border: 1px solid #fff;
	height: 25px;
	display: flex;
	justify-content: center;
	align-items: center
}

.static_content .column .contact > * > p {
	text-align: center;
	margin-top: 6px;
	font-size: 14px !important;
	background: none;
	padding: 0;
	border: 0;
	font-weight: 400;
	height: auto
}

.static_content .column .contact > * a {
	background: #000;
	color: #fff;
	border: 1px solid #000;
	text-decoration: none;
	transition: 0.2s
}

.static_content .column .contact > * a:hover {
	background: #999;
	border: 1px solid #999
}

.static_content .column .contact > * span strong {
	margin-left: 8px;
	font-size: 1.5rem
}

.static_content .column .contact > * span strong a {
	background: #fff;
	color: #000;
	border: none
}

@media only screen and (max-width:767px) {
	.static_content .column .contact {
		flex-direction: column
	}

	.static_content .column .contact > * {
		width: 100%
	}

	.static_content .column .contact li:first-of-type {
		margin-bottom: 20px
	}
}

@media only screen and (max-width:480px) {
	.static_content .column .contact > * span strong {
		font-size: 1.125rem
	}
}

@media only screen and (max-width:480px) {
	.static_content .title {}

	.static_content .column .title {
		margin-top: 10px
	}

	.static_content .column + .title {
		margin-top: 30px
	}
}

.static_content .column .number_title {
	color: #a30b1a
}

.static_content .column .number_title .number {
	background: #a30b1a;
	padding: 2px 0;
	color: #fff;
	margin-right: 10px;
	min-width: 1.8em;
	text-align: center;
	display: inline-block
}

@media only screen and (max-width:480px) {
	.static_content .column .number_title {
		padding-left: 35px;
		position: relative
	}

	.static_content .column .number_title .number {
		margin: 0;
		position: absolute;
		top: -2px;
		left: 0;
		padding: 0;
		min-width: 25px;
		line-height: 25px;
		text-align: center;
		font-size: 14px
	}
}

.static_content .column ul {
	margin-top: 20px
}

.static_content .column li {
	margin-top: 5px;
	padding-left: 15px;
	position: relative;
	font-size: 18px
}

.static_content .column li img.icon-a {
	vertical-align: middle;
	margin-left: 3px;
	margin-right: 6px
}

.table_wrp table {
	width: 100%;
	text-align: left;
	font-size: 14px;
	line-height: 1.5;
	border-collapse: separate;
	border-spacing: 0;
	border-bottom: solid 1px #ddd
}

.table_wrp table th {
	padding: 10px;
	font-weight: 700;
	border: solid 1px #ddd;
	border-right: 0;
	border-bottom: 0;
	background: rgba(0, 0, 0, .05);
	color: #000;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: auto
}

.table_wrp table thead th {
	background: rgba(0, 0, 0, .1)
}

.table_wrp table td {
	padding: 10px;
	border: solid 1px #ddd;
	border-bottom: 0;
	color: #000;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.table_wrp table td + td {
	border-left: 0
}

.table_wrp table tr:nth-child(odd) {
	background: #fff
}

.table_wrp table tr:nth-child(even) {
	background: rgba(0, 0, 0, .05)
}

.table_wrp table .icon_fin {
	padding: .25em .5em;
	text-decoration: none;
	color: #FFF;
	background: #a9a9a9;
	transition: .4s;
	float: right;
	margin-right: 5px
}

.table_wrp table .icon_open {
	padding: .25em .5em;
	text-decoration: none;
	color: #FFF;
	background: #da0b0b;
	transition: .4s;
	float: right;
	margin-right: 5px
}

@media screen and (max-width:768px) {
	.table_wrp table {
		padding: 0;
		margin-top: 20px;
		border: solid 1px #ddd
	}

	.table_wrp table tr:nth-child(even) {
		background: transparent
	}

	.table_wrp table th,
	.table_wrp table td {
		display: block;
		width: auto;
		padding: 10px;
		font-size: 14px;
		border-left: none;
		border-right: none;
		border-top: none
	}

	.table_wrp table th:not(:first-child),
	.table_wrp table td:not(:first-child) {
		border-top: solid 1px #ddd
	}
}

@media only screen and (max-width:480px) {
	.static_content .table_wrp {
		width: 100%
	}

	.static_content .table_wrp table th {
		font-size: 12px;
		font-weight: 700
	}

	.static_content .table_wrp table td {
		font-size: 12px
	}

	.static_content .table_simple table th {
		display: list-item;
		list-style: none;
		width: 100%;
		border-right: solid 1px #ddd
	}

	.static_content .table_simple table td {
		display: list-item;
		list-style: none;
		width: 100%;
		border-top: dotted 0 #ddd
	}

	.static_content .table_simple table tr:nth-child(odd),
	.static_content .table_simple table tr:nth-child(even) {
		background: #fff
	}

	.static_content .table_scroll {
		width: 100%;
		overflow-x: scroll
	}

	.static_content .table_scroll table {
		width: 1000px
	}

	.table_wrp table .icon_fin {
		padding: 0 .5em;
		font-size: 12px
	}

	.table_wrp table .icon_open {
		padding: 0 .5em;
		font-size: 12px
	}
}

.section_product_static {
	border: 0
}

.mv {
	text-align: center;
	overflow: hidden;
	margin: 0 auto;
	width: 100%
}

@media screen and (max-width:1600px) {
	.mv img {
		width: 100%;
		height: auto
	}
}

.section_product_static .product_detail {
	width: 46.36%
}

.section_product_static .product_detail .product_detail_ph img {
	width: 100%
}

.section_product_static .product_detail_txt {
	padding: 15px 0 30px
}

.section_product_static .product_detail_txt .product_detail_hdg {
	background: red;
	padding: 10px 15px;
	font-size: 16px !important;
	text-align: center;
	color: #FFF;
	margin-bottom: 0 !important
}

@media screen and (max-width:1100px) {
	.section_product_static .product_detail {
		width: 48%
	}

	.section_product_static .product_detail_txt {
		padding: 0 0 10px
	}
}

@media screen and (max-width:768px) {
	.section_product_static .product_detail {
		width: 100%
	}
}

.section_product_static .product_detail .headline {
	position: relative;
	width: 100%;
	height: auto;
	padding-bottom: 35px;
	text-align: left;
	font-size: 34px
}

.section_product_static .product_detail .headline span {
	font-size: 16px;
	padding-top: 5px;
	display: block
}

.section_product_static .product_detail + .product_detail {
	margin-bottom: 40px
}

.section_product_static .product_detail .product_detail_hdg {
	font-size: 34px;
	line-height: 1.4;
	margin-bottom: 20px
}

.section_product_static .product_detail .product_detail_hdg span {
	font-size: 25px;
	display: block
}

.section_product_static .product_detail + .mid_width {
	clear: both;
	background: #fef9ea;
	padding: 25px 35px
}

.section_product_static .product_detail + .mid_width p {
	line-height: 1.9;
	font-size: 16px
}

.section_product_static .product_detail + .mid_width::before {
	content: "";
	display: block;
	clear: both
}

.section_product_static .product_detail .read {
	border-bottom: solid 1px #c6c6c0;
	padding-bottom: 15px;
	font-size: 20px
}

.section_product_static .product_detail .read + p {
	margin-top: 20px
}

.section_product_static .detail_txt p {
	font-size: 16px
}

@media screen and (max-width:1100px) {
	.section_product_static .product_detail .headline img {
		width: 100%;
		height: auto
	}

	.section_product_static .product_detail .headline:after {
		height: 30px;
		top: -40px
	}

	.section_product_static .product_detail + .mid_width {
		padding: 20px 25px
	}

	.section_product_static .product_detail + .mid_width p {
		font-size: 14px
	}
}

@media screen and (max-width:768px) {
	.section_product_static .product_detail .headline:after {
		height: 20px;
		top: -30px
	}

	.section_product_static .product_detail .headline {
		font-size: 22px;
		line-height: 1.4;
		padding: 20px 0 15px
	}

	.section_product_static .product_detail .headline span {
		font-size: 14px
	}

	.section_product_static .product_detail .read {
		padding-bottom: 0;
		font-size: 16px
	}

	.section_product_static .product_detail .product_detail_hdg {
		font-size: 22px;
		margin: 20px 0 10px
	}

	.section_product_static .product_detail .product_detail_hdg span {
		font-size: 18px;
		display: block
	}
}

@media only screen and (max-width:480px) {
	.section_product_static .product_detail .headline:after {
		content: none
	}

	.section_product_static .product_detail .read {
		padding-bottom: 15px
	}

	.section_product_static .product_detail .read img {
		width: 100%;
		height: auto
	}

	.section_product_static .detail_txt p {
		font-size: 14px
	}

	.section_product_static .product_detail .product_detail_hdg {
		margin-bottom: 0
	}
}

.product_detail .list {
	border-bottom: dotted 1px #b2b2b2
}

.product_detail .list li {
	border-top: dotted 1px #b2b2b2;
	padding: 15px;
	font-size: 16px
}

.product_detail .list li strong {
	color: #fe0000
}

@media only screen and (max-width:480px) {
	.product_detail .list {
		margin-top: 20px
	}

	.product_detail .list li {
		padding: 10px;
		font-size: 14px
	}
}

.price_box {
	border: solid 10px #dad9d6;
	padding: 15px 5px;
	text-align: center;
	margin-top: 25px;
	background: #fff
}

.price_box .title {
	color: #a30b1a;
	margin-top: 0;
	font-size: 20px
}

.price_box .price {
	font-size: 22px;
	margin-top: 5px;
	text-align: center
}

.price_box .price + .caption {
	margin-top: 0
}

.price_box .price strong {
	font-size: 30px;
	color: #fe0000
}

@media only screen and (max-width:480px) {
	.price_box {
		border: solid 5px #dad9d6;
		padding: 10px 5px;
		margin-top: 20px
	}

	.price_box .title {
		color: #a30b1a;
		font-size: 14px
	}

	.price_box .price {
		font-size: 14px
	}

	.price_box .price strong {
		font-size: 18px
	}
}

.submit_btn {
	margin-top: 25px
}

.section + .submit_btn {
	width: 40%;
	margin: 50px auto 0
}

.submit_btn a,
.submit_btn input {
	position: relative;
	text-decoration: none;
	display: block;
	background-color: #a30b1a;
	text-align: center;
	color: #fff;
	font-size: 24px;
	line-height: 1.5;
	font-weight: 700;
	padding: 22px 0;
	width: 100%;
	-webkit-transition: .1s;
	transition: .1s
}

.submit_btn.arw a:after,
.submit_btn.arw input:after {
	position: absolute;
	content: " ";
	width: 13px;
	height: 13px;
	top: 0;
	left: auto;
	bottom: 0;
	right: 10px;
	margin: auto;
	width: 8px;
	height: 8px;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 6px solid #fff;
	border-right: 6px solid transparent;
	box-sizing: border-box;
	-webkit-box-sizing: border-box
}

.submit_btn a:hover,
.submit_btn input:hover {
	opacity: .7
}

.submit_btn + .caption {
	margin-top: 20px;
	font-size: 12px
}

@media screen and (max-width:768px) {
	.section + .submit_btn {
		width: 90%;
		margin-top: 20px
	}
}

@media only screen and (max-width:480px) {
	.submit_btn {
		margin-top: 20px
	}

	.submit_btn a,
	.submit_btn input {
		font-size: 16px;
		padding: 10px 0
	}

	.submit_btn.arw a:after,
	.submit_btn.arw input:after {
		position: absolute;
		content: " ";
		width: 13px;
		height: 13px;
		top: 0;
		left: auto;
		bottom: 0;
		right: 10px;
		margin: auto;
		width: 8px;
		height: 8px;
		border-top: 6px solid transparent;
		border-bottom: 6px solid transparent;
		border-left: 6px solid #fff;
		border-right: 6px solid transparent;
		box-sizing: border-box;
		-webkit-box-sizing: border-box
	}

	.submit_btn + .caption {
		margin-top: 15px
	}

	.section + .submit_btn {
		width: 90%;
		margin-top: 20px
	}
}

.content_mypage .searchBtn .submit_btn {
	margin-top: 10px
}

.static_pagetitle {
	width: 1080px;
	margin: 0 auto;
	border-bottom: 10px solid #a30b1a;
	padding-bottom: 35px;
	line-height: 1;
	background: none;
	padding: 40px 0;
	text-align: center
}

.static_pagetitle .title {
	color: #000;
	font-size: 26px;
	border-bottom: none
}

.static_pagetitle .title span {
	color: #fe0000;
	font-weight: 700
}

.static_pagetitle .title_eng {
	font-size: 12px
}

@media screen and (max-width:1080px) {
	.static_pagetitle {
		width: 100%;
		padding: 20px 0;
		border-bottom: 5px solid #a30b1a
	}
}

@media only screen and (max-width:480px) {
	.static_pagetitle {
		padding-bottom: 10px
	}

	.static_pagetitle .title {
		font-size: 18px
	}

	.static_pagetitle .title_eng {
		font-size: 12px
	}
}

.section_campaign h4 {
	font-size: 22px;
	line-height: 2;
	text-align: center;
	margin-top: 30px
}

.section_campaign .mv {
	margin-top: 30px
}

.section_campaign .speclist1 {
	font-size: 16px;
	margin-top: 70px
}

.section_campaign .speclist1 + p {
	margin-top: 20px;
	font-size: 12px;
	line-height: 2
}

.section_campaign .submit_btn a {
	width: 610px;
	margin: 0 auto;
	margin-top: 65px
}

@media screen and (max-width:860px) {
	.section_campaign h4 .pc_tablet {
		display: none
	}

	.section_campaign h4 .sp {
		display: block
	}

	.section_campaign h4 {
		font-size: 20px;
		line-height: 1.5;
		text-align: left;
		margin-top: 20px
	}

	.section_campaign .mv {
		margin-top: 20px
	}

	.section_campaign .speclist1 {
		margin-top: 40px
	}
}

@media screen and (max-width:670px) {
	.section_campaign .submit_btn a {
		width: 100%;
		margin-top: 40px
	}
}

@media only screen and (max-width:480px) {
	.section_campaign h4 {
		font-size: 14px;
		text-align: left
	}

	.section_campaign .speclist1 {
		font-size: 15px;
		margin-top: 20px
	}

	.section_campaign .submit_btn a {
		width: 100%;
		margin-top: 30px
	}

	.section_campaign .speclist1 + p {
		margin-top: 20px;
		font-size: 12px;
		line-height: 1.5
	}
}

.campaign_title {
	margin: 0 auto;
	text-align: center;
	width: 840px;
	height: auto
}

.campaign_title img {
	width: 100%;
	height: auto
}

@media screen and (max-width:860px) {
	.campaign_title {
		margin-top: 0;
		width: 100%
	}
}

.case_detail .content_width2 {
	width: auto;
	max-width: 1180px;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.case_detail .content_width3 {
	width: auto;
	max-width: 1030px;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.case_detail .content_wrp {
	-webkit-box-shadow: 0 0 5px rgba(0, 0, 0, .2);
	-moz-box-shadow: 0 0 5px rgba(0, 0, 0, .2);
	-ms-box-shadow: 0 0 5px rgba(0, 0, 0, .2);
	box-shadow: 0 0 5px rgba(0, 0, 0, .2)
}

.case_detail .content {
	background: #fff
}

.case_detail .content + .content {
	margin-top: 0
}

.case_detail .headtxt {
	padding: 90px 45px 45px 85px;
	position: relative
}

.case_detail .headtxt:after {
	content: "";
	width: 50px;
	height: 165px;
	background: red;
	position: absolute;
	top: 0;
	left: 0
}

.case_detail .headtxt h3 {
	font-size: 30px;
	line-height: 1.5
}

.case_detail .headtxt h5 {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.5
}

.case_detail .headtxt p {
	font-size: 16px;
	line-height: 1.75;
	margin-top: 30px
}

.case_detail .headimg {
	position: relative
}

.case_detail .headimg .txt {
	color: #fff;
	position: absolute;
	right: 0;
	bottom: -40px;
	width: 48.73%;
	height: auto;
	padding: 40px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	background: rgba(60, 60, 53, .95)
}

.case_detail .headimg .txt h4 {
	font-size: 30px;
	line-height: 1.4
}

.case_detail .headimg .txt h5 {
	font-size: 18px;
	line-height: 1.5;
	font-weight: 700;
	margin-top: 20px
}

.case_detail .headimg .txt h5 span {
	font-size: 13px;
	line-height: 1.5
}

.case_detail .headimg .txt p {
	font-size: 14px;
	line-height: 1.5;
	margin-top: 10px
}

.case_detail .headimg .txt p span {
	font-size: 16px;
	line-height: 1.5
}

@media screen and (max-width:1280px) {
	.case_detail .headimg .txt {
		padding: 30px
	}
}

@media screen and (max-width:1080px) {
	.case_detail .headimg .txt {
		padding: 20px
	}

	.case_detail .headimg .txt h4 {
		font-size: 24px
	}
}

@media screen and (max-width:960px) {
	.case_detail .headimg .txt {
		position: static;
		width: 100%;
		height: auto
	}
}

@media screen and (max-width:768px) {
	.case_detail .headtxt {
		padding: 20px 20px 20px 30px
	}

	.case_detail .headtxt:after {
		width: 10px;
		height: 100%
	}

	.case_detail .headtxt h3 {
		font-size: 20px
	}

	.case_detail .headtxt h5 {
		font-size: 14px
	}

	.case_detail .headtxt p {
		font-size: 14px;
		line-height: 1.6;
		margin-top: 10px
	}

	.case_detail .headimg .txt h4 {
		font-size: 16px
	}

	.case_detail .headimg .txt h5 {
		font-size: 14px;
		margin-top: 10px
	}

	.case_detail .headimg .txt h5 span {
		font-size: 12px
	}

	.case_detail .headimg .txt p {
		font-size: 12px;
		margin-top: 0
	}

	.case_detail .headimg .txt p span {
		font-size: 14px
	}
}

.case_detail .stepbox {
	padding: 50px
}

.case_detail .fitimg + .stepbox {
	padding-top: 0
}

.case_detail .stepbox + .stepbox {
	padding-top: 30px
}

.case_detail .stepbox .head {
	color: #fff;
	font-size: 18px;
	line-height: 20px;
	padding: 15px 35px;
	background: #a30b1a;
	width: 350px
}

.case_detail .stepbox .head4 {
	color: #fff;
	font-size: 18px;
	line-height: 20px;
	padding: 15px 25px;
	width: 95%;
	margin: 0 auto;
	background: #a30b1a;
	display: block;
	box-sizing: border-box
}

.case_detail .stepbox .head3 {
	color: #fff;
	font-size: 18px;
	line-height: 20px;
	padding: 15px 35px;
	background: #a30b1a;
	display: inline-block;
	box-sizing: border-box
}

.case_detail .stepbox .head2 {
	color: #fff;
	font-size: 18px;
	line-height: 20px;
	padding: 15px 20px;
	background: #a30b1a;
	width: 100%;
	box-sizing: border-box
}

.case_detail .stepbox .head2 + .txt {
	padding: 15px 30px
}

.case_detail .stepbox .left {
	float: left;
	width: 43%
}

.case_detail .stepbox .right {
	float: right;
	width: 51.7%
}

.case_detail .stepbox .left2 {
	float: left;
	width: 48%
}

.case_detail .stepbox .right2 {
	float: right;
	width: 48%
}

.case_detail .stepbox .left3 {
	float: left;
	width: 22%
}

.case_detail .stepbox .right3 {
	float: right;
	width: 74%
}

.case_detail .stepbox .right .fitimg,
.case_detail .stepbox .left .fitimg,
.case_detail .stepbox .right2 .fitimg,
.case_detail .stepbox .left2 .fitimg,
.case_detail .stepbox .right3 .fitimg,
.case_detail .stepbox .left3 .fitimg {
	margin-top: 30px
}

.case_detail .stepbox .txt {
	padding: 20px 40px
}

.case_detail .stepbox .txt2 {
	padding: 0 40px;
	margin: 0 20px
}

.case_detail .stepbox .txt h4 {
	color: #48190a;
	font-size: 26px;
	line-height: 1.6
}

.case_detail .stepbox .txt .list {
	margin-top: 20px
}

.case_detail .stepbox .txt .list li {
	font-size: 16px;
	line-height: 1.7;
	padding: 10px 25px;
	background: #eee
}

.case_detail .stepbox .txt .list li + li {
	margin-top: 5px
}

.case_detail .stepbox .txt .style_set1 li::before {
	content: "";
	display: inline-block;
	width: 12px;
	height: 12px;
	background: #a30b1a;
	margin: 0 8px 0 0;
	vertical-align: baseline;
	border-radius: 20px
}

.case_detail .stepbox .txt p {
	font-size: 16px;
	line-height: 2.1;
	margin-top: 20px
}

.case_detail .stepbox .fitimg + p {
	font-size: 14px;
	line-height: 1.5;
	margin-top: 10px
}

.case_detail .stepbox .txt2 p {
	font-size: 16px;
	line-height: 2.1
}

.case_detail .link_txt {
	background: #eee;
	padding: 15px 20px;
	margin: 30px 0;
	word-break: break-all
}

@media screen and (max-width:1080px) {
	.case_detail .stepbox {
		padding: 30px
	}

	.case_detail .stepbox + .stepbox {
		padding-top: 10px
	}

	.case_detail .stepbox .left,
	.case_detail .stepbox .right,
	.case_detail .stepbox .left2,
	.case_detail .stepbox .right2,
	.case_detail .stepbox .left3,
	.case_detail .stepbox .right3 {
		float: none;
		width: 100%
	}

	.case_detail .stepbox .right .fitimg {
		margin-top: 20px
	}

	.case_detail .stepbox .txt h4 {
		line-height: 1.5
	}
}

@media screen and (max-width:768px) {
	.case_detail .stepbox {
		padding: 20px
	}

	.case_detail .stepbox .head {
		font-size: 16px;
		line-height: 20px;
		padding: 10px;
		width: auto
	}

	.case_detail .stepbox .txt {
		padding: 10px 20px 0
	}

	.case_detail .stepbox .txt h4 {
		font-size: 16px;
		line-height: 1.4
	}

	.case_detail .stepbox .txt .list {
		margin-top: 10px
	}

	.case_detail .stepbox .txt .list li {
		font-size: 14px;
		line-height: 1.6;
		padding: 10px
	}

	.case_detail .stepbox .txt p {
		font-size: 14px;
		line-height: 1.6;
		margin-top: 10px
	}

	.case_detail .stepbox .txt2 {
		padding: 15px 20px;
		margin: 0 20px
	}

	.case_detail .stepbox .txt2 p {
		font-size: 14px !important;
		line-height: 1.8 !important
	}
}

.case_detail .txtlink {
	text-align: right;
	margin-top: 30px !important
}

.case_detail .txtlink a {
	padding-left: 10px;
	color: #000;
	font-size: 14px;
	text-decoration: underline;
	position: relative;
	display: inline-block
}

.txtlink a:hover {
	opacity: .7
}

.txtlink a:after {
	position: absolute;
	content: '';
	width: 5px;
	height: 5px;
	top: 0;
	bottom: 0;
	left: 0;
	right: auto;
	margin: auto;
	border-top: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid #a30b1a;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transform: none;
	-moz-transform: none;
	-ms-transform: none;
	transform: none
}

@media screen and (max-width:768px) {
	.case_detail .txtlink {
		text-align: left;
		margin-top: 20px !important
	}
}

.case_detail .linkbox {
	padding: 50px 50px 70px
}

.case_detail .linkbox .inner {
	background: #eee;
	padding: 60px;
	position: relative
}

.case_detail .linkbox .inner:before {
	content: "導入サービス";
	position: absolute;
	top: -18px;
	bottom: auto;
	left: 0;
	right: 0;
	margin: auto;
	font-size: 26px;
	line-height: 30px;
	font-weight: 700;
	text-align: center
}

.case_detail .linkbox .inner:after {
	content: "";
	position: absolute;
	top: 30px;
	bottom: auto;
	left: 0;
	right: 0;
	margin: auto;
	width: 155px;
	height: 1px;
	background: #000
}

.case_detail .linkbox .title {
	font-size: 28px;
	width: auto;
	max-width: 702px;
	height: auto
}

.case_detail .linkbox p {
	font-size: 16px;
	line-height: 1.8;
	margin-top: 30px
}

.case_detail .linkbox .btns {
	width: 100%;
	margin: 0 auto
}

.case_detail .linkbox .btn {
	width: 47.9%;
	float: left;
	margin-right: 4.2%;
	margin-top: 30px
}

.case_detail .linkbox .btn_wh {
	margin-right: 0
}

.case_detail .linkbox .btn a {
	display: block;
	padding: 15px 0;
	font-size: 17px;
	line-height: 30px;
	text-align: center;
	text-decoration: none
}

.case_detail .linkbox .btn a span {
	padding-right: 20px;
	position: relative
}

.case_detail .linkbox .btn a span:after {
	position: absolute;
	content: '';
	margin: auto;
	top: 0;
	bottom: 0;
	right: 0;
	width: 5px;
	height: 5px;
	border-top: 3px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 3px solid transparent;
	border-left: 5px solid #a30b1a;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.case_detail .linkbox .btn_re a {
	color: #fff;
	background: red;
	border: 1px solid red
}

.case_detail .linkbox .btn_re a:hover {
	color: #fff;
	opacity: .7
}

.case_detail .linkbox .btn_re a span:after {
	border-left: 5px solid #fff
}

.case_detail .linkbox .btn_wh a {
	color: #000;
	background: #fff;
	border: 1px solid #000
}

.case_detail .linkbox .btn_wh a:hover {
	color: #a30b1a
}

.case_detail .linkbox .btn_re a span:after {
	border-left: 5px solid #fff
}

.case_detail .linkbox .btn a span .sp_none {
	display: inline
}

@media screen and (max-width:1080px) {
	.case_detail .linkbox {
		padding: 30px;
		margin-top: 30px
	}

	.case_detail .linkbox .inner {
		padding: 45px 30px 30px
	}
}

@media screen and (max-width:980px) {
	.case_detail .linkbox .btns {
		width: 90%
	}

	.case_detail .linkbox .btn {
		width: 100%;
		float: none;
		margin-right: 0;
		margin-top: 20px
	}

	.case_detail .linkbox .btn_wh {
		margin-top: 10px
	}

	.case_detail .linkbox .btn a {
		padding: 10px 0;
		font-size: 17px;
		line-height: 20px;
		text-align: center;
		text-decoration: none
	}
}

@media screen and (max-width:768px) {
	.case_detail .linkbox {
		padding: 10px 20px 20px
	}

	.case_detail .linkbox .inner {
		padding: 30px 20px 20px
	}

	.case_detail .linkbox .inner:before {
		top: -12px;
		font-size: 20px;
		line-height: 1
	}

	.case_detail .linkbox .inner:after {
		top: 20px
	}

	.case_detail .linkbox p {
		font-size: 14px;
		line-height: 1.6;
		margin-top: 10px
	}

	.case_detail .linkbox .btns {
		width: 100%
	}

	.case_detail .linkbox .btn {
		margin-top: 10px
	}
}

@media only screen and (max-width:480px) {
	.case_detail .linkbox .btn a {
		padding: 10px 0;
		font-size: 14px;
		line-height: 20px;
		text-align: center;
		text-decoration: none
	}

	.case_detail .linkbox .btn a span {
		padding-right: 15px
	}

	.case_detail .linkbox .btn a span .sp_none {
		display: none
	}

	.case_detail .linkbox .title {
		font-size: 18px
	}
}

.check_agree_box {
	text-align: center
}

.check_agree_box .btn_detail {
	display: inline-block;
	margin-left: 0
}

.check_agree_box .btn_detail a,
.check_agree_box .btn_detail input {
	background: #a30b1a;
	padding: 5px 20px;
	border: solid 1px #a30b1a
}

.check_agree_box .btn_detail a:hover,
.check_agree_box .btn_detail input:hover {
	background: #a30b1a;
	opacity: .7
}

.check_agree_box .btn_deactive a,
.check_agree_box .btn_deactive input,
.check_agree_box .btn_deactive a:hover,
.check_agree_box .btn_deactive input:hover {
	background: #ccc;
	border: solid 1px #999
}

@media only screen and (max-width:480px) {
	.check_agree_box .btn_detail {
		width: auto
	}
}

.check_agree_box .checkbox_input {
	width: auto;
	display: none;
	border: 0;
	margin: 0
}

.check_agree_box label {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	padding-left: 24px;
	cursor: pointer;
	font-size: 14px;
	line-height: 20px
}

.check_agree_box label:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 10%;
	width: 16px;
	height: 16px;
	background: #fff;
	border: 1px solid #999;
	-webkit-box-sizing: border-box;
	box-sizing: border-box
}

.check_agree_box label:after {
	content: "";
	position: absolute;
	top: -13px;
	left: 6px;
	margin: auto;
	width: 6px;
	height: 14px;
	border-right: 2px solid transparent;
	border-bottom: 2px solid transparent;
	-webkit-transform: rotate(40deg);
	-moz-transform: rotate(40deg);
	-ms-transform: rotate(40deg);
	transform: rotate(40deg);
	-webkit-transition: border-bottom-color, border-right-color .2s linear;
	-moz-transition: border-bottom-color, border-right-color .2s linear;
	-ms-transition: border-bottom-color, border-right-color .2s linear;
	transition: border-bottom-color, border-right-color .2s linear
}

.check_agree_box input:checked + label:after {
	border-color: #a30b1a
}

.price_table {
	width: 880px;
	margin: 0 auto;
	padding: 60px 0
}

.price_table .list {
	width: 102.273%
}

.price_table .list .item {
	width: 31.111%;
	margin-right: 2.222%;
	float: left
}

.price_table .list .item .title {
	width: 100%;
	text-align: center;
	vertical-align: middle;
	height: 100px;
	color: #fff;
	background: #706f67;
	display: table
}

.price_table .list .item.web_price {
	margin-top: -10px
}

.price_table .list .item.web_price .title {
	height: 110px;
	background: rgb(230, 0, 18);
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIxMDAlIiB5Mj0iMTAwJSI+CiAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjZTYwMDEyIiBzdG9wLW9wYWNpdHk9IjEiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iIzk5MDAwMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
	background: -moz-linear-gradient(-45deg, rgba(230, 0, 18, 1) 0%, rgba(153, 0, 0, 1) 100%);
	background: -webkit-linear-gradient(-45deg, rgba(230, 0, 18, 1) 0%, rgba(153, 0, 0, 1) 100%);
	background: linear-gradient(135deg, rgba(230, 0, 18, 1) 0%, rgba(153, 0, 0, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e60012', endColorstr='#990000', GradientType=1)
}

.price_table .list .item .title h3 {
	width: 100%;
	padding: 0 20px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	color: #fff;
	font-size: 20px;
	line-height: 1.5
}

.price_table .list .item .price_data {
	width: 100%;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	display: block;
	border: solid 1px #dad9d6;
	border-top: 0;
	padding: 30px 0;
	text-align: center;
	min-height: 285px;
	background: rgb(255, 255, 255);
	background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNlZWVlZWUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(238, 238, 238, 1) 100%);
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1) 0%, rgba(238, 238, 238, 1) 100%);
	background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 0%, rgba(238, 238, 238, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#eeeeee', GradientType=0)
}

.price_table .list .item.web_price .price_data {
	padding-bottom: 40px
}

.price_table .list .item .price_data .item_id {
	font-size: 30px;
	line-height: 1
}

.price_table .list .item .price_data .item_price {
	font-size: 20px;
	line-height: 1
}

.price_table .list .item .price_data .item_price strong {
	font-size: 46px;
	line-height: 1;
	font-weight: 700
}

.price_table .list .item .price_data .item_unit {
	font-size: 16px;
	line-height: 1;
	position: relative;
	padding-top: 25px
}

.price_table .list .item .price_data .item_unit + p {
	margin-top: 0
}

.price_table .list .item .price_data .item_unit strong {
	font-size: 30px;
	color: #000
}

.price_table .list .item .price_data .item_unit:after {
	position: absolute;
	content: ' ';
	width: 30px;
	height: 1px;
	background: #9d9c95;
	top: 0;
	left: 0;
	right: 0;
	margin: auto
}

@media screen and (max-width:940px) {
	.price_table {
		padding: 30px 0;
		width: 100%
	}

	.price_table .list .item .title {
		height: 80px
	}

	.price_table .list .item.web_price .title {
		height: 90px
	}

	.price_table .list .item .price_data {
		padding: 20px 0;
		min-height: inherit
	}

	.price_table .list .item.web_price .price_data {
		padding-bottom: 30px
	}

	.tabcontent .price_table .list .item .title br {
		display: block
	}

	.price_table .list .item .title h3 {
		font-size: 20px;
		line-height: 1.2
	}

	.price_table .list .item .price_data .item_id {
		font-size: 25px
	}

	.price_table .list .item .price_data .item_price {
		font-size: 14px
	}

	.price_table .list .item .price_data .item_price strong {
		font-size: 30px
	}

	.price_table .list .item .price_data .item_unit {
		font-size: 14px;
		line-height: 1;
		position: relative;
		padding-top: 15px
	}

	.price_table .list .item .price_data .item_unit strong {
		font-size: 25px;
		color: #000
	}

	.price_table .list .item .price_data .item_unit:after {
		width: 20px
	}
}

@media screen and (max-width:768px) {
	.price_table {
		padding: 20px 0
	}

	.price_table .list {
		width: 100%
	}

	.price_table .list .item {
		width: 100%;
		margin-right: 0%;
		float: none
	}

	.price_table .list .item .title,
	.price_table .list .item.web_price .title {
		width: 100%;
		text-align: center;
		vertical-align: middle;
		height: auto;
		padding: 10px 0
	}

	.price_table .list .item.web_price {
		margin-top: 0
	}

	.price_table .list .item .price_data,
	.price_table .list .item.web_price .price_data {
		padding: 20px 0
	}

	.tabcontent .price_table .list .item .title br {
		display: block
	}

	.price_table .list .item .title h3 {
		font-size: 16px;
		line-height: 1.2
	}

	.price_table .list .item .price_data .item_id {
		font-size: 20px
	}

	.price_table .list .item .price_data .item_price {
		font-size: 14px
	}

	.price_table .list .item .price_data .item_price strong {
		font-size: 30px
	}

	.price_table .list .item .price_data .item_unit {
		font-size: 14px;
		line-height: 1;
		position: relative;
		padding-top: 15px
	}

	.price_table .list .item .price_data .item_unit strong {
		font-size: 20px;
		color: #000
	}

	.price_table .list .item .price_data .item_unit:after {
		width: 20px
	}
}

.footer_wrp {
	padding: 0
}

.footer_wrp .free_area {
	margin: 0
}

.footer_wrp > .content_width {
	max-width: 100%;
	width: 100%;
	padding: 0
}

.footer {
	display: none
}

.footer_wrp .copyright {
	clear: none !important;
	padding: 0;
	font-size: 12px;
	height: auto;
	line-height: 1.2
}

.list_media {
	width: 100%;
	padding: 0 70px;
	font-size: 0;
	box-sizing: border-box;
	margin: 50px 0
}

.list_media li {
	width: calc(100% / 5 - 20px);
	display: inline-block;
	vertical-align: top;
	border: 1px solid #ddd;
	box-sizing: border-box;
	min-height: 270px;
	margin: 0 10px;
	padding: 20px
}

.list_media .title {
	border-bottom: 3px solid #eee;
	font-size: 16px;
	padding-bottom: 10px
}

.list_media p {
	font-size: 15px;
	margin-top: 13px
}

.list_media li {
	background: #eee
}

#section02 .accordion_header {
	display: none !important
}

#section02 .tabaccordionbody {
	padding: 0
}

#section02 .tabaccordionbody * + h4 {
	margin-top: 0
}

#section02 .tabaccordionhead {
	display: none;
	margin-top: 0 !important
}

#section02 .tabcontent {
	padding-bottom: 0 !important;
	width: 100%;
	box-sizing: border-box;
	display: block !important
}

#section02 .tabcontent br {
	display: none
}

#section02 .tabcontent br.br_clear {
	display: block
}

.bg_blue {
	background: none
}

.price_table .list .item .price_data .item_unit span {
	display: block;
	font-weight: 700;
	font-size: 24px;
	padding-bottom: 10px
}

@media screen and (max-width:1280px) {
	.bg_blue > .section_inner {
		padding: 0
	}
}

@media screen and (min-width:1160px) {
	.mid_width {
		width: 100%
	}

	#section02 .tabaccordionhead ul {
		text-align: center
	}

	#section02 .tabaccordionhead ul li {
		display: inline-block;
		float: none
	}

	.section_product_detail2 + #section02 .content_width {
		max-width: 100%
	}

	.section_product_detail2 + #section02 .content_width .fitimg {
		text-align: center
	}

	.section_product_detail2 + #section02 .content_width .tabcontent {
		padding-bottom: 100px
	}

	.section_product_detail2 + #section02 .content_width .fitimg img {
		width: auto;
		margin: 0 auto !important
	}

	.section_product_detail2 + #section02 .content_width .fitimg .btn_prev {
		margin-bottom: 60px
	}

	.section_product_detail2 + #section02 .section_inner {
		padding: 60px 0 0
	}

	.section_product_detail2 + #section02 .content_width .tabaccordionbody {
		padding: 80px 0 0
	}

	.section_product_detail2 + #section02 .content_width .tabcontent {
		display: block !important
	}
}

@media screen and (max-width:1160px) {
	.sp_img {
		width: 100% !important
	}

	.blanklink {
		width: 70%;
		margin: 0 auto;
		float: none
	}
}

@media screen and (max-width:768px) {
	#section02 .delay > .content {
		padding: 20px
	}

	#section02 .tabcontent {
		padding: 0 !important
	}

	#section02 [class*="tabcontent"] {
		display: block !important;
		margin-top: 30px
	}

	#section02 .accordion_header + [class*="tabcontent"] {
		border: none
	}

	#section02 [class*="tabcontent"] + .accordion_header {
		display: none
	}

	#section02 [class*="tabcontent"] .section_inner {
		padding: 0
	}
}

@media only screen and (max-width:480px) {
	.free_area + .content_width {
		padding: 20px
	}

	#section02 .gridwrp_3 .grid_1 {
		margin: 20px 0 0
	}
}

.section_product_detail2 .product_detail2 ul.charges_model li ul.charges_list {
	margin-left: 0
}

[id*="section0"].section_product_detail2 .column_left.product_detail2 .product_details .linkbtn .blanklink {
	transition: .1s all;
	padding: 0
}

[id*="section0"].section_product_detail2 .column_left.product_detail2 .product_details .linkbtn .blanklink:hover {
	opacity: .6
}

[id*="section0"].section_product_detail2 .column_left.product_detail2 .product_details .linkbtn .blanklink .link.btn_modal a {
	display: block;
	text-align: center;
	margin: 0;
	padding: 5px 15px 5px 30px;
	background-position: 10px 50%
}

[id*="section0"].section_product_detail2 .column_left.product_detail2 .product_details .linkbtn .blanklink .link.btn_modal a:hover {
	color: #fff
}

.btn-area .only-checkbox {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	text-align: center;
	padding: 0 !important;
	background-color: transparent !important;
	border-radius: 0 !important
}

.btn-area .only-checkbox a {
	color: #fff !important;
	text-decoration: none !important;
	padding: 5px 15px !important;
	border-radius: 3px !important;
	display: inline-block !important;
	border: solid 1px #ccc !important;
	background-color: rgba(0, 0, 0, .7) !important
}

.btn-area .only-checkbox a:hover {
	opacity: .6
}

#section02 .section_product_detail2 .column_left.product_detail2 {
	width: 100% !important;
	float: left
}

@media only screen and (min-width:1281px) {
	#section02 .section_product_detail2 .column_left .product_details {
		width: 76%
	}
}

@media only screen and (max-width:1160px) {
	.section_product_detail2 .column_left {
		width: 100%;
		float: none
	}

	.section_product_detail2 .column_right {
		width: 100%;
		float: none
	}

	.product_detail_page .section_product_detail2 div.option_left {
		width: 100%;
		float: none
	}

	.product_detail_page .column_right.option_right {
		width: 100%;
		float: none;
		margin-top: 20px
	}
}

#section01 .section_product_detail2 .column_left.product_detail2 {
	width: 78% !important;
	float: left
}

#section01 .section_product_detail2 .column_left.product_detail2 .product_details {
	float: left;
	padding: 0 0 0 25px;
	width: 70%
}

.btn_detail {
	max-width: 100%
}

.box_detail1 {
	padding: 25px 40px;
	background: #f6f6f6
}

.box_detail1 ul {
	padding-left: 15px;
	margin-top: 10px
}

.box_detail1 li {
	list-style: outside disc;
	padding-left: 5px
}

.box_detail1 li + li {
	margin-top: 5px
}

.change_img_pc {
	display: block !important
}

.change_img_sp {
	display: none !important
}

.br_fix {
	display: block !important
}

.icon-pdf::before {
	content: "";
	display: inline-block;
	background: url(https://clouddirect.jp.fujitsu.com/image/icon-pdf) no-repeat;
	width: 16px;
	height: 16px;
	margin-right: 6px
}

.icon-window::after {
	content: "";
	display: inline-block;
	background: url(https://clouddirect.jp.fujitsu.com/image/icon-window) no-repeat bottom;
	width: 16px;
	height: 16px;
	margin-left: 6px;
	position: relative;
	top: 2px
}

ol.list-style1 {
	padding-left: 20px;
	margin: 20px 0;
	background: #FAFAFA;
	padding: 10px 20px 0 35px
}

ol.list-style1 li {
	list-style: inside decimal;
	padding-left: -1.4em;
	text-indent: -1.4em;
	border-bottom: 1px dotted #ddd;
	padding: 10px
}

ol.list-style1 li em {
	font-weight: 700;
	font-size: 18px;
	padding-bottom: 5px
}

ol.list-style1 li small {
	font-size: 14px
}

ol.list-style1 li:last-child {
	border: none
}

ol.list-style1 li::before {
	display: none
}

ul.list-style1 li {
	list-style: none;
	border-bottom: 1px dotted #ddd;
	padding: 20px
}

ul.list-style1 li::before {
	content: "";
	display: inline-block;
	width: 12px;
	height: 12px;
	background: #000;
	border-radius: 20px
}

ol.list-style2 {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	margin-top: 15px
}

ol.list-style2 li {
	position: relative;
	width: 25%;
	list-style: none;
	border: 1px solid #eee;
	margin: 0 5px;
	padding: 25px 25px 20px !important;
	box-sizing: border-box;
	border-radius: 5px
}

ol.list-style2 li em {
	display: block;
	font-weight: 700;
	font-size: 18px;
	line-height: 1.4;
	/* text-align: center; */
	padding-bottom: 10px
}

ol.list-style2 li .number {
	text-align: center;
	display: table-cell;
	position: absolute;
	top: 0;
	left: 0;
	width: 30px;
	background: #000;
	vertical-align: middle;
	color: #fff;
	line-height: 30px
}

ol.list-style2 li img {
	max-width: 100%;
	height: auto;
}

ol.list-style2 li div {
	margin-bottom: 15px;
	text-align: center;
}

ol.list-style2 li small {
	font-size: 14px;
	margin-top: 10px
}

ol.list-style2 li::before {
	display: none
}

ol.list-style2.col3.wrap {
	flex-wrap: wrap;
	justify-content: flex-start;
	gap: 10px;

	li {
		margin: 0;

		div {
			@media screen and (min-width: 769px) {
				text-align: center;
			}
		}

		/* img {
			@media screen and (min-width: 1025px) {
				max-width: 148px;
			}
		} */
	}
}



.list-style3 {
	width: 100%;
	margin: 25px 0 60px
}

.list-style3 li .f_right {
	float: right;
	margin-left: 20px
}

.list-style3 li .f_left {
	float: left
}

.list-style3 li div {
	margin-bottom: 12px;
	background: #eee;
	padding: 5px 10px;
	font-size: 18px;
	font-weight: 700
}

.list-style3 li::before {
	content: counter(x);
	position: absolute;
	top: 0;
	left: 0;
	background: #730e12;
	color: #FFF;
	padding: 3px 60px 3px 10px
}

.list-style3 li::after {
	content: "";
	display: block;
	clear: both
}

.list-style3 + p {
	text-align: center;
	margin-bottom: 60px;
	padding-top: 30px;
	border-top: 1px solid #eee;
	font-size: 18px
}

.list_pager {
	max-width: 800px;
	text-align: center;
	margin: 40px auto 0
}

.list_pager li {
	display: inline-block;
	margin: 0 4px
}

.list_pager li a {
	display: block;
	padding: 4px 10px;
	border: 1px solid #888;
	text-decoration: none
}

.list_pager li a:hover {
	background: #eee;
	border: 1px solid #eee
}

.list_pager .active {
	padding: 4px 10px;
	background: #888;
	color: #FFF
}

.lyt-col {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center
}

.lyt-col.column1 li {
	width: 100%
}

.lyt-col.column2 li {
	width: 50%
}

.lyt-col.column3 li {
	width: calc(100% / 3)
}

.lyt-col.column4 li {
	width: 25%
}

#entriesTerms > h3 {
	font-size: 0
}

#entriesTerms > h3::after {
	content: "サイト利用規約確認";
	font-size: 20px
}

.box + .checkbox span {
	display: none
}

.box + .checkbox::after {
	content: "サイト利用規約に同意する";
	vertical-align: middle;
	font-size: 18px
}

form.cart .headline_wrp .btn_left a {
	padding: 5px 30px 5px 15px !important
}

.btn_detail a::after {
	bottom: 1px
}

#section01 .inline_module .checkbox-inline label span {
	font-size: 0 !important
}

#section01 .inline_module .checkbox-inline label span::after {
	content: "利用規約／サービス仕様書に同意する";
	display: inline-block;
	font-size: 16px;
	margin-left: 9px
}

div.product_set_name.caption label,
label > span {
	font-size: 18px
}

.estimate .form .btn_detail a {
	font-size: 20px;
	background: #a30b1a !important;
	padding: 17px 0 !important;
	border: none
}

.estimate .form .btn_detail a:hover {
	opacity: .6
}

.mod-btn-default,
.mod-btn-default:link,
.mod-btn-default:visited {
	background-color: #861718 !important;
	border-color: #861718 !important;
	cursor: pointer
}

.mod-btn-default:hover,
.mod-btn-default:active {
	background-color: #861718 !important;
	border-color: #861718 !important;
	opacity: 0.6 !important
}

.mod-badge-required[class*="mod-badge-"] {
	color: #861718 !important;
	border-color: #861718 !important
}

.box + .checkbox {
	text-align: center;
	font-size: 16px;
	margin: 20px 0 0
}

.box + .checkbox + h3 {
	border: 1px solid #ddd;
	padding: 25px 30px 0;
	border-bottom: none;
	font-size: 20px !important
}

.box + .checkbox + h3::after {
	display: none
}

.box + .checkbox + h3 + p {
	border: 1px solid #ddd;
	padding: 5px 30px 25px;
	border-top: none;
	word-break: break-all
}

.box + .checkbox + h3 + p + .checkbox {
	text-align: center;
	font-size: 16px;
	margin: 20px 0 30px
}

.btn_detail.left a::after,
.btn_detail.btn_prev a::after {
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	left: 10px;
	right: auto;
	margin: auto;
	border: solid 1px #fff;
	border-top-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-left-style: solid;
	border-top-color: rgb(255, 255, 255);
	border-left-color: rgb(255, 255, 255);
	width: 10px;
	height: 10px;
	border-top: none;
	border-left: none;
	-webkit-transform: rotate(-225deg);
	-moz-transform: rotate(-225deg);
	-ms-transform: rotate(-225deg);
	transform: rotate(-225deg)
}

.btn_detail.right.btn_order a {
	border: 1px solid #000
}

.btn_detail.right.btn_order a:hover {
	background: #E70012
}

.mypage_menu .link {
	margin: -30px 12px 0 0;
	text-align: right
}

.section_other .delay .headline {
	margin-top: 0
}

h2.product_name_title {
	padding-top: 18px;
	padding-bottom: 13px
}

.product_detail2 ul.charges_model li ul.charges_list li {
	padding: 0
}

.checkbox-inline label {
	padding-top: 10px;
	display: block;
	font-size: 18px
}

.orders_confirm.submit_btns .btn_detail.btn_next.check_agree a {
	font-size: 18px
}

.btn_detail.check_agree #btn {
	display: none
}

.btn_detail.check_agree #btn + #btn {
	display: block
}

.btn_detail.check_agree.btn_deactive #btn {
	display: block
}

.btn_detail.check_agree.btn_deactive #btn + #btn {
	display: none;
	cursor: pointer
}

#password_policy p {
	font-size: 12px !important;
	margin: 10px 0
}

#password_policy dl {
	padding-top: 5px;
	border: none;
	border-top: solid 1px #ddd
}

#password_policy dl::after {
	content: "";
	clear: both;
	display: block
}

#password_policy dl dd,
#password_policy dl dt {
	line-height: 1.4;
	font-size: 12px;
	margin: 0;
	box-sizing: border-box
}

#password_policy dl dt {
	width: 15%;
	padding: 5px 10px 0 0
}

#password_policy dl dd {
	width: 85%;
	padding: 5px 0 0 0
}

.btn-area {
	text-align: center
}

form + #section04 {
	margin-top: 0
}

@media screen and (max-width:768px) {
	.lyt-col {
		width: 100%;
		display: block
	}

	.section_product_detail2 .column_left .product_details {
		width: 100% !important;
		float: none
	}

	.product_details .linkbtn .blanklink {
		width: 100%
	}

	.list_step em::after {
		display: none
	}

	.list_step li {
		padding: 0;
		box-sizing: border-box
	}

	.lyt-col.column1 li,
	.lyt-col.column2 li,
	.lyt-col.column3 li,
	.lyt-col.column4 li {
		width: 100%
	}

	#password_policy dl dt,
	#password_policy dl dd {
		width: 100%;
		float: none
	}

	#password_policy dl dd {
		padding-top: 0
	}

	ol.list-style2 {
		flex-direction: column
	}

	ol.list-style2 li {
		width: auto;
		flex-grow: 1;
		flex-shrink: 1;
		flex-basis: auto
	}

	ol.list-style2 li > em + div {
		/* text-align: center */
	}

	ol.list-style2 li > em + div img {
		width: 100%;
		max-width: 300px
	}

	.list-style3 {
		width: 100%;
		margin: 25px 0 20px
	}

	.list-style3 li img {
		width: 100%;
		margin-bottom: 6px
	}

	.list-style3 li div {
		margin-bottom: 8px;
		background: #d3d3d3;
		padding: 3px 10px;
		font-size: 14px
	}

	.list-style3 li::before {
		content: counter(x);
		top: 0;
		padding: 6px 10px 3px;
		font-size: 12px
	}

	.list-style3 + p {
		margin-bottom: 30px;
		padding-top: 15px;
		font-size: 14px
	}

	.box_detail1 {
		padding: 20px 15px 20px 20px
	}

	.box_detail1 ul {
		padding-left: 15px;
		margin-top: 10px
	}

	.box_detail1 li {
		font-size: 12px;
		line-height: 1.6
	}

	.list-qa dt,
	.list-qa dd {
		padding: 15px 10px 15px 50px
	}

	.list-qa dt:before,
	.list-qa dd:before {
		font-size: 16px;
		padding: 5px 10px
	}
}

@media only screen and (max-width:480px) {

	.section_product_detail2 div.option_left,
	.section_product_detail2 div.option_right {
		width: 100% !important
	}

	.section_product_detail2 div.option_right {
		margin-top: 0 !important
	}

	#section04 .submit_3btns {
		width: 100% !important
	}

	.change_img_pc {
		display: none !important
	}

	.change_img_sp {
		display: block !important
	}

	.table-style1 th,
	.table-style1 td,
	.table-style2 th,
	.table-style2 td {
		display: table-cell !important
	}

	.table-style2 th {
		width: 18%
	}

	.table-style2 td {
		width: 25% !important
	}

	.table-style2 td + td + td + td {
		width: 60% !important
	}

	.table-style2 table {
		width: 600px
	}
}

#detail_overlay + .window_detail_area {
	display: none
}

#detail_overlay.open + .window_detail_area {
	display: block
}

#detail_overlay.open .window_detail_area_close {
	display: block
}

#detail_overlay.open {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	background: rgba(0, 0, 0, .8);
	box-sizing: border-box;
	z-index: 102;
	cursor: pointer
}

.window_detail_area {
	position: fixed;
	max-width: 1000px;
	margin: auto;
	padding-bottom: 50px;
	height: 80%;
	overflow-y: scroll;
	background: #FFF;
	z-index: 103;
	top: 0;
	left: 10%;
	right: 10%;
	bottom: 0
}

.window_detail_area article {
	max-width: 1000px;
	margin: 0 auto
}

.window_detail_area section {
	max-width: 850px;
	margin: 0 auto;
	padding-bottom: 50px
}

.window_detail_area * {
	box-sizing: border-box
}

.window_detail_area h1 {
	background: #129999;
	font-size: 28px;
	padding: 20px 0;
	margin: 0;
	text-align: center;
	color: #fff
}

.window_detail_area h2 {
	background: #129999;
	font-size: 20px;
	padding: 5px 15px;
	color: #fff;
	border-radius: 5px;
	margin-top: 45px
}

.window_detail_area h3 {
	border-left: 8px solid #129999;
	line-height: 1.2;
	padding-left: 10px;
	font-size: 22px;
	margin: 32px 10px 0
}

.window_detail_area h4 {
	color: #129999;
	font-size: 20px;
	margin: 0
}

.window_detail_area .hdg_caption {
	font-size: 15px;
	margin: 20px 10px 0 !important;
	color: #000;
	font-weight: 700
}

.window_detail_area [class*="lyt-col"] {
	max-width: 830px;
	margin: 20px auto 0;
	background: #fef3e7;
	display: -webkit-flex;
	display: flex;
	padding: 20px 30px;
	font-size: 14px
}

.window_detail_area [class*="lyt-col"] img {
	width: 100%
}

.window_detail_area h2 + p {
	font-size: 16px;
	margin: 0 15px
}

.window_detail_area p {
	margin: 15px 10px 15px
}

.window_detail_area p + h4 {
	margin: 20px 10px 0 !important
}

.window_detail_area h2 + p em {
	background: #861718;
	color: #FFF;
	font-style: normal;
	padding: 7px 10px 8px;
	margin-right: 8px
}

.window_detail_area .lyt-col2,
.window_detail_area .lyt-col3 {
	-webkit-justify-content: space-between;
	justify-content: space-between
}

.window_detail_area .lyt-col1 .ph {
	text-align: center
}

.window_detail_area .lyt-col2 .col {
	width: 350px
}

.window_detail_area .lyt-col3 .col {
	width: 220px
}

.window_detail_area .arrow {
	margin-right: 70px;
	position: relative
}

.window_detail_area .arrow::before {
	content: "▶︎";
	color: #129999;
	position: absolute;
	top: 45%;
	right: -40px
}

.window_detail_area .arrow2 {
	margin: 0 30px;
	position: relative;
	text-align: center
}

.window_detail_area .arrow2::after {
	content: "◀︎︎";
	color: #129999;
	position: absolute;
	top: 45%;
	left: -15px
}

.window_detail_area .arrow2::before {
	content: "▶︎";
	color: #129999;
	position: absolute;
	top: 45%;
	right: -15px
}

.window_detail_area .lyt-col1 .col {
	text-align: center
}

.window_detail_area ul {
	margin: 10px 10px 0;
	border-top: 1px dotted #CCC
}

.window_detail_area ul li {
	list-style: inside disc;
	border-bottom: 1px dotted #CCC;
	padding: 7px 5px
}

.window_detail_area .table-style2 {
	margin: 15px 10px 0
}

.window_detail_area .table-style2 + h4 {
	margin: 20px 10px 0 !important
}

.window_detail_area_close {
	display: none
}

.window_detail_area_close {
	position: absolute;
	right: 28px;
	top: 10px;
	z-index: 103
}

.window_detail_area_close:before,
.window_detail_area_close:after {
	content: '';
	height: 4px;
	width: 20px;
	display: block;
	background: #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	position: absolute;
	top: 8px;
	left: 0;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg)
}

.window_detail_area_close:after {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg)
}

@media screen and (max-width:768px) {
	.window_detail_area {
		margin: auto 30px
	}

	.window_detail_area section {
		max-width: 850px;
		margin: 0 auto
	}

	.window_detail_area * {
		box-sizing: border-box
	}

	.window_detail_area h1 {
		background: #129999;
		font-size: 22px;
		padding: 20px 0;
		margin: 0;
		text-align: center;
		color: #fff
	}

	.window_detail_area h2 {
		background: #129999;
		font-size: 18px;
		padding: 5px 15px;
		color: #fff;
		border-radius: 5px;
		margin: 30px 15px 0
	}

	.window_detail_area h3 {
		border-left: 8px solid #129999;
		line-height: 1.2;
		padding-left: 10px;
		font-size: 16px;
		margin: 25px 20px 0
	}

	.window_detail_area h4 {
		color: #129999;
		font-size: 16px;
		margin: 0
	}

	.window_detail_area [class*="lyt-col"] {
		max-width: 830px;
		margin: 15px 20px 0;
		background: #fef3e7;
		display: block;
		padding: 20px 30px 10px;
		font-size: 14px
	}

	.window_detail_area [class*="lyt-col"] img {
		width: 100%
	}

	.window_detail_area h2 + p {
		font-size: 14px;
		margin: 15px 20px 0
	}

	.window_detail_area h2 + p em {
		background: #861718;
		color: #FFF;
		font-style: normal;
		padding: 5px 10px 6px;
		display: block;
		margin: 0 0 5px
	}

	.window_detail_area .lyt-col2,
	.window_detail_area .lyt-col3 {
		-webkit-justify-content: space-between;
		justify-content: space-between
	}

	.window_detail_area .lyt-col1 .ph {
		text-align: center
	}

	.window_detail_area .lyt-col2 .col,
	.window_detail_area .lyt-col3 .col {
		width: 100%
	}

	.window_detail_area .arrow {
		margin-bottom: 30px;
		position: relative
	}

	.window_detail_area .arrow::before {
		content: "▼︎";
		color: #129999;
		position: absolute;
		top: auto;
		right: 50%;
		bottom: -30px
	}

	.window_detail_area .arrow2 {
		margin: 40px 0;
		position: relative;
		text-align: center
	}

	.window_detail_area .arrow2::before {
		content: "▲︎";
		color: #129999;
		position: absolute;
		top: -30px;
		right: 50%;
		bottom: -30px
	}

	.window_detail_area .arrow2::after {
		content: "︎︎▼";
		color: #129999;
		position: absolute;
		top: auto;
		right: 0;
		bottom: -30px
	}

	.window_detail_area .lyt-col1 .col {
		text-align: center
	}
}

/*! Lity - v2.2.2 - 2017-07-17 * http://sorgalla.com/lity/ * Copyright (c) 2015-2017 Jan Sorgalla; Licensed MIT */
.lity {
	z-index: 9990;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	white-space: nowrap;
	background: #0b0b0b;
	background: rgba(0, 0, 0, .9);
	outline: none !important;
	opacity: 0;
	-webkit-transition: opacity 0.3s ease;
	-o-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease
}

.lity.lity-opened {
	opacity: 1
}

.lity.lity-closed {
	opacity: 0
}

.lity * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box
}

.lity-wrap {
	z-index: 9990;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	text-align: center;
	outline: none !important
}

.lity-wrap:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
	margin-right: -.25em
}

.lity-loader {
	z-index: 9991;
	color: #fff;
	position: absolute;
	top: 50%;
	margin-top: -.8em;
	width: 100%;
	text-align: center;
	font-size: 14px;
	font-family: Arial, Helvetica, sans-serif;
	opacity: 0;
	-webkit-transition: opacity 0.3s ease;
	-o-transition: opacity 0.3s ease;
	transition: opacity 0.3s ease
}

.lity-loading .lity-loader {
	opacity: 1
}

.lity-container {
	z-index: 9992;
	position: relative;
	text-align: left;
	vertical-align: middle;
	display: inline-block;
	white-space: normal;
	max-width: 100%;
	max-height: 100%;
	outline: none !important
}

.lity-content {
	z-index: 9993;
	width: 100%;
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	-o-transition: -o-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition: transform 0.3s ease, -webkit-transform 0.3s ease, -o-transform 0.3s ease
}

.lity-loading .lity-content,
.lity-closed .lity-content {
	-webkit-transform: scale(.8);
	-ms-transform: scale(.8);
	-o-transform: scale(.8);
	transform: scale(.8)
}

.lity-content:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	display: block;
	right: 0;
	width: auto;
	height: auto;
	z-index: -1;
	-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, .6);
	box-shadow: 0 0 8px rgba(0, 0, 0, .6)
}

.lity-close {
	z-index: 9994;
	width: 35px;
	height: 35px;
	position: fixed;
	right: 0;
	top: 0;
	-webkit-appearance: none;
	cursor: pointer;
	text-decoration: none;
	text-align: center;
	padding: 0;
	color: #fff;
	font-style: normal;
	font-size: 35px;
	font-family: Arial, Baskerville, monospace;
	line-height: 35px;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
	border: 0;
	background: none;
	outline: none;
	-webkit-box-shadow: none;
	box-shadow: none
}

.lity-close::-moz-focus-inner {
	border: 0;
	padding: 0
}

.lity-close:hover,
.lity-close:focus,
.lity-close:active,
.lity-close:visited {
	text-decoration: none;
	text-align: center;
	padding: 0;
	color: #fff;
	font-style: normal;
	font-size: 35px;
	font-family: Arial, Baskerville, monospace;
	line-height: 35px;
	text-shadow: 0 1px 2px rgba(0, 0, 0, .6);
	border: 0;
	background: none;
	outline: none;
	-webkit-box-shadow: none;
	box-shadow: none
}

.lity-close:active {
	top: 1px
}

.lity-image img {
	max-width: 100%;
	display: block;
	line-height: 0;
	border: 0
}

.lity-iframe .lity-container,
.lity-youtube .lity-container,
.lity-vimeo .lity-container,
.lity-facebookvideo .lity-container,
.lity-googlemaps .lity-container {
	width: 100%;
	max-width: 964px
}

.lity-iframe-container {
	width: 100%;
	height: 0;
	padding-top: 56.25%;
	overflow: auto;
	pointer-events: auto;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-overflow-scrolling: touch
}

.lity-iframe-container iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-box-shadow: 0 0 8px rgba(0, 0, 0, .6);
	box-shadow: 0 0 8px rgba(0, 0, 0, .6);
	background: #000
}

.lity-hide {
	display: none
}

.layout-section-default .layout-section__inner-wrap,
.layout-section-for-reading-contents .layout-section__inner-wrap {
	min-width: auto !important
}

@media screen and (max-width:768px) {

	.layout-section-default .layout-section__inner-wrap,
	.layout-section-for-reading-contents .layout-section__inner-wrap {
		min-width: auto !important
	}

	.layout-form-0001 > .layout-form__wrap,
	.layout-form-default > .layout-form__wrap {
		display: block !important;
		width: auto !important;
		max-width: 392px !important;
		margin: 0 auto !important
	}

	.layout-form-0001 > .layout-form__wrap > .layout-form__group > .layout-form__label,
	.layout-form-default > .layout-form__wrap > .layout-form__group > .layout-form__label,
	.layout-form-0001 > .layout-form__wrap > .layout-form__group > .layout-form__form,
	.layout-form-default > .layout-form__wrap > .layout-form__group > .layout-form__form {
		display: block !important
	}

	.layout-form-0001 > .layout-form__wrap > .layout-form__group > .layout-form__label,
	.layout-form-default > .layout-form__wrap > .layout-form__group > .layout-form__label {
		width: 100% !important;
		text-align: left !important
	}

	.layout-form-0001 > .layout-form__wrap > .layout-form__group,
	.layout-form-default > .layout-form__wrap > .layout-form__group {
		display: block !important;
		height: auto !important
	}

	.layout-form-0001 > .layout-form__wrap > .layout-form__group > .layout-form__form,
	.layout-form-default > .layout-form__wrap > .layout-form__group > .layout-form__form {
		width: 100% !important;
		border-left-width: 1px !important
	}

	.mod-btn-backpage,
	.mod-btn-default,
	.mod-btn-default-sub,
	.mod-btn-form-group,
	.mod-btn-quiet,
	.mod-btn-quiet-sub,
	.mod-btn-spotlight {
		margin: 8px 0 !important
	}
}

.new_arrivals > *:first-child {
	position: relative
}

.new_arrivals > *:first-child::before {
	content: "NEW";
	display: inline-block;
	background: inherit;
	font-size: 14px;
	color: #fe0000;
	line-height: 1;
	vertical-align: middle;
	border: 1px solid;
	margin-right: 5px;
	padding: .3em .3em .1em
}

.section_wrp .fsp-article .content {
	background: transparent
}

.section_wrp .case_detail .stepbox {
	padding: 60px 0 0 0
}
