/*------------------------------ common setting ------------------------------*/
/*---------------------------------------
　common tag
---------------------------------------*/
main, article, aside, figure, footer, header, nav, section {
	display: block; /* for ie8 */
}
*{
	box-sizing: border-box;
	overflow-wrap: break-word;
}

#main h2:before{
	content: ''; 
	display: block; 
	position: absolute;
	top: 15px; 
	left: 20px;
	height: 10px; 
	width: 10px; 
	background: #e60012;
	border-radius: 50%;
}

h4{
	margin: 0 0 20px 0;
	padding: 0 0 0 25px;
	font-size: 1.8rem;
	line-height: 1.7;
	background: url(../../default/img/ico_check01.svg) 0 5px no-repeat;
}
h5,
h6{
	position: relative;
	margin: 0 0 10px 0;
	line-height: 1.7;
	color: #555;
}
h5:before,
h6:before{
	content: ''; 
	display: block; 
	position: absolute;
	left: 0;
	border-radius: 50%;
}
h5{
	padding: 0 0 0 15px;
	font-size: 1.7rem;
}
h5:before{
	top: 8px; 
	height: 8px; 
	width: 8px; 
	background: #2e3194;
}
h6{
	padding: 0 0 0 10px;
	font-size: 1.5rem;
}
h6:before{
	top: 10px; 
	height: 6px; 
	width: 6px; 
	background: #9193e4;
}

/* リンク指定 */
a{ color: #1d2088; text-decoration: none; }
a:hover, a:visited:hover{ color: #ffc000; text-decoration: underline; }

a:hover img{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}

/* 要素 */
img{
	border: 0;
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
p{
	margin: 0 0 20px 0;
	padding: 0;
}
ul,
ol{
	margin: 0 0 20px 30px;
	padding: 0;
}
ul{
	list-style-type: disc;
}
ul li ul{
	list-style-type: circle;
}
ol{
	list-style-type: decimal;
}
td ul,
td ol{
	margin-bottom: 0;
}
.nomark{
	margin: 0 0 20px 0;
	list-style-type: none;
}
hr{
	margin: 20px 0;
	padding: 0;
	border: 0;
	height: 1px;
	border-top: #ccc solid 1px;
	clear: both;
}
table{
	width: 100%;
	margin: 0 auto 20px auto;
	border-collapse: collapse;
	text-align: left;
	background: #fff;
	border: #ccc solid 1px;
}
thead th{
	padding: 20px 15px;
	font-weight: bold;
}
th,
td{
	padding: 10px 15px;
	vertical-align: top;
	font-weight: normal;
	text-align: left;
	border: #ccc solid 1px;
}
th{
	background: #f0f0f0;
}
.center_table{
	table-layout: fixed;
}
.center_table th,
.center_table td{
	text-align: center;
	vertical-align: middle;
}

/* 選択時のハイライトカラー */
::selection {
	background: #eee;
}
::-moz-selection {
	background: #eee;
}

/*---------------------------------------
　common class（ui）
---------------------------------------*/
/* clearfix */
.cf{ clear: both; }
.cf:before,
.cf:after{
	content: "";
	display: table;
}
.cf:after{ clear: both; }

/* Font */
.small{ font-size: 1.3rem; }
.s-big{ font-size: 1.7rem; }
.big{ font-size: 2.0rem; }
.red{ color: #900; }

/* .link, .dlink */
.link,
.dlink{
	position: relative;
	margin: 0;
	padding: 0 0 0 12px;
}
.link{
	text-decoration: underline;
}
.dlink{
	text-decoration: none;
}
.link:before,
.dlink:before{
	position: absolute;
	display: block;
	content: "";
	left: 0;
	width: 7px;
	height: 7px;
	border-top: 2px solid #1d2088;
	border-right: 2px solid #1d2088;
}
.link:before{
	top: 0.5em;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
	transform: rotate(45deg);
}
.dlink:before{
	top: 0.3em;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
	transform: rotate(135deg);
}
.link:hover:before,
.dlink:hover:before{
	border-color: #ffc000;
	text-decoration: underline;
}
.stus_info a[href$=".pdf"],
.stus_correct a[href$=".pdf"]{
	padding: 0 15px 0 0;
	background: url(../../default/img/ico_pdf.svg) 100% 5px no-repeat;
	background-size: 10px;
}

/* .position */
.center{
	margin: 0 auto 30px auto;
	text-align: center;
	clear: both;
}
.left,
.right{
	padding: 0;
	vertical-align: bottom;
}
.left{
	float: left;
	margin: 0 20px 20px 0;
	max-width: 40%;
}
.right{
	float: right;
	margin: 0 0 20px 20px;
}

/* .home */
.home{
	margin: 0 0 60px 0;
	padding: 0;
	font-size: 1.2rem;
	text-align: right;
}
.home a{
	position: relative;
	padding: 10px 10px 10px 25px;
	color: #fff;
	background: #1d2088;
	border-radius: 5px;
	transition: all .3s;
}
.home a:before{
	content: " ";
	position: absolute;
	top: 40%;
	left: 10px;
	height: 0;
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
	transform: rotate(45deg);
}
.home a:hover{
	color: #fff;
	background: #ffc000;
	text-decoration: none;
}

/* #btn_pagetop */
#btn_pagetop{
	position: fixed;
	bottom: 100px;
	right: 10px;
	z-index: 40;
}
#btn_pagetop a{
	display: block;
	width: 40px;
	height: 40px;
	padding: 0;
}
#btn_pagetop a:hover,
#btn_cartsquare a:hover{
	opacity: 1.0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	transition: .4s;
}
#btn_cartsquare{
	position: fixed;
	bottom: 55px;
	right: 10px;
	z-index: 40;
}
#btn_cartsquare a{
	display: block;
	width: 135px;
	height: 34px;
	padding: 0;
}
#btn_add{
	position: fixed;
	bottom: 20px;
	right: 10px;
	z-index: 40;
}
#btn_add a{
	display: block;
	width: 135px;
	height: 34px;
	padding: 0;
}

/* SP非表示 */
#openmenu,
#closemenu,
.globalbtn,
#foot_global,
#foot_globalsns,
#foottitle,
.head-p-sp{
	display: none;
}

/*---------------------------------------
　common class（page）
---------------------------------------*/
/* .price */
.price{
	margin: 0;
	padding: 0;
	line-height: 1.6;
	color: #f00;
}
.price .big{
	font-size: 140%;
	font-weight: bold;
}

/* .cnews */
.cnews{
	width: 940px;
	margin: 10px auto 20px auto;
	padding: 10px 20px 0 20px;
	font-size: 1.3rem;
	line-height: 1.7;
	color: #f00;
	border-top: #000 solid 2px;
	border-bottom: #000 solid 2px;
}
.cnews p{
	margin: 0 0 10px 0;
	padding: 0;
}

/* .caption */
.caption{
	margin: 5px 0;
	padding: 0;
	font-size: 1.3rem;
	line-height: 1.7;
	text-align: center;
	color: #555;
}

/* .flink */
.btn.flink{
	margin-top: 10px;
	padding: 20px 0 0 0;
	border-top: #ccc solid 1px;
}

/* .btn */
.btn{
	margin: 0 auto 40px auto;
	padding: 0;
	text-align: right;
}

.btn a:before,
.btn button:before{
	position: absolute;
	display: block;
	content: "";
	top: 40%;
	right: 20px;
	width: 7px;
	height: 7px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
	transform: rotate(45deg);
}
.btn.max{
	margin: 0 auto;
	text-align: center;
}
.btn.max a,
.btn.max button{
	width: 80%;
	font-size: 2.6rem;
}
.btn a:hover,
.btn button:hover{
	color: #fff;
	background: #febf00;
	background: -moz-linear-gradient(top, #febf00 0%, #dda600 100%);
	background: -webkit-linear-gradient(top, #febf00 0%,#dda600 100%);
	background: linear-gradient(to bottom, #febf00 0%,#dda600 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#febf00', endColorstr='#dda600',GradientType=0 );
	-webkit-box-shadow: inset 0 0 0 1px #ffce38;
	-moz-box-shadow: inset 0 0 0 1px #ffce38;
	box-shadow: inset 0 0 0 1px #ffce38;
	border-color: #ffc000;
}
.btn button.back,
.btn a.back{
	padding: 5px 30px;
	background: #c9c9c9;
	background: -moz-linear-gradient(top, #c9c9c9 0%, #afafaf 100%);
	background: -webkit-linear-gradient(top, #c9c9c9 0%,#afafaf 100%);
	background: linear-gradient(to bottom, #c9c9c9 0%,#afafaf 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#c9c9c9', endColorstr='#afafaf',GradientType=0 );
	-webkit-box-shadow: inset 0 0 0 1px #c9c9c9;
	-moz-box-shadow: inset 0 0 0 1px #c9c9c9;
	box-shadow: inset 0 0 0 1px #c9c9c9;
	border: #c9c9c9 solid 1px;
}
.btn button.back:before,
.btn a.back:before{
	content: none;
}
.btn button.back:hover,
.btn a.back:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
.btn.center{
	text-align: center;
}
td.btn{
	text-align: center;
	padding: 10px;
	background: #eee;
}
td.btn a{
	margin-bottom: 0;
}

/*---------------------------------------
　layout
---------------------------------------*/
html{
	width: 100%;
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body{
	width: 100%;
	margin: 0 auto;
	padding: 0;
	font-family: 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	font-size: 1.6rem;
	line-height: 2.0;
	color: #333;
	background: #fff;
}
#contents{
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}
.wrapper,
.container-fluid,
.inner{
	width: 1000px;
	margin: 0 auto;
	padding: 0;
	font-size: 1.5rem;
	text-align: left;
	clear: both;
}
.container-fluid{
	margin-top: 30px;
}
.theme_side_left #main{
	width: 730px;
	margin: 0;
	padding: 0;
}
.wrapper:before,
.wrapper:after{
	content: "";
	display: table;
}
.wrapper:after{ clear: both; }

#main_middle{
	margin-bottom: 20px;
}

/* section */
section{
	margin: 0 0 50px 0;
	padding: 0;
}
section section section{
	margin-bottom: 30px;
}

.sp_hide{
	display: block;
    float: right;
}
.pc_hide{
	display: none;
}

/*---------------------------------------
　#header
---------------------------------------*/

#headlogo{
	float: left;
	margin: 8px 20px 5px 0;
	padding: 0;
}
#headcopy{
	float: left;
	margin: 20px 0;
	padding: 0;
}

#hbtn_mypage,
#hbtn_user{
	margin: 0 0 5px 0;
	padding: 0;
}
#hbtn_mypage{
	float: left;
}
#hbtn_user{
	float: right;
}
#headcart{
	margin-top: 5px;
	padding: 0;
}
#headh{
	margin: 0;
	padding: 0;
}
#headship{
	margin: 0;
	padding: 0;
	font-size: 1.2rem;
	text-align: right;
}
#headship a{
	position: relative;
	margin: 0;
	padding: 0 0 0 8px;
}
#headship a:before{
	position: absolute;
	display: block;
	content: "";
	left: 0;
	width: 5px;
	height: 5px;
	border-top: 1px solid #1d2088;
	border-right: 1px solid #1d2088;
	top: 0.5em;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
	transform: rotate(45deg);
}
#headship a:hover:before{
	border-color: #ffc000;
	text-decoration: underline;
}

/*--------- #global ---------*/
#global{
	margin: 0;
	padding: 0;
	border-top: #eaeaea solid 1px;
	background: #ffffff;
	background: -moz-linear-gradient(top, #ffffff 0%, #ebebeb 100%);
	background: -webkit-linear-gradient(top, #ffffff 0%,#ebebeb 100%);
	background: linear-gradient(to bottom, #ffffff 0%,#ebebeb 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 );
}

#global li, #global_submenu li {
	display: inline-block;
	margin: 0;
	padding: 0;
	list-style-type: none;
}
#global_menu{
	float: left;
	font-weight: bold;
	display: table;
}
#global ul{
	margin: 0;
	padding: 8px;
	font-size: 1.6rem;
	font-weight: 600;
}
#global_menu .headhome{
	display: none;
}
#global_submenu{
	float: right;
	font-size: 1.2rem;
    margin: 0;
    padding: 5px;
}
#global .wrapper{
	position: relative;
	margin: 0 auto;
	padding: 0;
	text-align: center;
}

/*--------- .fixedglobal ヘッダーメニューの一部（）をスクロールで上部固定 ---------*/

.fixedglobal{
	position: fixed;
	top: 0;
	z-index: 1000;
	background: #fff;
}
#global.fixedglobal{
	width: 100%;
	height: 50px;
	position: fixed;
	top: 0;
	z-index: 1000;
	background: #fff;
	background: rgba(255, 255, 255, 0.9);
	border-bottom: #ccc solid 1px;
}
#global.fixedglobal .headhome{
	display: table-cell;
	padding-right: 10px;
}
#global.fixedglobal .headhome a,
#global.fixedglobal .headhome img{
	vertical-align: middle;
}


/*--------- #headsearch ---------*/
#headsearch .form-control{
	border: none;
	border-radius: 0 !important;
	height: initial;
	padding: 0 5px;
	width: initial;
	line-height: initial;
}
#headsearch{
	margin: 0;
	padding: 7px 0 0 5px;
	float: left;
	font-size: 1.2rem;
}
#headsearch form{
	width: 100%;
	padding: 0;
}
#header #searchform label,
#header #searchform select,
#header #searchform input,
#headsearch button{
	float: left;
	height: 31px;
}
#header #searchform label{
	margin: 0;
	padding: 5px 10px 0 0;
}
#header #searchform select{
	width: 150px;
    height: 33px;
    padding-right: 0;
    border: #ccc solid 1px;
    border-radius: 5px 0 0 5px !important;
    font-size: 1.2rem;
}
#header #searchform input{
	height: 31px;
	width: 220px;
	border-top: #ccc solid 1px;
	border-bottom: #ccc solid 1px;

}
#headsearch button{
	width: 100px;
	height: 31px;
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
	background: none;
	border: #ccc solid 1px;
	border-radius: 0 5px 5px 0;
	border-left: 0;
	box-sizing: content-box;
}

/*--------- .cmn_news ---------*/
.cmn_news_wrap{
	margin: 0;
	padding: 10px 0;
	background: #efefef;
}
.cmn_news{
	margin: 0 auto 10px auto;
	padding: 20px 20px 0 20px;
	font-size: 1.4rem;
	border: #f00 solid 1px;
	background: #fff;
}

/*---------------------------------------
　#footer
---------------------------------------*/
#footer{
	margin: 0;
	padding: 0;
	font-size: 1.2rem;
	line-height: 1.7;
	text-align: left;
	border: 0;
}
#footer section{
	margin-bottom: 0;
}
#footnav ul{
	margin: 0 0 30px 10px;
	padding: 0;
	text-align: left;
}
#footnav ul li,
#footnav ul li:first-child {
	display: block;
	margin: 0 0 4px 0;
	padding: 0;
}
#footer a,
#footer a:hover{
	color: #1d2088;
}
#footer .fmenu{
	float: left;
	margin: 0;
	padding: 0 10px 0 0;
	width: 25%;
	font-size: 1.2rem;
	line-height: 1.7;
}
#footer .fmenu a{
	position: relative;
	display: block;
	padding: 0 0 0 10px;
}


/*--------- #footcat ---------*/

#footcat h2{
	margin: 20px 0;
	padding: 0;
	font-size: 1.4rem;
	background: none;
	border: 0;
}
#footcat h3,
#footcat h4{
	background: none;
	border: 0;
}

#footcat h4{
	margin: 0 0 10px 0;
	padding: 0;
	font-size: 1.2rem;
}

/*--------- #footmenu ---------*/




/*--------- #fcopy ---------*/

#footlogo{
	float: left;
	margin: 0;
	padding: 0;
}
#copyright{
	float: right;
	margin: 20px 0;
	padding: 0;
}
#copyright small{
	font-size: 1.2rem;
}
#copyright a,
#copyright a:hover{
	color: #fff;
}

