@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin        : 0;
	padding       : 0;
	border        : 0;
	font-size     : 100%;
	font          : inherit;
	vertical-align: baseline;
}

html {
	overflow-x: hidden;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

body {
	/*font-family: "メイリオ", Meiryo, Osaka, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif!important;*/
	font-family: 'Noto Sans Japanese', sans-serif;
	color      : #333;
	line-height: 1.7;
	overflow-x : hidden;
}

ol,
ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

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

/* clearfix */
.clear:before,
.clear:after {
	content: " ";
	display: table;
}

.clear:after {
	clear: both;
}

.clear {
	*zoom   : 1;
	overflow: hidden;
}

/*テキスト関連*/

.caution {
	color: #ec0000;
}

.highlight {
	color: #045c46;
}

.underline {
	text-decoration: underline;
}

.left {
	text-align: left !important;
}

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

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

.nomal {
	font-weight: normal;
}

.bold {
	font-weight: bold;
}

.text10 {
	font-size: 10px !important;
}

.text11 {
	font-size: 11px !important;
}

.text12 {
	font-size: 12px !important;
}

.text13 {
	font-size: 13px !important;
}

.text14 {
	font-size: 14px !important;
}

.text15 {
	font-size: 15px !important;
}

.text16 {
	font-size: 16px !important;
}

.text20 {
	font-size: 20px !important;
}

.text23 {
	font-size: 23px !important;
}

.text26 {
	font-size: 26px !important;
}

.text30 {
	font-size: 30px !important;
}

.text39 {
	font-size  : 34px !important;
	line-height: 1.4;
}

.default_list {
	list-style-type: disc;
	padding-left   : 1.2em;
}

.default_list_ol {
	list-style-type: decimal;
	padding-left   : 2em;
}

.line12 {
	line-height: 1.2 !important;
}

.inde {
	text-indent: 1em;
}

.indent_list {
	text-indent : -2.1em;
	padding-left: 2.4em;
}

.indent_list02 {
	text-indent : -2.5em;
	padding-left: 2.5em
}

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

.more_link {
	margin    : 15px 0;
	text-align: right !important;
}

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

/*フロート*/
.float-l {
	float: left;
}

.float-r {
	float: right;
}

/*画像関連*/

.img_left {
	float : left;
	margin: 0 15px 15px 0;
}

.img_right {
	float        : right;
	margin-top   : 0;
	margin-right : 0px;
	margin-bottom: 15px;
	margin-left  : 15px;
}

.img_center {
	margin-right: auto;
	margin-left : auto;
	display     : block;
}

/*テキストカラー*/
.red {
	color: #bf0000;
}

.blue {
	color: #0069B7;
}

.fusion_blue {
	color: #2757a1;
}

.green {
	color: #22A749;
}

.yellow {
	background-color: #ffff99;
}

/*マージン関連*/
.margin0 {
	margin: 0 !important;
}

.margin3 {
	margin-bottom: 3px !important;
}

.margin5 {
	margin-bottom: 5px !important;
}

.margin15 {
	margin-bottom: 15px !important;
}

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

.margin45 {
	margin-bottom: 45px !important;
}

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

.margin_top5 {
	margin-top: 5px !important;
}

.left_margin {
	margin-left: 20px;
}

html*.left_margin {
	margin-left: 25px;
}

.right_margin {
	margin-right : 15px;
	margin-bottom: 5px;
}

/* common */

ul.row li {
	float: left;
}

.clear {
	clear: both;
}

img,
li {
	vertical-align: top;
}

.nl {
	float: none;
	clear: both;
}

a {
	color          : #002896;
	text-decoration: none;
}

a:hover {
	color          : #003576;
	text-decoration: underline;
}

.arrow a,
a.arrow {
	background-attachment: scroll;
	background-color     : transparent;
	background-image     : url(../images/arrow_blue.gif);
	background-position  : left center;
	background-repeat    : no-repeat;
	padding              : 0 0 0 15px;
}

/*テーブル関連*/
table {
	border-collapse: collapse;
	border-spacing : 0;
}

.table_news {
	border         : 1px solid #cccccc;
	border-collapse: collapse;
	border-spacing : 0;
	margin-bottom  : 3px;
}

.table_news th {
	-moz-border-bottom-colors: none;
	-moz-border-left-colors  : none;
	-moz-border-right-colors : none;
	-moz-border-top-colors   : none;
	background               : none repeat scroll 0 0 #efefef;
	border-color             : #cccccc;
	border-image             : none;
	border-style             : solid;
	border-width             : 0 0 1px 1px;
	color                    : #444;
	font-weight              : bold;
	line-height              : 120%;
	padding                  : 7px 5px;
	text-align               : left;
}

.table_news th.top {
	vertical-align: top;
}

.table_news td {
	-moz-border-bottom-colors: none;
	-moz-border-left-colors  : none;
	-moz-border-right-colors : none;
	-moz-border-top-colors   : none;
	border-color             : #cccccc;
	border-image             : none;
	border-style             : solid;
	border-width             : 0 0 1px 1px;
	padding                  : 5px;
	text-align               : left;
}

.sub_th {
	background-color: #f2f9ff !important;
}

.zebra {
	border-spacing: 0;
	margin-bottom : 15px;
}

.zebra td,
.zebra th {
	border-bottom: 1px solid #f2f2f2;
	color        : #444444;
	padding      : 6px 10px 6px 5px;
	text-align   : center;
}

.zebra tbody tr:nth-child(2n) {
	background: none repeat scroll 0 0 #f5f5f5;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset;
}

.zebra th {
	background-color: #eeeeee;
	background-image: -moz-linear-gradient(center top, #f5f5f5, #eeeeee);
	border-bottom   : 1px solid #cccccc;
	text-align      : center;
	text-shadow     : 0 1px 0 rgba(255, 255, 255, 0.5);
}

.zebra td {
	line-height: 1.3;
}

.zebra th:first-child {
	border-radius: 6px 0 0;
}

.zebra th:last-child {
	border-radius: 0 6px 0 0;
}

.zebra th:only-child {
	border-radius: 6px 6px 0 0;
}

.zebra tfoot td {
	background-color: #f1f1f1;
	border-bottom   : 0 none;
	border-top      : 1px solid #ffffff;
}

.zebra tfoot td:first-child {
	border-radius: 0 0 0 6px;
}

.zebra tfoot td:last-child {
	border-radius: 0 0 6px;
}

.zebra tfoot td:only-child {}

.even {
	background-color: #f5f5f5;
}

.middle {
	vertical-align: middle;
}

/*BOX関連*/
.gray_box {
	background-color: #fafafa;
	border          : 1px solid #d6d6d6;
	margin-left     : auto;
	margin-right    : auto;
	padding         : 20px;
	line-height     : 1.7;
	font-size       : 12px;
}

.atten_box {
	background-color: #ffebe5;
	border          : 1px solid #cccccc;
	margin-left     : auto;
	margin-right    : auto;
	padding         : 10px;
}

.featurebox {
	border      : 1px solid #ccc;
	margin-left : auto;
	margin-right: auto;
	padding     : 20px;
}

#maincontent #service {
	font-size: 12px;
	width    : 100%;
}

#maincontent #service dl {
	display    : block;
	float      : left;
	margin-top : 15px;
	border-left: 1px solid #bfd1e6;
	padding    : 0 20px;
	/** height :210px; **/
}

