@charset "utf-8";

.ftbox { overflow: hidden; *zoom: 1;}



/* wrapper
----------------------------------------------- */
#wrapper {
	min-width:1300px;
}
#wrapper .inner {
	max-width:1000px;
	margin:0 auto;
}
@media (max-width: 767px) {
#wrapper {
	min-width:inherit;
}
#wrapper .inner {
	max-width:inherit;
	margin:auto;
	padding:0 20px;
}
#wrapper .innerbox {
	padding:0 20px;
}
}


/* header
----------------------------------------------- */
#header {
	position:relative;
}
.headerinner {
	width:1000px;
	margin:0 auto;
	position:relative;
	padding:20px 0 25px;
}
.hdtxt {
	font-size:14px;
	color:#7d7d7d;
	position:absolute;
	top:10px;
	left:0;
	z-index:2;
}
.hdcont {
	display:table;
	width:100%;
}
.hdlogo {
	display:table-cell;
	width:420px;
	vertical-align:bottom;
}
.hdbox {
	display:table-cell;
	text-align:right;
	vertical-align:middle;
}
.hdbtn {
	display:inline-block;
	width:200px;
}
.hdbtn a {
	display:block;
	background:#e83d44;
	border:1px #e83d44 solid;
	color:#fff;
	font-size:14px;
	text-align:center;
	padding:10px 20px;
	position:relative;
	text-decoration:none;
}
.hdbtn a:before {
	position: absolute;
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	top: 50%;
  top: calc(100% / 2);
	right:12px;
	font-weight:bold;
	-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
.hdbtn a:hover {
	background:#fff;
	color:#e83d44 !important;
}

.hdlist {
	padding:15px 0 0;
  line-height: 1.4;
}
.hdlist li {
	display:inline-block;
	font-size:12px;
	vertical-align:middle;
	text-align:left;
	color:#0f5286;
}
/* .hdlist li a {
	color:#0f5286;
	text-decoration:none;
} */
.hdlist li a:hover {
	text-decoration:underline;
}
.hdlist li + li {
	margin-left:10px;
}
.hdlisttel {
  font-size: 24px;
  font-weight: bold;
  color: #0f5286;
  line-height: 1;
  letter-spacing: -0.02em;
}
.hdlistopen {
  font-size: 12px;
  color: #000;
  line-height: 1;
}
.hdcontbox {
	display:none;
}
@media (max-width: 767px) {
.headerinner {
	width:100%;
	padding:0 0 0 10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
.hdtxt {
	font-size:10px;
	top:2px;
	left:5px;
	width:60%;
}
.hdcont {
}
.hdlogo {
	width:60%;
	padding:0 20px 20px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
.hdbox {
	display:none;
}
.hdcontbox {
	display: table-cell;
	vertical-align:middle;
	text-align:right;
	width:40%;
}
.hdcontbox ul li {
	float:left;
	width:50%;
}
.hdcontbox ul li img {
	width:100%;
}
}
@media (max-width: 479px) {
.hdlogo {
	padding:0 10px 2px 0;
}
}


.navbarToggle {
	background:url(../images/common/btn_header_sp02.png) 0 0 no-repeat;
	background-size:100% 100%;
	cursor:pointer;
}
.pulldown {
	position:absolute;
	top:100%;
	left:0;
	width:100%;
	z-index:9;
	background:#0c446f;
	padding:0 0 50px;
	display:none;
	overflow-y:scroll;
}
.pulldownlist01 li + li {
	border-top:1px solid #3d698c;
}
.pulldown a,.pulldown b {
	display:table;
	width:100%;
	color:#fff;
	font-size:13px;
	padding:15px 0 15px 20px;
	position:relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
.pulldown a span {
	display:table-cell;
	height:100%;
	vertical-align:middle;
}
.pulldown a:before {
	position: absolute;
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: bold;
	top: 26px;
  top: calc(100% / 2);
	right: 20px;
	font-size:18px;
	-webkit-transform: translateY(-50%);
transform: translateY(-50%);
text-decoration:none;
	z-index:2;
}

.pulldowntit {
	background:#0a3658;
	color:#fff;
	font-size:13px;
	padding:10px 0 10px 20px;
}
.pulldownlist02 {
	margin:-1px 0 0 -1px;
}
.pulldownlist02 li {
	float:left;
	width:50%;
	border-left:1px solid #3d698c;
	border-top:1px solid #3d698c;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
.pulldownbox {
	padding:25px 20px 0;
}
.pulldownin {
	background:#fff;
	padding:15px 0 15px;
	position:relative;
}
.pulldownin .pulldownboxtel {
  width: 80%;
	padding:0;
	text-align:center;
  margin: 4px auto 0;
}
.pulldownin a.pulldownboxtel:before {
	position: relative;
	content: '';
  top: 0;
	right: 0;
}
.pulldownin .tit {
	color:#0f5286;
	font-size:12px;
	text-align: center;
}
/*
.pulldownin:before {
	background:url(../images/common/ico_arrow02.png) 0 0 no-repeat;
	background-size:100%;
	width:10px;
	height:20px;
	right:5px;
	top:50%;
  top: calc(100% / 2);
	transform:translateY(-50%);
	-webkit-transform:translateY(-50%);
	content:"";
	z-index:2;
	position:absolute;
}
*/
.pulldownin:before {
	position: absolute;
    content: '\f105';
    font-family: 'Font Awesome 5 Free';
    font-weight: bold;
    top: 26px;
    top: calc(100% / 2);
    right: 20px;
    font-size: 18px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    text-decoration: none;
    z-index: 2;
    color: #0f5286;
}
.pulldown a span.spteltxt {
  font-size: 12px;
  color: #000;
  line-height: 1.2;
  text-align: left;
  padding: 0 0 0 8px;
  background: rgba(255,255,255,0);
}
.pulldown a span.spteltxtnum {
  font-size: 24px;
  font-weight: bold;
  color: #0f5286;
  display: inline-block;
}
@media (min-width: 414px) and (max-width: 768px) {
  .pulldownin .pulldownboxtel {
      width: 70%;
  }
}
@media (max-width: 320px) {
  .pulldown a span.spteltxt {
    font-size: 11px;
  }
  .pulldown a span.spteltxtnum {
    font-size: 21px;
  }
}
/* gnavi
----------------------------------------------- */
.gnavi {
	background:#0f5286;
}
.gnaviinner {
	width:1000px;
	margin:0 auto;
}
#gnavi ul {
	border-right:1px solid #4d7ca0;
}
#gnavi ul li {
	float:left;
	width:16.66%;
	text-align:center;
	border-left:1px solid #4d7ca0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
  position: relative;
}
#gnavi ul li a {
	display:block;
	color:#fff;
	font-size:16px;
	text-decoration:none;
	padding:15px 0 10px;
}
#gnavi ul li a:hover {
	background:#5786ab;
}
#gnavi ul li a span {
	display:block;
	font-size:10px;
}
#globalNavi {
	width:100%;
	background:#0f5286;
}
.gnavifixed {
	position:fixed;
	top:0;
	left:0;
	z-index:9;
	width:100%;
}
#gnavi ul .parent {
  overflow: hidden;
}
#gnavi ul .parent:hover {
  overflow:visible;
  background: #5786ab;
  text-decoration: none;
  transition: all 0.5s !important;
  -moz-transition: all 0.5s !important;
  -webkit-transition: all 0.5s !important;
}
#gnavi ul .gnavichild {
  height: 0;
  display: inline-block;
  opacity: 0;
  width: 130%;
  border-right: 0;
  position: absolute;
  top: 69px;
  left: 0;
  -webkit-transition: .3s;
  transition: .3s;
}
#gnavi ul .parent .gnavichild a {
  background: #fff;
}
#gnavi ul .parent:hover .gnavichild {
  height: auto;
  display: inline-block;
  opacity: 1;
  -webkit-transition: .3s;
  transition: .3s;
}
#gnavi .gnavichild li {
  width: 100%;
  text-align: left;
  border-left:0;
  border-right:0;
}
#gnavi .gnavichild li+ li {
  border-top: 1px solid #0f5286;
}
#gnavi ul .parent .gnavichild li a {
	background: #fff;
  color: #0f5286;
  height: 0;
	padding: 0 20px;
}
#gnavi ul .parent:hover .gnavichild li a {
  height: auto;
	padding: 12px 20px 10px;
  -webkit-transition: 0;
  transition: 0;
}
#gnavi ul .parent .gnavichild li a:hover {
	background:#0f5286;
	color: #fff;
}