/*---------------------------------------
　#side_left
---------------------------------------*/
#side_left{
	width: 220px;
	margin: 0;
	padding: 0;
	font-size: 1.3rem;
	line-height: 1.6;
}

#side_left ul{
	margin: 0;
	padding: 0;
	list-style-type: none;
}
#side_left a{
	position: relative;
	display: block;
}

/*--------- #category ---------*/

#category ul{
	margin: 10px;
	padding: 0;
	background: #fff;
	box-shadow: 0px 0px 4px 0px #7a7a7a;
}
#category .submenu a:hover{
	color: #ffc000;
}

/* .submenu */
#category .submenu{
	margin: 0;
	padding: 0;
	box-shadow: none;
}
#category .submenu li{
	border-top: #e4e4e4 solid 1px;
}

/*----- .cat_level_1（親カテゴリ） -----*/
#category .cat_level_1{
	padding: 20px 15px;
	font-weight: bold;
	color: #fff;
	background: #63cae0;
	background: -moz-linear-gradient(top, #63cae0 0%, #56afc2 100%);
	background: -webkit-linear-gradient(top, #63cae0 0%,#56afc2 100%);
	background: linear-gradient(to bottom, #febf00 0%,#e4ac00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#63cae0', endColorstr='#56afc2',GradientType=0 );
}
#category .cat_level_1:hover{
	color: #fff;
	background: #ffc000;
	background: -moz-linear-gradient(top, #ffc000 0%, #dda600 100%);
	background: -webkit-linear-gradient(top, #ffc000 0%,#dda600 100%);
	background: linear-gradient(to bottom, #ffc000 0%,#dda600 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc000', endColorstr='#dda600',GradientType=0 );
}

#category #catid0 .cat_level_1{
	background: #ffce38;
	background: url(../../default/img/sidecat_ico01.png), -moz-linear-gradient(top, #ffce38 0%, #e4ac00 100%);
	background: url(../../default/img/sidecat_ico01.png), -webkit-linear-gradient(top, #ffce38 0%,#e4ac00 100%);
	background: url(../../default/img/sidecat_ico01.png), linear-gradient(to bottom, #ffce38 0%,#e4ac00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffce38', endColorstr='#e4ac00',GradientType=0 );
}

#category #catid0 .cat_level_1:hover{
	background: #ffc000;
	background: url(../../default/img/sidecat_ico01.png), -moz-linear-gradient(top, #ffc000 0%, #dda600 100%);
	background: url(../../default/img/sidecat_ico01.png), -webkit-linear-gradient(top, #ffc000 0%,#dda600 100%);
	background: url(../../default/img/sidecat_ico01.png), linear-gradient(to bottom, #ffc000 0%,#dda600 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc000', endColorstr='#dda600',GradientType=0 );
}

#category #catid1 .cat_level_1{
	background: #ffce38;
	background: url(../../default/img/sidecat_ico03.png), -moz-linear-gradient(top, #ffce38 0%, #e4ac00 100%);
	background: url(../../default/img/sidecat_ico03.png), -webkit-linear-gradient(top, #ffce38 0%,#e4ac00 100%);
	background: url(../../default/img/sidecat_ico03.png), linear-gradient(to bottom, #ffce38 0%,#e4ac00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffce38', endColorstr='#e4ac00',GradientType=0 );
}

#category #catid1 .cat_level_1:hover{
	background: #ffc000;
	background: url(../../default/img/sidecat_ico03.png), -moz-linear-gradient(top, #ffc000 0%, #dda600 100%);
	background: url(../../default/img/sidecat_ico03.png), -webkit-linear-gradient(top, #ffc000 0%,#dda600 100%);
	background: url(../../default/img/sidecat_ico03.png), linear-gradient(to bottom, #ffc000 0%,#dda600 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc000', endColorstr='#dda600',GradientType=0 );
}

#category #catid2 .cat_level_1{
	background: #ffce38;
	background: url(../../default/img/sidecat_ico02.png), -moz-linear-gradient(top, #ffce38 0%, #e4ac00 100%);
	background: url(../../default/img/sidecat_ico02.png), -webkit-linear-gradient(top, #ffce38 0%,#e4ac00 100%);
	background: url(../../default/img/sidecat_ico02.png), linear-gradient(to bottom, #ffce38 0%,#e4ac00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffce38', endColorstr='#e4ac00',GradientType=0 );
}

#category #catid2 .cat_level_1:hover{
	background: #ffc000;
	background: url(../../default/img/sidecat_ico02.png), -moz-linear-gradient(top, #ffc000 0%, #dda600 100%);
	background: url(../../default/img/sidecat_ico02.png), -webkit-linear-gradient(top, #ffc000 0%,#dda600 100%);
	background: url(../../default/img/sidecat_ico02.png), linear-gradient(to bottom, #ffc000 0%,#dda600 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffc000', endColorstr='#dda600',GradientType=0 );
}


#category #catid0 .cat_level_1,
#category #catid0 .cat_level_1:hover,
#category #catid2 .cat_level_1,
#category #catid2 .cat_level_1:hover,
#category #catid1 .cat_level_1,
#category #catid1 .cat_level_1:hover{
	background-repeat: no-repeat;
	background-position: 100% 50%;
	background-size: 200px, 100%;
}

/*----- .cat_level_2（子カテゴリ） -----*/
#category .cat_level_2,
#category .cat_level_2:hover{
	padding: 8px 25px 8px 8px;
	color: #1d2088;
	background: #ffffff;
	background: -moz-linear-gradient(top, #ffffff 1%, #ebebeb 100%);
	background: -webkit-linear-gradient(top, #ffffff 1%,#ebebeb 100%);
	background: linear-gradient(to bottom, #ffffff 1%,#ebebeb 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 );
	border-left: #ccc solid 6px;
	z-index: 0;
}
#category #catid7 a{
	border-color: #ffbae7;
}
#category #catid8 a{
	border-color: #e0b4f9;
}
#category #catid4 a{
	border-color: #ffb4b4;
}
#category #catid3 a{
	border-color: #f1c697;
}
#category #catid9 a{
	border-color: #ffe59e;
}
#category #catid10 a{
	border-color: #eeff9f;
}
#category #catid11 a{
	border-color: #c9ff9d;
}
#category #catid12 a{
	border-color: #9effae;
}
#category #catid13 a{
	border-color: #98ffe6;
}
#category #catid14 a{
	border-color: #a1e6ff;
}
#category #catid15 a{
	border-color: #bcd7ff;
}
#category #catid16 a{
	border-color: #e0bbff;
}
#category #catid97 a{
	border-color: #cbb2f1;
}
#category #catid101 a{
	border-color: #98aef5;
}
#category .ac_ico_2{
	position: relative;
	z-index: 0;
}
#category #catid126 a{
	border-color: #ffbae7;
}
#category .ac_ico_2:after{
	position: absolute;
	display: block;
	content: "";
	top: 15px;
	left: 90%;
	width: 7px;
	height: 7px;
	border-top: 2px solid #1d2088;
	border-right: 2px solid #1d2088;
	-webkit-transform: rotate(135deg);
	-moz-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
	transform: rotate(135deg);
	z-index: 10;
}
#category .ac_ico_2:hover:after{
	border-color: #ffc000;
	text-decoration: underline;
}
#category #catid101:after,
#category #catid126:after,
#category #catid16:after{
	content: none;
}
#category .ac_trigger_2{
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: calc(100% - 30px);
	min-width: 30px;
	min-height: 35px;
	z-index: 100;
	cursor: pointer;
}

/*----- .cat_level_3（孫カテゴリ） -----*/
#category .sub2{
	display: none;
}
#category .cat_level_3{
	padding: 8px 15px;
	font-weight: normal;
	border-left: 0;
}
/*----- .cat_level_4（孫カテゴリ） -----*/

#category .cat_level_4{
	padding: 8px 15px 8px 25px;
	font-weight: normal;
	border-left: 0;
}
/*--------- .smenu ---------*/
#side_left .smenu{
	margin: 0 0 20px 0;
	padding: 0;
	border: #e4e4e4 solid 1px;
}
#side_left .smenu ul{
	margin: 15px;
	padding: 0;
}
#side_left .smenu li{
	margin: 5px 0;
	padding: 0;
}
#side_left .smenu{
	margin: 0 0 20px 0;
	padding: 0;
	border: #e4e4e4 solid 1px;
}
#side_left .smenu a{
	margin: 0;
	padding: 0 0 0 10px;
}
#side_left .smenu a:before{
	position: absolute;
	display: block;
	content: "";
	left: 0;
	width: 5px;
	height: 5px;
	border-top: 1px solid #1d2088;
	border-right: 1px solid #1d2088;
	top: 0.6em;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
	transform: rotate(45deg);
}
#side_left .smenu a:hover:before{
	border-color: #ffc000;
	text-decoration: underline;
}

/*--------- .sbnr ---------*/
.sbnr{
	margin: 0 auto 15px auto;
	padding: 0;
	text-align: center;
}
.sbnr_2block{
	display: flex;
	flex-wrap:wrap;
}
.sbnr_2block li {
	width: calc(100%/2);/*←画像を横に2つ*/
	padding: 10px 20px;/*←画像余白*/
	box-sizing:border-box;
}
.sbnr_2block li img {
	max-width:80%;
	height: auto;
}


/*------------------------------ page setting ------------------------------*/
/*---------------------------------------
　#topimage_slider
---------------------------------------*/
#topimage_slider *{
	width: initial;
	height: initial;
	max-width: initial;
	max-height: initial;
}
#topimage_slider{
	position: relative;
	width: 100%;
	margin: 0 auto 30px auto;
	padding: 30px 0;
	background: #f8fce8;
	background: url(../../default/img/topimage_bg01.png) left top repeat-x,
	url(../../default/img/topimage_bg02.png) left bottom repeat-x #f8fce8;
}
#topimage_slider_inner{
	width: 1000px;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0;
}

/* スライド画像 */
div#topimage_inner{
	position: relative;
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
#topslider{
	width: calc(100% - 50px);
	margin: 0 auto;
}
.slidebox{
	margin: 0 10px;
}

/* 矢印 */
#slick-arrows_topslider{
	position: absolute;
	top: 0;
	width: 100%;
	height: 330px;
}
#topimage_slider .slick-prev,
#topimage_slider .slick-next{
	position: absolute;
	top: 0;
	width: 25px;
	height: 330px;
	background-size: 100%;
	transform: none;
}
#topimage_slider .slick-prev{
	left: 0;
}
#topimage_slider .slick-next{
	right: 0;
}
#topimage_slider .slick-prev:before,
#topimage_slider .slick-next:before {
	font-size: 0;
}
#topimage_slider .slick-prev{
	background: url(../../default/img/topimage_nav_prev_y.png) 0 0 no-repeat;
}
#topimage_slider .slick-prev:hover{
	background: url(../../default/img/topimage_nav_prev_y_on.png) 0 0 no-repeat;
}
#topimage_slider .slick-next{
	top: 0;
	background: url(../../default/img/topimage_nav_next_y.png) 0 0 no-repeat;
}
#topimage_slider .slick-next:hover{
	background: url(../../default/img/topimage_nav_next_y_on.png) 0 0 no-repeat;
}

/*---------------------------------------
　#index
---------------------------------------*/
/*-------- .itemlist --------*/
.itemlist div{
	box-sizing: content-box;
}
.itemlist{
	overflow: hidden;
	width: 730px;
	margin: 0;
	padding: 0;
}
.itemarea{
	width: 745px;
	margin: 0 -15px 45px 0;
	padding: 0;
}
.itembox{
	float: left;
	width: 134px;
	margin: 0 15px 15px 0;
	padding: 0;
}
.itembox_photo{
	margin: 0 0 5px 0;
	height: 190px;
	padding: 0;
}
.itembox_photo img{
	max-width: 100%;
}
.itembox h3{
	margin: 0;
	padding: 0;
	height: 50px;
	font-size: 1.2rem;
	font-weight: normal;
	background: none;
	border: 0;
}

/*-------- #news_area --------*/
#news_area{
	margin: 0 0 40px 0;
	padding: 10px 0;
	font-size: 1.4rem;
	background: #efefef;
	border: #ccc solid 1px;
}
.newslist dl{
	margin: 0 20px;
	border: 0;
	clear: both;
}
.newslist dt{
	position: relative;
	padding: 0;
	cursor: pointer;
}
.newslist dt:hover .news_title {
	text-decoration: underline;
}
.newslist dt .cb{
	position: relative;
	top: -1px; left: 5px;
	fill: #1d2088;
	font-weight: normal;
	font-size: 1.4rem;
}
.newslist dt.active .cb {
	position: relative;
	top: -2px;
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
	transform: rotate(180deg);
}
.newslist dt:hover .cb {
	opacity: 0.8;
}
.newslist dt span {
	display: block;
}
.newslist dt span.date {
	width: 8em;
}
.newslist dt .angle-circle{
	position: absolute;
	display: inline-block;
	top: 0;
	right: 0;
	width: 14px;
	height: 14px;
	background: none;
}
.newslist dd{
	display: none;
	margin: 0 0 10px 0;
	color: #777;
}

/*-------- #sales_ranking --------*/
#sales_ranking .rankarea{
	max-width: initial;
}
#sales_ranking{
	overflow: hidden;
	width: 730px;
	margin: 0;
	padding: 0;
}
.rankarea{
	width: 732px;
	margin: 0 -2px 20px 0;
	padding: 0;
}
#sales_ranking .rank{
	float: left;
	margin: 0 2px 2px 0;
	padding: 5px;
	border: #ccc solid 1px;
}
#rank1,
#rank2{
	width: 364px;
	font-size: 2.0rem;
}
#rank3,
#rank4,
#rank5{
	width: 242px;
	font-size: 1.3rem;
}
#sales_ranking .item_photo{
	float: left;
	margin: 0 10px 0 0;
}
#sales_ranking img{
	max-width: 100%;
}
#sales_ranking .item_photo{
	width: 80px;
}
#sales_ranking .item_photo img{
	outline: #eee solid 1px;
}
#sales_ranking #rank1 .item_photo,
#sales_ranking #rank2 .item_photo{
	width: 130px;
}
#sales_ranking h3{
	margin: 0;
	padding: 0;
	font-weight: normal;
	background: none;
	border: 0;
}
#sales_ranking h3{
	font-size: 1.2rem;
}
#sales_ranking #rank1 h3,
#sales_ranking #rank2 h3{
	font-size: 1.5rem;
}
.rank_ico{
	display: inline-block;
	margin: 0 0 5px 0;
	padding: 0 10px;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	line-height: 1.7;
	color: #fff;
	background: #7eb898;
}
.rank_ico1,
.rank_ico2{
	margin: 0 0 10px 0;
	padding: 0 15px;
}
.rank_ico1{
	background: #decc00;
}
.rank_ico2{
	background: #b5b4a5;
}
.rank_ico3{
	background: #d0a27a;
}

/*-------- .page_sales_ranking#sales_ranking --------*/
.page_sales_ranking#sales_ranking .rank{
	float: none;
	margin: 0 0 20px 0;
	padding: 10px;
}
.page_sales_ranking#sales_ranking #rank1,
.page_sales_ranking#sales_ranking #rank2,
.page_sales_ranking#sales_ranking #rank3,
.page_sales_ranking#sales_ranking #rank4,
.page_sales_ranking#sales_ranking #rank5{
	width: 100%;
	font-size: 1.4rem;
}
.page_sales_ranking#sales_ranking .item_photo,
.page_sales_ranking#sales_ranking #rank1 .item_photo,
.page_sales_ranking#sales_ranking #rank2 .item_photo{
	width: 200px;
	margin-right: 20px;
}
.page_sales_ranking#sales_ranking .rank_ico{
	margin: 0 0 5px 0;
	padding: 0 10px;
}
.page_sales_ranking#sales_ranking h3{
	font-size: 1.6rem;
	font-weight: bold;
	margin-bottom: 5px;
}