#maincontent #service dl dt {
	color        : #002896;
	font-size    : 16px;
	font-weight  : bold;
	margin-bottom: 15px;
}

#maincontent #service ul {
	display     : block;
	float       : left;
	margin-right: 20px;
}

#maincontent #service ul li a {}

.news_info_box {
	background-image   : url(../service_images/news_info_box.gif);
	background-repeat  : no-repeat;
	background-position: 15px 5px;
	border             : 1px solid #CCC;
	margin-left        : auto;
	margin-right       : auto;
	padding            : 35px 10px 10px 10px;
}

.news_info_box dl {
	border-bottom: solid 1px #CCCCCC;
	margin       : 10px 15px;
	clear        : both;
}

.news_info_box dl dt {
	font-weight : bold;
	margin-right: 30px;
	float       : left;
}

/*全体*/

#wrap {
	width      : 100%;
	/*min-width: 1152px;*/
	font-size  : 14px;
}

.contentwrap {
	/*	width: 954px;*/
	width        : 1120px;
	margin-right : auto;
	margin-bottom: 0px;
	margin-left  : auto;
	position     : relative;
}

/*ヘッダー*/

#search_are {
	outline: 0;
	border : none;
	*border: 0;
}

#header .top {
	overflow: hidden;
	zoom    : 1;
	padding : 13px 0 15px 0;
	position: relative;
	height: 70px;
	box-sizing: border-box;

	&:has(#language-toggle) {
		height    : 70px;
		box-sizing: border-box;
	}
	&:has(#language-dropdown) {
		height    : 70px;
		box-sizing: border-box;
	}
}
#header .top:has(#language-dropdown) {
	height    : 70px;
	box-sizing: border-box;
}

