@charset "UTF-8";

*{
	list-style-type: none;
	text-decoration: none;
	font-size: 16px;
	margin: 0;
	padding: 0;
}

body{
	background-color: #FFF999;
	font-family: "メイリオ","Meiryo",sans-serif;
}

a,link,visited{
	color: black;
}

header nav a:hover{
	opacity: 0.6;
}

.button a:hover{
	opacity: 0.8;
}

.yellow{
	margin-bottom: 8px;
}

.lh2{
	line-height: 2;
	margin-bottom: 12px;
}

.lh1-7{
	line-height: 1.7;
	margin-top: 16px;
}

#intro,#cando,#support{
	padding-top: 60px;/*2つに分けたのはページ内リンク時の位置を60px上の位置へと調整するため*/
	margin-top: 100px;
}

/*ヘッダー内両端にあらかじめ空白入れて
h1は左寄せのままにして均等に余白とればいいかも！？
あとで試してみる↓↓↓*/

/*↑↑↑修正した*/

header{
	position: relative;
	height: 100px;
	//width: 1550px;
	max-width: 1550px;
	//min-width: 896px;
	margin-left: auto;
	margin-right: auto;
	background-color: white;
}

/*headerの後に疑似要素でheaderのheightと同じ高さ分下にpositionしてる*/
header::after{
	position: absolute;
	top: 100px;/*headerのheight*/
	left: 0;
	z-index: 99;
	display: block;
	content: "";
	height: 95px;/*loof.pngのheight*/
	width: 100%;
	background-image: url(../img/loof.png);
	background-size: 100%;
	background-repeat: no-repeat;
}

#header-wrap{
	height: 100%;
	width: 85%;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

header h1{
	//width: 20%;
	text-align: center;
}

header nav{
	width: 70%;
}

header nav ul{
	height: 100%;
	display: flex;
	justify-content: space-between;
}

header nav ul img,#footer-bottom img{
	padding: 0 4px 3px 0;
	vertical-align: bottom;
}

main{
	//width: 1240px;
	max-width: 1240px;
	//min-width: 896px;
	margin: 0 auto;
	background-color: white;
	padding-bottom: 210px;/*.sup-squareのpadding調整分50pxを含む*/
}

#pc-visual{
	width: 100%;
	height: 600px;
	background-image: url(../img/mainvisual.jpg);
	background-size: cover;
	background-position: center center;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	position: relative;
}

#pc-v-top{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 40%;
	margin-left: 40px;
	text-shadow: 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white;
}

#pc-v-top p:first-child{
	font-weight: bold;
	font-size: 1.1rem;
}

#pc-v-bottom{
	margin: 80px 0 80px 40px;
}

#pc-v-pic{
	position: absolute;
	bottom: -53px;
	right: -40px;
}

.h2-wrap{
	text-align: center;
}

h2{
	font-size: 2.4rem;
}

.smaller{
	font-size: 2rem;
}

h3{
	font-size: 1.2rem;
	color: #0B308E;
	text-shadow: 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white;
	margin-bottom: 16px;
}

h4{
	font-size: 1.2rem;
	color: #0B308E;
	text-shadow: 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white, 0 0 2.5px white;
}

#intro,#cando{
	//width: 1080px;
	max-width: 1080px;
	//min-width: 896px;
	margin-left: auto;
	margin-right: auto;
}

/*矢印サークルを内包するpの記述*/
#intro-main p:nth-child(2){
	text-align: center;
	margin-top: 80px;
}

#cando-grid-wrap{
	margin-top: 8px;
	display: grid;
	grid-template-rows: 530px 590px;
	grid-template-columns: repeat(3, 1fr);
}

#cando-grid-wrap img{
	width: 50%;
}

.cando-grid{
	background-repeat: no-repeat;
	background-size: 100% 100%;
	text-align: center;
	padding: 40px 45px;
	box-sizing: border-box;
}

.cando-grid p{
	text-align: justify;
}

.cando-grid:nth-child(odd){
	background-image: url(../img/mat08.png);
}

.cando-grid:nth-child(even){
	background-image: url(../img/mat09.png);
}

#cando .cando-grid img[src="img/lcos_02.jpg"]{
	width: 70%;
}
#cando .cando-grid img[src="img/lcos_03.jpg"]{
	width: 100%;
}
#cando .cando-grid img[src="img/lcos_04.jpg"]{
	width: 95%;
}
#cando .cando-grid img[src="img/lcos_05.jpg"]{
	width: 90%;
}

#support{
	position: relative;/*absolute-ladyの居場所*/
}

#absolute-lady{
	position: absolute;
	top: 60px;
	right: -60px;
	width: 25%;
}

#support-left{
	width: 90%;
}

.sup-round,.sup-square{
	display: flex;
	flex-direction: column;
	align-items: center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.sup-round p,.sup-square p{
	width: 260px;
	text-align: justify;
	margin-top: 20px;
	line-height: 1.7;
}

.sup-round{
	background-image: url(../img/mat15.png);
	padding: 100px;/*background-imageの描画範囲を広げるためpaddingとmarginで相殺かけてる*/
	margin: -100px;
}

#sup-left-first .sup-round{
	width: 50%;
}

.sup-square{
	width: 33.33333%;
	background-image: url(../img/mat17.png);
	padding: 80px;/*background-imageの描画範囲を広げるためpaddingとmarginで相殺かけてる*/
	margin: -80px;
}

#sup-left-first{
	display: flex;
	margin-top: 160px;
}

#support-bottom{
	display: flex;
}

#sup-left-second{
	margin: 160px 0 230px 0;
}

footer{
	//width: 1550px;
	max-width: 1550px;
	//min-width: 896px;
	margin: 0 auto;
	background-color: white;
	text-align: center;
	padding-bottom: 30px;
}

#footer-top{
	background-color: #036EAD;
	color: white;
	position: relative;
	height: 325px;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	box-sizing: border-box;
	padding: 32px 0;
}

/*#footerの後に疑似要素で#footer-topのheightと同じ高さ分下にpositionしてる*/
#footer-top::after{
	position: absolute;
	top: 325px;/*#footer-topのheight*/
	left: 0;
	z-index: 99;
	display: block;
	content: "";
	height: 95px;/*loof.pngのheight*/
	width: 100%;
	background-image: url(../img/loof.png);
	background-size: 100%;
	background-repeat: no-repeat;
}

#tel{
	margin-top: -20px;
}

#tel img{
	height: 3rem;
	vertical-align: text-bottom
}

#tel p{
	margin-top: -8px;
}

#number{
	color: white;
	font-size: 3rem;
}

#footer-bottom{
	display: flex;
	justify-content: center;
	margin: 100px 0 20px 0;
}

#footer-bottom p:first-child{
	margin-right: 80px;
}

small{
	margin-top: 140px;
}

.fullscreenmenu{
	display: none;
}

#pc-v-bottom-sp{
	display: none;
}

.sp{
	display: none;
}