/*-------- .monthly_pick --------*/
.monthly_pick{
	margin: 0 0 20px 0;
	padding: 20px;
	background: #ffffe7;
	border: #ccc solid 3px;
}
.monthly_pick h3{
	margin: 0 0 5px 0;
	padding: 0 0 10px 35px;
	font-size: 1.7rem;
	background: url(../../default/img/ico_cal.svg) 0 0 no-repeat;
	border: 0;
}
.monthly_pick table,
.monthly_pick th,
.monthly_pick td{
	vertical-align: middle;
	background: none;
	border: 0;
	border-collapse: separate;
	border-spacing: 0px 5px;
}
.monthly_pick th{
	width: 8em;
	padding: 0 5px;
	color: #fff;
	text-align: center;
	background: #1d2088;
	border-radius: 5px;
}
.monthly_pick td{
	padding: 0 0 0 20px;
}
.monthly_pick p{
	margin: 0;
}

/*-------- #tqua --------*/
#tqua{
	margin-bottom: 20px;
}
#tqua #searchform{
	display: flex;
	align-items: center;
	margin: 0 auto;
	padding: 0;
}
#tqua #searchform *{
	border: 0;
	outline: 0;
	box-sizing: border-box;
}
#tqua #searchform {
	margin: 0 auto;
	padding: 0;
	height: 40px;
	border: #ccc solid 1px;
	border-radius: 5px;
}
#tqua #searchform select,
#tqua #searchform input[type="search"] {
	height: 38px;
}
#tqua #searchform select {
	max-width: 40%;
}
#tqua #searchform input[type="search"] {
	flex-grow: 2;
	border-radius: 0 !important;
	border-left: #ccc solid 1px;
}
#tqua #searchform button[type="submit"] {
	width: 119px;
	height: 38px;
	padding: 0;
	background: none;
}

/*-------- #topcat --------*/
.topcat01 .bnr{
	margin: 0;
	padding: 0;
}
.topcat01 .bnr .left{
	max-width: initial;
	width: 350px;
	margin-bottom: 0;
}
.topcat01 h3,
.topcat01 .bnr p{
	overflow: hidden;
	margin: 0;
}
.topcat01 h3{
	margin: 0 0 5px 0;
	padding: 0;
	font-size: 1.7rem;
	border: 0;
}

.topcat01 h3 a,
.topcat01 h4 a{
	display: block;
	position: relative;
	padding: 0 0 0 12px;
}
.topcat01 h3 a:before,
.topcat01 h4 a:before{
	position: absolute;
	display: block;
	content: "";
	top: 0.5em;
	left: 0;
	width: 7px;
	height: 7px;
	border-top: 2px solid #1d2088;
	border-right: 2px solid #1d2088;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
	transform: rotate(45deg);
}
.tcatbox:hover a{
	color: #ffc000;
}
.topcat01 h3 a:hover:before,
.tcatbox:hover h4 a:before{
	border-color: #ffc000;
}

.topcat01 {
    margin: 0 0 20px 0;
    padding: 10px;
    background: #ffffe7;
    border: #e4e4e4 solid 1px;
}

.tcatbox {
    /* float: left; */
    width: calc(100% / 3 - 10px);
    /* width: 216px; */
    margin: 0 10px 10px 0;
    padding: 9px;
    border: #ccc solid 1px;
    border-radius: 5px;
    background: #ffffff;
    background: -moz-linear-gradient(top, #ffffff 0%, #eeeeee 100%);
    background: -webkit-linear-gradient(top, #ffffff 0%,#eeeeee 100%);
    background: linear-gradient(to bottom, #ffffff 0%,#eeeeee 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#eeeeee',GradientType=0 );
    box-shadow: 1px 1px 0px 1px #9c9c9c;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.tcatbox:hover{
	border-color: #ffcc00;
}

.tcatarea {
    max-width: initial;
    /* width: 0px; */
    margin: 6px -10px 0 0;
    /* padding: 10px; */
    /* display: flex; */
    /* flex-wrap: wrap; */
    /* justify-content: flex-start; */
    /* flex-direction: row; */
    display: flex;
    flex-wrap: wrap;
}

.topcat01 h4{
	margin: 0;
	padding: 0;
	font-size: 1.5rem;
	border: 0;
	background: none;
	line-height: 1.4;
}

.tcatbox .ico{
	width: 60px;
	min-width: 60px;
	margin: 0 10px 0 0;
}

/*-------- .c2_area --------*/
.c2_area{
	max-width: initial;
	width: 760px;
	margin: 0 0 0 -4px;
	padding: 0;
}
.c2_bnr{
	float: left;
	width: 350px;
	margin: 0 30px 30px 0;
	padding: 0;
}
.c2_bnr h3{
	margin: 5px;
	padding: 0;
	font-size: 1.5rem;
	font-weight: normal;
	background: none;
	border: 0;
}
.c2_bnr h3 .link:before{
	width: 5px;
	height: 5px;
	border-top: 1px solid #1d2088;
	border-right: 1px solid #1d2088;
}
.c2_bnr h3 .link:hover:before{
	border-color: #ffc000;
}

.c2_categorybnr {
    float: left;
    width: 356px;
    margin: 10px 0px;
    padding: 0;
}

/*-------- #voice --------*/
.voice_wrap{
	position: relative;
	margin: 20px 0 20px 0;
	padding: 18px;
	background: #fbfbaf;
}
.voice_wrap h3{
	position: relative;
	top: -30px;
	left: 0;
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
}
.voice_wrap .border_box{
	margin-bottom: 10px;
	border: none;
}
.voice_wrap .name{
	text-align: right;
}
.voice_wrap .btn{
	margin-bottom: 0;
}

/*---------------------------------------
　.mokuji, .border_box
---------------------------------------*/
.mokuji,
.border_box{
	margin: 0 0 50px 0;
	padding: 20px 25px 0 25px;
	background: #fff;
	border: #ccc solid 1px;
}
.border_box_reddouble{
	margin: 0 0 50px 0;
	padding: 20px 25px 0 25px;
	border: double #ff0000 5px;
}
.mokuji{
	padding-bottom: 20px;
}
.mokuji h3{
	margin: 0 0 20px 0;
	padding: 0 0 0 25px;
	font-size: 1.9rem;
	line-height: 1.7;
	background: url(../../default/img/ico_check01.svg) 0 5px no-repeat;
	border: 0;
}
.mokuji h4{
	margin-bottom: 5px;
	padding: 10px 20px;
	background: #eee;
}
.mokuji section{
	margin-bottom: 20px;
}
.mokuji ul,
.mokuji ol{
	margin: 0;
	list-style-type: none;
}
.mokuji ul + ul,
.mokuji ol + ol{
	margin-bottom: 0;
}
.mokuji li{
	padding: 8px 20px;
}
.mokuji li + li{
	border-top: #ccc solid 1px;
}
.mokuji a{
	display: block;
}

/*---------------------------------------
　.topnav
---------------------------------------*/
.topnav{
	margin: 0 0 40px 0;
	padding: 20px;
	background: #efefef;
}
.topnav ul{
	margin: 0 auto;
	padding: 0;
	text-align: center;
	list-style-type: none;
}
.topnav li{
	display: inline-block;
	margin: 0;
	padding: 0 15px;
}
.topnav a{
	text-decoration: none;
}

/*---------------------------------------
　.topnav　左寄せ
---------------------------------------*/

.topnav_left{
	margin: 0 0 40px 0;
	padding: 20px;
	background: #efefef;
}
.topnav_left ul{
	margin: 0 auto;
	padding: 0;
	text-align: left;
	list-style-type: none;
}
.topnav_left li{
	display: inline-block;
	margin: 0;
	padding: 0 15px;
}
.topnav_left a{
	text-decoration: none;
}
a.anchor {
    display: block;
    padding-top: 100px;
    margin-top: -100px;
}

/*---------------------------------------
　.sticky_table
---------------------------------------*/
.sticky_table{
	width: 100%;
}
.sticky_table thead th,
.sticky_table tbody td{
	width: 43%;
}
.sticky_table thead th.null,
.sticky_table tbody th{
	width: 14%;
}

/*------------------------------ user_data ------------------------------*/
/*---------------------------------------
　#page_help_tradelaw
---------------------------------------*/
#page_help_tradelaw tbody th{
	width: 20%;
}

/*---------------------------------------
　.about_org
---------------------------------------*/
.about_org tbody th{
	width: 20%;
}

/*---------------------------------------
　.pastque
---------------------------------------*/
.c3{
	margin: 0 auto 40px auto;
	padding: 0;
}
.c3 .area{
	width: 720px;
	margin: 0 auto 0 20px;
	padding: 0;
}
.c3 .area .left{
	width: 220px;
}
.pastque tbody th{
	width: 60%;
}
.pastque tbody td{
	vertical-align: middle;
	text-align: center;
}

/*---------------------------------------
　.stus_correct
---------------------------------------*/
.stus_correct th,
.stus_correct td{
	vertical-align: middle;
}
.stus_correct thead th:nth-child(1){
	width: 15%;
}
.stus_correct thead th:nth-child(2){
	width: 50%;
}
.stus_correct thead th:nth-child(3){
	width: 20%;
}
.stus_correct thead th:nth-child(4){
	width: 15%;
}

/*---------------------------------------
　.nq（資格概要）
---------------------------------------*/
.gkname_block{
	margin-top: 40px;
}

/*---------------------------------------
　.proskills（技能士の活躍）
---------------------------------------*/
.proskills h4{
	overflow: hidden;
}
.proskills .name{
	text-align: right;
}

/*---------------------------------------
　.cont_stepup（キャリア形成ステップアップチャート）
---------------------------------------*/
.cont_stepup th,
.cont_stepup td{
	padding: 10px;
}
.cont_stepup td{
	background: #ffffe8;
}
.cont_stepup .box{
	margin: 0;
	padding: 10px 15px;
	background: #fff;
	border: #b8b9e4 solid 1px;
	border-right: #b8b9e4 solid 2px;
	border-bottom: #b8b9e4 solid 2px;
	border-radius: 5px;
}
.cont_stepup .box + .box{
	margin-top: 10px;
}
.cont_stepup table + table{
	margin-top: 40px;
}
.cont_stepup thead th{
	font-size: 120%;
	padding: 20px 10px;
	border-top: #1d2088 solid 3px;
}
.cont_stepup tbody th{
	width: 20%;
	font-weight: bold;
}

/*---------------------------------------
　.cont_success（合格体験記）
---------------------------------------*/
.gkname{
	display: inline-block;
	margin: 0 0 20px 0;
	padding: 10px 10px 10px 48px;
	font-size: 1.9rem;
	line-height: 1.7;
	font-weight: bold;
	background: url(../../default/img/ico_edit.png) 10px 10px no-repeat;
	background-size: 30px;
	border: #ccc solid 1px;
	border-radius: 5px;
}

/*---------------------------------------
　.cont_lecturer（現場の実学講師紹介）
---------------------------------------*/
.cont_lecturer .c2_bnr{
	padding: 10px;
	border: #ccc solid 2px;
}
.cont_lecturer .c2_bnr .copy{
	margin: 5px 0;
	text-align: center;
	font-weight: bold;
	color: #ff8400;
}
.cont_lecturer .c2_bnr p{
	margin: 5px 0 0 0;
	text-align: left;
	line-height: 1.8;
}
.cont_lecturer .c2_bnr .center{
	margin-bottom: 0;
}
.cont_lecturer .c2_bnr h3{
	margin: 15px 0;
	padding: 0 0 15px 0;
	font-size: 2.0rem;
	line-height: 1.4;
	font-weight: bold;
	text-align: center;
	border-bottom: #ccc dotted 1px;
}
.cont_lecturer .c2_bnr h4{
	margin: 0;
	padding: 0;
	font-size: 1.5rem;
	color: #ff8400;
	background: none;
}
.cont_lecturer .c2_bnr h3 span{
	display: block;
}
.cont_lecturer .c2_bnr ul{
	margin: 0 auto 15px auto;
	padding: 0;
	font-size: 1.4rem;
	line-height: 1.7;
	list-style-type: none;
	background: #ffffe4;
	border: #ff8400 solid 1px;
	border-radius: 5px;
}
.cont_lecturer .c2_bnr li{
	margin: 0;
	padding: 5px 10px;
}
.cont_lecturer .c2_bnr li + li{
	border-top: #ff8400 solid 1px;
}

/*---------------------------------------
　.price_revision（受講料一部改定のご案内）
---------------------------------------*/
.price_revision .sticky_table thead th,
.price_revision .sticky_table tbody td{
	width: initial;
}
.price_revision .code{
	width: 5%;
}
.price_revision .name{
	width: 75%;
}
.price_revision .pt{
	width: 10%;
}

/*------------------------------ system page ------------------------------*/
/*---------------------------------------
　#inq_form
---------------------------------------*/
#inq_form input[type="text"],
#inq_form input[type="email"],
#inq_form input[type="password"]{
	margin: 5px 0;
}
#inq_form input[type="tel"]{
	width: 5em;
}
#inq_form textarea{
	width: 80%;
}
#inq_form .btn.center button{
	padding: 20px 30px;
}



#inq_form th{
	min-width: 180px;
}
.zip-search{
	text-align: right;
}
#zip-search{
	float: right;
	width: initial;
	min-width: initial;
	max-width: initial;
	margin: 0;
	padding: 5px 8px;
	font-size: 1.2rem;
	border: #ccc solid 1px;
	border-radius: 5px;
	background: #ffffff;
	background: -moz-linear-gradient(top, #ffffff 0%, #e0e0e0 100%);
	background: -webkit-linear-gradient(top, #ffffff 0%,#e0e0e0 100%);
	background: linear-gradient(to bottom, #ffffff 0%,#e0e0e0 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e0e0e0',GradientType=0 );
}
#zip-search:hover{
	background: #ffffff;
	background: -moz-linear-gradient(top, #ffffff 0%, #ffc000 100%);
	background: -webkit-linear-gradient(top, #ffffff 0%,#ffc000 100%);
	background: linear-gradient(to bottom, #ffffff 0%,#ffc000 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ffc000',GradientType=0 );
}
/* .btn_edit */
.btn_edit a,
.btn_edit button{
	margin: 0;
	padding: 5px 8px;
	font-size: 1.2rem;
	border: #ccc solid 1px;
	border-radius: 5px;
	background: #ffffff;
	background: -moz-linear-gradient(top, #ffffff 0%, #e0e0e0 100%);
	background: -webkit-linear-gradient(top, #ffffff 0%,#e0e0e0 100%);
	background: linear-gradient(to bottom, #ffffff 0%,#e0e0e0 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#e0e0e0',GradientType=0 );
}

/*---------------------------------------
　.mypage
---------------------------------------*/
#navi_list{
	margin: 0 0 30px 0;
}
#welcome_message{
	margin: 0 0 30px 0;
	padding: 20px;
	background: #eee;
	border: 0;
}
#welcome_message p{
	float: left;
	margin: 10px 0 0 0;
	padding: 0;
}
#welcome_message .logout{
	float: right;
	margin: 0;
}

.mypage .btn_circle{
	width: 16px;
	height: 16px;
	line-height: 16px;
}
.mypage .btn_circle .cb{
	top: 0;
	font-size: 1.0rem;
}
.mypage .border_box{
	position: relative;
}

#history_wrap .left{
	max-width: 150px;
	margin-bottom: 0;
}
#history_wrap .cf + .cf{
	margin-top: 10px;
}
#detail_box{
	margin: 0 0 20px 0;
	padding: 0;
}

#page_mypage_delivery .btn_edit{
	right: 10px;
	top: 10px;
}

/*---------------------------------------
　#login_wrap
---------------------------------------*/
#login_wrap{
	text-align: center;
}
#login_wrap .icon {
	font-size: 70px;
	color: #e7e7e7;
}
#login_wrap input{
	margin: 4px 0;
	max-width: 50%;
}
#login_wrap ul{
	text-align: left;
}
#login_wrap .btn{
	text-align: center;
}

