/* 新規クラス */

.main-visual-container {
    width: 100%;
    min-width: 1170px;
    overflow: hidden;
}

.main-visual {
    position: relative;
    left: 50%;
    margin-left: -960px;
}

.top-pane {
  position: absolute;
  top: 0px;
  left: 0;
  right: 0;
  margin: auto;
  width: 1170px;
  min-width: 1170px;
  height: 765px;
}

.top-pane-tl {
  position: absolute;
  top: 0;
  left: 0;
  width: 200px;
}

.top-pane-tl h1{
  margin: 0;
}

.top-pane-logo {
  display: block;
  width: 100%;
}

.top-pane-tr {
  position: absolute;
  top: 10px;
  right: 10px;
}

.tel {
  display: inline-block;
  height: 36px;
  vertical-align: -8px;
  margin: 0 30px;
}
.tel-inner{
  padding :5px 40px;
  padding-bottom: 6px;
  border: 2px solid #666;
  border-radius: 3px;
}
.tel-t{
  display: block;
  text-align: center;
  font-size: 20px;
  line-height: 20px;
  font-weight: bold;
}

.tel-b{
  display: block;
  text-align: center;
  font-size: 12px;
  line-height: 12px;  
}

.top-pane-center {
  z-index: 2;
  position: absolute;
  top: 20%;
  left: 10%;
  width: 80%;
  min-width: 936px;
  background: rgba(27,96,158,0.4);
  color: #fff;
  font-family : "游明朝", YuMincho, "Yu Mincho", serif;
  padding: 40px 85px 10px;
}
.top-pane-center p {
  font-weight: bold !important;
}
.bottom-triangle{
  position: relative;
}

.bottom-triangle::after{
  content: "";
  position: absolute;
  top: 60px;
  left: 0;
  right: 0;
  margin: auto;
  
  height: 100px;
  width: 100px;
  border-right:50px solid transparent;
	border-left:50px solid transparent;
  border-top: 40px solid #1B609E;
}

.block-promiss {
  display: flex;
  align-items: center;
}

.promiss-number {
  margin: 0;
  font-size: 60px;
  line-height: 100px;
  width: 60px;
  min-height: 100px;
  text-align: center;
  font-family : "游明朝", YuMincho, "Yu Mincho", serif;
  font-weight: bold;
  color: #13779f;
}

.bg-light {
  background: #ebf4f7;
}

.bg-secondary {
  background: #b9d6e2;
}

.bg-image-reform {
  padding-left: 200px;
  background: url(../images/reform.png) left/contain no-repeat;
}

.bg-image-railway {
  background: url(../images/line.png) right/contain no-repeat;
}


.check-list li::before{
  display: inline-block;
  font-family: FontAwesome;
  content: "\f14a";
  font-weight: normal;
  font-size: 18px;
  color: #13779f;
  vertical-align: 4px;
}

.circle-list {
  font-weight: bold;
}

.circle-list li::before{
  display: inline-block;
  font-family: FontAwesome;
  content: "\f1db";
  font-weight: normal;
  font-size: 18px;
  color: #f36e03;
  vertical-align: 4px;
  margin: 0 12px;
}

.user-image {
  display: block;
  width: 150px;
  height: 150px;
  float: left;
  margin: 20px;
}


dl {
  padding: 24px;
  border: 1px solid #13779f;
}

table {
  width: 100%;
}

th {
  text-align: center;
  font-weight: normal;
  background: #ebf4f7;
  border: 1px solid #ccc;
  border-right: none;
  width: 200px;
  vertical-align: top;
  padding: 12px 40px;

}
td {
  padding: 12px 40px;
  border: 1px solid #ccc;
  border-left: none;
}

.flow {
  border: 1px solid #13779f;
  padding: 10px;
}

.flow-number {
  display: inline-block;
  margin: 0;
  font-size: 40px;
  line-height: 60px;
  width: 60px;
  text-align: center;
  font-family : "游明朝", YuMincho, "Yu Mincho", serif;
  font-weight: bold;
  color:  #b9d6e2;
  vertical-align: -4px;
}

.flow-triangle {
  margin: 20px auto -20px;
  
  height: 80px;
  width: 100px;
  border-right:50px solid transparent;
	border-left: 50px solid transparent;
  border-top: 40px solid #13779f;
}

