/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */

*, ::before, ::after {
	box-sizing: border-box;
	min-width: 0;
	border-width: 0;
	border-style: solid
}
html {
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	line-height: 1.15
}
body {
	margin: 0
}
main {
	display: block
}
p, table, blockquote, address, pre, iframe, form, figure, dl {
	margin: 0
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	font-weight: inherit;
	font-size: inherit
}
ul, ol {
	margin: 0;
	padding: 0;
	list-style: none
}
dt {
	font-weight: bold
}
dd {
	margin-left: 0
}
hr {
	box-sizing: content-box;
	height: 0;
	margin: 0;
	clear: both;
	overflow: visible;
	border-top-width: 1px;
	color: inherit
}
pre {
	font-size: inherit;
	font-family: monospace, monospace
}
address {
	font-style: inherit
}
a {
	background-color: rgba(0, 0, 0, 0);
	color: inherit;
	text-decoration: none
}
abbr[title] {
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted
}
b, strong {
	font-weight: bolder
}
code, kbd, samp {
	font-size: inherit;
	font-family: monospace, monospace
}
small {
	font-size: 80%
}
sub, sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline
}
sub {
	bottom: -0.25em
}
sup {
	top: -0.5em
}
svg, img, embed, object, iframe {
	vertical-align: bottom
}
button, input, optgroup, select, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	margin: 0;
	padding: 0;
	border-radius: 0;
	background: rgba(0, 0, 0, 0);
	color: inherit;
	font: inherit;
	text-align: inherit;
	text-transform: inherit;
	vertical-align: middle
}
button, [type=button], [type=reset], [type=submit] {
	cursor: pointer
}
button:disabled, [type=button]:disabled, [type=reset]:disabled, [type=submit]:disabled {
	cursor: default
}
:-moz-focusring {
	outline: auto
}
select:disabled {
	opacity: inherit
}
option {
	padding: 0
}
fieldset {
	min-width: 0;
	margin: 0;
	padding: 0
}
legend {
	padding: 0
}
progress {
	vertical-align: baseline
}
textarea {
	overflow: auto
}
[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
	height: auto
}
[type=search] {
	outline-offset: -2px
}
[type=search]::-webkit-search-decoration {
	-webkit-appearance: none
}
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit
}
[type=number] {
	-moz-appearance: textfield
}
label[for] {
	cursor: pointer
}
details {
	display: block
}
summary {
	display: list-item
}
[contenteditable]:focus {
	outline: auto
}
table {
	border-color: inherit;
	border-collapse: collapse
}
caption {
	text-align: left
}
td, th {
	padding: 0;
	vertical-align: top
}
th {
	font-weight: bold;
	text-align: left
}
html {
	font-size: 10px
}
body {
	color: #333;
	font-size: 1.6rem;
	line-height: 1.8;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	letter-spacing: .06em;
	word-break: break-word
}
a {
	color: inherit;
	text-decoration: none
}
a[href^="tel:"], a[href^="mailto:"] {
	color: inherit;
	text-decoration: none
}
em {
	font-style: normal
}
img {
	width: 100%;
	height: auto
}
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 0;
	border: none;
	outline: none;
	background: none;
	cursor: pointer;
	touch-action: manipulation
}
.l-column {
	-moz-column-gap: 5rem;
	display: flex;
	column-gap: 5rem;
	row-gap: 6rem;
	align-items: start;
	justify-content: space-between;
	max-width: 1010px;
	margin: 0 auto;
	padding: 0 25px
}
.l-column__main {
	flex: 1
}
.l-column__side {
	width: 22rem
}
.l-container {
	width: 100%;
	max-width: 1010px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 25px;
	padding-left: 25px
}
.c-btn {
	display: block;
	width: 24rem;
	padding: 1rem 4rem;
	border: 2px solid;
	border-radius: 100vh;
	color: #616b80;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	transition: .5s
}
.c-btnArea {
	margin-top: 4rem
}
.c-btn.center {
	margin: 0 auto
}
.c-btn:hover {
	background: #616b80;
	color: #fff
}
.c-detail {
	padding: 8.2rem 0
}
.c-detail__column {
	margin-top: 7.5rem;
	margin-bottom: 10.6rem
}
.c-detail__main ul {
  display: flex;
  row-gap: 0.5rem;
  flex-direction: column;
  padding-top: 0.6rem;
}
.c-detail__main ul > li {
  padding-left: 1.8rem;
  position: relative;
}
.c-detail__main ul > li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.8rem;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background-color: #11238c;
}
.c-detail__main a {
  color: #11238c;
  text-decoration: underline;
}
.c-detail__main a:hover {
  text-decoration: none;
}
.c-detail__main__title--type {
	margin-bottom: 1rem;
	color: #11238c;
	font-weight: 700;
	font-size: 1.6rem
}
.c-detail__main__title--text {
	color: #000;
	font-weight: 700;
	font-size: 3.6rem;
	line-height: 1.45
}
.c-detail__main__cat {
	-moz-column-gap: 6px;
	display: flex;
	column-gap: 6px;
	row-gap: 8px;
	flex-wrap: wrap;
	margin-top: 25px;
	margin-bottom: 5rem;
	padding-bottom: 4.8rem;
	border-bottom: solid .3rem #014099
}
.c-detail__main__cat a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: -moz-fit-content;
	width: fit-content;
	height: 2.4rem;
	padding: 0 1.2em;
	border-radius: 1.2rem;
	background: #dce6f7;
	color: #014099;
	font-weight: 700;
	font-size: 1.364rem;
	line-height: 0;
	letter-spacing: 0
}
.c-detail__main__cat span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: -moz-fit-content;
	width: fit-content;
	height: 2.4rem;
	padding: 0 1.2em;
	border-radius: 1.2rem;
	background: #dce6f7;
	color: #014099;
	font-weight: 700;
	font-size: 1.364rem;
	line-height: 0;
	letter-spacing: 0
}
.c-detail__main__image {
	margin-bottom: 4rem
}
.c-detail__main__outline {
	margin-bottom: 3rem;
	padding: 1.8rem 2.8rem;
	border-radius: 1rem;
	background: #f6f6f6
}
.c-detail__main__contents .c-detail__main__outline__title {
	color: #014099;
	font-weight: 700;
	font-size: 2.4rem
}
.c-detail__main__contents ul.c-detail__main__outline__list {
	display: flex;
	row-gap: .5rem;
	margin-top: 0;
	flex-direction: column
}
.c-detail__main ul.c-detail__main__outline__list li {
  padding-left: 0;
}
.c-detail__main ul.c-detail__main__outline__list > li::before {
  content: none;
}
.c-detail__main__contents ul.c-detail__main__outline__list>li>a {
	display: block;
	margin-left: 1.3em;
	color: #000;
	font-weight: 700;
	font-size: 1.6rem;
	text-indent: -1.3em;
	text-decoration: none;
}
.c-detail__main__contents ul.c-detail__main__outline__list>li>a:before {
	margin-right: .3em;
	content: "・";
}
.c-detail__main__contents ul.c-detail__main__outline__list>li ul {
	display: block;
	padding-top: 0;
	padding-bottom: 0.5rem;
	margin-top: 0;
	padding-left: 2.2em
}
.c-detail__main ul.c-detail__main__outline__list > li ul li::before {
  content: none;
}
.c-detail__main__contents ul.c-detail__main__outline__list>li ul li a {
	display: block;
	color: #333;
	font-weight: 500;
	font-size: 1.4rem;
	text-decoration: none;
}
.c-detail__main__company {
	-moz-column-gap: 2.6rem;
	display: flex;
	column-gap: 2.6rem;
	row-gap: 1.8rem;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 4rem;
	padding: 2.3rem 2rem 3rem;
	border-radius: 1rem;
	background: #f6f6f6
}
.c-detail__main__company__image {
	width: 100%;
	max-width: 21rem
}
.c-detail__main__company__data {
	display: flex;
	flex: 1;
	flex-direction: column
}
.c-detail__main__contents h2.c-detail__main__company__data__name {
	width: 100%;
	padding: .4rem 0 1.5rem;
	color: #000;
	font-weight: 700;
	border: none;
	font-size: 2.4rem
}
.c-detail__main__contents h2+.c-detail__main__company__data__contents {
	display: flex;
	row-gap: .9rem;
	flex-wrap: wrap;
	align-items: center;
	width: 100%;
	max-width: 35.5rem;
	margin-top: 0;
	padding: 0 .3rem
}
.c-detail__main__company__data__contents dt {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 7.3rem;
	height: 2.4rem;
	border: solid 1px #014099;
	border-radius: 1.2rem;
	background: #fff;
	color: #014099;
	font-weight: 700;
	font-size: 1.2rem;
	line-height: 1;
	letter-spacing: 0
}
.c-detail__main__company__data__contents dd {
	width: -moz-fit-content;
	width: fit-content;
	min-width: 6em;
	padding: 0 .6rem;
	color: #000;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.2
}
.c-detail__main__company__contents {
	width: 100%;
	padding-left: .4rem
}
.c-detail__main__company__contents dt {
	color: #014099;
	font-weight: 700;
	font-size: 1.6rem
}
.c-detail__main__company__contents dd {
	padding-top: .6rem;
	color: #000;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.75
}
.c-detail__main__company__contents dd p+p {
	margin-top: 2em
}
.c-detail__main__contents {
	padding: 0 0 0
}
.c-detail__main__contents h2 {
	padding-bottom: 1.4rem;
	border-bottom: solid .3rem #014099;
	color: #014099;
	font-weight: 700;
	font-size: 2.4rem;
	letter-spacing: 0
}
.c-detail__main__contents *+h2 {
	margin-top: 4.4rem
}
.c-detail__main__contents h2+* {
	margin-top: 1.6rem
}
.c-detail__main__contents h3 {
	padding: .3em .8em;
	background: #dce6f7;
	color: #014099;
	font-weight: 700;
	font-size: 2rem;
	letter-spacing: 0
}
.c-detail__main__contents.c-detail__main__download__text__title h3 {
	padding: .3em .8em;
	background: transparent;
	color: #014099;
	font-weight: 700;
	font-size: 2rem;
	letter-spacing: 0
}
.c-detail__main__contents *+h3 {
	margin-top: 3.5rem
}
.c-detail__main__contents h4 {
	color: #000;
	font-weight: 700;
	font-size: 1.8rem;
	letter-spacing: 0
}
.c-detail__main__contents *+h4 {
	margin-top: 2.5rem
}
.c-detail__main__contents ul {
	display: flex;
	row-gap: 1.6rem;
	flex-direction: column;
	padding-top: .6rem;
	padding-bottom: 1rem
}
.c-detail__main__contents .c-detail__main__contents--points {
	margin-bottom: 4rem;
}
.c-detail__main__contents .c-detail__main__contents--points ul li {
	position: relative;
	padding-left: 4.2rem;
	line-height: 1.5
}
.c-detail__main__contents .c-detail__main__contents--points ul li:before {
	display: block;
	position: absolute;
	top: .2rem;
	left: 0;
	width: 3rem;
	height: 2.5rem;
	background: url(../img/common/detail_contents_check.svg) no-repeat center;
	background-size: contain;
	content: ""
}
.c-detail__main__contents *+ul {
	margin-top: 1.4rem
}
.c-detail__main__contents *+figure {
	margin-top: 4.6rem
}
.c-detail__main__contents p {
	line-height: 2
}
.c-detail__main__contents *+p {
	margin-top: 1.6rem
}
.c-detail__main__contents p+p {
	margin-top: 3.2rem
}
.c-detail__main__contents h4+p {
	margin-top: 1.8rem
}
.c-detail__main__contents figure+p {
	margin-top: 2.4rem
}
.c-detail__main__download {
	-moz-column-gap: 3.2rem;
	display: flex;
	position: relative;
	column-gap: 3.2rem;
	margin-top: 7rem;
	margin-bottom: 4.8rem;
	padding: 2rem 3.5rem 2.4rem;
	border-radius: 1rem;
	background: url(../img/case/detail/download_bg.png)
}
.c-detail__main__download__free {
	display: flex;
	position: absolute;
	top: 0;
	left: 0;
	align-items: center;
	justify-content: center;
	width: 3.1325471698em;
	height: 3.1325471698em;
	translate: -23% -23%;
	border-radius: 100%;
	background: #ffde26;
	color: #014099;
	font-weight: 700;
	font-size: 2.12rem
}
.c-detail__main__contents .c-detail__main__download__image {
	display: flex;
	align-items: center;
	width: 36.7%;
	margin-top: 0;
	padding-top: 1.8rem
}
.c-detail__main__download__text {
	flex: 1
}
.c-detail__main__contents h3.c-detail__main__download__text__title {
	margin-bottom: .8rem;
	color: #fff;
	background-color: transparent;
	font-weight: 700;
	font-size: 2.2rem;
	padding: 0;
	letter-spacing: 0
}
.c-detail__main__download__text p {
	color: #fff;
	font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0
}
.c-detail__main__download__text p+p {
	margin-top: 2em
}
.c-detail__main__download__text a {
	display: flex;
	position: relative;
	align-items: center;
	width: -moz-fit-content;
	width: fit-content;
	height: 3.5rem;
	margin-top: 1.5rem;
	padding: 0 4.5rem 0 2.2rem;
	border-radius: 1.9rem;
	background: #fff;
	color: #014099;
	font-weight: 700;
	font-size: 1.6rem;
	letter-spacing: 0;
    text-decoration: none;
}
.c-detail__main__download__text a:after {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 2.2rem;
	width: .7rem;
	height: .7rem;
	transform: skew(5deg, 5deg);
	translate: 25% -50%;
	rotate: -45deg;
	border: solid #014099;
	border-width: 0 2px 2px 0;
	content: "";
	transition: all .2s
}
.c-detail__main__download__text a:focus:after {
	right: 1.7rem
}
.c-detail__main__relation {
	display: flex;
	row-gap: 2.2rem;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 6rem
}
.c-detail__main__contents h3.c-detail__main__relation__title {
	width: 100%;
	padding: 0;
	background-color: transparent;
	margin-top: 0;
	margin-bottom: 1rem;
	padding-bottom: 1.4rem;
	border-bottom: solid .3rem #014099;
	color: #014099;
	font-weight: 700;
	font-size: 2.4rem
}
.c-detail__main__relation__service {
	-moz-column-gap: 2.5rem;
	display: flex;
	position: relative;
	column-gap: 2.5rem;
	align-items: center;
	width: 48.5%;
	padding: 0;
	border: solid 1px #d7d7d7;
	border-radius: 1rem;
	background: #fff;
	text-decoration: none !important;
}
.c-detail__main__relation__service:after {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 1.8rem;
	width: 1rem;
	height: 1rem;
	transform: skew(5deg, 5deg);
	translate: 25% -50%;
	rotate: -45deg;
	border: solid #014099;
	border-width: 0 2px 2px 0;
	content: "";
	transition: all .2s
}
.c-detail__main__relation__service:focus:after {
	right: 1.3rem
}
.c-detail__main__contents .c-detail__main__relation__service__image {
	margin-top: 0;
	aspect-ratio: 1/1;
	width: 9.7rem
}
.c-detail__main__relation__service p {
	flex: 1;
	color: #000;
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.5
}
.c-detail__main__contents .c-detail__main__relation__service figure+p {
	margin-top: 0;
}
.c-detail__side {
	padding-top: .6rem
}
.c-detail__side__download {
	-moz-column-gap: 3.2rem;
	display: flex;
	position: relative;
	column-gap: 3.2rem;
	flex-direction: column;
	align-items: center;
	padding: .8rem .8rem 1.6rem;
	border-radius: 1rem;
	background: url(../img/case/detail/download_bg.png)
}
.c-detail__main__contents h3.c-detail__side__download__title {
	margin-bottom: .6rem;
	color: #fff;
	background-color: transparent;
	font-weight: 700;
	padding: 0;
	font-size: 2.4rem
}
.c-detail__side__download__free {
	display: flex;
	position: absolute;
	right: .8rem;
	align-items: center;
	justify-content: center;
	width: 3.1333333333em;
	height: 3.1333333333em;
	translate: 0 100%;
	border-radius: 100%;
	background: #ffde26;
	color: #014099;
	font-weight: 700;
	font-size: 1.5rem
}
.c-detail__main__contents *+figure.c-detail__side__download__image {
	width: 100%;
	margin-top: 0;
	max-width: 13.8rem
}
.c-detail__side__download a {
	display: flex;
	position: relative;
	align-items: center;
	width: -moz-fit-content;
	width: fit-content;
	height: 3.5rem;
	margin-top: 1rem;
	padding: 0 2.5rem 0 1.8rem;
	border-radius: 1.9rem;
	background: #fff;
	color: #014099;
	font-weight: 700;
	font-size: 1.3rem
}
.c-detail__side__download a:after {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 1.8rem;
	width: .7rem;
	height: .7rem;
	transform: skew(5deg, 5deg);
	transform-origin: 78%;
	translate: 25% -50%;
	rotate: -45deg;
	border: solid #014099;
	border-width: 0 2px 2px 0;
	content: "";
	transition: all .2s
}
.c-detail__side__download a:focus:after {
	right: 1.3rem
}
*+.c-detail__side__relation {
	margin-top: 3.2rem
}
.c-detail__main__contents h3.c-detail__side__relation__title {
	padding: 0;
	background-color: transparent;
	margin-bottom: 1.6rem;
	padding-bottom: .6rem;
	border-bottom: solid .2rem #014099;
	color: #000;
	font-weight: 700;
	font-size: 1.6rem
}
.c-detail__side__relation__post {
	-moz-column-gap: 1.6rem;
	display: flex;
	column-gap: 1.6rem;
	align-items: center;
	justify-content: space-between;
	padding: 1rem 0 1.1rem;
	border-bottom: solid 1px #d7d7d7
}
.c-detail__side__relation__post:first-of-type {
	padding-top: 0
}
.c-detail__side__relation__post__image {
	position: relative;
	aspect-ratio: 1/1;
	width: 6.4rem
}
.c-detail__side__relation__post__image img {
	-o-object-fit: cover;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover
}
.c-detail__main__contents .c-detail__side__relation__post p {
	flex: 1;
	color: #000;
	font-weight: 500;
	font-size: 1.3rem;
	margin-top: 0;
	line-height: 1.5
}
.c-detail__side__relation__service {
	-moz-column-gap: 1.3rem;
	display: flex;
	position: relative;
	column-gap: 1.3rem;
	align-items: center;
	width: 100%;
	padding: 0;
	border: solid 1px #d7d7d7;
	border-radius: 1rem;
	background: #fff
}
.c-detail__side__relation__service:after {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 1.6rem;
	width: .8rem;
	height: .8rem;
	transform: skew(5deg, 5deg);
	transform-origin: 78%;
	translate: 25% -50%;
	rotate: -45deg;
	border: solid #014099;
	border-width: 0 2px 2px 0;
	content: "";
	transition: all .2s
}
.c-detail__side__relation__service:focus:after {
	right: 1.1rem
}
.c-detail__side__relation__service__image {
	aspect-ratio: 1/1;
	width: 6.3rem
}
.c-detail__side__relation__service p {
	flex: 1;
	color: #014099;
	font-weight: 700;
	font-size: 1.3rem;
	line-height: 1.3
}
.c-detail__main__contents .c-detail__side__relation__service figure+p {
	margin-top: 0;
}
.c-heading {
	border-bottom: solid 3px #014099;
	color: #014099;
	font-weight: 700;
	font-size: 2.6rem
}
.c-lead {
	margin-top: 3rem
}
.c-link__inner {
	-moz-column-gap: 2rem;
	display: flex;
	column-gap: 2rem;
	row-gap: 2rem;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center
}
.c-link-bottom {
	padding: 4rem 0;
	background: #f6f6f6
}
.c-link-bottom a {
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 30.9rem;
	height: 9rem;
	border-radius: 1.8rem;
	background: #fff;
	font-weight: 400;
	font-size: 1.6rem
}
.c-link-bottom a:after {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 3rem;
	width: .9rem;
	height: .9rem;
	transform: skew(5deg, 5deg);
	translate: 25% -50%;
	rotate: -45deg;
	border: solid #014099;
	border-width: 0 2px 2px 0;
	content: "";
	transition: all .2s
}
.c-link-bottom a:focus:after {
	right: 2.5rem
}
.c-list {
	-moz-column-gap: 2rem;
	display: flex;
	column-gap: 2rem;
	row-gap: 8rem;
	flex-wrap: wrap;
	justify-content: flex-start
}
.c-list__item {
	display: flex;
	flex-direction: column;
	width: 30.4rem;
	background: #fff;
	transition: all .3s;
	text-decoration: none !important;
}
.c-list__item__image {
	position: relative;
	aspect-ratio: 304/188;
	width: 100%;
	overflow: hidden;
	border-radius: 1.6rem
}
.c-list__item__image img {
	-o-object-fit: cover;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover
}
.c-list__item__text {
	padding: 1.6rem 0 0
}
.c-list__item__text--company, .c-list__item__text--time {
	color: #014099;
	font-weight: 700;
	font-size: 15px
}
.c-list__item__text--time {
	font-weight: 400;
	font-family: "Staatliches", cursive
}
.c-detail__main__contents h3.c-list__item__text--title {
	color: #000;
	background-color: transparent;
	padding: 0;
	margin-top: 0;
	font-weight: bold;
	font-size: 18px;
	line-height: 1.6
}
.c-list__item__text--cat {
	-moz-column-gap: 6px;
	display: flex;
	column-gap: 6px;
	row-gap: 8px;
	flex-wrap: wrap;
	margin-top: 25px
}
.c-list__item__text--cat span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: -moz-fit-content;
	width: fit-content;
	height: 23px;
	padding: 0 1.4em;
	border-radius: 12px;
	background: #dce6f7;
	color: #014099;
	font-weight: 700;
	font-size: 13px;
	letter-spacing: 0
}
.c-list.is-row {
	row-gap: 2.6rem
}
.c-list.is-row .c-list__item {
	-moz-column-gap: 2.6rem;
	column-gap: 2.6rem;
	flex-direction: row;
	align-items: center;
	width: 100%;
	box-shadow: none
}
.c-list.is-row .c-list__item__image {
	aspect-ratio: 182/113;
	max-width: 18.2rem;
	height: auto;
	margin-top: .4rem;
	padding: 0;
	overflow: hidden;
	border-radius: 1.6rem
}
.c-list.is-row .c-list__item__text {
	flex: 1;
	padding: 0
}
.c-list.is-row .c-list__item__text--cat {
	margin-top: 1.5rem
}
.c-list.is-row .c-list__item__text--cat a, .c-list.is-row .c-list__item__text--cat span {
	background: #dce6f7
}
.c-list.js-slide {
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 30px 60px;
	overflow: hidden
}
.c-list.js-slide .slick-list {
	overflow: visible
}
.c-list.js-slide .slick-track {
	display: flex
}
.c-list.js-slide .slick-next, .c-list.js-slide .slick-prev {
	display: flex;
	z-index: 9;
	top: 35.5%;
	align-items: center;
	justify-content: center;
	width: 40px;
	padding: 40px 0 0 0;
	overflow: hidden;
	border-radius: 100%;
	background: #014099 !important;
	transition: all .3s
}
.c-list.js-slide .slick-next:before, .c-list.js-slide .slick-prev:before {
	display: inline-block;
	position: absolute;
	top: 50%;
	width: .9rem;
	height: .9rem;
	transform: skew(5deg, 5deg);
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	content: "";
	transition: all .2s
}
.c-list.js-slide .slick-next.slick-disabled, .c-list.js-slide .slick-prev.slick-disabled {
	opacity: 0;
	pointer-events: none
}
.c-list.js-slide .slick-prev {
	left: 0
}
.c-list.js-slide .slick-prev:before {
	translate: 25% -50%;
	rotate: 135deg
}
.c-list.js-slide .slick-prev:focus:before {
	margin-right: .8rem
}
.c-list.js-slide .slick-next {
	right: 0
}
.c-list.js-slide .slick-next:before {
	translate: -25% -50%;
	rotate: -45deg
}
.c-list.js-slide .slick-next:focus:before {
	margin-left: .8rem
}
.c-list.js-slide .c-list__item+.c-list__item {
	margin-left: 24px
}
.c-list.js-slide .c-list__item:not(.slick-active):has(+.slick-active), .c-list.js-slide .c-list__item.slick-active+a:not(.slick-active) {
	opacity: 0;
	pointer-events: none
}
.c-list.js-slide .c-list__item+.c-list.js-slide .c-list__item {
	margin-left: 30px
}
*+.c-search {
	margin-top: 5.6rem
}
.c-search__panel {
	padding: 4rem 3.6rem;
	border-radius: 1rem;
	background: #f6f6f6
}
.c-search__panel dl {
	display: flex;
	row-gap: 2.9rem;
	flex-wrap: wrap;
	align-items: start
}
.c-search__panel dl dt {
	width: 17%;
	padding-right: .5em;
	color: #000;
	font-weight: bold;
	font-size: 1.6rem
}
.c-search__panel dl dd {
	-moz-column-gap: 1rem;
	display: flex;
	column-gap: 1rem;
	row-gap: .7rem;
	flex-wrap: wrap;
	width: 83%
}
.c-search__panel dl dd input[type=radio] {
	display: none
}
.c-search__panel dl dd input[type=radio]:checked+label {
	background: #014099;
	color: #fff
}
.c-search__panel dl dd label {
	display: flex;
	align-items: center;
	width: -moz-fit-content;
	width: fit-content;
	min-height: 3.2rem;
	padding: 0 1.55em;
	border: solid 1px #014099;
	border-radius: 1.6rem;
	background: #fff;
	color: #014099;
	font-weight: bold;
	font-size: 1.4rem;
	letter-spacing: -0.04em
}
.c-search__results {
	padding: 8.7rem 0 12rem
}
.gnav__nav__contact, .gnav__menu {
	min-width: auto
}
.pagetop-sp__link {
	color: rgba(0, 0, 0, 0)
}
.p-top-case {
	padding: 0 0 8rem
}
.p-top-case__title {
	position: relative;
	width: 96%;
	max-width: 960px;
	margin: auto;
	padding-bottom: .8rem;
	color: #014099
}
.p-top-case__title:before {
	position: absolute;
	top: 32px;
	right: calc(100% + 20px);
	width: 100%;
	height: 1px;
	background-color: #014099;
	content: ""
}
.p-top-case__title--ja {
	display: block;
	font-weight: 700;
	font-size: 40px;
	line-height: 1.5em;
	letter-spacing: .08em
}
.p-top-case__title--en {
	display: block;
	font-size: 2rem;
	font-family: "Staatliches", cursive;
	letter-spacing: .1em;
	text-indent: .5em
}
.p-top-case__buttons__list {
	padding-top: 3.3rem
}
.p-top-case__buttons__item a {
	display: block;
	position: relative;
	width: 260px;
	margin: auto;
	padding: 18px;
	border-radius: 26px;
	background-color: #014099;
	color: #fff;
	line-height: 1em;
	text-align: center;
	text-decoration: none
}
.p-top-case__buttons__item a:after {
	-webkit-transform: translateY(-50%) rotate(-45deg) skew(5deg, 5deg);
	-ms-transform: translateY(-50%) rotate(-45deg) skew(5deg, 5deg);
	-webkit-transition: all .2s;
	-o-transition: all .2s;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 22px;
	width: 8px;
	height: 8px;
	transform: translateY(-50%) rotate(-45deg) skew(5deg, 5deg);
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	content: "";
	transition: all .2s
}
.p-top-case__buttons__item a:focus {
	opacity: .8
}
.p-top-case__buttons__item a:focus:after {
	right: 17px
}
.p-top-column {
	padding: 0 0 9.6rem
}
.p-top-column__title {
	position: relative;
	width: 96%;
	max-width: 960px;
	margin: auto;
	padding-bottom: .8rem;
	color: #014099
}
.p-top-column__title:before {
	position: absolute;
	top: 32px;
	right: calc(100% + 20px);
	width: 100%;
	height: 1px;
	background-color: #014099;
	content: ""
}
.p-top-column__title--ja {
	display: block;
	font-weight: 700;
	font-size: 40px;
	line-height: 1.5em;
	letter-spacing: .08em
}
.p-top-column__title--en {
	display: block;
	font-size: 2rem;
	font-family: "Staatliches", cursive;
	letter-spacing: .1em;
	text-indent: .5em
}
.p-top-column__buttons__list {
	padding-top: 3.3rem
}
.p-top-column__buttons__item a {
	display: block;
	position: relative;
	width: 260px;
	margin: auto;
	padding: 18px;
	border-radius: 26px;
	background-color: #014099;
	color: #fff;
	line-height: 1em;
	text-align: center;
	text-decoration: none
}
.p-top-column__buttons__item a:after {
	-webkit-transform: translateY(-50%) rotate(-45deg) skew(5deg, 5deg);
	-ms-transform: translateY(-50%) rotate(-45deg) skew(5deg, 5deg);
	-webkit-transition: all .2s;
	-o-transition: all .2s;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 22px;
	width: 8px;
	height: 8px;
	transform: translateY(-50%) rotate(-45deg) skew(5deg, 5deg);
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	content: "";
	transition: all .2s
}
.p-top-column__buttons__item a:focus {
	opacity: .8
}
.p-top-column__buttons__item a:focus:after {
	right: 17px
}
.u-mt--10 {
	margin-top: 1rem
}
.u-mb--10 {
	margin-bottom: 1rem
}
.u-mr--10 {
	margin-right: 1rem
}
.u-ml--10 {
	margin-left: 1rem
}
.u-mt--20 {
	margin-top: 2rem
}
.u-mb--20 {
	margin-bottom: 2rem
}
.u-mr--20 {
	margin-right: 2rem
}
.u-ml--20 {
	margin-left: 2rem
}
.u-mt--30 {
	margin-top: 3rem
}
.u-mb--30 {
	margin-bottom: 3rem
}
.u-mr--30 {
	margin-right: 3rem
}
.u-ml--30 {
	margin-left: 3rem
}
.u-mt--40 {
	margin-top: 4rem
}
.u-mb--40 {
	margin-bottom: 4rem
}
.u-mr--40 {
	margin-right: 4rem
}
.u-ml--40 {
	margin-left: 4rem
}
.u-mt--50 {
	margin-top: 5rem
}
.u-mb--50 {
	margin-bottom: 5rem
}
.u-mr--50 {
	margin-right: 5rem
}
.u-ml--50 {
	margin-left: 5rem
}
.u-mt--60 {
	margin-top: 6rem
}
.u-mb--60 {
	margin-bottom: 6rem
}
.u-mr--60 {
	margin-right: 6rem
}
.u-ml--60 {
	margin-left: 6rem
}
.u-mt--70 {
	margin-top: 7rem
}
.u-mb--70 {
	margin-bottom: 7rem
}
.u-mr--70 {
	margin-right: 7rem
}
.u-ml--70 {
	margin-left: 7rem
}
.u-mt--80 {
	margin-top: 8rem
}
.u-mb--80 {
	margin-bottom: 8rem
}
.u-mr--80 {
	margin-right: 8rem
}
.u-ml--80 {
	margin-left: 8rem
}
.u-mt--90 {
	margin-top: 9rem
}
.u-mb--90 {
	margin-bottom: 9rem
}
.u-mr--90 {
	margin-right: 9rem
}
.u-ml--90 {
	margin-left: 9rem
}
.u-mt--100 {
	margin-top: 10rem
}
.u-mb--100 {
	margin-bottom: 10rem
}
.u-mr--100 {
	margin-right: 10rem
}
.u-ml--100 {
	margin-left: 10rem
}
.u-mt--110 {
	margin-top: 11rem
}
.u-mb--110 {
	margin-bottom: 11rem
}
.u-mr--110 {
	margin-right: 11rem
}
.u-ml--110 {
	margin-left: 11rem
}
.u-mt--120 {
	margin-top: 12rem
}
.u-mb--120 {
	margin-bottom: 12rem
}
.u-mr--120 {
	margin-right: 12rem
}
.u-ml--120 {
	margin-left: 12rem
}
.u-textalign--center {
	text-align: center
}
.u-textalign--left {
	text-align: left
}
.u-textalign--right {
	text-align: right
}
@media screen and (max-width: 1280px) {
	html {
		font-size: .78125vw
	}
}
@media screen and (max-width: 768px) {
	html {
		font-size: 2.0833333333vw
	}
	body {
		font-size: 1.4rem
	}
	.l-column {
		flex-direction: column
	}
	.l-column__side {
		width: 100%
	}
	.l-container {
		padding-right: 20px;
		padding-left: 20px
	}
	.c-btnArea {
		margin-top: 2rem
	}
	.c-detail__main__company {
		flex-direction: column
	}
	.c-detail__main__company__image {
		max-width: none
	}
	.c-detail__main__download {
		row-gap: 2rem;
		flex-direction: column;
		align-items: center;
		padding: 2rem
	}
	.c-detail__main__download__image {
		width: 70%
	}
	.c-detail__main__download__text {
		display: flex;
		flex-direction: column;
		align-items: center
	}
	.c-detail__main__relation__service {
		width: 100%
	}
	.c-lead {
		margin-top: 2rem
	}
	.c-list__item {
		width: 100%
	}
	.c-list.is-row .c-list__item {
		row-gap: 2rem;
		flex-direction: column
	}
	.c-list.is-row .c-list__item__image {
		width: 100%;
		max-width: none
	}
	.c-list.js-slide .slick-track {
		margin-left: 12px
	}
	.c-list.js-slide .c-list__item:not(.slick-active):has(+.slick-active), .c-list.js-slide .c-list__item.slick-active+a:not(.slick-active) {
		opacity: 1
	}
	.c-list.js-slide .c-list__item+.c-list.js-slide .c-list__item {
		margin-left: 0
	}
	.c-search__panel {
		padding: 2rem
	}
	.c-search__panel dl {
		row-gap: 1.5rem;
		flex-direction: column
	}
	.c-search__panel dl dt {
		width: 100%
	}
	.u-pc {
		display: none !important
	}
}
@media(hover: hover) {
	a:hover {
		text-decoration: none
	}
}
@media(hover: none) {
	a:active {
		text-decoration: none
	}
}
@media(hover: hover)and (pointer: fine) {
	.c-detail__main__download__text a:hover:after {
		right: 1.7rem
	}
	.c-detail__main__relation__service:hover:after {
		right: 1.3rem
	}
	.c-detail__side__download a:hover:after {
		right: 1.3rem
	}
	.c-detail__side__relation__service:hover:after {
		right: 1.1rem
	}
	.c-link-bottom a:hover:after {
		right: 2.5rem
	}
	.c-list.js-slide .slick-prev:hover:before {
		margin-right: .8rem
	}
	.c-list.js-slide .slick-next:hover:before {
		margin-left: .8rem
	}
	.p-top-case__buttons__item a:hover {
		opacity: .8
	}
	.p-top-case__buttons__item a:hover:after {
		right: 17px
	}
	.p-top-column__buttons__item a:hover {
		opacity: .8
	}
	.p-top-column__buttons__item a:hover:after {
		right: 17px
	}
}
@media screen and (min-width: 769px) {
	.u-sp {
		display: none !important
	}
}
/* テーブルの基本スタイル */
.c-table {
  width: 100%; /* 横幅いっぱい */
  border-collapse: collapse; /* ボーダーを重ねる */
  border: 1px solid #b0c4de; /* テーブル全体の枠線 */
}

