@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap');


*, ::before, ::after {
  box-sizing: border-box
}

::before, ::after {
  text-decoration: inherit;
  vertical-align: inherit
}

html {
  cursor: default;
  line-height: 1.5;
  -moz-tab-size: 4;
  tab-size: 4;
  -webkit-tap-highlight-color: transparent;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  word-break: break-word
}

body {
  margin: 0;
  counter-reset: number 0;
}

h1 {
  font-size: 2em;
  margin: .67em 0
}

dl dl, dl ol, dl ul, ol dl, ul dl {
  margin: 0
}

ol ol, ol ul, ul ol, ul ul {
  margin: 0
}

hr {
  height: 0;
  overflow: visible
}

main {
  display: block
}

nav ol, nav ul {
  list-style: none;
  padding: 0
}

pre {
  font-family: monospace, monospace;
  font-size: 1em
}

a {
  background-color: transparent
}

abbr[title] {
  text-decoration: underline;
  text-decoration: underline dotted
}

b, strong {
  font-weight: bolder
}

code, kbd, samp {
  font-family: monospace, monospace;
  font-size: 1em
}

small {
  font-size: 80%
}

audio, video {
  display: inline-block
}

audio:not([controls]) {
  display: none;
  height: 0
}

iframe {
  border-style: none
}

img {
  border-style: none
}

svg:not(:root) {
  overflow: hidden
}

table {
  border-collapse: collapse
}

button, input, select {
  margin: 0
}

button {
  overflow: visible;
  text-transform: none
}

button, [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button
}

fieldset {
  border: 1px solid #a0a0a0;
  padding: .35em .75em .625em
}

input {
  overflow: visible
}

legend {
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal
}

progress {
  display: inline-block;
  vertical-align: baseline
}

select {
  text-transform: none
}

textarea {
  margin: 0;
  overflow: auto;
  resize: vertical
}

[type=checkbox], [type=radio] {
  padding: 0
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px
}

.mb-30 {
  margin-bottom: 30px !important;
}

::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
  height: auto
}

::-webkit-input-placeholder {
  color: inherit;
  opacity: .54
}

::-webkit-search-decoration {
  -webkit-appearance: none
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit
}

::-moz-focus-inner {
  border-style: none;
  padding: 0
}

:-moz-focusring {
  outline: 1px dotted
}

:-moz-ui-invalid {
  box-shadow: none
}

details {
  display: block
}

dialog {
  background-color: var(--main-bg-color);
  border: solid;
  color: var(--main-text-color);
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content
}

dialog:not([open]) {
  display: none
}

summary {
  display: list-item
}

canvas {
  display: inline-block
}

template {
  display: none
}

a, area, button, input, label, select, summary, textarea, [tabindex] {
  -ms-touch-action: manipulation;
  touch-action: manipulation
}

[hidden] {
  display: none
}

[aria-busy=true] {
  cursor: progress
}

[aria-controls] {
  cursor: pointer
}

[aria-disabled=true], [disabled] {
  cursor: not-allowed
}

[aria-hidden=false][hidden] {
  display: initial
}

[aria-hidden=false][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute
}


/* font */
:root {
  font-size: 16px;
  font-family: Arial, Helvetica, Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
@media only screen and (max-width: 1200px) {
	:root {
		font-size: 14px;
	}
}
@media only screen and (max-width: 920px) {
	:root {
		font-size: 12px;
	}
}

/* size */
:root {
	--size-xs: 1rem;
	--size-sm: 2rem;
	--size-md: 3rem;
	--size-lg: 4rem;
	--size-xl: 5rem;

	--fsize-xs: 0.8rem;
	--fsize-sm: 0.9rem;
	--fsize-md: 1rem;
	--fsize-lg: 1.25rem;
	--fsize-xl: 1.875rem;

	--menu-height: 4rem;
}

html {
  color: var(--text-default)
}

@media screen and (min-width: 768px) {
  .spOnly, .sp_only{
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .pcOnly, .pc_only{
    display: none !important;
  }
}

/* headline */
h1, h2, h3 {
  font-weight: 700;
  line-height: 1.33333;
	margin: 0;
}
h2 {
  font-size: var(--fsize-xl);
}
h3 {
  font-size: var(--fsize-lg);
}

p {
  margin-top: 0;
  margin: 0;
  line-height: 1.875;
}

a {
  text-decoration: underline;
  color: var(--color-text);
  transition: all .3s;
}
a:hover {
	opacity: .7;
}

img {
  width: 100%;
  height: auto;
  display: block
}

figure {
  margin: 0
}

strong {
  font-weight: bold;
  color: var(--accent-text-color)
}

/* table */
table {
  margin: 0 auto 1.875rem;
  border-left: solid 1px #7f7f7f;
  border-top: solid 1px #7f7f7f;
  line-height: 1.5;
  font-size: .875rem
}
table:not(:first-child) {
  margin-top: .75rem
}
table caption {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 1.33333;
  text-align: center;
  font-size: 2rem;
  margin: 0 0 2.125rem
}
table:first-child caption {
  margin-top: 0
}
th *:last-child, td *:last-child {
  margin-bottom: 0
}
th, thead td {
  text-align: left;
  background: var(--secondary-bg-color);
  color: var(--secondary-text-color)
}
td {
  background: var(--bg-section-box)
}
th, td {
  border-right: solid 1px #7f7f7f;
  border-bottom: solid 1px #7f7f7f;
  padding: .375rem;
  vertical-align: top
}
@media only screen and (min-width: 1024px) {
  table {
    max-width: 57.75rem
  }
}
@media only screen and (min-width: 830px) {
  table {
    font-size: 1rem;
    margin: 0 auto 3.75rem;
    max-width: 48.75rem
  }
  th, td {
    padding: .625rem
  }
}

/* class Style */
.text-red { color: #d9534f; }

.text-right { text-align: center; }
.text-center { text-align: center; }
.text-left { text-align: center; }


.alert-danger {
	color: var(--alert-def-text);
	background-color: var(--alert-def-bg);
	list-style: none;
	padding: var(--size-xs);
	margin-top: 0;
}


/**
	right-float-box
**/
#right-float-box {
	position: fixed;
	bottom: 70px;
	right: 20px;
	transform: translateX(250px);
	transition: .5s;
	opacity: 0;
	z-index: 1000;
}
#right-float-box.scroll-start {
	transform: translateX(0);
	opacity: 1;
	transition: .5s;
}
#right-float-box.scroll-start.scroll-end {
	transform: translateX(250px);
	opacity: 0;
}
.right-float-box-in {
	display: inline-block;
}
.right-float-box-in .right-float-in {
	display: block;
	text-align: right;
}
.right-float-box-in .right-float-in > * {
	display: block;
	box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.6);
	text-decoration: none;
}
.right-float-box-in .right-float-in img {
	max-width: 500px;
}
.right-float-box-in .upperRight img {
	width: 40px;
}
.right-float-box-in .right-float-in p {
	text-align: left;
	background-color: #FFF;
	padding: .5rem;
	text-decoration: none;
}
.right-float-box-in .upperRight {
	font-size: 25px;
	position: absolute;
	top: -10px;
	right: -10px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	color: #FFF;
	background: #000;
	text-align: center;
	border-radius: 3px;
	cursor: pointer;
	z-index: 10;
	transition: all .5s;
}
.right-float-box-in .upperRight:hover {
	transform: scale(1.2);
} 
.right-float-box-in .upperRight::before{
	content: "\f00d";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
}
.right-float-box-in .right-float-in label {
	text-align: center;
	display: inline-block;
	height: auto;
	line-height: 1.7;
	font-size: 15px;
	color: #000;
	margin-top: 5px;
	padding: 5px;
	background: rgb(255 255 255 / 50%);
	border-radius: 3px;
}
.right-float-box-in .right-float-in label input {
  vertical-align: text-top;
  line-height: 1;
  top: 1px;
}
.right-float-box-in .btn-hide input[type="checkbox"] {
  display: none;
}
.right-float-box-in .btn-hide > span {
	position: relative;
	vertical-align: middle;
	font-size: 13px;
	margin-right: 5px;
	border-radius: 3px;
	padding: 2px;
	border: 2px solid #000;
	background: #fff;
	opacity: .2;
	transition: all .3s;
}
.right-float-box-in .btn-hide input[type="checkbox"] + span:before {
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  content: '\f00c';
  color: #000000;
  opacity: 0;
  transition: all .3s;
}
.right-float-box-in .btn-hide input[type="checkbox"]:checked + span {
	opacity: 1;
}
.right-float-box-in .btn-hide input[type="checkbox"]:checked + span:before {
	opacity: 1;
}
@media only screen and (max-width:678px){
	.right-float-box-in .upperRight img {width:5vw;}
	.right-float-box-in .right-float-in img {max-width: 72vw;}
  #right-float-box.scroll-start{
		right: 0;bottom: 15vw;
		max-width: 50vw;
	}
  .right-float-box-in .right-float-in label {
    font-size: 12px !important;
    display: block;
    margin-top: 0;
    border-radius: 0;
  }
  .right-float-box-in .upperRight {
		top: -30px;
    right: 0;
    font-size: 15px;
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
}
@media only screen and (max-width:460px) {
	#right-float-box {bottom: 30vw;}
}


/**
	page-top
**/
#page-top {
	position: fixed;
	display: flex;
	z-index: 999;
	cursor: pointer;
	right: 20px;
	bottom: 10px;
	background: #fff;
	color: #000;
	padding: 7px;
	border-radius: 3px;
	text-decoration: none;
	opacity: .5;
	transition: all .5s;
	font-size: .8rem;
	align-items: center;
	justify-content: center;
}
#page-top:hover {
	transform: scale(1.2);
	box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.6);
	opacity: 1;
}
#page-top > i {
	font-size: 30px;
}
#page-top > img {
	width: 20px;
	height: 20px;
}
#page-top > span {
	margin-left: 5px;
}
@media only screen and (max-width:678px){
    #page-top {
    	right: 0;
    	bottom: 0;
    	padding: 2vw 3vw;
    }
    #page-top > i {
    	font-size: 7vw;
    }
}


:root {
	--color-bg: var(--color01-bg); /* 背景色 */
	--color-text: var(--color01-text); /* 文字色 */
	--color-border: var(--color01-border); /* 線色 */
	--color-head-bg: var(--color01-head-bg); /* 背景色 */
	--color-head-text: var(--color01-head-text); /* 文字色 */
	--color-head-border: var(--color01-head-border); /* 線色 */
	--color-gradation: var(--color01-gradation); /* グラデーション  */
	--block-head-bg: var(--color01-block-head-bg);
	--block-head-text: var(--color01-block-head-text);
	--block-head-border: var(--color01-block-head-border);
	--box-head-bg: var(--color01-box-head-bg);
	--box-head-text: var(--color01-box-head-text);
	--box-head-border: var(--color01-box-head-border);
	--box-def-bg: var(--color01-box-def-bg);
	--box-def-text: var(--color01-box-def-text);
	--box-def-border: var(--color01-box-def-border);
	--box-info-bg: var(--color01-box-info-bg);
	--box-info-text: var(--color01-box-info-text);
	--box-info-border: var(--color01-box-info-border);
	--note-def-bg: var(--color01-note-def-bg);
	--note-def-text: var(--color01-note-def-text);
	--note-def-border: var(--color01-note-def-border);
	--note-head-bg: var(--color01-note-head-bg);
	--note-head-text: var(--color01-note-head-text);
	--note-head-border: var(--color01-note-head-border);
}
/* color pallet */
.l-section-wrapper {
	--color-bg: var(--color01-bg); /* 背景色 */
	--color-text: var(--color01-text); /* 文字色 */
	--color-border: var(--color01-border); /* 線色 */
	--color-head-bg: var(--color01-head-bg); /* 背景色 */
	--color-head-text: var(--color01-head-text); /* 文字色 */
	--color-head-border: var(--color01-head-border); /* 線色 */
	--color-gradation: var(--color01-gradation); /* グラデーション  */
	--block-head-bg: var(--color01-block-head-bg);
	--block-head-text: var(--color01-block-head-text);
	--block-head-border: var(--color01-block-head-border);
	--box-head-bg: var(--color01-box-head-bg);
	--box-head-text: var(--color01-box-head-text);
	--box-head-border: var(--color01-box-head-border);
	--box-def-bg: var(--color01-box-def-bg);
	--box-def-text: var(--color01-box-def-text);
	--box-def-border: var(--color01-box-def-border);
	--box-info-bg: var(--color01-box-info-bg);
	--box-info-text: var(--color01-box-info-text);
	--box-info-border: var(--color01-box-info-border);
	--note-def-bg: var(--color01-note-def-bg);
	--note-def-text: var(--color01-note-def-text);
	--note-def-border: var(--color01-note-def-border);
	--note-head-bg: var(--color01-note-head-bg);
	--note-head-text: var(--color01-note-head-text);
	--note-head-border: var(--color01-note-head-border);
}
.l-section-wrapper:nth-child(2n) {
	--color-bg: var(--color02-bg); /* 背景色 */
	--color-text: var(--color02-text); /* 文字色 */
	--color-border: var(--color02-border); /* 線色 */
	--color-head-bg: var(--color02-head-bg); /* 背景色 */
	--color-head-text: var(--color02-head-text); /* 文字色 */
	--color-head-border: var(--color02-head-border); /* 線色 */
	--color-gradation: var(--color02-gradation); /* グラデーション  */
	--block-head-bg: var(--color02-block-head-bg);
	--block-head-text: var(--color02-block-head-text);
	--block-head-border: var(--color02-block-head-border);
	--box-head-bg: var(--color02-box-head-bg);
	--box-head-text: var(--color02-box-head-text);
	--box-head-border: var(--color02-box-head-border);
	--box-def-bg: var(--color02-box-def-bg);
	--box-def-text: var(--color02-box-def-text);
	--box-def-border: var(--color02-box-def-border);
	--box-info-bg: var(--color02-box-info-bg);
	--box-info-text: var(--color02-box-info-text);
	--box-info-border: var(--color02-box-info-border);
	--note-def-bg: var(--color02-note-def-bg);
	--note-def-text: var(--color02-note-def-text);
	--note-def-border: var(--color02-note-def-border);
	--note-head-bg: var(--color02-note-head-bg);
	--note-head-text: var(--color02-note-head-text);
	--note-head-border: var(--color02-note-head-border);
}




.l-section-wrapper {
	--bg-section: var(--bg-section1); /* 背景色 */
	--text-section: var(--text-section1); /* 文字色 */
	--text-section-title: var(--text-section1-title); /* タイトル文字色 */
	--bg-section-box: var(--bg-section1-box); /* ボックス背景 */
	--border-section-box: var(--border-section1-box); /* ボックス線 */
	--text-section-box: var(--text-section1-box); /* ボックス文字色 */
	--bg-section-box-header: var(--bg-section1-box-header); /* ボックス背景 */
	--text-section-box-header: var(--text-section1-box-header); /* ボックス文字色 */
	--bg-section-primary: var(--bg-section1-primary); /* ボックス強調 */
	--text-section-primary: var(--text-section1-primary); /* ボックス強調 */
}
.l-section-wrapper:nth-child(2n) {
	--bg-section: var(--bg-section2); /* 背景色 */
	--text-section: var(--text-section2); /* 文字色 */
	--text-section-title: var(--text-section2-title); /* タイトル文字色 */
	--bg-section-box: var(--bg-section2-box); /* ボックス背景 */
	--border-section-box: var(--border-section2-box); /* ボックス線 */
	--text-section-box: var(--text-section2-box); /* ボックス文字色 */
	--bg-section-box-header: var(--bg-section2-box-header); /* ボックス背景 */
	--text-section-box-header: var(--text-section2-box-header); /* ボックス文字色 */
	--bg-section-primary: var(--bg-section2-primary); /* ボックス強調 */
	--text-section-primary: var(--text-section2-primary); /* ボックス強調 */
}


:root {
	--header-height: 4rem;
}
/* header.is-scroll {
  background-color: var(--header-bg);
  box-shadow: 0 0 8px rgba(0, 0, 0, .1);
} */

header.is-scroll {
	box-shadow: 0px 0px 7px 0px var(--header-text);
}
header .l-header-wapper {
  position: relative;
  top: 0;
  width: 100%;
  min-width: 375px;
  overflow-x: hidden;
  z-index: 999;
  overflow: hidden;
  transition: all .2s;
	height: var(--header-height);
}
header .l-header-bg {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: var(--header-bg);
	opacity: .8;
	z-index: 0;
}
header.is-scroll .l-header-bg {
	opacity: 1;
}
.l-header-container {
	position: relative;
  margin: 0 auto;
	padding-top: 0;
  max-width: 1200px;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	justify-self: auto;
	width: 100%;
}

.l-header-container > .p-title {
	-webkit-box-ordinal-group:1;
	-ms-flex-order:1;
	-webkit-order:1;
	order:1;
	width: 30%;
	height: auto;
}
.l-header-container > .l-menu-container {
	-webkit-box-ordinal-group:3;
	-ms-flex-order:3;
	-webkit-order:3;
	order:3;
}
.l-header-container > .l-gmenu-sub-wrapper {
	display: flex;
	justify-content: flex-end;
}

.l-header-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /* height: var(--header-height); */
}

/* gmenu title */
.l-header-container .p-title {
	display: flex;
	align-items: flex-start;
	height: var(--header-height);
}
.l-header-container .p-title .p-image {
	height: var(--header-height);
	padding: 10px 10px 10px 0;
	display: flex;
	height: var(--header-height);
	padding: 10px;
	box-sizing: border-box;
	font-size: var(--fsize-lg);
	font-weight: 900;
	justify-content: center;
	align-items: center;
}
.l-header-container .p-title .p-image img {
	object-fit: contain;
	object-position: left;
	width: 100%;
	height: 100%;
}

