@charset "UTF-8";

/* ---------------------------------------------------------
 *	Title
 *---------------------------------------------------------- */

#p-home .title_01 {
	color: #4d4d4d;
	font-size: 16px;
	font-family: "Josefin Sans", sans-serif;
	font-weight: 400;
	letter-spacing: 0.02em;
	margin-bottom: 10px;
}

#p-home .title_01:before {
	content: "";
	display: inline-block;
	width: 17px;
	height: 17px;
	border-radius: 50%;
	background: linear-gradient(45deg, rgb(83, 156, 205) 0%, rgb(214, 231, 247) 50%, rgb(242, 207, 128) 100%);
	margin-right: 10px;
	position: relative;
	bottom: -2px;
}

#p-home .title_02 {
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.12em;
	margin-bottom: 40px;
}

#p-home .title_02 em {
	font-size: 22px;
}

#p-home .title_02 strong {
	color: #055f78;
	font-size: 33px;
	font-weight: 700;
	letter-spacing: 0.08em;
}

#p-home .title_03 {
	max-width: 300px;
	margin: 0 auto;
}

/* ---------------------------------------------------------
 *	Button
 *---------------------------------------------------------- */

#p-home section .button_01 {
	position: relative;
}

#p-home section .button_01 a {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	max-width: 274px;
	height: 62px;
	line-height: 62px;
	display: block;
	background: #1279b2;
	margin: 0 auto;
	border-radius: 5px;
}

#p-home section .button_02 a {
	color: #fff;
	font-weight: 700;
	text-align: center;
	max-width: 213px;
	height: 40px;
	line-height: 40px;
	display: block;
	background: #ebb339;
	margin: 0 auto;
	border-radius: 5px;
}

/* ---------------------------------------------------------
 *	Link
 *---------------------------------------------------------- */

#p-home #link_01,
#p-home #link_02,
#p-home #link_03,
#p-home #link_04,
#p-home #link_05,
#p-home #link_06,
#p-home #link_07,
#p-home #link_08,
#p-home #link_09,
#p-home #link_10 {
	margin-top: -70px;
	padding-top: 70px;
}

/* ---------------------------------------------------------
 *	Main
 *---------------------------------------------------------- */

#p-home #main {
	width: 100%;
	height: 100vh;
	position: relative;
}

#p-home #main:before {
	content: "";
	position: absolute;
	left: 0;
	top: 70px;
	background: url(../img/pic_main_01.jpg) no-repeat center top;
	background-size: cover;
	width: 100%;
	height: calc(100% - 70px);
	border-radius: 17px;
}

#p-home #main .inner {
	width: 100%;
	height: 100vh;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}

#p-home #main .bg_01.active {
	background: #000;
}

#p-home #main .pic_01 {
	max-height: 100vh;
	transition: 0.3s ease;
}

#p-home #main .bg_01.active .pic_01 {
	opacity: 0.3;
}

#p-home #main .pic_01 video {
	min-width: 50%;
	height: 100%;
}

#p-home #main h2 {
	color: #fff;
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 0.1em;
	position: absolute;
	left: 30px;
	bottom: 20%;
	z-index: 2;
}

#p-home #main .scroll {
	color: #fff;
	font-family: "Josefin Sans", sans-serif;
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1;
	content: "";
	position: absolute;
	left: calc(50%);
	bottom: 30px;
	z-index: 2;
}

#p-home #main .inner.active .scroll {
	animation: fadeout 1s ease-in-out forwards;
}

@keyframes fadeout {
	0% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

#p-home #main .scroll:before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 30px;
	width: 1px;
	height: 60px;
	background: #fff;
}

#p-home #main .scroll:after {
	content: "";
	position: absolute;
	left: -3px;
	bottom: 90px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #fff;
	animation: scroll 3s ease-in-out infinite;
}

@keyframes scroll {
	0% {
		bottom: 90px;
		opacity: 0;
	}

	50% {
		bottom: 30px;
		opacity: 1;
	}

	75% {
		bottom: 30px;
		opacity: 1;
	}

	100% {
		bottom: 30px;
		opacity: 0;
	}
}

#p-home #main .scroll span {
	position: relative;
	left: -18px;
}

@media screen and (max-height: 997.539px) {
	#p-home #main .pic_01 {
		max-height: 100%;
	}
}

@media screen and (max-width: 991px) {
	#p-home #main h2 {
		font-size: 21px;
	}
}

@media screen and (max-width: 768px) {
	#p-home #main h2 {
		font-size: 30px;
	}
}

