/******************************************
background
******************************************/
.bg-primary {
  background: #002e73;
}

.bg-secondary {
  background: #1f5fa9;
}

.bg-gray {
  background: #f1f1f1;
}

.bg-white {
  background: #fff;
}
/******************************************
clearfix
******************************************/
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
/******************************************
border
******************************************/
/*color*/
.border-primary {
  border: 1px solid #948a54;
}
.border-bottom {
  border-bottom: 1px solid #666;
}
.border-left {
  border-left: 1px solid #666;
}
.border-right {
  border-right: 1px solid #666;
}
.border-top {
  border-top: 1px solid #666;
}
/******************************************
image
******************************************/
.fit-img,
.fit-img img{
	height: auto;
	width: 100%;
}
.fit-max-img,
.fit-max-img img{
	height: auto;
	max-width: 100%;
}
/******************************************
margin
******************************************/
/*margin*/
.m5 {
  margin-bottom: 5em;
}

.m4 {
  margin-bottom: 4em;
}

.m3 {
  margin-bottom: 3em;
}

.m2 {
  margin-bottom: 2em;
}

.m1 {
  margin-bottom: 1em;
}

/*margin pc only*/
@media screen and (min-width: 769px) {
  .m5-pc {
    margin-bottom: 5em;
  }

  .m4-pc {
    margin-bottom: 4em;
  }

  .m3-pc {
    margin-bottom: 3em;
  }

  .m2-pc {
    margin-bottom: 2em;
  }

  .m1-pc {
    margin-bottom: 1em;
  }
}
/*margin sp only*/
@media screen and (max-width: 768px) {
  .m5-sp {
    margin-bottom: 5em;
  }

  .m4-sp {
    margin-bottom: 4em;
  }

  .m3-sp {
    margin-bottom: 3em;
  }

  .m2-sp {
    margin-bottom: 2em;
  }

  .m1-sp {
    margin-bottom: 1em;
  }
}
/*margin-bottom*/
.mb5 {
  margin-bottom: 5em;
}

.mb4 {
  margin-bottom: 4em;
}

.mb3 {
  margin-bottom: 3em;
}

.mb2 {
  margin-bottom: 2em;
}

.mb1 {
  margin-bottom: 1em;
}

/*margin-bottom pc only*/
@media screen and (min-width: 769px) {
  .mb5-pc {
    margin-bottom: 5em;
  }

  .mb4-pc {
    margin-bottom: 4em;
  }

  .mb3-pc {
    margin-bottom: 3em;
  }

  .mb2-pc {
    margin-bottom: 2em;
  }

  .mb1-pc {
    margin-bottom: 1em;
  }
}
/*margin-bottom sp only*/
@media screen and (max-width: 768px) {
  .mb5-sp {
    margin-bottom: 5em;
  }

  .mb4-sp {
    margin-bottom: 4em;
  }

  .mb3-sp {
    margin-bottom: 3em;
  }

  .mb2-sp {
    margin-bottom: 2em;
  }

  .mb1-sp {
    margin-bottom: 1em;
  }
}
/*margin-left*/
.ml5 {
  margin-left: 5em;
}

.ml4 {
  margin-left: 4em;
}

.ml3 {
  margin-left: 3em;
}

.ml2 {
  margin-left: 2em;
}

.ml1 {
  margin-left: 1em;
}

/*margin-left pc only*/
@media screen and (min-width: 769px) {
  .ml5-pc {
    margin: 5em auto;
  }

  .ml4-pc {
    margin: 4em auto;
  }

  .ml3-pc {
    margin: 3em auto;
  }

  .ml2-pc {
    margin: 2em auto;
  }

  .ml1-pc {
    margin: 1em auto;
  }
}
/*margin-left sp only*/
@media screen and (max-width: 768px) {
  .ml5-sp {
    margin: 5em auto;
  }

  .ml4-sp {
    margin: 4em auto;
  }

  .ml3-sp {
    margin: 3em auto;
  }

  .ml2-sp {
    margin: 2em auto;
  }

  .ml1-sp {
    margin: 1em auto;
  }
}
/*margin-right*/
.mr5 {
  margin-right: 5em;
}

