html {
	font-size: 16px;
	text-align: center;
	font-family: "M PLUS 1p", sans-serif;
	font-weight: 400;
}

main {
	overflow: hidden;
}

section {
	position: relative;
}

h1,
h2 {
	word-wrap: break-word;
	margin-bottom: 1.3rem;
	line-height: 1.5em;
}

h1 {
	font-size: 2rem;
}

h2 {
	font-size: 1.5rem;
}

p {
	font-size: 1rem;
	margin-bottom: 1.3rem;
	line-height: 1.5em;
}

img {
	display: block;
	width: 100%;
}


header {
	margin: 1.5rem 0;
}

.pc {
	display: none;
}

.ruby {
	font-size: 0.5em;
	font-weight: 400;
}

.highlight {
	font-weight: bold;
}

.gradation-text {
	background: linear-gradient(to right, #4CBEFF, #D661FF);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.red-text {
	color: red;
}

.cta-area {
	padding: 1.5rem 0;
}

.cta-area a {
	background: #3EBAFF;
	box-shadow: 0px 2px 20px rgba(57.59, 183.31, 255, 0.69);
	border-radius: 5px;
	color: #fff;
	display: block;
	font-size: 1.5rem;
	padding: 1rem;
	margin: auto;
	width: 70%;
	text-decoration: none;
}

.caption-and-image {
	padding: 0 0.5rem;
}

.caption-and-image figure {
	margin-bottom: 4.5rem;
}

.caption-and-image figure figcaption {
	font-size: 1.5rem;
	line-height: 1.5em;
	margin-bottom: 2.5rem;
}

.card {
	background: white;
	box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
	border-radius: 20px;
	padding: 1rem;
}

.card dl {
	display: grid;
	grid-template-columns: 1fr 1fr;
	row-gap: 1rem;
	margin: 1rem 0;
}

.card dl dt,
.card dl dd {
	display: flex;
	align-items: flex-end;
}

.card dl dt {
	text-align: left;
}

.card dl dd {
	text-align: right;
	justify-content: flex-end;
}

.card .highlight {
	font-size: 1.2rem;
	margin: 0 0.5rem;
}

.slider-wrapper {
	width: 100%;
	overflow-x: scroll;
	display: flex;
	-ms-overflow-style: none;
}

.slider-wrapper::-webkit-scrollbar{
	display: none;
}

.slider {
	margin: 1rem;
	display: flex;
	flex-direction: column;
}

.notes {
	font-size: 0.8rem;
	text-align: left;
	margin-bottom: 0.8rem;
	line-height: 1.5em;
	padding: 0 1rem;
}

ul.notes {
	counter-reset: item;
}

.notes li {
	counter-increment: item;
	position: relative;
	padding-left: 1.5rem;
	margin-bottom: 0.5rem;
}

.notes li::before {
	position: absolute;
	content: "※" counter(item);
	left: 0;
}

.small {
	font-size: 0.5rem
}

.white-space-big {
	height: 9rem;
}
.card-figure-layout {
	margin-top: 2rem;
	margin-bottom: 2rem;
	text-align: center;
	letter-spacing: -.4em;
}
.card-figure-layout > * {
	display: inline-block;
	letter-spacing: normal;
}
.card-figure-layout > .imageArea {
	margin-right: 35px;
	vertical-align: middle;
	max-width: 100%;
	width: auto;
}
.card-figure-layout > .textArea {
	vertical-align: middle;
}
.card-figure-layout > .textArea > p {
	font-size: 1.2rem;
	margin-bottom: 0;
}
.card-figure-layout > .textArea > .normal-list {
	display: inline-block;
	font-size: 0.6rem;
}
.normal-list li {
	position: relative;
	padding-left: 0.6rem;
	margin-top: 0.2rem;
}
.normal-list li span {
	position: absolute;
	left: 0;
	top: 0;
}
@media print,screen and (max-width: 768px) {
	.card-figure-layout {
		margin-top: 0;
		margin-bottom: 2rem;
		text-align: center;
		letter-spacing: -.4em;
	}
	.card-figure-layout > * {
		display: inline-block;
		letter-spacing: normal;
	}
	.card-figure-layout > .imageArea {
		width: 63px;
		margin-right: 22px;
		vertical-align: middle;
	}
	.card-figure-layout > .textArea {
		vertical-align: middle;
	}
	.card-figure-layout > .textArea > p {
		font-size: 17px;
		margin-bottom: 0;
	}
	.card-figure-layout > .textArea > .normal-list {
		display: inline-block;
		font-size: 10px;
	}
	.normal-list li {
		position: relative;
		padding-left: 15px;
		margin-top: 5px;
		line-height: 1.5;
	}
	.normal-list li span {
		position: absolute;
		left: 0;
		top: 0;
	}
}
@media print,screen and (max-width: 768px) {
	.white-space-big {
		height: 7rem;
	}
}
.application {
	margin-top: 25rem;
}
@media print,screen and (max-width: 768px) {
	.application {
		margin-top: 0;
	}
	.company {
		height: 13rem;
	}
}
.logo-area {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.header-text {
	margin-top: 1.5rem;
	font-weight: 900;
	font-size: 1.5rem;
	text-align: center;
	color: #44a1b1;
}
.epos-logo {
	width: 13rem;
	margin: 1.5rem auto 0;
}
.logo-area .sompo {
	width: 6rem;
	margin-bottom: 1rem;
}

.logo-area .mys {
	width: 10rem;
}
/*left-nav*/
.aural {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: 0;
	overflow: hidden;
}
@media print, screen and (min-width: 751px) {
	.isPc {
		display: block;
	}
	.body-wrapper {
		margin-left: 230px;
	}
	#page {
		position: relative;
	}
	#header {
		position: fixed;
		top: 0;
		left: 0;
		width: 230px;
		z-index: 100;
		height: 100%;
		padding-bottom: 13px;
		background: #ffffff;
		border-right: solid 1px #e5e5e5;
	}
	#header p {
		margin-bottom: 0;
		letter-spacing: 0;
		line-height: 1.4;
	}
	#header .logo {
		padding: 24px 0 24px;
		text-align: center;
	}
	#header.mCustomScrollbar .mCSB_scrollTools {
		width: 10px !important;
	}
	#header.mCustomScrollbar .mCSB_inside > .mCSB_container {
		margin-right: 0 !important;
	}
	#header.mCustomScrollbar .mCSB_scrollTools .mCSB_draggerRail {
		background-color: #ffffff !important;
	}
	#header.mCustomScrollbar .mCSB_scrollTools a + .mCSB_draggerContainer {
		margin: 0 !important;
	}
	#header.mCustomScrollbar .mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
		width: 4px !important;
		margin-right: 0 !important;
	}
	#header.mCustomScrollbar .mCSB_scrollTools .mCSB_draggerRail {
		width: 4px !important;
		border-radius: 0 !important;
	}
	/* naviList */
	#naviList {
		height: 90%;
		padding: 0;
		background: #ffffff;
		text-align: left;
		overflow-y: auto;
		 /* IE, Edge 対応 */
		 -ms-overflow-style: none;
		 /* Firefox 対応 */
		 scrollbar-width: none;
		}
	/* Chrome, Safari 対応 */
	#naviList::-webkit-scrollbar {
	 display:none;
	}
	#naviList * {
		box-sizing: border-box;
	}
	#header .navHeading span {
		color: #222222;
	}
	#header .navHeading img {
		display: inline-block;
		max-width: 100%;
		width: auto;
		vertical-align: bottom;
	}
	#header .navHeading {
		padding: 8% 0 6.5%;
		background-color: #ffffff;
	}
	#header .navHeading a {
		display: block;
		text-decoration: none;
		text-align: center;
	}
	#header .navHeading > ul {
		margin-top: 10px;
	}
	#naviList .headBanner01 {
		margin-bottom: 4px;
		border-radius: 8px;
		-moz-border-radius: 8px;
		-webkit-border-radius: 8px;
		border-bottom: solid 4px #00626b;
	}
	#naviList .headBanner02 {
		border-radius: 8px;
		-moz-border-radius: 8px;
		-webkit-border-radius: 8px;
		border-bottom: solid 4px #866422;
	}
	#naviList [class^="headBanner"]:hover {
		border-width: 1px;
	}
	#naviList [class^="headBanner"]:hover:before {
		content: "";
		display: block;
		height: 3px;
	}
	#naviList > #globalNav {
		border-top: solid 1px #e5e5e5;
		font-size: 14px;
	}
	#naviList > #globalNav .navInner .left-navi-list {
		margin-top: 16px;
	}
	#naviList > #globalNav .navInner .left-navi-listNest >:first-child  {
		margin-top: 0 !important;
	}
	#naviList > #globalNav .navInner .left-navi-listTitle {
		position: relative;
		margin: 5px 21px 10px;
		border-radius: 5px;
		padding: 2px 0 2px 11px;
		font-weight: bold;
		font-size: 15px;
		line-height: 1.2;
		color: #444;
	}
	#naviList > #globalNav .navInner .left-navi-listTitle::before {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		width: 2px;
		height: 100%;
		background-color: #4599B1;
	}
	#naviList > #globalNav .navInner .left-navi-heading01.js-sidenav-toggle__trigger {
		position: relative;
		padding-right: 26px;
		cursor: pointer;
	}
	#naviList > #globalNav .navInner .left-navi-heading01.js-sidenav-toggle__trigger::after {
		position: absolute;
		top: 50%;
		right: 8px;
		width: 15px;
		height: 15px;
		margin-top: -7px;
		background: url("/insurance/images/sidenav_ic01.png") no-repeat 0 0;
		content: '';
	}
	#naviList > #globalNav .navInner .left-navi-heading01.js-sidenav-toggle__trigger.open::after {
		background-image: url("/insurance/images/sidenav_ic02.png");
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list {
		margin-top: 10px;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li {
		position: relative;
		display: block;
		width: 100%;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li:not(.no-icon):after {
		position: absolute;
		right: 20px;
		top: 50%;
		display: block;
		content: "";
		width: 9px;
		height: 17px;
		margin-top: -8px;
		background: url(/insurance/common/images/header_ic24.png) 0 0 no-repeat;
		background-size: 9px auto;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li > a {
		position: relative;
		display: block;
		width: 100%;
		padding: 13px 34px 11px 32px;
		background-repeat: no-repeat;
		color: #444444;
		font-size: 14px;
		vertical-align: middle;
		line-height: 1.2;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li > a:hover {
		color: #dc322c;
		background: #fff4f4;
		font-weight: bold;
		text-decoration: none !important;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li > a:hover:before {
		position: absolute;
		content: "";
		top: 0;
		left: 0;
		width: 4px;
		height: 100%;
		background: #dc322c;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li:hover:nth-of-type(n+2):after {
		display: none;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li:last-child {
		border-bottom: none;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li.nav02 > a {
		background-image: url(/insurance/common/images/header_ic13.png);
		background-position: 4% 50%;
		background-size: 11% auto;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li.nav03 > a {
		background-image: url(/insurance/common/images/header_ic14.png);
		background-position: 4% 50%;
		background-size: 11% auto;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li.nav04 > a {
		background-image: url(/insurance/common/images/header_ic15.png);
		background-position: 5% 50%;
		background-size: 8% auto;
	}
	#naviList .linkTxt02 {
		margin: 20px 10% 0;
		font-size: 15px;
	}
	#naviList .linkTxt02 a {
		display: inline-block;
		padding: 1px 0 2px 25px;
		background: url(/insurance/common/images/header_ic25.png) no-repeat 0 0.2em;
		-webkit-background-size: 16px auto;
		background-size: 16px auto;
		color: #1e58af;
		text-decoration: underline;
	}
	#naviList > .headerCvBtn {
		border: 1px solid #dc0825;
		background: #dc0825 url(/insurance/common/images/header_bg01.png) 100% 0 no-repeat;
		background-size: 20.5% auto;
		box-shadow: rgb(156, 2, 23) 0px 3px 0 0px;
		-webkit-box-shadow: rgb(156, 2, 23) 0px 3px 0 0px;
		-moz-box-shadow: rgb(156, 2, 23) 0px 3px 0 0px;
		border-radius: 5px;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		/* transition */
		transition: background-color 0.5s ease-out;
		-webkit-transition: background-color 0.5s ease-out;
		-moz-transition: background-color 0.5s ease-out;
		-o-transition: background-color 0.5s ease-out;
		-ms-transition: background-color 0.5s ease-out;
	}
	#naviList > .headerCvBtn > a {
		display: block;
		padding: 5% 4.7% 4% 8.5%;
		background: url(/insurance/common/images/header_ic01.png) 98% 95% no-repeat;
		text-decoration: none;
	}
	#naviList > .headerCvBtn > a > p {
		margin-top: 0;
		color: #ffffff;
		font-weight: bold;
		line-height: 1.2;
	}
	#naviList > .headerCvBtn > a > ul > li {
		float: left;
		width: 26.4%;
	}
	#naviList > .headerCvBtn > a > ul > li + li {
		margin-left: 5px;
	}
	#naviList > .headerCvBtn:hover {
		background-color: #e5465c;
	}
	#naviList > .headerCvBtn:hover > a {
		text-decoration: none;
	}
	#naviList > #globalNav {
		display: table-cell;
		width: 230px;
		vertical-align: middle;
		padding-bottom: 30px;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li > a:link {
		text-decoration: none;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li > a:hover {
		text-decoration: underline;
	}
	#naviList li span {
		display: inline-block;
	}
	#naviList .left-navi-banner {
		margin-top: 2em;
	}
	#naviList .left-navi-banner a {
		display: block;
		margin: 0 5px;
	}
	#naviList .left-navi-banner a:hover {
		opacity: 0.7;
	}
	#naviList .left-navi-banner a img.isPc {
		display: inline;
	}
	#naviList .left-navi-banner a img.isSp {
		display: none;
	}
	#naviList .navInner .left-navi-btn {
	position: relative;
	border-radius: 6px;
	box-shadow: 0 3px 0 rgba(49, 120, 140, 1);
	margin: 20px 21px 0;
}
#naviList .navInner .left-navi-btn:hover {
	box-shadow: none;
	opacity: 0.7;
	transform: translateY(3px);
}
#naviList .navInner .left-navi-btn a {
	position: relative;
	display: block;
	font-size: 13px;
  line-height: 1.4;
	text-align: center;
	font-weight: bold;
	color: #fff;
	min-height: 52px;
	text-decoration: none;
	background-color: #4599B1;
	padding: 17px 26px 14px 20px;
	border-radius: 5px;
}
#naviList .navInner .left-navi-btn a::before {
	position: absolute;
	content: "";
	top: 50%;
	right: 7px;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	background: url("/insurance/common/images/common_ic29.png") no-repeat 0 0  / contain;
}
#naviList .navInner .left-navi-sideApplyWrap {
	margin-top: 18px;
}
#naviList .navInner .left-navi-sideApplyWrap > :first-child {
	margin-top: 0 !important;
}
	/* utilityLinks02 */
	#utilityLinks02 {
		padding-bottom: 10px !important;
		z-index: 9999;
	}
	#utilityLinks02 > ul > li {
		display: table;
		width: 100%;
		border-bottom: solid 1px #dddddd;
		font-weight: bold;
	}
	#utilityLinks02 > ul > li > a {
		display: table-cell;
		width: 100%;
		padding: 5% 5% 5% 21%;
		background: url(/insurance/common/images/header_ic04.png) 95% 50% no-repeat;
		color: #444444;
		vertical-align: middle;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}
	#utilityLinks02 > ul > li > a:link {
		text-decoration: none;
	}
	#utilityLinks02 > ul > li > a:hover {
		text-decoration: underline;
	}
	#utilityLinks02 > ul > li.link01 .navToggleHead {
		background: url(/insurance/common/images/header_ic16.png) 4% 50% no-repeat;
		background-size: 12% auto;
	}
	#utilityLinks02 > ul > li.link02 {
		background: url(/insurance/common/images/header_ic17.png) 4% 50% no-repeat;
		background-size: 10% auto;
	}
	#utilityLinks02 > ul > li.link03 {
		background: url(/insurance/common/images/header_ic18.png) 4% 50% no-repeat;
		background-size: 10% auto;
	}
	#utilityLinks02 > ul > li.link04 {
		background: url(/insurance/common/images/header_ic19.png) 5% 50% no-repeat;
		background-size: 8% auto;
	}
	#utilityLinks02 > .sideApply {
		overflow: hidden;
		margin: 25px 10% 0 8%;
		border-radius: 9px;
		border-bottom: solid 2px #d6002d;
	}
	#utilityLinks02 > .sideApply:hover {
		border: none;
		opacity: 0.7;
	}
	#utilityLinks02 > .sideApply:hover:before {
		content: "";
		display: block;
		height: 2px;
	}
	#utilityLinks02 > .sideApply a {
		display: block;
		line-height: 1.5;
		padding: 7% 20% 6% 6%;
		background: #ffffff url(/insurance/images/insurance_ic01.png) no-repeat 95% 50%;
		background-size: 26px auto;
		border-radius: 8px;
		border: solid 1px #dc322c;
		color: #dc322c;
		font-size: 15px;
		text-decoration: none;
	}
	#utilityLinks02 > .sideApply a.blank {
		background-image: url(/insurance/images/insurance_ic02.png);
	}

	#utilityLinks02 > .sideApply + .sideApply {
		margin-top: 17px;
	}
	#spNavSwitch {
		display: none;
	}
	.sumaho-floatingWrap {
		position: fixed;
		right: 0;
		bottom: 10vh;
		z-index: 999;
	}
	.sumaho-floatingWrap .sumaho-floating {
		background-color: #fff;
	}
	.sumaho-floatingWrap .sumaho-floatingBanner a {
		transition: 0.3s all ease-out;
	}
	.sumaho-floatingWrap .sumaho-floatingBanner a:hover {
		opacity: 0.7;
	}
}
@media print, screen and (max-width: 1450px) {
	/*header*/
	#header {
		top: 0 !important;
		width: 200px;
	}
	#page {
		position: relative;
		overflow: hidden;
		width: 100%;
		min-height: 100%;
	}
	/*contents*/
	.body-wrapper {
		margin-left: 200px;
	}
}
.first-view .tech-copy .highlight {
	color: #16B9FF;
}
.first-view .tech-text {
	font-size: 0.9rem;
	margin-bottom: 1.3rem;
}