/* gmenu sub */
.l-gmenu-sub-wrapper {

}
.l-gmenu-sub-container {
	display: flex;
	align-items: center;
	list-style: none;
	padding: 0;
	margin: 0;
}
.l-gmenu-sub-container > li {
	height: 100%;
	padding: 0 10px;
	font-size: var(--fsize-md);
	font-weight: 600;
}
/*h-tel-box*/
.l-gmenu-tel-container {

}
.l-gmenu-tel-container .tel-box-upper p {
  font-size: var(--fsize-xs);
  color: var(--header-text);
  margin: 0;
  line-height: 1;
  text-align: center;
}
.l-gmenu-tel-container .tel-box-lower {
  margin: 4px 0 0;
  font-size: 0;
}
.l-gmenu-tel-container .tel-box-lower dt {
	display: inline-block;
	vertical-align: middle;
	padding: 5px;
	background: var(--menu-bg);
	color: var(--menu-text);
	font-size: var(--fsize-xs);
	line-height: 1;
	text-align: center;
}
.l-gmenu-tel-container .tel-box-lower dd {
	display: inline-block;
	vertical-align: middle;
	font-size: var(--fsize-xl);
	color: var(--menu-bg);
	margin: 0;
	line-height: 1;
	padding-left: 9px;
}
@media screen and (max-width: 767px) {
	.l-gmenu-tel-container .tel-box-upper p {
		font-size: 1.4rem;
	}
	.l-gmenu-tel-container .tel-box-lower dt {
		font-size: 1.8rem;
	}
	.l-gmenu-tel-container .tel-box-lower dd {
		width: auto;
		font-size: 3.2rem;
	}
}



/* gmenu cta */
.l-gmenu-cta-wrapper {

}
.l-gmenu-cta-container {
	display: flex;
	padding: 0;
	margin: 0 0 0 var(--size-xs);
	align-items: center;
	list-style: none;
	height: calc(var(--header-height) / 2);
}
.l-gmenu-cta-container > li {
	margin-left: 10px;
	font-size: var(--fsize-md);
}
.p-gmenu-sub-item {
	height: 100%;
	display: flex;
	align-items: center;
	color: var(--header-text);
}


@media only screen and (max-width: 1023px) {
	header {
		background: transparent !important;
	}
	header::before {
		background-color: #FFF;
    opacity: .98;
		z-index: 0;
	}
	header.is-active::before {
		opacity: .9;
		height: 500vh;
		z-index: 1;
	}
	header.is-scroll .l-header-wapper,
	.l-header-wapper {
		padding-top: 0;
	}

	header.is-active .l-header-container {
		background-color: #32918C;
		box-shadow: none;
		opacity: .7;
	}
  .l-header-container {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    background: transparent;
  }
}
@media only screen and (max-width: 600px) {
  header {
    min-width: initial;
  }
}


/* menu btn */
.l-menu-container {
  text-align: center;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
}
@media only screen and (min-width: 1024px) {
  .l-menu-container {
    display: none
  }
}
.l-menu-button {
  display: flex;
  justify-content: center;
  align-items: center;
  background: none;
  cursor: pointer;
  border: 0;
  margin: auto;
}
.p-menu-icon {
  display: inline-block;
  margin: 0;
  font-size: calc(var(--header-height) - 20px);
	color: var(--header-text);
  height: calc(var(--header-height));
  width: calc(var(--header-height));
  padding: 10px;
}
.p-menu-def-icon {
}
.p-menu-active-icon {
  display: none;
}
body.is-gmenu-active .l-menu-button .p-menu-def-icon {
  display: none
}
body.is-gmenu-active .l-menu-button .p-menu-active-icon {
  display: inline-block
}


/* gmenu title */
.l-header-logo-container {
	background-color: #FFF;
}
.l-header-container .p-title {
	display: flex;
	align-items: flex-start;
	height: var(--header-height);
}
.l-header-container .p-title .p-logo {
	height: var(--header-height);
	padding: 10px 10px 10px 0;
	display: flex;
	height: var(--header-height);
	box-sizing: border-box;
	font-size: var(--fsize-lg);
	font-weight: 900;
	justify-content: center;
	align-items: center;
	text-decoration: none;
}
.l-header-container .p-title .p-logo img {
	object-fit: contain;
	object-position: left;
	width: 100%;
	height: 100%;
}
.l-header-container .p-title .p-logo .p-text {
	padding: 0 1rem;
	font-size: 1.5rem;
}

/* size */
:root {
	--size-xs: 1rem;
	--size-sm: 2rem;
	--size-md: 3rem;
	--size-lg: 4rem;
	--size-xl: 5rem;

	--fsize-2xs: 0.5rem;
	--fsize-xs: 0.75rem;
	--fsize-sm: 0.8rem;
	--fsize-md: 0.9rem;
	--fsize-lg: 1rem;
	--fsize-xl: 1.5rem;
	--fsize-2xl: 1.75rem;
	--fsize-3xl: 2rem;
}

html,body {
	font-size: 16px;
	line-height: 2;
}
body, input, textarea {
	/* font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, verdana, sans-serif; */
}



/* page */
.page-wrapper {

}
.page-wrapper > main {
	background-size: 100% auto;
	position: relative;
	background-blend-mode: normal;
	background-position: top center;
	background-repeat: no-repeat;	
	z-index: 1;
}


/* body */
.l-body-wrapper {
	overflow: hidden;
	position: relative;
	/* margin-top: calc(-1 * var(--menu-height));
	padding-top: var(--menu-height); */
}

/* section */
.l-section-wrapper {
	position: relative;
}
.l-section-bg {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100%);
	background-image: var(--color-gradation);
	background-color: var(--color-bg);
	background-position: left bottom;
	background-blend-mode: multiply;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 1;
	opacity: .8;
}

.l-section-container {
	position: relative;
	z-index: 2;
	max-width: none;
	padding-top: var(--size-lg);
	padding-bottom: var(--size-lg);
}
.l-section-container > *:nth-child(1){ margin-top: 0; }
.l-section-title-container {
	position: relative;
	margin: 0;
	margin-top: var(--size-md);
}
.l-section-title {
  padding: 0;
  display: block;
  line-height: 1.2;
	color: var(--color-head-text);
	font-size: var(--fsize-xl);
	font-weight: 600;
}
.s-align-center .l-section-title::after {
  content: " ";
  width: 90px;
  height: 5px;
  background-color: var(--color-head-text);
  display: block;
  margin: var(--size-sm) auto 0;
}
.s-align-left .l-section-title {
	display: flex;
}
.l-section-title-container.s-align-left {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.l-section-title-container.s-align-left::before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 1.5em;
	vertical-align: middle;
	background-color: var(--color-head-text);
	margin: 0 10px 0 0;
}
.l-section-message {
	margin-top: var(--size-sm);
}
.l-section-subtitle {
  display: block;
  font-size: var(--fsize-lg);
  margin: .4rem 0;
	color: var(--color-text);
}
.l-section-footer-container {
}
.l-section-footer-container .p-note {
	padding: var(--size-sm);
	margin-top: var(--size-md);
}
.l-section-footer-container .p-btn-container {
	margin-top: var(--size-md);
}

/* content */
.l-content-wrapper {
	margin-top: var(--size-md);
}
.l-content-wrapper > .l-content-container {
	margin: 0;
	padding: 0;
	background-size: cover;
	background-blend-mode: multiply;
}



/* block__form */
.block__form {
	padding-bottom: var(--size-md);
}
.block__form .l-content-container {
	max-width: 1200px;
	margin: auto;	
}
.block__form .p-table {
	width: 100%;
	max-width: none;
	border: 0;
	border-top: 1px solid #eee;
}
.block__form .p-table tr {
	
}
.block__form .p-table tr td {
	vertical-align: middle;
	border: 0;
	border-bottom: 1px solid #eee;
	padding: var(--size-sm);
	font-size: var(--fsize-md);
	text-align: left;
}
.block__form .p-table tr th {
	vertical-align: middle;
	border-bottom: 1px solid #eee;
	padding: var(--size-sm);
	font-size: var(--fsize-md);
	width: 28%;
	text-align: left;
	box-sizing: border-box;
}
.block__form .p-table tr th a {
	color: var(--color-text);
}
.block__form .p-table .after_text {
	display: block;
	white-space: pre-wrap;
}
.block__form .info_text {
	margin-bottom: 2rem;
}
.block__form input[type="text"] {
	font-size: var(--fsize-md);
	padding: .5rem;
	width: 80%;
}
.block__form input[type="text"].tel {
	width: 10rem;
}
.block__form input[type="text"].department {
	width: 30rem;
}
.block__form input[type="text"].position {
	width: 30rem;
}
.block__form input[type="text"].zip {
	width: 5rem;
}
.block__form input[type="text"].split_name {
	width: 25%;
}
.block__form input[type="radio"] {
	display: none;
}

/* required */
.required,
.p-required {
	background-color: var(--alert-def-bg);
	font-size: .8rem;
	padding: 3px 5px;
	border-radius: 3px;
}
.required::after,
.p-required::after {
	content: "必須";
	color: var(--alert-def-text);
}
.s-required-type2 .required,
.s-required-type2 .p-required {
	background-color: unset;
	font-size: 1rem;
	padding: 0 5px;
	vertical-align: middle;
}
.s-required-type2 .required::after,
.s-required-type2 .p-required::after {
	content: "*";
	color: red;
}

.block__form input[type="radio"] + span{
  padding-left: calc(var(--fsize-md) * 1.5);
  position:relative;
  margin-right: var(--fsize-md);
  line-height: var(--fsize-xl);
  font-size: var(--fsize-md);
}
.block__form input[type="radio"] + span::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: var(--fsize-md);
  height: var(--fsize-md);
  border: 1px solid var(--em-def-bg);
  border-radius: 50%;
  background-color: var(--em-def-bg);
	opacity: .3;
}
.block__form input[type="radio"]:checked + span{
}
.block__form input[type="radio"]:checked + span::after{
  content: "";
  display: block;
  position: absolute;
  top: 2px;
  left: 2px;
  width: calc(var(--fsize-md) - 4px);
  height: calc(var(--fsize-md) - 4px);
  background: var(--em-def-bg);
  border-radius: 50%;
}
.block__form textarea {
	font-size: var(--fsize-md);
	padding: .5rem;
	width: 80%;
}
.block__form .info_image .container {
	display: flex;
	justify-content: space-around;
}
.block__form .info_image .container figure {
	display: block;
	padding: 0 1rem;
	box-sizing: border-box;
}
.block__form .info_image .container figure img {
	max-width: 100%;
}
.block__form .info_image .container > p {
	display: block;
	padding: 0 1rem;
	max-width: 50%;
	box-sizing: border-box;
}


.l-side-content-wrapper {
	margin-bottom: 1.5rem!important;
	padding: 1.5rem 1rem 1rem;
	background-color: #fff;
	border-radius: var(--s-box-radius);
}
.l-side-header h3 {
	font-family: var(--font-pri-sans-serif);
	font-weight: 700;
	font-size: calc(1rem * 9 / 6);
	line-height: calc(1em * 54 / 40);
	letter-spacing: -.025em;
	margin: 0;
}
.l-side-content {
	margin-top: 1rem;
}
.l-side-content > ul {
	font-weight: 600;
	font-size: 0.9rem;
	line-height: calc(1em * 60 / 40);
}
.l-side-content > ul > li:not(:first-child) {
	border-top: 1px solid #e6e6e6;
}
.l-side-content > ul > li > a {
	display: flex;
	padding-top: 1rem;
	padding-bottom: 1rem;
	align-items: center;
	justify-content: space-between;
	/* flex-wrap: wrap; */
	margin: -0.5rem;
}
.l-side-content > ul > li > a > .text-body {
	margin: 0.5rem;
}
.l-side-content > ul > li > a > .fas {
	width: 1em;
	height: 1em;
	display: block;
	color: var(--base-baseColor);
	line-height: 1;
	transition: transform .4s cubic-bezier(.1,.2,.3,1);
	transform: translateZ(0);
}
.l-side-content > ul > li > a:hover > .fas {
transform: translate3d(.4em, 0, 0) scale(1.2);
}
@media (min-width: 48em) {
	.l-side-header h3 {
		font-family: var(--font-pri-sans-serif);
		font-weight: 600;
	}
}
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#footer {
	background-color: var(--footer-bg);
}

#footer .fBox {
	padding-top: 28px;
	margin: 0 auto;
	width: auto;
	border-bottom: 1px solid var(--footer-border);
}

#footer ul {
	padding: 0;
}

#footer .fNavi {
	display: flex;
	justify-content: space-around;
	font-size: 12px;
	max-width: 1200px;
	margin: auto;
}

#footer .fNavi li.info {
	min-width: 200px;
	box-sizing: border-box;
	padding: 0 1.5rem;
	border-right: 1px solid #fff;
	margin-right: 2rem;
	margin-bottom: 1rem;
}
#footer .fNavi li.info > figure {
	margin-bottom: 1rem;	
}
#footer .fNavi li.info > p {
	font-size: .8rem;
	line-height: 1.5;
}

#footer .fNavi li.fnav01 {
	padding-left: 15px;
	margin-right: 5px;
	/* width: 225px; */
	font-weight: bold;
}
#footer .fNavi li.fnav02 {
	padding-left: 0;
	margin-right: 5px;
	font-weight: bold;
}
#footer .fNavi li.fnav03 {
	padding-left: 15px;
	margin-right: 5px;
	/* width: 305px; */
	font-weight: bold;
}
#footer .fNavi li.fnav04 {
	padding-left: 15px;
	margin-right: 5px;
	width: 165px;
	font-weight: bold;
}

#footer .fNavi li.fnav05 {
	padding-left: 15px;
	margin-right: 5px;
	/* width: 215px; */
	font-weight: bold;
}

#footer .fNavi li a {
	text-decoration: none;
}

#footer .fNavi li a:hover {
	text-decoration: underline;
}
#footer .fNavi.level01 > li {
}
#footer .fNavi.level01 > li > .subNavi {}
#footer .fNavi.level01 > li > .subNavi.col2 {
	width: 500px;
	max-width: 100%;
}
#footer .fNavi.level01 > li > .subNavi > li {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}
#footer .fNavi.level01 > li > .subNavi > li.level01-title {font-weight: bold;}
#footer .fNavi.level01 > li > .subNavi > li.level01-title > a {

}
#footer .fNavi.level01 > li > .subNavi > li.level01-title > span {

}
#footer .fNavi.level01 > li > .subNavi > li > .level02 {display: flex;flex-wrap: wrap;margin: 0;}
#footer .fNavi.level01 > li > .subNavi > li > .level02 > li {
	min-width: 200px;
}
#footer .fNavi.level01 > li:nth-last-child(1) > .subNavi > li > .level02 > li {
	min-width: 100px;
}
#footer .fNavi.level01 > li > .subNavi > li > .level02 > li > a.level02-title {font-weight: bold;}
#footer .fNavi.level01 > li > .subNavi > li > .level02 > li > span.level02-title {
	font-weight: bold;
}
#footer .fNavi.level01 > li > .subNavi > li > .level02 > li > .level03 {
	
}
#footer .fNavi.level01 > li > .subNavi > li > .level02 > li > .level03 > li {
	
}
#footer .fNavi.level01 > li > .subNavi > li > .level02 > li > .level03 > li > a {
	
}

#footer .fNavi li .subNavi li {
	width: auto;
	margin-bottom: 9px;
	padding-left: 0;
	font-size: 1.3em;
	background: none;
}

#footer .fNavi li .subNavi li a {
	padding-left: 0;
	display: inline-block;
	color: var(--footer-text);
}

#footer .fNavi li .subMenu {
	margin: 0 0 0 11px;
}

#footer .fNavi li .subMenu li {
	margin-bottom: 7px;
	font-weight: normal;
	font-size: 0.9em;
}

#footer .fNavi li .subMenu li a {
	background: none;
	padding-left: 0;
}

#footer .p-copyright-container {
	padding: 14px 0 10px;
	color: var(--footer-text);
	font-size: 12px;
}

