/*リセット*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
}
ol, ul, dl{
    list-style:none;
}

html{
	margin:0;
	padding:0;
}

body{
	font-size:min(1.21vw,16px);
	line-height: 1.8;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	color:#000000;
}

.pc{
	display:block!important;
}
.sp{
	display:none!important;
}
.pcVisble{
	visibility:visible;
}
.spVisble{
	visibility:hidden;
}

a:link,a:visited {
	text-decoration: none;
	cursor:pointer;
}
a:hover{
	
}

.mb30 { margin-bottom:30px; }

/*------------------------------*/
header{
	position:relative;
	width:100%;
	height:60px;
	margin:0;
	padding:0 50px;
	background:#fff;
	z-index:100;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
header ul{
	display:flex;
	justify-content:space-between;
}
header ul li{
	width:50%;
}
header ul li:first-of-type{
	padding:14px 0 0 0;
	text-align:left;
}
header ul li:first-of-type img{
	height:32px;
}
header ul li:last-of-type{
	padding:20px 0 0 0;
	text-align:right;
}
header ul li:last-of-type img{
	height:20px;
	margin:0 0 0 17px;
}
/*------------------------------*/
.mainvis img{
	width:100%;
	height:auto;
}
/*------------------------------*/
main{
	width:92%;
	max-width:1328px;
	padding:50px 0 100px;
	margin:0 auto;
}
.breadcrumb{
	display:flex;
	flex-wrap:wrap;
	margin:0 auto 43px;
	font-size:14px;
	color:#999;
	font-family: 'Inter', sans-serif;
}
.breadcrumb a{
	color:#999;
}
.breadcrumb a:hover{
	text-decoration:underline;
}
.breadcrumb li:first-of-type{
	width:70%;
}
.breadcrumb li:last-of-type{
	width:30%;
	font-size:16px;
	text-align:right;
}


main > ul{
	display:flex;
}
main > ul > li:first-of-type{
	width:26%;
	max-width:348px;
	padding:0 48px 0 0;
	border-right:1px solid #ccc;
	font-size:0;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
main > ul > li:last-of-type{
	width:74%;
	max-width:980px;
	padding:0 0 0 50px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
main > ul > li:first-of-type img{
	width:100%;
	margin:0 0 20px;
}
.twitterTL{
	width:100%;
	height:500px;
	overflow-y:auto;
}

main .lead{
	margin:0 auto 50px;
	font-size:min(1.5vw,20px);
	line-height:1.6;
}
main h2{
	padding:0 0 20px 0;
	margin:0 0 15px;
	font-size:min(2.1vw,28px);
	font-weight:700;
	line-height:1;
	background:url(../img/h2.png) no-repeat;
	background-position:left bottom;
	background-size:100%;
}
main h3{
	margin:0 auto 26px;
	text-align:center;
	color:#fff;
	font-weight: 700;
	font-size:min(1.5vw,20px);
	line-height: 36px;
	background:#1F2E69;
}
main p{
	margin:0 0 90px;
	line-height:2;
}
main hr{
	height:0;
	border:none;
	border-bottom:1px solid #000;
	margin:0 0 50px;
}
main .image{
	text-align:center;
}
main .image img{
	width:100%;
	height:auto;
	margin:0 auto 50px;
}
/*---------*/
.sns{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin:0 auto 50px;
}
.sns li{
	margin:0 0 0 16px;
}
.sns li:first-of-type{
	margin:0 9px 0 0;
}
.sns li img{
	vertical-align:middle;
}
	
/*---------*/
.pager{
	display:flex;
	flex-wrap:wrap;
	margin:0 auto 80px;
}
.pager a:link,.pager a:visited{
	font-size:13px;
	color:#999;
}
.pager li:nth-of-type(1){
	width:45%;
}
.pager li:nth-of-type(2){
	width:10%;
	text-align:center;
}
.pager li:nth-of-type(3){
	width:45%;
	text-align:right;
}
.pager li img{
	width:100px;
}
/*------------------------------*/
footer{
	position:relative;
	width:100%;
	padding:40px 0 34px;
	background:#29A5FF;
	text-align:center;
	color:#fff;
	line-height:1;
	font-size:18px;
}
.footer{
	width:90%;
	max-width:600px;
	margin:0 auto;
}
.footer img{
	width:100%;
	margin:0 auto 40px;
}
.pagetop{
	position:absolute;
	top:-50px;
	right:0;
	width:40px;
	height:40px;
}
.pagetop img{
	width:100%;
}

@media screen and (max-width: 960px) {

	body{
		font-size: 16px;
	}
	.pc{
		display:none!important;
	}
	.sp{
		display:block!important;
	}
	.pcVisble{
		visibility:hidden;
	}
	.spVisble{
		visibility:visible;
	}


	/*------------------------------*/
	header{
		position:fixed;
		padding:0 5%;
	}
	header ul li:first-of-type{
		width:22%;
	}
	header ul li:last-of-type{
		width:78%;
	}
	header ul li:last-of-type img{
		margin:0 0 0 7px;
	}
	/*------------------------------*/
	.mainvis{
		padding:60px 0 0;
	}
	/*------------------------------*/
	main{
		padding:60px 0 0;
	}
	.breadcrumb li:first-of-type{
		width:100%;
		margin:0 0 10px;
	}
	.breadcrumb li:last-of-type{
		width:100%;
	}
	
	main > ul > li:first-of-type{
		display:none;
	}
	main > ul > li:last-of-type{
		width:100%;
		padding:0;
	}
	
	main .lead{
		font-size:20px;
	}
	main h2{
		font-size: 28px;
		line-height:38px;
		background-size:auto 10px;
	}
	main h3{
		padding:5px 0;
		font-size:18px;
		line-height:1.5;
	}
	main .image img{
		width:100%;
	}
	/*----*/
	.pager li{
		margin:0 0 10px;
	}
	.pager li:nth-of-type(1){
		order:1;
		width:100%;
	}
	.pager li:nth-of-type(2){
		order:3;
		width:100%;
	}
	.pager li:nth-of-type(3){
		order:2;
		width:100%;
		text-align:left;
	}

	/*------------------------------*/
	.spBanner{
		width:76%;
		margin:0 auto 20px;
		text-align:center;
	}
	.spBanner img{
		width:100%;
		margin:0 auto 10px;
	}
}



.hidescroll{
	overflow-y:hidden;
}

.textSmall{
	font-size:0.9rem;
}

.letter_narrow{
	letter-spacing:-2px;
}
.fleft{
	float:left;
	overflow:hidden;
}
.fright{
	float:right;
	overflow:hidden;
}
.txtLeft{
	text-align:left;
}
.txtRight{
	text-align:right;
}
.txtcancel{
	text-decoration: line-through;
}
.thick{
	font-weight:600;
}

.red{
	color:#ff0000;
}
.gray{
	color:#999;
	}
.cursor{
	cursor:pointer;
}
.center{
	text-align:center;
	margin:0px auto 0px auto;
}
