/* =================================
レイアウト
================================= */
/* 装飾 */
html{
	font-size: 15px;
}

body {
	font-family:"メイリオ", "Meiryo", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
	font-size: 100%;
	line-height: 1.6;
}

img {
	width: 100%;
	height: auto;
}

.pc_img {
	display: block;
}

.sp_img {
	display: none;
}

.wrap {
	width: 100%;
	position:relative;
}

main {
	width: 100%;
	max-width: 1920px;
	font-size:0.95rem;
	margin: 0 auto;
	margin-top: 83px;
	padding-bottom: calc( 155 / 1200 * 100%);
	background: #ABFFE7 url(../img/bg_main.jpg) 0 0 no-repeat;
	display: block;
}

@media all and (max-width: 1200px) {
	main {	
		margin-top: calc( 37 / 1200 * 100% + 44px );
	}
}

nav {
	width: 100%;
	padding: 22px 0;
	background: #e5007f;
	position: fixed;
	top: 0;
	z-index: 999;
}

.global_navi {
	max-width: 1058px;
	margin: 0 auto;
	padding: 0 20px;
	/* flex */
	display: -webkit-flex;
	display: flex;
}

footer {
	margin-top: calc( 40 / 1920 * -100%);
	padding-top: calc( 40 / 1920 * 100%);
	background: url(../img/footer_bg.png) 0 0 no-repeat;
	background-size: contain;
}

/* ロールオーバー */
a .hover:hover {
	opacity: 0.7;
}

/* ナビゲーション
---------------------------------------------------------- */
.global_navi li:not(:nth-last-of-type(1)) {
	padding-right: 77px;
	background: url(../img/nav_star_icon.jpg) right 0 no-repeat;
}

/* 共通
---------------------------------------------------------- */
[class$="_box"] {
	width: 1160px;
	margin: 0 auto;
}

@media all and (max-width: 1200px) {
	[class$="_box"] {
		width: calc( 1160 / 1200 * 100% );
		margin: 0 auto;
	}
}

	[class*="_h3_content"] {
		margin-top: calc( 30 / 1200 * 100% );
		padding: calc( 40 / 1200 * 100% ) 0 0;
		border-radius: 5px;
	}

	[class*="_h3_content"] p {
		font-size: 1.33rem;
	}

	[class*="_h3_content"] h3 {
		margin-right: calc( 30 / 1200 * 100% );
		background: url(../img/ttl_bg.png) 0 0 no-repeat;
		color: #fff;
		font-size: 1.6rem;
		background-size: 100% auto;
		font-weight: normal;
	}



.bg_white {
	background: #fff;
}

[class*="_h3_content"] p:not(:nth-of-type(1)) {
	margin-top: 30px;
}

/* =====================================================================================================================================================================
		.anniversary
===================================================================================================================================================================== */
.anniversary {
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
	background: url(../img/bg_main_img.jpg) 0 0 no-repeat;
	background-size: 100% auto;
}

.anniversary > header {
	overflow: hidden;
}

.logo {
	width: calc( 441 / 1920 * 100%);
	margin: 0 0  calc( 37 / 1920 * 100%)  calc( 30 / 1920 * 100%);
	padding-top: calc( 504 / 1920 * 100%);
	float: left;
}

.sub_navi {
	width: calc( 990 / 1920 * 100%);
	margin: calc( 710 / 1920 * 100%) 0 calc( 18 / 1920 * 100%) calc( 20 / 1920 * 100%);
	float: left;
	/* flex */
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
}

.sub_navi li {
	width: calc( 320 / 990 * 100%);
}

.sub_navi li:nth-of-type(2) {
	width: calc( 270 / 990 * 100%);
}

.sub_navi li:nth-of-type(3) {
	width: calc( 328 / 990 * 100%);
}

.lead_text {
	background: url(../img/img_lead_bg.png) 0 0 no-repeat;
	background-size: 100% auto;
}

.lead_text span {
	display: block;
	width: calc( 1272 / 1920 * 100%);
	margin: 0 auto;
	padding: calc( 38 / 1272 * 100%) 0 calc( 10 / 1272 * 100%) 0;
	font-size: 1.2rem;
	color: #fff;
}