#footer .p-copyright-container p {
	font-size: 1.1em;
	line-height: 1.8;
	text-align: center;
}
@media only screen and (max-width: 1023px) {
	#footer .fBox {
		display: none;
	}
}
/* base styles */
.s-border {
	border-width: 3px;
	border-style: solid;
}
.s-radius:not(.p-image-container),
.s-radius.p-image-container .image {
	overflow: hidden;
	border-radius: var(--size-sm);
}
.s-btn-radius {
	border-radius: var(--size-lg);
}
.s-shadow:not(.p-image-container),
.s-shadow.p-image-container .image {
	box-shadow: 3px 3px 6px 6px #d8d8d8;
}
.s-btn-shadow {
	box-shadow: 0px 0px 5px 0px rgb(255 255 255 / 70%);
}
.s-align-left { text-align: left; }
.s-align-center { text-align: center; }
.s-align-right { text-align: right; }
.s-bg {

}
.s-container-fix {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
@media only screen and (max-width: 1400px) {
	.s-container-fix {
		max-width: 90vw;
	}
}
.s-container-fluid {

}

.p-image-def{ display: inherit; }
.p-image-wh{ display: none; }

.s-grid {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
}
/* 3 cols */
.s-grid[col="3"] .s-col {
	width: calc((100% - var(--size-md) - var(--size-md)) / 3);
	margin-left: calc(var(--size-md) / 2);
	margin-right: calc(var(--size-md) / 2);
	margin-bottom: var(--size-sm);
}
.s-grid[col="3"] .s-col:nth-child(3n-2) {
	margin-left: 0;
}
.s-grid[col="3"] .s-col:nth-child(3n) {
	margin-right: 0;
}
/* 4 cols */
.s-grid[col="4"] .s-col {
	width: calc((100% - var(--size-md) - var(--size-md)) / 4);
	margin-left: calc(var(--size-md) / 3);
	margin-right: calc(var(--size-md) / 3);
}
.s-grid[col="4"] .s-col:nth-child(4n-3) {
	margin-left: 0;
}
.s-grid[col="4"] .s-col:nth-child(4n) {
	margin-right: 0;
}
/* 5 cols */
.s-grid[col="5"] .s-col {
	width: calc((100% - var(--size-md) - var(--size-md)) / 5);
	margin-left: calc(var(--size-md) / 4);
	margin-right: calc(var(--size-md) / 4);
}
.s-grid[col="5"] .s-col:nth-child(5n-4) {
	margin-left: 0;
}
.s-grid[col="5"] .s-col:nth-child(5n) {
	margin-right: 0;
}

/* 縦一覧表示 */
.s-vertical-list {
	list-style: none;
}
.s-vertical-list .s-col {
	margin-bottom: var(--size-sm);
}
.s-vertical-list .s-col:nth-last-child(1) {
	margin-bottom: 0;
}

.s-justify-around { justify-content: space-around; }
.s-justify-between { justify-content: space-between; }
.s-justify-evenly { justify-content: space-evenly; }

.s-min-wid-xs { min-width: 15rem; }
.s-min-wid-sm { min-width: 20rem; }
.s-min-wid-md { min-width: 25rem; }
.s-min-wid-lg { min-width: 30rem; }
.s-min-wid-xl { min-width: 35rem; }


/* base parts */
.p-title {}
.p-subtitle {
	font-size: var(--fsize-lg);
	margin: 0;
}
.p-text {}

/* p-btn */
	.p-btn {
    display: inline-block;
    text-decoration: none;
    padding: 10px;
    border-width: 2px;
    border-style: solid;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 1rem;
    line-height: 1.5;
		min-width: 8rem;
		cursor: pointer;
	}
	.p-btn-def {
		background-color: var(--em-def-bg);
		border-color: var(--em-def-border);
		color: var(--em-def-text);
	}
	.p-btn-primary {
		background-color: var(--em-primary-bg);
		border-color: var(--em-primary-border);
		color: var(--em-primary-text);
	}
	.p-btn-container .p-btn {
		margin-left: var(--size-sm);
		margin-right: var(--size-sm);
	}
	.p-btn-container .p-btn:nth-child(1){ margin-left: 0; ;}
	.p-btn-container .p-btn:nth-last-child(1){ margin-right: 0; ;}

/* p-figure */
.p-figure {
		display: flex;
		justify-content: stretch;
		align-items: center;
		flex-direction: column;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
	}
	.p-figure	.image {
		width: 100%;
		background-position: center;
		background-repeat: no-repeat;
		background-size: cover;
		display: flex;
		height: 100%;
	}
	.p-figure .image > img {
		margin: auto;
		opacity: 0;
	}


.p-image {}
.p-image > img {
	width: auto;
	max-width: 100%;
}
.p-label {}
.p-body {}

/* p-box */
	.p-box {}
	.p-box-head {
		background-color: var(--box-head-bg);
		border-color: var(--box-head-border);
		color: var(--box-head-text);
	}
	.p-box-def {
		background-color: var(--box-def-bg);
		border-color: var(--box-def-border);
		color: var(--box-def-text);
	}
	.p-box-info {
		background-color: var(--box-info-bg);
		border-color: var(--box-info-border);
		color: var(--box-info-text);
	}

/* p-note */
	.p-note {}
	.p-note-def {
		background-color: var(--note-def-bg);
		border-color: var(--note-def-border);
		color: var(--note-def-text);
	}
	.p-note-head {
		background-color: var(--note-head-bg);
		border-color: var(--note-head-border);
		color: var(--note-head-text);
	}


.p-block-container{
	padding: var(--size-sm);
}
.p-title-container{
}
.p-body-container{
}
.p-text-container {
	padding: var(--size-sm);
}
.p-item-container{}
.p-btn-container {}
.p-label-container {}
.p-copyright-container {}
.p-image-container {}

.p-image-container.s-image-width-auto .image {
	width: auto;
}
.p-image-container.s-align-left .p-figure {
	align-items: flex-start;
}
.p-image-container.s-align-right .p-figure {
	align-items: flex-end;
}
.p-image-container.s-image-size-contain .image{
	background-size: contain;
}

.p-row-container {
	display: flex;
	flex-direction: row;
}
.p-row-container > * {
	padding-left: var(--size-xs);
	padding-right: var(--size-xs);
}
.p-row-container > :not(.p-block-container):nth-last-child(1) {
	padding-right: 0;
}

.p-row-container > .p-image-container:nth-child(1) {
	padding-left: 0;
	flex: 0 0 25%;
}
.p-row-container > .p-image-container .p-figure {
	height: 100%;
}
.p-row-container > .p-image-wrapper {
	min-width: 20%;
}

.p-text-wrapper {}
.p-text-wrapper .p-text-container {
	padding: 0;
	margin-bottom: var(--size-sm);
}
.p-text-wrapper .p-text-container .p-title {
	margin-bottom: var(--size-xs);
}
.p-image-wrapper {}
.p-image-wrapper .p-image-container {
	padding: 0;
	margin-bottom: var(--size-xs);
}

.p-tag-list {
	list-style: none;
	padding: 0;
	margin-right: -10px;
	margin-bottom: 10px;
}
.p-tag-list > li {
	display: inline-block;
	font-size: .7rem;
	background-color: var(--em-primary-bg);
	color: var(--em-primary-text);
	border-radius: 5px;
	padding: 5px 15px;
	margin: 0 7px 7px 0;
}

.p-file .p-file-name {
	display: inline-block;
	word-break: break-all;
}
.p-file .p-file-caption {
	display: inline-block;
}

/* base contents */
.l-section-wrapper {}
.l-section-bg {}
.l-section-container {}
.l-section-title-container {}
.l-section-title-container .l-section-subtitle {}
.l-section-title-container .l-section-title {}
.l-section-message {
    color: var(--color-text);
}
.l-section-footer-container {}

.l-content-wrapper {}
.l-content-container {}

.l-item-container {}

.l-label-container {}

.l-text-container {}



/**
	right-float-box
**/
#expansionFloatBanner {
	position: fixed;
	bottom: 70px;
	right: 20px;
	transform: translateX(250px);
	transition: .5s;
	opacity: 0;
	z-index: 1000;
}
#expansionFloatBanner.scroll-start {
	transform: translateX(0);
	opacity: 1;
	transition: .5s;
}
#expansionFloatBanner.scroll-start.scroll-end {
	transform: translateX(250px);
	opacity: 0;
}
#expansionFloatBanner .floatBannerIn {
	display: inline-block;
}
#expansionFloatBanner .floatBannerIn .right-float-in {
	display: block;
	text-align: right;
}
#expansionFloatBanner .floatBannerIn .right-float-in > * {
	display: block;
	box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.6);
	text-decoration: none;
}
#expansionFloatBanner .floatBannerIn .right-float-in img {
	max-width: 500px;
}
#expansionFloatBanner .floatBannerIn .upperRight img {
	width: 40px;
}
#expansionFloatBanner .floatBannerIn .right-float-in p {
	text-align: left;
	background-color: #FFF;
	padding: .5rem;
	text-decoration: none;
}
#expansionFloatBanner .floatBannerIn .upperRight {
	font-size: 25px;
	position: absolute;
	top: -10px;
	right: -10px;
	width: 30px;
	height: 30px;
	line-height: 30px;
	color: #FFF;
	background: #000;
	text-align: center;
	border-radius: 3px;
	cursor: pointer;
	z-index: 10;
	transition: all .5s;
}
#expansionFloatBanner .floatBannerIn .upperRight:hover {
	transform: scale(1.2);
} 
#expansionFloatBanner .floatBannerIn .upperRight::before{
	content: "\f00d";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
}
#expansionFloatBanner .floatBannerIn .right-float-in label {
	text-align: center;
	display: inline-block;
	height: auto;
	line-height: 1.7;
	font-size: 15px;
	color: #000;
	margin-top: 5px;
	padding: 5px;
	background: rgb(255 255 255 / 50%);
	border-radius: 3px;
}
#expansionFloatBanner .floatBannerIn .right-float-in label input {
  vertical-align: text-top;
  line-height: 1;
  top: 1px;
}
#expansionFloatBanner .floatBannerIn .btn-hide input[type="checkbox"] {
  display: none;
}
#expansionFloatBanner .floatBannerIn .btn-hide > span {
	position: relative;
	vertical-align: middle;
	font-size: 13px;
	margin-right: 5px;
	border-radius: 3px;
	padding: 2px;
	border: 2px solid #000;
	background: #fff;
	opacity: .2;
	transition: all .3s;
}
#expansionFloatBanner .floatBannerIn .btn-hide input[type="checkbox"] + span:before {
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  content: '\f00c';
  color: #000000;
  opacity: 0;
  transition: all .3s;
}
#expansionFloatBanner .floatBannerIn .btn-hide input[type="checkbox"]:checked + span {
	opacity: 1;
}
#expansionFloatBanner .floatBannerIn .btn-hide input[type="checkbox"]:checked + span:before {
	opacity: 1;
}
@media only screen and (max-width:678px){
	#expansionFloatBanner .floatBannerIn .upperRight img {width:5vw;}
	#expansionFloatBanner .floatBannerIn .right-float-in img {max-width: 72vw;}
  #expansionFloatBanner.scroll-start{
		right: 0;bottom: 15vw;
		max-width: 50vw;
	}
  #expansionFloatBanner .floatBannerIn .right-float-in label {
    font-size: 12px !important;
    display: block;
    margin-top: 0;
    border-radius: 0;
  }
  #expansionFloatBanner .floatBannerIn .upperRight {
		top: -30px;
    right: 0;
    font-size: 15px;
    width: 30px;
    height: 30px;
    line-height: 30px;
  }
}
@media only screen and (max-width:460px) {
	#expansionFloatBanner {bottom: 30vw;}
}

:root {
	--color01-gradation: none;
	--color02-gradation: none;
	--em-def-gradation: none;
	--em-primary-gradation: none;
	--header-gradation: none;
	--base-base1: #e7f1f8;
	--base-base2: #ffffff;
	--base-main: #f6f6f6;
	--base-header: #ffffff;
	--base-text_dark: #000000;
	--base-text_light: #ffffff;
	--base-def_btn: #ffffff;
	--base-conv_btn: #f2f259;
	--base-navi: #eeeeee;
	--base-footer: #f0f0f0;
	--base-box1: #ffffff;
	--base-box2: #333637;
	--base-box3: #E9EBED;
	--base-alert_txt: #e22b2b;
  --color01-bg: #ffffff;
  --color01-text: #000000;
  --color01-border: #008FC5;
  --color01-head-bg: #ffffff;
  --color01-head-text: #118acb;
  --color01-head-border: #ffffff;
  --color02-bg: #ffffff;
  --color02-text: #000000;
  --color02-border: #008FC5;
  --color02-head-bg: #ffffff;
  --color02-head-text: #118acb;
  --color02-head-border: #ffffff;
  --block-head-bg: #ffffff;
  --block-head-text: #000000;
  --block-head-border: #ffffff;
  --box-head-bg: #6ECEBC;
  --box-head-text: #000000;
  --box-head-border: #6ECEBC;
  --box-def-bg: #ffffff;
  --box-def-text: #000000;
  --box-def-border: #ffffff;
  --box-info-bg: #ffffff;
  --box-info-text: #000000;
  --box-info-border: #ffffff;
  --note-def-bg: #a0a9ad;
  --note-def-text: #000000;
  --note-def-border: #a0a9ad;
  --note-head-bg: #ffffff;
  --note-head-text: #000000;
  --note-head-border: #ffffff;
  --em-def-bg: #118acb;
  --em-def-text: #ffffff;
  --em-def-border: #ffffff;
  --em-primary-bg: #f5d146;
  --em-primary-text: #010408;
  --em-primary-border: #ffffff;
  --alert-def-bg: #e22b2b;
  --alert-def-text: #ffffff;
  --alert-def-border: #e22b2b;
  --main-bg: #ffffff;
  --main-text: #008FC5;
  --main-border: #ffffff;
  --main-em-bg: #008FC5;
  --main-em-text: #ffffff;
  --main-em-border: #ffffff;
  --header-bg: #ffffff;
  --header-text: #008FC5;
  --header-border: #ffffff;
  --menu-bg: #ffffff;
  --menu-text: #000000;
  --menu-border: #000000;
  --footer-bg: #ffffff;
  --footer-text: #000000;
  --footer-border: #f0f0f0;
  }

:root {
}

:root {
	--menu-height: 3rem;
}

.l-gmenu-wrapper {
  position: relative;
  top: 0;
  width: 100%;
  min-width: 375px;
  overflow-x: hidden;
  z-index: 3;
  overflow: hidden;
  transition: all .2s;
  height: 4rem;
}


.l-gmenu-navi-wrapper > .l-gmenu-main-wrapper {
	position: relative;
  margin: 0 auto;
	padding-top: 0;
  max-width: 1200px;
	z-index: 1;
}


/* gmenu main */
.l-gmenu-main-wrapper {

}
.l-gmenu-main-container {
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0;
	margin: 0;
	height: 100%;
}
.l-gmenu-main-container > li {
	height: 100%;
	width: 100%;
	display: flex;
	align-items: center;
	font-size: .9rem;
	font-weight: 400;
}
.l-gmenu-main-container > li a {
	display: flex;
	height: 100%;
	width: calc(100% - 1px);
	justify-content: center;
	align-items: center;
	color: var(--menu-text);
	text-decoration: none;
}
.l-gmenu-main-container > li::before,
.l-gmenu-main-container > li:nth-last-child(1)::after {
	content: "";
	width: 1px;
	height: 40%;
	background-color: var(--base-textColor);
}










.sub-menu {
	width: 100%;
	display: flex;
	justify-content: flex-end;
}
.sub-menu .search-form {
	margin-left: 1rem;
}



@media only screen and (max-width: 1023px) {
	header.is-active .main-menu {
		margin-top: 0;
	}

  .navi-wrapper {
  	display: none;
  	width: 100%;
  }
  .l-header.is-active .navi-wrapper {
  	display: block;
  }
  .global-navi {
		display: flex;
  	width: 100%;
  	flex-direction: column-reverse;
  }
  .l-header {
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    height: auto;
    background: transparent;
  }
  .l-header.is-active .navi-wrapper {
    overflow: auto;
    background: #32AFA7;
  }
  body.is-nav-active {
		/* overflow: hidden;
		width: 100vw;
		height: 150vh; */
	}
	header.is-nav-active .sub-menu > .p-nav-sub > li > a:before {
		display: none;
	}
}

.p-site-title {
  margin: 0;
  justify-self: stretch;
  /* background: #FFF; */
	display: flex;
	align-items: center;
  height: 100%;
}
.p-site-title > span {
	font-size: .85rem;
	margin-left: 1rem;
	display: inline-block;
	line-height: 1.2rem;
	padding: .2rem .5rem;
	background-color: var(--header-sub-bg);
	color: var(--header-sub-text);
}

.p-site-title__link {
  text-decoration: none;
  display: block;
  text-align: center;
  padding: 0;
  height: 100%;
  box-sizing: border-box;
  align-self: center;
  filter: var(--logo-filter);
}
.p-site-title__link > img {
	    height: 100%;
	    width: auto;
	    object-fit: contain;
}
.p-site-title__link span {
  display: block;
  font-size: 0.8rem;
  color: var(--header-text);
}
.p-site-title__link span.p-site-subtitle__link {
  font-size: 0.6rem;
}

@media only screen and (min-width: 1024px) {
}
@media only screen and (max-width: 1023px) {
    .p-site-title {
    	padding: 10px;
    	height: 72px;
    }
  .p-site-title__link {
    margin: 0;
    padding: 0;
  }
}

header .icon.image{
	height: 14px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 5px;
	margin-bottom: 2px;
}
header .icon.image img{
	max-width: 100%;
	max-height: 100%;
	width: auto;
}

header .common-menu {
  display: flex;
  justify-content: center;
}
header .main-menu .common-menu {
  justify-content: flex-end;
  margin: 0;
  padding: 0;
}
header .common-menu li {
  line-height: 1;
}
header .common-menu li a {
  color: var(--header-text);
  position: relative;
  /* white-space: pre-wrap; */
}
header .common-menu.top-menu li a {
  border-left: 1px solid #a3a3a3;
  padding-bottom: 0;
}
header .common-menu.top-menu li:first-child a {
  border-left: none;
}
header .top-menu .common-menu li {
  border-left: 1px solid #a3a3a3;
}
header .top-menu .common-menu li:first-child {
  border-left: none;
}
header .common-menu.top-menu li:nth-last-child(1) a {
  padding-right: 0;
}
header .common-menu li a.active {
  color: #00BFB3;
}
header .common-menu.top-menu li a.active {
  color: #000;
}

header .common-menu > li > a:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  bottom: 0;
  background: var(--header-text);
  height: 5px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
