@charset "utf-8";

/* ============================================================
default
============================================================ */

.disnone {
	display:none;
}
article,#wester,#note{
	background: #FFF;
}
.topline{
	background: url(../images/topline.png) repeat-x top center #eef5ff;
	height: 33px;
	width: auto;
}

@media screen and (max-width: 759.9px) {
	.spnone {
		display: none;
	}
	#dirPathBlock,
	#anchorLinkBlock {
		font-size: 10px;
		margin: 1% 1% 0 1%;
	}
	#dirPathBlock p,
	#anchorLinkBlock a {
		font-size: 12px;
	}
	h1 {
		font-size: 12px;
		margin: 0 1%;
	}
	.inner {
		width: 96%;
		margin: 0 2%;
		padding: 24px 0;
		box-sizing: border-box;
	}
}/* end @media */

@media screen and (min-width: 760px),print {
	#dirPathBlock,
	h1,
	.iframe_end-content_gadget,
	#anchorLinkBlock {
		width: 100%;
		max-width:970px;
		min-width:760px;
		margin: auto;
	}
	#dirPathBlock,
	#anchorLinkBlock {
		width: 100%;
		margin: 0 auto;
		display: block;
		font-size: 12px;
	}
	#dirPathBlock p,
	#anchorLinkBlock a {
		font-size: 12px;
	}
	h1 {
		font-size: 14px;
		width: auto;
		max-width: 970px;
		margin: 0 auto 5px;
	}
	.inner {
		width: 96%;
		max-width:970px;
		margin: 0 auto;
		padding:50px 0;
		display: block;
	}
	u {
		text-decoration-color: red;
	}
}/* end @media */

/* ============================================================
common
============================================================ */

article section {
	margin: 0;
	padding: 0;
	font-weight: bold;
}
article section * {
	box-sizing: border-box;
}
article section div.inner {
	margin: 0 auto;
	padding: 0;
}
article section div.inner * {
	font-feature-settings: 'palt';
	letter-spacing: 0;
}

article section {
	color: #232d23;
}
article section strong {
	color: #be1432;
}

article section img {
	max-width: 100%;
}




/* ============================================================
PC
============================================================ */

@media screen and (min-width: 760px),print {

/* common
-------------------------------------------------------------*/

article section {
	font-size: 25px;
}
article section .sp {
	display: none !important;
}

article section a {
	transition: opacity .2s ease-in;
}
article section a:hover {
	opacity: 0.6;
}

.pcnone {
		display: none !important;
}

	
.graybg{
	background: url(../images/bg.jpg) repeat;
}

.p1 {
    font-size: 25px;
	color: #231815;
    text-align: center;
}
	
.p1_txt{
   text-align: center;
	padding: 20px 0 0 0 ;
}
	
.p1_txtpink {
	color: #e8546b;
}
.large{
    font-size: 34px;		
}
.small{
    font-size: 16px;		
}	


/* sec_0
-----------------------------------------------------------*/

#sec_0  {
    position: relative;
    width: 100%;
    height:auto;
    overflow: hidden;
	
  background-repeat: repeat-x;
  background-image: url(../images/bg_air.jpg);
}

.title_bgimage  {
    width: 2000px;
    height: 600px;
    object-fit: cover;
    object-position: center top;
    display: block;
    margin: auto;
}

.title_image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 1250px;
    height: 600px;
	min-width: 1250px;
}

	
	
/* sec_1
-------------------------------------------------------------*/

#sec_1{
	background: url('../images/bg1_train.png') no-repeat center center;	
    padding: 100px 0 60px;
}


	
#sec_1 img{
	width: 100%;
	margin: 0 auto;
	max-width: 500px;
}




/* sec_2 sec_3
-------------------------------------------------------------*/
#sec_2 {
    position: relative;
	width: 100%;
	overflow: hidden;
}	

#sec_2 .title,#sec_3 .title{
    max-height: 105px;
    padding: 1rem 0;
}
	