/* 代表コメント
------------------------------------------------------------------------------------------ */
.comments {
	width: 1160px;
	margin: calc( 40 / 1920 * 100%) auto 0;
	overflow: hidden;
}

@media all and (max-width: 1200px) {
	.comments {
		width: calc( 1160 / 1200 * 100% );
		margin: calc( 40 / 1920 * 100%) auto 0;
		overflow: hidden;
	}
}

.comments dt {
	width: calc( 370 / 1200 * 100% );
	float: left;
}

.comments dd {
	border: 5px solid #b3ffd9;
	margin: 5px ;
	padding: calc( 50 / 1140 * 100%) 20px calc( 16 / 1140 * 100%);
}

/* GTPROJECT
------------------------------------------------------------------------------------------ */
.gtproject_box {
	margin-top: calc( 39 / 1920 * 100% );
	padding: calc( 42 / 1200 * 100% ) 0 calc( 20 / 1200 * 100% ) calc( 30 / 1200 * 100% );
	overflow: hidden;
	position: relative;
	border-radius: 10px;
	border-left: 10px solid #E4007F;
	border-right: 10px solid #00A7AC;
	box-sizing: border-box;
	background: #fff url(../img/bg_gtproject.jpg) no-repeat;

}

.gtproject_box h2 {
	width: calc( 375 / 1200 * 100% );
}

.about_gtproject {
	margin-top: calc( 21 / 1200 * 100% );
	width: calc( 570 / 1200 * 100% );
	position: relative;
	z-index: 1;
}

.about_gtproject dt {
	width: calc( 375 / 650 * 100% );
}

.about_gtproject p {
	margin-top: 16px;
}

.gtproject_img {
	width: calc( 630 / 1200 * 100%);
	position: absolute;
	bottom: -24px;
	right: 0;
}

/* =====================================================================================================================================================================
		special - スペシャル -
===================================================================================================================================================================== */
.special_box {
	margin-top: calc( 79 / 1920 * 100% );
}

.special_box h2 {
	width: calc( 806 / 1200 * 100% );
	margin: 0 auto;
}

@media(min-width:769px){
	.special_2_wrap{
	background: url(../img/img_special02_right.png) right 0 no-repeat;
	padding-bottom: 100px;
	position: absolute;
}
}
.content_text {
	margin: calc( 20 / 1200 * 100% ) 0 0  calc( 25 / 1200 * 100% );
	width: calc( 650 / 1200 * 100% );
	position: relative;
	z-index: 99;
}

.content_text figure {
	margin-top: calc( 15 / 650 * 100% );
	width: calc( 248 / 650 * 100% );
}

.special01_h3_content {
	position: relative;
	padding-bottom: calc( 30 / 1200 * 100% );
	background: #fff url(../img/bg_special01.jpg) right 0 no-repeat;
	background-size: contain;
}

.special01_h3_content h3 {
	position: relative;
}

.special_box_content {
	width: calc( 1170 / 1200 * 100%);
	margin: calc(20 / 1200 * 100%) 0 0;
	overflow: hidden;
}

.special01_h3_content figure {
	width: calc( 275 / 1200 * 100% );
	margin: 0 0 0 calc(20 / 690 * 100%);
	float: left;
	border-radius: 5px;
}

.special01_h3_content figure img {
	border-radius: 5px;
}

.special01_h3_content p {
	width: calc( 490 / 1200 * 100%);
	margin: 0 0 0 calc(20 / 690 * 100%);
	float: left;
}

.special01_5_h3_content{
	padding-bottom: 30px;
}

.special01_5_h3_content figure {
	width: calc( 275 / 1200 * 100% );
	margin: 0 0 0 calc(20 / 690 * 100%);
	float: left;
	border-radius: 5px;
}

.special01_5_h3_content figure.apply {
	float: none;
	width: calc( 200 / 1200 * 100% );
	margin: 24% 0 0 calc(200 / 690 * 100%);
}

.special01_5_h3_content figure img {
	border-radius: 5px;
}

