﻿/* exception
*********************************************/

#wrap header {
	transition: .3s;
}

@media (min-width: 769px) {

	.logo__wrap {
		width: 20%;
		display: flex;
		align-items: center;
		margin-right: 16px;
	}

	.logo__wrap img {
		vertical-align: bottom;
	}

	.logo__wrap a {
		width: 60%;
	}

	.logo__wrap span.rody {
		display: block;
		margin: 0;
		position: unset;
		width: 23%;
		margin-left: 5%;
		transform: inherit;
	}

	.logo__wrap a img,
	.logo__wrap span img {
		width: 100%;
	}

}

@media (max-width: 769px) {

	.logo__wrap {
		width: 65%;
		display: flex;
		align-items: center;
	}

	.logo__wrap img {
		vertical-align: bottom;
	}

	.logo__wrap a img {
		width: 94%;
	}

	.logo__wrap span {
		display: inline;
		margin: 0;
	}

	.logo__wrap span img {
		width: 60%;
		margin-left: 0.5em;
	}

}

/* common
*********************************************/

main {
	background: #ffefb7;
}

main img {
	display: block;
	max-width: 100%;
}

section.header {
}

main .section01 .secWrap,
main .section02 .secWrap {
	border-radius: 0 0 50px 50px;
}


@media (min-width: 769px) {

	main .section01 {
		margin: 50px 0;
	}

	main .section02 {
		margin: 50px 0 0;
	}

	main .section01 h2,
	main .section02 h2 {
		max-width: 1000px;
		width: 100%;
		margin: 50px auto 0;
	}

	main .section01 .secWrap,
	main .section02 .secWrap {
		max-width: 1000px;
		width: 100%;
		margin: 0 auto;
	}

}

@media (max-width: 769px) {

	main .section01 {
		margin: 1.5em 0;
	}

	main .section02 {
		margin: 1.5em 0 0;
	}

	main .section01 h2,
	main .section02 h2 {
		margin: 1.5em 1.5em 0;
	}

	main .section01 .secWrap,
	main .section02 .secWrap {
		margin-left: 1.5em;
		margin-right: 1.5em;
	}

}

/* top
*********************************************/

.header h1 {
	background: #ec7aac;
}

.header p.read {
	background: linear-gradient(0deg,rgba(255, 239, 183, 1) 1.9%, rgba(243, 153, 79, 1) 1.9%, rgba(243, 153, 79, 1) 98%, rgba(236, 122, 172, 1) 98%);
}

.header ul.navi {
	display: flex;
	justify-content: space-between;
}

.header ul.navi li {
	width: 48.5%;
}


@media (min-width: 769px) {

	.header {
		margin-bottom: 70px;
	}

	.header h1 img,
	.header p.read img {
		max-width: 1200px;
		margin: 0 auto;
	}

	.header ul.navi {
		max-width: 1000px;
		margin: 50px auto 0;
	}

	.header ul.navi li:nth-child(1) {
		background: url(/campaign-fblp/ipcollabo/assets/img/nav01_o.png) no-repeat;
		background-size: contain;
	}

	.header ul.navi li:nth-child(2) {
		background: url(/campaign-fblp/ipcollabo/assets/img/nav02_o.png) no-repeat;
		background-size: contain;
	}

	.header ul.navi li a img {
		transition: .3s;
	}

	.header ul.navi li a:hover img {
		opacity: 0;
	}

}

@media (max-width: 769px) {

	.header p.read {
		overflow: hidden;
	}

	.header p.read img {
		width: 130%;
		max-width: 130%;
		margin-left: -15%;
	}

	.header ul.navi {
		margin: 1.5em;
	}

}

/* sec01
*********************************************/

.section01 .secWrap {
	background: #bfe9e6;
}

.section01 .secWrap .bg01 {
	background: url(/campaign-fblp/ipcollabo/assets/img/section_bg01.png) bottom no-repeat;
	background-size: contain;
	position: relative;
}

.section01 .secWrap p.over img {
	width: 130%;
	max-width: 130%;
	margin-left: -15%;
}

.section01 .secWrap dl {
	width: 85%;
	margin: 50px auto 0;
}

.section01 .secWrap dl dt {
	display: block;
	position: relative;
}

.section01 .secWrap dl dd div {
	letter-spacing: normal;
}

.section01 .secWrap dl dt span img {
	display: block;
	position: absolute;
	right: 5%;
	top: 50%;
	width: 2.5%;
	transform: translateY( -40% ) rotate(180deg);
	transition: .3s;
}

.section01 .secWrap dl dt.selected span img {
	transform: translateY( -40% );
}

.section01 .secWrap dl dd p {
	margin: 1.5em 0;
}

@media (min-width: 769px) {

	.section01 .secWrap {
		padding-bottom: 60px;
	}

	.section01 .secWrap .bg01 p.over {
		padding: 60px 0;
	}

	.section01 .secWrap p.btn01 {
		width: 85%;
		margin: 50px auto;
	}

	.section01 .secWrap dl {
		border-radius: 25px;
		overflow: hidden;
	}

	.section01 .secWrap dl dt {
		cursor: pointer;
	}

	.section01 .secWrap dl dt > img {
		transition: .3s;
	}

	.section01 .secWrap dl dt:hover > img {
		opacity: .5;
	}

	.section01 .secWrap dl dd div {
		margin: 30px;
	}

	.section01 .secWrap dl dd {
		background: #fff;
		overflow: hidden;
	}

}