#header p {
	float : left;
	width : 234px;
	margin: 0;
}

#header .logo {
	margin     : 9px 0 1px;
	line-height: 1.8;
}

#header .rightbox {
	float     : right;
	width     : 50%;
	margin-top: 29px;
	position  : relative;
}

#header .rightbox ul {
	overflow: hidden;
	zoom    : 1;
	float   : right;
}

#header .rightbox ul li {
	float: left;
}

/*#header .sns {
	margin:10px 0 20px 0;
}
#header .sns li {
	margin-left:11px;
}*/
#header .submenu {
	clear: both;
}

#header .submenu li {
	margin-left: 19px;
}

#header .sitemap {
	margin-top: 13px;
}

#header .submenu .search input[type="text"] {
	width            : 240px;
	border           : none;
	padding-left     : 1em;
	font-size        : 1.3em;
	color            : #888;
	background-image : url(../images/h-search-box.png);
	background-repeat: no-repeat;
	padding-top      : 10px;
	padding-bottom   : 10px;
}

#header .submenu .search button {
	border           : none;
	width            : 16px;
	height           : 16px;
	position         : absolute;
	right            : 28px;
	cursor           : pointer;
	background-image : url(../images/h-search.png);
	background-repeat: no-repeat;
	top              : 12px;
	background-color : #e3e7f2;
}

#header #shien {
	margin   : 0;
	position : absolute;
	top      : -28px;
	right    : -11px;
	float    : none;
	width    : 200px;
	font-size: 12px;
}

#header #shien a {
	text-decoration: underline;
}


.toiawase #wrap #header #gnavi {
	background-color: #002896;
	border-top      : 1px solid #002896;
	border-bottom   : 1px solid #002896;
	height          : 20px;
	margin-bottom   : 50px;
}


#header #servicenavi {
	overflow        : hidden;
	zoom            : 1;
	padding-bottom  : 22px;
	font-size       : 12px;
	padding-top     : 20px;
	background-color: #EFF3F7;
}

#header #servicenavi #under {
	background-color: #0f5ba9;
	padding         : 18px 0;
}

#header #servicenavi .ttl {
	overflow        : hidden;
	background-color: #EFF3F7;
}

#header #servicenavi .ttl h2 {
	width: 220px;
	float: left;
}

#header #servicenavi .ttl .btn {
	width      : 220px;
	float      : left;
	margin-left: 20px;
	margin-top : 5px;
}

#header #servicenavi .listbox {
	width       : 170px;
	float       : left;
	border-left : 1px solid #7da4cf;
	padding-left: 20px;
	height      : 280px;
}

#header #servicenavi .listbox_f {
	width: 367px;
	float: left;
}

