@charset "utf-8";
/* CSS Document */


/*================================================
 *  基本設定
 ================================================*/

body {
  padding-top:45px;
} 

h2 {
	font-size: 1.8em;
}
.fixed-top {
    border-bottom: 1px solid #333;
}
ul li {
	list-style: none;
}
a:hover {
	color: #fff;
	text-decoration: none;
}

/* 背景色設定 */
.btn-orange {
	background-color: #ff8c00;
	border-color: #ff8c00;
	color: #fff;
}
.bg-lightgray {
	background-color: #e8e8e8;
}
.bg-orange {
	background-color: #ff8c00;
}
.bg-frostygray {
	background-color: #e8ece9;
}
.bg-yellow {
	background-color: #f8f4e6;
}
.bg-green {
	background: #76b852;
	background: -webkit-linear-gradient(left, #8DC26F, #76b852);
	background: -o-linear-gradient(left, #8DC26F, #76b852);
	background: linear-gradient(to right, #8DC26F, #76b852);
	color: #fff;
}
.bg-orangegrade {
	background: #F2994A;
	background: -webkit-linear-gradient(to right, #F2C94C, #F2994A);
	background: linear-gradient(to right, #F2C94C, #F2994A);
	color: #fff;
}
.bg-white-rgb {
	background-color:rgba(255,255,255,0.5);
}

/* 背景画像設定 */
.bg-img-simulation {
	background-image:url(../images/pinstripe.png);
	background-repeat: repeat;
}

/* テキスト */
.text-orange {
	color: #ff8c00;
}
.lead {
	padding-top: 1em; 
	line-height: 140%;
}

/* ロゴ設定 */
.navbar-brand img {
	height: 30px;
}

/* トップ画像設定 */
.border-top{
	border-top:1px solid #e5e5e5;
}
.border-bottom{
	border-bottom:1px solid #e5e5e5;
}

/* カルーセルの下のポイント */
.marketing .col-lg-4 {
  margin-bottom: 1.5rem;
  text-align: center;
}
.marketing h4 {
	font-weight: 400;
	padding-top: 0.5em;
}
.marketing .col-lg-4 p {
  margin-right: .75rem;
  margin-left: .75rem;
}

/* 余白設定 */
section {
	padding-top: 2rem;
	padding-bottom: 2rem;
}


/*================================================
 *  テーブル設定
 ================================================*/

table {
	border:1px solid #ccc;
	border-collapse: collapse;
	border-spacing: 0;
	margin: 20px auto;
	width: 100%;
}
th {
	background:#f0f0f0;
	border:1px solid #999;
	padding:5px 10px;
	width:20%;
}
td {
	border:1px solid #999;
	padding:5px 10px;
	background-color: #fff;
}


/*================================================
 * 流れ
 ================================================*/

ol{
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding: 0.3em 0.8em;
  border: solid 2px #ffb107;
  border-radius:8px;
  background-color:#fff;
}
ol li{
  border-bottom: dashed 1px orange;
  position: relative;
  padding: 1em 1em 1em 40px;
  line-height: 1.5em;
}
ol li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  background: #ffb107;
  color: white;
  font-family: 'Avenir','Arial Black','Arial',sans-serif;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align:center;
  /*以下 上下中央寄せのため*/
  top: 23%;
  -moz-transform: translateY(-50%);
  	-webkit-transform: translateY(-50%);
  	-o-transform: translateY(-50%);
  	-ms-transform: translateY(-50%);
  	transform: translateY(-50%);
	
}
ol li:last-of-type{
  border-bottom: none; /*最後のliの線だけ消す*/
}


/*================================================
 *  トップへ戻る
 ================================================*/
#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 0;
  bottom: 0;
  background: #333;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: FontAwesome;
  content: '\f106';
  font-size: 25px;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -15px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/*================================================
 *  フッター
 ================================================*/
footer {
	width:100%;
	clear:both;
	padding:2% 0;
	font-size:1rem;
	text-align:center;
	color:#fff;
	background: #003d66;
	overflow: hidden;
}
footer a {
	color:#fff;
}
footer a:hover{
	color: #96ECFD;
}
#foot {
	max-width: 100%;
	height: auto;
	margin: 0 auto
}
.foot_left {
	width: auto;
	height: auto;
	float: left;
}
.foot_left ul li{
	width: auto;
	height: auto;
	float: left;
	margin: 0 1em;
}
.foot_right {
	width: auto;
	height: auto;
	float: right;
	margin-right: 5em;
}




/*================================================
 *  スマホ設定
 ================================================*/

@media (min-width: 768px) and (max-width: 991px) {
	html {
		font-size: .8em;
	}
	body {
    padding-top: 45px;
	}
	.pt-5, .py-5 {
    padding-top: 5rem!important;
	}
}
.overflow-hidden{
	overflow:hidden;
}
@media (max-width:767px) {
	html {
		font-size: .8em;
	}
	.row {
		margin: 0 auto;
	}
	.foot_right,.foot_right small {
		float: left;
		/*margin: 0 .5em;*/
	}
}

@media (max-width:575px) {
	#footer .container {
		overflow: hidden;
		padding: 0 1em;
	}
	#footer .container ul{
		width: 100%;
		overflow: hidden;
	}
	#footer .container ul li{
		width: 100%;
		text-align: left;
	}
	.foot_left ul li,
	.foot_right	{
		clear: both;
	}
	.foot_right {
		padding-top: .5em;
	}
}

@media (max-width:425px) {
	.col-4 {
		padding: 0;
	}
	footer {
		padding-bottom: 5em;
	}
	.foot_left {
		width: 90%;
	}	
}