@media screen and (max-width: 540px) {
	#p-home #main h2 {
		font-size: 5.6vw;
	}
}

@media screen and (max-width: 480px) {
	#p-home #main h2 {
		font-size: 5vw;
	}
}

/* ---------------------------------------------------------
 *	Are You Worried?
 *---------------------------------------------------------- */

#p-home section#worried {
	padding: 100px 0 0;
}

#p-home section#worried .inner {
	margin: 0 20px;
}

#p-home section#worried ul {
	text-align: center;
	margin-bottom: 50px;
}

#p-home section#worried ul li {
	font-weight: 500;
	line-height: 1.5;
	margin-bottom: 40px;
	padding-top: 25px;
	background: url(../img/ico_check_01.svg) no-repeat center top;
	background-size: 22px;
}

#p-home section#worried ul li:last-child {
	margin-bottom: 0px;
}

#p-home section#worried ul li strong {
	font-size: 23px;
	font-weight: 700;
	border-bottom: 1px solid #000;
}

#p-home section#worried h3 strong {
	color: #000;
	font-size: 33px;
	font-weight: 700;
}

#p-home section#worried h4 {
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: 0.12em;
	text-align: center;
	margin-bottom: 30px;
	padding-top: 40px;
	background: url(../img/line_01.svg) no-repeat center top;
	background-size: 100%;
}

#p-home section#worried h4 strong {
	font-size: 27px;
	font-weight: 700;
}

/* ---------------------------------------------------------
 *	Our Features
 *---------------------------------------------------------- */

#p-home section#features {
	padding: 100px 0 0;
}

#p-home section#features .inner {
	margin: 0 30px;
}

#p-home section#features .title_02 {
	margin-bottom: 50px;
}

#p-home section#features .list_01 {
	margin: 0 -10px;
	padding: 0 0 100px;
	text-align: center;
}

#p-home section#features .list_01 li .box_01 {
	min-height: 177px;
	background-size: cover !important;
	margin-bottom: 40px;
	padding: 30px 0 20px;
	border-radius: 5px;
}

#p-home section#features .list_01 li:last-child .box_01 {
	margin-bottom: 0;
}

#p-home section#features .list_01 li:nth-child(1) .box_01 {
	background: url(../img/pic_features_01.jpg) no-repeat center center;
}

#p-home section#features .list_01 li:nth-child(2) .box_01 {
	background: url(../img/pic_features_02.jpg) no-repeat center center;
}

#p-home section#features .list_01 li:nth-child(3) .box_01 {
	background: url(../img/pic_features_03.jpg) no-repeat center center;
}

#p-home section#features .list_01 li h4 {
	margin: 0 auto 20px;
}

#p-home section#features .list_01 li:nth-child(1) h4 {
	width: 64px;
}

#p-home section#features .list_01 li:nth-child(2) h4 {
	width: 78px;
}

#p-home section#features .list_01 li:nth-child(3) h4 {
	width: 76px;
}

#p-home section#features .list_01 li h5 {
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	background: rgba(255, 255, 255, 0.82);
	border-radius: 10px;
	margin: 0 40px;
	padding: 20px 20px 30px;
}

#p-home section#features .list_01 li .button_01 a {
	font-size: 14px;
	font-weight: 400;
	height: 39px;
	line-height: 39px;
	max-width: 218px;
	margin-top: -15px;
}

#p-home section#features .list_01 li .button_01 a span {
	padding-right: 17px;
	background: url(../img/ico_arrow_02.svg) no-repeat right center;
	background-size: 5px;
}

#p-home section#features .list_02 li {
	background: linear-gradient(to bottom, rgb(83, 156, 205) 0%, rgb(214, 231, 247) 50%, rgb(242, 207, 128) 100%);
	padding: 50px 20px 100px;
}

#p-home section#features .list_02 li h4 {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 30px;
	padding-left: 105px;
	min-height: 35px;
}

#p-home section#features .list_02 li:nth-child(1) h4 {
	background: url(../img/txt_features_01_02.svg) no-repeat left 15px center;
	background-size: 64px;
}

#p-home section#features .list_02 li:nth-child(2) h4 {
	background: url(../img/txt_features_02_02.svg) no-repeat left 15px center;
	background-size: 78px;
}

#p-home section#features .list_02 li:nth-child(3) h4 {
	background: url(../img/txt_features_03_02.svg) no-repeat left 15px center;
	background-size: 76px;
}

#p-home section#features .list_02 li .frame_01 {
	background: #fff;
	padding: 30px 30px 60px;
	border-radius: 20px;
}