#header #servicenavi .listbox_l {
	width       : 151px;
	float       : left;
	border-left : 1px solid #7da4cf;
	padding-left: 20px;
	height      : 280px;
}

#header #servicenavi a {
	color          : #FFF;
	text-decoration: none;
}

#header #servicenavi a:hover {
	text-decoration: underline;
}

#header #servicenavi ul {}

#header #servicenavi ul li {
	line-height: 1.6;
}

#header #servicenavi dt {
	margin-bottom: 17px;
}

#header #servicenavi dd {
	overflow: hidden;
	zoom    : 1;
}

#h_text_logo {
	position: absolute;
	height  : 27px;
	width   : 200px;
	top     : 53px;
	left    : 140px;
}

/*タブ関連*/
#tabbtn {
	margin-bottom: -1px;
}

.tab {
	display: none;
}

.tab.active {
	display: block;
}

#servicenavi {
	display: none;
}

/*パンくず*/
#page-trail {
	margin-top   : 0;
	margin-bottom: 40px;
	font-size    : 12px;
	color        : #777;
}

/*タイトル*/
#title {
	background-color: #E5ECF5;
	padding-top     : 10px;
	border-bottom   : 1px solid #ACC3DF;
}

#title .contentwrap h2 {
	font-size: 30px;
	display  : inline;
}

.support_bg #title {
	background-color   : #e8f5e5;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #abdeb6;
}

/*サブタイトル*/
#sub-title {
	background-color: #F9f9f9;
	border-bottom   : 1px solid #C8C8C8;
}

#sub-title2 {
	background-color: #F5F5F5;
	border-bottom   : 1px solid #C8C8C8;
}

#sub-title h3 {
	padding-top: 20px;
	font-size  : 20px;
}

#sub-title p {
	margin-top: 1em;
}

#sub-title ul {
	margin-top: 20px;
}

#sub-title ul li {
	float       : left;
	margin-right: 5px;
}

#sub-title ul li.on {
	border-bottom: 1px solid #FFF;
}

#sub-title_support {
	position: absolute;
	right   : 0;
	top     : 129px;
}

/*コンテンツ内*/
#mv {
	width : 1440px;
	margin: 0px auto;
}

#maincontent {
	padding-top: 30px;
}

#maincontent .bnrbox {
	margin-bottom: 30px;
	overflow     : hidden;
	width        : 954px;
}

#maincontent .bnrbox ul {
	margin  : 0 auto;
	overflow: hidden;
	width   : 954px;
}

#maincontent .bnrbox ul li {
	float : left;
	width : 300px;
	margin: 0;
}

#maincontent .newsbox .ttl {
	overflow: hidden;
	zoom    : 1;
}

#maincontent .newsbox .ttl h2 {
	width: 50%;
	float: left;
}

#maincontent .newsbox .ttl ul {
	overflow: hidden;
	zoom    : 1;
	float   : right;
}

#maincontent .newsbox .ttl ul li {
	float      : left;
	margin-left: 6px;
}

#maincontent .newslist {
	margin-top: 18px;
}

#maincontent .newslist ol {}

#maincontent .newslist ol li {
	overflow     : hidden;
	zoom         : 1;
	margin-bottom: 11px;
}

#maincontent .newslist ol span {
	display: block;
	float  : left;
	width  : 71px;
}

#maincontent .newslist ol dl {
	border-bottom: 1px solid #cfcfcf;
	width        : 883px;
	float        : left;
}

#maincontent .newslist ol dl dt {
	float    : left;
	width    : 88px;
	font-size: 11px;
}

#maincontent .newslist ol dl dd {
	float    : left;
	width    : 795px;
	font-size: 13px;
}

#service_visual {
	margin-right: auto;
	margin-left : auto;
	width       : 954px;
}

hr {
	height    : 0;
	margin    : 15 0;
	padding   : 0;
	border    : 0;
	border-top: 1px solid #bbb;
}

/*スライダー*/
#slider {
	position: relative;
	width   : 1280px;
	margin  : 0 auto;
}

