@charset "utf-8";
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

img * {
	max-width:100%;
}

:root {
	--blue: #132e3d;
	--red: #d90b1f;
	--orange: #d4523f;
	--paddingPC:0 15vw;
	--paddingSP:0 8vw;
}



@media only screen and (max-width: 599px) {
	.sp_only {
		display: block;
	}
	.sp_tablet_only {
		display: block;
	}
	.tablet_only {
		display: none;
	}
	.pc_only {
		display: none !important;
	}
	.pc_tablet_only {
		display:none !important;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.sp_only {
		display: none !important;
	}
	.sp_tablet_only {
		display: block !important;
	}
	.tablet_only {
		display: block;
	}
	.pc_only {
		display: none;
	}
	.pc_tablet_only {
		display:block;
	}
}
@media only screen and (min-width: 1025px) {
	.sp_only {
		display: none !important;
	}
	.sp_tablet_only {
		display: none !important;
	}
	.tablet_only {
		display: none;
	}
	.pc_only {
		display: block;
	}
	.pc_tablet_only {
		display:block;
	}
}



/* ------------------------------------------ 
	
 - MV

------------------------------------------ */
.top_mv {
	width:100%;
	position: relative;
	background: url(/fair/campaign/images/bg_matome.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	top: 0;
}

.mv {
	animation-name: mvAnime;
	animation-duration:2s;
	animation-fill-mode:forwards;
	opacity:0;
	position:relative;
}

@keyframes mvAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.mv{
	height: 60vh;
}
.mv h1 {
	z-index: 3;
	position: absolute;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	top: 40%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.mv h1 img {
	max-width: 100%;
	height: 320px;
}
.mv p {
	position: absolute;
	bottom: 5%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 3;
}
.mv p img {
	width: 90%;
	max-width: 100%;
}
.mv_img {
	background: url(/fair/campaign/images/main-pc.jpg);
	background-position: 45% top;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	max-width: 1920px;
	height: 86vmin;
	margin:0 auto;
	position: relative;
}

@media only screen and (max-width: 599px) {
	.top_mv {
		width:100%;
		position: relative;
		background: url(/fair/campaign/images/bg_matome.webp);
		background-position: 20%;
		background-repeat: no-repeat;
		background-size: cover;
		top: 0;
	}
	.mv{
		height: 70vh;
	}
	.mv h1 {
		z-index: 3;
        position: absolute;
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        top: 40%;
        left: 50%;
        transform: translate(-50%, -50%);
	}
	.mv h1 img {
        max-width: 100%;
        height: 180px;
    }
	.mv p {
		width: 90%;
		position:absolute;
		bottom:30%;
		right: 0;
		z-index:3;
	}
	.mv p img {
		width: 90%;
		max-width: 100%;
	}
	.mv_img {
	    background: url(/fair/campaign/images/main-pc.jpg);
	    background-position: 63% bottom;
	    background-repeat: no-repeat;
	    background-size: cover;
	    width: 100%;
	    max-width: 1024px;
	    height: 56vmin;
	    margin:0 auto;
	}
}








/* ------------------------------------------ 
	
 - lead_area

------------------------------------------ */
.lead_area {
	padding: 0;
}
.lead_area .content01 {
	width: 100%;
	padding: 5% 0 2%;
	background: #006a83;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.lead_area .content01 p{
	padding: 1%;
	color: #fff;
}
.lead_area .content02 {
	position: relative;
	width: 100%;
	padding: 5% 0 1%;
	background: #fff20d;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.lead_area .content02::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 40px solid transparent;
	border-left: 40px solid transparent;
	border-top: 60px solid #006a83;
	border-bottom: 0;
}
.lead_area img{
	width: 100%;
	max-width: 1100px;
	padding: 0 5%;
}
.p-detail {
	
}
.p-table {
	padding: var(--paddingPC);
	margin: 3rem auto;
}
@media only screen and (max-width: 599px) {
	.lead_area .content01 p {
		padding: 4%;
		font-size: 12px;
		color: #fff;
	}
	.lead_area .content02::before {
		border-right: 15px solid transparent;
		border-left: 15px solid transparent;
		border-top: 28px solid #006a83;
		border-bottom: 0;
	}
	.lead_area img{
		max-width: 90%;
	}
}


/* ------------------------------------------ 
	
 - require

------------------------------------------ */
.require{
	width: 100%;
	background: #fff20d;
}
.require h3{
	max-width: 1420px;
    margin: 0 auto;
    padding: 1% 5% 0;
    font-size: 16px;
    font-weight: normal;
    color: #e71a0f;
    text-align: left;
}
.require > ul{
	max-width: 1420px;
    margin: 0 auto;
    padding: 0 5%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
}
.require > ul li{
	height: 1.8em;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 14px;
}
.require > ul li .red{
	color: #e71a0f;
}
.require > ul li .triangle{
	display: inline-block;
    transform: rotate(-90deg);
}
.note{
	width: 100%;
}
.note ul{
	max-width: 1420px;
    margin: 0 auto;
    padding: 2% 5%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.note ul li:first-of-type{
	width: 30%;
	padding: 1%;
	margin-right: 20px;
    font-size: 20px;
    border: 1px solid #222;
}
.note ul li:last-of-type{
	width: 70%;
	text-align: left;
}
@media only screen and (max-width: 599px) {
	.require > ul{
		flex-wrap: initial;
		flex-direction: column;
		justify-content: flex-start;
		align-items: center;
	}
	.require > ul li{
		width: 100%;
		max-width: 260px;
	}
	.require h3{
		max-width: 260px;
        margin: 0 auto;
        padding: 20px 0 5px;
	}
	.note ul{
		flex-direction: column;
	}
	.note ul li{
		width: 90%;
	}
	.note ul li:first-of-type {
		width: 80%;
		padding: 1%;
		margin-top: 1em;
		margin-bottom: 1em;
		margin-right: initial;
		font-size: 20px;
		border: 1px solid #222;
	}
	.note ul li:last-of-type {
		width: 90%;
        text-align: left;
        font-size: 12px;
        line-height: 1.6;
        padding-bottom: 30px;
	}
	.slash{
		display: none;
	}
}

/* ------------------------------------------ 
	
 - example_area

------------------------------------------ */
@media only screen and (max-width: 599px) {
	.example_col_wrap {
		margin-bottom:3rem;
		padding: 0 13vw;
	}
	.example_col_wrap .example_title {
		text-align:center;
		margin-bottom:0.5rem;
		font-size:1.2rem;
		font-weight:bold;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.example_col_wrap {
		margin-bottom: 3rem;
		padding:var(--paddingSP);
	}
	.example_col_wrap .example_title {
		text-align:left;
		font-size: 1.3rem;
		font-weight:bold;
		margin-bottom: 1rem;
	}
	.example_col {
		display:flex;
		justify-content:space-between;
		flex-flow:row nowrap;
		align-items:center;
	}
}
@media only screen and (min-width: 1025px) {
	.example_area {
		
	}
	.example_col_wrap {
		margin-bottom: 6rem;
		padding: var(--paddingPC);
	}
	.example_col_wrap .example_title {
		text-align:left;
		font-size:1.5rem;
		font-weight:bold;
		margin-bottom: 1.5rem;
	}
	.example_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row nowrap;
		align-items:center;
	}
	.example_col li {
		width: 31.3%;
	}
}




/*
 SP example_col_wrap - example
--------------------------------------------------------------- */
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    content: '';
}
.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    content: '';
}
.example_col_wrap .arrow-outside-wrap {
	position:relative;
}
.example_col_wrap .arrow-outside-wrap .swiper-button-prev {
	left: -25px;
	width:4%;
	transform: rotate(180deg);
	background: url(/fair/campaign/images/arrow.svg);
	background-repeat: no-repeat;
	background-position: center;
	z-index: 999;
}
.example_col_wrap .arrow-outside-wrap .swiper-button-next {
	right:-25px;
	width:4%;
	background: url(/fair/campaign/images/arrow.svg);
	background-repeat: no-repeat;
	background-position: center;
}







/* ------------------------------------------ 
	
 - note_area

------------------------------------------ */
@media only screen and (max-width: 599px) {
	.note_area {
		padding: 0 8vw;
		margin-bottom:3rem;
	}
	.note_area ul {
		display:flex;
		flex-flow:column wrap;
		text-align:justify;
		font-size:0.8rem;
		letter-spacing: .1px;
		text-indent:-1rem;
		padding-left:1rem;
	}
	.note_area ul li {
		margin-bottom: 0.5rem;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.note_area {
		padding: var(--paddingSP);
		margin-bottom:3rem;
	}
	.note_area ul {
		display:flex;
		flex-flow:column wrap;
		text-align:justify;
		font-size:0.8rem;
		text-indent:-1rem;
		padding-left:1rem;
	}
	.note_area ul li {
		margin-bottom:0.36rem;
	}
}
@media only screen and (min-width: 1025px) {
	.note_area {
		margin-bottom: 8rem;
		padding: var(--paddingPC);
	}
	.note_area ul {
		display:flex;
		flex-flow:column wrap;
		text-align:justify;
		font-size:0.8rem;
		text-indent:-1rem;
		padding-left:1rem;
	}
	.note_area ul li {
		margin-bottom:0.36rem;
	}
}






/* ------------------------------------------ 
	
 - showroom_area

------------------------------------------ */
@media only screen and (max-width: 599px) {
	.showroom_area {
		padding: var(--paddingSP);
		padding-top: 3rem;
		background: #eee;
	}
	.showroom_title {
		text-align:center;
		margin-bottom:0.5rem;
		font-size:1.2rem;
		font-weight:bold;
	}
	.showroom_list_col {
		display:flex;
		flex-flow:column wrap;
		text-align:justify;
		padding: 0 0.5rem;
	}
	.showroom_list_col li {
		width: 100%;
	    margin-top: 20px;
	    padding-bottom: 8px;
	    border-bottom: solid 1px #06060A;
	}
	.showroom_list_col li a {
		position: relative;
	    display: block;
	    font-size: 14px;
	    transition: all 0.3s ease-in-out;
	}
	.showroom_list_col li a::after {
		content: "";
	    position: absolute;
	    right: 0;
	    top: 50%;
	    transform: translateY(-50%);
	    width: 12px;
	    height: 12px;
	    background: url(/fair/campaign/images/arrow.svg);
	    background-repeat: no-repeat;
	    background-position: center;
	}
}
	
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.showroom_area {
		padding:var(--paddingSP);
		padding-top: 3rem;
		padding-bottom: 1rem;
		background: #eee;
	}
	.showroom_title {
		text-align:left;
		font-size: 1.3rem;
		font-weight:bold;
	}
	.showroom_list_col {
		display:flex;
		flex-flow:row wrap;
		justify-content:space-between;
		text-align:justify;
	}
	.showroom_list_col li {
		width: 48.5%;
		margin-top: 25px;
		padding-bottom: 8px;
		border-bottom: solid 1px #06060A;
	}
	.showroom_list_col li a {
		position: relative;
	    display: block;
	    font-size: 15px;
	    transition: all 0.3s ease-in-out;
	}

	.showroom_list_col li a::after {
		content: "";
	    position: absolute;
	    right: 0;
	    top: 50%;
	    transform: translateY(-50%);
	    width: 12px;
	    height: 12px;
	    background: url(/fair/campaign/images/arrow.svg);
	    background-repeat: no-repeat;
	    background-position: center;
	}
}
@media only screen and (min-width: 1025px) {
	.showroom_area {
		padding: var(--paddingPC);
		padding-top: 5rem;
		padding-bottom: 2rem;
		background: #eee;
	}
	.showroom_title {
		text-align:left;
		font-size:1.5rem;
		font-weight:bold;
	}
	.showroom_list_col {
		display:flex;
		flex-flow:row wrap;
		justify-content:space-between;
		text-align:justify;
	}
	.showroom_list_col li {
		width: 49%;
		margin-top: 33px;
		padding-bottom: 8px;
		border-bottom: solid 1px #06060A;
	}
	.showroom_list_col li a {
		position: relative;
	    display: block;
	    font-size: 15px;
	    transition: all 0.3s ease-in-out;
	}

	.showroom_list_col li a::after {
		content: "";
	    position: absolute;
	    right: 0;
	    top: 50%;
	    transform: translateY(-50%);
	    width: 12px;
	    height: 12px;
	    background: url(/fair/campaign/images/arrow.svg);
	    background-repeat: no-repeat;
	    background-position: center;
	}
}





/* ------------------------------------------ 
	
 - interior_soudan_area

------------------------------------------ */
@media only screen and (max-width: 599px) {
	.interior_soudan_area {
		margin-bottom: 2rem;
		padding-top: 3rem;
		padding-bottom: 3rem;
		background: #eee;
	}
	.btn_interior_soudan {
		width: 85vw;
		margin:0 auto;
		background: #fff;
	}
	.btn_interior_soudan a {
		position: relative;
		display: block;
		padding: 0.8rem 0;
		font-size: 12px;
        text-indent: -5px;
		letter-spacing: 1px;
		transition: all 0.3s ease-in-out;
	}
	.btn_interior_soudan a::after {
		content: "";
		position: absolute;
		right: 4%;
		top: 50%;
		transform: translateY(-50%);
		width: 12px;
		height: 12px;
		background: url(/fair/campaign/images/arrow.svg);
		background-repeat: no-repeat;
		background-position: center;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.interior_soudan_area {
		margin-bottom: 3rem;
		padding: var(--paddingPC);
		padding-top: 3rem;
		padding-bottom: 4rem;
		background: #eee;
	}
	.btn_interior_soudan {
		width: 70vw;
		margin:0 auto;
		background: #fff;
	}
	.btn_interior_soudan a {
		position: relative;
		display: block;
		padding:0.8rem;
		font-size: 15px;
		letter-spacing: 1px;
		transition: all 0.3s ease-in-out;
	}
	.btn_interior_soudan a::after {
		content: "";
		position: absolute;
		right: 3%;
		top: 50%;
		transform: translateY(-50%);
		width: 12px;
		height: 12px;
		background: url(/fair/campaign/images/arrow.svg);
		background-repeat: no-repeat;
		background-position: center;
	}
}
@media only screen and (min-width: 1025px) {
	.interior_soudan_area {
		margin-bottom: 5rem;
		padding: var(--paddingPC);
		padding-top: 3rem;
		padding-bottom: 5rem;
		background: #eee;
	}
	.btn_interior_soudan {
		width: 37vw;
		margin:0 auto;
		background: #fff;
	}
	.btn_interior_soudan a {
		position: relative;
		display: block;
		padding:1rem;
		font-size: 15px;
		letter-spacing: 1px;
		transition: all 0.3s ease-in-out;
	}
	.btn_interior_soudan a::after {
		content: "";
		position: absolute;
		right: 3%;
		top: 50%;
		transform: translateY(-50%);
		width: 12px;
		height: 12px;
		background: url(/fair/campaign/images/arrow.svg);
		background-repeat: no-repeat;
		background-position: center;
	}
}









/* ********** WRAP ********** */
main{
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#333;
}


@media only screen and (min-width: 1100px) {
    footer {
        width: 1100px;
        margin-left: auto;
        margin-right: auto;
    }
}