@media print, (min-width: 768px) {
  header .common-menu li:hover > a,
  header .common-menu li a:hover,
  header .common-menu li a:focus,
  header .common-menu li a:active,
  header .common-menu li a.active {
  }
  header .common-menu.top-menu li a:hover,
  header .common-menu.top-menu li a.active {
  }
  header .common-menu li:hover > a:before,
  header .common-menu li > a:hover:before,
  header .common-menu li > a:focus:before,
  header .common-menu li > a:active:before,
  header .common-menu li > a.active:before {
    left: 0px;
    right: 0px;
  }
}

header .main-menu > .common-menu > li {
  padding: 0 0 15px 5px;
  margin: 0 0 -15px;
}
header  .main-menu > .common-menu > li > a {
	padding: 5px;
	padding-bottom: 10px;
}


header .common-menu li > a:before{
	display: none;
}
header  .main-menu > .common-menu > li:hover > a,
header  .main-menu > .common-menu > li > a:hover {
	background: var(--header-text);
	color: var(--header-bg);
	opacity: 1;
}
header  .sub-menu > .p-nav-sub > li {
  padding: 0 0 15px 5px;
  margin: 0 0 -15px;
}
header  .sub-menu > .p-nav-sub > li > a {
	padding: 5px;
}
header  .sub-menu > .p-nav-sub > li > a::before{
	display: none;
}
header  .sub-menu > .p-nav-sub > li > a:hover {
	background: var(--header-text);
	color: var(--header-bg);
	opacity: 1;
}
header .main-menu > .common-menu > li.search:hover > a,
header .main-menu > .common-menu > li.search > a:hover {
	background: var(--header-bg);
	color: var(--header-text);
}

header .common-menu.top-menu li a:before {
  display: none;
}
header .common-menu.top-menu li a:hover {
  text-decoration: underline;
}
header .main-menu > .common-menu > li:nth-child(1) {
	padding-left: 0;
}
header .main-menu > .common-menu > li:nth-last-child(1) {
  border-right: 0;
}
header .main-menu {
  margin-top: 10px;
  width: 100%;
  padding: 0;
}
header .main-menu > .common-menu > li .child-wrap {
  visibility: hidden;
  height: 0;
  position: fixed;
  left: 0;
  top: calc(5.37rem - 5px);
  z-index: 1001;
  margin: 0;
  width: 100%;
  text-align: left;
  opacity: 0;
  overflow: hidden;
  background: #FFF;
  margin-top: 0;
  box-shadow: 0 5px 15px -5px #999;
}
header.is-scroll .main-menu > .common-menu > li .child-wrap {
	top: 82px;
}
@media only screen and (max-width: 1023px) {
	header .main-menu > .common-menu > li .child-wrap {
		display: none;
	}
	header .main-menu > .common-menu > li,
	header .main-menu > .common-menu > li:nth-child(1) {
		padding: 5px;
		margin: 0;
	}
	header  .sub-menu > .p-nav-sub > li {
		padding: 5px;
		margin: 0;
	}
}
header .main-menu > .common-menu > li:hover .child-wrap,
header .main-menu > .common-menu > li .child-wrap.viewtest {
  visibility: visible;
  height: auto;
  opacity: 1;
  transition: all .3s!important;
}
header .main-menu > .common-menu .child-menu-title {
  width: 1200px;
  margin: auto;
  text-align: center;
  color: #FFF;
  padding: 30px 0 10px;
}
header .main-menu > .common-menu .child-inner {
  width: 1200px;
  margin: auto;
  max-width: 100%;
  min-height: 200px;
  display: flex;
  justify-content: stretch;
  align-items: stretch;
}
header .main-menu > .common-menu .child-inner .search-form {
	display: flex;
	justify-content: center;
	align-items: center;
}
header .main-menu > .common-menu .parent-block {
  display: flex;
  width: 230px;
  box-sizing: border-box;
  position: relative;
  font-size: 0;
  padding: 30px 20px 30px 8px;
  text-align: center;
  line-height: 1;
  background: #97999B;
  max-height: none;
  height: auto;
  align-items: center;
}
header .main-menu > .common-menu .parent-block > a {
  color: #fff;
  text-align: center;
  display: block;
}
header .main-menu > .common-menu .parent-block > a:last-child {
  margin-bottom: 0;
}
header .main-menu > .common-menu .parent-block > a .parent-block-txt {
  background: #fff;
  text-align: center;
  margin-bottom: 0;
  padding: 5px 10px;
  display: inline-block;
  width: 100%;
  border-top: 1px solid #E1E1E1;
}
header .main-menu > .common-menu .parent-block img {
  width: 100%;
  max-width: 100%;
}

header .main-menu > .common-menu .parent-info {
	display: flex;
	align-items: center;
	color: #fff;
	width: 200px;
	min-height: 200px;
	font-size: 120%;
	padding: 2rem;
	padding-right: 1rem;
	padding-left: 0;
	position: relative;
}
header .main-menu > .common-menu .parent-info::after {
	content: "";
	position: absolute;
	top: 10%;
	right: 0;
	background-color: #ccc;
	height: 80%;
	width: 1px;
}
header .global-navi .main-menu > .common-menu .child-wrap .parent-info a {
	color: #333;
}

header .main-menu > .common-menu .child-list {
  zoom: 1;
  display: flex;
  justify-content: space-between;
  vertical-align: top;
  padding: 20px 0 0 20px;
  box-sizing: border-box;
  width: 100%;
}
header .global-navi .main-menu > .common-menu .child-wrap.image .child-list {
	padding: 20px 0 20px 0;
}
header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list {
	padding: 3rem;
	padding-left: 0;
	padding-right: 0;
}
header .main-menu > .common-menu .child-list:after {
  content: "";
  display: block;
  clear: both;
}
header .main-menu > .common-menu .child-list .child-list-line {
  display: flex;
  align-items: center;
  padding: 0 10px 0 10px;
  width: 100%;
  min-height: 200px;
}
header .main-menu > .common-menu .child-list .child-list-line > ul > li {
  margin-bottom: 0;
  min-width: 30%;
  display: inline-block;
}
header .main-menu > .common-menu .child-list .child-list-line > ul > li:last-child {
  /* margin-bottom: 0; */
}
header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list .child-list-line > ul {
	display: flex;
	justify-content: space-between;
	align-items: self-start;
}
header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list .child-list-line > ul > li {
	min-width: auto;
	float: none;
	align-self: self-start;
	max-width: 25%;
}
header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list .child-list-line > ul > li > a {
	font-size: 120%;
}

header .global-navi .main-menu > .common-menu .child-wrap.image .child-list .child-list-line > ul {
	display: flex;
	justify-content: space-between;
}
header .global-navi .main-menu > .common-menu .child-wrap.image .child-list .child-list-line > ul > li {
	min-width: auto;
}

header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list .child-list-line > ul > li > ul {
	display: flex;
	flex-direction: column;
	border-top: 1px solid var(--menu-border);
	padding-top: 1.5rem;
}
header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list .child-list-line > ul > li > ul > li {
	float: none;
	margin: 0;
	align-self: flex-start;
}
header .global-navi .main-menu > .common-menu .child-wrap a {
	color: #333;
	position: relative;
}
header .global-navi .main-menu > .common-menu .child-wrap a:hover {
	color: var(--menu-bg);
	opacity: 1;
}
header .global-navi .main-menu > .common-menu .child-wrap a span::after {
	content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  bottom: 7px;
  background: var(--menu-bg);
  height: 2px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
header .global-navi .main-menu > .common-menu .child-wrap a:hover span::after {
	left: 20px;
	right: 0;
}

header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list .child-list-line > ul > li > ul > li span {
	line-height: 1.3;
	padding-left: 20px;
	display: inline-block;
}
header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list .child-list-line > ul > li > ul > li i {
	color: var(--menu-bg);
	/* padding-right: 10px; */
	position: absolute;
}
header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list .child-list-line > ul > li > ul > li a:hover * {
}


header .main-menu > .common-menu .child-list li {
  /* float: left; */
}
header .main-menu > .common-menu .child-list li:last-child a {
  border-right: none;
}
header .main-menu > .common-menu .child-list a {
  padding: 0 !important;
  display: block;
  position: relative;
}
header .main-menu > .common-menu .child-list a {
  display: block;
  position: relative;
  padding: 0 0 10px 0 !important;
}
header .main-menu > .common-menu .child-list .child-ttl {
  line-height: 1.2;
  position: relative;
  margin-bottom: 5px;
  color: #333;
}
header .main-menu > .common-menu .child-list .parent .child-ttl {
	font-weight: bold;
}
header .main-menu > .common-menu .child-list a:hover .child-ttl {
	color: var(--em-primary-bg);
}
header .main-menu > .common-menu .child-list .child-ttl span {
  display: inline-block;
  color: var(--menu-bg);
}
header .main-menu > .common-menu .child-list .child-ttl i {
  margin-left: 14px;
}
header .main-menu > .common-menu .child-list .child-ttl img  {
	margin-bottom: 5px;
}
header .main-menu > .common-menu .child-list .child-ttl:before {
  content: "ï”";
  display: inline-block;
  width: 8px;
	height: 11px;
	font-family: "Font Awesome 5 Free";
}
header .global-navi .main-menu > .common-menu .child-wrap.image .child-list .child-ttl:before {
	display: none;
}
header .global-navi .main-menu > .common-menu .child-wrap.tree .child-list .child-ttl:before {
	display: none;
}
header .main-menu > .common-menu .child-list .btn {
  margin-bottom: 20px;
}
header .main-menu > .common-menu .child-list .btn .child-ttl {
  text-align: center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
}
header .main-menu > .common-menu .child-list .btn .child-ttl:hover {
  opacity: 0.8;
}
header .main-menu > .common-menu .child-list .btn-contact .child-ttl {
  background-color: #fe9025;
}
header .main-menu > .common-menu .child-list .btn-contact .child-ttl:after {
  position: absolute;
  content: " ";
  right: 20px;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 0;
  height: 0;
  border-left: 5px solid #ffffff;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
}
header .main-menu > .common-menu .child-list .child-ttl.bold {
  margin-bottom: 10px;
}
header .main-menu > .common-menu .child-list .child-ttl.bold:before {
  content: none;
}
header .main-menu > .common-menu .child-list .child-ttl.bold span {
  margin-left: 0;
}

@media only screen and (min-width: 992px) {
  header .main-menu {
    display: block !important;
  }
}

header .sub-menu > .p-nav-sub > li > a {
	position: relative;
}
header .sub-menu > .p-nav-sub > li > a:before{
	content: "";
  position: absolute;
  z-index: -1;
  left: 50%;
  right: 50%;
  bottom: -5px;
  background: var(--em-primary-text);
  height: 5px;
  -webkit-transition-property: left, right;
  transition-property: left, right;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
header .sub-menu > .p-nav-sub > li:hover > a,
header .sub-menu > .p-nav-sub > li a:hover,
header .sub-menu > .p-nav-sub > li a:focus,
header .sub-menu > .p-nav-sub > li a:active,
header .sub-menu > .p-nav-sub > li a.active {
}
header .sub-menu > .p-nav-sub > li:hover > a:before,
header .sub-menu > .p-nav-sub > li > a:hover:before,
header .sub-menu > .p-nav-sub > li > a:focus:before,
header .sub-menu > .p-nav-sub > li > a:active:before,
header .sub-menu > .p-nav-sub > li > a.active:before {
	left: 0px;
	right: 0px;
}

.cta-menu {margin-right: 0;margin-bottom: 5px;}

.cta-menu .p-nav-cta .p-nav-cta__link {
	padding: 1rem;
	color: var(--em-primary-bg);
	background-color: var(--em-primary-text);
	background-image: var(--em-primary-gradation);
	background-blend-mode: multiply;
	border: 1px solid var(--em-primary-border);
	display: flex;
	min-width: 150px;
	min-height: 60px;
	justify-content: center;
	align-items: center;
}
@media only screen and (max-width: 1200px) {
	.cta-menu .p-nav-cta .p-nav-cta__link {
		min-width: 100px;
	}
}

.p-nav-sub li:not(:last-child),
.p-nav-site li:not(:last-child),
.p-nav-cta li:not(:last-child) {
  align-self: flex-end;
}
.p-nav-sub li:last-child,
.p-nav-site li:last-child,
.p-nav-cta li:last-child {
  align-self: flex-end;
}
header .main-menu > .common-menu > li.search .child-inner .search-form {
	padding: 2rem 1rem;
}
header .main-menu > .common-menu > li.search .child-inner .search-form input {
	width: 30vw;
	padding: .5rem;
}
header .main-menu > .common-menu > li.search .child-inner .search-form .input-group-text {
	color: var(--menu-text);
	font-size: 1.5rem;
	padding-left: 1rem;
}

@media only screen and (min-width: 1024px) {
	.p-nav-sub,
	.p-nav-site,
  .p-nav-cta {
    display: flex;
    justify-content: flex-end;
    margin: 0;
 }
	.p-nav-sub li,
	.p-nav-site li,
  .p-nav-cta li {
    margin: 0 0 0 15px;
 }
	.p-nav-sub li:last-child,
	.p-nav-site li:last-child
  .p-nav-cta li:last-child {
  }
}

@media only screen and (max-width: 1023px) {
	header .sub-menu .p-nav-sub,
	header .main-menu .p-nav-site,
	.p-nav-cta {
		display: none;
	}

	header.is-active .sub-menu .p-nav-sub,
	header.is-active .main-menu .p-nav-site,
	header.is-active .p-nav-cta {
    display: block;
    margin: 0;
    border-top: 1px solid #ddd;
    width: 100%;
    text-align: center
	}
	header.is-active .sub-menu .p-nav-sub {
		border-top: 0px solid;
	}
  .is-active .p-nav-sub li,
  .is-active .main-menu > .common-menu > li,
  .is-active .p-nav-cta li {
    margin: 0;
    border-bottom: 1px solid #ddd
  }
  .p-tel--header {
    padding: 1.2rem 0;
    display: block;
  }
  .cta-menu {
  	margin-top: 10px;
  	width: 100%;
  	display: none;
	}
	header.is-active {
		height: 500vh;
		position: absolute;
		/* overflow: scroll; */
		z-index: 9999;
	}
	header.is-active .cta-menu {
  	display: block;
  	margin: 0;
  	background-color: #32918c;
 }
	header.is-active .cta-menu .p-nav-cta {
		display: flex;
		padding: 1rem;
		border: 0;
		justify-content: space-evenly;
	}
	header.is-active .cta-menu .p-nav-cta li .p-nav-cta__link {
		height: 60px;
		padding: .7rem;
	}
	header.is-active .search {
		position: absolute;
    top: 0;
	}
	header.is-active .p-site-title {
		opacity: 0;
	}
	header.is-active .search .p-nav-site__link {
		display: none;
	}
	header.is-active .main-menu > .common-menu > li.search {
		width: calc(100vw - 100px);
		height: 72px;
		z-index: 999;
		border: 0;
	}
	header.is-active .main-menu > .common-menu > li.search .child-wrap{
		display: block;
		visibility: visible;
		top: 0;
		height: auto;
		position: relative;
		overflow: auto;
		opacity: 1;
		background: none;
	}
	header.is-active .main-menu > .common-menu > li.search .parent-info {
		display: none;
	}
	header.is-active .main-menu > .common-menu > li.search .child-inner {
		min-height: auto;
		width: auto;
	}
	header.is-active .main-menu > .common-menu > li.search .child-inner .search-form {
		padding: 0 !important;
	}
	header.is-active .main-menu > .common-menu > li.search .child-inner .search-form input {
    width: calc(96vw - 180px);
    border: 0;
    background: rgba(255,255,255,80%);
 }
	header.is-active .main-menu > .common-menu > li.search .child-inner .search-form .search-input-container {
		height: 72px;
		padding-left: 4vw;
	}
}

@media only screen and (max-width: 599px) {
	.is-active .p-nav-sub,
	.is-active .p-nav-site,
  .is-active .p-nav-cta {
    margin: 1rem 0 0
  }
}

.p-nav-sub__link,
.p-nav-site__link,
.p-nav-cta__link {
  text-decoration: none;
  color: var(--header-text);
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  line-height: 1.2;
  font-size: 12px;
  padding-bottom: 0px;
}
.p-nav-site__link {
  padding-bottom: 0;
}

.p-nav-sub__link:hover,
.p-nav-site__link:hover
.p-nav-cta__link:hover {
}

@media only screen and (max-width: 1023px) {
  .is-active .p-nav-sub__link,
  .is-active .p-nav-site__link,
  .is-active .p-nav-cta__link {
    display: block;
    padding: 1.25rem;
    color: var(--menu-text);
    text-align: left;
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 599px) {
	.is-active .p-nav-sub__link,
	.is-active .p-nav-site__link,
  .is-active .p-nav-cta__link {
    display: block;
  }
}


.p-menu {
  height: 72px;
  width: 72px;
  text-align: center;
  overflow: hidden;
  position: absolute;
  right: 0;
  top: 0;
}

@media only screen and (min-width: 1024px) {
  .p-menu {
    display: none
  }
}

.p-menu__button {
  background: none;
  cursor: pointer;
  border: 0;
  margin: 0;
  padding: 0;
}

.p-menu__icon {
  display: inline-block;
  margin: 0;
  font-size: 40px;
}

.is-active .p-menu__icon {
  display: none
}

.p-menu--active__icon {
  display: none;
  margin: 0;
  font-size: 40px;
}

.is-active .p-menu--active__icon {
  display: inline-block
}

:root {
	--hero-height: 20rem;
}
/** hero **/
.l-hero-wrapper {
  background-size: cover;
  position: relative;
  margin-top: calc(-1 * var(--menu-height));
  padding-top: var(--menu-height);
	z-index: 2;
	overflow: hidden;
}
.l-hero-container {
	padding: 0;
	min-height: 350px;
	display: flex;
	align-items: center;
	background-image: var(--main-gradation);
	background-blend-mode: multiply;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.l-hero-wrapper .l-hero-bg {
	position: absolute;
	top: var(--menu-height);
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background-color: rgb(0 0 0 / 20%);
	opacity: .6;
}
.l-hero-wrapper .l-hero-bg-after {
	position: absolute;
	top: var(--menu-height);
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 3;
	opacity: 0;
}

.l-hero-content {
  width: 100%;
	padding: 1.5rem 1rem;
	z-index: 10;
	position: relative;
}
@media only screen and (min-width: 830px) {
  .l-hero-content {
    margin: 0 auto;
    max-width: 1200px;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
}


.l-hero-main {
  display: flex;
  flex-direction: column;
	color: var(--main-text);
}
.l-hero-main-title .p-page-title {
	display: inline-block;
	width: 100%;
	font-size: var(--fsize-xl);
	font-weight: 700;
}
.l-hero-main-title .p-page-subtitle {
  padding: 0;
  margin: 1px 0;
  color: var(--main-em-bg);
  font-size: var(--fsize-lg);
  font-weight: 400;
  line-height: 1.5;
  display: block;
}

@media only screen and (min-width: 830px) {
  .l-hero-main {
    text-align: center;
  }
}


.l-hero-main-title {
	display: flex;
	flex-direction: column;
}
.l-hero-main-title .p-page-title {
	font-size: 2rem;
	line-height: 1;
	letter-spacing: 0.2em;
	font-weight: 900;
	color: #FFF;
}
.l-hero-main-title .p-page-subtitle {
	margin-top: var(--size-xs);
	letter-spacing: 0.2em;
	font-weight: bold;
	font-size: 1.25rem;
	font-style: italic;
	letter-spacing: 0.5em;
	color: #FFF;
}

#footer {
}
#footer .p-link {
	color: var(--base-txt-bodyColor);
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0;
}
#footer > .l-footer-items .p-image {
	max-width: 20rem;
}
#footer > .l-footer-header {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	width: var(--s-content-width);
	max-width: 100%;
	margin: auto;
	padding: var(--s-grid-gap) 0;
}
#footer > .l-footer-header > .l-footer-header-wrapper {
	width: 100%;
}
#footer > .l-footer-items {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	gap: var(--s-grid-gap);
	width: var(--s-content-width);
	margin: auto;
	padding: 1rem 0;
}

