.list dt, .list dd {
  box-sizing: border-box;
}.list dt, .list dd {
  box-sizing: border-box;
}.list dt, .list dd {
  box-sizing: border-box;
}.list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.list dt, .list dd {
  box-sizing: border-box;
}
.list dt {
  display: flex;
  align-items: center;
  width: 30%;
  padding: 20px;
  background-color: #AEDFBE;
  border-bottom: 1px solid #999;
}
.list dt:last-of-type,
.list dd:last-of-type {
  border: none;
}
.list dd {
  display: flex;
  align-items: center;
  width: 70%;
  margin-left: 0;
  padding: 20px;
  background-color: #fff;
  border-bottom: 1px solid #999;
}.list dt, .list dd {
  box-sizing: border-box;
}.list dt, .list dd {
  box-sizing: border-box;
}.list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.list dt, .list dd {
  box-sizing: border-box;
}
.list dt {
  display: flex;
  align-items: center;
  width: 30%;
  padding: 20px;
  background-color: #AEDFBE;
  border-bottom: 1px solid #999;
}
.list dt:last-of-type,
.list dd:last-of-type {
  border: none;
}
.list dd {
  display: flex;
  align-items: center;
  width: 70%;
  margin-left: 0;
  padding: 20px;
  background-color: #fff;
  border-bottom: 1px solid #999;
}.list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.list dt, .list dd {
  box-sizing: border-box;
}
.list dt {
  display: flex;
  align-items: center;
  width: 30%;
  padding: 20px;
  background-color: #AEDFBE;
  border-bottom: 1px solid #999;
}
.list dt:last-of-type,
.list dd:last-of-type {
  border: none;
}
.list dd {
  display: flex;
  align-items: center;
  width: 70%;
  margin-left: 0;
  padding: 20px;
  background-color: #fff;
  border-bottom: 1px solid #999;
}.list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.list dt, .list dd {
  box-sizing: border-box;
}
.list dt {
  display: flex;
  align-items: center;
  width: 30%;
  padding: 20px;
  background-color: #AEDFBE;
  border-bottom: 1px solid #999;
}
.list dt:last-of-type,
.list dd:last-of-type {
  border: none;
}
.list dd {
  display: flex;
  align-items: center;
  width: 70%;
  margin-left: 0;
  padding: 20px;
  background-color: #fff;
  border-bottom: 1px solid #999;
}@charset "UTF-8";
/*===================================================================*/
#underBase{
  padding-bottom:0
}
img{
  max-width:100%;
  height:auto
}
#underBase main#v-area{
  width:100%;
  height:100%;
  /*background:url(../images/bg.png) repeat #fff;*/
  padding-bottom:150px;
 }
#underBase main#v-area ul{
  list-style-type:disc;
  padding:0;
}
#underBase main#v-area ol{
  list-style-type:decimal;
  padding:0;  
}
#underBase main#v-area ul > li,#underBase main#v-area ol > li{
  margin:0 0 0 20px
}
#underBase main#v-area ul > li::before,#underBase main#v-area ul > li::after,#underBase main#v-area ol > li::before{
  display:none
}
#underBase main#v-area h3 span{
  padding:0
}
#underBase main#v-area h3 span:first-letter{
  font-size:inherit;
}
#underBase main#v-area h3 span::before{
  display:none
}
#underBase main#v-area a:hover { color: #25a1a1!important; transition:0.25s; }

.btn a{
  width:100%;
  max-width:400px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  margin:1em auto;
  padding:.6em 1em;
  background-color:#00b9ef;
  border-radius:15px;
  color:#FFF;
  line-height:1.4
}
.btn a svg{
  width:40px;
  margin:0 4px;
  fill:#FFF;
  transition:all .4s;
}
.btn a:hover{
  background:#ffe33f
}    
.btn a:hover svg{
  fill:#298080;
}

.spwHeadText .btn a{
  width:100%;
  max-width:600px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  margin:1em auto;
  padding:.6em 1em 1.2em;
  background-color:#00b9ef;
  border-radius:15px;
  color:#FFF;
  line-height:1.4;
  position: relative;
  display: inline-block;
}
.spwHeadText .btn a::before {
	border-right: 30px solid transparent;
    border-left: 30px solid transparent;
    border-top: 20px solid #fff;
    border-bottom: 0;
    bottom: 0;
    content: "";
    height: 7px;
    /* width: 7px; */
    margin: auto;
    position: absolute;
    right: 44%;
    top: 94px;
    /* transform: rotate(45deg); */
    transition: bottom .3s;
}
.spwHeadText .btn a:hover::before {
  border-top: 20px solid #298080;
  bottom: -30px;
  transition: .3s;
}

