@charset "UTF-8";
/* CSS Document */

 

p,h1,h2,h3,h4,h5,h6{
	margin-top: 0;
}

img{
	
	vertical-align: bottom;
}

a {
    text-decoration:none; 
}

ul {
	margin:0;
	padding: 0;
}

body{
	background-color: #fff;
}




h3 {
	position: relative;
	text-align: center;
	margin: 30px 0px 25px 0px;
	font-size: 10px;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
font-style: normal;
}

h4{
	position: relative;
	text-align: center;
	margin: 20px 0px 50px 0px;
	font-size: 8px;
	color: #ffffff;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
font-style: normal;
	
}

h5 {
	position: relative;
	text-align: center;
	color: #ffffff;
	margin: 70px 0px 20px 0px;
	font-size: 70px;
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-style: normal;
}

h5::after {
	 border-bottom: 1.5px dashed white;
  	content: "";
  	position: absolute;
  	bottom: 0px;
  	left: 50%;
  	transform: translateX(-50%);
  	width: 100vw;
	max-width: 700px;
}

.top-box {
    position: relative;
	width: 100vw;
	height: 100vh;
	margin-bottom: 150px;
}

.title{
	position: absolute;
	display: block;
	text-align: center;
	top:40%;
	left: 55%;
 	right: 0;
    margin: auto;
	width: 60vw;
	max-width: 550px;	
	
}

.title img{
	width: 100%;
}

.titleimage{
	position: absolute;
	display: block;
	text-align: center;
	top:32%;
	left: 0;
 	right: 0;
    margin: auto;
	width: 80vw;
	max-width: 1200px;	
	
}

.titleimage img{
	width: 100%;
}

.titleshita{
	position: absolute;
	display: block;
	text-align: center;
	bottom:10%;
	left: 0;
 	right: 0;
    margin: auto;
	width: 50vw;
	max-width: 500px;	
	
}

.titleshita img{
	width: 100%;
}


.mordalicon{
	position: fixed;
	display: block;
	text-align: center;
	top:0%;
 	right: 10%;
	width: 20vw;
	max-width: 120px;	
	z-index: 200;
	
}

.mordalicon img{
	width: 100%;
}


.bigbox{
	display: block;
	width: 100vw;
	height: 100%; 
	margin-bottom: 0px;
}


.itembox{
	display: flex;
	flex-wrap: wrap;
	width: 100vw;
	margin: 0 auto 80px;
	gap: 0px 0%;
}



.item{
	    width: 50%;

}

.itemread{
	    width: 50%;
		margin: 0px auto 80px;
}


.item img{
	width: 100%;
}



.mordalnaka{
	    width: 400px;
		padding: 30px;
		margin: 0 auto;
}


.mordalnaka img{
	width: 100%;
}



.foot{
	bottom: 0;
	width: 100vw;
	height: 550px;
	background-color: #ff801e;
	margin-top: 180px;
}

.footlogo{
	padding-top: 20px;
    margin: 0 auto;
	width: 350px;

}

.footlogo img{
	width: 100%;
}





.maintext{
	position: relative;
	display: block;
	text-align: center;
	font-size: 14px;
	margin-top: 80px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 30px;
	padding-left: 5%;
	padding-right: 5%;
	left: 0;
	right: 0;
	letter-spacing: 0.1em;
	line-height:250%;
 	color: #ffffff;
	text-decoration: none;
	font-family: 'Noto Sans JP', sans-serif;
	font-style: 500;
	}



.js-animation {
  opacity: 0;
  visibility: hidden;
  transform: translateY(40px);
  transition: all 1s;
  max-width: 1080px; /* 最大幅 */
}
.js-animation.is-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0px);
}


.js-animation img { 
	width: 100%;
}




.snsbox{
	text-align: center;
	margin-top: 50px;
	margin-bottom: 50px;
	margin-left : auto;
  	margin-right : auto;
}


.sns{
	font-size: 1.2em;
	letter-spacing: 0.1em;
	line-height:2.2em;
	padding-bottom: 0px;
	text-decoration: none;
 	color: #ffffff;
	font-family: jaf-bernina-sans, sans-serif;
	font-weight: 600;
	font-style: normal;
	}

.creditbox{
	padding-top: 5px;
	padding-bottom: 10px;
	padding-left: 5%;
	padding-right: 5%;
	margin-top: 30px;
	margin-bottom: 10px;
}

.creditbox a{
text-decoration: none;
	color: #000000;
}


.credit{
	text-align: center;
	font-size: 15px;
	letter-spacing: 0.1em;
	line-height:1.5em;
	margin-top: -5px;
	padding-bottom: -8px;
	color: #000000;
	text-decoration: none;
	font-family: jaf-bernina-sans, sans-serif;
	font-weight: 300;
	font-style: normal;
	}

.credit p{
	text-decoration: none;
	}

.credit a{
	text-decoration: none;
	color:000000;
	}



span {
	display: inline-block;
	color: #000;
	font-weight: 500;
	
}

