@charset "utf-8";

/************************************************
 各ページコンテンツ用
************************************************ */

/* ==============================================
▼テーブル・レスポンシブ
=============================================== */
.tab_resp table {
	width:100%;
}
#withnavi .tab_resp table {
	margin-top:20px !important;
}
.tab_resp th{
	width:23%;
	padding:10px;
	font-weight:600;
}
.tab_resp td{
	vertical-align:middle;
	padding:10px;
}
.tab_resp td span.pcnone,
.tab_resp th span.pcnone {
	display:none;
}
@media print, screen and (max-width: 767px) {
	.tab_resp table,
	.tab_resp table tbody,
	.tab_resp table tr {
		display:block;
		border:none;
	}
	.tab_resp thead {
		display:none;
	}
	.tab_resp tr.sphone_none {
		display:none;
	}
	.tab_resp th,
	.tab_resp td{
		display:list-item;
		border:none;
		padding:5px;
	}
	.tab_resp th{
		width: auto;
		list-style-type: none;
		background: none;
		font-weight: bold;
	}
	.tab_resp td {
		margin-bottom: 10px;
		padding-bottom: 20px;
		list-style-type: none;
		text-align:left;
		border-bottom:1px dotted #ccc;
	}
	#withnavi .tab_resp table {
		margin-top:10px !important;
	}
	#undercolumn_entry .tab_resp th{
		padding-top: 10px;
		padding-bottom: 0px;
	}
	#undercolumn_entry .tab_resp td {
		margin-bottom: 0px;
		padding-bottom: 0px;
		list-style-type: none;
		text-align:left;
		border-bottom:none;
	}
	.tab_resp td span.pcnone,
	.tab_resp th span.pcnone {
		display: inline;
	}
}

/* cart・shopping
----------------------------------------------- */
.shopping_table i {
	color:#686868 !important;
}
@media print, screen and (max-width: 767px) {
	.shopping_table,
	.shopping_table tbody,
	.shopping_table tr ,
	.shopping_table td {
		display:block;
		border:none;
		background:#fff;
	}
	.shopping_table th,
	.shopping_table td{
		display:list-item;
		border:none;
		padding:5px;
	}
	.shopping_table th{
		list-style-type: none;
		text-align: left;
	}
	.shopping_table td {
		list-style-type: none;
		text-align:left;
	}
	.shopping_table .name_top{
		padding-top:10px;
		border-top:1px solid #777;
	}
	.shopping_table th.name {
		width:calc(100% - 58px);
		display:inline-block;
		background:#fff;
	}
	.shopping_table td.alignC.times {
		width:50px;
		margin:0 0;
		display:inline-block;
		text-align:right !important;
	}
	.shopping_table .u_price {
		width:58%;
		display:inline-block;
		text-align:left !important;
	}
	.shopping_table .q_level {
		width:40%;
		padding:0 5px 0 0;
		display:inline-block;
		text-align:right !important;
	}
	.shopping_table .sub_total{
		background:#f4f2f0;
	}
	.shopping_table .sub_total{
		border-top:1px solid #777;
	}
	.shopping_table .sub_total.trbottom {
		border-bottom:1px solid #777;
	}
	.shopping_table .sub_total .col50{
		display:inline-block;
		padding:6px 0;
	}
	.shopping_table .sub_total td.col50 {
		width:46.0%;
		background:#f4f2f0;
	}
	.shopping_table .sub_total th.col50 {
		width:52.0%;
		background:#cacaca;
		padding:6px 3px 6px;
	}
	.shopping_table .sub_total td.col50.total {
		color:#ff0000;
		font-weight:bold;
		font-size:110%;
	}
	.shopping_table .sub_total th.col50.total {
		font-size:110%;
	}
	.delive,
	.delive tbody,
	.delive tr ,
	.delive td {
		display:block;
		border:none;
		background:#fff;
	}
	.delive th,
	.delive td{
		display:list-item;
		border:none;
		padding:5px;
	}
	.delive th{
		list-style-type: none;
		text-align: left;
	}
	.delive td {
		list-style-type: none;
		text-align:left;
	}
	.delive .add_select{
		margin-top:10px;
		border:1px solid #ccc;
	}
	.delive .select{
		display:block;
		background:#f4f2f0;
		border-bottom:1px solid #ccc;
	}
	.delive .addr{
		text-align:left;
		font-weight:bold;
	}
	.delive .col50 {
		display:inline-block;
		padding:6px 0;
		width:49.0%;
	}
	#top.shopping_table .alignR ,
	#top.shopping_table .alignC ,
	#top.shopping_table .alignL {
		margin:4px 0 !important;
		padding:0 0 !important;
	}
	#top.shopping_table .blockcol50 {
		display:inline-block;
		margin:0 0 !important;
		padding:4px 4px;
		width:58.5%;
		letter-spacing:-0.0em;
		text-align:left !important;
	}
	#top.shopping_table .pcnone.blockcol50 {
		width:40.0% !important;
		font-weight:bold;
		background:#f7f6ef;
	}
}


/* ==============================================
▼ CKeditor
=============================================== */
#detailarea .main_comment img {
	clear:both;
	max-width:98%;
	margin:1%;
}
/*テーブル共通*/
#detailarea .main_comment table th,
#detailarea .main_comment table td {
	vertical-align:top;
}
#detailarea .main_comment table.no_border,
#detailarea .main_comment table.no_border th,
#detailarea .main_comment table.no_border td {
	border:none;
}
/*テーブルセルに画像を配置したとき*/
#detailarea .main_comment table.image {
	table-layout:fixed;
}
#detailarea .main_comment table.image th,
#detailarea .main_comment table.image td {
	display:block;
}
#detailarea .main_comment table.image img {
	clear: none;
	max-width:100%;
	margin:0;
}
@media print, screen and (min-width: 460px) {
/*テーブルセルに画像を配置したとき*/
#detailarea .main_comment table.image th,
#detailarea .main_comment table.image td {
	display: table-cell;
}
}
/*テーブルのレスポンシブ*/
@media print, screen and (max-width: 459px) {
#detailarea .main_comment table.responsive,
#detailarea .main_comment table.responsive tbody,
#detailarea .main_comment table.responsive tr {
	display:block;
}
#detailarea .main_comment table.responsive th,
#detailarea .main_comment table.responsive td {
	display:list-item;
}
}


/* ==============================================
▼ 共通
=============================================== */
#err_area,
.header_explanation {
	width:100%;
	margin:20px auto 10px;
}
.top_block  {
	width:100%;
	margin:20px auto 0;
	padding:1.5%;
	background:#ffeeee;
}
.top_block p {
	font-size:95%;
	font-weight:bold;
	letter-spacing:-0.0em;
	line-height:1.7em;
}
#err_area ul {
	margin: 5px 0 0 0;
}
#err_area li {
	margin: 0 0 1px 0;
	list-style-type: none;
	font-size: 80%;
}
.circle-list li {
	margin: 0 0 4px 1.5em;
	list-style-type: circle;
	font-size: 90%;
}
.decimal-list li{
	list-style-type: decimal;
}

@media print, screen and (min-width: 768px) {
	#err_area,
	.header_explanation {
		width:100%;
		margin:40px auto 20px;
	}
	.top_block  {
		width:80%;
		margin:40px auto 40px;
		padding:2.0%;
		background:#ffeeee;
	}
	.top_block p {
		font-size:120%;
		font-weight:bold;
		letter-spacing:-0.0em;
		line-height:1.7em;
	}
	#err_area ul {
		margin: 10px 0 0 0;
	}
	#err_area li {
		margin: 0 0 2px 0;
		list-style-type: none;
		font-size: 90%;
	}
	.circle-list li {
		margin: 0 0 5px 1.5em;
		list-style-type: circle;
		font-size: 100%;
	}
}

/* ==============================================
▼landing_TOP
=============================================== */
.topCampus ul{
	width: 100%;
	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;
	margin-bottom: 10px;
}
.topCampus ul li{
	position: relative;
	width: 49%;
	margin-bottom: 23px;
	box-sizing: border-box;
}
.topCampus ul li a{
	display: block;
	margin: 0 0;
	padding: 20px 20px;
	font-size: 180%;
	font-weight: bold;
	letter-spacing:-0.0em;
	color:#fff;
	text-decoration:none;
	background-image: linear-gradient(140deg, rgba(62,73,171, 1) 65%, rgba(246,222,64, 1));
	-webkit-transition: 0.5s;
	transition: 0.5s;
}
.topCampus ul li a:hover{
	color: #fff;
	text-decoration:none ;
	opacity: 0.8;
	-webkit-transition: 0.5s;
	transition: 0.5s;
}
.topCampus ul li  a:after {
	content: '';
	margin-top: -8px;
	top: 33px;
	right: 23px;
	width: 15px;
	height: 15px;
	color: #fff;
	font-size: 1em;
	font-weight: bold;
	line-height: 1.2em;
	display: block;
	position: absolute;
	border-top: 3px solid #fff;
	border-right: 3px solid #fff;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.topCampus ul li dd{
	margin-top: 20px;
	padding: 20px;
	background: #fff;
	color: #000;
	font-size: 80%;
	line-height:1.50em;
}
.topCampus ul li dd img{
	margin-top: 15px;
	width: 100%;
}

@media only screen and (max-width: 767px) {
	.topCampus ul{
		margin: 20px 0 10px;
	}
	.topCampus ul li{
		width: 100%;
		margin-bottom: 15px;
		box-sizing: border-box;
	}
	.topCampus ul li a{
		display: block;
		margin: 0 0;
		padding: 20px 20px;
		font-size: 150%;
		font-weight: bold;
		letter-spacing:-0.0em;
		color:#fff;
		text-decoration:none;
		background-image: linear-gradient(140deg, rgba(62,73,171, 1) 65%, rgba(246,222,64, 1));
		-webkit-transition: 0.5s;
		transition: 0.5s;
	}
	.topCampus ul li dd{
		margin-top: 15px;
		padding: 10px;
		background: #fff;
		color: #000;
		font-size: 80%;
		line-height:1.50em;
	}
}

/* ==============================================
▼当サイトについて
=============================================== */

#undercolumn_aboutus {
	margin-bottom:20px;
}
div#undercolumn_aboutus #text1 {
	margin-bottom:15px;
}
div#undercolumn_aboutus .controller{
	margin-bottom:0;
	padding:1em;
	background: #f5f5f5;
	color: #333;
	border:#CCC 1px solid;
	border-bottom:none;
}
div#undercolumn_aboutus .controller #pointb {
	display:block;
	padding-top:5px;
}
div#undercolumn_aboutus .controller input{
	width:12em;
	margin-right:1em;
}
div#undercolumn_aboutus .container{
	border:1px solid #ccc;
	background:url(../img/background/loading.gif) 200px 100px no-repeat;
}
div#undercolumn_aboutus #map{
	width:100%;
	height:300px;
}
div#undercolumn_aboutus #panel{
	display:block;
	width:98%;
	padding:0 1%;
	overflow:auto;
	background: #f7f7f7;
	color:#333;
	margin-bottom:-20px;
}
div#undercolumn_aboutus #panel table {
	border:none;
}
#panel .adp-placemark{
	background: #eee;
	border:none;
	color:#333;
	font-weight:bold;
}
#panel .adp-summary{
	text-align:right;
}
#panel .adp-directions tr {
	color:#333;
}
#panel .adp-directions tr:hover{
	background: #333;
	color:#fff;
}
#panel .adp-directions td{
	padding:0.5em 0;
	border:dotted #fff;
	border-width:1px 0;
}
#panel .adp-directions b{
	font-weight:normal;
	color: #F00;
}
#panel .adp-directions .adp-distance{
	font-weight:bold;
}
#panel .adp-legal{
	text-align:right;
	color:#fff;
}

div#undercolumn_aboutus br.clear{
	clear:left;
	font-size:0;
}
div#undercolumn_aboutus #hyoji {
	padding:2px 5px 0 5px;
	background-color:#FFF;
	border:#333 1px solid;
	cursor:pointer;
	color:#333;
}
div#undercolumn_aboutus #hyoji:hover {
	background-color: #F90;
}
@media print, screen and (min-width: 1020px) {
div#undercolumn_aboutus .controller #pointb {
	display: inline;
	padding-top:0;
}
div#undercolumn_aboutus #map{
	float:left;
	width:75%;
	height:400px;
}
div#undercolumn_aboutus #panel{
	margin-left:75%;
	width:23%;
	height:400px;
}
}

/* ==============================================
▼MYページ
=============================================== */
/* 共通設定
----------------------------------------------- */
div#mypagecolumn {
    width:96%;
    margin:0 auto;
    padding:0 0;
}
div#mynavi_area {
    width: 100%;
}
div#mycontents_area {
    width: 100%;
}
div#mycontents_area p.inforamtion {
    margin-bottom: 20px;
}
div#mypagecolumn h4 {
    margin: 10px auto;
    border-bottom: 1px solid #999;
    text-align: left;
    font-size: 120%;
}

@media print, screen and (min-width: 768px) {
	div#mypagecolumn {
	    width:96%;
	    max-width:1120px;
	    margin:0 auto;
	    padding:0 0;
	}
}

/* ナビ
----------------------------------------------- */
#mynavi_area .mynavi_list {
    margin-bottom: 20px;
    width: 100%;
}
#mynavi_area .mynavi_list li {
	margin-bottom:10px;
}
#mynavi_area .point_announce {
    margin-bottom: 30px;
    padding: 10px;
    border: solid 1px #ccc;
    background-color: #f7f7f7;
}
#mynavi_area .point_announce p .glyphicon {
	font-size:22px;
	padding-right:5px;
}
#mynavi_area .point_announce p .txt {
	position:relative;
	top:-5px;
}
.button_area .navi_list li,
#mypagecolumn .navi_list li {
	margin-bottom:10px;
}

/* MYページトップ
----------------------------------------------- */
#mycontents_area .tab_resp table#top th{
	width:auto;
}
#mycontents_area table#top td {

}
@media print, screen and (max-width: 767px) {
	#mycontents_area table#top td.history_btn {
		border-bottom:1px solid #000;
	}
}

/* 購入履歴一覧/詳細
----------------------------------------------- */
div#mycontents_area div.mycondition_area {
    padding: 10px;
    border: solid 1px #ccc;
    background: #f9f9f9;
}
div#mycontents_area div.mycondition_area .left {
    float: left;
}
div#mycontents_area div.mycondition_area .right {
    float: right;
}
.add_address {
    margin-bottom: 20px;
}
#mycontents_area #coupon_area {
	margin-bottom:20px;
}
@media print, screen and (max-width: 459px) {
.tab_resp th.history_name {
	background-color:#f5f5f5;
}
.tab_resp th.history{
	text-align:left !important;
}
}

/* 会員登録内容変更/退会
----------------------------------------------- */
div#mycontents_area .message_area {
    margin: 30px auto;
    padding: 30px;
    border: 1px solid #ccc;
    text-align: center;
}

div#mycontents_area .message_area p {
    margin-bottom: 20px;
}


