@charset "UTF-8";

#mv {
	padding: 0 1vw;
	background-image: radial-gradient(at 90% 10%, #e6c27b61, transparent 38%), linear-gradient(137deg, #050d1a, #10213f 58%, #1f3f75);
	}

#mv .inner {
	position: relative;
	width: 95%;
	margin: 0 auto;
	padding: 6vw 0;
	}

#mv .inner img {
	position: absolute;
	right: 0px;
	top: 6vw;
	display: block;
	width: 40%;
	box-shadow: 0 0 30px rgba(0,0,0,.5);
	}
@media screen and (max-width:767.98px){
#mv .inner img {
	position: relative;
	right: auto;
	top: auto;
	width: 100%;
	}
}

#mv .inner p.pop {
	display: block;
	width: fit-content;
	margin: 0 0 .75em;
	padding: .1em 1em;
	color: #E6C27B;
	font-size: 1.5vw;
	font-weight: 600;
	background: rgba(255,255,255,.11);
	border: 1px solid rgba(255,255,255,.19);
	border-radius: 20px;
	}
@media screen and (max-width:767.98px){
#mv .inner p.pop {
	font-size: 4vw;
	}
}

#mv .inner p.pop span {
	margin-left: 1em;
	color: #fff;
	font-size: 1vw;
	}
@media screen and (max-width:767.98px){
#mv .inner p.pop span {
	font-size: 3vw;
	}
}

#mv .inner h1 {
	display: block;
	margin: 0 0 .25em;
	color: #ffffff;
	font-size: 4vw;
	font-weight: 600;
	line-height: 1.5em;
	}
@media screen and (max-width:767.98px){
#mv .inner h1 {
	font-size: 8vw;
	}
}

#mv .inner h1 span {
	color: #E6C27B;
	}

#mv .inner h2 {
	display: block;
	margin: 0 0 .5em;
	color: #ffffff;
	font-size: 2vw;
	font-weight: 600;
	line-height: 1.5em;
	}
@media screen and (max-width:767.98px){
#mv .inner h2 {
	font-size: 5vw;
	}
}

#mv .inner p.intro {
	display: block;
	width: 55%;
	margin: 0 0 2em;
	color: #ffffff;
	font-size: 1.4vw;
	line-height: 2em;
	}
@media screen and (max-width:767.98px){
#mv .inner p.intro {
	width: 100%;
	margin: 0 0 4vw;
	font-size: 4vw;
	text-align: justify;
	}
}

#mv .feature {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 0 3vw;
	box-shadow: 0 0 30px rgba(0,0,0,.5);
	}
@media screen and (max-width:767.98px){
#mv .feature {
	margin: 0 0 4vw;
	}
}

#mv .feature div {
	display: block;
	width: 25%;
	padding: 1.5vw 2vw;
	background: #fff;
	border-left: 1px solid #E4EAF2;
	}
@media screen and (max-width:767.98px){
#mv .feature div {
	width: 50%;
	padding: 4vw;
	border-bottom: 1px solid #E4EAF2;
	}
}

#mv .feature div:first-of-type {
	background-image: linear-gradient(0deg, #ffffff, #fff5df);
	}

#mv .feature h3 {
	display: block;
	font-size: 3vw;
	font-weight: 600;
	}
@media screen and (max-width:767.98px){
#mv .feature h3 {
	font-size: 7vw;
	}
}

#mv .feature div:first-of-type h3 {
	color: #BD8B2C;
	}

#mv .feature p {
	display: block;
	font-size: 1vw;
	}
@media screen and (max-width:767.98px){
#mv .feature p {
	font-size: 2.5vw;
	letter-spacing: .05em;
	}
}

#mv a {
	display: block;
	width: fit-content;
	margin: 0 auto;
	padding: 1vw 4vw;
	color: #fff;
	font-size: 2.5vw;
	font-weight: 500;
	text-align: center;
	background-image: linear-gradient(0deg, #BF8D2F, #E3B256);
	}
