@charset "utf-8";

html {
	font-size: 10px;
}

body {
	margin: 0px;
	padding: 0px;
	color: #333333;
	font-size: 1.6rem;
	line-height: 1.8;
	letter-spacing: .07em;
	font-feature-settings: "palt";
	text-align: left;
	background-color: #fff;
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	/*font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, "メイリオ", "Meiryo", sans-serif;*/
	-webkit-text-size-adjust: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

@media screen\0 {
	body {
		letter-spacing: normal;
		font-family: "YakuHanJP", 'Noto Sans JP', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	}
}

@media print {
	body {
		zoom: 0.68;
		-webkit-print-color-adjust: exact;
	}
}

/* IE10以上 */
@media print and (-ms-high-contrast: none) {

	/* @pageの指定いらないかも */
	@page {
		size: A4;
		margin: 12.7mm 9.7mm;
	}

	body {
		zoom: 1.8;
		width: 1200px;
		transform: scale(0.5);
		transform-origin: 0 0;
	}
}

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
button,
textarea,
select,
p,
blockquote,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
	margin: 0px;
	padding: 0px;
	text-align: left;
}

main {
	display: block;
}

table {
	font-size: inherit;
	/* モダンブラウザ向け */
	font: 100%;
	/* Win IE 5-5.5､6(後方互換モード)向け */
}

fieldset,
img {
	border: 0;
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-style: normal;
	font-weight: normal;
}

ol,
ul {
	list-style: none;
}

caption,
th {
	text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
	letter-spacing: .07em;
}

p {
	letter-spacing: .07em;
}

q:before,
q:after {
	content: '';
}

abbr,
acronym {
	border: 0;
}

input,
button {
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

input[type="radio"],
input[type="checkbox"],
label,
button,
input[type="submit"] {
	cursor: pointer;
}

input[type="submit"] {
	cursor: pointer;
}

input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="password"],
input[type="date"],
input[type="number"] {
	height: 50px;
	padding: .5rem 2rem;
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	background: #f6f6f6;
	border: 1px solid #dddddd;
	box-sizing: border-box;
	border-radius: 6px;
	-webkit-text-size-adjust: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

select {
	height: 50px;
	padding: .5rem 1rem;
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	background: #f6f6f6;
	border: 1px solid #dddddd;
	box-sizing: border-box;
	border-radius: 6px;
}

textarea {
	height: 80px;
	padding: 1rem 2rem;
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 1.6rem;
	font-weight: bold;
	background: #f6f6f6;
	border: 1px solid #dddddd;
	box-sizing: border-box;
	border-radius: 6px;
	vertical-align: top;
}

/* Webkit */
::-webkit-input-placeholder {
	color: #b8b8b8;
	opacity: 1;
}

/* Firefox 18 以前 */
:-moz-placeholder {
	color: #b8b8b8;
}

/* Firefox 19 以降 */
::-moz-placeholder {
	color: #b8b8b8;

	/* Firefox 19 以降のデフォルトでは */
	/* color ではなく opacity で色合いを調整しているため */
	/* 文字色を指定する場合、opacity を 1 にする必要がある */
	opacity: 1;
}

/* IE 10 以降 */
:-ms-input-placeholder {
	color: #b8b8b8 !important;
}

/* CSS4では以下のような名前の擬似クラスになるらしい */
/* おそらく今のところ対応ブラウザはない */
:placeholder-shown {
	color: #b8b8b8;
}

/* Android chrome対策 */
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
button,
textarea,
select,
p,
blockquote,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary {
	max-height: 999999px;
}

.clear {
	clear: both;
}

.clearfix {
	zoom: 100%;
}

.clearfix:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}

a {
	text-decoration: none;
}

a:link {
	color: #333333;
}

a:visited {
	color: #333333;
}

a.normal:link {
	color: #333333;
}

a.normal:visited {
	color: #333333;
}

a:hover {
	text-decoration: none;
}

a:active {}

a.noline {
	text-decoration: none;
}

a.reverse {
	text-decoration: none;
}

a.reverse:hover {
	text-decoration: underline;
}

.linkBox {
	cursor: pointer;
}

body {
	text-align: center;
}

img {
	max-width: 100%;
	width: auto;
	height: auto;
	vertical-align: middle;
	-webkit-backface-visibility: hidden;
}

a {
	/* FireFox リンク選択時の点線を消す　*/
	overflow: hidden;
	outline: none;
}

.ov {
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.ov:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
	/* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";
	/* ie 8 */
	-moz-opacity: 0.7;
	/* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;
	/* Safari 1.x */
}

.ovImg:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	/* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";
	/* ie 8 */
	-moz-opacity: 0.7;
	/* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;
	/* Safari 1.x */
}

.nowrap {
	white-space: nowrap;
}

.mincho {
	font-family: "YakuHanMP", YuMincho, '游明朝', 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho ProN', 'メイリオ', "HGS明朝E", 'MS P 明朝', 'MS PMincho', serif;
}

@media screen\0 {
	.mincho {
		font-family: "YakuHanMP", 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho ProN', 'メイリオ', "HGS明朝E", 'MS P 明朝', 'MS PMincho', serif;
	}
}