/* 写真投稿
----------------------------------------------- */
div#mypagecolumn #form-area {
    width: 96%;
    margin: 0 auto;
    padding: 0 0;
}
div#mypagecolumn #form-area .entry_main {

}
div#mypagecolumn #form-area .entry_foot {
    width: 100%;
    padding: 20px 20px;
    margin: 20px auto;
    text-align: center;
    box-sizing: border-box;
}
div#mypagecolumn #form-area .entry_foot p {
    margin-bottom: 20px;
    font-size: 16px;
}
div#mypagecolumn #form-area .etcontent{
    text-align:center;
}
div#mypagecolumn #form-area .photo{
    display:flex;
    flex-wrap:wrap;
    flex-start;
}
div#mypagecolumn #form-area .photo li{
    position:relative;
    width:calc(50% - 10px);
    margin:5px;
    border:1px solid #cccccc;
    box-sizing: border-box;
}
div#mypagecolumn #form-area .photo li a.btn_delete{
    position:relative;
    bottom:0px;
    left:calc(50% - 9px);
    font-size:18px;
    font-weight:bold;
}
div#mypagecolumn #form-area .photo li .cancel a{
    position:absolute;
    top:18px;
    right:10px;
    font-size:25px;
}
div#mypagecolumn #form-area .photo li .cancel a:hover{
    text-decoration:none;
    opacity:0.7;
}
div#mypagecolumn #form-area .photo li img{
    width: 100%;
    margin:0 auto;
    padding:0 0;
    display:block;
}
div#mypagecolumn #form-area .entry_main p{
    margin:0 0 15px !important;
    padding:0;
}
div#mypagecolumn #form-area .entry_main p .ttl{
    display:block;
    margin:0;
    padding-bottom:0;
    font-size:16px;
    font-weight: 600;
    color: #867553;
}
div#mypagecolumn #form-area .btn_area .btn-org {
  width: 100%;
  padding: 12px 0;
  font-size: 16px;
  line-height: 1.5;
  border-radius: 0px;
}

@media print, screen and (min-width: 1024px) {
	div#mypagecolumn #form-area .entry_main {
	}
	div#mypagecolumn #form-area .entry_foot {
	    width: 100%;
	    padding: 0 5%;
	    margin: 40px auto;
	    text-align: center;
	    box-sizing: border-box;
	}
	div#mypagecolumn #form-area .photo li{
	    width:calc(20% - 10px);
	    margin:5px;
	    border:1px solid #ccc;
	    box-sizing: border-box;
	}
	div#mypagecolumn #form-area .btn_area .btn-org {
	  width: 100%;
	  padding: 12px 0;
	  font-size: 18px;
	  line-height: 1.5;
	  border-radius: 0px;
	}
}


/* ==============================================
▼会員登録
=============================================== */
div#undercolumn_entry {
	margin:0 auto;
}

/* メール受信テスト
----------------------------------------------- */
div#undercolumn_entry.check {
	width:96%;
	margin:0 auto;
}
div#undercolumn_entry.check #entry_important{
	margin:20px auto;
	padding:10px 10px;
}
div#undercolumn_entry.check #undeliv_msg{
	margin:0 0 20px;
	font-size:105%;
}
div#undercolumn_entry.check #undeliv_step{
	margin:0 0 20px;
	padding:10px 10px;
	border:3px solid #f4f2f0;
}
div#undercolumn_entry.check #undeliv_step h3{
	margin:0 0 10px;
	font-size:110%;
}
div#undercolumn_entry.check #undeliv_step dl{
	font-size:100%;
}
div#undercolumn_entry.check #undeliv_step dt{
	font-weight:bold;
}
div#undercolumn_entry.check #undeliv_step dd{
	margin:0 0 10px 18px;
}
div#undercolumn_entry.check #undeliv_step #mail_attention{
	position: relative;
	width:100%;
	margin:0 auto 0;
	padding:10px ;
	padding-bottom:3px ;
	letter-spacing:0.0em;
	background:#f4f2f0;
	border:2px solid #e7e7e7;
}
div#undercolumn_entry .message img{
	width:100%;
	max-width:350px;
}
div#undercolumn_entry .important_message{
	margin:30px 0 0;
	text-align:center;
	font-size:15px;
	color:#ff0000;
	line-height:1.5em;
}
div#undercolumn_entry .important_message span{
	font-size:13px;
	color:#1d1d1d;
}
div#undercolumn_entry .kiyaku_text {
    margin: 30px auto 20px;
    padding: 2%;
    border: solid 1px #ccc;
    width: 100%;
    background: #fff;
	box-sizing: border-box;
}
#undercolumn_entry div.confirm {
    margin-bottom: 30px;
    padding: 10px 0;
    border: solid 1px #ccc;
    width: 100%;
    background: #fff;
    box-sizing: border-box;
}
div#undercolumn_entry p{
	margin:5px 0;
}
#agree_area{
    position: relative;
    width:100%;
    margin:20px 0;
    padding:15px ;
    padding-bottom:10px ;
    letter-spacing:0.0em;
    background:#f4f2f0;
    border:2px solid #e7e7e7;
    box-sizing: border-box;
}
#agree_area a{
    font-weight:bold;
}
#agree_area dt {
    font-size:105%;
    margin: 0 0 10px;
    padding: 0 0 5px 0;
    font-weight:bold;
    color: #000;
    border-bottom:1px solid #ddd;
}
#agree_area dd {
    font-size:95%;
}
#agree_area dd .kiyaku2{
    display:block;
    margin-bottom:5px !important;
}
#agree_area a.btn{
    margin-top:5px !important;
}

/* エラー
----------------------------------------------- */
#err_area{
    margin:0 auto;
    padding:10px 10px 5px;
    width:90%;
    border:2px solid #bf360c;
    box-sizing: border-box;
}
#err_area ul li{
    font-size:95%;
    line-height:1.65em;
}

@media print, screen and (min-width: 768px) {
	#agree_area{
	    position: relative;
	    width:100%;
	    margin:30px 0;
	    padding:30px ;
	    padding-bottom:20px ;
	    letter-spacing:0.0em;
	    background:#f4f2f0;
	    border:2px solid #e7e7e7;
	    box-sizing: border-box;
	}
	#agree_area dt {
	    clear: left;
	    float: left;
	    font-size:18px;
	    text-align: right;
	    width: 25%;
	    font-weight:bold;
	    color: #000;
	}
	#agree_area dd {
	    margin-left: 25%;
	    padding-left: 3%;
	    font-size:100%;
	}
	/* メール受信テスト
	----------------------------------------------- */
	div#undercolumn_entry.check {
		width:90%;
		margin:0 auto;
	}
	div#undercolumn_entry.check #entry_important{
		margin:40px auto;
		padding:20px 20px;
	}
	div#undercolumn_entry.check #entry_important p{
		font-size:107%;
		line-height:2.0em;
	}
	div#undercolumn_entry.check #undeliv_msg{
		margin:0 0 20px;
		font-size:105%;
	}
	div#undercolumn_entry.check #undeliv_step{
		margin:0 0 50px;
		padding:20px 20px;
		border:5px solid #f4f2f0;
	}
	div#undercolumn_entry.check #undeliv_step dd{
		margin:0 0 11px 20px;
	}
	div#undercolumn_entry.check #undeliv_step #mail_attention{
		position: relative;
		width:100%;
		margin:5px auto 0;
		padding:10px ;
		padding-bottom:2px ;
		letter-spacing:0.0em;
		background:#f4f2f0;
		border:2px solid #e7e7e7;
	}

	/* エラー
	----------------------------------------------- */
	#err_area{
	    margin:0 auto;
	    padding:20px 20px 10px;
	    width:80%;
	    border:2px solid #bf360c;
	    box-sizing: border-box;
	}
	#err_area ul li{
	    font-size:95%;
	    line-height:1.65em;
	}
}


/* ==============================================
▼ログイン
=============================================== */
#undercolumn_login{
    float:left;
    margin: 40px auto;
    width: 100%;
}
.login_area_left{
     width:51%;
     float:left;
     padding-right:2%;
     border-right:1px solid #ccc;
     box-sizing: border-box;
}
.login_area_right{
     width:49%;
     float:right;
     padding-left:2%;
}
.login_area_left h3,
.login_area_right h3{
    width:100%;
    margin:0 0 20px;
    padding:5px 0;
    letter-spacing:0.0em;
    font-size: 130%;
    color:#000;
    border-bottom:2px solid #2a4198;
}
.login_area_left .formlist ,
.login_area_right .formlist {
    margin-bottom:15px;
    width:100%;
}
.login_area_left .inputbox,
.login_area_right .inputbox {
    padding:10px;
    width:90%;
    margin:3% auto;
}
.login_area_left .button_area ,
.login_area_right .button_area {
    width:70%;
    margin:20px auto;
}
.login_memory{
    font-size:12px;
    letter-spacing:-0.0em;
}
#regist_flow{
    margin-top:20px;
    padding:10px;
    background:#ecf7ee;
    border:3px solid #def0d8;
}
div.pleaselogin h3.attention{
    margin: 10px;
    font-size: 110%;
}
div.pleaselogin p.loginattention{
    margin: 10px 10px 30px 10px;
    font-size: 100%;
    line-height: 1.6em;
}

@media only screen and (max-width: 980px) {
	.login_area_left .button_area ,
	.login_area_right .button_area {
	    width:85%;
	}
}

@media only screen and (max-width: 767px) {
	div.pleaselogin{
	    margin:0;
	}
	div.pleaselogin h3.attention{
	    margin: 5px 0;
	    font-size: 105%;
	}
	div.pleaselogin p.loginattention{
	    margin: 5px 5px 15px 5px;
	    font-size: 100%;
	    line-height: 1.5em;
	}
	.login_area_left{
	    width:96%;
	    float:none;
	    border-right:none;
	    padding-right:0;
	    margin:0 auto 30px;
	    box-sizing: border-box;
	}
	.login_area_right{
	    width:96%;
	    float:none;
	    margin:0 auto;
	    border-left:none;
	    padding-left:0;
	}
	.login_area_left h3,
	.login_area_right h3{
	    font-size:110%;
	}
}
@media print, screen and (max-width: 459px) {
	.login_area_left .inputbox,
	.login_area_right .inputbox {
		padding:5px;
	    width:95%;
	    margin:3% auto;
	}
	.login_area_left h3,
	.login_area_right h3{
	    font-size:110%;
	    letter-spacing:0.0;
	}
}

/* ==============================================
▼パスワードの再発行
=============================================== */
#forgot_area {
	background:#f7f7f7;
	padding:20px;
}
#forgot_area .information {
	margin-bottom:20px
}
#forgot_area .new_pass {
	font-size:120%;
}

@media print, screen and (min-width: 460px) {
#forgot_area {
	width:70%;
	margin:0 auto;
}
#forgot_area .button_area {
	width:50%;
	margin:0 auto;
}
}

/* ==============================================
▼カートに遷移しない
=============================================== */
/* モーダルinline_content */
#inline_content {
	width:330px;
	padding:20px 20px; 
	background:#fff; 
	text-align:center;
}
#inline_content h2{
	font-size:16px;
	margin-bottom:15px;
	letter-spacing:-0.0em;
}
#inline_content h3{
	font-size:15px !important;
	font-weight:normal;
}
#inline_content .btn_area .left,
#inline_content .btn_area .right{
	float:none;
	width:100%;
	margin:0 auto;
}
#inline_content .btn_area .left a,
#inline_content .btn_area .right a{
	text-decoration:none;
}
#inline_content .btn_area .left{
	margin-bottom:10px;
}
#inline_content .btn_area a:hover{
	text-decoration:none;
}

@media print, screen and (min-width: 768px) {
	#inline_content {
		width:650px; 
		padding:30px; 
	}
	#inline_content h2{
		margin-bottom:20px;
		font-size:18px;
	}
	#inline_content .btn_area{
		padding-bottom:50px;
	}
	#inline_content .btn_area .left{
		float:left;
		width:40%;
		margin-left:10%;
	}
	#inline_content .btn_area .right{
		float:right;
		width:40%;
		margin-right:10%;
	}
}


/* ==============================================
▼エラー
=============================================== */
div#undercolumn_error .message_area {
    width: 80%;
    margin: 30px auto;
    padding: 30px;
    border: 1px solid #ccc;
    text-align: center;
}

div#undercolumn_error .message_area .error {
    padding: 120px 0;
}


/* ==============================================
▼商品一覧・商品詳細パンくずリスト
=============================================== */
#pankuzu {
	margin-bottom:10px;
}
#pankuzu .breadcrumb {
	padding:0;
	margin:0;
	background:none;
}


/* ==============================================
▼サブカテゴリ
=============================================== */
#sub_area{
	width:96%;
	margin:0 auto;
	padding:0 0;
}
#sub_area.subcategory ul{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  margin: 10px auto;
}
#sub_area.subcategory ul li {
  width: 50%;
  text-align: center;
  border:1px solid #fff;
  background:#3e49ab;
}

#sub_area.subcategory ul li a{
  display: block;
  margin: 0 0;
  padding: 10px 0px;
  font-size: 95% ;
  font-weight:bold;
  letter-spacing:0.0em;
  text-decoration: none;
  color: #fff ;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

#sub_area.subcategory ul li a:hover{
  opacity: 0.5;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
@media print, screen and (min-width: 768px) {
	#sub_area{
	    width:96%;
	    max-width:1120px;
	    margin:0 auto;
	    padding:0 0;
	}
	#sub_area.subcategory ul li {
	  width: 25%;
	}
	#sub_area.subcategory ul li a{
	  padding: 12px 0px;
	}
}