.mr4 {
  margin-right: 4em;
}

.mr3 {
  margin-right: 3em;
}

.mr2 {
  margin-right: 2em;
}

.mr1 {
  margin-right: 1em;
}

/*margin-right pc only*/
@media screen and (min-width: 769px) {
  .mr5-pc {
    margin-right: 5em;
  }

  .mr4-pc {
    margin-right: 4em;
  }

  .mr3-pc {
    margin-right: 3em;
  }

  .mr2-pc {
    margin-right: 2em;
  }

  .mr1-pc {
    margin-right: 1em;
  }
}
/*margin-right sp only*/
@media screen and (max-width: 768px) {
  .mr5-sp {
    margin-right: 5em;
  }

  .mr4-sp {
    margin-right: 4em;
  }

  .mr3-sp {
    margin-right: 3em;
  }

  .mr2-sp {
    margin-right: 2em;
  }

  .mr1-sp {
    margin-right: 1em;
  }
}
/*margin-top*/
.mt10 {
  margin-top: 10em;
}
.mt5 {
  margin-top: 5em;
}

.mt4 {
  margin-top: 4em;
}

.mt3 {
  margin-top: 3em;
}

.mt2 {
  margin-top: 2em;
}

.mt1 {
  margin-top: 1em;
}

/*margin-top pc only*/
@media screen and (min-width: 769px) {
  .mt10-pc {
    margin-top: 10em;
  }
  .mt5-pc {
    margin-top: 5em;
  }

  .mt4-pc {
    margin-top: 4em;
  }

  .mt3-pc {
    margin-top: 3em;
  }

  .mt2-pc {
    margin-top: 2em;
  }

  .mt1-pc {
    margin-top: 1em;
  }
}
/*margin-top sp only*/
@media screen and (max-width: 768px) {
  .mt5-sp {
    margin-top: 5em;
  }

  .mt4-sp {
    margin-top: 4em;
  }

  .mt3-sp {
    margin-top: 3em;
  }

  .mt2-sp {
    margin-top: 2em;
  }

  .mt1-sp {
    margin-top: 1em;
  }
}
/*margin vertical*/
.mv5 {
  margin: 5em auto;
}

.mv4 {
  margin: 4em auto;
}

.mv3 {
  margin: 3em auto;
}

.mv2 {
  margin: 2em auto;
}

.mv1 {
  margin: 1em auto;
}

/*margin-vertical pc only*/
@media screen and (min-width: 769px) {
  .mv5-pc {
    margin: 5em auto;
  }

  .mv4-pc {
    margin: 4em auto;
  }

  .mv3-pc {
    margin: 3em auto;
  }

  .mv2-pc {
    margin: 2em auto;
  }

  .mv1-pc {
    margin: 1em auto;
  }
}
/*margin-vertical sp only*/
@media screen and (max-width: 768px) {
  .mv5-sp {
    margin: 5em auto;
  }

  .mv4-sp {
    margin: 4em auto;
  }

  .mv3-sp {
    margin: 3em auto;
  }

  .mv2-sp {
    margin: 2em auto;
  }

  .mv1-sp {
    margin: 1em auto;
  }
}
/*margin-horizon*/
.mh5 {
  margin: auto 5em;
}

.mh4 {
  margin: auto 4em;
}

.mh3 {
  margin: auto 3em;
}

.mh2 {
  margin: auto 2em;
}

.mh1 {
  margin: auto 1em;
}

/*margin-horizon pc only*/
@media screen and (min-width: 769px) {
  .mh5-pc {
    margin: auto 5em;
  }

  .mh4-pc {
    margin: auto 4em;
  }

  .mh3-pc {
    margin: auto 3em;
  }

  .mh2-pc {
    margin: auto 2em;
  }

  .mh1-pc {
    margin: auto 1em;
  }
}
/*margin-horizon sp only*/
@media screen and (max-width: 768px) {
  .mh5-sp {
    margin: auto 5em;
  }

  .mh4-sp {
    margin: auto 4em;
  }

  .mh3-sp {
    margin: auto 3em;
  }

  .mh2-sp {
    margin: auto 2em;
  }

  .mh1-sp {
    margin: auto 1em;
  }
}