.gothic {
	font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

@media screen\0 {
	.gothic {
		font-family: "YakuHanJP", 'Noto Sans JP', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	}
}

.Lato {
	font-family: "YakuHanJP", 'Lato', sans-serif;
}

.Oswald {
	font-family: "YakuHanJP", 'Oswald', sans-serif;
}

* {
	box-sizing: border-box;
}


@media screen and (max-width:1679px) {

	html {
		font-size: 0.595vw;
	}
}


@media screen and (max-width:1199px) {

	html {
		font-size: 0.833333333333333vw;
		/*font-size: 10px;*/
	}
}

@media screen and (max-width:767px) {

	html {
		font-size: 1.333333333333333vw;
		/*font-size: 10px;*/
	}

	input[type="text"],
	input[type="search"],
	input[type="tel"],
	input[type="url"],
	input[type="email"],
	input[type="password"],
	input[type="date"],
	input[type="number"] {
		height: 44px;
		padding: 5px 10px;
		font-size: 1.6rem;
		border: 2px solid #dddddd;
	}

	select {
		height: 44px;
		padding: 5px 10px;
		font-size: 1.6rem;
		border: 2px solid #dddddd;
	}

	textarea {
		height: 34.6666666vw;
		padding: 5px 10px;
		font-size: 1.6rem;
		border: 2px solid #dddddd;
	}
}

/**********************************

 general

***********************************/
.imgMax {
	max-width: none;
	width: 100%;
}

.floatL {
	float: left;
}

.floatR {
	float: right;
}

.alignC {
	text-align: center;
}

.alignR {
	text-align: right;
}

.alignL {
	text-align: left;
}

.veralignT {
	vertical-align: top;
}

.veralignM {
	vertical-align: middle;
}

.veralignB {
	vertical-align: bottom;
}

.indent {
	text-indent: -1em;
	padding-left: 1em;
}

.bold {
	font-weight: bold;
}

.white {
	color: #fff;
}

.red {
	color: #ff3f00;
}

.orange {
	color: #ff6c00;
}

.blue {
	color: #1184df;
}

.yellow {
	color: #ffff00;
}

.bgYellow {
	background-color: #fff100;
}

.marker {
	background: linear-gradient(transparent 70%, #ffe103 70%);
}

@media screen\0 {
	.marker {
		font-family: "YakuHanJP", Lato, メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}
}

.underline {
	text-decoration: underline;
}

@media screen and (min-width:1200px) {
	.sp {
		display: none !important;
	}
}

@media screen and (max-width:1199px) {
	.pc {
		display: none !important;
	}
}

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

}

/**********************************

 parts

***********************************/
.define_wrap {
	padding: 0 5rem;
}

.define_inner {
	max-width: 100%;
	width: 1200px;
	margin: 0 auto;
}


@media screen and (max-width:1099px) {

	.define_wrap {
		padding: 0 4.545454545454545%;
	}
}


@media screen and (max-width:767px) {

	.define_wrap {
		padding: 0 4.66666667%;
	}
}

/**********************************

 layout

***********************************/
.l-wrap {
	display: flex;
	justify-content: space-between;
	padding-top: 100px;
	overflow: hidden;
}

.l-wrap.thanks {
	display: block;
}

.l-contents {
	/*flex: 1;*/
	width: calc(100% - 38rem);
	position: relative;
	z-index: 12;
}

.l-main {
	overflow: hidden;
}

.l-pageTop {
	display: none;
	width: 6.2rem;
	position: fixed;
	bottom: 4rem;
	right: calc(38rem + 4rem);
	z-index: 5;
}

.l-wrap.thanks .l-pageTop {
	right: 4rem;
}

@media screen and (min-width:1200px) {
	.l-cover {
		display: none !important;
	}
}

@media screen and (max-width:1199px) {

	body {
		height: auto !important;
	}

	body.is-fixed {
		position: fixed;
		width: 100%;
		/*height: 100%;*/
	}

	.l-wrap {
		padding-top: 0;
		position: relative;
		overflow: hidden;
	}

	.l-wrap.is-noneActive .l-main,
	.l-wrap.is-noneActive .l-footer {
		pointer-events: none;
	}

	.l-cover {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		background-color: #fff;
		pointer-events: none;
		opacity: 0;
		transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.l-cover.is-active {
		opacity: 1;
		pointer-events: auto;
	}
}

@media screen and (max-width:1023px) {}

@media screen and (max-width:767px) {
	.l-wrap {
		display: block;
		padding-bottom: 40px;
	}

	.l-contents {
		width: 100%;
	}

	.l-pageTop {
		width: 6.2rem;
		bottom: calc(40px + 3rem);
		right: 3rem;
	}

	.l-wrap.thanks .l-pageTop {
		bottom: 3rem;
		right: 3rem;
	}
}

/**********************************

 l-humberger

***********************************/

@media screen and (max-width:1199px) {

	.l-humberger {
		width: 55px;
		height: 55px;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 25;
	}

	.l-humberger a {
		display: block;
		width: 55px;
		height: 55px;
		background-color: #fff;
		overflow: visible;
		transition: background 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.l-humberger a.is-active {
		/*background-color: #000;*/
	}

	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}

	.menu-trigger {
		position: relative;
		width: 22px;
		height: 28px;
	}

	.menu-trigger span {
		position: absolute;
		left: 15px;
		width: 100%;
		height: 2px;
		background-color: #000000;
	}

	.menu-trigger.is-active span {
		/*background-color: #fff;*/
	}

	.menu-trigger span:nth-of-type(1) {
		width: 25px;
		top: 17px;
	}

	.menu-trigger span:nth-of-type(2) {
		width: 14px;
		top: 27px;
	}

	.menu-trigger span:nth-of-type(3) {
		width: 20px;
		bottom: 16px;
	}

	.menu-trigger.is-active span:nth-of-type(1) {
		width: 25px;
		-webkit-transform: translateY(10px) rotate(-45deg);
		transform: translateY(10px) rotate(-45deg);
	}

	.menu-trigger.is-active span:nth-of-type(2) {
		opacity: 0;
	}

	.menu-trigger.is-active span:nth-of-type(3) {
		width: 25px;
		-webkit-transform: translateY(-10px) rotate(45deg);
		transform: translateY(-10px) rotate(45deg);
	}
}


/**********************************

 l-drawerMenu

***********************************/

@media screen and (max-width:1199px) {

	.l-drawerMenu {
		display: block;
		width: 100%;
		height: 100vh;
		padding: 0 4.666666666666667%;
		/*background-color: rgba(0,0,0,.9);*/
		opacity: 0;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		/*transform: translateX(105%);*/
		/*-webkit-transform: translateX(105%);*/
		pointer-events: none;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.l-drawerMenu.is-active {
		opacity: 1;
		pointer-events: auto;
		/*transform: none;*/
		/*-webkit-transform: none;*/
	}

	.l-drawerMenu__inner {
		padding-top: 105px;
		padding-bottom: 25px;
	}

	.l-drawerMenu__inner ul {
		margin-bottom: 35px;
		font-size: 21px;
		font-weight: bold;
	}

	.l-drawerMenu__inner ul li {
		margin-bottom: 25px;
		text-align: center;
	}

	.l-drawerMenu__inner ul li:last-child {
		margin-bottom: 0;
	}

	.l-drawerMenu__inner ul li a {
		color: #e99211;
	}

	.l-drawerMenu__inner .contact {
		width: 250px;
		max-width: 100%;
		margin: 0 auto 25px;
		font-size: 16px;
		font-weight: bold;
	}

	.l-drawerMenu__inner .contact a {
		display: block;
		padding: 10px 5px;
		color: #fff;
		text-align: center;
		background-color: #09955a;
		border-radius: 100px;
	}

	.l-drawerMenu__inner .contact a span {
		padding-left: 24px;
		position: relative;
		z-index: 1;
	}

	.l-drawerMenu__inner .contact a span:before {
		content: "";
		display: block;
		width: 18px;
		height: 12px;
		background: url(../images/icon_mail01.png) no-repeat center / contain;
		position: absolute;
		top: 50%;
		left: 0;
		z-index: 1;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}

	.l-drawerMenu__inner .login {
		width: 250px;
		max-width: 100%;
		margin: 0 auto 25px;
		font-size: 16px;
		font-weight: bold;
	}

	.l-drawerMenu__inner .login a {
		display: block;
		padding: 8px 5px;
		color: #ff7f00;
		text-align: center;
		border: 2px solid #ff7f00;
		border-radius: 100px;
	}

	.l-drawerMenu__inner .login a span {
		padding-left: 24px;
		position: relative;
		z-index: 1;
	}

	.l-drawerMenu__inner .login a span:before {
		content: "";
		display: block;
		width: 18px;
		height: 18px;
		background: url(../images/icon_login01.png) no-repeat center / contain;
		position: absolute;
		top: 50%;
		left: 0;
		z-index: 1;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}

	.l-drawerMenu__inner .tel {
		width: 250px;
		max-width: 100%;
		margin: 0 auto;
	}

	.l-drawerMenu__inner .tel a {
		display: block;
		padding: 15px 15px;
		border: 2px solid #dddddd;
		border-radius: 10px;
		text-align: center;
	}

	.l-drawerMenu__inner .tel a .num {
		margin-top: -.215em;
		margin-bottom: 8px;
		font-size: 25px;
		font-weight: 900;
		letter-spacing: .03em;
		line-height: 1;
		text-align: center;
		white-space: nowrap;
	}

	.l-drawerMenu__inner .tel .num span {
		padding-left: 19px;
		position: relative;
		z-index: 1;
	}

	.l-drawerMenu__inner .tel .num span:before {
		content: "";
		display: block;
		width: 16px;
		height: 16px;
		background: url(../images/icon_tel01.png) no-repeat center / contain;
		position: absolute;
		top: 50%;
		left: 0;
		z-index: 1;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}

	.l-drawerMenu__inner .tel .time {
		font-size: 9px;
		text-align: center;
	}

	.l-drawerMenu__inner .tel .time .block {
		display: inline-block;
		padding: 1px 8px;
		vertical-align: top;
		background-color: #f5f5f5;
		border-radius: 3px;
	}
}




/**********************************

 l-header

***********************************/
.l-header__flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.l-header {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: calc(100% - 38rem);
	height: 100px;
	padding: 0rem 5rem 0rem;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
}
.head-title h1{
}

.nav{
	
}
.l-wrap.thanks .l-header {
	width: 100%;
}
.l-header__h1 {
	font-size: 1.2rem;
	line-height: 1;
}
.l-header__logo {
	width: 25.2rem;
}

.l-header__logo a,
.l-header__logo img {
	display: block;
}

.l-header__right {
	display: flex;
	align-items: center;
}

.l-header__right-navi {
	display: flex;
	align-items: center;
	margin-right: 3rem;
	font-size: 1.6rem;
	font-weight: bold;
}

.l-header__right-navi li {
	margin-right: 2.5rem;
}

.l-header__right-navi li:last-child {
	margin-right: 0;
}

.l-header__right-tel {
	margin-right: 3rem;
}

.l-header__right-tel .num {
	padding-bottom: .5rem;
	font-size: 2.8rem;
	font-weight: 900;
	letter-spacing: .03em;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	border-bottom: 1px solid #dddddd;
}

.l-header__right-tel .num a {
	padding-left: 2.6rem;
	position: relative;
	z-index: 1;
}

.l-header__right-tel .num a:before {
	content: "";
	display: block;
	width: 1.9rem;
	height: 1.9rem;
	background: url(../images/icon_tel01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.l-header__right-tel .time {
	padding-top: .3rem;
	font-size: 1.1rem;
	text-align: center;
}

.l-header__right-login {
	font-size: 1.8rem;
	font-weight: bold;
}

.l-header__right-login a {
	padding: 1.1rem 2rem;
	color: #ff7f00;
	border: 2px solid #ff7f00;
	border-radius: 100px;
}

.l-header__right-login a span {
	padding-left: 3.4rem;
	position: relative;
	z-index: 1;
}

.l-header__right-login a span:before {
	content: "";
	display: block;
	width: 2.6rem;
	height: 2.6rem;
	background: url(../images/icon_login01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

@media screen and (max-width:1199px) {
	.l-header {
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 100%;
		height: 70px;
		padding: 0rem  4.666666666666667% 0;
		position: static;
	}
	.l-header__h1 {
		line-height: 2;
	}
	.l-header__logo {
		width: 151px;
	}

	.l-header__right {
		display: none;
	}
}

@media screen and (max-width:767px) {}

/**********************************

 l-fixed-contents

***********************************/
.l-fixed-contents {
	display: flex;
	width: 100%;
	height: 40px;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 10;
}

.l-fixed-contents .contact {
	width: 50%;
	font-size: 13px;
	font-weight: bold;
}

.l-fixed-contents .contact a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 40px;
	color: #fff;
	background: #0a965b;
}

.l-fixed-contents .contact a span {
	padding-left: 22px;
	position: relative;
	z-index: 1;
}

.l-fixed-contents .contact a span:before {
	content: "";
	display: block;
	width: 16px;
	height: 11px;
	background: url(../images/icon_mail01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.l-fixed-contents .login {
	width: 50%;
	font-size: 13px;
	font-weight: bold;
}

.l-fixed-contents .login a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 40px;
	color: #ff7f00;
	background: #fff;
}

.l-fixed-contents .login a span {
	padding-left: 23px;
	position: relative;
	z-index: 1;
}

.l-fixed-contents .login a span:before {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background: url(../images/icon_login01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

/**********************************

 l-footer

***********************************/
.l-footer {}

.l-footer__inner {
	padding: 5rem 0 4rem;
}

.l-footer__inner-logo {
	width: 25.2rem;
	margin: 0 auto 3rem;
	text-align: center;
}

.l-footer__inner-list {
	display: flex;
	justify-content: center;
	margin-bottom: 3rem;
	font-size: 1.4rem;
}

.l-footer__inner-list li {
	margin-right: 3.5rem;
}

.l-footer__inner-list li:last-child {
	margin-right: 0;
}

.l-footer__inner-copy {
	color: #b8b8b8;
	font-size: 1.2rem;
	font-weight: bold;
	text-align: center;
}

@media screen and (max-width:767px) {

	.l-footer__inner {
		padding: 7rem 0 7rem;
	}

	.l-footer__inner-logo {
		width: 30.2rem;
		margin: 0 auto 6rem;
	}

	.l-footer__inner-list {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		margin: 0 -1.75rem -3rem;
		font-size: 2.4rem;
	}

	.l-footer__inner-list li {
		margin: 0 1.75rem 3rem;
	}

	.l-footer__inner-list li:last-child {
		margin-right: 0;
	}

	.l-footer__inner-copy {
		margin-top: 5rem;
		font-size: 1.8rem;
	}
}

/**********************************

 l-side

***********************************/
.l-side {
	width: 38rem;
	height: 100%;
	padding: 2.4rem 1.5625% 0;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 11;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

.l-side__inner {
	padding-bottom: 2.4rem;
}

@media screen and (max-width:1679px) {}

@media screen and (max-width:767px) {

	.l-side {
		display: none;
	}
}

/**********************************

 c-anchor

***********************************/
.c-anchor {
	display: block;
	padding-top: 100px;
	margin-top: -100px;
}

@media screen and (max-width:1199px) {
	.c-anchor {
		padding-top: 0;
		margin-top: 0;
	}
}

/**********************************

 c-title01

***********************************/
.c-title01 {
	margin-top: -.1em;
	margin-left: -.5em;
	margin-right: -.5em;
	margin-bottom: 6rem;
	font-size: 6rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.6;
}

.c-title01:last-child {
	margin-bottom: 0;
}

.c-title01 .small {
	font-size: 4.8rem;
}

.c-title01 .ruby {
	position: relative;
	z-index: 1;
}

.c-title01 .ruby .rt {
	display: block;
	font-size: 1.2rem;
	letter-spacing: normal;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 1;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
}


@media screen and (max-width:1199px) {
	.c-title01 {
		margin-bottom: 6rem;
		font-size: 6rem;
	}

	.c-title01 .ruby .rt {
		margin-top: -.5em;
		font-size: 1.8rem;
	}
}

@media screen and (max-width:767px) {}

/**********************************

 c-subHero

***********************************/
.c-subHero {
	background-color: #e99211;
}

.c-subHero__inner {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 300px;
}

.c-subHero__inner__ttl {
	color: #fff;
	font-size: 3.6rem;
	font-weight: bold;
	letter-spacing: .15em;
	line-height: 1.5;
	text-align: center;
}

@media screen and (max-width:767px) {

	.c-subHero__inner {
		height: 150px;
	}

	.c-subHero__inner__ttl {
		font-size: 18px;
	}
}

/**********************************

 c-btn01

***********************************/
a.c-btn01 {
	display: block;
	width: 100%;
	padding: 2rem 1.5rem;
	color: #fff;
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
	line-height: 1.5;
	border-radius: 100px;
	background: #0a965b;
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}


@media screen and (max-width:767px) {
	a.c-btn01 {
		padding: 2rem 1.5rem;
		font-size: 3.2rem;
	}
}

/**********************************

 c-form

***********************************/
.c-form {}

.c-form:before {}

.c-form__content {
	margin-bottom: .8rem;
}

.c-form__content dl {
	display: block;
	margin-bottom: 1.2rem;
}

.c-form__content dl:last-child {
	margin-bottom: 0;
}

.c-form__content dl dt {
	margin-bottom: 1rem;
}

.c-form__content dl dt .inner {
	display: flex;
	align-items: center;
	width: 100%;
	line-height: 1.5;
}

.c-form__content dl dt .inner .require {
	padding: .1rem .4rem;
	margin-right: .5rem;
	color: #fff;
	font-size: 1rem;
	font-weight: bold;
	letter-spacing: .07em;
	background-color: #c63532;
}

.c-form__content dl dt .inner .any {
	padding: .1rem .4rem;
	margin-right: .5rem;
	color: #fff;
	font-size: 1rem;
	font-weight: bold;
	letter-spacing: .07em;
	background-color: #0a4399;
	visibility: hidden;
}

.c-form__content dl dt .inner .name {
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: .07em;
}

.c-form__content dl dd {
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: .07em;
	vertical-align: middle;
	position: relative;
}

.c-form__content dl dd .name-box {
	display: flex;
	justify-content: space-between;
}

.c-form__content dl dd .name-box__block {
	display: flex;
	align-items: center;
	width: calc(50% - 10px);
}

.c-form__content dl dd .name-box__block p {
	margin-right: .5em;
}

.c-form__content dl dd .name-box__block .entry {
	flex: 1;
}

.c-form__content dl dd .company {
	background: transparent;
}

.c-form__content dl dd .wfull {
	width: 100%;
}

.c-form__content dl dd .list {
	margin: .25em -.5em;
}

.c-form__content dl dd .list li {
	display: inline-block;
	margin: .25em .5em;
}

.c-form__privacy {
	margin-bottom: 1.2rem;
	font-size: 1.2rem;
	font-weight: bold;
}

.c-form__privacy a {
	color: #007fff;
	text-decoration: underline;
}

.c-form__privacy a:hover {
	text-decoration: none;
}

.c-form__submit {
	width: 28.2rem;
	max-width: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}

.c-form__submit button,
.c-form__submit input,
.c-form__confirmBtn__btn .submit {
	display: block;
	width: 100%;
	padding: 1.3rem 2rem;
	color: #fff;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
	line-height: 1.5;
	white-space: nowrap;
	border-radius: 100px;
	background: #0a965b;
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.c-form__submit button span,
.c-form__submit input span,
.c-form__confirmBtn__btn .submit span {
	padding-left: 4rem;
	position: relative;
	z-index: 1;
}

.c-form__submit button span:before,
.c-form__submit input span:before,
.c-form__confirmBtn__btn .submit span:before {
	content: "";
	display: block;
	width: 2.6rem;
	height: 1.8rem;
	background: url(../images/icon_mail01.png) no-repeat center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

/*.c-form__submit button:disabled,*/
/*.c-form__submit input:disabled,*/
/*.c-form__confirmBtn__btn .submit:disabled {*/
/*opacity: 1;*/
/*!* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#666666+0,777777+100 *!*/
/*background: rgb(102,102,102); !* Old browsers *!*/
/*background: -moz-linear-gradient(top,  rgba(102,102,102,1) 0%, rgba(119,119,119,1) 100%); !* FF3.6-15 *!*/
/*background: -webkit-linear-gradient(top,  rgba(102,102,102,1) 0%,rgba(119,119,119,1) 100%); !* Chrome10-25,Safari5.1-6 *!*/
/*background: linear-gradient(to bottom,  rgba(102,102,102,1) 0%,rgba(119,119,119,1) 100%); !* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ *!*/
/*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#666666', endColorstr='#777777',GradientType=0 ); !* IE6-9 *!*/
/*}*/

.c-form__confirmBtn {
	display: flex;
	justify-content: center;
}

.c-form__confirmBtn__btn {
	width: 360px;
}

.c-form__confirmBtn__btn:first-child {
	margin-right: 30px;
}

.c-form__confirmBtn__btn .back {
	display: block;
	width: 100%;
	padding: 20px 15px;
	margin-bottom: 5px;
	color: #fff;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	letter-spacing: .05em;
	line-height: 1.5;
	border-radius: 100px;
	box-shadow: 0px 5px 0px 0px #333333;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#666666+0,777777+100 */
	background: rgb(102, 102, 102);
	/* Old browsers */
	background: -moz-linear-gradient(top, rgba(102, 102, 102, 1) 0%, rgba(119, 119, 119, 1) 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(102, 102, 102, 1) 0%, rgba(119, 119, 119, 1) 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(102, 102, 102, 1) 0%, rgba(119, 119, 119, 1) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#666666', endColorstr='#777777', GradientType=0);
	/* IE6-9 */
	border: none;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

 /* チェックボックスを垂直方向の中央揃え */
input[type="checkbox"],
.c-form__privacy label {
	vertical-align: middle;
}

@media screen and (max-width:767px) {

	.c-form {}

	.c-form:before {}

	.c-form__content {
		margin-bottom: 12px;
	}

	.c-form__content dl {
		display: block;
		margin-bottom: 15px;
	}

	.c-form__content dl:last-child {
		margin-bottom: 0;
	}

	.c-form__content dl dt {
		margin-bottom: 1rem;
	}

	.c-form__content dl dt .inner {
		display: flex;
		align-items: center;
		width: 100%;
		line-height: 1.5;
	}

	.c-form__content dl dt .inner .require {
		padding: 1px 3px;
		margin-right: 5px;
		font-size: 9px;
	}

	.c-form__content dl dt .inner .any {
		padding: 1px 3px;
		margin-right: 5px;
		font-size: 9px;
	}

	.c-form__content dl dt .inner .name {
		font-size: 14px;
	}

	.c-form__content dl dd {
		font-size: 1.6rem;
		font-weight: bold;
		line-height: 1.5;
		letter-spacing: .07em;
		vertical-align: middle;
		position: relative;
	}

	.c-form__content dl dd .name-box {
		display: flex;
		justify-content: space-between;
	}

	.c-form__content dl dd .name-box__block {
		display: flex;
		align-items: center;
		width: calc(50% - 10px);
	}

	.c-form__content dl dd .name-box__block p {
		margin-right: .5em;
	}

	.c-form__content dl dd .name-box__block .entry {
		flex: 1;
	}

	.c-form__content dl dd .company {
		background: transparent;
	}

	.c-form__content dl dd .wfull {
		width: 100%;
	}

	.c-form__content dl dd .list {
		margin: .25em -.5em;
	}

	.c-form__content dl dd .list li {
		display: inline-block;
		margin: .25em .5em;
	}

	.c-form__content dl dd input {
		height: 42px;
		padding: 10px;
		font-size: 14px;
		border: 1px solid #dddddd;
	}

	.c-form__content dl dd textarea {
		height: 70px;
		padding: 10px;
		font-size: 14px;
		border: 1px solid #dddddd;
	}

	.c-form__privacy {
		margin-bottom: 12px;
		font-size: 11px;
	}

	.c-form__submit {
		width: 230px;
	}

	.c-form__submit button,
	.c-form__submit input,
	.c-form__confirmBtn__btn .submit {
		display: block;
		width: 100%;
		padding: 14px 25px;
		color: #fff;
		font-size: 14px;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
		letter-spacing: .05em;
		line-height: 1.5;
		white-space: nowrap;
		border-radius: 100px;
		background: #0a965b;
		border: none;
		outline: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
	}

	.c-form__submit button span,
	.c-form__submit input span,
	.c-form__confirmBtn__btn .submit span {
		padding-left: 22px;
	}

	.c-form__submit button span:before,
	.c-form__submit input span:before,
	.c-form__confirmBtn__btn .submit span:before {
		width: 16px;
		height: 11px;
	}

	/*.c-form__submit button:disabled,*/
	/*.c-form__submit input:disabled,*/
	/*.c-form__confirmBtn__btn .submit:disabled {*/
	/*opacity: 1;*/
	/*!* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#666666+0,777777+100 *!*/
	/*background: rgb(102,102,102); !* Old browsers *!*/
	/*background: -moz-linear-gradient(top,  rgba(102,102,102,1) 0%, rgba(119,119,119,1) 100%); !* FF3.6-15 *!*/
	/*background: -webkit-linear-gradient(top,  rgba(102,102,102,1) 0%,rgba(119,119,119,1) 100%); !* Chrome10-25,Safari5.1-6 *!*/
	/*background: linear-gradient(to bottom,  rgba(102,102,102,1) 0%,rgba(119,119,119,1) 100%); !* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ *!*/
	/*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#666666', endColorstr='#777777',GradientType=0 ); !* IE6-9 *!*/
	/*}*/

	.c-form__confirmBtn {
		display: flex;
		justify-content: center;
	}

	.c-form__confirmBtn__btn {
		width: 360px;
	}

	.c-form__confirmBtn__btn:first-child {
		margin-right: 30px;
	}

	.c-form__confirmBtn__btn .back {
		display: block;
		width: 100%;
		padding: 20px 15px;
		margin-bottom: 5px;
		color: #fff;
		font-size: 26px;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
		letter-spacing: .05em;
		line-height: 1.5;
		border-radius: 100px;
		box-shadow: 0px 5px 0px 0px #333333;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#666666+0,777777+100 */
		background: rgb(102, 102, 102);
		/* Old browsers */
		background: -moz-linear-gradient(top, rgba(102, 102, 102, 1) 0%, rgba(119, 119, 119, 1) 100%);
		/* FF3.6-15 */
		background: -webkit-linear-gradient(top, rgba(102, 102, 102, 1) 0%, rgba(119, 119, 119, 1) 100%);
		/* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to bottom, rgba(102, 102, 102, 1) 0%, rgba(119, 119, 119, 1) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#666666', endColorstr='#777777', GradientType=0);
		/* IE6-9 */
		border: none;
		outline: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
	}
	.l-header {
		height: 55px;
	}
	.l-header__h1 {
		/*line-height: 2;*/
	}
}

@media screen and (max-width:600px) {
	.l-header {
	}
	.l-header__h1 {
	}
}

/**********************************

 c-faq-list

***********************************/
.c-faq-list {}

.c-faq-list dl {
	margin-bottom: 60px;
}

.c-faq-list dl:last-child {
	margin-bottom: 0;
}

.c-faq-list dl dt {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 30px;
}

.c-faq-list dl dt .icon {
	width: 68px;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 68px;
	background-color: #2b536a;
	border-radius: 5px;
}

.c-faq-list dl dt .ttl {
	flex: 1;
	min-height: 68px;
	padding: 14px 29px;
	margin-left: 12px;
	font-size: 25px;
	font-weight: bold;
	line-height: 1.5;
	border: 1px solid #e7e7eb;
	background-color: #fff;
	border-radius: 5px;
}

.c-faq-list dl dd {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.c-faq-list dl dd .icon {
	width: 68px;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	line-height: 68px;
	background-color: #4481a5;
	border-radius: 5px;
}

.c-faq-list dl dd .cont {
	flex: 1;
	min-height: 68px;
	padding: 19px 29px;
	margin-left: 12px;
	line-height: 1.5;
	border: 1px solid #e7e7eb;
	background-color: #fff;
	border-radius: 5px;
}

.c-faq-list dl dd .cont p {}

@media screen and (max-width:767px) {

	.c-faq-list {}

	.c-faq-list dl {
		margin-bottom: 30px;
	}

	.c-faq-list dl dt {
		margin-bottom: 20px;
	}

	.c-faq-list dl dt .icon {
		width: 40px;
		font-size: 16px;
		line-height: 40px;
		border-radius: 4px;
	}

	.c-faq-list dl dt .ttl {
		flex: 1;
		min-height: 40px;
		padding: 7px 12px;
		margin-left: 10px;
		font-size: 16px;
		border-radius: 4px;
	}

	.c-faq-list dl dd .icon {
		width: 40px;
		font-size: 16px;
		line-height: 40px;
		border-radius: 4px;
	}

	.c-faq-list dl dd .cont {
		min-height: 40px;
		padding: 7px 12px;
		margin-left: 10px;
		border-radius: 4px;
	}

	.c-faq-list dl dd .cont p {}

}


/**********************************

 c-faq-list-acc

***********************************/
.c-faq-list-acc {
	padding: 1rem 5rem;
	background: #fff;
	border-radius: 1.5rem;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.c-faq-list-acc dl {
	border-bottom: 2px dotted #bbbbbb;
}

.c-faq-list-acc dl:last-child {
	border-bottom: none;
}

.c-faq-list-acc dl dt {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 3.5rem 0 3.5rem 6rem;
	cursor: pointer;
	position: relative;
	z-index: 1;
}

.c-faq-list-acc dl dt .icon {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4.4rem;
	height: 4.4rem;
	margin-top: 3rem;
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.6;
	background: #e99211;
	border: 1px solid #e99211;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.c-faq-list-acc dl dt .ttl {
	flex: 1;
	padding: 0 7.5rem 0 0;
	color: #000000;
	font-size: 1.8rem;
	font-weight: bold;
	position: relative;
	z-index: 1;
}

.c-faq-list-acc dl dt .ttl:before {
	content: "";
	display: block;
	width: 2rem;
	height: .2rem;
	margin: 1.6rem 3rem 0 0;
	background-color: #e99211;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

.c-faq-list-acc dl dt.is-active .ttl:before {}

.c-faq-list-acc dl dt .ttl:after {
	content: "";
	display: block;
	width: .2rem;
	height: 2rem;
	margin: .7rem 3.9rem 0 0;
	background-color: #e99211;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
	transition: opacity 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
}

.c-faq-list-acc dl dt.is-active .ttl:after {
	opacity: 0;
}

.c-faq-list-acc dl dd {
	display: none;
}

.c-faq-list-acc dl dd .inner {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding-left: 6rem;
	padding-bottom: 3.5rem;
	position: relative;
	z-index: 1;
}

.c-faq-list-acc dl dd .icon {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4.4rem;
	height: 4.4rem;
	margin-top: 0;
	color: #e99211;
	font-size: 1.8rem;
	line-height: 1.6;
	background: #fff;
	border: 1px solid #e99211;
	border-radius: 50%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.c-faq-list-acc dl dd .cont {
	flex: 1;
	padding-top: .4rem;
	color: #000000;
	font-size: 1.8rem;
	line-height: 1.8;
}

.c-faq-list-acc dl dd .cont p {
	word-break: break-all;
}

.c-faq-list-acc dl dd .cont p a {
	color: #004ca0;
	text-decoration: underline;
}

.c-faq-list-acc dl dd .cont p a:hover {
	text-decoration: none;
}

@media screen and (max-width:767px) {

	.c-faq-list-acc {
		padding: .1rem 3rem;
		border-radius: 1.5rem;
		box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	}

	.c-faq-list-acc dl {
		border-bottom: 2px dotted #bbbbbb;
	}

	.c-faq-list-acc dl:last-child {
		border-bottom: none;
	}

	.c-faq-list-acc dl dt {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		padding: 3.7rem 0 3.7rem 6.5rem;
		cursor: pointer;
		position: relative;
		z-index: 1;
	}

	.c-faq-list-acc dl dt .icon {
		width: 5rem;
		height: 5rem;
		margin-top: 3.7rem;
		font-size: 2.4rem;
	}

	.c-faq-list-acc dl dt .ttl {
		padding: 0 7rem 0 0;
		font-size: 2.8rem;
	}

	.c-faq-list-acc dl dt .ttl:before {
		width: 2.4rem;
		height: .4rem;
		margin: 2.2rem 0 0 0;
	}

	.c-faq-list-acc dl dt.is-active .ttl:before {}

	.c-faq-list-acc dl dt .ttl:after {
		width: .4rem;
		height: 2.4rem;
		margin: 1.3rem 1rem 0 0;
	}

	.c-faq-list-acc dl dt.is-active .ttl:after {
		opacity: 0;
	}

	.c-faq-list-acc dl dd {
		display: none;
	}

	.c-faq-list-acc dl dd .inner {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		padding-left: 6.5rem;
		padding-bottom: 3.5rem;
		position: relative;
		z-index: 1;
	}

	.c-faq-list-acc dl dd .icon {
		width: 5rem;
		height: 5rem;
		margin-top: .4rem;
		font-size: 2.4rem;
	}

	.c-faq-list-acc dl dd .cont {
		flex: 1;
		padding-top: .6rem;
		font-size: 1.8rem;
	}

	.c-faq-list-acc dl dd .cont p {
		font-size: 2.8rem;
		word-break: break-all;
	}

	.c-faq-list-acc dl dd .cont p a {
		color: #004ca0;
		text-decoration: underline;
	}

	.c-faq-list-acc dl dd .cont p a:hover {
		text-decoration: none;
	}

}


/**********************************

 c-completeSec

***********************************/
.c-completeSec {
	background: #f8f8f8;
}

.c-completeSec__inner {
	padding: 12rem 0;
}

.c-completeSec__inner .intro {
	margin-bottom: 6rem;
	font-size: 1.8rem;
	font-weight: bold;
}

.c-completeSec__inner .back {
	max-width: 43rem;
	margin: 0 auto;
}


@media screen and (max-width:767px) {

	.c-completeSec__inner .intro {
		font-size: 2.4rem;
	}
}



/**********************************

 c-contact

***********************************/
.c-contact {}

.c-contact__inner {}

.c-contact__inner-content {
	padding: 10px 3.9% 5%;
	background-color: #fff;
	border-left: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
	border-radius: 10px;
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.c-contact__inner-content:before {
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	background-color: #222222;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

@media screen and (max-width:767px) {

	.c-contact__inner-content {
		padding: 2px 4.833333333333333% 8.088235294117647%;
		background-color: #fff;
		border-radius: 6px;
		box-shadow: none;
		border-left: 1px solid #dddddd;
		border-right: 1px solid #dddddd;
		border-bottom: 1px solid #dddddd;
	}

	.c-contact__inner-content:before {
		height: 2px;
	}
}



/**********************************

 c-hero

***********************************/
/* .c-hero {
	background: url(../images/hero_bg01_pc.jpg) no-repeat center / cover;
} */
.c-hero {
	background: url(../images/hero_bg01_pc.jpg) no-repeat right 100% center / 120%;
}

.c-hero__inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 68rem;
	position: relative;
	z-index: 1;
}

.c-hero__inner-txt01 {
	margin-bottom: .5rem;
	color: #fff;
	font-size: 3.1rem;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: .05em;
}

.c-hero__inner-txt01 span {
	display: inline-block;
	padding: .5rem 1.5rem;
	background: #333333;
}

.c-hero__inner-ttl {
	margin-bottom: 5rem;
	color: #fff;
	font-size: 7.1rem;
	font-weight: bold;
	line-height: 1.28169014084507;
	letter-spacing: .05em;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
}

.c-hero__inner-ttl .small {
	font-size: 6.2rem;
}

.c-hero__inner-list {
	width: 61.7rem;
	color: #ff6d01;
	font-size: 3.5rem;
	font-weight: bold;
	letter-spacing: .05em;
}

.c-hero__inner-list li {
	margin-bottom: 1.2rem;
	background: #fff;
	text-align: center;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
	border-radius: 100px;
}

.c-hero__inner-list li:last-child {
	margin-bottom: 0;
}

/* .c-hero__inner-pic {
	width: 52.833333333333333%;
	margin-right: -7.916666666666667%;
	margin-bottom: 7.833333333333333%;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
} */

.c-hero__inner-pic {
	/* width: 52.8333333333%; */
	width: 45%; /* ← 画像サイズをやや小さくする */
	position: absolute;
	/* bottom: 150px; */
	bottom: 150px; /* ← 画像位置をやや上にして空間を確保 */
	right: -8%;
	z-index: 6;
}



@media screen and (max-width:1199px) {
	.c-hero {
		background: url(../images/hero_bg01_sp.jpg) no-repeat center / cover;
	}

	.c-hero__inner {
		display: block;
		height: auto;
		padding: 5rem 0 8rem;
		position: relative;
		z-index: 1;
	}

	.c-hero__inner-txt01 {
		margin-bottom: 1rem;
		font-size: 3.1rem;
		text-align: center;
	}

	.c-hero__inner-txt01 span {
		display: inline-block;
		padding: .5rem 1.5rem;
		background: #333333;
	}

	.c-hero__inner-ttl {
		margin-bottom: 3rem;
		font-size: 7.1rem;
		text-align: center;
	}

	.c-hero__inner-ttl .small {
		font-size: 6.2rem;
	}

	.c-hero__inner-list {
		width: 60.8rem;
		margin: 0 auto;
		font-size: 3.5rem;
	}

	.c-hero__inner-list li {
		margin-bottom: 2rem;
	}

	.c-hero__inner-pic {
		width: 68rem;
		margin: 2.5rem auto 0;
		position: static;
	}

	.c-hero__inner-pic img {
		width: 100%;
		max-width: none;
	}

}



/**********************************

 c-users

***********************************/
.c-users {
	width: 100%;
	overflow: hidden;
}

.c-users__head {}

.c-users__head-inner {
	padding-top: 105px;
	padding-bottom: 75px;
}

.c-users__body {
	padding-bottom: 100px;
}

.c-users__body-slider {
	margin-bottom: 30px;
}

.c-users__body-slider:last-child {
	margin-bottom: 0;
}

.c-users__body-slider .slick-list {
	margin: 0 -20px;
}

.c-users__body-slider-item {
	padding: 10px 0;
	margin: 0 20px;
}

.c-users__body-slider-item img {
	border-radius: 10px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width:1199px) {

	.c-users__head-inner {
		padding-top: 55px;
		padding-bottom: 30px;
	}

	.c-users__body {
		padding-bottom: 45px;
	}

	.c-users__body-slider {
		margin-bottom: 5px;
	}

	.c-users__body-slider .slick-list {
		margin: 0 -10px;
	}

	.c-users__body-slider-item {
		padding: 10px 0;
		margin: 0 10px;
	}

	.c-users__body-slider-item img {
		width: 120px;
		border-radius: 6px;
	}
}



/**********************************

 c-trouble

***********************************/
.c-trouble {
	background: url(../images/trouble_bg01_pc.jpg) no-repeat center / cover;
}

.c-trouble__inner {
	padding: 8.5rem 0 16rem;
}

.c-trouble__inner-txt01 {
	margin-bottom: 1.5rem;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

.c-trouble__inner-list {
	padding-top: 1rem;
}

.c-trouble__inner-list ul {
	display: flex;
	justify-content: space-between;
}

.c-trouble__inner-list ul li {
	width: 21.25%;
	padding: 2.8rem 0 1rem;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
	border-radius: 1.5rem;
	position: relative;
	z-index: 1;
}

.c-trouble__inner-list ul li:before {
	content: "";
	display: block;
	width: 1.8rem;
	height: 3.6rem;
	background: url(../images/trouble_lightning.png) no-repeat center / contain;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 1;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.c-trouble__inner-list ul li .icon {
	width: 7.6rem;
	margin: 0 auto;
	text-align: center;
}

.c-trouble__inner-list ul li p {
	margin-top: 3rem;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.6;
}

@media screen and (max-width:1199px) {
	.c-trouble {
		background: url(../images/trouble_bg01_sp.jpg) no-repeat center / cover;
	}

	.c-trouble__inner {
		padding: 8.5rem 0 16rem;
	}

	.c-trouble__inner-txt01 {
		margin-bottom: 1.8rem;
		font-size: 2.8rem;
	}

	.c-trouble__inner-list {
		padding-top: 1rem;
	}

	.c-trouble__inner-list ul {
		flex-wrap: wrap;
		margin-bottom: -7.5rem;
	}

	.c-trouble__inner-list ul li {
		width: 47.058823529411765%;
		padding: 2.8rem 0 1rem;
		margin-bottom: 7.5rem;
		box-shadow: 0 0 5px rgba(0, 0, 0, 0.2);
		border-radius: 1rem;
	}

	.c-trouble__inner-list ul li:before {
		width: 1.8rem;
		height: 3.6rem;
	}

	.c-trouble__inner-list ul li .icon {
		width: 7.6rem;
	}

	.c-trouble__inner-list ul li p {
		margin-top: 3rem;
		font-size: 2.8rem;
	}

}



/**********************************

 c-solution

***********************************/
.c-solution {
	background: url(../images/solution_bg01_pc.jpg) no-repeat center / cover;
}

.c-solution__inner {
	padding: 9rem 0 11rem;
	position: relative;
	z-index: 1;
}

.c-solution__inner:before {
	content: "";
	display: block;
	width: 15.8rem;
	height: 7.9rem;
	background: url(../images/solution_arr01.png) no-repeat center / contain;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 1;
	transform: translateY(-50%) translateX(-50%);
	-webkit-transform: translateY(-50%) translateX(-50%);
}

.c-solution__inner-txt01 {
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

.c-solution__inner-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: -3.333333333333333%;
}

.c-solution__inner-list-sec {
	width: 47.5%;
	margin-bottom: 3.333333333333333%;
}

.c-solution__inner-list-sec .head {
	display: flex;
	align-items: center;
	padding: 1.5rem 3rem;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e99211+0,ffae35+100 */
	background: linear-gradient(to right, rgba(233, 146, 17, 1) 0%, rgba(255, 174, 53, 1) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	border-radius: 1.5rem 1.5rem 0 0;
}

.c-solution__inner-list-sec .head .icon {
	width: 8rem;
	margin-right: 2rem;
}

.c-solution__inner-list-sec .head .ttl {
	flex: 1;
	color: #fff;
	font-size: 2.2rem;
	font-weight: 900;
	line-height: 1.7;
}

.c-solution__inner-list-sec .body {
	padding: 1.5rem 3rem;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	border-radius: 0 0 1.5rem 1.5rem;
}

.c-solution__inner-list-sec .body p {
	font-size: 1.8rem;
}

@media screen and (max-width:1199px) {

	.c-solution {
		background: url(../images/solution_bg01_sp.jpg) no-repeat center top;
		background-size: 100% auto;
	}

	.c-solution__inner {
		padding: 9rem 0 11rem;
	}

	.c-solution__inner-txt01 {
		font-size: 2.8rem;
	}

	.c-solution__inner-list {
		display: block;
		margin-bottom: 0;
	}

	.c-solution__inner-list-sec {
		width: auto;
		margin-bottom: 6rem;
	}

	.c-solution__inner-list-sec:last-child {
		margin-bottom: 0;
	}

	.c-solution__inner-list-sec .head {
		display: flex;
		align-items: center;
		padding: 1.5rem 3rem;
		/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e99211+0,ffae35+100 */
		background: linear-gradient(to right, rgba(255, 174, 53, 1) 0%, rgba(233, 146, 17, 1) 100%);
		/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
		box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
		border-radius: 1.5rem 1.5rem 0 0;
	}

	.c-solution__inner-list-sec .head .icon {
		width: 8rem;
		margin-right: 2rem;
	}

	.c-solution__inner-list-sec .head .ttl {
		font-size: 3.2rem;
	}

	.c-solution__inner-list-sec .body {
		padding: 1.5rem 3rem;
		background: #fff;
		box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
		border-radius: 0 0 1.5rem 1.5rem;
	}

	.c-solution__inner-list-sec .body p {
		font-size: 2.8rem;
	}
}



/**********************************

 c-function

***********************************/
.c-function {
	background: url(../images/bg_stripe01.png) repeat;
}

.c-function__inner {
	padding: 10rem 0 11rem;
}

.c-function__inner-txt01 {
	margin-bottom: 1.5rem;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

.c-function__inner-list {}

.c-function__inner-list-sec {
	padding: 5rem;
	margin-bottom: 8rem;
	background: #fff;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	border-radius: 1.5rem;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.c-function__inner-list-sec:last-child {
	margin-bottom: 0;
}

.c-function__inner-list-sec:before {
	content: "";
	display: block;
	width: 20rem;
	height: 20rem;
	background: url(../images/function_bg01.png) no-repeat center / contain;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

.c-function__inner-list-sec:last-child {
	margin-bottom: 0;
}

.c-function__inner-list-sec .head {
	display: flex;
	justify-content: space-between;
	margin-bottom: 3rem;
}

.c-function__inner-list-sec .head .point {
	width: 15rem;
}

.c-function__inner-list-sec .head .point .txt01 {
	display: inline-block;
	padding: 0 2.25rem;
	color: #e99211;
	font-size: 1.8rem;
	font-weight: 900;
	font-style: italic;
	line-height: 1;
	white-space: nowrap;
	letter-spacing: .03em;
	vertical-align: top;
	position: relative;
	z-index: 1;
}

.c-function__inner-list-sec .head .point .txt01:before {
	content: "";
	display: block;
	width: 1rem;
	height: 1.3rem;
	border-top: .3rem solid #e99211;
	border-left: .3rem solid #e99211;
	border-bottom: .3rem solid #e99211;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.c-function__inner-list-sec .head .point .txt01:after {
	content: "";
	display: block;
	width: 1rem;
	height: 1.3rem;
	border-top: .3rem solid #e99211;
	border-right: .3rem solid #e99211;
	border-bottom: .3rem solid #e99211;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	right: 0;
	z-index: 1;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.c-function__inner-list-sec .head .point .num {
	display: inline-block;
	padding-bottom: 2rem;
	color: #e99211;
	font-size: 8.8rem;
	font-weight: 900;
	font-style: italic;
	line-height: .8;
	letter-spacing: .03em;
	vertical-align: top;
	white-space: nowrap;
	border-bottom: .3rem solid #e99211;
}

.c-function__inner-list-sec .head .cont {
	flex: 1;
	display: flex;
	align-items: center;
	padding: 0 3rem;
	border: .4rem solid #dddddd;
	border-radius: 2rem;
}

.c-function__inner-list-sec .head .cont .ttl {
	font-size: 3.2rem;
	font-weight: bold;
	line-height: 1.6;
}

.c-function__inner-list-sec .body {}

.c-function__inner-list-sec .body p {
	margin-bottom: 3rem;
	font-size: 2rem;
}

.c-function__inner-list-sec .body p:last-child {
	margin-bottom: 0;
}

@media screen and (max-width:1199px) {
	.c-function {
		background-size: 4px 4.5px;
	}

	.c-function__inner {
		padding: 8.5rem 0 8.5rem;
	}

	.c-function__inner-txt01 {
		margin-bottom: 3.5rem;
		font-size: 2.8rem;
	}

	.c-function__inner-list {}

	.c-function__inner-list-sec {
		padding: 3rem;
		margin-bottom: 12rem;
		box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
		border-radius: 1.5rem;
	}

	.c-function__inner-list-sec .head {
		margin-bottom: 3rem;
	}

	.c-function__inner-list-sec .head .point {
		width: 13rem;
	}

	.c-function__inner-list-sec .head .cont {
		padding: 3rem 1.5rem;
		border-radius: 2rem;
	}

	.c-function__inner-list-sec .head .cont .ttl {
		font-size: 3.2rem;
		font-weight: bold;
		line-height: 1.6;
	}

	.c-function__inner-list-sec .body {}

	.c-function__inner-list-sec .body p {
		margin-bottom: 3rem;
		font-size: 2.8rem;
	}

}



/**********************************

 c-cv

***********************************/
.c-cv {
	background: url(../images/cv_bg01_pc.jpg) no-repeat center / cover;
}

.c-cv__inner {
	padding: 11rem 0 10.5rem;
}

.c-cv__inner-box {
	display: flex;
	justify-content: center;
	align-items: center;
}

.c-cv__inner-box .pic {
	width: 49rem;
	margin-right: 5rem;
}

.c-cv__inner-box .cont {
	flex: 1;
}

.c-cv__inner-box .cont .txt01 {
	margin-bottom: 0.5rem;
	color: #fff;
	font-size: 3.1rem;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: .05em;
}

.c-cv__inner-box .cont .txt01 span {
	display: inline-block;
	padding: 0.5rem 1.5rem;
	background: #333333;
}

.c-cv__inner-box .cont .ttl {
	margin-left: 1rem;
	color: #fff;
	font-size: 7.1rem;
	font-weight: bold;
	line-height: 1.28169014084507;
	letter-spacing: .05em;
	text-shadow: 2px 2px 2px rgba(0, 0, 0, 0.1);
}

.c-cv__inner-box .cont .ttl .small {
	font-size: 6.2rem;
}

.c-cv__inner-txt01 {
	margin-top: 5rem;
	color: #fff;
	font-size: 2.8rem;
	text-align: center;
	line-height: 1.571428571428571;
}

@media screen and (max-width:1199px) {
	.c-cv {
		background: url(../images/cv_bg01_sp.jpg) no-repeat center / cover;
	}

	.c-cv__inner {
		padding: 11rem 0 10.5rem;
	}

	.c-cv__inner-box {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column-reverse;
	}

	.c-cv__inner-box .pic {
		width: 49rem;
		margin: 5rem auto 0;
	}

	.c-cv__inner-box .cont .txt01 {
		margin-bottom: 1.5rem;
	}

	.c-cv__inner-box .cont .txt01 span {
		display: inline-block;
		padding: 0.5rem 1.5rem;
		background: #333333;
	}

	.c-cv__inner-box .cont .ttl {
		margin-left: 0;
		text-align: center;
	}

	.c-cv__inner-txt01 {
		margin-top: 5rem;
		color: #fff;
		font-size: 2.8rem;
		text-align: left;
	}

	.c-cv__inner-btn {
		margin-top: 5rem;
		font-size: 3.2rem;
		font-weight: 900;
		text-align: center;
	}

	.c-cv__inner-btn a {
		display: inline-block;
		padding: 2.1rem 4.5rem;
		color: #fff;
		background: #0a965b;
		border-radius: 100px;
		box-shadow: 0 .5rem 0 #052d05;
		vertical-align: top;
		position: relative;
		z-index: 1;
		overflow: visible;
	}

	.c-cv__inner-btn a:before {
		content: "";
		display: block;
		width: 10.7rem;
		height: 10.9rem;
		margin-top: -5rem;
		margin-right: -7.5rem;
		background: url(../images/cv_balloon.png) no-repeat center / contain;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 1;
	}

	.c-cv__inner-btn a span {
		padding-left: 4.4rem;
		position: relative;
		z-index: 1;
	}

	.c-cv__inner-btn a span:before {
		content: "";
		display: block;
		width: 3.4rem;
		height: 2.4rem;
		background: url(../images/icon_mail01.png) no-repeat center / contain;
		position: absolute;
		top: 50%;
		left: 0;
		z-index: 1;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
	}

}



/**********************************

 c-case

***********************************/
.c-case {}

.c-case__inner {
	padding: 9rem 0 9rem;
}

.c-case__inner-txt01 {
	margin-bottom: 1.5rem;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

.c-case__inner-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.c-case__inner-list:after {
	content: "";
	display: block;
	width: 30%;
}

.c-case__inner-list-sec {
	width: 30%;
	padding: 3rem;
	background: #fff;
	border-radius: 1.5rem;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.c-case__inner-list-sec .pic {
	margin-bottom: 1rem;
}

.c-case__inner-list-sec .date {
	color: #aaaaaa;
	font-size: 1.6rem;
	font-weight: 900;
	font-style: italic;
}

.c-case__inner-list-sec .ttl {
	margin-bottom: .5rem;
	color: #e99211;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.6;
}

.c-case__inner-list-sec .txt01 {
	font-size: 1.8rem;
}

@media screen and (max-width:1199px) {

	.c-case__inner-txt01 {
		margin-bottom: 3.5rem;
		font-size: 2.8rem;
	}

	.c-case__inner-list {
		display: block;
	}

	.c-case__inner-list:after {
		display: none;
	}

	.c-case__inner-list-sec {
		width: auto;
		padding: 3rem;
		margin-bottom: 8rem;
		border-radius: 1.5rem;
		box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
	}

	.c-case__inner-list-sec:last-child {
		margin-bottom: 0;
	}

	.c-case__inner-list-sec .pic {
		margin-bottom: 2rem;
	}

	.c-case__inner-list-sec .pic img {
		width: 100%;
		max-width: none;
	}

	.c-case__inner-list-sec .date {
		font-size: 2.4rem;
	}

	.c-case__inner-list-sec .ttl {
		margin-bottom: 1rem;
		font-size: 3.2rem;
	}

	.c-case__inner-list-sec .txt01 {
		font-size: 2.8rem;
	}

}



/**********************************

 c-faq

***********************************/
.c-faq {
	background: #f8f8f8;
}

.c-faq__inner {
	padding: 9rem 0;
}

@media screen and (max-width:1199px) {}



/**********************************

 c-company

***********************************/
.c-company {
	background: #f8f8f8;
}

.c-company__inner {
	padding: 8rem 0;
}

.c-company__inner-ttl {
	padding-left: 1.5rem;
	padding-bottom: .5rem;
	margin-bottom: 3rem;
	font-size: 2.8rem;
	font-weight: bold;
	border-bottom: 1px solid #dddddd;
}

.c-company__inner-content {
	display: flex;
	justify-content: space-between;
	padding-bottom: 3rem;
	border-bottom: 1px solid #dddddd;
}

.c-company__inner-content-box {
	width: 50%;
}

.c-company__inner-content-box dl {
	display: flex;
	margin-bottom: 1em;
	font-size: 1.6rem;
}

.c-company__inner-content-box dl:last-child {
	margin-bottom: 0;
}

.c-company__inner-content-box dl dt {
	width: 14.5rem;
	padding-left: 3rem;
	font-weight: bold;
}

.c-company__inner-content-box dl dd {}

.c-company__inner-content-box dl dd .ttl {}

.c-company__inner-content-box dl dd ul {
	margin-bottom: 1em;
}

.c-company__inner-content-box dl dd ul:last-child {
	margin-bottom: 0;
}

.c-company__inner-content-box dl dd ul li {}

@media screen and (max-width:1199px) {

	.c-company__inner {
		padding: 8rem 0;
	}

	.c-company__inner-ttl {
		padding-left: 0;
		padding-bottom: 4rem;
		margin-bottom: 0;
		font-size: 6rem;
		text-align: center;
	}

	.c-company__inner-content {
		display: block;
		padding-bottom: 3rem;
		border-bottom: none;
	}

	.c-company__inner-content-box {
		width: auto;
	}

	.c-company__inner-content-box dl {
		display: block;
		padding: 3rem 0;
		margin-bottom: 0;
		font-size: 2.8rem;
		border-bottom: 1px solid #dddddd;
	}

	.c-company__inner-content-box dl:last-child {
		margin-bottom: 0;
	}

	.c-company__inner-content-box dl dt {
		width: auto;
		padding-left: 0;
		margin-bottom: 1.5rem;
	}

	.c-company__inner-content-box dl dd {}

	.c-company__inner-content-box dl dd .ttl {}

	.c-company__inner-content-box dl dd ul {
		margin-bottom: 1em;
	}

	.c-company__inner-content-box dl dd ul:last-child {
		margin-bottom: 0;
	}

	.c-company__inner-content-box dl dd ul li {}
}


/**********************************

 c-modal

***********************************/
.c-modal {
	display: none;
	width: 100%;
	height: 100%;
	padding-bottom: 10px;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	background: rgba(0, 0, 0, .9);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
}

.c-modal__inner {
	width: 94.666666666666667%;
	padding: 20px 17px 25px;
	margin: 0 auto;
	background: #fff;
	border-radius: 0 0 6px 6px;
	position: relative;
	z-index: 1;
}

.c-modal__inner-close {
	width: 24px;
	margin: 15px 18px 0 0;
	cursor: pointer;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1;
}

@media screen and (max-width:1199px) {}


/**********************************

 xxx

***********************************/

@media screen and (max-width:1199px) {}


/**********************************

 LIS LP用

***********************************/

/* バッジエリアの外枠：白枠との間に余白追加 */
.c-hero__badge-area {
  margin-top: 1.5rem; /* ←ここで白枠と丸バッジの間隔を広げます */
  display: flex;
  justify-content: flex-start;
}

/* バッジリスト */
.c-hero__badge-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem;
  padding: 0;
  margin: 0;
  list-style: none;
  justify-content: flex-start;
}

/* 各バッジ */
.c-hero__badge-list li {
  background-color: #fff;
  border: 2px solid #f7941e;
  color: #d85b00;
  font-size: 1.60rem; /* メイン文字をさらに大きく */
  font-weight: 700;
  padding: 2rem 1rem;
  text-align: center;
  width: 160px;
  height: 160px;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
  line-height: 1.4;
}

/* 補足テキスト */
.c-hero__badge-list .small {
  font-size: 1.1rem; /* 補足も大きめにしてバランスUP */
  font-weight: 500;
  color: #333;
  margin-top: 0.5rem;
}

/* スマホ表示調整（2列） */
@media screen and (max-width: 768px) {
  .c-hero__badge-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem 1.2rem;
    justify-items: center;
  }

  .c-hero__badge-list li {
    width: 140px;
    height: 140px;
    font-size: 1.1rem;
    padding: 1.5rem 1rem;
  }

  .c-hero__badge-list .small {
    font-size: 0.9rem;
  }

  .c-hero__badge-area {
    margin-top: 2.5rem;
  }
}

/* スマホ表示調整（2列＋中央寄せ＋文字大きめ） */
@media screen and (max-width: 768px) {
  .c-hero__badge-area {
    margin-top: 3rem;
    display: flex;
    justify-content: center;
  }

  .c-hero__badge-list {
    display: grid;
    grid-template-columns: repeat(2, 160px); /* ← 2列×固定幅160pxで中央寄せしやすく */
    gap: 2rem 1.5rem;
    justify-content: center;      /* グリッド全体を中央寄せ */
    align-items: center;
    text-align: center;
  }

  .c-hero__badge-list li {
    width: 160px;
    height: 160px;
    font-size: 3.0rem;             /* ←さらに大きく（38px相当） */
    padding: 1.4rem 0.8rem;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    line-height: 1.2;
  }

  .c-hero__badge-list .small {
    font-size: 2.25rem;             /* ←補足もやや拡大 */
    margin-top: 0.3rem;
  }
}
							@media screen and (max-width: 768px) {
  .c-hero__inner-ttl {
    font-size: 6.8vw !important;  /* スマホ用に最大サイズ */
    white-space: nowrap !important;  /* 途中改行を防ぐ */
    line-height: 1.2 !important;  /* 行間を少し狭く */
  }
}

/* ファーストビュー調整（PC表示時のみ） */
/* @media screen and (min-width: 769px) { */
  /* 上の「掲載面をキャプチャ〜」が見切れないように */
  /* .c-hero__inner-txt01 { */
	 /* ←元の調整より大きめに */
    /* margin-top: 2.5rem !important;
    display: block;
  } */

  /* 商標のリスティング出稿を〜の上下余白は戻す */
  /* .c-hero__inner-ttl {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  } */

  /* 自動パトロール〜やブランドセーフティ〜の余白も元に近づける */
  /* .c-hero__inner-list {
    margin-top: 1rem !important;
    margin-bottom: 2rem !important;
  } */

  /* バッジだけは少し下でOKとのことなので維持 */
  /* .c-hero__badge-area {
    margin-top: 3rem !important;
  } */
/* } */

@media screen and (max-width: 768px) {
  .c-hero__inner {
    justify-content: flex-start;
    padding-top: 3vh;
    padding-bottom: 4vh;
  }

  .c-hero__inner-txt01 {
    margin-bottom: 2vh;
  }

  .c-hero__inner-ttl {
    margin-bottom: 3vh;
  }
}

.c-hero__badge-list {
  position: relative;
  top: 60px; /* ← 好みで調整、被らないギリギリまで下へ */
}

.c-hero__badge-area {
  margin-top: -40px; /* ← 画像を縮小した分だけ、上に引き寄せる */
}

/* スマホ対応: 中央寄せ */
@media screen and (max-width: 767px) {
  .c-hero__inner-txt01,
  .c-hero__inner-ttl {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    display: block;
    width: 90%; /* ← 任意。文字が画面に収まらない場合調整 */
  }
}

/* PCサイズに対して文字サイズを可変にする（vwを使う） */
@media screen and (min-width: 769px) {
  .c-hero__badge-list li {
    font-size: clamp(1rem, 1.2vw, 1.6rem);  /* ← 最小1rem〜最大1.6rem */
  }

  .c-hero__badge-list .small {
    font-size: clamp(0.8rem, 0.9vw, 1.1rem); /* ← 最小0.8rem〜最大1.1rem */
  }
}

.c-hero__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  z-index: 2;
}

.c-hero__inner-pic {
  max-width: 100%;
  margin-bottom: 1rem;
}

.c-hero__update-label {
  margin-top: -1.5rem;  /* PC画像に近づける */
  margin-bottom: 2rem;
  padding: 0.4rem 1.2rem;
  background: linear-gradient(90deg, #FBC84F, #F39C12);
  color: #fff;
  font-weight: bold;
  font-size: 0.9rem;
  text-align: center;
  border-radius: 1.5rem;
  box-shadow: 0 3px 8px rgba(0,0,0,0.15);
  display: inline-block;
}

.c-hero__badge-area {
  width: 100%;
  display: flex;
  justify-content: center;
}

.c-hero__badge-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.6rem;
  padding: 0;
  margin: 0;
  list-style: none;
}

.badge-icon {
  width: 36px;
  height: 36px;
  margin-bottom: 8px;
}

@media screen and (max-width: 768px) {
  .c-cv__inner-box .cont .txt01 {
    text-align: center;
  }

  .c-cv__inner-box .cont .txt01 span {
    margin: 0 auto;
  }
}




/* バッジ共通 */
.c-badge {
  text-align: center;
  line-height: 1.25;
}

.c-badge__icon {
  width: 30px;         /* アイコンは小さめに固定 */
  height: 30px;
  object-fit: contain;
  display: block;
  margin: 0 auto 8px;  /* 下に少し余白 */
}

.c-badge__title {
  font-weight: 700;
  font-size: 1.6rem;   /* ベース */
  letter-spacing: 0.02em;
  margin: 0 0 4px;
  white-space: nowrap; /* 一行で収める */
}

.c-badge__title .em {
  font-size: 2.0rem;   /* 強調だけ一段大きく */
  font-weight: 800;
}

.c-badge__sub {
  font-size: 1.2rem;
  color: #666;
  margin: 0;
}

/* PCでの強弱をやや強める */
@media screen and (min-width: 992px) {
  .c-badge__title { font-size: 1.8rem; }
  .c-badge__title .em { font-size: 2.4rem; }
}

/* SP（横幅が狭い時）はアイコンさらに小さく＆改行許容 */
@media screen and (max-width: 768px) {
  .c-badge__icon { width: 26px; height: 26px; margin-bottom: 6px; }
  .c-badge__title { font-size: 1.5rem; white-space: normal; }
  .c-badge__title .em { font-size: 2.0rem; }
}



/* バッジタイトルの改行調整 */
.c-badge__title {
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.3;
  margin: 0 0 4px;
  text-align: center;
  white-space: normal;     /* ← 1行固定を解除して改行を許容 */
  word-break: keep-all;    /* ← 日本語を不自然に途中で切らない */
  overflow-wrap: break-word;
}

.c-badge__title .em {
  font-weight: 700;
  font-size: 1.8rem;
  display: inline-block;
}




/* 共通 */
.c-badge__title {
  font-weight: 600;
  font-size: 1.5rem;
  line-height: 1.3;
  margin: 0 0 4px;
  text-align: center;
  white-space: normal;
  word-break: keep-all;
}

.c-badge__title .em {
  font-weight: 700;
  display: inline-block;
}

/* 短いテキスト用（地域・曜日時間・デバイス） */
.c-badge--short .c-badge__title .em {
  font-size: 2.0rem;         /* 大きめ */
}

@media (min-width: 992px) {
  .c-badge--short .c-badge__title .em {
    font-size: 2.4rem;       /* PCではさらに大きく */
  }
}

/* 長いテキスト用（検索エンジン指定・アップデート完全対応） */
.c-badge--long .c-badge__title .em {
  font-size: 1.6rem;         /* 小さめ、はみ出さない範囲 */
}

@media (min-width: 992px) {
  .c-badge--long .c-badge__title .em {
    font-size: 1.8rem;
  }
}



/* 「曜日/時間指定」を必ず1行に */
.c-badge--day .c-badge__title {
  max-width: 92%;              /* 少しだけ横幅を許容（はみ出しにくく） */
}

.c-badge--day .c-badge__title .one-line {
  white-space: nowrap;         /* ← これで“必ず1行” */
  display: inline-flex;
  align-items: baseline;
  gap: .15em;                  /* 強調語と「指定」の間をわずかに空ける */
  letter-spacing: -0.01em;     /* 詰めて収まりを良くする（日本語でも安全域） */
}

.c-badge--day .c-badge__title .em {
  font-size: clamp(1.9rem, 1.65rem + 0.4vw, 2.4rem); /* 収まりやすい可変幅 */
  line-height: 1.15;
}

/* =========================================================
   SP ONLY: ヒーロー下バッジの見た目をスマホで最適化
   ※ 既存PC調整と干渉しないように max-width で限定
   ※ 最後に置くことで既存を安全に上書き
   ========================================================= */
@media screen and (max-width: 768px) {

  /* 丸の中身の基本レイアウト（SPで崩れないよう中央寄せ） */
  .c-hero__badge-list .c-badge {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;  /* 念のため固定 */
    line-height: 1.25;
    padding: 14px 10px;
  }

  /* アイコンはSPでは見やすい最小限に */
  .c-hero__badge-list .c-badge__icon {
    width: 28px !important;
    height: 28px !important;
    margin: 0 auto 8px !important;
    object-fit: contain;
  }

  /* タイトル：SPでは“絶対1行固定しない”（改行OK） */
  .c-hero__badge-list .c-badge__title {
    font-weight: 700;
    font-size: 1.6rem;             /* SP基準の見やすいサイズに固定 */
    line-height: 1.3;
    margin: 0 0 4px;
    letter-spacing: 0;
    white-space: normal !important; /* ← 既存nowrapを強制解除 */
    word-break: keep-all;
    overflow-wrap: break-word;
  }

  /* 強調語：SPは少し大きめで可読性重視 */
  .c-hero__badge-list .c-badge__title .em {
    font-weight: 700;
    font-size: 2.1rem;              /* PCより少し大きめで視認性UP */
  }

  /* 「曜日/時間指定」：SPでは“1行固定しない”＝自然に折返し */
  .c-hero__badge-list .c-badge--day .c-badge__title {
    max-width: 100% !important;
  }
  .c-hero__badge-list .c-badge--day .one-line {
    white-space: normal !important;  /* ← 既存nowrapを確実に解除 */
    letter-spacing: 0;
    gap: 0;
  }

  /* 長文2件（検索エンジン指定／アップデート完全対応）は
     SPでは詰め込みを避けて少しだけ控えめに */
  .c-hero__badge-list .c-badge--long .c-badge__title .em {
    font-size: 1.9rem;
  }

  /* サブテキストは読みやすい最小限 */
  .c-hero__badge-list .c-badge__sub {
    font-size: 1.1rem;
    color: #666;
    margin: 0;
    line-height: 1.25;
  }
}

@media screen and (max-width: 768px) {

  /* バッジ全体 */
  .c-hero__badge-list .c-badge {
    width: 160px;        /* 丸自体も少し大きめに（必要なら） */
    height: 160px;
    padding: 18px 12px;
  }

  /* アイコン */
  .c-hero__badge-list .c-badge__icon {
    width: 34px !important;
    height: 34px !important;
    margin-bottom: 10px !important;
  }

  /* タイトル */
  .c-hero__badge-list .c-badge__title {
    font-size: 1.9rem !important;    /* ← 基本文字を大きく */
    line-height: 1.3;
    white-space: normal !important;
  }

  /* 強調語 */
  .c-hero__badge-list .c-badge__title .em {
    font-size: 2.4rem !important;    /* ← 強調語をさらに大きく */
    font-weight: 800;
  }

  /* サブテキスト */
  .c-hero__badge-list .c-badge__sub {
    font-size: 1.3rem !important;    /* ← サブも読みやすいサイズにUP */
  }
}



@media screen and (max-width: 768px) {

  /* 丸のサイズは現状維持で2列収まる程度 */
  .c-hero__badge-list .c-badge {
    width: 150px;
    height: 150px;
    padding: 16px 12px;
  }

  /* アイコンは少し大きめを維持 */
  .c-hero__badge-list .c-badge__icon {
    width: 34px !important;
    height: 34px !important;
    margin-bottom: 10px !important;
  }

  /* タイトル文字をさらに拡大 */
  .c-hero__badge-list .c-badge__title {
    font-size: 2.2rem !important;   /* ← 1.9rem → 2.2rem */
    line-height: 1.3;
    white-space: normal !important;
  }

  /* 強調語はさらに大きく */
  .c-hero__badge-list .c-badge__title .em {
    font-size: 2.9rem !important;   /* ← 2.6rem → 2.9rem */
    font-weight: 800;
  }

  /* サブテキストも拡大 */
  .c-hero__badge-list .c-badge__sub {
    font-size: 1.4rem !important;
  }
}


/* ===== マーカー線（白・さらに細く＆文字から離す） ===== */
/* .marker{ */
.marker-white{
  background:
    linear-gradient(transparent 95%, #ffffff 0) no-repeat; /* ← 88% → 95% に変更 */
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding: 0 .25em;         /* 左右余白も少し広め */
  border-radius: .12em;
  line-height: 1.6;         /* 行間を少し広めに維持 */
}

/* .marker-strong{ */
.marker-white-strong{
  background:
    linear-gradient(transparent 96%, #ffffff 0) no-repeat;
}

@media (max-width: 768px){
  /* .marker{ background: linear-gradient(transparent 97%, #ffffff 0) no-repeat; }
  .marker-strong{ background: linear-gradient(transparent 98%, #ffffff 0) no-repeat; } */
.marker-white{ background: linear-gradient(transparent 97%, #ffffff 0) no-repeat; }
  .marker-white-strong{ background: linear-gradient(transparent 98%, #ffffff 0) no-repeat; }
}
