@charset "utf-8";
/* CSS Document */

/* //////////////////////////////////////////////////////////
Component
////////////////////////////////////////////////////////// */
.fade-enter-active, .fade-leave-active {
  transition: opacity 1.0s;
}
.fade-enter, .fade-leave-to {
  opacity: 0;
}

/* clearfix - micro clearfix
--------------------------------------------------------- */
/* ----- For modern browsers ----- */
.clearfix:before,
.clearfix:after {
    content:"";
    display:table;
}

.clearfix:after {
    clear:both;
}

/* ----- For IE 6/7 (trigger hasLayout)----- */
.clearfix {
    zoom:1;
}


/* float
--------------------------------------------------------- */
.float-r {
	float: right;
}
.float-l {
	float: left;
}
.inline-block {
	letter-spacing:-0.4em;/* inline-block Hack */
}
.inline-block > * {
	display: inline-block;
	letter-spacing: normal;/* inline-block Hack */
	*display: inline;/* inline-block Hack forIE */
	*zoom: 1;/* inline-block Hack forIE */
	vertical-align: top;
}
.inline-block > * a {
	display: block;
}


/* display
--------------------------------------------------------- */
.display-none {
	display: none !important;
}
.display-block {
	display: block !important;
	width: 100%;
}
.display-inline-block {
	display: inline-block !important;
}
.display-tb {
	display: table !important;
}
.display-tr {
	display: table-row !important;
}
.display-td {
	display: table-cell !important;
}


/* 非表示
--------------------------------------------------------- */
.hidden {
	display: none !important;
}

/* 初期表示で非表示にする場合はこのクラスを使用する */
.hide {
	display: none !important;
}


/* border
--------------------------------------------------------- */
.border-0 {
	border: 0;
}
.border-l-0 {
	border-left: 0;
}
.border-r-0 {
	border-right: 0;
}
.border-t-0 {
	border-top: 0;
}
.border-b-0 {
	border-bottom: 0;
}
.border-top {
	border-top: 1px solid #ccc;
}
.border-bottom {
	border-bottom: 1px solid #ccc;
}


/* text-align
--------------------------------------------------------- */
.text-r { text-align: right !important; }
.text-l { text-align: left !important; }
.text-c { text-align: center !important; }


.text_left { text-align: left !important; }
.text_right { text-align: right !important; }
.text_center { text-align: center !important; }
.text_nowrap,
.nowrap { white-space: nowrap !important; }

.valign-top { vertical-align: top !important; }
.valign-middle { vertical-align: middle !important; }
.valign-bottom { vertical-align: bottom !important; }


/* フォントサイズ - px
--------------------------------------------------------- */
.font-size-10px { font-size: 10px; }
.font-size-11px { font-size: 11px; }
.font-size-13px { font-size: 12px; }
.font-size-14px { font-size: 14px; }
.font-size-16px { font-size: 16px; }
.font-size-18px { font-size: 18px; }

.font-size-85p { font-size: 85%; }
.font-size-90p { font-size: 90%; }
.font-size-95p { font-size: 95%; }
.font-size-100p { font-size: 100%; }
.font-size-110p { font-size: 110%; }
.font-size-120p { font-size: 120%; }
.font-size-130p { font-size: 130%; }
.font-size-140p { font-size: 140%; }

.small {
	font-size: 80%;
}
.big {
	font-size: 130%;
	font-weight: inherit;
}


/* 文字装飾
--------------------------------------------------------- */
.text-strike {
	text-decoration: line-through;
}
.text-bold {
	font-weight: bold;
}
strong,
.strong {
	font-weight: bold;
}



/* table テーブル
--------------------------------------------------------- */
/*th,
td {
	border-collapse: collapse;
	border: 1px solid #ccc;
	padding: 4px 10px;
	background: #fff;
	text-align: left;
}
th {
	font-weight: bold;
	background-color: #f6f6f6;
}*/

.tbl-sprite tr:nth-child(even) td {
	background-color: #f6f6f6;
}


/* ----- type01 ----- */
table.tbl-type01 {
	border-collapse: collapse;
	text-align: left;
}
table.tbl-type01 th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	border: 1px solid #ccc;
	background: #fff;
}
table.tbl-type01 td {
	padding: 8px;
	vertical-align: top;
	border: 1px solid #ccc;
	background: #fff;
}
/* ----- type02 ----- */
table.tbl-type02 {
	border-collapse: separate;
	border-spacing: 0;
	text-align: left;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
table.tbl-type02 th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	background: #eee;
}
table.tbl-type02 td {
	padding: 8px;
	vertical-align: top;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background: #fff;
}
/* ----- type03 ----- */
table.tbl-type03 {
	border-collapse: collapse;
	text-align: left;
	border-top: 1px solid #ccc;
	border-left: 3px solid #369;
}
table.tbl-type03 th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	color: #153d73;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background: #fff;
}
table.tbl-type03 td {
	padding: 8px;
	vertical-align: top;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background: #fff;
}
/* ----- type04 ----- */
table.tbl-type04 {
	border-collapse: collapse;
	text-align: left;
	/*border-top: 1px solid #ccc;*/
	width: 100%;
	margin: 0 auto;
}
table.tbl-type04 tr {
	border-bottom: 1px solid #ccc;
}
table.tbl-type04 th {
	padding: 16px 16px 16px 8px;
	font-weight: bold;
	vertical-align: top;
	width: 24%;
}
table.tbl-type04 td {
	padding: 16px 8px 16px 16px;
	vertical-align: top;
	width: 76%;
}
/* ----- type05 ----- */
table.tbl-type05 {
	border-collapse: separate;
	border-spacing: 1px;
	text-align: left;
	border-top: 1px solid #ccc;
}
table.tbl-type05 th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
	background: #efefef;
}
table.tbl-type05 td {
	padding: 8px;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
}
/* ----- type06 ----- */
table.tbl-type06 {
	border-collapse: collapse;
	text-align: left;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
table.tbl-type06 th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
}
table.tbl-type06 td {
	padding: 8px;
	vertical-align: top;
}
table.tbl-type06 .even {
	background: #efefef;
}
/* ----- type07 ----- */
table.tbl-type07 {
	border-collapse: collapse;
	text-align: left;
	border: 1px solid #ccc;
}
table.tbl-type07 thead {
	border-right: 1px solid #ccc;
	border-left: 1px solid #ccc;
	background: #04162e;
}
table.tbl-type07 thead th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	color: #fff;
}
table.tbl-type07 tbody th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
	background: #efefef;
}
table.tbl-type07 td {
	padding: 8px;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
}
/* ----- type08 ----- */
table.tbl-type08 {
	border-collapse: collapse;
	text-align: left;
	border-left: 1px solid #ccc;
}

table.tbl-type08 thead th {
	padding: 8px;
	font-weight: bold;
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 2px solid #c00;
	background: #dcdcd1;
}
table.tbl-type08 tbody th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background: #ececec;
}
table.tbl-type08 td {
	padding: 8px;
	vertical-align: top;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
/* ----- type09 ----- */
table.tbl-type09 {
	border-collapse: collapse;
	text-align: left;
}
table.tbl-type09 thead th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	color: #369;
	border-bottom: 3px solid #036;
}
table.tbl-type09 tbody th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
	background: #f3f6f7;
}
table.tbl-type09 td {
	padding: 8px;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
}
/* ----- type10 ----- */
table.tbl-type10 {
	border-collapse: collapse;
	text-align: left;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}
table.tbl-type10 thead th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	color: #fff;
	background: #04162e;
}
table.tbl-type10 td {
	padding: 8px;
	vertical-align: top;
}
table.tbl-type10 .even {
	background: #f3f6f7;
}
/* ----- type11 ----- */
table.tbl-type11 {
	border-collapse: separate;
	border-spacing: 1px;
	text-align: center;
}
table.tbl-type11 th {
	padding: 8px;
	font-weight: bold;
	vertical-align: top;
	color: #fff;
	background: #036;
}
table.tbl-type11 td {
	padding: 8px;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
	background: #eee;
}
/* ----- plane ----- */
table.tbl-plane {
    border: medium none;
    margin: 0;
    width: auto;
}
table.tbl-plane tr {
    border: medium none;
}
table.tbl-plane th,
table.tbl-plane td {
    font-weight: normal;
    padding: 2px 0;
    text-align: left;
	width: inherit;
}
table.tbl-plane th {
	white-space: nowrap;
	padding-right: 3em;
	font-weight: normal;
}


/* メモ：まだtype04以外は調整してない */

/*sp*/
@media screen and (max-width: 700px) {
table.tbl-type04 th,
table.tbl-type04 td {
	width: 100%;
	display: block;
}

table.tbl-type04 th {
	padding: 8px 0 2px 0;
}
table.tbl-type04 td {
	padding: 2px 0 8px 0;
}
}


/* vertical-align
--------------------------------------------------------- */
.v-top {
	vertical-align: top;
}
.v-bottom {
	vertical-align: bottom;
}
.v-middle {
	vertical-align: middle;
}


/* margin / padding
--------------------------------------------------------- */
.mauto { margin: auto;}
.m0auto { margin: 0 auto;}

.mt-10 { margin-top: -10px; }
.mt0 { margin-top: 0px; }
.mt5 { margin-top: 5px; }
.mt10 { margin-top: 10px; }
.mt15 { margin-top: 15px; }
.mt20 { margin-top: 20px; }
.mt25 { margin-top: 25px; }
.mt30 { margin-top: 30px; }
.mt40 { margin-top: 40px; }
.mt50 { margin-top: 50px; }
.mt60 { margin-top: 60px; }
.mt70 { margin-top: 70px; }
.mt80 { margin-top: 80px; }
.mt90 { margin-top: 90px; }
.mt100 { margin-top: 100px; }


.mb0 { margin-bottom: 0px; }
.mb5 { margin-bottom: 5px; }
.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb25 { margin-bottom: 25px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 40px; }
.mb50 { margin-bottom: 50px; }
.mb60 { margin-bottom: 60px; }
.mb70 { margin-bottom: 70px; }
.mb80 { margin-bottom: 80px; }
.mb90 { margin-bottom: 90px; }
.mb100 { margin-bottom: 100px; }

.ml0auto { margin-left: auto;}
.ml0 { margin-left: 0px; }
.ml5 { margin-left: 5px; }
.ml10 { margin-left: 10px; }
.ml15 { margin-left: 15px; }
.ml20 { margin-left: 20px; }
.ml25 { margin-left: 25px; }
.ml30 { margin-left: 30px; }
.ml40 { margin-left: 40px; }
.ml50 { margin-left: 50px; }
.ml60 { margin-left: 60px; }
.ml70 { margin-left: 70px; }
.ml80 { margin-left: 80px; }
.ml90 { margin-left: 90px; }
.ml100 { margin-left: 100px; }

.mr0auto { margin-right: auto;}
.mr0 { margin-right: 0px; }
.mr5 { margin-right: 5px; }
.mr10 { margin-right: 10px; }
.mr15 { margin-right: 15px; }
.mr20 { margin-right: 20px; }
.mr25 { margin-right: 25px; }
.mr30 { margin-right: 30px; }
.mr40 { margin-right: 40px; }
.mr50 { margin-right: 50px; }
.mr60 { margin-right: 60px; }
.mr70 { margin-right: 70px; }
.mr80 { margin-right: 80px; }
.mr90 { margin-right: 90px; }
.mr100 { margin-right: 100px; }


.pt0 { padding-top: 0px; }
.pt5 { padding-top: 5px; }
.pt10 { padding-top: 10px; }
.pt15 { padding-top: 15px; }
.pt20 { padding-top: 20px; }
.pt25 { padding-top: 25px; }
.pt30 { padding-top: 30px; }
.pt40 { padding-top: 40px; }
.pt50 { padding-top: 50px; }
.pt60 { padding-top: 60px; }
.pt70 { padding-top: 70px; }
.pt80 { padding-top: 80px; }
.pt90 { padding-top: 90px; }
.pt100 { padding-top: 100px; }

.pb0 { padding-bottom: 0px; }
.pb5 { padding-bottom: 5px; }
.pb10 { padding-bottom: 10px; }
.pb15 { padding-bottom: 15px; }
.pb20 { padding-bottom: 20px; }
.pb25 { padding-bottom: 25px; }
.pb30 { padding-bottom: 30px; }
.pb40 { padding-bottom: 40px; }
.pb50 { padding-bottom: 50px; }
.pb60 { padding-bottom: 60px; }
.pb70 { padding-bottom: 70px; }
.pb80 { padding-bottom: 80px; }
.pb90 { padding-bottom: 90px; }
.pb100 { padding-bottom: 100px; }

