@charset "utf-8";
@import url(//use.fontawesome.com/releases/v5.0.13/css/all.css);

/* reset __________________________________ */
@media print{
	.spNav{
		display: none; 
	}
}
ul{
	list-style: none;
}

.user_pc a[href^="tel:"] {
	pointer-events: none !important;
}

/* common __________________________________ */
.titleArea,
#main {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}
.clearfix {
	zoom: 100%;
	clear: both;
}
.clearfix:after {
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	overflow: hidden;
	visibility: hidden;
	content: ".";
}
.pc_only {
	display: block !important;
}
.sp_only {
	display: none !important;
}
.center {
	margin-left: auto;
	margin-right: auto;
	display: block;
}
.centerTxt {
	text-align: center !important;
}
.leftTxt {
	text-align: left;
}
.rightTxt {
	text-align: right;
}
.col-l{
	float: left;
}
.col-r{
	float: right;
}
.w100p{
	width: 100%;
}
.indent li {
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.5em;
}
.tel_icon::before {
	content: "";
	display: inline-block;
	margin-right: 5px;
	margin-bottom: -4px;
	width: 24px;
	height: 24px;
	background: url(/campaign/wr_img/icon_tel.png) no-repeat center center/cover;
}
.fcRed {
	color: #ff0012;
}
.fcRed span{
	font-weight: bold;
}
.mt0  { margin-top:  0px !important; }
.mt1em {margin-top: 1em !important;}
.mt2em {margin-top: 2em !important;}
.mt3em {margin-top: 3em !important;}
.mt3  { margin-top:  3px !important; }
.mt5  { margin-top:  5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }
.mt45 { margin-top: 45px !important; }
.mt50 { margin-top: 50px !important; }

.mb0 {margin-bottom: 0 !important;}
.mb1em {margin-bottom: 1em !important;}
.mb2em {margin-bottom: 2em !important;}
.mb3em {margin-bottom: 3em !important;}
.mb3  { margin-bottom:  3px !important; }
.mb5  { margin-bottom:  5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }

/* txtSize	*/
.smallfont {
	font-size: 80% !important;
	line-height: 1.8;
}
.xsmallfont {
	font-size: 70% !important;
	line-height: 1.6;
}
.bigfont {
	font-size: 110% !important;
	line-height: 1.8;
}
.fSize12 {
	font-size: 12px !important;
}
.fSize13 {
	font-size: 13px !important;
}
.fSize15 {
	font-size: 15px !important;
}
.fSize20 {
	font-size: 20px !important;
}

/* link __________________________________ */
#main a,
#main a:visited{
	color:#407cba;
	text-decoration: underline;
}
#main a:hover{
	color: #407cba;
	text-decoration: none;
}
#main .arwlink a,
a.arwlink {
	padding-left: 0.5em;
	position: relative;
}
#main .arwlink a:before,
#main a.arwlink:before{
	content: "";
	display: inline-block;
	margin-top: -.1em;
	margin-right: .2em;
	width: 0;
	height: 0;
	border-width: .4em 0 .4em .6em;
	border-color: transparent;
	border-style: solid;
	border-left-color: #407cba;
}
#main a.arwlink[data-blank]:after {
	content: "";
	display: inline-block;
	margin-top: -.1em;
	margin-left: 0.3em;
	width: 15px;
	height: 12.5px;
	background: url(/campaign/wr_img/icon_blank.png) no-repeat center center/cover;
}

/* header
__________________________________ */
#campaign header {
	padding: 0;
	border-top: 2px solid #0f1350;
	border: none;
}
#campaign header .inner {
	width: 910px;
}
#header_new2008 {
	background: url(/campaign/wr_img/head_bg_01.gif) repeat-x top left #FFF;
	padding: 15px 10px 0;
	margin: 0 auto 5px;
}

#header_new2008 img {
	display: block;
}

#header_new2008 ul {
	margin-top: 4px;
}

#header_new2008 ul li {
	float: left;
}

#header_new2008 .navi_01 a{
	display: block;
	padding: 7px 12px 7px 4px;
	background: url(/campaign/wr_img/head_navi_border.gif) repeat-y top right;
}

#header_new2008 .navi_02 a{
	display: block;
	padding: 8px 6px 10px 16px;
}

#header_new2008 .navi_03 a{
	display: block;
	padding: 8px 6px 10px 7px;
}

#header_new2008 .navi_04 a{
	display: block;
	padding: 8px 15px 10px 7px;
	background: url(/campaign/wr_img/head_navi_border.gif) repeat-y top right;
}

