@charset "utf-8";
/*

　CSS　common.css

*/


html, body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}
div#container {
	margin: 0 auto;
	position: relative;
	height: auto !important;
	height: 100%;
	min-height: 100%;
}




/******************************************************************

     文字色

******************************************************************/

.red {
	color:#F00;
}

/******************************************************************

     画像 遅延処理

******************************************************************/


.P-ready {
	opacity: 0;
}
.P-loaded {
	opacity: 1;
	-webkit-transition: all 300ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 10ms;
	-moz-transition: all 300ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 10ms;
	-o-transition: all 300ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 10ms;
	transition: all 300ms cubic-bezier(0.445, 0.05, 0.55, 0.95) 10ms;
}




/******************************************************************

     画像 ピンぼけ対策

******************************************************************/

.img_rendering {
	width:100%;
	height:auto;
	image-rendering: -webkit-optimize-contrast;
}


/******************************************************************

    メッセージ

******************************************************************/

/***** 管理者用メッセージ *****/

.admin_msg {
	background-color:#EFEFEF;
	border:5px solid #CCC;
	padding:1.0rem;
}
.admin_msg dl {
	margin:2.0rem 1.0rem;
	padding:0.5rem;
}
.admin_msg dl dt {
	font-weight:bold;
	font-size:1.6rem;
}
.admin_msg dl dt:before {
	content:"\f0eb";
	font-family: FontAwesome;
	font-size:3.0rem;
	vertical-align:middle;
	padding:0 0.5rem 0.5rem 0;
	color:#FC0;
}
.admin_msg dl dd {
	font-size:1.4rem;
	margin:0 0 0.5rem 2.5rem;
}
.admin_msg dl dd input[type="submit"] {
	border:none;
	padding:0.5rem;
	cursor:pointer;
	background-color:#333;
	color:#FFF;
}
.admin_msg dl dd input[type="submit"]:hover {
	background-color:#09F;
}
/***** メッセージ 黄色 *****/

.yellow_msg {
	background-color:#FFC;
	border:5px solid #FC0;
	padding:0.25rem;
	margin:1.0rem 0.75rem;
	text-align:left;
}
.yellow_msg dl {
	margin:1.0rem;
	padding:0.5rem;
}
.yellow_msg dl dt {
	font-weight:bold;
	font-size:1.6rem;
}
.yellow_msg dl dt i {
	font-size:2.0rem;
	vertical-align:middle;
	padding:0 0.5rem 0.5rem 0;
	color:#FC0;
}
/*
.yellow_msg dl dt:before {
	content:"\f0eb";
	font-family: FontAwesome;
	font-size:3.0rem;
	vertical-align:middle;
	padding:0 0.5rem 0.5rem 0;
	color:#FC0;
}
*/


.yellow_msg dl dd {
	font-size:1.5rem;
	margin:0 0 0 2.5rem;
}
/***** メッセージ 赤色 *****/

.red_msg {
	background-color:#FEE;
	border:5px solid #F00;
	padding:0.25rem;
	margin:1.0rem 0.75rem;
	text-align:left;
}
.red_msg dl {
	margin:1.0rem;
	padding:0.5rem;
}
.red_msg dl dt {
	font-weight:bold;
	font-size:1.6rem;
}
.red_msg dl dt i {
	font-size:2.0rem;
	vertical-align:middle;
	padding:0 0.5rem 0.5rem 0;
	color:#F00;
}
.red_msg dl dd {
	font-size:1.5rem;
	margin:0 0 0 2.5rem;
}

/***** メッセージ 青色 *****/

.blue_msg {
	background-color:#DCF3FE;
	border:5px solid #09F;
	padding:0.25rem;
	margin:1.0rem 0.75rem;
	text-align:left;
}
.blue_msg dl {
	margin:1.0rem;
	padding:0.5rem;
}
.blue_msg dl dt {
	font-weight:bold;
	font-size:1.6rem;
}
.blue_msg dl dt i {
	font-size:2.0rem;
	vertical-align:middle;
	padding:0 0.5rem 0.5rem 0;
	color:#09F;
}
.blue_msg dl dd {
	font-size:1.5rem;
	margin:0 0 0 2.5rem;
}




/* 点滅 */
.blinking{
	/*-webkit-animation:blink 0.75s ease-in-out infinite alternate;
    -moz-animation:blink 0.75s ease-in-out infinite alternate;*/
    animation:blink 0.75s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    /*20% {opacity:1;}*/
    100% {opacity:1;}
}







.admin_msg dl dd ul li, .yellow_msg dl dd ul li, .red_msg dl dd ul li {
	margin:0.5rem 0 0 0.5rem;
	list-style:none;
}
.admin_msg dl dd ul li:before, .yellow_msg dl dd ul li:before, .red_msg dl dd ul li:before {
	content:"\f0da";
	font-family: FontAwesome;
	font-size:2.0rem;
	vertical-align:middle;
	padding:0 0.5rem 0.5rem 0;
	color:#F00;
}
/***** エラーメッセージ *****/
.msg {
	border-radius:5px;
	padding:0.5rem;
	margin:0.5rem 0;
	font-size:1.25rem;
}
.msg i {
	margin:0 0.5rem 0 0;
}
.msg_error {
	background-color:#FEE;
	border:1px solid #F00;
	color:#F00;
	font-weight:bold;
}





/***** ワンポイント 強調メッセージ *****/

.msg-onepoint {
	text-align:center;
	margin:2.0rem auto;
}

.msg-onepoint .msgbox {
	display:inline-block;
	padding:1.5rem;
	position:relative;
	background-color:#EDFDCC;
	border-radius:5px;
}

.msg-onepoint .msgbox p {
	font-size:2.0rem;
	font-weight:bold;
}


.msg-onepoint .msgbox:before {
	content:"";
	position: absolute;
    display: inline-block;
    transform: skewX(33deg);
    width: 11px;
    height: 43px;
    background-color:#0C3;
	bottom:0;
	left:0;
}

.msg-onepoint .msgbox:after {
	content:"";
    position: absolute;
    display: inline-block;
    transform: skewX(-33deg);
    width: 11px;
    height: 43px;
    background-color:#0C3;
	bottom:0;
	right:0;

}


.msgbox {
}




/************************************************************************************/






/******************************************************************

     スマートフォン/タブレット以外は非表示

******************************************************************/

.sp-tb_view {
	display:none;
}

/******************************************************************

     スマートフォン以外は非表示

******************************************************************/


.sp_view {
	display:none;
}







/******************************************************************

     ヘッダー

******************************************************************/

header h1 {
	display:flex;
	align-items: center;
	max-width:620px;
}

header h1 img {
}


#seo_msg {
	white-space:nowrap;
	width:280px;
	z-index:100;
	margin:0 0 0 0;
	text-align:center;
	order:2;
}

#seo_msg p {
	color:#333;
	font-size:1.25rem;
	font-weight:bold;
	padding:0.25rem;
	letter-spacing:0.075rem;
}

#seo_msg p span {
	font-size:1.15rem;
}


header {
	width:100%;
	background-color:#FFF;
	height:auto;
	padding:0 0 0 0;
	/*border-bottom:10px solid #F4F4F4;*/
	position:relative;
	display:flex;
	/*max-width:1280px;*/
	max-width:1400px;
	margin:auto auto;
}