@media screen and (max-width:767.98px){
#mv a {
	width: 100%;
	margin: 0 0 4vw;
	padding: 4vw 0;
	font-size: 5vw;
	}
}

#mv a:hover {
	background-image: linear-gradient(0deg, #E3AF4D, #FDD384);
	}

#mv a:before {
	content: "\f054" !important;
	font-family: FontAwesome;
	padding: 0 5px 0 0;
	}

/* #strength */
#strength {
	padding: 100px 4vw;
	background: #ffffff;
	}
@media screen and (max-width:767.98px){
#strength {
	padding: 15vw 4vw;
	}
}

#strength div {
	margin: 0 auto;
	width: fit-content;
	}

#strength h2 {
	position: relative;
	display: block;
	margin: 0 0 1.5em;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: .1em;
	text-indent: .1em;
	text-align: center;
	}
@media screen and (max-width:768px){
#strength h2 br {
	display: none;
	}
}
@media screen and (max-width:767.98px){
#strength h2 {
	font-size: 5vw;
	line-height: 1.5em;
	letter-spacing: .07em;
	}
}

#strength h2 span {
	display: block;
	padding-top: 20px;
	font-size: 12px;
	font-weight: 400;
	}

#strength h2:after {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translate(-50%,0);
	content: "";
	width: 280px;
	height: 3px;
	background: #003399;
	}
@media screen and (max-width:767.98px){
#strength h2:after {
	bottom: 35px;
	}
}

#strength p.intro {
	margin: 0;
	font-size: 16px;
	line-height: 2em;
	letter-spacing: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#strength p.intro {
	font-size: 4vw;
	text-align: justify;
	}
}

#strength ul.point {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1340px;
	margin: 50px auto 0;
	}
@media screen and (max-width:768px){
#strength ul.point {
	justify-content: center;
	gap: 1em;
	}
}
@media screen and (max-width:767.98px){
#strength ul.point {
	margin: 1em auto 0;
	gap: 0;
	}
}

#strength ul.point li {
	display: block;
	width: 19%;
	margin: 0 0 20px;
	padding: 2em 1em;
	background: #ffffff;
	border-top: 6px solid;
	border-image: linear-gradient(to right, #BD8B2C 0%, #E1BD70 100%) 1;
	box-shadow: 0 1px 3px rgba(0,0,0,.25);
	}
@media screen and (max-width:768px){
#strength ul.point li {
	width: 30%;
	}
}
@media screen and (max-width:767.98px){
#strength ul.point li {
	width: 100%;
	padding: 6vw 5vw;
	margin: 0 0 1em;
	}
}

#strength ul.point li h3 {
	display: block;
	width: fit-content;
	margin: 0 0 1.5em;
	padding: .5em 1em;
	color: #BD8B2C;
	font-size: 11px;
	text-align: center;
	background: #FFF5DF;
	border-radius: 15px;
	}
@media screen and (max-width:767.98px){
#strength ul.point li h3 {
	margin: 0 auto 1em;
	}
}

#strength ul.point li img {
	display: block;
	margin: 0 0 1.5em;
	}
@media screen and (max-width:767.98px){
#strength ul.point li img {
	margin: 0 auto 1em;
	}
}

#strength ul.point li h4 {
	display: block;
	margin: 0 0 .5em;
	font-size: 20px;
	}
@media screen and (max-width:767.98px){
#strength ul.point li h4 {
	text-align: center;
	}
}

#strength ul.point li p {
	display: block;
	font-size: 16px;
	line-height: 1.5em;
	}
@media screen and (max-width:767.98px){
#strength ul.point li p {
	font-size: 4vw;
	line-height: 2em;
	text-align: justify;
	}
}

#strength ul.point li p span {
	color: #BA7A00;
	}

#strength .column {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1340px;
	margin: 50px auto 0;
	padding: 0;
	}
@media screen and (max-width:767.98px){
#strength .column {
	margin: 1em auto 0;
	}
}