#header_new2008 .navi_05 {
	margin: 9px 0 10px 11px;
	border-right:1px solid #a2a2a2;
}

#header_new2008 .navi_05 a{
	display: block;
	margin-right: 13px;
}

#header_new2008 .navi_06 {
	margin: 9px 0 10px 13px;
}

#header_new2008 .navi_06 a{
	display: block;
	margin-right: 13px;
}

#header_new2008 .navi_07 a{
	display: block;
	padding: 9px 6px 10px 7px;
	background: url(/campaign/wr_img/head_navi_border.gif) repeat-y top left;
}

#header_new2008 .navi_08 a{
	display: block;
	padding: 9px 6px 10px 6px;
}

#header_new2008 .navi_09{
	padding: 3px 0px;
}

#header_new2008 .headlog1{
	float:left;
}
.csheader .csheaderlogo {
	position: absolute;
}
.csheader .subNav {
	float: right;
	margin-right: 0;
	font-size: 12px;
	margin-bottom: -2px;
	line-height: 64px;
}
.csheader a {
	color: #333333;
	text-decoration: none !important;
	position: relative;
}
.csheader .subNav li:not(:last-child) {
	margin-right: 20px;
}
.csheader ul.mainNav.clearfix {
	width: auto;
	float: right;
	margin-right: 0 !important;
}
.titleArea .clearfix {
	width: 890px;
	margin: 0 auto 0;
}
.csheader ul.mainNav {
	font-size: 14px;
	font-weight: bold;
	clear: both;
	margin-top: 8px !important;
}
.csheader ul.mainNav a {
	padding: 10px 14px 7px 14px;
	display: block;
}
.csheader ul.mainNav li {
	position: relative;
}
header .srchBox {
	position: relative;
}
.csheader a:hover {
	opacity: 0.7;
}
.csheader li a span {
	position: relative;
}
.csheader li a:hover span:before {
	width: 100%;
}
.csheader li a span:before {
	position: absolute;
	top: 1.5em;
	left: 0;
	content: "";
	display: inline-block;
	width: 0;
	height: 2px;
	background: #0f1350;
	transition: .5s;
}
header.fixed {
	background-color: #fff;
}
header.fixed #header_new2008{
	padding: 10px 0 5px;
}
header.fixed .csheaderlogo {
	width: 111px;
}
header.fixed .csheaderlogo img {
	width: 111px;
	height: auto;
}
header.fixed .searchOpen {
	position: static;
	margin-top: 8px;
	margin-left: 65px;
}
header.fixed .csheader ul.mainNav {
	margin-top: -6px !important;
}
header.fixed .csSrchBox_mn {
	top: 34px;
}
header.fixed .srchBox_mn {
	width: 322px;
}

/* titleArea
__________________________________ */
.titleArea {
	position: relative;
	background-color: #f6f6f6;
	padding-bottom: 14px;
	margin-bottom: 30px;
}
.cpnLink {
	top: -15px;
	padding-top: 0;
	position: absolute;
	left: 0;
	right: 0;
	width: 910px;
	margin: 0 auto;
}
.cpnLink a {
	position: absolute;
	top: 28px;
	right: 0;
	display: block;
	background: url(/campaign/wr_img/mrk_01.png) no-repeat 95% 50% #0f228b;
	border-radius: 6px;
	padding: 5px 25px 5px 10px;
	color: #fff;
	line-height: 1.3;
}
.breadcrumbs {
	width: 910px;
	margin: 10px auto 15px;
	overflow: hidden;
	padding-top: 15px;
}
.breadcrumbs li {
	float: left;
	font-size: 75%;
	color: #666;
}
.breadcrumbs li a {
	color: inherit;
	text-decoration: none;
}
.breadcrumbs li:nth-child(n+2):before {
	content: "＞";
	padding: 0 5px;
}
.pageTitle {
	width: 910px;
	margin: 0 auto;
	color: #0f228b;
	font-size: 175%;
	padding-top: 33px;
	text-align: left;
	background: none !important;
	min-height: 40px;
	font-weight: normal;
	letter-spacing: -1.5px;
}
.cpnLink a:hover ,
.breadcrumbs li a:hover {
	opacity: 0.7;
	text-decoration: underline;
}