.spwHeadText .btn a:hover{
  background:#ffe33f
}    

.btn_n div{
  width:100%;
  max-width:400px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  margin:1em auto;
  padding:.6em 1em;
  background-color:#aaaaaa/*#00b9ef*/;
  border-radius:15px;
  color:#FFF;
  line-height:1.4;
  font-size: 1.2em;
}
@media screen and (max-width:768px){
  .btn_n div{
	font-size: 1em;
  }
  .spwHeadText .btn a::before {
	right: 40%;
	bottom: -24px;
	}
	.spwHeadText .btn a:hover::before {
	  border-top: none;
	}
	.spwHeadText .btn a{
		padding:.6em 1em 2em;
		font-size: 0.7em;
	}
}
.btn_n div svg{
  width:40px;
  margin:0 4px;
  fill:#FFF;
  transition:all .4s;
}

.spwHead{
  width:100%;
  padding:8vw 2vw 10vw;
  /*background:#ffffff;*/
  background-image: url(../images/img_head.jpg);
  background-position: bottom center;
  text-align:center;
  font-size:1.5em;
  line-height:1.5
}
#underBase main .spwHead h2{
  /*width:90%;*/
  max-width:880px;
  margin:0 auto 2%
}
/*.spwHead p{
    font-size:1.5em;
  }*/
@media screen and (max-width:768px){
  .spwHead p{
	font-size: min(4.1vw, 2.5rem);
  }
}

.spwHeadText{
	border: 2px dashed #4d4d4d;
    width: 780px;
    margin: 1.4em auto;
}
@media screen and (max-width:768px){
 	.spwHeadText{
  		width: 90%; 
		padding: 0 0.6em;
	}
}

.p_ul{
  display:inline-block;
  font-size:1.3em/*min(4.5vw,2.5rem)*/;
  background:url(../images/ul.png) repeat-x bottom;
  background-size:20px auto;
  padding-bottom:.2em;
  font-weight: bold;
}
.ttl_ul{
  display:inline-block;
  font-size:2.4em;
  background:url("../images/ul_ttl.png") repeat-x bottom;
  /*background-size:20px auto;*/
  padding-bottom:.6em;
  font-weight: bold;
  color: #0083c4;
  margin-bottom: 0.6em;
}
.spwCont{
  width:100%;
  /*padding:calc(12.43vw + 10vw) 0 15vw;*/
  padding:calc(8vw + 1vw) 0 15vw;
  /*background:url("../images/img_head_line.svg") no-repeat top center;*/
  background-size:100% auto;
  background-color: #ffffff;
}
#underBase main article.categoryArea{
  max-width:800px;
  border-radius:15px;
  border:6px solid #ffe150;
  background-color:#fff;