.flow h3{
  font-size: 24px;
  margin: 0;
}
.flow p{
  font-size: 18px;
}

.question {
  padding: 12px 40px;
  padding-left: 100px;
  position: relative;
  color: #13779f;
}

.question i {
  display: block;
  position: absolute;
  left: 50px;
  width:40px;
  line-height: 40px;
  text-align: center;
  
  font-style: normal;
  background: #13779f;
  color: #fff;
  border-radius: 5px;
}
.answer {
  padding: 12px 40px;
  padding-left: 100px;
  position: relative;
}
.answer i {
  display: block;
  position: absolute;
  left: 50px;
  width:40px;
  line-height: 40px;
  text-align: center;
  
  font-size: 32px;
  font-style: normal;
  background: #f36e03;
  color: #fff;
  border-radius: 5px;
}


/* 縦マージン用ユーティリティ */
/* mb1: ブロック内  mb2:ブロック間 */
.mb1{
margin-bottom: 32px;
}

.mb2{
margin-bottom: 40px;
}


/* 上書きしたbootstrapクラス */

body {
  font-size: 24px;
  font-weight: 500;
  /*padding-top: 75px;*/
}

.container {
  width: 1170px ;
  max-width: 1170px;
}
.navbar{
  display: none;
}
.navbar-nav{
  width: 600px;
}

.navbar .nav li a {
  background: #fff !important;
  color: #666 !important;
  font-size: 16px;
}

.navbar-brand {
  width: 200px;
  padding: 5px;
}

.navbar-brand img{
  width: 100%;
}

.navbar-text {
  margin: 14px;
  float: right;
}

.carousel-control {
  z-index: 3;
}

.jumbotron {
  padding: 0;
  min-width: 1170px;
}

.jumbotron p {
  font-size: 40px;
}

h2 {
  font-size: 40px;
  font-family : "游明朝", YuMincho, 'Yu Mincho', serif;
  font-weight: bold;
  
  border-bottom: 2px solid #1477A0;
}

h2::before{
  display: inline-block;
  font-family: FontAwesome;
  content: "\f105";
  font-weight: bold;
  font-size: 24px;
  color: #13779f;
  vertical-align: 8px;
  margin: 0 12px;
}


.jumbotron h2 {
  margin-top: 0;
  width:  100%;
}

.jumbotron h2::before {
  content: "";
}

h3 {
  font-size: 32px;
}

ol,ul{
  padding-left: 0;
  list-style: none;
}

hr {
  margin: 12px 0;
}

.bg-primary {
  background: #1B609E;
  padding: 10px 0;
  border-bottom: 2px #1B609E solid;
  margin-bottom:10px;
}

.nav {
  display: flex;
  text-align: center;
}

.nav li {
  flex: 1;
}

.nav li a {
    background: #13779f !important;
  color: #fff !important;
}

.nav li.active a {
  background: #f36e03 !important;
  color: #fff !important;
}

.btn-default {
  background: #f36e03;
  border-bottom: solid 2px #e20;
  border-radius: 3px;
  color: #fff;
  transition: none;
  width: 250px;
  padding-top:10px;
  padding-bottom: 10px;
}

.btn-default:hover {
  position: relative;
  top: 2px;
  background: #f36e03;
  border-bottom: none;
  color: #fff;
}

.btn-default:active {
  position: relative;
  top: 2px;
  background: #f36e03;
  border-bottom: none;
  color: #fff;
}

.btn-default:visited {
  background: #f36e03;
  border-bottom: solid 2px #e20;
  border-radius: 3px;
  color: #fff;
  transition: none;
  width: 250px;
}

strong {
  font-weight: inherit;
  color: #f36e03;
}

/* A4ノート幅対応 */

@media screen and (min-width: 1200px) {

.main-visual-container {
  width: 100%;
  min-width: 1170px;
  overflow: hidden;
}
  
.main-visual {
  position: relative;
  width: 100%;
  left: 0;
  margin-left: 0;
}
  
.top-pane-center {
  top: 20%;
}
}
/* 1150-tablet対応 */

