@charset "utf-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/* -----------------------------------------------------------------------
## Reset #################################################################
----------------------------------------------------------------------- */
html,body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,img,
pre,form,fieldset,input,textarea,p,blockquote,th,td {
  margin: 0px;
  padding: 0px;
}
html {font-size: 62.5%; } /* 10px */
html {overflow:auto; height:100%;}
body{
	color: #000;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Noto Sans Japanese","Hiragino Maru Gothic W4 JIS2004", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 1.5rem;
	line-height: 1.8em;
	-webkit-text-size-adjust: 100%;
	letter-spacing: 0.05em;
	overflow: hidden;
	font-weight:500;
}
fieldset,img {
  border: 0;
  vertical-align: bottom;
}

address,caption,cite,code,dfn,em,var {
  font-style: normal;
  font-weight: normal;
}
ul {
  list-style: /cs/css/none;
}
ol li {
	list-style-position: outside;
	list-style: decimal;
	margin-left: 25px;
	margin-bottom:5px;
}

caption,th {
	text-align: left;
	font-weight: normal;
}
h1,h2,h3,h4,h5,h6 {
  font-size: 100%;
  font-weight: normal;
}

a{
	color: #333333;
	text-decoration: /cs/css/none;
}

img {
	max-width:100%;
	height:auto;
	padding: 0;
	margin: 0;
}
*:focus {
	outline: /cs/css/none;
}
input[type=text],select {
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Noto Sans Japanese","Hiragino Maru Gothic W4 JIS2004", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 16px;
}
.clearfix:after {
    content:"";
    display:block;
    clear:both;
}
/*a {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}*/

.ma_b5 {margin-bottom: 5px;}
.ma_b10 {margin-bottom: 10px;}
.ma_b15 {margin-bottom: 15px;}
.ma_b20 {margin-bottom: 20px;}
.ma_b21 {margin-bottom: 21px;}
.ma_b25 {margin-bottom: 25px;}
.ma_b30 {margin-bottom: 30px;}
table, tr, th, td {
    border-collapse: collapse;
	text-align:left;
	font-weight:normal;
	vertical-align:top;
}

.sp {display:/cs/css/none;}

/*---- FOR SP ----*/
@media only screen and (max-width: 768px){
body{
	color: #000;
	font: 1.2rem/165% "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Noto Sans Japanese","Hiragino Maru Gothic W4 JIS2004", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, Arial, sans-serif;
	-webkit-text-size-adjust: 100%;
	letter-spacing:0.05em;
	line-height:160% !important;
	
}
.pc {display:/cs/css/none !important;}
.sp {display:block!important;}
.img100 {width:100%; height:auto;}
.img90 {width:90%; height:auto;}
.img80 {width:80%; height:auto;}
.img70 {width:70%; height:auto;}
}


/****************************************

HEADER

*****************************************/
header{
}
.header .hd_sup {
	max-width: 1080px;
	margin: 0px auto;
	padding: 0px 10px 20px;
}
.header .hd_sup h1 {
	margin: 35px 0px 0px 1px;
	float: left;
	width: 40.37037%;
}
.header .hd_link {
	margin: 30px 0 0;
	float: right;
	/*width: 34.259259%;*/
	width: 55%;
display: flex;align-items: center;}
.header .hd_link li {
	width: 100%;
	float: left;
	text-align: center;
	line-height: 1.0em;
	font-size: 1.4rem;
	border-bottom: 3px solid #e6e6e6;
	border-radius: 0 0 6px 6px;
	-webkit-border-radius: 0 0 6px 6px;
	-moz-border-radius: 0 0 6px 6px;
}
.header .hd_link li:nth-child(even){
	float: right;
}
.header .hd_link li a {
	color: #CB2837;
	background: #FFFFFF;
	display: block;
	line-height: 56px;
	border: 1px solid #CB2837;
	border-radius: 6px;
	-webkit-border-radius: 6px;/* for Safari and Chrome 対応*/
	-moz-border-radius: 6px;/* for Firefox 対応*/
}
.header .hd_sup li:last-child a:before{
	margin: 0 10px 0 0;
	content: " ";
	display: inline-block;
	width: 18px;
	height: 22px;
	background: url(/cs/images/common/hd_icon_access.png);
	background-size: contain;
	vertical-align: middle;
}
/*.header .hd_sup li:last-child a:before{
	margin: 0 10px 0 0;
	content: " ";
	display: inline-block;
	width: 23px;
	height: 17px;
	background: url(/cs/images/common/hd_icon_mail.png);
	background-size: contain;
	vertical-align: middle;
}*/

.triggerBtn {
	display:/cs/css/none;
}
#gnav {
	width: 100%;
	background-size: 50% auto;
	background: #CB2837;
}
#gnav ul {
	/* max-width: 1080px; */
	max-width: 1200px;margin: 0 auto;
	text-align: center;
	background: #CB2837 url(/cs/images/common/gnav_line.jpg) no-repeat left center;
display: flex;flex-flow: nowrap;justify-content: space-between;}
#gnav ul li {
	vertical-align: middle;
	/* display: inline-block; */
	background: url(/cs/images/common/gnav_line.jpg) no-repeat right center;
	/* line-height: 70px; */
	padding: 21.5px 2%;
width: 16.75%;/* width: fit-content; */white-space: nowrap;}

#gnav ul li:hover {background: #a6212d}
#gnav ul li a {
	display: block;
	color: #FFF;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
	font-size: 1.5rem;
}




