
#pro .title_color,
#pro h1.df_title,
#pro h2.df_title{color:#088D12;}
#pro .menu,
#pro .footer_line,
#pro .title_bg,
#pro .menu_block,
#pro .footer_line,
#pro .contents_sub h3 a{
	background: #088D12;
}
#pro .title_leftbar{ border-color:#088D12;}

#cg .title_color,
#cg h1.df_title,
#cg h2.df_title{color:#0f55a0;}
#cg .menu,
#cg .footer_line,
#cg .title_bg,
#cg .menu_block,
#cg .footer_line,
#cg .contents_sub h3 a{
	background: #0f55a0;
}
#cg .title_leftbar{ border-color:#0f55a0;}

#food .title_color,
#food h1.df_title,
#food h2.df_title{color:#d43f22;}
#food .menu,
#food .footer_line,
#food .title_bg,
#food .menu_block,
#food .footer_line,
#food .contents_sub h3 a{
	background: #d43f22;
}
#food .title_leftbar{ border-color:#d43f22;}

#model .title_color,
#model h1.df_title,
#model h2.df_title{color:#07a3ea;}
#model .menu,
#model .footer_line,
#model .title_bg,
#model .menu_block,
#model .footer_line,
#model .contents_sub h3 a{
	background: #07a3ea;
}
#model .title_leftbar{ border-color:#07a3ea;}

.ad_dummy{
	text-align: center;
	background: #ddd;
}
.ad_728{
	width: 728px;
	margin: 0 auto 30px;
	text-align: center;
	background: #ddd;
}
.ad_1200{
	margin-bottom: 30px;
	text-align: center;
	background: #ddd;
}
.ad_block{
	margin-bottom: 30px;
	text-align: center;
}
.top_ad_block{
	margin: 20px 0;
	text-align: center;
}

@media screen and (max-width: 1200px) {
	.ad_728{
		width: 100%;
	}
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 768px) {
}
.ad_block-full{
	/* width: 100%; */
	margin: 0 auto 30px;
	text-align: center;
}
.ad_block-full p,
.ad_block-full div{
	margin: 0 auto ;
}

@media screen and (max-width: 1024px) {
	.ad_block-970,
	.ad_block-full{
		width: 100%;
	}
}
.stock_bnr, .stock_bnr2 {display: none;}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　全サイト共通
--------------------------------------------------------------------------------------
*/

/* .mt-20{ margin-top: 2%;}
.mt-30{ margin-top: 3%;}
.mt-40{ margin-top: 4%;}
.mt-50{ margin-top: 5%;}
.mt-60{ margin-top: 6%;}
.mb-10{ margin-bottom: 1%;}
.mb-20{ margin-bottom: 2%;}
.mb-30{ margin-bottom: 3%;}
.mb-40{ margin-bottom: 4%;}
.mb-50{ margin-bottom: 5%;}
.mb-60{ margin-bottom: 6%;}
.mb-70{ margin-bottom: 7%;} */
.mt-20{ margin-top: 20px;}
.mt-30{ margin-top: 30px;}
.mt-40{ margin-top: 40px;}
.mt-50{ margin-top: 50px;}
.mt-60{ margin-top: 60px;}
.mb-10{ margin-bottom: 10px;}
.mb-20{ margin-bottom: 20px;}
.mb-30{ margin-bottom: 30px;}
.mb-40{ margin-bottom: 40px;}
.mb-50{ margin-bottom: 50px;}
.mb-60{ margin-bottom: 60px;}
.mb-70{ margin-bottom: 70px;}