#prev {
	left: 0;
}

#next {
	right: 0;
}

.slider_button {
	position  : absolute;
	z-index   : 100;
	top       : 50%;
	margin-top: -44px;
}

.slider_view {
	position: relative;
	width   : 1280px;
	height  : 400px;
}

.indi .slider_view {
	position: relative;
	width   : 1280px;
	height  : 320px;
}

.slider_container {
	position: absolute;
	top     : 0;
	left    : 0;
}

.slider_container div {
	position: relative;
	float   : left;
	width   : 1280px;
	height  : 479px;
}

.indi .slider_container div {
	position: relative;
	float   : left;
	width   : 1280px;
	height  : 399px;
}

.slider_container div a {
	display: block;
}

.slider_container div a:hover {
	color: #600;
}

.slider_pagination {
	position   : absolute;
	bottom     : 15px;
	right      : 12.5%;
	margin-left: -60px;
}

.page_button {
	margin-right: 19px;
}

/*ライトナビ*/
#mainmenu {
	float   : left;
	width   : 676px;
	position: relative;
}

#sidemenu {
	float: right;
	width: 238px;
}

#rightmenu li {
	border-bottom: 1px solid #ddd;
}

#rightmenu li a {
	background-attachment: scroll;
	background-color     : transparent;
	background-image     : url(../images/right_arrow.png);
	background-position  : 9px 0.9em;
	background-repeat    : no-repeat;
	color                : #002896;
	display              : block;
	margin               : 0;
	padding-top          : 7px;
	padding-right        : 8px;
	padding-bottom       : 7px;
	padding-left         : 25px;
}

#rightmenu .sub_menu li {
	border: medium none;
}

#rightmenu .sub_menu li a {
	display    : block;
	font-weight: normal;
	margin     : 0;
	padding    : 4px 5px 4px 40px;
	font-size  : 12px;
}

#rightmenu li a:hover {
	background-color: #ededed;
	text-decoration : none;
}

#rightmenu li a.on {
	background-color: #002896;
	color           : #fff;
}

#rightmenu li.nonebo {
	border-bottom: 1px solid #f1f1f1;
	border-left  : medium none;
}

.rightmenu_title {
	padding-top     : 8px;
	padding-bottom  : 8px;
	background-color: #E5ECF5;
	padding-left    : 10px;
}

#rightmenu01 li a {
	color           : #002896;
	display         : block;
	margin          : 0;
	padding-top     : 7px;
	padding-right   : 8px;
	padding-bottom  : 7px;
	padding-left    : 10px;
	font-weight     : bold;
	background-color: #ededed;
}

#rightmenu01 li a:hover {
	background-color: #CBCBCB;
	text-decoration : none;
}

.rightmenu_title02 {
	padding-top   : 8px;
	padding-bottom: 8px;
	padding-left  : 10px;
	color         : #000;
}

/* フッター */
#footer .contentwrap {
	width        : 1120px;
	margin-right : auto;
	margin-bottom: 0px;
	margin-left  : auto;
	position     : relative;
}

#footer .footer-usability {
	display: table;
	width  : 100%;
}

#footer .pagetop-btn {
	display: table-cell;
	width  : 60px;
}

#footer .pagetop-btn a {
	position  : relative;
	display   : block;
	width     : 60px;
	height    : 60px;
	background: #666d71;
}

#footer .pagetop-btn span {
	font-size  : 0;
	text-indent: 100%;
}

#footer .pagetop-btn a:before {
	content     : "";
	position    : absolute;
	top         : 26px;
	left        : 23px;
	width       : 12px;
	height      : 12px;
	border-top  : 3px solid #ffffff;
	border-right: 3px solid #ffffff;
	overflow    : hidden;
	transform   : rotate(-45deg);
}

#footer .pagetop-btn a:hover {
	background: #40484e;
}

#footer .text-note {
	display       : table-cell;
	vertical-align: bottom;
	color         : #777;
	text-align    : right;
	font-size     : 12px;
}