#strength .column .column1 {
	display: block;
	width: 49%;
	margin: 0;
	padding: 28px;
	color: #fff;
	background-image: linear-gradient(126deg, #06101f, #1f3f75);
	box-shadow: 0 1px 3px rgba(0,0,0,.25);
	}
@media screen and (max-width:767.98px){
#strength .column .column1 {
	width: 100%;
	margin: 0 0 1em;
	}
}

#strength .column .column1 h3 {
	display: block;
	margin: 0 0 .5em;
	padding: .25em 0 0 0;
	color: #fff;
	font-size: 20px;
	line-height: 1.75em;
	}
@media screen and (max-width:767.98px){
#strength .column .column1 h3 {
	text-align: justify;
	}
}

#strength .column .column1 p {
	display: block;
	color: #fff;
	font-size: 16px;
	line-height: 1.5em;
	}
@media screen and (max-width:767.98px){
#strength .column .column1 p {
	font-size: 4vw;
	line-height: 2em;
	text-align: justify;
	}
}

#strength .column .column2 {
	display: block;
	width: 49%;
	margin: 0;
	padding: 28px;
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(0,0,0,.25);
	}
@media screen and (max-width:767.98px){
#strength .column .column2 {
	width: 100%;
	}
}

#strength .column .column2 ul {
	display: block;
	margin: 0;
	padding: 0;
	}

#strength .column .column2 li {
	display: block;
	padding: .5em 0;
	color: #172033;
	font-size: 20px;
	font-weight: 500;
	line-height: 1em;
	}
@media screen and (max-width:767.98px){
#strength .column .column2 li {
	padding-left: .4em;
	font-size: 4vw;
	line-height: 1.5em;
	text-indent: -.67em;
	text-align: justify;
	}
}

#strength .column .column2 li:before {
	content: "●";
	color: #BD8B2C;
	}

/* #use */
#use {
	padding: 100px 4vw;
	background: #F9F9F9;
	}
@media screen and (max-width:767.98px){
#use {
	padding: 15vw 4vw;
	}
}

#use div {
	margin: 0 auto;
	width: fit-content;
	}

#use h2 {
	position: relative;
	display: block;
	margin: 0 0 1.5em;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: .1em;
	text-indent: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#use h2 {
	font-size: 5vw;
	line-height: 1.5em;
	letter-spacing: .07em;
	}
}

#use h2 span {
	display: block;
	padding-top: 20px;
	font-size: 12px;
	font-weight: 400;
	}

#use h2:after {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translate(-50%,0);
	content: "";
	width: 280px;
	height: 3px;
	background: #003399;
	}
@media screen and (max-width:767.98px){
#use h2:after {
	bottom: 35px;
	}
}

#use p.intro {
	margin: 0;
	font-size: 16px;
	line-height: 2em;
	letter-spacing: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#use p.intro {
	font-size: 4vw;
	text-align: justify;
	}
}

#use ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1340px;
	margin: 50px auto 0;
	}
@media screen and (max-width:768px){
#use ul {
	justify-content: center;
	gap: 1em;
	}
}
@media screen and (max-width:767.98px){
#use ul {
	margin: 1em auto 0;
	gap: 0;
	}
}

#use ul li {
	display: block;
	width: 19%;
	margin: 0 0 20px;
	padding: 2em 1em;
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(0,0,0,.25);
	}
@media screen and (max-width:768px){
#use ul li {
	width: 30%;
	}
}
@media screen and (max-width:767.98px){
#use ul li {
	width: 100%;
	padding: 6vw 5vw;
	margin: 0 0 1em;
	}
}

#use ul li h3 {
	display: block;
	width: fit-content;
	margin: 0 0 1.5em;
	color: #BD8B2C;
	font-size: 11px;
	}
@media screen and (max-width:767.98px){
#use ul li h3 {
	margin: 0 auto 1em;
	}
}

#use ul li h4 {
	display: block;
	margin: 0 0 .5em;
	font-size: 18px;
	}
