@charset "UTF-8";
@import "/include/css/common.pc.css";

/* ---------------------------------------------------------
	CSS Document visual
--------------------------------------------------------- */

#visual {
	height: 570px;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
	color: #fff;
	position: relative;
}

#visual:before {
	content: '';
	width: 100%;
	height: 542px;
	background: linear-gradient(to right, #0f88d9 50%, #eceff6 50%);
	position: absolute;
	top: 0;
	left: 0;
}

#visual img {
	max-width: 400%;
	height: 570px;
	transform: translateX(-50%);
	position: relative;
	left: 50%;
}

/* ---------------------------------------------------------
	CSS Document bread
--------------------------------------------------------- */

#bread {
	margin-top: -30px;
	margin-bottom: 30px;
}

/* ---------------------------------------------------------
	CSS Document about
--------------------------------------------------------- */

#about {
	margin-bottom: 40px;
	color: #000;
}

#about img {
	height: 231px;
}

#about .container {
	position: relative;
}

#about ul li {
	height: 75px;
	padding: 0 1em;
	border-radius: 75px;
	background: #f2f2f2;
	font-weight: bold;
	font-size: 27px;
	line-height: 76px;
	position: absolute;
}

#about ul li.about_01 {
	top: 10px;
	left: 110px;
}

#about ul li.about_02 {
	top: 0;
	left: 720px;
}

#about ul li.about_03 {
	top: 130px;
	left: 90px;
}

#about ul li.about_04 {
	top: 130px;
	left: 770px;
}

#about ul li:before {
	display: inline-block;
	vertical-align: top;
	content: '';
	width: 34px;
	height: 75px;
	margin-right: 0.5em;
	background: url(../nas/about_02.png) no-repeat left / 100% auto;
}

/* ---------------------------------------------------------
	CSS Document trouble
--------------------------------------------------------- */

#trouble {
	color: #000;
	position: relative;
	z-index: 0;
}

#trouble h2 {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 63px;
	line-height: 1.5;
}

#trouble h2 .en {
	display: block;
	font-size: 40px;
}

#trouble h2 .ja {
	text-decoration: underline solid #f5ff00 25px;
	text-underline-offset: -0.15em;
}

#trouble p {
	font-size: 20px;
	color: #f0243d;
}

#trouble p:after {
	display: block;
	content: '';
	height: 60px;
	margin-top: 1.5em;
	background: url(../nas/trouble_04.png) no-repeat bottom / auto 100%;
}

#trouble .flex {
	display: flex;
	justify-content: center;
	margin-top: -30px;
	padding: 50px 0;
	background: #f2f2f2;
	position: relative;
	z-index: -1;
}

#trouble figure {
	width: 340px;
}

#trouble figure img {
	height: 166px;
}

#trouble figcaption {
	margin-top: 15px;
	font-weight: bold;
	font-size: 22px;
	line-height: 1.6;
}

#trouble figcaption span {
	display: inline-block;
	vertical-align: top;
	margin: 5px 0;
	font-size: 28px;
	line-height: 1.3;
	color: #0f88d9;
}

/* ---------------------------------------------------------
	CSS Document nas_contact
--------------------------------------------------------- */

.nas_contact {
	padding: 60px 0 50px;
	background: #0f88d9;
	color: #fff;
}

.nas_contact .nas_contact_h2 {
	margin-bottom: 15px;
	font-weight: bold;
	font-size: 42px;
	line-height: 1.3;
}

.nas_contact .nas_contact_p {
	margin-bottom: 30px;
	font-size: 23px;
	line-height: 1.3;
}

.nas_contact .btn {
	margin-bottom: 30px;
}

.nas_contact .btn a {
	display: inline-block;
	vertical-align: top;
	width: 580px;
	height: 82px;
	border-radius: 82px;
	background: #f5ff00;
	box-shadow: 5px 5px 0 #166fb1;
	text-decoration: none;
	font-weight: bold;
	font-size: 30px;
	line-height: 84px;
	color: #000;
	transition: .4s;
}

.nas_contact .btn a:after {
	display: inline-block;
	vertical-align: top;
	content: '';
	width: 32px;
	height: 82px;
	margin: 0 -0.5em 0 0.5em;
	background: url(../nas/contact_01.svg) no-repeat left / 100% auto;
}

.nas_contact .btn a:hover {
	opacity: 0.6;
}