.pl0 { padding-left:0px; }
.pl5 { padding-left:5px; }
.pl10 { padding-left:10px; }
.pl15 { padding-left:15px; }
.pl20 { padding-left:20px; }
.pl25 { padding-left:25px; }
.pl30 { padding-left:30px; }
.pl40 { padding-left:40px; }
.pl50 { padding-left:50px; }
.pl60 { padding-left:60px; }
.pl70 { padding-left:70px; }
.pl80 { padding-left:80px; }
.pl90 { padding-left:90px; }
.pl100 { padding-left:100px; }

.pr0 { padding-right:0px; }
.pr5 { padding-right:5px; }
.pr10 { padding-right:10px; }
.pr15 { padding-right:15px; }
.pr20 { padding-right:20px; }
.pr25 { padding-right:25px; }
.pr30 { padding-right:30px; }
.pr40 { padding-right:40px; }
.pr50 { padding-right:50px; }
.pr60 { padding-right:60px; }
.pr70 { padding-right:70px; }
.pr80 { padding-right:80px; }
.pr90 { padding-right:90px; }
.pr100 { padding-right:100px; }



/* width - px
--------------------------------------------------------- */
.w0px { width:0px; }
.w5px { width:5px; }
.w10px { width:10px; }
.w15px { width:15px; }
.w20px { width:20px; }
.w25px { width:25px; }
.w30px { width:30px; }
.w35px { width:35px; }
.w40px { width:40px; }
.w45px { width:45px; }
.w50px { width:50px; }
.w55px { width:55px; }
.w60px { width:60px; }
.w65px { width:65px; }
.w70px { width:70px; }
.w75px { width:75px; }
.w80px { width:80px; }
.w85px { width:85px; }
.w90px { width:90px; }
.w95px { width:95px; }
.w100px { width:100px; }
.w150px { width:150px; }
.w200px { width:200px; }
.w250px { width:250px; }
.w300px { width:300px; }
.w350px { width:350px; }
.w400px { width:400px; }
.w450px { width:450px; }
.w500px { width:500px; }
.w550px { width:550px; }
.w600px { width:600px; }
.w900px { width:900px; }
.w980px { width:980px; }


/* width - %
--------------------------------------------------------- */
.w0 { width:0%; }
.w5 { width:5%; }
.w10 { width:10%; }
.w15 { width:15%; }
.w20 { width:20%; }
.w25 { width:25%; }
.w30 { width:30%; }
.w35 { width:35%; }
.w40 { width:40%; }
.w45 { width:45%; }
.w50 { width:50%; }
.w55 { width:55%; }
.w60 { width:60%; }
.w65 { width:65%; }
.w70 { width:70%; }
.w75 { width:75%; }
.w80 { width:80%; }
.w85 { width:85%; }
.w90 { width:90%; }
.w95 { width:95%; }
.w100 { width:100%; }
.w150 { width:150%; }
.w200 { width:200%; }
.w250 { width:250%; }
.w300 { width:300%; }
.w350 { width:350%; }
.w400 { width:400%; }
.w450 { width:450%; }
.w500 { width:500%; }
.w550 { width:550%; }
.w600 { width:600%; }
.w900 { width:900%; }
.w980 { width:980%; }



/* wrapper - width %
--------------------------------------------------------- */
.wrapper {
	width: 100%;
	margin: 40px auto 0;
	text-align: left;
}
.wrapper.w50p {
	width: 50%;
}
.wrapper.w60p {
	width: 60%;
}
.wrapper.w65p {
	width: 65%;
}
.wrapper.w70p {
	width: 70%;
}
.wrapper.w80p {
	width: 80%;
}
.wrapper.w90p {
	width: 90%;
}
.wrapper.w100p {
	width: 100%;
}