/******************************************
padding
******************************************/
/*padding*/
.p5 {
  padding: 5em;
}

.p4 {
  padding: 4em;
}

.p3 {
  padding: 3em;
}

.p2 {
  padding: 2em;
}

.p1 {
  padding: 1em;
}

/*padding pc only*/
@media screen and (min-width: 769px) {
  .p5-pc {
    padding: 5em;
  }

  .p4-pc {
    padding: 4em;
  }

  .p3-pc {
    padding: 3em;
  }

  .p2-pc {
    padding: 2em;
  }

  .p1-pc {
    padding: 1em;
  }
}
/*padding sp only*/
@media screen and (max-width: 768px) {
  .p5-sp {
    padding: 5em;
  }

  .p4-sp {
    padding: 4em;
  }

  .p3-sp {
    padding: 3em;
  }

  .p2-sp {
    padding: 2em;
  }

  .p1-sp {
    padding: 1em;
  }
}
/*padding-bottom*/
.pb5 {
  padding-bottom: 5em;
}

.pb4 {
  padding-bottom: 4em;
}

.pb3 {
  padding-bottom: 3em;
}

.pb2 {
  padding-bottom: 2em;
}

.pb1 {
  padding-bottom: 1em;
}

/*padding-bottom pc only*/
@media screen and (min-width: 769px) {
  .pb5-pc {
    padding-bottom: 5em;
  }

  .pb4-pc {
    padding-bottom: 4em;
  }

  .pb3-pc {
    padding-bottom: 3em;
  }

  .pb2-pc {
    padding-bottom: 2em;
  }

  .pb1-pc {
    padding-bottom: 1em;
  }
}
/*padding-bottom sp only*/
@media screen and (max-width: 768px) {
  .pb5-sp {
    padding-bottom: 5em;
  }

  .pb4-sp {
    padding-bottom: 4em;
  }

  .pb3-sp {
    padding-bottom: 3em;
  }

  .pb2-sp {
    padding-bottom: 2em;
  }

  .pb1-sp {
    padding-bottom: 1em;
  }
}
/*padding-left*/
.pl5 {
  padding-left: 5em;
}

.pl4 {
  padding-left: 4em;
}

.pl3 {
  padding-left: 3em;
}

.pl2 {
  padding-left: 2em;
}

.pl1 {
  padding-left: 1em;
}

/*padding-left pc only*/
@media screen and (min-width: 769px) {
  .pl5-pc {
    padding-left: 5em;
  }

  .pl4-pc {
    padding-left: 4em;
  }

  .pl3-pc {
    padding-left: 3em;
  }

  .pl2-pc {
    padding-left: 2em;
  }

  .pl1-pc {
    padding-left: 1em;
  }
}
/*padding-left sp only*/
@media screen and (max-width: 768px) {
  .pl5-sp {
    padding-left: 5em;
  }

  .pl4-sp {
    padding-left: 4em;
  }

  .pl3-sp {
    padding-left: 3em;
  }

  .pl2-sp {
    padding-left: 2em;
  }

  .pl1-sp {
    padding-left: 1em;
  }
}
/*padding-right*/
.pr5 {
  padding-right: 5em;
}

.pr4 {
  padding-right: 4em;
}

.pr3 {
  padding-right: 3em;
}

.pr2 {
  padding-right: 2em;
}

.pr1 {
  padding-right: 1em;
}

