@charset "UTF-8";
@import "/css/legacy/font.css";

/***************************************************/
/*編集完了等の通知*/
.info-box {
border: 1px dotted #f00;
padding: 10px;
color: #f00;
text-align: center;
margin-bottom: 40px;
max-width: 952px;
margin-right: auto;
margin-left: auto;
}
/*エラーメッセージ*/
.js-error-message {
color: #f00;
}
.errorMsg {
color: #f00;
margin-bottom: 10px;
}
/*赤*/
.u-red {
color: #f00;
}
/*センタリング*/
.u-text-center {
text-align: center !important;
}
/*折り返し*/
h1 {
word-break:break-word;
}
/*折り返し禁止*/
.u-nowrap {
white-space: nowrap;
}
/*パンくずリスト*/
.p-breadcrumbs {
padding: 10px;
font-size: 13px;
line-height: 1.3;
display: flex;
justify-content: center;
overflow-x: auto;
}
@media screen and (max-width: 700px) {
	.p-breadcrumbs {
	justify-content: inherit;
	}
}
.p-breadcrumbs li {
white-space: nowrap;
}
.p-breadcrumbs li:after {
content: '';
margin: 0 8px;
font: normal normal normal 15px/1 FontAwesome;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
transform: translate(0, 0);
}
.p-breadcrumbs li:last-child {
font-weight: bold;
}
.p-breadcrumbs li:last-child:after {
content: none;
margin: 0;
}

ol.breadcrumbsV2 {
max-width: 1292px;
background-color: #eee;
padding: 3px 10px;
font-size: 0.8em;
margin: 0 auto 10px;
}
ol.breadcrumbsV2 li {
display: inline;
}
ol.breadcrumbsV2 li:last-child {
font-weight:bold;
}
ol.breadcrumbsV2 li:before {
display: inline;
content: ">";
margin:0 0.3em;
color: #000;
font-weight:normal;
}
ol.breadcrumbsV2 li:first-child:before {
content: none;
}

ol.breadcrumbsV3 {
background-color: #eee;
padding: 5px 10px;
font-size: 0.9rem;
margin: 0 auto 10px;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-wrap: wrap;
}
@media screen and (min-width: 1200px) {
    ol.breadcrumbsV3 {
    padding: 8px 60px 8px 60px;
    }
}
ol.breadcrumbsV3 li {
padding: 3px 0;
}
ol.breadcrumbsV3 li:last-child {
font-weight:bold;
}
ol.breadcrumbsV3 li:before {
display: inline;
content: ">";
margin:0 0.3em;
color: #000;
font-weight:normal;
}
ol.breadcrumbsV3 li:first-child:before {
content: none;
}

@media screen and (max-width: 1199px) {
    ul.sns {
    display: flex;
    justify-content:center;
    }
}
@media screen and (min-width: 1200px) {
    ul.sns {
    display: flex;
    justify-content: flex-end;
    }
}
/*ラベル*/
label:hover {
cursor: pointer;
}

/*並び替え*/
.inline-sort {
margin: 24px 24px 14px 24px;
line-height: 1.2;
font-size: 15px;
text-align: center;
}
.inline-sort span {
display: inline-block;
margin-right: 10px;
margin-bottom: 10px;
padding-right: 10px;
border-right: 1px solid #999;
}
.inline-sort span:last-child {
margin-right: 0;
padding-right: 0;
border-right: none;
}

/*注意書き*/
p.notes {
font-size: 14px;
text-indent: -14px;
padding-left: 14px;
line-height: 1.3;
}
ul.notes li {
font-size: 14px;
text-indent: -14px;
padding-left: 14px;
line-height: 1.2;
margin-bottom: 0.5rem;
}
ul.notes li:last-child {
margin-bottom: 0;
}

/*デフォルトスタイル*/
ul.p-ul {
padding-left:2em;
margin-bottom:1em;
}
ul.p-ul li {
list-style-type:disc;
margin-bottom:0.5em;
line-height: 1.4;
}