/*---------------------------------------
　#cart
---------------------------------------*/
/* ナビゲーション */
#cart_box__flow_state_list,
#confirm_flow_box__flow_state_list,
#detail_flow_box___flow_state_list,
#complete_flow_box__flow_state_list{
	margin: 0 auto 30px auto;
	list-style-type: none;
}
.cart_item{
	margin: 0 0 10px 0;
	border: #ccc solid 1px;
}

/*------------- ショッピングカート -------------*/
#cart div.table ol{
	border: #ccc solid 1px;
}
#cart div.table ol li{
	padding: 8px;
	background: #eee;
	border-bottom: #ccc solid 1px;
}
#cart div.table ol li + li{
	vertical-align: middle;
	border-left: #ccc solid 1px;
}
div.table .tbody .tr > .td{
	padding: 8px;
	/* border-top: #ccc solid 1px; */
}
div.table .tbody .tr > .td + .td{
	border-left: #ccc solid 1px;
}
.cart_item .item_quantity ul{
	margin: 0 auto;
}

/*------------- ご注文内容のご確認 -------------*/
#shopping_confirm .col-sm-8#confirm_main,
.row#shopping_confirm{
	margin: 0;
	padding-top: 0;
	padding-left: 0;
}
#shopping_confirm .edit_link{
	margin-bottom: 50px;
}

/* #confirm_side */
#confirm_side{
	padding: 20px;
	border: #ccc solid 1px;
}
#confirm_side .total_box{
	margin: 0;
	padding: 0;
}
#confirm_side .btn{
	margin-bottom: 0;
}
#confirm_side .btn button,
#confirm_side .btn a{
	max-width: 100%;
	min-width: 100%;
	width: 100%;
}
#confirm_side .total_box .total_amount p.total_price{
	margin-bottom: 10px;
}
#confirm_side .total_box .total_amount p.total_price strong{
	font-size: 1.8rem;
}

/* 数量を変更または削除する */
#confirm_box__quantity_edit_button{
	padding: 10px;
	border-radius: 5px;
}

/* お届け先の変更 */
#shopping-form .btn_edit{
	top: 0;
	right: 0;
}

/* お支払方法 */
.payment_list{
	list-style-type: none;
}

/*------------- お届け先の指定 -------------*/
.shiplist tr td:first-child{
	text-align: center;
	vertical-align: middle;
}

/*------------------------------ product setting ------------------------------*/
/*---------------------------------------
　#list
---------------------------------------*/
#topicpath{
	margin: 0 0 20px 0;
	padding: 0;
}
#topicpath ol {
	overflow: hidden;
	margin: 0;
	padding: 0;
	list-style: none;
	border: 0;
}
#topicpath li {
	float: left;
	color: #333;
	font-size: 1.2rem;
}
#topicpath li a {
	float: left;
	display: inline-block;
}
#topicpath li:after {
	content:">";
}
#topicpath li:last-child {
	font-weight: bold;
}
#topicpath li:last-child:after {
	content:"";
}
.cat_text{
	margin: 0;
	padding: 0;
}
#cat_list_nav{
	margin: 0 0 20px 0;
	padding: 20px;
	background: #efefef;
}
#cat_list_nav h3{
	margin: 0 0 10px 0;
	padding: 0;
	font-size: 1.6rem;
	background: none;
	border: 0;
}
#cat_list_nav ul{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	box-sizing: content-box;
}
#cat_list_nav li{
	width: 50%;
	margin: -1px 0 0 0;
	padding: 0;
	list-style-type: none;
	background: #fff;
	border: #ccc solid 1px;
}
#cat_list_nav li:nth-child(even){
	border-left: 0;
}
#cat_list_nav li a{
	display: block;
	padding: 3px 10px;
}
#result_info_box{
	margin: 0 auto 20px auto;
	padding: 10px;
	background: #efefef;
}
#result_info_box__item_count{
	margin: 5px 0 0 0;
	padding: 0 10px;
}
#result_info_box__menu{
	margin: 0;
	padding: 0;
}
.listarea{
	margin: 0;
	padding: 0;
}
.listarea .product_item{
	float: none;
	width: 100%;
	margin: 0 0 20px 0;
	padding: 20px;
	border: #ccc solid 1px;
}
.listarea .item_photo{
	float: left;
	width: 170px;
	margin: 0 20px 0 0;
	padding: 0;
}
.listarea .item_photo img{
	outline: #ddd solid 1px;
}
.product_page .item_name{
	font-weight: bold;
}
.item_price{
	color: #f00;
}

/* .pagination */
.pagination a{
	border: #ccc solid 1px;
	border-radius: 5px;
}
.pagination .active a{
	font-weight: bold;
	border-color: #1d2088;
}

/*---------------------------------------
　#goods
---------------------------------------*/
#item_detail,
#detail_wrap{
	margin: 0;
	padding: 0;
}

#item_detail h5{
	margin: 0 0 20px 0;
	padding: 0 0 0 25px;
	font-size: 1.8rem;
	line-height: 1.7;
	background: url(../../default/img/ico_check01.svg) 0 5px no-repeat;
}
#item_detail h5:before{
	content: none;
}

/* #item_photo_area */
#item_photo_area{
	float: left;
	width: 301px;
	margin: 0;
	padding: 0;
}
#item_photo_area ul{
	margin: 0;
	padding: 0;
	list-style-type: none;
}
#item_photo_area li{
	float: left;
	display: inline-block;
	width: 50%;
	margin: 0 0 1px 0;
	padding: 0 1px 0 0;
}
#item_photo_area li:first-child{
	float: none;
	display: block;
	width: 100%;
}
.textviewer{
	margin: 20px 0;
	padding: 0;
}
.textviewer a{
	display: block;
	margin: 0;
	padding: 10px;
	text-align: center;
	border: #ccc solid 1px;
	border-radius: 5px;
	background: #ffffff;
	background: -moz-linear-gradient(top, #ffffff 1%, #ebebeb 100%);
	background: -webkit-linear-gradient(top, #ffffff 1%,#ebebeb 100%);
	background: linear-gradient(to bottom, #ffffff 1%,#ebebeb 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ebebeb',GradientType=0 );
}
.ico_rpt img{
	padding-right: 2px;
	max-width: 30px;
}

/* #item_detail_area */
#item_detail_area{
	float: right;
	width: 400px;
	margin: 0 0 40px 0;
	padding: 0;
}

#item_detail_area .freearea{
	margin: 0 0 10px 0;
	padding: 0;
}

#item_detail_area .item_name{
	margin: 0 0 10px 0;
	padding: 0;
	font-size: 2.7rem;
	background: none;
	border: 0;
}
#item_detail_area .item_detail{
	border: 0;
}
.code_area{
	margin: 0 0 10px 0;
	padding: 0;
}
.code_area p{
	margin: 0;
	padding: 0;
}

/* .tooltip（ツールチップ） */
.tooltip_wrap {
	position: relative;
	display: inline-block;
	cursor: pointer;
}
.tooltip {
	position: absolute;
	top: -35px;
	left: -45px;
	min-width: 110px;
	padding: 2px 5px 0 5px;
	margin-bottom: 0.5em;
	font-size: 1.4rem;
	text-align: center;
	line-height: 1.5;
	font-weight: bold;
	color: #555;
	background-color: #ffffe7;
	border: 1px solid #f8b600;
	border-radius: 5px;
}
.tooltip:before,
.tooltip:after {
	content: '';
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -0.5em;
	border-top: 0.5em solid #f8b600;
	border-right: 5px solid transparent;
	border-left: 5px solid transparent;
}
.tooltip:after {
	bottom: calc( 2px - 0.5em );
	border-top: solid 0.5em #ffffe7;
}
.tooltip,
.tooltip:before,
.tooltip:after {
	transition: all 0.3s ease 0s;
	opacity: 0;
}
.tooltip_wrap:hover .tooltip,
.tooltip_wrap:hover .tooltip:before,
.tooltip_wrap:hover .tooltip:after {
	opacity: 1;
}

/* .cart_area */
.cart_area{
	margin: 20px 0;
	padding: 17px;
	text-align: center;
	background: #ffffe7;
    border: #eee solid 3px;
}
.cart_area p{
	margin: 0 auto 10px auto;
	padding: 0;
	font-weight: bold;
	text-align: center;
	color: #1d2088;
}
.cart_area .text-danger{
	margin-top: -10px;
	font-weight: normal;
	text-align: left;
	color: #f00;
}
#item_detail_area .cart_option{
	margin: 20px 0 10px 0;
}
#item_detail_area .cart_option span.required{
	display: none;
}
#item_detail_area select{
	display: block;
	width: 100%;
	margin: 0 0 10px 0;
}
#item_detail_area .cart_area button{
	margin: 0;
	padding: 0;
	background: none;
	border: 0;
}
#item_detail_area .cart_area button + button{
	margin-top: 10px;
}
#item_detail_area #favorite{
	margin: 0 auto 40px auto;
	padding: 3px 10px;
	width: 70%;
	text-align: center;
	font-size: 1.6rem;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	background: #63c9df;
	background: -moz-linear-gradient(top, #63c9df 0%, #56afc2 100%);
	background: -webkit-linear-gradient(top, #63c9df 0%,#56afc2 100%);
	background: linear-gradient(to bottom, #63c9df 0%,#56afc2 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#63c9df', endColorstr='#56afc2',GradientType=0 );
	-webkit-box-shadow: inset 0 0 0 1px #85d6e7;
	-moz-box-shadow: inset 0 0 0 1px #85d6e7;
	box-shadow: inset 0 0 0 1px #85d6e7;
	border: #63cae0 solid 1px;
	border-radius: 5px;
}
#item_detail_area #favorite:hover{
	color: #fff;
	background: #febf00;
	background: -moz-linear-gradient(top, #febf00 0%, #dda600 100%);
	background: -webkit-linear-gradient(top, #febf00 0%,#dda600 100%);
	background: linear-gradient(to bottom, #febf00 0%,#dda600 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#febf00', endColorstr='#dda600',GradientType=0 );
	-webkit-box-shadow: inset 0 0 0 1px #ffce38;
	-moz-box-shadow: inset 0 0 0 1px #ffce38;
	box-shadow: inset 0 0 0 1px #ffce38;
	border-color: #ffc000;
}

/* 商品説明内 */
.item_comment .scd{
	margin: 0 0 40px 0;
}
.item_comment .scd th{
	min-width: 100px;
}
.item_table th{
	font-weight: bold;
}
.item_table thead th:first-child,
.item_table tbody th:first-child{
	width: 4em;
	text-align: center;
}
.item_table thead th:nth-child(3){
	min-width: 450px;
}
.item_table .big{
	position: relative;
	display: inline-block;
	padding-left: 15px;
	font-size: 1.7rem;
}
.item_table .big:before{
	content: ''; 
	display: block; 
	position: absolute;
	top: 10px; 
	left: 0;
	height: 10px; 
	width: 10px; 
	border-radius: 50%;
	background: #2e3194;
}
#item_detail .item_table h5{
	margin-bottom: 5px;
}
#item_detail .item_table ul + h5,
#item_detail .item_table ol + h5{
	margin-top: 25px;
}
#item_detail .item_table h6{
	margin-top: 25px;
	margin-bottom: 5px;
}

/*------- .cmn_goods_nt01 / 商品共通説明文（認定訓練コース） -------*/
.cmn_goods_nt01{
	margin: 0 0 40px 0;
	padding: 20px 20px 0 20px;
	background: #ffffde;
	border: #ccc solid 1px;
}
#item_detail .cmn_goods_nt01 h4,
.cont_nt01 .cmn_goods_nt01 h4{
	margin: 0 0 30px 0;
	padding: 10px;
	font-size: 1.9rem;
	line-height: 1.7;
	background: #fffe9b;
	border-left: #ffae00 solid 10px;
}
#item_detail .cmn_goods_nt01 h5,
.cont_nt01 .cmn_goods_nt01 h5{
	margin: 0 10px 20px 10px;
	padding: 0 0 0 25px;
	font-size: 1.8rem;
	line-height: 1.7;
	background: url(../../default/img/ico_check02.svg) 0 5px no-repeat;
}
.cont_nt01 .cmn_goods_nt01 h5:before{
	background: none;
}
.cmn_goods_nt01 p{
	margin-left: 10px;
	margin-right: 10px;
}
.cmn_goods_nt01 ul li{
	margin-bottom: 20px;
}
.cmn_goods_nt01 .border_box{
	margin: 10px 0 0 0;
}
.cmn_goods_nt01 .border_box p{
	margin-left: 0;
	margin-right: 0;
}

/*------- #related_product_area（関連講座） -------*/
#related_product_area{
	margin: 0 0 40px 0;
	padding: 0;
}
#related_product_area .product_item{
	float: left;
	width: calc(50% - 20px);
	margin: 0 10px 20px 10px;
	padding: 5px;
	font-size: 1.2rem;
	border: #ccc solid 1px;
}
#related_product_area .product_item .item_photo{
	float: left;
	width: 80px;
	margin: 0 10px 0 0;
	padding: 0;
}

/*------- #sdgs_area（JTEXについて） -------*/
#sdgs_area{
	margin: 0 0 40px 0;
	padding: 0;
}
#sdgs_area .product_item{
	float: left;
	width: calc(50% - 20px);
	margin: 0 10px 20px 10px;
	padding: 5px;
	font-size: 1.2rem;
}
#sdgs_area .product_item .item_photo{
	float: left;
	width: 80px;
	margin: 0 10px 0 0;
	padding: 0;
}
#sdgs_area .product_item .sdgsExplanation{
	line-height: 1.7;
	font-weight: bold;
	color: #2196f3;
}
#sdgs_area .product_item .sdgsDetails{
	line-height: 1.5;
	color: #807e7e;
}

