@charset "UTF-8";
/*
w-1240px コンテストページ 追加設定用
・HEAD SECTION
・SNS AREA
・CONTEST SITEMAP
*/


/* HEAD SECTION
================================================== */
#contents .headSection .innerBlock {
  width: 1240px;
}
#contents .headSection .ttl {
  float: none;
  width: auto;
  font-size: 24px;
}
#contents .headSection .leftArea {
	float: none;
  width: auto;
}

@media only screen and (max-width: 767px) {
  #contents .headSection .innerBlock {
    width: auto;
    padding: 0 2%;
  }
  #contents .headSection .ttl {
    font-size: 3.73333vw;
  }
	#contents .headSection .ttl p.productsLogo,
	#contents .headSection .leftArea .title {
		display:block;
		padding:0;
		text-align: center;
	}
	#contents .headSection .ttl p.productsLogo {
		margin-bottom: 0.2em;
		font-size:5.3vw;
	}
	#contents .headSection .leftArea .title {
		background-image:none;
		font-size:4.8vw;
	}
}

/* SNS AREA
================================================== */
#sns_area * {
	box-sizing: border-box;
}
#sns_area {
	margin:0 auto;
	max-width: 1240px;

}
#sns_area > .title {
	font-size: 28px;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
	padding-top:77px;
}
#sns_area > .lead {
	margin: 28px auto 0;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: -0.05em;
	text-align: center;
}
#sns_area ul.list {
	margin: 34px auto 0;
	text-align: center;
	padding-bottom: 80px;
}
#sns_area ul.list li {
	display: inline-block;
	vertical-align: top;
	width: 460px;
	margin: 0;
	text-align: left;
	background: url(/katsuyou/photo/common/images/contest/sns_bg.png) left top;
	transition: opacity 0.3s linear;
}
#sns_area ul.list li + li {
	margin: 0 0 0 40px;
}
#sns_area ul.list li:hover {
	opacity: 0.3;
}
#sns_area ul.list li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 30px 0;
	color: #151515;
}
#sns_area ul.list li a:hover {
	color: #151515;
	text-decoration: none;
}
#sns_area ul.list li .icon {
	display: inline-block;
	vertical-align: top;
	width: 120px;
	margin: 0 0 0 40px;
}
#sns_area ul.list li .textArea {
	display: inline-block;
	vertical-align: top;
	width: 260px;
	margin: 14px 0 0 16px;
	text-align: left;
}
#sns_area ul.list li .textArea p.text {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	color: #858585;
}
#sns_area ul.list li .textArea h3.title {
	margin: 14px auto 0;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.2;
}
#sns_area ul.list li .textArea p.acount {
	margin: 14px auto 0;
	display: inline-block;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.2;
	border-bottom: #151515 1px solid;
}

#sns_area ul.list li .button {
	width: 320px;
	height: 60px;
	font-size: 16px;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	color: #1877f2;
	text-indent: 34px;
	background: #fff;
	border: 2px solid #1877f2;
	border-radius: 30px;
	margin: 20px 0 0 70px;
	display: inline-block;
	position: relative;
	}

#sns_area ul.list li .button .ico {
	width: 26px !important;
	margin: 0 !important;
	padding: 0 !important;
	position: absolute;
	top: 18px;
	left: 0px;
}
#sns_area ul.list li .button .ico img {
	margin: 0 !important;
	padding: 0 !important;
}