#footer .l-footer-left-wrapper,
#footer .l-footer-right-wrapper {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: var(--s-grid-gap);
	width: 50%;
}
#footer .l-footer-left-wrapper .p-headline > .p-headline-container {
	text-align: left;
}
#footer .l-footer-left-wrapper .p-textarea {
	text-align: left;
}


.block__banner_list .l-section-container > .l-content-wrapper > ul {
	list-style: none;
	padding: 0;
	margin: 0;
	margin-bottom: -.5rem !important;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.block__banner_list .l-section-container > .l-content-wrapper > ul > li {
	max-width: 100%;
	margin-bottom: .5rem;
	margin-right: 1rem;
	display: inline-block;
}
.block__banner_list .l-section-container > .l-content-wrapper.cols-3 > ul,
.block__banner_list .l-section-container > .l-content-wrapper.cols-4 > ul,
.block__banner_list .l-section-container > .l-content-wrapper.cols-5 > ul {
	justify-content: space-between;
}
.block__banner_list .l-section-container > .l-content-wrapper.cols-2 > ul > li {
	margin: 0 20px .5rem;
}
.block__banner_list .l-section-container > .l-content-wrapper.cols-3 > ul > li,
.block__banner_list .l-section-container > .l-content-wrapper.cols-4 > ul > li {
	width: 288px;
	max-width: fit-content;
}
.block__banner_list .l-section-container > .l-content-wrapper.cols-5 > ul > li {
	width: 203px;
}

.block__banner_list .l-section-container > .l-content-wrapper > ul > li figure figcaption {
	margin-top: 1rem;
	font-size: 1rem;
	line-height: 1.3;
}
.block__banner_list.layout01 .l-section-container > .l-content-wrapper > ul > li {
	width: calc(100% / 3 - 2% - 3rem);
	max-width: calc(100% / 3 - 2% - 3rem);
	margin: 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.block__banner_list.layout02 .l-section-container > .l-content-wrapper > ul > li {
	width: calc(100% / 4 - 2% - 3rem);
	max-width: calc(100% / 4 - 2% - 3rem);
	margin: 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.block__banner_list.layout03 .l-section-container > .l-content-wrapper > ul > li {
	width: calc(100% / 5 - 2% - 3rem);
	max-width: calc(100% / 5 - 2% - 3rem);
	margin: 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
.block__banner_list.layout04 .l-section-container > .l-content-wrapper > ul > li {
	width: calc(100% / 6 - 2% - 3rem);
	max-width: calc(100% / 6 - 2% - 3rem);
	margin: 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

@media only screen and (max-width: 830px) {
	.block__banner_list.layout02 .l-section-container > .l-content-wrapper > ul > li,
	.block__banner_list.layout03 .l-section-container > .l-content-wrapper > ul > li,
	.block__banner_list.layout04 .l-section-container > .l-content-wrapper > ul > li {
		width: calc(100% / 2 - 2% - 3rem);
		max-width: calc(100% / 2 - 2% - 3rem);
	}
}

.block__banner_list .movie-container {
	text-align: center;
	margin: 0 2rem 1rem;
}
.block__banner_list .movie-container .movie {
	margin: auto;
	text-align: center;
	display: inline-block;
	padding: 15px;
	background-color: #118acb;
	border-radius: 10px;
}
.block__banner_list .movie-container .movie iframe {
	max-width: 100%;
}
@media only screen and (max-width: 830px) {
	.block__banner_list .movie-container .movie iframe {
    height: 37vw;
    width: 60vw;
	}
}

.block__movie .l-content-wrapper {
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.block__movie .l-content-wrapper .movie {
	margin: auto;
	text-align: center;
	display: inline-block;
	padding: 20px;
	background-color: var(--em-def-bg);
	border-radius: 10px;
}
.block__movie .l-content-wrapper .movie iframe {
	max-width: 100%;
}


.block__movie .p-group {
	width: calc(48% - 2rem);
	background-color: #118acb;
	border-radius: 10px;
	margin: 0 1rem;
	overflow: hidden;
}
.block__movie .p-group .p-group-items > .p-headline {
	padding: 1rem;
	color: #FFF;
}
.block__movie .p-group .p-group-items > .p-embed {
	padding: 0 10px;
}
.block__movie .p-group .p-group-items > .p-embed iframe {
	max-width: 100%;
}
.block__movie .p-group .p-group-items > .p-text,
.block__movie .p-group .p-group-items > .p-textarea {
	background-color: #FFF;
	margin: 10px 0 0;
	padding: 1rem;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
}

@media only screen and (max-width: 830px) {
	.block__movie .p-group {
		width: 100%;
		margin-bottom: 1rem;
	}
	.block__movie .p-group .p-group-items > .p-embed iframe {
		height: auto;
	}
}
.block__3point .l-text-container {
	display: flex;
	flex-direction: column;
}
.block__3point .l-text-container .l-item-figure {
	margin-bottom: var(--size-xs);
  height: 200px;
}

.block__3point .l-text-container .l-item-title {
	color: var(--box-head-text);
	padding: var(--size-sm);
	-webkit-box-ordinal-group:1;
	-ms-flex-order:1;
	-webkit-order:1;
	order:1;
}
.block__3point .l-text-container .l-item-figure {
	-webkit-box-ordinal-group:2;
	-ms-flex-order:2;
	-webkit-order:2;
	order:2;
}
.block__3point .l-text-container .l-item-body {
	text-align: left;
	padding: 0 var(--size-xs) var(--size-xs);
	-webkit-box-ordinal-group:3;
	-ms-flex-order:3;
	-webkit-order:3;
	order:3;
}

.block__3point .l-section-bg{
	background-color: #f7f7f7;
}
.block__3point .s-grid[col="3"] .s-col {
	width: calc((100% - 0.3rem - 0.3rem) / 3);
    margin-left: calc(0.3rem / 2);
    margin-right: calc(0.3rem / 2);
}
.block__3point .s-grid[col="3"] .s-col:nth-child(3n-2) {
    margin-left: 0;
}
.block__3point .s-grid[col="3"] .s-col:nth-child(3n) {
    margin-right: 0;
}
.block__3point .l-content-container .p-item-container {
	background-color: var(--base-box1);
}
.block__3point .l-content-wrapper .p-image-container {
	width: 200px;
	margin: var(--size-sm) auto 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.block__3point .l-content-wrapper .p-figure .image {
	background-size: contain;
	height: initial;
}
.block__3point .p-text-container {
	padding: 0 2rem 2rem;
}
.block__3point .p-item-container .p-title {
	margin: 0 0 2rem 0;
	font-size: 2rem;
	color: #128acc;
	letter-spacing: .1rem;
}
.block__3point .p-item-container .p-title u {
	font-style: normal;
	text-decoration: none;
	background: linear-gradient(transparent 70%, #f0e07d 30%);
}
.block__3point .p-item-container .p-title strong {
	font-size: 160%;
}
.block__3point .p-item-container .p-body {
	font-weight: 900;
	color: #128acc;
	text-align: left;
}
.block__3point .l-section-footer-container .p-figure .image {
	background-size: contain;
	height: initial;
	display: block;
}
.block__3point .l-section-footer-container .p-text {
	text-align: left;
	font-size: .8rem;
	font-weight: 600;
}
.block__3point .l-section-footer-container .p-note {
	padding: 0;
	margin-top: var(--size-xs);
	background-color: unset;
}
.block__3point .l-section-footer-container .p-note.s-radius {
	border-radius: 0;
}
@media only screen and (max-width: 830px) {
	.block__3point .s-grid[col="3"] .s-col {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}
	.block__3point .l-content-wrapper .p-image-container {
		height: 240px;
		width: 180px;
	}
}

/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

block__entry

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.block__entry .l-col-three {
	margin: 1rem 0 3.75rem 0;
	padding: 0;
	display: flex;
	flex-direction: column;
}

.block__entry .l-col-item {
  margin: 0;
}

.block__entry .l-col-item {
  width: 100%;
  padding: 0;
  background-color: var(--box-def-bg);
  border: 1px solid var(--box-def-border);
  border-radius: var(--border-radius);
  overflow: hidden;
  margin-bottom: 3rem;
}

.block__entry .l-col-item h3 {
	font-size: 1.25rem;
	padding: .5rem;
	margin: 0;
	background-color: var(--box-head-bg);
	color: var(--box-head-text);
}
.block__entry .p-body-container .p-headline {
	text-align: center;
	padding-bottom: var(--size-sm);
	padding-top: var(--size-md);
}
.block__entry .p-item-container > .p-title-container .p-title,
.block__entry .p-body-container .p-headline h3 {
	display: inline-block;
	text-align: center;
	font-size: 1.8rem;
	letter-spacing: .1rem;
	background: linear-gradient(transparent 70%, #f0e07d 30%);
}
.block__entry .l-col-item .p-body {
	padding: 1rem;
}

.block__entry .l-col-item .label-wrapper {
	text-align: center;
	line-height: 1;
	margin-bottom: .5rem;
}
.block__entry .l-col-item .label-wrapper > .label {
	padding: 7px 25px;
	background-color: var(--box-head-bg);
	color: var(--box-head-text);
	border-radius: 5px;
	font-size: 1.25rem;
	vertical-align: middle;
	margin-right: 25px;
}
.block__entry .l-col-item .label-wrapper::after {
	display: inline-block;
	font-weight: 700;
	line-height: 1;
	color: var(--box-head-bg);
	letter-spacing: -0.5rem;
}
.block__entry .l-col-item:nth-child(1) .label-wrapper::after{ content: "1"; }
.block__entry .l-col-item:nth-child(2) .label-wrapper::after{ content: "2"; }
.block__entry .l-col-item:nth-child(3) .label-wrapper::after{ content: "3"; }
.block__entry.layout02 .l-col-item .l-content-text {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.block__entry.layout02 .l-col-item .l-content-text .body {
	flex: 0 1 100%;
}
.block__entry.layout02 .l-col-item .l-content-text figure {
	flex: 0 1 25%;
}
.block__entry.layout02 .l-col-item .l-content-text figure img {
	max-width: 100%;
	width: auto;
}

@media only screen and (min-width: 920px) {
  .block__entry .l-col-item .label-wrapper::after {
    font-size: 3.75rem;
    vertical-align: middle;
    line-height: 1;
  }
}
@media only screen and (min-width: 600px) {
	.block__entry .l-col-item {
		margin: 0 .625rem 3rem;
	}
}
@media only screen and (max-width: 830px) {
	.block__entry.layout02 .l-col-item .l-content-text figure {
		flex: 0 1 70%;
	}
}

.block__entry .l-content-wrapper {
	background-color: var(--base-box1);
	border-radius: var(--size-sm);
}
.block__entry .l-content-wrapper > .l-content-container > .p-title {
	color: var(--base-text_light);
	background-color: var(--em-def-bg);
	width: 100%;
	display: block;
	text-align: center;
	padding: 1rem;
	font-size: 2rem;
	font-weight: 900;
	border-radius: var(--size-sm) var(--size-sm) 0 0;
}
/* .block__entry .l-content-container {
	padding-top: var(--size-xs);
} */
.block__entry .s-vertical-list .s-col {
    margin-bottom: 0;
		background: none;
}
.block__entry .p-item-container,
.block__entry .p-body-container .p-group-items {
	justify-content: center;
	padding: var(--size-md);
}
.block__entry .p-body-container .p-group-items {
	padding-top: 0;
}
.block__entry .p-item-container > p.l-item-title {
	line-height: 1.2;
	font-size: 2rem;
	font-weight: 900;
	color: var(--base-text_dark);
	width: 100%;
	display: flex;
	justify-content: center;
	margin: 0 auto;
}
.block__entry .p-item-container > p.l-item-title > span {
	background: linear-gradient(transparent 75%, #f1e07d 15%);
}
.block__entry .p-group.image-container .p-group-items {
	display: flex;
}
.block__entry .p-item-container .p-text-container {
	width: 48%;
}
.block__entry .p-group-items .p-image {
	padding-bottom: var(--size-sm);
}
.block__entry .p-item-container .p-image-container,
.block__entry .p-group.image-container .p-group-items .p-image {
	width: 48%;
}
.block__entry .p-item-container .p-body-container.wid-auto .p-text-container {
	width: auto;
}
.block__entry .p-item-container .p-body-container.wid-auto .p-image-container {
	max-width: 48%;
	width: auto;
}
.block__entry .p-item-container .p-body-container.wid-column {
	flex-direction: column;
	padding-top: var(--size-sm);
}
.block__entry .p-item-container .p-body-container.wid-column.reverse {
	flex-direction: column-reverse;
	padding-top: var(--size-sm);
}
.block__entry .p-item-container .p-body-container.wid-column .p-text-container,
.block__entry .p-body-container .p-group .p-group-items > .p-text {
	width: 100%;
	padding: var(--size-sm);
	padding-left: var(--size-xs);
	padding-right: var(--size-xs);
	padding-top: 0;
}
.block__entry .p-item-container .p-body-container.wid-column .p-image-container {
	width: 100%;
	padding-top: 0;
}
.block__entry .p-item-container .p-body-container.wid-column .p-table-container {
	padding-top: 0;
}
.block__entry .p-body-container .p-group .p-group-items .p-table {
	margin-top: 1rem;
}
.block__entry .p-body-container .p-group .p-group-items .p-table .p-title {
	text-align: center;
	font-size: 1.2rem;
}
.block__entry .p-item-container .p-body-container.wid-column .p-figure,
.block__entry .p-group.wid-column .p-figure,
.block__entry .p-group.image-container .p-figure {
	padding: 0 3rem;
	box-sizing: border-box;
}
.block__entry .p-item-container .p-figure-body {
	display: flex;
}
.block__entry .p-body-container .p-textarea > .p-text-inner > h3 {
	border-left: 7px solid #fde63b;
	padding-left: 5px;
	margin-bottom: 6px;
}

.block__entry .p-item-container .p-text-container h3.l-item-title {
	font-size: var(--fsize-xl);
	color: var(--color-head-text);
	margin-bottom: var(--size-xs);
}
.block__entry .p-item-container .p-image-container {
	width: 48%;
	padding-top: var(--size-sm);
	padding-bottom: var(--size-sm);
}
.block__entry .p-figure .image {
	background-size: contain;
	height: initial;
}
.block__entry .p-figure figcaption {
	background-color: unset;
	font-size: 0.8rem;
	text-align: left;
	line-height: 1.5;
}
.block__entry .p-note .p-text {
    text-align: left;
    font-size: .8rem;
}
.block__entry .l-section-container:nth-child(3) .p-item-container:nth-child(2) .p-text-container {
	width: 100%;
	position: relative;
	padding-right: 170px;
}
.block__entry .l-section-container:nth-child(3) .p-item-container:nth-child(2) .p-text-container::after {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	background: url(assets/entry_04_label.png) no-repeat;
	background-size: contain;
	background-position: center;
	width: 140px;
	height: 140px;
}
.block__entry .l-section-container:nth-child(3) .p-item-container:nth-child(2) .p-image-container {
	width: 100%;
}
.block__entry .p-figure .image > img,
.block__entry .p-figure > img {
	max-width: 100%;
	width: auto;
}
@media only screen and (max-width: 830px) {
	.block__entry .p-item-container {
		padding: var(--size-sm);
	}
	.block__entry .p-item-container > p.l-item-title {
		padding: 0;
	}
	.block__entry .p-item-container .p-text-container {
		width: 100%;
	}
	.block__entry .p-item-container .p-image-container,
	.block__entry .p-group.image-container .p-group-items .p-image {
		width: 100%;
		padding-left: 0;
	}
	.block__entry .s-min-wid-md {
		min-width: initial;
	}
	.block__entry .p-item-container .p-body-container.wid-auto .p-image-container {
		max-width: unset;
	}
	.block__entry .p-item-container .p-figure-body,
	.block__entry .p-group.image-container .p-group-items {
		flex-wrap: wrap;
	}
	.block__entry .p-item-container .p-body-container.wid-column .p-figure,
	.block__entry .p-group.image-container .p-figure,
	.block__entry .p-group.wid-column .p-figure {
		padding: 0;
		margin-bottom: 3rem;
	}
}

.block__cases_list .p-figure {
	overflow: hidden;
}
.block__cases_list > .l-section-container .l-col-text-wrapper {
	background-color: #FFFFFF;
	color: var(--box-info-text);
	padding: 20px 20px 20px 20px;
}
.block__cases_list > .l-section-container .l-col-text-wrapper h3 {
	font-size: 1.4rem;
	margin: 0 0 15px 0;
	min-height: 3.9rem;
	display: flex;
	align-items: center;
}
.block__cases_list .l-content-container {
	list-style: none;
}
.block__cases_list > .l-section-container .l-col-text-wrapper > p {
	font-size: 1rem;
	line-height: 1.3;
	min-height: initial;
	padding-bottom: 10px;
}
.block__cases_list > .l-section-container .l-col-text-wrapper > p > em {
	font-style: normal;
	color: var(--em-primary-bg);
}

.block__cases_list .s-grid .s-col{
	background-color: #FFF;
	display: flex;
	justify-content: center;
	align-items: center;
}

@media only screen and (min-width: 600px) {
	.block__cases_list > .l-section-container .l-col-three {
		display: flex;
	}
	.block__cases_list > .l-section-container .l-col-three .l-col-item {
		width: calc(100% / 3 - 1rem);
		margin-bottom: 15px;
		margin-right: .99rem;
	}
	.block__cases_list > .l-section-container .l-col-three .l-col-item:nth-of-type(3n) {
		margin-right: 0;
	}
	.block__cases_list > .l-section-container .cols-2 .l-col-item { width: calc(100% / 2 - 1rem); }
	.block__cases_list > .l-section-container .l-col-text-wrapper > p {
		min-height: 100px;
		padding-bottom: 0;
	}
}


.layout02.block__cases_list > .l-section-container .p-item-container:nth-child(1) .l-col-text-wrapper {
	position: relative;
	padding: 20px 20px 60px 20px;
}
.layout02.block__cases_list > .l-section-container .p-item-container:nth-child(1) .l-col-text-wrapper .p-movie-thumnail + .p-body {
	padding-right: 283px;
}
.layout02.block__cases_list .p-movie-thumnail {
	position: absolute;
	top: 60px;
	bottom: 0;
	right: 30px;
	margin: auto;
	width: 263px;
	height: 238.3px;
}
.layout02.block__cases_list .p-movie-thumnail .p-movie-thumnail-container {
	position: relative;
}
.layout02.block__cases_list .p-movie-thumnail .p-movie-label-container {
	position: absolute;
	z-index: 3;
	right: -15px;
	top: -60px;
	height: 112px;
	width: 112px;
	padding: 25px 20px 20px 20px;
	background: url(https://files.cmssv.awsv.jp/_build_/template/pages/koyou/assets/case01_movielabel.svg) no-repeat;
	background-position: center;
	background-size: contain;
	color: var(--em-def-text);
	font-weight: 600;
	line-height: 1.5;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.layout02.block__cases_list .p-movie-thumnail .p-movie-thumnail-bg {
	position: relative;
	height: 100%;
	width: 100%;
	z-index: 1;
}
.layout02.block__cases_list .p-movie-thumnail a {
	position: absolute;
	z-index: 2;
	right: 0;
	left: 0;
	bottom: 0;
	top: 10px;
	margin: auto;
	width: 220px;
	height: 123px;
}
@media only screen and (max-width: 1200px) {
	.layout02.block__cases_list > .l-section-container .p-item-container:nth-child(1) .l-col-text-wrapper {
		padding: 20px 20px 350px 20px;
	}
	.layout02.block__cases_list > .l-section-container .p-item-container:nth-child(1) .l-col-text-wrapper .p-movie-thumnail + .p-body {
		padding-right: 0;
	}
	.layout02.block__cases_list .p-movie-thumnail {
		top: initial;
		bottom: 30px;
		right: 0;
		left: 0;
	}
	.layout02.block__cases_list .p-movie-thumnail .p-movie-label-container {
		right: 0;
	}
}

.layout03.block__cases_list > .l-section-container .p-item-container:nth-child(1) .l-col-text-wrapper {
	position: relative;
	padding: 20px 20px 60px 20px;
}
.layout03.block__cases_list > .l-section-container .p-item-container:nth-child(1) .l-col-text-wrapper .p-movie-thumnail + .p-body {
	padding-right: 283px;
}
.layout03.block__cases_list .p-movie-thumnail {
	position: absolute;
	top: 30px;
	bottom: 0;
	right: 30px;
	margin: auto;
	width: 263px;
	height: 263px;
}
.layout03.block__cases_list .p-movie-thumnail .p-movie-thumnail-container {
	position: relative;
}
.layout03.block__cases_list .p-movie-thumnail .p-movie-label-container {
	position: absolute;
	z-index: 2;
	right: 0;
	left: 0;
	top: -160px;
	bottom: 0;
	margin: auto;
	padding: 0 0 20px;
	background-position: center;
	background-size: contain;
	color: #118acb;
	font-weight: 500;
	line-height: 1.5;
	font-size: 1.2rem;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}
.layout03.block__cases_list .p-movie-thumnail .p-movie-label-container span {
	position: relative;
}
.layout03.block__cases_list .p-movie-thumnail .p-movie-label-container span::after {
	position: absolute;
	bottom: -15px;
	left: 0;
	right: 0;
	margin: auto;
	content: "";
	display: inline-block;
	width: 15px;
	height: 2px;
	background-color: #118ACB;
}
.layout03.block__cases_list .p-movie-thumnail .p-movie-thumnail-bg {
	position: relative;
	height: 100%;
	width: 100%;
	z-index: 1;
}
.layout03.block__cases_list .p-movie-thumnail a {
	position: absolute;
	z-index: 3;
	right: 0;
	left: 0;
	bottom: 0;
	top: 50px;
	margin: auto;
	width: 220px;
	height: 123px;
}
@media only screen and (max-width: 1200px) {
	.layout03.block__cases_list > .l-section-container .p-item-container:nth-child(1) .l-col-text-wrapper {
		padding: 20px 20px 330px 20px;
	}
	.layout03.block__cases_list > .l-section-container .p-item-container:nth-child(1) .l-col-text-wrapper .p-movie-thumnail + .p-body {
		padding-right: 0;
	}
	.layout03.block__cases_list .p-movie-thumnail {
		top: initial;
		bottom: 30px;
		right: 0;
		left: 0;
	}
	.layout03.block__cases_list .p-movie-thumnail .p-movie-label-container {
		right: 0;
		font-size: 1.4rem;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

block__conversion

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.block__conversion .btn-block {
	display: flex;
	justify-content: center;
	align-items: stretch;
	margin-bottom: 0;
}
.block__conversion .btn-block > div {
	padding: 0 var(--size-sm);
}
.block__conversion .btn-block > div > a > h4 {
	margin: 0 0 .5rem;
}
@media only screen and (max-width: 830px) {
	.block__conversion .btn-block {
		flex-direction: column;
		margin: 0;
	}
	.block__conversion .btn-block > div > a {
		width: auto;
		margin-bottom: 1rem;
		min-width: initial;
	}
}
/* ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

block__flow

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.block__flow .flow-list {
	padding: 0;
	margin: 0;
	list-style: none;
}
.block__flow .flow-list > li .p-block-container {
  width: 100%;
  padding: 20px;
  color: var(--box-def-text);
  background-color: var(--box-def-bg);
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.block__flow .flow-list > li:not(:last-child)::after,
.block__flow .flow-list.lastarrow > li:last-child::after {
  position: absolute;
  content: " ";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 30px 30px 0 30px;
  border-color: var(--color-head-text) transparent transparent transparent;
  margin: auto;
  left: 0;
  right: 0;
  top: auto;
  bottom: -60px;
}
.block__flow .flow-list.lastarrow > li {
	margin-right: 50px;
}
.block__flow .flow-list > li > i {
	display: flex;
	flex: 0 0 50%;
	justify-content: center;
	align-items: center;
	text-align: center;
	font-size: 4rem;
	margin: 1rem;
	color: var(--box-head-bg);
}
.block__flow h3 {
  margin: 0;
  font-size: 1rem;
  text-align: center;
  color: var(--box-head-text);
  display: flex;
  justify-content: center;
  align-items: center;
}
.block__flow h3 .no {
  display: block;
  font-weight: 900;
  font-size: var(--fsize-3xl);
  padding: var(--size-xs);
}
.block__flow .p-image-container {
  height: 130px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 var(--size-xs);
}
.block__flow .flow-list li:first-child > figure img {
  width: 112px;
}
.block__flow .flow-list li:nth-child(2) > figure img {
  width: 100px;
}
.block__flow .flow-list li:last-child > figure img {
  width: 86px;
}
.block__flow .flow-list > li > .l-col-body {
  margin: 1rem 0 0;
}
.block__flow .flow-list > li > .bullet-list {
  margin: 1em 0 0;
}
@media only screen and (min-width: 830px) {
  .block__flow .u-text-center {
    text-align: center;
  }
  .block__flow .flow-list {
    display: flex;
    justify-content: space-between;
  }
  .block__flow .flow-list > li {
    width: calc(100%/3 - 40px);
    margin: 0;
  }
  .block__flow .flow-list.cols-1 > li { width: calc(100% - 40px); }
  .block__flow .flow-list.cols-2 > li { width: calc(100%/2 - 40px); }
  .block__flow .flow-list.cols-3 > li {width: calc(100%/3 - 40px);position: relative;}
  .block__flow .flow-list.cols-4 > li { width: calc(100%/4 - 40px); }
  .block__flow .flow-list.cols-5 > li { width: calc(100%/5 - 40px); }
  .block__flow .flow-list.cols-6 > li { width: calc(100%/6 - 40px); }
  .block__flow .flow-list.cols-7 > li { width: calc(100%/7 - 40px); }
  .block__flow .flow-list.cols-8 > li { width: calc(100%/8 - 40px); }
  .block__flow .flow-list.cols-9 > li { width: calc(100%/9 - 40px); }
  .block__flow .flow-list.cols-10 > li { width: calc(100%/10 - 40px); }
	.block__flow .flow-list > li:not(:last-child)::after,
	.block__flow .flow-list.lastarrow > li:last-child::after {
    position: absolute;
    content: " ";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 30px 0 30px 30px;
    border-color: transparent transparent transparent var(--color-head-text);
    left: auto;
    right: -48px;
    top: 0;
    bottom: 0;
  }
}
@media only screen and (max-width: 830px) {
	.block__flow .flow-list > li > .p-block-container {
		padding: 20px 0;
  }
	.block__flow h3 {
		font-size: inherit;
	}
	.block__flow .p-ullist > li {
		font-size: inherit;
	}
}
.block__faq .p-faq {
  margin: 0 auto 1.875rem;
  background-color: var(--color-bg);
}

@media only screen and (min-width: 830px) {
  .block__faq .p-faq {
    margin: 0 auto 2.5rem;
  }
}

.block__faq .p-faq>:last-child {
  margin-bottom: 0
}

.block__faq .p-faq:last-of-type {margin-bottom: 0;}

.block__faq .p-faq__question {
  display: flex;
  align-items: center;
  padding: 1rem 2rem 1rem 1rem;
  margin: 0;
  font-size: 1.125rem;
  font-weight: normal;
  text-align: left;
  align-items: center;
  border-bottom: 1px solid #d3d3d3;
  background-color: var(--color-head-bg);
  color: var(--color-head-text);
  flex: 1;
}
.block__faq .p-faq__question .p-faq__title {
    font-weight: 500;
}
.block__faq .p-faq__question .p-faq__subbody {
  font-size: 85%;
  color: var(--color-text);
  margin-top: .5rem;
}

.block__faq .p-faq__q-mark {
  flex: 0 0 2.5rem;
  margin-right: 1rem;
  font-size: 2.375rem;
  line-height: 1;
  text-align: center;
  color: var(--color-head-text);
}

.block__faq .p-faq__answer {
  display: flex;
  align-items: flex-start;
  padding: 1rem 2rem 1rem 1rem;
  color: var(--color-text);
}

.block__faq .p-faq__a-mark {
  flex: 0 0 2.5rem;
  margin-right: 1rem;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  font-size: 2.375rem;
  line-height: 1;
  text-align: center;
  color: var(--color-head-text);
}
.block__faq .p-faq__answer {
	background-color: var(--box-def-bg);
}
.block__faq .p-faq__a-body, .p-faq__a-body > p {
  line-height: 2;
}
.block__faq .p-faq__a-body > p {
  margin-bottom: 1rem;
}

.block__faq .p-faq__a-body, .p-faq__a-body > figure {margin: 1rem 0;}
.block__faq .p-faq__a-body, .p-faq__a-body > figure img {
	width: auto;
	max-width: 100%;
}
.block__form .l-content-wrapper iframe {
	width: 100%;
}


@media only screen and (max-width: 375px) {
	:root {
		font-size: 70%;
	}
}

/* size */
:root {
	--size-xs: 1rem;
	--size-sm: 2rem;
	--size-md: 3rem;
	--size-lg: 5rem;

	--fsize-2xs: 0.4rem;
	--fsize-xs: 0.5rem;
	--fsize-sm: 0.65rem;
	--fsize-md: 0.8rem;
	--fsize-lg: 1.25rem;
	--fsize-xl: 1.5rem;
	--fsize-2xl: 1.75rem;
	--fsize-3xl: 2rem;
}

body, input, textarea {
	font-family: 'A1ゴシック M', 'A1 Gothic M', '小塚ゴシック Pr6N', 'Noto Sans JP', sans-serif;
}

body {
	/* background-color: var(--color01-bg); */
}
main {
	/* background: url(assets/bg.png);
	background-repeat: repeat !important; */
}
a {
	text-decoration: none;
}

.l-section-bg {
	background-color: #f9f9f9;
}

/* ãƒ‘ãƒ¼ãƒ„ */
.s-btn-shadow {
	box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, .16);
}
.p-btn-def {
	position: relative;
	border-width: 1px;
}
.l-body-wrapper .p-btn-def {
	padding: .6rem 2rem;
	font-size: .9rem;
	font-weight: 300;
}
.l-section-footer-container .p-btn-container > .p-btn-def {
	background: var(--em-primary-gradation);
	color: var(--em-primary-text);
	border-color: var(--em-primary-border);
	min-width: 240px;
}
.l-section-footer-container .p-btn-container {
    margin-top: var(--size-lg);
}
@media only screen and (max-width: 1200px) {
	.l-section-footer-container .p-btn-container {
		margin-top: var(--size-sm);
	}
}
@media only screen and (max-width: 830px) {
	.l-section-footer-container .p-btn-container > .p-btn-def {
		font-size: 1.4rem;
	}
}

.p-tag-list > li {
	font-size: 1rem;
	padding: 0 15px;
	width: 100px;
	border-radius: 15px;
	text-align: center;
}

.s-border {
	border-width: 0;
}
.p-box-link {
	position: relative;
}

.p-subtitle {
	letter-spacing: 0.1rem;
}

.p-body h3,
.p-text > h3 {
	border-left: 7px solid #fde63b;
	padding-left: 5px;
	margin-bottom: 6px;
}

.l-section-container {
	padding: 6rem 0;
}
.l-section-title-container {
	min-height: 6rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.l-section-title-container .l-section-subtitle {
	position: relative;
	opacity: 1;
	letter-spacing: initial;
	width: initial;
	background: var(--em-def-bg);
	color: var(--base-text_light);
	font-size: 1.4rem;
	padding: .5rem 3rem;
	font-weight: 600;
	border-radius: var(--size-sm);
	margin-bottom: var(--size-md);
}
.l-section-title-container .l-section-title {
	position: relative;
	z-index: 2;
}
.l-section-title-container .p-title-bg {
	position: absolute;
	width: 200px;
	top: -30px;
	left: 80%;
}
.s-align-center .l-section-title::after {
	background: linear-gradient(to right, #aed5dc 50%, #fde63c 50%);
	height: 8px;
	width: 90px;
	margin: var(--size-xs) auto 0;
}
@media only screen and (max-width: 1200px) {
	.l-section-container {
		padding: 4rem 10px;
	}
}
@media only screen and (max-width: 830px) {
	.l-section-title-container .p-title-bg {
    width: 25vw;
    top: 0vw;
    left: 65vw;
	}
}	

/* header */
header {
  position: sticky;
  top: 0;
  width: 100vw;
  height: var(--header-height);
  min-height: 3rem;
  z-index: 9;
}
.l-header-logo .p-title {
	position: absolute;
	top: 0;
	left: 0;
	width: 320px;
	z-index: 3;
	background-color: #FFF;
	padding: 1rem;
}
.l-header-logo .p-company-logo {
	position: absolute;
	top: 1.6rem;
	right: 1rem;
	width: 220px;
	z-index: 3;
	background-color: #FFF;
	padding: .5rem 1.5rem;
	border-radius: 50px;
}

.l-header-wapper {
	position: absolute;
}
.l-gmenu-wrapper {
	top: 0;
	left: 0;
	right: auto;
	z-index: 5;
	width: 100%;
	background-color: #FFF;
	height: 110px;
	border-top: 1px solid #e9e9e9;
}
#head.is-hero-scroll .l-gmenu-wrapper {
	height: 70px;
}
#head.is-hero-scroll a {
	transition:none;
}
.l-gmenu-wrapper .l-gmenu-navi-wrapper.layout1 {
	max-width: 1600px;
	margin: auto;
	width: 100%;
}
.l-gmenu-main-container {
	display: inline-flex;
	width: 100%;
}
.l-gmenu-main-container > li:nth-child(1)::before,
.l-gmenu-main-container > li:nth-last-child(1)::after {
	display: none;
}
.l-gmenu-main-container > li {
	font-size: 1.2rem;
	font-weight: 700;
	width: initial;
	margin-right: 20px;
	padding: 10px 0;
	position: relative;
}
.l-gmenu-main-container > li::before {
	display: none;
}
.l-gmenu-main-container > li a {
	color: #535353;
	position: relative;
	width: initial;
	padding: 0 10px;
	text-align: center;
}
.l-gmenu-main-container > li:hover a {
	color: #118ACB;
}
.l-gmenu-main-container > li:hover::after,
.l-gmenu-main-container > li.active::after {
	content: "";
	position: absolute;
	display: block;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 9px;
	background-color: #118ACB;
}

/* .l-gmenu-main-container > li:nth-child(1) a {
	padding-left: 0;
}
.l-gmenu-main-container > li:nth-last-child(1) a {
	padding-right: 0;
} */
/* header.is-scroll .l-gmenu-main-container > li a {
	color: var(--em-primary-text);
} */
.l-header-container > .l-gmenu-sub-wrapper {
	width: 70%;
	justify-content: center;
	align-items: center;
	height: 100%;
}
.l-gmenu-cta-container {
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	height: initial;
	justify-content: center;
	align-items: stretch;
}
body.scroll-contents .l-gmenu-cta-container {
	justify-content: flex-end;
	padding-right: 1rem;
}
.l-gmenu-cta-container > li {
	width: 42%;
	padding: 0;
	margin-left: 0;
}
.l-gmenu-cta-container .p-btn {
	padding: 1.2rem 3rem;
	font-size: 1.2rem;
    display: block;
    text-align: center;
    font-weight: 900;
    border-radius: 4.5rem;
    position: relative;
		max-height: 115px;
		height: 100%;
}
.l-gmenu-cta-container li.s-download .p-btn-def {
	background: #118ACB;
	color: var(--em-def-text);
	border-color: #118ACB;
}
.l-gmenu-cta-container li.s-download a::before {
	position: absolute;
    left: 1.5em;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    background: url(https://files.cmssv.awsv.jp/_build_/template/pages/koyou/assets/conversion_dl_icon.png) no-repeat;
    background-position: center;
    background-size: contain;
    width: 1em;
    height: 1em;
}
.l-gmenu-cta-container li.s-download a::before {

}
.l-gmenu-cta-container li.s-contact .p-btn-def {
    background: #FEDF5D;
		color: #000;
		border-color: #FEDF5D;
}
.l-gmenu-cta-container li.s-contact a::before {
	position: absolute;
    left: 1.5em;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    background: url(https://files.cmssv.awsv.jp/_build_/template/pages/koyou/assets/conversion_contact_icon.png) no-repeat;
    background-position: center;
    background-size: contain;
    width: 1em;
    height: 1em;
}
.l-gmenu-cta-container li.s-banner {
	align-self: center;
	justify-self: flex-end;
	flex: 0;
}
.l-gmenu-cta-container li.s-banner > .p-btn-def {
	padding: 0;
	width: fit-content;
	height: fit-content;
	background: none;
	border: 0;
	border-radius: 0;
}
#head.is-hero-scroll .l-gmenu-cta-container li.s-banner .p-btn-def {
	padding: 0;
}
.l-gmenu-cta-container li.s-banner > .p-btn-def > img {
	width: 20rem;
	object-fit: contain;
}
#head.is-hero-scroll .l-gmenu-cta-container li.s-banner .p-btn-def > img {
	width: 14rem;
}

.l-gmenu-cta-container li.s-img {
	align-self: center;
	justify-self: flex-end;
	flex: 0;
}
.l-gmenu-cta-container li.s-img > .p-btn-def {
	padding: 0;
	width: fit-content;
	height: fit-content;
	background: none;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}
#head.is-hero-scroll .l-gmenu-cta-container li.s-img .p-btn-def {
	padding: 0;
}
.l-gmenu-cta-container li.s-img > .p-btn-def > img {
	width: 15rem;
	max-width: 15rem;
	object-fit: contain;
}
.l-gmenu-cta-container li.s-img.s-img-page > .p-btn-def > img {
	width: 13rem;
	max-width: 13rem;
	object-fit: contain;
}

.l-hero-bg-image {
	background-color: rgb(255 255 255 / 10%) !important;
	background-size: cover;
	background-position: center;
	opacity: .7;
}
.l-hero-bg-container > video {
	position: absolute;
	top: 50% !important;
	left: 50% !important;
	width: auto !important;
	height: auto !important;
	min-width: 100%;
	min-height: 100%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
@media only screen and (max-width: 1200px) {
	.l-header-container .p-title {
		z-index: 8;
	}
	.l-header-container > .l-gmenu-sub-wrapper {
		width: 100%;
	}
	#head.is-hero-scroll .l-header-container > .l-gmenu-sub-wrapper {
		width: 70%;
	}
	.l-gmenu-cta-container {
		justify-content: center;
		padding: 10px 0;
		height: initial;
		margin: 0;
		flex-wrap: wrap;
		gap: 0.5em;
	}
	.l-gmenu-cta-container > li {
		margin: 0 5px;
		padding: calc(var(--size-xs) / 2) 0;
	}
	.l-gmenu-cta-container .p-btn-def {
		border-color: var(--header-border);
	}
	.l-gmenu-cta-container .p-btn {
		font-size: 1rem;
		padding: 1rem 3rem;
	}
	.l-gmenu-main-container > li a::before {
		border: 1px solid var(--header-border);
	}
	.l-gmenu-main-container > li a {
		color: var(--em-primary-text);
	}
	.l-gmenu-wrapper {
		display: none;
		position: fixed;
		left: 0;
		top: calc(var(--header-height) + .8rem + 40px);
		background-color: var(--header-bg);
		width: 100%;
		height: initial;
		padding: 20px 0;
	}
	.l-menu-container {
		right: 1rem;
		z-index: 8;
	}
	.l-gmenu-main-container {
		display: block;
	}
	.l-gmenu-main-container > li {
		padding: 10px 20px;
	}
	body.is-gmenu-active .l-header-container > .l-gmenu-sub-wrapper {
		display: block;
	}
	body.is-gmenu-active .l-gmenu-wrapper {
		display: block;
	}
}
@media only screen and (max-width: 830px) {
	.l-gmenu-cta-container > li {
		flex-wrap: wrap;
	}
	.l-gmenu-cta-container > li {
		width: 47%;
		margin: 0 2px;
	}
	.l-gmenu-cta-container li:first-child a::before {
		left: .7rem;
		width: 18px;
		height: 18px;
	}
	.l-gmenu-cta-container li:last-child a::before {
		left: .7rem;
		width: 19px;
		height: 14px;
	}
}

.l-section-title-container.s-align-center .l-section-title {
	display: flex;
	flex-direction: column;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0.2rem;
	font-weight: 700;
	color: var(--color-text);
	margin-top: .5rem;
}

#top .l-hero-container {
	min-height: 700px;
}
.l-header-container .l-header-logo-container,
.l-header-container .l-header-complogo-container {
	display: none;
}
.l-header-container .p-title .p-image {
	padding: 1rem;
}
#head.is-hero-scroll .l-header-container .p-title {
	display: flex;
}
#head.is-hero-scroll {
	--header-height: 100px;
	flex-direction: column-reverse;
	display: flex;
}
#head.is-hero-scroll .l-gmenu-cta-container li .p-btn-def {
	font-size: 1.2rem;
	padding: 0.5rem;
	width: auto;
}
#head.is-hero-scroll .l-gmenu-cta-container {
	justify-content: center;
	padding-right: 1rem;
	box-sizing: border-box;
	height: calc(var(--header-height) - 2em);
	align-items: center;
}
#head.is-hero-scroll .l-header-container .l-header-logo-container {
	display: flex;
	width: 20%;
	height: var(--header-height);
	align-items: center;
}
#head.is-hero-scroll .l-header-container .l-header-logo-container:nth-last-child(1),
#head.is-hero-scroll .l-header-container .l-header-complogo-container {
	display: flex;
	width: 15%;
	height: var(--header-height);
	align-items: center;
	padding: 1rem 1.5rem 1rem 0;
}
#head.is-hero-scroll .l-header-container > .l-gmenu-sub-wrapper {
	order: inherit;
	width: 65%;
}
/* #head.is-hero-scroll .l-header-wapper {
	height: 100px;
}
#head.is-hero-scroll .l-header-container {
	height: 100px;
}
#head.is-hero-scroll .l-header-container .p-title {
	height: 100px;
}
#head.is-hero-scroll .l-header-container .p-title .p-image {
	height: 100px;
} */

.l-header-container .l-menu-container {
	display: none;
}
.l-hero-wrapper .l-hero-bg {
	background-color: unset;
}
#top header {
	position: sticky;
	height: auto;
}
#top .l-hero-wrapper {
	position: relative;
	width: 100vw;
	min-height: var(--hero-height);
	overflow: hidden;
}
#top .l-hero-content {
	flex-direction: row-reverse;
	align-items: center;
	padding: 2rem 0 0rem;
	max-width: 1600px;
}
#top .l-hero-main {
	padding: 0;
}
#top .l-hero-main > .p-page-title {
	text-align: center;
}
#top .l-hero-main > .p-page-title > .u-br-after {
	background-color: var(--main-em-bg);
	color: var(--main-em-text);
	border: 1px solid var(--main-em-border);
	box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, .16);
	font-size: 1.2rem;
	display: inline-block;
	text-align: center;
	padding: .2rem 1rem;
	margin: 0 auto;
	font-weight: 100;
	width: 90%;
	border-radius: 30px;
}
#top .l-hero-main > .p-page-title > .p-page-title__logotype {
	font-size: 2.5rem;
	font-weight: 100;
	text-align: center;
	margin: 3rem 0 2rem;
	line-height: 1.5;
	height: auto;
}
#top .l-hero-main__btn {
	text-align: center;
}
#top .l-hero-main__btn > .btn-primary {
    background: var(--em-primary-gradation);
    color: var(--base-text_light);
	border: 1px solid var(--em-primary-border);
	box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, .16);
	padding: 14px 10px;
	min-width: 270px;
	border-radius: 60px;
	display: inline-block;
}
@media only screen and (max-width:830px) {
	#top .l-hero-container {
		min-height: unset;
	}
	#top .l-hero-main {
		padding: 7vw;
	}
	#top .l-hero-content {
		padding: 0;
	}
	#top .p-page-title {
		margin: .75rem 1.125rem 1.125rem;
	}
	#top .l-hero-main > .p-page-title > .u-br-after {
		padding: 0.4rem 1rem;
	}
	#top .l-hero-main__btn > .btn-primary {
		padding: 8px 10px;
		min-width: 240px;
	}
	#head.is-hero-scroll .l-gmenu-cta-container li .p-btn-def {
    font-size: 1.1rem;
    padding: 1rem 2rem 1rem 2.3rem;
	}
	/* .l-gmenu-cta-container li:first-child a::before {
		left: 3vw;
    width: 2vw;
    height: 2vw;
	} */
}