.special01_5_h3_content p {
	width: calc( 850 / 1200 * 100%);
	margin: 0 0 0 calc(20 / 690 * 100%);
	float: left;
}

.special01_5_h3_content p.apply_mgL {
	margin-left: calc(200 / 690 * 100%);
}

@media (max-width:924px) and (min-width:769px){
	.special01_5_h3_content p.apply_mgL_2 {
	margin-left: calc(200 / 690 * 100%);
}
}

.special01_h3_content dl.special01_5 {
	width: calc( 1170 / 1240 * 100%);
	border: 1px solid #00a7ad;
	margin: 0 auto;
	margin-top: calc( 30 / 1200 * 100% );
}

.special01_h3_content dl.special01_5 dt {
	background: #00a7ad;
	color: #fff;
	padding:0;
}

.special01_h3_content dl.special01_5 dd {
	padding: 1rem 33% 1rem 2rem;
	background: #fff;
	font-size: 1.466rem;
	word-break: break-all;
}

.special01_h3_content dl.special01_5 .ttl_period {
	padding: 0 0 0.5rem;
	font-weight: bold;
	display: block;
	font-size: 1.666rem;
}

.special01_h3_content dl.special01_5 li {
	padding: 0.5rem 0 0;
}

.special02_h3_content {
	padding-bottom: calc( 30 / 1200 * 100% ); 
}

/* special02 */
.special02_h3_content .content_zone {
	background: #fff url(../img/bg_special02.png) 0 0 no-repeat;
	background-size: 100% auto;
	/* flex */
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	        justify-content: space-between;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
	position: relative;
}

.special02_right_img {
	width: calc( 515 / 1200 * 100%);
	margin: -10px 0 -47px 0;
}

/* 商品一覧
------------------------------------------------------------------------------------------ */
.item_list {
	margin: 0 auto 0;
	width: calc( 1150 / 1200 * 100% );
	clear: both;
}

@media(min-width:879px){
.item_list {
	padding-top: 530px;
	z-index: 9;
}
}
@media(max-width:878px) and (min-width:769px){
.item_list {
	padding-top: 560px;
	z-index: 9;
}
}

.item_list h4 {
	width: calc( 304 / 1150 * 100% );
}


.item_data {
	border: 5px solid #00a7ad;
	border-radius: 5px;
	border-top-left-radius: 0;
	width:100%;
	/* flex */
	display: -webkit-flex;
	display: flex;
	flex-wrap:wrap;
/*
	-webkit-justify-content: space-between;
	justify-content: space-between;
*/
}

@media(min-width:769px){
	.item_data {
	background: #fff;
		padding: 1.5%;
}
}

.item_data dl {
/*	width: calc( 255 / 1150 * 100% );*/
	width:25%;
	padding:2%;
	box-sizing:border-box;
}

.item_data dt img {
	border: 2px solid #ccc;
	width:100%;
}

.item_data dd {
	width: 100%;
}

.item_data dd p {
	padding: 10px 0;
	font-size: 1.1rem;
	border-bottom: 2px solid #ccc;
}

.item_data dd p span.tit{
	font-weight: 600;
	display: inline-block;
	text-align: left;
	padding-top: 0;
	padding-bottom: 8px;
}

.item_data dd p span.small_txt{
	font-weight: 600;
	text-align: left;
	padding-top: 0;
	font-size: 0.9rem;
}

.item_data dd p a{
	color: #00A7AD;
}

.item_data dd p a:hover{
	color: #E5007F;
}

.item_data span {
	display: block;
	text-align: right;
	padding-top: 15px;
}

.item_data span img {
	width: calc( 100 / 255 * 100% );
}

/* メモリアルなフォトコン開催！
------------------------------------------------------------------------------------------ */
.memorial {
	margin-top: calc( 30 / 1200 * 100% );
	padding-bottom: calc( 30 / 1200 * 100% );

	border-radius: 5px;
}

.memorial h2 {
	width: 100%;
	padding-top: 0;
	margin: 0 auto;
}

.memorial_h3_content {
	margin-top: 0;
	padding-top: 0;
}