/*padding-right pc only*/
@media screen and (min-width: 769px) {
  .pr5-pc {
    padding-right: 5em;
  }

  .pr4-pc {
    padding-right: 4em;
  }

  .pr3-pc {
    padding-right: 3em;
  }

  .pr2-pc {
    padding-right: 2em;
  }

  .pr1-pc {
    padding-right: 1em;
  }
}
/*padding-right sp only*/
@media screen and (max-width: 768px) {
  .pr5-sp {
    padding-right: 5em;
  }

  .pr4-sp {
    padding-right: 4em;
  }

  .pr3-sp {
    padding-right: 3em;
  }

  .pr2-sp {
    padding-right: 2em;
  }

  .pr1-sp {
    padding-right: 1em;
  }
}
/*padding-top*/
.pt5 {
  padding-top: 5em;
}

.pt4 {
  padding-top: 4em;
}

.pt3 {
  padding-top: 3em;
}

.pt2 {
  padding-top: 2em;
}

.pt1 {
  padding-top: 1em;
}

/*padding-top pc only*/
@media screen and (min-width: 769px) {
  .pt5-pc {
    padding-top: 5em;
  }

  .pt4-pc {
    padding-top: 4em;
  }

  .pt3-pc {
    padding-top: 3em;
  }

  .pt2-pc {
    padding-top: 2em;
  }

  .pt1-pc {
    padding-top: 1em;
  }
}
/*padding-top sp only*/
@media screen and (max-width: 768px) {
  .pt5-sp {
    padding-top: 5em;
  }

  .pt4-sp {
    padding-top: 4em;
  }

  .pt3-sp {
    padding-top: 3em;
  }

  .pt2-sp {
    padding-top: 2em;
  }

  .pt1-sp {
    padding-top: 1em;
  }
}
/*padding-horizon*/
.ph5 {
  padding: 0 5em;
}

.ph4 {
  padding: 0 4em;
}

.ph3 {
  padding: 0 3em;
}

.ph2 {
  padding: 0 2em;
}

.ph1 {
  padding: 0 1em;
}

/*padding-horizon pc only*/
@media screen and (min-width: 769px) {
  .ph5-pc {
    padding: 0 5em;
  }

  .ph4-pc {
    padding: 0 4em;
  }

  .ph3-pc {
    padding: 0 3em;
  }

  .ph2-pc {
    padding: 0 2em;
  }

  .ph1-pc {
    padding: 0 1em;
  }
}
/*padding-horizon sp only*/
@media screen and (max-width: 768px) {
  .ph5-sp {
    padding: 0 5em;
  }

  .ph4-sp {
    padding: 0 4em;
  }

  .ph3-sp {
    padding: 0 3em;
  }

  .ph2-sp {
    padding: 0 2em;
  }

  .ph1-sp {
    padding: 0 1em;
  }
}
/*padding-vertical*/
.pv5 {
  padding: 5em 0;
}

.pv4 {
  padding: 4em 0;
}

.pv3 {
  padding: 3em 0;
}

.pv2 {
  padding: 2em 0;
}

.pv1 {
  padding: 1em 0;
}

/*padding-vertical pc only*/
@media screen and (min-width: 769px) {
  /*padding vertical*/
  .pv5-pc {
    padding: 5em 0;
  }

  .pv4-pc {
    padding: 4em 0;
  }

  .pv3-pc {
    padding: 3em 0;
  }

  .pv2-pc {
    padding: 2em 0;
  }

  .pv1-pc {
    padding: 1em 0;
  }
}
/*padding-vertical sp only*/
@media screen and (max-width: 768px) {
  /*padding vertical*/
  .pv5-sp {
    padding: 5em 0;
  }

  .pv4-sp {
    padding: 4em 0;
  }

  .pv3-sp {
    padding: 3em 0;
  }

  .pv2-sp {
    padding: 2em 0;
  }

  .pv1-sp {
    padding: 1em 0;
  }
}
/******************************************
text
******************************************/
/*color*/
.text-primary {
  color: #002e73;
}

.text-red {
  color: #fe0000;
}

.text-white {
  color: #fff;
}

/*font-family*/
.text-gothic {
  font-family: Arial, Helvetica, "sans-serif";
}

.text-serif {
  font-family: Georgia, "Times New Roman", Times, "serif";
}