/*
header p {
	width:100%;
	text-align:right;
	padding:0 0.5rem;
	font-size:1.2rem;
	font-weight:bold;
	height:25px;
	line-height:25px;
	color:#144B97;
}*/



header ul {
	width:100%;
	width:calc(100% - 620px);
	height:auto;
	display:flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	align-items: center;
}

header ul li {
	text-align:center;
	float:left;
	margin:1.0rem 0.5rem 1.0rem 0;
}




header ul li a {
	font-size:1.25rem;
}


header ul li.c_mypage a {
	width:120px;
	height:40px;
	font-weight:normal;
	display:block;
	text-decoration:none;
	color:#FFF;
	padding:1.0rem;
	background-color:#D00000;
}

header ul li.c_login a {
	width:120px;
	height:40px;
	font-weight:normal;
	display:block;
	text-decoration:none;
	color:#FFF;
	padding:1.0rem;
	background-color:#666;
}


header ul li.c_watch a {
	width:120px;
	height:40px;
	font-weight:normal;
	display:block;
	text-decoration:none;
	color:#FFF;
	padding:1.0rem;
	background-color:#06C;
}

header ul li.c_watch a {
}



header ul li.c_mypage a:hover {
	background-color:#F36;
}

header ul li.c_login a:hover {
	background-color:#333;
}

header ul li.c_watch a:hover {
	background-color:#09F;
}


header ul li.c_sns a {
	width:50px;
	height:50px;
	display:block;
	text-decoration:none;
	color:#FFF;
	padding:1.0rem;
	background-color:#FFF;
	border-radius:50%;
}

header ul li.c_sns a img {
	width:100%;
	height:auto;
	-webkit-backface-visibility: hidden;
}

header ul li.c_sns a:hover {
	background-color:#0CC;
}


header ul li {
	position:relative;
}

header ul li span.point_counter {
	width:20px;
	height:20px;
	position:absolute;
	top:27.5%;
	right:-3%;
	display:inline-block;
	border-radius:50%;
	background-color:#F36;
	color:#FFF;
	font-size:1.2rem;
	line-height:20px;
	font-weight:bold;
}


/*管理者用 ログインメッセージ*/
.admin_login {
	background-color:#FA1252;
	padding:1.1rem 1.2rem;
	font-size:1.2rem;
	color:#FFF;	
}

.admin_login span {
	display:inline-block;
	max-width:180px;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
	vertical-align:middle;
}




/******************************************************************

     フッター

******************************************************************/

footer {
	width:100%;
	clear:both;
	background-color:#FFF;
}

.footer_contents {
	position:relative;
	text-align:center;
	padding:0 0 3.0rem 0;
	width:100%;
	margin:auto auto;
}


.footer_contents ul {
	margin:0 0 5.0rem 0;
	padding:1.0rem 0.5rem;
	display:flex;
	justify-content:center;
	background-color:#333;	
}

.footer_contents ul li {
	color:#333;
	font-size:1.4rem;
	padding:1.0rem;
}




.footer_contents ul li a {
	text-decoration:none;
	color:#FFF;
	font-weight:bold;
}

.footer_contents ul li a:hover {
	color:#F36;
}

.footer_contents ul li a:before {
	content:"\f0da";
	font-family: FontAwesome;
	font-size:2.0rem;
	vertical-align:middle;
	padding:0 0.5rem 0.5rem 0;
	color:#F00;
}



.footer_contents dl {
	display:flex;
	flex-wrap:wrap;
	/*max-width:900px;*/
	margin:1.0rem auto 1.0rem auto;
	color:#000;
}

.footer_contents dl dt {
	width:100%;
	font-size:1.4rem;
	font-weight:bold;
	text-align:left;
	padding:1.0rem;
}

.footer_contents dl dd {
	flex-wrap:wrap;
	padding:0;
	text-align:center;
}

.footer_contents dl dd a {
	text-decoration:none;
	color:#000;
}

.footer_contents dl dd a:hover {
	text-decoration:underline;
}


.footer_contents dl dd p {
	text-align:center;
	font-size:1.5rem;
	margin:0 0 0.5rem 0;
	width:100%;
	font-weight:bold;
}

.footer_contents dl dd:nth-child(1) {
	width:100%;
}
.footer_contents dl dd:nth-child(1) img {
	max-width:265px;
}


.footer_contents dl dd:nth-child(2) {
	/*width:50%;*/
	width:100%;
}



.footer_contents dl dd p.campany_name {
	font-size:2.2rem;
}

.footer_contents dl dd p.campany_name span {
	font-size:1.4rem;
}

.footer_contents dl dd img {
	width:70%;
	height:auto;
}


.footer_contents p {
	font-size:1.6rem;
	/*border-bottom:4px solid #9C3;*/
	text-align:center;
	margin:auto auto;
	padding:0;
}




.copylight_contents {
	background-color:#FFF;
	/*display:flex;*/
	width:100%;
}






.footer_contents .privacy {
	margin:2.0rem 0 0 0;
	font-size:1.4rem;
}


.footer_contents .privacy a {
	font-weight:normal;
	color:#0C3;
	text-decoration:none;
}

.footer_contents .privacy a:hover {
	font-weight:normal;
	color:#9C0;
}

.copylight {
	vertical-align:top;
	width:100%;
}

.copylight p {
	font-size:1.2rem;
	padding:1.0em 4.0em 1.0rem 1.2rem;
	white-space:nowrap;
	text-align:right;
	font-weight:bold;
}




/* 追加 フッターコンテンツ */


.footer_contents_add {
	background-color:#333;
	border-bottom:1px solid #FFF;
}

.footer_contents_add dl {
	display:flex;
	justify-content: center;
	margin:5.0rem 0 0 0;
	padding:2.0rem 0.5rem 2.0rem 0.5rem;
}



.footer_contents_add dl dd {
	color:#333;
	font-size:1.4rem;
	font-weight:bold;
}




.footer_contents_add dl dd a {
	display:block;
	color:#FFF!important;
	text-decoration:none;
	font-size:1.4rem;
	box-sizing:border-box;
	padding:0 2.0rem;
	margin:0 0 0 0;
	position:relative;
}

.footer_contents_add dl dd a:hover {
	color:#F36;
}

.footer_contents_add dl dd a:before {
	content: "";
    position: absolute;
    left: 0;
    width: 1px;
    height: 22px;
    border-left: 1px solid #FFF;
}

.footer_contents_add dl dd:nth-last-child(1) a:after {
    content: "";
    position: absolute;
    right: 0;
    width: 1px;
    height: 22px;
    border-right: 1px solid #FFF;
}


/*** フッターコンテンツ SNS ***/

 .footer_contents ul {
	margin:0 0 10px 0;
}

.footer_contents .sns_link {
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
}

.footer_contents .sns_link a {
	width:200px;
	padding:5px;
	border:1px solid #111;
	text-align:center;
	text-decoration:none;
	margin:2px;
}

.footer_contents .sns_link a:hover {
	background-color:#F0F0F0;
}



.footer_contents .sns_link a dl {
	display:flex;
	align-items:center;
	margin:0;
}

.footer_contents .sns_link a dl dt {
	width:60px;
	padding:0 0 0 5px;
}

.footer_contents .sns_link a dl dd {
	width:calc(100% - 60px);
	font-size:1.6rem;
}