/*  padding:2em;
  margin:0 auto 1em;*/
  margin:0 4vw;
  padding:0;
  box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, .3);
}
.spwProgram{
  padding:20px;
  border-bottom:2px dashed #B3B3B3;
}
.spwProgram:last-of-type{
  border-bottom:none
}
#underBase main .spwProgram h3{
  margin-bottom:.5em;
  text-align:center;
  font-size:1.8rem
}
#underBase main .spwProgram h3 a{
  background:linear-gradient(transparent 50%, #ffe33f 50%);
  padding:0 .3em .2em;
  font-size:1.4em;
  color:#000
}
.spwProgram .spwPtxt dd strong{
  font-size:1.3em;
  color:#00b9ef
}
.spwProgram .pre{
  position:relative;
  border:3px solid #00b9ef;
  border-radius:8px;
  padding:1.2em 1em .4em 1em;
  margin-top:40px
}
#underBase main .pre h4{
  position:absolute;
  top:-40px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  margin:0;
  padding:0
}
#underBase main .pre h4::before{
  position:relative;
  z-index:1;
  content:"";
  display:block;
  width:48px;height:48px;
  margin:0 0 4px 0;
  background:url("../images/icon_present.png") no-repeat;
  background-size:contain;
}
#underBase main .pre h4 span{
  padding:.3em 1.4em .3em 55px;
  margin-left:-54px;
  border-radius:400px;
  background:#00b9ef;
  color:#FFF;
  line-height:1;
}
.spwProgram .preImg img{
  display:block;
  margin:4px auto
}
#underBase main#v-area #hamanavi .preImg img,#underBase main#v-area #honkimo .preImg img{
  width:90%;
  max-width:300px
}
#underBase main#v-area #kanaful .preImg img,#underBase main#v-area #baystars .preImg img{
  width:75%;
  max-width:230px;
}
#underBase main article#spp_about{
  border:none;
  padding:0;
  margin:0
}
.spwCampaign{
  max-width:800px;
  border-radius:15px;
  border:12px solid #ffffff;
  background-color:#fff;
/*  padding:2em;*/
  margin:calc(66px + 4vw)  4vw 0;
  padding:20px;
  text-align:center;
  box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, .3);
}
#underBase main .spwCampaign h3{
  margin:-66px auto 4vw;
  text-align:center
}
#underBase main .spwCampaign h4{
  margin:0;
  padding-top:0;
  font-size:min(6vw,2.5rem)
}
.spwCtxt dl{
  margin-top:1em
}
.spwCtxt dt{
  display:inline-block;
  padding:0 2em .2em;
  border:1px solid #000
}
#underBase main#v-area .spwCtxt .spwImg{
  max-width:400px;
}
@media screen and (max-width:768px){
  #underBase main#v-area .spwCtxt .spwImg{
	width: 100%;
  }
}

#spp_cam1{
  margin-top:4vw
}
#underBase main #spp_cam1 h3{
  display:flex;
  align-items:center;
  justify-content:center;
  /*padding:2vw 4vw;
  height:34vw;
  background:url("../images/nami_2410.svg") no-repeat center bottom;
  background-size:auto 52vw;*/
}

.spwCflow{
  padding:4vw;
  text-align:center;
  color: #ffffff;
}
.spwCflow dl{
  margin-bottom:1em
}
.spwCflow dt{
  display:inline-block;
  padding:0 2em .2em;
  border:1px solid #fff;
}
#underBase main#v-area ol.spwCflowBox{
  list-style:none;
  padding:0;
}
#underBase main#v-area ol.spwCflowBox > li{
  margin:0 0 2em 0
}
.smh_img{
  width:50%;
  margin:0 auto
}
.spwCflowBox .btn a span{
  display:block;
  width:100%
}
.spwCflowBox .btn a .follow{
  display:inline-block;
  width:8em;
  margin:.2em .5em 0;
  border:1px solid #FFF;
  border-radius:1em;
}
.spwCflowBox .btn a:hover .follow{
  border:1px solid #000;
  transition:all .4s;
}
.spwCflowBox .btn a svg#retweet{
  width:30px;
  margin-top:4px
}

.spwCflowBox .btn_n div span{
  display:block;
  width:100%
}
.spwCflowBox .btn_n div .follow{
  display:inline-block;
  width:8em;
  margin:.2em .5em 0;
  border:1px solid #FFF;
  border-radius:1em;
}
.spwCflowBox .btn_n div:hover .follow{
  /*border:1px solid #000;
  transition:all .4s;*/
}
.spwCflowBox .btn_n div svg#retweet{
  width:30px;
  margin-top:4px
}