/*ボタン*/
a.u-btn-white,
a.u-btn-black {
display: inline-block !important;
line-height: 1;
}
button,
.m-btn-medium,
.m-btn-large {
cursor: pointer;
display: inline-block;
font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Pゴシック", "MS P Gothic", Osaka, sans-serif;
font-style: normal;
line-height:1;
font-weight: 700;
/*color: #191919;*/
-webkit-transition: all ease-out .3s;
transition: all ease-out .3s;
}

/*リンク色を設定したエリア内でのモノトーンボタンの強制設定*/
.u-btn-white,
.u-btn-white:visited {
color: #000 !important;
text-decoration: none !important;
}
.u-btn-black,
.u-btn-black:visited {
color: #fff !important;
text-decoration: none !important;
}
.m-btn-balloon_link-item a,
.m-btn-balloon_link-item a:visited {
color: #000;
}

.m-btn-balloon_link-item a:hover {
color: #868686;
}

/*コメント投稿エリアのメンバー名のリンク色*/
a.m-comment_name {
color: #191919;
display:inline-block;
}

/*ul・olリセット*/
ul.listStyleDisc {
padding-left:1.5em;
}
ul.listStyleDisc li {
zoom:0;
list-style-type:disc;
line-height:1.5;
margin-bottom:0.5em;
}

ol.listStyleDec {
padding-left:1.5em;
}
ol.listStyleDec li {
list-style-type:decimal;
line-height:1.5;
margin-bottom:0.5em;
}
/***************************************************/
/*ページング*/
.paging {
text-align: center;
margin-bottom: 20px;
}
.paging p{
text-align: center;
margin-bottom: 8px;
}
.paging ul {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
margin: 0 10px;
justify-content: center;
flex-wrap: wrap;
}
.paging li {
display: inline-block;
letter-spacing: normal;
line-height: 40px;
margin-left: 5px;
text-align: center;
min-width: 42px;
margin-bottom:5px;
}
.paging li:first-child {
margin-left: 0px;
text-align: center;
}
.paging li.current {
box-sizing: border-box;
min-width: 48px;
display: inline-block;
text-decoration:none;
padding: 0 5px 3px;
border: 1px solid #ccc;
border-radius: 4px;
background-color: #f2f2f2;
color: #666;
}
.paging li a {
box-sizing: border-box;
min-width: 48px;
display: block;
color: #000 !important;
text-decoration:none;
padding: 0 5px 3px;
border-top: 1px solid #e3e3e3;
border-left: 1px solid #e3e3e3;
border-right: 1px solid #ccc;
border-bottom: 1px solid #ccc;
border-radius: 4px;
background-color:#fff;
font-size: 0.9rem;
}
.paging li a:hover {
border-color:#191919;
background-color:#191919;
color: #fff !important;
text-decoration:none; 
-webkit-transition: all ease-out .3s;
transition: all ease-out .3s;
}
.paging button {
margin:10px; 
}

/***************************************************/
/*前後リンク*/
.p-common-paging {
display: block;
height: 38px;
justify-content: space-between;
margin-bottom: 20px;
letter-spacing: .2em;
position: relative;
width: 100%;
font-family: LeagueGothic-Regular, sans-serif;
font-style: normal;
font-weight: 400;
}
.p-common-paging-prev {
display: block;
height: 24px;
position: absolute;
left: 0;
top:10px;
}
.p-common-paging-next {
display: block;
height: 24px;
position: absolute;
right: 0;
top:10px;
}
.p-common-paging-center {
left: 50%;
padding-left: 4px;
position: absolute;
text-align: center;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
/*top: -10px;*/
}
.p-common-paging li a:hover{
text-decoration: none;
}
.p-common-paging .m-btn-arrow.u-arrow-left {
left: 0;
bottom: 0;
line-height: 1;
position: absolute;
padding-left: 64px;
height: 18px;
color: #000;
}
.p-common-paging .m-btn-arrow.u-arrow-right {
bottom: 0;
line-height: 1;
position: absolute;
height: 18px;
padding-right: 64px;
right: 0;
color: #000;
}
.p-common-paging .m-btn-arrow.u-arrow-left::before {
bottom:4px;
}
.p-common-paging .m-btn-arrow.u-arrow-right::before {
bottom:4px;
top: inherit;
}