/*------------------------------ sphone setting ------------------------------*/
/*------------------------------ 640px ------------------------------*/
@media screen and (max-width: 640px) {

	/*---------------------------------------
	　common tag
	---------------------------------------*/
	*{
		max-width: 100%;
	}
	html, body{
		width: 100%;
		min-width: 100%;
	}
	body{
		position: relative;
		font-size: 12px;
		font-size: 1.2em; /* for Chrome bug */
		font-size: 1.2rem;
		line-height: 1.7;
		font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
		background: none;
	}
	h1{
		font-size: 1.0rem;
		text-align: center;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		-webkit-text-overflow: ellipsis;
		-o-text-overflow: ellipsis;
	}
	h2{
		font-size: 1.8rem;
	}
	#main h2{
		padding: 10px 15px 10px 28px;
	}
	#main h2:before{
		top: 20px; 
		left: 15px;
		height: 8px; 
		width: 8px; 
	}
	h3,
	h4{
		font-size: 1.6rem;
	}
	h5{
		font-size: 1.4rem;
	}
	th,
	td{
		padding: 8px 10px;
	}
	thead th{
		padding: 15px;
	}
	#contents{
		margin: 0 auto;
	}
	.wrapper,
	.container-fluid,
	.inner{
		width: 100%;
		font-size: 1.4rem;
	}
	.container-fluid{
		margin-top: 0;
	}
	.theme_side_left #main{
		overflow: hidden;
		width: 100%;
		padding: 10px;
	}
	#main_middle{
		margin-bottom: 0;
	}
	/* section */
	section{
		margin-bottom: 30px;
	}
	section section section{
		margin-bottom: 10px;
	}
	/* スマホPC表示非表示 */
	.sp_hide{
		display: none;
	}
	.pc_hide{
		display: block;
	}
	/*---------------------------------------
	　common class（ui）
	---------------------------------------*/
	/* Font */
	.small{ font-size: 0.9rem; }
	.big{ font-size: 1.6rem; }

	/* .position */
	.left,
	.right{
		max-width: 40%;
		margin: 0;
	}
	.left{
		padding: 0 10px 10px 0;
	}
	.right{
		padding: 0 0 10px 10px;
	}
	/* .link */
	.link{
		display: inline-block;
	}
	/*
	.link:before,
	.dlink:before{
		top: 5px;
	}
	h4 .link:before{
		top: 0.5em;
	}
	*/
	/* .home */
	.home{
		margin: 0 0 20px 0;
		padding: 0;
		text-align: right;
	}
	/*---------------------------------------
	　common class（page）
	---------------------------------------*/
	/* .caption */
	.caption{
		font-size: 1.0rem;
		line-height: 1.4;
	}
	/* .btn */
	.btn{
		margin-bottom: 20px;
	}
	.btn a,
	.btn button,
	.btn a.back,
	.btn button.back,
	.btn.max a,
	.btn.max button{
		min-width: 100%;
		max-width: 100%;
		margin: 0 auto 10px auto;
		padding: 15px 20px;
		font-size: 1.4rem;
	}
	.btn a:before,
	.btn button:before{
		right: 10px;
	}
	/*---------------------------------------
	　#header
	---------------------------------------*/
	#headlogo{
		max-width: 50%;
		margin: 0;
		padding: 5px;
	}
	#headcopy,
	#hbtn_mypage,
	#hbtn_user,
	#headcart,
	#headship,
	#headbtn,
	#global{
		display: none;
	}
	/*--------- #headsearch ---------*/
	#header #headsearch{
		margin: 0;
		padding: 5px;
	}
	#header #headsearch *{
		box-sizing: border-box;
	}
	#headsearch form{
		width: 100%;
		margin: 0;
		padding: 0;
		background: #fff;
		border: #ccc solid 1px;
		border-radius: 20px;
	}
	#header #searchform label,
	#header #searchform select{
		display: none;
	}
	#header #searchform input{
		width: calc(100% - 40px);
		background: none;
		border: none;
	}
	#headsearch button{
		width: 40px;
		background: none;
		border: 0;
	}
	/*--------- .cmn_news ---------*/
	.cmn_news_wrap{
		margin: 5px 0 0 0;
		padding: 0 10px;
	}
	.cmn_news{
		margin: 0 auto 10px auto;
		padding: 10px 10px 0 10px;
	}
	.cmn_news .hidebox_trigger{
		padding-left: 30px;
		background: url(../../default/img/ico_sp_open.svg) 0 5px no-repeat;
		border-radius: 5px;
	}
	.cmn_news .hidebox_trigger.select{
		background: url(../../default/img/ico_sp_close.svg) 0 5px no-repeat;
	}
	/*---------------------------------------
	　#header > スマホ用メニュー
	---------------------------------------*/
	#openmenu{
		float: right;
		width: 45px;
		height: 45px;
		margin: 5px 5px 5px 0;
		padding: 0;
		font-size: 0.8rem;
		line-height: 1.0;
		font-weight: bold;
		text-align: center;
		color: #1d2088;
		background: #ffffff;
		background: -moz-linear-gradient(top, #ffffff 0%, #d1d1d1 100%);
		background: -webkit-linear-gradient(top, #ffffff 0%,#d1d1d1 100%);
		background: linear-gradient(to bottom, #ffffff 0%,#d1d1d1 100%);
		border: #ccc solid 1px;
		border-radius: 5px;
		/* 中央寄せ */
		display: flex;
		justify-content: center; /* コンテナの中央に配置 */
		align-items: center; /* 縦方向の整列 */
	}
	#openmenu img{
		display: block;
		margin: 0 auto 5px auto;
		text-align: center;
	}
	#openmenu.fixedspnavbtn{
		float: none;
		position: fixed;
		top: 5px;
		right: 5px;
		margin: 0;
		z-index: 1000;
	}
	.globalbtn{
		display: table;
		table-layout: fixed;
		width: 100%;
		margin: 0 auto;
		padding: 0;
		text-align: center;
		background: #ffffff;
		background: -moz-linear-gradient(top, #ffffff 0%, #d1d1d1 100%);
		background: -webkit-linear-gradient(top, #ffffff 0%,#d1d1d1 100%);
		background: linear-gradient(to bottom, #ffffff 0%,#d1d1d1 100%);
		border-top: #ccc solid 1px;
		border-bottom: #ccc solid 1px;
	}
	.globalbtn li{
		display: table-cell;
		width: 25%;
		margin: 0;
		padding: 0;
		font-size: 1.0rem;
		line-height: 1.0;
	}
	.globalbtn li+li{
		border-left: #ccc solid 1px;
	}
	.globalbtn li a{
		display: block;
		width: 100%;
		padding: 5px 0;
		font-weight: bold;
		color: #1d2088;
	}
	.globalbtn li a:visited{
		color: #1d2088;
	}
	.globalbtn li img{
		display: block;
		margin: 0 auto 5px auto;
		text-align: center;
	}
	/*---- メニューの表示/非表示切り替え ----*/
	#closemenu{
		display: none;
	}
	.select #closemenu{
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 45px;
		height: 45px;
		margin: 0;
		padding: 0;
		font-size: 0.9rem;
		line-height: 1.0;
		font-weight: bold;
		text-align: center;
		color: #fff;
		background: #1d2088;
		z-index: 1000;
		/* 中央寄せ */
		display: flex;
		justify-content: center; /* コンテナの中央に配置 */
		align-items: center; /* 縦方向の整列 */
	}
	#closemenu img{
		display: block;
		margin: 0 auto 5px auto;
		text-align: center;
	}
	/* .overlay */
	.select .overlay{
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		right: 0;
		height: 100%;
		background: rgba(0, 0, 0, 0.5);
		cursor: pointer;
		z-index: 100;
	}
	.select #openmenu{
		display: none;
	}
	html.swipebox-html #openmenu,
	html.swipebox-html #openmenu svg{
		display: none !important;
		z-index: -1 !important;
		visibility: hidden;
	}
	/*---------------------------------------
	　#side_left
	---------------------------------------*/
	#side_left,
	.sbnr_area01,
	.sbnr_area02{
		display: none;
	}
	#side_left{
		width: calc(100% - 50px);
	}
	.select #side_left{
		display: block;
		position: fixed;
		top: 0;
		right: 0;
		background: #fff;
		height: 100vh;
		overflow-x: hidden;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		z-index: 5000;
	}
	#category,
	#side_left .smenu{
		margin: 0;
		background: #fff;
	}
	#category .cat_level_2,
	#category .cat_level_2:hover{
		padding: 15px 25px 15px 8px;
	}
	#category .ac_ico_2:after{
		top: 20px;
		left: 93%;
	}
	#category .cat_level_3{
		padding: 12px 15px;
	}
	/*---------------------------------------
	　#footer
	---------------------------------------*/
	#footcat,
	#footmenu,
	#footlogo{
		display: none;
	}
	#foot_global{
		display: block;
		margin: 0;
		padding: 0 5px;
		background: #ffeaaf;
	}
	#foot_global ul{
		float: left;
		width: calc(50% - 10px);
		margin: 10px 5px;
		padding: 0;
		background: #fff;
		border-radius: 5px;
	}
	#foot_global li + li{
		border-top: #ffeaaf solid 1px;
	}
	#foot_global a{
		display: block;
		margin: 0;
		padding: 10px;
	}

	.sbnrsp_2block{
		display: flex;
		width: 200px;
		margin: 0 auto;
	}
	.sbnrsp_2block li {
		width: calc(100%/2);/*←画像を横に2つ*/
		padding: 10px 20px;/*←画像余白*/
		box-sizing:border-box;
	}
	.sbnrsp_2block li img {
		max-width:80%;
		height: auto;
	}
	#fcopy{
		padding: 0;
	}
	#copyright{
		float: none;
		margin: 0 auto;
		padding: 0;
		text-align: center;
	}
	#copyright small{
		font-size: 1.0rem;
	}
	#copyright small a,
	#copyright small a:hover{
		color: #fff;
	}
	/*------------------------------ page setting ------------------------------*/
	/*---------------------------------------
	　#topimage_slider
	---------------------------------------*/
	#topimage_slider{
		margin-bottom: 10px;
		padding: 10px;
	}
	#topimage_slider *{
		width: initial;
		max-width: initial;
	}
	#topimage_slider_inner{
		width: 100%;
		max-width: 100%;
	}
	/* スライド画像 */
	#topslider{
		width: 100%;
	}
	.slidebox{
		margin: 0 5px;
	}
	#topimage_slider img{
		max-width: 100%;
	}
	/* スライド画像 */
	div#topimage_inner{
		float: none;
		max-width: 100%;
		width: 100%;
		margin: 0;
	}
	#topslider{
		max-width: 100%;
		width: 100%;
		height: initial;
	}
	#topslider .slidebox img{
		width: 100%;
	}
	#slick-arrows_topslider{
		display: none;
	}
	/* サムネール */
	#topslider_thumbnail_wrap{
		display: none;
	}
	/*---------------------------------------
	　#index
	---------------------------------------*/
	/*-------- .itemlist --------*/
	.itemlist *{
		box-sizing: border-box;
		max-width: 100%;
	}
	.itemlist,
	.itemarea{
		width: 100%;
	}
	.itemarea{
		margin: 0 0 30px 0;
	}
	.itemlist .itembox{
		width: calc(50% - 2px);
		margin: 0 1px 20px 1px;
		padding: 0 5px;
		box-sizing: border-box;
	}
	/*-------- #news_area --------*/
	#news_area{
		margin-bottom: 20px;
	}
	/*-------- #sales_ranking --------*/
	#sales_ranking .rankarea{
		max-width: 100%;
	}
	#sales_ranking,
	.rankarea{
		width: 100%;
		margin: 0 0 20px 0;
	}
	#rank1,
	#rank2,
	#rank3,
	#rank4,
	#rank5{
		float: none;
		width: 100%;
	}
	#rank1 .item_photo,
	#rank2 .item_photo,
	#rank3 .item_photo{
		width: 40%;
	}
	#rank4 .item_photo,
	#rank5 .item_photo{
		width: 20%;
	}
	#rank3{
		font-size: 2.0rem;
	}
	#rank3 h3{
		font-size: 1.5rem;
	}
	#sales_ranking .rank_ico3{
		margin: 0 0 10px 0;
		padding: 0 15px;
	}
	/*-------- .page_sales_ranking#sales_ranking --------*/
	.page_sales_ranking#sales_ranking .item_photo,
	.page_sales_ranking#sales_ranking #rank1 .item_photo,
	.page_sales_ranking#sales_ranking #rank2 .item_photo{
		width: 40%;
		margin-right: 10px;
	}
	/*-------- .monthly_pick --------*/
	.monthly_pick{
		padding: 10px;
	}
	.monthly_pick h3{
		margin: 0;
		padding: 0 0 10px 25px;
		font-size: 1.4rem;
		background-size: 20px;
	}
	.monthly_pick table{
		margin-bottom: 0;
	}
	.monthly_pick th,
	.monthly_pick td{
		display: list-item;
		width: 100%;
		list-style-type: none;
		border: 0;
		text-align: left;
	}
	.monthly_pick th{
		padding: 8px 10px;
		border-radius: 5px 5px 0 0;
	}
	.monthly_pick td{
		padding: 5px 0 10px 0;
	}
	.monthly_pick p{
		padding-top: 10px;
		border-top: #ccc solid 1px;
	}
	/*-------- #tqua --------*/
	#tqua #searchform select {
		font-size: 1.4rem;
	}
	#tqua #searchform select {
		max-width: 40%;
	}
	#tqua #searchform input[type="search"] {
		width: calc(100% - calc(40% + 25px));
	}
	#tqua #searchform button[type="submit"] {
		width: 25px;
		padding: 5px;
	}
	/*-------- #topcat --------*/
	.topcat01{
		margin: 0 0 10px 0;
		padding: 15px;
	}
	.topcat01 .bnr .left{
		float: none;
		max-width: 100%;
		width: 100%;
		margin: 0 0 10px 0;
		padding: 0;
		text-align: center;
	}
	.tcatarea{
		max-width: 100%;
		width: 100%;
		margin: 20px 0 0 0;
	}
	.tcatbox{
		float: none;
		width: 100%;
		margin: 0 0 10px 0;
	}
	/*-------- .c2_area --------*/
	.c2_area{
		max-width: 100%;
		width: 100%;
		margin: 0;
	}
	.c2_bnr, .c2_categorybnr{
		float: none;
		width: 100%;
		margin: 0 0 20px 0;
	}
	/*-------- #voice --------*/
	.voice_wrap{
		padding: 10px;
	}
	.voice_wrap h3{
		position: relative;
		width: 122px;
		top: -20px;
	}
	/*-------- #nt01_product --------*/
	#nt01_product .left{
		width: 50px;
	}
	/*---------------------------------------
	　.mokuji, .border_box
	---------------------------------------*/
	.mokuji,
	.border_box{
		margin: 0 0 30px 0;
		padding: 15px 15px 0 15px;
	}
	.mokuji h3{
		font-size: 1.8rem;
		margin-bottom: 10px;
	}
	.mokuji section{
		margin-bottom: 10px;
	}
	.mokuji ul,
	.mokuji ol{
		margin-left: 0;
	}
	.mokuji li{
		padding: 8px 10px;
	}
	/*---------------------------------------
	　.topnav
	---------------------------------------*/
	.topnav{
		margin: 0 0 30px 0;
		padding: 10px;
	}
	.topnav ul{
		text-align: left;
		background: #fff;
		border: #ccc solid 1px;
		border-radius: 5px;

	}
	.topnav li{
		display: block;
		margin: 0;
		padding: 10px 20px;
	}
	.topnav li + li{
		border-top: #ccc solid 1px;
	}
	.topnav li a{
		display: block;
	}
	.topnav li .link:before{
		top: 0.5em;
	}
	/*---------------------------------------
	　.hidebox_cont
	---------------------------------------*/
	.subreco .hidebox_trigger{
		padding-left: 35px;
		background: #eee url(../../default/img/ico_sp_open.svg) 10px 50% no-repeat;
		border-radius: 5px;
	}
	.subreco .hidebox_trigger.select{
		background: #eee url(../../default/img/ico_sp_close.svg) 10px 50% no-repeat;
	}
	.hidebox_cont{
		display: none;
	}
	/*---------------------------------------
	　.listitem_table01
	---------------------------------------*/
	.listitem_table01 th,
	.listitem_table01 td{
		display: list-item;
		width: 100%;
		list-style-type: none;
		border: 0;
	}
	.listitem_table01 tbody th,
	.listitem_table01 tbody td{
		padding: 5px 10px;
	}
	.listitem_table01 tr{
		border: #ccc solid 1px;
	}
	/*---------------------------------------
	　.sticky_table
	---------------------------------------*/
	.sticky_wrap{
		overflow: hidden;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}
	.sticky_table,
	.sticky_table *{
		box-sizing: content-box;
	}
	.sticky_wrap::-webkit-scrollbar{
		height: 5px;
		border-radius: 5px;
	}
	.sticky_wrap::-webkit-scrollbar-track{
		background: #ddd;
	}
	.sticky_wrap::-webkit-scrollbar-thumb{
		background: #1d2088;
	}
	.sticky_table{
		width: 500px;
		min-width: 500px;
		max-width: 500px;
		position: relative;
	}
	.sticky_table tbody th{
		border: #ccc solid 1px;
		z-index: 10;
	}
	/*------------------------------ user_data ------------------------------*/
	/*---------------------------------------
	　#page_help_tradelaw
	---------------------------------------*/
	#page_help_tradelaw tbody th{
		width: 100%;
		padding: 10px;
		font-weight: bold;
	}
	/*---------------------------------------
	　.about_org（組織概要・本部案内）
	---------------------------------------*/
	.about_org tbody th{
		width: 30%;
	}
	/*---------------------------------------
	　.proskills（技能士の活躍）
	---------------------------------------*/
	.proskills h4{
		clear: both;
	}
	/*---------------------------------------
	　.cont_success（合格体験記）
	---------------------------------------*/
	.gkname{
		padding-left: 35px;
		font-size: 1.4rem;
		background-size: 20px;
	}
	/*---------------------------------------
	　.price_revision（受講料一部改定のご案内）
	---------------------------------------*/
	.price_revision .sticky_table{
		font-size: 1.0rem;
	}
	.price_revision .sticky_table th:first-child,
	.price_revision .sticky_table tr td:first-child{
		width: 4em;
	}
	/*------------------------------ system page ------------------------------*/
	/*---------------------------------------
	　#inq_form
	---------------------------------------*/
	#inq_form input,
	#inq_form textarea{
		width: 100%;
	}
	.zip-search{
		text-align: left;
		margin-bottom: 10px;
	}
	#zip-search{
		float: none;
	}
	/*---------------------------------------
	　.mypage
	---------------------------------------*/
	.column.is-edit .btn_edit {
		right: 5px;
		top: 5px;
	}
	#welcome_message{
		padding: 10px;
	}
	#welcome_message p,
	#welcome_message .logout{
		float: none;
		text-align: center;
	}
	#welcome_message p{
		margin-bottom: 10px;
	}
	/*---------------------------------------
	　#login_wrap
	---------------------------------------*/
	#login_wrap input{
		margin: 4px 0;
		max-width: 100%;
	}
	/*---------------------------------------
	　#cart
	---------------------------------------*/
	/*------------- ショッピングカート -------------*/
	.cart_item .item_box .table .item_photo,
	.cart_item .item_box .table .item_detail{
		display: block;
	}


	/*------------------------------ product setting ------------------------------*/
	/*---------------------------------------
	　#list
	---------------------------------------*/
	.cat_text{
		font-size: 1.2rem;
	}
	.cat_texts{
		font-size: 0.8rem;
		line-height: normal;
	}
	#cat_list_nav{
		padding: 10px;
		font-size: 1.2rem;
	}
	#cat_list_nav h3{
		margin-bottom: 5px;
		font-size: 1.2rem;
	}
	#cat_list_nav li a{
		padding: 5px 10px;
	}
	#result_info_box__item_count{
		margin: 0 0 5px 0;
		padding: 0;
		text-align: center;
	}
	#result_info_box__menu{
		text-align: center;
	}
	.listarea .product_item{
		margin: 0 0 10px 0;
		padding: 10px;
	}
	.listarea .item_photo{
		float: left;
		width: 40%;
		margin: 0 10px 0 0;
	}
	.listarea dl{
		overflow: hidden;
		font-size: 1.2rem;
	}
	/*---------------------------------------
	　#goods
	---------------------------------------*/
	/* #item_photo_area */
	#item_photo_area{
		float: none;
		width: 100%;
	}
	/* #item_detail_area */
	#item_detail_area{
		float: none;
		width: 100%;
		border-bottom: #ccc solid 1px;
	}
	/*------- .cmn_goods_nt01 / 商品共通説明文（認定訓練コース） -------*/
	.cmn_goods_nt01{
		padding: 15px 15px 0 15px;
	}
	.cmn_goods_nt01 h4{
		font-size: 1.6rem;
	}
	#item_detail .cmn_goods_nt01 h5{
		margin: 0 0 20px 0;
		font-size: 1.6rem;
	}
	.cmn_goods_nt01 p{
		margin-left: 0;
		margin-right: 0;
	}
	/*------- #related_product_area（関連講座） -------*/
	#related_product_area{
		margin: 0 0 40px 0;
		padding: 0;
	}
	#related_product_area .product_item{
		float: none;
		width: 100%;
		margin: 0 0 10px 0;
		clear: both;
	}
	#related_product_area .product_item:after{
		content: "";
		display: table;
		clear: both;
	}
	.itembox_photo{
		margin: 0 0 5px 0;
		height: initial;
		padding: 0;
	}

	/*------- #sdgs_area（関連講座） -------*/
	#sdgs_area{
		margin: 0 0 40px 0;
		padding: 0;
	}
	#sdgs_area .product_item{
		float: none;
		width: 100%;
		margin: 0 0 10px 0;
		clear: both;
	}
	#sdgs_area .product_item:after{
		content: "";
		display: table;
		clear: both;
	}
	#sdgs_area .itembox_photo{
		margin: 0 0 5px 0;
		height: initial;
		padding: 0;
	}
}


	/*---------------------------------------
	　#denken
	---------------------------------------*/