/* teaser
----------------------------------------------- */
#teaser {
	background:url(../images/common/bg_teaser.png) center bottom no-repeat #deecf3;
	padding:60px 0;
	font-size:40px;
	text-align:center;
	color:#0f5286;
	font-weight:bold;
	line-height:1.2;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
}
@media (max-width: 767px) {
#teaser {
	font-size:28px;
	padding:20px;
	background:url(../images/common/bg_teaser_sp.png) center bottom no-repeat #deecf3;
}
#teaser .teaserin {
	padding:40px 20px;
	display:block;
	background:rgba(255,255,255,0.6);
}
}


/* Img
----------------------------------------------- */
.flimg {
	float:left;
	margin-right:50px;
}
.frimg {
	float:right;
	margin-left:50px;
}
@media (max-width: 767px) {
.flimg {
	float:none;
	margin-right:0;
	margin-bottom:20px;
	text-align:center;
}
.frimg {
	float:none;
	margin-left:0;
	margin-bottom:20px;
	text-align:center;
}
}


/* contents
----------------------------------------------- */
#contents {
}


/* breadcrumb
----------------------------------------------- */
#breadcrumb {
	border-bottom:1px #e5e5e5 solid;
	padding:15px 0;
}
#breadcrumb .arrow {
	display:inline-block;
	margin:0 20px;
}
@media (max-width: 767px) {
#breadcrumb {
  font-size: 14px;
  line-height: 1.4;
}
}