/* parts __________________________________ */
#main  {
/*	width: 910px;*/
	width: 896px;
	margin: 0 auto 60px;
	font-feature-settings : "palt";
	letter-spacing: 0.05em;
	font-size: 14px;
	line-height: 1.4 !important;
	color: #333333;
}
#main .btn-unit-01 {
	margin: 36px 0;
}
#main .btn-unit-01 a {
	background: #0f228b;
	color: #fff !important;
	text-decoration: none !important;
	padding: 10px 17px;
	border-radius: 4px;
}
#main .btn-unit-01 a:after,
#main .btnNavy a:after,
#main .btnPink a:after {
	content: "";
	display: inline-block;
	margin-top: -.1em;
	margin-left: 0.8em;
	width: 0;
	height: 0;
	border-width: .4em 0 .4em .6em;
	border-color: transparent;
	border-style: solid;
	border-left-color: #fff;
}
#main .btn-unit-01 a:hover,
#main .btnNavy a:hover,
#main .btnPink a:hover {
	opacity: 0.7;
}
#main .ttl-unit-01 {
	padding-bottom: 30px;
}
#main .ttl-unit-02 {
	min-height: 40px;
	margin: 30px 0 20px;
	background: url(/campaign/wr_img/bg_h4_01.gif) no-repeat left top;
}
#main .ttl-unit-02 h4 {
	line-height: 1em;
	padding-top: 12px;
	text-indent: 0.7em;
	color: #333;
	font-weight: bold;
	font-size: 18px;
	text-shadow: 0px 1px 1px rgb(255 255 255 / 75%);
}
#main .btn1 {
	margin:0 auto;
	text-align: center;
}
#main .date {
	font-size: 16px;
}
#main .tokuten_txt {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 20px;
}
#main .tokuten_txt span {
	background: #e0f5fa;
	color: #2967C2;
	padding: 0.7% 1%;
	font-size: 20px;
	font-weight: bold;
	margin-right: 2%;
}
#main .btnNavy,
#main .btnPink {
	text-align: center;
}
#main .btnNavy a,
#main .btnPink a {
	background: #0f228b;
	color: #fff !important;
	text-decoration: none !important;
	padding: 18px;
	border-radius: 7px;
	display: inline-block;
	font-size: 22px;
	width: 390px;
}
#main .btnNavy a{
	background: #0f228b;
}
#main .btnPink a {
	background: #ff6e96;
}