:root {
	--header-height: 9rem;
	--menu-height: 4rem;
}
@media only screen and (max-width:830px) {
	:root {
		--header-height: 8.2rem;
	}
}
header {
	position: fixed;
	top: 0;
	left: 0;
	min-height: initial;
	z-index: 999;
	box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, .16);
}
header .l-header-wapper {
	display: flex;
	background-color: var(--menu-bg);
	background-color: transparent;
	transition:none;
	border-top: 1px solid #e9e9e9;
}
header.is-scroll {
	min-height: var(--menu-height);
	box-shadow: 0px 0px 7px 0px rgba(0, 0, 0, .16);
}
header.is-scroll .l-header-wapper {
	background-color: var(--menu-bg);
}
header .l-header-container {
	max-width: none;
	padding: 0;
	flex-direction: column;
}
header .l-header-container .p-title .p-image img {
	object-fit: unset;
	object-position: unset;
	width: auto;
	height: 100%;
	max-width: 100%;
}
.l-gmenu-navi-wrapper > .l-gmenu-main-wrapper {
	margin: 0 0 0 auto;
	text-align: right;
	max-width: 1600px;
}
.l-gmenu-sub-container > li {
    padding: 0 20px;
}
.l-gmenu-sub-container .p-gmenu-sub-item {
	font-weight: 100;
}
@media only screen and (max-width:1200px) {
	header .l-header-container {
	}
	.l-menu-container {
		display: block;
	}
	.is-gmenu-active .l-header-container > .l-gmenu-sub-wrapper {
		display: block;
	}
	.l-gmenu-sub-container {
		flex-direction: column;
	}
	.l-gmenu-sub-container > li {
		font-size: var(--fsize-lg);
	}
}