.triggerBtn  {
	display: /cs/css/none;
}
@media only screen and (max-width: 1080px){
#gnav ul li {
	/* padding: 0 2%; */
}
}
@media only screen and (max-width: 965px){
#gnav ul li {
	/* padding: 0 0.2%; */
}
}
/*---- FOR SP ----*/
@media only screen and (max-width: 768px){
header{height: 60px;}
.header .hd_sup { padding: 0px 10px; height:  60px;}
.header .hd_sup h1 {margin: 15px 0px 0px 0px;width: 55%;}
.header .hd_sup .hd_contact {display:/cs/css/none;}
.triggerBtn {display:/cs/css/none;}
#gnav {width: 100%; background-size: 50% auto; background: #CB2837;}
.triggerBtn { display: block;}
.header .hd_link {
	/* display: /cs/css/none; */
width: 34%;min-width: 104px;float: right;margin: 15px 25px 0 2%;}
}




/****************************************

footer

*****************************************/
footer {
	border-top: 2px solid #CB2837;
}
footer #copyright {
	font-size: 1.2rem;
	color: #FFF;
	background: #cb2837;
	line-height: 50px;
	text-align: center;
}
footer .ft_logo {
	margin: 0px 0px 15px;
}
footer .ft_info {
	background: #f7f7f7;
}
footer .ft_info .innar {
	padding: 35px 10px;
}
footer .ft_info ul .st {
	font-weight: bold;
	color: #cb2837;
	font-size: 1.4rem;
	margin: 0px 5% 10px;
}
footer .ft_info ul .add {
	font-size: 1.2rem;
}
footer .ft_info .ft_add {
	float: left;
	width: 70%;
}
footer .ft_info .ft_add .add {
	font-size: 1.2rem;
	line-height: 1.5;
}
footer .ft_info .ft_link {
	float: right;
	width: 24%;
}
footer .ft_info .ft_link .link li {
	margin: 0px 10px 10px 0px;
	font-size: 1.3rem;
	line-height: 1.3;
	float: left;
}
footer .ft_info .ft_link .link li:last-child {
	margin: 0px 0px 10px 0px;
}

footer .ft_info .ft_link .link li a:before {
	background : /cs/css/none;
	content: "\f105";
	font-family: FontAwesome;
	margin: 0 5px 0 0;
	font-size: 1.4rem;
	color: #cb2837;
}
footer .ft_info .ft_link .link {
	float: right;
}
footer .ft_info .ft_link .ft_logo2 {
	float: right;
}
footer .ft_gnav {
	text-align: center;
	font-size: 13px;
}
footer .ft_gnav ul li {
	vertical-align: middle;
	display: inline-block;
	background: url(/cs/images/common/ft_gnav_line.png) no-repeat right center;
	line-height: 60px;
	padding: 0 2%;
}
footer .ft_info .innar .ft_link .sns {
	float: right;
}
footer .ft_info .innar .ft_link .sns li {
	float: left;
	margin: 0px 0px 0px 15px;
}
footer .ft_logo3 {
	float:left;
}

@media only screen and (max-width: 768px){
footer{
	margin: 0;
}
footer #copyright {
	font-size: 1.0rem;
	line-height: 45px;
}
footer .ft_logo {
	float: /cs/css/none;
	width: auto;
	text-align: center;
	margin: 0 0 15px;
}
footer .ft_info {
}
footer .ft_info .innar {
	padding: 25px 5%;
}
footer .ft_info ul .st {
	font-weight: bold;
	color: #cb2837;
	font-size: 1.4rem;
	margin: 0px 5% 10px;
}
footer .ft_info ul .add {
	font-size: 1.2rem;
}
footer .ft_info .ft_add {
	float: /cs/css/none;
	width: auto;
	margin: 0 0 15px;
}
footer .ft_info .ft_add .add {

	line-height: 1.2;
	float: /cs/css/none;
	width: auto;
}
footer .ft_info .ft_link {
	float: /cs/css/none;
	width: auto;
	border-top: solid 1px #ccc;
	padding: 10px 0 0;
}
footer .ft_info .ft_link .link li {
	margin: 0px 10px;
	font-size: 1.2rem;
	line-height: 1.2;
	display: inline-block;
}
footer .ft_info .ft_link .link li a:before {
	background : /cs/css/none;
	content: "\f105";
	font-family: FontAwesome;
	margin: 0 5px 0 0;
	font-size: 1.4rem;
	color: #cb2837;
}
footer .ft_info .ft_link .link {
	float: /cs/css/none;
	margin: 0 0 5px;
	text-align: center;
}
footer .ft_info .ft_link .ft_logo2 {
	float: /cs/css/none;
	text-align: center;
}
footer .ft_gnav {
	text-align: center;
}
footer .ft_gnav ul li {
	display: block;
	background: /cs/css/none;
	line-height: 1.5;
	width: 50%;
	box-sizing: border-box;
	border-bottom: solid 1px #ccc;
	float: left;
	background: #f3f3f3;
	padding: 10px 5%;
}
footer .ft_gnav ul li:nth-child(odd) {
	border-right: solid 1px #ccc;
}
footer .ft_info .innar .ft_link .sns {
	float: /cs/css/none;
	text-align: center;
}
footer .ft_info .innar .ft_link .sns li {
	float: /cs/css/none;
	margin: 0px 10px;
	display: inline-block;
}

footer .ft_logo3 {
	float:/cs/css/none;
	margin-top:10px;
	text-align:center;
}

}






/* ----------------------------------------
 *  お問い合わせバナー
 * ---------------------------------------- */