@media screen and (max-width:767.98px){
#use ul li h4 {
	text-align: center;
	}
}

#use ul li p {
	display: block;
	font-size: 16px;
	line-height: 1.5em;
	}
@media screen and (max-width:767.98px){
#use ul li p {
	font-size: 4vw;
	line-height: 2em;
	text-align: justify;
	}
}

/* #difference */
#difference {
	padding: 100px 4vw;
	background: #ffffff;
	}
@media screen and (max-width:767.98px){
#difference {
	padding: 15vw 4vw;
	}
}

#difference h2 {
	position: relative;
	display: block;
	margin: 0 0 1.5em;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: .1em;
	text-indent: .1em;
	text-align: center;
	}
@media screen and (max-width:768px){
#difference h2 br {
	display: none;
	}
}
@media screen and (max-width:767.98px){
#difference h2 {
	font-size: 5vw;
	line-height: 1.5em;
	letter-spacing: .07em;
	}
}

#difference h2 span {
	display: block;
	padding-top: 20px;
	font-size: 12px;
	font-weight: 400;
	}

#difference h2:after {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translate(-50%,0);
	content: "";
	width: 280px;
	height: 3px;
	background: #003399;
	}
@media screen and (max-width:767.98px){
#difference h2:after {
	bottom: 35px;
	}
}

#difference p.intro {
	margin: 0;
	font-size: 16px;
	line-height: 2em;
	letter-spacing: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#difference p.intro {
	font-size: 4vw;
	text-align: justify;
	}
}

#difference .column {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1340px;
	margin: 50px auto 0;
	padding: 0;
	}
@media screen and (max-width:767.98px){
#difference .column {
	margin: 1em auto 0;
	}
}

#difference .column .column1 {
	display: block;
	width: 49%;
	margin: 0;
	padding: 28px;
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(0,0,0,.25);
	}
@media screen and (max-width:767.98px){
#difference .column .column1 {
	width: 100%;
	margin: 0 0 1em;
	}
}

#difference .column .column1 h3 {
	display: block;
	margin: 0 0 .5em;
	padding: .25em 0 0 0;
	font-size: 20px;
	line-height: 1.75em;
	}
@media screen and (max-width:767.98px){
#difference .column .column1 h3 {
	text-align: justify;
	}
}

#difference .column .column1 ul {
	display: block;
	margin: 0;
	padding: 0;
	}

#difference .column .column1 li {
	display: block;
	padding: .5em 0;
	padding-left: .4em;
	line-height: 1.5em;
	text-indent: -.67em;
	color: #172033;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.5em;
	}
@media screen and (max-width:767.98px){
#difference .column .column1 li {
	font-size: 4vw;
	text-align: justify;
	}
}

#difference .column .column1 li:before {
	content: "●";
	color: #BD8B2C;
	}


#difference .column .column2 {
	display: block;
	width: 49%;
	margin: 0;
	padding: 28px;
	color: #fff;
	background-image: linear-gradient(126deg, #06101f, #1f3f75);
	box-shadow: 0 1px 3px rgba(0,0,0,.25);
	}
@media screen and (max-width:767.98px){
#difference .column .column2 {
	width: 100%;
	}
}

#difference .column .column2 h3 {
	display: block;
	margin: 0 0 .5em;
	padding: .25em 0 0 0;
	font-size: 20px;
	line-height: 1.75em;
	}
@media screen and (max-width:767.98px){
#difference .column .column2 h3 {
	text-align: justify;
	}
}

#difference .column .column2 ul {
	display: block;
	margin: 0;
	padding: 0;
	}

#difference .column .column2 li {
	display: block;
	padding: .5em 0;
	padding-left: .4em;
	line-height: 1.5em;
	text-indent: -.67em;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.5em;
	}
@media screen and (max-width:767.98px){
#difference .column .column2 li {
	font-size: 4vw;
	text-align: justify;
	}
}

#difference .column .column2 li:before {
	content: "●";
	color: #BD8B2C;
	}