/* ==============================================
▼カテゴリinfo
=============================================== */
#cat_info{
  float: left;
  width: 100%;
  margin: 0 0 40px;
  background-image: -webkit-radial-gradient(at top right, #d1d8e2 0%, #fff 90%);
  background-image: radial-gradient(at top right, #d1d8e2 0%, #fff 90%); 
}
#cat_info.mb_0{
  margin-bottom: 0 !important;
}
#cat_info h3{
  font-size: 1.2em;
  margin: 0 0 15px;
}
#cat_info p.info{
  margin: 0 0;
  font-size: 1.0em;
  line-height: 1.7em;
}
#cat_info .inner{
  width: 96%;
  max-width: 1080px;
  margin: 20px auto;
}
#cat_info .inner #list_category_image{
  max-width: 96%;
  margin: 20px auto;
}
#cat_info .inner #list_category_info{
  margin: 0 0;
}
#cat_info .inner #list_category_info h3{
  margin-bottom: 5px;
  font-size: 18px;
}
#cat_info .inner #list_category_info .p_name{
  font-size: 18px;
}
#cat_info .inner #list_category_info .p_name.hs{
  margin-top: 20px;
  margin-bottom: -15px;
}
#cat_info .inner #list_category_info .p_name.hs span{
  margin-right: 5px;
  font-weight: bold;
  font-style: italic; 
  color: #b50000;
}
#cat_info .inner #list_category_info .p_name.hs p{
  margin-top: 8px;
}
#cat_info .inner #list_category_info .p_name.hs p span{
  color:#3e49ab;
  font-size: 80%;
  font-style: normal; 
  background: linear-gradient(transparent 80%, #b9bee6 80%);
}
#cat_info .inner #list_category_info ul{
  margin: 15px 0 0;
}
#cat_info .inner #list_category_info li{
  margin: 0 0 0 2.0em;
  list-style-type: disc;
  font-size: 13px;
}
.btn_schedule{
  margin: 15px 0 0 0;
  width: 100%;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.btn_schedule a{
  position: relative;
  display: block;
  width: 100%;
  margin: 0 0;
  padding: 16px 0 16px 40px;
  font-size: 1.10em;
  font-weight: bold;
  color: #000;
  letter-spacing: -0.00em;
  border: 2px solid #000;
  text-decoration: none;
  background: url(../img/icon/icon_pdf.png)#f8f87f left center no-repeat;
  background-size: 40px;
  box-sizing: border-box;
}
.btn_schedule a:hover{
  background: url(../img/icon/icon_pdf.png)#ffc77b left center no-repeat;
  background-size: 40px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.btn_scheduleS{
  margin: 15px 0 0 0;
  width: 100%;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.btn_scheduleS a{
  position: relative;
  display: block;
  width: 100%;
  margin: 0 0;
  padding: 16px 0 16px 40px;
  font-size: 1.10em;
  font-weight: bold;
  color: #000;
  letter-spacing: -0.00em;
  border: 2px solid #000;
  text-decoration: none;
  background: url(../img/icon/icon_pdf.png)#f8f87f left center no-repeat;
  background-size: 40px;
  box-sizing: border-box;
}
.btn_scheduleS a:hover{
  background: url(../img/icon/icon_pdf.png)#ffc77b left center no-repeat;
  background-size: 40px;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  text-decoration: none;
}
.btn_schedule_soon{
  margin: 15px 0 0 0;
  width: 100%;
}
.btn_schedule_soon a{
  position: relative;
  display: block;
  width: 100%;
  margin: 0 0;
  padding: 16px 0 16px 6px;
  font-size: 1.05em;
  font-weight: bold;
  color: #8b8b8b;
  letter-spacing: -0.00em;
  border: 2px solid #8b8b8b;
  text-decoration: none;
  background: #ccc;
  box-sizing: border-box;
}
.btn_schedule_soon a:hover{
  background:#ccc ;
  cursor:default;
}

.btn_schedule ul{
  display: -webkit-flex;
  flex-wrap: wrap;
  width: 96%;
  max-width: 1120px;
  margin: 10px auto;
}
.btn_schedule ul li {
  width: 50%;
  text-align: center;
}

#cat_info_seihuku{
  width: 100%;
  margin: 0 0;
  background-image: -webkit-radial-gradient(at top right, #d1d8e2 0%, #fff 90%);
  background-image: radial-gradient(at top right, #d1d8e2 0%, #fff 90%); 
}
#cat_info_seihuku .inner{
  width: 96%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 20px 10px;
}
#cat_info_seihuku .inner #list_category_info p{
  margin: 0 0 1.0em;
  font-size: 110%;
  line-height: 1.5;
  letter-spacing: 0.0;
}
#cat_info_seihuku .inner #list_category_info p a.url{
  word-break: break-all;
}
#cat_info_seihuku .inner #list_category_info h3.attention{
  margin-bottom: 15px;
  font-size: 18px;
  color: #ff0000;
}
#cat_info .inner .col-2{
  width: 96%;
  margin: 0 auto;
}
#cat_info .inner .col-2 .content{
  width: 100%;
}
#cat_info .inner .col-2 .content.text{
  width: 100%;
  margin-top: 15px;
}
#cat_info .inner .col-2 .content img{
  max-width: 100%;
}
#cat_info .inner .col-2 .content.text ul li{
  margin: 0 0 0.25em 1.5em;
  font-size: 105%;
  list-style-type: disc;
  line-height: 1.6em;
}
#list_category_info_univ{
  margin: 0 0 20px;
  padding: 10px;
  background: #f8f6e3;
  border: 1px solid #384891;
  font-size: 105%;
  line-height: 1.45em;
}
#list_category_info_univ h3{
  margin: 0 0;
  font-size: 115%;
  color: #384891;
}
#list_category_info_univ .disc li{
  margin: 0 0 0 1.2em;
  list-style-type: disc;
}

@media print, screen and (min-width: 768px) {
	#cat_info .inner{
	  margin: 40px auto;
	}
	#cat_info h3{
	  font-size: 1.3em;
	  margin: 0 0 15px;
	}
	#cat_info p.info{
	  margin: 0 0;
	  font-size: 1.1em;
	  line-height: 1.7em;
	}
	#cat_info .inner #list_category_image{
	  float: right;
	  width: 50%;
	  margin: 40px 0 0 0;
	}
	#cat_info .inner #list_category_info{
	  float: left;
	  width: 50%;
	  margin: 0 0;
	}
	#cat_info .inner #list_category_info h3{
	  margin-bottom: 5px;
	  font-size: 25px;
	}
	#cat_info .inner #list_category_info .p_name{
	  font-size: 25px;
	}
	#cat_info .inner #list_category_info ul{
	  margin: 20px 0 0;
	}
	#cat_info .inner #list_category_info li{
	  margin: 0 0 0 2.0em;
	  list-style-type: disc;
	  font-size: 14px;
	}
	.btn_schedule{
	  margin: 15px 0 0 0;
	  width: 100%;
	}
	.btn_schedule a{
	  position: relative;
	  display: block;
	  width: 470px;
	  margin: 0 0;
	  padding: 20px 40px 20px 50px;
	  font-size: 1.30em;
	  font-weight: bold;
	  color: #000;
	  letter-spacing: 0.00em;
	  border: 2px solid #000;
	  text-decoration: none;
	  background: url(../img/icon/icon_pdf.png)#f8f87f left center no-repeat;
	  box-sizing: border-box;
	}
	.btn_schedule a:after {
		content: '';
		margin: 0 0;
		top: 36%;
		right: 14px;
		width: 14px;
		height: 14px;
		color: #fff;
		font-weight: bold;
		line-height: 1.2em;
		display: block;
		position: absolute;
		border-top: 2px solid #000;
		border-right: 2px solid #000;
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.btn_schedule a:hover{
	  background: url(../img/icon/icon_pdf.png)#ffc77b left center no-repeat;
	}
	.btn_schedule_soon{
	  margin: 15px 0 0 0;
	  width: 100%;
	}
	.btn_schedule_soon a{
	  position: relative;
	  display: block;
	  width: 100%;
	  margin: 0 0;
	  padding: 20px 0 20px 20px;
	  font-size: 1.25em;
	  font-weight: bold;
	  color: #8b8b8b;
	  letter-spacing: 0.00em;
	  border: 2px solid #8b8b8b;
	  text-decoration: none;
	  background: #ccc;
	  box-sizing: border-box;
	}
	.btn_schedule_soon a:after {
		content: '';
		margin: 0 0;
		top: 36%;
		right: 14px;
		width: 14px;
		height: 14px;
		color: #fff;
		font-weight: bold;
		line-height: 1.2em;
		display: block;
		position: absolute;
		border-top: 2px solid #8b8b8b;
		border-right: 2px solid #8b8b8b;
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.btn_schedule_soon a:hover{
	  background: #ccc;
	}
	.btn_schedule ul{
	  display: -webkit-flex;
	  display: flex;
	}
	.btn_schedule ul li {
	  width: auto;
	}
	.btn_schedule ul li a{
	  width: auto !important;
	}
	.btn_schedule ul li:first-child {
	  margin-right: 20px;
	}
	#cat_info_seihuku .inner{
	  padding: 40px 0;
	}
	#cat_info_seihuku .inner #list_category_info p{
	  margin: 0 0 1.0em;
	  font-size: 105%;
	  line-height: 1.7;
	  letter-spacing: 0.0;
	}
	#cat_info_seihuku .inner #list_category_info h3.attention{
	  margin-bottom: 15px;
	  font-size: 26px;
	  color: #ff0000;
	}
	#cat_info .inner .col-2{
	  width: 100%;
	  margin: 0 0;
	  display: -webkit-box;
	  display: -ms-flexbox;
	  display: flex;
	  -webkit-box-align: center;
	      -ms-flex-align: center;
	          align-items: center;
	}
	#cat_info .inner .col-2 .content{
	  width: 60%;
	}
	#cat_info .inner .col-2 .content.text{
	  margin: 0;
	  width: 40%;
	}
	#cat_info .inner .col-2 .content img{
	  max-width: 100%;
	}
	#cat_info .inner .col-2 .content.text ul li{
	  margin: 0 0 0.5em 1.0em;
	  font-size: 105%;
	  list-style-type: disc;
	  line-height: 1.7em;
	}
}

#cat_info .inner .regist{
  width: 100%;
  margin: 0 auto 30px;
  padding: 5.0%;
  border: 1px solid #ced5e0;
  background: #fff;
  box-sizing: border-box;
}
#cat_info .inner .regist dl.class{
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-bottom: none;
}
#cat_info .inner .regist dl.class dt{
  background: #f5f5f5;
  padding: 5px;
  width: 80px;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}
#cat_info .inner .regist dl.class dd{
  background: #fff;
  padding: 5px;
  width: calc(100% - 80px);
  border-bottom: 1px solid #ccc;
}
#cat_info .inner .regist ul.disc li{
  margin-left: 1.5em;
  list-style-type: disc;
  font-size: 100%;
  line-height: 1.5em;
}
#cat_info .inner .regist ul.disc li:first-child{
  margin-bottom: 1.0em;
}
#cat_info .inner .regist h3{
  margin-bottom: 5px !important;
}
#cat_info .inner .regist p{
  margin-bottom: 10px;
  font-size: 100%;
}
#cat_info .inner .regist p.head{
  margin-bottom: 10px;
  font-size: 105%;
  font-weight: bold;
  color:#3e49ab;
}
#cat_info .inner .regist p.head span{
  background: linear-gradient(transparent 80%, #b9bee6 80%);
}
@media print, screen and (min-width: 768px) {
	#cat_info .inner .regist{
	  width: 80%;
	  margin: 0 auto 40px;
	  padding: 2.5%;
	}
	#cat_info .inner .regist dl.class dt{
	  width: 150px;
	}
	#cat_info .inner .regist dl.class dd{
	  width: calc(100% - 150px);
	}
	#cat_info .inner .regist ul.disc li{
	  margin-left: 1.5em;
	  list-style-type: disc;
	  font-size: 105%;
	  line-height: 1.7em;
	}
	#cat_info .inner .regist p{
	  margin-bottom: 20px;
	  font-size: 105%;
	}
	#cat_info .inner .regist p.head{
	  margin-bottom: 20px;
	  font-size: 120%;
	}
}

.list_pc_text {
    margin: 20px 1.5%;
    padding: 2% 2%;
    border: 2px solid #eee;
}
.list_pc_text dl {
    margin-bottom: 10px;
}
.list_pc_text dt {
    margin-bottom: 5px;
    font-size: 120%;
    font-weight: bold;
}
.list_pc_text dd {
    font-size: 100%;
    line-height: 1.65em;
}
.btn_schedule a:hover{
    text-decoration: none !important;
}
.list_pc_text h3 {
    margin-bottom: 5px;
    font-size: 120%;
    font-weight: bold;
}
.list_pc_text .disc li {
    margin-left: 1.5em;
    font-size: 100%;
    line-height: 1.65em;
    list-style-type: disc;
}
@media print, screen and (min-width: 768px) {
	.list_pc_text {
	    margin: -20px 1.25% 40px;
	    padding: 2% 2%;
	    border: 2px solid #eee;
	}
	.list_pc_text dl {
	    margin-bottom: 15px;
	}
	.list_pc_text dt {
	    margin-bottom: 10px;
	    font-size: 120%;
	    font-weight: bold;
	}
	.list_pc_text dd {
	    font-size: 105%;
	    line-height: 1.65em;
	}
	.list_pc_text .btn_schedule a{
	    width: 100%;
	}
	.list_pc_text h3 {
	    margin-bottom: 10px;
	    font-size: 120%;
	    font-weight: bold;
	}
	.list_pc_text .disc li {
	    font-size: 105%;
	    line-height: 1.65em;
	}
}

#undercolumn.text_list{
    width: 96%;
    margin: 20px auto;
}
ul.entry-Banner li{
    margin: 0 0 20px;
    border: 1px solid #3e49ab;
}
ul.entry-Banner li a{
    position: relative;
    display: block;
    padding: 15px 45px 15px 10px;
    color: #000;
    text-decoration: none;
    font-size: 1.05rem;
    letter-spacing: -0.05em;
    background: #fff;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}
ul.entry-Banner li a span{
    font-size: 1.25rem;
    font-weight: bold;
}
ul.entry-Banner li a .entry-textBanner__icon {
    position: absolute;
    top: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 40px;
    height: 100%;
    background-color: #515bb3;
    color: #fff;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}
ul.entry-Banner li a:hover{
    background-color: #f0f1f9;
    color: #000;
    text-decoration: none;
}
ul.entry-Banner li a:hover .entry-textBanner__icon {
    background-color: #3a4185;
}
@media print, screen and (min-width: 980px) {
	#undercolumn.text_list{
	    width: 80%;
	    margin: 40px auto;
	}
	ul.entry-Banner li{
	    margin: 0 0;
	}
	ul.entry-Banner li a{
	    padding: 26px 100px 27px 40px;
	    font-size: 1.7em;
	    letter-spacing: 0.05em;
	}
	ul.entry-Banner li a span{
	    font-size: 1.75rem;
	}
	ul.entry-Banner li a .entry-textBanner__icon {
	    width: 100px;
	    height: 100%;
	}
	#list_category_info_univ{
	  margin: -40px 0 40px;
	  padding: 20px 20px 10px 20px;
	  font-size: 110%;
	  line-height: 1.7em;
	}
	#list_category_info_univ h3{
	  margin: 0 0 5px;
	  font-size: 110%;
	}
	#list_category_info_univ ul{
	  margin: 0 0 10px;
	}
	#list_category_info_univ .disc li{
	  margin: 0 0 0 1.4em;
	}
}

ul.entry-subBanner{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto 30px;
}
ul.entry-subBanner li{
    width: 100%;
    margin: 0 0 10px 0;
    border: 1px solid #3e49ab;
    box-sizing: border-box;
}
ul.entry-subBanner li a{
    position: relative;
    display: block;
    padding: 15px 45px 15px 10px;
    color: #000;
    text-decoration: none;
    font-size: 1.05rem;
    letter-spacing: -0.05em;
    background: #fff;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}
ul.entry-subBanner li a span{
    font-size: 1.10rem;
    font-weight: bold;
}
ul.entry-subBanner li a .entry-textBanner__icon {
    position: absolute;
    top: 0;
    right: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 40px;
    height: 100%;
    background-color: #515bb3;
    color: #fff;
    -webkit-transition: 0.5s;
    transition: 0.5s;
}
ul.entry-subBanner li a:hover{
    background-color: #f0f1f9;
    color: #000;
    text-decoration: none;
}
ul.entry-subBanner li a:hover .entry-textBanner__icon {
    background-color: #3a4185;
}
@media print, screen and (min-width: 980px) {
	ul.entry-subBanner{
	    width: 100%;
	    display: flex;
	    flex-wrap: wrap;
	    margin: 0 auto 40px;
	}
	ul.entry-subBanner li{
	    width: 48%;
	    margin: 1% 1%;
	    border: 1px solid #3e49ab;
	    box-sizing: border-box;
	}
	ul.entry-subBanner li a{
	    position: relative;
	    display: block;
	    padding: 15px 45px 15px 10px;
	    color: #000;
	    text-decoration: none;
	    font-size: 1.05rem;
	    letter-spacing: -0.05em;
	    background: #fff;
	    -webkit-transition: 0.5s;
	    transition: 0.5s;
	}
	ul.entry-subBanner li a span{
	    font-size: 1.25rem;
	    font-weight: bold;
	}
}

@media print, screen and (min-width: 980px) {
	.list_pc_text .btn_schedule a{
	    width: 70% !important;
	}
}
@media print, screen and (max-width: 767px) {
	#detailphotobloc .btn_schedule.btm{
	    margin-bottom: 20px;
	}
}