@media screen and (min-width:1px) and (max-width:767px) {
	.pc_only {
		display: none !important;
	}
	.sp_only {
		display: block !important;
	}
	.sp_100pw{
		width: 100% !important;
	}

	/* header */
	#spHeader {
		display: block;
		margin-bottom: 0px !important;
		background-image: -webkit-gradient(  linear,  left bottom,  left top,  color-stop(0.39, #1B3479),  color-stop(0.88, #274AB2) );
		background-image: -moz-linear-gradient(  center bottom,  #1B3479 39%,  #274AB2 88% );
		padding: 0 0 0 0 !important;
	}
	#spHeader #hdLogo {
		float: none !important;
		padding: 15px 0 15px 10px !important;
		background-image: -webkit-gradient(linear, 0% 100%, 0% 0%, color-stop(0.18, rgb(14, 0, 102)), to(rgb(33, 0, 143)));
	}
	#spHeader #hdLogo a {
		color: inherit;
		text-decoration: none;
	}
	#spHeader #hdLogo img {
		width: auto !important;
		height: 40px;
	}
	#spHeader .search {
		position: absolute;
		top: 12px;
		right: 12px;
	}
	#spHeader .search .searchInput {
		position: absolute;
		top: 45px;
		right: -2px;
		width: 309px;
		padding: 10px 53px 10px 10px;
		border: 2px solid #0f218b;
		background-color: #fff;
		z-index: 1000;
		display: none;
	}
	#spHeader .search .searchInput #SS_searchForm {
		border: none !important;
		background: none !important;
		margin: 0 !important;
		padding: 0 !important;
		box-shadow: none !important;
		border-radius: 0 !important;
	}
	#spHeader .search .searchInput #SS_searchForm #SS_searchSubmit {
		padding: 5px 5px 5px 6px !important;
		width: 22px !important;
		height: 23px !important;
		background-color: #0f218b !important;
		box-shadow: none !important;
		box-sizing: content-box !important;
		border-radius: 0 !important;
		background-image: url(/campaign/wr_img/icn_seek.png);
		background-repeat: no-repeat;
		background-size: 22px auto;
	}
	#spHeader .search .searchInput #SS_searchForm #SS_searchQuery {
		width: 207px !important;
		height: 33px !important;
		padding: 5px 8px !important;
		font-size: 14px !important;
		border: 1px solid #aaa !important;
		box-shadow: none !important;
		border-radius: 0 !important;
		color: #666666;
	}
	.pageHeader .search .searchInput .btn, #spHeader .search .searchInput .btn {
		position: absolute;
		top: 10px;
		right: 10px;
		width: 33px;
		height: 33px;
		border-radius: 3px;
		background-color: #666;
	}
	#spHeader .search .searchInput .btn:before, #spHeader .search .searchInput .btn:after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 26px;
		height: 2px;
		margin: auto;
		background-color: #fff;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#spHeader .search .searchInput .btn:after {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	#spHeader .faqLink {
		margin: 10px -43px 0 0;
	}
	#spHeader .faqLink a {
		color: #0f218b;
		text-decoration: underline;
		font-size: 14px;
		line-height: 1.4;
		word-wrap: break-word;
		padding: 0;
	}

	/* titleArea */
	.cpnLink {
		display: none;
	}
	.breadcrumbs ul {
		white-space: nowrap;
		line-height: 0;
		height: 30px;
	}
	.breadcrumbs li:first-child {
		padding-left: 0 !important;
	}
	.breadcrumbs li:nth-child(n+2):before {
		content: "";
		position: absolute;
		top: 4px;
		left: -11px;
		border-top: 1px solid #dadada;
		border-right: 1px solid #dadada;
		width: 21px;
		height: 21px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		padding: 0;
	}
	.breadcrumbs {
		overflow-x: auto;
		border-bottom: 1px solid #f3f3f3;
		margin-bottom: 1px;
		-webkit-overflow-scrolling: touch;
		background-color: #ffffff !important;
		margin-top: 0;
		width: 100%;
		padding-top: 0;
	}
	.breadcrumbs li {
		position: relative;
		display: inline-block;
		padding: 0 0 0 10px !important;
		font-size: 10px;
		color: #666;
		float: none;
		height: 30px;
		letter-spacing: 0;
	}
	.breadcrumbs li:first-child {
		padding-left: 0 !important;
	}
	.breadcrumbs li a, .breadcrumbs li span, .breadcrumbs li strong {
		display: block;
		padding: 1px 10px 0 15px;
		height: 29px;
		line-height: 30px;
		color: inherit;
		text-decoration: none !important;
	}
	.breadcrumbs li a {
		color: #0050A3 !important;
	}
	h1.pageTitle {
		border-top: none !important;
		border-bottom: none !important;
		height: inherit;
		padding: 15px 15px 0px 15px;
		color: #0f228b;
		font-size: 17px;
		font-weight: bold;
		width: inherit !important;
		letter-spacing: 0;
	}

	/* parts */
	#main {
		width: 95%;
	}
	#main .ttl-unit-01 {
		padding-bottom: 0;
	}
	#main .ttl-unit-01 h3 img {
		width: 100%;
		height: auto;
	}
	#main .ttl-unit-02 {
		margin-bottom: 10px;
		background: none;
		background-image: url(/campaign/wr_img/bg_h4_01.jpg),url(/campaign/wr_img/bg_h4_02.jpg);
		background-repeat: no-repeat,repeat-x;
		background-position: left top, left top;
	}
	#main .ttl-unit-02 h4 {
		padding-right: 10px;
		font-size: 17px;
	}
	#main .btn1 img {
		width: 80%;
		height: auto;
	}
	#main .tokuten_txt {
		font-size: 20px;
		margin-bottom: 15px;
	}
	#main .tokuten_txt span {
		padding: 0.5% 1%;
		line-height: 1.7em;
	}
	#main .btnNavy a,
	#main .btnPink a {
		padding: 15px 5px;
		font-size: 18px;
		width: 93%;
	}
}

.ft-grid{
  margin: 17px 0 13px;
  display: grid;
  grid-template-columns: 200px auto 25% 75px;
  gap: 20px;
  align-items: center;
}
.ft-grid_logo{
  width: 200px;
  grid-column: 1 / 2;
}
.ft-grid_logo img{
  width: 100%;
}
.ft-grid_copyright{
  grid-column: 2 / 3;
  color: #333;
  font-size: 12px;
}
.ft-grid_copyright address{
  font-style: normal;
}
.ft-grid_regi_number{
  grid-column: 3 / 4;
  font-size: 12px;
  color: #333;
  line-height: 1.2;
}
.ft-grid_regi_number > .--link{
  margin-top: 1em;
}
.ft-grid_regi_number > .--link a{
  color: #666!important;
}
.ft-grid_regi_number > .--link a:after{
  border-top: 1px solid #666;
  border-right: 1px solid #666;
}
.ft-grid_privacymark{
  grid-column: 4 / 5;
}
.ft-grid_privacymark img{
  width: 100%;
}