/* #cycle */
#cycle {
	padding: 100px 4vw;
	background: #F9F9F9;
	}
@media screen and (max-width:767.98px){
#cycle {
	padding: 15vw 4vw;
	}
}

#cycle div {
	margin: 0 auto;
	width: fit-content;
	}

#cycle h2 {
	position: relative;
	display: block;
	margin: 0 0 1.5em;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: .1em;
	text-indent: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#cycle h2 {
	font-size: 5vw;
	line-height: 1.5em;
	letter-spacing: .07em;
	}
#cycle h2 br {
	display: none;
	}
}

#cycle h2 span {
	display: block;
	padding-top: 20px;
	font-size: 12px;
	font-weight: 400;
	}

#cycle h2:after {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translate(-50%,0);
	content: "";
	width: 280px;
	height: 3px;
	background: #003399;
	}
@media screen and (max-width:767.98px){
#cycle h2:after {
	bottom: 35px;
	}
}

#cycle p.intro {
	margin: 0;
	font-size: 16px;
	line-height: 2em;
	letter-spacing: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#cycle p.intro {
	font-size: 4vw;
	text-align: justify;
	}
}

#cycle img {
	display: block;
	width: 100%;
	max-width: 1200px;
	margin: 50px auto;
	}
@media screen and (max-width:767.98px){
#cycle img {
	margin: 7vw auto;
	}
}

#cycle a {
	display: block;
	width: fit-content;
	margin: 0 auto;
	padding: 5px 20px;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	text-align: center;
	background-image: linear-gradient(0deg, #BF8D2F, #E3B256);
	}
@media screen and (max-width:767.98px){
#cycle a {
	width: 100%;
	margin: 0 0 4vw;
	padding: 3vw 0;
	font-size: 5vw;
	}
}

#cycle a:hover {
	background-image: linear-gradient(0deg, #E3AF4D, #FDD384);
	}

#cycle a:before {
	content: "\f054" !important;
	font-family: FontAwesome;
	padding: 0 5px 0 0;
	}

/* #sessions */
#sessions {
	padding: 100px 4vw;
	background: #ffffff;
	}
@media screen and (max-width:767.98px){
#sessions {
	padding: 15vw 4vw;
	}
}

#sessions div {
	margin: 0 auto;
	width: fit-content;
	}

#sessions h2 {
	position: relative;
	display: block;
	margin: 0 0 1.5em;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: .1em;
	text-indent: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#sessions h2 {
	font-size: 5vw;
	line-height: 1.5em;
	letter-spacing: .07em;
	}
}

#sessions h2 span {
	display: block;
	padding-top: 20px;
	font-size: 12px;
	font-weight: 400;
	}

#sessions h2:after {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translate(-50%,0);
	content: "";
	width: 280px;
	height: 3px;
	background: #003399;
	}
@media screen and (max-width:767.98px){
#sessions h2:after {
	bottom: 35px;
	}
}

#sessions p.intro {
	margin: 0;
	font-size: 16px;
	line-height: 2em;
	letter-spacing: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#sessions p.intro {
	font-size: 4vw;
	text-align: justify;
	}
}

#sessions ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1340px;
	margin: 50px auto 0;
	}
@media screen and (max-width:768px){
#sessions ul {
	justify-content: center;
	gap: 1em;
	}
}
@media screen and (max-width:767.98px){
#sessions ul {
	margin: 1em auto 0;
	gap: 0;
	}
}

#sessions ul li {
	display: block;
	width: 32%;
	margin: 0 0 20px;
	padding: 1.5em;
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(0,0,0,.25);
	}
@media screen and (max-width:768px){
#sessions ul li {
	width: 30%;
	}
}
@media screen and (max-width:767.98px){
#sessions ul li {
	width: 100%;
	padding: 6vw 5vw;
	margin: 0 0 1em;
	}
}

#sessions ul li h3 {
	display: block;
	width: fit-content;
	margin: 0 0 1.5em;
	padding: .5em 1em;
	color: #BD8B2C;
	font-size: 11px;
	text-align: center;
	background: #FFF5DF;
	border-radius: 15px;
	}