.nas_contact .phone {
	display: inline-block;
	vertical-align: top;
	width: 490px;
	position: relative;
}

.nas_contact .phone:after {
	content: '';
	width: 490px;
	height: 100%;
	border: solid 4px #fff;
	transform: translateX(-50%);
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 1;
}

.nas_contact .phone .row {
	display: inline-block;
	vertical-align: top;
	width: 450px;
	padding: 0 30px;
	background: #0f88d9;
	position: relative;
	z-index: 3;
}

.nas_contact .phone img {
	height: 38px;
	opacity: 1;
}

.nas_contact .nas_contact_time {
	margin-top: 10px;
	font-size: 18px;
	line-height: 1;
}

/* ---------------------------------------------------------
	CSS Document point
--------------------------------------------------------- */

#point {
	padding: 60px 0 70px;
	background: #f5ead9 url(../nas/point_01.png) no-repeat top;
	color: #000;
}

#point h2 {
	height: 97px;
	margin-bottom: 40px;
	background: url(../nas/point_02.png) no-repeat top;
	font-weight: bold;
	font-size: 38px;
	line-height: 74px;
	color: #0f88d9;
}

#point .container {
	display: flex;
	justify-content: space-between;
}

#point .section {
	width: 357px;
	background: #fff;
	box-shadow: 5px 5px 0 #d6d4d4;
	position: relative;
}

#point .num {
	width: 75px;
	height: 74px;
	position: absolute;
	top: -13px;
	left: 17px;
}

#point figure {
	height: 186px;
}

#point dl {
	padding: 20px;
	font-size: 20px;
	line-height: 1.5;
}

#point dt {
	margin-bottom: 15px;
	text-decoration: underline solid #f5ff00 12px;
	text-underline-offset: -0.15em;
	font-weight: bold;
	font-size: 34px;
	line-height: 1;
	color: #0f88d9;
}

/* ---------------------------------------------------------
	CSS Document work
--------------------------------------------------------- */

#work {
	margin-bottom: 90px;
	padding: 70px 0 30px;
	background: #f2f2f2;
	color: #000;
}

#work .container {
	width: 950px;
}

#work h2 {
	margin-bottom: 70px;
	text-decoration: underline solid #0f88d9 4px;
	text-underline-offset: 0.45em;
	font-weight: bold;
	font-size: 38px;
	line-height: 1;
}

#work .section {
	margin-bottom: 40px;
	padding-bottom: 30px;
	background: #fff;
	box-shadow: 5px 5px 0 #d6d4d4;
}

#work .flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	flex-flow: row-reverse;
	margin-bottom: 30px;
	text-align: left;
	position: relative;
}

#work figure img {
	width: 514px;
	height: 324px;
}

#work .num img {
	width: 132px;
	height: 37px;
	position: absolute;
	top: 20px;
	right: 0;
}

#work .row {
	width: 350px;
	margin-left: 50px;
}

#work .name {
	margin-bottom: 30px;
	text-decoration: underline solid #f5ff00 4px;
	text-underline-offset: 0.2em;
	font-weight: bold;
	font-size: 40px;
	line-height: 1.5;
}

#work .meta {
	padding: 20px 0;
	border-top: dotted 2px #000;
	border-bottom: dotted 2px #000;
}

#work .meta dl {
	display: flex;
	align-items: center;
	font-size: 18px;
	line-height: 1.5;
}

#work .meta dt {
	width: 30px;
	margin-right: 10px;
	text-align: center;
}

#work .meta dt img {
	height: 27px;
}

#work .meta .time {
	margin-top: 10px;
}

#work .meta .time dt img {
	height: 23px;
}

#work .meta .time dd {
	font-size: 22px;
}

#work .comment dl {
	display: flex;
	align-items: center;
	margin: 0 50px;
	font-size: 18px;
	line-height: 1.5;
}

#work .comment dt {
	height: 32px;
	margin-right: 15px;
	padding: 0 1em;
	border-radius: 7px;
	background: #0f88d9;
	text-align: center;
	font-size: 19px;
	line-height: 34px;
	color: #fff;
}

#work .comment dd {
	flex: 1;
	text-align: left;
}

/* ---------------------------------------------------------
	CSS Document angel
--------------------------------------------------------- */

#angel {
	padding-bottom: 80px;
	background: #d3edfb;
	color: #000;
}

#angel .summary {
	background: #fff;
}