.introduction::after {
	content: "";
	position: absolute;
	height: 200rem;
	width: 100rem;
	border-radius: 50%;
	background: linear-gradient(180deg, white 1%, #DCF7FF 36%, #F5D7FF 100%);
	box-shadow: 0px 0px 72.9000015258789px rgba(87.13, 234.85, 255, 0.40);
	top: 8rem;
	bottom: 0;
	left: 50%;
	transform: translate(-50%);
	z-index: -10;
}

.introduction .key-visual {
	width: 50%;
	margin: 1rem auto 3rem;
}

.introduction .story {
	padding: 0 1rem;
}

.conditions {
	line-height: 1.2em;
	padding: 0 1rem;
}

.conditions p {
	font-size: 0.8rem;
}

.conditions .expansion {
	font-size: 1.5rem;
	margin: 1rem auto;
	line-height: normal;
}


.focus {
	z-index: 1;
}

.plans::after {
	content: "";
	position: absolute;
	height: 95rem;
	width: 80rem;
	border-radius: 50%;
	background: #fff;
	top: -3rem;
	bottom: 0;
	left: 50%;
	transform: translate(-50%);
	z-index: -1;
}

.plans .switch {
	display: flex;
	justify-content: space-evenly;
	align-items: center;
	margin: 1.3rem auto;
}

.plans .switch div {
	background-color: #898989;
	color: #fff;
	padding: 0.5rem;
	width: 40%;
}

.cards.gakusuma{
	display: none;
}

.cards.sumaho,
.cards.gakusuma,
img.gakusuma{
	display: none;
}

.cards.sumaho.active,
.cards.gakusuma.active,
img.gakusuma.active {
	display: flex;
}


.plans .switch .sumaho.active{
	background: #16B9FF;
}

.plans .switch .gakusuma.active{
	background: #FF49B6;
}

.plans .cards {
	margin-bottom: 2rem;
}

.plans .card-wrapper .head {
	margin-bottom: 1rem;
	position: relative;
	display: inline-block;
}

.plans .card-wrapper .head::before,
.plans .card-wrapper .head::after {
	content: "";
	width: 1px;
	height: 1rem;
	background: #222;
	position: absolute;
	top: 50%;
}

.plans .card-wrapper .head::before {
	left: -0.5rem;
	transform: translateY(-50%) rotate(-30deg);
}

.plans .card-wrapper .head::after {
	right: -0.5rem;
	transform: translateY(-50%) rotate(30deg);
}

.plans .card {
	box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
	max-width: 20rem;
	padding-bottom: 0;
	width: 18rem;
}

.plans .card .title {
	font-size: 1.2rem;
	display: flex;
	justify-content: space-between;
	align-items: end;
	margin-bottom: 1rem;
}

.plans .card .title .plan-name {
	font-weight: bold;
}

.plans .card .title .unit {
	font-size: 0.8rem;
	margin-left: 0.3rem;
}

.plans .card .amount {
	margin-top: 1rem;
}

.plans .card .amount .label {
	text-align: left;
	font-weight: bold;
}

.plans .card.pro .highlight {
	background: linear-gradient(to right, #4CBEFF, #D661FF);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.plans .card.standard .highlight {
	color: #4EBFFF;
}

.plans .standard .self-pay .number .highlight,
.plans .light .self-pay .number .highlight {
	font-size: 1.3rem;
	color: #FF5E72!important;
}

.plans .conditions {
	text-align: left;
}

.plans .conditions .highlight {
	margin: 0.5rem 0;
}

.plans .card .notes {
	font-size: 0.7rem;
	text-align: center;
}

.gakusuma .cta{
	background: #FF49B6; box-shadow: 0px 2px 12px rgba(255, 73, 182, 0.61);
}

.gakusuma .card.standard .highlight{
	color: #FF49B6;
}

.sns-consultation {
	width: 20rem;
	margin: auto;
}

.appeal {
	padding: 0 1.5rem;
	background: linear-gradient(180deg, rgba(141.31, 227.71, 255, 0.45) 0%, rgba(236.99, 185.58, 255, 0.45) 100%);
}

.appeal figure {
	background-color: #fff;
	padding: 1rem;
	border-radius: 20px;
}

.appeal figure figcaption {
	font-size: 0.9rem;
	margin: 0;
}

.table {
	position: relative;
}

.table::after {
	content: "";
	background: #fff;
	border-radius: 10px;
	border: solid 0.5rem #3EBAFF;
	box-shadow: 0px 2px 20px rgba(57.59, 183.31, 255, 0.69);
	position: absolute;
	top: 0;
	bottom: 0;
	right: -2vw;
	left: 60vw;
}

.table dl {
	color: #0073B2;
	display: grid;
	grid-template-columns: repeat(5, 30vw);
	width: 90vw;
	margin: 0 auto 1rem;
	position: relative;
	overflow: scroll;

}

.table dl::-webkit-scrollbar{
	display: none;
}

.table dt,
.table dd {
	display: flex;
	align-items: center;
	border-bottom: solid 1px #dedede;
	padding: 0;
	line-height: 1.5em;
	padding: 0.3rem 0;
	z-index: 1;
}

.table dt {
	justify-content: start;
	position: sticky;
	left: 0;
	color: #222;
	background: #fff;
	z-index: 3;
	padding-left: 0.2rem;
}

.table dd {
	justify-content: center;
}

.table dd:nth-child(5n+2) {
	position: sticky;
	left: 30vw;
	color: #222;
	background: #fff;
	z-index: 3;
}

.table .circle {
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 3rem;
	background: #0073B2;
}

.table dd:nth-child(5n+2) .circle {
	background: #222;
}

.satisfaction::after {
	content: "";
	position: absolute;
	height: 110%;
	width: 80rem;
	border-radius: 50%;
	background: #fff;
	top: -3rem;
	bottom: 0;
	left: 50%;
	transform: translate(-50%);
	z-index: -1;
}

.satisfaction .graph {
	padding: 1rem;
}

.satisfaction .graph img {
	width: 90%;
	margin: auto;
	margin-bottom: 2rem;
}

.satisfaction .reputations {
	margin: 2rem auto;
}

.satisfaction .card {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	width: 20rem;
	text-align: left;
	box-shadow: 1px 1px 20px rgba(141.31, 227.71, 255, 0.45);
}

@keyframes infinity-scroll-left {
	from {
			transform: translateX(0%);
	}

	to {
			transform: translateX(-100%);
	}
}

.satisfaction .cards {
	overflow: hidden;
}

.satisfaction .cards .slider-wrapper {
	overflow-x: visible;
	width: max-content;
	animation: 60000ms linear 0s infinite normal none running infinity-scroll-left;
}

.satisfaction .card .user-voice {
	flex-grow: 1;
	display: grid;
	grid-template-columns: 1fr 4fr;
	column-gap: 0.5rem;
	padding-bottom: 1rem;
	border-bottom: solid 1px #dedede;
}

.satisfaction .card .user-voice .icon {
	font-size: 0.8rem;
}

.satisfaction .card .user-voice .icon img {
	width: 4rem;
	margin: 0 auto 0.5rem;
}

.satisfaction .card .user-voice .evaluation .stars {
	margin: 0.5rem 0;
	color: #3EBAFF;
}

.satisfaction .card .case {
	flex-grow: 1;
	margin-top: 1rem;
}

.company {
	background: linear-gradient(180deg, rgba(141.31, 227.71, 255, 0.45) 0%, rgba(236.99, 185.58, 255, 0.45) 100%);
	z-index: -10;
}

.steps {
	margin: 2rem auto;
}

.steps::after {
	content: "";
	position: absolute;
	height: 110%;
	width: 80rem;
	border-radius: 50%;
	background: #fff;
	top: -3rem;
	bottom: 0;
	left: 50%;
	transform: translate(-50%);
	z-index: -1;
}

.steps .step .index {
	font-size: 1.5rem;
	font-weight: bold;
	color: #00AEC5;
	margin-bottom: 1rem;
}

.steps .step .card .highlight {
	font-size: 1rem;
}

.steps .step .card {
	border-radius: 0;
	margin-bottom: 2rem;
	padding: 2rem 1rem;
	width: 16rem;
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.steps .step .card img {
	width: 80%;
	margin: 2rem auto;
}

.steps .step .card p {
	flex-grow: 1;
}

.faq {
	background-color: #f1f1f1;
	padding: 1rem;
}

.p-home-question {
	padding-bottom: 45px
}

@media print,screen and (max-width: 768px) {
	.p-home-question {
			padding-bottom:35px
	}
}

.p-home-question .c-accordion:not(:last-child) {
	margin-bottom: 16px
}

.c-accordion {
	background-color: #fff;
	border: 1px solid #EEE;
	border-radius: 8px;
	text-align:left;
}

.c-accordion img {
	display: inline;
}

.c-accordion:hover {
	box-shadow: 0 2px 5px rgba(0,0,0,0.26)
}

.c-accordion-title {
	align-items: center;
	color: #333;
	cursor: pointer;
	display: flex;
	font-size: 16px;
	line-height: 1.75;
	padding: 10px 40px 10px 22px;
	position: relative
}

@media print,screen and (max-width: 768px) {
	.c-accordion-title {
			display:block;
			font-size: 14.22px;
			padding: 7px 16px 10px
	}
}
@media print,screen and (max-width: 768px) {
	.sumaho-floatingWrap {
		position: fixed;
		right: 0;
		bottom: 0;
		z-index: 8;
		width: 100%;
		box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.25);
	}
	.sumaho-floatingWrap .sumaho-floating {
		background-color: rgba(255,255,255,0.7);
		padding: 10px;
		text-align: center;
	}
	.sumaho-floatingWrap .sumaho-floatingBanner a img {
		max-width: 340px;
		margin: 0 auto;
	}
}

.c-accordion-title::after {
	border-bottom: 2px solid #757575;
	border-right: 2px solid #757575;
	content: "";
	display: block;
	height: 8px;
	margin-left: auto;
	position: absolute;
	right: 22px;
	top: 50%;
	transform: rotate(45deg) translate(0,-50%);
	transition: all .3s;
	width: 8px
}

@media print,screen and (max-width: 768px) {
	.c-accordion-title::after {
			margin:5px auto 0;
			position: static
	}
}

.c-accordion-title span {
	color: #757575;
	font-size: 24px;
	margin-right: 30px
}

@media print,screen and (max-width: 768px) {
	.c-accordion-title span {
			display:block;
			margin: 0 0 6px
	}
}

.c-accordion-contents {
	max-height: 0;
	overflow: hidden;
	position: relative;
	transition: all .3s;
	visibility: hidden;
	display: flex
}

@media print,screen and (max-width: 768px) {
	.c-accordion-contents {
			display:block
	}
}

.c-accordion-contents::before {
	background-color: #EEE;
	content: "";
	display: block;
	height: 1px;
	left: 22px;
	position: absolute;
	top: 0;
	width: calc(100% - 22px * 2 - 17px - 8px)
}

@media print,screen and (max-width: 768px) {
	.c-accordion-contents::before {
			left:50%;
			transform: translate(-50%,0);
			width: calc(100% - 16px * 2)
	}
}

.c-accordion-contents div {
	padding: 20px 22px
}

.c-accordion-contents p {
	align-items: center;
	color: #333;
	font-size: 16px;
	line-height: 1.75
}

@media print,screen and (max-width: 768px) {
	.c-accordion-contents p {
			display:block;
			font-size: 14.22px
	}
}
@media print,screen and (max-width: 768px) {
	.isPc, .pc-hidden {
		display: none;
	}
	.body-wrapper {
		margin-left: 0;
	}
	body.fixed {
		position: fixed;
		width: 100vw;
	}
	/*header*/
	#header {
		position: fixed;
		top: 66px !important;
		right: -94%;
		left: inherit;
		width: 94%;
		overflow: scroll;
		overflow-y: scroll !important;
		height: 80%;
		background: #ffffff;
		/* transition */
		transition: right 0.5s ease-out;
		-webkit-transition: right 0.5s ease-out;
		-moz-transition: right 0.5s ease-out;
		-o-transition: right 0.5s ease-out;
		-ms-transition: right 0.5s ease-out;
		z-index: 9999;
	}
	#header.open {
		right: 3%;
	}
	.body-wrapper .logo {
		margin: 0 auto !important;
		padding: 15px 10px;
		text-align: center;
	}
	.body-wrapper .logo img {
		width: 200px;
		height: auto;
	}
	/* naviList */
	#naviList {
		padding: 0;
		background: #ffffff;
		text-align: left;
	}
	#header .navHeading span {
		color: #be001a;
	}
	#naviList *{
		box-sizing: border-box;
	}
	#header .navHeading {
		display: none;
	}
	#header .navHeading a {
		display: block;
		text-decoration: none;
		color: #444444;
		font-size: 13px;
	}
	#header .navHeading img {
		max-width: 100%;
		width: auto;
	}
	#naviList > #globalNav .navInner{
		padding: 15px 10px;
	}
	#naviList > #globalNav .navInner >:first-child {
		margin-top: 0 !important;
	}
	#naviList > #globalNav .navInner .left-navi-heading01 {
		font-weight: bold;
		font-size: 15px;
		color: #444444;
	}
	#naviList > #globalNav .navInner .left-navi-list {
		margin-top: 20px;
	}
	#naviList > #globalNav .navInner .left-navi-listNest >:first-child  {
		margin-top: 0 !important;
	}
	#naviList > #globalNav .navInner .left-navi-listTitle {
		position: relative;
		border-radius: 5px;
		padding: 2px 0 2px 11px;
		font-weight: bold;
		font-size: 15px;
		line-height: 1.2;
		color: #444;
	}
	#naviList > #globalNav .navInner .left-navi-listTitle::before {
		content: "";
		position: absolute;
		left: 0;
		top: 0;
		width: 2px;
		height: 100%;
		background-color: #4599B1;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li {
		position: relative;
		display: table;
		width: 100%;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li:after {
		display: none;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li {
		border-bottom: solid 1px #cccccc;
	}
	#naviList > #globalNav .navInner ul.left-navi-link-list > li > a {
		display: table-cell;
		width: 100%;
		padding: 14px 20px 12px 10px;
  	background: url(/insurance/common/images/header_ic24.png) no-repeat right 0 top 50%;
		background-size: 7px auto;
		text-decoration: none;
		font-size: 15px;
		color: #444444;
		vertical-align: middle;
		font-size: 14px;
		line-height: 1.2;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
		text-decoration: none;
	}
	#naviList > #globalNav .navInner .left-navi-heading01.js-sidenav-toggle__trigger {
		position: relative;
	}
	#naviList > #globalNav .navInner .left-navi-heading01.js-sidenav-toggle__trigger::after {
		position: absolute;
		top: 50%;
		right: 8px;
		width: 15px;
		height: 15px;
		margin-top: -8px;
		background: url("/insurance/images/sidenav_ic01.png") no-repeat 0 0;
		content: '';
	}
	#naviList > #globalNav .navInner .left-navi-heading01.js-sidenav-toggle__trigger.open::after {
		background-image: url("/insurance/images/sidenav_ic02.png");
	}
	#naviList > .headerCvBtn {
		border: 1px solid #dc0825;
		background: #dc0825 url(/insurance/common/images/sp_header_bg01.png) 100% 0 no-repeat;
		background-size: 45px 30px;
		box-shadow: rgb(156, 2, 23) 0px 3px 0 0px;
		-webkit-box-shadow: rgb(156, 2, 23) 0px 3px 0 0px;
		-moz-box-shadow: rgb(156, 2, 23) 0px 3px 0 0px;
		border-radius: 5px;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		/* transition */
		transition: background-color 0.5s ease-out;
		-webkit-transition: background-color 0.5s ease-out;
		-moz-transition: background-color 0.5s ease-out;
		-o-transition: background-color 0.5s ease-out;
		-ms-transition: background-color 0.5s ease-out;
	}
	#naviList > .headerCvBtn > a {
		display: block;
		padding: 16px 45px 16px 10px;
		background: url(/insurance/common/images/header_ic01.png) 98% 94% no-repeat;
		text-decoration: none;
	}
	#naviList > .headerCvBtn > a > p {
		color: #ffffff;
		font-size: 16px;
		font-weight: bold;
		line-height: 1.2;
	}
	#naviList > .headerCvBtn > a > ul > li {
		float: left;
	}
	#naviList > .headerCvBtn > a > ul > li + li {
		margin-left: 5px;
	}
	#naviList li span {
		display: inline-block;
	}
	#naviList .linkTxt02 {
		margin-top: 1em;
		margin-bottom: 0;
		font-size: 14px;
	}
	#naviList .linkTxt02 a {
		display: inline-block;
		padding: 1px 0 2px 1.5em;
		background: url(/insurance/common/images/header_ic25_sp.png) no-repeat 0 0.2em;
		-webkit-background-size: 16px auto;
		background-size: 16px auto;
	}
	#naviList .left-navi-banner {
		margin-top: 0.5em;
	}
	#naviList .left-navi-banner a {
		display: block;
	}
	#naviList .left-navi-banner a img.isPc {
		display: none;
	}
	#naviList .left-navi-banner a img.isSp {
		display: inline;
	}
	#naviList .navInner .left-navi-btn {
		position: relative;
		border-radius: 6px;
		box-shadow: 0 3px 0 rgba(49, 120, 140, 1);
		margin-top: 10px;
	}
	#naviList .navInner .left-navi-btn a {
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		min-height: 42px;
		font-size: 15px;
		text-align: center;
		font-weight: bold;
		color: #fff;
		text-decoration: none;
		background-color: #4599B1;
		padding: 9px 36px 8px 18px;
		border-radius: 5px;
	}
	#naviList .navInner .left-navi-btn a::before {
		position: absolute;
		content: "";
		top: 50%;
		right: 12px;
		width: 20px;
		height: 20px;
		margin-top: -10px;
		background: url("/insurance/common/images/common_ic29.png") no-repeat 0 0  / contain;
	}
	/* utilityLinks02 */
	#utilityLinks02 {
		/*padding-bottom: 20px;*/
	}
	#utilityLinks02 > ul > li {
		display: table;
		width: 100%;
		border-bottom: solid 1px #dddddd;
		font-weight: bold;
	}
	#utilityLinks02 > ul > li > a {
		display: table-cell;
		width: 100%;
		padding: 5% 5% 5% 21%;
		background: url(/insurance/common/images/header_ic04.png) 95% 50% no-repeat;
		color: #444444;
		vertical-align: middle;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}
	#utilityLinks02 > ul > li > a:link {
		text-decoration: none;
	}
	#utilityLinks02 > ul > li > a:hover {
		text-decoration: underline;
	}
	#utilityLinks02 > ul > li.link01 .navToggleHead {
		background: url(/insurance/common/images/header_ic16.png) 4% 50% no-repeat;
		background-size: 12% auto;
	}
	#utilityLinks02 > ul > li.link02 {
		background: url(/insurance/common/images/header_ic17.png) 4% 50% no-repeat;
		background-size: 10% auto;
	}
	#utilityLinks02 > ul > li.link03 {
		background: url(/insurance/common/images/header_ic18.png) 4% 50% no-repeat;
		background-size: 10% auto;
	}
	#utilityLinks02 > ul > li.link04 {
		background: url(/insurance/common/images/header_ic19.png) 5% 50% no-repeat;
		background-size: 8% auto;
	}
	#utilityLinks02 > .sideApply {
		overflow: hidden;
		margin: 20px 0 0;
		border-radius: 0 0 7px 7px;
		border-bottom: solid 2px #d6002d;
	}
	#utilityLinks02 > .sideApply + .sideApply {
	margin-top: 10px;
}
	#utilityLinks02 > .sideApply:hover {
		border: none;
	}
	#utilityLinks02 > .sideApply:hover:before {
		content: "";
		display: block;
		height: 2px;
	}
	#utilityLinks02 > .sideApply a {
		display: block;
		line-height: 1.3;
		padding: 9px 10px 7px;
		background: #ffffff url(/insurance/images/insurance_ic01.png) no-repeat 97% 50%;
		background-size: 16px auto;
		border-radius: 5px;
		border: solid 1px #dc322c;
		color: #dc322c;
		font-size: 13px;
		text-decoration: none;
		text-align: left;
	}
	#utilityLinks02 > .sideApply.type-02 {
		margin-top: 10px;
		border-bottom-color: #629700;
	}
	#utilityLinks02 > .sideApply.type-02 a {
		border-color: #629700;
		padding: 4px 20px;
		background: url(/insurance/common/images/header_ic21.png) no-repeat 95% 50% #ffffff;
		background-size: 21px auto;
	}
	#utilityLinks02 > .sideApply.type-02 a > span {
		padding: 0 0 0 25px;
		background: url(/insurance/common/images/common_ic25.png) no-repeat 0 50%;
	}
	#utilityLinks02 > .sideApply.type-03 {
		margin-top: 10px;
		border-bottom-color: #c7a100;
	}
	#utilityLinks02 > .sideApply.type-03 a {
		border-color: #c7a100;
		padding: 4px 20px;
		background: url(/insurance/common/images/header_ic22.png) no-repeat 95% 50% #ffffff;
		background-size: 21px auto;
	}
	#utilityLinks02 > .sideApply.type-03 a > span {
		padding: 0 0 0 25px;
		background: url(/insurance/common/images/common_ic26.png) no-repeat 0 50%;
	}
	#spNavSwitch {
		position: fixed;
		top: 12px;
		right: 7px;
		width: 42px;
		height: 42px;
		border: 1px solid #bfbfbf;
		border-radius: 5px;
		background: #fff;
		z-index: 10000;
		box-shadow: 0px 0px 5px 3px rgba(0, 0, 0, 0.05);
		display: table;
		background-color: #ffffff;
		transition: right 0.5s ease-out;
		-webkit-transition: right 0.5s ease-out;
		-moz-transition: right 0.5s ease-out;
		-o-transition: right 0.5s ease-out;
		-ms-transition: right 0.5s ease-out;
	}
	#spNavSwitch.open {
		z-index: 10000;
		border: 1px solid #999999;
		background: #fff;
	}
	#spNavSwitch a {
		padding: 25px 0 0;
		color: #666666;
		display: table-cell;
		position: relative;
		background-size: 40px 20px;
		width: 100%;
		font-size: 8px;
		text-align: center;
		text-decoration: none;
		line-height: 1.2;
		vertical-align: middle;
	}
	#spNavSwitch.open > a {
		padding-top: 25px;
	}
	#spNavSwitch a::before {
		display: block;
		content: "";
		position: absolute;
		top: 7px;
		left: 10px;
		width: 20px;
		height: 15px;
		background: url("/insurance/images/medical_insurance_ic06.png") 0 0 no-repeat;
		background-size: 20px auto;
	}
	#spNavSwitch.open a::before {
		top: 7px !important;
		left: 10px !important;
		width: 20px !important;
		height: 15px !important;
		background: url("/insurance/images/medical_insurance_ic07.png") 0 0 no-repeat;
		background-size: 20px auto !important;
	}
	#spNavSwitch + #floatingWrap01 .fwd-buttonLink03 {
		width: calc(100% - 60px);
		margin-left: 60px;
	}
	 #overlay {
		display: none;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(66, 66, 66, 0.8);
		z-index: 9;
	}
}