@keyframes scroll-up { from { transform: translateY(100px); opacity: 0; } to { transform: translateY(0px); opacity: 1; }  }
#head.is-hero-scroll {
	position: fixed;
	bottom: 0;
	top: auto;
	animation: 0.5s linear 0s scroll-up;
}
#head.is-hero-scroll .l-header-container {
	flex-direction: row;
}
#head.is-hero-scroll {
	--header-height: auto;
}
#head.is-hero-scroll .l-header-container .l-header-logo-container {
	display: none;
}
#head.is-hero-scroll .l-header-container .l-header-complogo-container {
	display: none;
}
#head.is-hero-scroll .l-gmenu-wrapper {
	display: none;
}
#head.is-hero-scroll .l-header-container > .l-gmenu-sub-wrapper {
	width: 100%;
}
#head.is-hero-scroll .l-gmenu-cta-container {
	padding: 0;
	flex-wrap: wrap;
	gap: 0;
}
#head.is-hero-scroll .l-gmenu-cta-container li.s-download .p-btn-def,
#head.is-hero-scroll .l-gmenu-cta-container li.s-contact .p-btn-def {
	padding: 0.5em 3em;
	width: auto;
	font-size: 1rem;
	height: auto;
}
#head.is-hero-scroll .l-gmenu-cta-container li.s-banner .p-btn-def > img {
	width: 14rem;
}
#head.is-hero-scroll .l-gmenu-cta-container li.s-img-page .p-btn-def > img {
	width: 11rem;
}
#head.is-hero-scroll .l-header-wapper {
	min-width: 100%;
}
@media only screen and (max-width:1200px) {
	#top header,
	#head {
		position: fixed;
		bottom: 0;
		top: auto;
		animation: 0.5s linear 0s scroll-up;
	}
	#head .l-header-container {
		flex-direction: row;
	}
	#head {
		--header-height: auto;
	}
	#head .l-header-container .l-header-logo-container {
		display: none;
	}
	#head .l-header-container .l-header-complogo-container {
		display: none;
	}
	#head .l-gmenu-wrapper {
		display: none;
	}
	#head .l-header-container > .l-gmenu-sub-wrapper {
		width: 100%;
	}
	#head .l-gmenu-cta-container {
		padding: 0;
		flex-wrap: wrap;
		gap: 0;
	}
	#head .l-gmenu-cta-container li.s-download .p-btn-def,
	#head .l-gmenu-cta-container li.s-contact .p-btn-def {
		padding: 0.5em 3em;
		width: auto;
		font-size: 1rem;
		height: auto;
	}
	#head .l-gmenu-cta-container li.s-banner .p-btn-def > img {
		width: 14rem;
	}
	#head .l-header-wapper {
		min-width: 100%;
	}	
}


@keyframes scroll-down { from { transform: translateY(-100px); opacity: 0; } to { transform: translateY(0px); opacity: 1; }  }
body.is-hero-scroll .l-header-logo {
	position: sticky;
	z-index: 9;
	top: 0;
	left: 0;
	width: 100%;
	background-color: #FFF;
	height: 4rem;
	display: flex;
	justify-content: space-between;
	box-shadow: 0px 0px 7px 0px rgb(0 0 0 / 16%);
	animation: 0.5s linear 0s scroll-down;
}
body.is-hero-scroll .l-header-logo .l-header-logo-container .p-image img,
body.is-hero-scroll .l-header-logo .l-header-complogo-container .p-image img {
	width: 200px;
	height: 100%;
	object-fit: contain;
	object-position: left center;
}
body.is-hero-scroll .l-header-logo .p-title {
	width: 55vw;
	height: 100%;
	padding: 0.7rem;
	top: auto;
	left: auto;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}