#requ{
  /*border-top:1px solid #B3B3B3;*/
  padding:4vw
}
#underBase main #requ h3{
  margin:0 0 .5em;
  padding-top:0;
  font-size:2.5rem;
  text-align:center
}
#underBase main #requ h4{
  padding:0;
  font-size:2rem
}
.spwCrequ{
  margin-bottom:2em
}
.spwCrequ:last-of-type{
  margin-bottom:0
}
@media screen and (max-width:768px){
  .hiddenSP,.forTB,.forPC{
    display:none
  }
  .ttl_ul{
	  font-size: 1.6em;
	}
}
@media screen and (min-width:769px){
  .btn a{
    padding:1.2em 1em;
    font-size:1.2em;
  }
  #underBase main article.categoryArea,.spwCampaign{
    margin-left:auto;
    margin-right:auto
  }  
  .spwProgram{
    display:flex;
    flex-wrap:wrap;
  }
  .spwProgram .spwPimg{
    width:50%;
    padding-right:20px
  }
  .spwProgram .spwPimg:hover {
	opacity:0.75;
	transition:0.25s;
}
  .spwProgram .spwPtxt{
    width:50%
  }
  #underBase main .spwProgram h3{
    text-align:left;
  }
  #underBase main #spp_cam1 h3{
    align-items:flex-end;
    /*height:18vw;*/
    padding:0 auto;
    background-size:cover;
  }
  .spwCtxt dl,.spwCflow dl{
    display:flex;
    align-content:center;
    justify-content:center;
  }
  .spwCflow dl{
    font-size:1.4em
  }
  .spwCtxt dt,.spwCflow dt{
    padding:0 1em .2em
  }
  .spwCtxt dd,.spwCflow dd{
    padding-left:1em
  }
  #underBase main#v-area ol.spwCflowBox{
    display:flex;
    margin-left:-20px;
    margin-right:-20px
  }
  #underBase main#v-area ol.spwCflowBox li{
    width:50%;
    padding:20px 20px 0;
    margin-bottom:0
  }
  #underBase main .spwCampaign h3{
    margin:-66px auto 24px
  }
  .spwProgram .preImg{
    display:flex;
    flex-wrap:wrap;
    align-items:flex-start
  }
  .spwProgram .preImg img{
    margin:4px 0 9px
  }
  .spwProgram .preImg p{
    padding-left:10px;
  }

	/*#underBase main#v-area #hamanavi .preImg img,#underBase main#v-area #kuruma .preImg img,*/.spwProgram .preImg p{
		width:50%;
	}
	/*#underBase main#v-area #hamanavi .preImg img,*/
	#underBase main#v-area #f-marinos .preImg img,
	#underBase main#v-area #kuruma .preImg img,
	#underBase main#v-area #kanaful .preImg img,
	#underBase main#v-area #rockcity .preImg img,
	#underBase main#v-area #baystars .preImg img{
		width:38%;
	}
	/*#hamanavi .preImg p,*/#kuruma .preImg p,#kanaful .preImg p,#baystars .preImg p{
		width:62%;
	}
	
	/* プレゼント画像　横並び */
	#underBase main#v-area #hamanavi .preImg img/*,
	#underBase main#v-area #f-marinos .preImg img,
	#underBase main#v-area #kuruma .preImg img,
	#underBase main#v-area #kanaful .preImg img,
	#underBase main#v-area #rockcity .preImg img,
	#underBase main#v-area #baystars .preImg img*/{
		width:50%;
		padding: 0 2px;	
	}
	#hamanavi .preImg p/*,#kuruma .preImg p,#kanaful .preImg p,#baystars .preImgp */{
		width:100%;
	}
	
	
}
@media screen and (min-width:769px) and (max-width:1200px){
  .hiddenTB,.forSP,.forPC{
    display:none
  }
}

.spp_about_area{
	width:100%;
	padding:calc(0.43vw + 5vw) 0 10vw;
	background:url("../images/nami_about2410.svg") no-repeat top center;
	background-size:100% auto;
	background-color: #0084cf;
}

.spp_apply_area{
	width:100%;
	padding:calc(0.43vw + 5vw) 0 5vw;
	background:url("../images/nami_apply2410.svg") no-repeat top center;
	background-size:100% auto;
	background-color: #004e9d;
}
#underBase main article#spp_apply{
  border:none;
  padding:0;
  margin:0
}

.spp_details_area{
	width:100%;
	padding:calc(6.43vw + 10vw) 0 5vw;
	background:url("../images/nami_details2410.svg") no-repeat top center;
	background-size:100% auto;
	background-color: #fff;
}

#underBase main article#spp_details{
  border:none;
  padding:0;
  margin:0
}