span2 {
  font-size: 100%;
  color: #000;
  font-weight: 500;
  line-height: -1em;
  border-bottom: solid 2px #000;
	
}








.logo {
	width: 60vw;
	max-width: 400px;
	text-align: center;
	margin-left: auto;
    margin-right: auto;
}



/*--------------------------------------
モーダル
--------------------------------------*/
.entry-modal-pare{
    text-align: center;
}

.entry-modal-pare input{
    display:none;
}

.entry-modal-pare label.open,.close-label{
    cursor:pointer;
}



/*シンプルver*/
.entry-modal-pare.simple{
    display:inline-block;
}

.entry-modal-pare label.simple{
    color:#4f96f6;
    font-size:.95em;
}

.entry-modal-pare label.simple:hover{
    text-decoration: underline;
    cursor: pointer;
    color: #c7511f
}

.entry-modal{
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display:none;
}

.entry-modal__open:checked + label + input + .entry-modal{
    display:block;
    animation:modal-animation .6s;
}

.entry-modal__content-wrap{
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 60%; /* PCでのモーダルの幅 */
    max-width: 650px;
    background-color: #fefefe;
    z-index: 2;
    border-radius:5px;
}

.close-label{
    background: #777;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 20px;
    width: 36px;
    height: 36px;
    line-height: 1.25;
    text-align: center;
    display: table-cell;
    position: fixed;
    top:-13px;
    right: -2%;
    z-index: 99999;
    font-size: 1.5em;
}

.entry-modal__content{
    max-height:90vh; /* モーダルの高さ */
    overflow-y:auto;
    padding: 39px 45px 40px;
}

.entry-modal__background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.45);
    z-index: 1;
}



@keyframes modal-animation {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.entry-content .entry-modal__content table{
    margin-bottom:0;
}

@media only screen and (max-width: 480px) {
    .entry-modal-pare label.open{
        max-width:90%;
        padding: .94em 2.1em .94em 2.6em;
    }

    .close-label{
        top:-17px;
        right: -4%;
    }

    .entry-modal__content-wrap{
        width: 90vw; /* モバイルでのモーダルの幅 */
    }

    .entry-modal__content{
        padding:33px 21px 35px;
        max-width:100%;
    }
}

/* PIB追加 */

.topimage {
  position: static;
  height: 100vh; /* 全画面表示 */
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-image:url("../images/popisback_02_pc_top.jpg");
}

.snsbutton{
	margin: 0 auto 100px;
	display: block;
	text-align: center;
	text-decoration: none;
	
}


.snsbutton a{
  width: 300px;
  border: solid 1px #333;
  border-radius: 50px;
  padding: 16px 80px 16px 80px;
  text-align: center;
  font-size: 17px;
  text-decoration: none;
  color: #000000;
  font-family: jaf-bernina-sans, sans-serif;
  font-weight: 300;
  font-style: normal;
  position: relative;
	
}


.snsbutton a::after{
	content: "";
  width: 8px;
  height: 8px;
  border-top: solid 1px #333;
  border-right: solid 1px #333;
  transform: rotate(45deg);
  position: absolute;
  margin-top: -4px;
  top: 50%;
  left: 30px;
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }

/* SP */


@media screen and ( max-width : 750px ){


	
.topimage {
  height: 90vh;
  background-image:url("../images/popisback_02_sp_top.jpg");
}


.top-box {
	height: 90vh;
	margin-bottom: 0px;
}	
	
	
.itembox{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	gap: 20px 2%;
}



.item{
	    width: 100%;

}

.itemread{
	    width: 100%;

}

	
.mordalnaka{
	    width: 300px;

}

.mordalicon{
 	right: 3%;
}

	

.overflow{
	overflow:hidden;	
	}
	
.titleimage{
	position: absolute;
	display: block;
	text-align: center;
	top:30%;
	left: -50%;
 	right: none;
    margin: auto;
	width: 150vw;
	max-width: 1200px;	
	
}
	
.title{
	margin-top: -20px;
	top:70vh;
	left:0%;
	width: 95%;
}
	
.titleshita{
	bottom:20%;
	left: 0;
 	right: 0;
    margin: auto;
	width: 70vw;
	max-width: 500px;	
	
}	
	
.foot{
	bottom: 0;
	width: 100vw;
	height: 600px;
	margin-top: 0px;
}

.footlogo{
	padding-top: 20px;
    margin: 0 auto;
	width: 400px;

}
	
body{
	background-color: #fff;
}
	


.snsbutton a{
  width: 300px;
  border: solid 1.5px #333;
  border-radius: 50px;
  padding: 10px 60px 10px 60px;
  text-align: center;
  font-size: 16px;
  text-decoration: none;
  color: #000000;
  font-family: jaf-bernina-sans, sans-serif;
  font-weight: 400;
}
	
.snsbutton a::after{
  left: 20px;
}

	
/* スマホで見たときは"sp"のclassがついた画像が表示される */
.pc { display: none !important; }
.sp { display: block !important; }


}


@media screen and ( min-width : 1200px ){
	
	.item{
		width:  25%;
	}
	.itemread{
		width:  25%;
	}	

}