/***************************************************/
/*アイコン*/
a.linkPrev::before, .linkPrev a::before,
a.linkNext::after, .linkNext a::after {
display: inline-block;
font: normal normal normal 15px/1 FontAwesome;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
transform: translate(0, 0);
}
.fa {
position: relative !important;
z-index: 0;
}

.fa-flag-o {color: #999;}
.fa-flag {color: #f00;}
.fa-star {color: #f99;}
.fa-info-circle {color: #f93; font-size: 18px !important;}
.fa-group {color: #8bc33c;}
.fa-user-plus {color: #2f69fd;}
/*.fa-comments {color: #39f;}*/
.fa-heart {color: #f00;}

.iconHot::before {
display: inline-block;
content: 'HOT';
color: #fff;
font-size: 10px;
line-height: 14px;
font-weight: bold;
background: #ef3e00;
vertical-align: top;
margin-top: 2px;
padding: 0 5px;
border-radius: 3px;
}
.icon-registered {
border: 1px solid #868686;
border-radius: 28px;
display: inline-block;
color: #868686;
font-size: 13px;
padding: 5px 13px 7px;
position: relative;
line-height: 1;
}
.contents-right p {
word-break: break-word;
}
.contents-right .iconNew {
font-size:7pt;
color:#f55;
margin-right:5px;
padding:0 3px;
background-color:#fee;
text-decoration:none !important;
}
.contents-right .icon {
font-size:7pt;
color:#777;
margin-right:5px;
padding:0 3px;
background-color:#efefef;
}
a.linkPrev::before, .linkPrev a::before {
content: "";
margin: 0 0.2rem 0 0;
}
a.linkNext::after, .linkNext a::after {
content: "";
margin: 0 0 0 0.2rem;
}
img.iconGANREF {
width: 15px; 
vertical-align: top;
margin-top: 2px;
margin-right: 3px;
}

/*MY＞レビュー・撮影記＞記事種別アイコン*/
.reviewIconDiary,
.reviewIconReview {
position: relative;
font-size:0.7rem;
text-align: center;
width:3.5rem;
display: inline-block;
border-radius: 3px;
color:#fff;
text-decoration:none;
line-height: 0.7rem;
padding: 5px 0;
margin-right: 10px;
}
.reviewIconReview {
	background-color:#059;
}
.reviewIconDiary {
	background-color:#f93;
}

/*MY＞お気に入り写真＞アイコン*/
.p-common-thumb-list-icon {
color: #fff;
font-size: 14px;
letter-spacing: .08em;
line-height: 1;
margin: 0 6px;
padding: 7px 10px 5px;
display: inline-block;
font-family: LeagueGothic-Regular, sans-serif;
font-style: normal;
font-weight: 400;
}
.p-common-thumb-list-icon.is-gold {
background-color: #e2bf00;
}
.p-common-thumb-list-icon.is-black {
background-color: #191919;
}


/*********************************/
/*枠付きサムネールリスト*/	
.p-common-thumb-list {
display: flex;
flex-wrap: wrap;
justify-content: center;
}
.p-common-thumb-list-thumb {
display: block;
position: relative;
vertical-align: middle;
text-align: center;
width: 100%;
padding-top: 100%;
box-sizing: border-box;
border: 1px solid #ccc;
background-color: #fff;
margin-bottom: 10px;
}
.p-common-thumb-list-thumb:hover {
border: 1px solid #191919;
}
.p-common-thumb-list-thumb img {
display: block;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
max-width: 96%;
max-height: 96%;
object-fit: contain;
}
.p-common-thumb-list-item {
text-align: center;
}
.p-common-thumb-list-item p {
font-size: 14px;
line-height: 1.3;
margin-bottom: 8px;
word-break: break-all;
}


@media (max-width: 599px) {
	.p-common-thumb-list {
	padding: 24px 20px 24px;
	text-align: center;
	}
	.p-common-thumb-list .p-common-thumb-list-item {
	margin-bottom: 20px;
	margin-right: 20px;
	width: calc((100% - 20px)/ 2);
	}
	.p-common-thumb-list .p-common-thumb-list-item:nth-child(2n) {
	margin-right: 0;
	}
}

@media (min-width: 600px) and (max-width: 1199px) {
	.p-common-thumb-list {
	padding: 48px;
	text-align: center;
	}
	.p-common-thumb-list .p-common-thumb-list-item {
	margin-bottom: 20px;
	margin-right: 20px;
	width: calc((100% - 40px)/ 3);
	}
	.p-common-thumb-list .p-common-thumb-list-item:nth-child(3n) {
	margin-right: 0;
	}
}


@media (min-width: 600px) and (max-width: 1199px) {
	.p-common-thumb-list-col2 {
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	}
	.p-common-thumb-list-col2 .p-common-thumb-list-item {
	margin: 0 20px 20px 0;
	width: calc((100% - 20px)/ 2);
	}
	.p-common-thumb-list-col2 .p-common-thumb-list-item:nth-child(2n) {
	margin-right: 0;
	}
}

@media (min-width: 1200px) {
	.p-common-thumb-list {
	margin: 0 40px;
	}
	.p-common-thumb-list-col2 {
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	}
	.p-common-thumb-list-col2 .p-common-thumb-list-item {
	margin: 0 20px 20px 0;
	width: calc((100% - 40px)/ 3);
	}
	.p-common-thumb-list-col2 .p-common-thumb-list-item:nth-child(3n) {
	margin-right: 0;
	}
}

@media (min-width: 1200px) and (max-width: 1366px) {
	.p-common-thumb-list .p-common-thumb-list-item {
	margin: 0 16px 32px 0;
	width: calc((100% - 48px)/ 4);
	}
	.p-common-thumb-list .p-common-thumb-list-item:nth-child(4n) {
	margin-right: 0;
	}
}

@media (min-width: 1367px) {
	.p-common-thumb-list .p-common-thumb-list-item {
	margin: 0 32px 32px 0;
	width: calc((100% - 160px)/ 6);
	}
	.p-common-thumb-list .p-common-thumb-list-item:nth-child(6n) {
	margin-right: 0;
	}
}

/***********************************/
/*右ペイン*/
.contents-right {
flex-basis: 300px;
flex-shrink: 0;
width:300px;
margin-left: 40px;
padding: 0;
font-size: 0.9rem;
}
.contents-right a,
.contents-right visited {
color:#191919;
}
.contents-right a:hover {
color:#191919;
text-decoration: underline;
}

/*右ペイン＞h4*/
.contents-right h4 {
display: inline-block;
background: #000;
color: #fff;
padding: 8px 10px;
font-weight: normal;
margin-bottom: 0;
}
.contents-right a:hover img {
/*transform: scale(1.1);*/
}
/*右ペイン＞特別企画*/
.contents-right_sp-info_links {
padding: 0 0 20px;
border-top: 1px solid #000;
}
.contents-right_sp-info_links li {
overflow: hidden;
padding: 15px 0;
border-bottom:1px dotted #999;
line-height: 1.2rem;
}
.contents-right_sp-info_links li:last-child {
border-bottom:none;
}
.contents-right_sp-info_links a {
display: flex;
align-items: flex-start;
}
.contents-right_sp-info_links a img{
margin-right: 10px;
flex-shrink: 0;
border-radius: 50%;
box-sizing: border-box;
width:55px;
}

/*右ペイン＞特別企画 include版*/
.contents-right_sp-info .special-events {
padding: 0 0 20px;
border-top: 1px solid #000;
}
.contents-right_sp-info .special-events li {
overflow: hidden;
padding: 15px 0;
border-bottom:1px dotted #999;
line-height: 1.2rem;
}
.contents-right_sp-info .special-events li:last-child {
border-bottom:none;
}
.contents-right_sp-info .special-events a {
display: flex;
align-items: flex-start;
}
.contents-right_sp-info .special-events a img{
margin-right: 10px;
flex-shrink: 0;
border-radius: 50%;
box-sizing: border-box;
width:55px;
}

/*右ペイン＞お知らせ*/
.contents-right_common-info_news {
padding: 0 0 20px;
border-top: 1px solid #000;
}
.contents-right_common-info li {
overflow: hidden;
padding: 15px 0;
border-bottom:1px dotted #999;
line-height: 1.2rem;
}
.contents-right_common-info li:last-child {
border-bottom:none;
}
.contents-right_common-info_links {
margin: 10px 0 20px;
}
.contents-right_common-info_links li {
overflow: hidden;
padding: 15px 0;
border-bottom:1px dotted #999;
line-height: 1.2rem;
}
.contents-right_common-info_links li:last-child {
border-bottom:none;
}
.contents-right_common-info_links li p{
line-height: 1.2rem;
}
.contents-right_common-info_links li a {
display: flex !important;
align-items: flex-start;
}
.contents-right_common-info_links a img{
margin-right: 10px;
flex-shrink: 0;
border-radius: 50%;
box-sizing: border-box;
width:55px;
}

/*右ペイン＞新着写真*/
.contents-right_recent-photos {
margin-bottom: 40px;
}
.contents-right_recent-photos ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 15px 0;
border-top: 1px solid #000;
}
.contents-right_recent-photos li a img {
object-fit: cover;
width: 94px;
height: 94px;
border:1px solid #ccc;
margin-bottom: 10px;
}

/*右ペイン＞レビュー＆撮影記*/
.contents-right_recent-articles {
margin-bottom: 40px;
}
.contents-right_recent-articles ul {
padding: 0 0 20px;
border-top: 1px solid #000;
}
.contents-right_recent-articles li {
overflow: hidden;
padding: 15px 0;
border-bottom:1px dotted #999;
line-height: 1.2rem;
}
.contents-right_recent-articles li:last-child {
border-bottom: none;
}
.contents-right_recent-articles li a {
display: flex !important;
align-items: flex-start;
}
.contents-right_recent-articles .avatar {
flex-basis: 40px;
width: 40px;
height: 40px;
display: block;
margin-right: 10px;
}
.contents-right_recent-articles .article-txt span {
font-size: 0.8rem;
line-height: 1.2rem;
color: #999;
white-space: nowrap;
}

/*右ペイン＞Banner*/
.sideBannerArea {
margin: 0 auto;
text-align: center;
margin-bottom:20px;
}
.sideBannerArea #gpt-ad-rect01,
.sideBannerArea #gpt-ad-rect02,
.sideBannerArea #gpt-ad-rect03 {
margin-bottom:20px;
}

.u-margin10 {
margin:10px;
}

.u-lh15 {
line-height:1.5;
}
/*ポートフォリオ＞PRIZEDアイコンのマージン調整*/
.p-portfolio_photo .p-common-thumb-list-icon {
margin-bottom: 5px;
}
.p-portfolio_photo .p-common-thumb-list-icon:first-of-type {
margin-left: 0;
}


@media (min-width: 1200px) {
		/*リンク色を設定したエリア内でのモノトーンボタンの強制設定*/
	.u-btn-black:hover,
	.u-btn-black:visited:hover {
	color: #000 !important;
	text-decoration: none !important;
	}
	.u-btn-white:hover,
	.u-btn-white:visited:hover {
	color: #fff !important;
	text-decoration: none !important;
	}
}

@media (max-width: 1199px) {
	#wrapper {
	width: auto;
	margin: 0 0 40px 0;
	}
	#contents {
	flex-wrap:wrap;
	}
	#mainCnt {
	float: none;
	margin: 10px auto 0;
	}
	.contents-right {
	flex-basis: auto;
	width: fit-content;
	margin-left: 0;
	padding: 0;
	font-size: 0.9rem;
	}
	#wrapper .contents-right {
	margin: 0 auto 40px;
/*	max-width: 635px;*/
	padding: 0 20px;
	}
	.contents-right_recent-photos li a img {
	width: 29vw;
	height: 29vw;
	}
}

@media screen and (max-width: 700px) {
	/*並び替え*/
	.inline-sort {
	margin: 24px 0 14px 0;
	}
	.p-common-paging .m-btn-arrow.u-arrow-left {
	overflow: hidden;
	width: 64px;
	font-size: 0;
	left: -16px
	}

	.p-common-paging .m-btn-arrow.u-arrow-right {
	overflow: hidden;
	width: 64px;
	font-size: 0;
	right: -16px;
	}

}

/*下線付きリンク*/
.u-lined,
a .u-lined {
border-bottom: dotted 1px;
}
.u-lined:visited,
a:visited .u-lined {
color:#777;
}
.u-lined:hover,
a:hover .u-lined {
border-bottom-color: rgba(0,0,0,0);
}