.footer_contents .sns_link a dl dd span {
	font-weight:bold;
}

.footer_contents .sns_link a img {
	width:50px;
	height:auto;
	vertical-align:bottom;
}



/******************************************************************

    ページコンセプト メッセージ
	
******************************************************************/


.page_concept {
	/*background-color:#F0F0F0;*/
	margin:0 0 1.0rem 0;
	padding:2.5rem 1.0rem;
	position: relative;
}

.page_concept h2 {
	font-size:rem;
	font-weight:bold;
	text-align:center;
	 position: relative;
	 width: 100%;
	 margin: 0 auto 0.5rem auto;
	 padding: 1.0rem 0.5rem;
	 border-bottom: 3px solid #666;
}

.page_concept h2:before {
	content: "";
	position: absolute;
	left: 0;
	bottom:-3px;
	width: 20%;
	height: inherit;
	border-bottom: 3px solid #FF0000;
}


.page_concept p {
	font-size:1.5rem;
	text-align:left;
	padding:1.0rem 0.5rem;
}





/******************************************************************

    メインコンテンツ部

******************************************************************/

#main_container {
	clear:both;
	width:100%;
	/*max-width:1280px;*/
	/*min-height:800px;*/
	margin:0 auto 0 auto;
	/*border-top:5px solid #E60F1F;*/
}
#main_contents {
	position:relative;
	/*width:calc(100% - 0);*/
	box-sizing:border-box;
	/*float:right;*/
	width:calc(100% - 0);
}


#main_contents img {
	max-width:100%;
	height:auto;
}

#main a {
	color:#134B97;
}

#main a:hover {
	color:#0CC;
}




/******************************************************************

    メインセクション 左右分岐 （右：ローカルメニュー） 

******************************************************************/


#main_section {
	display:flex;
	max-width:1280px;
	/*min-height:800px;*/
	margin:auto auto;
}

#main_section_left {
	width:25%;
	min-width:320px;
	padding:1.0rem;
}

#main_section_right {
	width:75%;
	padding:1.0rem;
	background-color:#FFF;
}

#main_section .btn_area .border_btn {
	max-width:40%;
	min-width:380px;
	margin:auto auto;
}


.side_section {
	/*border:1px solid #999;*/
}


/*正方形バナー（PC画面で左上）*/
.side_banner {
	margin:0 0 1.0rem 0;
}

.side_banner img {
	vertical-align:bottom;
	width:100%;
	max-width:360px;
	height:auto;
	image-rendering: -webkit-optimize-contrast;/* ピンぼけ */
}










.category_list dl {
	margin-bottom:1.0rem;
}

.category_list dl dt {
	background-color:#333;
	color:#FFF;
	padding:1.5rem 1.0rem;
	font-size:1.5rem;
	text-align:left;
}

.category_list dl dt i {
	font-size:2.4rem;
	margin:0 0.5rem 0 0;
	vertical-align:top;
}

.category_list dl dt img {
	width:27px;
	margin:0 5px 0 0;
	height:auto;
	vertical-align:middle;
}


/*
.category_list dl dd a {
	text-align:left;
	color:#333!important;
	display:block;
	padding:1.0rem;
	border-bottom:1px solid #666;
	text-decoration:none;
	background-color:#F0F0F0;
}*/



/* カテゴリーリスト */

.category_list dl dd.ac_content {
	display:block;
}



/* サイドバナーなど、SSL認証シール用 */
.side_banner_s {
	margin:1.0rem auto;
}

.side_banner_s ul li {
	margin:0 0 1.0rem 0;
}


.side_banner_s p {
	font-size:0.9rem;
	text-align:left;
}

.side_banner_s img {
	vertical-align:bottom;
}

footer .side_banner_s {
	margin:1.0rem auto;
	text-align:center!important;
}





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

	ツリーメニュー

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

.tree_menu {
	/*font-size:1.5rem;*/
}
.tree_menu ul {
	display:none;
	cursor:pointer;
	list-style:none;
}

.tree_menu ul > li > span {
	cursor:pointer;
	margin:0;
	padding:0 0 0 25px;
	text-align:left;
	display:block;
	text-decoration:none;
	width:100%;
	height:40px;
	line-height:40px;
	vertical-align:middle;
	border-bottom:1px solid #666;
	background-color:#DDD;
	color:#333!important;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-weight:bold;
	position:relative;
}

.tree_menu ul > li > ul li span  {
	padding:0 0 0 40px!important;
	background-color:#EEE;
}


.tree_menu ul > li > ul li ul li a {
	background-color:#F9F9F9;
}



 /*操作後（-）*/
.tree_menu span:after {
	content:"\F196";
	position:absolute;
	font-family: FontAwesome ;
	left:5px!important;
	color:#B12E29;
}

 /*操作前（+）*/
.tree_menu span.tree_open:after {
	content:"\F147 ";
	position:absolute;
	font-family: FontAwesome;
	left:5px!important;
}

.tree_menu ul > li > ul li span:after {
	left:20px!important;
	content:"\F067 ";
}

.tree_menu ul > li > ul li span.tree_open:after {
	left:20px!important;
	content:"\F068";
}





.tree_menu li {
	cursor:pointer;
	padding:0 0 0 0;
	list-style:none;
	position:relative;
}




.tree_menu a {
	text-align:left;
	display:inline-block;
	text-decoration:none;
	width:100%;
	/*line-height:40px;*/
	vertical-align:middle;
	border-bottom:1px solid #999;
	background-color:#F4F4F4;
	color:#333!important;
	padding:0.75rem 0 0.75rem 50px;
	/*overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;*/
	position:relative!important;
	font-weight:normal;
}

.tree_menu a:hover {
	color:#B12E29;
	color:#111!important;
	/*background-color:#D0EAFD!important;*/
	background-color:#BAD6EF;
}

.tree_menu span:hover {
	color:#000!important;
	background-color:#BAD6EF;
	/*position:absolute;*/
}

.tree_menu span:focus {
	color:#000!important;
	background-color:#BAD6EF;
}


.tree_menu span.tree_open {
	background-color:#BAD6EF;
}



.tree_menu ul li a:before {
	content:"\f105";
	position:absolute;
	font-family: FontAwesome;
	font-weight:bold;
	top:33%;
	line-height:10px;
	color:#b12e29;
}

.tree_menu ul > li > ul > li > ul li a {
	padding:0.75rem 0 0.75rem 50px;
}

.tree_menu ul > li > ul > li > ul li a:before {
	left:40px;
}

.tree_menu ul > li > ul > li > a {
	padding:0.75rem 0 0.75rem 30px;
}

.tree_menu ul > li > ul > li > a:before {
	left:20px;
}




/*数字表示*/
.tree_menu ul li i {
	font-size:0.6rem;
	font-weight:bold;
	font-style:normal;
	margin:0 0 0 1.0rem;
	color:#09C;
}






/* ==================================================
	リンク解除
================================================== */

.tree_menu ul > li > ul > li > div {
	cursor:default;
	text-align:left;
	display:inline-block;
	text-decoration:none;
	width:100%;
	vertical-align:middle;
	border-bottom:1px solid #999;
	background-color:#F4F4F4;
	color:#333!important;
	padding:0.75rem 0 0.75rem 30px;
	position:relative!important;
	font-weight:normal;
}