#angel .summary h2 {
	margin-bottom: 60px;
	text-decoration: underline solid #0f88d9 4px;
	text-underline-offset: 0.45em;
	font-weight: bold;
	font-size: 38px;
	line-height: 1;
}

#angel .summary p {
	display: inline-block;
	vertical-align: top;
	width: 960px;
	margin-bottom: 50px;
	text-align: justify;
	font-size: 20px;
}

#angel .package {
	margin-bottom: 50px;
	background: url(../nas/angel_07.png) no-repeat top;
}

#angel .package h3 {
	margin-bottom: 50px;
	font-weight: bold;
	font-size: 30px;
	line-height: 1;
	position: relative;
	z-index: 0;
}

#angel .package h3:before {
	content: '';
	width: 490px;
	height: 2px;
	background: #000;
	transform: translateY(-50%) translateX(-50%);
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
}

#angel .package h3 span {
	display: inline-block;
	vertical-align: top;
	padding: 0 1em;
	background: #fff;
}

#angel .package figure {
	height: 609px;
}

#angel .search {
	margin-bottom: 50px;
}

#angel .search .container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-flow: row-reverse;
	width: 1170px;
}

#angel .search figure {
	height: 508px;
}

#angel .search .row {
	width: 386px;
	padding: 1px 0 20px;
	border-top: dotted 2px #000;
	border-bottom: dotted 2px #000;
}

#angel .search .check {
	display: inline-block;
	vertical-align: top;
	margin: -13px 0 10px;
	padding: 0 0.5em;
	background: #d3edfb;
	font-weight: bold;
	font-size: 24px;
	line-height: 1;
	color: #f0243d;
}

#angel .search h3 {
	margin-bottom: 20px;
	text-decoration: underline solid #f5ff00 15px;
	text-underline-offset: -0.15em;
	font-weight: bold;
	font-size: 34px;
	line-height: 1;
}

#angel .search p {
	text-align: justify;
	font-size: 18px;
	line-height: 1.8;
}

#angel .model {
	display: flex;
	justify-content: space-between;
}

#angel .model figure {
	width: 184px;
	overflow: hidden;
	padding: 20px 0;
	border-radius: 8px;
	background: #fff;
	box-shadow: 5px 5px 0 #d6d4d4;
	font-weight: bold;
	font-size: 18px;
	line-height: 1.3;
	position: relative;
}

#angel .model figure:after {
	content: '';
	width: 60px;
	height: 60px;
	background: #0f88d9;
	transform: rotate(45deg);
	position: absolute;
	top: -34px;
	left: -34px;
}

#angel .model .find {
	transition: .4s;
}

#angel .model .find:hover {
	opacity: 0.6;
}

#angel .model figure img {
	height: 90px;
	margin-bottom: 15px;
}

#angel .model figure a {
	text-decoration: none;
	color: #000;
}

/* ---------------------------------------------------------
	CSS Document flow
--------------------------------------------------------- */

#flow {
	margin-bottom: 90px;
	padding: 80px 0 1px;
	background: #f2f2f2;
	color: #000;
}

#flow .container {
	width: 1100px;
}

#flow h2 {
	margin-bottom: 60px;
	text-decoration: underline solid #0f88d9 4px;
	text-underline-offset: 0.45em;
	font-weight: bold;
	font-size: 38px;
	line-height: 1;
}

#flow .notice {
	display: inline-block;
	vertical-align: top;
	margin-bottom: 30px;
	padding: 2px;
	border: solid 3px #ef233c;
	font-weight: bold;
	font-size: 38px;
	color: #ef233c;
}

#flow .notice p {
	height: 66px;
	padding: 0 1em;
	border: solid 2px #ef233c;
	line-height: 64px;
}

#flow .summary {
	margin-bottom: 60px;
	text-align: justify;
	font-size: 20px;
}

#flow .article {
	margin-bottom: 90px;
	padding: 1px 60px 60px;
	background: #fff;
	box-shadow: 5px 5px 0 #d6d4d4;
}

#flow h3 {
	display: inline-block;
	vertical-align: top;
	height: 63px;
	margin: -30px 0 30px;
	padding: 0 1em;
	font-weight: bold;
	font-size: 34px;
	line-height: 64px;
	color: #fff;
	position: relative;
	z-index: 0;
}

#flow h3 i {
	margin-right: 1em;
	font-size: 30px;
	color: #f5ff00;
}

