@charset "UTF-8";
main a{transition:500ms all;}


.wFull img{width:100%;}
main .w1000,
main .wFull{
	overflow: hidden;
}
main .w1000{
	padding-top: 80px;
	overflow: hidden;
}

/*.bgBlack *{color:#fff;}
.indent{display: inline-block; text-indent: -0.5em;}*/

/* inview */
.inview.left{ 
	position:relative;
    transition:all 0.3s ease;
    transition-delay: 0.6s;
    -webkit-transform:translateX(-5%) ;
    transform:translateX(-5%);
    opacity:0;
}
.inview.inviewShow.left{
	-webkit-transform:translateX(0) ;
	transform:translateX(0);
	opacity:1;
}
.inview.right{
	/*position:relative;*/
    transition:all 0.8s ease;
    transition-delay: 0.1s;
    -webkit-transform:translateX(5%) ;
    transform:translateX(5%);
    opacity:0;
}
.inview.inviewShow.right{
	-webkit-transform:translateX(0) ;
	transform:translateX(0); opacity:1;
}
.inview.bottom{
	position:relative;
    transition:all 0.8s ease;
    transition-delay: 0.1s;
    -webkit-transform:translateY(5%) ;
    transform:translateY(5%);
    opacity:0;
}
.inview.inviewShow.bottom{
	-webkit-transform:translateY(0) ;
	transform:translateY(0); opacity:1;
}
 /* delay */
.d1{transition-delay: 0.1s !important;}
.d2{transition-delay: 0.2s !important;}
.d3{transition-delay: 0.3s !important;}
.d4{transition-delay: 0.4s !important;}
.d5{transition-delay: 0.5s !important;}
.d6{transition-delay: 0.6s !important;}
.d8{transition-delay: 0.8s !important;}
.d10{transition-delay: 1s !important;}
.t2{transition-duration:2s !important;}


/* mainImg -------------------------------------*/
main .mainImg{
    position: relative;
    height: auto;
	max-height: 100vh;
    overflow: hidden;
	margin: 0;
}
main .mainImg > img{
    width: 100%;
    height: auto;
}
@media only screen and (min-width:1366px) and (orientation: landscape){
    main .mainImg > img{
		width: 100%;
        height: auto;
        min-height: 100%;
        min-width: 100%;
	}
}




/*	index.html
--------------------------------------------------------------------*/
#messageTop .mainImg h1{
    position: absolute;
    width: 100%;
    height: auto;
    text-align: center;
    top: 20vw;
    line-height: 1.75;
}
#messageTop .mainImg h1 span.fontMin{
	font-weight: 400;
    font-size: 46px;
    color: #fff;
}
#messageTop .mainImg h1 span.fontOsw{
    display: block;
    color: #CE121B;
    font-size: 16px;
	font-weight: 500;
    letter-spacing: 5px;
}

/* maintext -------------------------------------*/
#messageTop #maintext{
    padding: 45px 0 0 0;
	width: 92%;
    max-width: 1450px;
    margin: 0 auto;
}
#messageTop #maintext #line1,
#messageTop #maintext #line2{
    width: 100%;
    text-align: center;
    white-space: nowrap;
}
#messageTop #maintext img{
    width: auto;
	height: 10.5vw;
}
#messageTop #maintext #line1 img{
	width: auto;
	margin-bottom: 4%;
}
#messageTop #maintext #line1 img:nth-of-type(2){
    margin-left: 0.8em;
}


/* h2 -------------------------------------*/
.txt h2{
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
	font-size: 54px;
	line-height: 1.5;
	letter-spacing: -1px;
	text-align: center;
	margin: 0 0 100px 0;
}

#messageTop section.w1000 .txt .messageInner{
    max-width: 762px;
    margin: 0 auto;
}
#messageTop section.w1000 .txt .messageInner p.inview.left{
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 19px;
    margin-bottom: 1.5em;
	line-height: 40px;
}
#messageTop section.w1000 .txt .messageInner img{
    margin: 30px 0 75px 0;
	width: 100%;
}
#messageTop section.w1000 .txt  .messageInner #name{
	text-align: right;
}
#messageTop section.w1000 .txt  .messageInner #name p{
	display: inline-block;
	font-size: 24px;
	letter-spacing: 0.4em;
	text-align: left;
}
#messageTop section.w1000 .txt  .messageInner #name span{
	display: block;
	font-size: 16px;
	letter-spacing: 0.04em;
}