#contact_btn {
	width: 48.57%;
	height:  118px;
	margin: 80px auto 75px;
	text-align: center;
	border: 2px solid #cb2837;
	font-size: 2.1rem;
	font-weight: bold;
	position:relative;
}
#contact_btn span {
	font-size: 1.5rem;
	font-weight: normal;
}
#contact_btn a {
	color: #cb2837;
	display:block;
	position: absolute;
	top: 50%;
	-ms-transform: translateY(-50%);
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	text-align:center;
	width:100%;
}
#contact_btn a:before{
	content: "\f105";
	display: inline-block;
	font: bold 2.4rem/1.8em FontAwesome;
	margin: 0 5% 0 0;
	color: #cb2837;
	float:right;
}
@media only screen and (max-width: 768px){
#contact_btn {
	width: auto;
	height: 60px;
	margin: 40px 5% 35px;
	font-size: 18px;
}
#contact_btn span {
	font-size: 13px;
}
#contact_btn a {
	color: #cb2837;
	display:block;
	position: absolute;
	top: 50%;
	-ms-transform: translateY(-50%);
	-webkit-transform : translateY(-50%);
	transform : translateY(-50%);
	text-align:center;
	width:100%;
}
#contact_btn a:before{
	font: bold 2rem/1.8em FontAwesome;
	margin: 0 3% 0 0;
}
}



/* ----------------------------------------
 *  ページトップ
 * ---------------------------------------- */
#page-top {
	position: fixed;
	bottom: 20px;
	right: 0px;
}
#page-top a {
	background: #CB2837;
	text-decoration: /cs/css/none;
	width: 58px;
	padding: 15px 0;
	text-align: center;
	display: block;
	vertical-align: middle;
	/* border-radius */
	border-radius:6px 0px 0px 6px ;
	-moz-border-radius:6px 0px 0px 6px ;
	-webkit-border-radius:6px 0px 0px 6px ;
}
#page-top a:hover {
	opacity:0.7;
}

@media only screen and (max-width: 768px){
#page-top {
	display:/cs/css/none;
	bottom: 10px;
	right: 0px;
	z-index:2;
}
#page-top img {
	width:auto;
	height:15px;
}
#page-top a {
	width: 45px;
	padding: 10px 0 15px;
}

}
/* Toggle Button */
.header #nav-toggle {
	display: /cs/css/none;
	position: absolute;
	right: 10px;
	top: 17px;
	width: 35px;
	height: 35px;
	cursor: pointer;
	z-index: 101;
	background: #FFF;
	padding: 5px;
}
#nav-toggle div {
	position: relative;
}
#nav-toggle span {
	display: block;
	position: absolute;
	height: 2px;
	width: 100%;
	left: 0;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
	background-color: #CB2837;
}
#nav-toggle span:nth-child(1) {
	top: 9px;
}
#nav-toggle span:nth-child(2) {
	top: 17px;
}
#nav-toggle span:nth-child(3) {
	top: 25px;
}


#sp_navi {display:/cs/css/none;}


@media only screen and (max-width: 768px){
.pc {display:/cs/css/none !important;}
.sp {display:block!important;}
#nav-toggle , .header2 #nav-toggle {
	display: block;
	}

	/* #nav-toggle 切り替えアニメーション */
	.open #nav-toggle span:nth-child(1) {
		top: 17px;
		-webkit-transform: rotate(315deg);
		-moz-transform: rotate(315deg);
		transform: rotate(315deg);
	}
	.open #nav-toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.open #nav-toggle span:nth-child(3) {
		top: 17px;
		-webkit-transform: rotate(-315deg);
		-moz-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}
#sp_navi{
	display: /cs/css/none;
	width: 100%;
	clear: both;
	position: absolute;
	top: 60px;
	background: #fff;
	box-sizing: content-box;
	z-index: 9997;
	padding: 10px 5%;
}
	#sp_navi li{
		width:50%;
		float:left;
		box-sizing: border-box;
		font-size: 11px;
}

	#sp_navi li:nth-child(odd){
		border-right:1px solid #dfdfdf;
		border-bottom:1px solid #dfdfdf;
}
	#sp_navi li:nth-child(even){
		border-bottom:1px solid #dfdfdf;
}

#sp_navi ul .link2 {
	background: #FFF;
}
#sp_navi ul .link3 a {
	color:#CB2837;
}
#sp_navi ul .link3 {
	background: #CB2837;
}
#sp_navi ul .link3 a {
	color:#FFF;
}
#sp_navi ul li a {
    display: block;
    padding: 12px 5px 12px 10px;
}
#sp_navi ul .blank::after{
	margin: 0 0 0 5px;
	content: " ";
	display: inline-block;
	width: 12px;
	height: 10px;
	background: url(/cs/images/common/blank_icon_w.png);
	background-size: contain;
	vertical-align: middle;
}
}



@media only screen and (max-width: 768px){
#gnav {
	display:/cs/css/none;
}

}






/*********************************************************************************************
  非表示項目を設定（0px - 768px）
*********************************************************************************************/
#subnavi {
	display:/cs/css/none;
}
/*********************************************************************************************/

/* 下層ページ　メインイメージ
------------------------------------- */
#main .mainimg {
}
#main .mainimg img {
	width:100%;
	height:auto;
}

/* タイトル　パンくず
------------------------------------- */
#contents {
	max-width: 1080px;
	margin: 0 auto;
	padding: 0 10px 80px;
}







.innar {
	max-width: 1080px;
	margin: 0px auto;
	padding: 0px 10px;
}

@media only screen and (max-width: 768px){
/* 下層ページ　メインイメージ
------------------------------------- */
#main .mainimg {
	padding: 0;
	margin:  0;
}
#main .mainimg img {
}

/* タイトル　パンくず
------------------------------------- */
#contents {
	margin: 0 5%;
	padding: 0 0 40px;
}




.innar {
	max-width: 1080px;
	margin: 0px auto;
	padding: 0px 10px;
}
}






/* コンテンツ
------------------------------------- */
#contentR {
	float: right;
	width: 74.075%;
	padding: 0px 0px 130px;
}
@media only screen and (max-width: 768px){
#contentR {
	float: /cs/css/none;
	width: auto;
	padding: 0 0 50px;
}
}