#flow h3:before {
	content: '';
	width: 100%;
	height: 100%;
	background: #166fb1;
	transform: skewX(-20deg);
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
}

#flow .comment {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 30px;
}

#flow .comment p {
	width: 810px;
	text-align: justify;
	font-size: 20px;
	line-height: 1.8;
}

#flow .comment figure {
	width: 150px;
}

/* flow_01 */
#flow .flow_01 .comment img {
	height: 131px;
}

#flow .flow_01 .list {
	margin-bottom: 35px;
	padding: 20px 50px;
	border-radius: 10px;
	background: #e1f1fd;
}

#flow .flow_01 .list dl {
	display: flex;
	text-align: left;
	font-size: 18px;
	line-height: 1.7;
}

#flow .flow_01 .list dt {
	white-space: nowrap;
}

#flow .flow_01 .list dt:before {
	display: inline-block;
	vertical-align: -0.05em;
	content: '';
	width: 16px;
	height: 16px;
	margin-right: 10px;
	border-radius: 100%;
	background: #166fb1;
}

#flow .flow_01 .contact_title {
	margin-bottom: 25px;
	padding-bottom: 25px;
	border-bottom: solid 2px #d6d4d4;
	font-weight: bold;
	font-size: 27px;
	line-height: 1;
	color: #166fb1;
}

#flow .flow_01 .contact {
	display: flex;
	justify-content: space-between;
	position: relative;
}

#flow .flow_01 .contact:before {
	content: '';
	width: 2px;
	height: 100%;
	background: #d6d4d4;
	transform: translateX(-50%);
	position: absolute;
	left: 50%;
	top: 0;
}

#flow .flow_01 .contact dl {
	width: 50%;
	font-size: 16px;
	line-height: 1.4;
}

#flow .flow_01 .contact dt {
	margin-bottom: 15px;
	font-weight: bold;
	font-size: 24px;
}

#flow .flow_01 .contact_phone a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 61px;
	margin-bottom: 15px;
}

#flow .flow_01 .contact_phone img {
	height: 39px;
	opacity: 1;
}

#flow .flow_01 .contact_form a {
	display: inline-block;
	vertical-align: top;
	width: 358px;
	height: 58px;
	margin-bottom: 20px;
	border-radius: 58px;
	background: #f5ff00;
	box-shadow: 5px 5px 0 #bec600;
	text-decoration: none;
	font-weight: bold;
	font-size: 22px;
	line-height: 62px;
	color: #000;
	transition: .4s;
}

#flow .flow_01 .contact_form a:after {
	display: inline-block;
	vertical-align: top;
	content: '';
	width: 20px;
	height: 58px;
	margin: 0 -0.5em 0 0.5em;
	background: url(../nas/contact_01.svg) no-repeat left / 100% auto;
}

#flow .flow_01 .contact_form a:hover {
	opacity: 0.6;
}

/* flow_02 */
#flow .flow_02 .comment img {
	height: 89px;
}

#flow .flow_02 .list {
	display: flex;
	align-items: center;
	overflow: hidden;
	border-radius: 10px;
	background: #e1f1fd;
}

#flow .flow_02 .list iframe {
	vertical-align: top;
	width: 296px;
	height: 176px;
	overflow: hidden;
	border: 0;
}

#flow .flow_02 .list .row {
	margin-left: 45px;
	text-align: left;
	font-size: 16px;
}

#flow .flow_02 .list dl {
	display: flex;
	font-size: 18px;
	line-height: 1.7;
}

#flow .flow_02 .list dt {
	margin-right: 1em;
	white-space: nowrap;
}

#flow .flow_02 .list dd a {
	text-decoration: none;
	color: #000;
}

#flow .flow_02 .list p {
	margin-top: 5px;
}

/* flow_03 */
#flow .flow_03 .comment img {
	height: 114px;
}

#flow .flow_03 .list {
	display: flex;
	align-items: center;
	overflow: hidden;
	margin-bottom: 40px;
	border-radius: 10px;
	background: #e1f1fd;
}

#flow .flow_03 .list img {
	width: 296px;
	height: 167px;
}

#flow .flow_03 .list .row {
	margin-left: 45px;
	text-align: left;
	font-size: 16px;
	line-height: 1.6;
}

#flow .flow_03 .list p {
	margin-bottom: 5px;
	font-weight: bold;
	font-size: 20px;
}

#flow .flow_03 .list dl {
	display: flex;
	font-size: 18px;
}