@media screen and (max-width:767.98px){
#sessions ul li h3 {
	margin: 0 auto 1em;
	}
}

#sessions ul li img {
	display: block;
	margin: 0 0 1.5em;
	}
@media screen and (max-width:767.98px){
#sessions ul li img {
	margin: 0 auto 1em;
	}
}

#sessions ul li h4 {
	display: block;
	margin: 0 0 .5em;
	font-size: 20px;
	}
@media screen and (max-width:767.98px){
#sessions ul li h4 {
	text-align: center;
	}
}

#sessions ul li p {
	display: block;
	font-size: 16px;
	line-height: 1.5em;
	}
@media screen and (max-width:767.98px){
#sessions ul li p {
	font-size: 4vw;
	line-height: 2em;
	text-align: justify;
	}
}

#sessions ul li ul {
	display: block;
	margin: 1em 0 0 0;
	padding: 0;
	}

#sessions ul li ul li {
	display: block;
	width: 100%;
	margin: 0;
	padding: 5px 0;
	box-shadow: none;
	}

#sessions ul li ul li:before {
	margin-right: .25em;
	content: "✔︎";
	color: #BD8B2C;
	}

/* #hearing */
#hearing {
	padding: 100px 4vw;
	background: url(../img/bg_darkblue.jpg) center center no-repeat #000000;
	background-size: cover;
	}
@media screen and (max-width:767.98px){
#hearing {
	padding: 15vw 4vw;
	}
}

#hearing div {
	margin: 0 auto;
	width: fit-content;
	}

#hearing h2 {
	position: relative;
	display: block;
	margin: 0 0 1.5em;
	color: #fff;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: .1em;
	text-indent: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#hearing h2 {
	font-size: 5vw;
	line-height: 1.5em;
	letter-spacing: .07em;
	}
#hearing h2 br {
	display: none;
	}
}

#hearing h2 span {
	display: block;
	padding-top: 20px;
	font-size: 12px;
	font-weight: 400;
	}

#hearing h2:after {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translate(-50%,0);
	content: "";
	width: 280px;
	height: 3px;
	background: #003399;
	}
@media screen and (max-width:767.98px){
#hearing h2:after {
	bottom: 35px;
	}
}

#hearing p.intro {
	margin: 0;
	color: #fff;
	font-size: 16px;
	line-height: 2em;
	letter-spacing: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#hearing p.intro {
	font-size: 4vw;
	text-align: justify;
	}
}

#hearing ol {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1340px;
	margin: 50px auto 0;
	counter-reset: listnum;
	}
@media screen and (max-width:768px){
#hearing ol {
	justify-content: center;
	gap: 1em;
	}
}
@media screen and (max-width:767.98px){
#hearing ol {
	margin: 1em auto 0;
	gap: 0;
	}
}

#hearing ol li {
	position: relative;
	display: block;
	width: 19%;
	margin: 0 0 20px;
	padding: 5.5em 1.5em 1.5em;
	background: #ffffff;
	box-shadow: 0 1px 3px rgba(0,0,0,.25);
	list-style-type: none;
	}
@media screen and (max-width:768px){
#hearing ol li {
	width: 30%;
	}
}
@media screen and (max-width:767.98px){
#hearing ol li {
	width: 100%;
	padding: 6vw 5vw;
	margin: 0 0 1em;
	}
}

#hearing ol li:before {
	position: absolute;
	left: 2em;
	top: 3em;
	display: block;
	width: 30px;
	height: 30px;
	color: #ffffff;
	font-size: 12px;
	line-height: 30px;
	counter-increment: listnum;
	content: counter(listnum);
	text-align: center;
	background: #BD8B2C;
	}
@media screen and (max-width:767.98px){
#hearing ol li:before {
	left: 5vw;
	top: 5vw;
	}
}

#hearing ol li h3 {
	display: block;
	margin: 0 0 .5em;
	font-size: 20px;
	}