.memorial_h3_content .content_zone {
	background: url(../img/bg_special03.png) 0 0 no-repeat;
	background-size: 100% auto;

}

.content_area {
	width: calc( 1150 / 1200 * 100% );
	padding: calc( 20 / 1200 * 100% ) calc( 25 / 1200 * 100% ) 0 calc( 25 / 1200 * 100% );
	margin: 0 auto;
}

.text_space {
	width: calc( 714 / 1130 * 100% );
	padding: 1rem;
	font-size: 1.33rem;
	background: url(../img/bg_special_text.png) 0 0 repeat-y;
	background-size: 100% auto;
	opacity: 0.8;
	border-radius: 5px;
}

[class^="photo_content_space0"] {
	border: 1px solid #00a7ad;
	margin-top: calc( 30 / 1200 * 100% );
}

[class^="photo_content_space0"] dt {
	background: #00a7ad;
	color: #fff;
	padding:0;
}

[class^="photo_content_space0"] dd {
	padding: 1rem 33% 1rem 2rem;
	background: #fff;
	font-size: 1.466rem;
	word-break: break-all;
}

[class^="photo_content_space0"] .ttl_period {
	padding: 0 0 0.5rem;
	font-weight: bold;
	display: block;
	font-size: 1.666rem;
}

[class^="photo_content_space0"] li {
	padding: 0.5rem 0 0;
}

.vote {
	width: calc( 300 / 1090 * 100%);
	margin: 1.5rem 0 0;
}

/* 背景画像 */
[class^="photo_content_space0"] .special01_bg {
	background: url(../img/bg_first_phase.png) right 0 no-repeat;
	/*background-size: contain;*/
}

[class^="photo_content_space0"] .special02_bg {
	background: url(../img/bg_second_phase.png) right 0 no-repeat;
	/*background-size: contain;*/
}

[class^="photo_content_space0"] .special03_bg {
	background: url(../img/bg_third_phase.png) right 0 no-repeat;
	/*background-size: contain;*/
}

[class^="photo_content_space0"] .special04_bg {
	background: url(../img/bg_present.png) right 0 no-repeat;
	/*background-size: contain;*/
}