#flow .flow_03 .list dt {
	white-space: nowrap;
}

#flow .flow_03 .point {
	padding: 30px;
	border-radius: 10px;
	border: solid 2px #c7c7c7;
	background: url(../nas/flow_12.png) top;
}

#flow .flow_03 .point h4 {
	margin-bottom: 15px;
	text-align: left;
	font-weight: bold;
	font-size: 24px;
	line-height: 30px;
	color: #e99005;
}

#flow .flow_03 .point h4 img {
	height: 28px;
	margin-right: 15px;
}

#flow .flow_03 .point p {
	text-align: justify;
	font-size: 18px;
	line-height: 1.8;
}

#flow .flow_03 .point p span {
	text-decoration: underline solid #f5ff00 9px;
	text-underline-offset: -0.15em;
	font-weight: bold;
	color: #ef233c;
}

#flow .flow_03 .btn a {
	display: inline-block;
	vertical-align: top;
	width: 502px;
	height: 56px;
	border-radius: 56px;
	background: #f5ff00;
	box-shadow: 5px 5px 0 #bec600;
	text-decoration: none;
	font-weight: bold;
	font-size: 20px;
	line-height: 60px;
	color: #000;
	transition: .4s;
}

#flow .flow_03 .btn a:after {
	display: inline-block;
	vertical-align: top;
	content: '';
	width: 20px;
	height: 58px;
	margin: 0 -0.5em 0 0.5em;
	background: url(../nas/contact_01.svg) no-repeat left / 100% auto;
}

#flow .flow_03 .btn a:hover {
	opacity: 0.6;
}

/* flow_04 */
#flow .flow_04 .comment img {
	height: 98px;
}

#flow .flow_04 .list {
	display: flex;
	align-items: center;
	margin-bottom: 40px;
	padding: 40px 0;
	border-radius: 10px;
	background: #e1f1fd;
	position: relative;
}

#flow .flow_04 .list:after {
	content: '';
	width: 40px;
	height: 250px;
	background: url(../nas/flow_03.svg) no-repeat center / 40px auto;
	transform: translateX(-50%);
	position: absolute;
	top: 106px;
	left: 50%;
}

#flow .flow_04 .list figure {
	width: 50%;
}

#flow .flow_04 .list figure figcaption {
	display: inline-block;
	vertical-align: top;
	min-width: 260px;
	height: 46px;
	margin-bottom: 20px;
	padding: 0 1em;
	border-radius: 7px;
	background: #0f88d9;
	font-weight: bold;
	font-size: 20px;
	line-height: 48px;
	color: #fff;
}

#flow .flow_04 .list figure img {
	height: 250px;
}

#flow .flow_04 .youtube p {
	margin-bottom: 30px;
	text-decoration: underline solid #f5ff00 20px;
	text-decoration-skip-ink: none;
	text-underline-offset: -0.25em;
	font-weight: bold;
	font-size: 40px;
	line-height: 1.5;
}

#flow .flow_04 .youtube p:before {
	display: block;
	content: '';
	height: 40px;
	margin-bottom: 0.5em;
	background: url(../nas/trouble_04.png) no-repeat bottom / auto 100%;
}

#flow .flow_04 .youtube .iframe {
	display: inline-block;
	vertical-align: top;
	width: 810px;
	height: 450px;
	margin-bottom: 30px;
	background: #000;
}

#flow .flow_04 .youtube iframe {
	vertical-align: top;
	width: 100%;
	height: 100%;
	overflow: hidden;
	border: 0;
}

/* ---------------------------------------------------------
	CSS Document comparison
--------------------------------------------------------- */

#comparison {
	margin-bottom: 80px;
	color: #000;
}

#comparison .container {
	width: 1130px;
}

#comparison h2 {
	margin-bottom: 60px;
	text-decoration: underline solid #0f88d9 4px;
	text-underline-offset: 0.45em;
	font-weight: bold;
	font-size: 38px;
	line-height: 1;
}

#comparison table {
	width: 100%;
	margin-bottom: 50px;
	background: #fff;
	box-shadow: 7px 4px 0 #d6d4d4;
}

#comparison th.th1 {
	width: 41%;
	height: 74px;
	background: url(../nas/comparison_05.png);
	font-weight: bold;
	font-size: 28px;
	line-height: 76px;
}

#comparison th.comparison_02 {
	background: url(../nas/comparison_06.png);
	color: #fff;
}