.titleGray {
	background: #f3f3f3;
	line-height: 60px;
	padding: 0px 0px 0px 15px;
	font-size: 1.6rem;
	font-weight: bold;
	margin: 0px 0px 15px;
}

@media only screen and (max-width: 768px){
.titleGray {
	line-height: 1.5em;
	padding: 10px;
	font-size: 1.2rem;
	margin: 0px 0px 10px;
}
}











#full img {
  display: /cs/css/none;
}

#full img:first-child  {
  display: inline;
}






.ma0 {margin: 0 !important;}
.ma_t5 {margin-top: 5px;}
.ma_t8 {margin-top: 8px;}
.ma_t10 {margin-top: 10px;}
.ma_t15 {margin-top: 15px;}
.ma_t20 {margin-top: 20px;}
.ma_t25 {margin-top: 25px;}
.ma_t30 {margin-top: 30px;}
.ma_t35 {margin-top: 35px;}
.ma_t40 {margin-top: 40px;}
.ma_t50 {
	margin-top: 50px;
}
.ma_t60 {
	margin-top: 60px;
}






/* ----------------------------------------
 *  Core Style:
 * ---------------------------------------- */
#slideMenu {
	display:/cs/css/none;
}
@media only screen and (max-width: 768px){
#slideMenu {
	display: block;
}
.lastSidebar {
	width: 85%;
	height: 100%;
	position: fixed;
	right: 0;
	top: 0;
	z-index: 9998;
	overflow: scroll;
	background: #fff;
}
#lastOverlay {
	width: 100%;
	height: 100%;

	display: /cs/css/none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9997;
	background: rgba(0, 0, 0, 0.5);
}
body.noscroll {
	width: 100%;
	position: fixed;
	left: 0;
	right: 0;
	overflow: hidden;
}








/*++++++++++++++++++++++++++++++++++++
+
+　スマホナビゲーション
+
+++++++++++++++++++++++++++++++++++++*/
#slideMenu h2 {
	margin: 0;
	padding: 24px 16px;
}
.globalNavi {
	margin: 0;
}
#slideMenu .title {
	line-height: 60px;
	color: #cb2938;
	background: #f5f5f5;
	padding: 0px 0px 0px 15px;
	font-size: 1.4rem;
	font-weight: bold;
}
.globalNavi .nav1 li {
	font-size: 14px;
}
.globalNavi .nav1 li .fa  {
	margin: 0px 5px 0px 0px;
	font-size: 1rem;
}
.globalNavi .nav1 li a {
	padding: 0px 0px 0px 15px;
	display: block;
	line-height: 3em;
	color: #bb1425;
	text-decoration: /cs/css/none;
	background: #FFF;
}
.globalNavi .nav1 li a:hover {
	color: #FFF;
	text-decoration: /cs/css/none;
	background: #bb1425;
}
.globalNavi .nav2 {
	background: #f5f5f5;
	font-size: 1.2rem;
}
.globalNavi .nav2 ul {
	margin: 0px 5%;
}
.globalNavi .nav2 ul li {
	float: left;
	width: 48%;
	line-height: 35px;
	border-bottom: 1px dotted #bb1425;
}
.globalNavi .nav2 ul li:nth-child(5) , .globalNavi .nav2 ul li:nth-child(6) {
	border-bottom: /cs/css/none;
}
.globalNavi .nav2 ul li:nth-child(even) {
	float: right;
}
.globalNavi .nav2 ul li a {
	display: block;
	color: #bb1425;
}
.globalNavi .nav2 li .fa {
	margin: 13px 0px 0px 5px;
	font-size: 1rem;
	float: right;
}
.globalNavi .nav3 {
	color: #FFF;
	padding: 0px 0px 30px;
}
.globalNavi .nav3 .sns_area {
	padding: 15px 0;
	background: #fff;
	margin:  0 0 20px;
}
.globalNavi .nav3 .sns_icon {
	text-align: center;
}
.globalNavi .nav3 .sns_icon li {
	display: inline-block;
	text-align: center;
	font-size: 3.5rem;
	margin: 0px 10px;
	width: 10%;
}
.globalNavi .nav3 .sns_icon li a {
	color: #FFF;
}
.globalNavi .sns_title {
	font-size: 1.4rem;
	display: inline-block;
	margin: auto auto 10px;
	position: relative;
	width: 100%;
	text-align: center;
	line-height: 1.5em;
	color: #cb2a38;
	font-weight:  bold;
}
.globalNavi .sns_title:before, .globalNavi .sns_title:after {
    content: '';
    position: absolute;
    top: 0;
    height: 25px;
    width: 1px;
    background: #cb2a38;
}
.globalNavi .sns_title:before {
    -webkit-transform: translate(-40px, 0) rotate(-25deg);
    transform: translate(-10px, 0) rotate(-25deg);
    margin: 0px 0 0 0px;
}
.globalNavi .sns_title:after {
    -webkit-transform: translate(40px, 0) rotate(25deg);
    transform: translate(0px, 0) rotate(25deg);
    margin: 0px 0px 0 10px;
}
.globalNavi .mykonan {
	border: 2px solid #FFF;
	background: #BB1924;
	text-align: center;
	margin: 0px 5% 20px;
	padding: 10px 0px;
}
.globalNavi .mykonan img {
	width:auto;
	height:30px;
}
.globalNavi .mykonan a {
	display:block;
}
.globalNavi .nav3 .btn {
	margin: 0px 5%;
	font-size: 1.2rem;
}
.globalNavi .nav3 .btn li .fa {
	margin: 0px 5px 0px 0px;
}
.globalNavi .nav3 .btn ul li {
	float: left;
	width: 48%;
	text-align: center;
	line-height: 35px;
	background: #FFF;
	border-radius:6px;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
}
.globalNavi .nav3 .btn ul li:last-child {
	float: right;
}
.globalNavi .nav3 .btn ul li:last-child:before {
	margin: 0 5px 0 0;
	content: " ";
	display: inline-block;
	width: 13px;
	height: 13px;
	background: url(/cs/images/common/sp_nav_icon.png);
	background-size: contain;
	vertical-align: middle;
}
.globalNavi .nav3 .btn ul li a {
	color: #CB2938;
}
.my_link {
	width: 90%;
	margin: 20px auto 0;
	border-radius:6px;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
}
.my_link ul {text-align: center;}
.my_link ul li {
	line-height: 25px;
	text-align: center;
	display: inline-block;
	width: 48%;
	border-left: solid 1px #fff;
}
.my_link ul li:last-child {
	border-left: solid 1px #fff;
	border-right:  solid 1px #fff;
}
.my_link ul li a {


	color: #FFF;
	display:block;
}