/* ==============================================
▼商品一覧
=============================================== */

/* ▼検索結果*/
.pagecond_area {
    margin-bottom: 10px;
    padding: 10px;
}
.pagecond_area {
    border: 1px solid #ccc;
}

/* ▼○件の商品がございます */
.list_announce_num {
	font-size:110%;
}
.list_announce_num span {
	font-weight:bold;
}
/* ▼並び順・表示件数・商品説明*/
.list_page_navi_area {
	position:relative;
	z-index:1;
	margin-bottom:20px;
}
.list_page_navi_area .change_area .change {
    float: right;
    text-align: right;
	width:60%;
}
.list_page_navi_area .change_area .change .form-group {
	margin:5px 0;
}

@media print, screen and (min-width: 768px) {
.list_page_navi_area .change_area .change {
	width:100%;
}
}

/* ▼ページャー*/
.pagenumber_area {
	clear:both;
    width: 100%;
    text-align: center;
	margin-bottom:20px;
}
.pagenumber_area .pagination {
	padding:0;
	margin:0;
}
/* 文字色 */
.pagenumber_area .pagination > li > a,
.pagenumber_area .pagination > li > span {
  color: #555;
}
/* アクティブ時の色指定 */
.pagenumber_area .pagination > .active > a,
.pagenumber_area .pagination > .active > span,
.pagenumber_area .pagination > .active > a:hover,
.pagenumber_area .pagination > .active > span:hover,
.pagenumber_area .pagination > .active > a:focus,
.pagenumber_area .pagination > .active > span:focus {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}

/* 商品説明/表示/非表示
----------------------------------------------- */
/* 商品説明 */
.listpagecomment {
	display:none;
	margin:-10px 0 10px;
	padding:5px;
	background:#f0f0f0;
}
.listpagecomment2 {
	margin-bottom:10px;
}
.listpagecomment p,
.listpagecomment2 p{
	font-size:90%;
	line-height:1.65em;
	letter-spacing:0.0em;
}

.listcomment_on {
	display: block;
}
.listcomment_off {
	display:none;
}


/* レイアウト
----------------------------------------------- */
.list_area {
	margin-bottom:20px;
	padding-bottom:20px;
	width:100%;
	border-bottom:#eee 1px solid;
}
.listphoto {
	width:90%;
	margin:0 auto;
}
.listrightbloc {
	width:90%;
	margin:0 auto;
}

@media print, screen and (min-width: 768px) {
div.list_area {
	border-bottom: none;
	margin-top:30px;
	padding-bottom:20px;
}
div.list_left {
	width: 23.5%;
	float:left;
	margin-right:2%;
}
div.list_right {
	width: 23.5%;
	float:right;
}
div.list_pc {
/*	width: 31.333%;*/
	width:23%;
	float:left;
	margin:0 1.0%;
}
div.list_pc .listphoto {
	border: 1px solid #eee;
}

*:first-child+html div.list_left,
*:first-child+html div.list_right {
	width:23%;
}
#list_category_image {
	margin-bottom:10px;
}
.listphoto,
.listrightbloc {
	width:100%;
	margin:0 0;
}
.list_area_itembottom{
	border-bottom:1px solid #ccc;
}
}

/* 商品情報 各種設定
----------------------------------------------- */
/* カテゴリ画像 */
#list_category_image {
	margin-bottom:20px;
}
#list_category_image img {
	max-width:100%;
}

/* 画像 */
div.listphoto {
	text-align:center;
	margin-bottom:10px;
	position:relative;
}
div.listphoto img {
	width:100%;
	margin: 0 auto;
	display: block;
}

/* 商品ステータス */
div.listrightbloc ul.status_icon {
    width: 100%;
	margin-bottom:5px;
}
div.listrightbloc ul.status_icon li.image {
    margin-right: 5px;
    float: left;
}
div.listrightbloc ul.status_icon li.text {
	font-size:85%;
    margin-right:2px;
	margin-bottom:2px;
	padding:1px 2px;
    float: left;
	color:#333;
}
div.listrightbloc ul.status_icon li#status1 {
	background: #FFD1BB;
}
div.listrightbloc ul.status_icon li#status2 {
	background: #FFD2E9;
}
div.listrightbloc ul.status_icon li#status3 {
	background: #FAA;
}
div.listrightbloc ul.status_icon li#status4 {
	background:#E2F2FA;
}
div.listrightbloc ul.status_icon li#status5 {
	background:#D7E8CA;
}

/* 商品名 */
div.listrightbloc h3 ,
div.listrightbloc h3 a{
    margin: 0 0 10px;
    display: block;
    font-size: 110% !important;
    line-height: 1.55em !important;
    color: #2a4198;
    text-decoration: none;
}
div.listrightbloc h3 a:hover{
    text-decoration: underline;
}

/* 商品詳細を見る */
div.listrightbloc .button_area {
	text-align:center;
    margin-bottom: 10px;
}

/* 価格 */
#whobought_area .pricebox,
div.listrightbloc .pricebox {
    margin: 0 0 10px 0;
    font-size:20px;
    font-weight:bold;
    letter-spacing: 0.04em;
    text-align: center;
}
#whobought_area .pricebox span,
div.listrightbloc .pricebox span {
    display: inline-block;
}
#whobought_area .pricebox .price,
div.listrightbloc .pricebox .price {

}
#whobought_area .pricebox .title,
div.listrightbloc .pricebox .title {
    font-size: 13px;
    font-weight:normal;
    letter-spacing:-0.0em;
}
#whobought_area .pricebox .yen,
div.listrightbloc .pricebox .yen {
    margin:0 1px;
    font-size: 13px;
    font-weight:bold;
}

/* 買い物カゴ */
div.listrightbloc .cart_area {
    width: 85%;
    margin: 0 auto;
}
div.listrightbloc .cart_area .cartbtn {
    padding: 4px 0;
    text-align: center;
    font-size: 90%;
    background: #f2f2f2;
}

/* 期間限定販売 */
div.listrightbloc .arrival_endsell {
	display:none;
}
.list_area .arrival_endsell_sphone {
	clear:both;
	margin-top:5px;
	padding:5px;
	background-color: #F3F3F3;
	font-weight:bold;
	text-align:center;
	letter-spacing:-0.0em;
}
.list_area .arrival_endsell_sphone span {
	color:#F00;
}
/* 規格・数量 */
div.listrightbloc .cart_area dl,
div.listrightbloc .cart_area dd,
div.listrightbloc .cart_area dt {
	margin:0;
}
div.listrightbloc .cart_area dl {
	margin-bottom:10px;
}
div.listrightbloc .cart_area dt {

}
div.listrightbloc .quantity .mini {
	letter-spacing:0.04em;
}
div.listrightbloc .quantity_no_pulldown {
	margin-bottom:10px;
}
div.listrightbloc .quantity_no_pulldown input.form-control {
	text-align:center;
}
div.listrightbloc .quantity dl {
	display: flex;
	flex-wrap: wrap;
}
div.listrightbloc .quantity dt{
	width: 60px;
	text-align: center;
	padding: 8px 8px;
	font-size: 14px;
	line-height: 1.4;
	border:1px solid #ccc;
	border-right:none;
	background:#f4f4f4;
}
div.listrightbloc .quantity dd {
	width: calc(100% - 60px);
}
div.listrightbloc .cartin_btn {
	margin-top:10px;
	text-align:center;
}

@media print, screen and (min-width: 768px) {
	div.listrightbloc h3 ,
	div.listrightbloc h3 a {
	    display : block;
	    margin-bottom: 20px;
	    line-height: 1.40em;
	    letter-spacing: 0.0em;
	    font-size: 105% !important;
	}
}

/* 規格 */
div.listrightbloc .classlist dt {
	font-size:0.90rem;
	letter-spacing:-0.1em;
	color:#000;
}

/* 大学PC商品list
----------------------------------------------- */
.list_area_pc{
	margin-top: 20px;
	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: flex-start;
}
.list_area_pc li{
	width: 18%;
	margin: 0 1.0% 60px;
}
.list_area_pc li a{
	letter-spacing: 0.0em;
	text-decoration:none !important;
}
.list_area_pc li a h3{
	margin: 10px 0 0 0;
	padding: 0 0;
	font-size: 100%;
	font-weight: bold;
	color:#000;
}
.list_area_pc .pricebox{
	margin-top: 5px;
	padding-top: 5px;
	border-top: 1px solid #ccc;
	text-align: right;
	color: #000;
	font-size: 80%;
}
.list_area_pc .pricebox .price{
	margin: 0 2px;
	font-size: 170%;
	font-weight: bold;
	color:#ae0000;
}
.list_area_pc .listphoto{
	position:relative;
	border:1px solid #eee;
}
.list_area_pc .listphoto img{
	width:100%;
}
.list_area_pc .listphoto ul.status_icon li{
	margin:0;
	padding:0;
	width:55px;
	height:55px;
	line-height:55px;
	font-size:13px;
	font-weight:bold;
	letter-spacing:0.0em !important;
}
.list_area_pc .listphoto ul.status_icon li:first-child {
	position: absolute;
	top: -15px;
	left: -15px;
}
.list_area_pc .listphoto ul.status_icon li:nth-child(2) {
	position: absolute;
	top: -15px;
	left: 40px;
}
@media only screen and (max-width: 767px) {
	.list_area_pc li{
		width: 48%;
		margin-bottom: 40px;
	}
	.list_area_pc .pricebox .price{
		font-size: 150%;
	}
	.list_area_pc .listphoto ul.status_icon li{
		width:45px;
		height:45px;
		line-height:45px;
		font-size:12px;
	}
	.list_area_pc .listphoto ul.status_icon li:first-child {
		position: absolute;
		top: -15px;
		left: -5px;
	}
	.list_area_pc .listphoto ul.status_icon li:nth-child(2) {
		position: absolute;
		top: -15px;
		left: 50px;
	}
}

/* 大学教材商品list
----------------------------------------------- */
.list_area_kyozai{
	margin-top: 20px;
	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: flex-start;
}
.list_area_kyozai li{
	width: 23%;
	margin: 0 1% 80px;
}
.list_area_kyozai li a{
	letter-spacing: 0.0em;
	text-decoration:none !important;
}
.list_area_kyozai li h3{
	margin: 10px 0 0 0;
	padding: 0 0;
	font-size: 110%;
	font-weight: bold;
}
.list_area_kyozai .pricebox{
	margin-top: 5px;
	padding-top: 5px;
	border-top: 1px solid #ccc;
	text-align: right;
	color: #000;
	font-size: 80%;
}
.list_area_kyozai .pricebox .price{
	margin: 0 2px;
	font-size: 170%;
	font-weight: bold;
	color:#ae0000;
}
.list_area_kyozai .comment{
	margin: 15px auto;
}
.list_area_kyozai .comment li{
	width: 100%;
    margin:0 0 8px;
    padding:0 0 8px;
	letter-spacing: 0.0em;
	border-bottom:1px dotted #ccc;
}
.list_area_kyozai .comment li span{
	font-weight: bold;
}
.list_area_kyozai .listphoto{
	position:relative;
}
.list_area_kyozai .listphoto img{
	width:100%;
}
.list_area_kyozai .listphoto ul.status_icon li{
	margin:0;
	padding:0;
	width:55px;
	height:55px;
	line-height:55px;
	font-size:13px;
	font-weight:bold;
	letter-spacing:-0.2em !important;
}
.list_area_kyozai .listphoto ul.status_icon li:first-child {
	position: absolute;
	top: -15px;
	left: -15px;
}
.list_area_kyozai .listphoto ul.status_icon li:nth-child(2) {
	position: absolute;
	top: -15px;
	left: 40px;
}
@media only screen and (max-width: 767px) {
	.list_area_kyozai li{
		width: 48%;
		margin-bottom: 60px;
	}
	.list_area_kyozai .pricebox .price{
		font-size: 150%;
	}
	.list_area_kyozai .listphoto ul.status_icon li{
		width:45px;
		height:45px;
		line-height:45px;
		font-size:12px;
	}
	.list_area_kyozai .listphoto ul.status_icon li:first-child {
		position: absolute;
		top: -15px;
		left: -5px;
	}
	.list_area_kyozai .listphoto ul.status_icon li:nth-child(2) {
		position: absolute;
		top: -15px;
		left: 50px;
	}
}


/* ==============================================
▼商品詳細
=============================================== */
/* レイアウト

    tplファイルのマークアップが同じ項目
        * 1カラム時
        * 2カラム時
        * 3カラム時

----------------------------------------------- */
#detailarea {
    margin-bottom: 20px;
    width: 100%;
}

/* レイアウト
----------------------------------------------- */
#detailphotobloc {
    width: 95%;
    margin: 20px 2.5%;
    border: none;
}
#detailphotobloc img{
    margin: 0 auto;
    display: block;
    border: none;
}
#detailrightbloc {
    width: 95%;
    margin: 0 auto;
}
#detailarea .underbloc {
	margin-bottom:60px;
}

@media print, screen and (min-width: 980px) {
	#detailphotobloc {
	    width: 46%;
	    float: left;
	    margin: 20px 0 0 0;
	}
	#detailrightbloc {
	    width: 51%;
	    float: right;
	    margin: 20px 0 0 0;
	}
}

/* 商品情報 各種設定
----------------------------------------------- */
/*パンくずリスト*/
#detailarea #pankuzu li#name {
	clear: none;
	display: inline;
	font-size:100%;
	margin:0;
	padding:0;
	background: none ;
	border: none;
}

/* ============================
   メイン画像・規格画像・サブ画像
   detail_image.tpl
/* =========================== */
#detail_image_area {
	margin-bottom:20px;
}
#detail_image_area img {
	max-width:100%;
}
#detail_image_area a:hover {
	opacity: 0.8;
}
#detail_image_area .main_slider-thumbnails {
	margin:0 -10px;
}
#detail_image_area .main_slider-thumbnails li {
	margin:0 10px;
	opacity: 0.8;
}
#detail_image_area .main_slider-thumbnails li:hover {
	opacity: 1;
	cursor:pointer;
}

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

/* QRコード */
.qrcode_detail {
	display:none;
}
@media print, screen and (min-width: 460px) {
.qrcode_detail {
	display:block;
	position:relative;
	margin:15px 0;
	min-height:111px;
}
.qrcode_detail .qrcode_box {
	position:absolute;
	top:0;
	left:0;
	overflow:hidden;
	border:1px solid #CCC;
}
.qrcode_detail .qrcode {
}
.qrcode_detail .text {
	min-height:100px;
	padding-left:120px;
	background:url(../img/common/img_mobile.png) no-repeat right bottom;
}
}