#comparison th.th2 {
	box-shadow: 3px -3px 0 0 #d6d4d4 inset;
	background: #f6f6f6;
	font-weight: normal;
	font-size: 19px;
	line-height: 1;
}

#comparison th.th3 {
	box-shadow: 3px -3px 0 0 #d6d4d4 inset;
	position: relative;
}

#comparison th.th3:after {
	content: '';
	width: 100%;
	height: 3px;
	background: #d6d4d4;
	position: absolute;
	top: 0;
	left: 0;
}

#comparison td {
	padding: 20px;
	box-shadow: 3px -3px 0 0 #d6d4d4 inset;
	text-align: left;
	font-size: 19px;
	line-height: 1.5;
}

#comparison td dl {
	display: flex;
	align-items: center;
	min-height: 100px;
}

#comparison td dt {
	width: 45px;
	text-align: center;
}

#comparison td dt img {
	height: 40px;
}

#comparison td dd {
	flex: 1;
	margin-left: 15px;
}

#comparison p {
	display: inline-block;
	vertical-align: top;
	width: 970px;
	text-align: justify;
	font-size: 20px;
	line-height: 1.5;
}

/* ---------------------------------------------------------
	CSS Document review
--------------------------------------------------------- */

#review {
	padding: 80px 0;
	background: url(../nas/review_02.png);
}

#review p {
	margin-bottom: 40px;
	text-decoration: underline solid #f5ff00 12px;
	text-decoration-skip-ink: none;
	text-underline-offset: -0.15em;
	font-weight: bold;
	font-size: 30px;
	line-height: 1;
	color: #000;
}

#review .link a {
	display: flex;
	width: 870px;
	overflow: hidden;
	margin: 0 auto;
	border-radius: 10px;
	border: solid 3px #0f88d9;
	background: #fff;
	box-shadow: 5px 5px 0 #0371bb;
	text-decoration: none;
	color: #000;
	transition: .4s;
}

#review .link a:hover {
	opacity: 0.6;
}

#review .link img {
	width: 486px;
	height: 140px;
}

#review .link span {
	display: flex;
	align-items: center;
	margin-left: 30px;
	text-decoration: none;
	text-align: left;
	font-weight: bold;
	font-size: 24px;
	line-height: 1.5;
	color: #000;
	position: relative;
}

#review .link span:before {
	display: inline-block;
	vertical-align: top;
	content: '';
	width: 69px;
	height: 140px;
	margin-right: 0.8em;
	background: url(../nas/review_03.svg) no-repeat left / 100% auto;
}

#review .link span:after {
	display: inline-block;
	vertical-align: top;
	content: '';
	width: 32px;
	height: 140px;
	margin-left: 0.8em;
	background: url(../nas/review_04.svg) no-repeat left / 100% auto;
}

/* ---------------------------------------------------------
	CSS Document price
--------------------------------------------------------- */

#price {
	margin: 90px 0;
	color: #000;
}

#price .container {
	width: 960px;
}

#price h2 {
	margin-bottom: 60px;
	text-decoration: underline solid #0f88d9 4px;
	text-underline-offset: 0.45em;
	font-weight: bold;
	font-size: 38px;
	line-height: 1;
}

#price p {
	margin-bottom: 40px;
	text-align: justify;
	font-size: 20px;
	line-height: 1.7;
}

#price p span {
	font-size: 17px;
}

#price .table1 {
	border: solid 3px #d6d4d4;
	background: #fff;
	box-shadow: 5px 5px 0 #d6d4d4;
	position: relative;
}

#price .table1:before {
	content: '';
	width: 348px;
	height: 100%;
	border: solid 3px #ef233c;
	position: absolute;
	top: -2px;
	right: -2px;
}

#price .table1:after {
	content: '';
	width: 82px;
	height: 82px;
	background: url(../nas/price_01.png) no-repeat 0 0;
	position: absolute;
	top: -41px;
	right: 280px;
}

#price .table1 table {
	width: 100%;
}

#price .table1 .th1 {
	width: 252px;
	height: 74px;
	background: #e1e1e1;
	font-weight: bold;
	font-size: 24px;
	line-height: 1;
}

#price .table1 .th2 {
	width: 350px;
	height: 74px;
	background: url(../nas/comparison_05.png);
	font-weight: bold;
	font-size: 28px;
	line-height: 1;
}