/* 入賞者プレゼント
------------------------------------------------------------------------------------------ */
.award li {
	width: 100%;
	/* flex */
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.award_no {
	width: 170px;
	margin-right: calc( 20 / 670 * 100%);
}

.award_text {
	width: calc( 480 / 670 * 100%);
}

.award li:not(:nth-of-type(1)) {
	margin-top: calc( 15 / 1150 * 100%);
}

.last_lead {
	margin-top: calc( 24 / 1150 * 100%);
	font-size: 1.2rem;
}

.attention {
	margin:calc( 20 / 1200 * 100%) calc( 50 / 1200 * 100%) 0 calc( 25 / 1200 * 100%);
	font-size: 1.2rem;
}

.attention span{
	margin-left: -1em;
}

/* フォトコンテスト結果発表
------------------------------------------------------------------------------------------ */
.result_list {
	margin: 0 auto 0;
	width: calc( 1150 / 1200 * 100% );
	clear: both;
}

@media(min-width:879px){
.result_list {
	padding-top: 30px;
	z-index: 9;
}
}
@media(max-width:878px) and (min-width:769px){
.result_list {
	padding-top: 60px;
	z-index: 9;
}
}

.result_list h4 {
	width: calc( 304 / 1150 * 100% );
}


.result_data {
	border: 5px solid #00a7ad;
	border-radius: 5px;
	border-top-left-radius: 0;
	width:100%;
	/* flex */
	display: -webkit-flex;
	display: flex;
	flex-wrap:wrap;
/*
	-webkit-justify-content: space-between;
	justify-content: space-between;
*/
}

@media(min-width:769px){
	.result_data {
	background: #fff;
		padding: 1.5%;
}
}

.result_data dl {
/*	width: calc( 255 / 1150 * 100% );*/
	width:25%;
	padding:2%;
	box-sizing:border-box;
}
.result_data div.ttl {
	width: 100%;
	padding: 0 2%;
	font-size: 1.1rem;
}

.result_data dt img {
	border: 2px solid #ccc;
	width:100%;
}

.result_data dd {
	width: 100%;
}

.result_data dd p {
	padding: 10px 0;
	font-size: 0.9rem;
	border-bottom: 2px solid #ccc;
}

.result_data dd p span.tit{
	font-weight: 600;
	display: inline-block;
	text-align: left;
	padding-top: 0;
	padding-bottom: 8px;
}

.result_data dd p span.small_txt{
	font-weight: 600;
	text-align: left;
	padding-top: 0;
	font-size: 0.9rem;
}

.result_data dd p a{
	color: #00A7AD;
}

.result_data dd p a:hover{
	color: #E5007F;
}

.result_data span {
	display: block;
	text-align: right;
	padding-top: 15px;
}

.result_data span img {
	width: calc( 100 / 255 * 100% );
}


/* 協賛企業
------------------------------------------------------------------------------------------ */
.sponsors_box {
	margin-top: calc( 119 / 1920 * 100% );
	/* flex */
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.sponsors_box li {
	width: calc( 285 / 1200 * 100% );
	margin: calc( 20 / 1200 * 100% ) calc( 20 / 1200 * 100% ) 0 0;
	margin: 1.26rem calc( 20 / 1200 * 100% ) 0 0;
	border-radius: 4px;
	overflow: hidden;
}

.sponsors_box li a {
	display: block;
	border-radius: 7px;
	background: #fff;
}

.sponsors_box li:nth-of-type(4n) {
	margin: calc( 20 / 1200 * 100% ) 0 0;
	margin: 1.26rem 0 0;
}

.history_box {
	margin-top: calc( 30 / 1200 * 100% );
	padding: calc( 30 / 1200 * 100% ) calc( 30 / 1200 * 100% ) calc( 100 / 1200 * 100% );
	background: url(../img/bg_history.png) right 0 no-repeat;
	background-size: cover;
}

.history_box dt {
	font-weight: bold;
	margin: calc( 45 / 1200 * 100% ) 0 0;
}

.history_box dt:nth-of-type(1) {
	margin-top: 0;
}

.history_box dd {
	width: 100%;
	margin: calc( 17 / 1200 * 100% ) 0 0;
	word-break: break-all;
	/* flex */
	display: -webkit-flex;
	display: flex;
}

[class^="company_data"] {
	padding-right: 50px;
	margin-right: 5px;
	background: url(../img/ico_piapro.png) right 6px no-repeat;
	word-break: break-all;

}

footer figure {
	width: calc( 1373 / 1920 * 100% );
}

.footer_inner {
	background: #383c3f;
	text-align: center;
	padding: calc( 70 / 1200 * 100% ) 0 calc( 30 / 1200 * 100% );
	font-size: 0.8rem;
	color: #909191;
}

.footer_inner p:nth-of-type(1) {
	color: #fff;
}

.company_data_fotter {
	background: url(../img/ico_piapro_fotter.png) right 4px no-repeat
}

.footer_inner .footer_lead:nth-of-type(2) {
	padding-top: calc( 30 / 1200 * 100% );
}

#go_top {
		position: fixed;
		right: 1rem;
		bottom: 1rem;
    bottom: 20px;
		width: calc( 110 / 1920 * 100% );
	z-index: 999;
}

/* =====================================================================================================================================================================
　SPデザイン用CSS
===================================================================================================================================================================== */
@media all and (max-width: 768px) {

/* 共通
-------------------------------------------------------------------------------------------------------------------- */
	[class$="_box"] {
			width: 100%;
			margin: 0 auto;
	}

	.pc_img {
		display: none;
	}

	.sp_img {
		display: block;
	}

	.bg_white {
		background: none;
	}

	#go_top {
		width: calc( 110 / 768 * 100%);
	}

/* レイアウト
-------------------------------------------------------------------------------------------------------------------- */
	html {
		font-size: 100%;
	}

	main {
		/*font-size:1.875rem;*/
		background: url(../img/sp_bg.jpg) 0 0 no-repeat;
		margin-top: calc( 63 / 768 * 100% + 1rem);
		padding-bottom: calc( 311 / 768 * 100%);
	}

	nav {
		padding: 0.5rem 0;
	/*	position: relative;*/

	}
	
	#TriggerBox {
		width: calc( 65 / 768 * 100%);
		position: relative;
		left: calc( 680 / 768 * 100%);
	}

	#CatNavi {
		display: none;
		position: absolute;
	}

