@charset "utf-8";
/* Style Reset
------------------------------------------------*/
* {
	margin: 0;
	padding: 0;
	border: 0;
	line-height: 1;
	text-decoration: none;
	font-size: 100%;
	font-style: normal;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	font-weight: 500;
	box-sizing: border-box;
}

html, body, div, span, applet, object, iframe, strong,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, legend, caption,
tbody, tfoot, thead, table, label, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}

ul, ol {
	list-style: none;
}

/* HTML5
------------------------------------------------*/
section, nav, article, aside, hgroup, header, footer, figure, figcaption, summary {
	display: block;
	margin: 0;
	padding: 0;
	color: #000000;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	font-weight: 500;
}

br {
	letter-spacing: normal;
}

/* floatの解除 */
.clear {
	clear: both;
	margin: 0;
	padding: 0;
}

.clearfix:after {
	display: block;
	clear: both;
	height: 0px;
	visibility: hidden;
	content:".";
}

.clearfix {
	min-height: 1px; /* IE6、7対策 */
}

* html .clearfix {
	height: 1px;
	/*¥*//*/ /*MAC IE5.x対策*/
	height: auto;
	overflow: hidden;
	/**/
}

/* IE11でsvgが崩れる対策 */
@media screen and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
  img[src$=".svg"] {
    width: 100%;
  }
}



/* Base Style
------------------------------------------------*/
/* Margin Style */
.m0 {margin:0px !important;} .m10 {margin:10px;} .m15{margin:15px;} .m20{margin:20px;} .m25{margin:25px;} .m30{margin:30px;} .m35{margin:35px;}
.mT0 {margin-top:0px !important;} .mT10 {margin-top:10px;} .mT15 {margin-top:15px;} .mT20 {margin-top:20px;} .mT25 {margin-top:25px;} .mT30 {margin-top:30px;} .mT35{margin-top:35px;} .mT40{margin-top: 40px;}
.mR0 {margin-right:0px !important;} .mR10 {margin-right:10px;} .mR15 {margin-right:15px;} .mR20 {margin-right:20px;} .mR25 {margin-right:25px;} .mR30 {margin-right:30px;} .mR35{margin-right:35px;} .mR40{margin-right: 40px;}
.mB0 {margin-bottom:0px !important;} .mB10 {margin-bottom:10px;} .mB15 {margin-bottom:15px;} .mB20 {margin-bottom:20px;} .mB25 {margin-bottom:25px;} .mB30 {margin-bottom:30px;} .mB35{margin-bottom:35px;} .mB40{margin-bottom: 40px;}
.mL0 {margin-left:0px !important;} .mL10 {margin-left:10px;} .mL15 {margin-left:15px;} .mL20 {margin-left:20px;} .mL25 {margin-left:25px;} .mL30 {margin-left:30px;} .mL35{margin-left:35px;} .mL40{margin-left: 40px;}

/* Padding Style */
.p0 {padding:0px !important;} .p10 {padding:10px;} .p15{padding:15px;} .p20{padding:20px;} .p25{padding:25px;} .p30{padding:30px;} .p35{padding:35px;}
.pT0 {padding-top:0px !important;} .pT10 {padding-top:10px;} .pT15 {padding-top:15px;} .pT20 {padding-top:20px;} .pT25 {padding-top:25px;} .pT30 {padding-top:30px;} .pT35{padding-top:35px;}
.pR0 {padding-right:0px !important;} .pR10 {padding-right:10px;} .pR15 {padding-right:15px;} .pR20 {padding-right:20px;} .pR25 {padding-right:25px;} .pR30 {padding-right:30px;} .pR35{padding-right:35px;}
.pB0 {padding-bottom:0px !important;} .pB10 {padding-bottom:10px;} .pB15 {padding-bottom:15px;} .pB20 {padding-bottom:20px;} .pB25 {padding-bottom:25px;} .pB30 {padding-bottom:30px;} .pB35{padding-bottom:35px;}
.pL0 {padding-left:0px !important;} .pL10 {padding-left:10px;} .pL15 {padding-left:15px;} .pL20 {padding-left:20px;} .pL25 {padding-left:25px;} .pL30 {padding-left:30px;} .pL35{padding-left:35px;}