.text-emph {
	color: #bf0000;
}

#footer {
	color      : #ffffff;
	line-height: 1.3;
	margin-top : 55px;
}

#footer h2 {
	line-height: 1.3;
}

#footer a {
	color          : #ffffff;
	text-decoration: none;
}

#footer a:hover {
	text-decoration: underline;
}

#footer .footer-service {
	padding   : 50px 0;
	background: #2f58c9;
}

#footer .footer-service .service-list-wrap {
	display: table;
	margin : 0 -25px;
}

#footer .footer-service .service-list {
	display    : table-cell;
	padding    : 0 25px;
	border-left: 1px solid #4d8dc1;
}

#footer .footer-service .service-list:first-child {
	border-left: none;
}

#footer .footer-service .service-list li {
	margin-top: 10px;
}

#footer .footer-service .service-list li:first-child {
	margin-top: 0;
}

#footer .footer-service h2 {
	margin-bottom: 30px;
	font-size    : 20px;
	font-weight  : bold;
}

#footer .footer-service .service-detail {
	display: table;
}

#footer .footer-service .service-detail dl {
	display     : table-cell;
	padding-left: 20px;
}

#footer .footer-service .service-detail dl:first-child {
	padding-left: 0;
}

#footer .footer-service dt {
	margin-bottom: 20px;
	font-size    : 16px;
	font-weight  : bold;
}

#footer .footer-service a {
	position    : relative;
	padding-left: 15px;
}

#footer .footer-service a:before {
	content      : "";
	position     : absolute;
	left         : 0;
	top          : 6px;
	width        : 4px;
	height       : 4px;
	border-right : 1px solid #c7dbec;
	border-bottom: 1px solid #c7dbec;
	overflow     : hidden;
	transform    : rotate(-45deg);
}

#footer .footer-navi {
	padding   : 25px 0 20px 0;
	background: #0d3ab4;
	font-size : 16px;
	text-align: center;
}

#footer .footer-navi ul {
	display: inline-block;
}

#footer .footer-navi li {
	float      : left;
	margin-left: 50px;
}

#footer .footer-navi li:first-child {
	margin-left: 0;
}

#footer .footer-navi a {
	position    : relative;
	/*	display  : block;*/
	margin-left : 5px;
	padding-left: 15px;
}

#footer .footer-navi a:before {
	content      : "";
	position     : absolute;
	left         : 0;
	top          : 50%;
	width        : 7px;
	height       : 7px;
	margin-top   : -6px;
	border-right : 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	overflow     : hidden;
	transform    : rotate(-45deg);
}

#footer .footer-navi a.nobefore:before {
	content: normal;
}

#footer .footer-navi .facebook a {
	padding-left: 30px;
}

#footer .footer-navi .facebook a:before {
	width     : 20px;
	height    : 20px;
	margin-top: -10px;
	border    : none;
	background: url(../../common_2017/images/icon-facebook.png);
	transform : rotate(0);
}

#footer .footer-navi .twitter a {
	padding-left: 30px;
}

#footer .footer-navi .twitter a:before {
	width     : 20px;
	height    : 20px;
	margin-top: -10px;
	border    : none;
	background: url(../../common_2017/images/icon-twitter.png);
	transform : rotate(0);
}

#footer .footer-company {
	padding   : 20px 0;
	background: #002896;
	font-size : 13px;
	text-align: center;
}

#footer .footer-company ul {
	display: inline-block;
}

#footer .footer-company li {
	float       : left;
	position    : relative;
	margin-left : 15px;
	padding-left: 15px;
}

#footer .footer-company li:before {
	content    : "";
	position   : absolute;
	left       : 0;
	top        : 50%;
	width      : 1px;
	height     : 13px;
	margin-top : -6px;
	border-left: 1px solid #33658e;
	overflow   : hidden;
}

#footer .footer-company li:first-child {
	margin-left : 0;
	padding-left: 0;
}

#footer .footer-company li:first-child:before {
	border-left: none;
}