.triggerBtn {
	width: 60px;
	height: 60px;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 9999;
	background: /cs/css/none;
}

#menuTrigger,
#menuTrigger span {
	display: inline-block;
	box-sizing: border-box;
	transition: all .4s;
}
#menuTrigger {
	position: absolute;
	top: 0;
	left: 0;
	width: 60px;
	height: 60px;
	/* 50%でもOK */
	background-color: #cb2837;/* 円の色 */
	text-align: center;
}
#menuTrigger p {
	position: absolute;
	bottom: 5px;
	left: 0;
	text-align: center;
	font-size: 1.1rem;
	font-weight: bold;
	color: #FFF;
	right: 0px;
}
#menuTrigger.active {
	/* 円の色 */
}

#menuTrigger span {
	width: 20px;
	height: 2px;
	position: absolute;
	border-radius: 4px;
	background-color: #FFFFFF;
	left: 18px;
}

#menuTrigger span:nth-of-type(1) {
	top: 20px;
}
#menuTrigger span:nth-of-type(2) {
	top: 25px;
}
#menuTrigger span:nth-of-type(3) {
	top: 30px;
}
#menuTrigger.active span:nth-of-type(1) , #menuTrigger.active span:nth-of-type(2) , #menuTrigger.active span:nth-of-type(3) {
	background-color: #FFF;/* 円の色 */
}


#menuTrigger.active span:nth-of-type(1) {
}
#menuTrigger.active span:nth-of-type(2) {
	opacity: 0;
}
#menuTrigger.active span:nth-of-type(3) {
}
#menuTrigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(2px) rotate(-45deg);
	transform: translateY(2px) rotate(-45deg);
}
#menuTrigger.active span:nth-of-type(2) {
	opacity: 0;
}
#menuTrigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-8px) rotate(45deg);
	transform: translateY(-8px) rotate(45deg);
}

#lastOverlay {
	background: rgba(0, 0, 0, 0.5);
}



}



.globalNavi .nav1 li.btn1 , .globalNavi .nav1 li.btn2 {
	margin: 0 5% 7px;
	font-size: 1.3rem;
}