/* H
----------------------------------------------- */
.hdl {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
	text-align:center;
	font-size:40px;
	font-weight:bold;
	color:#0f5286;
	line-height:1.2;
	margin-bottom:80px;
	position:relative;
}
.hdl .hdlsmall {
	font-size:20px;
}
.hdl:before {
	position:absolute;
	content:"";
	background:#0f5286;
	width:60px;
	height:2px;
	left:50%;
	bottom:-20px;
	transform:translateX(-50%);
	z-index:2;
}
@media (max-width: 767px) {
.hdl {
	font-size:28px;
	margin-bottom:40px;
}
.hdl .hdlsmall {
	font-size:16px;
}
.hdl:before {
	bottom:-10px;
}
}


.hdm {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
	text-align:center;
	font-size:40px;
	font-weight:bold;
	color:#0f5286;
	line-height:1.2;
	margin-bottom:40px;
}
@media (max-width: 767px) {
.hdm {
	font-size:28px;
	margin-bottom:20px;
}
}

.hds {
	font-size:28px;
	color:#0f5286;
	font-weight:bold;
	margin-bottom:30px;
}
@media (max-width: 767px) {
.hds {
	font-size:20px;
	margin-bottom:20px;
}
}



/* bg
----------------------------------------------- */
.bgwhite {
	padding:80px 0;
}
@media (max-width: 767px) {
.bgwhite {
	padding:40px 0;
}
}

.bggray {
	background:#eee;
	padding:80px 0;
}
@media (max-width: 767px) {
.bggray {
	padding:40px 0;
}
}

.bgblue {
	background:#deecf3;
	padding:80px 0;
}
@media (max-width: 767px) {
.bgblue {
	padding:40px 0;
}
}

.bglattice {
	background:url(../images/common/bg_lattice.png) 0 0 repeat;
	padding:100px 0;
}
@media (max-width: 767px) {
.bglattice {
	padding:50px 0;
}
}


/* font
----------------------------------------------- */
.comfontm {
	font-size:18px;
	text-align:center;
}
.comfontm span {
	display:inline-block;
	text-align:left;
}
@media (max-width: 767px) {
.comfontm {
	font-size:16px;
}
}