#p-home section#features .list_02 li .frame_01 h5 {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 30px;
	margin-right: -30px;
	padding: 10px 20px;
	background: #3b98d1;
	border-radius: 5px 0 0 5px;
}

#p-home section#features .list_02 li .frame_01 h6 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 20px;
}

#p-home section#features .list_02 li .frame_01 p {
	font-size: 15px;
	padding: 0 0 30px;
}

#p-home section#features .list_02 li .frame_01 .pic_01 {
	margin-bottom: 60px;
}

#p-home section#features .list_02 li .frame_01 .pic_01.space {
	margin-bottom: 100px;
}

#p-home section#features .list_02 li:nth-child(2) .frame_01 .pic_01:last-child {
	margin-bottom: 0;
}

#p-home section#features .list_02 li .frame_01 .pic_01 img {
	border-radius: 5px;
}

#p-home section#features .list_02 li .frame_01 .pic_02 img {
	display: block;
}

#p-home section#features .list_02 li .frame_01 .pic_02 img:nth-child(1) {
	width: 101.47%;
	margin-left: auto;
	position: relative;
	right: -30px;
	border-radius: 20px 0 0 20px;
}

#p-home section#features .list_02 li .frame_01 .pic_02 img:nth-child(2) {
	width: 76.217%;
	margin-top: -30px;
	margin-left: -30px;
	position: relative;
	border-radius: 0 20px 20px 0;
}

#p-home section#features .list_02 li .frame_01 .pic_03 {
	display: flex;
	justify-content: space-between;
}

#p-home section#features .list_02 li .frame_01 .pic_03 div {
	width: 47.608%;
	display: block;
	margin-bottom: 20px;
}

#p-home section#features .list_02 li .frame_01 .pic_03 img {
	border-radius: 10px;
	margin-bottom: 5px;
}

#p-home section#features .list_02 li .frame_01 .pic_03 p {
	font-size: 15px;
	font-weight: 500;
	text-align: center;
	padding: 0;
}

#p-home section#features .list_02 li .frame_01 .pic_03 div:nth-child(2) p {
	color: #006092;
}

/* ---------------------------------------------------------
 *	Contact
 *---------------------------------------------------------- */

#p-home section.contact {
	font-size: 14px;
	font-weight: 500;
	text-align: center;
	border-radius: 20px;
	background: linear-gradient(45deg, rgb(83, 156, 205) 0%, rgb(214, 231, 247) 50%, rgb(242, 207, 128) 100%);
	padding: 2px;
}

#p-home section.contact .tel_web {
	border-radius: 18px;
	background: #fff;
	padding: 25px;
}

#p-home section.contact .tel_web .tel {
	font-size: 37px;
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;
	margin-bottom: 10px;
}

#p-home section.contact .tel_web .contact a {
    color: #fff;
    font-weight: 700;
    text-align: center;
    max-width: 213px;
    height: 40px;
    line-height: 40px;
    display: block;
    background: #1279b2;
    margin: 10px auto 0;
    border-radius: 5px;
}

/* ---------------------------------------------------------
 *	Comparison
 *---------------------------------------------------------- */

#p-home section#comparison {
	text-align: center;
	padding: 80px 0 130px;
	position: relative;
}

#p-home section#comparison h2 {
	text-align: left;
}

#p-home section#comparison h3 {
	text-align: left;
}

#p-home section#comparison h3 em.space {
	margin-left: 3.4em;
}

#p-home section#comparison .pic_01 {
	width: 557px;
	position: absolute;
	right: -240px;
	top: -45px;
}

#p-home section#comparison .inner {
	margin: 0 30px;
	position: relative;
}

#p-home section#comparison table {
	font-size: 15px;
	line-height: 1.5;
	background: linear-gradient(to bottom, rgb(83, 156, 205) 0%, rgb(214, 231, 247) 50%, rgb(242, 207, 128) 100%);
	margin: 0 -10px 90px -10px;
}

#p-home section#comparison table th {
	font-size: 15px;
	border-bottom: 1px solid #999;
	padding: 10px;
}

#p-home section#comparison table th:nth-child(1) {
	background: #fff;
}

#p-home section#comparison table th:nth-child(2) {
	background: #e2e2e3;
}

#p-home section#comparison table th:nth-child(3) {
	color: #fff;
	font-weight: 700;
	width: 50%;
}

#p-home section#comparison table td {
	background: #fff;
	border-bottom: 1px solid #999;
	padding: 10px;
}