@media screen and (min-width:1201px){
  .hiddenPC,.forSP,.forTB{
    display:none
  }
  /*.spwHead p{
    font-size:1.5em;
  }*/
  .p_ul{
    font-size:2.7rem;
  }
  .spwCont{
    padding:calc(12.43vw + 0) 0 120px;
  }
  .spp_about_area{
    padding:calc(1.43vw + 64px) 0 70px;
  }
  .spp_apply_area{
    padding:calc(1.43vw + 64px) 0 40px;
  }
  .spp_details_area{
    padding:calc(8.43vw + 64px) 0 56px;
  }
  .spwProgram{
    padding:32px
  }
  .spwProgram .spwPimg{
    width:45%
  }
  .spwProgram .spwPtxt{
    width:55%
  }  
  .spwCflow{
    max-width:964px;
    margin:0 auto;
    padding:20px 32px 64px;
	color: #ffffff;
  }
  #requ{
    padding: 0;/*64px 0*/
  }
  .spwCrequ{
    max-width:800px;
    margin-left:auto;
    margin-right:auto;
    padding-left:32px;
    padding-right:32px
  }
  #underBase main#v-area ol.spwCflowBox li{
    margin-bottom:24px
  }
}
.AreaTitle{
	text-align: center;
}

.mb0{margin-bottom:0 !important}
.mb5{margin-bottom:5px !important}
.mb10{margin-bottom:10px !important}
.mb1em{margin-bottom:1em !important}
.mb2em{margin-bottom:2em !important}
.mt0{margin-top:0 !important}
.mt5{margin-top:5px !important}
.mt10{margin-top:10px !important}
.mt1em{margin-top:1em !important}
.mt2em{margin-top:2em !important}
.ml0{margin-left:0 !important}
.ml5{margin-left:5px !important}
.ml10{margin-left:10px !important}
.ml1em{margin-left:1em !important}
.ml2em{margin-left:2em !important}
.mr0{margin-right:0 !important}
.mr5{margin-right:5px !important}
.mr10{margin-right:10px !important}
.mr1em{margin-right:1em !important}
.mr2em{margin-right:2em !important}

.tosen{
	width: 100%;
	max-width: 870px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: 1em auto 2em;
	padding: 1.4em;
	background-color: #fff/*#ffb40c*/ /*#00b9ef*/;
	/* border-radius: 15px; */
	color: #004e9d;
	line-height: 1.4;
	font-size: 1.2em;
}
.tosen img{
	width: 100%;
	max-width: 800px;
}
@media screen and (max-width: 768px) {
    .tosen {
        font-size: 1em;
		padding: 1.4em 0;
    }
}
/*PCでは無効（改行しない）*/
.forSP{
    display: none;
}
/*スマートフォンでは有効（改行する）*/
@media screen and (max-width:768px) {
    .forSP{
        display: block;
    }
}
/*PCではでは有効（改行する）*/
.forPC{
    display: block;
}
/*スマートフォンでは無効（改行しない）*/
@media screen and (max-width:768px) {
    .forPC{
        display: none;
    }
}

/*スライド関連*/
.SliderArea{
	/* width: 70%; */
  width:90%;
	margin: 0 auto;
}
.SliderView{
	padding: 1em;
}
.SliderView img{
	width: 100%;
	margin: 0 auto 0.4em;
}
.SliderView p{
	text-align: left;
	font-size: 0.82em;
	line-height: 1.4em;
}
.SliderView h5{
	font-size:1.1em;
	color:#000;
	text-align: left;
	font-weight: bold;
}
.SliderView h5 .marker{
	/*background:linear-gradient(transparent 50%, #ffe33f 50%);*/
	background:#ffe33f;
	padding:0 .3em .2em;
	font-size:1.1em;
	color:#000;
	margin-right: 0.4em;
}
.SliderView h6{
	font-size:1.1em;
	color:#000;
	text-align: left;
	font-weight: bold;
	line-height: 1.2em;
	margin: 0.4em;
}
.slick-slide{
	opacity: 1;
}
.slider-nav li{
	margin: 0 5px;
}
.slider-nav img{
	padding: 5px;
	border: 2px solid #eeeeee;
	border-radius: 5px;
}
/*ポップアップ関連*/
.modaalCont{
  display:none;
}
.modaal-content-container{
  text-align:center;
}
.modaal-content-container img:nth-child(n+2){
  margin-top:min(4vw,30px);
}
@media screen and (max-width:768px) {
    .SliderArea{
		width: 100%;
	}
	.SliderView{
		padding: 0;
	}
	.SliderView img{
		margin: 0 auto;
	}
	.SliderView p{
		text-align: left;
		font-size: 0.9em;
		line-height: 1.4em;
	}	
}

.fontL{
	font-size: 1.2em;
}
.fontS{
	font-size: 0.9em;
}