.tree_menu ul > li > ul > li > ul li div {
	cursor:default;
	text-align:left;
	display:inline-block;
	text-decoration:none;
	width:100%;
	vertical-align:middle;
	border-bottom:1px solid #999;
	background-color:#F4F4F4;
	color:#333!important;
	padding:0.75rem 0 0.75rem 50px;
	position:relative!important;
	font-weight:normal;
}


.tree_menu ul > li > ul > li > div:after {
	content:"\f105";
	left:20px!important;
	position:absolute;
	font-family: FontAwesome;
	font-weight:bold;
}

.tree_menu ul > li > ul > li > ul li div:after {
	content:"\f105";
	left:40px!important;
	position:absolute;
	font-family: FontAwesome;
	font-weight:bold;

}





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

	owlCarousel使用 スライド

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

.slide_image {
	margin:1.0em 0 5.0em 0;
	padding:2.0em 0;
}
.slide_image ul {
}
.slide_image ul li {
	margin:0 0;
	padding:0;
}
.slide_image ul li img {
	width:100%;
	height:auto;
}






/******************************************************************

    Youtube 推奨

******************************************************************/

.movie {
	position: relative;
    width:100%;
	height:100%;
}

.movie:before {
    content:"";
    display: block;
    padding-top: 56.25%; /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
}



.movie iframe {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}






/********************************************************************************

   ページ上に戻る
   
********************************************************************************/

.pagetop {
	display: none;
	position: fixed;
	bottom: 8px;
	right: 8px;
	z-index:1000;
}
.pagetop a {
	display: block;
	background:rgb(10,10,10,0.7);
	border-radius:1px;
	color:#FFF;
	text-align: center;
	text-decoration: none;
	position:relative;
	width:75px;
	height:75px;
}
.pagetop a:hover {
	display: block;
	background-color:#060203;
}
.pagetop a:after {
	position:absolute;
	width:75px;
	height:75px;
	right:0;
	top:6px;
	font-size:6.0rem;
	content:"";
	font-family: 'FontAwesome';
	content: "\f106";
	transform:rotate(0deg);
	color:#FC3033;
}
/*
.pagetop a:hover:before, .pagetop a:hover:after{
	color:#FFF;
}
*/






/* # =================================================================
   #
   # ボタンデザイン
   #
   # ================================================================= */


.btn_area {
	width:98%;
	margin:1.0rem auto;
	padding:1.0rem;
	box-sizing:border-box;
}

.btn_area p {
	font-weight:bold;
	padding:0 0 1.0rem 0;
}

.btn_area ul li {
	margin:auto auto 1.0rem auto;
}




/* 通常ボタン */

.common_btn {
	display: block;
	width: 100%;
	max-width:300px;
	margin:0 auto 0 auto;
	padding:1.0rem;
	box-sizing:border-box;
	text-align: center;
	text-decoration: none;
	line-height: 44px;
	outline: none;
}
/*
.common_btn a {
    font-size: 1.8rem;
    min-width: 6.0rem;
    color: #FFF!important;
    text-decoration: none;
    display: block;
    padding: 0.25rem;
    -webkit-transition: all .3s;
    transition: all .3s;
}
*/

.common_btn a {
    font-size: 1.4rem;
    min-width: 20.0rem;
    text-align: center;
    color: #FFF!important;
    text-decoration: none;
    display: block;
    padding:0.5rem;
    -webkit-transition: all .3s;
    transition: all .3s;
    border-radius: 3px;
}

.common_btn a:hover {
	outline:none!important;
}



/* 角丸ボタン */

.radius_btn {
	display: block;
	width: 100%;
	max-width:300px;
	margin:0 auto 0 auto;
	padding:1.0rem;
	box-sizing:border-box;
	text-align: center;
	text-decoration: none;
	line-height: 44px;
	outline: none;
}

.radius_btn a {
    font-size: 1.8rem;
    min-width: 6.0rem;
    color: #FFF!important;
    text-decoration: none;
    display: block;
    padding: 0.25rem;
	border-radius:25px;
    -webkit-transition: all .3s;
    transition: all .3s;
	box-sizing:border-box;
	
}







/* ボーダーボタン */
.border_btn {
	display: block;
	width: 100%;
	max-width:270px;
	margin:0 0 0 auto;
	padding:1.0rem;
	box-sizing:border-box;
	text-align: center;
	text-decoration: none;
	line-height: 38px;
	outline: none;
}


.border_btn a {
    font-size: 1.5rem;
    min-width: 6.0rem;
    color: #D00000!important;
    text-decoration: none;
    display: block;
    padding: 0.25rem 1.0rem 0.25rem 0.25rem;
	background-color:#FFF;
    border: 1px solid #D00000;
    -webkit-transition: all .3s;
    transition: all .3s;
	position:relative;
	box-sizing:border-box;
}

/*
.border_btn a {
	 border: 1px solid;
	 border-image: linear-gradient(to right,#fcbf90 0,#85dec9 100%);
	 border-image-slice: 1; 
}
*/

.border_btn a:hover {
	background-color:#D00000;
	color:#FFF!important;
}


.border_btn a:after {
	position:absolute;
	content:"\f0da";
	font-family: FontAwesome;
	font-size:2.2rem;
	vertical-align:middle;
	padding:0 1.0rem 0 0.5rem;
	color:#FF0000;
	top:2px;
}







/******************************************************************
     ボタンカラー
******************************************************************/

a.btn_red {
	background-color:#FF3333;
	border:1px solid #F00;
}
a.btn_red:hover {
	outline:1px solid #FF3333;
	background-color:#FFF;
	color:#FF3333!important;
}

a.btn_pink {
	background-color:#FF9999;
	border:1px solid #FF9999;
}
a.btn_pink:hover {
	outline:1px solid #FF9999;
	background-color:#FFF;
	color:#FF9999!important;
}

a.btn_steelblue {
	background-color:#09C;
	border:1px solid #09C;
}
a.btn_steelblue:hover {
	/*outline:1px solid #4682B4;*/
	outline:1px solid #09C;
	background-color:#FFF;
	color:#09C!important;
}

a.btn_darkblue {
	background-color:#002978;
	border:1px solid #002978;
}
a.btn_darkblue:hover {
	/*outline:1px solid #4682B4;*/
	outline:1px solid #002978;
	background-color:#FFF;
	color:#002978!important;
}


a.btn_blue {
	background-color:#154b97;
	border:1px solid #154b97;
}
a.btn_blue:hover {
	outline:1px solid #154b97;
	background-color:#FFF;
	color:#154b97!important;
}

a.btn_gray {
	background-color:#999;
}
a.btn_gray:hover {
	outline:1px solid #999;
	background-color:#FFF;
	color:#999!important;
}

a.btn_black {
	background-color:#333;
}
a.btn_black:hover {
	outline:1px solid #333;
	background-color:#FFF;
	color:#333!important;
}

/******************************************************************
     フォームボタンカラー
******************************************************************/
input[type="submit"].btn_gray {
	background-color:#999;
	border:1px solid #999;
}
input[type="submit"].btn_gray:hover {
	border:1px solid #999;
	background-color:#FFF;
	color:#999!important;
}