#price .table1 .th3 {
	width: 350px;
	height: 74px;
	background: url(../nas/comparison_06.png);
	font-weight: bold;
	font-size: 28px;
	line-height: 1;
	color: #fff;
}

#price .table1 .th4 {
	height: 74px;
	background: #f2f2f2;
	font-weight: bold;
	font-size: 20px;
	line-height: 1;
}

#price .table1 .tr2 {
	border-bottom: dotted 3px #d6d4d4;
}

#price .table1 .td1 {
	font-size: 20px;
}

#price .table1 .td2 {
	font-weight: bold;
	font-size: 25px;
	color: #ef233c;
}

#price .table1 .td3 span {
	display: inline-block;
	vertical-align: top;
	text-align: left;
	font-size: 18px;
	line-height: 1.5;
}

#price .table1 .td4 span {
	display: inline-block;
	vertical-align: top;
	text-align: left;
	font-weight: bold;
	font-size: 18px;
	line-height: 1.5;
	color: #ef233c;
}

/* ---------------------------------------------------------
	CSS Document support
--------------------------------------------------------- */

#support {
	padding: 90px 0 80px;
	background: url(../nas/support_03.png) top;
	color: #000;
}

#support .container {
	width: 1000px;
}

#support h2 {
	margin-bottom: 50px;
	text-decoration: underline solid #f5ff00 0.5em;
	text-decoration-skip-ink: none;
	text-underline-offset: -0.25em;
	font-weight: bold;
	font-size: 38px;
	line-height: 1;
}

#support .flex {
	display: flex;
	justify-content: space-between;
}

#support .section {
	width: 472px;
}

#support figure {
	position: relative;
	z-index: 0;
}

#support figcaption {
	display: inline-block;
	vertical-align: top;
	width: 404px;
	height: 51px;
	border-radius: 51px;
	background: #e99005;
	box-shadow: 3px 3px 0 #c77f0f;
	text-decoration: none;
	font-weight: bold;
	font-size: 23px;
	line-height: 54px;
	color: #fff;
}

#support figure img {
	height: 234px;
	margin-top: -25px;
	border-radius: 15px;
	position: relative;
	z-index: -1;
}

#support p {
	margin-top: 15px;
	text-align: justify;
	font-size: 18px;
	line-height: 1.5;
}

#support p span {
	font-size: 13px;
}

/* ---------------------------------------------------------
	CSS Document repeater
--------------------------------------------------------- */

#repeater {
	margin-bottom: 90px;
	padding: 90px 0;
	background: #eef7fb;
	color: #000;
	position: relative;
	z-index: 0;
}

#repeater .bg {
	min-width: 1800px;
	width: 100%;
	height: 560px;
	transform: translateX(-50%);
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: -1;
}

#repeater .bg .figure_01 {
	position: absolute;
	top: 0;
	left: 0;
}

#repeater .bg .figure_02 {
	position: absolute;
	top: 0;
	right: 0;
}

#repeater .nth1 {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 28px;
	line-height: 1.5;
}

#repeater .nth2 {
	display: inline-block;
	vertical-align: top;
	margin-bottom: 30px;
	text-decoration: underline solid #f5ff00 0.5em;
	text-decoration-skip-ink: none;
	text-underline-offset: -0.2em;
	font-weight: bold;
	font-size: 34px;
	line-height: 1.5;
	color: #ef233c;
	position: relative;
}

#repeater .nth2:before {
	content: '';
	width: 2px;
	height: 120px;
	background: #000;
	transform: rotate(-25deg);
	position: absolute;
	top: 0;
	left: -20px;
}

#repeater .nth2:after {
	content: '';
	width: 2px;
	height: 120px;
	background: #000;
	transform: rotate(25deg);
	position: absolute;
	top: 0;
	right: -20px;
}

#repeater .nth3 {
	margin-bottom: 20px;
	height: 54px;
	background: url(../nas/repeater_09.png) no-repeat bottom;
	font-weight: bold;
	font-size: 30px;
	line-height: 52px;
	color: #fff;
}

#repeater .repeater_01 {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

#repeater .repeater_01 figure {
	width: 348px;
	overflow: hidden;
	border-radius: 10px;
	border: solid 3px #d6d4d4;
	background: #fff;
	box-shadow: 5px 5px 0 #d6d4d4;
}

#repeater .repeater_01 figure img {
	height: 172px;
}