/* Float Style */
.columnLeft {float:left !important;} .columnRight{float:right !important;}

/* Table Style */
table {width: 100%; border-collapse: collapse; border-spacing: 0;}
td {text-align: left; background: transparent;}
th {text-align: left; background: transparent;}

/* Font Style */
div {-ms-word-wrap: break-word; word-wrap: break-word;}
strong {font-weight: bold;}
del {text-decoration: line-through;}
em {font-style: italic;}
.bold {font-weight: bold;}
.em {font-size: italic;}
.under {text-decoration: underline;}
.del {text-decoration: line-through;}
.attention {color: #F00;}
.taLeft {text-align: left;} .taRight {text-align: right;} .taCenter {text-align: center;}
.vaMiddle {vertical-align: middle;}
.imageBorder {border: 1px solid #CCC;}
.normal {font-size: 1rem !important;} .small {font-size: 0.923rem !important;} .ssmall {font-size: 0.846rem !important;} .large {font-size: 1.077rem !important;} .large02 {font-size: 1.5rem !important;}
.bdLeft0 {border-left: 0 !important;} .bdRight0 {border-right: 0 !important;} .bdTop0 {border-top: 0 !important;} .bdBottom0 {border-bottom: 0 !important;}


/* common */
html {
	overflow-x: hidden;
	height: 100%;
	font-size: 15px;
}

body {
	height: 100%;
	color: #333;
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	font-weight: 500;
}

img {
	max-width: 100%;
	height: auto;
}

p {
	line-height: 1.6;
}

a {
	font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
	font-weight: 500;
}

a:hover {
	text-decoration: underline;
}

a:visited { color:#330066; }

strong {
	font-weight: bold;
}

.container {
	overflow: hidden;
	width: 1220px;
	margin: 0 auto;
	padding: 0 20px;
}

.container02 {
	overflow: hidden;
	width: 1100px;
	margin: 0 auto;
	padding: 0 20px;
}

.scroll {
	margin: 10px 0 20px;
}

.scroll table {
	margin: 0;
}

.hover {
	transition: 0.3s;
}

.hover:hover {
	transition: 0.3s;
}

.hover_op:hover {
	opacity: 0.7;
}

.flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.hide {
	display: none;
}

.show {
	display: block;
}



/* Global Header
------------------------------------------------*/
#globalHeader {
	overflow: hidden;
	border-bottom: 5px solid #2e4fb5;
	padding-bottom: 20px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.4);
}

#globalHeader .logo img {
	float: left;
	height: 35px;
	margin: 20px 20px 0 0;
}

#globalHeader .headerInfo {
	float: right;
}

#globalHeader .headerInfo ul {
	margin-top: 30px;
}

#globalHeader .headerInfo ul li {
	display: inline;
	background-color: transparent;
	background-image: url(../images/icon_arrow_001.png);
	background-image: url(../images/icon_arrow_001.svg), none;
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 7px;
	font-size: 0.933rem;
	margin-right: 15px;
	padding-left: 10px;
}

#globalHeader .headerInfo ul li:last-child {
	margin-right: 0;
}



/* Global Nav
------------------------------------------------*/



/* Breadcrumb
------------------------------------------------*/



/* Global Footer
------------------------------------------------*/
#globalFooter {
	border-top: 5px solid #2e4fb5;
	padding: 20px 0;
}

#globalFooter .logo002 {
	float: left;
	height: 60px;
}

#globalFooter .footerInfo {
	float: right;
	font-size: 0.867rem;
	margin-top: 10px;
}

#globalFooter .footerInfo ul {
	float: right;
}

#globalFooter .footerInfo ul li {
	float: left;
	border-right: 1px solid #d3d3d3;
	margin-right: 10px;
	padding-right: 10px;
}

#globalFooter .footerInfo ul li:last-child {
	border: none;
	margin-right: 0;
	padding-right: 0;
}

#globalFooter .footerInfo #copy {
	text-align: right;
	margin-top: 20px;
}