/*
フォントサイズ
12px：85%
14px：100%
16px：115%
18px：130%
21px：150%
24px：170%
30px：215%
*/
.fs-12{ font-size:85%;}
.fs-16{ font-size:115%;}
.fs-18{ font-size:130%;}
.fs-21{ font-size:150%;}
.fs-24{ font-size:170%;}
.fs-30{ font-size:215%;}
.fs-34{ font-size:245%;}
.txt-center{ text-align: center;}
.txt-right{ text-align: right;}
.bold{ font-weight: bold;}
.line-h_13{ line-height: 1.3em;}
.line-h_15{ line-height: 1.5em;}
.img-floatright{ float: right; margin-left: 20px;}
.text-danger,.color_red{color:#f00}
.ff-serif {
		font-family:
	   "ヒラギノ明朝 ProN W6",
	   "HiraMinProN-W6",
	   "HG明朝E",
	   "ＭＳ Ｐ明朝",
	   "MS PMincho",
	   "MS 明朝",
	   serif;
}
@media screen and (max-width: 768px) {
	.img-floatright{
		margin: 0 0 20px 0;
		float: none;
		text-align: center;
	}
}

/*---------- リンク ----------*/
a:link {color:#000; text-decoration: none;}
a:visited {color:#000;}
a:hover {color:#000; text-decoration: underline;}
a:active {color:#000;}
a img:hover{
	opacity: 0.8;
	transition:all 0.6s ease;
}
a.link_uline{text-decoration: underline;}
a.link_uline:hover{text-decoration: none;}

.link_icon_erea {
	height: 13px;
	width: 13px;
	margin: -0.2em 0.2em 0 -15px;
}
.link_icon_erea_side {
	height: 13px;
	width: 13px;
	margin: -0.2em 0.2em 0 0;
}
.link_icon_erea_s {
	height: 13px;
	width: 13px;
	margin: -0.2em 3px 0 0;
}
.title_icon_erea_m {
	height: 20px;
	width: 20px;
	margin-right:5px;
}
.link_icon_erea_f {
	height: 30px;
	width: 30px;
	margin: -6px 5px 0 -35px;
}
.logo_icon_s{
	height: 13px;
	width: 75px;
	margin: 0px 0px 0 0px;
}
.list_nav_icon{
	height: 21px;
	width: 15px;
	margin: 0;
}
.list_nav_foot_icon{
	height: 30px;
	width: 18px;
	margin: 0;
}
.link_icon_erea_info {
	height: 30px;
	width: 30px;
	margin: 0px 5px 0 0px;
}
.link_icon {background: url("../img/b_icon.png") no-repeat -180px 0px;}
.link_url_icon {background: url("../img/b_icon.png") no-repeat -193px 0px;}
.icon_f_pro{background: url("../img/b_icon.png") no-repeat -30px -30px;}
.icon_f_model{background: url("../img/b_icon.png") no-repeat -60px -30px;}
.icon_f_food{background: url("../img/b_icon.png") no-repeat -90px -30px;}
.icon_f_cg{background: url("../img/b_icon.png") no-repeat -120px -30px;}
.icon_f_blog{background: url("../img/b_icon.png") no-repeat -150px -30px;}
.icon_f_stock{background: url("../img/b_icon.png") no-repeat -180px -30px;}
.icon_f_pro_m{background: url("../img/b_icon.png") no-repeat -20px -90px;}
.icon_f_model_m{background: url("../img/b_icon.png") no-repeat -40px -90px;}
.icon_f_food_m{background: url("../img/b_icon.png") no-repeat -60px -90px;}
.icon_f_cg_m{background: url("../img/b_icon.png") no-repeat -80px -90px;}
.icon_f_blog_m{background: url("../img/b_icon.png") no-repeat -100px -90px;}
.icon_f_stock_m{background: url("../img/b_icon.png") no-repeat -120px -90px;}
.link_icon_pro_s {background: url("../img/b_icon.png") no-repeat -13px -70px;}
.link_icon_model_s {background: url("../img/b_icon.png") no-repeat -26px -70px;}
.link_icon_food_s {background: url("../img/b_icon.png") no-repeat -39px -70px;}
.link_icon_cg_s {background: url("../img/b_icon.png") no-repeat -52px -70px;}
.link_icon_stock_s {background: url("../img/b_icon.png") no-repeat -78px -70px;}
.logo_icon_pro_s {background: url("../img/b_icon.png") no-repeat -150px -60px;}
.logo_icon_model_s {background: url("../img/b_icon.png") no-repeat -150px -73px;}
.logo_icon_food_s {background: url("../img/b_icon.png") no-repeat -150px -86px;}
.logo_icon_cg_s {background: url("../img/b_icon.png") no-repeat -150px -99px;}
.logo_icon_blog_s {background: url("../img/b_icon.png") no-repeat -150px -112px;}
.logo_icon_stock_s {background: url("../img/b_icon.png") no-repeat -150px -125px;}
.list_nav_icon_back {background: url("../img/b_icon.png") no-repeat -92px -62px;}
.list_nav_icon_next {background: url("../img/b_icon.png") no-repeat -104px -62px;}
.list_nav_foot_icon_back {background: url("../img/b_icon.png") no-repeat -235px -60px;}
.list_nav_foot_icon_next {background: url("../img/b_icon.png") no-repeat -250px -60px;}

/*---------- ボタン ----------*/
.btn-default{
	padding: 10px 15px;
	border-radius: 5px;
	border: solid 1px #ddd;
	color:#000;
	line-height: 1em;
	text-decoration: none;
}
.btn-default_s{
	padding: 5px 10px;
	font-size: 85%;
	border-radius: 3px;
	border: solid 1px #ddd;
	color:#000;
	line-height: 1em;
	text-decoration: none;
}
.btn-default_l{
	padding: 15px 30px;
	border-radius: 30px;
	border: solid 1px #ddd;
	color:#000;
	text-decoration: none;
}
.btn-default:hover,
.btn-default_s:hover,
.btn-default_l:hover{
	background: #eee;
	text-decoration: none;
}
.btn-arrow{
	padding: 15px 20px 15px 40px;
	border-radius: 10px;
	border: solid 1px #ddd;
	color:#000;
	line-height: 1em;
	text-decoration: none;
	background: url("../img/arrow_icon.png") no-repeat 20px center #eee;
}

/*ページトップへ*/
#btn_block{
	width:50px;
	/* margin:0 auto; */
	/* text-align:right; */
	position:fixed;
	top:80%;
	right:20px;
	z-index:20;
}
.btn_top {
	opacity: 0.6; filter: alpha(opacity=60);
	cursor: pointer;
	margin:0 0px 0 0;
}
.btn_top:hover {opacity: 0.3; filter: alpha(opacity=30);}

@media screen and (max-width: 1024px) {
	.btn-default{
		width: 100%;
		margin: 3% 0 0 0;
		display: block;
	}
}
@media screen and (max-width: 480px) {
	#btn_block{
		top:90%;
	}
}

/*---------- タイトル ----------*/
h1,h2{
	margin-bottom: 20px;
	font-weight: bold;
	line-height: 1.3em;
}
h3{
	margin-bottom: 10px;
}

.title_h1{
	font-size:170%;
	font-weight: bold;
}/*24pt*/
.title_h2{
	font-size:150%;
	font-weight: bold;
}/*21pt*/
.title_h3{
	font-size:130%;
	font-weight: bold;
}/*18pt*/
.title_h4{
	font-size:115%;
	font-weight: bold;
}/*18pt*/
.title_h5{
	font-weight: bold;
}
.title_frame{
	margin-bottom: 20px;
	padding: 5px 10px;
	font-weight: normal;
	border: solid 1px #ddd;
}
.title_leftbar{
	padding-left: 10px;
	border-left: 5px solid #333;
}
#pro .title_underline{
	margin-bottom: 10px;
	font-size:115%;
	font-weight: bold;
	border-bottom: 2px solid #088D12;
}
#model .title_underline{
	margin-bottom: 10px;
	font-size:115%;
	font-weight: bold;
	border-bottom: 2px solid #07a3ea;
}
/*---------- フォーム ----------*/
.form-list{
	margin-bottom: 30px;
}
.form-list li {
	margin-bottom: 20px;
}
.form-list > li > label{
	width: 250px;
	float: left;
}
.form-list li > div{
	width: 700px;
	float: right;
}
.form-line li{
	padding: 20px 0 0;
	border-top: solid 1px #333;
}
.form-line li:last-child {
	padding-bottom: 20px;
	border-bottom: solid 1px #333;
}
input[type="text"], input[type="email"], input[type="tel"] {
	margin-top: -1px;
	width:100%;
	height:35px;
	padding: 1%;
	font-size: 14px;
	border: solid 1px #333;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
input[type="radio"], input[type="checkbox"] { margin-right:5px;}
select{
	height:35px;
	line-height:35px;
	font-size: 14px;
	border: solid 1px #333;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
button,
.form-btn{
	height:35px;
	padding: 0 10px;
	font-size: 14px;
	border: solid 1px #333;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	cursor: pointer;
	color: #000;
	background: #fff;
	cursor: pointer;
}
a.form-btn{
	padding: 10px;
}
button:hover,
.form-btn:hover{
	background: #eee;
}
textarea{
	margin: 0;
	width:100%;
	padding: 1%;
	display:block;
	font-size: 14px;
	border: solid 1px #333;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}
@media screen and (max-width: 1024px) {
	.form-list li label,
	.form-list li > div{
		width: 100%;
		float: none;
	}
	.form-list li label{
		font-weight: bold;
	}
	.form-list:last-child > div{
		text-align: center;
	}
}


/*---------- パンくず--jquery.rcrumbs.css ----------*/
.rcrumbs li:before {
	content:"\003e";
	color:#000;
	margin:0 0.6em;
}
.rcrumbs li:first-child:before{content:none;}
.rcrumbs {
	height: 50px;
	width: 100%;
	background:none;
	padding: 10px 0;
	margin:0;
	overflow: hidden;
	white-space: nowrap;
	font-size: 85%;
}
/* .rcrumbs {
	background:none;
	padding: 10px 0;
	margin:0;
	overflow-x: hidden;
	white-space: nowrap;
	font-size: 85%;
} */
.rcrumbs > ul {
	padding: 0;
	list-style: none;
}
.rcrumbs > ul > li {
	overflow: hidden;
	display: none;
}
.rcrumbs > ul > li.show {
	display: inline-block !important;
}
.rcrumbs > ul > li.ellipsis {
	text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
	overflow: hidden;
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　ヘッダー
--------------------------------------------------------------------------------------
*/
header{
	margin: 0 auto;
}
.gnav{
	height:25px;
	padding: 0 20px;
}
.gnav ul {
	background: url("../img/gnav.png") no-repeat;
}
.gnav li {
	display:inline;
	text-indent: -9999px;
}
.gnav li a {
	display:block;
	float:left;
	height:25px;
}
.gnav01 a {background: url(../img/gnav.png) no-repeat 0px 0px; width:103px;}
.gnav02 a {background: url(../img/gnav.png) no-repeat -103px 0px; width:81px;}
.gnav03 a {background: url(../img/gnav.png) no-repeat -183px 0px; width:98px;}
.gnav04 a {background: url(../img/gnav.png) no-repeat -281px 0px; width:87px;}
.gnav05 a {background: url(../img/gnav.png) no-repeat -368px 0px; width:81px;}
.gnav06 a {background: url(../img/gnav.png) no-repeat -449px 0px; width:86px;}
.gnav07 a {background: url(../img/gnav.png) no-repeat -535px 0px; width:90px;}
.gnav01 a:hover, .gnav01 a.selected { background-position:0px -25px;}
.gnav02 a:hover, .gnav02 a.selected { background-position:-103px -25px;}
.gnav03 a:hover, .gnav03 a.selected { background-position:-183px -25px;}
.gnav04 a:hover, .gnav04 a.selected { background-position:-281px -25px;}
.gnav05 a:hover, .gnav05 a.selected { background-position:-368px -25px;}
.gnav06 a:hover, .gnav06 a.selected { background-position:-449px -25px;}
.gnav07 a:hover, .gnav07 a.selected { background-position:-535px -25px;}
.fas{
	margin-right: 5px;
}

.menu{
	height:60px;
	margin: 0 auto;
}
.menu a{
  color: #fff
}
.menu p{
	width: 300px;
	margin-left: 20px;
	padding: 15px 0;
	float: left;
}
.menu p img{
	height: 30px;
}
.menu nav{
  float: right;
  margin-right: 20px;
  padding: 15px 0;
}
i {
	display: inline-block;
	background: url(../img/b_icon.png) no-repeat;
	vertical-align: middle;
}
i.h_icon {
	height: 30px;
	width: 30px;
	margin: -0.2em 0.2em 0 0;
}
i.h_icon01 {background-position: 0 0px;}
i.h_icon02 {background-position: -30px 0px;}
i.h_icon03 {background-position: -60px 0;}
i.h_icon04 {background-position: -90px 0;}
i.h_icon05 {background-position: -120px 0;}
i.h_icon06 {background-position: -150px 0;}

.nav li{
	display: inline-block;
	padding: 6px 0 0 20px;
}
.slicknav_menu {
		display:none;
}
@media screen and (max-width: 1024px) {
	header{
		position: relative;
		z-index: 9999;
	}
	.gnav{
		display: none;
	}
	.menu nav{
		float: none;
		margin-right: 0;
		padding: 0;
	}
	/*---------- スマホメニュー ----------*/
	.nav_style li{
		display: block;
	}
	.nav_style li a{
		width: 100%;
	}
	/*共通*/
	.nav_style ul{
		display:none;
	}
	.slicknav_menu {
		display:block;
	}
	.slicknav_menu {
		padding: 0;
		margin: 0;
		background: none;
	}
	.slicknav_menu .slicknav_icon-bar {
		width: 30px;
		height: 2px;
		margin: 0px 0 7px 0;
	}
	.slicknav_btn {
		height: 40px;
		width: 50px;
	  	margin: 10px 0px 5px;
		padding: 10px;
	}
	#pro .slicknav_btn {
		margin-right: 20px;
		background: #014d0e;
	}
	#food .slicknav_btn {
		margin-right: 20px;
		background: #842412;
	}
	#model .slicknav_btn {
		margin-right: 20px;
		background: #0c4f6e;
	}
	#cg .slicknav_btn {
		margin-right: 20px;
		background: #083a71;
	}
	.slicknav_nav {
		width: 100%;
		background: rgba(0, 0, 0, 0.75);
		/* background: rgba(0, 135, 22, 0.75); */
	}
	.slicknav_nav a {
		padding: 0;
		margin: 0;
		-webkit-border-radius: 0px;
		-moz-border-radius: 0px;
		border-radius: 0px;
		background:none;
	}
	.nav_style li a {
		padding: 15px 20px;
		border-bottom: 1px solid #fff;
	}
	/*ハンバーガーメニューのエフェクト*/
	.slicknav_icon,
	.slicknav_icon span {
			display: inline-block;
			transition: all .4s;
	}
	.active .slicknav_icon-bar:nth-of-type(1) {
			-webkit-transform: translateY(9px) rotate(-45deg);
			transform: translateY(9px) rotate(-45deg);
	}
	.active .slicknav_icon-bar:nth-of-type(2) {
			opacity: 0;
	}
	.active .slicknav_icon-bar:nth-of-type(3) {
			-webkit-transform: translateY(-9px) rotate(45deg);
			transform: translateY(-9px) rotate(45deg);
	}
}
@media screen and (max-width: 480px) {
	.menu p{
		width: 250px;
	}
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　フッター
--------------------------------------------------------------------------------------
*/
footer{
	margin: 0 auto;
}
.footer_line{
	height: 50px;
	padding: 10px 20px 0;
}
.footer_logo{
	float: left;
}
.sns_erea{
	float: right;
}
.sns_erea li{
	margin-left: 5px;
	float: left;
}
.footer_nav{
	padding: 15px;
	border-bottom: solid 1px #ddd;
}
.footer_nav ul{
	margin-left: 20px;
}
.footer_nav li{
	margin-right: 30px;
	float: left;
}
.footer_copy{
	margin: 0 auto;
	padding: 10px 20px 50px;
	text-align: right;
}

/* SNSボタン */
ul.sns_erea,ul.sns_erea li {margin: 0 0px 0 0; padding:0;}
.sns_icon_erea {height: 30px; width: 30px; margin: 0 0px 0 5px; padding:0;}
.sns_icon_erea:hover{opacity: 0.5; filter: alpha(opacity=50);}
.sns_icon_twitter {background: url("../img/b_icon.png") no-repeat -0px -111px;}
.sns_icon_facebook {background: url("../img/b_icon.png") no-repeat -30px -111px;}
.sns_icon_googleplus {background: url("../img/b_icon.png") no-repeat -60px -111px;}
.sns_icon_hatebu {background: url("../img/b_icon.png") no-repeat -90px -111px;}
.sns_icon_line {background: url("../img/b_icon.png") no-repeat -120px -111px;}

@media screen and (max-width: 1024px) {
	.footer_contents{
		width: 100%;
		padding: 0;
	}
	.footer_line{
		height: 50px;
		padding-top: 10px;
	}
	.footer_logo{
		float: none;
		display: none;
	}
	.sns_erea{
		float: none;
		text-align: center;
	}
	.sns_erea ul{
		width: 170px;
		margin: 0 auto;
	}
	.footer_nav{
		padding: 0;
	}
	.footer_nav ul{
		padding: 0;
		margin-left: 0;
	}
	.footer_nav li{
		width: 50%;
		margin-right: 0;
		padding: 10px 30px;
		border-bottom: solid 1px #ddd;
	}
	.footer_nav li:last-child {
		border-bottom: none;
	}
	.footer_nav li:nth-child(2n+1) {
		border-right: 1px solid #ddd;
	}
	.footer_copy{
		width: 100%;
		padding: 3% 0 5%;
		text-align: center;
	}
}
@media screen and (max-width: 480px) {
	.footer_nav li{
		width: 100%;
	}
	.footer_nav li:nth-child(2n+1) {
		border-right: none;
	}
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　コンテンツ
--------------------------------------------------------------------------------------
*/
.contents{
	width: 1200px;
	margin: 0 auto 30px;
	box-sizing: border-box;
}
.contents1300{
	width: 1340px;
	margin: 0 auto;
	padding: 0 20px;
}
.contents1300_tm50{
	margin-top: 50px;
}

.contents_s{
	width: 1328px;
	margin: 0 auto ;
	padding: 0 20px;
}
.sub_contents{
	margin: 0 auto 30px;
	box-sizing: border-box;
}
.sub_contents_bg{
	width: 100%;
	padding: 50px 0;
	background: url(../img/category_bg.jpg);
}
.sub_contents_bg div{
	width: 1300px;
	margin: 0 auto;
}
.project_banner{
	width: 1300px;
	margin: 0 auto;
	padding: 50px 0 0;
}
.project_banner > p{
	width: 900px;
	margin: 20px auto 50px;
}
.project_banner ul{
	/* margin: 0 0 30px -20px; */
	margin: 0 0 30px 0;
	display: flex;
	flex-wrap: wrap;/*折り返し複数行*/
	justify-content: space-between;/*均等配置*/
	align-items: stretch;
}
.project_banner li,
.project_banner li.ad_block{
	width: 640px;
	height: 120px;
	margin: 0 0 20px 0;
	padding: 10px;
	/* float: left; */
	border: solid 1px #ddd;
	position: relative;
	line-height: 1.3em;
	background: #fff;
}
.project_banner li.ad_block{
	padding: 0;
}
.project_banner li h3{
	margin-bottom: 5px;
	font-weight: bold;
}
.project_banner li p{
	font-size: 85%;
}
.project_banner li img{
	margin-right: 10px;
	float: left;
}
.contents_main{
	width: 970px;
	margin-bottom: 50px;
}
.contents_main_s{
	width: 728px;
	margin:0 0 50px 30px;
}
.contents_sub{
	width: 300px;
	margin-bottom: 50px;
}
.contents_sub_s{
	width: 200px;
	margin-bottom: 50px;
}
.contents_right{
	float: right;
}
.contents_left{
	float: left;
}
.contents_ad{
	margin-bottom: 50px;
	display: flex;
	justify-content: space-between;
}
.contents_adblock{
	margin-left: 30px;
}

/*---------- サブ 300px ----------*/
.contents_sub > div{
	margin-bottom: 30px;
	line-height: 1.3em;
}
.contents_sub .stock_bnr_block{
	width: 100%;
	text-align: center;
}
.contents_sub a{
	text-decoration: none;
}
.contents_sub h3 a{
	height: 50px;
	padding: 0 0 0 15px;
	font-size: 130%;
	font-weight: bold;
	line-height: 50px;
	color: #fff;
	display: block;
}
.contents_sublink li{
	height: 40px;
	padding: 0 0 0 30px;
	line-height: 40px;
	border-bottom: solid 1px #ddd;
}
.fotoproject_link li{
	padding: 15px 15px 10px 50px;
	border-bottom: solid 1px #ddd;
}
.stock_search{
	padding: 10px 10px;
}
.stock_search p{
	padding: 10px 0;
}
.stock_search input{
	width:80%;
}
.stock_search button{
	width: 18%;
}
.contents_sub_entry p:first-child{
	margin-bottom: 30px;
	line-height: 1.8em;
}
.contents_sub_entry p:last-child{
	text-align: center;
}

@media screen and (max-width: 1300px) {
	.sub_contents_bg div{
		width: 90%;
	}
	.project_banner{
		width: 90%;
	}
	.project_banner li,
	.project_banner li.ad_block{
		width: 49%;
		height: auto;
		/* display: inline-block; */
		margin: 0 0 2% 0;
		/* float: none; */
	}
}
@media screen and (max-width: 1200px) {
	.contents{
		width: 90%;
	}
	.sub_contents_bg div{
		width: 90%;
	}
	.project_banner > p{
		width: 100%;
	}
	.project_banner ul{
		margin: 0 0 3% 0;
	}
	.project_banner li,
	.project_banner li.ad_block{
		width: 100%;
		height: auto;
		/* display: inline-block; */
		margin: 0 0 2% 0;
		/* float: none; */
	}
}
@media screen and (max-width: 1024px) {
	.contents1300,
	.contents_s{
		width: 100%;
		padding: 0 2%;
	}
	.contents1300_tm50{
		margin-top: 30px;
	}
	.contents_main,
	.contents_sub,
	.contents_main_s,
	.contents_sub_s{
		width: 100%;
		margin:0 0 5% 0;
	}
	.contents_right,
	.contents_left{
		float: none;
	}
	.contents_sub div.ad_block{
		text-align: center;
	}
	.contents_sublink,
	.fotoproject_link{
		margin: 0 -2% 0 0;
	}
	.contents_sublink li,
	.fotoproject_link li{
		width: 48%;
		margin: 0 2% 0 0;
		float: left;
	}
	.contents_ad{
		margin-bottom: 30px;
		display: block;
	}
	.contents_adblock{
		margin: 20px 0 0 0;
		text-align: center;
	}
}
@media screen and (max-width: 480px) {
	.project_banner li img{
		margin: 0 10px 10px 0;
	}
	.project_banner li p{
		margin-bottom: 10px;
	}
	.contents_sublink,
	.fotoproject_link{
		margin: 0;
	}
	.contents_sublink li,
	.fotoproject_link li{
		width: 100%;
		margin: 0;
	}
}


/*-------------------- リスト --------------------*/
.list_counter{
	margin-bottom: 10px;
	padding-left: 0;
	counter-reset: item;
	list-style-type: none;
}
.list_counter li{
	margin-bottom: 10px;
	text-indent: -1.5em;
	padding-left: 1.5em;
}
.list_counter li:before {
	margin-left: 10px;
	counter-increment: item;
	content: counter(item)'.';
}
.list_base,
.list_base_nom{
	display: flex;
	flex-wrap: wrap;/*折り返し複数行*/
	justify-content: space-between;
}
@media screen and (max-width: 768px) {
	.list_base_nom{
		justify-content: space-between;
	}
}
.list_row4,
.list_row5_full{
	/* margin: 0 -20px 20px 0; */
}
.list_row4 li{
	width: 220px;
	height: 220px;
	/* padding: 20px; */
	margin: 0 0px 20px 0;
	border: solid 1px #ddd;
}
.list_row5_full li{
	width: 220px;
	height: 220px;
	/* padding: 20px; */
	margin: 0 0px 20px 0;
	/* border: solid 1px #ddd; */
}
.list_base::after {
	display: block;
	content:"";
	width: 220px;
}
.list_base::before {
	display: block;
	content:"";
	width: 220px;
	order:1;
}

@media screen and (max-width: 768px) {
	.list_row4,
	.list_row5_full{
		margin:0 -5% 5% 0;
	}
	.list_row4 li,
	.list_row5_full li{
		width: 30%;
		height: 200px;
		margin: 0 2.5% 5% 0;
	}
}
@media screen and (max-width: 480px) {
	.list_row4,
	.list_row5_full{
		margin:0;
		justify-content: space-between;
	}
	.list_row4 li,
	.list_row5_full li{
		width: 47.5%;
		height: 150px;
		margin: 0 0 5% 0;
	}
}
.list_line{
	margin-bottom: 40px;
}
.list_line li{
	border-top:1px #ddd dashed;
	padding:10px;
	line-height:150%;
}
.list_line li:last-child{
	border-bottom:1px #ddd dashed;
}
.list_line li span.list_date,
.list_line li span.date{
	float:left;
	display:block;
	padding:0 0 0 0px;
	zoom: 1;
}
.list_line li span.list_txt,
.list_line li span.txt{
	display:block;
	zoom: 1;
}
.word2 li span.list_date{width:2em;}
.word2 li span.list_txt{margin:0 0 0 2em;}
.word7 li span.list_date,
.word7 li span.date{width:7em;}
.word7 li span.list_txt,
.word7 li span.txt{margin:0 0 0 7em;}
.word10 li span.date{width: 10em;}
.word10 li span.txt{margin:0 0 0 10em;}
.word25 li span.date{width:25em;}
.word25 li span.txt{margin:0 0 0 25em;}
@media (max-width: 767px) {
	.list_line.word7 li span.list_date,
	.list_line.word7 li span.date,
	.word10 li span.date,
	.word25 li span.date{width:100%; float:none; font-weight:bold;}
	.list_line.word7 li span.list_txt,
	.list_line.word7 li span.txt,
	.word10 li span.txt,
	.word25 li span.txt{margin:0;}
}

/*---------- サブ 200px ----------*/
.contents_sub_s div{
	margin-bottom: 10px;
}
/*---------- サムネイル ----------*/
/* .category_list ul{
	margin: 0 0 0 -35px;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
} */
/* .category_list_s ul{
	margin: 0 0 0 -18px;
} */
.category_tn_l_line,
.category_tn_ll_line,
.category_tn_freem_line,
.category_tn_m_line {
	display: flex;
	flex-wrap: wrap;/*折り返し複数行*/
	justify-content: space-between;
}
.category_tn_l_line::before {
	display: block;
	content:"";
	width: 300px;
	order:1;
}
.category_tn_l_line::after,
.category_tn_m_line::after {
	display: block;
	content:"";
	width: 300px;
}
.category_tn_l_line li,
.category_tn_l_line li.ad_block{
	width: 300px;
	height: 290px;
	margin: 0 0 30px 0;
	/* margin: 0 0 35px 35px; */
	padding: 15px;
	position: relative;
	line-height: 1.5em;
	background: #fff;
}
.category_tn_ll_line li{
	width: 355px;
	height: 310px;
	margin: 0 0 20px 0;
	padding: 15px;
	position: relative;
	line-height: 1.5em;
	background: #fff;
}
.category_tn_ll_line li.ad_block,
.category_tn_l_line li.ad_block{
	padding: 0;
}
.category_tn_ll_line li,
.category_tn_l_line li,
.category_tn_m_line li{
	border: solid 1px #ddd;
}
.category_tn_ll_line li h3,
.category_tn_l_line li h3{
	margin: 10px 0 0 0;
	font-size:115%;
	font-weight: bold;
}
.list_btn{
	position: absolute;
	right: 15px;
	bottom: 15px;
}
.list_btn_s{
	position: absolute;
	right: 10px;
	bottom: 10px;
}
.category_tn_freem_line li,
.category_tn_freem_line li.ad_block,
.category_tn_m_line li,
.category_tn_m_line li.ad_block{
	width: 300px;
	height: 350px;
	margin: 0 0 30px 0px;
	padding: 15px;
	border: solid 1px #ddd;
	background: #fff;
}
.category_tn_freem_line li p,
.category_tn_m_line li p{
	margin: 10px 0 0 0;
	font-weight: bold;
}
.category_tn_freem_line li.ad_block,
.category_tn_m_line li.ad_block{
	padding: 0px;
}
.category_tn_freem_line li.ad_block_noline{
	height: auto;
	border: none;
}
.category_tn_freem_line::after {
	display: block;
	content:"";
	width: 300px;
}
.category_tn_freem_line::before {
	display: block;
	content:"";
	width: 300px;
	order:1;
}
@media screen and (max-width: 1024px) {
	/* .category_list ul{
		margin: 0 0 0 -20px;
	} */
	.category_tn_l_line li,
	.category_tn_l_line li.ad_block{
		height: 310px;
	}
	.category_tn_l_line li h3{
		margin: 10px 0 0 0;
	}
	.list_btn{
		width: 90%;
		text-align: center;
		right: 5%;
		bottom: 5%;
	}
	.category_tn_freem_line li,
	.category_tn_freem_line li.ad_block,
	.category_tn_m_line li,
	.category_tn_m_line li.ad_block{
		width: 275px;
		height: auto;
		margin: 0 0 20px 0;
		padding: 10px;
	}
	.category_tn_freem_line li.ad_block,
	.category_tn_m_line li.ad_block{
		padding: 0;
	}
	.category_tn_freem_line li p{
		margin: 10px 0 0 0;
	}
}
@media screen and (max-width: 480px) {
	/* .category_list ul{
		margin: 0;
		justify-content: space-between;
	} */
	.category_tn_l_line li,
	.category_tn_ll_line li,
	.category_tn_m_line li{
		width: 48%;
		margin: 0 0 3% 0;
		padding: 2%;
	}
	.category_tn_l_line li.ad_block,
	.category_tn_ll_line li.ad_block{
		width: 100%;
		margin: 0 0 3% 0;
		padding: 0;
	}
	.category_tn_freem_line li{
		width: 48%;
		height: auto;
		margin: 0 0 3% 0;
		padding: 2%;
	}
	.category_tn_freem_line li.ad_block,
	.category_tn_m_line li.ad_block{
		width: 100%;
		height: auto;
		margin: 0 0 3% 0;
		padding: 0;
	}
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　一覧
--------------------------------------------------------------------------------------
*/
.list_nav{
	margin-bottom: 30px;
	z-index: 1000;
}
.list_nav select{
	width: 150px;
	float: left;
}
.list_nav .list_nav_pc{
	float: right;
}
.list_nav_pc li {
	margin:0 5px;
	display: inline-block;
}
.list_nav_pc li a,
.list_nav_sp li a{
	width: 40px;
	height: 40px;
	border-radius: 50%;
	display: block;
	font-size: 115%;
	font-weight: bold;
	line-height: 38px;
	text-align: center;
	text-decoration: none;
	border: 2px solid #aaa;
}
.list_nav_pc li:first-child a,
.list_nav_pc li:last-child a,
.list_nav_sp li:first-child a,
.list_nav_sp li:last-child a{
	background: #333;
	border: none;
}
.list_nav_pc li a:hover,
.list_nav_sp li a:hover{
	color: #fff;
	background: #aaa;
}
.list_nav_pc li a.disabled,
.list_nav_sp li a.disabled{
	cursor: default;
	background: #aaa;
}
.list_nav_pc li a.active,
.list_nav_sp li a.active{
	cursor: default;
	color: #fff;
	background: #aaa;
}
.list_nav_foot{
	margin: 30px auto 0;
}
.list_nav_foot p:first-child{
	float: left;
}
.list_nav_foot p:last-child{
	float: right;
}
.list_nav_foot a{
	width: 50px;
  height: 50px;
  border-radius: 50%;
	line-height: 50px;
	display: block;
	text-align: center;;
	border: 2px solid #333;
	z-index: 9999;
}
.list_nav_foot a.disabled{
	cursor: default;
	opacity: 0.3;
}
.list_tn_line ul{
	margin: 0 0 30px -10px;
}
/* .list_tn_line ul:last-child{
	margin: 0 0 0px -30px;
} */
.list_tn_line li{
	width: 235px;
	height: 235px;
	margin: 0 0 10px 10px;
	float: left;
}
.img_box{
	position: relative;
	width: 100%;
	height: 100%;
	/* padding: 98% 0 0; */
	/* margin: 10px 0 10px 0; */
	border: solid 1px #ddd;
}
.img_box .img_box_inner{
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.img_box .img_box_inner img{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: auto;
	height: auto;
	max-height: 100%;
	max-width: 100%;
}
.list_tn_line li:hover{
	background: #eee;
}
.list_nav_order{
	padding: 5px;
	margin: 0 auto 30px;
	font-size: 100%;
	font-weight: normal;
	border: solid 1px #ddd;
}
.list_nav_order p{
	width: 33.333%;
	float: left;
	text-align: center;
	border-right: solid 1px #ddd;
}
.list_nav_order p:last-child{
	border-right: none;
}
@media screen and (max-width: 1024px) {
	.list_nav{
		margin-bottom: 20px;
	}
	.list_nav select,
	.list_nav .list_nav_pc{
		margin-top: 20px;
	}
	.list_tn_line ul{
		margin: 0 0 2% -2%;
	}
	.list_tn_line li{
		width: 31.333%;
		margin: 0 0 2% 2%;
	}
	.img_box{
		padding: 10px;
	}
}
@media screen and (max-width: 480px) {
	.list_tn_line li{
		width:48%;
	}
	.list_nav select{
		width: 100%;
		float: none;
	}
	.list_nav_pc{
		display: none;
	}
	.list_nav_sp{
		width: 100%;
		margin-top: 20px;
		display: flex;
	}
	.list_nav_sp li{
		width: 20%;
	}
	.list_nav_sp li:nth-child(3) a{
		margin: auto;
	}
	.list_nav_sp li:nth-child(2) a,
	.list_nav_sp li:last-child a{
		margin-left: auto;
	}
}
@media screen and (min-width: 481px) {
	.list_nav_sp{
		display: none;
	}
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　詳細ページ
--------------------------------------------------------------------------------------
*/
.info_block{
	margin-bottom: 30px;
	font-size: 85%;
	line-height: 1.5em;
}
.info_block_img{
	width: 728px;
	margin-bottom: 30px;
	float: left;
}
.info_img{
	margin-bottom: 30px;
	padding: 50px;
	text-align: center;
	background: #333;
	position: relative;
}
.info_block_txt{
	width: 442px;
	float: right;
}
.info_title{
	height: 40px;
	padding: 0 15px;
	line-height: 40px;
	color: #fff;
	font-size:130%;/*18pt level3*/
	font-weight: bold;
	text-decoration: none;
	display: block;
	background: #333;
}
.info_txt{
	margin-bottom: 30px;
}
.info_txt dt{
	float: left;
	padding: 15px 10px;
	width: 9em;
	font-weight:normal;
}
.info_txt dd{
	border-bottom:dashed 1px #ddd;
	padding: 15px 0 15px 9.5em;
}
.info_txt{
	border-top:dashed 1px #ddd;
}
.info-dl_block{
	padding: 60px 100px 30px;
	border: 50px solid #ddd;
}
.info-dl_block p{
	margin-bottom: 20px;
}
.info-dl_agreement{
	padding:20px;
	margin-bottom:50px;
	height:500px;
	overflow:auto;
	border:1px #ddd solid;
}
.info-dl_agreement p{
	margin: 20px 0 10px;
}
.info-dl_agreement p:first-child{
	margin: 0 0 10px;
}
.info-dl_agreement ol{
	padding: 0 0 0 2em;
	list-style-type: decimal;
}
.info-dl_block_ad{
	margin-bottom:50px;
}
.info-dl_btn{
	margin-bottom:50px;
	text-align: center;
}
.copy-protection{
	position:absolute;
	top: 0;
	left: 0;
	display:block;
	width:100%;
	height:100%;
	background: url(../img/copy-protection.png);
}


@media screen and (max-width: 1200px) {
	.info_block_img{
		width: 60%;
		margin-bottom: 30px;
		float: left;
	}
	.info_block_txt{
		width: 36%;
		float: right;
	}
}
@media screen and (max-width: 1024px) {
	.info-dl_block{
		padding: 50px 50px 20px;
		border: 20px solid #ddd;
	}
	.info_block_img,
	.info_block_txt{
		width: 100%;
		float: none;
	}
	.info-dl_agreement{
		padding:2%;
		margin-bottom:30px;
		height:300px;
	}
	.info-dl_block_ad{
		margin-bottom:30px;
	}
	.info-dl_btn{
		margin-bottom:30px;
	}
}
@media screen and (max-width: 480px) {
	.info-dl_block{
		padding: 20px 20px;
	}
	.info-dl_btn{
		margin-bottom: 20px;
	}
	.info_txt dt{
		float: none;
		padding: 10px 0 0 10px;
		/* width: 100%; */
		font-weight: bold;
	}
	.info_txt dd{
		padding: 10px 0 10px 10px;
	}
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　トップページ
--------------------------------------------------------------------------------------
*/
.top_mainimg_block{
	height: 400px;
	position: relative;
}
.top_maintxt{
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	text-align: center;
	text-shadow: 1px 2px 5px #333;
}
.top_mainimg{
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.top_mainimg img{
	width: 100%;
	height: 400px;
	object-fit: cover;
}
@media screen and (max-width: 480px) {
	.top_mainimg_block{
		height: 300px;
	}
	.top_mainimg img{
		height: 300px;
	}
	#model .top_mainimg img{
		object-position: 65% 100%
	}
}
.top_maintxt h1{
	font-size: 245%;
}
.top_maintxt p{
	font-size: 115%;
}
.top_category{
	width: 1200px;
	margin: 100px auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.top_category_txt{
	width: 42%;
}
.top_category_btn{
	width: 50%;
}
.top_category_btn ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.top_category_btn ul li{
	width: 32%;
	margin: 5px 0;
	position: relative;
}
.top_category_btn ul li p:first-child{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	background: rgba(0,0,0,0.5);
	display: flex;
	justify-content: center; 
	align-items: center; 
	text-align: center; 
	transition:all 0.6s ease;
	border-radius: 5px;
}
.top_category_btn ul li p:first-child:hover{
	background: rgba(0,0,0,0);
}
.top_category_btn ul li p img{
	border-radius: 5px;
	width: 100%;
	height: 100px;
	object-fit: cover;
}
.top_category_btn a,
.top_category_bglg a,
.top_ranking a,
.top_ranking_pg a{
	color: #fff;
	text-decoration: none;
	font-size: 115%;
}
.top_category_bglg{
	padding: 1px 0;
	background: #eee;
}
.top_category_bgdg{
	padding: 1px 0;
	background: #333;
}
.top_category_list,
.top_ranking{
	width: 1200px;
	margin: 100px auto;
}
.top_category_list ul{
	margin-right: -15px;
	display: flex;
	flex-wrap: wrap;
}
.top_category_list ul li{
	width: 228px;
	margin: 0 15px 15px 0;
	position: relative;
}
.top_category_list ul li p img{
	border-radius: 5px;
	width: 100%;
	height: 200px;
	object-fit: cover;
}
.top_category_list ul li p:first-child{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: linear-gradient(to top, rgba(0, 0, 0, 0.5) 10%, rgba(0, 0, 0, 0) 20%);
	display: flex;
	justify-content: center; 
	align-items: flex-end; 
	transition:all 0.6s ease;
	border-radius: 5px;
}
.top_category_list ul li p:first-child:hover{
	background: rgba(0,0,0,0.5);
}
.top_ranking h2,
.top_ranking_pg h2{
	margin-bottom: 50px;
	color: #fff;
	font-size:170%;
	text-align: center;
	line-height: 1em;
}
.top_ranking ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.top_ranking ul::after {
	display: block;
	content:"";
	width: 228px;
}
.top_ranking ul::before {
	display: block;
	content:"";
	width: 228px;
	order:1;
}
.top_ranking ul li{
	width: 228px;
	margin: 0 0 15px 0;
	position: relative;
}
.top_ranking ul li p img{
	width: 100%;
	height: 228px;
	object-fit: cover;
}
.top_ranking ul li p:first-child{
	width: 100%;
	height: 228px;
	position: absolute;
	background: linear-gradient(to top, rgba(0, 0, 0, 0.5) 10%, rgba(0, 0, 0, 0) 20%);
}
.top_ranking ul li p span:first-child{
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, -0%);
	display: flex;
	justify-content: center; 
	align-items: flex-end;
}
.top_ranking ul li p span:nth-child(2){
	width: 100%;
	height: 100%;
	padding: 5px 10px;
	position: absolute;
	background: rgba(0, 0, 0, 0.5);
	text-align: right;
	transition:all 0.6s ease;
	opacity: 0;
	z-index: 10;
}
.top_ranking ul li p span:nth-child(2):hover{
	opacity: 1;
}
.top_photographer{
	width: 1000px;
	margin: 100px auto;
}
.top_category_list h2,
.top_photographer h2{
	margin-bottom: 50px;
	color: #088D12;
	font-size:170%;
	text-align: center;
	line-height: 1em;
}
.top_photographer p:last-child{
	margin-top: 50px;
	text-align: center;
}
.top_photographer p:last-child a{
	margin: 10px;
}
.top_ranking_pg{
	width: 1080px;
	margin: 100px auto;
}
.top_ranking_pg ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.top_ranking_pg ul::after {
	display: block;
	content:"";
	width: 200px;
}
.top_ranking_pg ul::before {
	display: block;
	content:"";
	width: 200px;
	order:1;
}
.top_ranking_pg ul li{
	width: 200px;
	margin-bottom: 20px;
	position: relative;
}
.top_ranking_pg ul li p img{
	width: 100%;
}
.top_news{
	width: 800px;
	margin: 100px auto;
}
.top_news h2{
	margin-bottom: 20px;
	font-size:170%;
}
.top_news ul{
	height:300px;
	overflow:auto;
}
.top_news li:first-child{
	border-top:1px #aaa dashed;
}
.top_news li{
	padding: 10px;
	line-height: 1.5em;
	border-bottom:1px #aaa dashed;
}

@media screen and (max-width: 1200px) {
	.top_category{
		width: 90%;
		margin: 100px auto;
	}
	.top_category_list,
	.top_ranking,
	.top_photographer,
	.top_ranking_pg{
		width: 90%;
	}
	.top_category_list ul{
		margin-right: -3%;
	}
	.top_category_list ul li{
		width: 18%;
		margin: 0 2% 2% 0;
	}
	.top_category_list ul li p img{
		height: 150px;
	}
}
@media screen and (max-width: 1024px) {
	.top_category,
	.top_photographer{
		margin: 50px auto;
		display: block;
	}
	.top_category_list,
	.top_ranking,
	.top_ranking_pg{
		margin: 50px auto;
	}
	.top_category_txt,
	.top_category_btn{
		width: 100%;
	}
	.top_category_txt{
		margin-bottom: 30px;
	}
	.top_category_list ul li{
		width: 31%;
	}
	.top_category_list ul li p img{
		height: 150px;
	}
	.top_photographer p:last-child{
		margin-top: 30px;
	}
	.top_photographer p:last-child a{
		margin: 10px 0 0 0;
	}
	.top_news{
		width: 90%;
		margin: 50px auto;
	}
}
@media screen and (max-width: 768px) {
	.top_category,
	.top_photographer{
		margin: 30px auto;
		display: block;
	}
	.top_category_list,
	.top_ranking,
	.top_ranking_pg{
		margin: 30px auto;
	}
	.top_maintxt{
		width: 90%;
	}
	.top_maintxt h1{
		font-size: 150%;
	}
	.top_maintxt p{
		font-size: 100%;
	}
	.top_ranking h2,
	.top_ranking_pg h2,
	.top_photographer h2,
	.top_news h2,
	.top_category_list h2,
	.top_photographer h2{
		margin-bottom: 20px;
		line-height: 1.5em;
		font-size: 150%;
	}
}
@media screen and (max-width: 480px) {
	.top_category_btn ul li{
		width: 48%;
	}
	.top_category_list ul li{
		width: 48%;
		margin: 0 2% 2% 0;
	}
	.top_ranking ul li{
		width: 48%;
	}
	.top_ranking ul li p img{
		height: 150px;
	}
	.top_ranking ul li p:first-child{
		height: 150px;
		background: linear-gradient(to top, rgba(0, 0, 0, 0.5) 20%, rgba(0, 0, 0, 0) 30%);
	}
	.top_ranking_pg ul li{
		width: 48%;
		margin-bottom: 10px;
	}
}

.top_banner_block_left{
	width: 300px;
	float: left;
}
.top_banner_txt_right{
	width: 580px;
	float: right;
}
@media screen and (max-width: 1024px) {
	.top_banner_block_left,
	.top_banner_txt_right{
		width: 100%;
		margin-bottom: 3%;
		float: none;
	}
}

/*---------- CG.foto ----------*/
.cg_top_mainimg {
	background: url(../img/c00079-001g.jpg) center center no-repeat;
	background-size: cover;
}
.cg_top_mainimg {
  height: 700px;
	margin: auto;
	position: relative;
}
.cg_top_mainimg p {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform : translate(-50%,-50%);
	transform : translate(-50%,-50%);
}
.free_top_maintxt{
	width: 900px;
	margin: 0 auto;
	padding: 50px 0;
}
h2.rk_title{
	margin-bottom: 30px;
	text-align: center;
	color: #fff;
}

@media screen and (max-width: 1024px) {
	.cg_top_mainimg {
		height: 400px;
		margin-bottom: 2%;
	}
	.free_top_maintxt{
		width: 100%;
		padding: 2%;
	}
}
@media screen and (max-width: 480px) {
	.cg_top_mainimg {
	  height: 300px;
	}
	.cg_top_mainimg p {
		width: 80%;
	}
}

/*---------- pro.foto ランキング ----------*/
.top_pickup{
	margin-bottom: 50px;
	padding: 50px 0 30px;
	background: #333;
	color: #fff;
	line-height: 1.3em;
}
.top_pickup div{
	width: 1200px;
	margin: 0 auto;
}
.top_pickup ul{
	margin: 0 -50px 0 0;
}
.top_pickup li{
	margin: 0 50px 0 0;
	float: left;
	position: relative;
	width:200px;
	height:280px;
}
.top_pickup li{
	height:250px;
}
.top_pickup a{
	color:#fff;
	text-decoration: none;
}
.rk_img{
	width:190px;
	height:190px;
	display: table-cell;
	vertical-align: middle;
	position: relative;
	background:#fff;
	position: absolute;
	top: 10px;
	left: 10px;
}
.rk_img img{
	max-width: 90%;
	max-height: 90%;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
.top_pickup_block{
	margin-bottom: 50px;
	padding: 100px 0;
	background: #333;
	color: #fff;
	line-height: 1.3em;
}
.top_pickup_block div{
	width: 1300px;
	margin: 0px auto;
}
.top_pickup_column{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.top_pickup_block li{
	width: 250px;
}
.top_pickup_block img{
	width: 100%;
	margin-bottom: 10px;
}

@media screen and (max-width: 1024px) {
	.top_pickup{
		margin-bottom: 5%;
		padding: 3%;
	}
	.top_pickup div{
		width: 100%;
	}
	.top_pickup ul{
		margin: 0 -3% 0 0;
	}
	.top_pickup li{
		margin: 0 3% 0 0;
		width:30.333%;
		height:300px;
	}
	.top_pickup li{
		height:220px;
	}
	.rk_img{
		width:90%;
	}
	.top_pickup_block{
		margin-bottom: 5%;
		padding: 3% 0;
	}
	.top_pickup_block div{
		width: 95%;
	}
	.top_pickup_block li{
		width: 19%;
	}
	.top_pickup_block img{
		margin-bottom: 5px;
	}
}
@media screen and (max-width: 480px) {
	.top_pickup li{
		width:47%;
	}
}

/*---------- pro.foto カメラマン一覧 ----------*/
.photographer_nav{
	margin-bottom: 20px;
}
.photographer_al{
	line-height: 40px;
	float: left;
}
.photographer_pn{
	float: right;
}
.pg_list_box > li{
	margin-top: 20px;
	display: flex;
}
.pg_list_txt{
	width: 770px;
	margin-left: 20px;
}
.pg_list_txt > .list_line > li:last-child{
	padding-top: 30px;
	text-align: right;
	border-bottom: none;
}
.pg_list_txt > .list_line{
	margin-bottom: 10px;
}

@media screen and (max-width: 1024px) {
	.photographer_al{
		float: none;
	}
	.photographer_pn{
		text-align: center;
		float: none;
	}
	.pg_list_txt > .list_line > li:last-child{
		padding-top: 10px;
		text-align: center;
	}
}
@media screen and (max-width: 768px) {
	.pg_list_box > li{
		display: block;
	}
	.pg_list_img{
		margin-bottom: 20px;
		text-align: center;
	}
	.pg_list_txt{
		width: 100%;
		margin-left: 0px;
	}
}

/*---------- food　トップページ カテゴリリスト ----------*/
.otr_category_list_l,
.otr_category_list_m{
	width: 100%;
	margin: 30px auto;
}
.otr_category_list_l a,
.otr_category_list_m a{
	color: #fff;
	text-decoration: none;
	font-size: 115%;
}
.otr_category_list_l ul,
.otr_category_list_m ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.otr_category_list_l ul li p:first-child,
.otr_category_list_m ul li p:first-child{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: linear-gradient(to top, rgba(0, 0, 0, 0.5) 10%, rgba(0, 0, 0, 0) 20%);
	display: flex;
	justify-content: center; 
	align-items: flex-end;
	transition:all 0.6s ease;
	border-radius: 5px;
}
.otr_category_list_l ul li p:first-child:hover,
.otr_category_list_m ul li p:first-child:hover{
	background: rgba(0,0,0,0.5);
}
.otr_category_list_l ul li{
	width: 460px;
	margin: 0 0 50px 0;
	position: relative;
}
.otr_category_list_l ul li p img{
	border-radius: 5px;
	width: 100%;
	height: 400px;
	object-fit: cover;
}
.otr_category_list_m ul li{
	width: 300px;
	margin: 0 0 35px 0;
	position: relative;
}
.otr_category_list_m ul li p img{
	border-radius: 5px;
	width: 100%;
	height: 300px;
	object-fit: cover;
}
@media screen and (max-width: 1024px) {
	.otr_category_list_l,
	.otr_category_list_m{
		margin: 30px auto 0;
	}
	.otr_category_list_l ul li{
		width: 48%;
		margin: 0 0 4% 0;
	}
	.otr_category_list_l ul li p img{
		height: 300px;
	}
	.otr_category_list_m ul li{
		width: 32%;
		margin: 0 0 2% 0;
	}
	.otr_category_list_m ul li p img{
		height: 250px;
	}
}
@media screen and (max-width: 768px) {
	.otr_category_list_m ul li{
		width: 48%;
		margin: 0 0 4% 0;
	}
}
@media screen and (max-width: 480px) {
	.otr_category_list_l ul li p img{
		height: 200px;
	}
	.otr_category_list_m ul li p img{
		height: 150px;
	}
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　中カテゴリ
--------------------------------------------------------------------------------------
*/
.free_m_category{
	margin-bottom: 50px;
	padding: 50px 0 30px;
	background: url(../img/category_bg.jpg);
	line-height: 1.3em;
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　サイトマップ
--------------------------------------------------------------------------------------
*/
.sitemap{
	display: flex;
	justify-content: space-between;
}
.sitemap div{
	width: 48%;
}
.sitemap ul{
	margin: 0 0 30px 30px;
}
@media screen and (max-width: 1024px) {
	.sitemap{
		display: block;
	}
	.sitemap div{
		width: 100%;
	}
}


/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　使用許諾証明発行サービス
--------------------------------------------------------------------------------------
*/
.block_roundedline{
	margin:0 0 20px 0;
	padding:15px 20px 10px 20px;
	border-radius: 8px;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border:1px solid #ddd;
	background:#fff;
}
#pro .arrow_down_icon{
	width:21px;
	height:11px;
	background: url("../img/b_icon.png") no-repeat -180px -15px;}
#pro .bg_half{background: rgba(8,141,18,0.2);}

#cg .arrow_down_icon{
	width:21px;
	height:11px;
	background: url("../img/b_icon.png") no-repeat -202px -15px;}
#cg .bg_half{background: rgba(14,80,150,0.2);}

#food .arrow_down_icon{
	width:21px;
	height:11px;
	background: url("../img/b_icon.png") no-repeat -224px -15px;}
#food .bg_half{background: rgba(212,63,34,0.2);}

#model .arrow_down_icon{
	width:21px;
	height:11px;
	background: url("../img/b_icon.png") no-repeat -246px -15px;}
#model .bg_half{background: rgba(7,163,234,0.2);}

.table-bordered{
	width: 100%;
	margin-bottom: 30px;
	border:1px solid #ddd;
}
.table-bordered th{
	font-weight: bold;
}
.table-bordered th:first-child{
	width: 30%;
}
.table-bordered th:last-child{
	width: 70%;
}
.table-bordered th,
.table-bordered td{
	padding: 10px;
	border:1px solid #ddd;
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　　　　　プロ・モデル個人ページ
--------------------------------------------------------------------------------------
*/
#pro .pg_logo{
	float: left;
}
#pro .pg_title,
#pro .pg_menu{
	width: 810px;
	float: right;
}
#pro .pg_title{
	height: 50px;
	padding: 20px 0;
	font-size:170%;
	font-weight: bold;
}
.pg_menu{
	padding: 20px 0;
	margin-bottom: 20px;
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}
.pg_menu li{
	padding: 0 10px;
}
.pg_photo{
	padding:10px;
	background:#e5e5e5;
	margin-bottom:20px;
}
.pg_thumbnail{
	width:140px;
	margin-right: 10px;
	float:left;
	cursor:pointer;
}
.pg_thumbnail img{
	width:140px;
	margin-bottom: 10px;
}
.pg_target{
	width:800px;
	padding: 50px 0;
	float:right;
	text-align: center;
	background:#fff;
}
span.check_on{
	margin:0px 0 0px 0px;
	padding:0px 15px 0 15px;
	background: url(../img/check_on.gif) no-repeat 0 50%;
	border:solid 0px;
}
span.check_off{
	margin:0px 0 0px 0px;
	padding:0px 15px 0 15px;
	background: url(../img/check_off.gif) no-repeat 0 50%;
	border:solid 0px;
}
@media screen and (max-width: 1024px) {
	#pro .pg_logo{
		float: none;
		text-align: center;
	}
	#pro .pg_title,
	#pro .pg_menu{
		width: 100%;
		float: none;
		text-align: center;
	}
	.pg_target{
		display: none;
	}
	.pg_thumbnail{
		width:100%;
		margin: 0 auto -10px;
		float:none;
		text-align: center;
	}
	.pg_thumbnail img{
		width:100%;
	}
}
@media screen and (max-width: 480px) {
	.pg_menu{
		padding: 10px 0;
	}
	.pg_menu li{
		width: 50%;
		padding: 10px 10px;
		text-align: left;
	}
}

/* reCAPTCHA v3　表示位置 */
.grecaptcha-badge{
    margin-bottom: 10px;
}

/*
--------------------------------------------------------------------------------------
　　　　　　　　　404-file-not-found.html
--------------------------------------------------------------------------------------
*/

@media screen and (min-width: 1200px) {
}
@media screen and (max-width: 1024px) {
	.tab-none{ display: none;}
}
@media screen and (min-width: 769px) {
	.pc-none{ display: none;}
	.br-sp { display:none; }
}
@media screen and (max-width: 768px) {
	.sp-none{ display: none;}
	.br-pc { display:none; }
}
@media screen and (max-width: 480px) {
}


@media print {
	body {
    width: 1280px !important;
    zoom: .8;
  }
}