.denken {
	padding: 0 10px;
}
@media screen and (max-width: 640px) {
.denken {
	padding: 0 5px;
}
}
#cat_list_nav_denken{
	margin: 0 0 20px 0;
	padding: 0;
}
@media screen and (max-width: 640px) {
#cat_list_nav_denken{
    margin: 0 0 10px 0;
}
}

#cat_list_nav_denken h3{
	margin: 10px 0 10px 0;
	padding: 0;
	font-size: 1.6rem;
	background: none;
	border: 0;
}
#cat_list_nav_denken ul{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	box-sizing: content-box;
}
#cat_list_nav_denken li{
	width: 12%;
    margin: 1px;
    padding: 0;
    list-style-type: none;
    background: #4d984d;
	display: table;
}
@media screen and (max-width: 640px) {
#cat_list_nav_denken li{
	width: 100%;
	margin: 0 auto;
	padding: 5px;
	list-style-type: none;
	background: -webkit-linear-gradient(top, #whitesmoke 0%, whitesmoke 100%);/*グラデーション*/
	background: linear-gradient(to bottom, whitesmoke 0%, #dadada 100%);/*グラデーション*/
}
}
#cat_list_nav_denken li:nth-child(even){
	border-left: 0;
}
#cat_list_nav_denken li a{
	display: table-cell;
    padding: 20px 3px;
    line-height: 1.4;
    font-size: 1.3rem;
    color: #fff;
    text-align: center;
	vertical-align: middle;
}

@media screen and (max-width: 640px) {
#cat_list_nav_denken li a{
    color: #1d2088;
    padding: 8px 3px;
}
}

	/*------- #denken01 -------*/

#denken_denkyu h3 {
  position: relative;
  padding-left: 2.5em;/*アイコン分のスペース*/
  line-height: 3;
  font-size: 2.2rem;
  color: #1d2088;
  border: none;
  background: url(/html/template/default/img/denken/h3denkyu.png) 0 5px no-repeat;
  margin: 0 10px 0 10px;
}

#denken_radius h3 {
  position: relative;
  line-height: 3;
  font-size: 2.2rem;
  color: #1d2088;
  border: none;
  background-color: #fff;
  margin: 0 10px 0 0;
}
@media screen and (max-width: 640px) {
#denken_radius h3 {
  line-height: 1;
  font-size: 1.8rem;
  margin: 0;
}
}
.maru_em {
	border-radius:30px;
	line-height:50px;
	text-align:center;
	margin: 0 10px 0 0;
}
.maru_blue {
    color: #fff;
    border-top: 2px solid #2196f3;
    border-bottom: 2px solid #2196f3;
    border-left: 15px solid #2196f3;
    border-right: 15px solid #2196f3;
    background: #2196f3;
	font-size: 140%;
}
@media screen and (max-width: 640px) {
.maru_blue {
	font-size: 110%;
	border-top: 5px solid #2196f3;
    border-bottom: 5px solid #2196f3;
    border-left: 10px solid #2196f3;
    border-right: 10px solid #2196f3;
}
}
.maru_deepblue {
    color: #fff;
    border-top: 2px solid #1d2088;
    border-bottom: 2px solid #1d2088;
    border-left: 15px solid #1d2088;
    border-right: 15px solid #1d2088;
    background: #1d2088;
	font-size: 140%;
}
@media screen and (max-width: 640px) {
.maru_deepblue {
	font-size: 110%;
	border-top: 5px solid #1d2088;
    border-bottom: 5px solid #1d2088;
    border-left: 10px solid #1d2088;
    border-right: 10px solid #1d2088;
}
}
.denken_btn_blue{
	margin: 0 auto 40px auto;
	padding: 0;
	text-align: right;
}
@media screen and (max-width: 640px) {
.denken_btn_blue{
	margin: 0 auto 20px auto;
}
}
.denken_btn_blue a,
.denken_btn_blue button{
	position: relative;
	display: inline-block;
	min-width: 30%;
	margin: 0 auto 10px auto;
	padding: 5px 40px 5px 45px;
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	background: #241bc2;
	border-radius: 28px;
}
@media screen and (max-width: 640px) {
.denken_btn_blue a,
.denken_btn_blue button {
	padding: 5px 40px 5px 40px;
    line-height: 1.2;
	font-size: 1.7rem;
}
}
.denken_btn_blue a:hover,
.denken_btn_blue button:hover{
	color: #fff;
	background: #febf00;
	background: -moz-linear-gradient(top, #febf00 0%, #dda600 100%);
	background: -webkit-linear-gradient(top, #febf00 0%,#dda600 100%);
	background: linear-gradient(to bottom, #febf00 0%,#dda600 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#febf00', endColorstr='#dda600',GradientType=0 );
	-webkit-box-shadow: inset 0 0 0 1px #ffce38;
	-moz-box-shadow: inset 0 0 0 1px #ffce38;
	box-shadow: inset 0 0 0 1px #ffce38;
	border-color: #ffc000;
}

.denken_btn_blue img{
    vertical-align: middle;
    padding-right: 5px;
    width: 28px;
}

.denken_reference h4 {
  position: relative;
  padding-left: 2.5em;/*アイコン分のスペース*/
  width: 250px;
  line-height: 2;
  font-size: 2.3rem;
  color: #232327;
  border-bottom: dashed 2px #232327;
  background: url(/html/template/default/img/denken/ico_reference.png) 0 5px no-repeat;
  margin: 0 10px 0 10px;
}
.denken_reference p {
    max-width: 90%;
    margin: 10px;
    line-height: 1.5;
}
@media screen and (max-width: 640px) {
.denken_reference p {
	font-size: 90%;
    line-height: 1.3;
}
}
	/*------- #denken01 .interview -------*/

.interview {
    margin: 2em 0;
    box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.22);
    border-radius: 10px;
    display: inline-block;
}
@media screen and (max-width: 640px) {
.interview {
    margin: 0;
}
}
.interview-title h3{
    font-size: 1.9em;
  background: -moz-linear-gradient(65deg, rgba(255, 190, 44, 0.4), rgba(255, 233, 11, 0.1)),url(/html/template/default/img/denken/interview_title_bg.png);
  background: -webkit-linear-gradient(65deg, rgba(255, 190, 44, 0.4), rgba(255, 233, 11, 0.1)),url(/html/template/default/img/denken/interview_title_bg.png);
  background: linear-gradient(25deg, rgba(255, 190, 44, 0.4), rgba(255, 233, 11, 0.1)),url(/html/template/default/img/denken/interview_title_bg.png);
  background-size:cover;
    text-align: left;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
	font-family: serif;
	border: none;
	  border-radius: 10px 10px 0 0;
	padding: 10px 20px;
}
@media screen and (max-width: 640px) {
.interview-title h3{
	margin: 0 0 10px 0;
}
}
.interview p {
    padding: 10px 15px 5px;
    margin: 0;
}
.interview-title h4{
    margin: 0 10px;
    padding: 0 10px;
    font-size: 1.8rem;
    line-height: 1.7;
    background: none;
	font-family: serif;
  border-bottom: solid 1px #f19149;
}
.large-orange{
    font-size: 150%;
    color: #ff8503;
}
@media screen and (max-width: 640px) {
.large-orange{
    font-size: 120%;
}
}
.profire{
	display:-webkit-flex;
	display:flex;
	width: 80%;
	margin: 0 auto;
	background-color: #f9f3e7;
}
.profire .left{
    margin: 0 20px 0 0;
}
.profire p{
	font-size: 85%;
	line-height: 1.4;
}
@media screen and (max-width: 640px) {
.profire{
	display: block;
	width: 90%;
}
.profire .left{
    margin: 0;
}
.profire p{
	padding: 10px;
}
}
.interview-title h5{
    margin: 40px 20px 10px 20px;
  padding: 0.4em;
  background: -webkit-linear-gradient(to right, rgb(241, 143, 73), transparent);
  background: linear-gradient(to right, rgb(241, 143, 73), transparent);
    font-size: 2rem;
	color: #fff;
	  list-style-type: none!important;/*ポチ消す*/
}
@media screen and (max-width: 640px) {
.interview-title h5{
	background: -webkit-linear-gradient(to right, rgb(241, 143, 73), #ffce38);
	background: linear-gradient(to right, rgb(241, 143, 73), #ffce38);
	line-height: 1.2;
}
}
.interview-title h5:before {
    background: none;
}
.interview-title h5:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #f19149;
  width: 0;
  height: 0;
}
.interview-question p {
    padding: 10px 20px 5px;
    margin: 30px 30px 10px;
   background: #f9ddc1; /*背景色*/
  border-radius: 1em;/*角の丸み*/
}
@media screen and (max-width: 640px) {
.interview-question p{
	padding: 5px 10px 5px;
    margin: 20px 20px 10px;
}
}
.interview-question :before {
  content: '';
  display: inline-block;
  width: 45px;
  height: 1px;
  background-color: black;
  margin: 5px 10px 5px 0;
}
.interview-answer p {
    padding: 10px 20px 5px;
    margin: 0 20px 30px;
}
@media screen and (max-width: 640px) {
.interview-answer p {
	padding: 0;
}
}


	/*------- #denken02 見出しページ内 -------*/

#denken02_radius h3 {
  position: relative;
  color: #2196F3;
  background: #d0ecff;
  line-height: 1.4;
  padding: 0.25em 0.5em;
  margin: 2em 0 0.5em;
  border-radius: 0 5px 5px 5px;
  border-left: none;
}
#denken02_radius h3:after {
  /*タブ*/
  position: absolute;
  content: url(/html/template/default/img/denken/check.png);
  	display: inline-block;/*忘れずに！*/
  background: #2196F3;
  left: 0px;
  bottom: 100%;
  border-radius: 5px 5px 0 0;
  padding: 3px 7px 1px;
  font-size: 0.7em;
  line-height: 1;
  letter-spacing: 0.05em
}
@media screen and (max-width: 640px) {
#denken02_radius h3 {
  font-size: 1.3rem;
  padding: 5px;
}
}

.denken_midashi {
	padding: 0 0 20px 0;
}

.denken_midashi p {
	padding: 0 20px;
	font-size: 120%;
	line-height: 170%;
}
@media screen and (max-width: 640px) {
.denken_midashi p {
	font-size: 100%;
	padding: 0;
}
}
.denken_midashi h4 {
	color: #241bc2;
	font-size: 150%;
	background: none;
	padding: 0 0 0 15px;
}
@media screen and (max-width: 640px) {
.denken_midashi h4 {
	font-size: 120%;
	padding: 0;
}
}
.denken_midashi h5 {
	padding: 0 0 0 35px;
}

.denken_midashi h5:before {
    background: none;
}

.large {
	font-size: 120%;
}
@media screen and (max-width: 640px) {
.large {
	font-size: 110%;
}
}
.indent_wide {
  padding-left: 3em;
  text-indent: -3em;
}

.denken_bnr {
    float: left;
    width: 320px;
    margin: 0 10px 30px 10px;
    padding: 0;
}
@media screen and (max-width: 640px) {
.denken_bnr {
    float: left;
    width: 320px;
    margin: 0 auto;
    padding: 10px 0;
}
}

	/*------- denken02 ページ内リンク -------*/

#cat_list_nav_denkenmerit{
    margin: 0 5px 30px 5px;
}
@media screen and (max-width: 640px) {
#cat_list_nav_denkenpage{
    margin: 0 0 10px 0;
	padding: 0;
}
}

#cat_list_nav_denkenmerit ul{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	box-sizing: content-box;
}
#cat_list_nav_denkenmerit li{
	width: 20%;
	list-style-type: none;
    font-size: 90%;
    border: #fff solid 1px;
}