/* 商品名 */
h2.detail_product_name {
    font-size: 160%;
    letter-spacing: 0.0em;
    line-height: 1.70em;
    padding:  0;
    margin: 0 0 10px;
}

/* 商品ステータス */
ul.detail_status_icon {
    width: 100%;
	margin-bottom:10px;
}
ul.detail_status_icon li.image {
    margin-right: 5px;
    float: left;
}
ul.detail_status_icon li.text {
	font-size:100%;
    margin-right: 3px;
	margin-bottom:3px;
	padding:1px 4px;
    float: left;
	color:#333;
}
ul.detail_status_icon li#status1 {
	background: #FFD1BB;
}
ul.detail_status_icon li#status2 {
	background: #FFD2E9;
}
ul.detail_status_icon li#status3 {
	background: #FAA;
}
ul.detail_status_icon li#status4 {
	background:#E2F2FA;
}
ul.detail_status_icon li#status5 {
	background:#D7E8CA;
}

/* 商品コード */
.detail_product_code {
    padding: 0 0 10px 0;
    margin: 0 0 10px 0;
	border-bottom:#CCC 1px dashed;
}
.detail_product_code dt,
.detail_product_code dd {
    display: inline;
}

/* 通常価格 */
.detail_normal_price dt,
.detail_normal_price dd {
    display: inline;
}

/* 販売価格 */
.detail_sale_price{
    text-align: left;
    margin: 0 0 5px 0;
    padding: 0 0;
    font-size:26px;
    font-weight:bold;
    letter-spacing: 0.04em;
    color:#b71c1c;
}
.detail_sale_price span {
    display: inline-block;
}
.detail_sale_price .price {

}
.detail_sale_price .title {
    font-size: 15px;
    font-weight:normal;
    letter-spacing:-0.0em;
}
.detail_sale_price .yen {
    margin:0 0;
    font-size: 15px;
    font-weight:bold;
}

/* ポイント */
.detail_point dt,
.detail_point dd {
    display: inline;
}

/* 線 */
#detailarea .underline {
    height:1px;
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
    border-bottom:#c3c3c3 1px solid;
}
#detailarea .sphone .underline {
    padding:0;
    border:none;
}

/* メーカー */
#detailrightbloc .maker_area {
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
	border-bottom:#CCC 1px dashed;
}
#detailrightbloc .maker dt,
#detailrightbloc .maker dd {
    display: inline;
}
#detailrightbloc .comment1 dt,
#detailrightbloc .comment1 dd {
    display: inline;
}

/* 追加商品情報 */
.detail_product_head {
	clear:both;
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
	border-bottom:#CCC 1px dashed;
}
.detail_product_head .head_name {
	margin-bottom:5px;
}
.detail_product_head .head_name span {
	padding:0 5px;
	color:#333;
	border-bottom:#ccc 1px dashed;
}
.detail_product_head .head_content {
	padding-left:5px;
	margin-bottom:10px;
}

/* Googleマップボタン */
#detailrightbloc .detail_map_button {
	clear:both;
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
	border-bottom:#CCC 1px dashed;
}

/* 関連カテゴリ */
#detailrightbloc .relative_cat {
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
	border-bottom:#CCC 1px dashed;
}
#detailrightbloc .relative_cat dd {
	margin-bottom:5px;
}

/* 商品へのお問い合わせ */
.detail_contact_product {
	clear:both;
    margin: 0 0 10px 0;
    padding: 0 0 10px 0;
	border-bottom:#CCC 1px dashed;
}
.detail_contact_product .name {
	font-size:140%;
	margin-bottom:5px;
	color:#333;
}

/* キャッチコピー */
#detailrightbloc .copy {
    margin: 0 0;
    color: #384891;
    font-size: 110%;
    font-weight: bold;
    letter-spacing: -0.0;
    background: linear-gradient(transparent 60%, #f9e182 0%);
    display: inline;
    padding: 0 0 2px;
}


/* ============================
   カートまわり
/* =========================== */
/* マトリクス表示 */
#detail_classtable table {
	margin:0 0 25px 0;
}
#detail_classtable table td ,
#detail_classtable table th {
	padding:2px 2px;
}
#detail_classtable table th {
	text-align:center;
	font-weight:bold;
}
#detail_classtable table td label span{
	margin-left:3px;
	vertical-align:-3px;
}
#detail_classtable .normal_price {
	text-decoration:line-through;
}
#detailarea #detail_class_no table,
#detailarea #detail_class_no td {
	border:none;
	font-size:110%;
	color:#333;
	line-height:1.6em;
}
#detail_classtable input[type="radio"]  {
    width: 18px;
    height: 18px;
    vertical-align: middle;
}

/* 規格 */
#detailarea .classlist {
	margin:20px 0;
}
#detailarea .classlist h3{
	margin-bottom:20px;
	font-size:18px;
}
#detailarea .classlist h3 span.sup{
	display:block;
	font-size:15px;
	font-weight:normal;
}
#detailarea .classlist .heading{
	margin:10px 0;
	border-bottom:1px dotted #ccc;
	font-size:105%;font-weight:bold;
}
/* 期間限定販売 */
#detailarea .arrival_endsell {
	margin-top:10px;
	padding:10px;
	background-color: #F3F3F3;
	font-weight:bold;
	text-align:center;
	letter-spacing:-0.0em;
}
#detailarea .arrival_endsell span {
	color:#F00;
}
#detailarea .cartin_btn {
	width:100%;
}
#detailarea .cartin_btn.soldout{
	margin:20px 0;
	padding: 15px;
	background-color: #f4f4f4;
	border: 1px solid #eee;
}
#detailarea .cartin_btn.soldout p{
	text-align:center;
	font-size:100%;
	font-weight:bold;
	color:#b71c1c;
	letter-spacing:0.0em;
}
/* ============================
   カゴに入れる
/* =========================== */
#detailarea .cart_area {
    margin:20px 0;
    padding: 15px;
    background-color: #f4f4f4;
    border: 1px solid #eee;
}
#detailarea .cart_area .cart_inner {
    width:100%;
    margin:0 auto;
}
#detail_classtable table {
	margin:0 0 0 0;
	background:none;
}
#detail_classtable table td {
	padding:0;
}
#detail_classtable .normal_price {
	text-decoration:line-through;
}
#detailarea #detail_class_no table,
#detailarea #detail_class_no td {
	border:none;
	background:none;
	font-size:110%;
	color:#333;
	line-height:1.6em;
}
#detailarea .classlist {
	margin:15px auto 20px;
}
#detailarea .classlist h3.ttl{
    margin-bottom:10px;
    padding:5px;
    font-size:16px;
    background:#384891;
    color: #f4c922;
}
#detailarea .classlist dl{
    position: relative;
    margin: 0 0;
    padding: 8px 0 5px;
    border-bottom: 1px dotted #ccc;
}
#detailarea .classlist dl:last-child{
    border-bottom: none;
}
#detailarea .classlist dl dt.title {
    font-size: 100%;
    margin: 5px 0 3px;
    padding: 0 110px 0 17px;
    font-weight: bold;
    letter-spacing: -0.05em;
    background:url(../img/icon/point003.png) no-repeat 0 4px;
}
#detailarea .classlist dl dt.title div{
    display: block;
    font-weight: normal !important;
}
#detailarea .classlist dl dt.title .btn{
    margin: 0;
    padding: 1px 2px;
    border-radius: 2px;
    font-size: 60%;
    letter-spacing: -0.2em !important;
}
/* オプション */
#detailarea .classlist .productoptionlist {
	margin: 0 0 0 10px;
}
#detailarea .classlist .productoptionlist li {
	display:inline-block;
	margin: 0;
}
#detailarea .classlist .productoptionlist li label{
	margin:0 2px;
	padding:4px 4px;
}
#detailarea .classlist .productoptionlist li label:hover{
	cursor: pointer;
}

#detailarea .classlist dl{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
#detailarea.high3 .classlist dt{
    width: 58%;
}
#detailarea.high3 .classlist dd{
    width: 42%;
}
#detailarea.high3 .classlist dl dt.title {
    font-size: 100%;
    margin: 5px 0 3px;
    padding: 0 0 0 0;
    font-weight: bold;
    letter-spacing: -0.05em;
    background:none;
}
#detailarea.high3 .classlist dl dt.title .btn{
    margin: 0 0 4px;
    padding: 3px 6px;
    border-radius: 2px;
    font-size: 80%;
    line-height: 1.0;
    letter-spacing: 0.05em !important;
}
#detailarea.high3 .classlist dd ul{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
#detailarea.high3 .classlist dd ul li{
    width: 50%;
}
#detailarea.high3 .classlist dd li label{
    width: 95%;
	padding:0 4px;
    border:2px solid #ccc;
    border-radius:30px;
}

@media print, screen and (max-width: 980px) {
	#detailarea .classlist dl dt.title div{
	    margin: 0 0 10px;
	}
	#detailarea.high3 .classlist dt{
	    width: 100%;
	}
	#detailarea.high3 .classlist dd{
	    width: 100%;
	    margin: 0;
	    padding: 0 0 10px;
	}
	#detailarea.high3 .classlist dd ul{
	    margin: 0;
	    padding: 0;
	}
	#detailarea.high3 .classlist dd li label{
	    width: 98%;
		padding:0 0;
	    border:2px solid #ccc;
	    letter-spacing:0.0;
	    border-radius:30px;
	}
}

#detailarea .classlist dl dd.description {
    position: absolute;
    top: 13px;
    right: 0;
}
#detailarea .classlist dl dd.description p a {
    display: inline-block;
    margin: 0;
    padding: 2px 0;
    width: 105px ;
    background:#384891;
    border-radius: 20px;
    color: #f4c922;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.02em;
    text-align: center;
    text-decoration: none;
}

#detailarea .classlist .classlist_box {
	padding:15px 15px 3px 15px;
}
#detailarea .classlist .input-group {
	margin-bottom:15px;
}
#detailarea .quantity {
	width:200px;
}
#detailarea .quantity .form-control {
	width:100px;
	z-index:1;
}
#detailarea .quantity .input-lg{
	height: 43px;
}
.arrival_endsell.kyozai,
#detailarea .arrival_endsell {
	margin-top:10px;
	padding:10px;
	background-color: #F3F3F3;
	font-weight:bold;
	text-align:center;
	letter-spacing:-0.0em;
}
.arrival_endsell.kyozai span,
#detailarea .arrival_endsell span {
	color:#F00;
}
#detailarea .cartin {
	width:100%;
	margin:15px 0 0;
	padding:0;
}
#detailarea .cartin_btn {
	width:100%;
}
#detailarea .cartin_btn.soldout{
	text-align:center;
	font-size:90%;
	color:#980000;
	letter-spacing:0.0em;
}
#bank_info dt{
	margin: 15px 0 5px;
	font-weight: bold;
}
#bank_info dt span:before{
	font-family:'Font Awesome 5 Free';
	content: '\f192';
	font-weight: 900;
	color: #953206;
	margin-right: 3px;
}
#bank_info dd{
	margin-left: 20px;
}

@media print, screen and (min-width: 768px) {
	#detailarea .cart_area {
	    margin:20px 0;
	    padding: 20px;
	    background-color: #f4f4f4;
	    border: 1px solid #eee;
	}
	#detailarea .cart_area .cart_inner {
	    width:70%;
	    margin:0 auto;
	}
	#detailarea .quantity {
		float:left;
		width:200px;
	}
	#detailarea .quantity .input-lg{
		height: 56px;
	}
	#detailarea .quantity .form-control {
		width:100px;
	}
	#detailarea .cartin {
		float:left;
		width:calc(100% - 200px);
		margin:0;
		padding:0;
	}
	#detailarea .cartin_center {
		float:none;
		width:70%;
		margin:0 auto;
		padding:0;
	}
	#detailarea .cartin_btn {
		width:100%;
	}
}

/* ============================
   詳細-メインコメント
/* =========================== */
#detailarea .main_comment {
    margin-bottom: 30px;
}
#detailarea .main_comment_title {
	margin-bottom:10px;
	border-left:10px #999 solid;
	padding:5px 0 5px 10px;
	background-color:#eee;
	font-size:120%;
}
#detailarea .main_comment img {
	margin:0 5px;
	margin-bottom:10px;
}
#detailarea .main_comment .cmt li {
	margin-bottom:10px;
	font-size:105%;
	line-height:1.75em;
}
#detailarea .main_comment .cmt li span{
	font-weight:bold;
}

/* ============================
   サブ情報
/* =========================== */
#detailsub_slide {
	display:none;
}
#pc_none_sub_area {
    margin-bottom: 20px;
}
@media print, screen and (min-width: 460px) {
#pc_none_sub_area {
	display:none;
}
#detailsub_slide {
	display:block;
    margin-bottom: 25px;
}
}

/* サブ情報・スライド */
#detailsub_slide #carousel_area {
	position: relative;
}
#detailsub_slide #wrapper {
	position: relative;
	width: 88%;
	left: 6%;
	overflow:hidden;
}
#detailsub_slide #carousel_detailsub {
	display:none;
}
#detailsub_slide #carousel_detailsub .item {
	float: left;
	position: relative;
}
#detailsub_slide #carousel_detailsub .image_area {
	width:38%;
	float:left;
}
#detailsub_slide #carousel_detailsub .comment_area {
	width:60%;
	float:right;
}
#detailsub_slide #carousel_detailsub .image_area img {
	max-width:100%;
}
#detailsub_slide #carousel_detailsub .comment_area .title {
	font-size:120%;
	background-color:#eee;
	border-left:10px solid #CCC;
	padding:5px 10px;
	margin-bottom:10px;
}
#prev_detailsub {
	position:absolute;
	top:0;
	left: 0;
	width:6%;
	height:100%;
	min-height:100%;
	background: url(../img/button/gui-prev.png) no-repeat center center;
	background-size:15px 25px;
}
#next_detailsub {
	position:absolute;
	top:0;
	right: 0;
	width:6%;
	height:100%;
	min-height:100%;
	background: url(../img/button/gui-next.png) no-repeat center center;
	background-size:15px 25px;
}
#prev_detailsub:hover {
	background: url(../img/button/gui-prev_on.png) no-repeat center center;
	background-size:15px 25px;
}
#next_detailsub:hover {
	background: url(../img/button/gui-next_on.png) no-repeat center center;
	background-size:15px 25px;
}
@media print, screen and (min-width: 460px) {
#detailsub_slide #wrapper {
	width: 92%;
	left: 4%;
}
#prev_detailsub {
	width:4%;
}
#next_detailsub {
	width:4%;
}
}