body.is-hero-scroll .l-header-logo .p-title .p-image {
	display: block;
	width: 100%;
	height: 100%;
}
body.is-hero-scroll .l-header-logo .p-company-logo {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	width: 40vw;
	padding: 1vw;
	top: auto;
	right: auto;
	justify-content: flex-end;
}
body.is-hero-scroll .l-header-container .p-title .p-image {
	height: 100%;
	padding: .5rem;
}
body.is-hero-scroll .l-gmenu-cta-container > li {
	width: fit-content;
	margin: 0;
	padding: 10px 0 0 0px;
}
body.is-hero-scroll .page-wrapper {
	margin-bottom: 10rem;
}
@media only screen and (max-width:1200px) {
	body .l-header-logo {
		position: sticky;
		z-index: 9;
		top: 0;
		left: 0;
		width: 100%;
		background-color: #FFF;
		height: 4rem;
		display: flex;
		justify-content: space-between;
		box-shadow: 0px 0px 7px 0px rgb(0 0 0 / 16%);
		animation: 0.5s linear 0s scroll-down;
	}
	body .l-header-logo .l-header-logo-container .p-image img,
	body .l-header-logo .l-header-complogo-container .p-image img {
		width: 200px;
		height: 100%;
		object-fit: contain;
		object-position: left center;
	}
	body .l-header-logo .p-title {
		width: 55vw;
		height: 100%;
		padding: 0.7rem;
		top: auto;
		left: auto;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	body .l-header-logo .p-title .p-image {
		display: block;
		width: 100%;
		height: 100%;
	}
	body .l-header-logo .p-company-logo {
		position: relative;
		display: flex;
		align-items: center;
		height: 100%;
		width: 40vw;
		padding: 1vw;
		top: auto;
		right: auto;
		justify-content: flex-end;
	}
	body .l-header-container .p-title .p-image {
		height: 100%;
		padding: .5rem;
	}
	body .l-gmenu-cta-container > li {
		width: fit-content;
		margin: 0;
		padding: 10px 0 0 0px;
	}
	body .page-wrapper {
		margin-bottom: 10rem;
	}
	.l-gmenu-cta-container li.s-img > .p-btn-def > img {
		width: 30vw;
	}
	.l-gmenu-cta-container li.s-img-page > .p-btn-def > img,
	.l-gmenu-cta-container li.s-img.s-img-page > .p-btn-def > img,
	#head.is-hero-scroll .l-gmenu-cta-container li.s-img-page .p-btn-def > img {
		width: 30vw;
	}
}

main {
	position: relative;
	overflow: hidden;
}
.main-bg {
	position: absolute;
	top: 0;
	width: 100vw;
	height: 2587vw;
	background-color: var(--color01-bg);
}
.l-section-bg {

}
.l-section-message {
	max-width: 1000px;
	line-height: 2;
	letter-spacing: .1rem;
	color: var(--base-text_dark);
	margin-top: var(--size-xs);
	font-weight: 400;
}

@media only screen and (max-width:767px) {
	.p-row-container {
		flex-direction: column;
	}
}


/* .block__conversion */
.block__conversion .l-section-container {
    padding: 2rem 0;
}
.block__conversion .btn-block > div {
	width: 90%;
	padding: 0 calc(var(--size-xs) / 2);
}
.block__conversion .btn-block > div > .p-btn-container > .p-btn {
	padding: 1.5rem 3rem;
	font-size: 1.5rem;
	display: block;
	text-align: center;
	font-weight: 900;
	border-radius: 4.5rem;
	position: relative;
}
.block__conversion .btn-block > div:nth-child(1) .p-btn::before {
	position: absolute;
	left: 2.5rem;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	background: url(https://files.cmssv.awsv.jp/_build_/template/pages/koyou/assets/conversion_dl_icon.png) no-repeat;
	background-position: center;
	background-size: contain;
    width: 40px;
    height: 30px;
}
.block__conversion .btn-block > div:nth-child(2) .p-btn::before {
	position: absolute;
	left: 2.5rem;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	background: url(https://files.cmssv.awsv.jp/_build_/template/pages/koyou/assets/conversion_contact_icon.png) no-repeat;
	background-position: center;
	background-size: contain;
    width: 35px;
    height: 30px;
}
@media only screen and (max-width: 1200px) {
	.block__conversion .btn-block {
		flex-direction: column;
		align-items: center;
	}
	.block__conversion .btn-block > div {
		width: 100%;
		padding: calc(var(--size-xs) / 2) 0;
	}
	.block__conversion .btn-block > div > .p-btn-container > .p-btn {
		font-size: 1.4rem;
	}
	.block__conversion .btn-block > div:nth-child(1) .p-btn::before {
		width: 30px;
		height: 25px;
	}
	.block__conversion .btn-block > div:nth-child(2) .p-btn::before {
		width: 27px;
		height: 25px;
	}
}
/* .block__banner_list logo */
.block__banner_list .l-content-wrapper {
	padding: 2rem;
	background-color: #FFF;
	border-radius: 1rem;
}
.block__banner_list .l-section-container > .l-content-wrapper > ul {
	justify-content: space-around;
}
.block__banner_list .p-image-container .image {
	max-height: 70px;
	background-size: contain;
	border-radius: 0;
}
@media only screen and (max-width: 830px) {
	.block__banner_list .l-content-wrapper {
		padding: var(--size-sm);
	}
	.block__banner_list .l-section-container > .l-content-wrapper > ul > li {
		width: calc(100% / 3 - 2% - 1rem);
		max-width: calc(100% / 3 - 2% - 1rem);
	}
	.block__banner_list .p-image-container .image {
		max-height: 50px;
	}
}

/* .block__3point */
.p-table table {
	max-width: 100%;
	width: 100%;
	border: 0;
	border-radius: 1rem;
	overflow: hidden;
	margin: 0 0 1rem 0;
}
.p-table th {
	background-color: #128acc;
	color: #FFF;
	text-align: center;
	padding: 1rem;
	border: 0;
	border-right: 1px solid #FFF;
	border-top: 1px solid #FFF;
}
.p-table td {
	background-color: #FFF;
	color: var(--box-def-text);
	text-align: center;
	padding: 1rem;
	border: 0;
	border-right: 1px solid #e4e4e4;
	border-top: 1px solid #e4e4e4;
}
.p-table th:nth-last-child(1){ border-right: 0; }
.p-table td:nth-last-child(1){ border-right: 0; }
.p-table .p-note {
	background-color: unset;
	font-size: 0.8rem;
	text-align: left;
}

.block__cases_list .l-col-image-wrapper {
	position: relative;
	border-top-left-radius: 15px;
	border-bottom-left-radius: 15px;
	overflow: hidden;
}
.block__cases_list .p-figure {
	height: 100%;
}
.block__cases_list .p-logo-image {
	position: absolute;
	z-index: 9;
	width: 50%;
	top: 0;
	left: 0;
}
.block__cases_list > .l-section-container .l-col-image-wrapper {
	flex: 0 0 30%;
}
.block__cases_list > .l-section-container .l-col-image-wrapper.wid-35 { flex: 0 0 35%; }
.block__cases_list > .l-section-container .l-col-image-wrapper.wid-40 { flex: 0 0 40%; }
.block__cases_list > .l-section-container .l-col-image-wrapper.wid-45 { flex: 0 0 45%; }
.block__cases_list > .l-section-container .l-col-image-wrapper.wid-50 { flex: 0 0 50%; }
.block__cases_list > .l-section-container .l-col-image-wrapper.wid-55 { flex: 0 0 55%; }
.block__cases_list > .l-section-container .l-col-image-wrapper.wid-60 { flex: 0 0 60%; }
.block__cases_list > .l-section-container .l-col-image-wrapper.wid-65 { flex: 0 0 65%; }
.block__cases_list > .l-section-container .l-col-text-wrapper {
	text-align: left;
	border-top-right-radius: 15px;
	border-bottom-right-radius: 15px;
	overflow: hidden;
}
.block__cases_list > .l-section-container .l-col-text-wrapper .p-tag-list {
	margin-bottom: 0;
}
.block__cases_list > .l-section-container .l-col-text-wrapper .p-tag-list > li {
	width: auto;
	background-color: #fedf5e;
	color: #118acb;
	font-weight: 700;
}
.block__cases_list > .l-section-container .l-col-text-wrapper h3.p-title {
	font-weight: 900;
}
.block__cases_list > .l-section-container .l-col-text-wrapper .p-body {
	margin-bottom: 1rem;
}
.block__cases_list .v-point-container {
	display: flex;
}
.block__cases_list .p-ollist {
	margin-bottom: 1rem;
}
.block__cases_list .p-ollist li {
	font-size: 1.4rem;
}
.block__cases_list .p-ollist li span {
	display: inline;
	background: linear-gradient(transparent 70%, #f0e07d 30%)
}
.block__cases_list .p-ollist li::marker {
	font-size: 1.6rem;
}
.block__cases_list > .l-section-container .l-col-text-wrapper .p-subtitle {
	/* background: linear-gradient(transparent 80%, #f0e07d 20%); */
	display: inline-block;
	margin-bottom: 0.5rem;
}
.block__cases_list > .l-section-container  .v-point-container h3.p-title {
	background-color: #118acb;
	border-radius: 10px;
	color: #FFF;
	font-size: 0.9rem;
	padding: 10px;
	display: flex;
	justify-content: center;
	margin: 1rem 1rem 0 0;
	flex: 0 0 auto;
	width: 150px;
	text-align: center;
}
.block__cases_list > .l-section-container  .v-point-container .p-body {
	font-size: 0.9rem;
	margin: 1rem 1rem 0 0;
	display: flex;
	align-items: center;
}
.block__cases_list > .l-section-container .p-item-container {
	position: relative;
	overflow: inherit;
	margin-bottom: 3rem;
}
.block__cases_list > .l-section-container .p-item-container .p-icon {
	position: absolute;
	width: 80px;
	top: -30px;
	left: -30px;
}
.block__cases_list .l-section-container {
	padding-bottom: 3rem;
}
.block__cases_list .l-section-container .p-btn-def {
	background: #118ACB;
	color: var(--em-def-text);
	border-color: #118ACB;
	border-radius: 4.5rem;
	padding: .6rem 3rem .6rem 3rem;
	font-weight: 700;
}
@media only screen and (max-width:767px) {
	.block__cases_list > .l-section-container .p-item-container {
		flex-direction: column;
	}
	.block__cases_list .p-figure {
    height: 100%;
    border-top-right-radius: 15px;
    border-top-left-radius: 15px;
    border-bottom-left-radius: 0;
	}
	.block__cases_list > .l-section-container .l-col-text-wrapper {
    border-top-right-radius: 0;
    border-bottom-right-radius: 15px;
    border-bottom-left-radius: 15px;
	}
}


.p-ollist li {
	text-align: left;
	color: #118acb;
	font-weight: 900;
	padding: 0 0 0 10px;
}
.p-ollist li > span {
	color: #000;
	font-weight: 400;
}

.block__conversion .btn-block {
	width: 100%;
}
.block__conversion .p-item-container {
	display: flex;
	width: 100%;
	max-width: 1200px;
}
.block__conversion .p-item-container .l-col-text-wrapper {
	text-align: center;
	flex: 1 1 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
.block__conversion .p-item-container .l-col-text-wrapper > .p-title {
	color: #118acb;
	font-size: 2rem;
	line-height: 1.4;
	text-align: center;
	margin: 0 0 2.5rem;
}
.block__conversion .p-item-container .l-col-text-wrapper > p {
	font-size: 1.1rem;
	font-weight: 700;
	margin-bottom: 1rem;
}
.block__conversion .btn-block > div:nth-child(1) .p-btn::before {
	left: 1.5rem;
}
.block__conversion .p-item-container .p-btn-def {
	background: #118ACB;
	color: var(--em-def-text);
	border-color: #118ACB;
	border-radius: 4.5rem;
	padding: .6rem 5rem .6rem 7rem;
	font-weight: 700;
	font-size: 1.2rem;
}
.block__conversion .l-section-container {
}
@media only screen and (max-width: 830px) {
	.block__conversion .btn-block > div {
    width: 100%;
    padding: calc(var(--size-xs) / 2) 0;
    flex-direction: column-reverse;
	}
	.block__conversion .p-item-container .l-col-text-wrapper > .p-title {
		margin: 2.5rem 0;
	}
}

.block__flow .l-content-wrapper {
	background-color: #FFF;
	border-radius: 15px;
	padding: 2rem;
}
.block__flow .flow-list > li .p-block-container {
	background-color: unset;
}
.block__flow .p-title-container  {
	width: 100%;
}
.block__flow h3 {
	background-color: #118acb;
	color: #FFF;
	width: 100%;
	padding: .3rem;
	border-radius: 10px;
	margin-bottom: 1rem;
}
.block__flow .flow-list > li:not(:last-child)::after, .block__flow .flow-list.lastarrow > li:last-child::after {
	border-color: transparent transparent transparent #FEDF5D;
}

.p-ullist {
	padding: 0 3px 0 15px;
}
.p-ullist > li {
	text-align: left;
	font-size: 0.9rem;
}
.p-ullist > li::marker {
	content: "●";
	font-size: 11px;
	line-height: 1rem;
	color: #118acb;
}
.p-ullist > li > span {
	margin-left: 4px;
}

.block__faq .p-faq {
	border-radius: 15px;
}
.block__faq .p-faq__question {
	color: #118acb;
	background-color: #fedf5e;
}
.block__faq .p-faq__q-mark {
	background-color: #118acb;
	color: #FFF;
	font-size: 25px;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	display: flex;
	border-radius: 40px;
}
.block__faq .p-faq__answer {
	background-color: #FFF;
}
.block__faq .p-faq__a-mark {
	background-color: #fedf5e;
	color: #118acb;
	font-size: 25px;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 40px;
	display: flex;
	border-radius: 40px;
}


.p-required {
	background-color: #e66879;
}

#page-top {
	background: unset;
	padding: 0;
	border-radius: 50px;
	opacity: .9;
	box-sizing: border-box;
}
#page-top img {
	width: 100%;
	height: auto;
}
@media only screen and (max-width:767px) {
	#page-top {
    right: 10px;
    bottom: 90px;
	}
}
@media only screen and (max-width:767px) {
		.block__flow .flow-list > li:not(:last-child)::after, .block__flow .flow-list.lastarrow > li:last-child::after {
		display: none;
	}
}


#app > footer {
	background-color: var(--footer-bg);
	padding: 1rem;
}
#app > footer #footer {
	background-color: var(--footer-bg);
	display: flex;
	max-width: 1200px;
	margin: auto;
	justify-content: space-between;
	flex-wrap: wrap;
}
#app > footer #footer .info figure img {
	max-width: 100%;
	width: auto;
}
#footer .p-copyright-container {
	width: 100%;
}
#footer .fBox {
	padding: 0;
	align-items: center;
	display: flex;
	justify-content: flex-end;
	max-width: 50%;
	margin: 0;
}
#footer .fNavi {
	width: 100%;
	list-style: none;
	max-width: none;
	font-size: 0.9rem;
	border-left: 1px solid #000;
}
#footer .fNavi.level01 > li {
	border-right: 1px solid #000;
	padding: 0 1.5rem;
}
@media only screen and (max-width:767px) {
	#app > footer {
		display: none;
	}
}


.block__blog_list.layout02 .l-content-container {
	max-width: 1200px;
	margin: var(--size-md) auto 0;
	flex-direction: row;
	position: relative;
	padding: 2rem;
	background-color: #FFF;
	border-radius: 1rem;
}
.block__blog_list.layout02 .l-scroll-container {
	position: relative;
	z-index: 2;
	overflow-y: scroll;
	overflow-x: hidden;
}
.block__blog_list.layout02 .l-col-three__item {
	display: flex;
    flex: 0 0 auto;
	width: 100%;
	opacity: 1;
	padding: var(--size-xs) 1rem;
	border-top: 1px solid #eee;
}
.block__blog_list.layout02 .l-col-three__item:first-child {
	border-top: 0;
}
@media(hover:hover) {
	.block__blog_list.layout02 .l-col-three__item .l-col-container:hover::before {
    opacity: 1;
		cursor: pointer;
  }
}
.block__blog_list.layout02 .l-col-three__item figure {
    display: none;
}
.block__blog_list.layout02 .l-body-container {
	flex-grow: 1;
	padding: 0;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
}
.block__blog_list.layout02 .l-category-wapper {
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
}
.block__blog_list.layout02 .p-category {
    font-size: .9rem;
    background-color: #118acb;
    padding: 1px 12px;
}
.block__blog_list.layout02 .l-category-wapper a {
	color: #FFF;
}
.block__blog_list.layout02 .date {
    font-size: var(--fsize-md);
	width: 150px;
	text-align: center;
}
.block__blog_list.layout02 .l-body-container h3 {
    margin-top: 0;
    font-weight: 400;
	padding-left: 1rem;
	font-size: 16px;
	line-height: 2;
}
.block__blog_list.layout02 .l-tag-wapper {
    display: none;
}
.block__blog_list.layout02 .l-body-container > p {
    display: none;
}
@media (max-width: 830px) {
	.block__blog_list.layout02 .l-category-wapper {
		justify-content: flex-end;
	}
	.block__blog_list.layout02 .l-content-container {
		padding: 3rem;
	}
	.block__blog_list.layout02 .l-scroll-container {
		height: calc(238px + 3rem);
	}
    .block__blog_list.layout02 .l-body-container {
        flex-direction: column;
    }
	.block__blog_list.layout02 .date {
		font-size: 16px;
		text-align: left;
		width: auto;
    padding-right: 1rem;
	}
}