#sec_2 .inner,#sec_3 .inner{
	text-align: center;
}
	
 #sec_2 .boxarea,#sec_3 .boxarea{
      background-color: #FFF;
      border: 4px solid #333; 
      padding: 30px; 
      width: 100%;
      text-align: center;
      max-width: 950px;
      margin:auto;
}

#sec_2 p{
	padding: 10px 0 0 0;
}
	
#sec_2 {
	background: url('../images/bg2_train.png') no-repeat center center;
	padding: 0px 0 15rem 0;
    margin: 2rem 0;
}

#sec_2 .small{
	font-weight: normal;
	text-align: left;
}
	
.triangle{
    background: #1363aa;
    height: calc(35px / 2);
    width: 35px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    margin: 1rem auto 0;
}
	
	
	
	
/* wester
-------------------------------------------------------------*/
#wester{
	background: url('../images/bg3_train.png') no-repeat center center;
	margin: auto;
	text-align: center;
	padding:10rem 0;
	align-items: center;
}

#wester .ltxt{
    font-size: 30px;
    text-align: center;
    padding: 30px 0;
}

#wester .mtxt{
    font-size: 25px;
    font-weight: 900;
	line-height: 1.3;
    padding: 37px 0;
}

#wester strong{
	color: #BE1432;
}

.wc_link img {
    width: 100%;
    height: 67px;
	padding: 0 20px;
}

.westerappli{
    padding: 0.5rem 0;	
	display: flex;
	justify-content: space-evenly;
}

#wester .logo_wester{
	width: 215px;
	height: 215px;
	flex-shrink: 0;
}

.wc_link{
	display: flex;
}

.westersmall{
    font-size: 18px;
    font-weight: 400;
    padding: 25px;
    line-height: 1.5;	
}



/* sec_4
-------------------------------------------------------------*/
#sec_4{
	margin: 4rem 0;
	padding: 0 0 4rem 0;
}	
	
#sec_4 .boxarea{
      background-color: #FFF;
      border: 4px solid #333; 
      padding: 30px; 
      width: 100%;
      text-align: center;
      max-width: 950px;
      margin:auto;
}
#sec_4 .inner {
    text-align: center;
}	
#sec_4 .title {
    max-height: 105px;
    padding: 1rem 0;
}	
	
#sec_4 .step {
	display: flex;
	gap:20px;
}
	
#sec_4 .step:first-child{
	padding: 25px 0 0 0;		
}

#sec_4 .step_icon{
   display: flex;
   max-width: 100px;
   flex-direction: column;	
}
.step_line{
    background: #1363aa;
    border: solid #FFF;
    border-width: 0 30px;
    height: 100%;
    margin-top: -50px;
    z-index: 1;	
}	

#sec_4 .step_icon img {
   width: 95px;
   height: 95px;
   margin: auto;
   z-index: 2;
   margin-top: -25px;
}

#sec_4 .step_txtbox {
   flex: 1;
   padding-left: 10px;
}
	
/* step1*/
.step_link{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 2%;
	margin: 2rem 0 4rem;
}

#sec_4 .logo_wester{
    width: 175px;
    height: 175px;
    flex-shrink: 0;
    margin: 0 15px 0 0;
}

#sec_4 a img{
    width: auto;
    height: 55px;
}
	
	
	
/* step2*/	
.step_flow {
    position: relative;
	display: flex;
	gap: 20px;
    margin: 1.5rem 0 3rem 0;
}

    .flowbox {
      margin: 0 1.5%;
	  flex: 1;
      box-sizing: border-box;
      position: relative;	
    }

    .flowbox img {
      width: 100%;
      height: auto;
      display: block;
    }

    .flowbox .flowtxt {
      text-align: center;
      padding: 10px;
    }
	
	.flowtxt{
		font-size: 16px;
	}

    .flowbox:nth-of-type(1):after,.flowbox:nth-of-type(2):after {
      content: "";
      position: absolute;
      top: 50%;
      right: -45px;
    border-width: 16px;
      border-style: solid;
      border-color: transparent transparent transparent #1363aa; 
      transform: translateY(-50%);
    }
	
	