input[type="submit"].btn_black {
	background-color:#333;
	border:1px solid #333;
}
input[type="submit"].btn_black:hover {
	border:1px solid #333;
	background-color:#FFF;
	color:#333!important;
}







/******************************************************************

     リンク

******************************************************************/

.link {
	width:100%;
	border-top:4px solid #D1F2BF;
	padding:2.0rem 2.0rem;
}

.link ul {
	width:80%;
	margin:auto auto;
}


.link ul li dl dt a img {
	width:250px;
	height:auto;
}






/* # =================================================================
   #
   # 情報がない場合
   #
   # ================================================================= */

.no_info {
	margin:1.0rem 0.5rem;
	padding:2.0rem;
	/*border:1px solid #CCC;*/
	color:#333;
	font-size:1.5rem;
}






/******************************************************************

    pagination ページ送り

******************************************************************/

/*
.pagination {
	background-color:#FFF7E1;
	text-align:center;
}

.pagination ul {
	width:50%;
	margin:auto auto;
	background-color:#F1FCD3;
	display:flex;
	margin:auto;
	
}

.pagination ul li {
	background-color:#FC9;
	padding:1.0rem;
}


.pagination ul li:first-child {
	margin-right: auto;
}

.pagination ul li:last-child {
	margin-left: auto;
}
*/

/* # =================================================================
   #
   # サブページ ナビゲーション
   #
   # ================================================================= */

#crumbs {
	background-color:#333;

}

/*
#crumbs .sub_title  {
	height:50px;
	line-height:50px;
	background-color:#E60F1F;
}


#crumbs.used .sub_title h4 {
	color:#FFF;
}


#crumbs.parts .sub_title  {
	background-color:#FC0;
}


#crumbs.auction .sub_title  {
	background-color:#E1F20B;
}
*/


#crumbs .sub_title  {
	padding:5px 0;
	background-color:#FFF;
}

#crumbs.used .sub_title h4 {
	color:#333;
}


#crumbs.parts .sub_title  {
	/*border-top:5px solid #FC0;*/
	border-top:5px solid #E60F1F
}


#crumbs.auction .sub_title  {
	/*border-top:5px solid #E1F20B;*/
	border-top:5px solid #E60F1F
}


#crumbs.common .sub_title {
	border-top:5px solid #E60F1F
}

#crumbs .sub_title h4 span {
	vertical-align:middle;
	padding:0 5px;
}

#crumbs .sub_title h4 span img {
	width:36px;
	height:auto;
	background-color:#333;
	image-rendering: -webkit-optimize-contrast;/* ピンぼけ */
}


#crumbs .sub_title h4 span i {
	padding:3px 5px 5px 5px;
	margin:0 5px 0 0;
	display:inline-block;
	text-align:center;	
	background-color:#333;
	min-width:36px;
}



/***********************************/



#crumbs nav ul {
	width:100%;
	max-width:1280px;
	height:40px;
	line-height:40px;
	padding:0 0.5rem;
	margin:auto auto;
	font-size:1.5rem;
	text-align:left;
	display:flex;
	flex-wrap:wrap;
}

#crumbs nav ul.crumbs_list {
}



#crumbs nav ul li {
	margin:0 0.25rem;
}
#crumbs nav ul li a {
	color:#FFF;
	font-weight:bold;
	text-decoration:none;
}
#crumbs nav ul li a:hover {
	color:#FF9;
}

#crumbs nav ul li a:before {
	font-size:1.8rem;
	content:"\f105";
	font-family: FontAwesome;
	margin:0 10px 0 6px;
	color:#FFF;
}
#crumbs nav ul li:nth-child(1) a:before {
	display:none!important;
}

#crumbs nav ul li span {
	color:#FFF;
	font-weight:bold;
	text-align:left;
}


#crumbs nav ul li span > a:before {
	display:none!important;
}


#crumbs nav ul li span:before {
	font-size:1.8rem;
	content:"\f105";
	font-family: FontAwesome;
	margin:0 10px 0 5px;
}
#crumbs nav ul li:last-child {
/*margin-left: auto;/*右に寄せる場合*/
}


/*オークションのみのカラー*/



/******************************************************************

     汎用モーダル

******************************************************************/

.modal {
	position:fixed;
	width:70%;
	height:100vh;
	top:0;
	left:15%;
	display:none;
	z-index:9993;
}
.overLay {
	position:fixed;
	top:0;
	left:0;
	background:rgba(0,0,0,0.5);
	width:70%;
	height:100vh;
	z-index:9994;
}
.modal .inner {
	position:absolute;
	z-index:9995;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	background:#FFF;
	padding:10px;
	min-width:300px;
}

.modal .inner p {
	margin:0 0 2.0rem 0;
}


a.modalClose {
	text-decoration:none;
	text-align:center;
	margin:auto auto 10.0rem auto;
	width:100px;
	/*padding:1.0rem;*/
	display:block;
	/*background-color:#CF3;*/
}

.product_detail .product_detail_above .price .buy_box ul li a.modalClose {
	margin:auto auto 0 auto;
}



a.modalClose span {
	display:block;
	border-radius:5px;
	background-color:#036;
	text-align:center;
	padding:1.5rem;
	margin:auto auto;
	color:#FFF;
	text-decoration:none;
	width:100%;
}

a.modalClose:hover span {
	background-color:#06C;
}

a.modalClose span:before {
	content:"\f00d";
	font-family: FontAwesome;
	font-size:1.5rem;
	vertical-align:middle;
	padding:0 0.5rem 0.5rem 0;
	color:#FFF;
}



@keyframes modal {
 0% {
top:-100%
}
 100% {
top:50%
}
}
@keyframes modalClose {
 0% {
top:50%
}
 100% {
top:100%
}
}


/**** 規約 モーダル ****/
.overLay {
	position:fixed;
	top:0;
	left:0;
	background:rgba(0,0,0,0.5);
	width:100%;
	height:100vh;
	z-index:9994;
}

.terms_box .modal {
	height:90vh;
	top:5vh;
}

.terms_box .modal .inner {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	transform:none;
	margin:auto auto;
	width: 80%;
	height:auto;
	background:#FFF;
	overflow:auto;
}

.terms_box .modal .inner p {
	margin:0 0 2.0rem 0;
}



/*規約*/
.terms {
	margin:5.0rem 7.0rem;
}

.terms .title {
	font-size:2.5rem;
	font-weight:bold;
	margin:0 0 1.0rem 0;
	text-align:center;
}


.um_terms p {
	font-size:1.4rem!important;	
}

.terms ul {
	margin:1.0rem;
	font-size:1.5rem;
}

.terms ul li {
	padding:0.5rem;
	margin:0 0 0.5rem 0;
	text-indent:0.5rem;
}

/*
.terms ul li:before {
	content:"・";
}
*/

.um_terms {
	text-align:left;
}


.um_terms > dl dt {
	font-size:1.6rem;
	font-weight:bold;
}


.um_terms > dl dd ul li dl {
	margin:0 0 2.0rem 0;
}

.um_terms > dl dd ul li {
	margin:0 0 0.5rem 0;
}

.um_terms > dl dd ul li dl dt {
	font-size:1.4rem;
	font-weight:normal;
}




.um_terms > dl {
	margin:0 0 6.0rem 0;
	padding:0.5rem;
}



/* # =================================================================
   #
   # アコーディオン 処理
   #
   # ================================================================= */