@media only screen and (max-width: 767px) {
  #sns_area > .title {
    font-size: 32px;
    font-size: 5.0vw;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
  }
  #sns_area > .lead {
    margin: 32px auto 0;
    margin: 5.0vw auto 0;
    font-size: 21px;
    font-size: 3.3vw;
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: -0.05em;
    text-align: center;
  }
  #sns_area ul.list {
    margin: 52px auto 0;
    margin: 8.1vw auto 0;
    text-align: center;
  }
  #sns_area ul.list li {
    display: block;
    width: 580px;
    width: 90.6vw;
    margin: 0 auto 0;
    text-align: left;
    background: url(/katsuyou/photo/common/images/contest/sns_bg.png) left top;
    background-size: 32px 32px;
    background-size: 5.0vw 5.0vw;

    transition: opacity 0s linear;
  }
  #sns_area ul.list li + li {
    margin: 30px auto 0px;
    margin: 4.7vw auto 0;
  }
  #sns_area ul.list li:hover {
    opacity: 1;
  }
  #sns_area ul.list li a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 40px 0;
    padding: 6.2vw 0;
    color: #151515;
  }
  #sns_area ul.list li a:hover {
    color: #151515;
    text-decoration: none;
  }
  #sns_area ul.list li .icon {
    display: inline-block;
    vertical-align: top;
    width: 152px;
    width: 23.8vw;
    margin: 0 0 0 40px;
    margin: 0 0 0 6.2vw;
  }
  #sns_area ul.list li .icon img {
    width: 100%;
    height: auto;
  }
  #sns_area ul.list li .textArea {
    display: inline-block;
    vertical-align: top;
    width: 310px;
    width: 48.4vw;
    margin: 19px 0 0 25px;
    margin: 3.0vw 0 0 3.9vw;
    text-align: left;
  }
  #sns_area ul.list li .textArea p.text {
    font-size: 20px;
    font-size: 3.1vw;
    font-weight: 500;
    line-height: 1.2;
    color: #858585;
    white-space: nowrap;
  }
  #sns_area ul.list li .textArea h3.title {
    margin: 20px auto 0;
    margin: 3.1vw auto 0;
    font-size: 24px;
    font-size: 3.8vw;
    font-weight: bold;
    line-height: 1.2;
  }
  #sns_area ul.list li .textArea p.acount {
    margin: 20px auto 0;
    margin: 3.1vw auto 0;
    display: inline-block;
    font-size: 24px;
    font-size: 3.8vw;
    font-weight: 500;
    line-height: 1.2;
    border-bottom: #151515 1px solid;
  }
  #sns_area ul.list li .button {
    position: relative;
    margin: 20px 0 0 88px;
    margin: 3.1vw 0 0 13.8vw;
    display: inline-block;

    width: 406px;
    width: 63.4vw;
    height: 70px;
    height: 10.9vw;
    background: #fff;
    border-radius: 35px;
    border-radius: 5.5vw;

    font-size: 20px;
    font-size: 3.1vw;
    font-weight: bold;
    line-height: 70px;
    line-height: 10.9vw;
    text-align: center;
    text-indent: 42px;
    text-indent: 6.6vw;
  }
  #sns_area ul.list li.facebook .button {
    color: #1877f2;
    border: 2px solid #1877f2;
  }

  #sns_area ul.list li .button .ico {
    margin: 0 !important;
    padding: 0 !important;
    position: absolute;
    top: 2.3vw;
    width: 5.0vw;
    left: -10px;
  }
  #sns_area ul.list li .button .ico img {
    width: 100%;
    height: auto;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* sitemap
================================================== */

#footer {
	margin-top: 0 !important;
}
/*--------------------------------------------------
category_footer (from products)
--------------------------------------------------*/
.category_footer * {box-sizing: border-box;}
.category_footer { padding: 5% 0; background: #F4F4F4; min-width: 1240px; }
.category_footer .category_footer_inner { max-width: calc(1210px + 30px); margin: 0 auto; padding: 0 15px; }
.category_footer .category_footer_heading { margin-bottom: 4%; }
.category_footer .category_footer_heading a { font-weight: bold; color: #333; }
.category_footer .category_footer_heading a:hover { color: #333; }
.category_footer .category_footer_menu_heading > a {  font-weight: bold; color: #333; }
.category_footer .category_footer_menu_list > li + li,.category_footer ul > li + li { margin-top: 5px; }
.category_footer .category_footer_menu_list > li > a,.category_footer ul > li > a { position: relative; display: inline-block; padding-left: 20px; color: #333; font-size: .75rem;}
.category_footer .category_footer_menu_list > li > a::before,.category_footer ul > li > a::before { content: ''; position: absolute; left: 0; top: .7em; display: inline-block; width: 10px; height: 2px; background: #333; }
.category_footer .category_footer_menu_list > li > a:hover,.category_footer ul > li > a:hover { color: #333; }
.category_footer .category_footer_menu_list > li > a img,.category_footer ul > li > a img { vertical-align: middle; }

@media print, screen and (min-width: 768px) {
	.category_footer { padding: 43px 0 64px; }
  .category_footer .category_footer_col3,.category_footer .category_footer_col2 { display: -webkit-box; display: -webkit-flex; display: flex;justify-content: space-around; }
  .category_footer .category_footer_col2 .col { width: 50%; }
  .category_footer .category_footer_col3 .col { width: 33%; }
  .category_footer .category_footer_col2 .col:nth-child(2),.category_footer .category_footer_col3 .col:nth-child(2), .category_footer .category_footer_col3 .col:nth-child(3) { padding-left: 24px; border-left: 1px solid #CBCBCB; }
  .category_footer .category_footer_menu_heading { margin-bottom: 10px; }
  .category_footer .category_footer_menu_list + .category_footer_menu_heading,.category_footer ul + .category_footer_menu_heading { margin-top: 70px; }
}

@media only screen and (max-width: 767px) {
	.category_footer { padding: 43px 0; min-width: 100%; }
	.category_footer .category_footer_inner { width: auto; }
	.category_footer .category_footer_col3 .col:not(:last-child),.category_footer .category_footer_col2 .col:not(:last-child) {margin-bottom:1.8rem;}
  .category_footer .category_footer_menu_list,.category_footer ul { margin-top:1.2rem; }
  .category_footer .category_footer_menu_list:not([style]) { display: none; }
}