/* stamp*/	
	
#stamp h3{
		font-size: 30px;
		font-weight: bold;
}
.stamp_txt {
	font-size: 25px;
	color: #231815;
    text-align: center;
}	
	
#stamp{
		background:#fffab4;
		padding: 20px;
		text-align: center;
		margin: 2rem auto 0;
}
.stamp_flow {
    position: relative;
	display: flex;
	gap: 20px;
    margin: 1.5rem 0 0 0;
}

#stamp .flowbox {
      margin: 0 1.5%;
	  flex: 1;
      box-sizing: border-box;
      position: relative;	
    }

#stamp .flowbox img {
      width: 100%;
      height: auto;
      display: block;
    }

#stamp .flowbox .flowtxt {
      text-align: center;
      padding: 10px;
    }
	
#stamp .flowtxt{
		font-size: 16px;
	}

#stamp .flowbox:nth-of-type(1):after,#stamp .flowbox:nth-of-type(2):after {
      content: "";
      position: absolute;
      top: 50%;
      right: -45px;
      border-width: 16px;
      border-style: solid;
      border-color: transparent transparent transparent #1363aa; 
      transform: translateY(-50%);
    }	
	
	
.coution{
		text-align: center;
		color: #231815;
		font-size: 20px;
		margin: 50px auto;
}
/*sec_lst 
-------------------------------------------------------------*/
	
article section.sec_lst div.inner dl {
    border: solid 2px #000;
    padding: 10px 20px;
    text-align: center;
}
article section.sec_lst div.inner dl dt {
    font-size: 20px;
}
article section.sec_lst div.inner dl dd {
    font-size: 16px;
}
article section.sec_lst div.inner dl dd span{
    font-size: 13px;
}		

article section.sec_lst {
	background: #fff;
	background-size: 100% auto;
}

article section.sec_lst div.inner {
	padding: 100px 0 90px;
	font-size: 16px;
}
article section.sec_lst div.inner p.t1 {
	line-height: 1.2;
	text-align: center;
	font-size: 17px;
}
article section.sec_lst div.inner h5 {
	margin: 0 0 30px;
	padding: 0;
	font-size: 24px;
	background: none;
    text-align: center;
}
article section.sec_lst div.inner h6 {
	font-size: 19px;
	font-weight: bold;
}

article section.sec_lst div.inner ul {
	margin: 0 0 40px;
}
article section.sec_lst div.inner li {
	position: relative;
    margin-bottom: 5px;
	padding-left: 1.2em;
	line-height: 1.4;
	font-size: 16px;
	font-weight: normal;
}
article section.sec_lst div.inner li::before {
	content: '';
	position: absolute;
	top: 0.2em;
	left: 0;
	width: 0.9em;
	height: 0.9em;
	border-radius: 50%;
}
} /* end @media */



/* ============================================================
SP
============================================================ */

@media screen and (max-width: 759.9px) {

/* common
-------------------------------------------------------------*/

article section {
	font-size: 18px;
}
article section .pc {
	display: none !important;
}
	
.graybg{
	background: url(../images/bg.jpg) repeat;
}
.p1 {
	color: #231815;
    text-align: center;
}
	
.p1_txt{
   text-align: center;
	padding: 20px 0 0 0 ;
    font-size: 1.35rem;	
}
	
.p1_txtpink {
	color: #e8546b;
}
.large{
    font-size: 1.8rem;		
}
.small{
    font-size: 0.85rem;		
}
.title.lazyloaded {
    width: 60%;
    padding: 20px 0 10px;
}	

/* sec_0
-------------------------------------------------------------*/
section#sec_0 {
    line-height: 0;
}	