@media screen and (max-width: 640px) {
#cat_list_nav_denkenmerit li{
	width: 100%;
	margin: 0 auto;
	list-style-type: none;
	background: -webkit-linear-gradient(top, #whitesmoke 0%, #bcbdd2 100%);/*グラデーション*/
	background: linear-gradient(to bottom, whitesmoke 0%, #bcbdd2 100%);/*グラデーション*/
}
}
#cat_list_nav_denkenmerit li:nth-child(even){
	border-left: 0;
}
#cat_list_nav_denkenmerit li a{
	display: block;
    padding: 8px 15px 5px 15px;
    background-color: #a0d6fb;
    text-align: center;
}

	/*------- denken02_04 見出し -------*/

.denken_lineup h4{
  position: relative;
  background: #63c9df;
	padding: 0.3em;
  border-radius: 15px;

}
.denken_lineup h4:before {
	content: '';/*何も入れない*/
	background-image: url(/html/template/default/img/denken/syoshinsyamark.png);
	display: inline-block;/*忘れずに！*/
	width: 31px;/*画像の幅*/
	height: 50px;/*画像の高さ*/
	vertical-align: middle;
	margin: 0 5px;
}

.stickycourse_table thead th.null, .stickycourse_table tbody th {
    width: 40%;
}

.denken_lineup_experience h4{
  position: relative;
  background: #94b0eb;
	padding: 0.3em;
  border-radius: 15px;

}
.denken_lineup_experience h4:before {
	content: '';/*何も入れない*/
	background-image: url(/html/template/default/img/denken/keikenshamark.jpg);
	display: inline-block;/*忘れずに！*/
	width: 69px;/*画像の幅*/
	height: 50px;/*画像の高さ*/
	vertical-align: middle;
	margin: 0 5px;
}

.denken_lineup_pass h4{
  position: relative;
  background: #eb9e94;
	padding: 0.3em;
  border-radius: 15px;

}
.denken_lineup_pass h4:before {
	content: '';/*何も入れない*/
	background-image: url(/html/template/default/img/denken/kamokumark.jpg);
	display: inline-block;/*忘れずに！*/
	width: 69px;/*画像の幅*/
	height: 50px;/*画像の高さ*/
	vertical-align: middle;
	margin: 0 5px;
}

.denken_lineup_review h4{
  position: relative;
  background: #d2b2f8;
	padding: 0.3em;
  border-radius: 15px;

}
.denken_lineup_review h4:before {
	content: '';/*何も入れない*/
	background-image: url(/html/template/default/img/denken/fukusyumark.jpg);
	display: inline-block;/*忘れずに！*/
	width: 69px;/*画像の幅*/
	height: 50px;/*画像の高さ*/
	vertical-align: middle;
	margin: 0 5px;
}


.denken_contents{
    width: 730px;
    float: right;
}
@media screen and (max-width: 640px) {
.denken_contents{
    width: 100%;
    padding: 0 10px;
}
}
	/*------- denken04 見出し -------*/

.advicebox {
    position: relative;
    margin: 2em 0;
    padding: 1em 2em;
    border: solid 3px #ffbae7;
    border-radius: 8px;
}
.advicebox .advicebox-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color: #f595d3;
    font-weight: bold;
}
.advicebox p {
    margin: 0; 
    padding: 0;
}

.deepblue {
	color: #1D2088;
}
.blue {
	color: #241bc2;
}
.morered {
	color: #d9534f;
}
.morelarge {
	font-size: 140%;
}

	/*------- denken06 -------*/

.saminar_table tbody th {
    background-color: #fff;
    vertical-align: middle;
    text-align: right;
}
.saminar_table {
    width: 70%;
}
@media screen and (max-width: 640px) {
.saminar_table {
    width: 100%;
}
}
.mathematics_table thead th.null, .mathematics_table tbody th {
    background-color: #fff;
}

	/*------- denken07 -------*/

.maedapointbox-title:before {
  position: relative;
  top: 5px;
  margin: 10px;
  content: url(/html/template/default/img/denken/passpoint.png);
}

.maedapointbox {
    margin: 0 0 2em 0;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
    box-sizing: border-box;
	background-image: url(/html/template/default/img/denken/passpointman.png);
    background-position: right bottom;
	background-repeat: no-repeat; 
}
.maedapointbox .maedapointbox-title {
    font-size: 1.2em;
    background: #5fc2f5;
    padding: 4px;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.maedapointbox p{
    padding: 25px;
    margin: 0;
    color: #337ab7;
}

.denken_midashi figcaption {
	width: 190px;
	line-height: 1.4;
}

.saminar_timetable thead th.null, .saminar_timetable tbody th {
    width: 25%;
    background-color: #fff;
}
.saminar_timetable {
    width: 90%;
}
@media screen and (max-width: 640px) {
.saminar_timetable {
    width: 100%;
}
}

	/*------- denken08 -------*/

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 640px) {
.pc { display: none !important; }
.sp { display: block !important; }
}

	/*------- denken09 -------*/

.denken_booksbnr {
    float: left;
    width: 180px;
    margin: 0 0 30px 0;
    padding: 0;
}
@media only screen and (max-width: 640px) {
.denken_booksbnr {
    float: none;
    margin: 0 auto;
    padding: 10px;
}
}

	/*------- denken10 -------*/

#main #denkentitle h2 {
	margin: 0 0 20px 0;
	padding: 0;
	border: none;
	background: #fff;
}
#main #denkentitle h2:before {
    content: none;
}
.summary_midashi h3 {
	color: #1d2088;
	font-size: 150%;
	background: none;
	margin: 0 0 25px 5px;
}

#main #denkentitle h3 {
	margin: 0 0 20px 0;
	padding: 10px;
	border: none;
	background: #003366;
	color: #fff;
}
#main #denkentitle h3:before {
    content: none;
}
.bottomheading {
	position: relative;
	padding-top: 30px;
	border-bottom: 1px solid rgba(5,62,98,1);
	border-left: none;
	background: none;
}
.bottomheading span {
	position: relative;
	z-index: 2;
}

.bottomheading::before {
	content: attr(data-en);
	position: absolute;
	top: 0px;
	left: 0;
	color: rgba(5,62,98,0.2);
	font-size: 36px;
	text-transform: uppercase;
	z-index: 1;
}
#main #denkentitle h4 {
	margin: 20px 0;
	padding: 5px 0;
	background: none;
	color: #1d2088;;
	border-bottom: #1d2088 solid 2px;
	font-size: 2rem;
}
#main #denkentitle h5 {
	margin: 20px 0 20px 10px;
	padding: 0 0 0 25px;
	font-size: 1.7rem;
	line-height: 1.7;
	background: url(../../default/img/ico_check01.svg) 0 5px no-repeat;
}
#main #denkentitle h4:before,
#main #denkentitle h5:before {
    content: none;
}

#main #denkentitle .right {
    max-width: 40%;
}

.denken_btn {
    margin: 0 auto 40px auto;
    padding: 0;
    text-align: center;
}
.denken_btn a,
.denken_btn button{
	position: relative;
	display: inline-block;
	min-width: 30%;
	margin: 0 auto 10px auto;
	padding: 10px 40px 10px 30px;
	text-align: center;
	font-size: 1.5rem;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	background: -moz-linear-gradient(top, #2196f3 0%,#2f5597 100%);
	background: -webkit-linear-gradient(top, #2196f3 0%,#2f5597 100%);
	background: linear-gradient(to bottom, #2196f3 0%,#2f5597 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#2196f3', endColorstr='#2f5597',GradientType=0 );
	-webkit-box-shadow: inset 0 0 0 1px #2f5597;
	-moz-box-shadow: inset 0 0 0 1px #2f5597;
	box-shadow: inset 0 0 0 1px #2f5597;
	border: #2196f3 solid 1px;
	border-radius: 5px;
}
.denken_btn a:hover,
.denken_btn button:hover{
	color: #fff;
	background: #febf00;
	background: -moz-linear-gradient(top, #febf00 0%, #dda600 100%);
	background: -webkit-linear-gradient(top, #febf00 0%,#dda600 100%);
	background: linear-gradient(to bottom, #febf00 0%,#dda600 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#febf00', endColorstr='#dda600',GradientType=0 );
	-webkit-box-shadow: inset 0 0 0 1px #ffce38;
	-moz-box-shadow: inset 0 0 0 1px #ffce38;
	box-shadow: inset 0 0 0 1px #ffce38;
	border-color: #ffc000;
}
.study_listbox {
	padding: 0.5em 1em;
    margin: 2em 10px;
	border-left: solid 6px #2f5597;
    border-bottom: #b8bec4 solid 1px;
    border-right: #b8bec4 solid 1px;
    box-shadow: 1px 1px 4px 1px rgb(0 0 0 / 20%);
    width: fit-content;
}
.study_listbox ol {
	margin: 0 0 0 20px;
    padding: 0;
}
.study_listbox ul {
	margin: 0 0 0 20px;
    padding: 0;
}
@media screen and (max-width: 640px) {
.denken_btn {
    margin: 0;
}
}
	/*------- denken12 -------*/

.box_shindenki {
    position: relative;
    margin: 3em auto;
    padding: 20px 30px 0;
    border: solid 3px #0a60ae;
    border-radius: 8px;
    width: 90%;
}

.box_shindenki ul {
    margin: 0 0 0 40px;
    list-style-type: none;
}

.box_shindenki ul li {
  position: relative;
}
.box_shindenki ul li::after {
  display: block;
  content: '';
  position: absolute;
  top: .5em;
  left: -1em;
  width: 8px;
  height: 8px;
  background-color: #0a60ae;
  border-radius: 100%;
}
.box_shindenki .box_shindenki-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    background: #FFF;
    color: #0a60ae;
}
.box_shindenki p {
    padding: 15px 30px 0;
    margin: 0;
    font-size: inherit;
}
/*-- PC版表示CSS  --*/
pc_area{
  display:block;
}
phone_area{
  display:none;
}

	/*------- denken13 -------*/
.denken_qa h4{
  padding: .5em .75em;
  background-color: #1d2088;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  color: #fff;
  margin: 0;
	padding-left: 4em;
    text-indent: -3em;
}
.denken_qa p{
	font-size: 1.8rem;
	color: #1D2088;
	font-weight: bold;
	padding: 1em;
}
.denken_qa a[href$=".pdf"]{
    padding: 0 20px 0 0;
    background: url(../../default/img/ico_pdf.svg) 100% 5px no-repeat;
    background-size: 15px;
    text-decoration: underline;
}
/*-- スマホ版表示CSS  --*/
@media screen and (max-width: 768px){
.pc_area{
    display:none;
  }
.phone_area{
    display:block;
  }
}

	/*------- denken sidemenu -------*/
.accordion_sidemenu {
  display: block;
  width: 220px;
  margin: 0 auto;
  border-radius: 5px;
  padding: 0 0 15px 0;
}
@media screen and (max-width: 640px) {
.accordion_sidemenu {
  width: 250px;
  padding: 5px 0;
}
}
.accordion_sidemenu li {
  list-style: none;
  border-bottom: #108655 1px solid;
  background-image: linear-gradient(to top, #0ba360 0%, #3cba92 100%);
}
.accordion_sidemenu li .denken_c {
	background-image: linear-gradient(to top, #ffffff 0%, #ebebeb 100%);
	border: #e4e4e4 solid 1px;
}
.accordion_sidemenu li .denken_c a {
	color: #003300;
}
.accordion_sidemenu a,
.accordion_sidemenu .toggle_s {
  display: block;
  position: relative;
  padding: 5px;
  text-decoration: none;
  cursor: pointer;
  -webkit-transition: .2s ease-in-out;
}
.accordion_sidemenu .toggle_s {
	background-image: url(/html/template/default/img/denken/bnr_denken.png);
	color: #fff;
	padding: 0;
}
@media screen and (max-width: 640px) {
.accordion_sidemenu .toggle_s {
	background-image: url(/html/template/default/img/denken/bnr_denken_mobile.png);
}
}
.accordion_sidemenu li a:hover {
	background-image: url(/html/template/default/img/denken/bnr_denken_hover.png);
}

.accordion_sidemenu .toggle_s:after {
  display: block;
  content: "";
  width: 7px;
  height: 7px;
  position: absolute;
  top: 50%;
  right: 13px;
  margin-top: -5px;
  border-top: solid 3px #fff;
  border-right: solid 3px #fff;
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  -webkit-transition: .2s ease-in-out;
}
.accordion_sidemenu .toggle_s.open:after {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
.accordion_sidemenu li ul {
  display: none;
  background: #999;
  margin: 7px;
  font-size: small;
  overflow: hidden;
}
.accordion_sidemenu li ul li a {
  line-height: 35px;
  color: #fff;
  height: 40px;
}
.accordion_sidemenu li ul li a:after {
  display: none;
}
.accordion_sidemenu li ul li a:hover {
	color: #fff;
}

	/*------- denken ページ内リンク -------*/
#cat_list_nav_denkenpage{
	margin: 0 10px 40px 10px;
	padding: 10px;
	border-bottom: 1px solid #dedede;
}
@media screen and (max-width: 640px) {
#cat_list_nav_denkenpage{
    margin: 0 0 10px 0;
	padding: 0;
}
}

#cat_list_nav_denkenpage ul{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
	box-sizing: content-box;
}
#cat_list_nav_denkenpage li{
	width: 50%;
	list-style-type: none;
}

@media screen and (max-width: 640px) {
#cat_list_nav_denkenpage li{
	width: 100%;
	margin: 0 auto;
	list-style-type: none;
	background: -webkit-linear-gradient(top, #whitesmoke 0%, #bcbdd2 100%);/*グラデーション*/
	background: linear-gradient(to bottom, whitesmoke 0%, #bcbdd2 100%);/*グラデーション*/
}
}
#cat_list_nav_denkenpage li:nth-child(even){
	border-left: 0;
}
#cat_list_nav_denkenpage li a{
	display: block;
	padding: 3px 50px;
}
#cat_list_nav_denkenpage li a:before{
	position: relative;
	display: block;
	content: "";
	left: -10px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #1d2088;
	border-right: 1px solid #1d2088;
	top: 1em;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
	transform: rotate(45deg);
}

	/*------- denken toppage -------*/

.griditem {
  text-align: center;
  color: #1d2088;
  background: #fff;
  padding: 5px 15px;
  border-radius: 9px;
  border-top: solid 10px #e0e0e0;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.22);
margin: 20px 5px;
}
.griditem img {
  max-width: 60%;
  height: auto;
}
.color-d{
    border-color: #bce06f;
}
.color-g {
    border-color: #09c;
}
.color-q{
    border-color: #a4a;
}
.color-k {
    border-color: #098;
}
.color-s {
    border-color: #ff9933;
}
.color-m {
    border-color: #9933ff;
}
.color-j {
    border-color: #663366;
}
.color-r {
    border-color: #ff66cc;
}
.color-c {
   border-color: #993333;
}
@media ( min-width : 600px ){
	.denken-container {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    }
	.griditem {
    width: 30%;
  padding: 5px 15px;
  margin: 10px;
  }
.griditem img {
  max-width: 100%;
  height: auto;
}
  .order1 {
  order: 1;
}
.order2 {
  order: 2;
}
.order3 {
  order: 3;
}
.order4 {
  order: 4;
}
.order5 {
  order: 5;
}
.order6 {
  order: 6;
}
.order7 {
  order: 7;
}
.order8 {
  order: 8;
}
.order9 {
  order: 9;
}
.order10 {
  order: 10;
}
.order11 {
  order: 11;
}
}
	/*------- denken toppage topics -------*/

.denkentopics-wrapper {  
  display: block;
  position: relative;
  margin: 0 0 20px;
  padding: 50px 20px 10px;
  width: 100%;
  background: #f1f1f1;
  }
.denkentopics {
  display: inline-block;
  position: absolute;
  left: 0;
  top: 5px;
  box-sizing: border-box;
  padding: 0 12px;
  margin: 0;
  height: 30px;
  line-height: 30px;
  font-size: 16px;
  letter-spacing: 0.1em;
  color: white;
  background: linear-gradient(to right, #076705 0%,#a3d570 100%);
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.12);
  border-left: none;
}
.denkentopics-wrapper p{
    margin: 0 0 10px 20px;
}
.denkentopics:before {
  position: absolute;
  content: '';
  top: 0;
  left: -7px;

  border: none;
  height: 38px;
  width: 7px;
  background: #076705;
  border-radius: 5px 0 0 5px;
}
.denkentopics:after {
  position: absolute;
  content: '';
  bottom: -7px;
  left: -5px;
  border: none;
  height: 7px;
  width: 5px;
  background: #0c0d34;
  border-radius: 5px 0 0 5px;
}

	/*------- denken breadcrumb -------*/

.breadcrumb-denken {
  padding-left:0;
  margin:0;
}

.breadcrumb-denken li{
  display:inline;/*横に並ぶように*/
  list-style: none;
}

.breadcrumb-denken li:after {/* >を表示*/
  content: '>';
  padding: 0 3px;
  color: #000;
}

.breadcrumb-denken li:last-child:after {
  content: '';
}

.breadcrumb-denken li a {
  text-decoration: none;
}

.breadcrumb-denken li a:hover {
  text-decoration: underline;
}

.table_middle_w {
vertical-align: middle;
line-height: 140%;
}
.table_middle {
vertical-align: middle;
}

.doubleline { 
  text-decoration-line: underline;
  text-decoration-style: double;
}
.categorycap p, .categorycaution p{
margin: 0 0 20px 20px;
}
.categorycap a{
  text-decoration-line: underline;
}
.categorycaution{
	width: 100%;
    margin: 0 0 20px 0;
	padding: 20px 30px 0;
    border: red double 5px;
}
.categorycaution a{
  text-decoration-line: underline;
  font-weight: bold;
}

	/*------- お知らせ -------*/
.head-p {
    float: left;
    margin: 10px 0 10px 0;
    padding: 0 20px 0 40px;
    font-size: 1.2rem;
    color: red;
    background: url(../../default/img/head-p-caution.png) 10px no-repeat;
    font-weight: bold;
    background-color: yellow;
    }
@media screen and (max-width: 640px) {
.head-p-sp {
	display: block;
    padding: 2px 0 2px 40px;
    margin: 5px 0 2px 0;
    /* float: left; */
    font-size: 1.2rem;
    color: red;
    background: url(../../default/img/head-p-caution.png) 10px no-repeat;
    font-weight: bold;
    background-color: yellow;
}
}
.head-p a,
.head-p-sp a {
	color: red;
	}
	
.stu_guide01_01 h5 {
    margin: 0 0 20px 0;
    padding: 0 0 0 25px;
    font-size: 1.8rem;
    line-height: 1.7;
    color: #1d2088;
}

	/*------- スマホとパソコンで改行の位置を変更 -------*/
.br-pc {display: none; }
@media screen and (min-width: 768px){
.br-sp {display: none; }
.br-pc {display: block; }
}



/*------- 改修のため変更箇所 -------*/

#main h2{
	position: relative;
	padding: 5px 20px 5px 38px;
	background: #fff;
	background: -moz-linear-gradient(top, #ffffe7 0%, #fffff 100%);
	background: -webkit-linear-gradient(top, #ffffe7 0%,#fffff 100%);
	background: linear-gradient(to bottom, #ffffe7 0%,#ffffff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffe7', endColorstr='#ffffff',GradientType=0 );
}

h2{
	margin: 0 0 20px 0;
	padding: 5px 20px;
	font-size: 2.2rem;
	line-height: 1.7;
	font-weight: bold;
	background: #fff;
	background: -moz-linear-gradient(top, #ffffe7 0%, #ffffff 100%);
	background: -webkit-linear-gradient(top, #ffffe7 0%,#ffffff 100%);
	background: linear-gradient(to bottom, #ffffe7 0%,#ffffff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffe7', endColorstr='#ffffff',GradientType=0 );
	border-top: #f8b600 solid 4px;
	border-bottom: #eee solid 1px;
}

h1{
	margin: 0;
	padding: 0 5px;
	font-size: 1.3rem;
	font-weight: normal;
	text-align: right;
	color: #fff;
	background: #f8b600;
	border-bottom: #ffce38 solid 1px;
}

#header{
	margin: 0 auto;
	padding: 0;
	border-top: #dda600 solid 1px;
}


.btn a,
.btn button{
	position: relative;
	display: inline-block;
	min-width: 30%;
	margin: 0 auto 10px auto;
	padding: 5px 40px 5px 30px;
	text-align: center;
	font-size: 1.4rem;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	background: #63c9df;
	background: -moz-linear-gradient(top, #ffce38 0%, #e4ac00 100%);
	background: -webkit-linear-gradient(top, #ffce38 0%,#e4ac00 100%);
	background: linear-gradient(to bottom, #ffce38 0%,#e4ac00 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffce38', endColorstr='#e4ac00',GradientType=0 );
	-webkit-box-shadow: inset 0 0 0 1px #ffce38;
	-moz-box-shadow: inset 0 0 0 1px #ffce38;
	box-shadow: inset 0 0 0 1px #ffce38;
	border: #dda600 solid 1px;
	border-radius: 5px;
}

#category{
	margin: 0 0 20px 0;
	padding: 0 0 1px 0;
	background: #ffffe7;
	border: #e4e4e4 solid 1px;
}

#side_left h2{
	margin: 0;
	padding: 10px;
	font-size: 1.4rem;
	border-top: #f8b600 solid 2px;
	border-bottom: #e4e4e4 solid 1px;
}

h3 {
    margin: 0 0 30px 0;
    padding: 10px;
    font-size: 1.9rem;
    line-height: 1.7;
    background: #ffffe7;
    border-left: #f8b600 solid 10px;
}

#footcat{
	margin: 0;
	padding: 40px 0;
	background: #ffffe7 url(../../default/img/topimage_bg01.png) left top repeat-x;
}

#footmenu{
	margin: 0;
	padding: 40px 0;
	background: #ffeaaf;
	border-bottom: #e4ac00 solid 1px;
}

#footmenu a,
#footmenu a:hover{
	color: #555555;
}
#footmenu h2{
	margin: 0 0 10px 0;
	padding: 0;
	font-size: 1.3rem;
	color: #555555;
	background: none;
	border: 0;
}

#fcopy{
	margin: 0;
	padding: 5px 0;
	background: #f8b600;
	border-top: #ffce38 solid 1px;
}

#footer .fmenu a:before{
	position: absolute;
	display: block;
	content: "";
	left: 0;
	width: 5px;
	height: 5px;
	border-top: 1px solid #f8b600;
	border-right: 1px solid #f8b600;
	top: 0.5em;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
	transform: rotate(45deg);
}

#footcat h3{
	margin: 20px 0 10px 0;
	padding: 0 0 0 15px;
	font-size: 1.3rem;
	background: url(../../default/img/ico_footlink_.svg) 0 5px no-repeat;
}