.ac_content {
	display:none;
}


.ac_content_sp {
	display:block;
}



/* # =================================================================
   #
   # タブ実装
   #
   # ================================================================= */


.tab {
  width: 100%;
  max-width: 1200px;
  margin: auto auto;
  display: flex;
  flex-flow: wrap;
}

.tab input[type="radio"] {
  display: none;
}



.tab-item {
	width:50%;

  display: block;
  flex-grow: 1;
  text-align: center;
  padding:0;
  cursor: pointer;
  order: -1;/* タブメニューは一番上に表示する */
  
}

.tab-item:not(:first-of-type) {
  border-left: none;
}

/* アクティブなタブの背景色と文字色を変える */


.tab-input:checked + .tab-item {
	/*border:1px solid #F00;*/
}
    
/* コンテンツは原則非表示 */
.tab-content {
  width: 100%;
  height: auto;
  display: none;
}

/* ラジオボタンがチェックされているコンテンツだけは表示 */
.tab-input:checked + .tab-item + .tab-content {
  display: flex;
}





.copylight_contents .sp_bnr_member {
	display:none;
}







/*PCの縦長バナー設置*/
.copylight_contents .pc_bnr_member {
	display: none;
	position:fixed;
	right:0!important;
	bottom:80px;
	text-align:center;
	width:7.5%;
	min-width:70px;
	z-index:999!important;
	padding:0 8px 10px 0;
}

.copylight_contents .pc_bnr_member img {
	width:100%;
	height:auto;
	image-rendering: -webkit-optimize-contrast;
	vertical-align:middle;
}






/*********************************************************************************************************/
/* 
   #
   # 横幅小さい画面PCサイズ
   #
*/
/*********************************************************************************************************/

@media (min-width: 1025px) and (max-width:1199px) {

header {
	width:1080px;
}





/******************************************************************

    メインコンテンツ部

******************************************************************/

#main_container {
	max-width:1280px;
}




}






/*********************************************************************************************************/
/* 
   #
   # 横幅小さい画面PCサイズ(ここでは1280～1024px)
   #
*/
/*********************************************************************************************************/

@media (min-width: 1025px) and (max-width:1279px) {

header {
	width:100%;
	background-color:#FFF;
	height:auto;
	padding:0 0 0 0;
	position:relative;
	display:flex;
	flex-wrap:wrap;
}





header h1 {
	position:relative;
	top:0;
	left:0;
	text-align:center;
	width:75%;
	margin:auto auto;
}




header h1 img {
	width:300px;
	height:auto;
	margin:15px 0 0 0;
}

header h1 #seo_msg {
	width:100%;
	margin:0;
}



header p {
	font-size:1.1rem;
}

header ul {
	width:100%;
	margin:0.75rem 0 0.75rem 0;
	display:flex;
}

header ul li:nth-child(1) {
	width:100%;
	margin:0 0 0.5rem 0;
}


header ul li:only-child {
	width:auto;
	margin:0 0 0.5rem 0;
}



header ul li {
	text-align:center;
	margin:0 0.5rem 0 0;
}

header ul li a {
	font-size:1.2rem;
}

header ul li.c_mypage a {
	/*width:108px;*/
}

header ul li.c_sns a {
	width:40px;
	height:40px;
	padding:0.75rem;
}





/*管理者用 ログインメッセージ*/
.admin_login {
	top:auto;
	bottom:0;
	left:0;
	padding:0.25rem 1.0rem;
	font-size:1.2rem;
}


}



/**********************************************************************************************************************************************************************

     タブレット

**********************************************************************************************************************************************************************/


@media (min-width: 768px) and (max-width:1024px) {
	
/******************************************************************

     ヘッダー

******************************************************************/






header {
	width:100%;
	background-color:#FFF;
	height:auto;
	padding:0 0 0 0;
	position:relative;
	display:flex;
	flex-wrap:wrap;
}





header h1 {
	position:relative;
	top:0;
	left:0;
	text-align:center;
	width:75%;
	margin:auto auto;
}




header h1 img {
	width:300px;
	height:auto;
	margin:15px 0 0 0;
}

header h1 #seo_msg {
	width:100%;
	margin:0;
}



header p {
	font-size:1.1rem;
}

header ul {
	width:100%;
	margin:0.75rem 0 0.75rem 0;
	display:flex;
}

header ul li:nth-child(1) {
	width:100%;
	margin:0 0 0.5rem 0;
}

header ul li:only-child {
	width:auto;
	margin:0 0 0.5rem 0;
}

header ul li {
	text-align:center;
	margin:0 0.5rem 0 0;
}

header ul li a {
	font-size:1.2rem;
}

header ul li.c_mypage a {
	/*width:108px;*/
}

header ul li.c_sns a {
	width:40px;
	height:40px;
	padding:0.75rem;
}





/*管理者用 ログインメッセージ*/
.admin_login {
	top:auto;
	bottom:0;
	left:0;
	padding:0.25rem 1.0rem;
	font-size:1.2rem;
}



/******************************************************************

     フッター

******************************************************************/

footer {
	font-size:1.2rem;
	font-weight:normal;
	width:100%;
	height:100%;
}

footer .side_banner_s p {
	width:50%;
	margin:auto auto;
	text-align:center;
}


.footer_contents {
	background-color:#FFF;
	position:relative;
	text-align:center;
	padding:0 0 0 0;
	margin:0;
	width:100%;
}

.footer_contents h2 p {
	font-size:3.0rem;
	letter-spacing:0.33rem;
	width:90%;
	border-bottom:4px solid #9C3;
	text-align:center;
	margin:auto auto 2.0rem auto;
	padding:2.0rem 0 0 0;
}

.footer_contents ul {
	width:100%;
}



.footer_contents_add dl {
	flex-wrap:wrap;
	padding:0.5rem;
}

.footer_contents_add dl dd {
	width:50%;
	padding:0.25rem;
	margin:0;
}

.footer_contents_add dl dd a {
	padding:1.0rem;
	text-align:center;
	border:1px solid #FFF;
}

.footer_contents_add dl dd a:before , .footer_contents_add dl dd:nth-last-child(1) a:after {
	border:none;
}





.copylight_contents {
	/*display:flex;*/
	width:100%;
	background-color:#666;
}





.copylight {
	vertical-align:top;
	width:100%;
}

.copylight p {
	padding:1.6rem;
	color:#FFF;
	white-space:nowrap;
	text-align:center;
}





.pagetop a:before {
	display:none;
}










	

/******************************************************************

     サブページ 各コンテンツ nav

******************************************************************/

#main_contents {
	width:100%;
}






/******************************************************************

    メインセクション 左右分岐 （右：ローカルメニュー） 

******************************************************************/


#main_section {
	display:block;
	max-width:1280px;
	min-height:auto;
	margin:auto auto;

}

#main_section_left {
	width:100%;
	padding:0;
}

#main_section_right {
	width:100%;
	padding:1.0rem 0;
	background-color:#FFF;
}


/*正方形バナー（PC画面で左上）*/
.side_banner {
	display:none;
}


/* # =================================================================
   #
   # ボタンデザイン
   #
   # ================================================================= */


.btn_area {
	width:100%;
}


/* 発注ボタン */

.order_btn {
	width: 75%;
}