.c-accordion-contents span.a-mark {
	color: #757575;
	font-size: 24px;
	margin-right: 30px
}

.c-accordion.is-active .c-accordion-contents {
	max-height: 1500px;
	transition: all .3s;
	visibility: visible
}

.c-accordion.is-active .c-accordion-title::after {
	transform: rotate(-135deg);
	transition: all .3s
}
.sumaho-end {
	padding: 2rem 3rem;
	background-color: #f1f1f1;
	text-align: left;
}
.sumaho-text {
	font-size: 14px;
}
.free-contents-card {
	margin-top: 1.3rem;
	background-color: #fff;
	border-radius: 19px;
	padding: 20px 15px;
	font-size: 14px;
}
.normal-list {
  font-size: 14px;
}
.normal-list >:first-child {
  margin-top: 0 !important;
}
.normal-list li {
  position: relative;
  padding-left: 14px;
  margin-top: 9px;
}
.normal-list li span {
  position: absolute;
  left: 0;
  top: 0;
}
.sumaho-numText {
	margin-top: 1.3rem;
	text-align: right;
	font-size: 10px;
	line-height: 1.7;
}
footer {
	background-color: #4599b1;
	color: #ffffff;
	text-align: center;
	font-size: 11px;
	padding: 16px 0;
}
@media print, screen and (max-width: 768px) {
	.sumaho-end {
		padding: 20px;
		background-color: #f1f1f1;
		text-align: left;
	}
	.sumaho-text {
		font-size: 10px;
	}
	.free-contents-card {
		font-size: 18px;
	}
	.normal-list {
		font-size: 12px;
	}
	.normal-list >:first-child {
		margin-top: 0 !important;
	}
	.normal-list li {
		position: relative;
		padding-left: 12px;
		margin-top: 5px;
	}
	.normal-list li span {
		position: absolute;
		left: 0;
		top: 0;
	}
	.sumaho-numText {
		margin-top: 20px;
		margin-bottom: 0;
		text-align: right;
		font-size: 10px;
		line-height: 1.7;
	}
	footer {
		background-color: #4599b1;
		color: #ffffff;
		text-align: center;
		font-size: 10px;
		padding: 10px 0;
	}
}