/* アイキャッチ
-------------------------------------------------------------------------------------------------------------------- */
	.anniversary {
		background: url(../img/sp_bg_main_img.png) 0 0 no-repeat;
		background-size: contain;
		padding-top: calc( 374 / 768 * 100%);
	}

	.anniversary header {
		/* flex */
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-justify-content: space-around;
		        justify-content: space-around;
		padding-bottom: calc( 20 / 768 * 100%);
	}

	.logo {
		width: calc( 320 / 768 * 100%);
		padding-top: 0;
	}

	.anniversary .sub_navi {
		width: 98%;
		margin: calc( 24 / 768 * 100%) 0 0;
		/* flex */
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		        justify-content: space-between;
	}

	.lead_text {
		background: none;
	}

/* 代表コメント
-------------------------------------------------------------------------------------------------------------------- */
	.comments {
		width: calc( 728 / 768 * 100%);
		margin-top: calc( 60 / 768 * 100%);
		overflow: visible;
		border: 5px solid #fff;
	}

	.comments dt {
		width: calc( 540 / 728 * 100%);
		margin-left: calc( 20 / 728 * -100%);
		position: relative;
		top: -5px;
		left: -10px;
	}

	.comments dd {
		padding: calc( 150 / 1140 * 100%) 20px calc( 16 / 1140 * 100%);
		margin: 0;
		background: #fff;
	}

/* GTPROJECT
-------------------------------------------------------------------------------------------------------------------- */
	.gtproject_box {
		width: calc( 728 / 768 * 100%);
    margin: calc( 58 / 768 * 100% ) auto 0;
		padding: calc( 56 / 728 * 100% ) calc( 49 / 728 * 100% ) calc( 56 / 728 * 100% );
		background: #fff url(../img/sp_bg_gtproject.png) no-repeat;
		background-size: cover;
	}

	.gtproject_box h2 {
		width: 100%;
	}

	.about_gtproject {
		width: 100%;
	}

	.about_gtproject dt {
		width: 100%;
	}

/* SPECIAL
-------------------------------------------------------------------------------------------------------------------- */
	.special_box {
    margin-top: calc( 62 / 768 * 100% );
	}

	.special_box h2 {
		width: calc( 728 / 768 * 100%);
	}

	[class*="_h3_content"] h3 {
		background:none;
	}

	.special_box_content {
		width: calc( 728 / 768 * 100%);
		margin: 0 auto;
		padding-bottom: calc( 123 / 728 * 100%);
		background: #fff url(../img/sp_bg_special01.png) right 0 no-repeat;
		background-size: cover;
	}

/* SPECIAL01～ 共通
-------------------------------------------------------------------------------------------------------------------- */

	/* SPECIAL 見出し */
	[class*="_h3_content"] h3 {
		margin-right: 0px;
	}

	/* SPECIAL コンテンツ横幅と余白 */
	.special_box_content, .content_area, .content_zone {
		width: calc( 728 / 768 * 100%);
		padding-bottom: calc( 62 / 728 * 100%);
		margin: 0 auto;
	}

	[class*="_h3_content"] p {
		line-height: 1.8;
		font-size: 1rem;
	}

	[class^="photo_content_space0"] dd {
		word-break: break-all;
		padding: calc( 27 / 698 * 100%) calc( 25 / 698 * 100%) calc( 31 / 698 * 100%);
		font-size: 1rem;
	}

	[class^="photo_content_space0"] dd ul {
		margin-top: calc( 40 / 698 * 100%);
	}

