@charset "utf-8";


/*　default
-------------------------------------------------- */
* {
	margin: 0;
	padding: 0;
}

body {
	-webkit-text-size-adjust: 100%; /* sp lock */
}

body,
div,
ul, ol, li,
dl, dt, dd,
h1, h2, h3, h4, h5, h6,
pre,
form, fieldset, input, textarea,
p, blockquote,
table, tr, th, td {
	margin: 0;
	padding: 0;
	color: #000;
}

h1 {
	font-size: 36px;
	font-weight: normal;
	line-height: 1.3;
}
h1 span {
	background: linear-gradient(transparent 70%, #fde233 70%);
}

h2 {
	font-size: 46px;
	font-weight: bold;
	line-height: 1.0;
}
h2 span {
	font-size: 26px;
	font-weight: normal;
}

h3 {
	font-size: 32px;
	font-weight: bold;
	line-height: 1.3;
}
h3 span {
	font-size: 38px;
	font-weight: bold;
	background: linear-gradient(transparent 70%, #fff 70%);
}

h4 {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.3;
}

h5 {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.0;
}
h5 span {
	font-size: 22px;
	font-weight: normal;
}

h6 {
	font-size: 16px;
	font-weight: normal;
	color: #fff;
	line-height: 1.3;
}
h7 {
	font-size: 80px;
	font-weight: bold;
	background: linear-gradient(transparent 70%, #fde233 70%);
}
h8 {
	font-size: 20px;
	font-weight: bold;
}
h9 {
	font-size: 24px;
	font-weight: normal;
	line-height: 1.0;
}
h9 span {
	font-size: 20px;
	font-weight: normal;
}
h10 {
	font-size: 32px;
	font-weight: normal;
	line-height: 1.0;
}
h10 span {
	font-size: 38px;
	font-weight: bold;
}
h11 {
	font-size: 28px;
	font-weight: normal;
	line-height: 1.0;
}

p, li, dt, dl, address {
	font-size: 15px;
	line-height: 1.8;
}

tr, td {
	font-size: 15px;
	line-height: 1.8;
}

li {
	list-style: none;
}

img {
	margin: 0;
	padding: 0;
	border: none;
}

address, em {
	font-style: normal;
}

a:link, a:hover, a:visited {
	text-decoration: none;
	color: #333;
}

.asterisk {
	color: #111;
	margin-top: 10px;
	margin-bottom: 10px;
}



/* letter-spacing
-------------------------------------------------- */
.ls01 {
	letter-spacing: 0.2em;
}

.ls02 {
	letter-spacing: 0.1em;
}



/* background-color
-------------------------------------------------- */
.bk00 {
	background-color: #fff;
}
.bk01 {
	background-color: #fbdedb; /* usu pink */
}
.bk02 {
	background-color: #f8bdb7; /* pink */
}
.bk03 {
	background-color: #026eb8; /* blue */
}
.bk04 {
	background-color: #fde233; /* yellow */
}
.bk05 {
	background-color: #c32314; /* red */
}



/* font-color
-------------------------------------------------- */
.fc00 {
	color: #fff;
}
.fc01 {
	color: #c32314;
}
.fc02 {
	color: #026eb8;
}
.fc03 {
	color: #fde233;
}
.fc04 {
	color: #EA5414; /* orange */	
}


/* font line-height
-------------------------------------------------- */
.fl01 {
	margin: 0.5em 0px;
}



/* border
-------------------------------------------------- */
.bb01 {
	border-bottom: 1px #777 solid;
	width: 100%;
	height: 1px;
}



/* space
-------------------------------------------------- */
.sp100 {
	clear: both;
	height: 100px;
}

.sp90 {
	clear: both;
	height: 90px;
}

.sp80 {
	clear: both;
	height: 80px;
}

.sp75 {
	clear: both;
	height: 75px;
}

.sp70 {
	clear: both;
	height: 70px;
}

.sp60 {
	clear: both;
	height: 60px;
}

.sp50 {
	clear: both;
	height: 50px;
}

.sp40 {
	clear: both;
	height: 40px;
}

.sp30 {
	clear: both;
	height: 30px;
}

.sp20 {
	clear: both;
	height: 20px;
}

.sp15 {
	clear: both;
	height: 15px;
}

.sp10 {
	clear: both;
	height: 10px;
}



/* drop-shadow
-------------------------------------------------- */
.ds {
    -webkit-filter: drop-shadow(4px 4px 3px rgba(0,0,0,.25));
}


/* arrow
-------------------------------------------------- */
.arrow {
	text-decoration:none;
	/* color:#62A1CB; */
	display:inline-block;
	padding-left:30px;
	position:relative;
}
.arrow:before, .arrow:after {
	content:"";
	display:block;
	position:absolute;
}
.arrow:before {
	/* border-right:1px solid #62A1CB; */
	/* border-top:1px solid #62A1CB; */
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	width:8px;
	height:8px;
	left:10px;
	top:50%;
	margin-top:-4px;
}
.arrow:after {
	width:20px;
	/* border-bottom:1px solid #62A1CB; */
	left:0;
	top:50%;
}



/* body
-------------------------------------------------- */
body {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	font-family: "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	position: relative;
}

.main {
	width: 1100px;
	margin: 0 auto;
	clear: both;
}

.main_contents {
	width: 1000px;
	margin: 0 auto;
}



/* fuwa
-------------------------------------------------- */
.fadeInDown {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1s;
 -ms-animation-duration:1s;
 animation-duration:1s;
 -webkit-animation-name: fadeInDown;
 animation-name: fadeInDown;
 visibility: visible !important;
}
@-webkit-keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-20px); -ms-transform: translateY(-20px); transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}



/* opacity
-------------------------------------------------- */
.op a {
	-webkit-transition: 0.5s ease-in-out;
	-moz-transition: 0.5s ease-in-out;
	-o-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}
.op a:hover {
	filter: alpha(opacity=65);
	-moz-opacity: 0.65;
	opacity: 0.65;
}



/* triangle
-------------------------------------------------- */
.triangle01 {
	margin: 0 auto;
	width: 0;
	height: 0;
	border-right: 44px solid transparent;
	border-top: 65px solid #ffffff;
	border-left: 44px solid transparent; 
}
.triangle02 {
	width: 0;
	height: 0;
	border-top: 16px solid transparent;
	border-right: 16px solid transparent;
	border-bottom: 16px solid transparent;
	border-left: 22px solid #026eb8;
}
.triangle03 {
	margin: 0 auto;
	width: 0;
	height: 0;
	border-right: 44px solid transparent;
	border-top: 65px solid #fbdedb;
	border-left: 44px solid transparent; 
}
.triangle04 {
	margin: 10px auto;
	width: 0;
	height: 0;
	border-right: 16px solid transparent;
	border-top: 22px solid #2a66a0;
	border-left: 16px solid transparent; 
}



/* 縦方向中央揃え
-------------------------------------------------- */
.tc {
	display: flex;
	align-items: center;
}



/* リンク先をずらす
-------------------------------------------------- */
span.link_t_a {
	position: relative;
	top: -150px;/*左の数値を変えると、上下に調整します*/
	display: block;
}