/* サブ情報・スライド 使用しない*/
.sub_area .sphone_none {
	display:none;
}
@media print, screen and (min-width: 460px) {
	.sub_area .sphone_none {
		display: block;
	}
	.sub_area .pc_none {
		display:none;
	}
}
.sub_area {
    margin-bottom: 30px;
}
.sub_area .title {
  padding-bottom: 10px;
  margin-bottom: 15px;
  border-bottom: solid 3px #cce4ff;
  position: relative;
  font-size: 140%;
  font-weight: bold;
}
.sub_area .title:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #3e49ab;
  bottom: -3px;
  width: 20%;
}
.sub_area .subtext {
  position: relative;
}
.sub_area .subtext h4{
  margin-bottom:10px;
  color:#3e49ab;
  font-size: 105%;
}
.sub_area .subtext img {
	max-width:100%;
}
.sub_area .subtext ul li{
  margin-left:1.5em;
  list-style-type: disc !important;
}
.sub_area .subphotoimg {

}
.sub_area .subphotoimg img {
	max-width:100%;
}
@media print, screen and (max-width: 767px) {
	.sub_area .subtext img {
		width:60%;
		margin:0 auto;
		display:block;
	}
	.sub_area .title {
	  margin-bottom: 15px;
	  border-bottom: solid 3px #cce4ff;
	  position: relative;
	  font-size: 120%;
	  font-weight: bold;
	}
	.sub_area .title:after {
	  position: absolute;
	  content: " ";
	  display: block;
	  border-bottom: solid 3px #3e49ab;
	  bottom: -3px;
	  width: 20%;
	}
}

/* YouTube */
#detailarea #detail_youtube {
}
#detailarea .embed-container {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	width: 100%;
	margin-bottom:15px;
}
#detailarea .embed-container iframe,
#detailarea .embed-container object,
#detailarea .embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* お客様の声
----------------------------------------------- */
div#customervoice_area {
    clear: both;
    margin-bottom: 30px;
}

div#customervoice_area h2 {
    margin-bottom: 20px;
    padding: 6px 0 8px 10px;
    border-top: solid 1px #f90;
    background: url('../img/background/bg_tit_sub_01.jpg') repeat-x left bottom;
}

div#customervoice_area .review_bloc {
    margin-bottom: 20px;
    padding: 10px;
    background-color: #f6f6f6;
}

div#customervoice_area .review_bloc p {
    padding-top: 3px;
    margin-right: 10px;
    float: left;
}

div#customervoice_area ul li {
    padding-bottom: 15px;
    margin-bottom: 15px;
    background: url("../img/background/line_dot_01.gif") repeat-x bottom ;
}

div#customervoice_area .voicetitle {
    margin-bottom: 5px;
    color: #333;
    font-weight: bold;
}

div#customervoice_area .voicedate {
    margin-bottom: 10px;
}


/* 関連商品
----------------------------------------------- */
#whobought_area {
    clear: both;
	margin-bottom:25px;
}
#whobought_area .whobought_title {
  margin-bottom: 20px;
  border-bottom: solid 3px #cce4ff;
  position: relative;
  font-size: 120%;
  font-weight: bold;
}
#whobought_area .whobought_title:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #3e49ab;
  bottom: -3px;
  width: 20%;
}
div#whobought_area .product_item {
	clear:both;
	width:100%;
}
div#whobought_area .product_item .productImage {
	float:left;
	width:50%;
}
div#whobought_area .product_item .productContents {
	float:right;
	width:48%;
}
div#whobought_area .product_item .productImage img {
	max-width:100%;
	margin-bottom:10px;
}
div#whobought_area .product_item .productContents h3 {
	font-weight:normal;
	margin-bottom:5px;
}
@media print, screen and (min-width: 460px) {
/* 4列横並び */
div#whobought_area .product_item_left {
	width:24%;
	margin-right:1%;
}
div#whobought_area .product_item_right {
	width:25%;
}
div#whobought_area .product_item {
	float:left;
	clear:none;
}
div#whobought_area .product_item .productImage {
	margin-bottom:5px;
	float:none;
	width:100%;
}
div#whobought_area .product_item .productContents {
	float:none;
	width:100%;
}
div#whobought_area .product_item .productImage img {
	margin-bottom:0;
}
div#whobought_area .clear {
	padding-bottom:10px;
	margin-bottom:10px;
	border-bottom:#999 1px dotted;
}
/* 2列横並び */
div#whobought_area #pattern2 .product_item_left {
	width:48%;
	float:left;
}
div#whobought_area #pattern2 .product_item_right {
	width:48%;
	float:right;
}
div#whobought_area #pattern2 .product_item .productImage {
	float:left;
	width:49%;
}
div#whobought_area #pattern2 .product_item .productContents {
	float:right;
	width:49%;
}

}

/* ***********************************************
▼購入手続き/カートの中
/*********************************************** */
#undercolumn_shopping {
	margin-bottom:20px;
}

/* 現在のカゴの中
----------------------------------------------- */
div#undercolumn_cart .point_announce {
    padding: 10px;
    margin-bottom: 20px;
    background: #f7f7f7;
    text-align: left;
}
div#undercolumn_cart .totalmoney_area {
    margin-bottom: 20px;
}

div#undercolumn_cart p {
    margin: 10px 0;
}

div#undercolumn .empty {
    text-align: left;
}

div#undercolumn_cart td.delete {
    text-align: center;
}

div.form_area {
    margin-bottom: 30px;
}

#undercolumn_cart #deleteall {
	margin-bottom:10px;
	text-align:right;
}
#quantity_level li{
	display:inline-block;
	margin:0;
	padding:0;
}
#undercolumn_cart table td {
	vertical-align:middle;
}
#undercolumn_cart table td .suryo {
	margin-bottom:10px;
	font-weight:bold;
}
#undercolumn_cart th.name {
	text-align:left;
	background-color:#eee;
}
#undercolumn_cart td.kei {
	padding-bottom:30px;
}
#undercolumn_cart th.align {
	text-align:right;
}
#undercolumn_shopping .buy_w,
#undercolumn_cart .buy_w {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#undercolumn_shopping .buy_w .obf,
#undercolumn_cart .buy_w .obf {
  display: block;
  width: 25%;
}
#undercolumn_shopping .buy_w .obf img,
#undercolumn_cart .buy_w .obf img {
  margin: 0 auto;
  display: block;
  border: 1px solid #e4e4e4;
}
#undercolumn_shopping .buy_w p,
#undercolumn_cart .buy_w p{
  width: 73%;
  padding-right: 10px;
  text-align: left;
}
#undercolumn_shopping .plg_option,
#undercolumn_cart .plg_option{
  margin: 5px 0 0 5px;
}
#undercolumn_shopping .plg_option li,
#undercolumn_cart .plg_option li{
  margin-left: 1.5em;
  font-size: 90%;
  list-style-type: disc;
  line-height: 1.65em;
}
#undercolumn_shopping .plg_option li div,
#undercolumn_cart .plg_option li div{
  display: inline !important;
}

@media print, screen and (max-width: 767px) {
	#undercolumn_shopping td::before,
	#undercolumn_cart td::before {
	  content: attr(data-label);
	  display: block;
	  text-align: center;
	  color: #000;
	  font-weight: bold;
	}
	#undercolumn_shopping table.confirm,
	#undercolumn_shopping table.confirm tbody,
	#undercolumn_shopping table.confirm tr,
	#undercolumn_cart table,
	#undercolumn_cart table tbody,
	#undercolumn_cart table tr {
		display:block;
		border:none;
	}
	#undercolumn_shopping table.confirm thead,
	#undercolumn_cart thead {
		display:none;
	}
	#undercolumn_shopping table.confirm tr .sphone_none,
	#undercolumn_cart tr .sphone_none {
		display:none;
	}
	#undercolumn_shopping table.confirm .na,
	#undercolumn_cart .na {
		background:#f1f1f1;
	}
	#undercolumn_shopping table.confirm th,
	#undercolumn_shopping table.confirm td,
	#undercolumn_cart th,
	#undercolumn_cart td{
		display:list-item;
		border:none;
		padding:5px;
	}
	#undercolumn_shopping table.confirm th,
	#undercolumn_cart th{
		width: auto;
		list-style-type: none;
		background: none;
		font-weight: bold;
	}
	#undercolumn_shopping table.confirm td,
	#undercolumn_cart td {
		margin-bottom: 10px;
		padding-bottom: 20px;
		list-style-type: none;
		text-align:left;
		border-bottom:1px solid #f4f4f4;
	}
	#undercolumn_shopping table.confirm td.delete,
	#undercolumn_cart td.delete {
		margin-bottom: 5px;
		padding-bottom: 0px;
		border-bottom:none;
		text-align:left !important;
	}
	#undercolumn_shopping table.confirm .buy_w,
	#undercolumn_cart .buy_w {
		display: block;
		margin-top: 20px;
	}
	#undercolumn_shopping table.confirm .buy_w .na,
	#undercolumn_cart .buy_w .na{
		background: #ccc;
	}
	#undercolumn_shopping table.confirm .buy_w .obf,
	#undercolumn_cart .buy_w .obf {
		display: block;
		margin: 0 auto;
		width: 100%;
	}
	#undercolumn_shopping table.confirm .buy_w .obf img,
	#undercolumn_cart .buy_w .obf img{
		display: block;
		margin: 0 auto;
	}
	#undercolumn_shopping table.confirm .buy_w p,
	#undercolumn_cart .buy_w p{
		width: 100%;
		padding-right: 0px;
		text-align: left;
	}
	#undercolumn_shopping table.confirm td.kei,
	#undercolumn_shopping table.confirm td.alignR,
	#undercolumn_shopping table.confirm td.alignC,
	#undercolumn_cart td.kei ,
	#undercolumn_cart td.alignR ,
	#undercolumn_cart td.alignC {
		padding-bottom:10px;
		text-align:center;
	}
	#undercolumn_shopping table.confirm td.kei,
 	#undercolumn_cart td.kei  {
		margin-bottom:30px;
	}
	#undercolumn_shopping table.confirm td.sub::before,
	#undercolumn_shopping table.confirm td.fee::before,
	#undercolumn_cart td.sub::before {
	        content: attr(data-label);
	        display: inline-block;
	        width: 65px;
	        margin: 0 0 0;
	        text-align: left;
	        color: #000;
	        font-weight: bold;
	}
	#undercolumn_shopping table.confirm td.sub,
	#undercolumn_shopping table.confirm td.fee,
	#undercolumn_cart td.sub {
	        margin: 0 0;
		border-bottom:1px solid #fff;
		background:#e4e4e4;
	}
	#undercolumn_shopping table.confirm .sub_,
	#undercolumn_shopping table.confirm .fee_{
	        display: inline-block;
	        min-width: 80px !important;
		font-weight:bold;
	        text-align: right;
	        letter-spacing: -0.0em;
	}
	#undercolumn_shopping table.confirm td.total::before,
	#undercolumn_cart td.total::before {
	        content: attr(data-label);
	        display: inline-block;
	        margin: 0 35px 0 0;
	        padding: 8px 0;
	        text-align: center;
	        color: #fff;
	        font-weight: bold;
	}
	#undercolumn_shopping table.confirm td.total,
	#undercolumn_cart td.total {
	        margin: 0 0;
	        padding: 8px 0;
		border-bottom:none;
		background:#333;
		color:#fff;
		font-weight:bold;
	}
}

/* 購入手続き
----------------------------------------------- */
.container ul{
	width: 100%;
	margin: 0 auto;
}
.container li.add{
	float:left;
	width:98%;
	margin:10px 1%;
	padding:0 10px 10px 0;
	border:4px solid #eee;
	box-sizing: border-box;
}
.container li.add .imgarea{
	float:left;
	width:25%;
}
.container li.add .imgarea img{
	width:100%;
}
.container li.add .textarea{
	float:right;
	width:75%;
}
.container li.add .textarea .name{
	font-size:1.05em;
	font-weight:bold;
}
.container li.add .textarea .name .price{
	color:#b71c1c;
}
.container li.add .textarea .name .yen{
	margin-left:3px;
	font-size:0.8em;
	color:#b71c1c;
}
.container li.in{
	position:relative;
	float:left;
	width:98%;
	margin:10px 1%;
	padding:0 10px 10px 0;
	border:4px solid #eee;
	box-sizing: border-box;
}
.container li.in .over{
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	background:rgba(175,175,175,0.5);
}
.container li.in .over p{
	position: absolute;
	top: 40%;
	width: 100% ;	text-align: center;
}
.container li.in .over p span{
	padding:10px 10px;
	border:1px solid #aaa;
	background:rgba(255,255,255,0.9);
	font-weight:bold;
}
.container li.in .imgarea{
	float:left;
	width:25%;
}
.container li.in .imgarea img{
	width:100%;
}
.container li.in .textarea{
	float:right;
	width:75%;
}
.container li.in .textarea .name{
	font-size:1.05em;
	font-weight:bold;
}
.container li.in .textarea .name .price{
	color:#b71c1c;
}
.container li.in .textarea .name .yen{
	margin-left:3px;
	font-size:0.8em;
	color:#b71c1c;
}
@media print, screen and (min-width: 768px) {
	.container ul{
 		width: 100%;
 		display: flex;
 		flex-wrap: wrap;
 		margin: 0 auto;
	}
	.container li.add{
		width:31.333%;
		padding:0 1.5% 1.5%;
		border:4px solid #eee;
		box-sizing: border-box;
	}
	.container li.add .imgarea{
		float:none;
		margin:0 auto;
		width:50%;
	}
	.container li.add .imgarea img{
		margin:0 auto;
		display:block;
	}
	.container li.add .textarea{
		float:none;
		width:100%;
	}
	.container li.in{
		width:31.333%;
		padding:0 1.5% 1.5%;
		border:4px solid #eee;
		box-sizing: border-box;
	}
	.container li.in .imgarea{
		float:none;
		margin:0 auto;
		width:50%;
	}
	.container li.in .imgarea img{
		margin:0 auto;
		display:block;
	}
	.container li.in .textarea{
		float:none;
		width:100%;
	}
	.container li p{
		line-height:1.4em;
	}
	.container li .textarea .name{
		min-height:4.5em;
	}
}

.classlist .container ul{
	width: 100%;
	margin: 0 auto;
}
.classlist .container li.add{
	float:left;
	width:100%;
	margin:10px 0;
	padding:0 0 20px 0;
	border:none;
	border-bottom:1px dotted #ccc;
	box-sizing: border-box;
}
.classlist .container li.add .imgarea{
	float:left;
	width:28%;
}
.classlist .container li.add .imgarea img{
	width:80%;
}
.classlist .container li.add .textarea{
	float:right;
	width:69%;
	padding-right:3%;
}
.classlist .container li.add .textarea .name{
	font-size:1.05em;
	font-weight:bold;
}
.classlist .container li.add .textarea .name .price{
	color:#b71c1c;
}
.classlist .container li.add .textarea .name .yen{
	margin-left:3px;
	font-size:0.8em;
	color:#b71c1c;
}
.classlist .container li .textarea .name{
	min-height:initial;
	min-height:auto;
}
.classlist .container {
	margin:20px 0 0;
}
.classlist .container h3{
	margin-bottom:10px !important;
	padding-bottom:5px;
	font-size:18px;
	border-bottom:1px solid #c3c3c3;
}
.classlist .container h3 span.sup{
	display:block;
	font-size:15px;
	font-weight:normal;
}