.globalNavi .nav1 li .fa  {
	margin: 0px 5px 0px 0px;
	font-size: 1rem;
}
.globalNavi .nav1 li a {
	padding: 0px 0px 0px 15px;
	display: block;
	line-height: 3em;
	color: #bb1425;
	text-decoration: /cs/css/none;
	background: #FFF;
}
.globalNavi .nav1 li.btn1 a , .globalNavi .nav1 li.btn2 a {
	background: #fff;
	color:#bb1425;
	border: solid 1px #bb1425;
	padding: 0px 0px 0px 13px;
	display: block;
	line-height: 40px;
	text-decoration: /cs/css/none;
	border-radius: 6px;
	-webkit-border-radius: 6px;/* for Safari and Chrome 対応*/
	-moz-border-radius: 6px;/* for Firefox 対応*/
}
.globalNavi .nav1 li.btn1 a:before{
	margin: 0 10px 0 0;
	content: " ";
	display: inline-block;
	width: 15px;
	height: 20px;
	background: url(/cs/images/common/hd_icon_access.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
}
.globalNavi .nav1 li.btn2 a:before{
	margin: 0 10px 0 0;
	content: " ";
	display: inline-block;
	width: 18px;
	height: 15px;
	background: url(/cs/images/common/hd_icon_mail.png);
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
}






/*++++++++++++++++++++++++++++++++++++
+
+　マージン
+
+++++++++++++++++++++++++++++++++++++*/
.ma_b5 {margin-bottom: 5px;}
.ma_b10 {margin-bottom: 10px !important;}
.ma_b15 {margin-bottom: 15px;}
.ma_b20 {margin-bottom: 20px;}
.ma_b21 {margin-bottom: 21px;}
.ma_b25 {margin-bottom: 25px;}
.ma_b30 {margin-bottom: 30px !important;}
.ma_b35 {margin-bottom: 35px;}
.ma_b40 {margin-bottom: 40px;}
.ma_b45 {margin-bottom: 45px;}
.ma_b50 {margin-bottom: 50px;}
.ma_b60 {margin-bottom: 60px;}
.ma_b80 {margin-bottom: 80px;}
.ma_b90 {margin-bottom: 90px;}
.ma_b100 {margin-bottom: 100px;}
.ma_b150 {margin-bottom: 150px;}

.ma_l2 {margin-left: 2px;}
.ma_l5 {margin-left: 5px;}
.ma_l10 {margin-left: 10px;}
.ma_l15 {margin-left: 15px;}
.ma_l20 {margin-left: 20px;}
.ma_l25 {margin-left: 25px;}
.ma_l40 {margin-left: 40px;}
.ma_l60 {margin-left: 60px;}
.ma_l110 {margin-left: 110px;}

.ma_r2 {margin-right: 2px;}
.ma_r3 {margin-right: 3px;}
.ma_r5 {margin-right: 5px;}
.ma_r10 {margin-right: 10px;}
.ma_r12 {margin-right: 12px;}
.ma_r15 {margin-right: 15px;}
.ma_r16 {margin-right: 16px;}
.ma_r20 {margin-right: 20px;}
.ma_r25 {margin-right: 25px;}
.ma_r30 {margin-right: 30px;}
.ma_r40 {margin-right: 40px;}
.mr0 {margin-right:0 !important;}
.pd_t5 {padding-top: 5px;}
.pd_t10 {padding-top: 10px;}
.pd_t15 {padding-top: 15px;}
.pd_t20 {padding-top: 20px;}
.pd_t30 {padding-top: 30px;}
.pd_t40 {padding-top: 40px;}
.pd_t50 {padding-top: 50px;}
.pd_b5 {padding-bottom: 5px;}
.pd_b10 {padding-bottom: 10px;}
.pd_b15 {padding-bottom: 15px;}
.pd_b20 {padding-bottom: 20px;}
.pd_r5 {padding-right: 5px;}
.pd_r10 {padding-right: 10px;}
.pd_r15 {padding-right: 15px;}
.pd_r20 {padding-right: 20px;}
.pd_l30 {padding-left: 30px;}
.pd_l25 {padding-left: 25px;}
.pd_l20 {padding-left: 20px;}
.pd_l15 {padding-left: 15px;}
.pd_l11 {padding-left: 11px;}
.pd0 { padding: 0 !important;}


.fl {float: left;}
.fr {float:right;}

.tl {text-align: left;}
.tr {text-align: right;}
.tc {text-align: center;}
.lr_auto {margin-left: auto; margin-right: auto;}

.txt_normal {font-weight:normal}

.txt_gray {color: #666666;}
.txt_pink {color: #FF3366;}
.txt_orange {color: #FF6600;}
.txt_blue {color: #0099FF;}
.txt_blue2 {
	color: #005DAA;
	font-weight: bold;
	font-size: 14px;
}
.txt_green {
	color: #80C005;
}
.txt_green2 {color: #336600;}
.txt_green3 {color: #179e5f;}

.txt_green14b {
	color: #00865D;
	font-size: 14px;
	font-weight: bold;
}
.txt_green14b2 {
	color: #336600;
	font-size: 14px;
	font-weight: bold;
}
.txt_green14b3 {
	color: #6C9B00;
	font-size: 14px;
	font-weight: bold;
}
.txt_red {
	color: #C31A27;
}
.txt_red14b {
	color: #CC0000;
	font-size: 1.4rem;
	font-weight: bold;
}
.txt_gray {color: #888888;}
.txt_gray2 {
	color: #CCC;
}
.txt_white {
	color: #FFF;
}

.txt10 {font-size: 1rem !important;}
.txt10_sup {
	font-size: 1rem;
	line-height: 10px;
	padding-top: -10px;
}
.txt11 {font-size: 11px;}
.txt11fw_n {
	font-size: 11px;
	font-weight: normal;
}
.txt12 {font-size: 1.2rem !important;}
.txt14 {font-size: 1.4rem !important;}
.txt15 {font-size: 1.5rem !important;}
.txt16 {font-size: 1.6rem !important;}
.txt18 {font-size: 1.8rem !important;}
.txt22 {font-size: 2.2rem !important;}
.txt22b {
	font-size: 2.2rem;
	font-weight: bold
}
.txt20b {
	font-size: 2rem;
	font-weight: bold
}
.indents {
	text-indent: -1em;
	margin-left: 1em;
}
.indents2 {
	text-indent: -2em;
	margin-left: 2em;
}
.indents3 {
	text-indent: -2.5em;
	margin-left: 2em;
}
.attention {

}




/*---- FOR SP ----*/
@media only screen and (max-width: 768px){
.ma_b80 {margin-bottom: 40px;}
.ma_t88 {margin-top: 88px;}
.txt_pink {
	color: #ec7160;
}
}









/*++++++++++++++++++++++++++++++++++++
+
+　ニュースアイコン一覧
+
+++++++++++++++++++++++++++++++++++++*/


#news_area .news .pdf:before , #event_area .news .pdf:before{
	content: "\f1c1";
	font-family: FontAwesome;
	margin: 0 1% 0 0;
	font-size: 1.4rem;
	color: #CB2837;
	font-weight: normal;
}
#news_area .news .blank:before , #event_area .news .blank:before{
	margin: 0 2% 0 0;
	content: " ";
	display: inline-block;
	width: 12px;
	height: 10px;
	background: url(/cs/images/common/blank_icon_r.png);
	background-size: contain;
	vertical-align: middle;
}
#news_area .news .excel:before , #event_area .news .excel:before{
	content: "\f1c3";
	font-family: FontAwesome;
	margin: 0 1% 0 0;
	font-size: 1.4rem;
	color: #CB2837;
	font-weight: normal;
}
#news_area .news .word:before , #event_area .news .word:before{
	content: "\f1c2";
	font-family: FontAwesome;
	margin: 0 1% 0 0;
	font-size: 1.4rem;
	color: #CB2837;
	font-weight: normal;
}


/*お知らせ*/
#news_area .icon-info {
	background: #4daadf !important;
}
#news_area .icon-event {
	background: #c089dc !important;
}
#news_area .icon-media {
	background: #e33d6b !important;
}
/*その他*/
#news_area .icon-other {
	background: #a9a9a9 !important;
}