#pageTop {
	position: fixed;
	right: 30px;
	bottom: 20px;
	background-image: url('../images/btn_backtop_001.png');
	background-image: url('../images/btn_backtop_001.svg'), none;
	background-repeat: no-repeat;
	z-index: 5;
	transition: 0.3s;
}

#pageTop:hover {
	bottom: 25px;
	transition: 0.3s;
}

#pageTop a {
	display: block;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	width: 60px;
	height: 60px;
}



/* Content
------------------------------------------------*/
#content {
	margin: 60px 0;
}

#home #content {
	margin-bottom: 0;
}

/* section */
.sec01 {
	min-height: 1px; /* IE6、7対策 */
	border-bottom: 1px dotted #aaa;
	margin-bottom: 40px;
	padding-bottom: 20px;
}

.sec01:last-child {
	border: none;
}

.sec01:after {
	display: block;
	clear: both;
	height: 0px;
	visibility: hidden;
	content:".";
}

.sec02 {
	min-height: 1px; /* IE6、7対策 */
	margin-bottom: 30px;
}

.sec02:after {
	display: block;
	clear: both;
	height: 0px;
	visibility: hidden;
	content:".";
}

.sec03 {
	min-height: 1px; /* IE6、7対策 */
	margin-bottom: 30px;
}

.sec03:after {
	display: block;
	clear: both;
	height: 0px;
	visibility: hidden;
	content:".";
}

.sec02:last-of-type,
.sec03:last-of-type {
	margin-bottom: 0;
}

.h1 {
	min-height: 25px;
	background-image: url('../images/icon_search_001.png');
	background-image: url('../images/icon_search_001.svg'), none;
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 25px;
	font-size: 1.600rem;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 20px;
	padding-left: 40px;
}

.h2 {
	border-left: 3px solid #2e4fb5;
	font-size: 1.200rem;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 15px;
	padding: 5px 10px;
}

.h3 {
	border-bottom: 1px dotted #aaa;
	font-size: 1.067rem;
	font-weight: bold;
	line-height: 1.3;
	margin-bottom: 15px;
	padding-bottom: 10px;
}

.sec01 p {
	line-height: 1.4;
	margin: 15px 0 20px;
}

.sec01 ul {
	margin: 15px 0 25px;
}

.sec01 ul li {
	background-color: transparent;
	background-image: url('../images/icon_arrow_001.png');
	background-image: url('../images/icon_arrow_001.svg'), none;
	background-repeat: no-repeat;
	background-position: left 5px;
	background-size: 7px;
	line-height: 1.4;
	margin-bottom: 10px;
	padding-left: 10px;
}

.sec01 ul li:last-child {
	margin-bottom: 0;
}

.sec01 ul li a {
	line-height: 1.4;
}

.sec01 .ul02 li {
	background-image: url('../images/icon_arrow_002.png');
	background-image: url('../images/icon_arrow_002.svg'), none;
	background-position: left 3px;
	background-size: 15px;
	line-height: 1.4;
	padding-left: 20px;
}



@media only screen and (max-width : 1220px) {
	.container {
		width: auto;
		max-width: 1100px;
	}
}