/* ==============================================
▼ショッピングフロー
=============================================== */
.form-flow {
	width: 100%;
	margin: 20px auto;
	font-size: 0;
	line-height: 0;
	text-align: center;
}
.form-flow div {
	display: inline-block;
	position: relative;
	width: 55px;
	margin: 0 5px 0 0;
	font-size: 12px;
	letter-spacing: -0.1em;
	line-height: 2.5;
	color: #bfbfbf;
	white-space: nowrap;
	text-align: center;
	vertical-align: top;
}
.form-flow div:last-child {
	margin: 0;
}
.form-flow div span.num {
	position: relative;
	display: block;
	background: #bfbfbf;
	border: 1px solid #bfbfbf;
	width: 22px;
	height: 22px;
	margin: 0 auto;
	font-size: 15px;
	font-weight: bold;
	line-height: 18px;
	color: #fff;
	border-radius: 20px;
	z-index: 1;
}
.form-flow div span.num:after {
	position: absolute;
	top: 8px;
	left: 21px;
	content: "";
	width: 55px;
	border-top: 1px solid #bfbfbf;
	z-index: 0;
}
.form-flow div:last-child span.num:after {
	display: none;
}
.form-flow div.active span.num {
	background: #3e49ab;
	border: 1px solid #3e49ab;
	color: #fff;
}
.form-flow div span.text {
	display: none;
}
.form-flow div.active span.text {
	display: block;
	color: #3e49ab;
	font-weight: bold;
}

@media print, screen and (min-width: 768px) {
	.form-flow {
		width: 100%;
		margin: 40px auto;
		font-size: 0;
		line-height: 0;
		text-align: center;
	}
	.form-flow div {
		display: inline-block;
		position: relative;
		width: 150px;
		margin: 0 10px 0 0;
		font-size: 14px;
		letter-spacing: -0.0;
		line-height: 2.5;
		color: #bfbfbf;
		white-space: nowrap;
		text-align: center;
	}
	.form-flow div:last-child {
		margin: 0;
	}
	.form-flow div span.num {
		position: relative;
		display: block;
		background: #bfbfbf;
		border: 1px solid #bfbfbf;
		width: 22px;
		height: 22px;
		margin: 0 auto;
		font-size: 15px;
		font-weight: bold;
		line-height: 18px;
		color: #fff;
		border-radius: 20px;
		z-index: 1;
	}
	.form-flow div span.num:after {
		position: absolute;
		top: 8px;
		left: 20px;
		content: "";
		width: 151px;
		border-top: 1px solid #bfbfbf;
		z-index: 0;
	}
	.form-flow div span.text {
		display: block;
	}
}


/* お届け先の指定
----------------------------------------------- */
#undercolumn_shopping #address_area {
    margin-bottom: 15px;
}
#undercolumn_shopping #address_area .information {
}
#undercolumn_shopping #address_area .add_multiple {
    padding: 15px 2%;
    border: 1px solid #ccc;
    width: 94%;
	margin:0 auto;
	margin-bottom:20px;
    color: #555;
    background: #f7f7f7;
    text-align: center;
}
#address_area .add_multiple p {
    margin-bottom: 10px;
}
#address_area p.addbtn {
    font-weight: bold;
    font-size: 10px;
}
#undercolumn_shopping .tab_resp table.delive tr {
	margin-bottom:20px;
}
#undercolumn_shopping .tab_resp table.delive td {
	background-color:#f7f7f7;
}
#undercolumn_shopping .tab_resp a.delete {
	display:block;
	margin-top:-15px;
}

@media print, screen and (min-width: 460px) {
#address_area .add_multiple {
    float: right;
    width: 28%;
	margin-bottom:0;
}
#undercolumn_shopping .tab_resp table.delive tr {
	margin-bottom:0;
}
#undercolumn_shopping .tab_resp table.delive td {
	background-color:#fff;
}
#undercolumn_shopping .tab_resp a.delete {
	display: inline;
	margin-top:0;
}
}

/* お支払い方法・お届け時間等の指定
----------------------------------------------- */
div#undercolumn_shopping .pay_area {
    margin: 0 auto 30px;
    width: 100%;
}
div#undercolumn_shopping .pay_area02 {
    margin: 40px auto 30px auto;
}
div#undercolumn_shopping .pay_area02 .txtarea {
    margin: 5px 0 0 0;
    padding: 2px;
    border: 1px solid #ccc;
    width: 99%;
    height: 150px;
}
div#undercolumn_shopping .pay_area02 .select-msg {
    margin-bottom: 10px;
}
div#undercolumn_shopping .point_area {
    margin: 40px auto 0 auto;
}
div#undercolumn_shopping .point_area .point_announce {
}
div#undercolumn_shopping .point_area p {
    margin-bottom: 20px;
}
div#undercolumn_shopping .point_area .point_announce li {
    margin-bottom: 5px;
}
div#undercolumn_shopping table.payment a.sphone_none {
	display:none;
}
div#undercolumn_shopping .delivdate span {
	display:block;
	margin-bottom:10px;
}

@media print, screen and (min-width: 460px) {
div#undercolumn_shopping table.payment a.sphone_none {
	display: inline;
}
div#undercolumn_shopping table.payment a.pc_none {
	display:none;
}
div#undercolumn_shopping .delivdate span {
	display:inline;
	margin-bottom:0;
}
}

/* 入力内容のご確認
----------------------------------------------- */
div#undercolumn_shopping .tab_resp table.confirm td {
	vertical-align:middle;
}
div#undercolumn_shopping .tab_resp table.confirm td.kei {
	padding-bottom:20px;
}
div#undercolumn_shopping .tab_resp table.confirm th.align {
	text-align:left;
}

@media print, screen and (min-width: 460px) {
div#undercolumn_shopping .tab_resp table.confirm td.kei {
	padding-bottom:0;
}
div#undercolumn_shopping .tab_resp table.confirm th.align {
	text-align:right;
}
}

/* 会員登録をしないで購入
----------------------------------------------- */
#undercolumn_customer {
	margin-bottom:30px;
}


/* ==============================================
▼検索結果
=============================================== */
p.condition_area {
    margin: 0 auto;
    padding: 5px;
    border: solid 1px #333;
    width: 566px;
}

/* ==============================================
 FAQ
=============================================== */
#undercolumn_help {
    width:96%;
    margin:30px auto;
    padding:0 0;
}
#undercolumn_help .category_margin{
    margin:0 0;
    padding:40px 0 0 0;
}
#undercolumn_help .news_list{
    margin:20px auto;
    padding:0 0;
}
#undercolumn_help #news_navi {
    width: 100%;
    margin: 30px 0 0;
    padding: 0 0;
}
#undercolumn_help #news_navi h3.subtitle{
    margin:0 0 10px 0;
    padding:0 0 10px 0;
    font-size:1.05em;
    border-bottom:1px solid #0277bd;
}
#undercolumn_help #news_navi p{
    margin:0 0 15px 10px;
    padding:0 0 ;
    font-size:1.0em !important;
    line-height:1.55em;
}
#undercolumn_help #news_navi p a{
    text-decoration:none;
}
#undercolumn_help #news_navi p a:hover{
    text-decoration:underline;
}
#undercolumn_help #news_navi p.active{
    text-decoration:underline !important;
}
#undercolumn_help .help_list {
    width: 100%;
    margin: 0 0;
    padding: 0 0;
}
#undercolumn_help h3.faq_cat{
    margin:0 0 10px 0;
    padding:0 0 10px 0;
    font-size:102%;
    border-bottom:1px solid #0277bd;
}
dl.faq{
    padding:0 0;
    border-bottom:1px solid #eee;
}
dl.faq dt.title{
    position:relative;
    margin:0 0;
    padding:10px 45px 12px 35px;
    font-size: 96%;
    background: url("../img/icon/icon_q.svg") no-repeat 0px 10px;
    background-size: 25px 25px;
    cursor:pointer;
}
dl.faq dd.content{
    margin:0 0;
    padding:0 45px 12px 35px;
    font-size: 92%;
    background: url("../img/icon/icon_a.svg") no-repeat 0 0px;
    background-size: 25px 25px;
}
dl.faq dd.content img{
    max-width:100%;
    height:auto !important;
}
dl.faq dt:after{
    position: absolute;
    display: block;
    top: 18%;
    right: 10px;
    font-size: 28px;
    line-height: 1.0em;
}
dl.faq dt.ac::after{
    content: "－";
    color: #bdced8;
}
dl.faq dt::after{
    content: "＋";
    color: #bdced8;
}
@media print, screen and (min-width: 768px) {
	#undercolumn_help {
	    width:96%;
	    max-width:1120px;
	    margin:60px auto 20px;
	    padding:0 0;
	}
	#undercolumn_help .category_margin{
	    margin:0 0;
	    padding:50px 0 0 0;
	}
	#undercolumn_help .news_list{
	    margin:40px auto;
	    padding:0 0;
	}
	#undercolumn_help #news_navi {
	    float: right;
	    width: 22%;
	    margin: 0 0 30px 2%;
	    padding: 0 0;
	}
	#undercolumn_help #news_navi h3.subtitle{
	    margin:0 0 20px 0;
	    padding:0 0 20px 0;
	    font-size:1.20em;
	    border-bottom:1px solid #0277bd;
	}
	#undercolumn_help #news_navi p{
	    margin:0 0 15px 10px;
	    padding:0 0 ;
	    font-size:1.15em;
	    line-height:1.55em;
	}
	#undercolumn_help .help_list {
	    float: left;
	    width: 76%;
	    margin: 0 0 100px;
	    padding: 0 0;
	}
	#undercolumn_help h3.faq_cat{
	    margin:0 0 17px 0;
	    padding:0 0 17px 0;
	    font-size:128%;
	    border-bottom:1px solid #0277bd;
	}
	dl.faq{
	    padding:0 0;
	    border-bottom:1px solid #eee;
	}
	dl.faq dt.title{
	    position:relative;
	    margin:0 0;
	    padding:20px 60px 22px 40px;
	    font-size: 110%;
	    background: url("../img/icon/icon_q.svg") no-repeat 0px 16px;
	    background-size: 30px 30px;
	    cursor:pointer;
	}
	dl.faq dd.content{
	    margin:0 0;
	    padding:0 60px 22px 40px;
	    font-size: 98%;
	    background: url("../img/icon/icon_a.svg") no-repeat 0 0px;
	    background-size: 30px 30px;
	    line-height: 1.65em;
	}
	dl.faq dd.content img{
	    width:100%;
	}
	dl.faq dt:after{
	    position: absolute;
	    display: block;
	    top: 18px;
	    right: 14px;
	    font-size: 30px;
	    line-height: 1.0em;
	}
}

/* ==============================================
▼お問い合わせ
=============================================== */
#undercolumn_contact {
	margin-bottom:30px;
}
#undercolumn_contact .box380 {
	width:100%;
}
#undercolumn_contact input.box120 {
	display:block;
	width:100%;
	margin-bottom:10px;
}
#undercolumn_contact p.top a,
#undercolumn_contact p.top span {
	display:block;
}


@media print, screen and (min-width: 768px) {
#undercolumn_contact .box380 {
	width:380px;
}
#undercolumn_contact input.box120 {
	display: inline;
	width:120px;
	margin-bottom:0;
}
#undercolumn_contact p.top a,
#undercolumn_contact p.top span {
	display:inline;
}
}


/* ==============================================
▼採寸会保護者入力
=============================================== */
/* Top
----------------------------------------------- */
.btn-rounded{--mdb-btn-border-radius:10rem;border-radius:var(--mdb-btn-border-radius)}
.saisunkai .inputbox p {
	margin:10px 0;
}
.saisunkai .inputboxes {
	width:100%;
	margin:60px 0;
}
.grey800{
	background:#d4d4d4;
	border:3px solid #424242;
	color:#000 !important;
	font-weight:bold;
}
.red900{
	background:#fff;
	border:3px solid #b51601;
	color:#b51601 !important;
	font-weight:bold;
}
.saisunkai .inputboxes .btn{
    position:relative;
}
.saisunkai .inputboxes .btn.grey800::after{
    position:absolute;
    font-family: "FontAwesome";
    content:"\f054";
    color: #424242;
    font-size: 20px;
    top:24%;
    right:14px;
}
.saisunkai .inputboxes .btn.red900::after{
    position:absolute;
    font-family: "FontAwesome";
    content:"\f054";
    color: #b51601;
    font-size: 20px;
    top:24%;
    right:14px;
}
.grey800:hover{
	background:#424242;
	border:3px solid #424242;
	color:#fafafa !important;
	font-weight:bold;
}
.red900:hover{
	background:#b51601;
	border:3px solid #b51601;
	color:#fff !important;
	font-weight:bold;
}
.saisunkai .inputboxes .btn.grey800:hover::after{
    position:absolute;
    font-family: "FontAwesome";
    content:"\f054";
    color: #fafafa;
    font-size: 20px;
    top:24%;
    right:14px;
}
.saisunkai .inputboxes .btn.red900:hover::after{
    position:absolute;
    font-family: "FontAwesome";
    content:"\f054";
    color: #fff;
    font-size: 20px;
    top:24%;
    right:14px;
}
@media print, screen and (min-width: 768px) {
	.saisunkai .inputboxes {
		margin:120px 0 80px;
	}
	.saisunkai .inputboxes .btn.grey800::after,
	.saisunkai .inputboxes .btn.red900::after,
	.saisunkai .inputboxes .btn.grey800:hover::after,
	.saisunkai .inputboxes .btn.red900:hover::after{
	    font-size: 26px;
	    top:20%;
	    right:20px;
	}
	.saisunkai .inputbox p {
		text-align:center;
		margin:20px 0;
	}
}

.saisunkai .inputboxes table th{
    font-size: 140%;
    letter-spacing: 0.0em;
}
.saisunkai .inputboxes .fin::before{
   content: "";
   display: inline-block;
   width: 40px;
   height: 40px;
   background:url(../img/icon/fin.png);
   background-size: contain;
   vertical-align: middle;
}
.saisunkai .inputboxes .not::before{
   content: "";
   display: inline-block;
   width: 40px;
   height: 40px;
   background:url(../img/icon/not.png);
   background-size: contain;
   vertical-align: middle;
}
.saisunkai .inputboxes .not{
   color: #b51601;
}
@media print, screen and (min-width: 768px) {
	.saisunkai .inputboxes table{
	    border: none;
	    border-top: 1px solid #ccc;
	}
	.saisunkai .inputboxes table th,
	.saisunkai .inputboxes table td{
	    padding: 14px 0px;
	    border: none;
	    border-bottom: 1px solid #ccc;
	}
	.saisunkai .inputboxes table th{
	    width: 35%;
	    background: #fff;
	    font-size: 160%;
	}
	.saisunkai .inputboxes .fin::before{
	   width: 60px;
	   height: 60px;
	}
	.saisunkai .inputboxes .not::before{
	   width: 60px;
	   height: 60px;
	}
}