@media only screen and (max-width: 768px){

	
#news_area .news .pdf:after , #event_area .news .pdf:after{
	content: "\f1c1";
	font-family: FontAwesome;
	margin: 0 0 0 1%;


	font-size: 1.4rem;
	color: #CB2837;
	font-weight: normal;
}
#news_area .news .blank:before , #event_area .news .blank:before{
	margin: 0 0 0 0;
	display: block;
	width: 0px;
	height: 0;
}
#news_area .news .blank:after , #event_area .news .blank:after{
	margin: 0 0 0 2%;
	content: " ";
	display: inline-block;
	width: 1.2rem;
	height: 10px;
	background: url(/cs/images/common/blank_icon_r.png);
	background-size: contain;
	vertical-align: middle;
}
#news_area .news .excel:after , #event_area .news .excel:after{
	content: "\f1c3";
	font-family: FontAwesome;
	margin: 0 0 0 1%;
	font-size: 1.4rem;
	color: #CB2837;
	font-weight: normal;
}
#news_area .news .word:after , #event_area .news .word:after{
	content: "\f1c2";
	font-family: FontAwesome;
	margin: 0 0 0 1%;
	font-size: 1.4rem;
	color: #CB2837;
	font-weight: normal;
}
}



#contents h2.title {
	border-bottom: 2px solid #CB2837;
	line-height: 60px;
	font-size: 2.8rem;
	margin: 0px 0px 50px;
}
#contents h2.title p {
	font-size: 1.6rem;
	float: right;
}
#contents h3.st {
	position: relative;
	padding: 0 0 20px;
	font-size: 2.4rem;
	color: #CB2837;
	margin: 0px 0px 30px;
}
#contents h3.st span {
	border-left: 5px solid #CB2837;
	padding: 0 0 0 15px;
}
#contents h3.st .tr {
	font-size:1.4rem;
	border-left-style:/cs/css/none !important;
	padding: 0;
	color:#333;
	float:right;
}
#contents h3.st::after {
  position: absolute;
  left: 0;
  bottom: 0;
  content: '';
  width: 100%;
  height: 0;
  border-bottom: 2px solid #ccc;
}
#contents h4.sst {
	font-size:2rem;
	padding: 0 0 10px;
	border-bottom: 1px solid #ccc;
	margin: 0px 0px 30px;
}
#contents h4.sst .txt14 {
	font-size:1.4rem;
}
#contents h5.copy {
	margin: 0px 0px 10px;
	color: #CB2837;
	font-weight: bold;
	font-size: 1.6rem;
}


@media only screen and (max-width: 768px){
#contents h2.title {
	line-height: 45px;
	font-size: 1.8rem;
	margin: 0px 0px 25px;
}
#contents h2.title p {
	font-size: 1rem;
}
#contents h3.st {
	padding: 0 0 10px;
	font-size: 1.8rem;
	margin: 0px 0px 15px;
}
#contents h3.st span {
	padding: 0 0 0 10px;
}
#contents h3.st .tr {
	font-size:1.0rem;
	float:  /cs/css/none;
}
#contents h3.st::after {
}
#contents h4.sst {
	font-size:1.6rem;
	padding: 0 0 7px;
	margin: 0px 0px 15px;
}
#contents h4.sst .txt14 {
	font-size:1.2rem;
}

#contents h5.copy {
	margin: 0px 0px 10px;
	font-size: 1.5rem;
}
}


/* サイドなび
------------------------------------- */
#sidenav {
	float: left;
	width: 22.222222222%;
	padding: 0 0 50px;
}
#sidenav .title {
	color: #FFF;
	background: #CB2837;
	font-weight: bold;
	font-size: 15px;
	line-height: 58px;
	padding: 0px 0px 0px 5%;
	margin: 0px 0px 10px;
}
#sidenav .title a {
	color: #FFF;
}
#sidenav ul {
	margin: 0px 0px 10px;
}
#sidenav .menu li {
	line-height: 1.3em;
	border-bottom: 1px solid #e0e0e0;
	font-weight: bold;
}
#sidenav .menu li:first-child {
	border-top: 1px solid #e0e0e0;
}
#sidenav .menu li a {
	display: block;
	padding: 15px 0px 15px 10px;
	background-color: #f3f3f3;
}
#sidenav .menu li a:hover {
	background-color: #e0e0e0;
}
#sidenav .mab20 {
	margin: 0px 0px 20px;
}
#sidenav .st  {
	margin: 0px 0px;
	width: 100%;
	height: 54px;
	min-height: 54px;
	display: table;
	table-layout: fixed;
}
#sidenav .st.ma0  {
	margin: 0px;
}
#sidenav .st a  {
	color: #000;
	display:table-cell;
	vertical-align:middle;
	background: #f3f3f3;
	border-top: 1px solid #e0e0e0;
	padding: 0px 0px 0px 5%;
}
#sidenav ul .subj {
	line-height: 1.5em;
	padding: 15px 0 0 1.5em;
	text-indent: -1.5em;
}
#sidenav ul .subj:last-child {
	padding: 15px 0 5px 1.5em;
}
#sidenav ul .subj:before{
	margin: 0 5% 0 1%;
	content: " ";
	display: inline-block;
	width: 10px;
	height: 10px;
	background: url(/cs/images/common/sn_point.gif);
	background-size: contain;
	vertical-align: middle;
}
#sidenav .st a:hover , #sidenav ul .subj a:hover  {
	color:#CB2837;
}

#sidenav .blank a:after{
	float:  right;
	margin: 0 5% 0 0;
	content: " ";
	display: inline-block;
	width: 12px;
	height: 10px;
	background-size: contain;
	vertical-align: middle;
	background: url(/cs/images/common/blank_icon_r.png) no-repeat;
	background-size:12px 10px;
}