#footer #footmenu .fmenu a:before{
	border-color: #555555;
}

#item_detail h4{
	margin: 0 0 30px 0;
	padding: 10px;
	font-size: 1.9rem;
	line-height: 1.7;
	background: #ffffe7;
	border-left: #f8b600 solid 10px;
}

#headbtn{
    margin: 0 -15px 0;
	padding: 10px 0;
    float: right;
    }
.headbtnbox {
    float: left;
    margin: 0 15px 0 0;
    padding: 0;
}
#headbtn div {
    box-sizing: content-box;
}
.headbtnbox_img {
    margin: 0 0 5px 0;
    padding: 0;
}
.headbtnbox_img_sp {
    margin: 0 10px 0 0;
    padding: 0;
}
.headbtnbox h3 {
    margin: 0;
    padding: 0;
    font-size: 1.1rem;
    font-weight: normal;
    background: none;
    border: 0;
    text-align: center;
}

.new_itemarea {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0;
    padding: 10px 10px 0 10px;
    box-sizing: content-box;
}

.new_itembox {
	width: calc(100% / 2 - 14px);
    margin: -1px 7px 10px 5px;
    padding: 0;
    list-style-type: none;
    background: #fff;
    border: #e9e9e9 solid 1px;
}
@media screen and (max-width: 768px){
.new_itembox {
	width: 100%; }
}
.new_itembox h3{
	margin: 0;
	padding: 0;
	height: 50px;
	font-size: 1.4rem;
	font-weight: normal;
	background: none;
	border: 0;
	display: table-cell;
    vertical-align: middle;
}
.new_itembox a {
    display: block;
    padding: 3px 10px;
    font-weight: bold;
}
#recommend_product li:nth-child(even) {
    border-left: 0;
}
#recommend_product .area {
	background: url(../../default/img/bg_grid01.png) 0 0 repeat;
    border: #ccc solid 1px;
	margin: 0 0 20px 0;
}
#recommend_product h2 {
	margin: 0px;
}

#topcopy {
	display: grid;
	place-items: center;
	color: #df070a;
	padding: 5px;
	text-align: center;
	font-size: 2rem;
}
@media screen and (max-width: 768px){
#topcopy {
	font-size: 1.2rem; }
}

.new_itembox .ico{
	width: 30px;
	min-width: 30px;
	margin: 10px 0 10px 10px;
	float: left;
}

/*------- 電検改修のため変更箇所 -------*/
/* 電検ヘッダー */

.denkentophead.-maincat {
    height: auto;
    padding-top: 0;
    margin: 10px 0;
}
.denkentophead {
    background-image: url(/html/template/default/img/denken/bg_head.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 47.2vw;
    color: #fff;
    padding-top: 14.6vw;
}
.denkentopheadcontainer {
    padding: 0 2vw;
    margin: 0 auto;
}
.denkentophead_inner {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: center!important;
    align-items: center!important;
}
.denkentophead_inner, .denkentophead .denkentopheadcontainer {
    height: 100%;
}
.denkentophead p {
    line-height: 1.5;
    font-weight: 500;
}
#denken_header h2 {
	padding: 0px;
    font-weight: 700;
    background: none;
    border: none;
    padding: 0;
    margin: 0;
}
#denken_header h2:before {
    content: none;
}
#denken_header span {
    display: block;
    color: #f1dc9c;
    }

/* 電検メニューバーの装飾 */
ul.ddmenu,
ul.ddmenu_cons {
    margin: 0px;
    padding: 0px;
    background-color: #fff;
    width: 100%;
}

/* メインメニュー項目の装飾 */
ul.ddmenu li {
    width: calc(99% / 7 - 13px);
    display: inline-block;
    list-style-type: none;
    position: relative;
    background-color: #3cb23e;
    vertical-align: middle;
    margin: 0 -2px -2px -2px;
}
ul.ddmenu_cons li {
	width: calc(99% / 6);
    display: inline-block;
    list-style-type: none;
    position: relative;
    background-color: #3cb23e;
    vertical-align: middle;
    margin: 0 -2px -2px -2px;
}

ul.ddmenu a,
ul.ddmenu_cons a {
    color: white;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;
    font-size: 1.2rem;
    height: 50px;
    display: grid;
	place-items: center;
}
ul.ddmenu a:hover {
    background-color: #7abd7a;
    color: #fff;
    border-bottom: #ffce38 solid 3px;
}
ul.ddmenu_cons a:hover {
    background-color: #7abd7a;
    color: #fff;
    border-bottom: #ffce38 solid 3px;
}

/* ▼サブメニューがある場合に開く処理 */	/* ※サブメニューが1階層しか存在しない場合の記述 */
ul.ddmenu li:hover ul,
ul.ddmenu_cons li:hover ul {
	display: block;		/* ★マウスポインタが載っている項目の内部にあるリストを表示する */
}

/* ▼サブメニューの装飾 */
ul.ddmenu ul,
ul.ddmenu_cons ul {
	margin: 0px;			/* ★サブメニュー外側の余白(ゼロ) */
	padding: 0px;			/* ★サブメニュー内側の余白(ゼロ) */
	display: none;			/* ★標準では非表示にする */
	position: absolute;		/* ★絶対配置にする */
	z-index: 3;
}

/* ▼サブメニュー項目の装飾 */
ul.ddmenu ul li {
    width: 200px;
    border-top: 1px solid #fff;
    margin: 0;
	background-color: #4d984deb;
}
ul.ddmenu_cons ul li {
    width: 200px;
    border-top: 1px solid #fff;
    margin: 0;
    background-color: #4d984deb;
}

ul.ddmenu ul li a,
ul.ddmenu_cons ul li a {
	line-height: 2;		/* サブメニュー1項目の高さ*/
	text-align: left;
	padding: 15px 10px;
	font-weight: normal;
	height: fit-content;
	place-items: unset;
}
ul.ddmenu ul li a:hover {
    /* background-color: #ffff80; */
    /* color: #005500; */
}

/* レイアウト */
.pagejump {
  margin-top:-500px;
  padding-top:500px;
}
.images-2,
.images-3 {
    margin: 0;
}
.images-2 li,
.images-3 li {
    list-style-type: none;
    margin: 0 0 10px 0;
}
.panel-denken figure img {
    max-width: 100%;
}
#denkentitle .innercontents,
#denken_pagestitle .innercontents {
    padding: 0 4vw;
}
.panel-denken .panel-text p {
    margin-top: 6vw;
}
@media screen and (min-width: 768px){
.images-2,
.images-3 {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -14.5px 20px
}
.images-2 li {
    width: 50%;
    margin-bottom: 0;
    padding: 0 14.5px;
    list-style-type: none;
}
.images-3 li {
    width: 33%;
    margin-bottom: 0;
    padding: 0 14.5px;
    list-style-type: none;
}
.panel-denken {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -15px 20px -15px;
}
.panel-denken p {
    margin-bottom: 16px;
}
.panel-denken .panel-text p {
    margin-top: 0;
}
.panel-denken .panel-text {
    padding: 0 15px;
    width: 50%;
}
.panel-denken figure {
    width: 50%;
    padding: 0 15px;
}
#denkentitle .innercontents,
#denken_pagestitle .innercontents{
    padding: 0 10px;
}

denkentophead.-maincat {
    padding-top: 62px;
    /*padding-bottom: 60px;*/
}
.denkentophead {
    background-image: url(/html/template/default/img/denken/bg_head.png);
    background-size: auto;
    height: 200px;
    padding-top: 0;
}
.denkentopheadcontainer {
    padding: 15px;
    max-width: 1010px;
}
.denkentophead h2 {
    font-size: 30px;
}
#denken_header span {
    font-size: 14px;
    margin-bottom: 18px;
}
.denkentophead p {
    font-size: 2rem;
    line-height: 1.4;
}
}

/* 電検スライダー用装飾 */
#denkentitle .sliderArea {
	max-width: 100%;
	margin: 0 auto;
	padding: 0 25px;
}
#denkentitle .sliderArea.w300 {
	max-width: 300px;
}
#denkentitle .slick-slide {
	margin: 0 5px;
}
#denkentitle .slick-slide img {
	width: 100%;
	height: auto;
}
#denkentitle .slick-prev, #denkentitle .slick-next {
	z-index: 1;
}
#denkentitle .slick-prev:before, #denkentitle .slick-next:before {
	color: #000;
}
#denkentitle .slick-slide {
	transition: all ease-in-out .3s;
/* 	opacity: .2; */
}
#denkentitle .slick-active {
	opacity: 1;
}
#denkentitle .slick-current {
	opacity: 1;
}
#denkentitle .thumb {
	margin: 20px 0 0;
}
#denkentitle .thumb .slick-slide {
	cursor: pointer;
}
#denkentitle .thumb .slick-slide:hover {
	opacity: .7;
}

/* .full-screen */

.full-screen .slick-list {
	/* overflow: visible; */
}
.full-screen.slider {
	/* max-width: 300px; */
	margin: 0 auto;
}