/* Table
----------------------------------------------- */
#undercolumn_contact.saisunkai {
	margin-top:40px;
}
.table_scroll{
	width:100%;
}
.table_scroll table {
  border-collapse: collapse;
  border-spacing: 0;
  width:100%;
  max-width: 1120px;
}
.table_scroll th, .table_scroll td {
  vertical-align: middle;
  padding: 6px 6px;
  border: 1px solid #ccc;
  font-size: 15px;
  letter-spacing: 0.0em;
}
.table_scroll th {
  background: #f0f0f0;
  text-align: center;
  font-weight: bold;
}
.table_scroll table .form-control {
  margin: 0 !important;
  padding: 0 !important;
}
.table_scroll table .form-control.top {
  margin-top: 5px !important;
}
td.fixed_name {
  padding: 10px 6px !important;
  background:#dadada ;
  font-size: 16px;
  font-weight: bold;
}
#undercolumn_contact.saisunkai h3.table_caption{
  font-size: 20px;
}
.s_confirm th{
  background: #dadada;
  text-align: center;
  font-weight: bold;
}
#undercolumn_contact.saisunkai .table_scroll input.alignR {
  padding: 0 6px !important;
}
@media print, screen and (max-width: 767px) {
	#undercolumn_contact.saisunkai {
		margin-top:20px;
	}
	.table_scroll td {
	  padding: 3px 3px !important;
	}
	.table_scroll th {
	  padding: 3px 0px !important;
	  letter-spacing: -0.05em !important;
	}
	td.fixed_name {
	  padding: 10px 3px !important;
	  background:#dadada ;
	  font-size: 16px;
	  font-weight: bold;
	}
	#undercolumn_contact.saisunkai h3.table_caption{
	  font-size: 18px;
	}
	.table_scroll input, .table_scroll select {
	  border-radius: 0;
	}
	.s_confirm th, .s_confirm td {
	  vertical-align: middle;
	  padding: 6px 2px;
	}
	.s_confirm{
	  letter-spacing: -0.01em;
	  font-size: 15px;
	}
	.s_confirm .alignR{
	  letter-spacing: -0.05em;
	}
}


/* 詳細
 ------------------------------------------------------------- */
#undercolumn .main_comment{
	font-size: 100%;
}
#undercolumn .main_comment .heading{
	margin-bottom: 0.5em;
	font-size: 100%;
	font-weight: bold;
}
#undercolumn .main_comment h3{
	margin-bottom:1.0em;
	font-size:110%;
	color:#384891;
}
#undercolumn .main_comment .product_detail{
	margin-top: 5px;
	font-size: 90%;
	font-weight: normal;
}
#undercolumn .main_comment .product_detail li{
	display:inline-block;
	margin:2px 0;
	padding:3px 6px;
	letter-spacing:0.0em;
	color:#384891;
	border:1px solid #384891;
}
#undercolumn .main_comment .product_detail li.option{
	color:#e3570b;
	border:1px solid #e3570b;
}
#undercolumn .main_comment .link-btn li{
	padding-left: 20px;
	background: url(../img/icon/icon-pdf.png) no-repeat;
	background-size: 22px;
}
#undercolumn #detailrightbloc .relative_cat {
	border-bottom:none;
}
#undercolumn #detailrightbloc .relative_cat dd {
	margin-bottom:3px;
}
#undercolumn #detailphotobloc{
	position:relative;
}
#undercolumn #detailphotobloc ul.status_icon li{
	margin:0;
	padding:0;
	width:85px;
	height:85px;
	line-height:85px;
	font-size:18px;
	font-weight:bold;
	letter-spacing:-0.2em !important;
}
#undercolumn #detailphotobloc ul.status_icon li:first-child {
	position: absolute;
	top: -25px;
	left: -15px;
}
#undercolumn #detailphotobloc ul.status_icon li:nth-child(2) {
	position: absolute;
	top: -25px;
	left: 70px;
}
#undercolumn .sub_area{
	font-size: 100%;
}
#undercolumn .sub_area h4{
	margin-bottom: 10px;
	padding: 0 0;
}
#undercolumn .sub_area p{
	margin-bottom: 10px;
}
#undercolumn .sub_area p.heading{
	font-size: 105%;
}
#undercolumn .sub_area .product_detail li{
	display:inline-block;
	margin:2px 0;
	padding:3px 6px;
	letter-spacing:0.0em;
	color:#384891;
	border:1px solid #384891;
}
#undercolumn .sub_area .tab_resp table{
	margin-bottom:20px;
}
#undercolumn .sub_area .tab_resp table th{
	width:15%;
	background:#ebeef8;
	text-align:center;
}
#undercolumn .sub_area .spec{
	margin:0 0;
}
#undercolumn .sub_area .spec li {
	display:inline-block;
	margin:0 10px 3px 0;
	padding:0 0 0 13px;
	background:url(../img/icon/point001.png) no-repeat 0 6px;
	font-size:95%;
	line-height:1.4em;
}
#undercolumn .sub_area table p {
	margin:0 0 3px 0;
	padding:0 0 0 13px;
	background:url(../img/icon/point001.png) no-repeat 0 6px;
	font-size:95%;
	line-height:1.45em;
}
#undercolumn .sub_area h4 {
	font-size:120%;
	font-weight:bold;
	color:#384891;
	letter-spacing:0.0em;
}
#undercolumn .sub_area div.list{
	margin-bottom: 20px;
}
#undercolumn .sub_area .list span{
	margin-right:14px;
	padding:0 0 0 18px;
	display:inline-block;
	font-size:110%;
	font-weight:bold;
	line-height:2.0em;
	background:url(../img/icon/point000.png) no-repeat 0 8px;
}
#undercolumn #detailarea .cart_area {

}
#undercolumn #detailarea .quantity {
	width:130px;
}
#undercolumn #detailarea .quantity .input-group .input-group-addon{
	width:auto;
	margin:0 0;
	padding:0 10px 0 0;
	font-size:13px;
	font-weight:bold;
	color:#000;
	background:none !important;
	border:none !important;
}
#undercolumn #detailarea .quantity .input-group input{
	width:80px ;
	text-align:center !important;
}
#undercolumn #detailarea .cartin{
	width:calc(100% - 130px);
}

@media only screen and (max-width: 767px) {
	#undercolumn #detailphotobloc {
	    width: 95%;
	    margin: 30px auto 0;
	    border: none;
	}
	#undercolumn #detailphotobloc ul.status_icon li{
		margin:0;
		padding:0;
		width:70px;
		height:70px;
		line-height:70px;
		font-size:15px;
		font-weight:bold;
		letter-spacing:-0.2em !important;
	}
	#undercolumn #detailphotobloc ul.status_icon li:first-child {
		position: absolute;
		top: -25px;
		left: -15px;
	}
	#undercolumn #detailphotobloc ul.status_icon li:nth-child(2) {
		position: absolute;
		top: -25px;
		left: 55px;
	}
	#undercolumn .sub_area{
		margin: 0 2.5% 30px;
	}
	#undercolumn .sub_area p{
		font-size:95%;
	}
	#undercolumn .sub_area .tab_resp table th{
		width:100%;
		background:#ccc;
		font-weight:bold;
	}
	#undercolumn #detailarea .quantity {
		float:left !important;
		margin:0 0 !important;
		padding:0 0 !important;
		width:90px;
	}
	#undercolumn #detailarea .quantity .form-group {
		margin:0 0 !important;
		padding:0 0 !important;
	}
	#undercolumn #detailarea .quantity .input-group input{
		width:50px !important;
		text-align:center !important;
	}
	#undercolumn #detailarea .cartin{
		float:right !important;
		margin:0 0 !important;
		padding:0 0 !important;
		width:calc(100% - 100px) !important;
	}
	#undercolumn .sub_area .list span{
		margin-right:14px;
		padding:0 0 0 18px;
		display:inline-block;
		font-size:105%;
		font-weight:bold;
		line-height:1.5em;
		background:url(../img/icon/point000.png) no-repeat 0 3px;
	}
}

.notes{
    margin-bottom:15px;
    padding:10px 10px 0 10px;
    border:2px solid #000;
    border-radius:10px;
}
.notes p.attention{
    margin-bottom:10px;
    color:#ff0000 !important;
    font-weight:bold;
    line-height:1.4em !important;
}


/* 同意して申し込む
----------------------------------------------- */
.kiyaku-check{
    border:1px solid #ff6699;
    margin:5px;
    padding:15px;
    background:#fdedf5;
    text-align:center;
}
.kiyaku-check p{
    margin-bottom:5px;
    letter-spacing:-0.05em;
    font-size:100%;
}
.kiyaku-check .btn-xs{
    padding-left:10px;
    padding-right:10px;
    font-size:85%;
    letter-spacing:0.0em;
    line-height:2.0em;
    border-radius:20px;
}
#supportkakunin2{
    border:1px solid #ff6699;
    margin:5px;
    padding:15px;
    background:#fdedf5;
    text-align:center;
}
#supportkakunin2 p{
    margin-bottom:5px;
    letter-spacing:-0.05em;
    font-size:100%;
}
#supportkakunin2 .btn-xs{
    padding-left:10px;
    padding-right:10px;
    font-size:85%;
    letter-spacing:0.0em;
    line-height:2.0em;
    border-radius:20px;
}
.koza-check{
    border:1px solid #9d2c3a;
    margin:5px;
    padding:15px;
    background:#fbf2f3;
    text-align:center;
}
.koza-check p{
    margin-bottom:5px;
    letter-spacing:-0.05em;
    font-size:100%;
}
.koza-check .btn-xs{
    padding-left:10px;
    padding-right:10px;
    font-size:85%;
    letter-spacing:0.0em;
    line-height:2.0em;
    border-radius:20px;
}

/* ==============================================
▼印鑑
=============================================== */
.inkan #detailarea .classlist_inkan {
    margin: 15px 0 15px 0;
    padding: 0 0;
    background:#fff;
}
.inkan #detailarea .classlist_inkan h3{
    margin: 30px 0 5px;
    padding: 5px 5px;
    font-size:15px;
    color:#fff;
    background:#3e49ab;
}
.inkan #detailarea .classlist_inkan ul li label{
    width:100%;
    cursor:pointer;
    margin:5px auto;
    padding:2px;
    border:2px solid #ccc;
    border-radius:5px;
    box-sizing: border-box;
}
.inkan #detailarea .classlist_inkan dl {
    width: 100%;
}
.inkan #detailarea .classlist_inkan dt {
    position: relative;
    margin: 20px 0 10px;
    padding: 0 0 5px 20px;
    color: #000;
    font-size: 16px;
    font-weight: bold;
    border-bottom: 1px solid #3e49ab;
}
.inkan #detailarea .classlist_inkan dt:before{
    content:  '';
    width: 15px;
    height: 15px;
    background-color:#3e49ab;
    display:  block;
    position:  absolute;
    left: 0px;
    bottom: 10px;
}
.inkan #detailarea .classlist_inkan dd{
    margin: 0 0;
    padding: 0 0;
    font-weight: bold;
}
.inkan #detailarea .classlist_inkan dd p{
    margin-bottom: 10px;
    font-weight: normal;
}
.inkan #detailarea .classlist_inkan dd .form-control{
    width: 90%;
    font-weight: normal;
}
.inkan #detailarea .classlist_inkan dl.discription {
    margin: -20px 0 0 0;
    padding: 0 0;
}
.inkan #detailarea .classlist_inkan dl.discription dt {
    margin: 0 0;
    padding: 0 0;
    border-bottom: none;
}
.inkan #detailarea .classlist_inkan dl.discription dt:before{
    content:  none !important;
}
.inkan #detailarea .classlist_inkan dl.discription dd {
    margin: 0 0;
    padding: 0 0;
    font-weight: normal;
}
.inkan #detailarea .classlist_inkan dd p.attention {
    margin-top: 5px;
    font-weight: bold;
    color: #ff0000;
}
.inkan #detailarea .classlist_inkan .clear {
    margin-bottom: 10px;
}
.inkan #detailarea .classlist_inkan dl dl.discription {
    position: relative;
    width: 100%;
    padding-top: 1.0em;
    border-top: none !important;
}
.inkan #detailarea .classlist_inkan dl dl.discription dt {
    clear: left;
    float: left;
    padding: 0;
    margin: 0 0 5px 5px;
    width: 80px;
    color: #000;
    border-top: none !important;
}
.inkan #detailarea .classlist_inkan dl dl.discription dd {
    margin: 0;
    margin-left: 85px;
    padding-top: 0;
    line-height: 1.3em;
    letter-spacing: 0.0em;
}
@media only screen and (min-width: 768px) {
	.inkan #detailarea .classlist_inkan {
	    margin: 20px 0 20px 0;
	    padding: 0 0;
	    background:#fff;
	}
	.inkan #detailarea .classlist_inkan h3{
	    margin: 30px 0 20px;
	    padding: 5px 10px;
	    font-size:18px;
	    color:#fff;
	    background:#3e49ab;
	}
	.inkan #detailarea .classlist_inkan ul li label{
	    float:left;
	    width:32%;
	    cursor:pointer;
	    margin:5px 0.5%;
	    padding:4px;
	    border:2px solid #ccc;
	    border-radius:5px;
	}
	.inkan #detailarea .classlist_inkan dl {
	    width: 100%;
	}
	.inkan #detailarea .classlist_inkan dt {
	    position: relative;
	    margin: 20px 0 10px;
	    padding: 0 0 5px 20px;
	    color: #000;
	    font-size: 16px;
	    font-weight: bold;
	    border-bottom: 1px solid #3e49ab;
	}
	.inkan #detailarea .classlist_inkan dt:before{
	    content:  '';
	    width: 15px;
	    height: 15px;
	    background-color:#3e49ab;
	    display:  block;
	    position:  absolute;
	    left: 0px;
	    bottom: 10px;
	}
	.inkan #detailarea .classlist_inkan dd{
	    margin: 0 0;
	    padding: 0 0;
	    font-weight: bold;
	}
	.inkan #detailarea .classlist_inkan dd p{
	    margin-bottom: 10px;
	    font-weight: normal;
	}
	.inkan #detailarea .classlist_inkan dd .form-control{
	    width: 360px;
	    font-weight: normal;
	}
	.inkan #detailarea .classlist_inkan dl.discription {
	    margin: -20px 0 0 0;
	    padding: 0 0;
	}
	.inkan #detailarea .classlist_inkan dl.discription dt {
	    margin: 0 0;
	    padding: 0 0;
	    border-bottom: none;
	}
	.inkan #detailarea .classlist_inkan dl.discription dt:before{
	    content:  none !important;
	}
	.inkan #detailarea .classlist_inkan dl.discription dd {
	    margin: 0 0;
	    padding: 0 0;
	    font-weight: normal;
	}
	.inkan #detailarea .classlist_inkan dd p.attention {
	    margin-top: 5px;
	}
	.inkan #detailarea .classlist_inkan .clear {
	    margin-bottom: 10px;
	}
	.inkan #detailarea .classlist_inkan dl dl.discription {
	    position: relative;
	    width: 100%;
	    padding-top: 1.0em;
	    border-top: none !important;
	}
	.inkan #detailarea .classlist_inkan dl dl.discription dt {
	    clear: left;
	    float: left;
	    padding: 0;
	    margin: 0 0 5px 5px;
	    width: 80px;
	    color: #000;
	    border-top: none !important;
	}
	.inkan #detailarea .classlist_inkan dl dl.discription dd {
	    margin: 0;
	    margin-left: 85px;
	    padding-top: 0;
	    line-height: 1.3em;
	    letter-spacing: 0.0em;
	}
}
