@charset "utf-8";
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes:none;
}

a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
    text-decoration:none;
	color: #55acee;
}

a:hover,a img:hover {
	opacity: 0.7;
}

ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* CSS Document */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
	max-width: 100%;
    vertical-align:baseline;
    background:transparent;
    font-weight: normal;
}
img {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
	max-width: 100%;
    vertical-align:bottom;
    background:transparent;
    }



/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block; }
.sp { display: none; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 450px) {
.pc { display: none; }
.sp { 
	display: block; 
	}
img { max-width: 100%; }
	
}

.header{
	width: 100%;
	max-width: 100%;
	background-image: url("../images/header.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
	position: fixed;
}
.header-kabu{
	width: 7%;
	max-width: 10%;
	padding: 10px 40px;
	left: 40px;
}
.header-nav{
	width: 100%;
	padding: 10px;
        padding-left:120%;
}
.headerflex{
	display: flex;
	justify-content: right;
	position: absolute;
	top: 5px;
	margin: 0 auto;
}
.dodai{
	position: relative;
	max-width: 100%;
	margin: 0 auto;
	}
.fv{
	background-image: url("../images/heder-haikei.png");
	background-repeat: no-repeat;
	width: 100%;
	max-width: 100%;
	min-width: 100%;
	background-position:center center;
	background-size: cover;
}
.fv-sp{
	background-image: url("../images/headerhaike-sp.png");
	background-repeat: no-repeat;
	width: 100%;
	max-width: 100%;
	min-width: 100%;
	background-position:80% center;
	background-size: cover;
}
.fv-text{
	padding-left: 120px;
	padding-top: 150px;
	box-sizing: border-box;
}
.shadow{
	filter: drop-shadow(10px 10px 10px #696969);
}
.midasi{
	text-align: center;
	padding-top: 80px;
	padding-bottom: 40px;
}
.midasisp{
	text-align: center;
	padding-top: 40px;
	padding-bottom: 20px;
}
.submidasi{
	text-align: center;
	padding-top: 40px;
	padding-bottom: 80px;
	width: 100%;
	}
.submidasisp{
	text-align: center;
	padding-top: 20px;
	padding-bottom: 40px;
	width: 100%;
	}
.hosyo{
	background-image: url("../images/erabarerukasen01.png");
	background-repeat: no-repeat;
	width: 100%;
	background-size: cover;
}
.sayuu{
	width: 100%;
	padding: 0 40px;
	box-sizing: border-box;
}
.maxwidth{
	max-width: 100%;
}
.widthflex{
	width: 200%;
}
.widthmax{
	width: 100%;
}
.widthsecond{
	width: 80%;
}
.widthsan{
	width: 60%;
}
.widthyon{
	width: 40%;
}
.widthgo{
	width: 30%;
}
.widthroku{
	width: 20%;
}
.contents{
	text-align: center;
	padding-top: 20px;
}
.center{
	text-align: center;
}
.syo{
	width: 50%;
}
.margintop{
	margin-top: 20px;
}
.marginbottom{
	margin-bottom: 50px;
}
.marginbottomsp{
	margin-bottom: 25px;
}
.marginleft{
	margin-left: 40px;
}
.marginleftsecond{
	margin-left: 160px;
}
.marginright{
	margin-right: 40px;
}
.marginmainasu{
	margin: -15px 0;
}
.margintopmainasu{
	margin-top: -30px;
}
.paddingmainasu{
	padding-bottom: -30px;
}
.paddingmini{
	padding: 10px;
}
.paddingtop{
	padding-top: 20px;
}
.paddingtopsecond{
	padding-top: 40px;
}
.paddingbottom{
	padding-bottom: 20px;
}
.paddingbottomsecond{
	padding-bottom: 60px;
}
.paddingbottomsan{
	padding-bottom: 100px;
}
.paddingright{
	padding-right: 40px;
}
.paddingleft{
	padding-left: 40px;
}
.yohakutop{
	padding-top: 20px;
}
.flex{
	display: flex;
	justify-content: center;
	width: 100%;
	height: auto;
	max-width: 100%;
}
.flexhuan{
	display: flex;
	justify-content: center;
	width: 100%;
	height: auto;
	max-width: 100%;
}
.flexfooter{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 60px 0;
}
.flexfootersp{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px 0;
}
.bold{
	font-weight: bold;
}
/*huan*/
.lo-huan{
	background-image: url("../images/huan-haikei.png");
	background-repeat: no-repeat;
	width: 100%;
	max-width: 100%;
	height: auto;
	background-size: cover;
	background-position:center center;
}

/*kousi*/
.kousi{
	background-image: url("../images/kousihaikei.png");
	background-repeat: no-repeat;
	background-size: cover;
}
/*riyuu*/
.riyuu{
	background-image: url("../images/erabareruhaikei.png");
	background-repeat: no-repeat;
	background-size: cover;
}
/*kuwasiku*/
.kuwasiku{
	background-image: url("../images/kuwasikuhaikei.png");
	background-repeat: no-repeat;
	background-size: cover;
}
/*mailform
.mailform{
	background-image: url("../images/mailhaikei.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 70% auto;
}
.mailformsp{
	background-image: url("../images/mailhaikei.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 80% auto;
}*/
/*tigai*/
.tigai{
	background-image: url("../images/tigaihaikei.png");
	background-repeat: no-repeat;
	background-size: cover;
}
/*footer*/
.footer{
	background-image: url("../images/fotterhaikei.png");
	background-repeat: no-repeat;
	background-size: cover;
}
.footer-text{
	font-size: 18px;
	color: #fff;
}
.footer-texttwo{
	font-size: 14px;
	color: #fff;
	line-height: 20px;
}

@media only screen and (max-width: 767px){
  div{
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
  img{
    width: 100%;
    height: auto;
	    }
	p{
		font-size: 8px;
		max-width: 80%;
		margin: 0 auto;
	}
	li{
		font-size: 10px;
		max-width: 80%;
	}
}
/* pc　768px以上 */
@media only screen and (min-width: 436px), print {
  div{
    width: 100%;
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
  }
  img{
    width: 100%;
	max-width: 100%;
    height: auto;
	  }
	a img{
	width: 40%;
	height: auto;
}
}
@media only screen and (max-width: 435px){
	  img{
    width: 70%;
    height: auto;
	    }
}
/*********** btn_appli ***********/
.btn_appli {
  display: block;
  width: 100%;
  height: auto;
  color: #fff;
  line-height: 1.5;
  font-size: calc(100vw / 16);
  font-weight: 500;
  padding: 20px;
  text-decoration: none;
  border-style: none;
  border-radius: 50px;
}
.btn_appli_wrap {
  width: 90vw;
  margin: 0 auto;
}
.btn_appli:hover {
  color: #fff;
  box-shadow: none;
  position: relative;
  text-decoration: none;
}
.c-btn--navy {
  border-color: #0d206c;
  background: #122c94;
  background: -moz-linear-gradient(top, #122c94 0%, #122c94 50%, #122c94 50%, #0d206c 50%, #0d206c 50%, #0d206c 100%);
  background: -webkit-linear-gradient(top, #122c94 0%, #122c94 50%, #122c94 50%, #0d206c 50%, #0d206c 50%, #0d206c 100%);
  background: linear-gradient(to bottom, #122c94 0%, #122c94 50%, #122c94 50%, #0d206c 50%, #0d206c 50%, #0d206c 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#122c94', endColorstr='#0d206c', GradientType=0);
}
.c-btn--navy:hover {
  background: #fff;
  color: #0d206c;
  border-color: #0d206c;
  text-decoration: none;
}
.btn_appli:focus {
  outline: 0;
}
/*--------------------------------------------------------------------------
   btn
---------------------------------------------------------------------------*/
/*********** btn_anchor ***********/
.btn_anchor {
  padding: 15px;
  font-size: calc(100vw / 17);
}
.c-btn {
  display: block;
  padding: 14px 6px;
  border-width: 4px;
  border-style: solid;
  border-radius: 50px;
  color: #fff;
  -webkit-transition: .3s;
  transition: .3s;
  text-align: center;
  font-weight: 700;
  line-height: 1.5;
}
.c-btn--black {
  border-color: #1254D1;
  background: #1e7cff;
  background: -moz-linear-gradient(top, #1e7cff 0%, #1e7cff 50%, #166dfe 50%, #166dfe 50%, #166dfe 99%);
  background: -webkit-linear-gradient(top, #1e7cff 0%, #1e7cff 50%, #166dfe 50%, #166dfe 50%, #166dfe 99%);
  background: linear-gradient(to bottom, #1e7cff 0%, #1e7cff 50%, #166dfe 50%, #166dfe 50%, #166dfe 99%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1e7cff', endColorstr='#166dfe', GradientType=0);
}
.c-btn--black:hover {
  background: #fff;
  color: #1254D1;
  border-color: #1254D1;
  text-decoration: none;
}
/*********** anchor_wrap ***********/
.paddingmainasu{
  padding-top:-30px;
}
.anchor_wrap {
  padding: 30px 10px 30px;
  position: relative;
}
.anchor_wrap:after {
  display: block;
  content: " ";
  height: 28px;
  width: 100px;
  background: url("../../images/arrow_gray.png") no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  right: 0;
  bottom: -28px;
  margin: auto;
  z-index: 30;
}
.anchor_btn_wrap {
  width: 80vw;
  margin: 0 auto;
}
@media (min-width: 480px) {
  .btn_anchor {
    font-size: 2.6rem;
  }
}
@media (min-width: 768px) {
  .btn_anchor {
    padding: 25px;
  }
  .anchor_wrap:after {
    display: block;
    content: " ";
    height: 28px;
    width: 163px;
    background: url("../../images/arrow_gray.png") no-repeat;
    background-size: auto;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -28px;
    margin: auto;
    z-index: 30;
  }
}
@media (min-width: 768px) {
  .btn_anchor {
    padding: 25px;
    font-size: 3.2rem;
  }
}
@media (min-width: 900px) {
  .btn_anchor {
    font-size: 3.5rem;
  }
  .anchor_btn_wrap, .btn_appli_wrap {
    width: 660px;
    margin: 0 auto;
  }
}
@media (min-width: 480px) {
  .btn_appli {
    font-size: 2.6rem;
  }
}
@media (min-width: 768px) {
  .btn_appli {
    border-radius: 100px;
  }
}
@media (min-width: 900px) {
  .btn_appli {
    padding: 30px 0;
    font-size: 3.8rem;
    line-height: 1.4;
  }
}
.offer_btn_wrap {
  width: 95vw;
  max-width: 1000px;
  margin: 0 auto;
  padding: 20px 0 0;
}
.btn_offer {
  border: none;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  margin-bottom: 20px;
}
  .c-btn.btn_offer.c-btn--navy {
    border: 2px solid #0e1579;
  }
    .c-btn.btn_offer.c-btn--black {
    border: 2px solid #1e7cff;
  }

.btn_offer img {
  margin-left: 5px;
}
.anchor_offer_btn_wrap .btn_offer img {
  width: 7%;
}
.btl {
  font-size: 120%;
  margin-left: 2px;
}
@media (min-width: 768px) {
  .offer_btn_wrap {
    display: flex;
    justify-content: space-between;
    padding: 60px 0;
  }
  .btn_offer {
    width: 49%;
    padding: 45px 10px;
    margin-bottom: 0;
  }
  .btn_offer {
    border-radius: 100px;
    font-size: 2.4rem;
  }
  .btn_offer img {
    margin-left: 10px;
  }
  .anchor_offer_btn_wrap .btn_offer img {
    width: auto;
  }
  .c-btn.btn_offer.c-btn--navy:hover {
    background: rgba(5, 28, 157,0.2);
    color: #0e1579;
    border: 2px solid #0e1579;
    text-decoration: none;
    cursor: pointer;
  }
    .c-btn.btn_offer.c-btn--black:hover {
    background: rgba(30, 124, 255,0.2);
    color: #0e1579;
    border: 2px solid #1e7cff;
    text-decoration: none;
    cursor: pointer;
  }

}




/*--------------------------------------------------------------------------
   mail form 
---------------------------------------------------------------------------*/
/*********** sp form ***********/
.form_wrap {
  width: 94%;
  margin: 0 auto 26px;
  background: #ccc6a2; /*フォームの背景色*/
}
.form_inner {
  padding: 25px 0;
}
.mailform .fbox {
  width: 84%;
  height: 40px;
  margin: 0 auto 20px;
  font-size: 14px;
  padding: 10px;
  border: 0px;
  display: block;
  color: #1C5F00;
  box-shadow: 0px 0px 3px 0px #616161 inset;
}
*:focus {
  outline: none !important;
}
.btn_submit {
  width: 85%;
  margin: 0 auto;
  border-radius: 80px; /*ボタンの角丸*/
  background: rgb(28, 42, 228);
  background: -moz-linear-gradient(top, rgba(28, 42, 228, 1) 30%, rgba(125, 185, 232, 1) 100%);
  background: -webkit-linear-gradient(top, rgba(28, 42, 228, 1) 30%, rgba(125, 185, 232, 1) 100%);
  background: linear-gradient(to bottom, rgba(28, 42, 228, 1) 30%, rgba(125, 185, 232, 1) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#1c2ae4', endColorstr='#7db9e8', GradientType=0);
  /*ボタンのグラデーション*/
  color: #fff; /*フォントの色*/
  border: 0px;
  font-weight: bold;
  font-size: 20px;
  padding: 10px;
}
/*********** pc form ***********/
@media (min-width: 900px) {
  .form_wrap {
    max-width: 80%;
    margin: 0 auto 46px;
  }
  .form_inner {
    padding: 64px 0 57px;
  }
  .mailform .fbox {
    width: 70%;
    max-width: 900px;
    height: 50px;
    margin: 0 auto 30px;
    font-size: 1.7rem;
    padding: 10px 10px 10px 20px;
    display: block;
    border-radius: 2px;
    color: #0068B7;
    box-shadow: 0px 0px 3px 0px #616161 inset;
  }
  .btn_submit {
    width: 65%;
    max-width: 950px;
    margin: 0 auto;
    padding: 40px 0;
    font-size: 36px;
  }
  .btn_submit:hover {
    cursor: pointer;
    opacity: 0.7;
  }
  .spbr {
    display: none;
  }
}