#p-home section#comparison table td:first-child {
	font-weight: 700;
	background: #f2f2f2;
	white-space: nowrap;
}

#p-home section#comparison table td:last-child {
	background: none;
	font-weight: 700;
}

#p-home section#comparison table td span {
	color: #006196;
}

#p-home section#comparison h4 {
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 20px;
}

#p-home section#comparison .txt_01 {
	margin-bottom: 20px;
}

#p-home section#comparison .list_01 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}

#p-home section#comparison .list_01 li {
	width: 30.742%;
}

#p-home section#comparison .list_01 li h5 {
	color: #3b98d1;
	font-size: 15px;
	font-weight: 700;
}

#p-home section#comparison .list_01 li img {
	margin-bottom: 10px;
}

#p-home section#comparison .list_01 li p {
	font-size: 15px;
	line-height: 1.5;
}

#p-home section#comparison .contact {
	margin: 0 -10px;
}

/* ---------------------------------------------------------
 *	Greeting
 *---------------------------------------------------------- */

#p-home section#greeting {
	padding: 0 30px 120px;
}

#p-home section#greeting .pic_01 img {
	border-radius: 20px;
	margin-bottom: 30px;
}

#p-home section#greeting .pic_01 p {
	text-align: right;
	margin-bottom: 30px;
}

#p-home section#greeting .pic_01 p ruby {
	font-size: 21px;
	font-weight: 700;
}

#p-home section#greeting .txt_01 p {
	margin-bottom: 60px;
}

#p-home section#greeting .txt_01 dl {
	max-width: 300px;
	margin: 0 auto 60px;
}

#p-home section#greeting .txt_01 dl:last-child {
	margin-bottom: 0;
}

#p-home section#greeting .txt_01 dt {
	font-size: 18px;
	font-weight: 700;
	margin: 0 -10px 10px;
	padding: 0 10px 5px;
	position: relative;
}

#p-home section#greeting .txt_01 dt:before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: linear-gradient(to right, rgb(83, 156, 205) 0%, rgb(214, 231, 247) 50%, rgb(242, 207, 128) 100%);
}

/* ---------------------------------------------------------
 *	Flow
 *---------------------------------------------------------- */

#p-home section#flow {
	padding: 0 0 100px;
}

#p-home section#flow .inner {
	padding: 0 30px;
}

#p-home section#flow h3 {
	font-size: 25px;
	margin-bottom: 20px;
}

#p-home section#flow .bg_01 {
	background: linear-gradient(to bottom, rgb(83, 156, 205) 0%, rgb(214, 231, 247) 50%, rgb(242, 207, 128) 100%);
	margin-bottom: 50px;
	padding: 50px 30px;
}

#p-home section#flow ol li {
	position: relative;
}

#p-home section#flow .frame_01 {
	background: #fff;
	border-radius: 20px;
	margin-bottom: 40px;
	padding: 30px;
}

#p-home section#flow .frame_01:before {
	color: #fff;
	font-size: 30px;
	font-family: "Josefin Sans", sans-serif;
	line-height: 64px;
	text-align: center;
	content: "";
	position: absolute;
	left: 10px;
	top: 10px;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #3b98d1;
}

#p-home section#flow ol li:nth-child(2) .frame_01:before {
	content: "01";
}

#p-home section#flow ol li:nth-child(3) .frame_01:before {
	content: "02";
}

#p-home section#flow ol li:nth-child(4) .frame_01:before {
	content: "03";
}

#p-home section#flow ol li:nth-child(5) .frame_01:before {
	content: "04";
}

#p-home section#flow .frame_01 img {
	border-radius: 5px;
	margin-bottom: 25px;
}

#p-home section#flow .frame_01 h4 {
	font-size: 18px;
	font-weight: 700;
	margin-bottom: 10px;
}

#p-home section#flow .frame_01 p {}

#p-home section#flow .slick-dotted.slick-slider {
	margin-bottom: 0;
}

#p-home section#flow .slick-dots {
	position: static;
}

#p-home section#flow .slick-dots li {
	width: 10px;
	height: 10px;
	margin: 0 8px;
	background: #fff;
	border-radius: 5px;
}

#p-home section#flow .slick-dots li.slick-active {
	background: #71c2c0;
}

#p-home section#flow .contact {
	margin: 0 20px;
}

/* ---------------------------------------------------------
 *	FAQ
 *---------------------------------------------------------- */

#p-home section#faq {
	padding: 0 30px 90px;
}