#footer .footer-company .logo {
	margin-top: 20px;
}

#footer_logo_only {
	width           : 100%;
	background-color: #002896;
	color           : #FFF;
	padding-right   : 0;
	padding-bottom  : 25px;
	padding-left    : 0;
	padding-top     : 27px;
}

/*404*/

#error {
	width       : 642px;
	margin-top  : 60px;
	margin-right: auto;
	margin-left : auto;
}

#error #errorBox {
	border-top-width   : 2px;
	border-bottom-width: 2px;
	border-top-style   : solid;
	border-bottom-style: solid;
	border-top-color   : #c5c5c5;
	border-bottom-color: #c5c5c5;
	padding-top        : 20px;
	padding-bottom     : 20px;
	margin-top         : 20px;
	padding-left       : 10px;
}

#errorBox p {
	line-height: 1.4;
	text-align : left;
}

#error #errorBox ul {
	line-height: 1.6;
	text-align : left;
}

/* プライバシーポリシー */
.subtitle_bg {
	background-color: #ebebeb;
	font-size       : 121.3%;
	font-weight     : bold;
	margin-bottom   : 15px;
	padding         : 5px 5px 5px 10px;
}

/* LP用css 514行目からコピー */
#lp_gnavi {
	background-color: #002896;
	border-top      : 1px solid #002896;
	border-bottom   : 1px solid #002896;
	height          : 20px;
	margin-bottom   : 50px;
}

.toiawase {
	overflow: visible;
}

.toiawase .contentwrap {
	width    : 100%;
	max-width: 1120px;
}

.toiawase #wrap {
	overflow: visible;
}

.toiawase #header {
	position  : sticky;
	top       : 0;
	background: #fff;
	z-index   : 999;
}

/* 4/1統合後問い合わせフッター */
#footer {
	padding      : 10px 2.5vw;
	background   : #002896;
	color        : #fff;
	font-size    : 0.7vw;
	/* margin-top: 45px; */
	margin-top   : 0;
	padding-top  : 0;
	overflow     : hidden;
}

#footer ul {
	display        : flex;
	justify-content: center;
	margin         : 15px 0 20px;
}

#footer li {
	font-size   : 15px;
	padding-left: 1em;
}

#footer li:not(:last-of-type)::after {
	content: '　|';
}

#footer .footerBottom {
	border-top: 1px solid #fff;
	padding   : 0.8vw 0 0.6vw;
	font-size : 12px;
}

#footer .footerBottom p {
	margin: 0;
}

#footer .contentwrap {
	width        : 1120px;
	margin-right : auto;
	margin-bottom: 0px;
	margin-left  : auto;
	position     : relative;
}

#footer .footer-usability {
	display: table;
	width  : 100%;
}

#footer .pagetop-btn {
	display: table-cell;
	width  : 60px;
}

#footer .pagetop-btn a {
	position  : relative;
	display   : block;
	width     : 60px;
	height    : 60px;
	background: #666d71;
}

#footer .pagetop-btn span {
	font-size  : 0;
	text-indent: 100%;
}

#footer .pagetop-btn a:before {
	content     : "";
	position    : absolute;
	top         : 26px;
	left        : 23px;
	width       : 12px;
	height      : 12px;
	border-top  : 3px solid #ffffff;
	border-right: 3px solid #ffffff;
	overflow    : hidden;
	transform   : rotate(-45deg);
}

#footer .pagetop-btn a:hover {
	background: #40484e;
}

#footer .text-note {
	display       : table-cell;
	vertical-align: bottom;
	color         : #777;
	text-align    : right;
	font-size     : 12px;
}

.text-emph {
	color: #bf0000;
}

#footer a {
	color          : #ffffff;
	text-decoration: none;

	&[target="_blank"] {
		&::after {
			content    : url(/common/img/ico_link.svg);
			margin-left: 5px;
			filter     : invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg) brightness(107%) contrast(101%);
		}
	}
}

#footer a:hover {
	text-decoration: underline;
}