/* テーブルヘッダーのスタイル */
.c-table th {
  background-color: #11238c;
  color: #fff;
  padding: 12px 16px;
  font-weight: bold;
  text-align: cnter;
}

/* テーブルセルのスタイル */
.c-table td {
  padding: 12px 16px;
  border-bottom: 1px solid #b0c4de;
}

/* テーブルの行（奇数行）の背景色 */
.c-table tbody tr:nth-child(odd) {
  background-color: #ffffff; /* 白 */
}

/* テーブルの行（偶数行）の背景色 */
.c-table tbody tr:nth-child(even) {
  background-color: #dcf8ff; /* 指定された薄い青 */
}


/* 横スクロールメッセージの初期状態（PCでは非表示） */
.p-table-scroll-message {
  display: none;
}

.p-table-wrap {
  margin-top: 0.7rem;
}

/* --- スマートフォン表示時のスタイル --- */
/* 一般的なスマートフォンのブレークポイント（幅767px以下）に適用 */
@media screen and (max-width: 767px) {

  .l-column__main {
    width: 100%;
    display: block;
  }

  /* テーブルを囲むdivで横スクロールを有効にする */
  .p-table-wrap {
    overflow-x: auto; /* 横方向にはみ出た場合にスクロールさせる */
  }

  /* 横スクロールメッセージを表示する */
  .p-table-scroll-message {
    display: block; /* 表示状態にする */
    margin-bottom: 0.5em; /* テーブルとの間に少し余白をとる */
    font-size: 0.875rem; /* 少し小さめの文字サイズ */
    color: #555; /* メッセージの文字色 */
    text-align: left; /* 右寄せ */
  }

  .c-table {
    width: 100%;
    white-space: nowrap;
  }
}
p + .c-detail__main__outline {
  margin-top: 3rem;
}