@media (max-width: 769px) {

	main .section01 .secWrap {
		border-radius: 0 0 2em 2em;
	}

	.section01 .secWrap {
		padding-bottom: 1.5em;
	}

	.section01 .secWrap p {
		margin: 1.5em 0;
	}

	.section01 .secWrap .bg01 p.over {
		margin-top: 0;
		padding-top: 1.5em;
	}

	.section01 .secWrap p.btn01 {
		width: 90%;
		margin: 1.5em auto;
	}

	.section01 .secWrap dl {
		margin: 1.5em auto 0;
		border-radius: 2em;
		overflow: hidden;
		width: 90%;
	}

	.section01 .secWrap dl dd div {
		margin: 1.5em;
		font-size: 80%;
	}

	.section01 .secWrap dl dd {
		background: #fff;
		overflow: hidden;
	}

}

/* sec02
*********************************************/

.section02 .secWrap {
	background: #ff7bac;
}

.section02 .secWrap dl {
	position: relative;
}

.section02 .secWrap dl dd {
	position: absolute;
	width: 87.6%;
	bottom: 8%;
	left: 6.2%;
}

.section02 .secWrap .bg01 {
	background: url(/campaign-fblp/ipcollabo/assets/img/section_bg01.png) bottom no-repeat;
	background-size: contain;
	position: relative;
	z-index: 10;
}

.section02 .secWrap .bg02 {
	background: url(/campaign-fblp/ipcollabo/assets/img/sec02_bg01.png) top no-repeat;
	background-size: contain;
	border-radius: 0 0 50px 50px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.section02 .secWrap .bg03 {
	border-radius: 0 0 50px 50px;
	background: #ffbdd6;
	overflow: hidden;
}

.section02 .secWrap p.over img {
	width: 130%;
	max-width: 130%;
	margin-left: -15%;
}

@media (min-width: 769px) {

	.section02 .secWrap p.over {
		margin: 80px 0 0;
		z-index: 10;
	}

	.section02 .secWrap .bg02 {
		margin-top: -120px;
	}

	.section02 .secWrap .bg02 h3 {
		padding-top: 80px;
	}

	.section02 .secWrap .bg02 p {
		margin: 80px 0;
	}

	.section02 .sec02_attention {
		padding: 80px 0;
		margin: 0 auto;
		width: 1000px;
	}

}

@media (max-width: 769px) {

	main .section02 .secWrap {
		border-radius: 0 0 2em 2em;
	}

	.section02 .secWrap .bg02,
	.section02 .secWrap .bg03 {
		border-radius: 0 0 2em 2em;
	}

	.section02 .secWrap p.over {
		padding-top: 1.5em;
	}

	.section02 .secWrap .bg02 {
		margin-top: -5rem;
	}

	.section02 .secWrap .bg02 h3 {
		padding-top: 2.5em;
	}

	.section02 .secWrap .bg02 p {
		margin: 1.5em 0;
	}

	.section02 .sec02_attention {
		padding: 2em 0;
		margin: 0 1.5em;
	}

}

/* sec03
*********************************************/

footer {
	padding-bottom: 0;
	overflow: hidden;
}

.section03 .secWrap dl {
	position: relative;
}

.section03 .secWrap dl dd {
	position: absolute;
	top: 10%;
	left: 33.3%;
	width: 33.3%;
}

.section03 .secWrap h2 img,
.section03 .secWrap h3 img,
.section03 .secWrap h4 img,
.section03 .secWrap p img,
.section03 .secWrap dl img,
.section03 .secWrap dl dd video {
	display: block;
	max-width: 100%;
}

.section03 .secWrap ul li {
	margin: 0 20px;
	width: 10%;
}

.section03 .secWrap ul li img {
	width: 100%;
	display: block;
}

.section03 .secWrap ul li:after {
	content: "";
}

.section03 .secWrap p.copy img {
	width: 30%;
	margin: 0 auto;
}

@media (min-width: 769px) {

	.section03 .secWrap {
		max-width: 1000px;
		width: 100%;
		margin: 0 auto;
	}

	.section03 .secWrap h2 {
		margin: 80px 0;
	}

	.section03 .secWrap h3 {
		margin: 150px 0 50px;
	}

	.section03 .secWrap h4 {
		margin: 150px 0 80px;
	}

	.section03 .secWrap p {
		margin: 80px 0;
	}

	.section03 .secWrap h4 + p {
		margin: 50px 0 80px;
	}

	.section03 .secWrap dl {
		margin: 80px 0;
	}

	.section03 .secWrap p.copy {
		margin-top: 240px;
	}

}

@media (max-width: 769px) {

	.section03 .secWrap {
		margin: 1.5em;
	}

	.section03 .secWrap h2 {
		margin: 2.5em 0;
	}

	.section03 .secWrap h3 {
		margin: 3em 0 1.5em;
	}

	.section03 .secWrap h4 {
		margin: 3.5em 0 1.5em;
	}

	.section03 .secWrap p {
		margin: 2em 0;
	}

	.section03 .secWrap h4 + p {
		margin: 1.5em 0 2.5em;
	}

	.section03 .secWrap ul {
		display: flex;
		justify-content: center;
	}

	.section03 .secWrap ul li {
		margin: 0 1em;
		width: 12.5%;
	}

	.section03 .secWrap dl {
		margin: 2.5em 0 1.5em;
	}

	.section03 .secWrap p.copy {
		margin: 5rem 0 10rem;
	}


}