#p-home section#faq h3 {
	font-size: 25px;
	letter-spacing: 0.05em;
	margin-bottom: 45px;
}

#p-home section#faq ul {
	margin-bottom: 50px;
}

#p-home section#faq ul li {
	margin-bottom: 15px;
}

#p-home section#faq ul li:last-child {
	margin-bottom: 0;
}

#p-home section#faq ul li dt {
	display: flex;
	align-items: flex-start;
	font-size: 16px;
	font-weight: 700;
	padding-bottom: 10px;
	cursor: pointer;
	position: relative;
	z-index: 1;
	background: url(../img/ico_arrow_04.svg) no-repeat right top 10px;
	background-size: 20px !important;
	position: relative;
}

#p-home section#faq ul li.active dt {
	background: url(../img/ico_arrow_03.svg) no-repeat right top 10px;
}

#p-home section#faq ul li dt:before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 2px;
	background: linear-gradient(to right, rgb(83, 156, 205) 0%, rgb(214, 231, 247) 50%, rgb(242, 207, 128) 100%);
}

#p-home section#faq ul li dl em {
	color: #66b8c6;
	font-size: 25px;
	font-family: FOT-筑紫A丸ゴシック Std R;
	line-height: 1;
	text-align: center;
	margin-right: 5px;
}

#p-home section#faq ul li dd {
	display: flex;
	align-items: flex-start;
	background: #fff;
	transition: 0.3s ease;
	opacity: 0;
	height: 0;
	padding-top: 10px;
}

#p-home section#faq ul li.active dd {
	opacity: 1;
	height: auto;
}

/* ---------------------------------------------------------
 *	contact.html
 *---------------------------------------------------------- */

#p-home.p-contact section#form {
	background: #f6f6f6;
	padding: 68px 0 0;
	text-align: left;
}

#p-home.p-contact section#form .inner {
	margin: 0 30px;
}

#p-home.p-contact section#form h2 {
	font-size: 20px;
	font-weight: 500;
	text-align: center;
	letter-spacing: 0.05em;
	border-bottom: 1px solid #3d2610;
	margin-bottom: 20px;
	padding-bottom: 5px;
}

#p-home.p-contact section#form p {
	margin-bottom: 30px;
}

#p-home.p-contact section#form .text-highlight {
	color: #1279B4;
}

#p-home.p-contact section#form .text-highlight a {
	color: #1279B4;
}

#p-home.p-contact section#form .must {
	color: #fff;
	font-weight: 400;
	background-color: #1279B4;
	margin-right: 5px;
	padding: 0 5px;
}

#p-home.p-contact section#form .mailform dt {
	font-weight: 500;
	margin-bottom: 5px;
}

#p-home.p-contact section#form .mailform dd {
	border-bottom: 1px solid #3d2610;
	margin-bottom: 20px;
	padding-bottom: 20px;
}

#p-home.p-contact section#form .mailform .mfp_col10 input,
#p-home.p-contact section#form .mailform .mfp_col10 textarea {
	width: 100%;
}

#p-home.p-contact section#form .mailform .mfp_col5 input {
	width: 50%;
}

#p-home.p-contact section#form .mailform .mfp_col3 input {
	width: 30%;
}

#p-home.p-contact section#form .mailform .checkbox {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#p-home.p-contact section#form .mailform .checkbox div {
	width: 50%;
}

#p-home.p-contact section#form .mfp_buttons button,
#p-home.p-contact section#form .mfp_buttons input {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	text-align: center;
	width: 274px;
	height: 62px;
	line-height: 62px;
	display: block;
	background: #ebb339;
	margin: 0 auto;
	border: none;
	border-radius: 5px;
	cursor: pointer;
}

@media screen and (max-width: 991px) {
	#p-home.p-contact section#form .mailform .checkbox {
		display: block;
	}

	#p-home.p-contact section#form .mailform .checkbox div {
		width: 100%;
	}
}

@media screen and (max-width: 768px) {
	#p-home.p-contact section#form .mailform .checkbox {
		display: flex;
	}

	#p-home.p-contact section#form .mailform .checkbox div {
		width: 50%;
	}
}

@media screen and (max-width: 480px) {
	#p-home.p-contact section#form .mailform .checkbox {
		display: block;
	}

	#p-home.p-contact section#form .mailform .checkbox div {
		width: 100%;
	}
}
/*240405*/
.notice {
	color: #006196;
    padding-left: 1em;
    text-indent: -1em;
    margin: -70px -10px 50px -10px;
    text-align: left;
    font-size: 15px;
    line-height: 1.7;
}