@charset "UTF-8";

/* Sass Document */
/* ======== fonts ===== */
@font-face {
	font-family: "MyYuGothicM";
	src: local("YuGothic-Medium"), local("YuGothic-Regular");
	font-display: swap;
}

@font-face {
	font-family: "MyYuGothicM";
	font-weight: bold;
	src: local("YuGothic-Bold");
	font-display: swap;
}

@font-face {
	font-family: "Noto Sans Japanese";
	src: url("../fonts/NotoSansCJKjp-Regular.eot?");
	src: url("../fonts/NotoSansCJKjp-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-Regular.woff") format("woff");
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}

@font-face {
	font-family: "Noto Sans Japanese";
	src: url("../fonts/NotoSansCJKjp-Medium.eot?");
	src: url("../fonts/NotoSansCJKjp-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-Medium.woff") format("woff");
	font-style: normal;
	font-weight: 600;
	font-display: swap;
}

@font-face {
	font-family: "Noto Sans Japanese";
	src: url("../fonts/NotoSansCJKjp-Bold.eot?");
	src: url("../fonts/NotoSansCJKjp-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/NotoSansCJKjp-Bold.woff") format("woff");
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}

@font-face {
	font-family: "Roboto";
	src: url("../fonts/Roboto-Regular.eot?");
	src: url("../fonts/Roboto-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/Roboto-Regular.woff") format("woff");
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}

@font-face {
	font-family: "Roboto";
	src: url("../fonts/Roboto-Bold.eot?");
	src: url("../fonts/Roboto-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/Roboto-Bold.woff") format("woff");
	font-style: normal;
	font-weight: 700;
}

@font-face {
	font-family: "Roboto";
	src: url("../fonts/Roboto-Thin.eot?");
	src: url("../fonts/Roboto-Thin.eot?#iefix") format("embedded-opentype"), url("../fonts/Roboto-Thin.woff") format("woff");
	font-style: normal;
	font-weight: 100;
	font-display: swap;
}

body {
	font-family: -apple-system, BlinkMacSystemFont, MyYuGothicM, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}

.winChrome body {
	font-weight: 500;
}

/* IEにメイリオを指定（下余白対策） */
@media all and (-ms-high-contrast: none) {
	body {
		font-family: Meiryo, sans-serif;
	}
}

input,
select,
textarea,
button {
	font-family: inherit;
}

.notosansregular {
	font-family: "Noto Sans Japanese";
	font-weight: 500;
}

.notosansmedium {
	font-family: "Noto Sans Japanese";
	font-weight: 600;
}

.notosansbold {
	font-family: "Noto Sans Japanese";
	font-weight: 700;
}

.txt-en {
	font-family: "Roboto", sans-serif !important;
}

.roboto {
	font-family: "Roboto";
	font-weight: 500;
}

.robotobold {
	font-family: "Roboto";
	font-weight: 700;
}

.robotothin {
	font-family: "Roboto";
	font-weight: 100;
}

/*---------------------------------------------
	modulizer仕様
  ---------------------------------------------
	コンテンツ最大幅	: 1170px
	余白			: 1200px～	30px
				: ～1200px	20px
				: ～768px	15px
	ブレ－クポイント	: メジャー	768px
				: マイナー	1200px、480px
	基準文字サイズ		: 1200px～	10px
文字サイズ(1200px～)	: 10px		1rem
	色			: 青緑		$color-btn
				: 黄緑		#b2c473
				: オレンジ	#efa55e
				: 赤		#f2646e
				: ピンク	#f79be5
				: 青紫		#7e88e8
				: 白		#fff
				: ライトグレー	#f2f4f4
				: グレー	#e5e9e9
				: ダークグレー	#434c4d
	文字色			: 標準		#222
				: 強調		#000
				: 注意		#f2646e
				: 注記		#999
				: リンク	$color-blue
	ホバー色		: 青緑		$color-hover
				: リンク	$color-blue;
 ----------------------------------------------*/
/*---------------------------------------------
	modulizer目次
  ---------------------------------------------
	リセット
	リンク
	メインコンテンツ
	強制指定
	[CL]  カラム
	[HD]  見出し
	[TX]  テキスト
	[HR]  区切り線
	[IG]  画像
	[LT]  リスト
	[LK1]  アイコンリンク
	[LK2]  横並びリンク
	[TG1] タグ
	[TG2] ラベル
	[BT]  ボタン
	[BT3] シェアボタン
	[BT4] メニューボタン
	[BX]  ボックス
	[FR]  枠
	[PL]  パネル
	[TB]  表
	[NV1] コンテンツナビゲーション
	[NV2] タブ
	[NV3] ページネーション
	[FM]  フォーム
	[EB1] 動画埋め込み
	[EB2] モーダル
	[SL]  スライダー
	[SC]  スクロールエフェクト
	[LD]  ロードエフェクト

	1200px未満
	768px未満
	480px未満
	印刷用
 ----------------------------------------------*/
/*---------------------------------------------
	リセット
  ---------------------------------------------*/
html {
	overflow-y: scroll;
	font-size: 62.5%;
	/* 1em = 10px */
}

body,
div,
dl,
dt,
dd,
ul,
ul li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td,
section,
nav,
article,
aside,
header,
address,
figure,
figcaption {
	margin: 0;
	padding: 0;
}

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

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption,
th {
	text-align: left;
}

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

object,
embed {
	verticalc-align: top;
}

legend {
	display: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 1rem;
	font-weight: normal;
}

img,
abbr,
acronym,
fieldset {
	border: 0;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
	-ms-interpolation-mode: bicubic;
}

ul li {
	list-style-type: none;
}

*,
*:before,
*:after {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

body {
	color: #221814;
	text-align: left;
	line-height: 1.8;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

/*---------------------------------------------
	リンク
  ---------------------------------------------*/
.main a {
	text-decoration: underline;
	color: #221814;
	outline: none;
	-moz-transition: color 0.3s cubic-bezier(0.17, 0.22, 0.71, 0.83);
	-webkit-transition: color 0.3s cubic-bezier(0.17, 0.22, 0.71, 0.83);
	transition: color 0.3s cubic-bezier(0.17, 0.22, 0.71, 0.83);
}

html:not(.sp) .main a:hover {
	color: #221814;
}

/*リンク無効*/
.nolink {
	pointer-events: none;
	font-size: 19px;
	font-weight: bold;
}

.tab-ir-press {
	margin-right: 0;
	background: #f5f5f5;
	color: #02040b;
	padding-top: 30px !important;
}

/* 20200110 */
@media (min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}

/* 20200110 */

/*---------------------------------------------
	メインコンテンツ
  ---------------------------------------------*/
#wrapper {
	min-width: 320px;
	overflow: hidden;
}

main {
	display: block;
}

.main .content {
	padding-top: 0;
	padding-bottom: 0;
	background-color: transparent;
}

.main .content:not([class*="bg-"])+.content:not([class*="bg-"]) {
	padding-top: 0;
}

.row {
	position: relative;
	max-width: 1170px;
	margin: 0 auto;
	padding: 0 20px;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

.row .row {
	padding: 0;
}

.anchor:before {
	content: "";
	display: block;
	margin-top: -70px;
	/* 固定ヘッダーの高さ */
	padding-top: 70px;
}

/*---------------------------------------------
	強制指定
  ---------------------------------------------*/
/* ----- 上下左右中央寄せ ----- */
.main .left {
	text-align: left !important;
}

.main .center {
	text-align: center !important;
}

.main .right {
	text-align: right !important;
}

.main .top {
	vertical-align: top !important;
}

.main .middle {
	vertical-align: middle !important;
}

.main .bottom {
	vertical-align: bottom !important;
}

/* ----- 表示／非表示 ----- */
@media screen and (min-width: 768px),
print {
	.main .show-sp {
		display: none !important;
	}
}

/* ----- 文字サイズ ----- */
.main .l {
	font-size: 1.06em !important;
}

.main .m {
	font-size: 0.88em !important;
}

.main .s {
	font-size: 0.75em !important;
}

/* ----- 文字装飾 ----- */
.main .normal {
	font-weight: normal !important;
}

.winChrome .main .normal {
	font-weight: 500 !important;
}

.main .bold {
	font-weight: bold !important;
}

.main .italic {
	font-style: italic !important;
}

.main .oblique {
	font-style: oblique !important;
}

/* ----- 幅 ----- */
.main .w50 {
	width: 50px !important;
}

.main .w60 {
	width: 60px !important;
}

.main .w70 {
	width: 70px !important;
}

.main .w80 {
	width: 80px !important;
}

.main .w90 {
	width: 90px !important;
}

.main .w100 {
	width: 100px !important;
}

.main .w110 {
	width: 110px !important;
}

.main .w120 {
	width: 120px !important;
}

.main .w130 {
	width: 130px !important;
}

.main .w140 {
	width: 140px !important;
}

.main .w150 {
	width: 150px !important;
}

.main .w160 {
	width: 160px !important;
}

.main .w170 {
	width: 170px !important;
}

.main .w180 {
	width: 180px !important;
}

.main .w190 {
	width: 190px !important;
}

.main .w200 {
	width: 200px !important;
}

/* ----- 下余白 ----- */
.main .mb0 {
	margin-bottom: 0 !important;
}

.main .mb10 {
	margin-bottom: 10px !important;
}

.main .mb20 {
	margin-bottom: 20px !important;
}

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

.main .mb38 {
	margin-bottom: 38px !important;
}

.main .mb40 {
	margin-bottom: 40px !important;
}

.main .mb50 {
	margin-bottom: 50px !important;
}

.main .mb60 {
	margin-bottom: 60px !important;
}

.main .mb70 {
	margin-bottom: 70px !important;
}

.main .mb80 {
	margin-bottom: 80px !important;
}

.main .mb90 {
	margin-bottom: 90px !important;
}

.main .mb100 {
	margin-bottom: 100px !important;
}

.main .mt70 {
	margin-top: 70px !important;
}

/* ----- 背景色 ----- */
.main .bg-white {
	background-color: #fff !important;
}

/* 白 */
.main .bg-light-gray {
	background-color: #f5f5f5 !important;
}

/* ライトグレー */
.main .bg-gray {
	background-color: #e8e7e6 !important;
}

/* グレー */
.main .bg-dark {
	background-color: #434c4d !important;
}

/* ダークグレー */
.main .bg-color0 {
	background-color: #ff5c00 !important;
}

/* 青緑 */
.main .bg-color1 {
	background-color: #b2c473 !important;
}

/* 黄緑 */
.main .bg-color2 {
	background-color: #efa55e !important;
}

/* オレンジ */
.main .bg-color3 {
	background-color: #f2646e !important;
}

/* 赤 */
.main .bg-blue {
	background-color: #373582 !important;
}

/* 青 */
.main .bg-gradation1 {
	/* グラデーション（ピンク－青紫） */
	background: #f79be5 !important;
	background: -moz-linear-gradient(45deg, #f79be5 0, #7e88e8 100%) !important;
	background: -webkit-linear-gradient(45deg, #f79be5 0, #7e88e8 100%) !important;
	background: linear-gradient(45deg, #f79be5 0, #7e88e8 100%) !important;
}

.main .bg-img {
	background-repeat: no-repeat;
	background-position: center center;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
}

/* ----- 文字色 - 白 ----- */
.main .txt-white * {
	color: #fff !important;
}

.txt-red {
	color: #cc0000;
}

/*---------------------------------------------
	[CL] カラム
  ---------------------------------------------*/
.col-set {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: calc(100% + 30px);
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.no-gutter {
	width: 100%;
}

.row .no-gutter {
	margin-bottom: 20px;
}

.col1-2 {
	width: calc(50% - 30px);
}

.col1-3 {
	width: calc(1 / 3 * 100% - 30px);
}

.col2-3 {
	width: calc(2 / 3 * 100% - 30px);
}

.col1-4 {
	width: calc(25% - 30px);
}

.col3-4 {
	width: calc(75% - 30px);
}

.col1-5 {
	width: calc(20% - 30px);
}

.col1-6 {
	width: calc(1 / 6 * 100% - 30px);
}

.no-gutter>.col1-2 {
	width: 50%;
}

.no-gutter>.col1-3 {
	width: calc(1 / 3 * 100%);
}

.no-gutter>.col2-3 {
	width: calc(2 / 3 * 100%);
}

.no-gutter>.col1-4 {
	width: 25%;
}

.no-gutter>.col3-4 {
	width: 75%;
}

.no-gutter>.col1-5 {
	width: 20%;
}

.no-gutter>.col1-6 {
	width: calc(1 / 6 * 100%);
}

.col1-2,
.col1-3,
.col2-3,
.col1-4,
.col3-4,
.col1-5,
.col1-6 {
	margin-right: 30px;
}

.no-gutter>.col1-2,
.no-gutter>.col1-3,
.no-gutter>.col2-3,
.no-gutter>.col1-4,
.no-gutter>.col3-4,
.no-gutter>.col1-5,
.no-gutter>.col1-6 {
	margin-right: 0;
}

/*---------------------------------------------
	[HD] 見出し
  ---------------------------------------------*/
.main h2.heading0 {
	color: #eb9300;
	font-family: "Noto Sans Japanese";
	font-weight: 700;
	font-size: 2rem;
	line-height: 1.45;
	margin-bottom: 30px;
}

.main h2:not([class*="heading"]) {
	/*position: relative;*/
	/*padding-top: 13px;
  padding-left: 35px;*/
	padding: 13px 0 13px 35px;
	font-family: "Noto Sans Japanese";
	font-weight: 700;
	/*font-size: 3.2rem;*/
	font-size: 3rem;
	line-height: 1.45;
	margin-bottom: 45px;
	border-left: 1px solid #000;
}

/*.main h2:not([class*="heading"])::after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 60px;
  background: #221814;
  content: "";
}*/
.main h2.heading1 {
	margin-bottom: 35px;
	font-family: "Noto Sans Japanese";
	font-size: 3.4rem;
	font-weight: 700;
	line-height: 1.35;
}

.main h2.heading4 {
	margin-bottom: 30px;
	font-family: "Noto Sans Japanese";
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.35;
	text-align: center;
}

.main h3:not([class*="heading"]),
.main .heading2 {
	font-family: "Noto Sans Japanese";
	font-weight: 700;
	/*font-size: 2.4rem;*/
	font-size: 2.3rem;
	line-height: 1.3em;
	margin-bottom: 15px;
}

.main h3 a {
	color: #221814;
}

.main h4:not([class*="heading"]),
.main .heading3 {
	margin-bottom: 20px;
	font-family: "Noto Sans Japanese";
	font-weight: 700;
	font-size: 1.6rem;
	line-height: 1.5em;
}

.main h5 a {
	color: #222;
}

.main h5:not([class*="heading"]),
.main .heading4 {
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.64em;
	margin-bottom: 40px;
}

.main h6 a {
	color: #222;
}

.main h6:not([class*="heading"]),
.main .heading5 {
	font-weight: bold;
	font-size: 1.4rem;
	line-height: 1.64em;
	margin-bottom: 40px;
}

.main h2+h3,
.main h2+h4,
.main h3+h4,
.main h2+h5,
.main h3+h5,
.main h4+h5,
.main h2+h6,
.main h3+h6,
.main h4+h6,
.main h5+h6,
.main h2+[class*="heading"],
.main h3+[class*="heading"],
.main h4+[class*="heading"],
.main h5+[class*="heading"],
.main h6+[class*="heading"],
.main [class*="heading"]+h2,
.main [class*="heading"]+h3,
.main [class*="heading"]+h4,
.main [class*="heading"]+h5,
.main [class*="heading"]+h6,
.main [class*="heading"]+[class*="heading"],
.main h2:first-child,
.main h3:first-child,
.main h4:first-child,
.main h5:first-child,
.main h6:first-child,
.main [class*="heading"]:first-child {
	margin-top: 0;
}

.main .col-set+h2 {
	margin-top: 30px;
}

.main .col-set+h3 {
	margin-top: 20px;
}

.main .col-set+h4 {
	margin-top: 10px;
}

.main .col-set+h5 {
	margin-top: 0;
}

.main .col-set+h6 {
	margin-top: 0;
}

.main .col-set+.heading0 {
	margin-top: 30px;
}

.main .col-set+.heading1 {
	margin-top: 30px;
}

.main .col-set+.heading2 {
	margin-top: 20px;
}

.main .col-set+.heading3 {
	margin-top: 10px;
}

.main .col-set+.heading4 {
	margin-top: 0;
}

.main .col-set+.heading5 {
	margin-top: 0;
}

/* 文字色 - 白 */
.main .txt-white h2:not([class*="heading"]):after,
.main .txt-white h3:not([class*="heading"]):after,
.main .txt-white h4:not([class*="heading"]):after,
.main .txt-white .heading0:after,
.main .txt-white .heading1:after,
.main .txt-white .heading2:after,
.main .txt-white .heading3:after,
.main .txt-white ul li:before {
	background-color: #fff;
}

.main .txt-white h3:not([class*="heading"]) {
	border-bottom-color: rgba(255, 255, 255, 0.2);
}

.main h1 a,
.main h2 a,
.main h3 a,
.main h4 a,
.main h5 a,
.main h6 a {
	text-decoration: none;
}

/*---------------------------------------------
	[TX] テキスト
  ---------------------------------------------*/
.main p {
	margin-bottom: 20px;
}

.main b,
.main strong {
	color: #000;
	font-weight: bold;
}

.main .caution {
	color: #f2646e !important;
}

.main .copy {
	color: #000;
	font-size: 1.63rem;
	font-weight: bold;
	line-height: 1.6;
}

/* ----- 注記 ----- */
.main .note {
	position: relative;
	padding-left: 1.4em;
}

.main .note-num {
	position: relative;
	padding-left: 2.4em;
	font-size: 1.2rem;
}

.main .note+.note,
.main .note-num+.note-num {
	margin-top: -15px;
}

/* 20200110 */
.main .unit02 .note+.note {
	margin-top: 0;
}

/* 20200110 */

.main .note.s {
	line-height: 1.5;
}

.main .note.s+.note.s {
	margin-top: -15px;
}

.main .note.s:last-child {
	margin-bottom: 0;
}

.main .note:before,
.main .note-num:before {
	content: "※";
	position: absolute;
	width: auto;
	height: auto;
	top: 0;
	left: 0;
	margin: 0;
	background-color: transparent !important;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
}

.main .note-num:before {
	content: "※"attr(data-num);
	font-weight: 700;
}

/* ----- 省略 ----- */
.main .txt-ellipsis {
	overflow: hidden;
}

.main .txt-ellipsis:not([data-line]),
.main .txt-ellipsis[data-line="1"] {
	white-space: nowrap;
	text-overflow: ellipsis;
}

.main .txt-ellipsis[data-line]:not([data-line="1"]) {
	display: -webkit-box;
	-webkit-box-orient: vertical;
}

.main .txt-ellipsis[data-line="2"] {
	height: 3.6em;
	-webkit-line-clamp: 2;
}

.main .txt-ellipsis[data-line="3"] {
	height: 5.4em;
	-webkit-line-clamp: 3;
}

.main .txt-ellipsis[data-line="4"] {
	height: 7.2em;
	-webkit-line-clamp: 4;
}

.main .txt-ellipsis[data-line="5"] {
	height: 9em;
	-webkit-line-clamp: 5;
}

.main [class*="panel"] .txt-ellipsis[data-line="2"] {
	height: 3.2em;
}

.main [class*="panel"] .txt-ellipsis[data-line="3"] {
	height: 4.8em;
}

.main [class*="panel"] .txt-ellipsis[data-line="4"] {
	height: 6.4em;
}

.main [class*="panel"] .txt-ellipsis[data-line="5"] {
	height: 8em;
}

.letter_spacing {
	letter-spacing: -0.5px;
}

/*---------------------------------------------
	[HR] 区切り線
  ---------------------------------------------*/
.main hr {
	clear: both;
	margin-bottom: 20px;
	color: #fff;
	background: none transparent;
	border-top: 0px none transparent;
	border-right: 0px none transparent;
	border-left: 0px none transparent;
	border-bottom: 1px solid #e5e9e9;
}

/*---------------------------------------------
	[IG] 画像
  ---------------------------------------------*/
.main .img {
	margin-bottom: 20px;
	text-align: center;
}

.main .img>a {
	position: relative;
	display: inline-block;
	max-width: 100%;
	vertical-align: top;
	overflow: hidden;
}

.main .img .modal-video:before,
.main .modal-video .img:before {
	content: "";
	position: absolute;
	z-index: 1;
	display: block;
	width: 64px;
	height: 64px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background-image: url(../images/icon_play.png);
	background-repeat: no-repeat;
	-moz-background-size: 100%;
	-webkit-background-size: 100%;
	background-size: 100%;
}

.main .img.full img {
	width: 100%;
}

/* ホバーエフェクト */
.main .img .modal-video:after,
.main .modal-video .img:after {
	opacity: 0.5 !important;
}

html:not(.sp) .main .img>a:hover:after,
html:not(.sp) .main a:hover .img:after {
	opacity: 0.5;
}

/* ----- [IG2] 画像 > キャプションあり ----- */
.main figure {
	margin-bottom: 20px;
}

.main .caption {
	display: block;
	margin-top: -10px;
	margin-left: auto;
	margin-right: auto;
	font-size: 1.2rem;
	color: #777;
}

.main .left .caption {
	margin-left: 0;
}

.main .right .caption {
	margin-right: 0;
}

.main .img .caption {
	margin-top: 10px;
}

/* ----- [IG3] 画像 > 画像＋テキスト ----- */
.main .img-set,
.main .thumb-set {
	overflow: hidden;
}

.main .img-set .img,
.main .thumb-set .img {
	float: left;
	max-width: 50%;
	margin-right: 15px;
	padding-right: 15px;
}

.main .img-set .img.right,
.main .thumb-set .img.right {
	float: right;
	max-width: 50%;
	margin-right: 0;
	padding-right: 0;
	margin-left: 15px;
	padding-left: 15px;
}

.main .thumb-set>.img+.txt {
	overflow: hidden;
}

/*---------------------------------------------
	[LT] リスト
  ---------------------------------------------*/
.main ul,
.main ol {
	margin-bottom: 20px;
}

.main ol {
	padding: 0;
}

.main ul ul,
.main ol ol,
.main ol ul {
	margin: 10px 0 0;
}

.main ul li {
	position: relative;
	margin-bottom: 10px;
	padding: 0 0 0 25px;
}

.main ol {
	font-weight: 700;
}

.main ol li {
	margin: 0 0 10px 1.4em;
	padding: 0 0 0 5px;
	font-weight: 500;
}

.main ol>li::before {
	width: 2em;
	font-weight: 700;
	text-align: center;
}

.main ul li:last-of-type,
.main ol li:last-of-type {
	margin-bottom: 0;
}

.main ul li:before {
	content: "";
	position: absolute;
	display: block;
	width: 8px;
	height: 8px;
	top: 0.75em;
	left: 0.5em;
	margin: -2px 0 0 -2px;
	background-color: #221814;
	-moz-border-radius: 100%;
	-webkit-border-radius: 100%;
	border-radius: 100%;
}

.main ul.col-set {
	margin-bottom: 0;
}

.main ul.col-set li {
	margin-bottom: 30px;
	padding-left: 0;
}

.main ul.col-set li:before {
	display: none;
}

/* ------ li階層　------- */
.main ul>ul,
.main ul>ol,
.main ol>ul,
.main ol>ol {
	margin-left: 25px;
	margin-bottom: 10px;
}

.main ul>ul li,
.main ul>ol li,
.main ol>ul li,
.main ol>ol li {
	margin-bottom: 5px;
	padding-left: 25px;
}

.main ul>ul li::before,
.main ul>ol li::before,
.main ol>ul li::before,
.main ol>ol li::before {
	width: 6px;
	height: 6px;
}

.main ul li>ul li {
	padding-left: 20px;
}

.main ul li>ul li::before {
	width: 6px;
	height: 6px;
}

.main ol>ol {
	margin-left: 25px;
}

.main ol>ol li {
	padding-left: 10px;
}

.main ol>ul li {
	margin-left: 6px;
}

.main ol li ul li {
	margin-left: 0;
	padding-left: 1.2em;
}

.main ol li ul li::before {
	left: 0.4em;
}

/* ----- [LT3] リスト > 定義リスト ----- */
.main dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	margin-bottom: 20px;
	overflow: hidden;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
}

.main dl.border-set {
	border-bottom: solid 1px #e5e9e9;
}

.main dt {
	width: 200px;
	padding: 0 0 10px;
	font-weight: bold;
	color: #000;
}

.main .w50~dt {
	width: 50px;
}

.main .w60~dt {
	width: 60px;
}

.main .w70~dt {
	width: 70px;
}

.main .w80~dt {
	width: 80px;
}

.main .w90~dt {
	width: 90px;
}

.main .w100~dt {
	width: 100px;
}

.main .w110~dt {
	width: 110px;
}

.main .w120~dt {
	width: 120px;
}

.main .w130~dt {
	width: 130px;
}

.main .w140~dt {
	width: 140px;
}

.main .w150~dt {
	width: 150px;
}

.main .w160~dt {
	width: 160px;
}

.main .w170~dt {
	width: 170px;
}

.main .w180~dt {
	width: 180px;
}

.main .w190~dt {
	width: 190px;
}

.main .w200~dt {
	width: 200px;
}

.main dl.border-set>dt {
	border-top: solid 1px #e5e9e9;
	padding: 20px 0;
}

.main dd {
	width: calc(100% - 200px);
	padding: 0 0 10px 30px;
}

.main .w50~dd {
	width: calc(100% - 50px);
}

.main .w60~dd {
	width: calc(100% - 60px);
}

.main .w70~dd {
	width: calc(100% - 70px);
}

.main .w80~dd {
	width: calc(100% - 80px);
}

.main .w90~dd {
	width: calc(100% - 90px);
}

.main .w100~dd {
	width: calc(100% - 100px);
}

.main .w110~dd {
	width: calc(100% - 110px);
}

.main .w120~dd {
	width: calc(100% - 120px);
}

.main .w130~dd {
	width: calc(100% - 130px);
}

.main .w140~dd {
	width: calc(100% - 140px);
}

.main .w150~dd {
	width: calc(100% - 150px);
}

.main .w160~dd {
	width: calc(100% - 160px);
}

.main .w170~dd {
	width: calc(100% - 170px);
}

.main .w180~dd {
	width: calc(100% - 180px);
}

.main .w190~dd {
	width: calc(100% - 190px);
}

.main .w200~dd {
	width: calc(100% - 200px);
}

.main dl.border-set>dd {
	border-top: solid 1px #e5e9e9;
	padding: 20px 0 20px 30px;
}

.main dl:not(.border-set) dt:last-of-type,
.main dl:not(.border-set) dd:last-of-type {
	padding-bottom: 0;
}

.main dl p:last-child,
.main dl ul:last-child,
.main dl ol:last-child,
.main dl dl:last-child {
	margin-bottom: 0;
}

/*---------------------------------------------
	[LK1] アイコンリンク
  ---------------------------------------------*/
.main .link-icon:not(li)+.link-icon {
	margin-top: -10px;
}

.main .link-icon a,
.main a .link-icon {
	position: relative;
	display: inline-block;
	font-weight: bold;
	text-decoration: none;
}

.main a .link-icon {
	display: block;
}

.main .link-icon a:after,
.main a .link-icon:after {
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	margin: -2px 0 0 2px;
	vertical-align: middle;
	background-image: url(../images/icon_link.png);
	background-repeat: no-repeat;
	-moz-background-size: 480px 240px;
	-webkit-background-size: 480px 240px;
	background-size: 480px 240px;
}

.main .link-icon a:not([class*="icon-"]):after,
.main a .link-icon:not([class*="icon-"]):after {
	-moz-transition: -moz-transform 0.2s linear;
	-webkit-transition: -webkit-transform 0.2s linear;
	transition: transform 0.2s linear;
}

html:not(.sp) .main .link-icon a:not([class*="icon-"]):hover:after,
html:not(.sp) .main a:hover .link-icon:not([class*="icon-"]):after {
	-moz-transform: translate3d(3px, 0, 0);
	-webkit-transform: translate3d(3px, 0, 0);
	transform: translate3d(3px, 0, 0);
}

.main .link-icon .icon-download:after,
.main a .link-icon.icon-download:after {
	background-position: -24px 0;
}

.main .link-icon .icon-window:after,
.main a .link-icon.icon-window:after {
	background-position: -48px 0;
}

.main .link-icon .icon-pdf:after,
.main a .link-icon.icon-pdf:after {
	background-position: -72px 0;
}

.main .link-icon .icon-enlarge:after,
.main a .link-icon.icon-enlarge:after {
	background-position: -168px 0;
}

.main .link-icon .icon-search:after,
.main a .link-icon.icon-search:after {
	background-position: -192px 0;
}

.main .link-icon .icon-contact:after,
.main a .link-icon.icon-contact:after {
	background-position: -216px 0;
}

.main .link-icon .icon-play:after,
.main a .link-icon.icon-play:after {
	background-position: -240px 0;
}

.main .link-icon .icon-anchor:after,
.main a .link-icon.icon-anchor a:after {
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	-moz-transition: -moz-transform 0.2s linear;
	-webkit-transition: -webkit-transform 0.2s linear;
	transition: transform 0.2s linear;
}

html:not(.sp) .main .link-icon .icon-anchor:hover:after,
html:not(.sp) .main a:hover .link-icon.icon-anchor a:after {
	-moz-transform: translate3d(0, 3px, 0) rotate(90deg);
	-webkit-transform: translate3d(0, 3px, 0) rotate(90deg);
	transform: translate3d(0, 3px, 0) rotate(90deg);
}

.main li.link-icon {
	padding-left: 0;
}

.main li.link-icon:before {
	display: none;
}

/* 文字色 - 白 */
.main .txt-white .link-icon a:after,
.main .txt-white a .link-icon:after {
	background-position-y: -144px !important;
}

/*---------------------------------------------
	[LK2] 横並びリンク
  ---------------------------------------------*/
.main .link-horizontal {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	margin-bottom: 10px;
	line-height: 1.6;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.main .link-horizontal a {
	position: relative;
	margin: 0 30px 10px 0;
}

.main .link-horizontal a:last-child {
	margin-right: 15px;
}

.main .link-horizontal a:not(:last-child):before {
	content: "";
	position: absolute;
	display: block;
	width: 1px;
	height: 1em;
	top: 0.25em;
	right: -15px;
	vertical-align: top;
	background-color: rgba(0, 0, 0, 0.15);
}

.main .link-horizontal a {
	text-decoration: none;
}

html:not(.sp) .main .link-horizontal a:hover {
	text-decoration: underline;
}

/* 文字色 - 白 */
.main .txt-white .link-horizontal a:not(:last-child):before {
	background-color: rgba(255, 255, 255, 0.2);
}

/*---------------------------------------------
	[TG] タグ／ラベル
  ---------------------------------------------*/
.main .label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.main .label {
	margin: 0 -10px 10px 0;
}

.main .label.center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.main .label.right {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

.main .label span {
	display: block;
	margin: 0 10px 10px 0;
	padding: 8px 10px;
	font-size: 0.81rem;
	line-height: 1;
	text-align: center;
}

.label-inline {
	display: inline-block;
	margin: 0 10px;
	padding: 4px 6px 3px;
	font-size: 0.69rem;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	text-transform: uppercase;
	vertical-align: middle;
}

/* 色 */
.main .label span,
.label-inline {
	color: #fff !important;
	background-color: #ff5c00;
}

html:not(.sp) .main .tag a:hover:before {
	opacity: 0.2;
}

.main .label span.bg-white,
.main .label span.bg-light,
.main .label span.bg-gray,
.label-inline.bg-white,
.label-inline.bg-light,
.label-inline.bg-gray {
	color: #555 !important;
}

/*---------------------------------------------
	[BT] ボタン
  ---------------------------------------------*/
/* 「ページ内リンク」アイコン */
/* ----- 色 ----- */
/* ゴーストボタン */
/* ゴーストボタン - 黄緑 */
/* ゴーストボタン - オレンジ */
/* ゴーストボタン - 赤 */
/* ゴーストボタン - ダークグレー */
/* ゴーストボタン - 白 */
/*---------------------------------------------
	[BT3] シェアボタン
  ---------------------------------------------*/
.main .btn-share {
	margin: 0 -10px 10px 0;
	text-align: right;
}

.main .btn-share>div {
	display: inline-block;
	height: 20px;
	margin: 0 10px 10px 0;
	text-align: left;
	vertical-align: top;
	overflow: hidden;
}

.main .btn-share .share-facebook .fb-like>span {
	vertical-align: top !important;
}

/*---------------------------------------------
	[BT4] メニューボタン
  ---------------------------------------------*/
#btn-menu {
	position: relative;
	z-index: 1000;
	width: 50px;
	height: 50px;
	background-color: #ff5c00;
	overflow: hidden;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-moz-transition: background-color 0.2s linear;
	-webkit-transition: background-color 0.2s linear;
	transition: background-color 0.2s linear;
}

html:not(.sp) #btn-menu:hover {
	background-color: #777;
}

#btn-menu button {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
	border: 0 none;
	background-color: transparent;
	cursor: pointer;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

#btn-menu:after {
	content: "";
	position: absolute;
	z-index: 1;
	display: block;
	width: 18px;
	height: 2px;
	top: 17px;
	right: 16px;
	background-color: #fff;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	-moz-transition: -moz-transform 0.3s ease-out, top 0.3s ease-out, width 0.3s ease-out;
	-webkit-transition: -webkit-transform 0.3s ease-out, top 0.3s ease-out, width 0.3s ease-out;
	transition: transform 0.3s ease-out, top 0.3s ease-out, width 0.3s ease-out;
}

#btn-menu button:before {
	content: "";
	position: absolute;
	z-index: 1;
	display: block;
	width: 18px;
	height: 2px;
	top: 24px;
	right: 16px;
	background-color: #fff;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	-moz-transition: width 0.3s ease-out, right 0.3s ease-out;
	-webkit-transition: width 0.3s ease-out, right 0.3s ease-out;
	transition: width 0.3s ease-out, right 0.3s ease-out;
}

#btn-menu button:after {
	content: "";
	position: absolute;
	z-index: 1;
	display: block;
	width: 18px;
	height: 2px;
	top: 31px;
	right: 16px;
	background-color: #fff;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	-moz-transition: -moz-transform 0.3s ease-out, top 0.3s ease-out;
	-webkit-transition: -webkit-transform 0.3s ease-out, top 0.3s ease-out;
	transition: transform 0.3s ease-out, top 0.3s ease-out;
}

html:not(.sp) #btn-menu:hover:after {
	width: 14px;
}

html:not(.sp) #btn-menu button:hover:before {
	width: 10px;
}

#btn-menu.on:after {
	width: 18px !important;
	top: 24px;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#btn-menu.on button:before {
	width: 0 !important;
	right: 25px;
}

#btn-menu.on button:after {
	top: 24px;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/*---------------------------------------------
	[BX] ボックス
  ---------------------------------------------*/
.main .box {
	margin-bottom: 30px;
	padding: 30px 30px 10px;
	background-color: #f2f4f4;
	overflow: hidden;
}

.main .box .heading {
	font-weight: bold;
	font-size: 1.13rem;
	line-height: 1.6;
	background-color: rgba(0, 0, 0, 0.07);
}

.main .box .heading:first-child {
	margin: -30px -30px 30px;
	padding: 12px 30px;
}

/*---------------------------------------------
	[FR] 枠
  ---------------------------------------------*/
.main .frame {
	position: relative;
	margin-bottom: 30px;
	padding: 30px 30px 10px;
	background: none transparent !important;
	border: solid 10px #e5e9e9;
}

.main .frame .heading {
	font-weight: bold;
	font-size: 1.13rem;
	line-height: 1.6;
	color: #000;
	background-color: #e5e9e9;
}

.main .frame .heading:first-child {
	margin: -30px -30px 30px;
	padding: 2px 30px 12px;
}

/* ----- 色変更 ----- */
.main .frame.bg-white {
	border-color: #fff;
}

.main .frame.bg-light {
	border-color: #f2f4f4;
}

.main .frame.bg-gray {
	border-color: #e5e9e9;
}

.main .frame.bg-dark {
	border-color: #434c4d;
}

.main .frame.bg-color0 {
	border-color: #ff5c00;
}

.main .frame.bg-color1 {
	border-color: #b2c473;
}

.main .frame.bg-color2 {
	border-color: #efa55e;
}

.main .frame.bg-color3 {
	border-color: #f2646e;
}

.main .frame.bg-gradation1 {
	border-top-color: transparent;
	border-bottom-color: transparent;
	border-left-color: #f79be5;
	border-right-color: #7e88e8;
}

.main .frame.bg-gradation1:before,
.main .frame.bg-gradation1:after {
	content: "";
	position: absolute;
	display: block;
	width: calc(100% + 20px);
	height: 10px;
	left: -10px;
	background: -moz-linear-gradient(left, #f79be5 0, #7e88e8 100%);
	background: -webkit-linear-gradient(left, #f79be5 0, #7e88e8 100%);
	background: linear-gradient(to right, #f79be5 0, #7e88e8 100%);
}

.main .frame.bg-gradation1:before {
	top: -10px;
}

.main .frame.bg-gradation1:after {
	bottom: -10px;
}

.main .frame.bg-img {
	border-image: 10 stretch;
}

.main .frame.bg-white .heading {
	border-color: #fff;
}

.main .frame.bg-light .heading {
	color: #fff;
	background-color: #f2f4f4;
}

.main .frame.bg-gray .heading {
	color: #fff;
	background-color: #e5e9e9;
}

.main .frame.bg-dark .heading {
	color: #fff;
	background-color: #434c4d;
}

.main .frame.bg-color0 .heading {
	color: #fff;
	background-color: #ff5c00;
}

.main .frame.bg-color1 .heading {
	color: #fff;
	background-color: #b2c473;
}

.main .frame.bg-color2 .heading {
	color: #fff;
	background-color: #efa55e;
}

.main .frame.bg-color3 .heading {
	color: #fff;
	background-color: #f2646e;
}

.main .frame.bg-gradation1 .heading {
	color: #fff;
	background: -moz-linear-gradient(left, #f79be5 0, #7e88e8 100%);
	background: -webkit-linear-gradient(left, #f79be5 0, #7e88e8 100%);
	background: linear-gradient(to right, #f79be5 0, #7e88e8 100%);
}

/*---------------------------------------------
	[PL] パネル
  ---------------------------------------------*/
/* ----- [PL1] パネル > 画像上 ----- */
.main .panel-vertical {
	position: relative;
	margin-bottom: 30px;
	background-color: #f2f4f4;
}

.main .panel-vertical>a {
	display: block;
	text-decoration: none;
}

.main .panel-vertical>a:before {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.main .panel-vertical .img {
	position: relative;
	margin: 0;
	overflow: hidden;
}

.main .panel-vertical .img img {
	width: 100%;
}

.main .panel-vertical .txt {
	position: relative;
	padding: 20px 20px 0;
}

.main .panel-vertical p {
	font-size: 0.88rem;
	line-height: 1.6;
	-moz-transition: color 0.2s linear;
	-wenkit-transition: color 0.2s linear;
	transition: color 0.2s linear;
}

.main .panel-vertical p:not(.link-icon) {
	color: #555;
}

.main .panel-vertical .date {
	font-size: 0.81rem;
	color: #999;
}

.main .panel-vertical .heading {
	margin-bottom: 20px;
	padding: 0;
	font-size: 0.94rem;
	font-weight: bold;
	color: #000;
	line-height: 1.6;
}

.main .panel-vertical .badge {
	margin-left: 30px;
	margin-right: 30px;
}

.main .panel-vertical .badge.center {
	left: 0;
	right: 0;
	margin-left: auto;
	margin-right: auto;
}

.main .panel-vertical .badge.right {
	left: auto;
	right: 0;
}

.main .panel-vertical .badge+.txt {
	padding-top: 40px;
}

.main .panel-vertical .tag,
.main .panel-vertical .link-horizontal {
	position: relative;
	margin: 0;
	line-height: 1;
	border-top: solid 1px #fff;
	background-color: inherit;
}

.main .panel-vertical .tag {
	padding: 15px 12px 7px 20px;
}

.main .panel-vertical .link-horizontal {
	padding: 15px 10px 5px 20px;
}

/* 文字色 - 白 */
.main .panel-vertical.txt-white .tag,
.main .panel-vertical.txt-white .link-horizontal {
	border-top: solid 1px rgba(255, 255, 255, 0.2);
}

/* ----- [PL2] パネル > 画像左右 ----- */
.main .panel-horizontal {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	background-color: #f2f4f4;
	overflow: hidden;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
}

.main .row .panel-horizontal {
	margin-bottom: 30px;
}

.main .panel-horizontal>a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	text-decoration: none;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
}

/* for IE11 */
.main .panel-horizontal:before,
.main .panel-horizontal>a:before {
	content: "";
	display: block;
	height: 300px;
	/* パネルの最小高 */
}

.main .panel-horizontal:not(.txt-white) p:not(.link-icon) {
	color: #555;
}

.main .panel-horizontal .img {
	position: relative;
	z-index: 1;
	width: 50%;
	margin: 0;
	overflow: hidden;
}

.main .panel-horizontal .img.right {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 2;
	-webkit-order: 2;
	order: 2;
}

.main .panel-horizontal .img div {
	position: absolute;
	top: 0;
	left: 0;
}

.main .panel-horizontal .img>a {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

.main .panel-horizontal .txt {
	position: relative;
	z-index: 1;
	width: 50%;
	margin: 0;
	padding: 30px 30px 10px;
}

.main .panel-horizontal .img.right+.badge+.txt {
	padding-right: 40px;
}

.main .panel-horizontal .img:not(.right)+.badge+.txt {
	padding-left: 40px;
}

.main .panel-horizontal .col3-4 {
	width: 75%;
}

.main .panel-horizontal .col2-3 {
	width: 66.66666666%;
}

.main .panel-horizontal .col1-2 {
	width: 50%;
}

.main .panel-horizontal .col1-3 {
	width: 33.33333333%;
}

.main .panel-horizontal .col1-4 {
	width: 25%;
}

.main .panel-horizontal h2:not([class*="heading"]),
.main .panel-horizontal .heading0,
.main .panel-horizontal .heading1 {
	font-size: 1.5rem;
}

.main .panel-horizontal p {
	line-height: 1.6;
}

.main .panel-horizontal .date {
	font-size: 0.81rem;
	color: #999;
}

.main .panel-horizontal .txt .heading {
	margin-bottom: 20px;
	padding: 0;
	font-size: 1.13rem;
	font-weight: bold;
	color: #000;
	line-height: 1.6;
}

.main .panel-horizontal .badge {
	top: 50%;
}

.main .panel-horizontal .img:not(.right)+.badge {
	left: 50%;
}

.main .panel-horizontal .img.col3-4:not(.right)+.badge {
	left: 75%;
}

.main .panel-horizontal .img.col2-3:not(.right)+.badge {
	left: 66.66666666%;
}

.main .panel-horizontal .img.col1-2:not(.right)+.badge {
	left: 50%;
}

.main .panel-horizontal .img.col1-3:not(.right)+.badge {
	left: 33.33333333%;
}

.main .panel-horizontal .img.col1-4:not(.right)+.badge {
	left: 25%;
}

.main .panel-horizontal .img.right+.badge {
	left: 50%;
}

.main .panel-horizontal .img.col3-4.right+.badge {
	left: 25%;
}

.main .panel-horizontal .img.col2-3.right+.badge {
	left: 33.33333333%;
}

.main .panel-horizontal .img.col1-2.right+.badge {
	left: 50%;
}

.main .panel-horizontal .img.col1-3.right+.badge {
	left: 66.66666666%;
}

.main .panel-horizontal .img.col1-4.right+.badge {
	left: 75%;
}

/* ----- [PL4] パネル > 背景画像 ----- */
.main .panel-covered {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	position: relative;
	overflow: hidden;
}

.main .col-set:not(.no-gutter) .panel-covered {
	margin-bottom: 30px;
}

.main .panel-covered>a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	text-decoration: none;
	-ms-flex-flex-item-align: stretch;
	-webkit-align-self: stretch;
	align-self: stretch;
}

/* for IE11 */
.main .panel-covered:before,
.main .panel-covered>a:before {
	content: "";
	display: block;
	height: 300px;
	/* パネルの最小高 */
}

.main .panel-covered .img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	overflow: hidden;
}

.main .panel-covered .txt {
	width: 100%;
	padding: 30px 30px 10px;
}

.main .panel-covered .txt.bottom {
	position: relative;
	margin-top: -20px;
	padding-top: 50px;
	background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50px);
	background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50px);
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50px);
}

.main .panel-covered .txt:not(.bottom):before {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.5);
}

.main .panel-covered .txt>* {
	position: relative;
}

.main .panel-covered p {
	line-height: 1.6;
}

.main .panel-covered .date {
	font-size: 0.81rem;
}

.main .panel-covered h2:not([class*="heading"]),
.main .panel-covered .heading0,
.main .panel-covered .heading1 {
	font-size: 1.5rem;
}

.main .panel-covered .heading {
	margin-bottom: 20px;
	padding: 0;
	font-size: 1.13rem;
	font-weight: bold;
	line-height: 1.6;
}

.main .panel-covered .link-horizontal {
	margin: 0 -30px -10px;
	padding: 15px 20px 5px 30px;
}

.main .panel-covered .tag {
	margin: 0 -30px -10px;
	padding: 15px 22px 7px 30px;
}

/* 文字色 - 白 */
.main .panel-covered * {
	color: #fff !important;
}

.main .panel-covered h2:not([class*="heading"]):after,
.main .panel-covered h3:not([class*="heading"]):after,
.main .panel-covered h4:not([class*="heading"]):after,
.main .panel-covered .heading0:after,
.main .panel-covered .heading1:after,
.main .panel-covered .heading2:after,
.main .panel-covered .heading3:after,
.main .panel-covered ul li:before {
	background-color: #fff;
}

.main .panel-covered h3:not([class*="heading"]) {
	border-bottom-color: rgba(255, 255, 255, 0.2);
}

.main .panel-covered .tag,
.main .panel-covered .link-horizontal {
	border-top: solid 1px rgba(255, 255, 255, 0.2);
}

.main .panel-covered .link-horizontal a:not(:last-child):before {
	background-color: rgba(255, 255, 255, 0.2);
}

.main .panel-covered .link-icon a:after,
.main .panel-covered a .link-icon:after {
	background-position-y: -144px !important;
}

/* ゴーストボタン - 白 */
.main .panel-covered .btn .ghost:not(:hover) {
	border: solid 2px rgba(255, 255, 255, 0.5);
}

.main .panel-covered .btn .ghost span:after {
	background-position-y: -144px;
}

html:not(.sp) .main .panel-covered .btn .ghost:hover {
	background-color: #fff !important;
	border: solid 2px #fff !important;
}

html:not(.sp) .main .panel-covered .btn .ghost:hover span {
	color: #434c4d !important;
}

html:not(.sp) .main .panel-covered .btn .ghost:hover span:after {
	background-position-y: -120px !important;
}

/* ----- [PL] パネル - 共通設定 ----- */
/*
.main .panel-vertical > a:before,
.main .panel-horizontal > a:after {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #000;
	opacity: 0;
	-moz-transition: opacity .2s linear;
	-wenkit-transition: opacity .2s linear;
	transition: opacity .2s linear;
}
html:not(.sp) .main .panel-vertical > a:hover:before,
html:not(.sp) .main .panel-horizontal > a:hover:after {opacity: .05;}
.main .panel-vertical.txt-white > a:before,
.main .panel-horizontal.txt-white > a:after {background-color: #fff;}
html:not(.sp) .main .panel-vertical.txt-white  > a:hover:before,
html:not(.sp) .main .panel-horizontal.txt-white  > a:hover:after {opacity: .2;}
*/
.main .panel-horizontal .img .bg-img,
.main .panel-covered .img .bg-img {
	width: 100%;
	height: 100%;
}

.main .panel-horizontal .txt.middle,
.main .panel-covered .txt.middle {
	-ms-flex-flex-item-align: center !important;
	-webkit-align-self: center !important;
	align-self: center !important;
}

.main .panel-horizontal .txt.bottom,
.main .panel-covered .txt.bottom {
	-ms-flex-flex-item-align: end !important;
	-webkit-align-self: flex-end !important;
	align-self: flex-end !important;
}

.main .panel-vertical .txt p+*,
.main .panel-horizontal .txt p+*,
.main .panel-covered .txt p+* {
	margin-top: -5px;
}

.main .panel-vertical .txt .date+*,
.main .panel-horizontal .txt .date+*,
.main .panel-covered .txt .date+*,
.main .panel-vertical .txt .heading+*,
.main .panel-horizontal .txt .heading+*,
.main .panel-covered .txt .heading+* {
	margin-top: -10px;
}

.main .panel-vertical .txt .btn,
.main .panel-horizontal .txt .btn,
.main .panel-covered .txt .btn,
.main .panel-vertical .txt .link-icon,
.main .panel-horizontal .txt .link-icon,
.main .panel-covered .txt .link-icon {
	margin-top: 0;
}

.main .panel-vertical .label,
.main .panel-horizontal .label,
.main .panel-covered .label {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	margin-bottom: 0;
}

.main .panel-vertical .txt .label,
.main .panel-horizontal .txt .label,
.main .panel-covered .txt .label {
	position: static;
	margin-bottom: 15px;
}

.main .panel-vertical .label span,
.main .panel-horizontal .label span,
.main .panel-covered .label span {
	float: left;
	display: block;
	margin: 0;
	font-size: 0.69rem;
}

.main .panel-vertical .tag a,
.main .panel-horizontal .tag a,
.main .panel-covered .tag a {
	padding: 4px 10px;
	font-size: 0.69rem;
}

.main .panel-vertical .link-horizontal a,
.main .panel-horizontal .link-horizontal a,
.main .panel-covered .link-horizontal a {
	margin-right: 20px;
	font-size: 0.81rem;
}

.main .panel-vertical .link-horizontal a:before,
.main .panel-horizontal .link-horizontal a:before,
.main .panel-covered .link-horizontal a:before {
	right: -10px;
}

.main .panel-vertical .link-horizontal a:before {
	top: 0;
}

.main .badge {
	position: absolute;
	z-index: 2;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 60px;
	height: 60px;
	margin: -30px 0 0 -30px;
	padding: 3px;
	font-size: 0.75rem !important;
	line-height: 1.4 !important;
	overflow: hidden;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.main .badge a {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 60px;
	height: 60px;
	margin: -3px;
	padding: 3px;
	text-decoration: none;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.main .badge a:after {
	content: "";
	position: absolute;
	z-index: 2;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0;
	-moz-border-radius: 100px;
	-webkit-border-radius: 100px;
	border-radius: 100px;
	-moz-transition: opacity 0.2s linear;
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
}

.main .badge img {
	display: block;
	width: calc(100% + 6px);
	max-width: none;
	margin: -3px;
}

/* 色 */
.main .badge {
	color: #fff !important;
	background-color: #ff5c00;
}

.main .badge a {
	color: #fff !important;
}

.main .badge a:after {
	background-color: #fff;
}

html:not(.sp) .main .badge a:hover:after {
	opacity: 0.2;
}

.main .badge.bg-white,
.main .badge.bg-light,
.main .badge.bg-gray,
.main .badge.bg-white a,
.main .badge.bg-light a,
.main .badge.bg-gray a {
	color: #555 !important;
}

.main .badge.bg-white a:after,
.main .badge.bg-light a:after,
.main .badge.bg-gray a:after {
	background-color: #000;
}

html:not(.sp) .main .badge.bg-white a:hover:after,
html:not(.sp) .main .badge.bg-light a:hover:after,
html:not(.sp) .main .badge.bg-gray a:hover:after {
	opacity: 0.07;
}

/*---------------------------------------------
	[TB] 表
  ---------------------------------------------*/
.main table {
	width: 100%;
	border-spacing: 0;
	border-bottom: 1px solid #4e4643;
}

.main table td {
	padding: 22px 30px 22px 30px;
	border-top: solid 1px #e5e9e9;
	border-top: solid 1px #d3d1d0;
}

.main table th {
	min-width: 7em;
	width: 33.3333%;
	padding: 22px 30px 22px 30px;
	color: #000;
	font-weight: bold;
	background-color: #e8e7e6;
	border-top: solid 1px #d3d1d0;
}

.main table thead tr:first-child th,
.main table thead+tbody tr:first-child th,
.main table thead+tbody tr:first-child td {
	border-top: none;
}

.main table thead th.center {
	border-bottom: 1px solid #d3d1d0;
}

.main table thead th {
	min-width: 7em;
	background-color: #e8e7e6;
	border-left: 0 none;
	border-bottom: 0 none;
}

.main table thead th+th {
	border-left: solid 1px #d3d1d0;
}

.main table td p:last-child,
.main table td ul:last-child,
.main table td ol:last-child,
.main table td dl:last-child {
	margin-bottom: 0;
}

.main table.table-a th:first-child {
	width: 50%;
}

/* ---------- table + * ---------- */
.main table+* {
	margin-top: 20px;
}

/* ----- table type-a ----- */
.main table.table-a {
	margin-bottom: 0;
	word-break: break-all;
}

.main table.table-a th:nth-child(2),
.main table.table-a th:nth-child(3),
.main table.table-a td {
	width: 25%;
	text-align: right;
}

.main table.table-a td:first-child,
.main table.table-a td:nth-child(2) {
	border-right: 1px solid #d3d1d0;
}

.main table.table-a thead th:last-of-type,
.main table.table-a td:last-of-type {
	border-right: none;
}

.main table.table-a tbody th {
	background: #fff;
	border-right: 1px solid #d3d1d0;
}

/* ----- col-set内の場合 ----- */
.main .col-set table.table-a th {
	padding: 15px 30px;
}

.main .col-set table.table-a td {
	padding: 15px 30px;
}

/* ----- table type-b ----- */
.main table.table-b th:first-child {
	width: 33.333%;
	padding: 10px 15px 10px 30px;
}

.main table.table-b th:nth-child(2),
.main table.table-b th:nth-child(3),
.main table.table-b th:nth-child(4),
.main table.table-b th:nth-child(5),
.main table.table-b th:nth-child(6) {
	width: 13.3333%;
	padding: 10px 15px 10px;
	text-align: center;
}

.main table.table-b th:last-of-type {
	border-right: none;
}

.main table.table-b tbody th {
	background-color: #fff;
	border-right: 1px solid #d3d1d0 !important;
}

.main table.table-b td {
	text-align: right;
}

.main table.table-b td:not(:last-of-type) {
	border-right: 1px solid #d3d1d0;
}

/* ----- table type-d ----- */
.main table.table-d th:first-child {
	width: 33.333%;
	padding: 10px 15px 10px 30px;
}

.main table.table-d th:nth-child(2),
.main table.table-d th:nth-child(3),
.main table.table-d th:nth-child(4),
.main table.table-d th:nth-child(5),
.main table.table-d th:nth-child(6) {
	width: 13.3333%;
	padding: 10px 15px 10px;
	text-align: center;
}

.main table.table-d th:last-of-type {
	border-right: none;
}

.main table.table-d tbody th {
	background-color: #fff;
	border-right: 1px solid #d3d1d0 !important;
}

.main table.table-d td {
	text-align: right;
}

.main table.table-d td:not(:last-of-type) {
	border-right: 1px solid #d3d1d0;
}

/* ---------- table type-c ---------- */
.main table.table-c {
	margin-bottom: 40px;
}

/* ------ scroll table -------- */
table+.btn-wrapper {
	padding-top: 40px;
}

.right-justified+.btn-wrapper {
	padding-top: 10px;
}

/*---------------------------------------------
	[NV1] コンテンツナビゲーション
  ---------------------------------------------*/
.main .nav-content {
	margin-bottom: 20px;
}

.main .nav-content ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	-webkit-box-lines: single;
	-ms-flex-wrap: nowrap;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
}

.main .nav-content li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 2000px;
	min-height: 60px;
	margin: 0;
	padding: 0;
	text-align: center;
	line-height: 1.6;
	overflow: hidden;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
}

.main .nav-content li:before {
	display: none;
}

.main .nav-content a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	padding: 10px 15px;
	text-decoration: none;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.main .nav-content.link-internal a:after {
	content: "";
	display: block;
	width: 24px;
	min-width: 24px;
	height: 24px;
	margin: 0 -5px 0 5px;
	background-image: url(../images/icon_link.png);
	background-repeat: no-repeat;
	-moz-background-size: 480px 240px;
	-webkit-background-size: 480px 240px;
	background-size: 480px 240px;
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	-moz-transition: -moz-transform 0.2s linear;
	-webkit-transition: -webkit-transform 0.2s linear;
	transition: transform 0.2s linear;
}

html:not(.sp) .main .nav-content.link-internal a:hover:after {
	-moz-transform: translate3d(0, 3px, 0) rotate(90deg);
	-webkit-transform: translate3d(0, 3px, 0) rotate(90deg);
	transform: translate3d(0, 3px, 0) rotate(90deg);
}

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

	.main .row .nav-content ul,
	.main .nav-content ul:not(.row) {
		border-left: 0 none !important;
	}

	.main .row .nav-content li:last-of-type a,
	.main .nav-content ul:not(.row) li:last-of-type a {
		margin-right: -1px;
		border-right: 0 none;
	}
}

/* Defaulf Color */
.main .nav-content {
	margin-bottom: 40px;
	background-color: #f2f4f4;
}

.main .nav-content ul {
	border-left: solid 1px #fff;
}

.main .nav-content a {
	color: #555;
	border-right: solid 1px #fff;
}

.main .nav-content a {
	color: #221814;
	border-right: 2px solid rgba(34, 24, 20, 0.2);
	font-weight: normal;
}

.main .nav-content a::before {
	display: block;
	position: absolute;
	top: 0;
	right: 30px;
	bottom: 0;
	width: 10px;
	height: 10px;
	border-bottom: 1px solid #221814;
	border-right: 1px solid #221814;
	transform: rotate(45deg);
	margin: auto;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .nav-content a:hover {
	background: rgba(245, 245, 245, 0.8);
}

.main .nav-content a:hover::before {
	transform: rotate(45deg) translate(3px, 3px);
}

.main .nav-content .current a {
	color: #fff;
	background-color: #f5f5f5;
	border-color: rgba(34, 24, 20, 0.2);
}

.main .nav-content.link-internal a:after {
	background-position-y: -24px;
}

.main .nav-content.link-internal .current a:after,
html:not(.sp) .main .nav-content.link-internal a:hover:after {
	background-position-y: -144px;
}

/* Dark Color */
.main .nav-content.bg-dark ul {
	border-color: #5f6768;
}

.main .nav-content.bg-dark a {
	color: #fff;
	border-color: #5f6768;
}

.main .nav-content.bg-dark.link-internal a:after {
	background-position-y: -144px;
}

/*---------------------------------------------
	[NV2] タブ
  ---------------------------------------------*/
.main .tab {
	margin-bottom: 50px;
}

.main .row .tab {
	margin-bottom: 20px;
}

.main .tab-nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	margin: 0 auto;
	overflow: hidden;
	-webkit-box-lines: single;
	-ms-flex-wrap: nowrap;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
}

.main .sp-tab-nav {
	display: none;
}

.main .tab-nav li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 2000px;
	min-height: 60px;
	margin: 0;
	padding: 0;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
}

.main .tab-nav li:last-of-type {
	margin-right: -1px;
	border-right: 0 none;
}

.main .tab-nav li:before {
	display: none;
}

.main .tab-nav li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	padding: 10px 15px;
	text-align: center;
	line-height: 1.6;
	text-decoration: none;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-moz-transition: background-color 0.2s linear, border-right-color 0.2s linear;
	-webkit-transition: background-color 0.2s linear, border-right-color 0.2s linear;
	transition: background-color 0.2s linear, border-right-color 0.2s linear;
}

/* 色指定 */
.main .tab-nav li a {
	color: #fff;
	background-color: #777;
}

.main .tab-nav li a:hover {
	opacity: 0.8;
}

.main .tab-nav li:not(.current) a {
	border-bottom: 4px solid #fff;
	border-left: 4px solid #fff;
}

.main .tab-nav li:first-child:not(.current) a {
	border-left: none;
	border-right: 4px solid #fff;
}

.main .tab-nav li.current a {
	color: #221814 !important;
	background-color: #f5f5f5 !important;
	border-right-color: #f2f4f4 !important;
	/* border-left: 4px solid #fff; */
}

.main .tab-nav li.current a {
	border-left: 1px solid #fff;
}

.main .tab-nav li:first-of-type.current a {
	border-left: none;
}

html:not(.sp) .main .tab-nav li a:hover {
	color: #fff;
	background-color: #7d7d7d;
}

.main .tab-content {
	background-color: #f5f5f5;
	overflow: hidden;
}

.main .row .tab-content {
	padding: 0;
}

.main .tab-container {
	overflow: hidden;
}

.main .tab-slider {
	position: relative;
	width: 1000%;
}

.main .tab-element {
	float: left;
	display: none;
	padding: 30px 0 10px;
}

.main .tab-slider .tab-element {
	width: 10%;
}

.main .tab-element:first-of-type {
	display: block;
}

.main .row .tab .tab-element {
	padding-left: 100px;
	padding-right: 100px;
}

.main .tab-ir-press-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	margin: 0 auto;
	overflow: hidden;
	-webkit-box-lines: single;
	-ms-flex-wrap: nowrap;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
	list-style: none;
}

.main .tab-ir-press-wrap li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 2000px;
	min-height: 60px;
	margin: 0;
	padding: 0;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
	list-style: none;
}

.main .tab-ir-press-wrap li:before {
	display: none;
}

.main .tab-ir-press-wrap li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	padding: 10px 15px;
	text-align: center;
	line-height: 1.6;
	text-decoration: none;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-moz-transition: background-color 0.2s linear, border-right-color 0.2s linear;
	-webkit-transition: background-color 0.2s linear, border-right-color 0.2s linear;
	transition: background-color 0.2s linear, border-right-color 0.2s linear;
	font-size: 2.6rem;
	font-family: "Noto Sans Japanese";
	font-weight: 700;
}

@media screen and (max-width: 767px) {
	.main .tab-ir-press-wrap li a {
		font-size: 1.5rem;
		padding: 0 10px !important;
	}

	.tab-ir-press {
		padding-top: 10px !important;
	}
}

/*---------------------------------------------
	[NV3] ページネーション
  ---------------------------------------------*/
.main .pagination p {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.main .pagination a,
.main .pagination span {
	position: relative;
	display: inline-block;
	min-width: 45px;
	height: 50px;
	padding: 0 5px;
	line-height: 50px;
	margin: 0 1px 1px 0;
	font-size: 1.4rem;
	text-align: center;
}

.main .pagination a {
	color: #555;
	text-decoration: none;
	background-color: #f2f4f4;
	-moz-transition: background-color 0.2s linear, color 0.2s linear;
	-webkit-transition: background-color 0.2s linear, color 0.2s linear;
	transition: background-color 0.2s linear, color 0.2s linear;
}

html:not(.sp) .main .pagination a:hover {
	color: #fff;
	background-color: #373582;
}

.main .pagination .current {
	color: #fff;
	background-color: #373582;
}

.main .pagination .prev {
	padding: 0 10px 0 30px;
}

.main .pagination .next {
	padding: 0 30px 0 10px;
}

.main .pagination .prev:before,
.main .pagination .next:before {
	content: "";
	position: absolute;
	display: block;
	width: 24px;
	height: 24px;
	top: 50%;
	margin-top: -12px;
	background-image: url(../images/icon_link.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	-moz-background-size: 480px 240px;
	-webkit-background-size: 480px 240px;
	background-size: 480px 240px;
	-moz-transition: left 0.2s linear, right 0.2s linear;
	-webkit-transition: left 0.2s linear, right 0.2s linear;
	transition: left 0.2s linear, right 0.2s linear;
}

.main .pagination .prev:before {
	left: 6px;
	-moz-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.main .pagination .next:before {
	right: 6px;
}

html:not(.sp) .main .pagination .prev:hover:before {
	left: 3px;
	background-position: 0 -144px;
}

html:not(.sp) .main .pagination .next:hover:before {
	right: 3px;
	background-position: 0 -144px;
}

/*---------------------------------------------
	[FM] フォーム
  ---------------------------------------------*/
.main .form dl.border-set {
	margin-bottom: 50px;
}

.main .form dl.border-set>dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	padding: 25px 0;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.main .form .caption {
	display: inline-block;
	margin: 0;
	padding: 5px 0;
	vertical-align: middle;
}

.main .form input,
.main .form select,
.main .form textarea,
.main .form span {
	-webkit-transition-duration: 0.2s;
	transition-duration: 0.2s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}

.main .form input[type="text"],
.main .form textarea {
	width: 100%;
	max-width: 300px;
	margin: 5px 0;
	padding: 5px;
	font-size: 16px;
	line-height: 1.6;
	border: 1px solid #e5e9e9;
	vertical-align: middle;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
}

.main .form input[type="text"]:not(.full) {
	margin-right: 15px;
}

.main .form input[type="text"].full,
.main .form textarea.full {
	max-width: 100%;
}

.main :-moz-placeholder {
	color: #bbb;
	opacity: 1;
}

.main ::-webkit-input-placeholder {
	color: #bbb;
	opacity: 1;
}

.main :-ms-input-placeholder {
	color: #bbb;
}

.main :placeholder-shown {
	color: #bbb;
}

.main .form select {
	position: relative;
	margin: 5px 0;
	padding: 5px 40px 5px 5px;
	font-size: 16px;
	line-height: 1.6;
	border: 1px solid #e5e9e9;
	vertical-align: middle;
	cursor: pointer;
	background-color: #fff;
	background-image: url(../images/btn_select.gif);
	background-repeat: no-repeat;
	background-position: right center;
	-moz-background-size: 30px 45px;
	-webkit-background-size: 30px 45px;
	background-size: 30px 45px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

html:not(.sp) .main .form input[type="text"]:hover,
html:not(.sp) .main .form textarea:hover,
html:not(.sp) .main .form select:hover {
	border: 1px solid #777;
}

.main .form select::-ms-expand {
	display: none;
}

.main .form label {
	display: inline-block;
	margin: 5px 20px 5px 0;
	cursor: pointer;
}

.main .form input[type="radio"] {
	display: none;
}

.main .form input[type="radio"]+span {
	position: relative;
	display: inline-block;
	width: 18px;
	height: 18px;
	margin: 5px 6px 5px 0;
	vertical-align: middle;
	background-color: #fff;
	border: 2px solid #e5e9e9;
	-webkit-border-radius: 9px;
	-moz-border-radius: 9px;
	border-radius: 9px;
}

.main .form input[type="radio"]:checked+span {
	border-color: #ff5c00;
}

.main .form input[type="radio"]:checked+span:after {
	content: "";
	display: block;
	width: 10px;
	height: 10px;
	margin: 2px;
	background-color: #ff5c00;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}

.main .form input[type="checkbox"] {
	display: none;
}

.main .form input[type="checkbox"]+span {
	position: relative;
	display: inline-block;
	width: 18px;
	height: 18px;
	margin: 5px 6px 5px 0;
	vertical-align: middle;
	background-color: #e5e9e9;
}

.main .form input[type="checkbox"]:checked+span {
	background: #ff5c00;
}

.main .form input[type="checkbox"]:checked+span:before {
	content: "";
	position: absolute;
	top: 3px;
	left: 3px;
	width: 10px;
	height: 6px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.main .form .zip input[type="text"] {
	width: 60px;
	margin-right: 0;
}

.main .form .zip input[type="text"]:last-child {
	width: 80px;
}

.main .form .btn-upload {
	position: relative;
	max-width: 300px;
	margin: 5px 0;
	overflow: hidden;
	white-space: nowrap;
}

.main .form .btn-upload .upload-value {
	display: block;
	margin: 0 !important;
	padding: 5px 10px;
	font-size: 0.88rem;
	border: 1px solid #e5e9e9;
	border-right: 0 none;
	vertical-align: middle;
	background-color: transparent;
	-moz-border-radius: 3px 0 0 3px;
	-webkit-border-radius: 3px 0 0 3px;
	border-radius: 3px 0 0 3px;
}

html:not(.sp) .main .form .btn-upload:hover .upload-value {
	border-color: #777;
}

.main .form .btn-upload span {
	position: absolute;
	display: block;
	height: 100%;
	top: 0;
	right: 0;
	padding: 5px 10px;
	font-size: 0.88rem;
	line-height: 1.6;
	color: #fff;
	background-color: #ff5c00;
	vertical-align: middle;
	border: 1px solid #ff5c00;
	-moz-border-radius: 0 3px 3px 0;
	-webkit-border-radius: 0 3px 3px 0;
	border-radius: 0 3px 3px 0;
}

.main .form .btn-upload input[type="file"] {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	overflow: hidden;
	text-indent: -9999px;
	cursor: pointer;
	opacity: 0;
}

.main .form dl.border-set .required {
	position: relative;
	padding-right: 40px;
}

.main .form dl.border-set .required:after {
	content: "必須";
	position: absolute;
	display: block;
	padding: 4px 6px 3px;
	top: 50%;
	right: 0;
	font-size: 0.69rem;
	font-weight: bold;
	line-height: 1;
	color: #fff;
	vertical-align: middle;
	background-color: #f2646e;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

/*---------------------------------------------
	[EB1] 動画埋め込み
  ---------------------------------------------*/
.main .embed-video {
	position: relative;
	margin-bottom: 20px;
	padding: 56.25% 0 0;
}

.main .embed-video iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	border: 0 none;
}

/*---------------------------------------------
	[EB2] モーダル
  ---------------------------------------------*/
/* Magnific Popup CSS */
.mfp-bg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10042;
	overflow: hidden;
	background: rgba(34, 24, 20, 0.5);
	opacity: 0.8;
	-moz-animation: mfp-bg-fadein 0.3s linear;
	-webkit-animation: mfp-bg-fadein 0.3s linear;
	animation: mfp-bg-fadein 0.3s linear;
}

@-moz-keyframes mfp-bg-fadein {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 0.8;
	}
}

@-webkit-keyframes mfp-bg-fadein {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 0.8;
	}
}

@keyframes mfp-bg-fadein {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 0.8;
	}
}

.mfp-bg.mfp-ready.mfp-removing {
	opacity: 0;
	transition: opacity 0.3s linear 0.3s;
}

.mfp-wrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 10043;
	position: fixed;
	outline: none !important;
}

html:not(.sp) .mfp-wrap {
	overflow-y: scroll !important;
}

.mfp-container {
	position: absolute;
	width: 100%;
	max-width: none;
	height: 100%;
	left: 0;
	top: 0;
	text-align: center;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.mfp-container:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
	display: none;
}

.mfp-content {
	position: relative;
	z-index: 10045;
	display: inline-block;
	vertical-align: middle;
	margin: 20px auto;
	text-align: left;
	opacity: 0;
	-webkit-backface-visibility: hidden;
	-moz-transform: scale(0.9);
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
}

.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1;
	-moz-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
	-moz-transition: -moz-transform 0.3s ease-out, opacity 0.3s linear;
	-webkit-transition: -webkit-transform 0.3s ease-out, opacity 0.3s linear;
	transition: transform 0.3s ease-out, opacity 0.3s linear;
}

.mfp-wrap.mfp-ready.mfp-removing .mfp-content {
	opacity: 0;
	-moz-transform: scale(0.9);
	-webkit-transform: scale(0.9);
	transform: scale(0.9);
	-moz-transition: -moz-transform 0.3s ease-in 0.3s, opacity 0.3s linear 0.3s;
	-webkit-transition: -webkit-transform 0.3s ease-in 0.3s, opacity 0.3s linear 0.3s;
	transition: transform 0.3s ease-in 0.3s, opacity 0.3s linear 0.3s;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
	width: 100%;
	padding: 40px 0;
	cursor: auto;
}

.mfp-inline-holder .mfp-content>div {
	position: relative;
	margin: 0 auto;
	-moz-box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);
}

.mfp-inline-holder .mfp-content .content {
	padding: 60px 60px 40px;
	position: relative;
	background: #fff;
}

.mfp-ajax-cur {
	cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
}

.mfp-zoom {
	cursor: pointer;
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
	cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
	cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

.mfp-loading.mfp-figure {
	display: none;
}

.mfp-hide {
	display: none !important;
}

.mfp-preloader {
	position: absolute;
	top: 50%;
	width: 100%;
	height: 60px;
	margin-top: -30px;
	text-indent: -9999px;
	z-index: 10044;
	overflow: hidden;
}

.mfp-preloader:before {
	content: "";
	display: block;
	width: 60px;
	height: 60px;
	margin: 0 auto;
	background-image: url(../images/preloader.gif);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 60px 60px;
}

.mfp-s-ready .mfp-preloader {
	display: none;
}

.mfp-s-error .mfp-content {
	display: none;
}

.mfp-close {
	position: absolute;
	width: 70px;
	height: 70px;
	right: 0;
	top: 40px;
	padding-top: 35px;
	cursor: pointer;
	overflow: hidden;
	border: none;
	background: #777777;
	color: #fff;
	font-size: 1.2rem;
	outline: none;
	opacity: 1;
}

.mfp-ready .mfp-close {
	top: 0;
}

.mfp-ready .mfp-iframe-holder .mfp-close,
.mfp-ready .mfp-inline-holder .mfp-close {
	top: 0;
}

.mfp-ready.mfp-removing .mfp-iframe-holder .mfp-close,
.mfp-ready.mfp-removing .mfp-inline-holder .mfp-close {
	top: 0;
}

.mfp-close:before,
.mfp-close:after {
	content: "";
	position: absolute;
	display: block;
	width: 2px;
	height: 26px;
	right: 0;
	left: 0;
	top: 18px;
	margin: auto;
	background-color: #fff;
}

.mfp-close:before {
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.mfp-close:after {
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.mfp-counter {
	position: absolute;
	top: 0;
	right: 0;
	color: #ccc;
	font-size: 0.96rem;
	line-height: 1.6;
	white-space: nowrap;
}

.mfp-arrow {
	position: absolute;
	z-index: 10046;
	width: 40px;
	height: 40px;
	top: 50%;
	margin-top: -20px;
	background-color: #ff5c00;
	border: 0 none;
	overflow: hidden;
	cursor: pointer;
	outline: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}

.mfp-arrow:before {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #fff;
	opacity: 0;
	-moz-transition: opacity 0.2s linear;
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
}

.mfp-arrow:hover:before {
	opacity: 0.2;
}

.mfp-arrow:after {
	content: "";
	position: absolute;
	display: block;
	width: 24px;
	height: 24px;
	top: 50%;
	margin-top: -12px;
	background-image: url(../images/icon_link.png);
	background-repeat: no-repeat;
	background-position: 0 -144px;
	-moz-background-size: 480px 240px;
	-webkit-background-size: 480px 240px;
	background-size: 480px 240px;
	-moz-transition: -moz-transform 0.2s linear;
	-webkit-transition: -webkit-transform 0.2s linear;
	transition: transform 0.2s linear;
}

.mfp-arrow-left {
	left: -100px;
}

.mfp-arrow-right {
	right: -100px;
}

.mfp-arrow-left:after {
	left: 7px;
	-moz-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.mfp-arrow-right:after {
	right: 7px;
}

html:not(.sp) .mfp-arrow-right:hover:after {
	-moz-transform: translate3d(3px, 0, 0);
	-webkit-transform: translate3d(3px, 0, 0);
	transform: translate3d(3px, 0, 0);
}

.mfp-ready .mfp-arrow-left {
	left: 20px;
	-moz-transition: left 0.3s cubic-bezier(0.47, 1.83, 0.71, 1) 0.3s;
	-webkit-transition: left 0.3s cubic-bezier(0.47, 1.83, 0.71, 1) 0.3s;
	transition: left 0.3s cubic-bezier(0.47, 1.83, 0.71, 1) 0.3s;
}

.mfp-ready.mfp-removing .mfp-arrow-left {
	left: -100px;
	-moz-transition: left 0.5s ease-in 0s;
	-webkit-transition: left 0.5s ease-in 0s;
	transition: left 0.5s ease-in 0s;
}

.mfp-ready .mfp-arrow-right {
	right: 20px;
	-moz-transition: right 0.3s cubic-bezier(0.47, 1.83, 0.71, 1) 0.3s;
	-webkit-transition: right 0.3s cubic-bezier(0.47, 1.83, 0.71, 1) 0.3s;
	transition: right 0.3s cubic-bezier(0.47, 1.83, 0.71, 1) 0.3s;
}

.mfp-ready.mfp-removing .mfp-arrow-right {
	right: -100px;
	-moz-transition: right 0.5s ease-in 0s;
	-webkit-transition: right 0.5s ease-in 0s;
	transition: right 0.5s ease-in 0s;
}

.mfp-iframe-holder .mfp-content {
	line-height: 0;
	width: 100%;
	max-width: 900px;
	padding-top: 40px;
	padding-bottom: 40px;
}

.mfp-iframe-scaler {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-moz-box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
	-webkit-box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
	background: #000;
}

/* Main image in popup */
img.mfp-img {
	position: relative;
	z-index: 1;
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	line-height: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* The shadow behind the image */
.mfp-figure {
	line-height: 0;
	padding: 40px 0;
}

.mfp-figure:after {
	content: "";
	position: absolute;
	z-index: -1;
	display: block;
	width: auto;
	height: auto;
	left: 0;
	top: 40px;
	bottom: 40px;
	right: 0;
	background: #444;
	-moz-box-shadow: 0 0 50px rgba(0, 0, 0, 0.6);
	-webkit-box-shadow: 0 0 50px rgba(0, 0, 0, 0.6);
	box-shadow: 0 0 50px rgba(0, 0, 0, 0.6);
}

.mfp-figure small {
	color: #bdbdbd;
	display: block;
	font-size: 0.75rem;
	line-height: 1.6;
}

.mfp-figure figure {
	position: relative;
	margin: 0;
}

.mfp-bottom-bar {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	cursor: auto;
}

.mfp-ready .mfp-bottom-bar {
	bottom: -40px;
	-moz-transition: bottom 0.3s cubic-bezier(0.47, 1.83, 0.71, 1) 0.3s, -moz-transform 0.2s ease-in-out, opacity 0.2s linear;
	-webkit-transition: bottom 0.3s cubic-bezier(0.47, 1.83, 0.71, 1) 0.3s, -webkit-transform 0.2s ease-in-out, opacity 0.2s linear;
	transition: bottom 0.3s cubic-bezier(0.47, 1.83, 0.71, 1) 0.3s, transform 0.2s ease-in-out, opacity 0.2s linear;
}

.mfp-ready.mfp-removing .mfp-bottom-bar {
	bottom: 0;
	-moz-transition: bottom 0.3s ease-in 0s;
	-webkit-transition: bottom 0.3s ease-in 0s;
	transition: bottom 0.3s ease-in 0s;
}

.mfp-ready .mfp-iframe-holder .mfp-bottom-bar {
	bottom: 0;
}

.mfp-ready.mfp-removing .mfp-iframe-holder .mfp-bottom-bar {
	bottom: -35px;
}

.mfp-title {
	float: left;
	height: 1.6em;
	padding-right: 4em;
	text-align: left;
	line-height: 1.6;
	color: #fff;
}

.mfp-image-holder .mfp-content {
	max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	cursor: pointer;
}

.sb10 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 10px;
}

.sb11 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 11px;
}

.sb12 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 12px;
}

.sb13 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 13px;
}

.sb14 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 14px;
}

.sb15 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 15px;
}

.sb16 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 16px;
}

.sb17 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 17px;
}

.sb18 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 18px;
}

.sb19 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 19px;
}

.sb20 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 20px;
}

.sb21 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 21px;
}

.sb22 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 22px;
}

.sb23 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 23px;
}

.sb24 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 24px;
}

.sb25 .mfp-bg~#wrapper #btn-pagetop {
	margin-right: 25px;
}

/*---------------------------------------------
	[SL] スライダー
  ---------------------------------------------*/
.l-mainvisual-top .slider,
.main .slider {
	position: relative;
	margin-bottom: 30px;
}

.l-mainvisual-top .slider-container,
.main .slider-container {
	width: 100%;
	overflow: hidden;
}

.main .slider .panel-vertical,
.main .slider .panel-covered {
	margin-bottom: 0;
}

/* ----- Slick Slider ----- */
.l-mainvisual-top .slick-slider,
.main .slick-slider {
	display: block;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.l-mainvisual-top .slick-list,
.main .slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.main .slick-list:focus {
	outline: none;
}

.main .slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.l-mainvisual-top .slick-slider .slick-track,
.l-mainvisual-top .slick-slider .slick-list,
.main .slick-slider .slick-track,
.main .slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.l-mainvisual-top .slick-track,
.main .slick-track {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	position: relative;
	top: 0;
	left: 0;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
}

.main .p-member__list .slick-track {
	margin: 0 auto;
}

.l-mainvisual-top .slick-track::before,
.l-mainvisual-top .slick-track::after,
.main .slick-track:before,
.main .slick-track:after {
	display: table;
	content: "";
}

.l-mainvisual-top .slick-track:after,
.main .slick-track:after {
	clear: both;
}

.l-mainvisual-top .slick-loading .slick-track,
.main .slick-loading .slick-track {
	visibility: hidden;
}

.l-mainvisual-top .slick-slide,
.main .slick-slide {
	display: none;
	min-height: 1px;
	margin-bottom: 0;
}

.l-mainvisual-top .slick-slide img,
.main .slick-slide img {
	display: block;
}

.l-mainvisual-top .slick-slide.slick-loading img,
.main .slick-slide.slick-loading img {
	display: none;
}

.l-mainvisual-top .slick-slide.dragging img,
.main .slick-slide.dragging img {
	pointer-events: none;
}

.l-mainvisual-top .slick-initialized .slick-slide,
.main .slick-initialized .slick-slide {
	display: block;
}

.l-mainvisual-top .slick-loading .slick-slide,
.main .slick-loading .slick-slide {
	visibility: hidden;
}

.l-mainvisual-top .slick-vertical .slick-slide,
.main .slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}

.l-mainvisual-top .slick-arrow.slick-hidden,
.main .slick-arrow.slick-hidden {
	display: none;
}

.main .slick-arrow {
	position: absolute;
	z-index: 2;
	width: 40px;
	height: 40px;
	top: 45%;
	margin: -20px;
	text-indent: -9999px;
	background-color: #777777;
	border: 0 none;
	border: 1px solid #777777;
	overflow: hidden;
	cursor: pointer;
	outline: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}

.main .slick-arrow:before {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #fff;
	opacity: 0;
	-moz-transition: opacity 0.2s linear;
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
}

.main .slick-arrow:after {
	content: "";
	position: absolute;
	display: block;
	width: 12px;
	height: 10px;
	top: 50%;
	margin-top: -5px;
	background-image: url(../images/icon_link.png);
	background-image: url(../images/common/arrow-white.svg);
	background-repeat: no-repeat;
	-moz-transition: -moz-transform 0.2s linear;
	-webkit-transition: -webkit-transform 0.2s linear;
	transition: transform 0.2s linear;
	transform: rotate(-90deg);
}

.main .slick-prev {
	left: 0;
}

.main .slick-next {
	right: 0;
}

.main .slick-prev:after {
	left: 12px;
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

html:not(.sp) .main .slick-prev:hover:after {
	-webkit-transform: translate3d(-2px, 0, 0) rotate(90deg);
	-moz-transform: translate3d(-2px, 0, 0) rotate(90deg);
	transform: translate3d(-2px, 0, 0) rotate(90deg);
}

.main .slick-next:after {
	right: 12px;
}

html:not(.sp) .main .slick-next:hover:after {
	-webkit-transform: translate3d(2px, 0, 0) rotate(-90deg);
	-moz-transform: translate3d(2px, 0, 0) rotate(-90deg);
	transform: translate3d(2px, 0, 0) rotate(-90deg);
}

.main .slick-track .img {
	margin-bottom: 0;
}

.l-mainvisual-top .slick-dots,
.main .slick-dots {
	margin: 0 auto 0;
	padding: 0 15px 0 0;
	text-align: center;
}

.l-mainvisual-top .slick-dots li,
.main .slick-dots li {
	display: inline-block;
	width: 12px;
	height: 12px;
	margin: 4px 15px !important;
	padding: 3px !important;
	text-align: center;
	vertical-align: middle;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	transition: background-color 0.2s linear;
}

.l-mainvisual-top .slick-dots li::before {
	display: none;
}

.main .slick-dots li:before {
	display: none;
}

.l-mainvisual-top .slick-dots li button,
.main .slick-dots li button {
	position: relative;
	display: block;
	width: 12px;
	height: 12px;
	margin: 0;
	padding: 0;
	text-indent: -9999px;
	background-color: #d0d0d0;
	overflow: hidden;
	border: 0 none;
	cursor: pointer;
	outline: none;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	transition: background-color 0.2s linear;
}

html:not(.sp) .l-mainvisual-top .slick-dots li:hover button,
.l-mainvisual-top .slick-dots .slick-active button,
html:not(.sp) .main .slick-dots li:hover button,
.main .slick-dots .slick-active button {
	background-color: #6b6a69;
}

/*---------------------------------------------
	[SC] スクロールエフェクト
  ---------------------------------------------*/
/* ----- [SC1] フェードイン ----- */
.fadein {
	opacity: 0;
	-moz-transform: translate3d(0, 50px, 0);
	-webkit-transform: translate3d(0, 50px, 0);
	transform: translate3d(0, 50px, 0);
}

/* ----- [SC2] スライドイン ----- */
.slidein {
	visibility: hidden;
}

.slidein-bg {
	position: absolute;
	z-index: 1000;
	display: block;
	overflow: hidden;
}

.slidein-bg span {
	position: absolute;
	display: block;
	width: 120%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #434c4d;
	-moz-transform: translate3d(-100%, 0, 0);
	-webkit-transform: translate3d(-100%, 0, 0);
	transform: translate3d(-100%, 0, 0);
}

/*---------------------------------------------
	[LD] ロードエフェクト
  ---------------------------------------------*/
/* ----- [LD1] フェードイン ----- */
.loadfadein {
	opacity: 0;
	-moz-transform: translate3d(0, 50px, 0);
	-webkit-transform: translate3d(0, 50px, 0);
	transform: translate3d(0, 50px, 0);
}

.loadslidein {
	visibility: hidden;
}

/*---------------------------------------------
	1200px未満
  ---------------------------------------------*/
@media screen and (max-width: 1199px),
print {

	/* ----- 基本フォントサイズ ----- */
	/*html {font-size: .94rem;}*/
	/* ----- メインコンテンツ ----- */
	.main .content {
		padding-top: 0px;
		padding-bottom: 0px;
	}

	.row {
		padding: 0 20px;
	}

	/* ----- [CL] カラム ----- */
	.col-set {
		width: calc(100% + 20px);
	}

	.no-gutter {
		width: 100%;
	}

	.col1-2 {
		width: calc(50% - 20px);
	}

	.col1-3 {
		width: calc(33.33333333% - 20px);
	}

	.col2-3 {
		width: calc(66.66666666% - 20px);
	}

	.col1-4 {
		width: calc(25% - 20px);
	}

	.col3-4 {
		width: calc(75% - 20px);
	}

	.col1-5 {
		width: calc(20% - 20px);
	}

	.col1-6 {
		width: calc(16.66666666% - 20px);
	}

	.col1-2,
	.col1-3,
	.col2-3,
	.col1-4,
	.col3-4,
	.col1-5,
	.col1-6 {
		margin-right: 20px;
	}

	/* ----- [IG] 画像 ----- */
	.main .img-set .img,
	.main .thumb-set .img {
		margin-right: 10px;
		padding-right: 10px;
	}

	.main .img-set .img.right,
	.main .thumb-set .img.right {
		margin-right: 0;
		padding-right: 0;
		margin-left: 10px;
		padding-left: 10px;
	}

	/* ----- [LT] リスト ----- */
	.main ul.col-set li {
		margin-bottom: 20px;
	}

	/* ----- [BT5] ページトップボタン ----- */
	#btn-pagetop {
		right: 20px;
	}

	#btn-pagetop.show {
		bottom: 20px;
	}

	/* ----- [BX] ボックス ----- */
	.main .box {
		margin-bottom: 20px;
		padding: 20px 20px 0;
	}

	.main .box .heading:first-child {
		margin: -20px -20px 20px;
		padding: 12px 20px;
	}

	/* ----- [FR] 枠 ----- */
	.main .frame {
		margin-bottom: 20px;
		padding: 20px 20px 0;
	}

	.main .frame .heading:first-child {
		margin: -20px -20px 20px;
		padding: 2px 20px 12px;
	}

	/* ----- [PL] パネル ----- */
	.main .panel-vertical {
		margin-bottom: 20px;
	}

	.main .panel-vertical .badge {
		margin-left: 20px;
		margin-right: 20px;
	}

	.main .row .panel-horizontal {
		margin-bottom: 20px;
	}

	.main .panel-horizontal .txt {
		padding: 20px 20px 0;
	}

	.main .col-set:not(.no-gutter) .panel-covered {
		margin-bottom: 20px;
	}

	.main .panel-covered .txt {
		padding: 20px 20px 0;
	}

	.main .panel-covered .link-horizontal {
		margin: 0 -20px;
		padding: 15px 10px 5px 20px;
	}

	.main .panel-covered .tag {
		margin: 0 -20px;
		padding: 15px 12px 7px 20px;
	}

	/* ----- [SL] スライダー ----- */
	.main .slider {
		margin-bottom: 20px;
	}

	/* ----- [NV2] タブ ----- */
	.main .tab {
		margin-bottom: 40px;
	}

	.main .tab-element {
		padding: 20px 0 10px;
	}

	.main .row .tab .tab-element {
		padding-right: 7.5vw;
		padding-left: 7.5vw;
	}

	/* ----- [FM] フォーム ----- */
	.main .form dl.border-set {
		margin-bottom: 40px;
	}

	/* ----- [EB2] モーダル ----- */
}

/*---------------------------------------------
	768px未満 730px以上
  ---------------------------------------------*/
@media screen and (min-width: 730px) and (max-width: 767px) {
	.main .table-scroll {
		width: calc(100% - 180px);
		margin-left: 180px !important;
	}

	.main .scroll-table.table-b thead th:first-child {
		width: 180px !important;
	}

	.main .scroll-table.table-b thead tr:first-child th {
		width: 180px !important;
	}

	.main .scroll-table.table-b tbody th,
	.main .scroll-table.table-b tbody th:first-child {
		width: 180px !important;
	}

	.main .scroll-table.table-b::before {
		bottom: 9px;
	}
}

@media screen and (min-width: 730px) and (max-width: 767px) {
	.main .table-scroll {
		width: calc(100% - 180px);
		margin-left: 180px !important;
	}

	.main .scroll-table.table-d thead th:first-child {
		width: 180px !important;
	}

	.main .scroll-table.table-d thead tr:first-child th {
		width: 180px !important;
	}

	.main .scroll-table.table-d tbody th,
	.main .scroll-table.table-d tbody th:first-child {
		width: 180px !important;
	}

	.main .scroll-table.table-d::before {
		bottom: 9px;
	}
}


@media screen and (max-width: 1080px) {
	.main .row .tab .tab-element {
		padding-right: 6vw;
		padding-left: 6vw;
	}
}

@media screen and (max-width: 980px) {
	.main .row .tab .tab-element {
		padding-right: 5vw;
		padding-left: 5vw;
	}
}

/*---------------------------------------------
	768px未満
  ---------------------------------------------*/
@media screen and (max-width: 767px) {

	/* ----- メインコンテンツ ----- */
	.main .content {
		padding-top: 0px;
	}

	.row {
		width: 100%;
		padding: 0 15px;
		box-sizing: border-box;
	}

	.anchor:before {
		content: "";
		display: block;
		margin-top: -60px;
		/* 固定ヘッダーの高さ */
		padding-top: 60px;
	}

	/* ----- 強制指定 ----- */
	/* 中央寄せ */
	.main .sp-center {
		text-align: center !important;
	}

	/* 幅 */
	.main .sp-w50 {
		width: 50px !important;
	}

	.main .sp-w60 {
		width: 60px !important;
	}

	.main .sp-w70 {
		width: 70px !important;
	}

	.main .sp-w80 {
		width: 80px !important;
	}

	.main .sp-w90 {
		width: 90px !important;
	}

	.main .sp-w100 {
		width: 100px !important;
	}

	.main .sp-w110 {
		width: 110px !important;
	}

	.main .sp-w120 {
		width: 120px !important;
	}

	.main .sp-w130 {
		width: 130px !important;
	}

	.main .sp-w140 {
		width: 140px !important;
	}

	.main .sp-w150 {
		width: 150px !important;
	}

	.main .sp-w160 {
		width: 160px !important;
	}

	.main .sp-w170 {
		width: 170px !important;
	}

	.main .sp-w180 {
		width: 180px !important;
	}

	.main .sp-w190 {
		width: 190px !important;
	}

	.main .sp-w200 {
		width: 200px !important;
	}

	/* 下余白 */
	.main .sp-mb0 {
		margin-bottom: 0 !important;
	}

	.main .sp-mb10 {
		margin-bottom: 10px !important;
	}

	.main .sp-mb20 {
		margin-bottom: 20px !important;
	}

	.main .sp-mb30 {
		margin-bottom: 30px !important;
	}

	.main .sp-mb40 {
		margin-bottom: 40px !important;
	}

	.main .sp-mb50 {
		margin-bottom: 50px !important;
	}

	.main .sp-mb60 {
		margin-bottom: 60px !important;
	}

	.main .sp-mb70 {
		margin-bottom: 70px !important;
	}

	.main .sp-mb80 {
		margin-bottom: 80px !important;
	}

	.main .sp-mb90 {
		margin-bottom: 90px !important;
	}

	.main .sp-mb100 {
		margin-bottom: 100px !important;
	}

	.main .sp-mt0 {
		margin-top: 0px !important;
	}

	/* 表示／非表示 */
	.main .show-pc {
		display: none !important;
	}

	/* 文字サイズ */
	.main .sp-l {
		font-size: 1.06rem !important;
	}

	.main .sp-m {
		font-size: 0.88rem !important;
	}

	.main .sp-s {
		font-size: 0.75rem !important;
	}

	/* ----- [CL] カラム ----- */
	.col-set {
		width: calc(100% + 15px);
	}

	.no-gutter {
		width: 100%;
	}

	.row .no-gutter {
		margin-bottom: 15px;
	}

	.col1-2,
	.col1-3,
	.col2-3,
	.col1-4,
	.col3-4,
	.col1-5,
	.col1-6 {
		width: calc(100% - 15px);
		margin-right: 15px;
	}

	.col1-3 {
		width: 100%;
		margin-right: 0;
	}

	.col1-4 {
		width: calc(50% - 15px);
		margin-right: 15px;
	}

	.no-gutter>.col1-2,
	.no-gutter>.col1-3,
	.no-gutter>.col2-3,
	.no-gutter>.col1-4,
	.no-gutter>.col3-4,
	.no-gutter>.col1-5,
	.no-gutter>.col1-6 {
		width: 100%;
	}

	.sp-col1-2 {
		width: calc(50% - 15px);
	}

	.no-gutter>.sp-col1-2 {
		width: 50%;
	}

	/* ----- [HG] 見出し ----- */
	.main h2.heading0 {
		font-size: 1.8rem;
	}

	.main h2:not([class*="heading"]) {
		margin-bottom: 30px;
		padding: 10px 0 8px 18px;
		font-size: 2.3rem;
	}

	/*.main h2:not([class*="heading"])::after {
    top: 0;
    bottom: 0;
    width: 1px;
    height: 100%;
    margin: auto;
  }*/
	.main h3:not([class*="heading"]),
	.main .heading2 {
		font-size: 1.8rem;
		/*
    margin: 30px 0 15px;
    font-size: 1.25rem;
    */
	}

	.main h2.heading1 {
		margin-bottom: 35px;
		font-family: "Noto Sans Japanese";
		font-size: 2.4rem;
		font-weight: 700;
		line-height: 1.35;
	}

	.main h2.heading4 {
		margin-bottom: 15px;
		font-size: 2.3rem;
	}

	.main h4:not([class*="heading"]),
	.main .heading3 {
		font-size: 1.4rem;
		margin-bottom: 15px;
		/*
    margin: 20px 0 15px;
    font-size: 1.19rem;
    */
	}

	.main h5:not([class*="heading"]),
	.main .heading4 {
		/*
    margin: 10px 0 15px;
    font-size: 1.13rem;
    */
	}

	.main h6:not([class*="heading"]),
	.main .heading5 {
		margin: 0 0 15px;
		font-size: 1rem;
	}

	.main .col-set+h2 {
		margin-top: 25px;
	}

	.main .col-set+h3 {
		margin-top: 15px;
	}

	.main .col-set+h4 {
		margin-top: 5px;
	}

	.main .col-set+h5 {
		margin-top: 0;
	}

	.main .col-set+h6 {
		margin-top: 0;
	}

	.main .col-set+.heading0 {
		margin-top: 25px;
	}

	.main .col-set+.heading1 {
		margin-top: 25px;
	}

	.main .col-set+.heading2 {
		margin-top: 15px;
	}

	.main .col-set+.heading3 {
		margin-top: 5px;
	}

	.main .col-set+.heading4 {
		margin-top: 0;
	}

	.main .col-set+.heading5 {
		margin-top: 0;
	}

	.main .col-set {
		width: 100%;
	}

	.main .col-set .col1-2 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.main .col-set .col1-2:last-child {
		margin-bottom: 0;
	}

	/* ----- [TX] テキスト ----- */
	.main p {
		margin-bottom: 15px;
	}

	.main .copy {
		font-size: 1.31rem;
	}

	.main .note {
		line-height: 1.45;
	}

	.main .note+.note,
	.main .note-num+.note-num {
		margin-top: -10px;
	}

	.main .note.s+.note.s {
		margin-top: -10px;
	}

	.main .note-num {
		font-size: 1.2rem;
		line-height: 1.45;
	}

	/* ----- [HR]  区切り線 ----- */
	.main hr {
		margin-bottom: 15px;
	}

	/* ----- [IG] 画像 ----- */
	.main .img {
		margin-bottom: 15px;
	}

	.main figure {
		margin-bottom: 15px;
	}

	.main .caption {
		max-width: 570px;
		margin: -5px auto 0;
		margin-top: -5px;
	}

	.main .right .caption {
		margin-right: auto;
	}

	.main .img-set .img,
	.main .img-set .img.right {
		float: none;
		width: auto;
		max-width: none;
		text-align: center !important;
	}

	.main .img-set .img {
		margin-right: 0;
		padding-right: 0;
	}

	.main .img-set .img.right {
		margin-left: 0;
		padding-left: 0;
	}

	.main .thumb-set .img {
		margin-right: 7.5px;
		padding-right: 7.5px;
	}

	.main .thumb-set .img.right {
		margin-right: 0;
		padding-right: 0;
		margin-left: 7.5px;
		padding-left: 7.5px;
	}

	/* ----- [LT] リスト ----- */
	.main ul,
	.main ol {
		margin-bottom: 15px;
	}

	.main ul.col-set li {
		margin-bottom: 15px;
	}

	.main ul li {
		padding-left: 18px;
	}

	.main ul li::before {
		width: 6px;
		height: 6px;
	}

	.main ul>ul,
	.main ul>ol {
		margin-left: 20px;
	}

	.main ul>ul li {
		padding-left: 15px;
	}

	.main ul>ul li::before {
		width: 4px;
		height: 4px;
	}

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

	.main dt {
		width: auto !important;
		padding-bottom: 5px !important;
	}

	.main dd {
		width: auto !important;
		padding: 0 0 15px;
	}

	.main dl.border-set {
		border-bottom: 0 none;
		border-top: solid 1px #e5e9e9;
	}

	.main dl.border-set>dt {
		padding: 15px 0 5px;
		border-top: 0 none;
	}

	.main dl.border-set>dd {
		width: auto;
		padding: 0 0 15px;
		border-top: 0 none;
		border-bottom: solid 1px #e5e9e9;
	}

	.main dl.news>dt {
		float: left;
		padding-right: 15px;
	}

	.main dl.news.border-set>dt {
		float: left;
		padding-top: 15px;
		border-top: 0 none;
	}

	.main dl.news>dd .tag,
	.main dl.news>dd .label {
		clear: none;
		float: right;
		margin: 0 0 5px;
	}

	.main dl.news.border-set .tag,
	.main dl.news.border-set .label {
		margin-top: 15px;
	}

	.main dl.news.border-set p+.tag,
	.main dl.news.border-set p+.label {
		margin-top: 0;
	}

	.main dl.news .link-icon {
		clear: both;
	}

	/* ----- [LK1] アイコンリンク ----- */
	.main .link-icon:not(li)+.link-icon {
		margin-top: -5px;
	}

	/* ----- [LK2] 横並びリンク ----- */
	.main .link-horizontal {
		margin-bottom: 5px;
	}

	/* ----- [TG1] タグ ----- */
	.main .tag {
		margin-bottom: 7px;
	}

	/* ----- [TG2] ラベル ----- */
	.main .label {
		margin-bottom: 5px;
	}

	/* ----- [BT] ボタン ----- */
	.main .btn>* {
		margin: 0 15px 15px 0;
	}

	/* ----- [BT3] シェアボタン ----- */
	.main .btn-share {
		margin-bottom: 5px;
		text-align: center;
	}

	/* ----- [BT5] ページトップボタン ----- */
	#btn-pagetop {
		right: 15px;
	}

	#btn-pagetop.show {
		bottom: 15px;
	}

	/* ----- [BX] ボックス ----- */
	.main .box {
		margin-bottom: 15px;
		padding: 15px 15px 0;
	}

	.main .box .heading:first-child {
		margin: -15px -15px 15px;
		padding: 12px 15px;
	}

	/* ----- [FR]  枠 ----- */
	.main .frame {
		margin-bottom: 15px;
		padding: 15px 15px 0;
	}

	.main .frame .heading:first-child {
		margin: -15px -15px 15px;
		padding: 2px 15px 12px;
	}

	/* ----- [PL] パネル ----- */
	/* [PL1] パネル > 画像上 */
	.main .panel-vertical {
		margin-bottom: 15px;
	}

	.main .panel-vertical .badge {
		margin-left: 15px;
		margin-right: 15px;
	}

	.main .panel-vertical .txt {
		padding: 15px 15px 0;
	}

	.main .panel-vertical .link-horizontal {
		padding: 12px 5px 2px 15px;
	}

	.main .panel-vertical .tag {
		padding: 10px 7px 2px 15px;
	}

	.main .sp-panel-holizontal>a:after {
		content: "";
		display: block;
		clear: both;
	}

	.main .sp-panel-holizontal .img {
		float: left;
		width: 25%;
		margin: 15px;
	}

	.main .sp-panel-holizontal .badge {
		position: static;
		clear: both;
		float: left;
		width: 25%;
		height: auto;
		margin: -15px 15px 15px 15px;
		border-radius: 0;
	}

	.main .sp-panel-holizontal .badge>* {
		display: block;
		width: auto;
		height: auto;
		padding: 8px 10px;
		font-size: 0.69rem;
		line-height: 1;
	}

	.main .sp-panel-holizontal .txt,
	.main .sp-panel-holizontal .badge+.txt {
		padding: 15px 15px 0 0;
		overflow: hidden;
	}

	.main .sp-panel-holizontal .label {
		position: relative;
		display: block;
		margin: 0;
		padding: 0;
	}

	.main .sp-panel-holizontal .label span {
		float: none;
		display: block;
		margin: 0;
		text-align: center;
		border: 0 none !important;
	}

	/* [PL2] パネル > 画像左右 */
	.main .panel-horizontal,
	.main .panel-horizontal>a {
		display: block;
	}

	.main .panel-horizontal:before,
	.main .panel-horizontal>a:before {
		display: none;
	}

	.main .row .panel-horizontal {
		margin-bottom: 15px;
	}

	.main .panel-horizontal .img {
		width: auto !important;
	}

	.main .panel-horizontal .img>a {
		position: relative;
	}

	.main .panel-horizontal .img div {
		position: relative;
		width: 100%;
		height: 0;
		padding: 56.25% 0 0;
	}

	.main .panel-horizontal .txt {
		width: auto !important;
		left: 0 !important;
		padding: 15px 15px 0;
	}

	.main .panel-horizontal .badge {
		top: auto !important;
		left: 50% !important;
	}

	.main .panel-horizontal .badge+.txt {
		padding-left: 15px !important;
		padding-right: 15px !important;
		padding-top: 40px !important;
	}

	/* [PL4] パネル > 背景画像 */
	.main .col-set:not(.no-gutter) .panel-covered {
		margin-bottom: 15px;
	}

	.main .panel-covered .txt {
		padding: 15px 15px 0;
	}

	.main .panel-covered .link-horizontal {
		margin: 0 -15px;
		padding: 12px 5px 2px 15px;
	}

	.main .panel-covered .tag {
		margin: 0 -15px;
		padding: 10px 7px 2px 15px;
	}

	/* ----- [TB] 表 ----- */
	.main table th,
	.main table td {
		padding: 12px 20px 11px 12px;
		font-size: 1.2rem;
		line-height: 1.45;
	}

	/* ---------- table + * ---------- */
	.main table+* {
		margin-top: 10px;
	}

	.main table.table-a th:first-child {
		width: 47%;
	}

	.main table.table-a th {
		line-height: 1.65;
	}

	.main table.table-a th:nth-child(2),
	.main table.table-a th:nth-child(3),
	.main table.table-a td:nth-child(2),
	.main table.table-a td:nth-child(3) {
		width: 26.3%;
		padding: 12px 8px 11px;
	}

	/* ----- col-set内の場合 ----- */
	.main .col-set table.table-a th {
		padding: 12px 8px 11px;
	}

	.main .col-set table.table-a td {
		padding: 12px 8px 11px;
	}

	/* ----- table type-b ----- */
	.main table.table-b th:first-child {
		width: 20%;
		padding: 10px 20px 10px 12px;
	}

	.main table.table-b th:nth-child(2),
	.main table.table-b th:nth-child(3),
	.main table.table-b th:nth-child(4),
	.main table.table-b th:nth-child(5),
	.main table.table-b th:nth-child(6) {
		padding: 10px;
	}

	/* ----- table type-d ----- */
	.main table.table-d th:first-child {
		width: 50%;
		padding: 10px 20px 10px 12px;
	}

	.main table.table-d th:nth-child(2),
	.main table.table-d th:nth-child(3),
	.main table.table-d th:nth-child(4),
	.main table.table-d th:nth-child(5),
	.main table.table-d th:nth-child(6) {
		padding: 10px;
	}

	/* ---------- table type-c ---------- */
	.main table.table-c {
		margin-bottom: 20px;
	}

	/* 水平スクロールバー */
	.main .scroll {
		margin: 0 0 15px;
		overflow-x: auto;
	}

	.main .scroll::-webkit-scrollbar {
		height: 15px;
	}

	.main .scroll::-webkit-scrollbar-track {
		background: #e8e7e6;
	}

	.main .scroll::-webkit-scrollbar-thumb {
		background: #585858;
	}

	.main .scroll>* {
		min-width: 738px;
		margin-bottom: 15px;
	}

	.main .table-scroll-wrapper {
		position: relative;
		width: 100%;
	}

	.main .table-scroll-wrapper+.right-justified {
		margin-top: 0;
	}

	.main .table-scroll {
		width: calc(100% - 160px);
		margin-left: 160px;
		margin-bottom: 15px;
		overflow-x: auto;
	}

	.main .table-scroll::-webkit-scrollbar {
		height: 15px;
	}

	.main .table-scroll::-webkit-scrollbar-track {
		background: #e8e7e6;
	}

	.main .table-scroll::-webkit-scrollbar-thumb {
		background: #585858;
	}

	.main .scroll-table.table-b {
		table-layout: fixed;
		width: 100%;
		margin-bottom: 10px;
		border-bottom: none;
	}

	.main .scroll-table.table-b::before {
		position: absolute;
		left: 0;
		bottom: 24px;
		width: 100%;
		height: 1px;
		background: #4e4643;
		content: "";
	}

	.main .scroll-table.table-b thead {
		height: 76px;
	}

	.main .scroll-table.table-b thead th {
		height: 38px;
	}

	.main .scroll-table.table-b thead th:first-child {
		position: absolute;
		top: 0;
		left: 0;
		width: 160px;
		z-index: 9;
	}

	.main .scroll-table.table-b thead th:not(:first-child) {
		width: 9em !important;
	}

	.main .scroll-table.table-b thead tr:not(:first-child) th:first-child {
		top: 38px;
	}

	.main .scroll-table.table-b tbody th {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
		position: absolute;
		left: 0;
		width: 160px !important;
		height: 60px;
		padding: 10px 5px 10px 10px;
		z-index: 9;
	}

	.main .scroll-table.table-b tbody td {
		width: 9em !important;
		height: 60px;
	}

	/* table-d */
	.main .scroll-table.table-d {
		table-layout: fixed;
		width: 100%;
		margin-bottom: 10px;
		border-bottom: none;
	}

	.main .scroll-table.table-d::before {
		position: absolute;
		left: 0;
		bottom: 24px;
		width: 100%;
		height: 1px;
		background: #4e4643;
		content: "";
	}

	.main .scroll-table.table-d thead {
		height: 76px;
	}

	.main .scroll-table.table-d thead th {
		height: 38px;
	}

	.main .scroll-table.table-d thead th:first-child {
		position: absolute;
		top: 0;
		left: 0;
		width: 50%;
		z-index: 9;
	}

	.main .scroll-table.table-d thead th:not(:first-child) {
		width: 9em !important;
	}

	.main .scroll-table.table-d thead tr:not(:first-child) th:first-child {
		top: 38px;
	}

	.main .scroll-table.table-d tbody th {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
		position: absolute;
		left: 0;
		width: 160px !important;
		height: 60px;
		padding: 10px 5px 10px 10px;
		z-index: 9;
	}

	.main .scroll-table.table-d tbody td {
		width: 9em !important;
		height: 60px;
	}

	.main table p+.note {
		margin-top: -10px;
		margin-bottom: 10px;
		font-size: 1.2rem;
	}

	/* ----- [NV1] コンテンツナビゲーション ----- */
	.main .nav-content {
		margin-bottom: 30px;
		overflow: hidden;
	}

	.main .nav-content ul {
		width: calc(100% + 1px);
		margin-bottom: -1px;
		border-left: 0 none !important;
		-webkit-box-lines: multiple;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.main .nav-content li {
		width: 50%;
		min-height: 50px;
	}

	.main .nav-content a {
		padding: 5px 10px;
	}

	.main .nav-content a::before {
		right: 20px;
	}

	.main .nav-content.link-internal a {
		padding-right: 30px;
	}

	.main .nav-content ul li:nth-of-type(2n) a {
		border-right: 0 none !important;
	}

	.main .nav-content.link-internal a:after {
		position: absolute;
		top: 50%;
		right: 5px;
		margin: -12px 0 0;
	}

	html:not(.sp) .main .nav-content.link-internal a:hover:after {
		margin-top: -9px;
	}

	/* Defaulf Color */
	.main .nav-content a {
		border-bottom: solid 1px #fff;
	}

	.main .nav-content .current a {
		border-color: #ff5c00 !important;
	}

	html:not(.sp) .main .nav-content a:hover {
		border-color: #777 !important;
	}

	/* Dark Color */
	.main .nav-content.bg-dark a {
		border-color: #5f6768;
	}

	/* ----- [NV2] タブ ----- */
	.main .tab {
		margin-bottom: 30px;
	}

	.main .row .tab {
		margin-bottom: 15px;
	}

	.main .sp-accordion .tab-nav {
		display: none;
	}

	.main .tab-nav li {
		min-height: 45px;
		/*font-size: 1.2rem;*/
		font-size: 1rem;
	}

	.main .tab-nav li a {
		padding: 5px 15px;
	}

	.main .tab-container {
		margin: 0 -15px;
	}

	.main .row .tab .tab-container {
		margin: 0;
	}

	.main .tab-element {
		padding: 5px 15px 5px;
	}

	.main .sp-accordion .tab-slider {
		width: auto;
	}

	.main .sp-accordion .sp-tab-nav {
		display: block;
		margin: 0;
	}

	.main .sp-accordion .sp-tab-nav a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		position: relative;
		min-height: 50px;
		padding: 5px 50px 5px 15px;
		color: #fff !important;
		text-decoration: none;
		text-align: center;
		background-color: #434c4d;
		border-top: solid 1px #5f6768;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
		-moz-transition: background-color 0.2s linear, border-top-color 0.2s linear;
		-webkit-transition: background-color 0.2s linear, border-top-color 0.2s linear;
		transition: background-color 0.2s linear, border-top-color 0.2s linear;
	}

	html:not(.sp) .main .sp-accordion .sp-tab-nav:not(.current) a:hover {
		background-color: #5f6768;
	}

	.main .sp-accordion .sp-tab-nav:first-of-type a,
	.main .sp-accordion .sp-tab-nav.current+.tab-element+.sp-tab-nav a {
		border-top-color: #434c4d;
	}

	.main .sp-accordion .sp-tab-nav.current a {
		background-color: #ff5c00;
		border-top-color: #ff5c00 !important;
	}

	.main .sp-accordion .sp-tab-nav a span {
		position: absolute;
		display: block;
		width: 30px;
		height: 30px;
		top: 50%;
		right: 10px;
		margin-top: -15px;
		border: solid 1.5px rgba(255, 255, 255, 0.5);
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		border-radius: 50%;
	}

	.main .sp-accordion .sp-tab-nav a span:before,
	.main .sp-accordion .sp-tab-nav a span:after {
		content: "";
		position: absolute;
		display: block;
		top: 50%;
		left: 50%;
		background-color: #fff;
		-moz-border-radius: 2px;
		-webkit-border-radius: 2px;
		border-radius: 2px;
	}

	.main .sp-accordion .sp-tab-nav a span:before {
		width: 12px;
		height: 2px;
		margin: -1px 0 0 -6px;
	}

	.main .sp-accordion .sp-tab-nav a span:after {
		width: 2px;
		height: 12px;
		margin: -6px 0 0 -1px;
		-moz-transition: -moz-transform 0.2s linear;
		-webkit-transition: -webkit-transform 0.2s linear;
		transition: transform 0.2s linear;
	}

	html:not(.sp) .main .sp-accordion .sp-tab-nav a:hover span:after,
	.main .sp-accordion .sp-tab-nav.current a span:after {
		-moz-transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}

	.main .sp-accordion .tab-element {
		float: none;
		width: auto;
	}

	/* ----- [FM] フォーム ----- */
	.main .form dl.border-set {
		margin-bottom: 30px;
	}

	.main .form dl.border-set>dt {
		padding: 15px 0 5px;
	}

	.main .form dl.border-set .required:after {
		margin-top: 5px;
		font-size: 0.75rem;
	}

	/* ----- [EB1] 動画埋め込み ----- */
	.main .embed-video {
		margin-bottom: 15px;
	}

	/* ----- [EB2] モーダル ----- */
	.mfp-close {
		width: 45px;
		height: 45px;
		padding-top: 25px;
		font-size: 0.8rem;
		-moz-font-feature-settings: "palt";
		-webkit-font-feature-settings: "palt";
		font-feature-settings: "palt";
	}

	.mfp-close::before,
	.mfp-close::after {
		top: 10px;
		width: 1px;
		height: 17px;
	}

	.mfp-inline-holder .mfp-content .content {
		padding: 60px 30px 30px;
	}

	/* ----- [SL] スライダー ----- */
	.main .slider-wrapper {
		width: 100%;
		margin: 0 auto;
	}

	.main .slider {
		margin-bottom: 15px;
	}

	.main .row .slider {
		margin-left: -15px;
		margin-right: -15px;
	}
}

/*---------------------------------------------
	480px未満
  ---------------------------------------------*/
@media screen and (max-width: 479px) {

	/* ----- [BT] ボタン ----- */
	.main .btn>* {
		width: 100%;
		margin-right: 0;
	}

	/* ----- [FM] フォーム ----- */
	.main .form input[type="text"],
	.main .form textarea {
		max-width: 100%;
	}
}

/*---------------------------------------------
	印刷用
  ---------------------------------------------*/
@media print {
	* {
		-webkit-print-color-adjust: exact;
	}

	body {
		width: 1024px;
		background-color: #fff;
	}

	.l-header {
		position: absolute !important;
		top: 0;
		left: 0;
	}

	.slick-track {
		width: 50000px !important;
		-webkit-transform: translate3d(0, 0, 0) !important;
		-ms-transform: translate3d(0, 0, 0) !important;
		transform: translate3d(0, 0, 0) !important;
	}

	.slider .col1-2 {
		width: 482px !important;
	}

	.slider .col1-3 {
		width: 314.66666666px !important;
	}

	.slider .col1-4 {
		width: 231px !important;
	}

	.slider .col1-5 {
		width: 180.8px !important;
	}

	.slider .col1-6 {
		width: 147.33333333px !important;
	}

	.slick-list {
		padding: 0 !important;
	}

	.slick-arrow {
		display: none !important;
	}

	.slick-dots {
		display: none !important;
	}
}

/* ======== base style ===== */
html {
	overflow-y: scroll;
}

body {
	font-size: 1.6rem;
	line-height: 1.75em;
}

main {
	padding-top: 100px;
	background: #fff;
}

/* ------ パンくずリスト ------- */
main+.breadcrumb {
	padding-top: 60px;
}

.breadcrumb {
	position: relative;
	top: -100px;
	top: -70px;
}

.breadcrumb ul {
	margin: 0;
}

.breadcrumb ul li {
	display: inline-block;
	margin: 0 6px 0 0;
	padding: 0 6px 0 0;
	font-size: 1.2rem;
	font-weight: 700;
}

.breadcrumb ul li::before {
	display: none;
}

.breadcrumb ul li::after {
	position: absolute;
	right: -8px;
	font-weight: 500;
	content: ">";
}

.breadcrumb ul li a:hover {
	text-decoration: underline;
}

.breadcrumb ul li:first-child {
	margin-left: 0;
	padding-left: 0;
}

.breadcrumb ul li:last-child::after {
	display: none;
}

.breadcrumb ul li a {
	font-weight: 500;
	text-decoration: none;
}

@media screen and (max-width: 767px) {
	body {
		font-size: 1.4rem;
		line-height: 1.65em;
	}

	main {
		padding-top: 30px;
	}

	.breadcrumb {
		top: -10px;
		min-height: 40px;
		font-size: 1rem;
	}

	.breadcrumb ul li {
		line-height: 1.35;
	}

	.breadcrumb ul li::after {
		right: -6px;
	}
}

/* ---------------------------------------------
	Header
--------------------------------------------- */
.l-header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 90px;
	background: #fff;
	border-bottom: 1px solid #e8e7e6;
	z-index: 9999;
}

.l-header__logo {
	display: block;
	position: absolute;
	top: 23px;
	left: 18px;
	width: 172px;
	height: 44px;
}

.l-header__logo img {
	width: 100%;
	height: 100%;
}

/* ---------- SP用 ---------- */
.l-header .btn-menu,
.l-header .btn-plus,
.l-header .btn-contact {
	display: none;
}

/* ---------- Nav ---------- */
.l-nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
	-webkit-box-pack: flex-end;
	-ms-flex-pack: flex-end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	height: 100%;
	background: #fff;
}

.l-nav nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
	margin-right: 20px;
}

.l-nav__menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
	height: 100%;
}

.l-nav__menu>li {
	height: 100%;
	margin: 0 20px;
}

.l-nav__menu>li>a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	height: 100%;
	color: #221814;
	text-decoration: none;
}

.l-nav__menu>li>a::before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background: #221814;
	transform: scaleX(0);
	transition: all 0.3s cubic-bezier(0.51, 0.03, 0.54, 0.95);
	content: "";
}

.l-nav__menu>li>a:hover::before {
	transform: scaleX(1);
}

.l-nav__menu li.faq {
	display: none;
}

.l-nav__megamenu {
	display: none;
	position: absolute;
	top: calc(90px - 1px);
	left: 0;
	width: 100%;
	height: auto;
	max-height: calc(100vh - 90px);
	padding-bottom: 10px;
	background: #fff;
	border-top: 1px solid #bcb9b8;
	box-sizing: border-box;
	overflow-y: scroll;
}

.l-nav__megamenu .inner {
	position: relative;
	max-width: calc(1260px + 6.6666%);
	height: 100%;
	margin: 0 auto;
	padding: 25px 3.3333%;
	overflow: hidden;
}

.l-nav__h2,
.l-nav__megamenu .inner h2 {
	font-size: 3rem;
}

.l-nav__h2 span,
.l-nav__megamenu .inner h2 span {
	margin-left: 20px;
	font-size: 2rem;
	font-weight: 500;
	color: #6a6a6a;
}

.l-nav__megamenu .inner .l-nav__h3,
.l-nav__megamenu .inner h3 {
	position: absolute;
	top: 28px;
	right: 3.3333vw;
	font-size: 2rem;
}

.l-nav__megamenu .inner .l-nav__h3 a,
.l-nav__megamenu .inner h3 a {
	position: relative;
	padding-right: 20px;
	color: #221814;
	text-decoration: none;
}


.l-nav__megamenu .inner .l-nav__h3 a::before,
.l-nav__megamenu .inner h3 a::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 14px;
	height: 10px;
	margin: auto;
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: 14px 10px;
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	transform: rotate(-90deg);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.l-nav__megamenu .inner .l-nav__h3 a:hover::before,
.l-nav__megamenu .inner h3 a:hover::before {
	right: -3px;
}

.l-nav__megamenu .inner .col-set {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: calc(100% + 60px);
	margin-top: 25px;
	padding-bottom: 20px;
}

.l-nav__megamenu .inner .col-set .col1-2 {
	width: calc(50% - 60px);
}

.l-nav__megamenu .inner .col-set .col1-3 {
	width: calc(33.3333% - 60px);
}

.l-nav__megamenu .inner .col-set .col1-4 {
	width: calc(25% - 60px);
}

.l-nav__megamenu .inner .col-set .col1-2,
.l-nav__megamenu .inner .col-set .col1-3,
.l-nav__megamenu .inner .col-set .col1-4 {
	position: relative;
	margin-right: 60px;
}

.l-nav__megamenu .inner .col-set .col1-2 .img,
.l-nav__megamenu .inner .col-set .col1-3 .img,
.l-nav__megamenu .inner .col-set .col1-4 .img {
	margin-bottom: 15px;
}

.l-nav__megamenu .inner .col-set .col1-2 .l-nav__h3,
.l-nav__megamenu .inner .col-set .col1-3 .l-nav__h3,
.l-nav__megamenu .inner .col-set .col1-4 .l-nav__h3,
.l-nav__megamenu .inner .col-set .col1-2 h3,
.l-nav__megamenu .inner .col-set .col1-3 h3,
.l-nav__megamenu .inner .col-set .col1-4 h3 {
	position: relative;
	top: auto;
	right: auto;
	margin-bottom: 5px;
	/* font-size: 2rem; */
	-moz-font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
}

.l-nav__megamenu .inner .col-set .col1-2 ul li,
.l-nav__megamenu .inner .col-set .col1-3 ul li,
.l-nav__megamenu .inner .col-set .col1-4 ul li {
	list-style: none;
}

.l-nav__megamenu .inner .col-set .col1-2 ul li a,
.l-nav__megamenu .inner .col-set .col1-3 ul li a,
.l-nav__megamenu .inner .col-set .col1-4 ul li a {
	display: table;
	position: relative;
	padding-right: 15px;
}

.l-nav__megamenu .inner .col-set .col1-2 ul li a::before,
.l-nav__megamenu .inner .col-set .col1-3 ul li a::before,
.l-nav__megamenu .inner .col-set .col1-4 ul li a::before {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 10px;
	height: 10px;
	margin: auto;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.l-nav__megamenu .inner .col-set .col1-2 ul li a:hover::before,
.l-nav__megamenu .inner .col-set .col1-3 ul li a:hover::before,
.l-nav__megamenu .inner .col-set .col1-4 ul li a:hover::before {
	right: -3px;
}

.l-nav__megamenu .inner .col-set .col1-2 ul li a.icon-window::before,
.l-nav__megamenu .inner .col-set .col1-3 ul li a.icon-window::before,
.l-nav__megamenu .inner .col-set .col1-4 ul li a.icon-window::before {
	display: block;
	position: absolute;
	top: 0;
	right: -10px;
	bottom: 0;
	width: 17px;
	height: 13px;
	margin: auto;
	border: none;
	background: url(../images/common/icon-window.svg) no-repeat center;
	background-size: 17px 13px;
	-webkit-transform: rotate(0);
	-moz-transform: rotate(0);
	transform: rotate(0);
	content: "";
}

.l-nav__megamenu .inner .col-set .col1-2 ul li a.icon-window:hover::before,
.l-nav__megamenu .inner .col-set .col1-3 ul li a.icon-window:hover::before,
.l-nav__megamenu .inner .col-set .col1-4 ul li a.icon-window:hover::before {
	right: -13px;
}

.l-nav__megamenu .inner .col-set .col1-2 ul.sub-menu.show-sp,
.l-nav__megamenu .inner .col-set .col1-3 ul.sub-menu.show-sp,
.l-nav__megamenu .inner .col-set .col1-4 ul.sub-menu.show-sp {
	display: block;
}

.l-nav__megamenu .inner .col-set .col1-2 a,
.l-nav__megamenu .inner .col-set .col1-3 a,
.l-nav__megamenu .inner .col-set .col1-4 a {
	color: #221814;
	text-decoration: none;
}

.l-nav__megamenu .inner .col-set .col1-4:last-child {
	margin-right: 0;
}

.l-nav__megamenu .inner .col-set .col1-3.l-nav__service ul li {
	padding-right: 20px;
}

.l-nav__megamenu .inner .col-set .col1-3.l-nav__service ul li a::before {
	right: -5px;
	width: 14px;
	height: 10px;
	border: none;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}

.l-nav__megamenu .inner .col-set .col1-3.l-nav__service ul li a:hover::before {
	right: -8px;
}

.l-nav__megamenu .inner .col-set .l-nav__news {
	margin-right: 0;
}

.l-nav__megamenu .inner .col-set .l-nav__news h3 {
	margin-bottom: 0;
}

.l-nav__megamenu .inner .col-set .l-nav__news .news li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	-webkit-align-items: stretch;
	align-items: stretch;
	padding: 15px 20px 15px 0;
}

.l-nav__megamenu .inner .col-set .l-nav__news .news li a p {
	padding-right: 0;
	padding-left: 0;
}

.l-nav__megamenu .inner .col-set .l-nav__news .news li a::before {
	display: none;
}

.l-nav__megamenu .inner .megamenu-sub {
	display: inline-block;
	width: 100%;
	padding-top: 25px;
	border-top: 1px solid #bcb9b8;
}

.l-nav__megamenu .inner .megamenu-sub li {
	display: inline-block;
	margin-right: 77px;
	margin-bottom: 15px;
}

.l-nav__megamenu .inner .megamenu-sub li:last-child {
	margin-right: 0;
}

.l-nav__megamenu .inner .megamenu-sub .l-nav__h3,
.l-nav__megamenu .inner .megamenu-sub h3 {
	position: relative;
	top: auto;
	right: auto;
}

.l-nav__sub {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-right: 20px;
}

.l-nav__sub li {
	margin-right: 7px;
}

.l-nav__sub li a,
.l-nav__sub li span {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	height: 100%;
	cursor: pointer;
	padding: 0 5px;
}

.l-nav__sub li a::before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background: #221814;
	transform: scaleX(0);
	transition: all 0.3s cubic-bezier(0.51, 0.03, 0.54, 0.95);
	content: "";
}

.l-nav__sub li>a:hover::before {
	transform: scaleX(1);
}

.l-nav__sub li.search {
	margin-right: 0;
}

.l-nav__sub li.search a::before {
	left: 3px;
}

/* 20200110 */
.l-nav__sub li.navtel a {
	text-decoration: none;
	color: #000;
	text-align: center;
	display: block;
	padding: 10px 0 0 10px;
	font-size: 13px;
	line-height: 1.5;
}

.l-nav__sub li.navtel a span {
	font-weight: 500;
	font-size: 33px;
	height: auto;
	padding: 0;
}

.l-nav__sub li.navtel a::before {
	display: none;
}

/* 20200110 */

.l-nav__contact {
	margin-top: 17px;
	margin-right: 10px;
}

.l-nav__contact a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	color: #fff;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
	font-size: 1.4rem;
	text-decoration: none;
	width: 130px;
	height: 56px;
	background: #007DB8;
	transition: 0.3s all cubic-bezier(0.51, 0.03, 0.54, 0.95);

}
/* ↓望月非表示に変更_20240521 */
/* .l-nav__contact a span {
	position: relative;
	padding-left: 29px;
}  */

/* .l-nav__contact a span::before {
	display: block;
	position: absolute;
	top: 7px;
	left: 0;
	width: 18px;
	height: 12px;
	background: url(../images/common/icon-contact.svg) no-repeat center;
	content: "";
} */


/* 望月調整済み_20240521 */
.l-nav__contact a:hover {
	background: #00608A;
}

/* 見積もりアイコン（望月追加） */
.l-nav__quotationrequest {
	margin-top: 17px;
	margin-right: 10px;
}

/* @media screen and (max-width: 1080px) {
	.l-nav__quotationrequest {
		margin-right: 0px;
	}
	} */

.l-nav__quotationrequest a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 130px;
	height: 56px;
	background: #cc4b00;
	color: #fff;
	box-shadow: 0 3px 5px rgba(0, 0, 0, 0.1);
	font-size: 1.4rem;
	text-decoration: none;
	transition: 0.3s all cubic-bezier(0.51, 0.03, 0.54, 0.95);
}


/* .l-nav__quotationrequest a span::before {
	display: block;
	position: absolute;
	top: 7px;
	left: 0;
	width: 18px;
	height: 12px;
	background: url(../images/common/icon-contact.svg) no-repeat center;
	content: "";
} */


.l-nav__quotationrequest a:hover {
	background: #A33C00;
}

.l-nav.is-scroll {
	box-shadow: 3px 0 15px rgba(0, 0, 0, 0.1);
}

.overlay {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: rgba(34, 24, 20, 0.5);
	z-index: -1;
}

@media screen and (max-width: 1240px) {
	.l-nav__megamenu .inner .col-set .col1-4 h3 {
		font-size: 1.75vw;
	}

	.l-nav__megamenu .inner .col-set .l-nav__news .news li a .meta-data {
		width: 100%;
	}

	.l-nav__megamenu .inner .col-set .l-nav__news .news li a p {
		width: 100%;
	}
}

@media screen and (max-width: 1240px) and (-ms-high-contrast: active),
screen and (max-width: 1240px) and (-ms-high-contrast: none) {
	.l-nav__megamenu .inner .col-set .col1-4 h3 {
		font-size: 1.5vw;
	}
}

@media screen and (max-width: 1240px) {
	@supports (-ms-ime-align: auto) {
		.l-nav__megamenu .inner .col-set .col1-4 h3 {
			font-size: 1.5vw;
		}
	}

	.l-nav__menu>li {
		margin: 0 15px;
	}
}

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

	/* ---------- SPナビ ---------- */
	.l-header {
		/* btn-menu */
	}

	.l-header .l-nav {
		display: block;
		position: fixed;
		right: -100%;
		width: 50%;
		margin: 0;
		padding: 0;
		background: #fff;
		-webkit-transition: right 0.2s cubic-bezier(0.29, 0.16, 0.33, 1);
		transition: right 0.2s cubic-bezier(0.29, 0.16, 0.33, 1);
		z-index: 9;
		overflow-y: scroll;
	}

	.l-header .l-nav nav {
		display: block;
		width: 100%;
		height: auto;
		margin: 0;
	}

	.l-header .l-nav__menu {
		display: block;
		position: relative;
		top: 0;
		right: 0;
		width: 100%;
		height: auto;
	}

	.l-header .l-nav__menu>li {
		position: relative;
		width: 100%;
		height: auto;
		margin: 0;
		border-bottom: 1px solid rgba(34, 24, 20, 0.2);
	}

	.l-header .l-nav__menu>li a {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-pack: flex-start;
		-ms-flex-pack: flex-start;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
		position: relative;
		margin-right: 55px;
		padding: 14px 0 13px 25px;
		font-size: 1.8rem;
		font-weight: 700;
		text-align: left;
	}

	.l-header .l-nav__menu>li a::before {
		display: none;
	}

	.l-header .l-nav__menu>li .btn-plus {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 55px;
		height: 55px;
		background: #e5e5e5;
		cursor: pointer;
		z-index: 8;
	}

	.l-header .l-nav__menu>li .btn-plus::before {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 2px;
		height: 20px;
		margin: auto;
		background: #221814;
		content: "";
		-webkit-transition: all 0.2s linear;
		transition: all 0.2s linear;
	}

	.l-header .l-nav__menu>li .btn-plus::after {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		width: 20px;
		height: 2px;
		margin: auto;
		background: #221814;
		content: "";
	}

	.l-header .l-nav__menu>li .btn-plus.active::before {
		-webkit-transform: rotate(-90deg);
		transform: rotate(-90deg);
	}

	.l-header .l-nav__menu>li.faq {
		display: block;
	}

	.l-header .l-nav__megamenu {
		display: none;
		position: relative;
		top: auto;
		height: auto;
		max-height: none;
		margin: 0;
		padding: 0;
		border: none;
		overflow-y: visible;
	}

	.l-header .l-nav__megamenu .inner {
		max-width: none;
		width: 100%;
		max-height: none;
		height: auto;
		margin: auto;
		padding: 0;
		overflow: visible;
	}

	.l-header .l-nav__megamenu .inner>.l-nav__h3,
	.l-header .l-nav__megamenu .inner>h3,
	.l-header .l-nav__megamenu .inner>.l-nav__h3 a::before,
	.l-header .l-nav__megamenu .inner h3 a::before {
		display: none;
	}

	.l-header .l-nav__megamenu .inner .col-set {
		display: block;
		width: 100%;
		height: auto;
		margin: 0;
		padding: 0;
		border: none;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2,
	.l-header .l-nav__megamenu .inner .col-set .col1-3,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 {
		display: block;
		width: 100%;
		height: auto;
		margin-right: 0;
		border-bottom: 1px solid rgba(34, 24, 20, 0.3);
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 .l-nav__h3,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 .l-nav__h3,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 .l-nav__h3,
	.l-header .l-nav__megamenu .inner .col-set .col1-2 h3,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 h3,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 h3 {
		position: relative;
		top: auto;
		right: auto;
		margin-bottom: 0;
		background: #e5e5e5;
		font-size: 1.5rem;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 .l-nav__h3 a,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 .l-nav__h3 a,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 .l-nav__h3 a,
	.l-header .l-nav__megamenu .inner .col-set .col1-2 h3 a,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 h3 a,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 h3 a {
		font-size: 1.5rem;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 .l-nav__h3 .btn-plus,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 .l-nav__h3 .btn-plus,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 .l-nav__h3 .btn-plus,
	.l-header .l-nav__megamenu .inner .col-set .col1-2 h3 .btn-plus,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 h3 .btn-plus,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 h3 .btn-plus {
		background: #cccccc;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 ul.sub-menu,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 ul.sub-menu,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 ul.sub-menu {
		display: none;
		width: 100%;
		height: auto;
		background: #cccccc;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 ul.sub-menu li,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 ul.sub-menu li,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 ul.sub-menu li {
		list-style: none;
		border-bottom: 1px solid rgba(34, 24, 20, 0.3);
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 ul.sub-menu li a,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 ul.sub-menu li a,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 ul.sub-menu li a {
		display: block;
		width: 100%;
		font-size: 1.5rem;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 ul.sub-menu li a::before,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 ul.sub-menu li a::before,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 ul.sub-menu li a::before {
		display: none;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 ul.sub-menu li:last-child,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 ul.sub-menu li:last-child,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 ul.sub-menu li:last-child {
		border: none;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 ul.sub-menu.show-sp li a span,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 ul.sub-menu.show-sp li a span,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 ul.sub-menu.show-sp li a span {
		position: relative;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2 ul.sub-menu.show-sp li a span::before,
	.l-header .l-nav__megamenu .inner .col-set .col1-3 ul.sub-menu.show-sp li a span::before,
	.l-header .l-nav__megamenu .inner .col-set .col1-4 ul.sub-menu.show-sp li a span::before {
		display: block;
		position: absolute;
		top: 0;
		right: -25px;
		bottom: 0;
		width: 17px;
		height: 13px;
		margin: auto;
		border: none;
		background: url(../images/common/icon-window.svg) no-repeat center;
		background-size: 17px 13px;
		-webkit-transform: rotate(0);
		-moz-transform: rotate(0);
		transform: rotate(0);
		content: "";
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-2.l-nav__news {
		display: none;
	}

	.l-header .l-nav__megamenu .inner .col-set .col1-4:last-child,
	.l-header .l-nav__megamenu .inner .col-set .col1-3.l-nav__service {
		border-bottom: none;
	}

	.l-header .l-nav__megamenu .inner .col1-3.l-nav__service ul li {
		position: relative;
		padding-right: 0;
		border-bottom: 1px solid rgba(34, 24, 20, 0.3);
	}

	.l-header .l-nav__megamenu .inner .col1-3.l-nav__service ul li h3 a {
		display: block;
		position: relative;
		width: 100%;
		padding-right: 0;
		border-top: 1px solid rgba(34, 24, 20, 0.3);
	}

	.l-header .l-nav__megamenu .inner .col1-3.l-nav__service ul li:first-of-type .l-nav__h3 a,
	.l-header .l-nav__megamenu .inner .col1-3.l-nav__service ul li:first-of-type h3 a {
		border-top: none;
	}

	.l-header .l-nav__megamenu .inner .megamenu-sub,
	.l-header .l-nav__megamenu .inner .l-nav__service ul {
		display: block;
		padding: 0;
		background: #e5e5e5;
	}

	.l-header .l-nav__megamenu .inner .megamenu-sub li,
	.l-header .l-nav__megamenu .inner .l-nav__service ul li {
		display: block;
		height: 55px;
		margin: 0;
		border-bottom: 1px solid rgba(34, 24, 20, 0.3);
	}

	.l-header .l-nav__megamenu .inner .megamenu-sub li a,
	.l-header .l-nav__megamenu .inner .l-nav__service ul li a {
		font-size: 1.5rem;
	}

	.l-header .l-nav__megamenu .inner .megamenu-sub li:last-child,
	.l-header .l-nav__megamenu .inner .l-nav__service ul li:last-child {
		border: none;
	}

	.l-header .l-nav__megamenu .inner .l-nav__service ul li a::before {
		display: none;
	}

	.l-header .l-nav__megamenu .l-nav__h2,
	.l-header .l-nav__megamenu h2,
	.l-header .l-nav__megamenu .img {
		display: none;
	}

	.l-header .l-nav .l-nav__megamenu.news .col1-4:nth-child(2) {
		border-bottom: none;
	}

	.l-header .l-nav__sub {
		position: relative;
		margin: 0;
		border-bottom: 1px solid #d3d1d0;
	}

	/* 20190723 検索機能非表示のためコメントアウト
  復活の場合は、以下コメントアウトを外し、20190723追加 をコメントアウトしてください */
	/*.l-header .l-nav__sub li {
    width: 50%;
    margin: 0;
    padding: 0;
  }*/

	/* 20190723 追加 */
	.l-header .l-nav__sub li {
		width: 100%;
		margin: 0;
		padding: 0;
	}

	/* 20190723 追加 */

	.l-header .l-nav__sub li a {
		width: 100%;
		height: 50px;
	}

	.l-header .l-nav__sub li.navtel a {
		height: auto;
		padding: 16px 0;
	}

	.l-header .l-nav__sub li a::before {
		display: none;
	}

	/* 20190723 検索機能非表示のためコメントアウト
  復活の場合は、以下コメントアウトを外してください */
	.l-header .l-nav__sub li:first-of-type {
		/*border-right: 1px solid #d3d1d0;*/
	}

	.l-header .l-nav__sub {
		border-bottom: none;
	}

	.l-header .l-nav__sub li.search {
		position: relative;
	}

	/* .l-header .l-nav__contact {
		position: relative;
		margin: 30px auto;
		margin: 15px auto 30px;
		padding: 0 15px;
		font-size: 1.2rem;
	} */

	.l-header .l-nav__contact a {
		width: 180px;
		/* height: 60px; */
		/* font-size: 1.7rem;  */
		/* margin-top: 15px; */
		margin: auto;
	}

	.l-header .l-nav__contact a span::before {
		top: 7px;
		width: 21px;
		height: 14px;
		background-size: 21px 14px;
	}

	.l-header .l-nav__quotationrequest a {
		width: 180px;
		/* height: 60px; */
		margin: auto;
		/* font-size: 1.4rem; */
	}

	.l-header .l-nav__quotationrequest a span::before {
		top: 7px;
		width: 21px;
		height: 14px;
		background-size: 21px 14px;
	}

	.l-header .btn-menu.active {
		position: fixed;
		right: calc(50% + 10px);
		background: transparent;
	}

	.l-header .btn-menu.active span:first-child {
		transform: rotate(45deg);
	}

	.l-header .btn-menu.active span:nth-child(2) {
		display: none;
	}

	.l-header .btn-menu.active span:nth-child(3) {
		top: 19px;
		transform: rotate(-45deg);
	}

	.l-header .l-nav.open {
		right: 0;
		height: 100%;
		-webkit-transition: right 0.2s cubic-bezier(0.29, 0.16, 0.33, 1);
		transition: right 0.2s cubic-bezier(0.29, 0.16, 0.33, 1);
	}

	.l-header .overlay {
		display: none;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background: rgba(34, 22, 21, 0.9);
		z-index: 0;
	}

	.l-header .btn-menu {
		display: block;
		position: absolute;
		right: 10px;
		top: 15px;
		width: 60px;
		height: 60px;
		background: #221814;
		-webkit-transition: right 0.2s cubic-bezier(0.29, 0.16, 0.33, 1);
		transition: right 0.2s cubic-bezier(0.29, 0.16, 0.33, 1);
		z-index: 9;
		cursor: pointer;
	}

	.l-header .btn-menu span {
		display: block;
		position: relative;
		top: 20px;
		right: 0;
		left: 0;
		width: 20px;
		height: 1px;
		margin: auto;
		background: #fff;
	}

	.l-header .btn-menu span:nth-child(2) {
		top: 26px;
	}

	.l-header .btn-menu span:nth-child(3) {
		top: 32px;
	}

	.l-header .btn-menu p {
		position: relative;
		top: 36px;
		color: #fff;
		font-size: 0.9rem;
		transform: scale(0.9);
		text-align: center;
		line-height: 1;
	}

	.l-header .btn-contact {
		display: block;
		position: absolute;
		top: 15px;
		right: 80px;
		width: 100px;
		height: 60px;
		padding: 15px 5px 5px;
		/* background: #eb9300; */
		background: #007DB8;
		color: #fff;
		text-align: center;
		box-sizing: border-box;
	}

	.l-header .btn-contact a {
		color: #fff;
		text-decoration: none;
		font-size: 12px;
	}

	.l-header .btn-contact span {
		position: relative;
		padding: 18px 0 0 0;
		font-size: 1.2rem;
		transform: scale(0.9);
	}

	.l-header .btn-contact span::before {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		width: 18px;
		height: 12px;
		margin: auto;
		/* background: url(../images/common/icon-contact.svg) no-repeat center; */
		background-size: 18px 12px;
		content: "";
	}
}



@media screen and (max-width: 767px) {
	.l-header {
		height: 65px;
	}

	.l-header__logo {
		top: 17px;
		left: 15px;
		width: 117.5px;
		height: 30px;
	}

	.l-header .l-nav {
		width: 78%;
	}

	.l-header .l-nav nav {
		width: 100%;
	}

	.l-header .l-nav nav.open {
		right: 0;
	}

	.l-header .l-nav__menu>li a {
		padding: 16px 0 16px 25px;
	}

	/* .l-header .l-nav__contact a {
		width: 100%;
	} */

	.l-header .l-nav__contact a span::before {
		top: 4px;
	}

	.l-header .l-nav .searchbox input[type="text"]::placeholder {
		font-size: 1.2rem !important;
	}

	.l-header .btn-menu {
		display: block;
		right: 5px;
		top: 5px;
		width: 55px;
		height: 55px;
		background: #221814;
	}

	.l-header .btn-menu span {
		display: block;
		position: relative;
		top: 15px;
		right: 0;
		left: 0;
		width: 17px;
		height: 1px;
		margin: auto;
		background: #fff;
	}

	.l-header .btn-menu span:nth-child(2) {
		top: 20px;
	}

	.l-header .btn-menu span:nth-child(3) {
		top: 25px;
	}

	.l-header .btn-menu p {
		position: relative;
		top: 30px;
		color: #fff;
		font-size: 0.9rem;
		transform: scale(0.8);
		text-align: center;
		line-height: 1;
	}

	.l-header .btn-menu.active {
		right: calc(78% + 10px);
	}

	.l-header .btn-menu.active span:first-child {
		top: 20px;
	}

	.l-header .btn-menu.active span:nth-child(3) {
		top: 19px;
	}

	.l-header .btn-contact {
		position: absolute;
		top: 5px;
		right: 60px;
		width: 100px;
		height: 55px;
		padding: 15px 5px 5px;
		margin: 0;
		font-size: 1.8rem;
		line-height: 1.3;
	}

	.l-header .btn-contact a {
		text-align: center;
	}

	.l-header .btn-contact a span {
		padding: 18px 0 0 0;
		font-size: 1.2rem;
		transform: scale(0.8);
	}

	.l-header .btn-contact a span::before {
		top: 0;
		right: 0;
		left: 0;
		width: 20px;
		height: 13px;
		margin: auto;
	}
}

/* 検索
----------------------- */
.header-search {
	display: none;
	position: absolute;
	top: calc(90px - 1px);
	left: 0;
	width: 100%;
	height: auto;
	padding: 25px 0;
	background: #fff;
	border-top: 1px solid #bcb9b8;
	box-shadow: 0px 2px 20px -4px rgba(0, 0, 0, 0.1);
	-webkit-box-shadow: 0px 2px 20px -4px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 0px 2px 20px -4px rgba(0, 0, 0, 0.1);
}

.searchbox {
	position: relative;
	max-width: 960px;
	height: 50px;
	margin: auto;
}

.searchbox input[type="text"] {
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 50px;
	/* padding: 15px 30px; */
	padding: 15px 150px 15px 30px;
	border: 1px solid #aeaeae;
	background-color: #fff;
	border-radius: 8px;
	font-size: 1.6rem;
	outline: none;
}

.searchbox input[type="submit"] {
	cursor: pointer;
	right: 0;
	top: 0;
	box-sizing: border-box;
	outline: none;
	box-shadow: none;
	appearance: button;
	-webkit-appearance: button;
	display: block;
	position: absolute;
	font-size: 1.6rem;
	color: #fff;
	background: #777777;
	width: 120px;
	height: 50px;
	border: 1px solid #bcb9b8;
	border-top-right-radius: 8px;
	border-bottom-right-radius: 8px;
	border-left: none;
	text-align: center;
}

.searchbox :-moz-placeholder {
	color: #c0c0c0;
	opacity: 1;
}

.searchbox ::-webkit-input-placeholder {
	color: #c0c0c0;
	opacity: 1;
}

.searchbox :-ms-input-placeholder {
	color: #c0c0c0;
}

.searchbox :placeholder-shown {
	color: #c0c0c0;
}

@media screen and (max-width: 1060px) {
	.l-header .header-search {
		position: relative;
		top: auto;
		padding: 15px 15px 0;
		border: none;
		box-shadow: none;
	}

	.l-header .searchbox input[type="text"] {
		height: 45px;
		margin-bottom: 0;
		/* padding: 5px 10px; */
		padding: 5px 50px 5px 10px;
		border-radius: 4px;
		font-size: 1.4rem;
		box-shadow: none;
		-moz-appearance: none;
		-webkit-appearance: none;
		appearance: none;
	}

	.l-header .searchbox input[type="submit"] {
		width: 45px;
		height: 45px;
		font-size: 1.4rem;
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
		border-top-right-radius: 4px;
		border-bottom-right-radius: 4px;
	}
}

@media screen and (max-width: 767px) {
	.searchbox input[type="text"]::placeholder {
		font-size: 1.2rem !important;
	}
}

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

	.searchbox input::-webkit-input-placeholder,
	.searchbox input:-moz-placeholder,
	.searchbox input::-moz-placeholder,
	.searchbox input:-ms-input-placeholder {
		transform: scale(0.9);
	}
}

/* ---------------------------------------------
	タイトル周り
--------------------------------------------- */
/* ---------- headingarea イメージ無し ---------- */
#headingarea {
	margin-top: 90px;
}

.headingarea-noimg {
	position: relative;
	width: 100%;
	height: 240px;
	/* ---------- recruit/career ---------- */
}

.headingarea-noimg::before {
	display: block;
	position: fixed;
	top: 90px;
	left: 0;
	width: 100%;
	height: 240px;
	background: url(../images/heading-bg.jpg) no-repeat center;
	background-size: cover;
	z-index: -1;
	content: "";
}

.headingarea-noimg__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	max-width: 1170px;
	width: 100%;
	height: inherit;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: content-box;
}

.headingarea-noimg__inner h1 {
	font-weight: 700;
	font-size: 4.2rem;
	text-transform: uppercase;
	line-height: 1.25;
}

.headingarea-noimg__inner h1 span {
	display: block;
	font-size: 2.2rem;
}

.headingarea-noimg__inner p.lede {
	font-size: 1.4rem;
	line-height: 1.45;
}

.headingarea-noimg__inner.p-recruit {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	max-width: 1170px;
	width: 100%;
	height: inherit;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: content-box;
}

.headingarea-noimg__inner.p-recruit .tit-area {
	width: 100%;
}

.headingarea-noimg__inner.p-recruit .tit-area span.area-name {
	margin-left: 20px;
	font-weight: 600;
}

.headingarea-noimg__inner.p-recruit .tit-area span.sub-tit {
	font-size: 2.2rem;
}

.headingarea-noimg .scroll-bar {
	display: block;
	position: absolute;
	bottom: -20px;
	right: 0;
	left: 0;
	margin: 0 auto;
	width: 1px;
	height: 96px;
	z-index: 1;
	overflow: hidden;
}

.headingarea-noimg .scroll-bar::after {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 96px;
	margin: auto;
	background: #221814;
	content: "";
}

.headingarea-noimg .scroll-bar.animation::after {
	-webkit-animation: scroll-bar 1s linear;
	animation: scroll-bar 1s linear;
}

@-webkit-keyframes scroll-bar {
	0% {
		top: 0;
		height: 0;
	}

	30% {
		top: 0;
		height: 96px;
	}

	50% {
		top: 96px;
		height: 0;
	}

	70% {
		top: 0;
		height: 0;
	}

	100% {
		top: 0;
		height: 96px;
	}
}

@keyframes scroll-bar {
	0% {
		top: 0;
		height: 0;
	}

	30% {
		top: 0;
		height: 96px;
	}

	50% {
		top: 96px;
		height: 0;
	}

	70% {
		top: 0;
		height: 0;
	}

	100% {
		top: 0;
		height: 96px;
	}
}

/* ---------- headingarea イメージ有り ---------- */
.headingarea {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	height: 350px;
	background-position: center right;
	background-size: 50%;
	background-repeat: no-repeat;
}

.headingarea::before {
	display: block;
	position: fixed;
	top: 90px;
	left: 0;
	width: 50%;
	height: 350px;
	background: url(../images/ir/heading-tit.jpg) no-repeat top left;
	background-size: cover;
	content: "";
	z-index: -1;
}

.headingarea__tit {
	position: relative;
	width: 50%;
	height: inherit;
	height: 350px;
}

.headingarea__tit h1 {
	font-weight: 600;
	/*font-size: 4.2rem;*/
	font-size: 4rem;
	line-height: 1.45;
	text-transform: uppercase;
}

.headingarea__tit h1 span {
	display: block;
	color: #6a6a6a;
	font-size: 2.2rem;
	font-weight: normal !important;
	letter-spacing: 0.02em;
}

.headingarea__tit h1.en {
	font-family: "Open Sans", sans-serif;
	font-weight: normal;
	font-size: 4.2rem;
	line-height: 1.45;
	text-transform: uppercase;
}

.headingarea__tit p {
	font-size: 1.4rem;
	line-height: 1.5;
}

.headingarea__tit h1+p {
	margin-top: 30px;
}

.headingarea__tit-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-direction: column;
	flex-direction: column;
	max-width: 585px;
	width: 100%;
	height: 100%;
	padding: 0 40px 0 0;
	float: right;
}

.headingarea__tit-inner::after {
	display: block;
	clear: both;
	content: "";
}

.headingarea__img {
	position: relative;
	width: 50%;
	height: inherit;
	height: 350px;
	background-position: bottom left;
	background-size: cover;
	background-repeat: no-repeat;
}

.headingarea__img::after {
	display: block;
	position: fixed;
	top: 90px;
	right: 0;
	width: 50%;
	height: 350px;
	background: url(../images/ir/heading-img.jpg) no-repeat top left;
	background-size: cover;
	content: "";
	z-index: -1;
}

.headingarea .scroll-bar {
	display: block;
	position: absolute;
	bottom: -20px;
	right: 0;
	left: 0;
	margin: 0 auto;
	width: 1px;
	height: 96px;
	z-index: 1;
	overflow: hidden;
}

.headingarea .scroll-bar::after {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 0;
	margin: auto;
	background: #221814;
	content: "";
}

.headingarea .scroll-bar.animation::after {
	height: 96px;
	-webkit-animation: scroll-bar 1s linear;
	animation: scroll-bar 1s linear;
}

.headingarea .btn.icon-window a::after {
	width: 18px;
	height: 13px;
	transform: rotate(0);
	background: url(../images/common/icon-window.svg) no-repeat center;
}

.headingarea .btn.icon-window a:hover::after {
	transform: rotate(0);
	background: url(../images/common/icon-window-white.svg) no-repeat center;
}

@-webkit-keyframes scroll-bar {
	0% {
		top: 0;
		height: 0;
	}

	30% {
		top: 0;
		height: 96px;
	}

	50% {
		top: 96px;
		height: 0;
	}

	70% {
		top: 0;
		height: 0;
	}

	100% {
		top: 0;
		height: 96px;
	}
}

@keyframes scroll-bar {
	0% {
		top: 0;
		height: 0;
	}

	30% {
		top: 0;
		height: 96px;
	}

	50% {
		top: 96px;
		height: 0;
	}

	70% {
		top: 0;
		height: 0;
	}

	100% {
		top: 0;
		height: 96px;
	}
}

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

	.headingarea-noimg__inner,
	.headingarea-noimg__inner.p-recruit {
		max-width: none;
		box-sizing: border-box;
	}

	.headingarea__tit-inner {
		max-width: none;
		padding-left: 20px;
	}
}

@media screen and (max-width: 980px) {
	.headingarea__tit h1 {
		font-size: 4.2vw;
	}

	.headingarea__tit h1 span {
		font-size: 2.2vw;
	}

	.headingarea-noimg .scroll-bar {
		bottom: -20px;
		height: 75px;
	}

	.headingarea-noimg .scroll-bar::after {
		height: 0;
	}

	.headingarea-noimg .scroll-bar.animation::after {
		height: 75px;
	}
}

@media screen and (max-width: 767px) {
	#headingarea {
		margin-top: 65px;
		background-position: center top;
	}

	/* ----- headingarea イメージ無し　------ */
	.headingarea-noimg {
		height: 180px;
	}

	.headingarea-noimg::before {
		top: 65px;
		height: 180px;
	}

	.headingarea-noimg__inner {
		padding: 0 15px;
		box-sizing: border-box;
	}

	.headingarea-noimg__inner h1 {
		font-size: 2.5rem;
		line-height: 1.45;
	}

	.headingarea-noimg__inner p.lede {
		font-size: 1.2rem;
	}

	.headingarea-noimg__inner.p-recruit {
		padding: 0 15px;
	}

	.headingarea-noimg__inner.p-recruit .tit-area span.sub-tit {
		font-size: 1.6rem;
	}

	.headingarea-noimg .scroll-bar {
		bottom: -15px;
		height: 55px;
	}

	.headingarea-noimg .scroll-bar::after {
		height: 0;
	}

	.headingarea-noimg .scroll-bar.animation::after {
		height: 55px;
	}

	/* ----- headingarea イメージ有り　------ */
	.headingarea {
		height: auto;
	}

	.headingarea::before {
		position: fixed;
		top: 65px;
		width: 100%;
		height: 180px;
	}

	.headingarea::after {
		bottom: -15px;
		height: 55px;
	}

	.headingarea__tit {
		width: 100%;
		height: 180px;
		margin: 0;
		padding: 0;
	}

	.headingarea__tit h1 {
		/*font-size: 3rem;*/
		font-size: 2.5rem;
	}

	.headingarea__tit h1 span {
		font-size: 1.9rem;
	}

	.headingarea__tit h1.en {
		font-size: 3rem;
	}

	.headingarea__tit h1.en span {
		font-size: 1.9rem;
	}

	.headingarea__tit h1+p {
		margin-top: 15px;
		max-width: 620px;
	}

	.headingarea__tit-inner {
		padding: 0 15px;
		float: none;
	}

	.headingarea__img {
		position: relative;
		width: 100%;
		height: 150px;
		margin: 0;
		padding: 0;
		order: 0;
	}

	.headingarea__img::after {
		position: fixed;
		top: calc(180px + 65px);
		width: 100%;
		height: 165px;
	}

	.headingarea .scroll-bar {
		bottom: -15px;
		height: 55px;
	}

	.headingarea .scroll-bar::after {
		height: 55px;
		height: 0;
	}

	.headingarea .scroll-bar.animation::after {
		height: 55px;
	}
}

@media screen and (max-width: 360px) {
	.headingarea__tit h1 {
		font-size: 2.5rem;
	}

	.headingarea__tit h1 span {
		font-size: 1.6rem;
	}
}

/* ---------- 登録・採用情報 Top ---------- */
.headingarea.p-recruit {
	height: 650px;
	background: url(../images/recruit/recruit-top-mainvisual.jpg) no-repeat top center;
	background-size: cover;
}

.headingarea.p-recruit::before {
	display: none;
}

.headingarea.p-recruit::after {
	display: none;
}

.headingarea.p-recruit .headingarea__tit {
	width: 100%;
	height: auto;
}

.headingarea.p-recruit .headingarea__tit .headingarea__tit-inner {
	display: block;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: flex-start;
	-ms-flex-align: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-direction: column;
	flex-direction: column;
	max-width: 1170px;
	max-width: calc(1170px + 40px);
	width: 100%;
	margin: 0 auto;
	padding: 20px 20px 130px;
	float: none;
}

.headingarea.p-recruit .headingarea__tit .headingarea__tit-inner h1 {
	line-height: 1.35;
	order: 1;
}

.headingarea.p-recruit .headingarea__tit .headingarea__tit-inner h1 span {
	margin-top: 5px;
}

@media screen and (max-width: 767px) {
	.headingarea.p-recruit {
		height: 500px;
		background: url(../images/sp/recruit/mainvisual.jpg) no-repeat top center;
		background-size: cover;
	}

	.headingarea.p-recruit::before {
		display: block;
		position: absolute;
		top: auto;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 275px;
		background: url(../images/sp/recruit/mainvisual-img.png) no-repeat left top;
		background-size: cover;
		content: "";
		z-index: 0;
	}

	.headingarea.p-recruit .headingarea__tit .headingarea__tit-inner {
		padding-top: 240px;
	}
}

@media screen and (max-width: 360px) {
	.headingarea.p-recruit .headingarea__tit .headingarea__tit-inner p {
		font-size: 6.9vw;
	}
}

/* ---------- 採用 - 会社紹介 ---------- */
.headingarea.recruit-corporate .headingarea__img::after {
	background: url(../images/recruit/mainvisual.jpg) no-repeat top center;
	background-size: cover;
}

@media screen and (max-width: 767px) {
	.headingarea.p-corporate::before {
		height: 250px;
	}

	.headingarea.p-corporate .headingarea__tit {
		height: 250px;
	}

	.headingarea.p-corporate .headingarea__tit h1 {
		font-size: 2.5rem;
	}

	.headingarea.p-corporate .headingarea__tit h1 span {
		font-size: 1.9rem;
	}

	.headingarea.p-corporate .headingarea__img {
		height: 150px;
	}

	.headingarea.p-corporate .headingarea__img::after {
		top: calc(250px + 64px);
		top: calc(250px + 90px);
		height: 150px;
	}
}

/* ---------- 採用情報 - 職種紹介 ---------- */
.headingarea.p-recruit-occuapations .headingarea__img::after {
	background: url(../images/recruit/occupations/occupations-img.jpg) no-repeat top center;
	background-size: cover;
}

/* 採用情報　- 営業職 */
.headingarea.p-recruit-occuapations-sales .headingarea__img::after {
	background: url(../images/recruit/occupations/occupations-sales-img.jpg) no-repeat top center;
	background-size: cover;
}

/* 採用情報　- 営業職 */
.headingarea.p-recruit-occuapations-coordinator .headingarea__img::after {
	background: url(../images/recruit/occupations/occupations-coordinator-img.jpg) no-repeat top center;
	background-size: cover;
}

/* 採用情報　- job3 */
.headingarea.p-recruit-occuapations-job3 .headingarea__img::after {
	background: url(../images/recruit/occupations/occupations-coordinator-job3-img.jpg) no-repeat top center;
	background-size: cover;
}

/* ---------- 採用情報　- 新卒採用 ---------- */
.headingarea.p-recruit-graduate .headingarea__img::after {
	background: url(../images/recruit/graduate/graduate-img.jpg) no-repeat top center;
	background-size: cover;
}

/* ---------- お問い合わせ一覧 ---------- */
.headingarea.p-contact-list .headingarea__img::after {
	background: url(../images/contact/heading-img.jpg) no-repeat top center;
	background-size: cover;
}

/* ---------- 会社紹介 ---------- */
.headingarea.p-corporate .headingarea__img::after {
	background: url(../images/recruit/corporate/occupations-img.jpg) no-repeat top center;
	background-size: cover;
}

/* ---------- 社員紹介 ---------- */
.headingarea.p-member-top .headingarea__img::after {
	background: url(../images/recruit/member/mainvisual.jpg) no-repeat top center;
	background-size: cover;
}

.headingarea.p-member {
	width: 100%;
	height: 500px;
}

.headingarea.p-member::before {
	width: 100%;
	height: 500px;
	background: url(../images/recruit/member/member01/member-img.jpg) no-repeat center;
	background-size: cover;
}

.headingarea.p-member .headingarea__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	max-width: 1170px;
	width: 100%;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: content-box;
}

.headingarea.p-member .headingarea__inner .headingarea__tit {
	width: 60%;
	height: auto;
}

.headingarea.p-member .headingarea__inner .headingarea__tit p {
	font-size: 2.8rem;
}

.headingarea.p-member .headingarea__inner .member-info {
	position: absolute;
	right: 0;
	bottom: 0;
	max-width: 380px;
	padding: 35px 0 35px 35px;
	color: #fff;
}

.headingarea.p-member .headingarea__inner .member-info::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 2000px;
	height: 100%;
	background: #221814;
	content: "";
}

.headingarea.p-member .headingarea__inner .member-info dl {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.headingarea.p-member .headingarea__inner .member-info dl dt,
.headingarea.p-member .headingarea__inner .member-info dl dd {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
}

.headingarea.p-member .headingarea__inner .member-info dl dt {
	margin-bottom: 3px;
	padding-bottom: 3px;
	font-weight: bold;
}

.headingarea.p-member .headingarea__inner .member-info dl dt::before {
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100px;
	height: 1px;
	background: #fff;
	content: "";
}

.headingarea.p-member .headingarea__inner .member-info dl dd {
	font-size: 1.4rem;
}

/* メンバー毎に写真変更 */
.headingarea.p-member.member02::before {
	background: url(../images/recruit/member/member02/member-img.jpg) no-repeat center;
	background-size: cover;
}

.headingarea.p-member.member03::before {
	background: url(../images/recruit/member/member03/member-img.jpg) no-repeat center;
	background-size: cover;
}

.headingarea.p-member.member04::before {
	background: url(../images/recruit/member/member04/member-img.jpg) no-repeat center;
	background-size: cover;
}

.headingarea.p-member.member05::before {
	background: url(../images/recruit/member/member05/member-img.jpg) no-repeat center;
	background-size: cover;
}

.headingarea.p-member.member06::before {
	background: url(../images/recruit/member/member06/member-img.jpg) no-repeat center;
	background-size: cover;
}

@media screen and (min-width: 1441px) {
	.headingarea.p-member::before {
		background-position: top center !important;
	}
}

@media screen and (max-width: 1210px) {
	.headingarea.p-member .headingarea__inner .headingarea__tit .show-pc {
		display: none;
	}
}

@media screen and (max-width: 1024px) {
	.headingarea.p-member .headingarea__inner .headingarea__tit .show-pc {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.headingarea.p-member {
		padding-top: 225px;
		height: auto;
	}

	.headingarea.p-member::before {
		width: 100%;
		height: 225px;
	}

	.headingarea.p-member::after {
		top: 196px;
		bottom: auto;
		height: 55px;
	}

	.headingarea.p-member .headingarea__inner {
		display: block;
		padding: 40px 0 0 15px;
		background: #fff;
	}

	.headingarea.p-member .headingarea__inner .headingarea__tit {
		width: 100%;
		margin-bottom: 5px;
	}

	.headingarea.p-member .headingarea__inner .headingarea__tit h1 {
		font-size: 2.5rem;
		line-height: 1.35;
	}

	.headingarea.p-member .headingarea__inner .headingarea__tit p {
		margin-top: 0;
		font-size: 1.4rem;
		font-weight: 700;
	}

	.headingarea.p-member .headingarea__inner .member-info {
		position: relative;
		display: table;
		max-width: 80%;
		margin-left: auto;
		padding: 10px 15px 15px;
	}

	.headingarea.p-member .headingarea__inner .member-info::before {
		width: 200%;
	}

	.headingarea.p-member .headingarea__inner .member-info dl dt,
	.headingarea.p-member .headingarea__inner .member-info dl dd {
		font-size: 1.2rem;
	}

	.headingarea.p-member .scroll-bar {
		top: 185px;
		bottom: auto;
	}
}

/* ---------- 企業情報 ---------- */
.headingarea.corporate-top .headingarea__img::after {
	background: url(../images/corporate/mainvisual.jpg) no-repeat top center;
	background-size: cover;
}

/* 当社の強み　*/
.headingarea.corporate-strength .headingarea__img::after {
	background: url(../images/corporate/strength/mainvisual.jpg) no-repeat top center;
	background-size: cover;
}

/* ======== footer style ===== */
#footer {
	background: #f5f5f5;
	font-size: 1.3rem;
}

#footer .inner {
	position: relative;
	margin: 0 auto;
	padding-top: 35px;
}

#footer #btn-pagetop {
	position: relative;
	width: 80px;
	height: 80px;
	background: #989898;
	font-size: 1.2rem;
	text-align: center;
	z-index: 99;
}

#footer #btn-pagetop a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	padding-top: 40px;
	color: #fff;
}

#footer #btn-pagetop a::before {
	display: block;
	position: absolute;
	top: 22px;
	right: 0;
	left: 0;
	width: 21px;
	height: 15px;
	margin: auto;
	background: url(../images/common/arrow-white.svg) no-repeat center;
	background-size: contain;
	-webkit-transform: rotate(-180deg);
	-moz-transform: rotate(-180deg);
	transform: rotate(-180deg);
	-webkit-transition: top 0.2s linear;
	transition: top 0.2s linear;
	content: "";
}

#footer #btn-pagetop a:hover::before {
	top: 18px;
}

#footer a {
	color: #221814;
	text-decoration: none;
}

#footer .footer-upper-nav,
#footer .footer-lower-nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 20px;
}

#footer .footer-upper-nav li,
#footer .footer-lower-nav li {
	margin: 0 20px;
}

#footer .footer-lower-nav {
	margin-bottom: 22px;
	font-size: 1.2rem;
}

#footer .footer-lower-nav li {
	margin: 0 21px;
}

#footer .footer-logo-area {
	padding: 30px 0 35px;
	border-top: 1px solid #cbc9c8;
}

#footer .footer-logo-area ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	margin: 0 auto 20px;
}

#footer .footer-logo-area ul li {
	margin: 0 20px;
}

#footer .footer-logo-area ul li:nth-child(2) {
	margin-right: 43px;
	margin: 0 21px;
}

#footer .footer-logo-area ul li:nth-child(2) a:hover {
	opacity: 0.8;
}
#footer .footer-logo-area p {
	text-align: center;
	line-height: 1;
}

#footer .copyright {
	display: block;
	margin: 0 auto;
	padding-bottom: 5px;
	font-size: 1.2rem;
	text-align: center;
}

#footer .top-note {
	position: absolute;
	bottom: 30px;
	left: 20px;
	color: #8c8c8c;
	font-size: 1rem;
}

#footer .top-note li {
	position: relative;
	padding-left: 25px;
	line-height: 1.25;
}

#footer .top-note li span {
	position: absolute;
	left: 12px;
}

#footer .note:before {
	content: "※";
	position: absolute;
	width: auto;
	height: auto;
	top: 0;
	left: 0;
	margin: 0;
	background-color: transparent !important;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
}

@media screen and (max-width: 767px) {
	#footer .inner {
		padding-top: 50px;
		padding-bottom: 20px;
		padding-bottom: 0;
	}

	#footer #btn-pagetop {
		position: relative;
		top: -50px;
		right: 0;
		width: 100%;
		height: 55px;
	}

	#footer #btn-pagetop a {
		padding-top: 22px;
		font-size: 1rem;
	}

	#footer #btn-pagetop a::before {
		top: 15px;
		width: 15px;
		height: 10px;
	}

	#footer #btn-pagetop a:hover::before {
		top: 10px;
	}

	#footer .footer-upper-nav {
		margin-bottom: 25px;
	}

	#footer .footer-lower-nav li {
		margin: 0 10px 8px;
	}

	#footer .footer-logo-area ul li {
		margin: 0 18px;
	}

	#footer .footer-logo-area ul li img {
		width: 55px;
		height: 65px;
	}

	#footer .footer-logo-area ul li:nth-child(2) {
		margin-right: 18px;
	}

	#footer .footer-logo-area ul li:nth-child(2) img {
		width: 46px;
		height: 65px;
	}

	#footer .footer-logo-area ul li:nth-child(3) {
		margin-right: 0;
	}

	#footer .footer-logo-area ul li:nth-child(3) img {
		width: 111px;
		height: 65px;
	}

	#footer .top-note {
		width: calc(100% - 40px);
		position: relative;
		bottom: auto;
		margin-bottom: 30px;
	}

	#footer .top-note li {
		line-height: 1.65;
	}
}

/* --------------------------------
		パーツ
----------------------------------- */
.main textarea.code-area {
	width: 100%;
	padding: 10px;
	border-color: #d3d1d0;
	font-size: 1.4rem;
}

.main .parts-box {
	margin-bottom: 80px;
}

.main .parts-note {
	margin-bottom: 50px;
	padding: 30px;
	background: #f5f5f5;
}

.main .parts-note ul {
	margin-bottom: 0;
}

/* ==========================================
  共通
=========================================== */
.show-pc {
	display: block;
}

.show-desktop {
	display: block;
}

.show-sp {
	display: none;
}

@media screen and (max-width: 1210px) {
	.show-desktop {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.show-pc {
		display: none;
	}

	.show-sp {
		display: block;
	}
}

/* ---------------------------------------------
	box
--------------------------------------------- */
.main .box-a {
	padding-bottom: 100px;
}

.main .box-b {
	margin-bottom: 100px;
}

.main .txt-box {
	margin-bottom: 40px;
}

.main .txt-box:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	.main .box-a {
		padding-bottom: 70px;
	}

	.main .box-b {
		margin-bottom: 70px;
	}

	.main .txt-box {
		margin-bottom: 30px;
	}
}

/* ---------------------------------------------
	リンク
--------------------------------------------- */
.main .pdf,
.main .window {
	margin: 0 0 12px 0;
	padding: 0;
	list-style: none;
}

.main .pdf a,
.main .window a,
.main .window2 a {
	display: table;
	position: relative;
	color: #02040b;
	text-decoration: none;
	transition: all 0.3s ease-in-out;
	z-index: 2;
}

.main .pdf a:hover,
.main .window a:hover,
.main .window2 a:hover {
	text-decoration: underline;
}

.main .pdf a:hover span.icon::before,
.main .window a:hover span.icon::before {
	background: url(../images/common/icon-pdf-hover.svg) no-repeat center;
}

.main .pdf span.icon,
.main .window span.icon,
.main .window2 span.icon {
	position: relative;
}

.main .pdf span.icon::before,
.main .window span.icon::before,
.main .window2 span.icon::before {
	display: inline-block;
	position: absolute;
	bottom: 0;
	right: -27px;
	width: 16px;
	height: 19px;
	background: url(../images/common/icon-pdf.svg) no-repeat center;
	background-size: contain;
	z-index: 0;
	content: "";
}

.main .window span.icon::before,
.main .window2 span.icon::before {
	top: 0;
	right: -27px;
	bottom: 0;
	width: 18px;
	height: 13px;
	margin: auto;
	background: url(../images/common/icon-window.svg) no-repeat center;
	background-size: contain;
}

.main .window a:hover span.icon::before,
.main .window2 a:hover span.icon::before {
	background: url(../images/common/icon-window-hover.svg) no-repeat center;
}

.main a.no-arrow {
	padding-right: 0;
	text-decoration: underline;
}

.main a.no-arrow::before {
	display: none;
}

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

	.main .pdf,
	.main .window {
		margin-bottom: 5px;
	}

	.main .pdf span.icon::before {
		right: -20px;
		width: 12px;
		height: 15px;
	}

	.main .window span.icon::before {
		right: -22px;
		width: 14px;
		height: 10px;
	}
}

/* ---------------------------------------------
	panel-type
--------------------------------------------- */
/* ---------- panel-type-a ---------- */
.main .panel-type-a {
	width: calc(100% + 15px);
	margin-bottom: 100px;
}

.main .panel-type-a .col1-2 {
	position: relative;
	width: calc(50% - 15px);
	margin-right: 15px;
	overflow: hidden;
}

.main .panel-type-a .col1-2 a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.main .panel-type-a .col1-2 a .img {
	margin-bottom: 0;
}

.main .panel-type-a .col1-2 a .img img {
	-webkit-transition: -webkit-transform 0.3s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: transform 0.3s cubic-bezier(0.37, 0.15, 0.34, 0.95);
}

.main .panel-type-a .col1-2 a .img::after {
	display: none;
}

.main .panel-type-a .col1-2 a h2 {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	margin-bottom: 0;
	padding: 18px 21px 13px;
	color: #fff;
	font-size: 2.4rem;
	z-index: 9;
	border-left: 0px;
}

.main .panel-type-a .col1-2 a h2::before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(51, 51, 51, 0.3);
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: all 0.6s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	content: "";
	z-index: -1;
}

.main .panel-type-a .col1-2 a h2::after {
	display: none;
}

.main .panel-type-a .col1-2 a:hover .img img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

/* ---------- pane-type-b ---------- */
.main .panel-type-b {
	width: calc(100% + 15px);
	margin-bottom: 85px;
}

.main .panel-type-b .col1-2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	position: relative;
	width: calc(50% - 15px);
	max-height: 360px;
	height: 360px;
	margin-right: 15px;
	margin-bottom: 15px;
	background: #f5f5f5;
}

.main .panel-type-b .col1-2 .img-area {
	width: 50%;
	height: 100%;
	overflow: hidden;
}

.main .panel-type-b .col1-2 .img-area .img {
	width: 100%;
	height: inherit;
	background-size: cover;
	-webkit-transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
}

.main .panel-type-b .col1-2 .txt-area {
	width: 100%;
	padding: 32px 30px 15px;
}

.main .panel-type-b .col1-2 .txt-area h2 {
	margin: 0 0 25px 0;
	padding: 0;
	font-size: 2.8rem;
	border-left: 0px;
}

.main .panel-type-b .col1-2 .txt-area h2::after {
	display: none;
}

.main .panel-type-b .col1-2 .txt-area h2 a {
	position: relative;
}

.main .panel-type-b .col1-2 .txt-area h2 a::before {
	display: block;
	position: absolute;
	top: 0;
	right: -20px;
	bottom: 0;
	width: 16px;
	height: 16px;
	margin: auto;
	border-top: 3px solid #221814;
	border-right: 3px solid #221814;
	transform: rotate(45deg);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .panel-type-b .col1-2 .txt-area h2 a:hover::before {
	right: -25px;
}

.main .panel-type-b .col1-2 .txt-area h2 a:hover .img {
	transform: scale(1.1);
}

.main .panel-type-b .col1-2 .txt-area ul {
	margin-bottom: 0;
}

.main .panel-type-b .col1-2 .txt-area ul li {
	margin-bottom: 13px;
	padding-left: 0;
	line-height: 1.45;
}

.main .panel-type-b .col1-2 .txt-area ul li::before {
	display: none;
}

.main .panel-type-b .col1-2 .txt-area ul li a {
	position: relative;
	text-decoration: none;
}

.main .panel-type-b .col1-2 .txt-area ul li a::before {
	display: block;
	position: absolute;
	right: -15px;
	bottom: 4px;
	width: 10px;
	height: 10px;
	margin: auto;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg) skew(2deg) scale(0.9);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .panel-type-b .col1-2 .txt-area ul li a:hover {
	text-decoration: underline;
}

.main .panel-type-b .col1-2 .txt-area ul li a:hover::before {
	right: -20px;
}

.main .panel-type-b .col1-2 .txt-area ul li:last-child {
	margin-bottom: 0;
}

.main .panel-type-b .col1-2 .txt-area ul li.window a::before {
	display: none;
}

.main .panel-type-b .col1-2 .txt-area ul.link-list {
	margin-bottom: 50px;
}

.main .panel-type-b .col1-2 .txt-area ul.link-list li.pdf a::before {
	display: none;
}

.main .panel-type-b .col1-2 .txt-area .btn-download {
	width: 100%;
}

.main .panel-type-b .col1-2 .txt-area .btn-download a {
	padding: 13px 30px 12px 30px;
	text-align: center;
}

.main .panel-type-b .col1-2 .txt-area .btn-download a span.icon {
	position: relative;
	top: 0;
	bottom: 0;
}

.main .panel-type-b .col1-2 .img-area+.txt-area {
	width: 50%;
}

.main .panel-type-b .col1-2:hover .img {
	transform: scale(1.1);
}

/* ---------- panel-type-c ---------- */
.main .panel-type-c .col1-2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	position: relative;
	width: calc(50% - 30px);
	margin-right: 30px;
	margin-bottom: 30px;
	overflow: hidden;
}

.main .panel-type-c .col1-2:last-child,
.main .panel-type-c .col1-2:nth-last-of-type(2) {
	margin-bottom: 0;
}

.main .panel-type-c .col1-2:nth-child(2) {
	margin-bottom: 30px;
}

.main .panel-type-c .img {
	overflow: hidden;
}

.main .panel-type-c .img img {
	width: 100%;
	height: 100%;
}

.main .panel-type-c h2 {
	margin-bottom: 15px;
	padding: 0;
	font-size: 2.4rem;
	border-left: 0px;
}

.main .panel-type-c h2::after {
	display: none;
}

/* ---------- pane-type-d ---------- */
.main .panel-type-d .col1-2 {
	margin-bottom: 100px;
}

.main .panel-type-d .col1-2 canvas,
.main .panel-type-d .col1-2 canvas#ch1 {
	margin: 0 auto;
}

.main .panel-type-d .col1-2:last-of-type,
.main .panel-type-d .col1-2:nth-last-of-type(2) {
	margin-bottom: 0;
}

.main .panel-type-d .col1-2 .unit {
	font-size: 10px;
	padding-left: 5%;
	margin-bottom: 0;
}

/* ---------- panel-type-e ---------- */
.main .panel-type-e .col1-2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	margin-bottom: 30px;
	margin-bottom: 0;
	overflow: hidden;
}

.main .panel-type-e .btn-more a {
	margin: 0;
	padding: 27px 30px 25px;
	font-size: 1.8rem;
}

.main .panel-type-e .btn-more a::after {
	width: 13px;
	height: 13px;
}

/* ---------- panel-type-f ---------- */
.main .panel-type-f .col1-2,
.main .panel-type-f .col-full {
	margin-bottom: 30px;
	overflow: hidden;
}

.main .panel-type-f .col1-2 a,
.main .panel-type-f .col-full a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.main .panel-type-f .col1-2 a .img,
.main .panel-type-f .col-full a .img {
	margin-bottom: 0;
}

.main .panel-type-f .col1-2 a .img img,
.main .panel-type-f .col-full a .img img {
	-webkit-transition: -webkit-transform 0.3s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: transform 0.3s cubic-bezier(0.37, 0.15, 0.34, 0.95);
}

.main .panel-type-f .col1-2 a .img::after,
.main .panel-type-f .col-full a .img::after {
	display: none;
}

.main .panel-type-f .col1-2 a h3,
.main .panel-type-f .col-full a h3 {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	margin-bottom: 0;
	padding: 18px 21px 13px;
	color: #fff;
	font-size: 2.4rem;
	z-index: 9;
}

.main .panel-type-f .col1-2 a h3::before,
.main .panel-type-f .col-full a h3::before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(51, 51, 51, 0.3);
	-webkit-transition: all 0.6s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: all 0.6s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	content: "";
	z-index: -1;
}

.main .panel-type-f .col1-2 a h3::after,
.main .panel-type-f .col-full a h3::after {
	display: none;
}

.main .panel-type-f .col1-2 a:hover .img img,
.main .panel-type-f .col-full a:hover .img img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

.main .panel-type-f .col-full {
	position: relative;
	width: calc(100% - 30px);
	margin-right: 0;
	margin-bottom: 0;
}

/* ---------- panel-type-g ---------- */
.main .panel-type-g .col1-2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	position: relative;
	margin-bottom: 30px;
	background: #f5f5f5;
	overflow: hidden;
}

.main .panel-type-g .col1-2 .img {
	margin-bottom: 25px;
	overflow: hidden;
}

.main .panel-type-g .col1-2 .img img {
	width: 100%;
}

.main .panel-type-g .col1-2 .txt-area {
	padding: 0 30px 30px;
}

.main .panel-type-g .col1-2 .txt-area p {
	margin-bottom: 0;
}

.main .panel-type-g .col1-2 h3 {
	margin-bottom: 5px;
	font-size: 2.4rem;
}

.main .panel-type-g .col1-2 .sub-copy {
	margin-bottom: 0;
	font-weight: 700;
}

.main .panel-type-g .col1-2 .btn-more {
	max-width: none;
	margin-top: 20px;
}

.main .panel-type-g .col1-2 .btn-more a {
	background: #f5f5f5;
}

.main .panel-type-g .col1-2 .btn-more a::after {
	-webkit-transition: none;
	transition: none;
}

.main .panel-type-g .col1-2 .btn-more a:hover {
	background: #777;
}

.main .panel-type-g .col1-2:last-child,
.main .panel-type-g .col1-2:nth-last-of-type(2) {
	margin-bottom: 0;
}

.main .panel-type-g .item-label {
	position: absolute;
	top: 0;
	left: 0;
}

.main .item-label {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.main .item-label li {
	margin: 0;
	padding: 6px 21px;
	min-width: 2em;
	background: #221814;
	color: #fff;
}

.main .item-label li::before {
	display: none;
}

.main .item-label li+li {
	margin-left: 1px;
}

/* ---------- panel-type-h ---------- */
.main .panel-type-h .col1-3 {
	margin-bottom: 30px;
	overflow: hidden;
}

.main .panel-type-h .col1-3 a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}

.main .panel-type-h .col1-3 a:hover .txt-area {
	bottom: 0;
	height: auto;
}

.main .panel-type-h .col1-3 a:hover .txt-area::before {
	top: -200%;
	height: 300%;
}

.main .panel-type-h .col1-3 a:hover .txt-area p {
	display: block;
}

.main .panel-type-h .col1-3 .img {
	margin-bottom: 0;
}

.main .panel-type-h .col1-3 .txt-area {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 54px;
	padding: 20px 20px 15px;
	-webkit-transition: height 5s ease-in-out;
	transition: height 5s ease-in-out;
	z-index: 1;
}

.main .panel-type-h .col1-3 .txt-area::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(102, 102, 102, 0.6);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	z-index: -1;
	content: "";
}

.main .panel-type-h .col1-3 .txt-area h3 {
	margin-bottom: 0;
	color: #fff;
	font-size: 2rem;
	line-height: 1.4;
	font-weight: 600;
}

.main .panel-type-h .col1-3 .txt-area h3 span {
	display: block;
	margin-bottom: 10px;
	font-size: 1.5rem;
}

.main .panel-type-h .col1-3 .txt-area p {
	display: none;
	margin: 0;
}

.main .panel-type-h .col1-3:last-child,
.main .panel-type-h .col1-3:nth-last-of-type(2),
.main .panel-type-h .col1-3:nth-last-of-type(3) {
	margin-bottom: 0;
}

.main .panel-type-h .item-label {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9;
}

/* ---------- panel-type-i ---------- */
.main .panel-type-i {
	width: calc(100% + 15px);
}

.main .panel-type-i .col1-2 {
	width: calc(50% - 15px);
	margin-right: 15px;
}

.main .panel-type-i .col-full {
	width: calc(100% - 15px);
}

.main .panel-type-i .col1-2,
.main .panel-type-i .col-full {
	margin-bottom: 15px;
}

.main .panel-type-i .col1-2 a,
.main .panel-type-i .col-full a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}

.main .panel-type-i .col1-2 a .img img,
.main .panel-type-i .col-full a .img img {
	-webkit-transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
}

.main .panel-type-i .col1-2 a h3,
.main .panel-type-i .col-full a h3 {
	position: absolute;
	bottom: 0;
	left: 0;
	margin: 0;
	width: 370px;
	padding: 25px 20px 24px 20px;
	background: #fff;
	font-size: 2.4rem;
}

.main .panel-type-i .col1-2 a h3::before,
.main .panel-type-i .col-full a h3::before {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 30px;
	width: 10px;
	height: 15px;
	margin: auto;
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: contain;
	transform: rotate(-90deg);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .panel-type-i .col1-2 a:hover .img img,
.main .panel-type-i .col-full a:hover .img img {
	transform: scale(1.1);
}

.main .panel-type-i .col1-2 a:hover h3::before,
.main .panel-type-i .col-full a:hover h3::before {
	right: 25px;
}

.main .panel-type-i .col1-2 .img,
.main .panel-type-i .col-full .img {
	margin-bottom: 0;
	overflow: hidden;
}

/* ---------- panel-type 共通 ---------- */
.main .panel-type-c,
.main .panel-type-e,
.main .panel-type-f,
.main .panel-type-g,
.main .panel-type-h {
	width: calc(100% + 30px);
}

.main .panel-type-c .col1-2,
.main .panel-type-e .col1-2,
.main .panel-type-f .col1-2,
.main .panel-type-g .col1-2,
.main .panel-type-h .col1-2 {
	position: relative;
	width: calc(50% - 30px);
	margin-right: 30px;
}

.main .panel-type-c .col1-3,
.main .panel-type-e .col1-3,
.main .panel-type-f .col1-3,
.main .panel-type-g .col1-3,
.main .panel-type-h .col1-3 {
	position: relative;
	width: calc(33.3333% - 30px);
	margin-right: 30px;
}

/* ---------- panel-type もっと見るボタン  ---------- */
.main .panel-type-c .btn-more,
.main .panel-type-e .btn-more,
.main .panel-type-g .btn-more {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	margin-top: auto;
}

.main .panel-type-c .btn-more a,
.main .panel-type-e .btn-more a,
.main .panel-type-g .btn-more a {
	display: block;
	position: relative;
	padding: 14px 20px 13px;
	font-size: 1.6rem;
	text-align: left;
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.main .panel-type-c .btn-more a::after,
.main .panel-type-e .btn-more a::after,
.main .panel-type-g .btn-more a::after {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 20px;
	width: 10px;
	height: 7px;
	margin: auto;
	transform: rotate(-90deg);
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: contain;
	content: "";
}

.main .panel-type-c .btn-more a:hover,
.main .panel-type-e .btn-more a:hover,
.main .panel-type-g .btn-more a:hover {
	color: #fff;
}

.main .panel-type-c .btn-more a:hover::after,
.main .panel-type-e .btn-more a:hover::after,
.main .panel-type-g .btn-more a:hover::after {
	transform: rotate(-90deg);
	background: url(../images/common/arrow-white.svg) no-repeat center;
	background-size: contain;
}

.main .panel-type-c .btn-more.window a::after,
.main .panel-type-e .btn-more.window a::after,
.main .panel-type-g .btn-more.window a::after {
	width: 18px;
	height: 13px;
	background: url(../images/common/icon-window.svg) no-repeat center;
	background-size: contain;
	transform: rotate(0);
}

.main .panel-type-c .btn-more.window a:hover::after,
.main .panel-type-e .btn-more.window a:hover::after,
.main .panel-type-g .btn-more.window a:hover::after {
	background: url(../images/common/icon-window-white.svg) no-repeat center;
	background-size: contain;
	transform: rotate(0);
}

@media screen and (max-width: 1199px) {
	.main .panel-type-a .col1-2 a h2 {
		font-size: 2.05vw;
	}

	.main .panel-type-b .col1-2 {
		height: auto;
		min-height: 360px;
	}

	.main .panel-type-b .col1-2 .txt-area {
		padding: 30px 20px 15px;
		font-size: 1.4rem;
	}

	.main .panel-type-b .col1-2 .txt-area h2 {
		margin-bottom: 20px;
		font-size: 2.4vw;
	}

	.main .panel-type-b .col1-2 .txt-area h2 a::before {
		width: 1.5vw;
		height: 1.5vw;
	}

	.main .panel-type-b .col1-2 .txt-area ul li br {
		display: none;
	}
}

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

	/* ---------- panel-type-h ---------- */
	.main .panel-type-h .col1-3 {
		width: calc(50% - 30px);
	}

	.main .panel-type-h .col1-3 a:hover .txt-area::before {
		top: -300%;
		height: 400%;
	}

	.main .panel-type-h .col1-3:nth-last-of-type(3) {
		margin-bottom: 30px;
	}
}

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

	/* ---------- panel-type-i ---------- */
	.main .panel-type-i .col1-2 a h3 {
		width: 95%;
		font-size: 2rem;
	}

	.main .panel-type-i .col1-2 a h3::before {
		right: 20px;
	}
}

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

	/* ---------- panel-type-a ---------- */
	.main .panel-type-a {
		margin-bottom: 70px;
		width: 100%;
	}

	.main .panel-type-a .col1-2 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
	}

	.main .panel-type-a .col1-2 a h2 {
		padding: 13px 11px 11px;
		font-size: 1.4rem;
	}

	/* ---------- panel-type-b ---------- */
	.main .panel-type-b {
		width: 100%;
		margin-bottom: 70px;
	}

	.main .panel-type-b .col1-2 {
		width: 100%;
		max-height: none;
		height: auto;
		min-height: 0;
		margin-right: 0;
		margin-bottom: 20px;
		font-size: 1.4rem;
	}

	.main .panel-type-b .col1-2 .img-area {
		width: 100%;
		height: 250px;
	}

	.main .panel-type-b .col1-2 .img-area .img {
		background-position: center;
	}

	.main .panel-type-b .col1-2 .img-area+.txt-area {
		width: 100%;
	}

	.main .panel-type-b .col1-2 .txt-area {
		width: 100%;
		padding: 20px 15px;
	}

	.main .panel-type-b .col1-2 .txt-area h2 {
		margin-bottom: 20px;
		font-size: 1.8rem;
	}

	.main .panel-type-b .col1-2 .txt-area h2 a::before {
		width: 12px;
		height: 12px;
	}

	.main .panel-type-b .col1-2 .txt-area ul li {
		margin-bottom: 17px;
	}

	.main .panel-type-b .col1-2 .txt-area ul li a::before {
		bottom: 3px;
	}

	.main .panel-type-b .col1-2 .txt-area ul.link-list {
		margin-bottom: 30px;
	}

	.main .panel-type-b .col1-2 .txt-area .btn-download a {
		padding: 15px 15px 14px;
		font-size: 1.2rem;
		line-height: 1.65;
	}

	.main .panel-type-b .col1-2 .txt-area .btn-download a span.icon {
		right: auto;
		width: 15px;
		height: 18.5px;
		margin-left: 0;
		padding-right: 15px;
	}

	.main .panel-type-b .col1-2:last-child {
		margin-bottom: 0;
	}

	/* ---------- panel-type-c ---------- */
	.main .panel-type-c {
		width: 100%;
	}

	.main .panel-type-c .col1-2,
	.main .panel-type-c .col1-2:nth-child(2) {
		position: relative;
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
		overflow: hidden;
	}

	.main .panel-type-c .col1-2 h2,
	.main .panel-type-c .col1-2:nth-child(2) h2 {
		margin-bottom: 10px;
		font-size: 1.8rem;
	}

	.main .panel-type-c .col1-2 .txt-area,
	.main .panel-type-c .col1-2:nth-child(2) .txt-area {
		font-size: 1.4rem;
	}

	.main .panel-type-c .col1-2 .btn-more,
	.main .panel-type-c .col1-2:nth-child(2) .btn-more {
		max-width: none;
	}

	.main .panel-type-c .col1-2 .btn-more a,
	.main .panel-type-c .col1-2:nth-child(2) .btn-more a {
		font-size: 1.4rem;
	}

	.main .panel-type-c .col1-2:nth-last-of-type(2) {
		margin-bottom: 20px;
	}

	/* ---------- panel-type-c / g ---------- */
	.main .panel-type-c .btn-more a,
	.main .panel-type-g .btn-more a {
		padding: 11px 15px 11px;
		font-size: 1.4rem;
	}

	.main .panel-type-c .btn-more a::after,
	.main .panel-type-g .btn-more a::after {
		right: 15px;
	}

	/* ---------- panel-type-d ---------- */
	.main .panel-type-d {
		width: 100%;
	}

	.main .panel-type-d .col1-2 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.main .panel-type-d .col1-2:nth-last-of-type(2) {
		margin-bottom: 20px;
	}

	/* ---------- panel-type-e ---------- */
	.main .panel-type-e .btn-more {
		max-width: none;
	}

	.main .panel-type-e .btn-more a {
		padding: 16px 15px 16px;
		font-size: 1.6rem;
	}

	.main .panel-type-e .btn-more a::after {
		right: 15px;
		width: 12px;
		height: 8px;
	}

	.main .panel-type-f+.panel-type-e {
		margin-top: 20px;
	}

	/* ---------- panel-type-f ---------- */
	.main .panel-type-f .col1-2 a h3,
	.main .panel-type-f .col-full a h3 {
		padding: 14px 15px 12px;
		font-size: 1.6rem;
	}

	.main .panel-type-f .col-full {
		width: 100%;
		margin-bottom: 0;
	}

	/* ---------- panel-type-g ---------- */
	.main .panel-type-g .col1-2 .img {
		margin-bottom: 15px;
	}

	.main .panel-type-g .col1-2 .txt-area {
		padding: 0 15px 15px;
	}

	.main .panel-type-g .col1-2 h3 {
		font-size: 1.8rem;
	}

	.main .panel-type-g .col1-2 .btn-more {
		margin-top: 15px;
	}

	.main .panel-type-g .col1-2:nth-last-of-type(2) {
		margin-bottom: 20px;
	}

	/* ---------- panel-type-h ---------- */
	.main .panel-type-h {
		width: calc(100% + 15px);
	}

	.main .panel-type-h .col1-3 {
		width: calc(100%);
		margin-right: 15px;
		margin-right: 0;
		margin-bottom: 20px;
	}

	.main .panel-type-h .col1-3 a:hover .txt-area {
		height: 54px;
	}

	.main .panel-type-h .col1-3 a:hover .txt-area::before {
		top: 0;
		height: 100%;
	}

	.main .panel-type-h .col1-3:nth-last-of-type(2) {
		margin-bottom: 20px;
	}

	/* ---------- panel-type-i ---------- */
	.main .col-set.panel-type-i {
		width: 100%;
	}

	.main .col-set.panel-type-i .col1-2,
	.main .col-set.panel-type-i .col-full {
		width: 100%;
		margin-right: 0;
		margin-bottom: 5px;
	}

	.main .col-set.panel-type-i .col1-2 a h3,
	.main .col-set.panel-type-i .col-full a h3 {
		width: 80%;
		padding: 14px 15px 13px 15px;
		font-size: 1.7rem;
	}

	.main .col-set.panel-type-i .col1-2 a h3::after,
	.main .col-set.panel-type-i .col-full a h3::after {
		width: 9px;
		height: 12.5px;
	}

	.main .col-set.panel-type-i .col1-2 a h3::before,
	.main .col-set.panel-type-i .col-full a h3::before {
		right: 15px;
	}
}

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

	/* ---------- panel-type-b ---------- */
	.main .panel-type-b .col1-2 .txt-area .btn-download a {
		padding: 12px 10px 10px;
	}

	/* ---------- panel-type-i ---------- */
	.main .col-set.panel-type-i .col1-2 a h3,
	.main .col-set.panel-type-i .col-full a h3 {
		font-size: 1.4rem;
	}

	.main .col-set.panel-type-i .col1-2 a h3::before,
	.main .col-set.panel-type-i .col-full a h3::before {
		right: 20px;
	}
}

/* ダウンロードエリア
----------------------- */
.main .download-area-inner {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	padding: 0 20px;
}

.main .download-area {
	width: 100%;
	height: auto;
	padding: 35px 0 35px;
	background: #f5f5f5;
}

.main .download-area .download-area-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
}

.main .download-area .download-area-inner .col1-2 {
	width: 50%;
	margin-right: 0;
}

.main .download-area .download-area-inner .col1-2 .btn-download {
	position: relative;
	top: calc(50% - 28px);
}

.main .download-area .download-area-inner h3 {
	display: block;
	width: 100%;
	margin-bottom: 20px;
	color: #02040b;
	font-weight: 700;
}

.main .download-area .link-list {
	margin-bottom: 0;
	padding: 0 30px 0 0;
	border: none;
}

.main .download-area .btn-download {
	max-width: none;
	width: auto;
}

.main .download-area .btn-download a {
	padding: 13px 2vw 12px 3vw;
}

.main .download-area .btn-download a span.icon {
	position: relative;
	top: auto;
	right: auto;
	padding-right: 25px;
}

@media screen and (min-width: 1441px) {
	.main .download-area .btn-download a {
		padding: 13px 20px 12px 50px;
	}
}

@media screen and (max-width: 900px) {
	.main .download-area .btn-download a {
		padding-right: 40px;
	}

	.main .download-area .btn-download a span.icon {
		position: absolute;
		top: 0;
		right: 20px;
		bottom: 0;
		margin: auto;
	}
}

@media screen and (max-width: 767px) {
	.main .download-area .download-area-inner {
		padding: 0 12px;
	}

	.main .download-area .download-area-inner .col1-2 {
		width: 100%;
	}

	.main .download-area .download-area-inner .col1-2:first-child {
		margin-bottom: 25px;
	}

	.main .download-area .btn-download a {
		padding: 13px 35px 12px 20px;
	}

	.main .download-area .btn-download a span.icon {
		position: absolute;
		top: 0;
		right: 20px;
		bottom: 0;
		margin: auto;
	}
}

/* リンクリスト
----------------------- */
.main ul.link-list {
	width: 100%;
}

.main ul.link-list li.pdf::before,
.main ul.link-list li.window::before,
.main ul.link-list li.txt::before {
	display: none;
}

.main ul.link-list li.txt {
	padding-left: 0;
}

.main ul.link-list li.txt a {
	text-decoration: none;
}

.main ul.link-list li.txt a::after {
	display: inline-block;
	position: relative;
	right: 0;
	top: 0;
	bottom: 0;
	width: 10px;
	height: 10px;
	margin: auto;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg) skew(2deg) scale(0.9);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main ul.link-list li.txt a:hover {
	text-decoration: underline;
}

.main ul.link-list li.txt a:hover::after {
	right: -5px;
}

.main .link-list-box ul.link-list {
	padding-bottom: 32px;
	border-bottom: 1px solid #d3d1d0;
}

.main .link-list-box ul.link-list+h3 {
	padding-top: 20px;
}

.main .link-list-box ul.link-list:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.main .link-list.col-set {
	width: calc(100% + 20px);
}

.main .link-list.col-set .col1-2 {
	width: calc(50% - 20px);
	margin-right: 20px;
}

@media screen and (max-width: 767px) {
	.main .link-list-box ul.link-list {
		padding-bottom: 25px;
	}

	.main .link-list-box ul.link-list+h3 {
		padding-top: 10px;
	}

	.main ul.link-list {
		font-size: 1.4rem;
	}

	.main .link-list.col-set {
		width: 100%;
	}

	.main .link-list.col-set .col1-2 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 5px;
	}
}

/* テーブル
----------------------- */
.main table {
	width: 100%;
}

.main table td a {
	position: relative;
	padding-right: 15px;
	text-decoration: none;
}

.main table td a::before {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 10px;
	height: 10px;
	margin: auto;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg) skew(2deg) scale(0.9);
	content: "";
}

.main table td a.pdf::before {
	display: none;
}

.main table td a:hover {
	text-decoration: underline;
}

.main table>.note {
	display: table;
	font-size: 1.2rem;
	text-align: right;
}

.main .scroll+.right-justified {
	margin-top: -10px;
	padding-bottom: 10px;
	font-size: 1.2rem;
}

.main table+.right-justified {
	margin-top: 5px;
	font-size: 1.2rem;
}

.main table+.right-justified p.note {
	margin-bottom: 0;
}

.main table+h3:not([class*="heading"]) {
	margin-top: 40px;
}

.main table a:hover.pdf span.icon::before {
	background: url(../images/common/icon-pdf-hover.svg) no-repeat center;
}

/* テーブルスクロール */
.main .table-scroll-wrapper+.note.m {
	margin-top: -15px;
}

@media screen and (max-width: 767px) {
	.main table+h3:not([class*="heading"]) {
		margin-top: 30px;
	}
}

/*　右寄せ - 表組周りで使用
----------------------- */
.main .update-day {
	margin-bottom: 10px;
	font-size: 1.2rem;
	text-align: right;
}

.main .right-justified {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

.main h2:not([class*="heading"])+.update-day {
	margin-top: -38px;
}

.main #modal+.right-justified {
	margin-top: 30px;
}

@media screen and (max-width: 767px) {
	.main .right-justified {
		display: block;
	}

	.main h2:not([class*="heading"])+.update-day {
		margin-top: -20px;
	}
}

/* セレクトボタン
----------------------- */
.main .btn-select {
	display: inline-block;
	position: relative;
	/*width: 300px;*/
	width: 320px;
	height: 50px;
	margin-bottom: 30px;
	cursor: pointer;
}

.main .btn-select .select-hidden {
	display: none;
	visibility: hidden;
	padding-right: 10px;
}

.main .btn-select select.select-year {
	position: relative;
	/*width: 300px;*/
	width: 320px;
	height: 50px;
	margin: 5px 0;
	padding: 12px 60px 11px 20px;
	font-size: 1.6rem;
	line-height: 1.6;
	border: 1px solid #7d7d7d;
	border-right: none;
	vertical-align: middle;
	background-color: #fff;
	background-image: url(../images/btn_select.gif);
	background-repeat: no-repeat;
	background-position: right center;
	-moz-background-size: 51px 51px;
	-webkit-background-size: 51px 51px;
	background-size: 51px 51px;
	-moz-border-radius: 0;
	-webkit-border-radius: 0;
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.main .btn-select select::-ms-expand {
	display: none;
}

.main .btn-select .select-style {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #fff;
	border: 1px solid #7d7d7d;
	padding: 12px 60px 11px 20px;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.main .btn-select .select-style:after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 49px;
	height: 48px;
	margin: auto;
	background-color: #221814;
	background-image: url(../images/btn_select.png);
	background-repeat: no-repeat;
	background-position: center;
	-moz-background-size: 10px 15px;
	-webkit-background-size: 10px 15px;
	background-size: 10px 15px;
	content: "";
}

.main .btn-select .select-style:active,
.main .btn-select .select-style.active {
	background: #e5e5e5;
	border-color: #221814;
}

.main .btn-select .select-style:active:after,
.main .btn-select .select-style.active:after {
	background-color: #837e7c;
}

.main .btn-select .select-options {
	display: none;
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: 999;
	margin: 0;
	padding: 0;
	list-style: none;
	background: #fff;
	border: 1px solid #221814;
	border-top: none;
}

.main .btn-select .select-options li,
.main .btn-select .select-options a {
	margin: 0;
	padding: 5px 20px !important;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.main .btn-select .select-options li:hover,
.main .btn-select .select-options a:hover {
	text-decoration: underline;
}

.main .btn-select .select-options li[rel="hide"],
.main .btn-select .select-options a[rel="hide"] {
	display: none;
}

.main .btn-select .select-options li::before {
	display: none !important;
}

.main .btn-select .select-options a {
	display: block;
	width: 100%;
	text-decoration: none;
}

.main .year-box-wrapper {
	padding-bottom: 100px;
}

.main .year-box-wrapper ul.link-list {
	margin-bottom: 0;
}

.main .year-box:not(:first-of-type) {
	display: none;
}

.main select.select-year:focus {
	outline: none;
}

.main .js-load {
	display: none;
}

.main .js-load.active {
	display: block;
}

@media screen and (max-width: 767px) {
	.main .btn-select {
		width: 100%;
	}

	.main .btn-select .select-style {
		padding-left: 15px;
	}

	.main .btn-select .select-year {
		width: 100%;
	}

	.main .year-box-wrapper {
		padding-bottom: 70px;
	}
}

/* ---------- ボタン ---------- */
/* 基本 */
.main .btn {
	width: 260px;
	margin: 0 auto;
}

.main .btn a {
	position: relative;
	display: block;
	padding: 13px 35px 12px 20px;
	border: 1px solid #7d7d7d;
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.main .btn a::after {
	display: block;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: 10px;
	height: 7px;
	margin: auto;
	transform: rotate(-90deg);
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: contain;
	content: "";
}

.main .btn a:hover {
	background: #777;
	color: #fff !important;
}

.main .btn a:hover::after {
	transform: rotate(-90deg);
	background: url(../images/common/arrow-white.svg) no-repeat center;
	background-size: contain;
}

@media screen and (max-width: 767px) {
	.main .btn {
		width: 227px;
		height: 45px;
	}

	.main .btn a {
		padding: 10px 15px 10px 15px;
	}

	.main .btn a::after {
		right: 15px;
	}
}

/* 各種ボタンの設定 */
.main .btn-contact,
.main .btn-apply,
.main .btn-window,
.main .btn-normal {
	max-width: 340px;
	height: 66px;
	margin: 0 auto;
}

.main .btn-contact a,
.main .btn-apply a,
.main .btn-window a,
.main .btn-normal a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background: #eb9300;
	color: #fff;
	text-decoration: none;
	transition: 0.3s all cubic-bezier(0.51, 0.03, 0.54, 0.95);
}

.main .btn-contact a span,
.main .btn-apply a span,
.main .btn-window a span {
	position: relative;
	padding-left: 29px;
}

.main .btn-contact a span::before,
.main .btn-apply a span::before,
.main .btn-window a span::before {
	display: block;
	position: absolute;
	top: 7px;
	left: 0;
	width: 17px;
	height: 12px;
	background: url(../images/common/icon-contact.svg) no-repeat center;
	background-size: 17px 12px;
	content: "";
}

.main .btn-contact a:hover,
.main .btn-apply a:hover,
.main .btn-window a:hover,
.main .btn-normal a:hover {
	color: #fff !important;
	opacity: 0.8;
}

.main .btn-contact+.btn {
	margin-top: 20px;
}

.main .btn-apply {
	max-width: 510px;
}

.main .btn-window a span {
	padding-left: 0;
}

.main .btn-window a span::before {
	display: block;
	position: absolute;
	top: 0;
	right: -100px;
	left: auto;
	bottom: 0;
	width: 17px;
	height: 13px;
	margin: auto;
	background: url(../images/common/icon-window-white.svg) no-repeat center;
	background-size: 17px 13px;
	content: "";
}

.main .btn-download,
.main .btn-pdf {
	width: 350px;
}

.main .btn-download a,
.main .btn-pdf a {
	display: block;
	position: relative;
	padding: 13px 50px 12px 22px;
	border: 1px solid #7d7d7d;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	overflow: hidden;
	text-decoration: none;
}

.main .btn-download a span.icon,
.main .btn-pdf a span.icon {
	position: absolute;
	top: 15px;
	right: 20px;
	width: 17px;
	height: 20px;
	margin-left: 20px;
	padding-right: 25px;
	background: url(../images/common/icon-download.svg) no-repeat right center;
	background-size: contain;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.main .btn-download a:hover,
.main .btn-pdf a:hover {
	color: #fff !important;
	background: #777;
}

.main .btn-download a:hover span.icon,
.main .btn-pdf a:hover span.icon {
	background: url(../images/common/icon-download-white.svg) no-repeat right center;
}

.main .btn-pdf a {
	padding: 13px 45px 12px 20px;
}

.main .btn-pdf a span {
	position: relative;
	width: 21px;
	height: 26px;
	background: url(../images/common/icon-pdf.svg) no-repeat center right;
	background-size: contain;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.main .btn-pdf a:hover span {
	background: url(../images/common/icon-pdf-hover.svg) no-repeat center right;
}

/* 注訳付　ボタン */
.main .btn-wrapper {
	display: table;
	margin: 0 auto;
}

.main .btn-wrapper p {
	margin-bottom: 0;
}

.main .btn-wrapper .btn-download {
	margin: 0 auto;
}

.main .btn-wrapper .btn-download+p {
	font-size: 1.2rem;
	text-align: center;
}

.main #modal+.btn-wrapper {
	margin-top: 30px;
}

/* もっと見るボタン */
.main .btn-more {
	max-width: 570px;
	margin: 0 auto;
	border: 1px solid #cbcbcb;
	display: block;
	position: relative;
	width: 100%;
	padding: 14px 20px 13px;
	background: #fff;
	text-align: center;
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	cursor: pointer;
}

.main .btn-more span {
	display: block;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: 18px;
	height: 2px;
	margin: auto;
	background: #221814;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.main .btn-more span::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 2px;
	height: 18px;
	margin: auto;
	background: #221814;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

html:not(.sp) .btn-more:hover {
	color: #fff !important;
	background: #777;
}

html:not(.sp) .btn-more:hover span {
	background: #fff;
}

html:not(.sp) .btn-more:hover span::before {
	background: #fff;
	transform: rotate(-90deg);
}

/* フォームボタン */
.main .btn-form {
	margin: 0;
	padding-top: 70px;
}

.main .btn-form .btn {
	float: left;
	left: 0;
	width: 170px;
	margin: 10px 0 0 0;
}

.main .btn-form .btn a {
	margin: 0;
	padding: 13px 25px 12px 25px;
	text-align: center;
}

.main .btn-form .btn a::after {
	right: auto;
	left: 20px;
	transform: rotate(-135deg);
	transform: rotate(90deg);
}

.main .btn-form .btn-apply {
	max-width: 510px;
	width: 100%;
	height: 76px;
}

.main .btn-form .btn-apply span {
	padding-left: 35px;
}

.main .btn-form .btn-apply span::before {
	top: 6px;
	width: 26px;
	height: 17px;
}

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

	/* フォームボタン */
	.main .btn-form {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-lines: multiple;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-flex-direction: column;
		flex-direction: column;
	}

	.main .btn-form .btn {
		float: none;
		margin: 20px auto 0;
		order: 1;
	}
}

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

	.main .btn-contact,
	.main .btn-apply,
	.main .btn-window,
	.main .btn-normal {
		height: 55px;
	}

	.main .btn-download,
	.main .btn-pdf {
		width: 290px;
		width: 100%;
	}

	.main .btn-download a,
	.main .btn-pdf a {
		padding: 10px 40px 10px 15px;
		font-size: 1.4rem;
	}

	.main .btn-download a span.icon,
	.main .btn-pdf a span.icon {
		top: 13px;
		right: 15px;
		width: 15px;
		height: 18px;
	}

	.main .btn-pdf a {
		padding: 10px 40px 10px 15px;
	}

	.main .btn-pdf a span {
		width: 18px;
		height: 22px;
	}

	.main .btn-more {
		padding: 11px 15px 11px;
		font-size: 1.4rem;
	}

	.main .btn-more span {
		width: 16px;
		height: 2px;
	}

	.main .btn-more span::before {
		width: 2px;
		height: 16px;
	}

	.main .btn-form {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-lines: multiple;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-flex-direction: column;
		flex-direction: column;
		padding-top: 30px;
	}

	.main .btn-form .btn {
		float: none;
		order: 1;
	}

	.main .btn-form .btn a {
		padding: 10px 25px;
	}

	.main .btn-form .btn a::after {
		left: 15px;
	}

	.main .btn-form .btn-apply {
		height: 60px;
	}

	.main .btn-form .btn-apply span {
		padding-left: 30px;
	}

	.main .btn-form .btn-apply span::before {
		width: 20px;
		height: 13px;
	}
}

@media screen and (max-width: 320px) {
	.main .btn-window a span::before {
		right: -80px;
	}
}

/*戻るボタン*/
.main .back {
	margin-top: 40px;
}

.main .btn.back a {
	margin: 0;
	padding: 13px 20px 12px 20px;
	text-align: center;
}

.main .btn.back a::after {
	right: auto;
	left: 20px;
	transform: rotate(-135deg);
	transform: rotate(90deg);
}

/* ----------　IRページのバナー  ---------- */
.main .p-ir-bnr {
	padding-top: 40px;
	border-top: 1px solid #d3d1d0;
	background: #fff;
}

.main .p-ir-bnr::before {
	display: block;
}

.main .p-ir-bnr .inner {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: border-box;
}

.main .p-ir-bnr .col-set {
	width: calc(100% + 15px);
	padding-bottom: 40px;
}

.main .p-ir-bnr .col-set .col1-3 {
	width: calc(33.3333% - 15px);
	margin-right: 15px;
	height: 160px;
	min-height: 120px;
}

.main .p-ir-bnr .col-set .col1-3 a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	width: 100%;
	height: 100%;
	padding: 30px;
	background-size: cover;
	background-position: center;
	-webkit-transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	text-decoration: none;
	overflow: hidden;
	z-index: 1;
}

.main .p-ir-bnr .col-set .col1-3 a h3 {
	margin: 0;
	padding: 0;
	font-size: 2.2rem;
}

.main .p-ir-bnr .col-set .col1-3 a .img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: -1;
}

.main .p-ir-bnr .col-set .col1-3 a .img img {
	-webkit-transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
}

.main .p-ir-bnr .col-set .col1-3 a .img::after {
	display: none;
}

.main .p-ir-bnr .col-set .col1-3 a:hover .img img {
	transform: scale(1.1);
}

@media screen and (max-width: 1199px) {
	.main .p-ir-bnr .col-set .col1-3 {
		height: auto;
	}

	.main .p-ir-bnr .col-set .col1-3 a {
		padding: 15px 30px;
	}

	.main .p-ir-bnr .col-set .col1-3 a h3 {
		font-size: 2rem;
	}
}

@media screen and (max-width: 980px) {
	.main .p-ir-bnr .col-set .col1-3 {
		height: auto;
		min-height: 100px;
	}

	.main .p-ir-bnr .col-set .col1-3 a {
		padding: 15px 15px;
	}

	.main .p-ir-bnr .col-set .col1-3 a h3 {
		font-size: 1.8rem;
	}
}

@media screen and (max-width: 767px) {
	.main .p-ir-bnr {
		padding-top: 30px;
	}

	.main .p-ir-bnr .inner {
		padding: 0 15px;
	}

	.main .p-ir-bnr .col-set {
		width: 100%;
		padding-bottom: 30px;
	}

	.main .p-ir-bnr .col-set .col1-3 {
		width: 100%;
		height: 145px;
		margin-right: 0;
		margin-bottom: 10px;
	}

	.main .p-ir-bnr .col-set .col1-3 a {
		padding: 13px;
	}

	.main .p-ir-bnr .col-set .col1-3 a h3 {
		font-size: 1.4rem;
	}

	.main .p-ir-bnr .col-set .col1-3:last-child {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 320px) {
	.main .p-ir-bnr .col-set .col1-3 {
		height: 38.6vw;
	}

	.main .p-ir-bnr .col-set .col1-3 a {
		height: 100%;
	}
}

/* ---------- グラフ 株式分布状況 ---------- */
.main .col-set .graph-wrapper {
	width: 70%;
	height: 100%;
}

.main .col-set .graph-wrapper .total {
	font-weight: bold;
	margin-top: -85px;
	padding-left: 74%;
	white-space: nowrap;
}

.main .col-set .graph-wrapper .total02 {
	font-size: 11px;
	margin-top: -180px;
	padding-left: 52%;
	line-height: initial;
	font-weight: normal;
}

@media screen and (max-width: 1024px) {
	.main .col-set .graph-wrapper {
		width: 100%;
		height: 100%;
	}
}

@media screen and (max-width: 767px) {
	.main .col-set .graph-wrapper {
		width: 100%;
		height: 100%;
		margin: 0 auto;
	}

	.main .col-set .graph-wrapper .total {
		margin-top: -50px;
		padding-left: 57%;
	}

	.main .col-set .graph-wrapper .total02 {
		margin-top: -50px;
	}

	.main .col-set {
		width: 100%;
	}

	.main .col-set .col1-2 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
	}
}

/* ---------- 株主・投資家 ~ メッセージ ---------- */
.main .txt-box .ceo-name {
	-webkit-flex-direction: column;
	flex-direction: column;
	font-weight: 700;
	text-align: right;
}

.main .txt-box .ceo-name .date {
	margin-bottom: 5px;
}

.main .txt-box .ceo-name span {
	margin-right: 15px;
	font-weight: 500;
	font-size: 1.2rem;
}

.main .txt-box .ceo-name p {
	margin-bottom: 0;
}

.main .txt-box p:last-child {
	margin-bottom: 0;
}

/* ---------- 中間経営計画 ---------- */
.main .dl-list-box {
	margin-bottom: 100px;
}

.main .dl-list-box dl {
	margin-bottom: 30px;
}

.main .dl-list-box dl dt {
	width: 100%;
	margin-bottom: 20px;
	padding: 27px 30px 25px !important;
	background: #f5f5f5;
	font-size: 2.4rem;
}

.main .dl-list-box dl dd {
	width: 100%;
	padding-left: 30px;
}

.main .dl-list-box dl dd ul {
	margin-bottom: 10px;
}

.main .dl-list-box dl dd ul li {
	margin-bottom: 5px;
	padding-left: 1.3em;
}

.main .dl-list-box dl dd ul li::before {
	top: 0.8em;
	left: 0.15em;
	width: 8px;
	height: 8px;
	background-color: #221814;
}

@media screen and (max-width: 767px) {
	.main .dl-list-box {
		margin-bottom: 50px;
	}

	.main .dl-list-box dl {
		margin-bottom: 30px;
	}

	.main .dl-list-box dl dt {
		width: 100%;
		margin-bottom: 10px;
		padding: 14px 15px 12px !important;
		background: #f5f5f5;
		font-size: 1.8rem;
	}

	.main .dl-list-box dl dd {
		width: 100%;
		padding-left: 15px;
	}

	.main .dl-list-box dl dd ul {
		margin-bottom: 10px;
	}

	.main .dl-list-box dl dd ul li {
		margin-bottom: 5px;
		padding-left: 1em;
	}

	.main .dl-list-box dl dd ul li::before {
		top: 0.8em;
		left: 0.05em;
		width: 6px;
		height: 6px;
		background-color: #221814;
	}
}

/* IR下層　Footerリンク
----------------------- */
.underpage-nav {
	width: 100%;
	padding-top: 40px;
	border-top: 1px solid #d3d1d0;
}

.underpage-nav .col-set {
	max-width: 1170px;
	width: 100%;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: content-box;
}

.underpage-nav .col-set a.current {
	display: inline-block;
	position: relative;
	padding-left: 24px;
}

.underpage-nav .col-set a.current::before {
	display: block;
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
	width: 10px;
	height: 2px;
	background: #221814;
	content: "";
}

.underpage-nav .col-set a:hover {
	text-decoration: underline;
}

.underpage-nav .col-set ul {
	margin-bottom: 30px;
}

.underpage-nav .col-set ul li {
	padding-left: 0 !important;
}

.underpage-nav .col-set ul li a {
	position: relative;
	font-weight: 400;
	text-decoration: none;
}

.underpage-nav .col-set ul li a:hover {
	text-decoration: underline;
}

.underpage-nav .col-set ul li::before {
	display: none;
}

@media screen and (max-width: 767px) {
	.underpage-nav {
		font-size: 1.4rem;
	}

	.underpage-nav .col-set {
		width: calc(100% + 15px);
		box-sizing: border-box;
	}

	.underpage-nav .col-set a.current {
		position: relative;
		padding-left: 15px;
	}

	.underpage-nav .col-set a.current::before {
		display: block;
		position: absolute;
		top: calc(50% - 1px);
		left: 0;
		width: 10px;
		height: 2px;
		background: #221814;
		content: "";
	}

	.underpage-nav .col-set .col1-4 {
		width: calc(50% - 15px);
		margin-right: 15px;
	}

	.underpage-nav .col-set .col1-4:first-child {
		order: 0;
	}

	.underpage-nav .col-set .col1-4:nth-child(2) {
		order: 2;
	}

	.underpage-nav .col-set .col1-4:nth-child(3) {
		order: 1;
	}

	.underpage-nav .col-set .col1-4:nth-child(4) {
		order: 3;
	}
}

/* --------------------------------------
    お知らせ
----------------------------------------- */
.main .news,
.l-nav__news .news {
	margin-bottom: 20px;
	font-size: 1.4rem;
}

.main .news li,
.l-nav__news .news li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	margin-bottom: 0;
	padding: 34px 20px 33px 0;
	border-bottom: 1px solid #d3d1d0;
}

.main .news li::before,
.l-nav__news .news li::before {
	display: none !important;
}

.main .news li a,
.l-nav__news .news li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	text-decoration: none;
}

.main .news li a p::after,
.l-nav__news .news li a p::after {
	display: inline-block;
	position: relative;
	right: 0;
	top: 0;
	bottom: 0;
	width: 10px;
	height: 10px;
	margin: auto;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg) skew(2deg) scale(0.9);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .news li .meta-data,
.l-nav__news .news li .meta-data {
	width: 18em;
}

.main .news li p,
.l-nav__news .news li p {
	position: relative;
	width: calc(100% - 18em);
	margin-bottom: 0;
	padding: 0 5px 0 20px;
	box-sizing: border-box;
}

.main .news li a:hover,
.l-nav__news .news li a:hover {
	text-decoration: none;
}

.main .news li a:hover p,
.l-nav__news .news li a:hover p {
	text-decoration: underline;
}

.main .news li a:hover p::after,
.l-nav__news .news li a:hover p::after {
	right: -5px;
}

.main .news li p,
.l-nav__news .news li p {
	margin-bottom: 0;
	padding-left: 20px;
}

.main .news li.pdf span.icon::before,
.l-nav__news .news li.pdf span.icon::before {
	bottom: -1px;
}

.main .news li.pdf p::after,
.l-nav__news .news li.pdf p::after {
	display: none;
}

.main .news li:last-child,
.l-nav__news .news li:last-child {
	border-bottom: none;
}

.main .news .date,
.l-nav__news .news .date {
	display: inline-block;
	min-width: 6em;
	margin-right: 1em;
}

.main .news .tag,
.l-nav__news .news .tag {
	display: inline-block;
	position: relative;
	min-width: 9em;
	margin-bottom: 5px;
	padding-left: 17px;
	padding: 3px 10px;
	background: #b0b2af;
	text-align: center;
	line-height: 1.35;
}

.main .news .tag.press,
.main .news .tag.ir,
.l-nav__news .news .tag.press,
.l-nav__news .news .tag.ir {
	background: #eba836;
}

.main .news .tag.work,
.l-nav__news .news .tag.work {
	background: #a2d6d1;
}

.l-nav__news .news li {
	padding: 0;
}

/* ---------- ラベル付 ---------- */
/* 登録者情報　*/
.main .regist-job-list .news {
	padding: 20px 8.54% 0;
}

.main .regist-job-list .news li {
	padding: 22px 20px 22px 0;
}

.main .regist-job-list .news li .meta-data {
	position: relative;
	width: 13em;
}

.main .regist-job-list .news li .meta-data .tag {
	display: inline-block;
	margin-right: 20px;
	width: 8em;
}

.main .regist-job-list .btn a {
	padding: 13px 35px 12px 20px;
}

.main .news li .label-icon {
	margin-right: 15px;
	padding: 5px 10px;
	background: #221814;
	color: #fff;
	font-size: 1.2rem;
}

/* タブ内　ラベル付 */
.main .regist-job-list .tab-element .news li {
	padding: 34px 20px 33px 0;
}

/* ---------- 詳細 ---------- */
.main .post-data {
	margin-bottom: 25px;
}

@media screen and (max-width: 1080px) {
	.main .regist-job-list .news li .meta-data {
		width: 100%;
	}

	.main .regist-job-list .news li .meta-data .tag {
		display: inline;
	}

	.main .regist-job-list .news li p {
		width: 100%;
		padding-left: 0;
	}

	.main .regist-job-list .news li a p {
		padding-left: 0;
	}
}

@media screen and (max-width: 980px) {
	.main .news li .meta-data {
		width: 100%;
	}

	.main .news li .meta-data .data {
		margin-right: 5%;
	}

	.main .news li p {
		width: 100%;
		padding-right: 30px;
		padding-left: 0;
	}

	/* tab 外の場合　*/
	.main .year-box .news li .meta-data {
		width: 18em;
	}

	.main .year-box .news li p {
		width: calc(100% - 18em);
	}
}

@media screen and (max-width: 767px) {
	.main .news li {
		padding: 20px 0 15px 0;
	}

	.main .news li .meta-data {
		width: 100%;
	}

	.main .news li p {
		width: 100%;
		padding-left: 0;
	}

	.main .news li.pdf span.icon::before {
		bottom: 0;
	}

	.main .news .date {
		margin-right: 20px;
	}

	.main .regist-job-list {
		padding-bottom: 40px;
	}

	.main .regist-job-list h3 {
		padding: 15px;
	}

	.main .regist-job-list .news {
		margin-bottom: 0;
		padding: 5px 15px;
	}

	.main .regist-job-list .news li {
		padding: 15px 0 13px;
	}

	.main .regist-job-list .news li .meta-data {
		width: 100%;
	}

	.main .regist-job-list .news li p {
		width: 100%;
	}

	.main .regist-job-list .btn {
		margin-bottom: 0;
	}

	.main .regist-job-list .btn a {
		padding: 10px 35px 10px 15px;
	}

	.main .regist-job-list .news {
		padding: 5px 15px;
	}

	.main .regist-job-list .news li {
		padding: 15px 0 13px;
	}

	.main .regist-job-list .news li .meta-data {
		position: relative;
		width: 100%;
		min-width: 18em;
	}

	.main .regist-job-list .news li .meta-data .tag {
		margin-right: 10px;
		width: 8em;
	}

	.main .regist-job-list .news li .meta-data .label-icon {
		margin-right: 10px;
		padding: 3px 8px;
		font-size: 1rem;
	}

	.main .regist-job-list .news li p {
		width: 100%;
	}

	.main .regist-job-list .btn a {
		padding: 10px 35px 10px 15px;
	}

	/* タブ内　ラベル付 */
	.main .regist-job-list .tab-element .news li {
		padding: 20px 0 19px 0;
	}

	.main .regist-job-list .tab-element .news li .meta-data .tag {
		margin-right: 10px;
	}

	/* tab外の場合　*/
	.main .year-box .news li .meta-data {
		width: 100%;
	}

	.main .year-box .news li p {
		width: 100%;
	}
}

@media screen and (max-width: 320px) {
	.main .regist-job-list .news li .meta-data {
		font-size: 1.2rem;
	}

	.main .regist-job-list .news li .meta-data .tag {
		padding-left: 13px;
	}

	.main .regist-job-list .news li .meta-data .tag::before {
		width: 7px;
	}

	.main .regist-job-list .tab-element .news li .meta-data {
		font-size: 1.2rem;
	}

	.main .regist-job-list .tab-element .news li .meta-data .tag {
		padding-left: 11px;
	}

	.main .regist-job-list .tab-element .news li .meta-data .tag::before {
		width: 7px;
	}
}

/* ---------- タブ内のお知らせ - ir ---------- */
.main .row .tab.p-ir {
	margin-bottom: 100px;
}

.main .row .tab.p-ir .tab-element {
	padding-top: 0px;
	padding-bottom: 50px;
}

.main .row .tab.p-ir .tab-element .news li {
	padding: 25px 0 28px;
}

.main .row .tab.p-ir .tab-element .news li .meta-data {
	width: 27%;
}

.main .row .tab.p-ir .tab-element .news li p {
	width: calc(100% - 27%);
}

@media screen and (max-width: 1024px) {
	.main .row .tab.p-ir .tab-element .news li .meta-data {
		width: 100%;
	}

	.main .row .tab.p-ir .tab-element .news li p {
		width: 100%;
		padding-left: 0;
	}
}

@media screen and (max-width: 767px) {
	.main .row .tab.p-ir {
		margin-bottom: 70px;
	}

	.main .row .tab.p-ir .tab-element {
		padding: 5px 15px 45px;
	}

	.main .row .tab.p-ir .tab-element .news li {
		padding: 15px 0 13px;
	}

	.main .row .tab.p-ir .tab-element .news li .meta-data {
		display: block;
		width: 100%;
	}

	.main .row .tab.p-ir .tab-element .news li .meta-data .date {
		margin-right: 20px;
	}
}

/* ---------------------------------------------
	TOP
--------------------------------------------- */

/* ---------- mainvisual slider ---------- */

#mainvisual {
	position: relative;
	width: 100%;
	height: calc(100vh - 90px);
	margin-top: 90px;
	overflow: hidden;
}

.l-mainvisual-top {
	position: relative;
	width: 100%;
	height: auto;
}

.l-mainvisual-top .mainvisual-cover {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	max-width: 520px;
	max-height: 210px;
	z-index: 1;
}

.l-mainvisual-top__inner {
	width: 100%;
	max-width: calc(1260px + 40px);
	height: 100%;
	margin: 0 auto;
	padding: 0 20px;
	z-index: 101;
}

.l-mainvisual-top .btn {
	position: absolute;
	top: 395px;
	z-index: 101;
}

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

	/* .l-mainvisual-top .btn[data-btn="contact"] {
    top: 490px;
  } */
	.l-mainvisual-top .btn[data-btn="contact"],
	.l-mainvisual-top .btn[data-btn="application"] {
		left: 50%;
		top: 50%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		/* margin-top: 130px; */
		margin-top: 240px;
	}
}

.l-mainvisual-top .btn a {
	width: 240px;
	position: relative;
	display: block;
	padding: 13px 35px 12px 20px;
	color: #221814;
	border: 1px solid #7d7d7d;
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.l-mainvisual-top .btn a::after {
	display: block;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: 10px;
	height: 7px;
	margin: auto;
	transform: rotate(-90deg);
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: contain;
	content: "";
}

.l-mainvisual-top .btn a:hover {
	background: #777;
	color: #fff !important;
}

.l-mainvisual-top .btn a:hover::after {
	transform: rotate(-90deg);
	background: url(../images/common/arrow-white.svg) no-repeat center;
	background-size: contain;
}

.l-mainvisual-top .btn a.contact,
.l-mainvisual-top .btn a.application {
	width: 377px;
	background: #eb9300;
	border-color: #eb9300;
	color: #fff;
}

.l-mainvisual-top .btn a.application {
	text-align: center;
}

/* 20210203 */
/* .l-mainvisual-top .btn a.contact {
  text-align: center;
} */

/* 20210204 */
.l-mainvisual-top .btn a.contact {
	padding-left: 60px;
}

.l-mainvisual-top .btn a.contact::before {
	display: block;
	position: absolute;
	top: 19px;
	left: 30px;
	width: 18px;
	height: 12px;
	background: url(../images/common/icon-contact.svg) no-repeat center;
	content: "";
}

.l-mainvisual-top .btn a.contact:after,
.l-mainvisual-top .btn a.application:after {
	display: none;
}

.l-mainvisual-top .btn a.contact:hover,
.l-mainvisual-top .btn a.application:hover {
	opacity: 0.8;
}

.l-mainvisual-top .btn[data-btn="strength"] a.contact,
.l-mainvisual-top .btn[data-btn="strength"] a.application,
.l-mainvisual-top .btn[data-btn="contact"] a.strength,
.l-mainvisual-top .btn[data-btn="contact"] a.application,
.l-mainvisual-top .btn[data-btn="application"] a.contact,
.l-mainvisual-top .btn[data-btn="application"] a.strength {
	display: none;
}

.l-mainvisual-top .main-slider {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: inherit;
	overflow: hidden;
}

.l-mainvisual-top .main-slider .col-set {
	display: block;
	width: 100%;
	height: 100%;
}

.l-mainvisual-top .main-slider .col-set .col1-1 {
	width: 100%;
	height: 100vh;
	margin: 0;
	padding: 0;
}

.l-mainvisual-top .main-slider .col-set .col1-1.slick-active img {
	transform: scale(1);
}

.l-mainvisual-top .main-slider .col-set .col1-1 .slider-title {
	position: absolute;
	right: 0;
	left: 0;
	width: 100%;
	max-width: calc(1260px + 40px);
	margin: 0 auto 20px;
	padding-top: 117px;
	padding-left: 20px;
	z-index: 99;
}

.l-mainvisual-top .main-slider .col-set .col1-1 .slider-title--05 {
	left: 50%;
	top: calc(50% - 90px);
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	right: auto;
}

.l-mainvisual-top .main-slider .col-set .col1-1 .slider-title--05 img {
	margin: 0 auto;
}

@media screen and (min-width: 768px) {
	.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img05 .slider-title {
		padding-top: 0;
	}
}

.l-mainvisual-top .main-slider .col-set .col1-1 .slider-title img.sp {
	display: none;
}

.l-mainvisual-top .main-slider .col-set .col1-1.slick-current::before {
	-webkit-animation: zoomOut 9s linear -0.1s infinite;
	animation: zoomOut 9s linear -0.1s infinite;
}

@-webkit-keyframes zoomOut {
	0% {
		-webkit-transform: scale(1.2, 1.2);
	}

	100% {
		-webkit-transform: scale(1, 1);
	}
}

@keyframes zoomOut {
	0% {
		transform: scale(1.2, 1.2);
	}

	100% {
		transform: scale(1, 1);
	}
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img01 {
	overflow: hidden;
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img01::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	/* background: url(../images/top/mainvisual01.jpg) no-repeat bottom center; */
	background: url(../images/top/mainvisual04.jpg) no-repeat bottom center;
	background-size: cover;
	content: "";
	z-index: -2;
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img02 {
	overflow: hidden;
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img02::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/top/mainvisual01.jpg) no-repeat bottom center;
	background-size: cover;
	content: "";
	z-index: -2;
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img03 {
	overflow: hidden;
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img04::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/top/mainvisual04.jpg) no-repeat bottom center;
	background-size: cover;
	content: "";
	z-index: -2;
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img05 {
	overflow: hidden;
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img05::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;

	background: url(../images/top/mainvisual07.jpg) no-repeat bottom center;
	background-size: cover;
	content: "";
	z-index: -1;
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img03 {
	overflow: hidden;
}

.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img03::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/top/mainvisual02.jpg) no-repeat bottom center;
	/* background: url(../images/top/mainvisual03.jpg) no-repeat bottom center; */
	background-size: cover;
	content: "";
	z-index: -1;
}

.l-mainvisual-top .main-slider .slick-dots {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 45px;
	bottom: 4vh;
	width: 100%;
	max-width: calc(1260px + 40px);
	margin: 0 auto;
	padding: 0 20px;
	text-align: left;
	z-index: 100;
}

.l-mainvisual-top .main-slider .slick-dots li {
	display: inline-block;
	width: 21px;
	height: 21px;
	margin: 3px 15px !important;
	padding: 3.65px !important;
	text-align: center;
	vertical-align: middle;
	border-radius: 50%;
	background: none;
	transition: background-color 0.2s linear;
}

.l-mainvisual-top .main-slider .slick-dots li:before {
	display: none;
}

.l-mainvisual-top .main-slider html:not(.sp) .main .slick-dots li:hover,
.l-mainvisual-top .main-slider .slick-dots .slick-active {
	background-color: #6f6f6f;
}

.l-mainvisual-top .main-slider .slick-dots li button {
	position: relative;
	display: block;
	width: 15px;
	height: 15px;
	margin: 0;
	padding: 0;
	text-indent: -9999px;
	background-color: #d3d3d3;
	overflow: hidden;
	border: 0 none;
	cursor: pointer;
	outline: none;
	border-radius: 50%;
	transition: background-color 0.2s linear;
}

.l-mainvisual-top .main-slider html:not(.sp) .slick-dots li:hover button,
.l-mainvisual-top .main-slider .slick-dots .slick-active button {
	width: 13px;
	height: 13px;
	background-color: #3f3f3f;
}

.l-mainvisual-top .show-sp {
	display: none;
}

html:not(.sp) .l-mainvisual-top .slick-dots li:hover button,
.l-mainvisual-top .slick-dots .slick-active button {
	background-color: #6b6a69;
	border-radius: 50%;
}

@media screen and (max-width: 1199px) {
	.l-mainvisual-top .tit-area .col-set {
		width: 100%;
	}
}

@media screen and (max-width: 980px) {
	.l-mainvisual-top .main-slider .slick-dots {
		bottom: 20px;
	}

	.l-mainvisual-top .main-slider .slick-dots li {
		display: inline-block;
		width: 17px;
		height: 17px;
		margin: 2px 15px !important;
		padding: 2px !important;
	}

	.l-mainvisual-top .main-slider .slick-dots li button {
		width: 13px;
		height: 13px;
	}
}

@media screen and (max-width: 767px) {
	#mainvisual {
		height: calc(100vh - 64px);
		margin-top: 64px;
	}

	.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img01::before {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		/* background: url(../images/sp/top/mainvisual01.jpg) no-repeat bottom center; */
		background: url(../images/sp/top/mainvisual04.jpg) no-repeat bottom center;
		background-size: cover;
		content: "";
	}

	.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img02::before {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url(../images/sp/top/mainvisual01.jpg) no-repeat bottom center;
		background-size: cover;
		content: "";
	}

	.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img04::before {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url(../images/sp/top/mainvisual04.jpg) no-repeat bottom center;
		background-size: cover;
		content: "";
	}

	.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img05::before {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url(../images/sp/top/mainvisual07.jpg) no-repeat bottom center;
		background-size: cover;
		content: "";
	}

	.l-mainvisual-top .main-slider .col-set .col1-1.main-slide-img03::before {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: url(../images/sp/top/mainvisual02.jpg) no-repeat bottom center;
		/* background: url(../images/sp/top/mainvisual03.jpg) no-repeat bottom center; */
		background-size: cover;
		content: "";
	}

	.l-mainvisual-top .main-slider .col-set .col1-1 .slider-title {
		bottom: calc(130px + 65px);
		width: 100%;
		padding: 0 15px;
	}

	.l-mainvisual-top .main-slider .col-set .col1-1 .slider-title img.sp {
		display: inline;
	}

	.l-mainvisual-top .main-slider .col-set .col1-1 .slider-title--05 {
		top: calc(50% - 64px);
		bottom: auto;
	}

	.l-mainvisual-top .main-slider .col-set .col1-1 .slider-title--05 img.sp {
		display: block;
		width: 100%;
		max-width: 500px;
		margin: 0 auto;
	}

	.l-mainvisual-top .main-slider .col-set .col1-1 .slider-title img.pc {
		display: none;
	}

	.l-mainvisual-top__inner {
		padding: 0 15px;
	}

	.l-mainvisual-top .mainvisual-cover {
		width: 50%;
	}

	.l-mainvisual-top .mainvisual-cover img {
		width: 100%;
	}

	.l-mainvisual-top .btn {
		/* position: absolute; */
		top: auto;
		right: 0;
		bottom: 55px;
		left: 0;
		margin: 0 auto;
	}

	.l-mainvisual-top .icon-05 {
		width: 200px;
		right: 4%;
		bottom: 250px;
	}

	.l-mainvisual-top .btn a {
		margin: auto;
		width: 223.5px;
		max-width: calc(100% - 15px);
		padding: 15px 35px 15px 20px;
		background: #c7cacc;
		color: #fff;
		border-color: #fff;
	}

	.l-mainvisual-top .btn a::after {
		background: url(../images/common/arrow-white.svg) no-repeat center;
		background-size: contain;
	}

	.l-mainvisual-top .btn a.contact {
		width: 345px;
	}

	.l-mainvisual-top .show-sp {
		display: block;
	}

	.l-mainvisual-top .show-pc {
		display: none;
	}

	.l-mainvisual-top .main-slider .slick-dots {
		bottom: 15px;
		padding: 0 15px;
	}
}

@media screen and (max-width: 490px) {
	.l-mainvisual-top .tit-area h1 {
		font-size: 7.6vw;
	}
}

/* ---------- top ---------- */
.main .p-top .scroll-bar {
	position: absolute;
	top: -20px;
	right: 0;
	left: 0;
	margin: 0 auto;
	width: 1px;
	height: 96px;
	overflow: hidden;
}

.main .p-top .scroll-bar::after {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 0;
	margin: auto;
	background: #221814;
	content: "";
}

.main .p-top .scroll-bar.animation {
	display: block;
}

.main .p-top .scroll-bar.animation::after {
	height: 96px;
	-webkit-animation: scroll-bar 1s linear;
	animation: scroll-bar 1s linear;
}

@-webkit-keyframes scroll-bar {
	0% {
		top: 0;
		height: 0;
	}

	30% {
		top: 0;
		height: 96px;
	}

	50% {
		top: 96px;
		height: 0;
	}

	70% {
		top: 0;
		height: 0;
	}

	100% {
		top: 0;
		height: 96px;
	}
}

@keyframes scroll-bar {
	0% {
		top: 0;
		height: 0;
	}

	30% {
		top: 0;
		height: 96px;
	}

	50% {
		top: 96px;
		height: 0;
	}

	70% {
		top: 0;
		height: 0;
	}

	100% {
		top: 0;
		height: 96px;
	}
}

.main .p-top h2 {
	padding: 0;
	color: #6a6a6a;
	font-size: 2rem;
	font-weight: 500;
	text-align: center;
	border-left: 0px;
}

.main .p-top h2 span {
	display: block;
	color: #221814;
	font-size: 3.6rem;
}

.main .p-top h2::after {
	display: none;
}

.main .p-top .col-set {
	width: calc(100% + 15px);
}

.main .p-top .col-set .col1-2 {
	position: relative;
	width: calc(50% - 15px);
	margin-right: 15px;
	margin-bottom: 15px;
	overflow: hidden;
}

.main .p-top .col-set .col1-2 .img {
	margin: 0;
}

.main .p-top .col-set .col1-3 {
	overflow: hidden;
}

.main .p-top .col-set .col1-3 .img {
	margin: 0;
}

.main .p-top .col-set .col1-4 {
	position: relative;
	width: calc(25% - 15px);
	margin-right: 15px;
	overflow: hidden;
}

.main .p-top .col-set .col1-4 .img {
	margin: 0;
	overflow: hidden;
}

.main .p-top .col-set .col1-2 .tit-area {
	position: absolute;
	left: 0;
	bottom: 0;
	padding: 20px;
	background: rgba(85, 85, 85, 0.3);
	color: #fff;
}

.main .p-top .col-set .col1-2 .tit-area h3 {
	font-size: 3rem;
}

.main .p-top .col-set .col1-2 .tit-area p {
	margin: 0;
	padding: 0;
	font-size: 1.4rem;
	line-height: 1.428;
}

.main .p-top .col-set .col1-2 .tit-area .img {
	overflow: hidden;
}

.main .p-top .col-set .col1-4 h3 {
	position: absolute;
	bottom: 0;
	width: 100%;
	margin: 0;
	padding: 19px 20px 18px;
	background: rgba(1, 1, 7, 0.3);
	color: #fff;
	/*font-size: 2.2rem;*/
	font-size: 1.8rem;
}

.main .p-top .col-set .col1-2 .img img,
.main .p-top .col-set .col1-3 .img img,
.main .p-top .col-set .col1-4 .img img {
	-webkit-transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
}

.main .p-top a:hover .img img {
	transform: scale(1.1);
}

.main .col1-3.hover-cover a,
.main .col1-4.hover-cover a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	color: #fff;
	text-decoration: none;
}

.main .col1-3.hover-cover a::before,
.main .col1-4.hover-cover a::before {
	display: block;
	position: absolute;
	top: calc(100% - 90px);
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(51, 51, 51, 0.3);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
	z-index: 1;
}

.main .col1-3.hover-cover a .tit-area,
.main .col1-4.hover-cover a .tit-area {
	position: absolute;
	top: calc(100% - 90px);
	width: 100%;
	z-index: 1;
}

.main .col1-3.hover-cover a .tit-area h3,
.main .col1-4.hover-cover a .tit-area h3 {
	position: relative;
	margin: 0;
	padding: 0;
	font-size: 2.4rem;
}

.main .col1-3.hover-cover a .tit-area p,
.main .col1-4.hover-cover a .tit-area p {
	margin: 0;
	padding: 0;
}

.main .col1-3.hover-cover a:hover,
.main .col1-4.hover-cover a:hover {
	color: #fff;
}

.main .col1-3.hover-cover a:hover::before,
.main .col1-4.hover-cover a:hover::before {
	top: 0;
}

.main .col1-3.hover-cover a:hover .tit-area,
.main .col1-4.hover-cover a:hover .tit-area {
	top: auto;
	bottom: 0;
}

.main .col1-3.hover-cover a:hover .tit-area h3,
.main .col1-4.hover-cover a:hover .tit-area h3 {
	height: auto;
}

/* ---------- top SERVICE ---------- */
.main .top-section01 {
	position: relative;
	padding-bottom: 110px;
}

.main .top-section01 .scroll-bar {
	display: none;
	position: absolute;
	top: -120px;
	right: 0;
	left: 0;
	margin: 0 auto;
	width: 1px;
	height: 105px;
	overflow: hidden;
}

.main .top-section01 .scroll-bar::after {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 0;
	margin: auto;
	background: #221814;
	content: "";
}

.main .top-section01 .scroll-bar.animation::after {
	height: 105px;
	-webkit-animation: scroll-bar01 1s linear;
	animation: scroll-bar01 1s linear;
}

@-webkit-keyframes scroll-bar01 {
	0% {
		top: 0;
		height: 0;
	}

	30% {
		top: 0;
		height: 105px;
	}

	50% {
		top: 105px;
		height: 0;
	}

	70% {
		top: 0;
		height: 0;
	}

	100% {
		top: 0;
		height: 105px;
	}
}

@keyframes scroll-bar01 {
	0% {
		top: 0;
		height: 0;
	}

	30% {
		top: 0;
		height: 105px;
	}

	50% {
		top: 105px;
		height: 0;
	}

	70% {
		top: 0;
		height: 0;
	}

	100% {
		top: 0;
		height: 105px;
	}
}

.main .top-section01 .second-col {
	max-width: calc(1170px + 90px);
	margin: 0 auto;
	padding: 0 45px;
}

.main .top-section01 .second-col .col1-4 {
	width: calc(25% - 15px);
	margin-right: 15px;
}

.main .top-section01 .second-col .col1-4 h3 {
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.6);
}

.main .top-section01 .second-col .col1-4:last-child {
	margin-right: 0;
}

/* ---------- TOP Recommendations ---------- */
.main .top-section02 {
	position: relative;
	padding: 100px 0;
	background: #e8e7e6;
}

.main .top-section02 .top-slider li.col1-1.slick-slide {
	margin-right: 20px;
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

.main .top-section02 .top-slider li.col1-1.slick-slide::before {
	display: none;
}

.main .top-section02 .top-slider li.col1-1.slick-slide img {
	width: 100%;
	margin: auto;
}

.main .top-section02 .top-slider .slick-slide {
	transition: 0.3s ease;
	transform: scale(0.8);
	transform-origin: 100% 100%;
	opacity: 0.15;
}

.main .top-section02 .top-slider .slick-current {
	transform: scale(1);
	transform-origin: 50% 50%;
	opacity: 1;
}

.main .top-section02 .top-slider .slick-current+.slick-slide {
	transform: scale(0.8);
	transform-origin: 0 100%;
}

.main .top-section02 .top-slider .slick-arrow,
.main .top-section02 .top-slider .slick-arrow:before,
.main .top-section02 .top-slider .slick-arrow::after {
	display: none;
}
.main .top-section02 .top-slider .slick-slide { opacity: 1; transform: scale(1); }
.main .top-section02 .top-slider .slick-current+.slick-slide {  transform: scale(1); }
.main .top-section02 .top-slider .slider-container { position: relative; }
.main .top-section02 .top-slider li.col1-1.slick-slide { box-shadow: none; }
.main .top-section02 .top-slider li.col1-1.slick-slide img { background-color: #fff; box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2); }
.main .top-section02 .top-slider li.col1-1.slick-slide p { margin: 0; padding: 1.5rem 0 0; line-height: 1.5; }
.main .top-section02 .slick-arrow { /* top: calc((50% - 20px) - 3rem); */ top:0; height: 100%; width: 38px; border-radius:0; margin: 0; border:none; background: #c5c5c5 url(/assets/images/common/arw_prev.svg) center no-repeat; backdrop-filter: blur(10px); transition: .4s; }
.main .top-section02 .slick-arrow:hover { background-color: #999; }
.main .top-section02 .slick-prev { left: 0; background-image: url(/assets/images/common/arw_prev.svg);  }
.main .top-section02 .slick-next { right: 0; background-image: url(/assets/images/common/arw_next.svg);  }

/* ----------　TOP News  ---------- */
.main .top-section03 {
	position: relative;
	padding: 100px 0 96px;
}

.main .top-section03 .tab-nav li.current a {
	background: #e8e7e6 !important;
}

.main .top-section03 .tab-nav li:not(.current)+li:nth-of-type(2):not(.current) a {
	border-left: #777;
}

.main .top-section03 .tab-nav li:nth-child(3).current a,
.main .top-section03 .tab-nav li:nth-child(4).current a {
	border-left: 4px solid #fff;
}

.main .top-section03 .tab-content {
	background: #e8e7e6;
}

.main .top-section03 .tab-content .tab-element {
	padding-bottom: 50px !important;
}

/* ---------- TOP About ---------- */
.main .top-section04 {
	position: relative;
	padding: 100px 0 120px;
	background: #e8e7e6;
}

.main .top-section04 .col-set {
	width: calc(100% + 15px);
	margin-bottom: 40px;
}

.main .top-section04 .col-set .col1-3.hover-cover {
	position: relative;
	width: calc(33.3333% - 15px);
	margin-right: 15px;
}

.main .top-section04 .col-set .col1-3.hover-cover a .tit-area {
	padding: 35px 20px;
}

.main .top-section04 .col-set .col1-3.hover-cover a .tit-area h3 {
	height: 90px;
}

.main .top-section04 .col-set .col1-3.hover-cover a:hover::before {
	top: 0;
}

.main .top-section04 .col-set .col1-3.hover-cover a:hover .tit-area {
	top: auto;
	bottom: 0;
}

.main .top-section04 .col-set .col1-3.hover-cover a:hover .tit-area h3 {
	height: auto;
	margin-bottom: 5px;
}

/* ---------- TOP IR ---------- */
.main .top-section05 {
	position: relative;
	padding: 100px 0 120px;
}

.main .top-section05 .col-set {
	margin-bottom: 40px;
}

.main .top-section05 .col-set .col1-4.hover-cover {
	position: relative;
}

.main .top-section05 .col-set .col1-4.hover-cover a::before {
	top: calc(100% - 59px);
}

.main .top-section05 .col-set .col1-4.hover-cover a .tit-area {
	top: calc(100% - 59px);
	padding: 20px;
	padding: 17px 20px 15px;
}

.main .top-section05 .col-set .col1-4.hover-cover a .tit-area h3 {
	height: 59px;
	background: transparent;
}

.main .top-section05 .col-set .col1-4.hover-cover a:hover::before {
	top: 0;
}

.main .top-section05 .col-set .col1-4.hover-cover a:hover .tit-area {
	top: auto;
	bottom: 0;
}

.main .top-section05 .col-set .col1-4.hover-cover a:hover .tit-area h3 {
	height: auto;
	margin-bottom: 5px;
}

/* ---------- TOP　Registration ---------- */
.main .top-section06 {
	position: relative;
	padding: 120px 0 70px;
	background: #e8e7e6;
}

.main .top-section06 .col-set {
	margin-bottom: 40px;
}

.main .top-section06 .col-set .col1-4.hover-cover {
	position: relative;
	overflow: hidden;
}

.main .top-section06 .col-set .col1-4.hover-cover a::before {
	top: calc(100% - 88px);
}

.main .top-section06 .col-set .col1-4.hover-cover a .tit-area {
	top: calc(100% - 88px);
	padding: 0 25px 20px;
}

.main .top-section06 .col-set .col1-4.hover-cover a .tit-area h3 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	height: 88px;
	background: transparent;
	font-size: 2.4rem;
}

.main .top-section06 .col-set .col1-4.hover-cover a .tit-area p {
	font-size: 1.4rem;
	line-height: 1.65;
}

.main .top-section06 .col-set .col1-4.hover-cover a:hover::before {
	top: 0;
}

.main .top-section06 .col-set .col1-4.hover-cover a:hover .tit-area {
	top: auto;
	bottom: 0;
}

.main .top-section06 .col-set .col1-4.hover-cover a:hover .tit-area h3 {
	height: auto;
	margin-bottom: 10px;
}

/* ---------- TOP bnr ---------- */
.main .p-top-bnr {
	padding: 40px 0 45px;
}

.main .p-top-bnr .inner {
	max-width: 830px;
	margin: 0 auto;
	padding: 0 15px;
}

/* 2020.06.04 新卒採用中断のため 再開されたらこの部分は削除 */
.main .p-top-bnr .inner .col-set .col1-3 {
	width: calc(1 / 2 * 100% - 30px);
}

.main .p-top-bnr .inner {
	max-width: 700px;
}

/* 2020.06.04 */

.main .p-top-bnr .inner .col-set {
	width: calc(100% + 10px);
	margin-bottom: 0;
}

.main .p-top-bnr .inner .col-set .col1-4 {
	width: calc(25% - 10px);
	margin-right: 10px;
}

.main .p-top-bnr .inner .col-set .col1-4 .img {
	margin-bottom: 0;
}

/*---------------------------------------------
	xxx
  ---------------------------------------------*/
@media screen and (max-width: 980px) {
	.main .p-top .col-set .col1-2 .tit-area h3 {
		font-size: 3.5vw;
	}

	.main .top-section01 .second-col .col1-4 h3 {
		padding: 13px 20px 12px;
		font-size: 2.2vw;
	}

	.main .top-section05 .col-set .col1-4.hover-cover a .tit-area h3 {
		font-size: 2.4vw;
	}

	.main .top-section06 .col-set .col1-4.hover-cover a .tit-area {
		padding: 0 2vw 20px;
	}

	.main .top-section06 .col-set .col1-4.hover-cover a .tit-area h3 {
		font-size: 2.4vw;
	}
}

@media screen and (max-width: 767px) {
	.main .p-top .scroll-bar {
		top: -15px;
		height: 90px;
	}

	.main .p-top .scroll-bar::after {
		height: 0;
	}

	.main .p-top .scroll-bar.animation::after {
		height: 90px;
	}

	.main .p-top h2 {
		font-size: 1.8rem;
		line-height: 1;
	}

	.main .p-top h2 span {
		margin-bottom: 15px;
		font-size: 2.8rem;
		line-height: 1;
	}

	.main .p-top .col-set {
		width: 100%;
	}

	.main .p-top .col-set .col1-2 {
		width: 100%;
		margin-right: 0;
	}

	.main .p-top .col-set .col1-2 .tit-area {
		padding: 10px 15px;
	}

	.main .p-top .col-set .col1-4 {
		width: calc(50% - 15px);
		margin-right: 15px;
		margin-bottom: 15px;
	}

	.main .p-top .col-set .col1-4 h3 {
		padding: 15px 10px;
		font-size: 1.6rem;
	}

	.main .p-top .col-set .col1-3.hover-cover a::before,
	.main .p-top .col-set .col1-4.hover-cover a::before {
		display: none;
	}

	.main .p-top .col-set .col1-3.hover-cover a .tit-area,
	.main .p-top .col-set .col1-4.hover-cover a .tit-area {
		top: auto;
		bottom: 0;
		padding: 0;
	}

	.main .p-top .col-set .col1-3.hover-cover a .tit-area h3,
	.main .p-top .col-set .col1-4.hover-cover a .tit-area h3 {
		height: auto;
	}

	.main .p-top .col-set .col1-3.hover-cover a .tit-area p,
	.main .p-top .col-set .col1-4.hover-cover a .tit-area p {
		display: none;
	}

	.main .p-top .col-set .col1-3.hover-cover a:hover .tit-area h3,
	.main .p-top .col-set .col1-4.hover-cover a:hover .tit-area h3 {
		margin-bottom: 0;
	}

	.main .p-top .btn {
		margin-bottom: 0;
	}

	.main .top-section01 {
		padding-bottom: 75px;
	}

	.main .top-section01 .scroll-bar {
		top: -100px;
		height: 80px;
	}

	.main .top-section01 .scroll-bar::after {
		height: 0;
	}

	.main .top-section01 .scroll-bar.animation::after {
		height: 80px;
	}

	.main .top-section01 h2 {
		font-size: 2rem;
	}

	.main .top-section01 h2 span {
		font-size: 3rem;
	}

	.main .top-section01 .col-set .col1-2:first-child {
		margin: 0 15px 15px;
	}

	.main .top-section01 .col-set .col1-2:last-child {
		margin: 0 15px 15px;
	}

	.main .top-section01 .col-set .col1-2 .tit-area h3 {
		margin-bottom: 10px;
		font-size: 1.9rem;
	}

	.main .top-section01 .second-col {
		width: 100%;
		padding: 0 15px;
	}

	.main .top-section01 .second-col .col1-4 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 15px;
	}

	.main .top-section01 .second-col .col1-4:last-child {
		margin-bottom: 0;
	}

	.main .top-section02 {
		padding: 95px 0 80px;
	}

	.main .top-section02 .top-slider li.col1-1.slick-slide {
		margin-right: 10px;
	}

	.main .top-section02 .top-slider .slick-slide,
	.main .top-section02 .top-slider .slick-current,
	.main .top-section02 .top-slider .slick-current+.slick-slide {
		transform: scale(1);
		transform-origin: 50% 50%;
		opacity: 1;
	}

	.main .top-section02 .top-slider .slick-dots {
		padding-right: 8px !important;
	}

	.main .top-section03 {
		padding: 95px 0 60px;
	}

	.main .top-section03 .tab-nav li a {
		padding: 5px;
		line-height: 1.35;
	}

	.main .top-section03 .tab-nav li:not(.current) a {
		border-bottom: 1px solid #fff;
		border-left: 1px solid #fff;
	}

	.main .top-section03 .tab-nav li:first-child:not(.current) a {
		border-right: 1px solid #fff;
	}

	.main .top-section03 .tab-nav li:nth-child(3).current a,
	.main .top-section03 .tab-nav li:nth-child(4).current a {
		border-left: 1px solid #fff;
	}

	.main .top-section03 .tab .tab-element {
		padding: 15px 15px 0;
		padding-bottom: 25px !important;
	}

	.main .top-section03 .news li {
		height: auto;
	}

	.main .top-section03 .news li a {
		padding: 15px 0;
	}

	.main .top-section03 .news li a .meta-data {
		width: 100%;
		margin-right: 0;
	}

	.main .top-section03 .news li a .meta-data .date {
		margin-right: 15px;
	}

	.main .top-section03 .news li a p {
		width: 100%;
		padding-left: 0;
	}

	.main .top-section04 {
		padding: 95px 0 75px;
	}

	.main .top-section04 .col-set {
		width: calc(100% + 15px);
		margin-bottom: 35px;
	}

	.main .top-section04 .col-set .col1-3.hover-cover {
		width: calc(50% - 15px);
		margin-bottom: 15px;
	}

	.main .top-section04 .col-set .col1-3.hover-cover a .tit-area {
		padding: 0;
	}

	.main .top-section04 .col-set .col1-3.hover-cover a .tit-area h3 {
		padding: 10px 15px;
		font-size: 1.4rem;
		background: rgba(102, 102, 102, 0.5);
	}

	.main .top-section04 .col-set .col1-3:nth-child(2) {
		margin-right: 0;
	}

	.main .top-section04 .col-set .col1-3:last-child {
		margin: 0 auto;
		transform: translateX(-7.5px);
	}

	.main .top-section05 {
		padding: 95px 0 83px;
	}

	.main .top-section05 .col-set {
		width: calc(100% + 15px);
	}

	.main .top-section05 .col-set .col1-4.hover-cover a::before {
		display: none;
	}

	.main .top-section05 .col-set .col1-4.hover-cover a .tit-area h3 {
		padding: 10px 10px 8px;
		font-size: 1.4rem;
		background: rgba(51, 51, 51, 0.3);
	}

	.main .top-section05 .col-set .col1-4:nth-child(3),
	.main .top-section05 .col-set .col1-4:last-child {
		margin-bottom: 0;
	}

	.main .top-section06 {
		padding: 90px 0 60px;
	}

	.main .top-section06 .col-set {
		width: calc(100% + 15px);
	}

	.main .top-section06 .col-set .col1-4.hover-cover a .tit-area h3 {
		padding: 12px 15px 10px;
		font-size: 1.4rem;
		background: rgba(102, 102, 102, 0.5);
		line-height: 1.5;
	}

	.main .top-section06 .col-set .col1-4:nth-child(3),
	.main .top-section06 .col-set .col1-4:last-child {
		margin-bottom: 0;
	}

	.main .p-top-bnr {
		padding: 15px 0;
	}

	.main .p-top-bnr .inner .col-set {
		width: 100%;
	}

	.main .p-top-bnr .inner .col-set .col1-4 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 5px;
	}

	.main .p-top-bnr .inner .col-set .col1-4:last-child {
		margin-bottom: 0;
	}
}

/* ---------------------------------------------
	登録・採用情報
--------------------------------------------- */
/* 登録・採用情報 Top
----------------------- */
.main.p-recruit-top {
	padding-top: 0;
	background: url(../images/recruit/bg.jpg) no-repeat top center;
	background-size: cover;
}

.main.p-recruit-top .breadcrumb {
	position: absolute;
	top: 450px;
	right: 0;
	left: 0;
	max-width: calc(1170px + 40px);
	width: 100%;
	margin: 0 auto;
	padding: 0 20px;
}

.main.p-recruit-top .p-recruit-top-contents {
	position: relative;
	max-width: 1300px;
	margin: 0 auto;
	margin-top: -130px;
	padding-bottom: 30px;
}

.main.p-recruit-top .p-recruit-top-contents .tab-nav {
	max-width: 1170px;
	width: calc(100% - ((4.51vw + 7.29vw) * 2));
	margin: 0 auto;
}

.main.p-recruit-top .p-recruit-top-contents .tab-nav li {
	height: 80px;
}

.main.p-recruit-top .p-recruit-top-contents .tab-nav li.current a {
	background: #fff !important;
}

.main.p-recruit-top .p-recruit-top-contents .tab-nav li.current a:hover {
	opacity: 1;
}

.main.p-recruit-top .p-recruit-top-contents .tab-nav li:not(.current) a {
	border: none;
}

.main.p-recruit-top .p-recruit-top-contents .tab-nav li:not(.current) a:hover {
	background: #979797;
	opacity: 1;
}

.main.p-recruit-top .p-recruit-top-contents .tab-content {
	background: #fff;
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08);
}

.main.p-recruit-top .p-recruit-top-contents .tab-content .row {
	padding: 0 4.51vw;
}

.main.p-recruit-top .p-recruit-top-contents .tab-content .row .tab-element {
	padding: 80px 0 65px;
}

.main.p-recruit-top .p-recruit-top-contents .recruit-top-section .txt-box {
	text-align: center;
}

.main.p-recruit-top .p-recruit-top-contents .recruit-top-section+.recruit-top-section {
	margin-top: 150px;
}

.main.p-recruit-top .p-recruit-bnr {
	border-top: none;
	background: #fff;
}

@media screen and (max-width: 1430px) {
	.main.p-recruit-top .p-recruit-top-contents {
		margin: -130px 70px 0;
		margin: -130px 4.86vw 0;
	}
}

@media screen and (max-width: 767px) {
	.main.p-recruit-top .breadcrumb {
		top: 470px;
		min-height: none;
	}

	.main.p-recruit-top .p-recruit-top-contents {
		margin: -60px 15px 0;
	}

	.main.p-recruit-top .p-recruit-top-contents .tab-nav {
		width: calc(100% - 24px);
		margin: 0 auto;
	}

	.main.p-recruit-top .p-recruit-top-contents .tab-nav li {
		height: 50px;
		font-size: 1.4rem;
	}

	.main.p-recruit-top .p-recruit-top-contents .tab-nav li a {
		padding: 5px 0;
		line-height: 1.25;
	}

	.main.p-recruit-top .p-recruit-top-contents .tab-content .row {
		padding: 0 15px;
	}

	.main.p-recruit-top .p-recruit-top-contents .tab-content .row .tab-container {
		margin: 0;
	}

	.main.p-recruit-top .p-recruit-top-contents .tab-content .row .tab-element {
		padding-top: 35px;
	}

	.main.p-recruit-top .p-recruit-top-contents .recruit-top-section .txt-box br {
		display: none;
	}

	.main.p-recruit-top .p-recruit-top-contents .recruit-top-section+.recruit-top-section {
		margin-top: 50px;
	}
}

@media screen and (max-width: 320px) {
	.main.p-recruit-top .p-recruit-top-contents .tab-nav li {
		font-size: 1.2rem;
	}
}

/* ---------- 採用情報　- 下層タブ ---------- */
.main .tab.p-recruit {
	margin-bottom: 0;
}

.main .tab.p-recruit .tab-nav li {
	min-height: 80px;
}

.main .tab.p-recruit .tab-nav li:not(.current) a {
	border-left: 1px solid #fff;
	border-bottom: 0;
}

.main .tab.p-recruit .tab-nav li:first-child:not(.current) a {
	border-right: 0;
}

.main .tab.p-recruit .table-wrapper:not(:last-child) {
	margin-bottom: 70px;
}

.main .tab.p-recruit table {
	margin-bottom: 30px;
}

.main .tab.p-recruit table td {
	background: #fff;
}

.main .tab.p-recruit .btn a {
	padding: 13px 35px 12px 20px;
	font-weight: 500;
}

.main .row .tab.p-recruit .tab-element {
	padding: 35px 30px 50px;
}

.main .job-num {
	margin-bottom: 3px;
	color: #7a7a7a;
	font-size: 1.2rem;
	font-weight: 700;
}

.main .tab.p-recruit .tab-nav li.tab_normal a {
	background-color: #777 !important;
	color: #fff !important;
	pointer-events: none;
}

.main .tab.p-recruit .tab-nav li.tab_normal a:hover {
	opacity: 1;
}

/* ---------- 登録情報タブ---------- */
.main .row .tab.p-recruit.regist-job-list {
	padding-bottom: 30px;
}

.main .row .tab.p-recruit.regist-job-list .tab-element {
	padding: 35px 0 0;
}

.main .row .tab.p-recruit.regist-job-list .tab-element .news {
	padding-top: 0;
}

.main ul.regist-category-list {
	margin-bottom: 0;
}

.main ul.regist-category-list:after {
	content: " ";
	display: block;
	clear: both;
}

.main ul.regist-category-list li {
	padding-left: 0;
}

.main ul.regist-category-list li::before {
	display: none;
}

.main ul.regist-category-list li.label-icon {
	display: inline-block;
	float: left;
	margin-right: 15px;
	padding: 0 10px;
	background: #221814;
	color: #fff;
	font-size: 1.2rem;
}

@media screen and (max-width: 767px) {
	.main .row .tab.p-recruit .tab-nav li {
		min-height: 50px;
	}

	.main .row .tab.p-recruit .tab-element {
		padding: 15px 15px 40px;
	}

	.main .row .tab.p-recruit .table-wrapper:not(:last-child) {
		margin-bottom: 40px;
	}

	.main .row .tab.p-recruit table {
		margin-bottom: 20px;
	}

	.main .row .tab.p-recruit .btn {
		max-width: 227px;
		width: 66.6666%;
		margin-bottom: 0;
	}

	.main .row .tab.p-recruit .btn a {
		margin: 0 0 15px 0;
		padding: 10px 35px 10px 20px;
	}

	.main .row .tab.p-recruit.regist-job-list .tab-element {
		padding-top: 20px;
	}

	.main .row .tab.p-recruit.regist-job-list .tab-element .news li a .meta-data {
		width: 100%;
	}

	.main .row .tab.p-recruit.regist-job-list .tab-element .news li a .meta-data .tag {
		margin-right: 20px;
	}

	.main .row .tab.p-recruit.regist-job-list .tab-element .news li a .meta-data .label-icon {
		padding: 3px 8px;
		font-size: 1rem;
	}

	.main .row .tab.p-recruit.regist-job-list .tab-element .news li a p {
		width: 100%;
	}
}

/* 会社紹介
----------------------- */
.main.p-corporate {
	padding-top: 0;
}

.main.p-corporate .breadcrumb {
	position: absolute;
	top: 30px;
	z-index: 1;
}

.p-corporate__msg {
	position: relative;
}

.p-corporate__msg::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 50%;
	height: 100%;
	background: url(../images/recruit/corporate/corporate-img01.jpg) no-repeat center;
	background-size: cover;
	content: "";
}

.p-corporate__msg .col-set {
	width: 100%;
	height: 100%;
}

.p-corporate__msg .txt-area {
	position: relative;
	width: 50%;
	margin-left: 50%;
	margin-right: 0;
	background: #e4ebec;
}

.p-corporate__msg .txt-area__inner {
	position: relative;
	max-width: 585px;
	margin-top: 130px;
	margin-right: 20px;
	margin-bottom: 90px;
	padding: 40px 45px 32px 40px;
	background: #fff;
	box-shadow: 0 3px 15px rgba(0, 0, 0, 0.06);
	z-index: 2;
}

.p-corporate__msg .txt-area__inner h2 {
	margin-bottom: 30px;
}

.p-corporate__msg .txt-area::before {
	display: block;
	position: absolute;
	top: 0;
	left: -30%;
	width: 35%;
	height: 100%;
	background: #e3eced;
	background: linear-gradient(90deg, rgba(227, 236, 237, 0) 0%, #e3eced 60%, #e3eced 100%);
	content: "";
	z-index: 0;
}

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

	/* 会社紹介
  ----------------------- */
	.p-corporate__msg .txt-area__inner {
		margin-top: 8vw;
		padding: 30px 35px 30px 30px;
	}

	.p-corporate__msg .txt-area__inner h2 {
		padding: 13px 0 10px 35px;
		font-size: 3rem;
		line-height: 1.25;
	}

	.p-corporate__msg .txt-area__inner h2::after {
		height: 100%;
	}
}

@media screen and (max-width: 767px) {
	.main.p-corporate .breadcrumb {
		top: 20px;
		z-index: 3;
	}

	.main .p-corporate__msg {
		height: auto;
		padding-top: 335px;
	}

	.main .p-corporate__msg::before {
		width: 100%;
		height: 335px;
	}

	.main .p-corporate__msg .txt-area {
		margin-left: 0;
	}

	.main .p-corporate__msg .txt-area::before {
		display: none;
	}

	.main .p-corporate__msg .txt-area__inner {
		max-width: none;
		width: 100%;
		margin: 0;
		padding: 20px 15px 30px;
	}

	.main .p-corporate__msg .txt-area__inner h2 {
		margin-bottom: 20px;
		padding: 10px 0 8px 18px;
		font-size: 2.3rem;
	}
}

/* ---------- 数字で見る ---------- */
.p-corporate__num {
	padding-top: 100px;
	padding-bottom: 70px;
	background: #f5f5f5;
}

.p-corporate__num .ranking-box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	position: relative;
	width: 100%;
	height: 350px;
	margin-bottom: 30px;
	padding: 0 50px;
	border-bottom: 1px solid rgba(34, 24, 20, 0.2);
}

.p-corporate__num .ranking-box .tit-area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	width: 33.3333%;
	width: 37%;
	height: 100%;
}

.p-corporate__num .ranking-box .tit-area h3 {
	margin-bottom: 0;
}

.p-corporate__num .ranking-box .ranking-area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	width: 66.6666%;
	width: 63%;
	height: 100%;
}

.p-corporate__num .ranking-box .ranking-area::before {
	display: block;
	position: absolute;
	top: -15px;
	left: -15px;
	width: 105%;
	height: 105%;
	background: url(../images/recruit/corporate/world-map.png) no-repeat center;
	background-size: contain;
	content: "";
}

.p-corporate__num .ranking-box .ranking-area dl {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	text-align: center;
	overflow: visible;
}

.p-corporate__num .ranking-box .ranking-area dl dt {
	width: 100%;
	margin: 0 0 50px;
	padding: 0;
	font-size: 2.4rem;
	font-weight: 700;
}

.p-corporate__num .ranking-box .ranking-area dl dd {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 5rem;
	font-weight: 700;
}

.p-corporate__num .ranking-box .ranking-area dl dd span {
	font-size: 13rem;
	font-weight: 500;
}

.p-corporate__num .ranking-box p.note {
	position: absolute;
	right: 0;
	bottom: 0;
	font-size: 1.2rem;
}

.p-corporate__num p.note02 {
	text-align: right;
	font-size: 1.2rem;
	margin-bottom: 0;
}

/* 年間取引　& 受注 & リピート率　*/
.p-corporate__num .col-set {
	width: 100%;
	margin-bottom: 30px;
	border-bottom: 1px solid rgba(34, 24, 20, 0.2);
}

.p-corporate__num .col-set.fifth-col {
	border-bottom: 0px;
}

.p-corporate__num .col-set .col1-3 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	width: 33.3333%;
	max-height: 250px;
	height: 250px;
	margin-right: 0;
	margin-bottom: 30px;
	padding-top: 10px;
	border-right: 1px solid rgba(34, 24, 20, 0.2);
	text-align: center;
}

.p-corporate__num .col-set .col1-3 h3 {
	font-size: 2.4rem;
}

.p-corporate__num .col-set .col1-3 p {
	font-weight: 300;
}

.p-corporate__num .col-set .col1-3:last-child {
	border-right: none;
}

.p-corporate__num .col-set:last-child {
	border-bottom: none;
	margin-bottom: 0;
}

.p-corporate__num .first-col p {
	font-size: 5rem;
}

.p-corporate__num .first-col p span {
	margin-right: 5px;
	font-size: 6rem;
	letter-spacing: -0.05em;
}

.p-corporate__num .col-set .col1-3 .performance .performance_txt {
	font-size: 1.2rem;
}

.p-corporate__num .first-col .company {
	position: relative;
}

.p-corporate__num .first-col .company::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 72px;
	height: 67px;
	margin: auto;
	background: url(../images/recruit/corporate/company-img.png) no-repeat center;
	background-size: contain;
	content: "";
}

.p-corporate__num .first-col .company p {
	margin-top: auto;
	margin-bottom: 10px;
}

.p-corporate__num .first-col .number {
	position: relative;
	margin-bottom: 10px;
}

.p-corporate__num .first-col .number::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 112px;
	height: 61px;
	margin: auto;
	background: url(../images/recruit/corporate/number-img.png) no-repeat center;
	background-size: contain;
	content: "";
}

.p-corporate__num .first-col .number p {
	/* margin-top: auto; */
	margin-top: 12rem;

}

.p-corporate__num .first-col .repeat {
	position: relative;
}

.p-corporate__num .first-col .repeat .chart {
	position: relative;
}

.p-corporate__num .first-col .repeat .chart #chart-graph {
	position: relative;
	margin: 0 auto;
	width: 180px;
	height: 180px;
	overflow: hidden;
}

.p-corporate__num .first-col .repeat .chart #graph1 {
	position: relative;
}

.p-corporate__num .first-col .repeat p {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	margin: auto;
	transform: translateY(-50%);
}

.p-corporate__num .first-col .repeat p span {
	font-size: 8rem;
}

/* 言語　& 翻訳者数 & 有給　& 残業　*/
.p-corporate__num .second-col,
.p-corporate__num .third-col {
	width: 100%;
	padding: 0 50px;
	/* for IE10 and IE11 */
}

.p-corporate__num .second-col .col1-2,
.p-corporate__num .third-col .col1-2,
.p-corporate__num .first-col .col1-3 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	width: 50%;
	height: 250px;
	margin-right: 0;
	margin-bottom: 30px;
}

.p-corporate__num .second-col .col1-2 p,
.p-corporate__num .third-col .col1-2 p {
	margin: 0 auto;
	font-size: 3rem;
}

.p-corporate__num .second-col .col1-2 p span,
.p-corporate__num .third-col .col1-2 p span {
	font-size: 8rem;
	font-weight: 300;
	letter-spacing: 0;
}

.p-corporate__num .second-col .col1-2:not(:last-child),
.p-corporate__num .third-col .col1-2:not(:last-child) {
	padding-right: 50px;
	border-right: 1px solid rgba(34, 24, 20, 0.2);
}

.p-corporate__num .second-col .col1-2:last-child,
.p-corporate__num .third-col .col1-2:last-child {
	padding-left: 50px;
}

.p-corporate__num .third-col .col1-2:not(:last-child),
.p-corporate__num .third-col .col1-2:last-child {
	height: 170px;
	padding-top: 35px;
}

.p-corporate__num .third-col .col1-2:not(:last-child) .performance,
.p-corporate__num .third-col .col1-2:last-child .performance {
	width: 100%;
	margin: 0 auto;
	text-align: right;
}

.p-corporate__num .third-col .col1-2:not(:last-child) .performance .performance_txt,
.p-corporate__num .third-col .col1-2:last-child .performance .performance_txt,
.p-corporate__num .col-set .col1-3:last-child .performance .performance_txt {
	font-size: 1.2rem;
}

.p-corporate__num .col-set .col1-3:last-child .performance {
	position: absolute;
	bottom: 0;
	text-align: center;
	width: 100%;
}

.p-corporate__num .second-col .language,
.p-corporate__num .third-col .language {
	padding: 0 50px 0 0;
	padding: 0;
	background: url(../images/recruit/corporate/language-img.png) no-repeat right;
	background-position: 75% 30%;
	background-size: 308px 172px;
}

.p-corporate__num .second-col .register,
.p-corporate__num .third-col .register {
	background: url(../images/recruit/corporate/regist-img.png) no-repeat right;
	background-position: 85% 40%;
	background-size: 266px 161px;
}

@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {

	.p-corporate__num .second-col .col1-2:not(:last-child),
	.p-corporate__num .third-col .col1-2:not(:last-child) {
		padding-right: 35px;
	}
}

.p-corporate__num .third-col .holiday p {
	position: relative;
	margin-left: auto;
	padding-left: 80px;
	font-size: 3.1rem;
	text-align: right;
}

.p-corporate__num .third-col .holiday p::before {
	display: block;
	position: absolute;
	top: -15px;
	left: 0;
	width: 68px;
	height: 58px;
	background: url(../images/recruit/corporate/holiday-img.png) no-repeat left center;
	background-size: contain;
	content: "";
}

.p-corporate__num .third-col .work-hours p {
	position: relative;
	margin-left: auto;
	padding-left: 80px;
	text-align: right;
}

.p-corporate__num .third-col .work-hours p::before {
	display: block;
	position: absolute;
	top: -10px;
	left: 0;
	width: 69px;
	height: 59px;
	background: url(../images/recruit/corporate/work-hours-img.png) no-repeat left center;
	background-size: contain;
	content: "";
}

/* 従業員数　& 男女比　*/
.p-corporate__num .col-set .col2-3 {
	width: 66.6666%;
	margin-right: 0;
	border-right: 1px solid rgba(34, 24, 20, 0.2);
}

.p-corporate__num .employee {
	position: relative;
	padding: 0 2%;
}

/* .p-corporate__num .employee::before {
  display: block;
  position: absolute;
  left: 0;
  bottom: -30px;
  width: 150%;
  height: 1px;
  background: rgba(34, 24, 20, 0.2);
  content: "";
} */

.p-corporate__num .employee p.note {
	text-align: left;
	margin-bottom: 15px;
	padding-left: 40px;
	background: url(../images/recruit/corporate/men-icon.svg) no-repeat 22px;
	background-size: 11px 18px;
}

.p-corporate__num .employee dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-bottom: 0;
	overflow: visible;
	line-height: 5rem;
}

.p-corporate__num .employee dl dt {
	position: relative;
	top: 30px;
	width: 50%;
	width: calc(100% - 50%);
	margin: 0;
	padding: 0;
	font-size: 3rem;
	/* text-align: right; */
	order: 1;
}

.p-corporate__num .employee dl dt span {
	font-size: 7rem;
	font-weight: 300;
	letter-spacing: -0.02em;
}

.p-corporate__num .employee dl dd {
	width: 50%;
	margin: 0;
	padding: 0;
	order: 0;
}

.p-corporate__num .employee dl dd ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.p-corporate__num .employee dl dd ul li {
	width: 15px;
	height: 23px;
	margin: 0 10px 5px 0;
	padding: 0;
	opacity: 1;
}

.p-corporate__num .employee dl dd ul li::before {
	display: none;
}

.p-corporate__num .employee dl dd ul li.animate {
	opacity: 0;
}

.p-corporate__num .col-set .men-women {
	width: 33.3333%;
	padding: 0 30px;
	margin-bottom: 30px;
	/* border-right: none; */
}

.p-corporate__num .col-set .men-women h3 {
	text-align: center;
}

.p-corporate__num .col-set .men-women__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 83%;
	margin: auto;
}

.p-corporate__num .col-set .men-women__inner dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 50%;
	margin: 0;
	text-align: center;
}

.p-corporate__num .col-set .men-women__inner dl dt {
	width: 100%;
	height: 125px;
	margin: 0;
	padding: 0;
	margin-top: auto;
	margin-bottom: 5px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: flex-end;
	-ms-flex-align: flex-end;
	-webkit-align-items: flex-end;
	align-items: flex-end;
}

.p-corporate__num .col-set .men-women__inner dl dt img {
	margin-top: auto;
}

.p-corporate__num .col-set .men-women__inner dl dd {
	width: 100%;
	margin: 0;
	margin-top: auto;
	padding: 0;
}

.p-corporate__num .col-set .men-women .men dt img {
	width: 24px;
	height: 68px;
	margin: 0 auto;
}

.p-corporate__num .col-set .men-women .men dd {
	font-size: 2.1rem;
}

.p-corporate__num .col-set .men-women .men dd span {
	padding-left: 20px;
	font-size: 4.2rem;
	line-height: 1;
}

.p-corporate__num .col-set .men-women .women dt img {
	width: 44px;
	height: 125px;
	margin: 0 auto;
}

.p-corporate__num .col-set .men-women .women dd {
	font-size: 3rem;
}

.p-corporate__num .col-set .men-women .women dd span {
	padding-left: 20px;
	font-size: 6rem;
	line-height: 1;
}

/* 中途採用者比率 */
.p-corporate__num .col-set .midcareer .chart {
	position: relative;
}

.p-corporate__num .col-set .midcareer .chart #graph1 {
	position: relative;
}

.p-corporate__num .midcareer .chart #chart-graph {
	position: relative;
	margin: 0 auto;
	width: 180px;
	height: 180px;
	overflow: hidden;
}

.p-corporate__num .col-set .midcareer p {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	margin: auto;
	transform: translateY(-50%);
	font-size: 5rem;
	font-weight: 300;
}

.p-corporate__num .col-set .midcareer p span {
	font-size: 8rem;
}

/* 平均年齢 */
.p-corporate__num .age {
	position: relative;
	margin-top: 30px;
}

.p-corporate__num .age::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 126px;
	height: 67px;
	margin: auto;
	background: url(../images/recruit/corporate/age-img.png) no-repeat center;
	background-size: contain;
	content: "";
}

.p-corporate__num .age p {
	margin-top: auto;
	font-size: 5rem;
}

.p-corporate__num .age p span {
	font-size: 6rem;
}

.p-corporate__num .generation {
	margin-top: 30px;
}

.p-corporate__num .generation img {
	max-width: 290px;
	width: 80%;
	height: auto;
}

.p-corporate__num .occupation {
	margin-top: 30px;
}

.p-corporate__num .occupation img {
	max-width: 290px;
	width: 80%;
	height: auto;
}

@media screen and (max-width: 1430px) {
	.p-corporate__num .col-set .men-women__inner {
		width: 100%;
	}
}

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

	.p-corporate__num .second-col .col1-2 p span,
	.p-corporate__num .third-col .col1-2 p span {
		font-size: 6vw;
	}
}

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

	.p-corporate__num .second-col,
	.p-corporate__num .third-col {
		padding: 0;
	}

	.p-corporate__num .second-col .col1-2,
	.p-corporate__num .third-col .col1-2 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		padding-top: 10px;
		text-align: center;
	}

	.p-corporate__num .second-col .col1-2 h3,
	.p-corporate__num .third-col .col1-2 h3 {
		width: 100%;
	}

	.p-corporate__num .second-col .col1-2 p,
	.p-corporate__num .third-col .col1-2 p {
		width: auto;
		margin: auto;
	}

	.p-corporate__num .second-col .col1-2 p span,
	.p-corporate__num .third-col .col1-2 p span {
		font-size: 7rem;
	}

	.p-corporate__num .second-col .col1-2:last-child,
	.p-corporate__num .third-col .col1-2:last-child {
		padding-left: 0;
	}

	.p-corporate__num .second-col .language,
	.p-corporate__num .third-col .language {
		background-position: center center;
	}

	.p-corporate__num .second-col .register,
	.p-corporate__num .third-col .register {
		background-position: 75% 50%;
	}

	.p-corporate__num .col-set .col2-3 {
		width: 100%;
		height: 250px;
		padding-top: 10px;
		padding: 10px 50px 0;
		border-right: none;
		border-bottom: 1px solid rgba(34, 24, 20, 0.2);
	}

	.p-corporate__num .col-set .col2-3::before {
		display: none;
	}

	/* .p-corporate__num .col-set.fourth-col .col1-3 {
    width: 50%;
  } */

	/* .p-corporate__num .employee dl dd ul li {
    margin: 0 5px 5px 0;
  } */

	.p-corporate__num .employee dl dt {
		font-size: 2rem;
	}

	.p-corporate__num .employee dl dt span {
		font-size: 5rem;
	}

	.p-corporate__num .col-set.fourth-col .men-women {
		position: relative;
		padding: 0 30px 0;
		border-right: 1px solid rgba(34, 24, 20, 0.2);
	}

	/* .p-corporate__num .col-set.fourth-col .men-women::before {
    display: block;
    position: absolute;
    left: 0;
    bottom: -30px;
    width: 200%;
    height: 1px;
    background: rgba(34, 24, 20, 0.2);
    content: "";
  } */

	.p-corporate__num .col-set.fourth-col .men-women__inner {
		width: 100%;
	}

	.p-corporate__num .col-set .men-women .men dd span {
		font-size: 3rem;
		padding-left: 0;
	}

	.p-corporate__num .col-set .men-women .women dd span {
		font-size: 3rem;
	}

	.p-corporate__num .col-set.fourth-col .age {
		margin-top: 0;
		border-right: none;
	}
}

@media screen and (max-width: 980px) {
	.p-corporate__num .first-col p {
		font-size: 4vw;
	}

	.p-corporate__num .first-col p span {
		font-size: 6.5vw;
	}
}

@media screen and (max-width: 767px) {
	.p-corporate__num {
		padding-top: 50px;
		padding-bottom: 0;
	}

	.p-corporate__num .ranking-box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		height: auto;
		height: 280px;
		margin-bottom: 0;
		padding: 0;
	}

	.p-corporate__num .ranking-box .tit-area {
		display: block;
		width: 100%;
		height: auto;
	}

	.p-corporate__num .ranking-box .tit-area h3 {
		margin-bottom: 25px;
		font-size: 2rem;
		text-align: center;
	}

	.p-corporate__num .ranking-box .ranking-area {
		width: 100%;
		height: auto;
	}

	.p-corporate__num .ranking-box .ranking-area::before {
		left: 0;
		width: 100%;
		height: 180%;
	}

	.p-corporate__num .ranking-box .ranking-area dl dt {
		font-size: 1.8rem;
	}

	.p-corporate__num .ranking-box .ranking-area dl dd {
		font-size: 4.6rem;
	}

	.p-corporate__num .ranking-box .ranking-area dl dd span {
		font-size: 10rem;
	}

	.p-corporate__num .col-set {
		margin-bottom: 0;
	}

	.p-corporate__num p.note02 {
		padding-bottom: 20px;
	}

	.p-corporate__num .col-set .col1-3 {
		width: 100%;
		max-height: none;
		height: 280px;
		margin-bottom: 0;
		padding-top: 35px;
		padding-bottom: 35px;
		border-right: none;
		border-bottom: 1px solid rgba(34, 24, 20, 0.2);
	}

	.p-corporate__num .col-set .col1-3.repeat {
		padding-bottom: 40px;
	}

	/* .p-corporate__num .col1-3.generation {
    border-bottom: 0px;
  } */

	.p-corporate__num .col-set .col1-3 h3 {
		font-size: 2rem;
		text-align: center;
	}

	.p-corporate__num .col-set .col1-2,
	.p-corporate__num .col-set .col2-3,
	.p-corporate__num .third-col .col1-2:not(:last-child),
	.p-corporate__num .third-col .col1-2:last-child,
	.p-corporate__num .col-set.fourth-col .col1-3 {
		width: 100%;
		max-height: none;
		height: 300px;
		margin-bottom: 0;
		padding: 35px 5%;
		border-right: none !important;
	}

	.p-corporate__num .col-set.fourth-col .col1-3.generation {
		border-bottom: 1px solid rgba(34, 24, 20, 0.2);
	}

	.p-corporate__num .third-col .col1-2:not(:last-child) .performance,
	.p-corporate__num .third-col .col1-2:last-child .performance {
		/*margin: 20px auto 0;*/
		text-align: center;
	}

	.p-corporate__num .col-set .col1-2 h3,
	.p-corporate__num .col-set .col2-3 h3 {
		width: 100%;
		font-size: 2rem;
		text-align: center;
	}

	.p-corporate__num .first-col {
		border-bottom: none;
	}

	.p-corporate__num .first-col p {
		font-size: 4.5rem;
	}

	.p-corporate__num .first-col p span {
		font-size: 5.4rem;
	}

	.p-corporate__num .first-col .company::before {
		top: -20px;
		width: 100px;
		height: 93.5px;
		bottom: 20px;
	}

	.p-corporate__num .first-col .number::before {
		width: 120px;
		height: 66px;
		bottom: 20px;
	}

	.p-corporate__num .second-col,
	.p-corporate__num .third-col {
		padding: 0;
		border-bottom: none;
	}

	.p-corporate__num .second-col .col1-2,
	.p-corporate__num .second-col .col1-2:first-child,
	.p-corporate__num .second-col .col1-2:last-child,
	.p-corporate__num .third-col .col1-2,
	.p-corporate__num .third-col .col1-2:first-child,
	.p-corporate__num .third-col .col1-2:last-child {
		padding: 35px 0;
		border-bottom: 1px solid rgba(34, 24, 20, 0.2);
	}

	.p-corporate__num .second-col .col1-2 p,
	.p-corporate__num .second-col .col1-2:first-child p,
	.p-corporate__num .second-col .col1-2:last-child p,
	.p-corporate__num .third-col .col1-2 p,
	.p-corporate__num .third-col .col1-2:first-child p,
	.p-corporate__num .third-col .col1-2:last-child p {
		width: 100%;
		font-size: 2.5rem;
		text-align: center;
	}

	.p-corporate__num .second-col .col1-2 p span,
	.p-corporate__num .second-col .col1-2:first-child p span,
	.p-corporate__num .second-col .col1-2:last-child p span,
	.p-corporate__num .third-col .col1-2 p span,
	.p-corporate__num .third-col .col1-2:first-child p span,
	.p-corporate__num .third-col .col1-2:last-child p span {
		font-size: 6rem;
	}

	.p-corporate__num .second-col .language,
	.p-corporate__num .second-col .register {
		background-size: 258px auto;
		background-position: center center;
	}

	.p-corporate__num .second-col .register {
		background-size: 216px auto;
	}

	.p-corporate__num .third-col .holiday p,
	.p-corporate__num .third-col .work-hours p {
		margin: auto 0 0 0;
		padding-left: 0;
	}

	.p-corporate__num .third-col .holiday p::before,
	.p-corporate__num .third-col .work-hours p::before {
		top: -110px;
		left: 0;
		right: 0;
		margin: auto;
	}

	.p-corporate__num .third-col .holiday p::before {
		width: 85px;
		height: 70px;
	}

	.p-corporate__num .third-col .work-hours p::before {
		width: 80px;
		height: 68px;
	}

	.p-corporate__num .employee {
		width: 100%;
		padding: 35px 0;
		border-bottom: 1px solid rgba(34, 24, 20, 0.2);
	}

	.p-corporate__num .employee::before {
		display: none;
	}

	.p-corporate__num .employee dl dt {
		top: 0;
		width: 100% !important;
		padding-left: 0;
		line-height: 1;
		text-align: center;
		font-size: 3.5rem;
	}

	.p-corporate__num .employee dl dt span {
		font-size: 7rem;
	}

	.p-corporate__num .employee dl dd {
		width: 100% !important;
		margin-bottom: 5px;
	}

	.p-corporate__num .employee dl dd ul li {
		width: 12px;
		height: 20px;
		margin: 0 5px 5px 0;
	}

	.p-corporate__num .men-women {
		width: 100%;
		padding: 0;
		border-right: none;
	}

	.p-corporate__num .men-women::before {
		display: none !important;
	}

	.p-corporate__num .men-women__inner dl dt,
	.p-corporate__num .men-women__inner dl dd {
		width: 100% !important;
		margin-bottom: 0;
	}

	.p-corporate__num .col-set .men-women__inner dl dt {
		height: 110px;
		height: 100px;
		padding-bottom: 0 !important;
	}

	.p-corporate__num .col-set .men-women__inner .men dt img {
		width: 20px;
		height: 55px;
	}

	.p-corporate__num .col-set .men-women .women dt img {
		width: 37px;
		height: 100px;
	}

	.p-corporate__num .col-set .midcareer {
		border-bottom: 0;
	}

	.p-corporate__num .age,
	.p-corporate__num .generation,
	.p-corporate__num .occupation {
		margin-top: 0;
	}

	.p-corporate__num .generation img {
		max-width: 250px;
		width: 70%;
		height: auto;
	}

	.p-corporate__num .occupation {
		border-bottom: none !important;
	}

	.p-corporate__num .occupation img {
		max-width: 250px;
		width: 75%;
		height: auto;
	}
}

/* ---------- 福利厚生 - 会社紹介 ---------- */
.p-corporate__benefit {
	padding-top: 100px;
	padding-bottom: 80px;
}

@media screen and (max-width: 767px) {
	.p-corporate__benefit {
		padding-top: 50px;
		padding-bottom: 40px;
	}
}

/* ---------- CONTACT HONYAKU CENTER ---------- */
.main .p-corporate__cv {
	position: relative;
	width: 100%;
	/* height: 650px; */
	padding: 75px 0 100px;
	overflow: hidden;
	text-align: center;
	z-index: 1;
}

.main .p-corporate__cv::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/recruit/corporate/corporate-cv-bg.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
	content: "";
	z-index: 0;
}

.main .p-corporate__cv h2 {
	margin-bottom: 15px;
	font-size: 3.6rem;
	font-weight: 500;
	text-align: center;
	border-left: 0px;
}

.main .p-corporate__cv h2::after {
	display: none;
}

.main .p-corporate__cv p {
	margin-bottom: 45px;
}

.main .p-corporate__cv .col-set {
	width: calc(100% + 15px);
}

.main .p-corporate__cv .col-set .col1-2 {
	/* 新卒採用エリア削除 */
	/* width: calc(50% - 15px); */
	width: 100%;
	margin-right: 15px;
	padding: 50px 20px 80px;
	background: rgba(255, 255, 255, 0.7);
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

.main .p-corporate__cv .col-set .col1-2 h3 {
	margin-bottom: 18px;
	font-size: 2rem;
	text-align: center;
}

.main .p-corporate__cv .col-set .col1-2 .btn-window,
.main .p-corporate__cv .col-set .col1-2 .btn-contact {
	margin-bottom: 0;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 767px) {
	.main .p-corporate__cv {
		padding: 45px 0 50px;
		/* height: 625px; */
	}

	/* 2020.06.04 新卒採用中断*/
	/* .main .p-corporate__cv {
		height: 450px;
	} */

	/* 2020.06.04 */
	.main .p-corporate__cv::before {
		background-position: 58%;
		background-attachment: scroll;
	}

	.main .p-corporate__cv h2 {
		padding: 0;
		font-size: 2.3rem;
	}

	.main .p-corporate__cv .col-set {
		width: 100%;
	}

	.main .p-corporate__cv .col-set .col1-2 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 15px;
		padding: 30px 15px 35px;
	}

	.main .p-corporate__cv .col-set .col1-2:last-child {
		margin-bottom: 0;
	}
}

/* ---------- CONTENT FOR RECRUITS ---------- */
.main .related-contents {
	padding-top: 70px;
	padding-bottom: 100px;
}

.main .related-contents h2 {
	font-size: 3.6rem;
	text-align: center;
	font-weight: 500;
	border-left: 0px;
}

.main .related-contents h2::after {
	display: none;
}

.main .related-contents h2 span {
	display: block;
	font-size: 2rem;
	color: #6a6a6a;
}

.main .related-contents .col-set {
	width: calc(100% + 15px);
}

.main .related-contents .col-set .col1-5,
.main .related-contents .col-set .col1-4,
.main .related-contents .col-set .col1-3 {
	position: relative;
	width: calc(20% - 15px);
	margin-right: 15px;
}

.main .related-contents .col-set .col1-5 h3,
.main .related-contents .col-set .col1-4 h3,
.main .related-contents .col-set .col1-3 h3 {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	margin-bottom: 0;
	padding: 22px 20px 18px;
	font-size: 1.5rem;
	background: rgba(102, 102, 102, 0.5);
	color: #fff;
	z-index: 2;
}

.main .related-contents .col-set .col1-5 .img,
.main .related-contents .col-set .col1-4 .img,
.main .related-contents .col-set .col1-3 .img {
	margin-bottom: 0;
	overflow: hidden;
}

.main .related-contents .col-set .col1-5 .img img,
.main .related-contents .col-set .col1-4 .img img,
.main .related-contents .col-set .col1-3 .img img {
	-webkit-transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
}

.main .related-contents .col-set .col1-5 a,
.main .related-contents .col-set .col1-4 a,
.main .related-contents .col-set .col1-3 a {
	display: block;
	position: relative;
}

.main .related-contents .col-set .col1-5 a.current::before,
.main .related-contents .col-set .col1-4 a.current::before,
.main .related-contents .col-set .col1-3 a.current::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	content: "";
	z-index: 1;
}

.main .related-contents .col-set .col1-5 a:hover .img img,
.main .related-contents .col-set .col1-4 a:hover .img img,
.main .related-contents .col-set .col1-3 a:hover .img img {
	transform: scale(1.1);
}

.main .related-contents .col-set .col1-4 {
	width: calc(25% - 15px);
}

.main .related-contents .col-set .col1-3 {
	width: calc(33.3333% - 15px);
}

.main .related-contents+.row {
	margin-top: 100px;
}

.main .related-contents.p-member__list {
	background: #f5f5f5;
}

/*.main .related-contents.p-member__list .col1-5 {
  position: relative;
  margin-right: 94px;
}*/

.main .related-contents.p-member__list .col1-5:last-child {
	margin-right: 0;
}

.main .related-contents.p-member__list .col1-5 ul {
	position: absolute;
	top: 0;
	left: 0;
}

.main .related-contents.p-member__list .col1-5 .txt-area h3 span {
	display: block;
}

.main .related-contents .slider {
	margin-bottom: 0;
}

.main .related-contents .slick-dots {
	padding-right: 18px;
}

@media screen and (max-width: 1210px) {
	.main .related-contents .slider {
		margin: 0 20px;
	}
}

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

	.main .related-contents .col-set .col1-5 h3,
	.main .related-contents .col-set .col1-4 h3,
	.main .related-contents .col-set .col1-3 h3 {
		padding: 16px 15px 14px;
		font-size: 1.5rem;
	}
}

@media screen and (max-width: 980px) {
	.main .related-contents.p-member__list .item-label li {
		padding: 5px 15px;
		/*font-size: 1.4rem;*/
		font-size: 1.2rem;
		letter-spacing: -1px;
	}
}

@media screen and (max-width: 767px) {
	.main .related-contents {
		padding: 50px 0;
	}

	.main .related-contents h2 {
		padding: 0;
		font-size: 2.3rem;
		line-height: 1.35;
	}

	.main .related-contents h2 span {
		font-size: 1.6rem;
		line-height: 1.65;
	}

	.main .related-contents .col-set {
		width: 100%;
		width: calc(100% + 15px);
	}

	.main .related-contents .col-set .col1-5 {
		width: 50%;
		width: calc(50% - 15px);
		margin-right: 0;
		margin-right: 15px;
		margin-bottom: 15px;
	}

	.main .related-contents .col-set .col1-5 h3 {
		padding: 15px 15px 12px;
		font-size: 1.4rem;
	}

	.main .related-contents .col-set .col1-4 {
		width: calc(50% - 15px);
		margin-bottom: 15px;
	}

	.main .related-contents .col-set .col1-4 h3 {
		padding: 15px 15px 12px;
		font-size: 1.4rem;
	}

	.main .related-contents .col-set .col1-3 {
		width: calc(100% - 15px);
		margin-bottom: 15px;
	}

	.main .related-contents .col-set .col1-3 h3 {
		padding: 15px 15px 12px;
		font-size: 1.4rem;
	}

	.main .related-contents+.row {
		margin-top: 50px;
	}

	.main .related-contents.p-member__list .col-set .col1-5 {
		margin-right: 10px;
		font-size: 1rem;
	}

	.main .related-contents.p-member__list .col-set .col1-5 h3 {
		padding: 13px 15px 11px;
		font-size: 1rem;
	}

	.main .related-contents.p-member__list .col-set .col1-5 .item-label li {
		/*padding: 3px 15px;*/
		padding: 3px 10px;
	}

	.main .related-contents .slider {
		margin: 0 20px;
	}
}

/* 社員紹介
----------------------- */
@media screen and (max-width: 767px) {
	.main .p-member .col-set .img-area {
		margin-bottom: 20px;
		order: 0;
	}

	.main .p-member .col-set .txt-area {
		order: 1;
	}

	.main .p-member .col-set .txt-area p:last-child {
		margin-bottom: 0;
	}
}

/* 職種紹介
----------------------- */
/* ---------- 社員の一日 ---------- */
.main .time-schedule-img {
	width: 100%;
	margin-bottom: 30px;
}

.main .time-schedule-img .col1-2 {
	width: 50%;
	margin-right: 0;
}

.main .time-schedule h3 {
	display: block;
	width: 100%;
	margin-bottom: 0;
	padding: 17px 20px 16px;
	font-size: 1.8rem;
	background: #221814;
	color: #fff;
	text-align: center;
}

.main .time-schedule__inner {
	width: 100%;
	padding: 20px 30px 30px;
	background: #f5f5f5;
	overflow: hidden;
}

.main .time-schedule__inner .time-schedule__box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: flex-end;
	-ms-flex-align: flex-end;
	-webkit-align-items: flex-end;
	align-items: flex-end;
	width: 100%;
	overflow: hidden;
}

.main .time-schedule__inner dl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	position: relative;
	width: 50%;
	height: inherit;
	margin: 0;
	padding-top: 8px;
	overflow: visible;
}

.main .time-schedule__inner dl::after {
	display: block;
	position: absolute;
	top: -100%;
	left: 20px;
	width: 1px;
	height: 300%;
	background: #221814;
	content: "";
}

.main .time-schedule__inner dl dt {
	position: relative;
	width: 135px;
	padding: 0 0 0 60px;
	overflow: visible;
	z-index: 1;
}

.main .time-schedule__inner dl dt span {
	display: block;
	position: absolute;
	top: -8px;
	left: 0;
	width: 40px;
	height: 40px;
}

.main .time-schedule__inner dl dd {
	width: calc(100% - 135px);
	margin-bottom: 20px;
	padding: 3px 10px 0 0;
}

.main .time-schedule__inner dl dd h4 {
	margin-bottom: 0;
}

.main .time-schedule__inner dl dd p {
	margin-bottom: 0;
}

.main .time-schedule__inner dl dd:last-of-type {
	margin-bottom: 5px;
}

.main .time-schedule__inner dl:nth-of-type(2) {
	padding-left: 15px;
}

.main .time-schedule__inner dl:nth-of-type(2)::after {
	left: 35px;
}

.main .time-schedule__inner dl:nth-of-type(2) dt:last-of-type::after {
	display: block;
	position: absolute;
	top: 0;
	left: 20px;
	width: 1px;
	height: 100%;
	background: #f5f5f5;
	content: "";
	z-index: -1;
}

@media screen and (max-width: 767px) {
	.main .time-schedule-img {
		margin-bottom: 15px;
	}

	.main .time-schedule-img .col1-2 {
		width: 100%;
		margin-bottom: 0;
	}

	.main .time-schedule h3 {
		font-size: 1.6rem;
	}

	.main .time-schedule__inner {
		padding: 15px 15px 20px;
	}

	.main .time-schedule__inner dl {
		width: 100%;
		padding-top: 2px;
	}

	.main .time-schedule__inner dl::after {
		left: 12px;
	}

	.main .time-schedule__inner dl dt {
		width: 100% !important;
		padding-left: 40px;
	}

	.main .time-schedule__inner dl dt span {
		top: -2px;
		width: 25px;
		height: 25px;
	}

	.main .time-schedule__inner dl dd {
		width: 100% !important;
		padding-left: 40px;
	}

	.main .time-schedule__inner dl:nth-of-type(2) {
		padding-left: 0;
		padding-top: 10px;
	}

	.main .time-schedule__inner dl:nth-of-type(2)::after {
		top: -10px;
		left: 12px;
		height: calc(100% + 10px);
	}

	.main .time-schedule__inner dl:nth-of-type(2) dt:last-of-type::after {
		display: none;
	}
}

/* FAQ
----------------------- */
.main .faq-list {
	padding-bottom: 100px;
}

.main .faq-list dl:not(.border-set) {
	margin-bottom: 20px;
}

.main .faq-list dl:not(.border-set) dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	width: 100%;
	margin: 0 0 20px;
	margin: 0;
	padding: 34px 110px 34px 115px;
	background: #f5f5f5;
	font-size: 2rem;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	cursor: pointer;
}

.main .faq-list dl:not(.border-set) dt span:not(.btn-plus) {
	position: absolute;
	top: 27px;
	left: 30px;
	font-family: "Open Sans", sans-serif;
	font-size: 6.3rem;
	font-weight: 700;
	color: rgba(34, 24, 20, 0.2);
}

.main .faq-list dl:not(.border-set) dt span.btn-plus {
	position: absolute;
	top: 0;
	right: 30px;
	bottom: 0;
	width: 55px;
	height: 55px;
	margin: auto;
	background: #777;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.main .faq-list dl:not(.border-set) dt span.btn-plus::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 18px;
	height: 2px;
	margin: auto;
	background: #fff;
	content: "";
}

.main .faq-list dl:not(.border-set) dt span.btn-plus::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 2px;
	height: 18px;
	margin: auto;
	background: #fff;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .faq-list dl:not(.border-set) dt:hover,
.main .faq-list dl:not(.border-set) dt.active {
	background: #fff;
}

.main .faq-list dl:not(.border-set) dt.active span.btn-plus {
	background: #e4e4e4;
}

.main .faq-list dl:not(.border-set) dt.active span.btn-plus::before {
	background: #777;
}

.main .faq-list dl:not(.border-set) dt.active span.btn-plus::after {
	background: #777;
	transform: rotate(-90deg);
}

.main .faq-list dl:not(.border-set) dd {
	position: relative;
	display: none;
	width: 100%;
	margin: 0;
	padding: 10px 100px 40px 115px;
	border-bottom: 1px solid #221814;
}

.main .faq-list dl:not(.border-set) dd span {
	position: absolute;
	top: 10px;
	left: 35px;
	font-family: "Open Sans", sans-serif;
	font-size: 6.3rem;
	font-weight: 700;
	color: rgba(34, 24, 20, 0.5);
}

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

.main .tab-element .faq-list {
	padding-bottom: 0;
}

.main .tab-element .faq-list dl:not(.border-set) {
	margin-bottom: 0;
}

.main .tab-element .faq-list dl:not(.border-set) dt {
	padding: 34px 110px 34px 115px;
}

.main .tab-element .faq-list dl:not(.border-set) dt span:not(.btn-plus) {
	top: 27px;
}

.main .tab-element .faq-list dl:not(.border-set) dd {
	padding: 10px 100px 30px 115px;
	background: #fff;
}

@media screen and (max-width: 767px) {
	.main .faq-list {
		padding-bottom: 50px;
	}

	.main .faq-list dl:not(.border-set) {
		margin-bottom: 15px;
	}

	.main .faq-list dl:not(.border-set) dt {
		display: block;
		padding: 16px 55px 16px 50px !important;
		font-size: 1.6rem;
	}

	.main .faq-list dl:not(.border-set) dt span:not(.btn-plus) {
		top: 13px;
		left: 15px;
		font-size: 3rem;
		margin: auto;
	}

	.main .faq-list dl:not(.border-set) dt span.btn-plus {
		top: 0;
		right: 15px;
		bottom: 0;
		width: 25px;
		height: 25px;
		margin: auto;
	}

	.main .faq-list dl:not(.border-set) dt span.btn-plus::before {
		width: 9px;
		height: 1px;
	}

	.main .faq-list dl:not(.border-set) dt span.btn-plus::after {
		width: 1px;
		height: 9px;
	}

	.main .faq-list dl:not(.border-set) dt:hover {
		background: #f5f5f5;
	}

	.main .faq-list dl:not(.border-set) dt.active {
		background: #fff;
	}

	.main .faq-list dl:not(.border-set) dd {
		margin-bottom: 15px;
		margin-bottom: 0;
		padding: 5px 55px 20px 50px;
	}

	.main .faq-list dl:not(.border-set) dd span {
		top: 5px;
		left: 18px;
		font-size: 3rem;
	}

	.main .tab-element .faq-list dl:not(.border-set) dt span:not(.btn-plus) {
		top: 13px;
	}

	.main .tab-element .faq-list dl:not(.border-set) dd {
		padding: 5px 55px 20px 50px;
	}
}

/* 登録者募集
----------------------- */
.main .regist-job-list {
	padding-bottom: 50px;
	background: #f5f5f5;
}

.main .regist-job-list>h3 {
	margin-bottom: 0;
	padding: 25px;
	background: #777;
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
}

.main .regist-job-panel-a,
.main .regist-job-panel-b {
	position: relative;
	width: 100%;
	margin-bottom: 50px;
}

.main .regist-job-panel-a .img,
.main .regist-job-panel-b .img {
	position: relative;
	width: calc(50% + 16.6666%);
	margin: 0;
}

.main .regist-job-panel-a .txt-area,
.main .regist-job-panel-b .txt-area {
	position: absolute;
	right: 0;
	bottom: -30px;
	width: 50%;
	padding: 25px 30px 30px;
	background: #fff;
	z-index: 1;
}

.main .regist-job-panel-a .txt-area .btn,
.main .regist-job-panel-b .txt-area .btn {
	margin: 0;
}

.main .regist-job-panel-a .txt-area .btn a,
.main .regist-job-panel-b .txt-area .btn a {
	padding: 13px 35px 12px 20px;
}

.main .regist-job-panel-b .img {
	margin-left: 33.3333%;
}

.main .regist-job-panel-b .txt-area {
	right: auto;
	left: 0;
}

.main .regist-job-panel-b:last-child {
	margin-bottom: 0;
}

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

	.main .regist-job-panel-a,
	.main .regist-job-panel-b {
		margin-bottom: 70px;
	}

	.main .regist-job-panel-a .txt-area,
	.main .regist-job-panel-b .txt-area {
		bottom: -50px;
	}
}

@media screen and (max-width: 767px) {
	.main .regist-job-list {
		padding-bottom: 40px;
	}

	.main .regist-job-list>h3 {
		padding: 15px;
	}

	.main .regist-job-panel-a,
	.main .regist-job-panel-b {
		margin-bottom: 20px;
	}

	.main .regist-job-panel-a .img,
	.main .regist-job-panel-b .img {
		width: 90%;
		margin: 0;
		margin-bottom: 0;
	}

	.main .regist-job-panel-a .txt-area,
	.main .regist-job-panel-b .txt-area {
		position: relative;
		top: -20px;
		left: 10%;
		width: 90%;
		margin-bottom: -20px;
		padding: 15px 15px 15px;
	}

	.main .regist-job-panel-a .txt-area .btn,
	.main .regist-job-panel-b .txt-area .btn {
		width: 66.6666%;
	}

	.main .regist-job-panel-a .txt-area .btn a,
	.main .regist-job-panel-b .txt-area .btn a {
		margin: 0;
		padding: 10px 35px 10px 15px;
	}

	.main .regist-job-panel-b .img {
		margin-left: 10%;
	}

	.main .regist-job-panel-b .txt-area {
		left: 0;
	}
}

/* ---------- お役立ち情報 ---------- */
.main .regist-job-info .panel-type-g {
	margin-bottom: 0;
	padding-bottom: 0;
}

.main .regist-job-info .panel-type-g .col1-2 {
	background: transparent;
}

.main .regist-job-info .panel-type-g .col1-2 .txt-area {
	padding: 0;
}

.main .regist-job-info .panel-type-g .col1-2 .btn-more {
	margin-top: auto;
}

.main .regist-job-info .panel-type-g .col1-2 .btn-more a {
	background: transparent;
	-webkit-backface-visibility: hidden;
	/* 追加 */
	backface-visibility: hidden;
	/* 追加 */
}

.main .regist-job-info .panel-type-g .col1-2 .btn-more a::after {
	width: 18px;
	height: 13px;
	border: none;
	background: url(../images/common/icon-window.svg) no-repeat center;
	background-size: contain;
	transform: rotate(0);
	-webkit-backface-visibility: hidden;
	/* 追加 */
	backface-visibility: hidden;
	/* 追加 */
}

.main .regist-job-info .panel-type-g .col1-2 .btn-more a:hover::after {
	width: 18px;
	height: 13px;
	border: none;
	background: url(../images/common/icon-window-white.svg) no-repeat center;
	background-size: contain;
}

@media screen and (max-width: 767px) {
	.main .regist-job-info .panel-type-g .col1-2 {
		margin-bottom: 20px;
	}

	.main .regist-job-info .panel-type-g .col1-2 .btn-more {
		max-width: none;
		width: 100%;
	}

	.main .regist-job-info .panel-type-g .col1-2 .btn-more a::after,
	.main .regist-job-info .panel-type-g .col1-2 .btn-more a:hover::after {
		width: 16px;
		height: 11px;
	}

	.main .regist-job-info .panel-type-g .col1-2:last-child {
		margin-bottom: 0;
	}
}

/* ---------- メリット ＆ ﾃﾞメリット / 申し揉みエリア ---------- */
.main .dl-panel dl {
	display: block;
	position: relative;
	margin-top: 20px;
	margin-bottom: 0;
	box-sizing: border-box;
	z-index: 1;
}

.main .dl-panel dl::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 1px solid #d3d1d0;
	content: "";
	z-index: -1;
}

.main .dl-panel dl dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
	height: 70px;
	margin: 0;
	padding: 0;
	background: #777;
	color: #fff;
	box-sizing: border-box;
	border: 1px solid #777;
}

.main .dl-panel dl dd {
	width: 100%;
	margin: 0;
	padding: 25px 30px !important;
}

.main .dl-panel dl dd .btn-apply {
	max-width: none;
	margin-bottom: 0;
}

.main .dl-panel dl dd .btn-apply a span {
	padding-left: 35px;
}

.main .dl-panel dl dd .btn-apply a span::before {
	width: 26px;
	height: 14px;
}

.main .dl-panel dl dd .btn-download {
	width: auto;
}

.main .dl-panel dl dd .btn-download+.btn-apply {
	margin-top: 15px;
}

.main .dl-panel dl dd .btn-apply+.btn-apply {
	margin-top: 15px;
}

.main .dl-panel dl:first-of-type,
.main .dl-panel dl:nth-of-type(2) {
	margin-top: 0;
}

.main .dl-panel dl+.note.m {
	margin-top: 5px;
	margin-bottom: 0;
}

.main .dl-panel dl+.note.m+.note.m {
	margin-top: -10px;
}

@media screen and (max-width: 767px) {
	.main .dl-panel .col1-2 {
		margin-top: 0;
	}

	.main .dl-panel .col1-2 dt {
		height: 45px;
	}

	.main .dl-panel .col1-2 dd {
		padding: 20px 15px 25px !important;
	}

	.main .dl-panel .col1-2 dd .btn-apply a {
		height: 55px;
	}

	.main .dl-panel .col1-2 dd .btn-apply a span {
		padding-left: 25px;
	}

	.main .dl-panel .col1-2 dd .btn-apply a span::before {
		top: 6px;
		width: 18px;
		height: 12px;
	}
}

/* ---------- 登録 ステップ ---------- */
.main .step-list {
	margin-bottom: 60px;
	padding: 40px 50px;
	background: #f5f5f5;
}

.main .step-list ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: calc(100% + 53px);
	margin-bottom: 0;
}

.main .step-list ul li {
	width: calc(16.6666% - 53px);
	margin: 0 53px 0 0;
	padding: 0;
}

.main .step-list ul li a {
	display: block;
	text-decoration: none;
	overflow: visible;
}

.main .step-list ul li a dl {
	position: relative;
	margin-bottom: 0;
	padding-bottom: 30px;
}

.main .step-list ul li a dl dt {
	width: 100%;
	margin-bottom: 20px;
	padding: 2px !important;
	background: #777;
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	text-transform: uppercase;
}

.main .step-list ul li a dl dd {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
	/*padding-top: 50px;*/
	padding-top: 78px;
	font-weight: 700;
	text-align: center;
}

.main .step-list ul li:nth-child(3) a dl dd,
.main .step-list ul li:nth-child(4) a dl dd {
		padding-top: 50px;
}

.main .step-list ul li a dl dd::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 24px;
	height: 36px;
	margin: auto;
	background: url(../images/common/step-img01.svg) no-repeat center;
	background-size: contain;
	content: "";
}

.main .step-list ul li a dl::before {
	position: absolute;
	right: 0;
	left: 0;
	bottom: 5px;
	width: 16px;
	height: 12px;
	margin: auto;
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: contain;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .step-list ul li a:hover dl::before {
	bottom: 0;
}

.main .step-list ul li:not(:last-child)::before {
	display: block;
	position: absolute;
	top: calc(50% - 44px);
	top: 50px;
	right: -40px;
	left: auto;
	width: 23px;
	height: 88px;
	background: url(../images/common/step-arrow.svg) no-repeat center;
	background-size: contain;
}

.main .step-list ul li:nth-child(2) a dl dd::before {
	width: 33px;
	height: 34px;
	background: url(../images/common/step-img02.svg) no-repeat center;
	background-size: contain;
}

.main .step-list ul li:nth-child(3) a dl dd::before {
	top: -2px;
	width: 28px;
	height: 37px;
	background: url(../images/common/step-img03.svg) no-repeat center;
	background-size: contain;
}

.main .step-list ul li:nth-child(4) a dl dd::before {
	top: -2px;
	width: 44px;
	height: 39px;
	background: url(../images/common/step-img04.svg) no-repeat center;
	background-size: contain;
}

.main .step-list ul li:last-child a dl dd::before {
	top: -1px;
	width: 38px;
	height: 36px;
	background: url(../images/common/step-img05.svg) no-repeat center;
	background-size: contain;
}

@media screen and (max-width: 1080px) {
	.main .step-list {
		padding: 40px 2.5vw;
	}

	.main .step-list ul {
		width: calc(100% + 33px);
	}

	.main .step-list ul li {
		width: calc(16.6666% - 33px);
		margin: 0 33px 0 0;
	}

	.main .step-list ul li a dl dd {
		font-size: 1.45rem;
		font-size: 1.35vw;
	}

	.main .step-list ul li:not(:last-child)::before {
		right: -35px;
	}
}

/* ---------- ステップコンテンツ ---------- */
.main .step-contents>dl {
	margin-bottom: 55px;
}

.main .step-contents>dl>dt {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	width: 100%;
	height: 80px;
	margin: 0;
	padding: 0 0 0 110px !important;
	background: #f5f5f5;
	font-size: 2.4rem;
}

.main .step-contents>dl>dt span:not(.step-num) {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-direction: column;
	flex-direction: column;
	position: absolute;
	top: 0;
	left: 0;
	width: 80px;
	height: 80px;
	padding-top: 40px;
	background: #777;
	color: #fff;
	font-size: 1.6rem;
	font-weight: 600;
	text-transform: uppercase;
	order: 1;
}

.main .step-contents>dl>dt span.step-num {
	display: block;
	position: absolute;
	top: 20px;
	right: 0;
	left: 0;
	margin: auto;
	color: #fff;
	font-weight: 600;
	font-size: 3.6rem;
	text-align: center;
	order: 0;
}

.main .step-contents>dl>dd {
	width: 100%;
	margin: 0;
	padding: 20px 0;
	margin-left: 110px;
}

.main .step-contents>dl>dd>p+*:not(.note) {
	margin-top: 40px;
}

.main .step-contents>dl>dd .dl-panel {
	margin-left: -55px;
}

.main .step-contents>dl>dd .dl-panel dl dd {
	padding: 25px 28px 30px !important;
}

.main .step-contents>dl:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	.main .step-contents>dl {
		margin-bottom: 35px;
	}

	.main .step-contents>dl>dt {
		height: 50px;
		padding-left: 65px !important;
		font-size: 1.6rem;
	}

	.main .step-contents>dl>dt span:not(.step-num) {
		width: 50px;
		height: 50px;
		padding-top: 25px;
		font-size: 1rem;
	}

	.main .step-contents>dl>dt span.step-num {
		top: 8px;
		font-size: 2rem;
	}

	.main .step-contents>dl>dd {
		margin-left: 0;
	}

	.main .step-contents>dl>dd p+*:not(.note) {
		margin-top: 20px;
	}

	.main .step-contents>dl>dd .dl-panel {
		width: 100%;
		margin: 0 auto;
	}

	.main .step-contents>dl>dd .dl-panel dl dt {
		height: 45px;
	}

	.main .step-contents>dl>dd .dl-panel dl dd {
		padding: 20px 15px 25px !important;
	}

	.main .step-contents>dl>dd .dl-panel dl dd .btn-apply a {
		height: 55px;
	}

	.main .step-contents>dl>dd .dl-panel dl dd .btn-apply a span {
		padding-left: 25px;
	}

	.main .step-contents>dl>dd .dl-panel dl dd .btn-apply a span::before {
		top: 6px;
		width: 18px;
		height: 12px;
	}
}

/* ---------- 申し込みに関する注意点 ---------- */
.main .regist-note,
.main .regist-contact {
	padding: 60px 20px 50px;
	background: #f5f5f5;
}

.main .regist-note h2.heading3,
.main .regist-contact h2.heading3 {
	margin-bottom: 15px;
}

.main .regist-note ul,
.main .regist-contact ul {
	display: table;
	margin: 0 auto;
}

.main .regist-note h3.under-line {
	display: table;
	margin: 0 auto 25px;
	padding-bottom: 10px;
	border-bottom: 1px solid #221814;
}

.main .regist-contact .txt-area {
	display: table;
	margin: 0 auto;
}

.main .regist-contact .txt-area p {
	margin-bottom: 10px;
}

.main .regist-contact .txt-area p.note {
	color: #eb9300;
	font-size: 1.4rem;
}

.main .regist-contact .txt-area .btn-apply {
	max-width: 510px;
	margin-top: 30px;
}

.main .regist-contact .txt-area .btn-apply a span {
	padding-left: 35px;
}

.main .regist-contact .txt-area .btn-apply a span::before {
	top: 6px;
	width: 26px;
	height: 17px;
}

.main .regist-contact .txt-area .btn-apply+.note {
	margin-top: 13px;
	margin-bottom: 0;
}

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

	.main .regist-note,
	.main .regist-contact {
		padding: 40px 15px 30px;
	}

	.main .regist-note .txt-area p.note,
	.main .regist-contact .txt-area p.note {
		font-size: 1.2rem;
	}

	.main .regist-note .txt-area .btn-apply a span,
	.main .regist-contact .txt-area .btn-apply a span {
		padding-left: 30px;
	}

	.main .regist-note .txt-area .btn-apply a span::before,
	.main .regist-contact .txt-area .btn-apply a span::before {
		width: 20px;
		height: 13px;
	}
}

@media screen and (max-width: 320px) {
	.main .regist-note h3.under-line {
		font-size: 1.6rem;
	}
}

/* ------------------------------
  企業情報
-------------------------------- */
.main .top-corporate-section01 {
	padding-bottom: 100px;
}

.main .top-corporate-section01 h2:not([class*="heading"]) {
	margin-bottom: 25px;
	padding: 0;
	font-family: "Source Han Serif", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "HiraMinProN-W3", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
	font-size: 3.4rem;
	text-align: center;
	border-left: 0px;
}

.main .top-corporate-section01 h2:not([class*="heading"])::after {
	display: none;
}

/* トップメッセージ */
.main .top-corporate-section02 {
	padding: 128px 0 127px 0;
	background: url(../images/corporate/top-msg-bg.jpg) no-repeat center bottom, linear-gradient(90deg, #f0f0f0 0%, #eeeeec 100%);
}

.main .top-corporate-section02 .btn {
	margin: 0;
}

.main .top-corporate-section02 p+.btn {
	padding-top: 15px;
}

/* 当社の強み　*/
.main .top-corporate-section03 {
	padding: 130px 0 120px;
	background: url(../images/corporate/top-strength.jpg) no-repeat center;
	background-size: cover;
	color: #fff;
}

.main .top-corporate-section03 h2:not([class*="heading"])::after {
	background: #fff;
}

.main .top-corporate-section03 .col-set {
	width: 100%;
}

.main .top-corporate-section03 .col-set .col1-2 {
	width: 50%;
	margin-right: 0;
}

.main .top-corporate-section03 .col-set .col1-2 p {
	line-height: 1.75;
}

.main .top-corporate-section03 .col-set .col1-2 .btn {
	margin: 0;
}

.main .top-corporate-section03 .col-set .col1-2 .btn a {
	border: 1px solid #fff;
	background: rgba(255, 255, 255, 0.15);
	color: #fff;
}

.main .top-corporate-section03 .col-set .col1-2 .btn a::after {
	width: 10px;
	height: 7px;
	background: url(../images/common/arrow-white.svg) no-repeat center;
	transform: rotate(-90deg);
}

.main .top-corporate-section03 .col-set .col1-2 .btn a:hover {
	background: rgba(255, 255, 255, 0.005);
}

.main .top-corporate-section03 .col-set .img-area {
	padding-top: 70px;
}

.main .top-corporate-section03 .col-set .img-area img {
	display: block;
	/* max-width: 180px; */
	width: 90%;
	margin: auto;
}

.main .top-corporate-section03 figcaption.caption-center {
	font-size: 4rem;
	text-align: center;
}

@media screen and (max-width: 1080px) {
	.main .top-corporate-section03 .col-set .col1-2 {
		width: 100%;
	}

	.main .top-corporate-section03 .col-set .img-area .figure[class] {
		flex-basis: 250px;
		max-width: 250px;
	}
}

@media screen and (max-width: 767px) {
	.main .top-corporate-section03 .col-set .img-area[class] {
		display: block;
		margin-top: 0;
	}

	.main .top-corporate-section03 .col-set .img-area .figure[class] {
		flex-basis: 100%;
		max-width: 100%;
	}

	.main .top-corporate-section03 .col-set .img-area .figure img {
		max-width: 180px;
	}
}

.main .top-corporate-section03 .col-set .img-area {
	display: flex;
	justify-content: space-between;
}

.main .top-corporate-section03 .col-set .img-area .figure {
	flex-shrink: 0;
	flex-grow: 0;
	flex-basis: 150px;
	max-width: 150px;
}

/* 会社情報 */
.main .top-corporate-section04 {
	padding: 100px 0;
}

.main .top-corporate-section04 .col-set {
	width: calc(100% + 15px);
}

.main .top-corporate-section04 .col-set .col1-4 {
	position: relative;
	width: calc(25% - 15px);
	margin-right: 15px;
	margin-bottom: 15px;
	overflow: hidden;
}

.main .top-corporate-section04 .col-set .col1-4 .img {
	margin-bottom: 0;
}

.main .top-corporate-section04 .col-set .col1-4 .img img {
	-webkit-transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
	transition: all 0.2s cubic-bezier(0.37, 0.15, 0.34, 0.95);
}

.main .top-corporate-section04 .col-set .col1-4 h3 {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	margin: 0;
	padding: 17px 15px 15px;
	background: rgba(102, 102, 102, 0.5);
	color: #fff;
	font-size: 2rem;
	letter-spacing: 0;
}

.main .top-corporate-section04 .col-set .col1-4 a:hover img {
	transform: scale(1.1);
}

.main .top-corporate-section04 .col-set .col1-4:nth-child(n + 5) {
	margin-bottom: 0;
}

@media screen and (max-width: 1220px) {
	.main .top-corporate-section04 .col-set .col1-4 h3 {
		font-size: 1.55vw;
	}
}

@media screen and (max-width: 980px) {
	.main .top-corporate-section04 .col-set .col1-4 h3 {
		padding-left: 10px;
		font-size: 1.5vw;
	}
}

@media screen and (max-width: 767px) {
	.main .top-corporate-section01 {
		padding-bottom: 75px;
	}

	.main .top-corporate-section01 h2:not([class*="heading"]) {
		font-size: 4vw;
	}

	.main .top-corporate-section01 .btn {
		margin-bottom: 0;
	}

	.main .top-corporate-section02 {
		padding: 65px 0;
		background-position: 60%;
		background-size: cover;
	}

	.main .top-corporate-section02 p {
		width: 60%;
	}

	.main .top-corporate-section02 p br {
		display: none;
	}

	.main .top-corporate-section02 p+.btn {
		padding-top: 0;
	}

	.main .top-corporate-section03 {
		padding: 80px 0 75px;
	}

	.main .top-corporate-section03 .col-set .col1-2 {
		width: 100%;
	}

	.main .top-corporate-section03 .col-set .col1-2 p br {
		display: none;
	}

	.main .top-corporate-section03 .col-set .img-area {
		margin: 30px auto 0;
		padding: 0;
		order: 1;
	}

	.main .top-corporate-section04 {
		padding: 80px 0 75px;
	}

	.main .top-corporate-section04 .col-set {
		width: calc(100% + 15px);
	}

	.main .top-corporate-section04 .col-set .col1-4 {
		width: calc(50% - 15px);
	}

	.main .top-corporate-section04 .col-set .col1-4 h3 {
		padding: 13px 15px 12px;
		font-size: 1.6rem;
	}

	.main .top-corporate-section04 .col-set .col1-4:nth-child(n + 5) {
		margin-bottom: 15px;
	}

	.main .top-corporate-section04 .col-set .col1-4:nth-last-of-type(2),
	.main .top-corporate-section04 .col-set .col1-4:last-child {
		margin-bottom: 0;
	}
}

@media screen and (max-width: 530px) {
	.main .top-corporate-section01 h2:not([class*="heading"]) {
		font-size: 5vw;
	}
}

@media screen and (max-width: 320px) {
	.main .top-corporate-section01 h2:not([class*="heading"]) {
		font-size: 5.4vw;
	}
}

/* 当社の強み
----------------------- */
.main .corporate-strength-section {
	position: relative;
	width: 100%;
	height: auto;
	overflow: hidden;
}

.main .corporate-strength-section h2:not([class*="heading"]) {
	padding-left: 0;
	font-size: 3.6rem;
	text-align: center;
	border-left: 0px;
}

.main .corporate-strength-section h2:not([class*="heading"])::after {
	display: none;
}

.main .corporate-strength-section .txt-box {
	margin-bottom: 120px;
}

.main .corporate-strength-section .txt-box p {
	text-align: center;
}

.main .corporate-strength-section .strength01,
.main .corporate-strength-section .strength02,
.main .corporate-strength-section .strength03,
.main .corporate-strength-section .strength04,
.main .corporate-strength-section .strength05 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	position: relative;
	height: 690px;
}

.main .corporate-strength-section .strength01 .row,
.main .corporate-strength-section .strength02 .row,
.main .corporate-strength-section .strength03 .row,
.main .corporate-strength-section .strength04 .row,
.main .corporate-strength-section .strength05 .row {
	width: 100%;
}

.main .corporate-strength-section .strength01 .txt-area,
.main .corporate-strength-section .strength02 .txt-area,
.main .corporate-strength-section .strength03 .txt-area,
.main .corporate-strength-section .strength04 .txt-area,
.main .corporate-strength-section .strength05 .txt-area {
	width: 50%;
}

.main .corporate-strength-section .strength01 .txt-area p,
.main .corporate-strength-section .strength02 .txt-area p,
.main .corporate-strength-section .strength03 .txt-area p,
.main .corporate-strength-section .strength04 .txt-area p,
.main .corporate-strength-section .strength05 .txt-area p {
	margin-bottom: 0;
}

.main .corporate-strength-section .strength01 {
	color: #fff;
	background: url(../images/corporate/strength/strength-img01.jpg) no-repeat center;
	background-size: cover;
}

.main .corporate-strength-section .strength01 .txt-area {
	position: relative;
	margin-left: 50%;
	padding-left: 40px;
}

.main .corporate-strength-section .strength01 .txt-area h3 img {
	width: 100%;
	max-width: 541px;
}

.main .corporate-strength-section .strength02 {
	background: url(../images/corporate/strength/strength-img02.jpg) no-repeat center;
	background-size: cover;
}

.main .corporate-strength-section .strength02 .txt-area {
	position: relative;
	padding-right: 50px;
}

.main .corporate-strength-section .strength02 .txt-area h3 img {
	max-width: 533px;
	width: 100%;
}

.main .corporate-strength-section .strength03 {
	background: url(../images/corporate/strength/strength-img03.jpg) no-repeat center;
	background-size: cover;
}

.main .corporate-strength-section .strength03 .txt-area {
	position: relative;
	margin-left: 50%;
	padding-left: 40px;
	color: #fff;
}

.main .corporate-strength-section .strength03 .txt-area h3 img {
	max-width: 389px;
	width: 100%;
}

.main .corporate-strength-section .strength04 {
	background: url(../images/corporate/strength/strength-img04.jpg) no-repeat center;
	background-size: cover;
}

.main .corporate-strength-section .strength04 .txt-area {
	position: relative;
	padding-right: 50px;
}

.main .corporate-strength-section .strength04 .txt-area h3 img {
	max-width: 441px;
	width: 100%;
}

.main .corporate-strength-section .strength05 {
	background: url(../images/corporate/strength/strength-img05.jpg) no-repeat center;
	background-size: cover;
}

.main .corporate-strength-section .strength05 .txt-area {
	position: relative;
	margin-left: 50%;
	padding-left: 40px;
	color: #fff;
}

.main .corporate-strength-section .strength05 .txt-area h3 img {
	max-width: 298px;
	width: 100%;
}

.main .corporate-strength-section .scroll-line-content {
	display: block;
	position: relative;
	width: 100%;
	height: auto;
}

.main .corporate-strength-section .scroll-line-content::before {
	display: block;
	position: absolute;
	top: -76px;
	left: 0;
	right: 0;
	width: 1px;
	height: 76px;
	margin: 0 auto;
	background: #221814;
	opacity: 1;
	content: "";
}

.main .corporate-strength-section .scroll-line {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	margin: auto;
	width: 1px;
	height: 76px;
	background: #221814;
	opacity: 1;
	z-index: 9;
}

/* cvエリア */
.main .p-corporate__cv.p-strength {
	height: 450px;
	padding: 95px 0;
}

.main .p-corporate__cv.p-strength::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/corporate/strength/cv-bg.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
	content: "";
	z-index: 0;
}

.main .p-corporate__cv.p-strength .col-set {
	width: calc(100% + 30px);
}

.main .p-corporate__cv.p-strength .col-set .col1-2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	width: calc(50% - 30px);
	margin-right: 30px;
	padding: 45px 20px 50px;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 p {
	margin-top: auto;
	margin-bottom: auto;
	font-size: 1.4rem;
	line-height: 1.5;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact {
	display: block;
	max-width: 340px;
	width: 100%;
	margin-top: 13px;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact a {
	max-width: 340px;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact a span {
	padding-left: 35px;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact a span::before {
	top: 6px;
	width: 26px;
	height: 17px;
	background-size: 26px 17px;
}

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

	.main .corporate-strength-section .strength01,
	.main .corporate-strength-section .strength02,
	.main .corporate-strength-section .strength03,
	.main .corporate-strength-section .strength04,
	.main .corporate-strength-section .strength05 {
		height: 520px;
	}

	.main .corporate-strength-section .strength01 .txt-area,
	.main .corporate-strength-section .strength03 .txt-area,
	.main .corporate-strength-section .strength05 .txt-area {
		padding-left: 3vw;
	}

	.main .corporate-strength-section .strength02 .txt-area,
	.main .corporate-strength-section .strength04 .txt-area {
		padding-right: 3.5vw;
	}
}

@media screen and (max-width: 767px) {
	.main .corporate-strength-section .txt-box {
		margin-bottom: 65px;
	}

	.main .corporate-strength-section .txt-box h2:not([class*="heading"]) {
		margin-bottom: 20px;
		font-size: 2.4rem;
	}

	.main .corporate-strength-section .txt-box p br {
		display: none;
	}

	.main .corporate-strength-section .strength01,
	.main .corporate-strength-section .strength02,
	.main .corporate-strength-section .strength03,
	.main .corporate-strength-section .strength04,
	.main .corporate-strength-section .strength05 {
		height: auto;
	}

	.main .corporate-strength-section .strength01 .txt-area,
	.main .corporate-strength-section .strength02 .txt-area,
	.main .corporate-strength-section .strength03 .txt-area,
	.main .corporate-strength-section .strength04 .txt-area,
	.main .corporate-strength-section .strength05 .txt-area {
		position: relative;
		width: 100%;
		margin: 0;
		margin-top: 80vw;
		padding: 0 0 60px 0;
	}

	.main .corporate-strength-section .strength01 {
		background: url(../images/sp/corporate/strength/bg01.jpg) no-repeat top center, #3b95c2;
		background-size: 100%;
	}

	.main .corporate-strength-section .strength02 {
		background: url(../images/sp/corporate/strength/bg02.jpg) no-repeat top center, #fddfb0;
		background-size: 100%;
	}

	.main .corporate-strength-section .strength03 {
		background: url(../images/sp/corporate/strength/bg03.jpg) no-repeat top center, #3663b1;
		background-size: 100%;
	}

	.main .corporate-strength-section .strength04 {
		background: url(../images/sp/corporate/strength/bg04.jpg) no-repeat top center, #f6fdff;
		background-size: 100%;
	}

	.main .corporate-strength-section .strength05 {
		background: url(../images/sp/corporate/strength/bg05.jpg) no-repeat top center, #588f96;
		background-size: 100%;
	}

	.main .corporate-strength-section .scroll-line-content {
		position: relative;
	}

	.main .corporate-strength-section .scroll-line-content::before {
		display: none;
	}

	.main .corporate-strength-section .scroll-line {
		display: none;
	}

	.main .corporate-strength-section .scroll-bar {
		display: block;
		position: absolute;
		top: -40px;
		right: 0;
		left: 0;
		margin: 0 auto;
		width: 1px;
		height: 55px;
		z-index: 99;
		overflow: hidden;
	}

	.main .corporate-strength-section .scroll-bar::after {
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 1px;
		height: 0;
		margin: auto;
		background: #221814;
		content: "";
	}

	.main .corporate-strength-section .scroll-bar.animation::after {
		height: 55px;
		-webkit-animation: scroll-bar 1s linear;
		animation: scroll-bar 1s linear;
	}
}

/* cvエリア */
.main .p-corporate__cv.p-strength {
	height: 450px;
	padding: 95px 0;
}

.main .p-corporate__cv.p-strength::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../images/corporate/strength/cv-bg.jpg) no-repeat center;
	background-size: cover;
	background-attachment: fixed;
	content: "";
	z-index: 0;
}

.main .p-corporate__cv.p-strength .col-set {
	width: calc(100% + 30px);
}

.main .p-corporate__cv.p-strength .col-set .col1-2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	width: calc(50% - 30px);
	margin-right: 30px;
	padding: 45px 20px 50px;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 p {
	margin-top: auto;
	margin-bottom: auto;
	font-size: 1.4rem;
	line-height: 1.5;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact {
	display: block;
	max-width: 340px;
	width: 100%;
	margin-top: 13px;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact a {
	max-width: 340px;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact a span {
	padding-left: 35px;
}

.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact a span::before {
	top: 6px;
	width: 26px;
	height: 17px;
	background-size: 26px 17px;
}

@media screen and (max-width: 767px) {
	.main .p-corporate__cv.p-strength {
		height: auto;
		padding: 45px 0 50px;
	}

	.main .p-corporate__cv.p-strength::before {
		background-attachment: scroll;
		background-size: cover;
	}

	.main .p-corporate__cv.p-strength .col-set .col1-2 {
		width: 100%;
		margin-bottom: 15px;
	}

	.main .p-corporate__cv.p-strength .col-set .col1-2 p br {
		display: none;
	}

	.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact a span {
		padding-left: 30px;
	}

	.main .p-corporate__cv.p-strength .col-set .col1-2 .btn-contact a span::before {
		width: 23px;
		height: 12px;
		background-size: 23px 12px;
	}

	.main .p-corporate__cv.p-strength::before {
		background-attachment: scroll;
		background-size: cover;
	}

	.main .p-corporate__cv.p-strength .col-set .col1-2 {
		padding: 40px 15px 35px;
	}

	.main .p-corporate__cv.p-strength .col-set .col1-2 h3 {
		font-size: 1.8rem;
	}
}

/* 役員一覧
----------------------- */
.p-corporate__directors .right-justified {
	margin-top: -40px;
	margin-bottom: -40px;
}

.main .directors-list {
	width: calc(100% + 30px);
	margin-top: 50px;
}

.main .directors-list .col1-2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	position: relative;
	width: calc(50% - 30px);
	margin-top: 50px;
	margin-right: 30px;
	margin-bottom: 30px;
	z-index: 1;
}

.main .directors-list .col1-2::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 300px;
	background: #f5f5f5;
	content: "";
	z-index: -1;
}

.main .directors-list .col1-2 .img {
	position: relative;
	width: calc(100% - 10.5555vw);
	margin: -50px 0 0 0;
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
	overflow: hidden;
	z-index: 1;
}

.main .directors-list .col1-2 .txt-area {
	padding: 25px 30px 0;
	background: #f5f5f5;
}

.main .directors-list .col1-2 .txt-area h3 {
	font-size: 2.6rem;
}

.main .directors-list .col1-2 .txt-area h3 span:not(.position) {
	font-size: 2rem;
}

.main .directors-list .col1-2 .txt-area h3 .position {
	display: block;
	font-size: 1.6rem;
	line-height: 1.6;
}

.main .directors-list .col1-2 .txt-area h3+p {
	margin-top: -10px;
	margin-bottom: 15px;
}

.main .directors-list .col1-2 .txt-area h3+.btn-toggle {
	margin-top: 48px;
}

.main .directors-list .col1-2 .btn-toggle {
	position: relative;
	margin-bottom: 0;
	padding: 0 30px 25px;
	background: #f5f5f5;
}

.main .directors-list .col1-2 .btn-toggle dt {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 13px 18px 12px;
	border: 1px solid rgba(125, 125, 125, 0.4);
	cursor: pointer;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.main .directors-list .col1-2 .btn-toggle dt .btn-plus {
	display: block;
	position: absolute;
	top: 0;
	right: 18px;
	bottom: 0;
	width: 18px;
	height: 2px;
	margin: auto;
	background: #221814;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.main .directors-list .col1-2 .btn-toggle dt .btn-plus::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 2px;
	height: 18px;
	margin: auto;
	background: #221814;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .directors-list .col1-2 .btn-toggle dd {
	display: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

.main .directors-list .col1-2 .btn-toggle dd table {
	border-bottom: none;
	font-size: 1.4rem;
	line-height: 1.5;
}

.main .directors-list .col1-2 .btn-toggle dd table th {
	width: 26%;
	padding: 17px 10px 16px;
	background-color: transparent;
	/*text-align: center;*/
}

.main .directors-list .col1-2 .btn-toggle dd table td {
	width: calc(100% - 26%);
	padding: 17px 10px 16px;
}

.main .directors-list .col1-2 .btn-toggle dd table tr:first-child th,
.main .directors-list .col1-2 .btn-toggle dd table tr:first-child td {
	border-top: none;
}

.main .directors-list .col1-2 .btn-toggle dt:hover {
	background: rgba(34, 24, 20, 0.8);
	color: #fff;
}

.main .directors-list .col1-2 .btn-toggle dt:hover .btn-plus {
	background: #fff;
}

.main .directors-list .col1-2 .btn-toggle dt:hover .btn-plus::before {
	background: #fff;
}

.main .directors-list .col1-2 .btn-toggle dt.active {
	background: rgba(34, 24, 20, 0.8);
	color: #fff;
}

.main .directors-list .col1-2 .btn-toggle dt.active .btn-plus {
	background: #fff;
}

.main .directors-list .col1-2 .btn-toggle dt.active .btn-plus::before {
	background: #fff;
	transform: rotate(-90deg);
}

.main .directors-list .col1-2 .btn-toggle.active {
	margin-top: 0;
}

.main .directors-list .col1-2:last-child,
.main .directors-list .col1-2:nth-last-of-type(2) {
	margin-bottom: 0;
}

@media screen and (max-width: 1169px) {
	.main .directors-list table td .show-pc {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.main .p-corporate__directors .right-justified {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-end;
		justify-content: flex-end;
		margin-top: -20px;
		margin-bottom: -20px;
	}

	.main .directors-list {
		width: 100%;
	}

	.main .directors-list .col1-2 {
		width: 100%;
		margin-right: 0;
		margin-bottom: 15px;
	}

	.main .directors-list .col1-2::before {
		height: 50vw;
	}

	.main .directors-list .col1-2 .txt-area {
		padding: 20px 15px 0;
	}

	.main .directors-list .col1-2 .txt-area h3 {
		font-size: 1.8rem;
	}

	.main .directors-list .col1-2 .txt-area h3 span:not(.position) {
		font-size: 1.4rem;
	}

	.main .directors-list .col1-2 .txt-area h3 .position {
		font-size: 1.2rem;
	}

	.main .directors-list .col1-2 .btn-toggle {
		padding: 0 15px 20px;
	}

	.main .directors-list .col1-2 .btn-toggle dt {
		padding: 13px 15px 12px;
		padding-bottom: 12px !important;
	}

	.main .directors-list .col1-2 .btn-toggle dd table th {
		width: 35%;
	}

	.main .directors-list .col1-2 .btn-toggle dd table td {
		width: calc(100% - 35%);
		padding: 17px 10px 16px 0;
	}

	.main .directors-list .col1-2:nth-last-of-type(2) {
		margin-bottom: 15px;
	}
}

/* CSR　環境への取り組み
----------------------- */
.main ul.num-list {
	margin-bottom: 0;
}

.main ul.num-list li {
	margin-bottom: 40px;
	padding-left: 0;
	list-style: none;
}

.main ul.num-list li::before {
	display: none;
}

.main ul.num-list li h3 {
	position: relative;
	margin-bottom: 10px;
	padding-left: 30px;
}

.main ul.num-list li h3 span {
	position: absolute;
	top: 0;
	left: 0;
}

.main ul.num-list li p {
	margin-bottom: 0;
	padding-left: 30px;
}

.main ul.num-list li:last-child {
	margin-bottom: 0;
}

.main ul.num-list+.right-justified {
	margin-top: 40px;
}

.main ul.num-list+.right-justified p {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	.main ul.num-list li {
		margin-bottom: 20px;
	}

	.main ul.num-list li h3,
	.main ul.num-list li p {
		padding-left: 25px;
	}

	.main ul.num-list+.right-justified {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-lines: multiple;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-top: 20px;
	}
}

/* 拠点案内
----------------------- */
.map-area {
	width: 100%;
	height: 350px;
}

@media screen and (max-width: 1024px) {
	.main table.table-c th br.show-pc {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.map-area {
		width: 100%;
		height: 260px;
	}
}

/* グループ会社
----------------------- */
.main .nav-content .col-set li {
	min-height: 75px;
	margin-bottom: 0;
}

.main a.icon-window {
	position: relative;
}

.main a.icon-window::before {
	display: block;
	position: absolute;
	top: 0;
	right: -25px;
	bottom: 0;
	width: 17px;
	height: 13px;
	margin: auto;
	border: none;
	background: url(../images/common/icon-window.svg) no-repeat center;
	background-size: 17px 13px;
	-webkit-transform: rotate(0);
	-moz-transform: rotate(0);
	transform: rotate(0);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main a.icon-window:hover::before {
	right: -28px;
}

@media screen and (max-width: 767px) {
	.main .nav-content {
		background: transparent;
	}

	.main .nav-content .col-set {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.main .nav-content .col-set li {
		min-height: 45px;
		margin-bottom: 5px;
	}

	.main .nav-content .col-set li a {
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-webkit-box-align: flex-start;
		padding: 10px 15px;
		background: #f5f5f5;
		border: none;
		font-size: 1.4rem;
		text-align: left;
	}

	.main .nav-content .col-set li a::before {
		top: -5px;
	}
}

/* 用語集
----------------------- */
.main .find-words {
	margin-bottom: 50px;
	padding: 30px;
	background: #f5f5f5;
}

.main .find-words .nav-content {
	margin-bottom: 0;
	background: transparent;
}

.main .find-words .nav-content ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.main .find-words .nav-content ul li {
	width: 12.5%;
	border-bottom: 2px solid rgba(34, 24, 20, 0.2);
}

.main .find-words .nav-content ul li a {
	-webkit-box-pack: flex-start;
	-ms-flex-pack: flex-start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	padding: 10px 30px 10px 25px;
}

.main .find-words .nav-content ul li a::before {
	right: 20px;
}

.main .find-words .nav-content ul li a:hover {
	background: transparent;
	color: #221814;
	border-color: rgba(34, 24, 30, 0.2) !important;
}

.main .find-words .nav-content ul li a:hover::before {
	border-color: #221814;
}

.main .find-words .nav-content ul li:nth-child(8) a {
	border-right: none;
}

.main .find-words .nav-content ul li:nth-child(15) a {
	border-right: 2px solid rgba(34, 24, 20, 0.2);
}

.main .find-words .nav-content ul li:nth-child(n + 9) {
	border-bottom: none;
}

/* ----- モーダル ----- */
.main .find-words-content-wrapper {
	max-width: 960px;
	box-sizing: border-box;
}

.main .find-words-content h2:not([class*="heading"]) {
	margin-bottom: 25px;
	padding: 0 0 20px 0;
	border-bottom: 1px solid rgba(34, 24, 20, 0.2);
	border-left: 0px;
}

.main .find-words-content h2:not([class*="heading"])::after {
	display: none;
}

.main li.btn-zoom::before {
	display: none;
}

.main .btn-zoom-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	width: calc(100% + 30px);
	margin-bottom: 0;
}

.main .btn-zoom {
	max-width: 270px;
	width: calc(25% - 30px);
	height: 55px;
	margin: 0 30px 0 0;
	padding: 0;
}

.main .btn-zoom a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
	height: 100%;
	border: 1px solid #7d7d7d;
	padding: 0 40px 0 20px;
	text-decoration: none;
	line-height: 1.35;
}

.main .btn-zoom a::after {
	display: block;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: 17px;
	height: 22px;
	margin: auto;
	background: url(../images/common/icon-zoom.svg) no-repeat center left;
	background-size: 17px 22px;
	transform: rotate(0);
	content: "";
}

.main .btn-zoom a:hover::after {
	background: url(../images/common/icon-zoom-white.svg) no-repeat center left;
	background-size: 17px 22px;
	transform: rotate(0);
}

.main .btn-zoom:nth-of-type(5n) {
	margin-left: 0;
}

.main .btn-zoom:nth-of-type(n + 5) {
	margin-top: 30px;
}

@media screen and (max-width: 980px) {
	.main .find-words .nav-content ul li a {
		padding: 10px 20px 10px 15px;
	}

	.main .find-words .nav-content ul li a::before {
		right: 15px;
	}

	.main .btn-zoom {
		width: calc(33.333% - 30px);
	}

	.main .btn-zoom:nth-of-type(n + 4) {
		margin-top: 30px;
	}
}

@media screen and (max-width: 767px) {
	.main .find-words {
		padding: 15px;
	}

	.main .find-words .nav-content ul li,
	.main .find-words .nav-content ul li:nth-of-type(2n),
	.main .find-words .nav-content ul li:nth-child(n + 9) {
		border-bottom: 3px solid #cbc9c8;
		width: 33.333%;
		min-height: 45px;
	}

	.main .find-words .nav-content ul li a,
	.main .find-words .nav-content ul li:nth-of-type(2n) a,
	.main .find-words .nav-content ul li:nth-child(n + 9) a {
		border-right: 3px solid #cbc9c8 !important;
		border-bottom: none;
	}

	.main .find-words .nav-content ul li a::before,
	.main .find-words .nav-content ul li:nth-of-type(2n) a::before,
	.main .find-words .nav-content ul li:nth-child(n + 9) a::before {
		top: -6px;
		right: 20px;
	}

	.main .find-words .nav-content ul li:nth-of-type(3n) a {
		border-right: none !important;
	}

	.main .find-words .nav-content ul li:nth-child(n + 13) {
		border-bottom: none;
	}

	.main .btn-zoom-wrapper {
		width: 100%;
	}

	.main .btn-zoom {
		max-width: none;
		width: 100%;
		height: 45px;
		margin-right: 0;
		margin-bottom: 15px;
	}

	.main .btn-zoom a {
		padding: 0 30px 0 15px;
	}

	.main .btn-zoom a::after {
		top: 0;
		right: 15px;
		width: 14px;
		height: 20px;
		background-size: 14px 20px;
	}

	.main .btn-zoom a:hover::after {
		width: 14px;
		height: 20px;
		background-size: 14px 20px;
	}

	.main .btn-zoom:nth-of-type(n + 4) {
		margin-top: 0;
	}

	.main .btn-zoom:last-child {
		margin-bottom: 0;
	}

	.main .find-words-content h2:not([class*="heading"]) {
		margin-bottom: 15px;
		padding-bottom: 15px;
	}
}

/* CSS Document */
/* ----------------------------------------
	modle CTA
------------------------------------------- */
.main .cta-section {
	padding: 70px 0;
	line-height: 1.5;
	background-image: url("../images/service/bg_cta.jpg");
}

.main .cta-section .col-set {
	-webkit-justify-content: center;
	justify-content: center;
}

.main .cta-section .col-set>* {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	padding: 45px 20px;
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.1);
}

.col-w700 {
	width: 700px;
}

.main .cta-section h3:not([class*="heading"]) {
	font-size: 2.2rem;
	line-height: 1.45;
	text-align: center;
}

.main .cta-section p {
	width: 100%;
	max-width: 360px;
	margin: 0 auto;
	font-size: 1.4rem;
}

.main .cta-section .unit {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
}

.main .cta-section .unit:first-of-type {
	min-height: 3em;
}

.main .cta-section .unit:last-of-type {
	-webkit-flex: 1 0 auto;
	flex: 1 0 auto;
}

.main .cta-section p.note {
	max-width: 390px;
	font-size: 1.2rem;
}

.main .cta-section .btn-contact {
	width: 100%;
	margin: 16px auto 12px auto;
}

.main .cta-section .btn-contact+.btn-contact {
	margin-top: 0;
}

.main .cta-section .btn-contact a {
	max-width: 340px;
	box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.1);
}

.main .cta-section .contact-tel {
	text-align: center;
}

/* 20200110 */
.main .cta-section .contact-tel02 {
	margin: 0 auto;
}

/* 20200110 */

.main .cta-section .contact-tel a {
	margin: auto;
	color: #221814;
	font-family: "Open Sans", sans-serif;
	font-size: 4.2rem;
	font-weight: bold;
	text-decoration: none;
}

.main .cta-section .notice {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	margin: 20px 0 0 0;
	background: rgba(255, 255, 255, 0.8);
	box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.1);
}

.main .cta-section .notice>* {
	width: 50%;
	padding: 25px 30px;
}

.main .cta-section .notice .heading {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	color: #fff;
	font-size: 2rem;
	font-weight: bold;
	background: #777;
}

.main .cta-section .notice .text {
	padding-left: 35px;
}

@media screen and (max-width: 1199px),
print {
	.main .cta-section .notice {
		margin: 20px 0 0 0;
	}

	.main .cta-section .notice>* {
		padding: 20px;
	}

	.main .cta-section .notice .text {
		padding-left: 30px;
	}
}

@media screen and (min-width: 768px) {
	.main .cta-section .contact-tel a {
		pointer-events: none;
	}

	.main .cta-section .contact-tel02 {
		margin: -40px auto 30px;
	}
}

@media screen and (min-width: 768px) and (max-width: 850px) {
	.main .cta-section h3:not([class*="heading"]) {
		font-size: 2.6vw;
	}
}

@media screen and (max-width: 767px) {
	.col-w700 {
		width: 100%;
	}

	.main .cta-section h3:not([class*="heading"]) {
		font-size: 1.8rem;
	}

	.main .cta-section .unit:first-of-type {
		min-height: auto;
	}

	.main .cta-section .notice {
		display: block;
	}

	.main .cta-section .notice>* {
		width: 100%;
		padding: 15px 20px;
	}

	.main .cta-section .notice .heading {
		font-size: 1.8rem;
	}

	.main .cta-section .notice .text {
		padding-left: 20px;
	}
}

.link-extra-section {
	padding: 80px 0;
	background: url("../images/service/bg_link_extra.png") no-repeat center top;
	background-size: cover;
}

/* ----------------------------------------
	modle for service
------------------------------------------- */
.main .heading_f22,
.main .lead {
	margin-bottom: 20px;
	font-size: 2.2rem;
	font-weight: bold;
}

.main h2+.lead {
	margin-top: -20px;
}

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

	.main .heading_f22,
	.main .lead {
		font-size: 1.8rem;
	}

	.main .col-set+.heading_f22 {
		margin-top: 15px;
	}
}

.main .btn.left {
	margin: 0;
}

.main .btn.w-auto {
	width: auto;
	text-align: center;
}

.main .btn.w-auto a {
	display: inline-block;
	min-width: 260px;
	padding-right: 60px;
	text-align: left;
}

@media screen and (max-width: 767px) {
	.main .btn.w-auto a {
		display: block;
		margin-right: 0;
		padding-right: 40px;
	}
}

.main .btn-underline a {
	position: relative;
	display: block;
	padding: 13px 35px 12px 20px;
	border-bottom: 1px solid #7d7d7d;
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.main .btn-underline a::after {
	display: block;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: 10px;
	height: 7px;
	margin: auto;
	transform: rotate(-90deg);
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: contain;
	content: "";
}

.main .btn-underline a:hover {
	background: #777;
	color: #fff !important;
}

.main .btn-underline a:hover::after {
	background: url(../images/common/arrow-white.svg) no-repeat center;
	background-size: contain;
}

.main .btn.icon-window a::after,
.main .btn-underline.icon-window a::after {
	width: 18px;
	height: 13px;
	transform: rotate(0);
	background: url(../images/common/icon-window.svg) no-repeat center;
}

.main .btn-underline.icon-window a::after {
	width: 22px;
	height: 16px;
}

.main .btn.icon-window a:hover::after,
.main .btn-underline.icon-window a:hover::after {
	transform: rotate(0);
	background: url(../images/common/icon-window-white.svg) no-repeat center;
}

.main .btn.icon-pdf a::after {
	width: 18px;
	height: 22px;
	background: url(../images/common/icon-pdf.svg) no-repeat center right;
	background-size: contain;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: rotate(0);
}

.main .btn.icon-pdf a:hover::after {
	transform: rotate(0);
	background: url(../images/common/icon-pdf-white.svg) no-repeat center right;
}

.main .line-adjust0 li {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	.main .btn-underline a {
		padding: 12px 35px 11px 15px;
	}

	.main .btn-underline a::after {
		right: 15px;
	}

	.main .btn-underline.icon-window a::after,
	.main .btn-underline.icon-window a:hover::after {
		width: 15px;
		height: 11px;
		transform: translateY(3px);
	}

	.main .btn.icon-pdf a::after {
		width: 16px;
		height: 20px;
	}
}

.service-pickup-block {
	padding: 90px 0;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
}

.service-pickup-block .col-set+.col-set {
	margin-top: 30px;
}

.service-pickup-block .col-set>* {
	padding: 30px;
	background: #fff;
	box-shadow: 0px 0px 10px 0px rgba(47, 22, 22, 0.12);
	box-sizing: border-box;
}

.service-pickup-block h3 {
	color: #02040b;
	font-size: 1.4rem !important;
	text-align: center;
}

.service-pickup-block .col1-2,
.service-pickup-block .col1-3,
.service-pickup-block .col1-4 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	position: relative;
}

.service-pickup-block .col1-2 h3+p,
.service-pickup-block .col1-3 h3+p,
.service-pickup-block .col1-4 h3+p {
	-webkit-flex: 1 0 auto;
	flex: 1 0 auto;
	font-size: 1.4rem;
}

.main .service-pickup-block .mark {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
	height: 90px;
	box-sizing: border-box;
}

.main .service-pickup-block .btn {
	width: 420px;
	height: 60px;
	margin-top: 60px;
}

.main .service-pickup-block .btn a {
	padding: 15px 35px 15px 20px;
}

.main .service-pickup-block .btn-underline {
	margin-top: auto;
}

@media screen and (max-width: 1199px),
print {
	.service-pickup-block .col-set+.col-set {
		margin-top: 20px;
	}

	.service-pickup-block .col-set>* {
		padding: 20px;
	}
}

@media screen and (max-width: 767px) {
	.main .service-pickup-block .col-set>* {
		margin-bottom: 20px;
	}

	.main .service-pickup-block .mark {
		height: auto;
		margin: 15px 0 25px 0;
	}

	.main .service-pickup-block .mark img[src$=".svg"] {
		transform: scale(1.25);
	}

	.main .service-pickup-block .btn {
		width: 100%;
		height: auto;
		margin-top: 30px;
	}

	.main .service-pickup-block .btn a {
		margin-right: 0;
		padding: 10px 35px 10px 15px;
	}

	.main .service-pickup-block .btn a::after {
		right: 15px;
	}
}

.main .service-pickup-block.software {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	padding: 145px 20px 50px 20px;
	background: #f2f2f2 url("../images/service/bg_features1.png") no-repeat center top;
	background-size: cover;
}

.main .service-pickup-block.software .col-set {
	max-width: 960px;
	margin-right: -30px;
}

.main .service-pickup-block.software .mark {
	position: absolute;
	left: 50%;
	top: -90px;
	height: auto;
	transform: translateX(-50%);
}

.main .service-pickup-block.software h4:not([class*="heading"]) {
	margin-bottom: 10px;
	font-size: 1.25em;
}

@media screen and (max-width: 1199px),
print {
	.main .service-pickup-block.software .col-set {
		margin-right: -20px;
	}
}

@media screen and (max-width: 767px) {
	.main .service-pickup-block.software {
		padding: 20px;
	}

	.main .service-pickup-block.software .col-set {
		margin-right: 0;
	}

	.main .service-pickup-block.software .col-set>* {
		margin-top: 90px;
		padding-top: 30px;
	}

	.main .service-pickup-block.software .mark {
		height: auto;
		margin: 0;
	}

	.main .service-pickup-block.software .mark img[src$=".svg"] {
		transform: scale(1);
	}
}

.service-panel-covered {
	position: relative;
	background-color: #555555;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
}

.service-panel-covered .row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.service-panel-covered.txt-bg {
	height: 400px;
	margin-top: 20px;
	color: #fff;
}

.service-panel-covered.txt-bg::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 50%;
	background: rgba(67, 67, 67, 0.95);
	z-index: 1;
}

.service-panel-covered.txt-bg .row {
	z-index: 2;
}

.service-panel-covered+.row {
	margin-top: 45px;
}

.service-panel-covered .txt-area {
	width: 50%;
	padding: 90px 30px 90px 0;
}

.service-panel-covered .txt-area .sub_title {
	font-weight: bold;
	font-size: 2rem;
	margin-bottom: 0;
}

.service-panel-covered .txt-area> :last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 1199px),
print {
	.service-panel-covered .txt-area {
		width: 50%;
		padding: 60px 20px 60px 0;
	}

	.tab-element .service-panel-covered {
		margin-left: -20px;
		margin-right: -20px;
		padding-left: 20px;
		padding-right: 20px;
	}
}

@media screen and (max-width: 767px) {
	.service-panel-covered+.row {
		margin-top: 20px;
	}

	.service-panel-covered.txt-bg {
		height: auto;
		background-position: right top;
		background-size: auto 66.6vw;
		padding-top: 66.6vw;
	}

	.service-panel-covered.txt-bg::after {
		display: none;
	}

	.service-panel-covered .txt-area {
		width: auto;
		padding: 20px 0;
	}

	.service-panel-covered .txt-area .sub_title {
		font-size: 1.8rem;
	}

	.tab-element .service-panel-covered.txt-bg:not(:first-of-type) {
		margin-top: 0;
	}

	.tab-element .service-panel-covered {
		margin-left: -15px;
		margin-right: -15px;
		padding-left: 15px;
		padding-right: 15px;
	}
}

.service-box,
.service-box-set>* {
	margin-bottom: 30px;
	padding: 30px;
	background-color: rgba(245, 245, 245, 0.5);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
}

.service-box-set>* {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.service-box>*:last-child,
.service-box-set>*>*:last-child {
	margin-bottom: 0;
}

.service-box:last-child {
	margin-bottom: 0;
}

.service-box .heading,
.service-box-set .heading {
	margin-bottom: 10px;
	font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.35;
}

.service-box-set>*,
.service-box-set.feature>* {
	margin-bottom: 0;
}

.service-box-set .col1-2:nth-child(n + 3),
.service-box-set .col1-3:nth-child(n + 4),
.service-box-set .col1-4:nth-child(n + 5),
.service-box-set.feature .col1-2:nth-child(n + 3),
.service-box-set.feature .col1-3:nth-child(n + 4) {
	margin-top: 30px;
}

.service-box-set.feature+h4 {
	margin-top: 40px;
	margin-bottom: 10px;
}

.service-box-set.feature+.btn.w-auto {
	margin-top: 30px !important;
}

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

	.service-box,
	.service-box-set>* {
		margin-bottom: 20px;
		padding: 20px;
	}

	.service-box-set>*,
	.service-box-set.feature>* {
		margin-bottom: 0;
	}

	.service-box-set .col1-2:nth-child(n + 3),
	.service-box-set .col1-3:nth-child(n + 4),
	.service-box-set .col1-4:nth-child(n + 5),
	.service-box-set.feature .col1-2:nth-child(n + 3),
	.service-box-set.feature .col1-3:nth-child(n + 4) {
		margin-top: 20px;
	}
}

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

	.service-box,
	.service-box-set>* {
		margin-bottom: 15px;
		padding: 15px;
	}

	.card_img {
		padding: 12px 0 11px 0 !important;
	}

	.service-box-set.feature>* {
		margin-bottom: 15px;
		padding: 15px;
	}

	.service-box+.heading_f22 {
		margin-top: 15px;
	}

	.service-box-set.feature .col1-2:nth-child(n + 3),
	.service-box-set.feature .col1-3:nth-child(n + 4) {
		margin-top: 0;
	}

	.service-box-set.feature .col1-2:last-child,
	.service-box-set.feature .col1-3:last-child {
		margin-bottom: 0;
	}

	.service-box .heading,
	.service-box-set .heading {
		font-size: 1.8rem;
	}

	.service-box-set>.col1-4 {
		width: 100%;
		margin-right: 0;
	}

	.service-box-set.feature+.btn.w-auto {
		margin-top: 15px !important;
	}
}

.service-box-set.feature .icon-check,
.service-box-set.feature h5:not([class*="heading"]) {
	padding-top: 55px;
	background: url("../images/service/icon_check.svg") no-repeat center top;
	background-size: 48px 40px;
}

.service-box-set.feature h5:not([class*="heading"]) {
	margin: 0 0 10px;
	font-size: 1.125em;
	text-align: center;
}

.service-box.bg-img01,
.service-box-set.feature .col1-2:nth-child(odd) {
	background-image: url("../images/service/translation/bg_feature_block1of2_01.png");
}

.service-box.bg-img02,
.service-box-set.feature .col1-2:nth-child(even) {
	background-image: url("../images/service/translation/bg_feature_block1of2_02.png");
}

.service-box-set.feature .col1-3:nth-child(3n + 1) {
	background-image: url("../images/service/translation/bg_feature_block1of3_01.png");
}

.service-box-set.feature .col1-3:nth-child(3n + 2) {
	background-image: url("../images/service/translation/bg_feature_block1of3_02.png");
}

.service-box-set.feature .col1-3:nth-child(3n) {
	background-image: url("../images/service/translation/bg_feature_block1of3_03.png");
}

@media screen and (max-width: 767px) {
	.service-box-set.feature h5:not([class*="heading"]) {
		padding-top: 55px;
	}
}

.service-img-set .col-set {
	-webkit-align-items: center;
	align-items: center;
}

.service-img-set:nth-of-type(odd) .col-set {
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

.service-img-set .col1-2.text-area {
	max-width: 585px;
}

.service-img-set:nth-of-type(odd) .col-set .col1-2.text-area {
	padding-right: 30px;
}

.service-img-set:nth-of-type(even) .col-set .col1-2.text-area {
	padding-left: 30px;
	-webkit-order: 2;
	order: 2;
}

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

	.service-img-set:nth-of-type(odd) .col-set .col1-2.text-area,
	.service-img-set:nth-of-type(even) .col-set .col1-2.text-area {
		padding: 0 20px;
	}
}

@media screen and (min-width: 768px) and (max-width: 980px) {
	.service-img-set .col-set {
		-webkit-align-items: stretch;
		align-items: stretch;
	}

	.service-img-set:nth-of-type(odd) .col-set .col1-2.text-area,
	.service-img-set:nth-of-type(even) .col-set .col1-2.text-area {
		padding: 20px;
		min-height: 370px;
	}

	.service-img-set .col1-2.img-area {
		position: relative;
		overflow: hidden;
	}

	.service-img-set .col1-2.img-area img {
		position: absolute;
		display: block;
		left: 50%;
		top: 0;
		width: auto;
		max-width: none;
		height: 100%;
		transform: translateX(-50%);
	}
}

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

	.service-img-set:nth-of-type(odd) .col-set .col1-2.text-area,
	.service-img-set:nth-of-type(even) .col-set .col1-2.text-area {
		max-width: none;
		padding: 20px 15px;
		-webkit-order: 2;
		order: 2;
	}
}

/* ----------------------------------------
	サービス headingarea
------------------------------------------- */
.headingarea.service::before {
	background-image: url(../images/service/heading-tit.jpg);
}

.headingarea.service.interpreter .headingarea__img::after {
	background-image: url(../images/service/heading-img-interpreter.jpg);
}

.headingarea.service.temporary-staffing .headingarea__img::after {
	background-image: url(../images/service/heading-img-temporary-staffing.jpg);
}

.headingarea.service.conference .headingarea__img::after {
	background-image: url(../images/service/heading-img-conference.jpg);
}

.headingarea.service.training-school .headingarea__img::after {
	background-image: url(../images/service/heading-img-training-school.jpg);
}

.headingarea.service.translation .headingarea__img::after {
	background-image: url(../images/service/translation/heading-img.jpg);
}

.headingarea.service.option .headingarea__img::after {
	background-image: url(../images/service/translation/heading-img-option.jpg);
}

.headingarea.service.related-service .headingarea__img::after {
	background-image: url(../images/service/translation/heading-img-related-service.jpg);
}

.headingarea.service.guidance .headingarea__img::after {
	background-image: url(../images/service/translation/heading-img-guidance.jpg);
}

.headingarea.service.languages .headingarea__img::after {
	background-image: url(../images/service/translation/heading-img-languages.jpg);
}

.headingarea.service.software .headingarea__img::after {
	background-image: url(../images/service/software/heading-img.jpg);
}

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

	.headingarea.service.software::before,
	.headingarea.service.software .headingarea__tit {
		height: 250px;
		background-size: cover;
	}

	.headingarea.service.software .headingarea__img::after {
		top: calc(250px + 65px);
	}
}

.headingarea.service.wikiworks {
	-webkit-align-items: center;
	align-items: center;
	height: 650px;
	background: url(../images/service/software/wikiworks/mainvisual.jpg) no-repeat top center;
	background-size: cover;
}

.headingarea.service.wikiworks h1 img {
	/*width: 374px;*/
	width: 440px;
}

.headingarea.service.wikiworks .wikiworks_txt {
	font-weight: bold;
	font-size: 2.8rem;
	color: #595656;
}

.wikiworks .center {
	text-align: center;
}

.headingarea.service.wikiworks::before,
.headingarea.service.wikiworks::after {
	display: none;
}

@media screen and (max-width: 767px) {
	.headingarea.service.wikiworks {
		height: 550px;
		background: url(../images/sp/service/software/wikiworks/mainvisual.png) no-repeat top center;
		background-size: cover;
	}

	.headingarea.service.wikiworks {
		display: block;
	}

	.headingarea.service.wikiworks .headingarea__tit {
		height: auto;
		padding-top: 60px;
		text-align: center;
	}

	.headingarea.service.wikiworks .headingarea__tit h1 {
		margin: auto;
	}

	.headingarea.service.wikiworks .headingarea__tit h1 img {
		width: 258px;
		height: auto;
		margin: auto;
	}

	.headingarea.service.wikiworks .wikiworks_txt {
		font-size: 1.4rem;
	}
}

/* ----------------------------------------
	サービスTOP /service/index
------------------------------------------- */
.headingarea.service-top {
	height: 600px;
	background: url(../images/service/mainvisual.jpg) no-repeat top center;
	background-size: cover;
}

.headingarea.service-top::before {
	display: none;
}

.headingarea.service-top::after {
	display: none;
}

.headingarea.service-top .headingarea__tit {
	max-width: 1170px;
	width: 100%;
	margin: auto;
	padding: 0 20px;
	box-sizing: content-box;
}

.headingarea.service-top .headingarea__tit-inner {
	width: 31%;
	padding: 20px 20px 20px 0;
	float: none;
}

.headingarea.service-top .headingarea__tit h1+p {
	margin-top: 15px;
	line-height: 150%;
	font-size: 1.6rem;
}

/*.headingarea.service-top + .content .main {
	padding-top: 70px;
}*/
@media screen and (max-width: 767px) {
	.headingarea.service-top {
		align-items: flex-end;
		background-image: url(../images/sp/service/mainvisual.jpg);
		background-position: center center;
		min-height: calc(450px + 50vw);
	}

	.headingarea.service-top .headingarea__tit {
		height: auto;
		margin: 0 0 35px;
	}

	.headingarea.service-top .headingarea__tit-inner {
		width: auto;
	}
}

#top-service-section01.service-pickup-block {
	background-image: url("../images/service/img_top_section01.jpg");
}

#top-service-section02.service-pickup-block {
	background-image: url("../images/service/img_top_section02.jpg");
}

.service-pickup-block[id^="top-service-section"] .row {
	background: rgba(255, 255, 255, 0.95);
	box-shadow: 0px 3px 12px 0px rgba(0, 0, 0, 0.1);
	box-sizing: border-box;
}

.service-pickup-block[id^="top-service-section"] .col-set>* {
	padding: 0;
	background: none;
	box-shadow: none;
}

.service-pickup-block[id^="top-service-section"] .row {
	padding: 60px 100px;
}

.service-pickup-block[id^="top-service-section"] h2 {
	padding-left: 0 !important;
	text-align: center;
	border-left: 0px;
}

.service-pickup-block[id^="top-service-section"] h2::after {
	display: none !important;
}

.service-pickup-block[id^="top-service-section"] h2+p {
	text-align: center;
}

.service-pickup-block[id^="top-service-section"] h3 {
	color: #616161;
}

@media screen and (min-width: 768px) and (max-width: 1199px) {
	.service-pickup-block[id^="top-service-section"] {
		padding: 60px 20px;
	}

	.service-pickup-block[id^="top-service-section"] .row {
		padding: 5.1vw 8.5vw;
	}
}

@media screen and (max-width: 767px) {
	.service-pickup-block[id^="top-service-section"] {
		padding: 50px 15px;
	}

	.service-pickup-block[id^="top-service-section"] .row {
		padding: 60px 15px;
	}

	.service-pickup-block[id^="top-service-section"] .col-set {
		padding: 0 15px;
	}
}

/* ----------------------------------------
	サービス パンくずエリア調整
------------------------------------------- */
.headingarea.service-top+.content main,
.headingarea.translation+.content main {
	padding-top: 40px;
}

.headingarea.service-top+.content main .breadcrumb,
.headingarea.translation+.content main .breadcrumb {
	top: -20px;
}

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

	.headingarea.service-top+.content main,
	.headingarea.translation+.content main {
		padding-top: 10px;
		padding-top: 20px;
	}

	.headingarea.service-top+.content main .breadcrumb,
	.headingarea.translation+.content main .breadcrumb {
		top: 0;
	}
}

/* ----------------------------------------
	翻訳サービスTOP /service/translation/index
------------------------------------------- */
.service-panel-covered[id^="service-translation-section"] {
	height: 553px;
}

.service-panel-covered[id^="service-translation-section"] .row {
	height: inherit;
}

.service-panel-covered[id^="service-translation-section"]:nth-of-type(odd) .row {
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

#service-translation-section01.service-panel-covered {
	background-image: url("../images/service/translation/img_index01.jpg");
	background-color: #cedffb;
}

#service-translation-section02.service-panel-covered {
	background-image: url("../images/service/translation/img_index02.jpg");
	background-color: #e0e8eb;
}

#service-translation-section03.service-panel-covered {
	background-image: url("../images/service/translation/img_index03.jpg");
	background-color: #f8faf9;
}

#service-translation-section04.service-panel-covered {
	background-image: url("../images/service/translation/img_index04.jpg");
	background-color: #e7e1d3;
}

.service-panel-covered[id^="service-translation-section"] h3 {
	margin-top: 35px;
}

@media screen and (max-width: 767px) {
	.service-panel-covered[id^="service-translation-section"] {
		height: auto;
		background-position: right -5vw top;
		background-size: auto 73.8vw;
		padding-top: 73.8vw;
		padding-bottom: 20px;
	}

	.service-panel-covered[id^="service-translation-section"] h3 {
		margin-top: 20px;
	}

	.service-panel-covered[id^="service-translation-section"]:nth-of-type(odd) {
		background-position: -5vw top;
	}
}

#service-translation-section06 {
	background: #f5f5f5;
}

/* ----------------------------------------
	サービス下層
------------------------------------------- */
#service-interpreter01.service-panel-covered {
	background-image: url("../images/service/img_interpreter01.jpg");
}

#service-interpreter-tel.service-panel-covered {
	background-image: url("../images/service/img_interpreter_tel01.jpg");
}

#service-temporary-staffing01.service-panel-covered {
	background-image: url("../images/service/img_temporary_staffing01.jpg");
	height: auto;
}

#service-option-dtp01.service-panel-covered {
	background-image: url("../images/service/translation/img_option_dtp01.jpg");
}

#service-option-dtp02.service-panel-covered {
	background-image: url("../images/service/translation/img_option_dtp02.jpg");
}

#service-option-dtp03.service-panel-covered {
	background-image: url("../images/service/translation/img_option_dtp03.jpg");
}

#service-option-dtp04.service-panel-covered {
	background-image: url("../images/service/translation/img_option_dtp04.jpg");
}

#service-option-digital01.service-panel-covered {
	background-image: url("../images/service/translation/img_option_digital01.jpg");
}

#service-option-digital02.service-panel-covered {
	background-image: url("../images/service/translation/img_option_digital02.jpg");
}

#service-option-digital03.service-panel-covered {
	background-image: url("../images/service/translation/img_option_digital03.jpg");
}

#service-option-digital04.service-panel-covered {
	background-image: url("../images/service/translation/img_option_digital04.jpg");
}

#service-option-digital05.service-panel-covered {
	background-image: url("../images/service/translation/img_option_digital05.jpg");
}

#service-related01.service-panel-covered {
	background-image: url("../images/service/translation/img_related01.jpg");
}

#service-related02.service-panel-covered {
	background-image: url("../images/service/translation/img_related02.jpg");
}

@media screen and (max-width: 767px) {
	.service-panel-covered[id^="service-translation-section"] h3 {
		margin-top: 20px;
	}

	.service-panel-covered[id^="service-translation-section"]:nth-of-type(odd) {
		background-position: -5vw top;
	}
}

.service-platform .col-set>* {
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}

.service-platform .col-set {
	max-width: 960px;
	margin: 0 auto;
}

.service-platform .col-set .mark {
	height: 81px;
	margin-bottom: 28px;
	text-align: center;
}

.service-platform .col-set h5 {
	margin-bottom: 20px !important;
	padding: 12px 15px;
	color: #fff;
	text-align: center;
	background: #5a5a5a;
}

.service-platform .col-set p {
	margin: auto;
	text-align: center;
}

/* 各種翻訳サービス */
.service-box-set.feature+.service-platform {
	margin-top: 40px;
}

@media screen and (max-width: 767px) {
	.service-platform .col-set>* {
		display: block;
		min-height: 81px;
		margin-bottom: 20px;
	}

	.service-platform .col-set .mark {
		position: absolute;
		left: 0;
		top: 50%;
		width: 33.333%;
		margin: 0;
		padding-right: 5.5%;
		transform: translateY(-50%);
	}

	.service-platform .col-set h5 {
		margin-left: 33.333%;
		margin-bottom: 10px !important;
		padding: 6px 15px;
		font-size: 1.4rem !important;
	}

	.service-platform .col-set p {
		margin-left: 33.333%;
	}
}

.main .tab.service .tab-nav {
	position: relative;
	max-width: 960px;
	overflow: visible;
}

.main .tab.service .tab-nav::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 0;
	width: 100vw;
	transform: translateX(-50%);
}

.main .tab.service .tab-nav::after {
	height: 10px;
	background: -moz-linear-gradient(top, #fff, rgba(47, 22, 22, 0.12));
	background: -webkit-linear-gradient(top, #fff, rgba(47, 22, 22, 0.12));
	background: linear-gradient(to bottom, #fff, rgba(47, 22, 22, 0.12));
	z-index: 1;
}

.main .tab.service .tab-nav li {
	position: relative;
	padding: 0 2px;
	z-index: 2;
}

.main .tab.service .tab-nav li a {
	box-sizing: border-box;
}

.main .tab.service .tab-nav li:not(.current) a {
	border-bottom: none;
	border-left: none;
}

.main .tab.service .tab-nav li:first-child:not(.current) a {
	border-right: none;
}

.main .tab.service .tab-nav li.current a {
	position: relative;
	background-color: #ffffff !important;
	border: 2px solid #e6e6e6 !important;
	border-bottom: none !important;
	z-index: 3;
}

.main .tab.service .tab-nav li.current a:hover,
.main .tab.service .tab-nav li:not(.current) a:hover {
	opacity: 1;
}

.main .tab.service .tab-content>.row {
	max-width: inherit;
	padding: 0;
}

.main .tab.service .tab-content {
	background: none;
}

.main .tab.service .tab-element {
	padding: 90px 0 40px 0;
}

/* 各種翻訳サービス　*/
.main .tab.service.option {
	margin-bottom: 0;
}

.main .tab.service.option .tab-element {
	padding: 60px 0 0;
}

.main .tab.service.option .tab-element .row {
	padding: 0 20px;
}

.main .tab.service.option .tab-element .cta-section {
	margin-top: 70px;
}

@media screen and (max-width: 1199px),
print {
	.main .tab.service .tab-element {
		padding: 60px 20px 30px 20px;
	}

	.main .tab.service.option {
		margin-bottom: 0;
	}

	.main .tab.service.option .tab-element .row {
		padding: 0 20px;
	}
}

@media screen and (max-width: 767px) {
	.main .tab.service .tab-container {
		margin: 0;
		padding: 0 15px;
	}

	.main .tab.service .tab-element {
		padding: 30px 0;
	}

	.main .tab.service.option .tab-element .row {
		padding: 0 15px;
	}

	.main .tab.service.option .tab-container {
		padding: 0;
	}

	.main .tab.service.option .tab-element .cta-section {
		margin-top: 60px;
	}
}

.main .tab.service.interpreter {
	margin-bottom: 0;
}

.main .tab.service.interpreter .tab-element {
	padding-bottom: 0;
}

@media screen and (max-width: 1199px),
print {
	.main .tab.service.interpreter .cta-section {
		margin-left: -20px;
		margin-right: -20px;
		padding-left: 20px;
		padding-right: 20px;
	}
}

@media screen and (max-width: 767px) {
	.main .tab.service.interpreter .cta-section {
		margin-left: -15px;
		margin-right: -15px;
		padding-left: 15px;
		padding-right: 15px;
	}
}

.img-zoom a {
	position: relative;
	display: block;
	pointer-events: none;
}

@media screen and (max-width: 767px) {
	.img-zoom a {
		pointer-events: auto;
	}

	.img-zoom a::after {
		content: "";
		position: absolute;
		left: 10px;
		bottom: 10px;
		width: 45px;
		height: 45px;
		background: #777 url("../images/common/icon-zoom-white.svg") no-repeat center center;
		background-size: auto 20px;
	}
}

.main .step-contents.service>dl>dt .heading-tag {
	position: static;
	display: inline-block;
	width: auto;
	height: auto;
	margin-right: 30px;
	margin-left: auto;
	background: transparent;
}

.main .step-contents.service>dl>dt .heading-tag div+div {
	margin-left: 10px;
}

.main .step-contents.service>dl>dt .heading-tag>* {
	display: inline-block;
	width: 108px;
	color: #fff;
	font-size: 1.4rem;
	font-weight: normal;
	line-height: 32px;
	text-align: center;
	border-radius: 8px;
}

.main .step-contents.service>dl>dt .heading-tag .customer {
	background: #cc8100;
}

.main .step-contents.service>dl>dt .heading-tag .our {
	background: #664100;
}

@media screen and (max-width: 767px) {
	.main .step-contents.service>dl>dt {
		margin-bottom: 40px;
	}

	.main .step-contents.service>dl>dt .heading-tag {
		position: absolute;
		right: 15px;
		bottom: -40px;
		width: 100%;
		margin: 0 -15px 0 0;
		padding: 10px 15px 0 0;
		text-align: right;
	}

	.main .step-contents.service>dl>dt .heading-tag>* {
		width: 80px;
		font-size: 1.2rem;
		line-height: 24px;
	}
}

.service-flow-tree {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.service-flow-tree .col {
	position: relative;
	width: calc(50% - 44px);
	margin: 0 0 0 44px;
	padding-bottom: 60px;
}

.service-flow-tree .col:last-of-type {
	padding-bottom: 0;
}

.service-flow-tree .col .inner {
	position: relative;
	padding: 30px;
	background-color: #f5f5f5;
	background-image: url("../images/service/translation/bg_flow_tree01.png");
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 100% auto;
}

.service-flow-tree .col:nth-of-type(even) .inner {
	background-image: url("../images/service/translation/bg_flow_tree02.png");
}

.service-flow-tree .col .inner::before {
	content: "";
	position: absolute;
	width: 0;
	height: 0;
	left: -44px;
	top: 50%;
	border-color: transparent;
	border-style: solid;
	border-width: 30px;
	border-left: none;
	border-right: 44px solid #f5f5f5;
	transform: translateY(-50%);
}

.service-flow-tree .col .inner::after {
	content: "";
	position: absolute;
	width: 20px;
	height: 20px;
	left: -54px;
	top: 50%;
	background: #ec9301;
	transform: translateY(-50%);
	z-index: 1;
}

.service-flow-tree .col:nth-child(2) .inner::after {
	background: #d28300;
}

.service-flow-tree .col:nth-child(3) .inner::after {
	background: #bd7600;
}

.service-flow-tree .col:nth-child(4) .inner::after {
	background: #a96a00;
}

.service-flow-tree .col:nth-child(5) .inner::after {
	background: #975f00;
}

.service-flow-tree .col:nth-child(6) .inner::after {
	background: #8b5701;
}

.service-flow-tree .col::after {
	content: "";
	position: absolute;
	left: -45px;
	top: -20px;
	width: 2px;
	height: calc(100% + 20px);
}

.service-flow-tree .col:nth-child(1)::after {
	top: calc(50% - 40px);
	height: 50%;
	background: #ec9301;
	background: -webkit-linear-gradient(#ec9301 0%, #d28300 100%);
	background: -o-linear-gradient(#ec9301 0%, #d28300 100%);
	background: linear-gradient(#ec9301 0%, #d28300 100%);
}

.service-flow-tree .col:nth-child(2)::after {
	background: #e08c00;
	background: -webkit-linear-gradient(#e08c00 0%, #cd8100 100%);
	background: -o-linear-gradient(#e08c00 0%, #cd8100 100%);
	background: linear-gradient(#e08c00 0%, #cd8100 100%);
}

.service-flow-tree .col:nth-child(3)::after {
	background: #bd7600;
	background: #d28300;
	background: -webkit-linear-gradient(#d28300 0%, #bd7600 100%);
	background: -o-linear-gradient(#d28300 0%, #bd7600 100%);
	background: linear-gradient(#d28300 0%, #bd7600 100%);
}

.service-flow-tree .col:nth-child(4)::after {
	background: #a96a00;
	background: #bd7600;
	background: -webkit-linear-gradient(#bd7600 0%, #a96a00 100%);
	background: -o-linear-gradient(#bd7600 0%, #a96a00 100%);
	background: linear-gradient(#bd7600 0%, #a96a00 100%);
}

.service-flow-tree .col:nth-child(5)::after {
	background: #975f00;
	background: #a96a00;
	background: -webkit-linear-gradient(#a96a00 0%, #975f00 100%);
	background: -o-linear-gradient(#a96a00 0%, #975f00 100%);
	background: linear-gradient(#a96a00 0%, #975f00 100%);
}

.service-flow-tree .col:nth-child(6)::after {
	bottom: 50%;
	height: calc(50% + 20px);
	background: #8b5701;
	background: #975f00;
	background: -webkit-linear-gradient(#975f00 0%, #8b5701 100%);
	background: -o-linear-gradient(#975f00 0%, #8b5701 100%);
	background: linear-gradient(#975f00 0%, #8b5701 100%);
}

.service-flow-tree h3 {
	font-size: 2.2rem;
}

.service-flow-tree h3 .number {
	margin-right: 0.5em;
	font-size: 2.09em;
	font-weight: normal;
}

.main .service-flow-tree p:last-child {
	margin-bottom: 0;
}

@media screen and (min-width: 768px),
print {
	.service-flow-tree .col:nth-of-type(even) {
		transform: translateY(50%);
	}

	.service-flow-tree .col:nth-of-type(odd) {
		margin-right: 44px;
		margin-left: 0;
	}

	.service-flow-tree .col:nth-last-child(2)::after {
		display: none;
	}

	.service-flow-tree .col:nth-of-type(odd)::after {
		right: -45px;
		left: auto;
	}

	.service-flow-tree .col:nth-of-type(odd) .inner::before {
		right: -44px;
		left: auto;
		border-left: 44px solid #f5f5f5;
		border-right: none;
	}

	.service-flow-tree .col:nth-of-type(odd) .inner::after {
		right: -54px;
		left: auto;
	}
}

@media screen and (max-width: 767px) {
	.service-flow-tree {
		margin-left: 10px;
	}

	.service-flow-tree .col {
		width: calc(100% - 44px);
		padding-bottom: 30px;
	}

	.service-flow-tree .col:first-of-type::after {
		top: calc(50% - 15px);
		height: calc(50% + 15px);
	}

	.service-flow-tree .col .inner {
		padding: 20px 15px;
	}

	.service-flow-tree h3 {
		font-size: 1.8rem;
	}
}

#service-school-reasons {
	padding: 60px 0 20px 0;
	background: url("../images/service/bg_school_reasons.png") no-repeat left top;
	background-size: cover;
}

#service-school-reasons .service-box-set>* {
	padding: 0;
}

#service-school-reasons .service-box-set .col-set {
	-webkit-align-items: center;
	align-items: center;
	min-height: 0%;
	margin-bottom: 0;
}

#service-school-reasons .service-box-set .col-set .txt-area {
	padding: 10px 30px;
}

#service-school-reasons .service-box-set .col-set .txt-area p {
	margin-bottom: 0;
}

.service-box-title {
	-webkit-align-items: center;
	align-items: center;
	background: url("../images/service/bg_box_ttl.png") no-repeat left bottom;
	background-size: auto 100%;
}

.row .service-box-title.no-gutter {
	margin-bottom: 30px;
}

.service-box-title .txt-area {
	padding: 10px 30px;
}

.service-box-title .txt-area h2:not([class*="heading"]) {
	margin-bottom: 0;
}

/*.service-box-set .clearfix::after{
  content: "";
  display: block;
  clear: both;
}*/

.card_img {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	padding: 40px 0 50px 0;
}

.card_img .card01,
.card_img .card02,
.card_img .card03,
.card_img .card04 {
	display: inline-block;
	margin-right: 0;
}

.card_img .card01,
.card_img .card02 {
	width: 54px;
}

.card_img .card03,
.card_img .card04 {
	width: 50px;
}

.card_img .card05 {
	display: inline-block;
	width: 37px;
	margin-right: 0;
}

@media screen and (max-width: 1199px),
print {
	#service-school-reasons {
		padding-top: 40px;
	}

	#service-school-reasons .service-box-set .col-set .txt-area {
		padding: 5px 20px;
	}

	.row .service-box-title.no-gutter {
		margin-bottom: 20px;
	}

	.service-box-title .txt-area {
		padding: 10px 20px;
	}
}

@media screen and (max-width: 767px) {
	#service-school-reasons {
		padding: 20px 0;
		background: url("../images/service/bg_school_reasons.png") no-repeat left top;
		background-size: cover;
	}

	#service-school-reasons .service-box-set .col-set .col1-2 {
		width: 50%;
		margin-bottom: 0;
	}

	.service-box-title {
		background: none;
	}

	.service-box-title .txt-area {
		-webkit-order: 2;
		order: 2;
		width: 100%;
		padding: 20px 15px;
		background: url("../images/service/bg_box_ttl.png") no-repeat left top;
		background-size: 100% auto;
	}

	.main .col-set.service-box-title .col1-2.txt-area+.col1-2.img-area {
		margin-bottom: 0;
	}
}

section[id^="service-software"] {
	height: 554px;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
}

#service-software-section01 {
	background-image: url(../images/service/software/bg_index01.jpg);
}

#service-software-section02 {
	background-image: url(../images/service/software/bg_index02.jpg);
}

#service-software-section03 {
	background-image: url(../images/service/software/bg_index03.jpg);
}

#service-software-section04 {
	background-image: url(../images/service/software/bg_index04.jpg);
}

#service-software-section05 {
	background-color: #03eab3;
	background-image: url(../images/service/software/bg_index05.jpg);
}

#service-software-section06 {
	background-color: #ebf3f9;
}

#service-software-section07 {
	background-color: #ccccff;
	background-image: url(../images/service/software/bg_index07.jpg);
}

#service-software-section08 {
	background-color: #99ff99;
	background-image: url(../images/service/software/bg_index08.jpg);
}

section[id^="service-software"]>.row {
	top: 50%;
	transform: translateY(-50%);
}

section[id^="service-software"] .col-set {
	-webkit-align-items: center;
	align-items: center;
	margin-bottom: 0;
}

section[id^="service-software"] .txt-area {
	padding: 30px;
	background: #fff;
}

@media screen and (max-width: 1199px),
print {
	section[id^="service-software"] .txt-area {
		padding: 20px;
	}
}

@media screen and (max-width: 767px) {
	section[id^="service-software"] {
		height: auto;
		padding: 30px 0;
	}

	section[id^="service-software"]>.row {
		top: 0;
		transform: translateY(0);
	}

	section[id^="service-software"] .col1-2.img-area {
		-webkit-order: 2;
		order: 2;
		margin-bottom: 0;
		padding: 30px 15px 0 15px;
		text-align: center;
	}

	section[id^="service-software"] .txt-area {
		padding: 15px;
		-webkit-order: 1;
		order: 1;
	}
}

#service-wiki-block04 .service-box {
	min-height: 190px;
}

#service-wiki-block04 .col1-2 .img-zoom img {
	display: block;
	width: 75%;
	margin: -5% auto 0;
}

@media screen and (max-width: 1199px),
print {
	#service-wiki-block04 .col1-2 .img-zoom img {
		display: block;
		width: 80%;
		margin: 0 auto;
	}
}

.main #service-wiki-block06 .col-set .line-adjust0 {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	#service-wiki-block04 .service-box {
		min-height: inherit;
	}

	.main #service-wiki-block06 .col-set .col-set .col1-2 {
		width: 50%;
		margin-bottom: 0;
	}

	.main #service-wiki-block06 .col-set .col-set .col1-2 ul {
		margin-bottom: 0;
	}
}

/* 20200706　*/
.main .tab.service .tab-container .tab-element .txt-box .btn {
	width: 480px;
}

@media screen and (max-width: 767px) {
	.main .tab.service .tab-container .tab-element .txt-box .btn {
		width: 100%;
	}
}

/* ---------- 図版 ---------- */
.main .img-wrapper {
	width: calc(50% - 20px);
}

.main .img-wrapper.center {
	margin: 0 auto;
}

.main .img-wrapper.right {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}

.main .img-border {
	margin-bottom: 0;
	padding: 60px 0;
	border: 1px solid #d3d1d0;
}

.main .img-border img {
	display: block;
	max-width: 90%;
	margin: auto;
}

@media screen and (max-width: 767px) {
	.main .img-wrapper {
		width: 100%;
	}

	.main .img-border {
		padding: 30px 0;
		border: 1px solid #d3d1d0;
	}

	.main .img-border img {
		display: block;
		width: 90%;
		margin: auto;
	}
}

/* --------------------------------------------
	お問い合わせ
---------------------------------------------- */
.main .contact-content h2 {
	margin-bottom: 20px;
}

.main .contact-content .txt-red {
	color: #ea0000;
}

.main .contact-content .dl-panel {
	height: inherit;
}

.main .contact-content .dl-panel dl {
	height: inherit;
	margin-top: 30px;
	background: url(../images/contact/bg.png) no-repeat center;
	background-size: cover;
}



.main .contact-content .dl-panel dl::before {
	display: none;
}

.main .contact-content .dl-panel dl:first-child,
.main .contact-content .dl-panel dl:nth-child(2) {
	margin-top: 0;
}

.main .contact-content .dl-panel dt,
.main .contact-content .dl-panel dt:last-of-type {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 100%;
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
}

.main .contact-content .dl-panel dt span,
.main .contact-content .dl-panel dt:last-of-type span {
	display: block;
	font-size: 1.6rem;
	font-weight: 500;
}

.main .contact-content .dl-panel dt.auto-h {
	height: auto;
	padding: 28px 20px 26px !important;
}

.main .contact-content .dl-panel dd {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 100%;
	height: inherit;
	min-height: 146px;
	padding: 40px 30px !important;
	background: url(../images/contact/bg.png) no-repeat center;
	background-size: cover;
}

.main .contact-content .dl-panel dt.auto-h+dd {
	height: 180px;
}

.main .contact-content.contact-other .dl-panel dd {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	height: 210px;
}

/* 20200110 */
.main .contact-content.content_tel_block .dl-panel dt {
	background: #eb9300;
	border: 1px solid #eb9300;
}

.main .contact-content.content_tel_block .dl-panel dl p {
	margin-bottom: 0;
}

.main .contact-content.content_tel_block .dl-panel .tel-num-list {
	margin-bottom: 0;
}

.main .contact-content.content_tel_block .dl-panel .tel-num-list li {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}

.main .contact-content.content_tel_block .dl-panel .tel-num-list li a {
	display: block;
	font-size: 40px;
}

/* 20200110 */
.main .btn-contactform {
	/*width: 360px;*/
	width: 385px;
	min-height: 66px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.main .btn-contactform a {
	position: relative;
	margin: 0;
	padding: 18px 20px 16px;
	background: #fff;
	border: 2px solid #eb9300;
	font-size: 1.6rem;
	text-align: center;
	-webkit-transition: background 0.2s linear;
	transition: background 0.2s linear;
}

.main .btn-contactform--orange,
.main .btn-gofaq {
	margin-top: 32px;
}

/* 220802 */
.main .contact-content .dl-panel.customlayout_01 {}

.main .contact-content .dl-panel.customlayout_01 .col_left {}

.main .contact-content .dl-panel.customlayout_01 .col_left_wrap dl:nth-child(2) {
	margin-top: 30px;
}

/* .main .contact-content .dl-panel.customlayout_01 .col_right {
	height: 500px;
} */

@media screen and (max-width: 767px) {
	.main .btn-contactform--orange {
		margin-top: 0px;
	}
}

.main .dl-panel .contact-flex-item {
	display: flex;
	flex-direction: column;
}

.main .contact-flex-item dd {
	flex-grow: 1;
}

.main .btn-contactform--orange a {
	color: #fff;
	background: #eb9300;
	border: none;
	border: 2px solid #eb9300;
	transition: opacity 0.3s;
}

.main .btn-contactform--orange a:hover {
	opacity: 0.8;
}

.main .btn-contactform a::after {
	display: none;
}

.main .btn-contactform a span {
	display: inline-block;
	position: relative;
	padding-left: 35px;
	box-sizing: border-box;
}

.main .btn-contactform a span::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 26px;
	height: 17px;
	margin: auto;
	background: url(../images/common/icon-contact-brown.svg) no-repeat center;
	background-size: 26px 17px;
	backface-visibility: hidden;
	content: "";
}

.main .btn-contactform a:hover {
	background: #eb9300;
	color: #fff;
}

.main .btn-contactform a:hover span::before {
	background: url(../images/common/icon-contact.svg) no-repeat center;
	background-size: 26px 17px;
}

.main .btn-contactform.auto-w {
	width: auto;
}

.main .btn-contactform+.btn-contactform {
	margin-top: 10px;
}

.main .tel-num-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
	height: 120px;
	font-size: 2.2rem;
	font-weight: 700;
}

.main .tel-num-list li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	margin-right: 10px;
	margin-bottom: 0;
	padding-left: 0;
}

.main .tel-num-list li::before {
	display: none !important;
}

.main .tel-num-list li a {
	text-decoration: none;
}

.main .tel-num-list.center {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}

.main .label-area {
	display: inline-block;
	width: 60px;
	margin-right: 10px;
	padding: 5px 0;
	background: #221814;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 500;
	text-align: center;
}

.main .tel-num {
	position: relative;
	display: table;
	margin-top: 35px;
	font-size: 3.2rem;
	font-weight: 700;
	text-align: center;
}

.main .tel-num a {
	text-decoration: none;
}

.main .tel-icon {
	position: relative;
	padding-left: 30px;
}

.main .tel-icon::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 18px;
	height: 37px;
	margin: auto;
	background: url(../images/common/icon-tel.svg) no-repeat center;
	background-size: 18px auto;
	-webkit-transform: rotate(-15deg);
	transform: rotate(-15deg);
	content: "";
}

@media screen and (max-width: 1160px) {
	.main .tel-num-list {
		font-size: 2rem;
	}

	.main .label-area {
		width: 50px;
		font-size: 1.2rem;
	}
}


@media screen and (max-width: 1080px) {
	.main .tel-num-list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-lines: multiple;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		-webkit-box-pack: justify;
		-webkit-justify-content: center;
		-ms-flex-pack: justify;
		justify-content: center;
		height: 120px;
	}

	.main .tel-num-list li {
		width: 100%;
	}

	.main .btn-contactform {
		max-width: 360px;
		width: 100%;
	}
}

/* .col_right_wrap {
	background: url(../images/contact/bg.png) no-repeat center;
} */


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

	.main .contact-content .dl-panel dt,
	.main .contact-content .dl-panel dt:last-of-type {
		display: block;
		height: auto;
		padding: 20px;
		font-size: 1.8vw;
	}

	.main .p-sitemap h3 {
		font-size: 2.3vw;
	}
}

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

	.main .contact-content .dl-panel dt,
	.main .contact-content .dl-panel dt:last-of-type {
		height: auto;
		min-height: 45px;
		padding: 15px !important;
		font-size: 1.6rem;
	}

	.main .contact-content .dl-panel dt span,
	.main .contact-content .dl-panel dt:last-of-type span {
		font-size: 1.4rem;
	}

	.main .contact-content .dl-panel dt.auto-h {
		height: auto;
		padding: 10px !important;
	}

	.main .contact-content .dl-panel dd {
		padding: 30px 20px !important;
	}

	.main .contact-content .dl-panel dt.auto-h+dd {
		height: auto;
	}

	.main .contact-content.contact-other .dl-panel dd {
		height: auto;
	}

	.main .contact-content.content_tel_block .dl-panel .tel-num-list li a {
		font-size: 40px;
		margin: 20px 0;
	}

	.main .tel-num-list {
		-webkit-box-pack: justify;
		-webkit-justify-content: space-around;
		-ms-flex-pack: justify;
		justify-content: space-around;
		height: auto;
	}

	.main .tel-num-list li:nth-child(3),
	.main .tel-num-list li:nth-child(4) {
		margin-top: 10px;
	}

	.main .tel-num-list li {
		width: calc(50% - 10px);
	}

	.main .btn-contactform {
		width: 100%;
		max-width: 360px;
		height: auto;
		min-height: 60px;
	}

	.main .btn-contactform a {
		line-height: 1.35;
	}

	.main .btn-contactform a span {
		text-align: left;
	}

	.main .btn-contactform.auto-w {
		width: 100%;
		height: auto;
	}

	.main .tel-num {
		margin-top: 25px;
		font-size: 2.8rem;
	}

	.main .tel-icon {
		padding-left: 25px;
	}

	.main .tel-icon::before {
		width: 16px;
		height: 35px;
		background-size: 16px auto;
	}

	/* 20200110 */
	.main .contact-content.content_tel_block .dl-panel dl {
		width: 100%;
	}
}

@media screen and (max-width: 540px) {
	.main .tel-num-list li {
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
	}

	.main .tel-num-list li:nth-child(3),
	.main .tel-num-list li:nth-child(4) {
		margin-top: 0;
	}

	.main .tel-num-list li:last-child {
		margin-bottom: 0;
	}
}

/* 20200408 */
.content_tel_block__text-center {
	text-align: center;
}

.main .contact-content.content_tel_block .dl-panel dl .content_tel_block__text-bm {
	margin: 0 0 30px;
}

/* ---------------------------------------------
	検索結果
--------------------------------------------- */
.search-results form#cse-search-box {
	margin-bottom: 30px;
}

.search-results .gsc-control-cse {
	padding: 1em 0 !important;
}

.search-results .gsc-above-wrapper-area {
	border-bottom: none;
}

.search-results .gsc-above-wrapper-area table td {
	padding-right: 0;
	padding: 10px 0;
	border: none;
}

.search-results .gsc-above-wrapper-area table td .gsc-result-info {
	padding: 0 8px;
}

.search-results .gsc-resultsbox-visible table td {
	border-top: none;
}

.search-results .gsc-selected-option-container {
	max-width: none;
}

@media screen and (max-width: 767px) {
	.search-results form#cse-search-box {
		margin-bottom: 15px;
	}

	.searchbox input[type="text"] {
		height: 45px;
		/* padding: 10px 15px; */
		padding: 10px 70px 10px 15px;
		border-radius: 6px;
		box-shadow: none;
		font-size: 1.4rem;
		-moz-appearance: none;
		-webkit-appearance: none;
		appearance: none;
	}

	.searchbox input[type="submit"] {
		width: 60px;
		height: 45px;
		font-size: 1.4rem;
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
		border-top-right-radius: 6px;
		border-bottom-right-radius: 6px;
	}
}

/* ---------------------------------------------
	サイトマップ
--------------------------------------------- */
.main .p-sitemap .col-set+.col-set {
	margin-top: 30px;
}

.main .p-sitemap .col-set__inner {
	padding: 0 30px;
}

.main .p-sitemap a {
	padding-right: 22px;
	text-decoration: none;
}

.main .p-sitemap a:hover {
	text-decoration: underline;
}

.main .p-sitemap h3 {
	position: relative;
	margin-bottom: 20px;
}

.main .p-sitemap h3 a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 29px 30px 25px;
	background: #f5f5f5;
}

.main .p-sitemap h3 a:hover {
	text-decoration: none;
}

.main .p-sitemap h3 span {
	position: relative;
	padding-right: 20px;
	color: #221814;
	text-decoration: none;
}

.main .p-sitemap h3 span::before {
	display: block;
	position: absolute;
	top: 10px;
	right: 0;
	width: 14px;
	height: 10px;
	margin: auto;
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: 14px 10px;
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	transform: rotate(-90deg);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .p-sitemap h3 a:hover span::before {
	-webkit-transform: rotate(-90deg) translateY(3px);
	transform: rotate(-90deg) translateY(3px);
}

.main .p-sitemap dl dt {
	position: relative;
	width: 100%;
	margin-bottom: 15px;
	padding-bottom: 15px !important;
	border-bottom: 1px solid rgba(34, 24, 20, 0.2);
	font-weight: 700;
}

.main .p-sitemap dl dt::before {
	display: block;
	position: absolute;
	right: -20px;
	width: 10px;
	height: 10px;
	border-right: 1px solid #333;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	content: "";
}

.main .p-sitemap dl dd {
	width: 100%;
	padding-left: 0;
}

.main .p-sitemap ul li {
	padding-left: 0;
}

.main .p-sitemap ul li::before {
	display: none;
}

.main .p-sitemap a.icon-window::before {
	top: auto;
	right: 0;
	bottom: 2px;
}

.main .p-sitemap .link-arrow {
	display: inline-block;
	position: relative;
}

.main .p-sitemap .link-arrow::before {
	display: block;
	position: absolute;
	top: 10px;
	right: 10px;
	width: 10px;
	height: 10px;
	margin: auto;
	border-right: 1px solid #333;
	border-bottom: 1px solid #333;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
}

.main .p-sitemap .link-arrow:hover {
	text-decoration: underline;
}

.main .p-sitemap .link-arrow:hover::before {
	-webkit-transform: rotate(-45deg) translate(3px, 3px);
	transform: rotate(-45deg) translate(3px, 3px);
}

/* 個人情報保護で使用中 */
.main .table-layout {
	table-layout: fixed;
}

/* 個人情報保護で使用中 */

.main .word-break {
	padding-right: 20px;
	word-break: break-all;
}

.main ol li>ul li.window {
	padding-left: 1.2em;
}

@media screen and (max-width: 980px) {
	.main .p-sitemap h3 {
		font-size: 2.3vw;
	}
}

@media screen and (max-width: 767px) {
	.main .p-sitemap .col-set+.col-set {
		margin-top: 20px;
	}

	.main .p-sitemap .col2-3 {
		margin-bottom: 20px;
	}

	.main .p-sitemap .col-set__inner {
		padding: 0 20px;
	}

	.main .p-sitemap h3 {
		font-size: 1.8rem;
	}

	.main .p-sitemap h3 a {
		padding: 17px 20px 15px;
	}

	.main .p-sitemap .link-arrow::before {
		top: 8px;
	}
}

/* ---------------------------------------------
	404
--------------------------------------------- */
.main.not-found {
	position: relative;
	background: url(../images/common/404.jpg) no-repeat center;
	background-size: cover;
}

.main.not-found h2 {
	margin: 0 0 30px;
	padding: 0;
	font-size: 11rem;
	color: #919191;
	text-align: center;
	line-height: 1;
	border-left: 0px;
}

.main.not-found h2::after {
	display: none !important;
}

.main.not-found h2 span {
	display: block;
	font-size: 2.2rem;
	font-weight: normal;
}

.main.not-found .txt-box {
	margin-bottom: 80px;
}

.main.not-found p {
	text-align: center;
}

.main.not-found .btn:first-of-type {
	margin-bottom: 30px;
}

/* adobe bnr */
.abode-bnr-area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	width: 100%;
	-webkit-box-lines: multiple;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.abode-bnr-area p {
	width: calc(100% - 200px);
}

.adobe-bnr {
	width: 200px;
	padding-left: 30px;
}

.adobe-bnr dl {
	width: 100%;
	max-width: 170px;
}

.adobe-bnr dl dt {
	width: 100%;
	margin-bottom: 5px;
	padding: 0;
}

.adobe-bnr dl dt img {
	display: block;
}

.adobe-bnr dl dd {
	width: 100%;
	padding: 0;
}

@media screen and (max-width: 476px) {
	.abode-bnr-area p {
		width: calc(100% - 120px);
	}

	.adobe-bnr {
		width: 120px;
		padding-left: 15px;
	}
}

/*# sourceMappingURL=common.css.map */

/*# sourceMappingURL=common.css.map */

.contact__corporate-business {
	width: 100%;
}

.main .contact-content .dl-panel .contact__corporate-business dd {
	width: 50%;
	margin: 0 auto;
	background: none;
}
















/* ---------------------------------------------
	220207　本番・テスト環境統合
--------------------------------------------- */
[class*="block-"] a {
	text-decoration: underline;
	color: #221814;
	outline: none;
	-moz-transition: color 0.3s cubic-bezier(0.17, 0.22, 0.71, 0.83);
	-webkit-transition: color 0.3s cubic-bezier(0.17, 0.22, 0.71, 0.83);
	transition: color 0.3s cubic-bezier(0.17, 0.22, 0.71, 0.83);
}

[class*="block-"] .btn a {
	position: relative;
	display: block;
	padding: 13px 35px 12px 20px;
	border: 1px solid #7d7d7d;
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

[class*="block-"] .btn a::after {
	display: block;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: 10px;
	height: 7px;
	margin: auto;
	transform: rotate(-90deg);
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: contain;
	content: "";
}

[class*="block-"] .btn a:hover {
	background: #777;
	color: #fff !important;
}

[class*="block-"] .btn a:hover::after {
	transform: rotate(-90deg);
	background: url(../images/common/arrow-white.svg) no-repeat center;
	background-size: contain;
}


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

	[class*="block-"] .btn a {
		padding: 10px 15px 10px 15px;
	}

	[class*="block-"] .btn a::after {
		right: 15px;
	}
}



.headingarea.service.translation.index .headingarea__tit .block-btn {
	margin-top: 20px;
}

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

	/* 21.10.29 ご利用案内のボタンなど追加 */
	.headingarea.service.translation.index .headingarea__tit .block-btn .col-set {
		font-size: 0;
		margin: 0 0 0 -5px;
	}

	.headingarea.service.translation.index .headingarea__tit .block-btn .col-set .col1-2 {
		display: inline-block;
		font-size: 14px;
		width: calc(50% - 10px);
		margin: 0 5px;
	}

}







/* メガメニューリバイス */
.nav-service-relative {
	margin-top: 6px !important;
}

.nav-service-relative__header {
	position: relative !important;
	top: initial !important;
	right: initial !important;
	padding: 8px 0;
	border-top: 1px solid #d3d1d0;
	border-bottom: 1px solid #d3d1d0;
	display: block;
	width: calc(100% - 30px);
}

.nav-service-relative__header+* {
	margin-top: 41px;
}

.nav-service-relative .show-sp {
	display: flex;
	flex-wrap: wrap;
}

.nav-service-relative__list {
	margin-top: 20px !important;
}

.nav-service-relative__list li:nth-child(n + 7) {
	margin-top: 20px;
}


.nav-service-relative__list {
	padding-right: 3.333%;
}


.l-nav__megamenu .inner .col-set .col1-6 a {
	position: relative;
	color: #221814;
	text-decoration: none;
	display: table;
	position: relative;
	padding-right: 15px;
}

.nav-service-relative__image {
	padding-right: 0px !important;
	transition: opacity 0.3s;
	display: block !important;
}

.nav-service-relative__image-image {
	height: 70px;
	display: block;
	width: 100%;
	object-fit: cover;
	object-position: center center;
}

.nav-service-relative__link {
	position: relative !important;
	margin-top: 12px;
	font-size: 13px;
}

.l-nav__megamenu .inner .col-set .col1-6 a.icon-window span {
	position: relative;
}

.l-nav__megamenu .inner .col-set .col1-6 a.icon-window {
	position: relative;
}

.l-nav__megamenu .inner .col-set .col1-6 a.icon-window::before {
	display: block;
	position: absolute;
	top: 0;
	right: -10px;
	bottom: 0;
	width: 17px;
	height: 13px;
	margin: auto;
	border: none;
	background: url(../images/common/icon-window.svg) no-repeat center;
	background-size: 17px 13px;
	transform: rotate(0);
	content: "";
	transition: all 0.2s linear;
}

.l-nav__megamenu .inner .col-set .col1-6:hover a::before {
	right: -13px;
}

.icon-arrow::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 10px;
	height: 10px;
	margin: auto;
	border-top: 1px solid #333;
	border-right: 1px solid #333;
	transform: rotate(45deg);
	transition: all 0.2s linear;
	content: "";
	background-color: #fff;
	background: none;
}

.l-nav__megamenu .inner .col-set .col1-6:hover .icon-arrow::before {
	right: -6px !important;
}

.l-nav__megamenu .inner .col-set .col1-6:hover .nav-service-relative__image {
	opacity: 0.7;
}

.nav-service-header-3 {
	position: relative;
}

.nav-service-header-3+ul {
	margin-top: 16px;
}

.nav-service-header-3-wrapper+.nav-service-header-3-wrapper {
	margin-top: 16px;
}

.nav-service-header-3 a {
	padding: 6px 16px;
	background-color: #f0f0f0;
	display: block;
	width: 100%;
}

.nav-service-header-3 a::before {
	display: none !important;
}

.nav-service-header-3::before {
	display: block;
	position: absolute;
	top: 0;
	right: 16px;
	bottom: 0;
	width: 14px;
	height: 10px;
	margin: auto;
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: 14px 10px;
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	transform: rotate(-90deg);
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	content: "";
	z-index: 10;
}

.nav-service-header-3:hover::before {
	right: 13px;
}

.l-nav__megamenu .inner .col-set .col1-6:hover a::before {
	right: -13px;
}

.magamenu-service-height-specification-inner {
	padding: 15px 3.333% 0 !important;
}

.magamenu-service-height-specification-col-sel {
	margin-top: 10px !important;
	padding-bottom: 10px !important;
}


@media screen and (min-width: 1261px) {

	.l-nav__megamenu .inner .l-nav__h3 .show-pc,
	.l-nav__megamenu .inner h3 .show-pc {
		display: inline-block;
	}

	.l-nav__megamenu .inner .l-nav__h3 .subtitle,
	.l-nav__megamenu .inner h3 .subtitle {
		margin-left: 20px;
		font-size: 1.8rem;
		font-weight: 500;
		color: #6a6a6a;
	}
}

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

	.l-nav__megamenu .inner .l-nav__h3 .show-pc,
	.l-nav__megamenu .inner h3 .show-pc {
		display: none;
	}

	.nav-service-relative {
		margin-top: 0px !important;
	}

	.nav-service-relative__header {
		position: relative !important;
		top: 0px !important;
		right: 0vw !important;
		padding: 16px 0 16px 25px;
		font-size: 1.5rem !important;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		font-size: 1.8rem;
		font-weight: 700;
		text-align: left;
		background: #e5e5e5;
		margin-right: 0;
		width: 100%;
		height: 55px;
		background-color: #f0f0f0 !important;
		border-top: 0;
		border-bottom: 0;
	}

	.nav-service-header-3 {
		border-top: 1px solid #d3d1d0 !important;
	}

	.nav-service-header-3 a {
		border-top: 0 !important;
	}

	.icon-arrow::before {
		display: none;
	}

	.icon-arrow span {
		position: relative;
	}

	.icon-arrow span::before {
		display: none;
	}

	.nav-service-relative__list li:nth-child(n + 7) {
		margin-top: 0;
	}

	.nav-service-relative__header+* {
		margin-top: 0px;
	}

	.nav-service-relative__header .btn-plus {
		background: #cccccc !important;
	}

	.l-nav__megamenu .inner .col-set .col1-6 a.icon-window::before {
		display: none !important;
	}

	.l-nav__megamenu .inner .col-set .col1-6 a.icon-window span::before {
		display: block;
		position: absolute;
		top: 0;
		right: -10px;
		bottom: 0;
		width: 17px;
		height: 13px;
		margin: auto;
		border: none;
		background: url(../images/common/icon-window.svg) no-repeat center;
		background-size: 17px 13px;
		transform: rotate(0);
		content: "";
		transition: all 0.2s linear;
	}

	.nav-service-relative__link {
		margin-top: 0;
		font-size: 13px;
	}

	.nav-service-relative__image {
		display: none !important;
	}

	.nav-service-relative .nav-service-relative__list {
		display: none;
		width: 100%;
		height: auto;
		background: #cccccc;
	}

	.l-nav__megamenu .inner .col-set .col1-6 {
		margin-right: 0 !important;
		width: 100% !important;
	}

	.l-nav__megamenu .inner .col-set .col1-6 a {
		display: block;
		width: 100%;
		font-size: 1.5rem !important;
		padding-right: 15px;
		margin-right: 0;
	}

	.l-nav__megamenu .inner .col-set .col1-6 a.icon-window span::before {
		display: block;
		position: absolute;
		top: 0;
		right: -25px;
		bottom: 0;
		width: 17px;
		height: 13px;
		margin: auto;
		border: none;
		background: url(../images/common/icon-window.svg) no-repeat center;
		background-size: 17px 13px;
		-webkit-transform: rotate(0);
		-moz-transform: rotate(0);
		transform: rotate(0);
		content: "";
	}

	.nav-service-relative__list li {
		border-bottom: 1px solid rgba(34, 24, 20, 0.3);
	}

	.nav-service-header-3:first-child {
		border-top: 0;
	}

	.nav-service-header-3 {
		background-color: #f0f0f0;
		border-top: 1px solid rgba(34, 24, 20, 0.3);
	}

	.nav-service-header-3::before {
		display: none;
	}

	.nav-service-header-3+ul {
		margin-top: 0;
	}

	.nav-service-header-3-wrapper:last-child {
		border-bottom: 1px solid rgba(34, 24, 20, 0.3) !important;
	}

	.nav-service-header-3-wrapper+.nav-service-header-3-wrapper {
		margin-top: 0;
	}

	.magamenu-service-height-specification-inner {
		padding: 0 !important;
	}

	.nav-service-relative__list {
		margin-top: 0 !important;
	}

	.magamenu-service-height-specification-col-sel {
		margin-top: 0px !important;
		padding-bottom: 0px !important;
	}

	.col1-3-no-border {
		border-bottom: 0 !important;
	}
}


/* 211223　メガメニュー調整 */

@media screen and (min-width: 1081px) {
	.l-nav__megamenu .inner {
		padding-top: 25px !important;
		padding-bottom: 25px !important;
	}
}

@media screen and (min-width: 1261px) {
	.nav-service-header-3+ul {
		margin-top: 12px;
	}

	.magamenu-service-height-specification-col-sel {
		padding-bottom: 6px !important;
	}
}





/* Gナビー電話・メールアイコン */
/* body .l-header .l-nav__contact a span::before {
	width: 22px;
	height: 13px;
	background: url(/assets/images/common/icon-tel-contact.svg) no-repeat center;
}

body .l-nav__sub .navtel[class] {
	display: none;
}

/* @media screen and (max-width: 1080px) {
	body .l-header .btn-contact a span::before {
		background: url(/assets/images/common/icon-tel-contact.svg) no-repeat center;
		background-size: 22px 13px;
		width: 22px;
		height: 13px;
	}

	body .l-nav__sub .navtel {
		display: block;
	}
} */

/* @media screen and (max-width: 767px) {
	body .l-header .btn-contact a span::before {
		width: 22px;
		height: 13px;
	}
} */ */



/* 220207　スライダー調整 */
#mainvisual {
	background: #f5f5f5;
	min-height: 550px;
}

.l-mainvisual-top .main-slider .col-set {
	visibility: hidden;
	opacity: 0;
}

.l-mainvisual-top .main-slider .col-set.slick-initialized {
	visibility: inherit;
	opacity: 1;
}

.l-mainvisual-top .slider-container,
.l-mainvisual-top .main-slider .col-set,
.l-mainvisual-top .slick-list,
.l-mainvisual-top .slick-track,
.l-mainvisual-top .main-slider {
	height: 100%;
}

@media screen and (min-width: 768px) {
	.l-mainvisual-top .main-slider .col-set .col1-1.slick-slide[class] {
		height: 100%;
	}
}







/* =====================================
 * メガドロップメニューの高さ調整
 * ================================== */
.l-nav__megamenu {
	padding-bottom: 0;
}

@media screen and (min-width: 1261px) {
	.l-nav__megamenu .inner[class] {
		padding-top: 20px !important;
		padding-bottom: 10px !important;
	}
}

.l-nav__megamenu .inner .l-nav__h2,
.l-nav__megamenu .inner h2 {
	font-size: 2rem;
}

@media screen and (min-width: 1261px) {
	.nav-service-relative__header {
		border: none;
		padding: 0;
	}
}


@media screen and (min-width: 1261px) {

	.l-nav__megamenu .inner .l-nav__h3 .subtitle,
	.l-nav__megamenu .inner h3 .subtitle {
		font-size: 1.3rem;
	}
}

.l-nav__megamenu .inner .l-nav__h3,
.l-nav__megamenu .inner h3,
.l-nav__megamenu .inner .l-nav__h2 span,
.l-nav__megamenu .inner h2 span {
	font-size: 1.5rem;
}

.nav-service-header-3::before,
.l-nav__megamenu .inner .l-nav__h3 a:before,
.l-nav__megamenu .inner h3 a::before {
	background-size: 12px 8px;
}

@media screen and (min-width: 1261px) {
	.nav-service-header-3+ul {
		margin-top: 8px;
	}
}

.l-nav__megamenu .inner .col-set .col1-2 h3,
.l-nav__megamenu .inner .col-set .col1-3 h3,
.l-nav__megamenu .inner .col-set .col1-4 h3 {
	font-size: 1.5rem;
}

.nav-service-header-3 a {
	padding-top: 2px;
	padding-bottom: 2px;
}

.l-nav__megamenu .sub-menu li a {
	font-size: 1.4rem;
}


@media screen and (min-width: 1261px) {
	.l-nav__megamenu .inner .col-set[class] {
		padding-bottom: 10px;
	}
}

@media screen and (min-width: 1261px) {
	.nav-service-relative__list[class] {
		margin-top: 8px !important;
	}
}



.nav-service-relative__list[class] li:nth-child(n + 7) {
	margin-top: 10px;
}

@media screen and (min-width: 1261px) {
	.l-nav__megamenu .sub-menu .nav-service-relative__link[class] {
		font-size: 1.2rem;
		margin-top: 4px;
	}
}





/* =====================================
 * メガドロップメニュー サービス　外部ページリンクのホバー表示
 * ================================== */
@media screen and (min-width: 1081px) {
	.l-nav__megamenu .inner .col-set .col1-6 {
		position: relative;
	}

	.l-nav__megamenu .inner .col-set .col1-6:hover .nav-service-relative__image[target="_blank"] {
		position: inherit;
	}


	.l-nav__megamenu .inner .col-set .col1-6 .nav-service-relative__image[target="_blank"][href*="http"]::before,
	.l-nav__megamenu .inner .col-set .col1-6 .nav-service-relative__image[target="_blank"][href*="http"]::after {
		width: 100%;
		display: block;

		position: absolute;
		z-index: 1;
		left: 0;
		opacity: 0;
	}

	.l-nav__megamenu .inner .col-set .col1-6 .nav-service-relative__image[target="_blank"][href*="http"]::after {
		content: "外部のページに遷移します";

		text-align: center;
		font-size: 1.2rem;
		font-weight: bold;
		color: #fff;

		top: 50%;
		transform: translateY(-50%);

	}

	.l-nav__megamenu .inner .col-set .col1-6 .nav-service-relative__image[target="_blank"][href*="http"]::before {
		content: "";
		background-color: rgba(0, 0, 0, 0.5);
		top: 0;
		height: 100%;
	}

	.l-nav__megamenu .inner .col-set .col1-6:hover .nav-service-relative__image[target="_blank"][href*="http"]::before,
	.l-nav__megamenu .inner .col-set .col1-6:hover .nav-service-relative__image[target="_blank"][href*="http"]::after {
		opacity: 1;
	}
}

@media screen and (min-width: 1081px) and (max-width: 1260px) {
	.l-nav__megamenu .inner .col-set .col1-6 .nav-service-relative__image[target="_blank"][href*="http"]::after {
		font-size: 1rem;
	}
}


/* 220817追加 */
.col1-2.col_right_wrap {
	background-image: url(../images/contact/bg.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.main .contact-content .dl-panel .col_right_wrap dl {
	background: none;
}

.main .contact-content .dl-panel .col_right_wrap dd {
	background: none;
	margin-top: 80px;
}

@media screen and (max-width: 767px) {
	.main .contact-content .dl-panel .col_right_wrap dd {
		margin-top: 0;
	}
}


/* =====================================
 * グローバルナビ改修
 * ================================== */
/* 230221追加 */
.nav-service-header-br-md {
	display: none;
}

@media screen and (max-width: 767px) {
	.nav-service-header-font-size-small-sp {
		font-size: 1.2rem;
	}
}

@media screen and (min-width: 1080px) {
	.l-nav__megamenu .sub-menu li a {
		font-size: 12px;
	}
}



@media (min-width: 1080px) and (max-width: 1260px) {
	.nav-service-relative__header {
		border: none;
	}

	.l-nav__megamenu .inner .l-nav__h3 .subtitle,
	.l-nav__megamenu .inner h3 .subtitle {
		margin-left: 20px;
		font-weight: 500;
		font-size: 1.3rem;
		color: #6a6a6a;
	}

	.l-nav__megamenu .inner .l-nav__h3 .show-pc,
	.l-nav__megamenu .inner h3 .show-pc {
		display: inline-block;
	}

	.nav-service-header-br-md {
		display: block;
	}

	.nav-service-relative__list[class] {
		margin-top: 8px !important;
	}
}




/* =====================================
 * 当社の強み 改修
 * ================================== */
/* 230301追加 */
.inline-block-title {
	line-height: 1.125;
	font-size: 16px;
	display: inline-block;
}

.inline-block-title+* {
	margin-top: 8px;
}

.inline-block-title+.inline-block-title {
	margin-top: 0;
	margin-left: 4px;
}

.inline-block-title .h3-little {
	font-size: 17px;
	display: block;
}

.inline-block-title .h3-little+* {
	margin-top: 8px;
}

.inline-block-title .h3-usually {
	line-height: 1.125;
	font-size: 30px;
	font-weight: 700;
	display: block;
}

.inline-block-title .h3-normal {
	font-size: 40px;
	font-weight: 700;
	display: block;
}

.inline-block-title .h3-big {
	font-size: 80px;
	padding: 10px 0;
}

@media screen and (max-width: 1080px) {
	.inline-block-title {
		display: block;
	}

	.inline-block-title+.inline-block-title {
		line-height: 1;
	}

	.inline-block-title+* {
		margin-top: 8px;
	}

	.inline-block-title .h3-usually {
		display: inline-block;
	}

	.inline-block-title+.inline-block-title {
		margin-left: 0;
	}

	.inline-block-title .h3-little {
		font-size: 14px;
	}

	.inline-block-title .h3-normal,
	.inline-block-title .h3-usually {
		font-size: 24px;
		padding-bottom: 0;
	}

	.inline-block-title .h3-big {
		font-size: 60px;
	}
}

/* 240214追加 */

.main .corporate-strength-section .strength01 .txt-area .h3-subtitle {
	font-size: 20px;
	font-weight: bold;
	margin-left: -4px;
}
@media screen and (max-width: 1080px) {
	.main .corporate-strength-section .strength01 .txt-area .h3-subtitle {
		margin-top: 10px;
		display: inline-block;
	}
}



/* =====================================
 * トップページスライダー 改修
 * ================================== */
/* 230301追加 */
#mainvisual {
	min-height: 650px;
}

.mv-slider {
	position: relative;
	margin: 0;
	padding: 0;
	height: 100%;
}

.mv-slider-item {
	position: relative;
}

.mv-slider-item-cover {
	content: "";
	display: block;
	max-width: 520px;
	max-height: 210px;
	z-index: 1;
	position: absolute;
	top: 0;
	left: 0;
}

.mv-slider-item.slick-active .mv-slider-item-img img {
	animation: fadezoom 8s 0s forwards;
}

.mv-slider-item-text {
	position: relative;
	z-index: 10;
}

.mv-slider-item-text-inner {
	position: relative;
	z-index: 10;
	max-width: calc(1260px + 40px);
	margin: 0 auto;
	padding-top: 120px;
	padding-left: 20px;
	padding-right: 20px;
}

.mv-slider-item-catch {
	font-family: 'Noto Serif JP', serif;
	font-size: 5rem;
	line-height: 1.25;
}

.mv-slider-item-catch+* {
	margin-top: 1.25rem;
}

.mv-slider-item-desc {
	font-family: 'Noto Serif JP', serif;
	font-weight: bold;
}

.mv-slider-item-btn {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	margin-top: 440px;
	padding-left: 20px;
	padding-right: 20px;
}

.mv-slider-item-btn a {
	width: 240px;
	position: relative;
	display: block;
	padding: 13px 35px 12px 20px;

	color: #221814;
	border: 1px solid #7d7d7d;
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
}

.mv-slider-item-btn a:after {
	display: block;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: 10px;
	height: 7px;
	margin: auto;
	transform: rotate(-90deg);
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: contain;
	content: "";
}

.mv-slider-item-btn a:hover {
	background: #777;
	color: #fff !important;
}

.mv-slider-item-btn a:hover::after {
	background: url(../images/common/arrow-white.svg) no-repeat center;
}

.mv-slider-item-img,
.mv-slider-item-img picture {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.mv-slider-item-img img {
	object-fit: cover;
	height: 100%;
	width: 100%;

}


@keyframes fadezoom {
	0% {
		transform: scale(1.1);
	}

	100% {
		transform: scale(1);
	}
}

@media screen and (max-width: 767px) {
	.main .top-section01 .scroll-bar {
		top: -76px;
	}

	.main .top-section01 .scroll-bar.animation::after {
		height: 56px;
	}

	#mainvisual[id] {
		min-height: 600px;
	}

	.mv-slider-item {
		height: 100%;
	}

	.mv-slider-item-cover {
		max-width: 50%;
	}

	.mv-slider-item-text {
		height: 100%;
	}

	.mv-slider-item-text-inner {
		padding-top: 0;
		position: absolute;
		z-index: 1;
		top: 0;
		left: 0;
		height: 100%;
	}

	.mv-slider-item-catch {
		font-size: clamp(2rem, 7.4vw, 4rem);
		margin-top: 41vh;

	}

	.mv-slider-item-catch+* {
		margin-top: 0.5rem;
	}

	.mv-slider-item-catch br,
	.mv-slider-item-desc br {
		display: none;
	}

	.mv-slider-item-desc {
		font-size: 1.2rem;
	}

	.mv-slider-item-btn {
		margin-top: 0;
		top: auto;
		bottom: 0;
		left: 50%;
		transform: translateX(-50%);
		margin-bottom: 56px;
	}

	.mv-slider-item-btn a {
		width: 240px;
		color: #221814;
		padding: 15px 20px 15px 20px;
		border: 1px solid #7d7d7d;
	}

	.mv-slider-item-btn a::after {
		/* background: url(../images/common/arrow-white.svg) no-repeat center; */
		background-size: contain;
	}
}

.headingarea__tit-inner .mv-slider-item-btn a {
	position: absolute;
	top: -170px;
	left: 280px;
	padding-left: 10px;
}






/* =====================================
 * ヘッダー　ブログアイコン・英語サイトアイコンを設定
 * ================================== */
.l-nav__sub li a {
	text-decoration: none;

}

.l-nav__sub li a.is-show-new::after {
	content: "";
	display: block;
	border-radius: 50%;
	background-color: #EB9300;
	height: 10px;
	width: 10px;
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 0;
	transform: translate(50%, -150%);
	margin-left: 1px;
}


.l-nav__sub li a.is-show-new .l-nav__text span {
	display: block;
}


.l-nav__text[class] {
	line-height: 1.5;
	font-weight: bold;
	color: #221814;
}

.l-nav__text[class] span {
	padding-left: 0;
	padding-right: 0;
	display: none;
}

@media screen and (max-width: 1080px) {
	.l-nav__text[class] {
		font-size: 14px;
	}

	.l-nav__sub {
		display: flex;
		justify-content: center;
		padding: 8px 0;
	}

	.l-nav__sub[class] li {
		width: auto;
	}

	.l-nav__text[class] span {
		font-size: 12px;
	}


	.l-nav__sub li a.is-show-new .l-nav__text span {
		display: flex;
		margin-left: 8px;
	}

}

@media screen and (min-width: 1081px) {

	.l-nav nav,
	.l-nav__sub {
		margin-right: 5px;
	}

	.l-nav__sub li a {
		position: relative;
	}

	.l-nav__text[class] {
		display: block;
		background-color: #989898;
		text-align: center;
		white-space: nowrap;
		font-size: 10px;
		color: #fff;
		opacity: 0;
		position: absolute;
		z-index: 1;
		left: 50%;
		top: 0;
		transform: translateX(-50%);
		margin-top: 68px;

		height: auto;
		padding: 4px 12px;
	}

	.l-nav__text::before {
		content: "";
		display: block;
		background-color: #989898;
		width: 8px;
		height: 8px;
		position: absolute;
		z-index: 1;
		top: 0;
		left: 50%;
		transform: translate(-50%, -100%) rotate(45deg);
		margin-top: 4px;
	}

	.l-nav__sub li a:hover::before {
		display: none;
	}

	.l-nav__sub li a:hover .l-nav__text[class] {
		transition: all 0.3s;
		opacity: 1;
	}
}






/* =====================================
 * 下層ページ　ページタイトルエリアボタン
 * ================================== */
*+.headingarea__btn {
	margin-top: 40px;
}

.headingarea__btn a {
	position: relative;
	display: block;
	color: #221814;
	border: 1px solid #7d7d7d;
	text-decoration: none;
	-webkit-transition: all 0.2s linear;
	transition: all 0.2s linear;
	width: 240px;
	padding: 13px 35px 12px 20px;
}

.headingarea__btn a:hover {
	background: #777;
	color: #fff !important;
}

.headingarea__btn a:after {
	display: block;
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: 10px;
	height: 7px;
	margin: auto;
	transform: rotate(-90deg);
	background: url(../images/common/arrow.svg) no-repeat center;
	background-size: contain;
	content: "";
}

@media screen and (max-width: 767px) {
	*+.headingarea__btn {
		margin-top: 20px;
	}

	.headingarea__btn a {
		background: #c7cacc;
		color: #fff;
		border-color: #fff;
		padding: 15px 35px 15px 20px;
	}

	.headingarea__btn a:after {
		background: url(../images/common/arrow-white.svg) no-repeat center;
	}

	.headingarea::before,
	.headingarea__tit {
		height: 310px;

	}

	.headingarea__img::after {
		top: calc(260px + 65px);
	}

}

/* =====================================
 * 「サービス」ページ　その他のサービス
 * ================================== */

#top-service-section03.service-pickup-block {
	background-image: url(../images/service/img_top_section03b.jpg);
}

.service-pickup-block[id="top-service-section03"] .mark {
	height: 120px;
	padding-top: 20px;
}

.service-pickup-block[id^="top-service-section"] .service-pickup-title {
	color: #221814;
	font-weight: bold;
	font-size: 2rem !important;
	margin-bottom: 0;
}

*+.service-pickup-title {
	margin-left: 1.6rem;
}

@media screen and (max-width: 767px) {
	.service-pickup-block[id="top-service-section03"] .mark {
		height: auto;
		padding-top: 0;
	}

	.service-pickup-block[id^="top-service-section"] .service-pickup-title {
		font-size: 1.8rem !important;
		text-align: left;
	}

	.main .service-pickup-block .mark .service-pickup-img[class] {
		transform: scale(1);
		width: 40px;
		height: 40px;
	}

	*+.service-pickup-title {
		margin-left: 1rem;
	}

}

#top-service-section04.service-pickup-block {
	background-image: url(../images/service/img_top_section04.jpeg);
}

.service-pickup-block[id="top-service-section04"] .mark {
	height: 120px;
	padding-top: 20px;
}

.service-pickup-block[id^="top-service-section"] .service-pickup-title {
	color: #221814;
	font-weight: bold;
	font-size: 2rem !important;
	margin-bottom: 0;
}

*+.service-pickup-title {
	margin-left: 1.6rem;
}

@media screen and (max-width: 767px) {
	.service-pickup-block[id="top-service-section04"] .mark {
		height: auto;
		padding-top: 0;
	}

	.service-pickup-block[id^="top-service-section"] .service-pickup-title {
		font-size: 1.8rem !important;
		text-align: left;
	}

	.main .service-pickup-block .mark .service-pickup-img[class] {
		transform: scale(1);
		width: 40px;
		height: 40px;
	}

	*+.service-pickup-title {
		margin-left: 1rem;
	}

}





/* =====================================
 * 「IR情報」ページ　プレスリリース　PDFファイルのアイコン設定
 * ================================== */
.main .news li:not([class]) a[href*=".pdf"] p::after,
.l-nav__news .news li:not([class]) a[href*=".pdf"] p::after {
	display: inline-block;
	right: auto;
	top: auto;
	bottom: auto;
	border: none;
	transition: all 0s;
	width: 16px;
	height: 19px;
	background: url(../images/common/icon-pdf.svg) no-repeat center;
	background-size: contain;
	z-index: 0;
	transform: translateY(3px);
	margin-left: 12px;
}


.main .news li:not([class]) a[href*=".pdf"]:hover p::after,
.l-nav__news .news li:not([class]) a[href*=".pdf"]:hover p::after {
	background: url(../images/common/icon-pdf-hover.svg) no-repeat center;
}






/* =====================================
 * NAV調整
 * ================================== */

@media screen and (min-width: 1080px) {
	.nav-service-relative__list {
		display: flex !important;
	}
}



/* 2023.12.11追加 */
@media (min-width: 1081px) {
	nav .p-seminar-tag__list[class] {
		/* margin-bottom: 0; */
		margin-top: -10px;
	}

	nav .p-seminar-tag__list {
		flex-wrap: wrap;
		display: flex;
		/* margin: -10px 0 0 -10px; */
	}

	nav .p-seminar-tag__list[class] li {
		line-height: 1.25;
		padding-left: 0;
		margin-bottom: 0;
	}

	nav .p-seminar-tag__list li {
		margin: 10px 0 0 10px;
	}

	nav .p-seminar-tag__list li>* {
		transition: all 0.2s;
		border-radius: 24px;
		border: 1px solid #D5D5D5;
		text-decoration: none;
		display: inline-block;
		background-color: #fff;
		font-size: 14px;
		padding: 4px 12px 3px;
	}

}



@media (min-width: 1081px) {
	.l-nav__megamenu .inner .col-set .col1-2 .p-seminar-tag__list[class] li a:hover {
		background-color: #EB9301;
		color: #fff;
	}
}

@media (min-width: 1081px) {
	.l-nav__megamenu .inner .col-set .col1-2 ul.sub-menu.show-sp.p-seminar-tag__list {
		display: flex;
		margin: 10px 0 0 -10px;
	}
}

@media (min-width: 1081px) {
	.l-nav__megamenu .inner .col-set .col1-2 .p-seminar-tag ul li a::before {
		content: none;
	}

	.l-nav__megamenu .inner .col-set .col1-4.seminar-mg {
		margin-top: 4.8rem;
		margin-right: 9rem;
	}

	.col1-4.seminar-mg .seminar-item {
		margin-top: 0;
	}


	/* ボックスアイテム */
	nav .seminar-item {
		background-color: #F9F9F9;
		margin-top: 2.5rem;
		position: relative;
	}

	nav .seminar-item__inner {
		padding: 2rem 1.5rem 1.5rem 1.5rem;
	}

	nav .seminar-item__sabtitle {
		font-size: 1.4rem;
	}

	nav .seminar-item__title {
		font-size: 1.5rem;
		font-weight: bold;
		padding-bottom: 1rem;
	}

	nav .seminar-item__day {
		font-size: 1rem;
		color: #EB9300;
		border-top: 1px solid #D5D5D5;
		padding-top: 1rem;
		letter-spacing: -0.02em;
	}

	nav .seminar-item__day span {
		font-weight: bold;
	}

	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item .img {
		margin-bottom: 0;
	}

	nav .seminar-item .col-set.-seminar .img {
		margin-bottom: 0;
	}

	nav .p-seminar-status__list li>*.-new {
		background-color: #EB9301;
		line-height: 1.25;
	}
	nav .p-seminar-status__list li > *.-archive {
		background-color: #0877ff;
		line-height: 1.25;
	}

	nav .p-seminar-status__list li>* {
		background-color: #727272;
		display: block;
		color: #fff;
		font-size: 12px;
		padding: 5px 12px;
	}

	nav .p-seminar-list__status {
		position: absolute;
		z-index: 30;
		top: 0;
		left: 0;
	}

	.l-nav__megamenu .inner .col-set[class].-seminar {
		padding-bottom: 15px;
		position: relative;
		flex-wrap: nowrap;
	}
}

@media (min-width: 1081px) {
	.l-nav__megamenu .inner .col-set[class].-seminar {
		position: relative;
		/* justify-content: space-between; */
	}
}

@media (min-width: 1081px) {
	.l-nav__megamenu .inner .-seminar .l-nav__h3 {
		top: 0;
		left: 0;
	}
}

/* @media (min-width: 1081px){ */
.l-nav__megamenu .inner .-seminar .l-nav__h3 a::before {
	content: none;
}

/* } */


@media (min-width: 1081px) {
	.seminar-item {
		position: relative;
	}
}

@media (min-width: 1081px) {

	.seminar-item__title a::before {
		content: "";
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		position: absolute;
	}


	.seminar-item:hover .img>img {
		opacity: 0.7;
		transition: all 0.3s ease-in-out;
	}

	.l-nav__megamenu .inner .-seminar .col-set[class] {
		max-width: 660px;
		margin-top: 0;
		padding-top: 2.5rem;

	}

	.col-set.-mg-right30 {
		margin-right: 3rem;
	}
}

@media (max-width: 1080px) {
	.seminar-item {
		display: none;
	}
}


@media (max-width: 1080px) {
	nav .p-seminar-tag__list li>* {
		background-color: unset;
		border: none;
		color: inherit;

	}
}

@media (max-width: 1080px) {
	nav .p-seminar-tag__list li>*:hover {
		color: #221814;
	}
}

@media (max-width: 1080px) {
	.sp-none {
		display: none;
	}
}

@media (max-width: 1080px) {
	.l-header .l-nav__megamenu .inner .col-set.sp-none {
		display: none;
	}
}

@media (min-width: 1081px) {
	.pc-none {
		display: none;
	}
}

@media (max-width: 1080px) {
	.l-header .l-nav__megamenu .inner .col-set .col1-2.-border-none {
		border-bottom: unset;
	}
}

@media (min-width: 1081px) {
	.l-header .l-nav__megamenu .inner .col-set .col1-2.-border-none {
		/* margin-right: 0; */
	}
}

@media (min-width: 1081px) {
	.p-seminar-tag.p-seminar-tag__list.sub-menu.show-sp>li>* {
		font-size: 1.4rem;
	}
}

@media (min-width: 1081px) {
	.hover-none {
		pointer-events: none;
	}
}

@media (min-width: 1081px) {
	.l-nav__megamenu .inner .col-set[class].-seminar{
		padding-bottom: 40px;
	}
	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item{
		height: 100%;
		display: flex;
		flex-direction: column;
		padding: 0 1.5rem 1.5rem 1.5rem;
	}
	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item.-ready{
		height: 200px;
		justify-content: center;
		align-items: center;
		padding-top: 1.5rem;
	}
	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item.-ready{
		height: 200px;
		justify-content: center;
		align-items: center;
		padding-top: 1.5rem;
	}

	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item.-customizebg {
		background: url(../images/nav/seminar-ready-01.jpg) top center/cover;
	}
	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item__ready{
		opacity: 0.625;
	}
	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item .img{
		margin:0 -1.5rem;
	}

	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item .img + *{
		margin-top: 2rem;
	}

	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item .img img{
		aspect-ratio: 270 / 104;
		object-fit: cover;
		height: 100%;
		width: 100%;
	}

	nav .seminar-item__title{
		padding-bottom: 0;
		margin-bottom: -14px;
	}

	.l-nav__megamenu .inner .col-set.-seminar .col1-2 .seminar-item__day{
		margin-top: auto;
	}

	.l-nav__megamenu .inner .col-set.-seminar .col1-4 .col1-2{
		width: 100% !important;
	}

	.l-nav__megamenu .inner .col-set.-seminar .col3-4.-border-none{
		width: calc(3 / 4 * 100% - 60px);
	}
}

@media (max-width: 1080px) {
	nav .p-seminar-tag__list[class] li a:hover{
		background: none !important;
	}
}

.l-nav__megamenu .col-set.-seminar .col-set .col1-2.-new + .col1-2{
	display: none;
}

.l-nav__megamenu .col-set.-seminar .col-set .col1-2.-new + .col1-2.-new{
	display: block;
}

.l-nav__megamenu .col-set.-seminar .col-set .col1-2.-new:nth-child(2) ~ .col1-2{
	display: none;
}

.p-seminar-tag.p-seminar-tag__list.sub-menu.show-sp>li>*::before {
	display: none !important;
}


/* =====================================
 * メガメニュー切り替えの調整
 * ================================== */
@media (min-width: 1081px) {
	.overlay,
	.l-nav__megamenu{
		display: block !important;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: all 0.2s;
	}

	.l-nav__menu:hover li.is-active > a.is-hover ~ .l-nav__megamenu,
	.l-nav__menu:hover li.is-keep > a:hover ~ .l-nav__megamenu,
	.l-nav__menu:hover li.is-active.is-hover .l-nav__megamenu,
	.l-nav__megamenu:hover{
		display: block !important;
		opacity: 1 !important;
		visibility: inherit;
		pointer-events: auto;
		z-index: 1000;
	}


	.overlay{
		transition: all 0.2s;
		display: block !important;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
	}

    body.is-has-menu .overlay,
    .overlay.is-active{
		display: block !important;
		opacity: 1 !important;
		visibility: inherit;
		pointer-events: auto;
	}

	.l-nav__menu a::before{
		transition: none;
	}

	.l-nav__megamenu:hover a,
	.l-nav__menu > li > a.is-hover ~ .l-nav__megamenu a,
    .l-nav__menu > li.is-hover .l-nav__megamenu a{
		transition: all 0.2s;
	}

	.l-nav__menu>li{
		margin-left: 0;
		margin-right: 0;
	}


	.l-nav__menu>li>a{
		padding-left: 1vw;
		padding-right: 1vw;
	}

}


nav .p-seminar-tag__list li>* {
	transition: none !important;
}

/* 20240116 topページmv改修 */

.l-mainvisual-top .slider-container, .l-mainvisual-top .main-slider .col-set, .l-mainvisual-top .slick-list, .l-mainvisual-top .slick-track, .l-mainvisual-top .main-slider {
    height: 665px;
}
@media (max-width: 767px) {
	.slider-container, .l-mainvisual-top .col-set, .l-mainvisual-top .slick-list, .l-mainvisual-top .slick-track, .l-mainvisual-top .main-slider {
		/* height: 100%;
		height: 500px;	 */
		height: 100%;
		/* height: auto; */
	}
	.l-mainvisual-top .slider-container {
		height: 100%;
	}
	.l-mainvisual-top .main-slider {
		height: 80%;
	}
	.slider-container {
		/* height: 500px; */
	}
}

/* 既存の背景色を#fffに変更 */
#mainvisual {
	background-color: #fff;
}

/* デフォルトのpositionをを解除 */
.l-mainvisual-top .main-slider {
    position: static;
}

/* btnのスタイルの上のmargin */
.l-mainvisual-top .main-slider+* {
    margin-top: 40px;
}
@media (max-width: 767px) {
	.l-mainvisual-top .main-slider+* {
		margin-top: 20px;
	}
}

/* btnのスタイル */
.main-slider-btn {
	display: grid;
	place-items: center;
}

.main-slider-btn a {
	display: block;
	/* width: 331px; */
	height: 88px;
	background: linear-gradient(90deg, #F7D499, #EB9310);
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
	text-decoration: none;
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	/* transition: all 0.2s linear; */
	/* 2024.1.26 追加調整 */
	width: 380px;
	transition: all 1s ease-out;
	position: relative;
	padding: 15px;
}
@media screen and (max-width: 767px) {
	.main-slider-btn a {
		width: 300px;
		height: 60px;
		font-size: 16px;

	}
}

.main-slider-btn a span {
	/* position: absolute; */
	z-index: 99;
}
.main-slider-btn a:after {
	display: block;
    width: 15px;
    height: 11px;
    transform: rotate(-90deg);
    background: url(../images/common/arrow-white.svg) no-repeat center;
    background-size: contain;
    content: "";
	margin-left: 16px;
}
@media screen and (max-width: 767px) {
	.main-slider-btn a:after {
		display: block;
		width: 13px;
		height: 9px;
		transform: rotate(-90deg);
		background: url(../images/common/arrow-white.svg) no-repeat center;
		background-size: contain;
		content: "";
		margin-left: 16px;
	}
}

.main-slider-btn a:hover::before {
	/* 2024.1.26 追加調整 */
    opacity: 0;
	color: #fff;
}
.main-slider-btn a:hover {
	/* opacity: 0.8; */
	/* 2024.1.26 追加調整 */
    color: #fff;
}
/* 2024.1.26 追加調整 */
.main-slider-btn a::before{
	background: linear-gradient(-90deg, #F7D499, #EB9301);
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	transition: all 1s ease-out;
	width: 100%;
	color: #fff;
}
/* btnのスタイルここまで */

/* 縦線の調節 */
.main .top-section01 .scroll-bar.animation::after {
    height: 59px;
	top: 0;
}
@media screen and (max-width: 767px) {
	.main .top-section01 .scroll-bar.animation::after {
		top: 0;
	}
}

.main .top-section01 .scroll-bar {
    top: -75px;
	height: 59px;
}
/*  20240702 他ページへ影響するためコメントアウト
main {
	padding-top: 130px;
}
*/

/*　20240702 上記コードコメントアウトの代わりに、コードを追記*/
.main .top-section01{
    padding-top: 30px;
}
.main .top-section01 .scroll-bar {
    top: -45px;
}
/* 20240702 追記はここまで*/

@media (max-width: 767px) {
	main {
		padding-top: 50px;
	}
}

#mainvisual {
	height: auto;
}
@media (max-width: 767px) {
	#mainvisual {
		height: calc(100vh - 65px);
	}
}

/* sp時mv-slider-item-catchの下の余白調節 */
@media (max-width: 767px) {
	.mv-slider-item-catch {
		margin-top: 25vh;
	}
}

@media (max-width: 767px) {
	#mainvisual[id] {
		min-height: auto;
	}
}

/* デバイスの縦幅によって、.mv-slider-item-catchのmarginを調節 */
@media screen and (max-width: 767px) {
	@media (min-height: 750px) {
		.mv-slider-item-catch {
			margin-top: 30vh;
		}
	}
	@media (min-height:800px) {
		.mv-slider-item-catch {
			margin-top: 34vh;
		}
	}
	@media (min-height:850px) {
		.mv-slider-item-catch {
			margin-top: 38vh;
		}
	}
}

/* 2024.1.26 mv調整 */


@media (min-width: 768px) {
.l-mainvisual-top .main-slider {

    height: 555px;
}}
@media (min-width: 768px) {
.mv-slider-item-btn {
    margin-top: 410px;
}}

/* 20240216改修 ------------------------*/

/* slickdots調節 */
.l-mainvisual-top .main-slider .slick-dots {
	bottom: auto;
	top: 490px;
}

@media (max-width: 767px) {
	.l-mainvisual-top .main-slider .slick-dots {
		top: auto;
		bottom: 20px;
		text-align: center;
	}
	.mv-slider-item-catch {
			margin-top: 24vh;
	}
	.mv-slider-item-btn {
		margin-bottom: 70px;
	}
}

/* カルーセルの重なり調節 */

/* 望月追加、max-widthを1160px→1200pxへ変更 */
@media (max-width: 1200px) {
	.l-nav__menu>li>a {
		padding-inline: .5vw;
	}
}

/* 望月追加、見積もりボタンの追加 */
@media (max-width: 1080px) {
	.l-header .btn__quotationrequest {
		display: block;
		position: absolute;
		top: 15px;
		right: 190px;
		width: 100px;
		height: 60px;
		padding: 15px 5px 5px;
		background: #cc4b00;
		color: #fff;
		text-align: center;
		box-sizing: border-box;
	}

	.l-header .btn__quotationrequest a {
		color: #fff;
		text-decoration: none;
	}

	.l-header .btn__quotationrequest span {
		position: relative;
		padding: 18px 0 0 0;
		font-size: 1.2rem;
		transform: scale(0.9);
	}

	.l-header .btn__quotationrequest span::before {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		width: 18px;
		height: 12px;
		margin: auto;
		/* background: url(../images/common/icon-contact.svg) no-repeat center; */
		/* background-size: 18px 12px; */
		content: "";
	}
}

@media (max-width:768px) {
	.l-header .btn__quotationrequest {
		display: none;
	}
}

/*
 @media (max-width:768px) {
	.l-header .btn__quotationrequest {
		display: block;
		position: absolute;
		top: 15px;
		right: 130px;
		width: 60px;
		height: 60px;
		padding: 28px 5px 5px;
		background: #cc4b00;
		color: #fff;
		text-align: center;
		box-sizing: border-box;
		display: none;
	}

	.l-header .btn__quotationrequest a {
		color: #fff;
		text-decoration: none;
	}

	.l-header .btn__quotationrequest span {
		position: relative;
		padding: 18px 0 0 0;
		font-size: 0.8rem;
		transform: scale(0.9);
	}

	.l-header .btn__quotationrequest span::before {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		width: 18px;
		height: 12px;
		margin: auto;
		background: url(../images/common/icon-contact.svg) no-repeat center;
		background-size: 18px 12px;
		content: "";
	}
} */ */


/* 不要なボタン削除 */
@media (min-width: 1081px) {
	.l-header .btn__quotationrequest {
		display: none;
	}
}

@media (min-width: 1081px) {
	.l-header .btn__quotationrequest {
		display: none;
	}
}

/* メニューのレスポンシブ幅調整
@media screen and (min-width:1081px) and (max-width:1124px) {
.l-nav__sub li a{
	padding: 0;
}} */

/* @media screen and (min-width:1081px) and (max-width:1106px) {
.l-header__logo {
    left: 6px;
}} */

/* ボタンの幅は120pxにしてください */

/* .l-nav__quotationrequest a {
	width: 120px;
}

.l-nav__contact a {
	width: 120px

} */

/* 鈴木さんの記載したコード */

.headingarea__btn.orange_btn a {
    border: 1px solid #ed9301;
    background-color: #ed9301;
    color: #FFF;
    width: 100%;
}

.headingarea__btn.orange_btn a:hover {
    background-color: #FFF;
    color: #ed9301!important;
}

.headingarea__btn.orange_btn a::after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-right: 2px solid #FFFFFF;
    border-bottom: 2px solid #FFFFFF;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition: 0.2s;
    transition: 0.2s;
    background: none;
}

.headingarea__btn.orange_btn a:hover::after {
    border-right: 2px solid #ed9301;
    border-bottom: 2px solid #ed9301;
}
/* 鈴木さんの記載したコード（ここまで） */

/* 多言語翻訳ページ世界地図調整 */
@media (min-width: 768px){
    .main .multi-translation {
        display: none;
    }
}

@media (max-width: 767px){
    .service-box-set.service-languages-list{
    width: 100%;
    padding: 20px;
    }
	.main .multi-translation{
        display: none;
	}
}

.service-box-set.service-languages-list{
	background-image: url("../images/service/translation/img_languages02.jpg");
	background-position: center center;
	margin-top: 30px;
}


@media (max-width: 767px) {
	.service-box-set.service-languages-list {
		background-image: none;
	}
}

/* サービス　FVボタン */
.headingarea.service-top .headingarea__btn.orange_btn a {
    border: 1px solid #ed9301;
    background-color: #ed9301;
    color: #FFF;
    width: 100%;
}

.headingarea.service-top .headingarea__btn.orange_btn a:hover {
    background-color: #FFF;
    color: #ed9301!important;
}

.headingarea.service-top .headingarea__btn.orange_btn a::after {
    display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    border-right: 2px solid #FFFFFF;
    border-bottom: 2px solid #FFFFFF;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    -webkit-transition: 0.2s;
    transition: 0.2s;
    background: none;
}

.headingarea.service-top .headingarea__btn.orange_btn a:hover::after {
    border-right: 2px solid #ed9301;
    border-bottom: 2px solid #ed9301;
}


/* FV_追加のボタン (望月)*/
.headingarea.service-top .headingarea__c-btn-text {
	margin-top: 2.4rem;
}

@media (max-width: 768px) {
	.headingarea.service-top .headingarea__c-btn-text {
	margin-top: 14px;
	}
}

.headingarea.service-top .headingarea__c-btn-text a {
	position: relative;
	display: inline-block;
	padding: 0 2.6rem 0 0;
	font-size: 1.4rem;
	font-weight: 700;
	text-decoration: none;
	color: inherit;
}

.headingarea.service-top .headingarea__c-btn-text a:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	width: 0.7rem;
	height: 100%;
	background-position: center 0.56em;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-image: url("../images/service/ico_arr_right_pri.svg");
	margin-right: 0.4em;
}

.headingarea.service-top .headingarea__c-btn-text.-download a:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	right: 0;
	width: 1.4rem;
	height: 100%;
	background-position: center 0.56em;
	background-repeat: no-repeat;
	background-size: 100% auto;
	background-image: url("../images/service/ico_download_pri.svg");
	margin-right: 0.4em;
}

.headingarea.service-top .headingarea__c-btn-text a:hover {
	color: #EB9300;
	transition: all 0.2s ease-in-out;
}

/* ヘッダー下部/お知らせ追加 */

#news-area{
	background-color: #f5f5f5;
	padding-top: 10px;
	padding-bottom: 10px;
	text-align: center;
}

#news-area a{
	text-decoration: none;
	color: #221814;
	display: inline-block;
}

#news-area a:hover{
	color: #eb9300;
	transition: all 0.2s ease-in-out;
}
/*　20240703　余白調整*/
@media (max-width: 767px){
	#mainvisual + * main {
    	padding-top: 100px;
}}
/*　20240703　余白調整ここまで*/

@media screen and (max-width: 767px){
	#mainvisual {
		margin-top: 60px;
	}
}
/*　20240703　余白調整*/
#mainvisual {
	margin-top: 40px;
}
/*　20240703　余白調整ここまで*/

/*　20241219　追加CSS*/
#news-area {
	margin-top: 22px;
}
@media (max-width: 767px){
	#news-area {
		margin-top: 2px;
	}
}
/*　20241219　追加CSSここまで*/

/* ----------------------------------------
	特許事例紹介
------------------------------------------- */

.breadcrumb:has(+#casestudy-content) {
	display: none;
}

#casestudy-content .lead-box-wrapper {
	display: table;
	margin-bottom: 20px;
}

#casestudy-content .lead-box {
	padding: 60px 80px;
	background: #FDF5E7;
	margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
	#casestudy-content .lead-box {
		padding: 20px;
	}
}

#casestudy-content .lead-box dl {
	margin: 0;
}

#casestudy-content .lead-box dt {
	width: auto;
}


#casestudy-content .lead-box dt span {
	width: 4em;
	display: inline-block;
}

@media (max-width: 768px) {

	#casestudy-content .lead-box dl {
		display: flex;
		flex-wrap: nowrap;
	}

	#casestudy-content .lead-box .indent dd {
		flex: 1;
	}

	#casestudy-content .lead-box dt {
		width: 5em !important;
	}


}

#casestudy-content .lead-box dd {
	width: auto;
	padding: 0;
}


#casestudy-content .p-blog-detail-toc {
  position: relative;
  border: 1px solid #d5d5d5;
  padding: 50px 90px;
  margin-bottom: 100px;
}

@media (max-width: 768px) {
	#casestudy-content .p-blog-detail-toc {
		margin-bottom: 70px;
	}
}

#casestudy-content * + .p-blog-detail-toc[class] {
  margin-top: 56px;
}
@media (max-width: 768px) {
  #casestudy-content * + .p-blog-detail-toc[class] {
    margin-top: 32px;
  }
}
#casestudy-content .p-blog-detail-toc[class] + * {
  margin-top: 64px;
}
@media (max-width: 768px) {
  #casestudy-content .p-blog-detail-toc[class] + * {
    margin-top: 40px;
  }
}
@media (max-width: 768px) {
  #casestudy-content .p-blog-detail-toc {
    padding: 32px 16px;
  }
}
#casestudy-content .p-blog-detail-toc__header {
  text-align: center;
  position: absolute;
  z-index: 1;
  top: 8px;
  left: 0;
  width: 100%;
  transform: translateY(-50%);
}
#casestudy-content .p-blog-detail-toc__title {
  background-color: #fff;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: 24px auto;
  background-position: left center;
  background-position-x: 32px;
  background-image: url(../images/blog/ico_blog_toc_list.svg);
  color: #EB9300;
  font-weight: bold;
  font-size: 24px;
  padding: 0 32px 0 64px;
}
#casestudy-content .p-blog-detail-toc__list[class],
#casestudy-content .p-blog-detail-toc__list[class] ul {
  margin-bottom: 0;
}
#casestudy-content .p-blog-detail-toc__list[class] li {
  padding: 0;
}
#casestudy-content .p-blog-detail-toc__list[class] li::before {
  display: none !important;
}
#casestudy-content .p-blog-detail-toc__list[class] li + li {
  margin-top: 4px;
}
#casestudy-content .p-blog-detail-toc__list[class] li.-h2 a {
  display: inline-block;
  background-repeat: no-repeat;
  background-size: 18px auto;
  background-position: left 6px;
  background-image: url(../images/blog/ico_blog_toc_pen.svg);
  font-weight: bold;
  font-size: 16px;
  padding-left: 28px;
  text-decoration: none;
}
#casestudy-content .p-blog-detail-toc__list[class] li.-h3 {
  padding-left: 28px;
}
#casestudy-content .p-blog-detail-toc__list[class] li.-h3 a {
  position: relative;
  display: inline-block;
  font-size: 14px;
  padding-left: 16px;
  text-decoration: none;
}
#casestudy-content .p-blog-detail-toc__list[class] li.-h3 a::before {
  content: "";
  display: inline-block;
  background-color: #EB9300;
  vertical-align: middle;
  width: 8px;
  height: 2px;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  margin-top: 10px;
}
#casestudy-content .p-blog-detail-toc__list[class] li.-h4 {
  font-size: 12px;
  padding-left: 60px;
}
#casestudy-content .p-blog-detail-toc__list[class] li.-h4 a {
  font-size: 12px;
}

#casestudy-content .sup {
    gap: 8px;
    color: #777;
    text-indent: -1.8em;
 		padding-left: 2em;
}

#casestudy-content .sup02 {
	  font-size: 14px;
    color: #777;
    margin-right: 25%;
    text-align: right;
}

#casestudy-content #toc3 .sup02{
	margin-right: 0;
}

@media (max-width: 768px) {
	#casestudy-content .sup02 {
	 margin-right: 0;
	}
}

#casestudy-content .c-headline__sub {
    font-size: 2rem;
    line-height: 1.5;
    font-weight: 500;
    text-align: center;
    font-family: "Roboto";
    color: #EB9300;
    margin-bottom: 0;
}

#casestudy-content .c-cta {
	margin-bottom: 50px;
}

#casestudy-content .c-cta__inner {
  background-color: #F5F5F5;
  padding: 6.4rem 12rem;
}

@media (max-width: 768px) {
  #casestudy-content .c-cta__inner {
    padding: 35px 2rem;
  }
}

#casestudy-content .c-cta .c-cta__inner h2 {
	  display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 0px;
    font-size: 40px;
    color: #221814;
    border-left: none;
    margin-bottom: 30px;
}

#casestudy-content [class*=c-headline] {
    line-height: 1.5;
}

@media (min-width: 768px) {
  #casestudy-content .p-lp-mv__btn-list {
    margin-top: 1.75rem;
  }
}
@media (max-width: 768px) {
  #casestudy-content .p-lp-mv__btn-list {
    margin-top: 0rem;
  }
}
#casestudy-content .c-cta .p-lp-cta__btn {
  line-height: 1.5;
}

@media (max-width: 768px) {
  #casestudy-content .c-cta .p-lp-cta__btn {
    margin-top: 2rem;
  }
}
#casestudy-content .c-cta .p-lp-mv__btn-list {
  justify-content: center;
}

#casestudy-content .p-lp-mv__btn-list {
  display: flex;
  color: #fff;
  font-size: 1.76rem;
  font-weight: bold;
  margin-top: 3.2rem;
}

@media (max-width: 768px) {
	#casestudy-content .p-lp-mv__btn-list {
		flex-wrap: wrap;
		margin: 0;
	}
}

#casestudy-content .p-lp-mv__btn-list.-center {
  justify-content: center;
}

#casestudy-content .p-lp-mv__btn-list li {
	 max-width: 30rem;
	 width: 100%;
}

@media (max-width: 768px) {
	#casestudy-content .p-lp-mv__btn-list li {
		max-width: none;
		padding-left: 0;
	}
}

@media (max-width: 768px) {
	#casestudy-content .p-lp-mv__btn-list li {
		margin-left: 0;
	}
}

#casestudy-content .p-lp-mv__btn-list li.-wht a {
	  background-color: #fff;
    color: #EB9300;
    outline: 1px solid #EB9300;
}

#casestudy-content .p-lp-mv__btn-list li:before {
	display: none;
}

#casestudy-content .p-lp-mv__btn-list li a {
  transition: all 0.2s ease-in-out;
  display: block;
  text-decoration: none;
  color: #fff;
  padding: 0;
  background-color: #EB9300;
  text-decoration: none !important;
  text-align: center;
  position: relative;
  font-size: 1.8rem;
  box-shadow: 0px 4px 24px 0px rgba(255, 255, 255, 0.5) inset;
  line-height: 1.5;
  padding: 24px 20px 24px 20px;
  position: relative;
}

#casestudy-content .p-lp-mv__btn-list li.-wht a::after {
  background-image: url("/assets/images/irtranslp/ico_arr_right_pri.png");
}

#casestudy-content .p-lp-mv__btn-list li a::after {
	    content: "";
    display: inline-block;
    position: absolute;
    top: 20%;
    transform: translateX(-50%);
    right: 0;
    width: 20px;
    height: 30px;
    background-position: center 0.56em;
    background-repeat: no-repeat;
    background-size: 100% auto;
    margin-right: 0.4em;
  background-image: url("/assets/images/irtranslp/ico_arr_right_wht.png");
}

#casestudy-content .casestudy-heading2 {
	background-color: #f5f5f5;
	padding: 27px 30px 25px;
	margin-bottom: 20px;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.2;
}

#casestudy-content .border-box {
	padding: 60px;
	border: 1px solid #d3d1d0;
	margin-bottom: 60px;
}

@media (max-width: 768px) {
	#casestudy-content .border-box {
		padding: 30px 10px;
	}
}

@media (max-width: 768px) {
	#casestudy-content #toc2 img {
		width: 100%;
	}
}

#casestudy-content #toc2 .col-set {
	align-items: center;
}


.main #casestudy-content .external_link:before {
	  background-image: url(../images/common/icon-external-link.svg);
	  display: inline-block;
    content: "";
    width: 18px;
    height: 18px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    margin-right: 10px;
    vertical-align: middle;
}

/* 会議・イベント運営サポート
----------------------- */

main .service-detail {
	margin:0 auto; padding: 90px 45px; max-width: 1600px;
}
main .service-detail * {
	font-feature-settings: "palt";
}
main .service-detail h3:not([class*="heading"]) {
	margin: 0 auto 45px; text-align: center;
}
main .service-detail h4:not([class*="heading"]) {
	background: #777; padding: 0; margin: 0; line-height: 1.1; color: #fff; font-weight: 700; height: 70px; width: 100%; display: flex; align-items: center; justify-content: center;
}
main .service-detail h5:not([class*="heading"]) {
	padding:10px 15px; margin: 0 auto 15px; border-left: 1px solid #000; line-height: 1.1;
}
main .service-detail .inr {
	display: flex; flex-wrap: wrap; gap: 10px;
}
main .service-detail .cont {
	width: calc((100% - 30px) / 4); box-shadow: inset 0 0 1px rgba(0, 0, 0, 1); background: transparent none right bottom no-repeat;
}
main .service-detail .cont.service01 {
	background-image: url(/uploads/servicedetail_icon01.svg);
}
main .service-detail .cont.service02 {
	background-image: url(/uploads/servicedetail_icon02.svg);
}
main .service-detail .cont.service03 {
	background-image: url(/uploads/servicedetail_icon03.svg);
}
main .service-detail .cont.service04 {
	background-image: url(/uploads/servicedetail_icon04.svg);
}
main .service-detail .body {
	padding: 15px;
}
main .service-detail .about {
	min-height: 17em;
}

@media print, screen and (max-width:1600px){
	main .service-detail .about {
		min-height: 250px;
	}
}
@media print, screen and (max-width:1400px){
	main .service-detail .cont {
		width: calc((100% - 10px) / 2); background-position: right 50px;
	}
	main .service-detail .about {
		min-height: 200px;
	}
}
@media print, screen and (max-width:1199px){
	main .service-detail .cont {
		width: 100%; background-position: right bottom;
	}
	main .service-detail .about {
		min-height: 0;
	}
}
@media print, screen and (max-width:767px){
	main .service-detail {
		margin:0; padding: 30px 15px; border-top: 1px solid rgba(0, 0, 0, .1);
	}
}


/* 翻訳支援ツール（CAT）の有効活用
----------------------- */

.p-cat-mv {
	position: relative;
}

.top_bannerbox{
	background: transparent;
	padding: 20px 0 0;
	width: 100%;
}

.top_bannerbox ul li::before{
	display: none;
}

.top_bannerbox ul li{
	margin-bottom: 10px;
}

.top_bannerbox h2{
	font-size: 17px;
	padding: 6px 20px;
	margin-bottom: 20px;
	letter-spacing: 2px;
	background-color: black;
	color: white;
}

@media print, screen and (min-width: 960px){
	.top_bannerbox .sp{
		display: none;
	}
	.top_bannerbox{
		width: 420px;
		margin: 0 auto 30px;
		position: absolute;
		right: 50px;
		bottom: 20px;
	}
	.top_bannerbox h2{
		font-size: 17px;
		padding: 6px 20px;
		margin-bottom: 20px;
		letter-spacing: 2px;
		background-color: black;
		color: white;
		width: 960px;
	}
	.top_bannerbox ul li{
		width: 100%;
		display: inline-block;
	}
	.top_bannerbox ul li:nth-child(2) {
		margin-left: 16px;
	}
}
@media print, screen and (max-width: 959px) {
	.top_bannerbox .pc{
		display: none;
	}
	.top_bannerbox ul li{
		padding: 0;
		margin: 40px 14px 0;
	}
}



.fontpalt { font-feature-settings: "palt"; }
.workflow { display: flex; justify-content: center; gap: 30px; flex-wrap: wrap; margin: 4rem auto; }
.workflow dl { width: calc((100% - 150px) / 5); background: rgba(0, 0, 0, .05); margin: 0; padding: 2rem .5rem; display: block; position: relative; counter-increment: number 1; overflow: visible; }
.workflow dl::after { content: ""; display: block; border-top: 16px solid transparent; border-bottom: 16px solid transparent; border-left: 16px solid #EB9301; position: absolute; z-index: 1; bottom: 50%; right: -23px; transform: translateY(50%); }
.workflow dl:nth-last-of-type(1):after { display: none; }
.workflow dt { font-size: 1.5rem; text-align: center; font-weight: 600; line-height: 1.5; width: 100%; height: auto; margin: 0 auto 2rem; padding: 0; vertical-align: middle; overflow: visible; }
/*
.workflow dt::before { content: counter(number) ""; display: flex; align-items: center; justify-content: center; line-height: 1; font-size: 1.3rem; font-weight: 600; width: 24px; height: 24px; background: #EB9301; color: #fff; position: absolute; left: 0; top:-5px; }
*/
.workflow dt small { font-size: .75em; line-height: 1; vertical-align: middle; position: relative; top:-1px; }
.workflow dt sup { font-size: .75em; line-height: 1; vertical-align: top; }
.workflow dd { text-align: center; margin: 1rem auto 0; width: auto; height: auto; margin: 0; padding: 0; }
@media print, screen and (max-width: 1080px) {
	.workflow { justify-content: flex-start; }
	.workflow dl { width: calc((100% - 30px) / 2); }
	.workflow dl:nth-of-type(even):after { display: none; }
}
@media print, screen and (max-width: 768px) {
	.workflow dl { width: 100%; }
	.workflow dl:nth-of-type(3):after { display: block; }
	.workflow dl:nth-of-type(even):after { display: block; }
	.workflow dl::after { transform: translateX(-50%) rotate(90deg); right: calc(50% - 16px); bottom: -31px; }
}


.lead-box__caption .about { margin: 0 auto 20px; }
.lead-box__caption:has(.thumb) { display: flex; justify-content: space-between; }
.lead-box__caption:has(.thumb) .txt { width: calc((100% - 200px) - 5rem); }
.lead-box__caption:has(.thumb) .thumb { width: 200px; display: block; text-align: center; }
.lead-box__caption:has(.clogo) .about { display: flex; justify-content: space-between; }
.lead-box__caption:has(.clogo) .about .clogo { width: 180px; display: flex; align-items: center; justify-content: center; background: #fff; text-align: center; }
.lead-box__caption:has(.clogo) .about .info { width: calc((100% - 180px) - 2rem); }
@media print, screen and (max-width: 768px) {
	.lead-box__caption:has(.thumb) { display: block; }
	.lead-box__caption:has(.thumb) .txt { width: auto; margin: 0 auto 2rem; }
	.lead-box__caption:has(.thumb) .thumb { width: auto; }
	.lead-box__caption:has(.clogo) .about { display: block; }
	.lead-box__caption:has(.clogo) .about .clogo { width: auto; display: block; background: #fff; margin: 0 auto 2rem; }
	.lead-box__caption:has(.clogo) .about .info { width: auto; }
}

.flexbox_center { display:flex; align-items: center; justify-content: center; }

.main .casestudy-set { font-feature-settings: "palt"; text-align: justify; }
.main .casestudy-set:has(.img-wrap) { display: flex; width: 100%; flex-wrap: wrap; }
.main .casestudy-set:has(.img-wrap) .txt-wrap { width: 70rem; }
.main .casestudy-set:has(.img-wrap) .img-wrap { width: calc(100% - 70rem); display: flex; align-items: center; justify-content: center; }

@media screen and (max-width: 1199px), print {
	.main .casestudy-set:has(.img-wrap) { display: block; }
	.main .casestudy-set:has(.img-wrap) .txt-wrap,
	.main .casestudy-set:has(.img-wrap) .img-wrap { width: auto; margin: 0 auto 70px; }
}

.form_complate { max-width: 960px; margin: 0 auto 10rem; }
.form_complate h1 { margin: 0 auto 3rem; padding: 20px 0 20px; vertical-align: middle; font-size: 2.4rem; font-weight: bold; border-bottom: 1px solid #dadbdc; line-height: 1.25; box-shadow: 0 4px 0 #f6f6f6; }
.form_complate h1 small { font-size: 90%; line-height: inherit; color: rgba(0, 0, 0, .4); vertical-align: text-bottom; padding: 0 0 0 .5em; }
.main .form_complate h2 { margin: 0 auto 1em; font-size: 2rem; font-weight: bold; line-height: 1.25; padding: 0; border: none; }
.main .form_complate h2 small { color: rgba(0, 0, 0, .5); }
.form_complate p { line-height: 1.8; }
.form_complate p small { color: rgba(0, 0, 0, .5); line-height: inherit; font-size: inherit; }
.aform-button-area { margin: 0 auto; padding: 3rem 0; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 2rem; }
.aform-button-area a,
.aform-button-area input { text-decoration: none; color: #222; width: 250px; height: 60px; display: flex; align-items: center; justify-content: center; border:1px solid rgba(0, 0, 0, .3); font-weight: 600; outline: none; background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(238,238,238,1) 100%); cursor: pointer; }
.aform-button-area a:hover,
.aform-button-area input:hover { background: linear-gradient(to bottom,  rgba(245,245,245,1) 0%,rgba(235,235,235,1) 100%); }