/******************************************************************

    (PC版の表示) スマートフォン/タブレットあれば非表示・表示

******************************************************************/

/*PCの場合は、表示、SP・タブレットは非表示*/
.sp-tb_hide {
	display:block;
}

.sp-tb_view {
	display:none!important;
}

















/******************************************************************

     規約 モーダル

******************************************************************/

.modal {
	width:90%;
	left:5%;
}



.overLay {
	position:fixed;
	top:0;
	left:0;
	background:rgba(0,0,0,0.5);
	width:100%;
	height:100vh;
	z-index:9994;
}

.terms_box .modal {
	height:80vh;
	top:10vh;
	bottom:10vh;
}

.terms_box .modal .inner {
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	transform:none;
	margin:auto auto;
	width: 100%;
	height:auto;
	background:#FFF;
	overflow:auto;
}

.terms_box .modal .inner p {
	margin:0 0 2.0rem 0;
}



/*規約*/
.terms {
	margin:5.0rem 7.0rem;
}

.terms p {
	text-align:center;
	font-weight:bold;
}

.terms ul {
	margin:1.0rem;
	font-size:1.5rem;
}

.terms ul li {
	padding:0.5rem;
	margin:0 0 1.0rem 0;
	text-indent:0.5rem;
}







/* カテゴリーリスト */

.category_list dl {
	margin-bottom:1px;
}

.category_list dl dt {
	position:relative;
	padding:1.2rem 1.0rem;
}

.category_list dl dt:after {
	font-family: 'FontAwesome';
	content: "\f0fe";
	transform:rotate(0deg);
	position:absolute;
	right:2%;
	top:35%;
}

.category_list dl dt.ac_open_sp {
	position:relative;
}

.category_list dl dt.ac_open_sp:after {
	content: "\f146";
	right:2%;
	top:35%;
	
}

.category_list dl dd.ac_content {
	display:none;
}




/*数字表示*/
.tree_menu ul li i {
	font-size:0.7rem;
}





/* # =================================================================
   #
   # アコーディオン処理
   #
   # ================================================================= */

.ac_content {
	display:none;
}

.ac_content_sp {
	display:none;
}








}



/**********************************************************************************************************************************************************************

     タブレット 横のみ有効デザイン

**********************************************************************************************************************************************************************/


@media (min-width: 1024px) and (max-width:1279px) {



/******************************************************************

    メインセクション 左右分岐 （右：ローカルメニュー） 

******************************************************************/



#main_section {
	display:flex;
	min-height:800px;
	margin:auto auto;
}

#main_section_left {
	width: 25%;
    min-width:auto;
    padding:0;
}

#main_section_right {
	width:75%;
    /*padding:0 0 0 5px;*/
}



/* # =================================================================
   #
   # アコーディオン処理
   #
   # ================================================================= */

.ac_content {
	display:block;
}

.ac_content_sp {
	display:block;
}

/* カテゴリーリスト */

.category_list dl dt:after {
	display:none;
}


.category_list dl dt.ac_open_sp:after {
	display:none;
}




}




/**********************************************************************************************************************************************************************/
/**********************************************************************************************************************************************************************/


    /*スマートフォントサイズ*/


/**********************************************************************************************************************************************************************/
/**********************************************************************************************************************************************************************/




@media screen and (max-width : 767px) {


/******************************************************************

    全般

******************************************************************/

body {
    line-height: 1.8;
	font-weight:normal;
}


p {
    text-align: justify;
}

/******************************************************************

    メッセージ

******************************************************************/

/***** 管理者用メッセージ *****/

.admin_msg {
	background-color:#EFEFEF;
	border:5px solid #CCC;
	padding:1.0rem;
}
.admin_msg dl {
	margin:2.0rem 1.0rem;
	padding:0.5rem;
}
.admin_msg dl dt {
	font-weight:bold;
	font-size:1.6rem;
}
.admin_msg dl dt:before {
	content:"\f0eb";
	font-family: FontAwesome;
	font-size:3.0rem;
	vertical-align:middle;
	padding:0 0.5rem 0.5rem 0;
	color:#FC0;
}
.admin_msg dl dd {
	font-size:1.4rem;
	margin:0 0 0.5rem 2.5rem;
}
.admin_msg dl dd input[type="submit"] {
	border:none;
	padding:0.5rem;
	cursor:pointer;
	background-color:#333;
	color:#FFF;
}
.admin_msg dl dd input[type="submit"]:hover {
	background-color:#09F;
}
/***** メッセージ 黄色 *****/

.yellow_msg {
	padding:0.25rem;
	margin:0.25rem 0;
}
.yellow_msg dl {
	margin:0.5rem;
	padding:0.25rem;
}
.yellow_msg dl dt {
	font-weight:bold;
	font-size:1.4rem;
}
.yellow_msg dl dd {
	font-size:1.4rem;
}
/***** メッセージ 赤色 *****/

.red_msg {
	padding:0.25rem;
	margin:0.25rem 0 0.5rem 0;
}
.red_msg dl {
	margin:0.5rem;
	padding:0.25rem;
}
.red_msg dl dt {
	font-weight:bold;
	font-size:1.4rem;
}
.red_msg dl dd {
	font-size:1.4rem;
}


/************************************************************************************/



/******************************************************************

     メニュー

******************************************************************/

.contents_guide {
	position:relative;
}



/******************************************************************

    メインコンテンツ部

******************************************************************/

#main_contents {
	width:100%;
	float:none;
}
#main_container {
	margin:0 0 2.0em 0!important;
}
/* ==================================================

	owlCarousel使用 スライド

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

.slide_image {
	margin:1.0em 0 5.0em 0;
	padding:0;
}




/******************************************************************

     ヘッダー

******************************************************************/


header {
	background-color:#FFF;
	height:auto;
	min-height:120px;
	width:100%;
	display:block;
}

header p {
	width:calc(100% - 50px);
	margin:0 0 0 50px;
	padding:0.75rem 0.5rem;
	line-height:1.5rem;
}


header h1 {
	display:block;
	position:relative;
	top:35px;
	left:0;
	width:100%;
	max-width:100%;
	text-align:center;
}


header h1 {
	position:relative;
	text-align:center;
}

header h1 img{
	width:265px;
	height:auto;
}

header h1 #seo_msg {
	width:100%;
	margin:0 0 10px 0;
	position:relative;
}

header h1 #seo_msg p {
	text-align:center;
	position:absolute;
	top:-25px;
	left:-20px;
	font-size:1.0rem;
}

header h1 #seo_msg p span {
	font-size:1.0rem;
}

header ul {
	width:100%;
}


header ul li {
	display:none;
}

header ul li.c_admin_login {
	display:block;
	width:100%;
}



header p {
	font-size:1.1rem;
}

header ul li {
	text-align:left;
	margin:0 0 1px 0;
}

header ul li a {
	font-size:1.2rem;
}

header ul li.c_mypage a {
	width:100px;
}


/*管理者用 ログインメッセージ*/
.admin_login {
	position:relative;
	top:auto;
	bottom:0;
	left:0;
	margin:3.0rem 0 0 0;
	padding:0.25rem 1.0rem;
	font-size:1.2rem;
}

/******************************************************************

     フッター

******************************************************************/

footer {
	font-size:1.2rem;
	padding:1.0rem 0 8.0rem 0;
}