/* sec_1
-------------------------------------------------------------*/

#sec_1{
    width: 95%;
    padding: 70px 0 20px;
    margin: auto;
}

#sec_1 .p1 {
    font-size: 25px;
	color: #c4c194;
	letter-spacing: 0.5em;
	padding: 0 0 10px;
    text-align: center;
}

#sec_1 img{
	width: 100%;
	margin: 0 auto;
    max-width: 500px;	
}


/* sec_2
-------------------------------------------------------------*/

#sec_2 {
    background-size: cover;
	padding: 30px 0;
    margin: auto;
    text-align: center;	
}
	
#sec_2 .p1_txt {
    padding: 20px 0;
}
.prizeimg{
    width: 100%;		
}
 #sec_2 .boxarea,#sec_3 .boxarea{
    background-color: #FFF;
    border: 4px solid #333;
    padding: 1rem;
    width: 90%;
    text-align: center;
    margin: 1rem auto;
}
	
.triangle{
		padding: 1rem 0 0 0;
}
	
/* sec_3
-------------------------------------------------------------*/
#sec_3 {
    position: relative;
	width: 100%;
	overflow: hidden;
    margin: auto;
    text-align: center;		
}	

.rlarea {
    width: 100%;
	text-align: center;
	max-width: 950px;
    margin: auto;
}

h4 {
    text-align: center;
    font-size: 2rem;
    color: #c3c093;
    font-weight: bold;
    margin: 50px auto 25px;
}
#sec_3 .inner {
    padding: 30px 0;
}		
#sec_3{	
	padding: 10px 0 50px;	
}
#sec_3 .rlarea {
    width: 93%;
}
	
/* sec_4
-------------------------------------------------------------*/	
#sec_4{
		text-align: center;
}

 #sec_4 .boxarea{
    background-color: #FFF;
    border: 4px solid #333;
    padding: 1rem;
    width: 90%;
    text-align: center;
    margin: 1rem auto;
}	
#sec_4 .title{
		width: 90%;
}
	
	
section#sec_4 {
    background-size: cover;
    padding: 70px 0;
    margin: auto;
}		
	
#sec_4 .inner {
    text-align: center;
}		
	
#sec_4 .step {
	display: flex;
}
	
#sec_4 .step:first-child{
	padding: 25px 0 0 0;		
}

#sec_4 .step_icon{
   display: flex;
   max-width: 60px;
   flex-direction: column;	
}
.step_line{
    background: #1363aa;
    border: solid #FFF;
    border-width: 0 20px;
    height: 100%;
    margin-top: -50px;
    z-index: 1;	
}	

#sec_4 .step_icon img {
   width: 95px;
   height: 95px;
   margin: auto;
   z-index: 2;
   margin-top: -25px;
}

#sec_4 .step_txtbox {
   flex: 1;
   padding-left: 10px;
}
	
/* step1*/
.step_link{
    display: flex;
    align-items: center;
    margin: 2rem 0 4rem;
    flex-direction: column;
}

#sec_4 .logo_wester{
    width: 175px;
    height: 175px;
    flex-shrink: 0;
    margin: 0 0 20px 0;
}

#sec_4 a img{
    width: auto;
}
	
#sec_4 .p1_txt {
    text-align: center;
    padding: 0;
    font-size: 1.5rem;
}	
	
/* step2*/	
.step_flow {
    position: relative;
    margin: 1.5rem 0 3rem 0;
}

    .flowbox {
      margin: 0 1.5%;
	  flex: 1;
      box-sizing: border-box;
      position: relative;	
    }

    .flowbox img {
      width: 100%;
      height: auto;
      display: block;
    }


    .flowbox .flowtxt {
    text-align: center;
    padding: 15px;
    margin: 0 0 3.5rem;
    font-size: 1.25rem;		
    }


    .flowbox:nth-of-type(1):after,.flowbox:nth-of-type(2):after {
    content: "";
    position: absolute;
    top: 105%;
    right: 30%;
    border-width: 30px;
    border-style: solid;
    border-color: #1363aa transparent transparent transparent;
    transform: translate(-50%,-50%);
    }
	
	