@media screen and (max-width:767.98px){
#hearing ol li h3 {
	text-align: center;
	}
}

#hearing ol li p {
	display: block;
	font-size: 16px;
	line-height: 1.5em;
	}
@media screen and (max-width:767.98px){
#hearing ol li p {
	font-size: 4vw;
	line-height: 2em;
	text-align: justify;
	}
}

/* #program */
#program {
	padding: 100px 4vw;
	background: #F9F9F9;
	}
@media screen and (max-width:767.98px){
#program {
	padding: 15vw 4vw;
	}
}

#program div {
	margin: 0 auto;
	width: fit-content;
	}

#program h2 {
	position: relative;
	display: block;
	margin: 0 0 1.5em;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: .1em;
	text-indent: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#program h2 {
	font-size: 5vw;
	line-height: 1.5em;
	letter-spacing: .07em;
	}
}

#program h2 span {
	display: block;
	padding-top: 20px;
	font-size: 12px;
	font-weight: 400;
	}

#program h2:after {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translate(-50%,0);
	content: "";
	width: 280px;
	height: 3px;
	background: #003399;
	}
@media screen and (max-width:767.98px){
#program h2:after {
	bottom: 35px;
	}
}

#program p.intro {
	margin: 0;
	font-size: 16px;
	line-height: 2em;
	letter-spacing: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#program p.intro {
	font-size: 4vw;
	text-align: justify;
	}
}

#program dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1200px;
	margin: 50px auto 0;
	}
@media screen and (max-width:767.98px){
#program dl {
	margin: 1em auto 0;
	gap: 0;
	}
}

#program dl dt {
	display: block;
	width: 30%;
	margin: 0;
	padding: 1.5em;
	font-weight: 500;
	background: #EAF1FB;
	border-bottom: 1px solid #E4EAF2;
	}
@media screen and (max-width:767.98px){
#program dl dt {
	width: 100%;
	padding: 3vw 0;
	font-size: 5vw;
	text-align: center;
	}
}

#program dl dd {
	display: block;
	width: 70%;
	margin: 0;
	padding: 1.5em;
	background: #ffffff;
	border-bottom: 1px solid #E4EAF2;
	}
@media screen and (max-width:767.98px){
#program dl dd {
	width: 100%;
	margin: 0 0 1em;
	padding: 5vw;
	font-size: 4vw;
	line-height: 2em;
	text-align: justify;
	}
}

/* #record */
#record {
	padding: 100px 4vw;
	background: #ffffff;
	}
@media screen and (max-width:767.98px){
#record {
	padding: 15vw 4vw;
	}
}

#record div {
	margin: 0 auto;
	width: fit-content;
	}

#record h2 {
	position: relative;
	display: block;
	margin: 0 0 1.5em;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: .1em;
	text-indent: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#record h2 {
	font-size: 5vw;
	line-height: 1.5em;
	letter-spacing: .07em;
	}
}

#record h2 span {
	display: block;
	padding-top: 20px;
	font-size: 12px;
	font-weight: 400;
	}

#record h2:after {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translate(-50%,0);
	content: "";
	width: 280px;
	height: 3px;
	background: #003399;
	}
@media screen and (max-width:767.98px){
#record h2:after {
	bottom: 35px;
	}
}

#record p.intro {
	margin: 0;
	font-size: 16px;
	line-height: 2em;
	letter-spacing: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#record p.intro {
	font-size: 4vw;
	text-align: justify;
	}
}

#record ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 100%;
	max-width: 1100px;
	margin: 50px auto;
	}
@media screen and (max-width:767.98px){
#record ul {
	margin: 1em auto;
	}
}

#record ul li {
	display: block;
	width: 25%;
	padding: 50px 0;
	}
@media screen and (max-width:768px){
#record ul li {
	padding: 25px 0;
	}
}
@media screen and (max-width:767.98px){
#record ul li {
	width: 33%;
	}
}