/* SPECIAL01
-------------------------------------------------------------------------------------------------------------------- */
	.special01_h3_content figure {
    width: calc( 475 / 728 * 100%);
		margin: calc( 40 / 728 * 100%) 0 0 calc( 47 / 728 * 100% );
		float: none;
	}

	.special01_h3_content p {
    width: calc( 660 / 728 * 100%);
		margin: calc( 40 / 728 * 100%) auto 0;
		float: none;
		font-size: 1rem;
	}
	
/* SPECIAL1.5
-------------------------------------------------------------------------------------------------------------------- */
	.special01_5_h3_content figure {
    width: calc( 475 / 728 * 100%);
		margin: 0 auto;
		margin-top: calc( 40 / 728 * 100%);
		float: none;
	}

	.special01_5_h3_content p {
    width: calc( 660 / 728 * 100%);
		margin: calc( 20 / 728 * 100%) auto 0;
		float: none;
		font-size: 1rem;
	}
	
	.special01_5_h3_content div.special_box_content{
		background: #fff;
	}
	
	.special01_5_h3_content figure.apply{
		width: 90%;
		margin: 0 auto;
		margin-top: 5%;
		margin-bottom: 5%;
	}
	
	.special01_5_h3_content p.apply_mgL{
		margin: calc( 20 / 728 * 100%) auto 0;
	}


/* SPECIAL02
-------------------------------------------------------------------------------------------------------------------- */
	.special02_h3_content {
		margin-top: calc( 60 / 768 * 100%);
		padding-bottom: 0;
	}

	.special02_h3_content .content_zone {
		padding-bottom: calc( 60 / 726 * 100%);
    background: #fff url(../img/sp_bg_special02.png) 0 0 no-repeat;
		background-size: contain;
	}

	.content_text {
		width: calc( 660 / 728 * 100%);
		margin: calc( 20 / 1200 * 100%) auto 0;
	}

	.item_list {
    width: calc( 688 / 728 * 100%);
	}

	.item_list h4 {
    width: calc( 542 / 728 * 100%);
		margin: calc( 60 / 728 * 100%) 0 0 -1px;
	}

	.item_data {
		margin-top: -1px;
		padding: calc( 30 / 1150 * 100% );
		/* flex */
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-justify-content: space-around;
		        justify-content: space-around;
	}

	.item_data dl {
		width: calc( 300 / 688 * 100% );
		margin-top: calc( 40 / 688 * 100% );
		margin-bottom: calc( 40 / 688 * 100% );
		padding: 0;
	}

	.item_data dd p {
		font-size: 0.8rem;
		text-align: center;
	}
	
	.item_data dd p span.tit{
		text-align: center;
	}
	
	.item_data dd p span.small_txt{
		font-size: 0.7rem;
		text-align: center;
	}

/* SPECIAL03
-------------------------------------------------------------------------------------------------------------------- */
	.content_wrap {
		width: 100%;
    background: url(../img/sp_bg_special03.png) 0 0 repeat-y;
		background-size: contain;
	}

	.memorial_h3_content .content_area {
		padding: calc( 40 / 698 * 100%) calc( 25 / 1200 * 100% ) 0 ;
	}

	.memorial_h3_content .content_zone {
		position: relative;
		width: 100%;
		padding-bottom: calc( 37 / 768 * 100%);
		background: url(../img/sp_bg_special00.png) 0 0 no-repeat;
		background-size: 160% auto;
		background-position: 50% 0;
	}

	.special_bg00 {
		position: absolute;
	}

	.text_space {
		width: 100%;
		line-height: 1.8;
	}

	.photo_content_space01 {
		margin-top: calc( 50 / 698 * 100%);
	}

	.photo_content_space02, .photo_content_space03, .photo_content_space04 {
		margin-top: calc( 40 / 698 * 100%);
	}

	[class^="photo_content_space0"] .ttl_period {
		font-size: 1.133rem;
	}

	.vote {
		width: 100%;
	}