/* stamp*/	
	
#stamp h3{
		font-size: 1.8rem;
		font-weight: bold;
}
.stamp_txt {
	font-size: 1.35rem;
	color: #231815;
    text-align: center;
}	
	
#stamp{
		background:#fffab4;
		padding: 20px;
		text-align: center;
		margin: 2rem auto 0;
}
.stamp_flow {
    position: relative;
    margin: 1.5rem 0 0 0;
}

#stamp .flowbox {
      margin: 0 1.5%;
	  flex: 1;
      box-sizing: border-box;
      position: relative;	
    }

#stamp .flowbox img {
    width: 90%;
    height: auto;
    display: block;
    margin: auto;
    }

#stamp .flowbox .flowtxt {
    text-align: center;
    padding: 10px;
    margin: 0 0 3rem;
    font-size: 1.25rem;	
    }
	

#stamp .flowbox:nth-of-type(1):after,#stamp .flowbox:nth-of-type(2):after {
    content: "";
    position: absolute;
    top: 105%;
    right: 30%;
    border-width: 30px;
    border-style: solid;
    border-color: #1363aa transparent transparent transparent;
    transform: translate(-50%,-50%);
    }	
	
	
.coution{
    padding: 2rem;
    text-align: center;
    color: #231815;
    font-size: 1.35rem;
    margin: 50px auto;
}
	


/* wester
-------------------------------------------------------------*/
p.ltxt {
    font-size: 1.5rem;
    text-align: center;
    padding: 80px 0 20px;
    width: 93%;	
	margin: auto;
}

.westerappli {
    text-align: center;
    font-size: 1.25rem;
    width: 93%;
	margin: auto;
}
	
p.mtxt {
    padding: 15px;
}

.wc_link img {
    width: 100%;
    height: auto;
	padding: 0 10px;
}


#wester .logo_wester{
	width: 215px;
	height: 215px;
	flex-shrink: 0;
}

.wc_link{
	display: flex;
}

.westersmall{
    font-size: 0.8rem;
    font-weight: 400;
    padding: 10px 20px 60px;
}
	

	
/* sec_lst
-------------------------------------------------------------*/
article section.sec_lst div.inner dl {
    border: solid 2px #000;
    padding: 10px 20px;
    text-align: center;
}
article section.sec_lst div.inner dl dt {
    line-height: 1.4;
    font-size: 18px;
}
article section.sec_lst div.inner dl dd {
    font-size: 14px;
}
article section.sec_lst div.inner dl dd span{
    font-size: 11px;
}	
	
	
article section.sec_lst {
	background: #fff;
	background-size: 100% auto;
}

article section.sec_lst div.inner {
	padding: 100px 6vw 90px;
	font-size: 14px;
}
article section.sec_lst div.inner p.t1 {
	line-height: 1.2;
	text-align: center;
	font-size: 15px;
}
article section.sec_lst div.inner h5 {
	margin: 0 0 30px;
	padding: 0;
	font-size: 20px;
	background: none;
    text-align: center;
}
article section.sec_lst div.inner h6 {
	font-size: 16px;
	font-weight: bold;
}

article section.sec_lst div.inner ul {
	margin: 0 0 20px;
}
article section.sec_lst div.inner li {
	position: relative;
    margin-bottom: 5px;
	padding-left: 1.2em;
	line-height: 1.4;
	font-size: 14px;
	font-weight: normal;
	word-break: break-word;
}
article section.sec_lst div.inner li::before {
	content: '';
	position: absolute;
	top: 0.2em;
	left: 0;
	width: 0.9em;
	height: 0.9em;
	border-radius: 50%;
}
} /* end @media */