.wrapper-w600 {
	width: 100%;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
}
.wrapper-w700 {
	width: 100%;
	max-width: 700px;
	margin-left: auto;
	margin-right: auto;
}
.wrapper-w760 {
	width: 100%;
	max-width: 760px;
	margin-left: auto;
	margin-right: auto;
}
.wrapper-w800 {
	width: 100%;
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.wrapper-w900 {
	width: 100%;
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
}
.wrapper-w980 {
	width: 100%;
	max-width: 980px;
	margin-left: auto;
	margin-right: auto;
}
.wrapper-w1000 {
	width: 100%;
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
.wrapper-w1080 {
	width: 100%;
	max-width: 1080px;
	margin-left: auto;
	margin-right: auto;
}
.wrapper-w1180 {
	width: 100%;
	max-width: 1180px;
	margin-left: auto;
	margin-right: auto;
}
.wrapper-w1200 {
	width: 100%;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 20px;
}

/*tablet and sp*/
@media screen and (max-width: 1020px) {
	.wrapper {
		width: 100% !important;
		margin: 16px auto 0;
}
}




/* =========================================================
必須マーク、エラーメッセージ、アラートメッセージ
========================================================= */

/* 必須 */
.required:after {
	content: "必須";
	background: #cf646b;
	color: #fff;
	padding: 0 10px;
	margin: 0 0 0 5px;
	font-weight: normal;
	font-size: 0.9em;
	border-radius: 3px;
	float: right;
	min-width: 2em;
	text-align: center;
}

/* 条件付き必須 */
.required_condition:after {
	content: "※";
	background: #317dcb;
	color: #fff;
	padding: 0 10px;
	margin: 0 0 0 5px;
	font-weight: normal;
	font-size: 0.9em;
	border-radius: 3px;
	float: right;
	min-width: 2em;
	text-align: center;
}

/* エラーメッセージ、アラートメッセージ */
.alertMsg,
.errorMessage {
	display: block;
	color: #e30011;
	margin-top: 5px;
	font-size: 90%;
}
.alertMsg + * {
	margin-top: 5px;
}





/* =========================================================
文章のくくり
========================================================= */
.article_wrap {
	max-width: 1080px;
	width: 100%;
	text-align: left;
	margin-left: auto;
	margin-right: auto;
}
/* clearfix */
.article_wrap:after {
	content: "";
	clear: both;
	display: block;
}
.article_wrap_inner {
}
.article_wrap .h {
	text-align: left;
	font-size: 18px;
	font-weight: bold;
}
.article_wrap > section + section {
	margin-top: 2em;
}
.article_wrap .description {
	text-align: left;
}
.article_wrap .visual {
}
.img-right {
	float: right;
	text-align: right;
	margin: 0 0 32px 32px;
}
.img-left {
	float: left;
	text-align: right;
	margin: 0 32px 32px 0;
}

/*tablet*/
@media screen and (min-width: 701px) and (max-width: 1020px) {
.article_wrap {
	/*margin: 24px auto 0;*/
}
.article_wrap .h {
	font-size: 16px;
}
.img-right {
	margin: 0 0 0 24px;
	margin-top: 0;
}
.img-left {
	margin: 0 24px 0 0;
	margin-top: 0;
}
}

/*sp*/
@media screen and (max-width: 700px) {
.article_wrap {
	/*margin: 16px auto 0;*/
}
.article_wrap .h {
	font-size: 14px;
}
.img-right {
	width: 33%;
	margin: 0 0 0 16px;
}
.img-left {
	width: 33%;
	margin: 0 16px 0 0;
}
}


/* =========================================================
カラム分け
========================================================= */

/* カラム分け（汎用）
--------------------------------------------------------- */
.wrap_parent {
	display: table !important;
	width: 100%;
}
/* ----- 二分割 ----- */
.left_wrap {
	display: table-cell;
	padding-right: 15px;
	width: 50%;
	vertical-align: top;
}
.right_wrap {
	display: table-cell;
	padding-left: 15px;
	width: 50%;
	vertical-align: top;
}
/* ----- 三分割 ----- */
.wrap_parent_3 {
	display: table !important;
	width: 102%;
	margin-left: -1%;
}
.part_wrap_3 {
	display: table-cell;
	padding-left: 1%;
	padding-right: 1%;
	width: 33.333%;
	vertical-align: top;
}
/* ----- 四分割 ----- */
.wrap_parent_4 {
	display: table !important;
	width: 102%;
	margin-left: -1%;
}
.part_wrap_4 {
	display: table-cell;
	padding-left: 1%;
	padding-right: 1%;
	width: 25%;
	vertical-align: top;
}


/* カラム分け
--------------------------------------------------------- */
.col_wrap {
	display: flex;
	display: -webkit-flex; /* Safari */
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
	align-items: stretch;
	-webkit-align-items: stretch; /* Safari */
	justify-content: flex-start;
	-webkit-justify-content: flex-start;	 /* Safari */
	-webkit-align-content: stretch; /* Safari */
	align-content:         stretch;
}
.col__item {
	/*width: 50%;*/
	text-align: left;
	padding: 16px;
	width: 50%;
	text-align: left;
}

/* 左右 */
.col__item-right {
	padding: 16px 0 16px 32px;
}
.col__item-left {
	padding: 16px 32px 16px 0;
}
/*左右：上の空き無し*/
.col__item-right.pt0 {
	padding-top: 0;
}
.col__item-left.pt0 {
	padding-top: 0;
}

/* 並び順 */
.col__item-order1 {
  -webkit-order: 1; /* Safari */
  order:         1;
}
.col__item-order2 {
  -webkit-order: 2; /* Safari */
  order:         2;
}
.col__item-order3 {
  -webkit-order: 3; /* Safari */
  order:         3;
}

/* 幅 */
.col__item.w10,
.img-float.w10 {
	width: 10%;
}
.col__item.w20,
.img-float.w20 {
	width: 20%;
}
.col__item.w25,
.img-float.w25 {
	width: 25%;
}
.col__item.w30,
.img-float.w30 {
	width: 30%;
}
.col__item.w40,
.img-float.w40 {
	width: 40%;
}
.col__item.w50,
.img-float.w50 {
	width: 50%;
}
.col__item.w60,
.img-float.w60 {
	width: 60%;
}
.col__item.w70,
.img-float.w70 {
	width: 70%;
}
.col__item.w75,
.img-float.w75 {
	width: 75%;
}
.col__item.w80,
.img-float.w80 {
	width: 80%;
}
.col__item.w90,
.img-float.w90 {
	width: 90%;
}

/*tablet and sp*/
@media screen and (max-width: 1020px) {
.col_wrap .col__item-left {
	padding: 0 24px 24px 0;
}
.col_wrap .col__item-right {
	padding: 0 0 24px 24px;
}
}

/*sp*/
@media screen and (max-width: 700px) {
.col__item,
.col__item-right,
.col__item-left {
	padding: 0 0 16px 0;
    	width: 100% !important;
}
.col__item-spblock.col__item-right,
.col__item-spblock.col__item-left,
.col__item-spblock {
	width: 100% !important;
	padding: 0 0 16px 0;
}
.col_wrap .col__item-right,
.col_wrap .col__item-left {
	padding: 0 0 16px 0;
}
}






/* テキスト回り込み
--------------------------------------------------------- */
.float_wrap {
	margin: 0 auto;
	width: 100%;
}
.float_wrap__inner {
	padding: 24px 48px;
	text-align: left;
}
.float_wrap .float__item-right,
.float_wrap .float__item-left {
	text-align: right;
	padding: 24px 48px;
	display: block;
	background: transparent;
}
.float_wrap .float__item-right {
	float: right;
}
.float_wrap .float__item-left {
	float: left;
}

/*tablet and sp*/
@media screen and (max-width: 1020px) {
.float_wrap__inner,
.float_wrap .float__item-right,
.float_wrap .float__item-left {
	padding: 24px 32px;
}
.float_wrap .float__item-right,
.float_wrap .float__item-left  {
	width: 33.333%;
	max-width: 280px;
}
}

/*sp*/
@media screen and (max-width: 700px) {
.float_wrap__inner,
.float_wrap .float__item-right,
.float_wrap .float__item-left  {
	padding: 16px;
}
.float_wrap + .float_wrap {
	padding-top: 2em;
}
}
/*sp*/
@media screen and (max-width: 568px) {
.float_wrap__inner  {
	padding: 0;
}
.float_wrap .float__item-right {
	padding: 0 0 0 16px;
}
.float_wrap .float__item-left  {
	padding: 0 16px 0 0;
}
}


.float_wrap .h {
	text-align: left;
	font-weight: bold;
}
.float_wrap__inner section + section {
	padding-top: 2em;
}



/* カード型
--------------------------------------------------------- */
.card_wrap {
	display: block !important;
	width: 100%;
	letter-spacing:-0.4em;/* inline-block Hack */
}
.card_shadow {
	box-shadow: 2px 6px 8px rgba(0,0,0,0.1);
}
.card_wrap .card_part {
	display: inline-block;
	letter-spacing: normal;/* inline-block Hack */
	*display: inline;/* inline-block Hack forIE */
	*zoom: 1;/* inline-block Hack forIE */
}
/* ----- 二分割 ----- */
.card_wrap_2 .card_part {
	width: 50%;
	vertical-align: top;
}
/*
.card_wrap_2 .card_part:nth-child(odd) .card_part_inner {
	margin-left: 0;
}
.card_wrap_2 .card_part:nth-child(even) .card_part_inner {
	margin-right: 0;
}
*/
.card_wrap_2 .card_part_inner {
	margin-left: 16px;
	margin-right: 16px;
	/*background: #efefef;/*検証用*/
	padding: 16px;
}
/* ----- 三分割 ----- */
.card_wrap_3 .card_part {
	width: 33.333%;
	vertical-align: top;
}
/*
.card_wrap_3 .card_part:first-child .card_part_inner {
	margin-left: 0;
}
.card_wrap_3 .card_part:nth-child(3n) .card_part_inner {
	margin-right: 0;
}
*/
.card_wrap_3 .card_part_inner {
	margin-left: 16px;
	margin-right: 16px;
	/*background: #efefef;/*検証用*/
	padding: 16px;
}
/* ----- 四分割 ----- */
.card_wrap_4 .card_part {
	width: 25%;
	vertical-align: top;
}
/*
.card_wrap_4 .card_part:first-child .card_part_inner {
	margin-left: 0;
}
.card_wrap_4 .card_part:nth-child(4n) .card_part_inner {
	margin-right: 0;
}
*/
.card_wrap_4 .card_part_inner {
	margin-left: 16px;
	margin-right: 16px;
	/*background: #efefef;/*検証用*/
	padding: 16px;
}
/* ----- 五分割 ----- */
.card_wrap_5 .card_part {
	width: 20%;
	vertical-align: top;
}
/*
.card_wrap_5 .card_part:first-child .card_part_inner {
	margin-left: 0;
}
.card_wrap_5 .card_part:nth-child(5n) .card_part_inner {
	margin-right: 0;
}
*/
.card_wrap_5 .card_part_inner {
	margin-left: 16px;
	margin-right: 16px;
	/*background: #efefef;/*検証用*/
	padding: 16px;
}

/* ----- サイズ固定 ----- */
.card_wrap_320 .card_part {
	max-width: 360px;
	vertical-align: top;
	margin: 8px;
	padding: 8px;
}
.card_wrap_320 .card_part:nth-child(-n+3){
	margin-top: 0;
}
.card_wrap.card_wrap_320 {
	display: block !important;
	margin: 0 auto;
	width: 100%;
}
/*tablet*/
@media screen and (min-width: 701px) and (max-width: 1020px) {
	.card_wrap .card_part,
	.tile_wrap .tile_part,
	.card_wrap_320 .card_part {
		width: 48%;
		margin: 0 auto;
	}
}
/*sp*/
@media screen and (max-width: 700px) {
	.card_wrap .card_part,
	.tile_wrap .tile_part,
	.card_wrap_320 .card_part {
		width: 100%;
		display: block;
		margin: 0 auto;
	}
	.card_wrap .card_part {
		margin: 16px auto;
	}
}


/* タイル型
--------------------------------------------------------- */
.tile_wrap {
	display: table !important;
	width: 100%;
}
/* ----- 二分割 ----- */
.tile_wrap_2 .tile_part {
	display: table-cell;
	width: 50%;
	vertical-align: top;
}
.tile_wrap_2 .tile_part_inner {
	margin-left: 0;
	margin-right: 0;
	/*background: #efefef;/*検証用*/
	/*border: 1px solid #ddd;/*検証用*/
	padding: 16px;
}
/* ----- 三分割 ----- */
.tile_wrap_3 .tile_part {
	display: table-cell;
	width: 33.333%;
	vertical-align: top;
}
.tile_wrap_3 .tile_part_inner {
	margin-left: 0;
	margin-right: 0;
	/*background: #efefef;/*検証用*/
	/*border: 1px solid #ddd;/*検証用*/
	padding: 16px;
}
/* ----- 四分割 ----- */
.tile_wrap_4 .tile_part {
	display: table-cell;
	width: 25%;
	vertical-align: top;
}
.tile_wrap_4 .tile_part_inner {
	margin-left: 0;
	margin-right: 0;
	/*background: #efefef;/*検証用*/
	/*border: 1px solid #ddd;/*検証用*/
	padding: 16px;
}
/* ----- 五分割 ----- */
.tile_wrap_5 .tile_part {
	display: table-cell;
	width: 20%;
	vertical-align: top;
}
.tile_wrap_5 .tile_part_inner {
	margin-left: 0;
	margin-right: 0;
	/*background: #efefef;/*検証用*/
	/*border: 1px solid #ddd;/*検証用*/
	padding: 16px;
}




/* =========================================================
リンク
========================================================= */

/* ----- 別窓リンク（_blank）のときアイコンを付ける ----- */
.link-blank:after {
	font-family: "FontAwesome";
	font-size: 1em;
	padding: 0;
	font-weight: normal;
	position: relative;
	vertical-align: middle;

    display: inline-block;
    font-feature-settings: normal;
    font-kerning: auto;
    font-language-override: normal;
    font-size-adjust: none;
    font-stretch: normal;
    font-style: normal;
    font-synthesis: weight style;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-rendering: auto;
    transform: translate(0px, 0px);

	left: .5em;
	top: -0.05em;
	width: 1.2em;
	text-align: center;

	content: "\f08e"; /* 別窓(_blank)リンク */

	color: #999;
}

.bg-orange.link-blank:after {
	color: #fff;
}


/* =========================================================
ボタン
========================================================= */

.btn-col1 {
	margin: 24px auto;
}
.btn-col2 {
	display: block;
	margin: 0 auto;
	letter-spacing:-0.4em;/* inline-block Hack */
}
.btn-col2 .btn-col2-item {
	display: inline-block;
	letter-spacing: normal;/* inline-block Hack */
	*display: inline;/* inline-block Hack forIE */
	*zoom: 1;/* inline-block Hack forIE */
	margin: auto 8px;
}

.btn {
	padding: 8px 16px;
	background-color: #253f68;
	color: #fff;
	font-weight: normal;
	text-decoration: none;
	display: inline-block;
	text-align: center;
	position: relative;
	width:100%;
	max-width: 288px;
}

.btn:last-child,
.btn-col1:last-child {
	margin-bottom: 0;
}

.btn,
.btn:link,
.btn:visited {
	color: #fff;
	font-weight: normal;
	text-decoration: none;
}
.btn-o {
	background-color: #fff;
	color: #253f68;
	border: 1px solid #ccc;
}

.btn.btn-o-orange {
	background-color: #fff;
	color: #ec6c00;
	border: 1px solid #ec6c00;
	/*border-bottom: 2px solid #ce5e00;/* btn-shadow */
}
.btn.btn-o-orange:hover {
	background-color: #ec6c00;
	color: #fff;
}

.btn.btn-o-blue {
	background-color: #fff;
	color: #005EAE;
	border: 1px solid #005EAE;
}
.btn.btn-o-blue:hover {
	background-color: #005EAE;
	color: #fff;
}

.btn.btn-radius {
	border-radius: 40px;
}

.btn-small {
	padding-top: 5px;
	padding-bottom: 5px;
}

/*sp*/
@media screen and (max-width: 700px) {
	.btn-col1 {
		margin: 16px auto;
	}
	.btn-col2 {
		letter-spacing: normal;
	}
	.btn-col2 .btn-col2-item {
		display: block;
		width: 100%;
		margin: 16px auto;
	}

	.btn,
	.btn-small {
		width: 100%;
		float: none;
		padding: 0.5em;
		max-width: inherit;
	}
	.btn:before {
		width: auto;
		margin-right: 0.1em;
	}
}

/* ボタンの幅
--------------------------------------------------------- */
.btn-w100 .btn {
	width: 100%;
}


/* ボタンにアイコンを付ける
--------------------------------------------------------- */

/* ----- 矢印アイコン　border回転Ver. ----- */
/* 矢印アイコンを付ける（デフォルト） */
.btn .btn-inner.icon-border-rotate {
    display: inline-block;
    position: relative;
    white-space: nowrap !important;

    padding-right: 20px;
}
.btn .btn-inner.icon-border-rotate:before {
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    content: "";
    display: inline-block;
    height: 7px;
    right: 0;
    margin-top: -5px;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 7px;
}
/* 矢印アイコンを付ける（右側） */
.btn .btn-inner.icon-border-rotate.arrow-left {
    display: inline-block;
    position: relative;
    white-space: nowrap !important;

    padding-left: 20px;
}
.btn .btn-inner.icon-border-rotate.arrow-left:after {
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    content: "";
    display: inline-block;
    height: 7px;
    left: 0;
    margin-top: -5px;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 7px;
}
/* 矢印アイコンを付ける（左側） */
.btn .btn-inner.icon-border-rotate.arrow-right {
    display: inline-block;
    position: relative;
    white-space: nowrap !important;

    padding-right: 20px;
}
.btn .btn-inner.icon-border-rotate.arrow-right:before {
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    content: "";
    display: inline-block;
    height: 7px;
    right: 0;
    margin-top: -5px;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 7px;
}


/* ----- 矢印アイコン　アイコンフォントVer. ----- */

.btn-icon {
    display: inline-block;
    white-space: nowrap !important;
    position: relative;
	padding-left: 8px;
	line-height: 1 !important;
}
.btn-icon:after {
	font-family: "FontAwesome";
	font-size: 1.2em;
	padding: 0;
	font-weight: normal;
	position: relative;
	vertical-align: middle;

    display: inline-block;
    font-feature-settings: normal;
    font-kerning: auto;
    font-language-override: normal;
    font-size-adjust: none;
    font-stretch: normal;
    font-style: normal;
    font-synthesis: weight style;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-rendering: auto;
    transform: translate(0px, 0px);

	left: 0.5em;
	top: -0.05em;
	width: 1.2em;
	text-align: center;
}

/* ----- アイコンの種類 ----- */
.btn-icon.icon-angle-right:after,
.btn-icon.icon-arrow-right:after {
	content: "\f105"; /* 矢印　＞　（細） */
}
.btn-icon.icon-chevron-right:after {
	content: "\f054"; /* 矢印　＞　（太） */
}
.btn-icon.icon-chevron-circle-right:after {
	content: "\f138"; /* 矢印　（＞）　（太） */
}
.btn-icon.icon-blank:after {
	content: "\f08e"; /* 別窓(_blank)リンク */
	font-size: 90%;
	margin-left: 0.3em;
}


/*
.btn:hover {
	opacity: 1;
}
.btn:before {
	font-family: "FontAwesome";
	font-size: 1.2em;
	padding: 0;
	font-weight: normal;
	position: relative;
	vertical-align: middle;

    display: inline-block;
    font-feature-settings: normal;
    font-kerning: auto;
    font-language-override: normal;
    font-size-adjust: none;
    font-stretch: normal;
    font-style: normal;
    font-synthesis: weight style;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-rendering: auto;
    transform: translate(0px, 0px);

	left: -8px;
	top: -0.1em;
	width: 18px;
	text-align: center;

	content: "\f061";
}
.btn-tawara {
	border-radius: 48px;
	height: 48px;
	padding: 14px 42px;
	display: block;
}
.btn-contact {
	background: #253f68;
	color: #fff;
}

.btn.more {
	float: right;
	margin-left: 16px;
	margin-right: 16px;
}
*/



/* =========================================================
アイコン付きリンクテキスト
========================================================= */

/* ----- 矢印アイコン ----- */

.link-icon {
    display: block;
    position: relative;
	/*padding-left: 1.4em;*/
}
.link-icon:before {
	font-family: "FontAwesome";
	font-size: 1.1em;
	padding: 0;
	font-weight: normal;
	position: relative;
	vertical-align: middle;

    display: inline-block;
    font-feature-settings: normal;
    font-kerning: auto;
    font-language-override: normal;
    font-size-adjust: none;
    font-stretch: normal;
    font-style: normal;
    font-synthesis: weight style;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-rendering: auto;
    transform: translate(0px, 0px);

	left: 0;
	/*top: -0.2px;*/
	margin-top: -0.2px;
	width: 1.2em;
	text-align: center;

	color: #e60019;

	content: "\f138"; /* 矢印　（＞）　（太） */
}

/* ----- アイコンの種類 ----- */
.link-icon.icon-angle-right:before,
.link-icon.icon-arrow-right:before {
	content: "\f105"; /* 矢印　＞　（細） */
}
.link-icon.icon-chevron-right:before {
	content: "\f054"; /* 矢印　＞　（太） */
}
.link-icon.icon-chevron-circle-right:before {
	content: "\f138"; /* 矢印　（＞）　（太） */
}
.link-icon.icon-blank:before {
	content: "\f08e"; /* 別窓(_blank)リンク */
	font-size: 90%;
	margin-left: 0.3em;
}



/* =========================================================
横並びボックス(flexbox)
========================================================= */

.flexbox {
	display: flex;
	display: -webkit-flex; /* Safari */
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
	align-items: stretch;
	-webkit-align-items: stretch; /* Safari */
	-webkit-justify-content: flex-start; /* Safari */
	justify-content:         flex-start;
	-webkit-align-content: stretch; /* Safari */
	align-content:         stretch;

	margin-left: -0.5%;
	margin-right: -0.5%;
	margin-top: -16px;
}
.flexbox-left {
	-webkit-justify-content: flex-start; /* Safari */
	justify-content:         flex-start;
}
.flexbox-center {
	-webkit-justify-content: center; /* Safari */
	justify-content:         center;
}
.flexbox-right {
	-webkit-justify-content: flex-end; /* Safari */
	justify-content:         flex-end;
}
.flexbox-between {
	-webkit-justify-content: space-between; /* Safari */
	justify-content:         space-between;
}
.flexbox-space {
  -webkit-justify-content: space-around; /* Safari */
  justify-content:         space-around;
}
.flexbox-top {
	-webkit-align-items: center;
	align-items: center;
}
.flexbox-middle {
	-webkit-align-items: center;
	align-items: center;
}
.flexbox-bottom {
	-webkit-align-items: flex-start;
	align-items: flex-start;
}

.flexbox-col1 .flexbox__item { width: 100%; }
.flexbox-col2 .flexbox__item { width: 49%; }
.flexbox-col3 .flexbox__item { width: 32.333%; }
.flexbox-col4 .flexbox__item { width: 24%; }
.flexbox-col5 .flexbox__item { width: 19%; }
.flexbox-col6 .flexbox__item { width: 15.66666666666667%; }
.flexbox-col7 .flexbox__item { width: 13.285%; }

.flexbox__item {
	margin: 0.5%;
	margin-top: 16px;
	padding: 24px;
}


.flexbox-pb .flexbox__item {
	padding-bottom: 4.5rem;
	position: relative;
}
.flexbox-pb .flexbox__item.pd0 {
	padding-bottom: 1rem;
}
.flexbox-pb .flexbox__item.pall0 {
	padding: 0;
}
.flexbox-pb .flexbox__item.pall0 .pall0_inner {
    padding: 1rem;
}
.btn-bottom {
    bottom: 20px;
    display: block;
    padding: 0 24px;
    position: absolute;
	left: 0;
	right: 0;
}
.btn-w100 {
}
.btn-w100 a {
	min-width: inherit;
}

/*tablet and sp*/
@media screen and (max-width: 1020px) {
.flexbox-col1 .flexbox__item { width: 100%; }
.flexbox-col2 .flexbox__item { width: 49%; }
.flexbox-col3 .flexbox__item { width: 32.333%; }
.flexbox-col4 .flexbox__item { width: 32.333%; }
.flexbox-col5 .flexbox__item { width: 32.333%; }
.flexbox-col6 .flexbox__item { width: 32.333%; }
.flexbox-col7 .flexbox__item { width: 32.333%; }
}

/*sp*/
@media screen and (max-width: 700px) {
.flexbox-col1 .flexbox__item,
.flexbox-col2 .flexbox__item,
.flexbox-col3 .flexbox__item,
.flexbox-col4 .flexbox__item,
.flexbox-col5 .flexbox__item { width: 100%; }

.flexbox-col5.flexbox {
	margin-top: inherit;
}

/* ----- スマホ表示の時に左右・上下を入れ替える ----- */
/*並列の順番逆転*/
.flexbox-row-reverse {
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
/*縦列の順番逆転*/
.flexbox-column-reverse {
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-direction: column-reverse;
	flex-direction: column-reverse;
}
}
@media screen and (max-width: 540px) {
.flexbox-col6 .flexbox__item { width: 49%; }
}

.flexbox__item a {
	color: inherit;
}

.flexbox-wh .flexbox__item {
	background: #fff;
}

/* シャドウ01
--------------------------------------------------------- */
.flexbox-shadow-01 .flexbox__item {
	box-shadow: 2px 6px 8px rgba(0,0,0,0.1);
}
.card-shadow {
	box-shadow: 2px 6px 8px rgba(0,0,0,0.1);
}


/* シャドウ02
--------------------------------------------------------- */
.flexbox-shadow-02 .flexbox__item {
	box-shadow: 0 10px 6px -6px rgba(0,0,0,0.1);
}

/* ボーダー
--------------------------------------------------------- */
.flexbox-border-01 .flexbox__item {
	border: 1px solid #ccc;
}




/* =========================================================
リンクパネル
========================================================= */

.link_panel_wrap {
	display: flex;
	display: -webkit-flex; /* Safari */
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
	align-items: stretch;
	-webkit-align-items: stretch; /* Safari */
	justify-content: flex-start;
	-webkit-justify-content: flex-start;	 /* Safari */
	-webkit-align-content: stretch; /* Safari */
	align-content:         stretch;

}
.link_panel_item {
	width: 32.3%;
	background: #fff;
	margin: 16px 0.5% 0;
	padding: 0;
	text-align: left;
	border: 1px solid #e0e0e0;

	/* box-shadow */
	box-shadow:0px 0px 16px -8px #ddd;
	-moz-box-shadow:0px 0px 16px -8px #ddd;
	-webkit-box-shadow:0px 0px 16px -8px #ddd;
}
.link_panel_item a {
	text-decoration: none;
	color: #333;
	display: block;
	/*height: 100%;*/
}
.link_panel_item .visual img {
	width: 100%;
}
.link_panel_item .description {
	padding: 0;
	font-size: 14px;
	display: inline-block;
}
.link_panel_item .description-inner {
	margin: 24px;
}
.link_panel_item .h {
	font-size: 21px;
	line-height: 1.2;
	font-weight: normal;
	text-align: left;
}
.link_panel_item a:hover .h {
	color: #e60019;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
	.link_panel_item {
		width: 48%;
		margin: 16px auto 0;
	}
	.link_panel_item .description-inner {
		margin: 24px;
	}
	.link_panel_item .h {
		font-size: 18px;
		margin-bottom: 8px;
	}
}
/*sp*/
@media screen and (max-width: 700px) {
	.link_panel_item {
		width: 100%;
		margin: 16px auto 0;
	}
	.link_panel_item .description-inner {
		margin: 16px;
	}
	.link_panel_item .h {
		font-size: 16px;
		margin-bottom: 8px;
	}
}



.link_panel-col2 .link_panel_item {
	width: 49%;
}
.link_panel-col3 .link_panel_item {
	width: 32.3%;
}
.link_panel-col4 .link_panel_item {
	width: 24%;
}
.link_panel-col5 .link_panel_item {
	width: 19%;
}
.link_panel-col6 .link_panel_item {
	width: 15.66%;
}

/*tablet and sp - 変則*/
@media screen and (max-width: 1200px) {
  .link_panel-col4 .link_panel_item,
  .link_panel-col5 .link_panel_item,
  .link_panel-col6 .link_panel_item {
	  width: 24%;
  }
}
/*tablet and sp - 変則*/
@media screen and (max-width: 800px) {
  .link_panel-col4 .link_panel_item,
  .link_panel-col5 .link_panel_item,
  .link_panel-col6 .link_panel_item {
	  width: 32.3%;
  }
}
/*sp*/
@media screen and (max-width: 700px) {
  .link_panel-col2 .link_panel_item,
  .link_panel-col3 .link_panel_item,
  .link_panel-col4 .link_panel_item,
  .link_panel-col5 .link_panel_item,
  .link_panel-col6 .link_panel_item {
	  width: 100%;
  }
}
/* グローバルナビ内メニュー（PC)
--------------------------------------------------------- */
.m-header-pc .link_panel_wrap {
	justify-content: flex-start;
	-webkit-justify-content: flex-start;	 /* Safari */
}
.m-header-pc .link_panel_item {
	background: #fff;
	margin: 16px 0.5% 0;
	padding: 0;
}

.m-header-pc .link_panel-col2 .link_panel_item {
	width: 49%;
}
.m-header-pc .link_panel-col3 .link_panel_item {
	width: 32.3%;
}
.m-header-pc .link_panel-col4 .link_panel_item {
	width: 24%;
}
.m-header-pc .link_panel-col5 .link_panel_item {
	width: 19%;
}

.m-header-pc .link_panel-col2 .description-inner {
	margin: 16px;
}
.m-header-pc .link_panel-col3 .description-inner {
	margin: 16px 8px;
}
.m-header-pc .link_panel-col4 .description-inner {
	margin: 8px;
}
.m-header-pc .link_panel-col5 .description-inner {
	margin: 8px;
}


.m-header-pc .link_panel_item .h {
	font-size: 16px;
}
.m-header-pc.link_panel_item .text_wrap {
	display: none;
}

/*tablet and sp*/
@media screen and (max-width: 1020px) {
.m-header-pc.link_panel_wrap {
	justify-content: flex-start;
	-webkit-justify-content: flex-start;	 /* Safari */
}
.m-header-pc.link_panel_item {
	width: 24%;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.m-header-pc.link_panel_item {
	width: 49%;
	margin-top: 4px;
}
.m-header-pc.link_panel_item .h {
	font-size: 14px;
}
.m-header-pc.link_panel_item .description-inner {
	margin: 8px;
}
}




/* ページ内フッターメニュー（カテゴリーメニュー）
--------------------------------------------------------- */
.footer-category-menu {
	border-top: 1px solid #ccc;
}
.footer-category-menu .link_panel_wrap {
	justify-content: flex-start;
	-webkit-justify-content: flex-start;	 /* Safari */
}
.footer-category-menu .link_panel_item {
	background: #fff;
	margin: 0 .5% 8px .5%;
	padding: 0;
}
.footer-category-menu .link_panel_item .description-inner {
	margin: 16px;
}
.footer-category-menu .link_panel_item .h {
	font-size: 16px;
}
.footer-category-menu .link_panel_item .text_wrap {
	display: none;
}

/*sp*/
@media screen and (max-width: 700px) {
.footer-category-menu .link_panel_item {
	width: 49%;
	margin-top: 4px;
}
.footer-category-menu .link_panel_item .h {
	font-size: 14px;
}
.footer-category-menu .link_panel_item .description-inner {
	margin: 8px;
}
}



/* =========================================================
サイドメニュー　共通メニュー
========================================================= */

/* sidenav
--------------------------------------------------------- */
  .sidenav {
    margin-top: 0;
	background: #fff;
	text-align: left;
	border-bottom: 1px solid #ccc;
  }
  .sidenav > li {
    margin-top: 0;
    border-top: 1px solid #ccc;
  }
  .sidenav > li > a {
    display: block;
    padding: 11px 32px 11px 20px;
  }
  .sidenav > li > a > span {
    position: relative;
    display: inline-block;
    padding-left: 18px;
  }
  .sidenav > li > a > span:before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 7px;
    left: 0;
    width: 5px;
    height: 5px;
    border-top: 2px solid #c00;
    border-right: 2px solid #c00;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }






/* side_menu
--------------------------------------------------------- */
.side_menu_list {
	border: 1px solid #ccc;
	background: #fff;
}
.side_menu_list li a {
	position: relative;
	padding-top: 10px;
	border-top: 1px dotted #ccc;
	padding: 10px 28px 10px 10px;
	display: block;
	text-decoration: none;
}
.side_menu_list li:first-child a {
	border-top: 0;
}
.side_menu_list li a:after {
	font-family: "FontAwesome";
	content: "\f105";
	position: absolute;
	right: 4px;
	font-size: 24px;
	padding: 0;
	text-align: center;
	top: 50%;
	margin-top: -10px;
	color: #E7241D;
}
@media screen and (max-width: 600px) {
	/* side_menu
	--------------------------------------------------------- */
	.side_menu_list li a {
		position: relative;
		padding-top: 10px;
		border-top: 1px solid #ede0d5;
		padding: 12px 38px 12px 12px;
		display: block;
		text-decoration: none;
		color: #333;
		font-size: 14px;
	}
	.side_menu_list li:first-child a {
		border-top: 0;
	}
	.side_menu_list li a:after {
		font-family: "FontAwesome";
		content: "\f105";
		position: absolute;
		right: 12px;
		font-size: 26px;
		padding: 0;
		text-align: center;
		top: 50%;
		margin-top: -10px;
		color: #E7241D;
		line-height: 0.8;
	}

	.side_menu_section .section_body .side_menu_list {
		background-color:#ffffff;
		border:1px solid #d0c7b9;
		border-radius: 6px;
		-webkit-border-radius: 6px;
		-moz-border-radius: 6px;
	}
}


/* =========================================================
サイドメニュー　アコーディオンメニュー
========================================================= */

/* accordion_menu
--------------------------------------------------------- */
.accordion_menu_list {
	border-bottom: 1px solid #ccc;
	margin-bottom: 16px;
}
.accordion_menu_list dd .sidenav {
	border-bottom: 0;
}
.accordion_menu_list dt {
	position: relative;
	border-top: 1px solid #ccc;
	padding: 11px 32px 11px 20px;
	display: block;
	cursor: pointer;
	background: #fff;
}
.accordion_menu_list dt:after {
	font-family: "FontAwesome";
	/*content: "\f105";*/
	content: "\f107";
	position: absolute;
	right: 8px;
	font-size: 24px;
	padding: 0;
	text-align: center;
	top: 50%;
	margin-top: -20px;
	color: #000;
}






/* =========================================================
見出し
========================================================= */
.h {
	text-align: center;
	margin-bottom: 16px;
	line-height: 1.5;
	font-family: "kozuka-gothic-pr6n","メイリオ", Meirio, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.h .icon {
}

.h.h-border-bottom-02 {
	border-bottom: 2px solid #253f68;
	padding-bottom: .4em;
	margin-bottom: 1.5em;
}
/* ttl_section
--------------------------------------------------------- */
.ttl_section .section_body {
	padding: 16px 20px;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.ttl_section .section_body {
	padding: 0;
}
.ttl_section .section_body_inner {
	padding: 0 16px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.ttl_section .section_body {
	padding: 0;
}
}
/*tablet*/
/*@media screen and (min-width: 1201px) {
.ttl_section + .section_wrap > .section_body {
	padding: 0px 20px 40px;
}
}*/

/* h-type01
--------------------------------------------------------- */
.h-type00 {
	background: #fff; /* #e4e8ed */
	padding: .8em;
	border-top: 2px solid #253f68;
	border-bottom: 2px solid #253f68;
	margin: 0;
}
.h-type00 .h-main {
	color: #253f68;
}
.h-type00 .h-sub {
	color: #253f68;
}

.h-type00 .h-main,
.h-type01 .h-main {
	font-size: 28px;
	line-height: 1.5;
	margin-bottom: 0;
	font-weight: 700;
}
.h-type00 .h-sub,
.h-type01 .h-sub {
	font-size: 13px;
	line-height: 1.2;
	font-weight: normal;
	color: #666;
	margin-top: 0;
}
.h-type00 .h-sub.en,
.h-type01 .h-sub.en {
	font-family: Arial, Helvetica, sans-serif;
}

/*tablet*/
@media screen and (min-width: 701px) and (max-width: 1020px) {
	.h-type00 .h-main,
	.h-type01 .h-main {
		font-size: 21px;
	}
	.h-type00 .h-sub,
	.h-type01 .h-sub {
		font-size: 12px;
	}
	.h-type02 {
		font-size: 21px;
		margin-top: 2em;
	}

}
/*sp*/
@media screen and (max-width: 700px) {
	.h-type00 .h-main,
	.h-type01 .h-main {
		font-size: 18px;
	}
	.h-type00 .h-sub,
	.h-type01 .h-sub {
		font-size: 11px;
	}
	.h-type02 {
		font-size: 18px;
		margin-top: 1em;
	}
}

/* h-type02
--------------------------------------------------------- */
.h-type02 {
	font-weight: normal;
	font-size: 28px;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.h-type02 {
	font-size: 21px;
	margin: 0 auto 16px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.h-type02 {
	font-size: 16px;
	margin: 0 auto 16px;
}
}

/* h-type03
--------------------------------------------------------- */
.h-type03 {
	font-size: 21px;
	line-height: 1.5;
	font-weight: normal;
	color: #000;
	margin: 0 auto 24px;
	border-bottom: 4px double #253f68;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.h-type03 {
	font-size: 21px;
	margin: 0 auto 16px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.h-type03 {
	font-size: 16px;
	margin: 0 auto 16px;
}
}

/* h-type04
--------------------------------------------------------- */
/* ----- 見出しに線を付ける ----- */
.h-type04,
.h-type04-2,
.h-type04-l {
	font-weight: normal;
	font-size: 24px;
    display: flex;
	display: -webkit-flex; /* Safari */
    align-items: center;
	-webkit-align-items: center; /* Safari */
    text-align: center; /* for no-flexbox browsers */
	color: #000;
}
.h-type04:after,
.h-type04:before,
.h-type04-2:after,
.h-type04-2:before,
.h-type04-l:after {
    border-top: 1px solid;
	border-color: #ccc;
    content: "";
    display: inline; /* for IE */
    flex-grow: 1;
	-webkit-flex-grow: 1; /* Safari */
}
.h-type04:after,
.h-type04-2:after,
.h-type04-l:after {
    margin-left: 1em;
}
.h-type04:before,
.h-type04-2:before {
    margin-right: 1em;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.h-type04,
.h-type04-2,
.h-type04-l {
	font-size: 21px;
	margin: 1.5em auto .5em;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.h-type04,
.h-type04-l {
	font-size: 16px;
	margin: 1em auto .5em;
}
.h-type04-2 {
	font-size: 14px;
}
#about .bg-orange + .h-type04-2 {
	margin-top: 20px !important;
}
}

/* h-type05
--------------------------------------------------------- */
/* ----- 見出しに線を付ける（グラデ） ----- */
.h-type05 {
	font-weight: normal;
	font-size: 24px;
    display: flex;
	display: -webkit-flex; /* Safari */
    align-items: center;
	-webkit-align-items: center; /* Safari */
    text-align: center; /* for no-flexbox browsers */
	color: #000;
}
.h-type05:after,
.h-type05:before {
	height: 1px;
    content: "";
    display: inline; /* for IE */
    flex-grow: 1;
	-webkit-flex-grow: 1; /* Safari */
}
.h-type05:after {
    margin-left: 1em;
	background: linear-gradient(90deg, #888, transparent);
}
.h-type05:before {
    margin-right: 1em;
	background: linear-gradient(-90deg, #888, transparent);
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.h-type05 {
	font-size: 21px;
	margin: 0 auto 16px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.h-type05 {
	font-size: 16px;
	margin: 0 auto 16px;
}
}

/* h-type06
--------------------------------------------------------- */
.h-type06 {
	border-bottom: 2px solid #253f68;
	font-size: 24px;
	font-weight: normal;
	line-height: 1.5;
	margin: 0 auto 24px;
	padding-bottom: .2em;
	color: #000;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.h-type06 {
	font-size: 21px;
	margin: 0 auto 16px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.h-type06 {
	font-size: 16px;
	margin: 0 auto 16px;
}
}

/* h-type07（背景色）
--------------------------------------------------------- */
.h-type07 {
	background: #333;
	color: #fff;
	font-size: 24px;
	font-weight: normal;
	line-height: 1.5;
	margin: 0 auto 24px;
	padding: .3em 1em;
}
.section_wrap > .h-type07 {
	margin-bottom: 0;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.h-type07 {
	font-size: 21px;
	margin: 0 auto 16px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.h-type07 {
	font-size: 16px;
	margin: 0 auto 16px;
}
}

/* h-type08
--------------------------------------------------------- */
.h-type08 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
	margin: 8px auto;
	padding-bottom: .2em;
	color: #000;
	text-align: left;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.h-type08 {
	font-size: 21px;
	margin: 0 auto 16px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.h-type08 {
	font-size: 16px;
	margin: 0 auto 16px;
}
}

/* h-type09
--------------------------------------------------------- */
.h-type09 {
	font-size: 21px;
	border-bottom: 1px solid #ccc;
	padding: 4px 0;
	margin-bottom:  16px;
}

/* h-type10
--------------------------------------------------------- */
.h-type10 {
	background: #333;
	color: #fff;
	font-size: 28px;
	font-weight: normal;
	line-height: 1.5;
	margin: 0 auto 24px;
	padding: .4em 1em;
}
.section_wrap > .h-type10  {
	margin-bottom: 0;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.h-type10  {
	font-size: 21px;
	margin: 0 auto 16px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.h-type10  {
	font-size: 16px;
	margin: 0 auto 16px;
}
}



.bg-transparent-dark .h-main,
.bg-transparent-dark .h-type01 .h-main {
	color: #fff !important;
}
.bg-transparent-dark .h-sub,
.bg-transparent-dark .h-type01 .h-sub {
	color: #ccc !important;
}

.h1 {
  font-size: 2em;
  margin-bottom: 1em;
  font-weight: 900;
}
.h2 {
  font-size: 1.8em;
  margin-bottom: 1em;
  font-weight: 900;
}
.h3 {
  font-size: 1.5em;
  margin-bottom: 0.8em;
  font-weight: 700;
}
.h4 {
  font-size: 1.2em;
  margin-bottom: 0.5em;
  font-weight: 700;
}
.h5 {
  font-size: 1em;
  margin-bottom: 0.5em;
  font-weight: 500;
}

.h-border-bottom {
	border-bottom: 2px solid #000;
	padding: 4px;
	display: inline-block;
}
/*tablet*/
@media screen and (min-width: 701px) and (max-width: 1020px) {
.h1 {
  font-size: 2em;
  margin-bottom: 3em;
  font-weight: 900;
}
.h2 {
  font-size: 1.8em;
  margin-bottom: 2.5em;
  font-weight: 900;
}
.h3 {
  font-size: 1.5em;
  margin-bottom: 2em;
  font-weight: 700;
}
.h4 {
  font-size: 1.2em;
  margin-bottom: 1.8em;
  font-weight: 700;
}
.h5 {
  font-size: 1em;
  margin-bottom: 1.5em;
  font-weight: 500;
}

.h-border-bottom {
	border-bottom: 2px solid #000;
	padding: 4px;
	display: inline-block;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.h1 {
  font-size: 1.5em;
  margin-bottom: 1em;
  font-weight: 900;
}
.h2 {
  font-size: 1.3em;
  margin-bottom: 1em;
  font-weight: 900;
}
.h3 {
  font-size: 1.2em;
  margin-bottom: 1em;
  font-weight: 700;
}
.h4 {
  font-size: 1.1em;
  margin-bottom: 1em;
  font-weight: 700;
}
.h5 {
  font-size: 1em;
  margin-bottom: 1em;
  font-weight: 500;
}

.h-border-bottom {
	border-bottom: 2px solid #000;
	padding: 4px;
	display: inline-block;
}
}





/* =========================================================
段落
========================================================= */

p {
	margin-bottom: 2em;
}
p:last-child {
	margin-bottom: 0;
}


/* =========================================================
文章の整形
========================================================= */
/*sp*/
@media screen and (max-width: 700px) {
	.no_br br {
		display: none;
	}
.br-sp br {
	display: block;
}
}


/* =========================================================
パンくず
========================================================= */

.pankuzu_section {
	/*background: #f4f5f5;*/
}
.pankuzu_section .section_body {
	padding: 0 0 0 200px;
}
/*.pankuzu_section + .section_wrap {
	padding: 0;
}*/
/*tablet and sp*/
@media screen and (max-width: 900px) {
.pankuzu_section,
.pankuzu_section .section_body {
	padding: 0;
}
}
.pankuzu {
	padding: 16px 24px;
	margin: 0;
	text-align: left;
	font-size: 90%;
}
.pankuzu .pankuzu_link,
.pankuzu .pankuzu_here {
	position: relative;
    display: inline-block;
	letter-spacing: normal;/* inline-block Hack */
	*display:inline;/* inline-block Hack */
	*zoom:1;/* inline-block Hack */
}
.pankuzu .pankuzu_link:before,
.pankuzu .pankuzu_link:after {
	font-family: "FontAwesome";
	font-size: 1.2em;
	padding: 0;
	margin: 0 4px;
	font-weight: normal;
	color: #999;
	position: relative;
	vertical-align: middle;

    display: inline-block;
	letter-spacing: normal;/* inline-block Hack */
	*display:inline;/* inline-block Hack */
	*zoom:1;/* inline-block Hack */

    font-feature-settings: normal;
    font-kerning: auto;
    font-language-override: normal;
    font-size-adjust: none;
    font-stretch: normal;
    font-style: normal;
    font-synthesis: weight style;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-rendering: auto;
    transform: translate(0px, 0px);

	left: 2px;
	top: -0.1em;
	width: 18px;
	text-align: center;
}
.pankuzu .pankuzu_link:before {
	left: 0;
}
.pankuzu .pankuzu_link:after {
	content: "\f105"; /* 「＞」アイコン */
	font-size: 150%;
}
.pankuzu .home:before {
	content: "\f015"; /* 「ホーム」アイコン */
	font-size: 130%;
	color: #666;
}
.pankuzu a {
	text-decoration: none;
}
.pankuzu a:hover {
	text-decoration: underline;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
	/* ----- パンくず ----- */
	.pankuzu {
		padding: 16px 24px;
		margin: 0;
		text-align: left;
		font-size: 90%;
	}
	.pankuzu a i {
		margin: 0 2px;
		font-size: 140%;
	}
	.pankuzu_here {
		display: none !important;
	}
	.pankuzu_splast:after {
		display: none !important;
	}

}
/*sp*/

@media screen and (max-width: 900px) {
	.pankuzu {
		padding: 0;
	}
.pankuzu_section .section_body_inner {
	padding: 8px !important;
}

}


/* =========================================================
グローバルメニュー
========================================================= */

/* ----- globalNav ----- */
header .globalNav {
	width: 100%;
	height: 96px;
	top: 0;
}
header .globalNav ul {
	display: table;
	margin: 0 auto;
}
header .globalNav li {
	display: table-cell;
	height: 96px;
	vertical-align: middle;
}
header .globalNav li .menu_block {
	display: block;
	margin: 0;
}
header .globalNav li img {
	width: inherit;
}
header .globalNav li a {
	display: table-cell;
	height: 96px;
	text-decoration: none;
	font-size: 14px;
	padding: 0 40px;
	vertical-align: middle;
	color: #333;
	font-weight: 500;
	transition: all .3s;
	transform: scale(1);
}
header .globalNav li:first-child a {
	margin-left: 0;
}

/* ----- hoverでふわっと ----- */
header .globalNav li a {
	transition: all .3s;
}
header .globalNav li a:hover {
	background: #f0f0f0;
}

/* ----- hoverで中央から線を動かす----- */
/* Underline From Center /* Underline From Center */
.hvr-underline-from-center,
header .globalNav li a {
	vertical-align: middle;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	overflow: hidden;
}
.hvr-underline-from-center:before,
header .globalNav li a:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 50%;
	right: 50%;
	bottom: 0;
	background: #253f68;/* ラインのカラー */
	height: 4px;/* ラインの太さ */
	-webkit-transition-property: left, right;
	transition-property: left, right;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
.hvr-underline-from-center:hover:before,
.hvr-underline-from-center:focus:before,
.hvr-underline-from-center:active:before,
header .globalNav li a:hover:before,
header .globalNav li a:focus:before,
header .globalNav li a:active:before,
header .globalNav .here a:before {
	left: 0;
	right: 0;
}


/* =========================================================
タブメニュー
========================================================= */

/* ナビの分割数
--------------------------------------------------------- */

/* ----- 二分割 ----- */
.nav-2 li {
	width: 50%;
}
.sub_nav .nav-2 li a {
	margin: 0 40px;
}

/* ----- 五分割 ----- */
.nav-5 li {
	width: 20%;
}

/* ----- 六分割 ----- */
.nav-6 li {
	width: 16.66666666666667%;
}

/* ----- 七分割 ----- */
.nav-7 li {
	width: 14.28571428571429%;
}


/* サブナビゲーション（サブナビ）
--------------------------------------------------------- */
.sub_nav {
	width: 100%;
	border-bottom: 2px solid #e7e7e7;
	margin: 16px 0 0 0;
}
.sub_nav ul {
	display: block;
	max-width: 1080px;
	width: 100%;
	margin: 0 auto;
	letter-spacing:-0.4em;/* inline-block Hack */
}
.sub_nav li {
	display: inline-block;
	letter-spacing: normal;/* inline-block Hack */
	*display: inline;/* inline-block Hack forIE */
	*zoom: 1;/* inline-block Hack forIE */
	vertical-align: middle;
}
.sub_nav li a {
	display: block;
	margin: 0 16px;
	padding: 24px 16px;
	/*background: #f5f5f5;/* 検証用 */
	color: #666;
	font-weight: 500;
	text-decoration: none;
}
.sub_nav .here a {
	color: #000;
}
/* ----- hoverで線を動かす----- */
/* Underline From Center /* Underline From Center */
.sub_nav a {
	vertical-align: middle;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	overflow: hidden;
}
.sub_nav a:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 50%;
	right: 50%;
	bottom: 0;
	background: #ec6c00;
	height: 4px;/* ラインの太さ */
	-webkit-transition-property: left, right;
	transition-property: left, right;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
.sub_nav a:hover:before,
.sub_nav a:focus:before,
.sub_nav a:active:before,
.sub_nav .here a:before {
	left: 0;
	right: 0;
}

/* ----- スマホのフッターのサブナビ ----- */
footer .sub_nav {
	display: none;
}
/*tablet*/
@media screen and (min-width: 701px) and (max-width: 1020px) {
.sub_nav ul {
	max-width: 100%;
}
.sub_nav li a {
	margin: 0 2%;
	padding: 16px 2%;
	font-size: 90%;
}

/* ----- スマホのフッターのサブナビ ----- */
footer .sub_nav {
	display: none;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.sub_nav ul {
	max-width: 100%;
}
.sub_nav li a {
	margin: 0;
	padding: 16px 2%;
	font-size: 1.2em;
}
.sub_nav.nav-5 li {
	width: 50%;
}
.sub_nav li {
	display: none;
}
.sub_nav li.here {
	display: block;
	width: 100%;
}

/* ----- スマホのフッターのサブナビ ----- */
footer .sub_nav {
	display: block;
	background: #f5f5f5;
	max-width: 100%;
	margin: 0;
	padding: 4px;
}
footer .sub_nav .h {
	margin: 24px auto;
}
footer .sub_nav ul {
	max-width: 100%;
}
footer .sub_nav li a {
	margin: 4px;
	padding: 24px 2%;
	background: #fff;
	font-size: 1em;
}
footer .sub_nav.nav-5 li {
	width: 50%;
}
footer .sub_nav li {
	display: inline-block;
}
footer .sub_nav li.here {
	display: none;
}
}

/* タブナビゲーション（タブメニュー）
--------------------------------------------------------- */
.tab_nav {
	width: 100%;
	border-bottom: 1px solid #ccc;
	margin: 0;
}
.tab_nav ul {
	display: flex;
	display: -webkit-flex; /* Safari */
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
	align-items: stretch;
	-webkit-align-items: stretch; /* Safari */
	justify-content: flex-start;
	-webkit-justify-content: flex-start;	 /* Safari */
	-webkit-align-content: stretch; /* Safari */
	align-content:         stretch;
	width: 1200px;
	margin: 0 auto;
}
.tab_nav li {
	background: rgba(255,255,255,0.8);
	border-right: 1px solid #ccc;
	border-top: 1px solid #ccc;
}
.tab_nav li:first-child {
	border-left: 1px solid #ccc;
}
.tab_nav li a {
	display: block;
	margin: 0;
	padding: 16px;
	/*background: #f5f5f5;/* 検証用 */
	border-left: 0;
	color: #333;
	font-weight: 500;
	text-decoration: none;
	position: relative;
	top: 1px;
	opacity: 0.8;
}
.tab_nav .here {
	background: #fff;
}
.tab_nav .here a {
	color: #000;
	border-bottom: 1px solid #fff;
	font-weight: bold;
}
.tab_nav a:hover,
.tab_nav .here a {
	opacity: 1;
}
/* ----- hoverで線を動かす----- */
/* Underline From Center /* Underline From Center */
.tab_nav a {
	vertical-align: middle;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	/*overflow: hidden;*/
}
.tab_nav a:before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 50.1%;
	right: 50.1%;
	top: -6px;
	background: #ec6c00;
	height: 6px;/* ラインの太さ */
	-webkit-transition-property: left, right;
	transition-property: left, right;
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}
/* タブのボーダーに合わせてラインの位置を微調整 */
.tab_nav a:hover:before,
.tab_nav a:focus:before,
.tab_nav a:active:before,
.tab_nav .here a:before {
	left: -0.5%;
	right: -0.7%;
}
.tab_nav li:first-child a:hover:before,
.tab_nav li:first-child a:focus:before,
.tab_nav li:first-child a:active:before,
.tab_nav li:first-child.here a:before {
	left: -1px;
	right: -1px;
}

/* ----- スマホのフッターのタブナビ ----- */
footer .tab_nav {
	display: none;
}
/*tablet*/
@media screen and (min-width: 701px) and (max-width: 1020px) {
.tab_nav ul {
	max-width: 100%;
}
.tab_nav li a {
	margin: 0;
	padding: 16px 2%;
	font-size: 90%;
}

/* ----- スマホのフッターのタブナビ ----- */
footer .tab_nav {
	display: none;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.tab_nav ul {
	max-width: 100%;
}
.tab_nav li a {
	margin: 0;
	padding: 16px 2%;
	font-size: 1.2em;
}
.tab_nav.nav-5 li {
	width: 50%;
}
.tab_nav li {
	display: none;
}
.tab_nav li.here {
	display: block;
	width: 100%;
}
/* ボーダーの位置 */
.tab_nav a:before {
	top: auto;
	bottom: -6px;
}
/* ----- スマホのフッターのタブナビ ----- */
footer .tab_nav {
	display: block;
	background: #f5f5f5;
	max-width: 100%;
	margin: 0;
	padding: 4px;
}
footer .tab_nav .h {
	margin: 24px auto;
}
footer .tab_nav ul {
	max-width: 100%;
}
footer .tab_nav li a {
	margin: 4px;
	padding: 24px 2%;
	background: #fff;
	font-size: 1em;
}
footer .tab_nav.nav-5 li {
	width: 50%;
}
footer .tab_nav li {
	display: inline-block;
}
footer .tab_nav li.here {
	display: none;
}
}


/*sp*/
@media screen and (max-width: 700px) {
.faq_nav.forSP {
	width: 100%;
	display: block;
	letter-spacing:-0.4em;/* inline-block Hack */
}
.faq_nav.forSP li {
	width: 50%;
	display: inline-block;
	letter-spacing: normal;/* inline-block Hack */
	*display: inline;/* inline-block Hack forIE */
	*zoom: 1;/* inline-block Hack forIE */
}
.faq_nav.forSP li a {
	font-size: 0.9em;
	border-collapse: collapse;
}
/* ボーダーの位置 */
.faq_nav.forSP a:before {
	top: -6px;
	bottom: auto;
}

.tab_nav.faq_nav.forSP li a {
	border: 1px solid #ccc;
	border-bottom: 0;
	border-left: 0;
}
}

/* ----- navごとに色を変える----- */
/* ラインの色 */
.nav-ec a:before,
.nav-eltexdc a:before {
	background: #ec6c00;
}
.nav-marketing a:before,
.nav-eltexcx a:before {
	background: #005EAE;
}
.nav-design a:before {
	background: #00A1D3;
}
.nav-infra a:before {
	background: #009A59;
}
.nav-corporate a:before {
	background: #253f68;
}
.nav-torihiki a:before {
	background: #999;
}
/* テキストの色 */
.tab_nav a {
	color: #000;
}
.tab_nav a:hover {
	color: #000;
}
/*
.tab_nav .nav-ec a {
	color: #ec6c00;
}
.tab_nav .nav-marketing a {
	color: #005EAE;
}
.tab_nav .nav-design a {
	color: #005EAE;
}
.tab_nav .nav-infra a {
	color: #009A59;
}
.tab_nav .nav-eltex a {
	color: #253f68;
}
.tab_nav .nav-torihiki a {
	color: #253f68;
}*/






/* =========================================================
アイコン
========================================================= */

.icon {
}


/* アイコンの種類
--------------------------------------------------------- */
.icon-ec i:before {
	content: "\f07a"; /* fa-shopping-cart */
	position: relative;
	top: -1px;
}
.icon-marketing i:before {
	content: "\f201"; /* fa-line-chart */
	font-size: 0.8em;
	font-weight: bold;
	position: relative;
	top: -1px;
}
.icon-design i:before {
	content: "\f1fc"; /* fa-paint-brush */
	font-size: 0.8em;
	position: relative;
	top: -1px;
}
.icon-infra i:before {
	content: "\f0c2"; /* fa-cloud */
	position: relative;
	top: -1px;
}
.icon-corporate i:before {
	content: "\f1ad"; /* fa-building */
	position: relative;
	top: -1px;
	left: 1px;
}
.icon-torihiki i:before {
	content: "\f118"; /* fa-smile-o */
	position: relative;
	top: -1px;
}
.icon-facebook i:before {
	content: "\f09a"; /* fa-facebook */
	position: relative;
	top: 0;
	font-size: 18px;
}
.icon-access i:before {
	content: "\f041"; /* fa-map-marker */
	position: relative;
	top: 0;
	font-size: 18px;
}
.icon-db i:before {
	content: "\f1c0"; /* fa-database */
	position: relative;
	top: -1px;
	left: .5px;
	font-size: 18px;
}
.icon-tool i:before {
	content: "\f0ad"; /* fa-wrench */
	position: relative;
	top: -1px;
	left: 1px;
	font-size: 18px;
}
.icon-graph-circle i:before {
	content: "\f200"; /* fa-pie-chart  */
	position: relative;
	top: -1px;
	left: 1px;
	font-size: 18px;
}
.icon-graph-line i:before {
	content: "\f201"; /* fa-line-chart  */
	position: relative;
	top: -1px;
	left: 1px;
	font-size: 18px;
}
.icon-graph-bar i:before {
	content: "\f080"; /* fa-bar-chart  */
	position: relative;
	top: -1px;
	left: 1px;
	font-size: 18px;
}
.icon-cloud i:before {
	content: "\f0c2"; /* fa-cloud */
	position: relative;
	top: .5px;
	left: .5px;
	font-size: 90%;
}
.icon-monitor i:before {
	content: "\f108"; /* fa-desktop  */
	position: relative;
	top: .5px;
	font-size: 90%;
}
.icon-mobile i:before {
	content: "\f10b"; /* fa-mobile  */
	position: relative;
	top: .5px;
	/*font-size: 90%;*/
}
.icon-commenting i:before {
	content: "\f27a"; /* fa-commenting  */
	position: relative;
	top: .5px;
	font-size: 90%;
}

/* 円形・塗り（カラー）
--------------------------------------------------------- */

/* ----- アイコンの背景 ----- */
.icon.icon-circle {
	font-size: 24px;
	display: inline-block;
	margin: 0 6px 6px;
	background: #ec6c00;
	color: #fff;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	vertical-align: middle;
	font-weight: normal;
	text-align: center;
}

/* ----- アイコンの背景の色 ----- */
.icon-ec.icon-circle {
	background: #ec6c00;
}
.icon-marketing.icon-circle {
	background: #005EAE;
}
.icon-design.icon-circle {
	background: #00A1D3;
}
.icon-infra.icon-circle {
	background: #009A59;
}
.icon-corporate.icon-circle {
	background: #253f68;
}
.icon-torihiki.icon-circle {
	background: #999;
}
.icon-eltexnavy.icon-circle {
	background: #253f68;
}
.icon-eltexred.icon-circle {
	background: #E7241D;
}


/* 円形・塗り（白）
--------------------------------------------------------- */

/* ----- アイコンの背景 ----- */
.icon.icon-circle-wh {
	font-size: 24px;
	display: inline-block;
	margin: 0 6px 6px;
	background: #fff;
	color: #253f68;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	vertical-align: middle;
	font-wheight: normal;
	text-align: center;
}

/* ----- アイコンの色 ----- */
.icon-ec.icon-circle-wh {
	color: #ec6c00;
}
.icon-marketing.icon-circle-wh {
	color: #005EAE;
}
.icon-design.icon-circle-wh {
	color: #00A1D3;
}
.icon-infra.icon-circle-wh {
	color: #009A59;
}
.icon-corporate.icon-circle-wh {
	color: #253f68;
}
.icon-torihiki.icon-circle-wh {
	color: #999;
}
.icon-eltexnavy.icon-circle-wh {
	color: #253f68;
}
.icon-eltexred.icon-circle-wh {
	color: #E7241D;
}




/* 円形・アウトライン
--------------------------------------------------------- */

/* ----- アイコンの背景 ----- */
.icon.icon-circle-o {
	font-size: 24px;
	display: inline-block;
	margin: 0 6px 6px;
	background: #fff;
	border: 2px solid #ec6c00;
	color: #fff;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	vertical-align: middle;
	font-weight: normal;
	text-align: center;
}

/* ----- アイコンの背景の色 ----- */
.icon-ec.icon-circle-o {
	background: #fff;
	border-color: #ec6c00;
}
.icon-marketing.icon-circle-o {
	background: #fff;
	border-color: #005EAE;
}
.icon-design.icon-circle-o {
	background: #fff;
	border-color: #00A1D3;
}
.icon-infra.icon-circle-o {
	background: #fff;
	border-color: #009A59;
}
.icon-corporate.icon-circle-o {
	background: #fff;
	border-color: #253f68;
}
.icon-torihiki.icon-circle-o {
	background: #fff;
	border-color: #999;
}

/* ----- アイコンの色 ----- */
.icon-ec.icon-circle-o i:before {
	color: #ec6c00;
}
.icon-marketing.icon-circle-o i:before {
	color: #005EAE;
}
.icon-design.icon-circle-o i:before {
	color: #00A1D3;
}
.icon-infra.icon-circle-o i:before {
	color: #009A59;
}
.icon-corporate.icon-circle-o i:before {
	color: #253f68;
}
.icon-torihiki.icon-circle-o i:before {
	color: #999;
}


/* 四角形・塗り
--------------------------------------------------------- */

/* ----- アイコンの背景 ----- */
.icon.icon-square {
	font-size: 24px;
	display: inline-block;
	margin: 0 6px 6px;
	background: #ec6c00;
	color: #fff;
	width: 40px;
	height: 40px;
	vertical-align: middle;
	font-weight: normal;
	text-align: center;
}
/* 角丸 */
.icon.icon-square.br {
	border-radius: 4px;
}
/* ----- アイコンの背景の色 ----- */
.icon-ec.icon-square {
	background: #ec6c00;
}
.icon-marketing.icon-square {
	background: #005EAE;
}
.icon-design.icon-square {
	background: #00A1D3;
}
.icon-infra.icon-square {
	background: #009A59;
}
.icon-corporate.icon-square {
	background: #253f68;
}
.icon-torihiki.icon-square {
	background: #999;
}

/* 四角形・アウトライン
--------------------------------------------------------- */

/* ----- アイコンの背景 ----- */
.icon.icon-square-o {
	font-size: 24px;
	display: inline-block;
	margin: 0 6px 6px;
	background: #fff;
	border: 2px solid #ec6c00;
	color: #fff;
	width: 40px;
	height: 40px;
	vertical-align: middle;
	font-weight: normal;
	text-align: center;
}
/* 角丸 */
.icon.icon-square-o.br {
	border-radius: 4px;
}
/* ----- アイコンの背景の色 ----- */
.icon-ec.icon-square-o {
	background: #fff;
	border-color: #ec6c00;
}
.icon-marketing.icon-square-o {
	background: #fff;
	border-color: #005EAE;
}
.icon-design.icon-square-o {
	background: #fff;
	border-color: #00A1D3;
}
.icon-infra.icon-square-o {
	background: #fff;
	border-color: #009A59;
}
.icon-corporate.icon-square-o {
	background: #fff;
	border-color: #253f68;
}
.icon-torihiki.icon-square-o {
	background: #fff;
	border-color: #999;
}

/* ----- アイコンの色 ----- */
.icon-ec.icon-square-o i:before {
	color: #ec6c00;
}
.icon-marketing.icon-square-o i:before {
	color: #005EAE;
}
.icon-design.icon-square-o i:before {
	color: #00A1D3;
}
.icon-infra.icon-square-o i:before {
	color: #009A59;
}
.icon-corporate.icon-square-o i:before {
	color: #253f68;
}
.icon-torihiki.icon-square-o i:before {
	color: #999;
}



/* ----- 大きさ ----- */
.icon.icon-80 {
	font-size: 40px;
	width: 120px;
	height: 120px;
	vertical-align: middle;
	font-weight: normal;
	text-align: center;
}



/* =========================================================
 共通アイコン
 （アイコン付きテキスト）
========================================================= */
.ph {
	text-indent: -18px !important;
	padding-left: 2.0em !important;
	position: relative;
}
.ph:before {
	font-family: "FontAwesome";
	font-size: 1.2em;
	padding: 0;
	font-weight: normal;
	color: #e60019;
	position: relative;
	vertical-align: middle;

    display: inline-block;
    font-feature-settings: normal;
    font-kerning: auto;
    font-language-override: normal;
    font-size-adjust: none;
    font-stretch: normal;
    font-style: normal;
    font-synthesis: weight style;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-rendering: auto;
    transform: translate(0px, 0px);

	left: 5px;
	top: -0.1em;
	width: 18px;
	text-align: center;
}

/* ----- common ----- */
.ph.info-circle:before {
	content: "\f05a"; /* 「インフォメーション」アイコン */
}
.ph.lock:before {
	content: "\f023"; /* 「錠前（鍵穴なし）」アイコン */
}
.ph.user:before {
	content: "\f007"; /* 「ユーザー」アイコン */
}
.ph.chevron-circle-right:before {
	content: "\f138"; /* 「右矢印（円形）」アイコン */
}
.ph.question-circle:before {
	content: "\f059"; /* 「？（円形）」アイコン */
}
.ph.shopping-cart:before {
	content: "\f07a"; /* 「カート」アイコン */
}
.ph.smile-o:before {
	content: "\f118"; /* 「スマイル」アイコン */
}
.ph.icon-locked:before {
	font-family: "icomoon";
	content: "\e801"; /* 「錠前」アイコン */
}
.ph.exclamation-triangle:before {
	content: "\f071"; /* 「ご注意（三角形）」アイコン */
}
.ph.exclamation-circle:before {
	content: "\f06a"; /* 「ご注意（円形）」アイコン */
}
.ph.icon-warning:before {
	font-family: "icomoon";
	content: "\e903"; /* 「ご注意（三角形）」アイコン2 */
	font-size: 110%;
}
.ph.gift:before {
	content: "\f06b"; /* 「プレゼントの箱」アイコン */
}
.ph.check-circle:before {
	content: "\f058"; /* 「チェック（円形）」アイコン */
}
.ph.check-square-o:before {
	content: "\f046"; /* 「チェック（四角形）」アイコン */
}
.ph.envelope:before {
	content: "\f0e0"; /* 「メール」アイコン */
	font-size: 110%;
}
.ph.circle:before {
	content: "\f111"; /* 「黒丸」アイコン */
	font-size: 100%;
}
.ph.train:before {
	content: "\f238"; /* 電車 */
}
.ph.taxi:before {
	content: "\f1ba"; /* タクシー */
}
.ph.plane:before {
	content: "\f072"; /* 飛行機 */
}




.ph.chevron-circle-right:before {
	content: "\f138"; /* 「矢印・右（円形）」アイコン */
}

/* ----- errorMessage ----- */
.color-red.ph:before,
.errorMessage.ph:before {
	color: #e30011;
}
.errorMessage.ph:before {
	font-family: "icomoon";
	content: "\e903"; /* 「ご注意（三角形）」アイコン2 */
	font-size: 110%;
}
/* ----- alert_msg ----- */
.ph.alert_msg-error:before {
	font-family: "icomoon";
	content: "\e903"; /* 「ご注意（三角形）」アイコン2 */
	font-size: 110%;
	color: #e30011;
}
.ph.alert_msg-attention:before {
	content: "\f06a"; /* 「ご注意（円形）」アイコン */
}
.ph.alert_msg-hint:before {
	content: "\f058"; /* 「チェック（円形）」アイコン */
	color: #78a000;
}
.ph.alert_msg-info:before {
	content: "\f05a"; /* 「インフォメーション」アイコン */
	color: #4097d4;
}
.ph.alert_msg-help:before {
	content: "\f059"; /* 「？（円形）」アイコン */
	color: #e97300;
}
.ph.alert_msg-promotion:before {
	content: "\f06b"; /* 「プレゼントの箱」アイコン */
	color: #eda0b1;
	font-size: 155%;
}

.ph_after_group {
	margin-left: 2em;
	margin-top: 0.5em;
}




/* =========================================================
境界線・水平線
========================================================= */

hr {
    border: 0;
    height: 0;
    border-top: 1px solid #666;
	margin: 24px 0;
}
.hr-1 {
	border-top: 1px solid #f0f0f0;
}
.hr-2 {
	border-top: 2px solid #f0f0f0;
}
.hr-4 {
	border-top: 4px solid #f0f0f0;
}
.bg-pgray .hr,
.bg-pgray .hr-4,
.bg-pgray .hr-1,
.bg-pgray .hr-2 {
	border-color: #e0e0e0 !important;
}


/* Level 2
--------------------------------------------------------- */
hr {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: #eee -moz-use-text-color -moz-use-text-color;
    border-image: none;
    border-style: solid none none;
    border-width: 1px 0 0;
    margin-bottom: 20px;
    margin-top: 20px;
    border-bottom: medium none;
    margin: 32px auto;
    max-width: 100px;
	border-top: 6px solid #e6231d;
}

/* ----- large ----- */
hr.hr-large {
    border-bottom: medium none;
    margin: 32px auto;
    max-width: 100px;
	border-top: 6px solid #e6231d;
}
/* ----- medium ----- */
hr.hr-medium {
    border-bottom: medium none;
    margin: 24px auto;
    max-width: 100px;
	border-top: 4px solid #e6231d;
}
/* ----- small----- */
hr.hr-small {
	border-bottom: medium none;
    margin: 8px auto 32px;
    max-width: 100px;
	border-top: 3px solid #e6231d;
}
/*tablet*/
@media screen and (min-width: 701px) and (max-width: 1020px) {
hr.hr-small {
    margin: 8px auto 24px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
hr.hr-small {
    margin: 8px auto 16px;
}
}
/* ----- left----- */
hr.hr-left {
    margin-left: 0;
	margin-right: 0;
}
/* ----- Colros ----- */
hr.hr-primary {
    border-top-color: #e6231d;
}
hr.hr-light {
    border-top-color: #f4f5f7;
}
hr.hr-dark {
    border-top-color: #3e444d;
}
hr.hr-eltexnavy {
    border-top-color: #253f68;
}



/* 矢印の境界
--------------------------------------------------------- */
.arrow_wide {
	width: 160px;
	text-align: center;
	margin: 0 auto;
}
.arrow_wide.section_hr {
	position: relative;
	top: -48px;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.arrow_wide.section_hr {
	top: -16px;
}
}

/* =========================================================
テキスト強調
========================================================= */

.em {
	font-weight: bold;
}
.marker {
	background: linear-gradient(transparent 60%, #F1EC35 60%);
}


/* 補足・ワンポイント */
.onepoint {
	background: #fff;
	border: 1px solid #ccc;
	padding: 1em;
	font-size: 90%;
	text-align: left;
}
/*tablet and sp*/
@media screen and (max-width: 1020px) {
.onepoint {
	border-width: 3px;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.onepoint {
	border-width: 2px;
}
}
/* 補足・キャプション */
.caption {
	font-size: 85%;
	opacity: 0.8;
}

/* =========================================================
箇条書きリスト
========================================================= */

/* 算用数字リスト
--------------------------------------------------------- */
ol.decimal li {
	list-style-position: outside;
	margin-left: 1.5em;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}
ol.decimal > li {
	list-style-type: decimal !important;
}


/* 箇条書きリスト（ノーマル）
--------------------------------------------------------- */
/*
ul.disc li {
	list-style-position: outside;
	margin-left: 1.5em;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}
ul.disc > li {
	list-style-type: disc !important;
}
*/

ul.disc li {
	text-indent: -1em !important;
	padding-left: 1em !important;
	position: relative;

	margin-bottom: 0.5em;
}
ul.disc li:before {
	/*font-family: "FontAwesome";*/
	font-size: 1em;
	padding: 0;
	font-weight: bold;
	/*color: #E7241D;*/
	position: relative;
	vertical-align: middle;

    display: inline-block;
    font-feature-settings: normal;
    font-kerning: auto;
    font-language-override: normal;
    font-size-adjust: none;
    font-stretch: normal;
    font-style: normal;
    font-synthesis: weight style;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-rendering: auto;
    transform: translate(0px, 0px);

	left: 5px;
	top: -0.1em;
	width: 1em;
	text-align: center;

	content: "・";
}

/* 丸括弧付き数字のリスト
--------------------------------------------------------- */
ol.paren {
	counter-reset: item;
	list-style: none;
}
ol.paren li:before{
	content: "(" counters(item, "-") ")";
	counter-increment: item;
	margin-right: 0;
	position: relative;
	left: -0.5em;
}
ol.paren li{
	margin-left: 2em;
	text-indent: -1.5em;
	list-style-type: none;
}

/* ローマ数字（全角大文字＋全角ピリオド）のリスト
--------------------------------------------------------- */
dl.upper-roman-em {
}
dl.upper-roman-em dt {
	margin-top: 1em;
}
dl.upper-roman-em dd:before {
}
dl.upper-roman-em dd {
	margin-left: 2em;
}


/* ※印付きの文章
--------------------------------------------------------- */
.kome,
.indent_1 {
	margin-left: 1em !important;
	text-indent: -1em !important;
}




/* =========================================================
swiperスライダー
========================================================= */

/* ----- client_logo_slider　導入実績ロゴスライダー ----- */
.swiper-container.client_logo_slider {
	width: 100%;
	margin: 32px auto;
	padding: 0 48px;
	height: 120px;
}
.client_logo_slider .swiper-slide {
	text-align: center;
	font-size: 18px;
	background: #fff;
	width: 12%;
	margin: 0 48px;
	/* Center slide text vertically */
	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;
}
/*tablet*/
@media screen and (min-width: 701px) and (max-width: 1020px) {
.swiper-container.client_logo_slider {
	margin: 32px auto;
	height: 80px;
}
.client_logo_slider .swiper-slide {
	width: 20%;
	margin: 0 4%;
}
}
/*sp*/
@media screen and (max-width: 700px) {
.swiper-container.client_logo_slider {
	margin: 16px auto;
	height: 80px;
}
.client_logo_slider .swiper-slide {
	width: 32%;
	margin: 0 8%;
}
}
/* ----- product_logo_slider　製品ロゴスライダー ----- */
.swiper-container.product_logo_slider {
	width: 100%;
	height: 88px;
	margin: 32px auto 0;
	padding: 0 48px;
}
.product_logo_slider .swiper-slide {
	text-align: center;
	font-size: 18px;
	background: #fff;
	width: 320px;
	height: 82px;
	margin: 0 8px;
	padding: 0;
	/* Center slide text vertically */
	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-orange {
	color: #ec6c00 !important;
}
.color-blue {
	color: #005EAE !important;
}
.color-green {
	color: #009a5a !important;
}
.color-red {
	color: #e60019 !important;
}
.color-purple {
	color: #920783 !important;
}
.color-ygreen {
	color: #9fbf2a !important;
}
.color-eltexnavy {
	color: #253f68 !important;
}
.color-eltexred {
	color: #E7241D !important;
}
.color-eltexred-dark {
	color: #a9201c !important;
}

/* 背景のカラー
--------------------------------------------------------- */
.bg-orange {
	background: #ec6c00 !important;
}
.bg-blue {
	background: #005EAE !important;
}
.bg-green {
	background: #009a5a !important;
}
.bg-red {
	background: #e60019 !important;
}
.bg-purple {
	background: #920783 !important;
}
.bg-ygreen {
	background: #9fbf2a !important;
}
.bg-eltexnavy {
	background: #253f68 !important;
}
.bg-eltexred {
	background: #E7241D !important;
}
.bg-eltexred-dark {
	background: #a9201c !important;
}


.bg-white {
	background: #fff !important;
}
.bg-pgray {
	background: #f5f5f5 !important;
}
.bg-lgray {
	background: #898989 !important;
}
.bg-dgray {
	background: #333 !important;
}
.bg-black {
	background: #000 !important;
}

/* ボーダーのカラー
--------------------------------------------------------- */
.border-orange {
	border-color: #ec6c00 !important;
}
.border-blue {
	border-color: #005EAE !important;
}
.border-green {
	border-color: #009a5a !important;
}
.border-red {
	border-color: #e60019 !important;
}
.border-purple {
	border-color: #920783 !important;
}
.border-ygreen {
	border-color: #9fbf2a !important;
}
.border-eltexnavy {
	border-color: #253f68 !important;
}
.border-eltexred {
	border-color: #E7241D !important;
}
.border-eltexred-dark {
	border-color: #a9201c !important;
}


.border-white {
	border-color: #fff !important;
}
.border-pgray {
	border-color: #f5f5f5 !important;
}
.border-lgray {
	border-color: #898989 !important;
}
.border-dgray {
	border-color: #333 !important;
}
.border-black {
	border-color: #000 !important;
}

/* eltexSMS
--------------------------------------------------------- */
/* form タイトル */
.eltex_sms .h-type00 {
	border-top: 2px solid #e60019;
	border-bottom: 2px solid #e60019;
}
.eltex_sms .h-type00 .h-main {
	color: #e60019;
}
.eltex_sms .h-type00 .h-sub {
	color: #e60019;
}
/* form ボタン */
.eltex_sms .btn {
	background-color: #e60019;
}

.eltex_sms .color-eltexnavy {
  color: #e60019 !important;
}

.read_text {
	color: #333;
	font-weight: bold;
	text-shadow: -1px -1px 0px #fff, 1px -1px 0px #fff, 1px 1px 0px #fff, -1px 1px 0px #fff;
}
.contact_tel_consultant_02 {
}
.contact_tel_consultant_02 .contact_tel_consultant_inner {
	background: url(../../contact/images/consultant_01.png) right top no-repeat;
	background-size: contain;
	padding: 2% 170px 2% 14px;
	margin: 20px 0;
	text-align: left;
	width: 620px;
	max-width: 100%;
}
.contact_tel_consultant_02 .read_text.read_text_consultant {
	font-size: 16px !important;
	margin-bottom: 10px;
	margin-top: 0;
}
.contact_tel_consultant_02 .tel {
	width: 418px;
	max-width: 100%;
}
/*sp*/
@media screen and (max-width: 700px) {
	.contact_tel_consultant_02 .contact_tel_consultant_inner {
		background: none;
		padding: 0;
		margin: 20px 0;
	}
	.contact_tel_consultant_02 .read_text.read_text_consultant {
		text-shadow: none;
	}
}


/* =========================================================
画像
========================================================= */

/* 幅
--------------------------------------------------------- */
.img-100-90 > img {
	width: 100%;
}
.img-100-80 > img {
	width: 100%;
}
.img-100-70 > img {
	width: 100%;
}
.img-100-60 > img {
	width: 100%;
}
.img-100-50 > img {
	width: 100%;
}
@media screen and (max-width: 700px) {
	.img-100-90 > img {
		width: 90%;
	}
	.img-100-80 > img {
		width: 80%;
	}
	.img-100-70 > img {
		width: 70%;
	}
	.img-100-60 > img {
		width: 60%;
	}
	.img-100-50 > img {
		width: 50%;
	}
}