@media screen and (max-width: 1150px) {
    img {
    width:100%;
    height: auto;
  }
  .container {
    width: 100% ;
    max-width: 100%;
    padding: 0;
  }
  .top-pane{
    min-width:auto;
    height:auto;
  }
  .main-visual-container {
    width: 100%;
    min-width: 0;
  }
  .jumbotron{
    width:100%;
    max-width:100%;
    min-width: 100%;
  }
  .bottom-triangle::after{
  content: "";
  position: absolute;
  display: block;
  bottom: -10px;
  z-index: -1;
  left: 0;
  right: 0;
  margin: auto;
  
  height: 50px;
  width: 100px;
  border-right:50px solid transparent;
  border-left:50px solid transparent;
  border-top: 20px solid #1B609E;
}
.bg-image-reform{
  background:none;
}
.bg-image-railway{
  background:none;
}
}
@media screen and (max-width: 769px) {
.navbar-nav{
  width: 100%;
}
.navbar-text {
  margin: 0;
  float: none;
}
  
.navbar-text > * {
  width: 80%;
  display: block;
  margin: 10px auto;
}
.navbar-text > div.tel{
  width:40%;
}
body{
  font-size:16px;
}
h2{
  font-size:24px;
}
h3{
  font-size:20px;
}
.flow h3{
  font-size:24px;
}
}
/* モバイルデバイス対応 */

@media screen and (max-width: 720px) { 
  body,.flow p,h2{
  font-size:4vw;
}
.navbar .nav li a{
  font-size: 3.5vw;
}
h2::before,h3,.flow h3{
  font-size:4vw;
}
h2::before{
  vertical-align: 0;
}
  .carousel-indicators{
    display: none;
  }
  .carousel-inner .item img{
    transform-origin: 50% 50%;
    transform: scale(1.5);
  }
  .container {
    width: 100% ;
    max-width: 100%;
    padding: 0;
  }
  
 
.main-visual-container {
    min-width: 0;
}

.main-visual {
    width: 100%;
    height: auto;
    position: relative;
    left: 0;
    margin:0;
}
.navbar-text > div.tel{
  width:80%;
}

  
.top-pane {
  width: 100%;
  min-width: 0;
}
.top-pane-tl {
  width: 80px;
}

.top-pane-tr {
  display: none;
}
.top-pane-center {
  display: none;
}
.flow{
  padding :3px;
}
.flow-number,.promiss-number{
  font-size:32px;
  line-height: 1.5;
  min-height: 0;
}
.flow-triangle{
  margin: 10px auto -45px;
  border-top:20px solid #13779f;
}
hr {
  display: none;
}

.jumbotron {
  min-width: 0;
}

  
.jumbotron h2 {
  min-width: 0;
  padding: 0;
  margin: 0;
}
  .user-image {
  display: block;
  width: 100px;
  height: 100px;
  float: none;
  margin: 10px auto;
}  
 
th {
  width: 15%;
  font-size: 4vw;
  padding: 0;
}
td{
  font-size: 4vw;
  padding: 0;
}

.question {
  padding-left: 60px;
  padding-right: 10px;
}
td iframe{
  width:85%;
  height: auto;
}
.question i {
  left: 10px;
}
.answer {
  padding-left: 60px;
  padding-right: 10px;
}

.answer i {
  left: 10px;
}
.mb2{
margin-bottom:20px;
}
}/* モバイルデバイス対応end */

ul.check-list li{
    padding: 15px 0;
}
img.center-block:hover{
  opacity: 0.8;
}
    .carousel-control {
      z-index: 3;
      background: none !important;
    }
.top-pane-center{
  display: none;
}
/* form用css */
.formTable td{
  background-color: #fff;
}
.formTable th{
  width: 30%;
  padding:12px 15px;
}
span.label-warning{
  float: right;
  margin-top: 5px;
}
@media screen and (max-width: 720px) { 
    .formTable th,.formTable td{
      width: 100%;
      display: block;
      padding:15px;
    }
    .formTable input{
      max-width: 320px;
    }
    span.label-warning{
      float: none;
      margin-left: 10px;
    }
}
.bt_send{
  margin:40px 0;
  text-align: center;
}
.bt_send .btn-lg{
  padding: 10px 60px;
  border-radius: 20px;
}
.form-flg-sell{
  display: none;
}
.form-flg-buy{
  display: none;
}
h1.message{
  font-size: 24px;
}
@media screen and (max-width: 720px){
  h1.message{
    font-size: 4vw;
  }
}