#messageTop .photo3{
	display: flex;
    padding: 0 0 90px 0;
}
#messageTop .photo3 div{
	width: 1000px;
	margin: 0 auto;
}
#messageTop .photo3 img{
	width:33.3%;
	height: auto;
}
#messageTop #photoCap{
    width: 100%;
	text-align: center;
	font-size: 14px;
	font-weight: 300;
	padding-bottom: 132px;
    margin: 0;
}
#messageTop #photoCap dt{
	letter-spacing: 0.25em;
    margin: 0 0 1em 0;
}
#messageTop #photoCap dd{
    margin: 0;
    line-height: 26px;
}
#messageTop #photoCap dd a{
    position: relative;
	padding: 0 20px 0 0;
}
#messageTop #photoCap dd a::after{
    position: absolute;
    top: 25%;
    right: 5px;
    content: '';
    background: url("/shared/images/icon_window.svg");
    width: 12px;
    height: 12px;
    z-index: 1;
}
#messageTop #photoCap dd a:link{
    color: #000;
    text-decoration: underline;
}
#messageTop #photoCap dd a:hover{
    color: #ce121b;
    text-decoration: none;
}
@media all and (-ms-high-contrast: none){
	#messageTop #photoCap dd a::after{
	    top: 27%;
	}

}


/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Tablet & Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/

/*タブレット 縦のみ*/
@media screen and (max-width: 1024px) and (orientation: portrait){
    /* mainImg */
    main .mainImg{
		width: auto;
		height: 100vh;
        background: url("../images/message_main_sp.jpg") no-repeat;
        background-size: 110%;
	}
    main .mainImg > img{
        display: none;
		width: 100%;
		height: 100%;
        
        
		/*margin-right: 0vw;
		position: absolute;
		right: -15vw;*/
	}






	/*	index.html
	--------------------------------------------------*/
	#messageTop .mainImg h1{
	    top: 50vw;
	}
}



/*タブレット 横のみ*/
@media screen and (max-width: 1366px) and (orientation:  landscape){
	/*	index.html
	--------------------------------------------------*/
	#messageTop .mainImg h1{
    	top: 25vw;
	}

}
/*タブレット 縦から	*/
@media screen and (max-width: 1024px){
    /* mainImg */
    main{
		overflow-x:hidden;
	}
    main .wFull .mainImg{
		overflow: visible;
		margin-bottom: 150px;
	}
    /*.txt h2{font-size: 6.5vw;}*/

	

}

/*スマホ 横のみ*/
@media screen and (max-width: 896px) and (orientation: landscape){
	/*	index.html
	--------------------------------------------------*/
	#messageTop main .mainImg > img {
    	width: 100%;
		height: auto;
	}
	#messageTop .mainImg h1 {
		top: 20vw;
        line-height: 1.25;
	}


}
/*スマホ 横から*/
@media screen and (max-width: 896px){

	main .w1000{
		padding-top: 60px;
	}
    .txt h2{
		font-size: 30px;
		margin-bottom: 60px;
	}
	/*	index.html
	--------------------------------------------------*/
	#messageTop .mainImg h1 span.fontMin {
	    font-size: 36px;
	}
	#messageTop .mainImg h1 span.fontOsw{
	    font-size: 14px;
	}


    /* other contents */
	.otherContents ul.otherList li dl dd{font-size: 23px;}
	.otherContents ul.otherList li dl dd span{font-size: 13px;}

	/*	index.html
	--------------------------------------------------*/
/*	#messageTop .mainImg h1 span.fontMin {
	    font-size: 36px;
	}
	#messageTop .mainImg h1 span.fontOsw{
	    font-size: 14px;
	}*/

}
/*スマホ　縦からは*/
@media screen and (max-width: 480px){
	
	/*	index.html
	--------------------------------------------------*/
	#messageTop .mainImg{
        background-size: 115%;
		height: 480px;
	}
	#messageTop .mainImg img{
		width:auto;
		height: 110%;
		right: -20vw;
		bottom: 0;
	}
	#messageTop .mainImg h1 {
		top: 50vw;
        line-height: 1.75;
	}
	
	#messageTop #maintext #line1,
	#messageTop #maintext #line2{
	    white-space: normal !important;
	}
	#messageTop #maintext img{
		height: 17vw;
	}
	#messageTop #maintext #line1 img:nth-of-type(2){
    	margin-left: 0;
	}
	#messageTop section.w1000 .txt .messageInner p.inview.left{
		width: 100%;
		margin: 0 auto 1.5em auto;
	    font-size: 16px;
		line-height: 36px;
	}
	#messageTop section.w1000 .txt .messageInner img{
	    margin: 30px 0 55px 0;
	}

	#messageTop section.w1000 .txt  .messageInner #name{
		float: right;
	}
	#messageTop .photo3{
		padding: 0 0 60px 0;
	}

}