.footer_contents {
	position:relative;
	text-align:center;
	padding:1.0rem 0 1.0rem 0;
	margin:0;
	width:100%;
}



.copylight_contents {
	/*display:flex;*/
	width:100%;
}

.footer_contents ul {
	margin:auto 0 3.0rem auto;
	display:flex;
	flex-wrap:wrap;
	width:100%;
}

.footer_contents ul li {
	width:100%;
	padding:0;
	margin:0.1rem;
	border:1px solid #999;
}

.footer_contents ul li a {
	width:100%;
	display:block;
	border:1px solid #FFF;
	margin:0;
	padding:0.5rem;
	text-align:left;
}

.footer_contents dl {
	max-width:100%;
}



.footer_profile dl {
	display:flex;
	flex-wrap:wrap;
	width:100%;
	padding:1.0rem;
}

.footer_profile dl dt {
	width:100%;
	padding:0.5rem;
	text-align:center;
}

.footer_profile dl dd {
	width:100%;
}

.copylight {
	vertical-align:top;
	width:100%;
}

.copylight p {
	padding:1.2rem;
	color:#333;
	white-space:normal;
	text-align:left;
}

.footer_contents_add dl {
	flex-wrap:wrap;
	justify-content:flex-start;
	width:100%;
}

.footer_contents_add dl dd {
	margin:0.25rem;
}

.footer_contents_add dl dd a:before ,.footer_contents_add dl dd:nth-last-child(1) a:after {
	border:none;
}

.footer_contents_add dl dd a {
	border:1px solid #FFF;
	padding:1.0rem 0.5rem;
}

.footer_contents dl dd:nth-child(1) img {
	max-width:265px;
}


.footer_contents dl dd:nth-child(1) {
	width:100%;
}
.footer_contents dl dd:nth-child(2) {
	width:100%;
}



/*** フッターコンテンツ SNS ***/


.footer_contents .sns_link a {
	width:90%;
	margin:0.25rem 0.5rem;
}

.footer_contents .sns_link a dl dt {
	width:75px;
	padding:0 0 0 5px;
}


.footer_contents .sns_link a dl dd {
	width:calc(100% - 75px);
	font-size:1.8rem;
}



/********************************************************************************

   ページ上に戻る
   
********************************************************************************/

.pagetop a{
	bottom:55px;
	left:calc(100% - 55px);
}

.pagetop a {
	width:5.0rem;
	height:5.0rem;
}

.pagetop a:after {
	font-size:2.7rem;
	width:5.0rem;
	height:5.0rem;
	top:0;
	left:calc(50% - 0);
}

.pagetop a:before {
	display:none;
}


.pagetop {
	display:inline-block;
	height:90px;
}

.copylight:before {
	content:"";
	display:inline-block;
	width:100%;
	background:rgb(10,10,10,0.7);
	position: fixed;
    bottom: 0;
	right:0;
	margin:0;
	height:95px;
    z-index: 998!important;
}

.copylight_contents .sp_bnr_member {
	display:block;
	position:fixed;
	bottom:0;
	text-align:center;
	width:100%;
	z-index:999!important;
	padding:0 15px 5px 15px;
}

.copylight_contents .sp_bnr_member img {
	width:100%;
	max-width:360px;
	height:auto;
	image-rendering: -webkit-optimize-contrast;
	vertical-align:middle;
}




/*
.sp_bnr_member:empty + .copylight:before {
	display:none;
}
*/


/*PCの縦長バナー設置（スマホでは非表示）*/
.copylight_contents .pc_bnr_member {
	display:none!important;
}





/* # =================================================================
   #
   # サブページ ナビゲーション
   #
   # ================================================================= */

#crumbs {
	background-color:#999;
}


#crumbs nav ul {
	height:auto;
	line-height:36px;
	padding:0 0.25rem;
	font-size:1.5rem;
}

#crumbs nav ul li {
	margin:0 0.25rem;
}




#crumbs nav ul li a {
	color:#333;
}


#crumbs nav ul li a:before {
	font-size:1.4rem;
}


#crumbs nav ul li span {
	color:#333;
}



#crumbs nav ul li span > a:before {
	display:none!important;
}

#crumbs nav ul li span:before {
	font-size:1.4rem;
	color:#FFF;
}
#crumbs nav ul li:last-child {
/*margin-left: auto;/*右に寄せる場合*/
}




/* # =================================================================
   #
   # ボタンデザイン
   #
   # ================================================================= */


.btn_area {
	width:100%;
}




/* ボーダーボタン */
.border_btn {
	margin:0 auto 0 auto;
}/*スマホサイズでは中央寄せ*/






/******************************************************************

     規約 モーダル

******************************************************************/


.overLay {
	position:fixed;
	top:0;
	left:0;
	background:rgba(0,0,0,0.5);
	width:100%;
	height:100vh;
	z-index:9994;
}

.terms_box .modal {
	width:90vw;
	height:90vh;
	left:5vw;
	top:5vh;
	bottom:5vh;
}

.terms_box .modal .inner {
	width:100%;
}

.terms {
	margin:2.0rem 0;
}

.terms ul {
	margin:0.5rem;
}

.terms ul li {
	padding:0;
}





/******************************************************************

    メインセクション 左右分岐 （右：ローカルメニュー） 

******************************************************************/


#main_section {
	display:block;
	max-width:1280px;
	min-height:auto;
	margin:auto auto;

}

#main_section_left {
	width:100%;
	padding:0;
}

#main_section_right {
	width:100%;
	padding:0;
	background-color:#FFF;
}

#main_section .btn_area {
	padding:1.0rem 0.5rem;
}


#main_section .btn_area .border_btn {
	max-width:100%;
	min-width:300px;
	margin:auto auto;
}





/* カテゴリーリスト */

.category_list dl {
	margin-bottom:1px;
}

.category_list dl dt {
	position:relative;
	padding:1.2rem 1.0rem;
}

.category_list dl dt:after {
	font-family: 'FontAwesome';
	content: "\f0fe";
	transform:rotate(0deg);
	position:absolute;
	right:2%;
	top:25%;
}

.category_list dl dt.ac_open_sp {
	position:relative;
}

.category_list dl dt.ac_open_sp:after {
	content: "\f146";
	right:2%;
	top:25%;
	
}


.category_list dl dd.ac_content {
	display:none;
}



/*数字表示*/
.tree_menu ul li i {
	font-size:1.15rem;
}




/*正方形バナー（PC画面で左上）*/
.side_banner {
	display:none;
}

/*長方形バナー*/
.side_banner_s {
	max-width:300px;
	margin:1.0rem auto;
}




/* # =================================================================
   #
   # アコーディオン処理
   #
   # ================================================================= */

.ac_content {
	display:none;
}

.ac_content_sp {
	display:none;
}



/******************************************************************

     スマートフォンであれば非表示・表示

******************************************************************/

.sp_hide {
	display:none;
}

.sp_view {
	display:block;
}
/******************************************************************

     スマートフォン/タブレットあれば非表示・表示

******************************************************************/

.sp-tb_hide {
	display:none;
}

.sp-tb_view {
	display:block;
}

}






@media screen and (max-width : 374px) {

/********************************************************************************

   ページ上に戻る
   
********************************************************************************/

.pagetop {
	bottom:0;
	right:0;
}

}