/*position*/
.text-center {
  text-align: center;
}
@media screen and (min-width: 769px) {
	.text-center-pc {
		text-align: center;
	}
}
@media screen and (max-width: 768px) {
	.text-center-sp {
		text-align: center;
	}
}
.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}
@media screen and (min-width: 769px) {
	.text-right-pc {
		text-align: right;
	}
}
/*size*/
.text-24{
	font-size:24px;
}
@media screen and (max-width: 768px) {
	.text-24{
		font-size:18px;
	}
}
.text-xs {
  font-size: 0.6em;
}

.text-s {
  font-size: 0.8em;
}

.text-m {
  font-size: 1em;
}

.text-l {
  font-size: 2em;
}

.text-xl {
  font-size: 3em;
}

@media screen and (min-width: 769px) {
  .text-xs-pc {
    font-size: 0.6em;
  }

  .text-s-pc {
    font-size: 0.8em;
  }

  .text-m-pc {
    font-size: 1em;
  }

  .text-l-pc {
    font-size: 1.4em;
  }

  .text-xl-pc {
    font-size: 2em;
  }
}
@media screen and (max-width: 768px) {
  .text-xs-sp {
    font-size: 0.6em;
  }

  .text-s-sp {
    font-size: 0.8em;
  }

  .text-m-sp {
    font-size: 1em;
  }

  .text-l-sp {
    font-size: 1.4em;
  }

  .text-xl-sp {
    font-size: 2em;
  }
}
/*weight*/
.text-normal {
  font-weight: normal;
}

.text-bold {
  font-weight: bold;
}

/******************************************
width
******************************************/
.w100 {
  width: 100%;
}

.w50 {
  width: 50%;
}

/******************************************
display
******************************************/
.pc-only {
  display: inherit;
}
@media screen and (max-width: 768px) {
  .pc-only {
    display: none;
  }
}

.sp-only {
  display: none;
}
@media screen and (max-width: 768px) {
  .sp-only {
    display: inherit;
  }
}
.d_block{
	display:block;
}
.d_inline_block{
	display:inline-block;
}
/******************************************
margin
******************************************/
/*margin-top*/
.mt10{
	margin-top: 10px;
}
.mt20{
	margin-top: 20px;
}
.mt30{
	margin-top: 30px;
}
.mt40{
	margin-top: 40px;
}
.mt50{
	margin-top: 50px;
}
.mt60{
	margin-top: 60px;
}
.mt70{
	margin-top: 70px;
}
.mt80{
	margin-top: 80px;
}
.mt90{
	margin-top: 90px;
}
.mt100{
	margin-top: 100px;
}
/*margin pc only*/
@media screen and (min-width: 769px) {
	.mt10-pc{
		margin-top: 10px;
	}
	.mt20-pc{
		margin-top: 20px;
	}
	.mt30-pc{
		margin-top: 30px;
	}
	.mt40-pc{
		margin-top: 40px;
	}
	.mt50-pc{
		margin-top: 50px;
	}
	.mt60-pc{
		margin-top: 60px;
	}
	.mt70-pc{
		margin-top: 70px;
	}
	.mt80-pc{
		margin-top: 80px;
	}
	.mt90-pc{
		margin-top: 90px;
	}
	.mt100-pc{
		margin-top: 100px;
	}
}
/*margin sp only*/
@media screen and (max-width: 768px) {
	.mt10-sp{
		margin-top: 10px;
	}
	.mt20-sp{
		margin-top: 20px;
	}
	.mt30-sp{
		margin-top: 30px;
	}
	.mt40-sp{
		margin-top: 40px;
	}
	.mt50-sp{
		margin-top: 50px;
	}
	.mt60-sp{
		margin-top: 60px;
	}
	.mt70-sp{
		margin-top: 70px;
	}
	.mt80-sp{
		margin-top: 80px;
	}
	.mt90-sp{
		margin-top: 90px;
	}
	.mt100-sp{
		margin-top: 100px;
	}
}
/*margin-bottom*/
.mb10{
	margin-bottom: 10px;
}
.mb20{
	margin-bottom: 20px;
}
.mb30{
	margin-bottom: 30px;
}
.mb40{
	margin-bottom: 40px;
}
.mb50{
	margin-bottom: 50px;
}
.mb60{
	margin-bottom: 60px;
}
.mb70{
	margin-bottom: 70px;
}
.mb80{
	margin-bottom: 80px;
}
.mb90{
	margin-bottom: 90px;
}
.mb100{
	margin-bottom: 100px;
}
/*margin-bottom pc only*/
@media screen and (min-width: 769px) {
	.mb10-pc{
		margin-bottom: 10px;
	}
	.mb20-pc{
		margin-bottom: 20px;
	}
	.mb30-pc{
		margin-bottom: 30px;
	}
	.mb40-pc{
		margin-bottom: 40px;
	}
	.mb50-pc{
		margin-bottom: 50px;
	}
	.mb60-pc{
		margin-bottom: 60px;
	}
	.mb70-pc{
		margin-bottom: 70px;
	}
	.mb80-pc{
		margin-bottom: 80px;
	}
	.mb90-pc{
		margin-bottom: 90px;
	}
	.mb100-pc{
		margin-bottom: 100px;
	}
}
/*margin-bottom sp only*/
@media screen and (max-width: 768px) {
	.mb10-sp{
		margin-bottom: 10px;
	}
	.mb20-sp{
		margin-bottom: 20px;
	}
	.mb30-sp{
		margin-bottom: 30px;
	}
	.mb40-sp{
		margin-bottom: 40px;
	}
	.mb50-sp{
		margin-bottom: 50px;
	}
	.mb60-sp{
		margin-bottom: 60px;
	}
	.mb70-sp{
		margin-bottom: 70px;
	}
	.mb80-sp{
		margin-bottom: 80px;
	}
	.mb90-sp{
		margin-bottom: 90px;
	}
	.mb100-sp{
		margin-bottom: 100px;
	}
}
/*margin-left*/