@media only screen and (max-width : 1100px) {
	.container, .container02 {
		width: auto;
		max-width: 980px;
	}

	#globalHeader .container {
		max-width: none;
		padding-right: 80px;
	}


	/* ハンバーガーメニュー */
	#menuTrigger {
		cursor: pointer;
		display: inline-block;
		position: absolute;
		top: 13px;
		right: 15px;
		width: 50px;
		height: 50px;
		background: #2e4fb5;
		z-index: 7;
		border-radius: 50%;
	}

	#menuTrigger:hover {
		opacity: 0.9;
		transition: 0.3s;
	}

	#menuTriggerIcon {
		display: block;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 17px;
		height: 2px;
		margin: -1px 0 0 -9px;
		background: #fff;
		transition: 0.2s;
	}

	#menuTriggerIcon:before, #menuTriggerIcon:after {
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 0;
		width: 17px;
		height: 2px;
		background: #fff;
		transition: 0.3s;
	}

	#menuTriggerIcon:before {
		margin-top: -6px;
	}

	#menuTriggerIcon:after {
		margin-top: 4px;
	}

	#menuTrigger .close {
		background: transparent;
	}

	#menuTrigger .close:before, #menuTrigger .close:after {
		margin-top: -1px;
	}

	#menuTrigger .close:before {
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}

	#menuTrigger .close:after {
		transform: rotate(-135deg);
		-webkit-transform: rotate(-135deg);
	}

	#globalHeader .headerInfo {
		display: none;
		position: fixed;
		top: 0;
		left: 0;
		width: 100vw;
		height: auto;
		min-height: 100vh;
		background: #333;
		z-index: 6;
		overflow-y: scroll;
	}

	#globalHeader .headerInfo .mbWrap {
		position: absolute;
		top: 100px;
		right: 0;
		left: 0;
		background: #333;
		width: 80%;
		height: auto;
		margin: auto auto 100px auto;
		padding: 30px;
		border-radius: 5px;
	}

	#globalHeader .headerInfo ul li {
		display: block;
		background-position: left 8px;
		border-bottom: 1px dotted #fff;
		font-size: 1.200rem;
		margin-bottom: 20px;
		padding: 0 0 20px 15px;
	}

	#globalHeader .headerInfo ul li:last-child {
		border: none;
		margin-bottom: 0;
	}

	#globalHeader .headerInfo ul li a {
		color: #fff;
		font-weight: bold;
		line-height: 1.6;
	}
}



@media only screen and (max-width : 980px) {
	.container, .container02 {
		max-width: 740px;
	}
}



@media only screen and (max-width : 800px) {
	.container, .container02 {
		width: auto;
		max-width: 640px;
	}


	.scroll {
		overflow: auto;
	}

	.scroll::-webkit-scrollbar {
		height: 5px;
	}

	.scroll::-webkit-scrollbar-track {
		background: #F1F1F1;
	}

	.scroll::-webkit-scrollbar-thumb {
		background: #BCBCBC;
	}

	.table {
		table-layout: auto;
	}

	.scroll .table {
		min-width: 1200px;
		table-layout: fixed;
	}


	.h1 {
		background-position: left top;
	}
}



@media only screen and (max-width : 660px) {
	.container, .container02 {
		max-width: 540px;
	}


	#globalFooter .logo002 {
		float: none;
		display: block;
		margin: 0 auto 25px;
	}

	#globalFooter .footerInfo {
		float: none;
		border-top: 1px dotted #aaa;
		padding-top: 20px;
	}

	#globalFooter .footerInfo ul {
		overflow: hidden;
		float: none;
	}

	#globalFooter .footerInfo ul li {
		float: left;
	}

	#globalFooter .footerInfo #copy {
		text-align: left;
		margin-top: 10px;
	}


	#content {
		margin-top: 40px;
	}



	.h1 {
		font-size: 1.400rem;
		line-height: 1.3;
	}
}



@media only screen and (max-width : 490px) {
	#globalHeader .logo img {
		height: 30px;
		margin: 15px 15px 0 0;
	}

	#globalHeader .logo a:nth-child(1) img {
		height: 25px;
	}


	#content {
		margin-top: 40px;
	}
}



@media only screen and (max-width : 420px) {
}



@media only screen and (max-width : 375px) {
	#globalHeader .logo a:nth-child(2) img {
		margin-right: 0;
	}


	.container, .container02 {
		max-width: 440px;
	}


	#globalFooter .footerInfo ul li {
		float: none;
		background-color: transparent;
		background-image: url('../images/icon_arrow_001.png');
		background-image: url('../images/icon_arrow_001.svg'), none;
		background-repeat: no-repeat;
		background-position: left 1px;
		background-size: 7px;
		border: none;
		margin-top: 15px;
		padding-left: 10px;
	}

	#globalFooter .footerInfo ul li:first-child {
		margin-top: 0;
	}

	#globalFooter .footerInfo #copy {
		margin-top: 20px;
	}


	.h1 {
		font-size: 1.267rem;
	}
}



@media only screen and (max-width : 320px) {
}