#record ul li img {
	display: block;
	max-width: 150px;
	max-height: 50px;
	margin: 0 auto;
	}
@media screen and (max-width:768px){
#record ul li img {
	max-width: 100px;
	max-height: 30px;
	}
}

#record ul li img.mitsuifudosan {
	max-height: 100px;
	}
@media screen and (max-width:767.98px){
#record ul li img.mitsuifudosan {
	max-height: 50px;
	}
}

#record p.notice {
	font-size: .8em;
	font-weight: 300;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#record p.notice {
	text-align: left;
	}
}

/* #comparison */
#comparison {
	padding: 100px 4vw;
	background: #F9F9F9;
	}
@media screen and (max-width:767.98px){
#comparison {
	padding: 15vw 4vw;
	}
}

#comparison h2 {
	position: relative;
	display: block;
	margin: 0 0 1.5em;
	font-size: 32px;
	font-weight: 600;
	letter-spacing: .1em;
	text-indent: .1em;
	text-align: center;
	}
@media screen and (max-width:767.98px){
#comparison h2 {
	font-size: 5vw;
	line-height: 1.5em;
	letter-spacing: .07em;
	}
}

#comparison h2 span {
	display: block;
	padding-top: 20px;
	font-size: 12px;
	font-weight: 400;
	}

#comparison h2:after {
	position: absolute;
	left: 50%;
	bottom: 30px;
	transform: translate(-50%,0);
	content: "";
	width: 280px;
	height: 3px;
	background: #003399;
	}
@media screen and (max-width:767.98px){
#comparison h2:after {
	bottom: 35px;
	}
}

#comparison div.tablewrap {
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	}

#comparison table {
	margin: 0 auto;
	width: 100%;
	text-align: center;
	border-collapse: collapse;
	white-space: nowrap;
	}
@media screen and (max-width:767.98px){
#comparison table {
	}
}

#comparison table thead th {
	padding: 1em 1.5em;
	background: #EAEAEA;
	border: 1px solid #fff;
	}
@media screen and (max-width:767.98px){
#comparison table thead th {
	}
}

#comparison table thead th:nth-of-type(1) {
	color: #fff;
	background: #213957;
	}

#comparison table thead th:nth-of-type(2) {
	color: #fff;
	background: #003399;
	}

#comparison table tbody th {
	padding: 1em 0;
	color: #fff;
	background: #213957;
	border: 1px solid #fff;
	}
@media screen and (max-width:767.98px){
#comparison table tbody th {
	}
}


#comparison table tbody td {
	width: 27%;
	padding: 1em;
	background: #F5F5F5;
	border: 1px solid #fff;
	}
@media screen and (max-width:767.98px){
#comparison table tbody td {
	}
}

#comparison table tbody td:nth-of-type(1) {
	background: #E7EFFF;
	}





.cv {
	display: block;
	padding: 50px 0;
	text-align: center;
	}
@media screen and (max-width:767.98px){
.cv {
	padding: 4vw 0;
	}
}

.cv a {
	display: inline-block;
	width: fit-content;
	margin: 0 1vw;
	padding: 2vw;
	font-size: 2.6vw;
	font-weight: 500;
	text-align: center;
	}
@media screen and (max-width:767.98px){
.cv a {
	width: 100%;
	margin: 0 0 4vw;
	padding: 4vw 0;
	font-size: 5vw;
	}
}

.cv a.plan {
	color: #fff;
	background-image: linear-gradient(0deg, #BF8D2F, #E3B256);
	}

.cv a.plan:hover {
	background-image: linear-gradient(0deg, #E3AF4D, #FDD384);
	}

.cv a.hearing {
	color: #000;
	background-image: linear-gradient(0deg, #D6D6D6, #FAFAFA);
	}

.cv a.hearing:hover {
	background-image: linear-gradient(0deg, #E3AF4D, #FDD384);
	}

.cv a:before {
	content: "\f054" !important;
	font-family: FontAwesome;
	padding: 0 5px 0 0;
	}