/* フォトコンテスト結果発表
-------------------------------------------------------------------------------------------------------------------- */
	.result_list {
    width: calc( 688 / 728 * 100%);
	}

	.result_list h4 {
    width: calc( 542 / 728 * 100%);
		margin: calc( 60 / 728 * 100%) 0 0 -1px;
	}

	.result_data {
		margin-top: -1px;
		padding: calc( 30 / 1150 * 100% );
		/* flex */
		-webkit-flex-wrap: wrap;
		        flex-wrap: wrap;
		-webkit-justify-content: space-around;
		        justify-content: space-around;
	}

	.result_data dl {
		width: calc( 300 / 688 * 100% );
		margin-top: calc( 40 / 688 * 100% );
		margin-bottom: calc( 40 / 688 * 100% );
		padding: 0;
	}

	.result_data dd p {
		font-size: 0.8rem;
		text-align: center;
	}
	
	.result_data dd p span.tit{
		text-align: center;
	}
	
	.result_data dd p span.small_txt{
		font-size: 0.7rem;
		text-align: center;
	}

/* 入賞者プレゼント
-------------------------------------------------------------------------------------------------------------------- */
	.special04_bg li:not(:nth-of-type(1)) {
		margin-top: calc( 70 /686 * 100%);
	}

	.award li {
		display: block;
	}

	.special04_bg li .award_no {
		display: block;
		width: calc( 210 /686 * 100%);
	}

	.special04_bg li .award_no.pc_img {
		display: none;
	}

	.special04_bg li:nth-of-type(3) .award_no {
		width: calc( 320 /686 * 100%);
	}

	.special04_bg li .award_text {
		display: block;
		margin-top: calc(	20 /686 * 100%);
	}

	.attention {
		margin: calc( 20 / 686 * 100%) 0 0 calc( 35 / 686 * 100%);
		font-size: 1.2rem;
	}


/* SPECIAL03 背景画像
-------------------------------------------------------------------------------------------------------------------- */
	[class^="photo_content_space0"] .special01_bg {
    background: url(../img/sp_bg_first_phase.jpg) 0 0 no-repeat;
    background-size: 140% auto;
	background-position: center;
	}

	[class^="photo_content_space0"] .special02_bg {
    background: url(../img/sp_bg_second_phase.png) 0 0 no-repeat;
    background-size: 110% auto;
    background-position-x: center;
	}

	[class^="photo_content_space0"] .special03_bg {
    background: url(../img/sp_bg_third_phase.png) 0 0 no-repeat;
    background-size: contain;
	background-size: 100% auto;
    background-position-x: center;
	}

	[class^="photo_content_space0"] .special04_bg {
    background: url(../img/sp_bg_present.jpg) 0 bottom no-repeat;
    background-size: contain;
	}

/* SPONSOR
-------------------------------------------------------------------------------------------------------------------- */
	.sponsors_box {
		width: calc( 728 / 768 * 100%);
		margin-top: calc(	100 /768 * 100%);
	}

	.history_box {
		width: calc( 728 / 768 * 100%);
		margin-top: calc(	40 /768 * 100%);
		background: url(../img/sp_bg_history.png) 50% 0 no-repeat;
		background-size: cover;
	}

	.history_box dt {
		font-size: 0.8rem;
	}

	.history_box dd {
		font-size: 0.8rem;
		display: block;
	}

	.history_box dd span:nth-of-type(1) {
		background: none;
		display: block;
		padding: 0;
		width: 100%;
	}

	.history_box dd span:nth-of-type(2) {
		/*font-size: 0.8rem;*/
		background: url(../img/sp_ico_piapro.png) left 6px no-repeat;
    padding-left: 2.5rem;
    background-size: 38px auto;
	}

	footer {
		margin-top: calc( 120 / 1920 * -100%);
		padding-top: calc( 40 / 768 * 100%);
		background: url(../img/sp_footer_bg.png) 0 0 no-repeat;
		background-size: cover;
	}

	.footer_inner {
		font-size: 0.8rem;
		padding: calc( 43 / 768 * 100% ) calc( 25 / 768 * 100% ) calc( 38 / 768 * 100% );
	}

	footer figure {
		width: calc( 376 / 768 * 100% );
	}

	.company_data_fotter {
		padding-right: 2.7rem;
		background: url(../img/sp_ico_piapro_fotter.png) right 2px no-repeat;
		background-size: 10% auto;
	}


}