/* btn
----------------------------------------------- */
.combtnred {
	text-align:center;
}
.combtnred a {
	display:inline-block;
	font-size:28px;
	color:#fff;
	font-weight:bold;
	background:#e83d44;
	border:2px #e83d44 solid;
	text-align:center;
	padding:30px 45px;
	position:relative;
	text-decoration:none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
.combtnred a:before {
	position: absolute;
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	top: 36px;
  top: calc(100% / 2);
	right:30px;
	-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
.combtnred a:hover {
	border:2px #e83d44 solid;
	background:#fff;
	color:#e83d44 !important;
}

.combtnblue {
	text-align:center;
}
.combtnblue a {
	display:inline-block;
	font-size:28px;
	color:#fff;
	font-weight:bold;
	background:#0f5286;
	border:2px #0f5286 solid;
	text-align:center;
	padding:30px 45px;
	position:relative;
	text-decoration:none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
.combtnblue a:before {
	position: absolute;
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	top: 36px;
  top: calc(100% / 2);
	right:30px;
	-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
.combtnblue a:hover {
	border:2px #0f5286 solid;
	background:#fff;
	color:#0f5286 !important;
}
@media (max-width: 767px) {
.combtnred a ,.combtnblue a {
	font-size:18px;
	padding:20px;
}
.combtnred a:before,.combtnblue a:before {
	right:10px;
}
}
@media (max-width: 320px) {
.combtnred a,.combtnblue a {
  font-size: 14px;
}
}

.combtnlarge {
	margin-top:60px;
}
.combtnlarge a {
	width:680px;
}
@media (max-width: 767px) {
.combtnlarge {
	margin-top:20px;
}
.combtnlarge a {
	width: 100%;
}
}


/* section
----------------------------------------------- */
.section {
	padding:80px 0;
}
@media (max-width: 767px) {
.section {
	padding:40px 0;
}
}


/* footer
----------------------------------------------- */
#footer {
	background:#0f5286;
}
#footer .inner {
	padding:50px 0 15px;
	position:relative;
}
#footer , #footer a {
	color:#fff;
	font-size:14px;
}
#footer a:hover {
  opacity: .7;
}
.footerpro {
	position:absolute;
	top:15px;
	right:0;
	z-index:2;
}
.copyright {
	text-align:right;
}
.footerlinkbox {
	overflow:hidden;
	margin:25px 0 30px;
}
.footerlink {
	width:25%;
	float:left;
	border-left:1px #87a9c3 solid;
	padding-left:20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
.footerlink .linkbig a {
	font-size:16px;
}
.footerlink .linkbig li+li {
	margin-top:15px;
}
.footerlink .linkhd {
	font-size:16px;
	margin-bottom:25px;
}
#footer .footerlink .linkhd a {
	font-size:16px;
}
.footerlink .linksmall a {
	font-size:14px;
	background:url(../images/common/arrow_footer.png) left 5px no-repeat;
	padding-left:18px;
}
.footerlink .linksmall li+li {
	margin-top:10px;
}
.footerlink .linkbtnbox {
	padding-left:7px;
}
.footerlink .linkbtn {
	margin-bottom:110px;
}
.footerlink .linkbtn li +li {
	margin-top:20px;
}
.footerlink .footerbtn01 a {
	display:block;
	background:#e83d44;
	color:#fff;
	font-size:16px;
	text-align:center;
	padding:20px;
	position:relative;
	text-decoration:none;
}
.footerlink .footerbtn01 a:before {
	position: absolute;
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	top: 50%;
  top: calc(100% / 2);
	right:12px;
	font-weight:bold;
	-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
.footerlink .footerbtn01 a:hover {
	background:#fff;
	color:#e83d44 !important;
}
.footerlink .footerlogo {
	text-align:right;
}
.pagetop {
	position:fixed;
	right:60px;
	bottom:15%;
	z-index:2;
	display:none;
}
.pagetop a {
  display: block;
}
@media (max-width: 767px) {
#footer .inner {
	padding:0 0 30px;
}
.footerpro {
	position:inherit;
	text-align:center;
	top:0;
	font-size:12px;
	padding:0 10px;
}
.copyright {
	text-align:center;
	font-size:12px;
	padding:0 10px;
}
.footerlinkbox {
	overflow:hidden;
	margin:0;
}
.footerlink {
	width:auto;
	float:none;
	border-left:none;
	padding-left:0;
}
.footerlink .linkbig a {
	font-size:14px;
	padding:20px 30px 20px 20px;
	display:block;
	position:relative;
}
.footerlink .linkbig a::before {
	position: absolute;
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: bold;
	top: 32px;
  top: calc(100% / 2);
	right: 20px;
	font-size:18px;
	-webkit-transform: translateY(-50%);
transform: translateY(-50%);
	z-index:2;
}
.footerlink .linkbig li+li {
	margin-top:0;
	border-top:1px #12609d solid;
}
.footerlink .linkhd {
	font-size:14px;
	margin-bottom:0;
	background:#12609d;
	padding:10px 20px;
}
#footer .footerlink .linkhd a {
	font-size:14px;
}
.footerlink .linksmall a {
	font-size:14px;
	background:none;
	padding-left:0;
	padding:20px 30px 20px 20px;
	display:block;
	position:relative;
}
.footerlink .linksmall li+li {
	margin-top:0;
}
.footerlink .linksmall {
	overflow:hidden;
}
.footerlink .linksmall li {
	float:left;
	width:50%;
	border-bottom:1px #12609d solid;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
.footerlink .linksmall li:nth-child(2n) {
	border-left:1px #12609d solid;
}
.footerlink .linksmall a::before {
	position: absolute;
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: bold;
	top: 32px;
  top: calc(100% / 2);
	right: 20px;
	font-size:18px;
	-webkit-transform: translateY(-50%);
transform: translateY(-50%);
	z-index:2;
}

.footerlink .linkbtnbox {
	padding:30px 40px 15px;
}
.footerlink .linkbtn {
	margin-bottom:40px;
}
.footerlink .linkbtn li +li {
	margin-top:20px;
}
.footerlink .footerbtn01 a {
	display:block;
	background:#e83d44;
	color:#fff;
	font-size:16px;
	text-align:center;
	padding:20px;
	position:relative;
	text-decoration:none;
}
.footerlink .footerbtn01 a:before {
	position: absolute;
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	top: 32px;
  top: calc(100% / 2);
	right:12px;
	font-weight:bold;
	-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
.footerlink .footerbtn01 a:hover {
	background:#fff;
	color:#e83d44 !important;
}
.footerlink .footerlogo {
	text-align:center;
}
.pagetopsp a {
	display:block;
	background:#0c446f;
	color:#fff;
	text-align:center;
	text-decoration:none;
	padding:10px 20px;
	font-size:16px !important;
}
.pagetopsp a img {
	width:25px;
}
}


.footersublink {
  margin: 0 0 15px;
}
.footersublink ul {
  text-align: center;
  line-height: 1.4;
}
.footersublink ul li {
  display: inline-block;
  border-right: 1px solid #fff;
  padding: 0 12px;
}
.footersublink ul li:first-child {
  border-left: 1px solid #fff;
}
#footer .footersublink ul li a {
  text-decoration: none;
  font-size: 13px;
}

@media (max-width: 767px) {
  .footersublink {
    margin: 5px 10px 15px;
  }
  #footer .footersublink ul li a {
    font-size: 11px;
  }
}


@media (max-width: 767px) {

}
@media (max-width: 479px) {

}

/* 二次代理店募集ボタン追加 */
.hdbtn.hdbtn--agency a {
	background-color: #0f5286;
	border-color: #0f5286;
}

.hdbtn.hdbtn--agency a:hover {
    background: #fff;
    color: #0f5286 !important;
}

.pulldown-agency-btn {
	padding-top: 20px;
	padding-left: 20px;
	padding-right: 20px;
	border-top: 1px solid #3d698c;
}

.pulldown-agency-btn a {
	display: block;
	background-color: #fff;
	color: #0c446f;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
}


#breadcrumb .inner > span:last-child a {
	display: inline-block;
	pointer-events: none;
	text-decoration: none;
}