main .modal__overlay {
	z-index: 100;
}
main .modal__container {
	line-height: 1.8em;
	text-align: left;
	max-width: 90vw;
}

@media (min-width: 769px) {

	html {
		font-size: 1.2vw;
	}

	main {
		position: relative;
	}

	main::after {
		content: "";
		position: absolute;
		width: 300rem;
		border-radius: 50%;
		background: linear-gradient(180deg, white 1%, #DCF7FF 10%, #F5D7FF 70%);
		box-shadow: 0px 0px 72.9000015258789px rgba(87.13, 234.85, 255, 0.40);
		top: 8rem;
		bottom: 0;
		left: 50%;
		transform: translate(-50%);
		z-index: -15;
	}

	h1 {
		font-size: 4rem;
		margin-bottom: 3rem;
	}

	h2 {
		margin-bottom: 3rem;
	}

	header {
		margin-bottom: 0;
	}

	.pc {
		display: block;
	}

	.sp {
		display: none!important;
	}

	.notes {
		font-size: 0.5rem;
		padding: 0.2rem 1rem;
		width: 40rem;
		margin: auto;
	}

	.caption-and-image figure {
		margin-bottom: 12rem;
	}

	.conditions {
		font-size: 0.8rem;
		width: 40rem;
		margin: auto;
	}

	.cta-area a {
		max-width: 20rem;
	}

	.slider-wrapper {
		justify-content: center;
	}

	.logo-area {
		flex-direction: row;
	}
	.header-text {
		margin-top: 4rem;
		font-weight: 900;
		font-size: 3.0rem;
		text-align: center;
		color: #44a1b1;
	}
	.epos-logo {
		width: 17rem;
		margin: 1.5rem auto 0;
	}
	.logo-area .sompo {
		margin-bottom: 0;
		margin-right: 2rem;
	}
	.logo-area .sompo {
		margin-bottom: 0;
		margin-right: 2rem;
	}
	.first-view {
		margin-top: 5rem;;
	}

	.first-view .copy {
		text-align: left;
		margin-left: 8rem;
	}

	.first-view .tech-copy {
		font-size: 1.5rem;
		margin-bottom: 1rem;
	}

	.first-view .tech-text {
		font-size: 1rem;
		margin-bottom: 1rem;
	}

	.introduction::after {
		display: none;
	}

	.introduction .key-visual {
		width: 20%;
		position: absolute;
		top: -35rem;
		right: 10rem;
	}

	.introduction .story {
		padding: 0 1rem;
		display: flex;
		justify-content: space-around;
	}

	.introduction .story figure:nth-child(2){
		margin-top: 4rem;
	}

	.introduction .story figure:nth-child(3){
		margin-top: 8rem;
	}

	.focus::after{
		width: 85rem!important;
		height: 85rem!important;
	}
	.plans .switch {
		margin: 4rem auto 2rem;
		width: 38rem;
	}

	.plans .conditions  {
		text-align: center;
	}

	.plans .card .notes {
		padding: 0 2rem 1rem;
		width: auto;
		font-size: 0.6rem;
	}

	.appeal {
		background: none;
	}

	.appeal::after {
		display: none;
	}

	.appeal .caption-and-image {
		max-width: 30%;
		margin: auto;
	}

	.appeal .table {
		overflow: visible;
	}

	.table {
		max-width: 50vw;
		margin: auto;
	}

	.table dl {
		grid-template-columns: repeat(5, 1fr);
		width: 100%;
	}

	.table dt,
	.table dd:nth-child(5n+2) {
		position: static;
		background: none;
	}

	.table::after {
		top: -1rem;
		bottom: -1rem;
		left: 40%;
		right: 0;
	}

	.satisfaction .graph img {
		width: 25%;
	}

	.company {
		background: none;
	}

	.company figure{
		width: 30%;
		margin: 3rem auto;
	}

	.c-accordion {
		max-width: 50%;
		margin: auto;
	}
}