@media only screen and (max-width: 768px){
/* サイドなび
------------------------------------- */
#sidenav {
	float: /cs/css/none;
	width: auto;
}
#sidenav .title {
	font-size: 14px;
	line-height: 45px;
	padding: 0px 0px 0px 3%;
}
#sidenav .title a {color:  #fff;}
#sidenav ul {
	margin: 0px 0px 10px;
}
#sidenav .mab20 {
	margin: 0px 0px 20px;
}
#sidenav .st  {
    min-height:  50px;
    display:  block;
}
#sidenav .st a  {
	display: block;
	padding: 15px 0px 15px 5%;
}
#sidenav ul:after {
content: "."; 
display: block; 
height: 0; 
clear: both; 
visibility:hidden;
}
#sidenav ul .subj {width: 48%;float: left;line-height:  1.5em;text-indent: 0em;padding:  10px 0;}
#sidenav ul .subj:nth-child(even) {float: right;}
#sidenav ul .subj:last-child {
	padding:  10px 0;
}
#sidenav ul .subj:before{
	margin: 0 3% 0 0;
	content: " ";
	display: inline-block;
	width: 7px;
	height: 7px;
	background: url(/cs/images/common/sn_point.gif);
	background-size: contain;
	vertical-align: middle;
}
#sidenav ul .st a:hover , #sidenav ul .subj a:hover {
	color: #CB2837;
}
}


/* タイトル　パンくず
------------------------------------- */
#titleNav {
	background-color: #eeeeee;
	line-height: 1.5em;
	margin: 0 0 100px;
	padding: 45px 0px 35px;
}
#titleNav .innarWrap {
	max-width:1080px;
	margin: 0 auto;
	padding: 0 10px;
}

#titleNav:after {
content: "."; 
display: block; 
height: 0; 
clear: both; 
visibility:hidden;
}
#contents #titleNav .innarWrap {
	padding: 50px 10px;
}

#contents #titleNav:after {
content: "."; 
display: block; 
height: 0; 
clear: both; 
visibility:hidden;
}

#titleNav .title {
	float: left;
	font-size: 26px;
	line-height: 1.5em;
	color: #CB2837;
}
#titleNav #pankuzu {
	float: right;
	font-size: 13px;
	text-align: right;
	margin: 10px 0;
	width: 50%;
}
#titleNav #pankuzu a:hover {
	color: #CB2837;
}
#titleNav #pankuzu a:after {
  content: ">";
  padding: 0 0 0 5px;
}
#titleNav #pankuzu span:last-child span {
	color: #CB2837;
}


@media only screen and (max-width: 768px){

/* タイトル　パンくず
------------------------------------- */
#titleNav {
	line-height: 100%;
	margin: 0 0 20px;
	padding: 20px 0;
}
#titleNav .innarWrap {
	max-width:1080px;
	margin: 0 auto;
	padding: 0 5%;
}
#titleNav:after {}
#contents #titleNav .innarWrap {
	padding: 10px 5% 15px;
}

#titleNav .title {float: /cs/css/none;font-size: 22px;line-height: 1.5em; width: auto;}
#titleNav #pankuzu {
	width: auto;
	text-align: left;
	float: /cs/css/none;
	line-height: 1.5em;
	font-size: 10px;
	margin: 0 0 10px;
	padding: 0;
}
#titleNav #pankuzu a:hover {}

}


/* ヘッダー　ナビ
------------------------------------- */
@media only screen and (max-width: 1200px){
#gnav ul li a {
    font-size: 1.2vw;
}
}




/* ヘッダーボタン追加
------------------------------------- */
.header .hd_link .btn_job {
    margin: 3px 2% 0 0;
	width: 70%;
}
.header .hd_link .btn_job a {
    color: #fff;
    display: block;
    line-height: 40px;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
}
.header .hd_link .btn_job1 a {
    background: #124D9E;
    border: 1px solid #124D9E;
}
.header .hd_link .btn_job2 a {
    background: #CB2837;
    border: 1px solid #CB2837;
}

@media only screen and (max-width: 768px){
.globalNavi .nav1 .btn3 a {
    color: #fff!important;
    border: /cs/css/none!important;
padding: 0!important;}
.globalNavi .nav1 .btn3 a::before {
	background: url(/cs/css/none)!important;
}
.globalNavi .nav1 .btn3-1 a {
    background: #124D9E!important;
}
.globalNavi .nav1 .btn3-2 a {
    background: #CB2837;
}
.header .hd_link  .btn_job2 {
    font-size: 2vw;
margin: 0;height: 32px;}
.header .hd_link .btn_job2 a {
    line-height: 30px;
}
}

/* ヘッダー ナビ追加css
------------------------------------- */
#gnav ul li:nth-child(-n+2) a {
    /* margin-right: 2px; */
}
#gnav ul li:nth-child(1) {
    padding: 21.5px 2% 21.5px 1.8%;
}
#gnav ul li:nth-child(2) {
    padding: 21.5px 2% 21.5px 1.5%;
}


/* ヘッダーリンク追加用
------------------------------------- */
@media only screen and (min-width : 768px){
.header li.btn_job.btn_job2 {
    position: relative;
}
.header li.btn_job.btn_job2 span {
    position: absolute;
    bottom: -20px;
    width: 100%;
    left: 0;
}
.header li.btn_job.btn_job2 a {
    font-size: 0.8em;
}
.header li.btn_job.btn_job2 span a {
    background: transparent;
    padding: 10px 0 0;
    margin: 0;
    border: /cs/css/none!important;
    color: #CB2837;
    line-height: 100%;
    font-size: 1.3rem;
    text-decoration: underline;
}
.header .hd_link {
    align-items: start;
}
}
@media only screen and (max-width : 768px){
.globalNavi .nav1 li.btn1.btn3-2 a {
    background: #bb1425!important;
}
}