@charset "utf-8";/*################################# 	webフォント読み込み #################################*/@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');/*################################# 	全体 #################################*/html{	font-size:62.5%;}body{	font-family: "Noto Sans JP", serif;	font-optical-sizing: auto;	font-weight: 500;	font-style: normal;	font-size:2rem;	line-height:2;	letter-spacing:0.05em;	color:#333;	background:#fff;}.gothic{	font-family: "Noto Sans JP", serif;	font-optical-sizing: auto;	font-weight: 500;	font-style: normal;}.mincho{	font-family: "Noto Serif JP", serif;	font-optical-sizing: auto;	font-weight: 500;	font-style: normal;}.wrapper{	max-width:1100px;	margin:0 auto;}@media screen and (max-width:768px){	.wrapper{		width:100%;		padding:0 10px;		box-sizing:border-box;	}}.pc{	display:block;}@media screen and (max-width:768px){	.pc{		display:none;	}}input[type="text"],input[type="email"],input[type="password"],textarea{	margin: 0;	padding: 0;	background: none;	border: none;	border-radius: 0;	outline: none;	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;}button{	background-color: transparent;	border: none;	cursor: pointer;	outline: none;	padding: 0;	appearance: none;}img{	max-width:100%;	height:auto;	vertical-align:bottom;}/*################################# 	header #################################*/#header{	background:#4D2B28;	height:80px;	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	align-items: center;	-webkit-align-items: center;	-webkit-justify-content:space-between;	justify-content: space-between;	padding:0 20px;	box-sizing:border-box;}.header__logo{	width:150px;	display:block;}.header__logo img{	width:100%;	height:auto;}.header__sub{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;}.header__tel{	margin-right:24px;}@media screen and (max-width:768px){	.header__tel{		display:none;	}}.tel{	font-size:2.2rem;	color:#fff;	line-height:1.4;}.tel svg{	fill:#fff;	width:18px;	height:auto;	margin-right:5px;}.tel__note{	font-size:1.2rem;	color:#fff;	line-height:1.2;}.header__button{	text-decoration:none;	color:#fff;	width:180px;	border-radius:10px;	height:40px;	line-height:40px;	display:block;	border:#fff 1px solid;	font-size:1.4rem;	text-align:center;}@media screen and (max-width:768px){	.header__button{		width:150px;		border-radius:10px;		height:40px;		line-height:40px;		font-size:1.3rem;	}}/*################################# 	main #################################*/.main{	background:url(../images/main-bg.png)no-repeat;	background-size:cover;	background-position:center center;	padding:60px 0 40px;}@media screen and (max-width:768px){	.main{		padding:30px 0 20px;	}}.main__inner{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	align-items: flex-end;	-webkit-align-items: flex-end;}.main__inner--book{	width:55%;}.main__inner--text{	width:45%;}.main__inner > div img{	width:100%;	height:auto;}/*################################# 	main2 #################################*/.main2{	background:url(../images/main-bg.png)no-repeat;	background-size:cover;	background-position:center center;	padding:60px 0 40px;}@media screen and (max-width:768px){	.main2{		padding:30px 0 20px;	}}.main__inner{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;}.main2__inner--book{	width:60%;}@media screen and (max-width:768px){	.main2__inner--book{		width:100%;		margin:0 auto;	}}.main2__inner--text{	width:40%;}@media screen and (max-width:768px){	.main2__inner--text{		width:80%;		margin:-100px auto 0;	}}.main__inner > div img{	width:100%;	height:auto;}.button{	background:#14A363;	text-align:center;	font-size:2.4rem;	font-weight:600;	height:75px;	line-height:70px;	display:block;	color:#fff;	border-radius:10px;	width:100%;	border-bottom:#0C663E 5px solid;	margin-top:24px;	letter-spacing:0.1em;	text-decoration:none;}@media screen and (max-width:768px){	.main2 .button{		font-size:1.8rem;		height:55px;		line-height:55px;	}}/*################################# 	register #################################*/.register{	background:#fff;	padding:80px 0;}@media screen and (max-width:768px){	.register{		padding:40px 0;	}}.register__form{	max-width:800px;	margin:0 auto;}.regist__title{	text-align:center;	font-size:3rem;	color:#111;	font-weight:600;}@media screen and (max-width:768px){	.regist__title{		font-size:2.2rem;	}}input.regist__input{	border:#39955E 5px solid;	width:100%;	box-sizing:border-box;	height:80px;	line-height:80px;	text-align:center;	font-size:1.8rem;	margin-top:24px;}@media screen and (max-width:768px){	input.regist__input{		border:#39955E 3px solid;		height:60px;		line-height:60px;		font-size:1.6rem;		margin-top:12px;	}}.regist__button{	background:#14A363;	text-align:center;	font-size:3rem;	font-weight:700;	height:107px;	line-height:1em;	display:block;	color:#fff;	border-radius:10px;	width:100%;	border-bottom:#0C663E 7px solid;	margin-top:32px;	letter-spacing:0.1em;}@media screen and (max-width:768px){	.regist__button{		font-size:2rem;		height:85px;		border-radius:10px;		width:100%;		border-bottom:#0C663E 5px solid;		margin-top:16px;	}}.regist__check{	font-size:1.4rem;	text-align:center;	display:block;	margin:15px 0 24px;}.note{	background:#f5f5f5;	padding:24px;	box-sizing:border-box;	font-size:1.6rem;	font-weight:400;	line-height:1.5;}@media screen and (max-width:768px){	.note{		padding:12px;		font-size:1.2rem;	}}/*################################# 	content1 #################################*/.red__text{	color:#A80000;	font-weight:800;}.marker{    background:linear-gradient(transparent 60%, #FCEE21 60%);}.content1{	background:#FBFBF3;	padding:80px 0;}@media screen and (max-width:768px){	.content1{		padding:40px 0;	}}.content__title{	font-size:4rem;	line-height:1.8;	text-align:center;}@media screen and (max-width:768px){	.content__title{		font-size:2.2rem;	}}.content1__text{	text-align:center;	font-size:1.6rem;	margin-top:32px;}@media screen and (max-width:768px){	.content1__text{		font-size:1.4rem;		margin-top:16px;			}}.content1__text2{	background:#4D2B28;	width:500px;	margin:48px auto 0;	color:#fff;	font-size:3rem;	text-align:center;	line-height:1.4;}@media screen and (max-width:768px){	.content1__text2{		max-width:500px;		width:100%;		margin:24px auto 0;		font-size:1.8rem;	}}.content1__text2 span{	font-size:6rem;	line-height:1.2;}@media screen and (max-width:768px){	.content1__text2 span{		font-size:4rem;	}}.content1__title{	border-bottom: solid 3px #CCCCCC;	position: relative;	font-size:2.4rem;}@media screen and (max-width:768px){	.content1__title{		border-bottom: solid 2px #CCCCCC;		font-size:1.6rem;	}}.content1__title:after {	position: absolute;	content: " ";	display: block;	border-bottom: solid 3px #4D2B28;	bottom: -3px;	width: 12%;}@media screen and (max-width:768px){	.content1__title:after {		border-bottom: solid 2px #4D2B28;		bottom: -2px;	}}.content1__title .title_label{	font-size:4rem;	color:#4D2B28;	display:inline-block;	padding:0 25px;}@media screen and (max-width:768px){	.content1__title .title_label{		font-size:3rem;		padding:0;		display:block;	}}.content1__title span small{	font-size:3rem;}@media screen and (max-width:768px){	.content1__title span small{		font-size:2rem;	}}.content1__box{	width:1000px;	margin-top:40px;}@media screen and (max-width:1080px){	.content1__box{		width:100%;		margin-top:40px;	}}@media screen and (max-width:768px){	.content1__box{		width:100%;		margin-top:20px;	}}.content1__box:first-of-type{	margin-top:70px;}@media screen and (max-width:768px){	.content1__box:first-of-type{		margin-top:35px;	}}.content1__body{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	-webkit-justify-content:space-between;	justify-content: space-between;	margin-top:30px;}.content1__body__text{	width:450px;	font-size:1.6rem;}@media screen and (max-width:768px){	.content1__body__text{		width:100%;		font-size:1.4rem;	}}.content1__body__image{	width:450px;}@media screen and (max-width:768px){	.content1__body__image{		width:100%;		margin-top:16px;	}}/*################################# 	content2 #################################*/.content2{	background:#fff;	padding:80px 0;}@media screen and (max-width:768px){	.content2{		padding:40px 0;	}}.content2__text{	text-align:center;	font-size:2.2rem;}@media screen and (max-width:768px){	.content2__text{		font-size:1.8rem;	}}.content2__text2{	margin:80px auto 0;	color:#fff;	font-size:3rem;	text-align:center;	line-height:2.2;}@media screen and (max-width:768px){	.content2__text2{		margin:40px auto 0;		font-size:2rem;	}}.content2__text2 span{	display:inline-block;	background:#4D2B28;	padding: 0 15px;}.content2__book{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	-webkit-justify-content:space-between;	justify-content: space-between;	margin:60px 0 40px;}@media screen and (max-width:768px){	.content2__book{		margin:30px 0 20px;	}}.content2__book img{	width:30%;	max-width:330px;}@media screen and (max-width:768px){	.content2__book img{		width:33%;	}}.content2__text3{	font-size:1.6rem;	font-weight:400;}@media screen and (max-width:768px){	.content2__text3{		font-size:1.4rem;	}}/*################################# 	content3 #################################*/.content3{	background:#fff;	padding:0 0 80px 0;}.book__content{	background:#f5f5f5;	padding:25px 30px;	box-sizing:border-box;	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	-webkit-justify-content:space-between;	justify-content: space-between;	margin-bottom:32px;}@media screen and (max-width:768px){	.book__content{		padding:12px 15px;		margin-bottom:16px;	}}.book__content.book1{	background:#F0F8FF;}.book__content.book2{	background:#FFF0F5;}.book__content.book3{	background:#F0FFF0;}.book__image{	width:253px;}@media screen and (max-width:768px){	.book__image{		max-width:253px;		width:100%;		margin:0 auto;	}}.book__body{	width:calc(100% - 300px);}@media screen and (max-width:768px){	.book__body{		width:100%;	}}.book__title{	font-size:2.4rem;	border-left:#ccc 6px solid;	padding:6px 16px;	box-sizing:border-box;	margin-top:24px;}@media screen and (max-width:768px){	.book__title{		font-size:2rem;		border-left:#ccc 4px solid;		padding:3px 8px;		box-sizing:border-box;		margin-top:12px;	}}.book1 .book__title{	border-left:#191970 6px solid;	color:#191970;}@media screen and (max-width:768px){	.book1 .book__title{		border-left:#191970 4px solid;		color:#191970;	}}.book2 .book__title{	border-left:#A80000 6px solid;	color:#A80000;}@media screen and (max-width:768px){	.book2 .book__title{		border-left:#A80000 4px solid;	}}.book3 .book__title{	border-left:#008000 6px solid;	color:#008000;}@media screen and (max-width:768px){	.book3 .book__title{		border-left:#008000 4px solid;		color:#008000;	}}.book__text{	margin-top:16px;	font-size:1.6rem;	font-weight:400;}@media screen and (max-width:768px){	.book__text{		margin-top:16px;		font-size:1.4rem;	}}/*################################# 	content4 #################################*/.content4{	background:url('../images/head.png')no-repeat;	background-position:center center;	background-size:cover;	padding:80px 0;}@media screen and (max-width:768px){	.content4{		padding:40px 0;	}}.content4-title{	text-align:center;	font-size:4rem;	color:#fff;	line-height:1.5;}@media screen and (max-width:768px){	.content4-title{		font-size:2.4rem;	}}/*################################# 	content5 #################################*/.content5{	padding:80px 0;	background:#fff;}@media screen and (max-width:768px){	.content5{		padding:40px 0;	}}.content5__box{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	-webkit-justify-content:space-between;	justify-content: space-between;}.content5__box__image{	width:500px;}@media screen and (max-width:768px){	.content5__box__image{		width:50%;		margin:0 auto;	}}.content5__box__body{	width:500px;}@media screen and (max-width:768px){	.content5__box__body{		width:100%;	}}.content5__box__text{	font-size:1.8rem;}@media screen and (max-width:768px){	.content5__box__text{		font-size:1.6rem;		margin-top:16px;	}}.content5__box__body .note{	font-size:1.4rem;	margin-top:24px;}/*################################# 	content6 #################################*/.content6{	padding:80px 0;	background:#fff;}@media screen and (max-width:768px){	.content6{		padding:40px 0;	}}.regist__title span span{	font-size:6rem;}@media screen and (max-width:768px){	.regist__title span span{		font-size:4rem;	}}.content6__body{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	-webkit-justify-content:space-between;	justify-content: space-between;	margin:64px 0 32px;}@media screen and (max-width:768px){	.content6__body{		margin:24px 0 16px;	}}.content6__body img{	max-width:330px;	width:30%;}@media screen and (max-width:768px){	.content6__body img{		max-width:250px;		width:100%;		margin:16px auto 0;	}}/*################################# 	content7 #################################*/.content7{	background:#FBFBF3;	padding:80px 0;}@media screen and (max-width:768px){	.content7{		padding:40px 0;	}}.content7__body{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	-webkit-justify-content:space-between;	justify-content: space-between;	margin-top:56px;	margin-bottom:32px;}@media screen and (max-width:768px){	.content7__body{		margin-top:24px;		margin-bottom:16px;	}}.content7__body__text{	max-width:550px;	width:50%;	font-size:1.8rem;}@media screen and (max-width:768px){	.content7__body__text{		max-width:100%;		width:100%;		font-size:1.6rem;	}}.content7__body__image{	max-width:500px;	width:50%;}@media screen and (max-width:768px){	.content7__body__image{		max-width:500px;		width:100%;		margin:24px auto 0;	}}/*################################# 	content8 #################################*/.content8{	background:#F5F5F5;	padding:80px 0;}@media screen and (max-width:768px){	.content8{		padding:40px 0;	}}.service__title.service__free{	text-align:center;	font-size:3rem;	background:#4D2B28;	color:#fff;	margin-top:48px;	padding:8px 0;}@media screen and (max-width:768px){	.service__title.service__free{		font-size:1.8rem;		margin-top:24px;		padding:8px 0;	}}.service__title.service__paid{	text-align:center;	font-size:3rem;	background:#14A363;	color:#fff;	margin-top:48px;	padding:8px 0;}@media screen and (max-width:768px){	.service__title.service__paid{		font-size:1.8rem;		margin-top:24px;		padding:8px 0;	}}.service__box{	background:#fff;	margin:0 auto;	padding:30px 35px;	box-sizing:border-box;		margin-top:16px;	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	-webkit-justify-content:space-between;	justify-content: space-between;}@media screen and (max-width:768px){	.service__box{		padding:15px 20px;	}}.service__box__image{	max-width:400px;	width:40%;}@media screen and (max-width:768px){	.service__box__image{		max-width:100%;		width:100%;		margin:16px auto 0;	}}.service__box__body{	max-width:600px;	width:60%;}@media screen and (max-width:768px){	.service__box__body{		max-width:100%;		width:100%;	}}.service__box__title{	font-size:2.2rem;	border-bottom:#CCCCCC 1px solid;	padding:16px 10px;	box-sizing:border-box;}@media screen and (max-width:768px){	.service__box__title{		font-size:2rem;		padding:8px 5px;		box-sizing:border-box;	}}.service__box__text{	padding:16px 10px;	box-sizing:border-box;	font-size:1.6rem;}@media screen and (max-width:768px){	.service__box__text{		padding:8px 5px;		box-sizing:border-box;		font-size:1.4rem;	}}/*################################# 	content9 #################################*/.content9{	background:#fff;	padding:80px 0;}@media screen and (max-width:768px){	.content9{		padding:40px 0;	}}.question__area{	background:#F5F5F5;	padding:60px 50px;	box-sizing:border-box;	margin-top:40px;}@media screen and (max-width:768px){	.question__area{		padding:30px 10px;		box-sizing:border-box;		margin-top:20px;	}}.question__list{	background:#fff;	padding:40px 20px;	box-sizing:border-box;	margin-top:16px;}@media screen and (max-width:768px){	.question__list{		padding:20px 10px;		box-sizing:border-box;		margin-top:16px;	}}.question__list:first-of-type{	margin-top:0;}.question__list__head{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	align-items: center;	-webkit-align-items: center;}.question__head__mark{	font-size:3rem;	color:#191970;	width:10%;	text-align:center;	line-height:30px;}.question__head__body{	font-size:2rem;	width:90%;	line-height:30px;}@media screen and (max-width:768px){	.question__head__body{		font-size:1.8rem;		width:90%;		line-height:30px;	}}.question__list__answer{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;}.question__answer__mark{	font-size:3rem;	color:#A80000;	width:10%;	text-align:center;}.question__answer__body{	font-size:1.6rem;	width:90%;	font-weight:400;	margin-top:16px;}@media screen and (max-width:768px){	.question__answer__body{		font-size:1.4rem;		margin-top:16px;	}}/*################################# 	contact #################################*/.contact{	background:url('../images/contact_bg.jpg')no-repeat;	background-size:cover;	background-position:center center;	padding:70px 0 60px;}@media screen and (max-width:768px){	.contact{		padding:35px 0 20px;	}}.contact__title{	text-align:center;	font-size:4rem;	line-height:1.5;	color:#111;	font-weight:600;}@media screen and (max-width:768px){	.contact__title{		font-size:2.2rem;	}}.contact__text{	margin-top:24px;	text-align:center;	font-size:2.2rem;}@media screen and (max-width:768px){	.contact__text{		margin-top:16px;		font-size:1.6rem;	}}.contact__text2{	text-align:center;	font-size:1.4rem;}@media screen and (max-width:768px){	.contact__text2{		font-size:1.2rem;	}}.contact__body{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	-webkit-justify-content:space-between;	justify-content: space-between;	margin-top:40px;}.contact__box{	width:50%;	max-width:500px;	background:#fff;	padding:20px 30px;	box-sizing:border-box;	text-align:center;}@media screen and (max-width:768px){	.contact__box{		width:100%;		max-width:100%;		padding:20px 30px;		box-sizing:border-box;		margin-bottom:20px;	}}.contact__box__title{	font-size:2.2rem;}@media screen and (max-width:768px){	.contact__box__title{		font-size:1.8rem;	}}.contact__box__tel{	font-size:6rem;	line-height:1.3;}@media screen and (max-width:768px){	.contact__box__tel{		font-size:3.6rem;	}}.contact__box__tel__note{	font-size:1.2rem;}.contact__button{	background:#14A363;	text-align:center;	font-size:1.9rem;	font-weight:600;	height:75px;	line-height:70px;	display:block;	color:#fff;	border-radius:10px;	width:100%;	border-bottom:#0C663E 5px solid;	margin-top:16px;	letter-spacing:0.1em;	text-decoration:none;}/*################################# 	footer #################################*/#footer{	background:#4D2B28;	padding:80px 0 40px;}@media screen and (max-width:768px){	#footer{		padding:40px 0 20px;	}}.copyright{	background:#4D2B28;	padding:8px 0;	font-size:1.2rem;	color:#fff;	text-align:center;	font-weight:400;}.footer__note{	color:#fff;	font-size:1.4rem;	margin-top:16px;}@media screen and (max-width:768px){	.footer__note{		font-size:1.2rem;		margin-top:16px;	}}.footer__note dt{	font-weight:600;}.footer__note dd{	font-weight:400;}.footer__info{	display:-webkit-flex;	display:-moz-flex;	display:-ms-flex;	display:-o-flex;	display:flex;	-webkit-flex-wrap:wrap;	flex-wrap:wrap;	margin-top:24px;}.footer__info__box1{	width:50%;}@media screen and (max-width:768px){	.footer__info__box1{		width:100%;	}}.footer__info__box1 a{	display:block;	max-width:250px;}.footer__info__box2{	width:50%;}@media screen and (max-width:768px){	.footer__info__box2{		width:100%;	}}.footer__info__box2 ul li{	font-size:1.4rem;	line-height:1.8;	color:#fff;	font-weight:500;}@media screen and (max-width:768px){	.footer__info__box2 ul li{		font-size:1.2rem;	}}.footer__menu{	text-align:center;	margin-top:80px;}.footer__menu li{	display:inline-block;}.footer__menu li a{	color:#fff;	font-size:1.4rem;	padding:0 8px;}.footer__menu li a:hover{	text-decoration:underline;}