#repeater .repeater_01 figcaption {
	padding: 15px 0 10px;
	font-weight: bold;
	font-size: 22px;
	line-height: 1.4;
	color: #ef233c;
}

#repeater .nth4 {
	margin-bottom: 40px;
	font-weight: bold;
	font-size: 28px;
	line-height: 1.6;
}

#repeater .nth4 span {
	font-size: 36px;
	color: #ef233c;
}

#repeater .repeater_02 ul {
	display: flex;
	justify-content: space-between;
	justify-content: center;
	margin-bottom: 40px;
}

#repeater .repeater_02 li {
	width: 484px;
	margin: 0 10px;
	padding: 30px 0;
	border-radius: 50%;
	border: solid 2px #d6d4d4;
	background: #fff;
	box-shadow: 3px 3px 0 #d6d4d4;
	font-weight: bold;
	font-size: 30px;
	color: #0f88d9;
	position: relative;
}

#repeater .repeater_02 li:after {
	content: '';
	width: 70px;
	height: 70px;
	background: url(../nas/repeater_07.svg) no-repeat 0 0 / auto 100%;
	position: absolute;
	top: -10px;
	left: 50px;
}

#repeater .repeater_02 li:nth-of-type(2):after {
	background-image: url(../nas/repeater_08.svg);
}

#repeater .nth5 {
	margin-bottom: 20px;
	text-decoration: underline solid #f5ff00 0.5em;
	text-decoration-skip-ink: none;
	text-underline-offset: -0.2em;
	font-weight: bold;
	font-size: 34px;
	line-height: 1.6;
}

#repeater .nth6 {
	font-weight: bold;
	font-size: 26px;
	line-height: 1.6;
}


/* ---------------------------------------------------------
	CSS Document case
--------------------------------------------------------- */

#case {
	margin-bottom: 80px;
}

#case h2 {
	margin-bottom: 30px;
	font-weight: bold;
	font-size: 38px;
	line-height: 1;
	color: #000;
}

#case .list ul {
	font-size: 0;
}

#case .list li {
	display: inline-block;
	vertical-align: top;
	width: 260px;
	margin-right: 20px;
	margin-bottom: 40px;
}

#case .list li:nth-child(4n) {
	margin-right: 0;
}

#case .find {
	height: 275px;
	background: #f5f5f5;
	text-align: left;
	position: relative;
}

#case .find img {
	width: 260px;
	height: 146px;
}

#case .find dt {
	width: 260px;
	height: 146px;
}

#case .find dd {
	padding: 20px;
	text-align: left;
	font-size: 13px;
	line-height: 1.5;
	color: #fff;
	position: relative;
	z-index: 2;
}

#case .find:hover dd {
	width: 100%;
	margin-top: 0;
	height: 275px;
	padding-top: 30px;
	background: #86bf3d;
	position: absolute;
	top: 0;
	left: 0;
}

#case .find dd span:first-child {
	display: block;
	width: 110px;
	height: 20px;
	margin-bottom: 10px;
	background: #86bf3d;
	text-align: center;
	font-weight: bold;
	font-size: 13px;
	line-height: 21px;
	color: #fff;
}

#case .find:hover dd span:first-child {
	width: 100%;
	height: 22px;
	background: none;
	text-align: left;
	font-size: 20px;
}

#case .find dd a {
	display: block;
	text-decoration: none;
	font-weight: bold;
	font-size: 15px;
	color: #000;
}

#case .find:hover dd a {
	color: #fff;
}

#case .find dd span:last-child {
	display: none;
	margin-top: 10px;
}

#case .find:hover dd span:last-child {
	display: block;
}

#case .btn li a {
	display: inline-block;
	vertical-align: top;
	width: 470px;
	height: 51px;
	border-radius: 82px;
	background: #f5ff00;
	box-shadow: 3px 3px 0 #bec600;
	text-decoration: none;
	font-weight: bold;
	font-size: 20px;
	line-height: 54px;
	color: #000;
	transition: .4s;
}

#case .btn li a:after {
	display: inline-block;
	vertical-align: top;
	content: '';
	width: 19px;
	height: 51px;
	margin: 0 -0.5em 0 0.5em;
	background: url(../nas/contact_01.svg) no-repeat left / 100% auto;
}

#case .btn li a:hover {
	opacity: 0.6;
}

/* ---------------------------------------------------------
	CSS Document footer
--------------------------------------------------------- */

#footer {
	margin-top: 0;
}