/*margin-left pc only*/
@media screen and (min-width: 769px) {
}
/*margin-left sp only*/
@media screen and (max-width: 768px) {
}
/*margin-right*/
.mr10{
	margin-right: 10px;
}
.mr20{
	margin-right: 20px;
}
.mr30{
	margin-right: 30px;
}
.mr40{
	margin-right: 40px;
}
.mr50{
	margin-right: 50px;
}
.mr60{
	margin-right: 60px;
}
.mr70{
	margin-right: 70px;
}
.mr80{
	margin-right: 80px;
}
.mr90{
	margin-right: 90px;
}
.mr100{
	margin-right: 100px;
}
/*margin-right pc only*/
@media screen and (min-width: 769px) {
	.mr10-pc{
		margin-right:10px;
	}
	.mr20-pc{
		margin-right:20px;
	}
	.mr30-pc{
		margin-right:30px;
	}
	.mr40-pc{
		margin-right:40px;
	}
	.mr50-pc{
		margin-right:50px;
	}
	.mr60-pc{
		margin-right:60px;
	}
	.mr70-pc{
		margin-right:70px;
	}
	.mr80-pc{
		margin-right:80px;
	}
	.mr90-pc{
		margin-right:90px;
	}
	.mr100-pc{
		margin-right:100px;
	}
}
/*margin-right sp only*/
@media screen and (max-width: 768px) {
	.mr10-sp{
		margin-right:10px;
	}
	.mr20-sp{
		margin-right:20px;
	}
	.mr30-sp{
		margin-right:30px;
	}
	.mr40-sp{
		margin-right:40px;
	}
	.mr50-sp{
		margin-right:50px;
	}
	.mr60-sp{
		margin-right:60px;
	}
	.mr70-sp{
		margin-right:70px;
	}
	.mr80-sp{
		margin-right:80px;
	}
	.mr90-sp{
		margin-right:90px;
	}
	.mr100-sp{
		margin-right:100px;
	}
}