@charset "UTF-8";

/*================================================
      共通項目
================================================*/

html {
    overflow-y: scroll;
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
    font-feature-settings: "pkna";
    text-align: justify;
}

body {
    background-color: #ffffff;
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
    font-weight: 400;
}
.navbar-fixed-top, .navbar-fixed-bottom {
    position: relative;
    margin: 0;
}
h2 {
    font-size: 120%;
}

.tooltip {
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
}

.no-thank-yu,
.navbar,
.btn,
.form-control,
.input-gruop,
.breadcrumb,
.nav-tabs,
.nav-pills,
.panel-title,
.list-group,
.pagination,
.pager,
.alert,
.label,
.badge,
.panel-heading,
.lead,
.tooltip,
.popover {
    font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", Meiryo, "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;
}

.no-sp {
    display: none;
}

@media (min-width: 768px) {
    .no-sp {
        display: inline;
    }
}


/*文字詰め*/

html .tx {
    line-height: 2;
}

.section-top {
    padding-top: 80px;
}


/*header================*/


/*header .navbar-brand{
width:80%; height:80px; padding:0; vertical-align:middle; display:table;
}
header .navbar-brand span{
display:table-cell;height:80px;vertical-align:middle;
}
header .navbar-brand img{
width:100%; height:auto;
}*/

header {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    color: #26323F;
}

header .container img.logo {
    padding: 10px 0;
    float: left;
}

header .container div.link {
    text-align: right;
    height: 78px;
    line-height: 78px;
}

@media only screen and (max-width: 767px) {
    header .container img.logo {
        float: none;
    }
    header .container div.link {
        height: 30px;
        line-height: 30px;
    }
}

header .container div.link a {
    color: #26323F;
    text-decoration: none;
}

header .container div.link a img {
    vertical-align: middle;
    margin-top: -5px;
    margin-left: 5px;
}

.moushikomi {
    text-align: right;
}

@media (min-width: 750px) and (max-width: 1199px) {
    header .navbar-brand {
        width: 270px;
    }
}

@media (min-width: 1200px) {
    header .navbar-brand {
        width: 455px;
    }
}

@media (min-width: 768px) {
    header .navbar-nav {
        margin: 0 -15px 0 0;
    }
    header .navbar-brand {
        padding: 0;
    }
}


/*footer================*/

footer {
    background-color: #0063a5;
    color: #fff;
    padding-top: 20px;
}

footer a:link,
footer a:visited {
    color: #fff;
}

footer .nav a:hover {
    color: #666;
}


.glyphicon {
	position: relative;
	top: 1px;
	display: inline-block;
	font-family: 'Glyphicons Halflings';
	font-style: normal;
	font-weight: normal;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
  }

    footer .navbar-nav {
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        width: 100%;
        float: none;
    }
    /* ページトップ */
    #page-top {
        position: fixed;
        bottom: 20px;
        right: 20px;
        width: 70px;
        margin: 0;
        z-index: 2;
    }
    #page-top img{
        width: 100%;
    }
    #pageTop a:hover {
     opacity: 0.9;
    }


@media (max-width: 767px) {
    #page-top {
        width: 50px;
        bottom: 5px;
        right: 10px;
    }
    .onlySP {
        display: block;
    }
    .onlyPC {
        display: none;
    }
}

@media (min-width: 768px) {
    .onlySP {
        display: none;
    }
    .onlyPC {
        display: block;
    }
}


/*mainVisual================*/

#main-visual .row {
    width: 100%;
    max-width: 1901px;
    margin-left: auto;
    margin-right: auto;
}

#main-visual.container-fluid {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0;
}

#main-visual img {
    width: 100%;
    height: auto;
}

.center {
    margin: 0 auto;
    text-align: center;
}

.about {
    position: relative;
    width: calc(1650px + ((100% - 1750px) / 2));
    margin-left: auto;
    /*margin-top: -195px;*/
    background-color: #2871b7;
    padding: 30px 100px;
    border-radius: 50px 0 0 50px;
	margin-bottom: 50px;
	background-image: url(../img/bg-q.png);
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position:center right ;
	box-sizing: border-box;
}
.about  .inner{
max-width: 1140px;
width: 100%;
margin-right: auto;
}
.about h2 {
    color: #fff;
    font-size: 50px;
	font-weight: bold;
    display: inline-block;
    border-bottom: 5px solid #fff;
    padding-bottom: 10px;
    line-height: 1;
}

.about .title-description {
    color: #fff;
    font-size: 40px;
    font-weight: bold;
    letter-spacing: -0.02em;
    line-height: 1.5;
    margin-top: 0;
    margin-bottom: 20px;
  
}

.about .txt-description {
    color: #2871b7;
    font-size: 20px;
	border-radius:20px;
    font-weight: bold;
    background-color: #fff;
    padding: 40px 50px 40px 40px;
}

.about .txt-description p{
    margin-bottom: 0;
  } 


.mb10{
	margin-bottom: 10px!important;
}
.mb20{
	margin-bottom: 20px!important;
}
.mb30{
	margin-bottom: 30px!important;
}
#use {
    padding: 50px 0 0;
}

#use .f01 {
    color: #0063a5;
    text-align: center;
    font-weight: bold;
    margin-bottom:0;
}

#use .f02 {
    font-size: 30px;
    color: #0063a5;
    text-align: center;
    font-weight: bold;
    margin: 0 auto 10px;
}

#point {
    background-image: url(../img/bg01.png);
    background-size: cover;
    padding: 90px 0 50px;
    margin-top: 50px;
}
.point-list{
    max-width: 1040px;
    width: 90%;
   margin:0 auto;
}
.point-list > div{
margin-bottom:30px;
}
.point-list p.main-img{
    margin-bottom: 30px;
  }
.point-list .sp-show{
    display: none;
}
.point-list img{
	width: 100%;
}
#use img {
    display: block;
    margin: 0 auto;
}

.use-list>div {
    margin-bottom: 50px;
}

.use-list p {
    background: #fff;
    margin-bottom: 50px;
}

.use-list {
    margin-top: 50px;
}

.use-list img {
    max-width: 640px;
    width: 100%;
    margin: 0 auto;
}

@media (max-width: 1901px) {
.about{
    /*margin-top: -8vw;*/
    width: 90vw;
    padding: 30px 50px;
    background-position: center right;
    background-size: auto 100%;
}
}
@media (max-width: 1000px) {
    .about .title-description {
        font-size: 30px;
    }
    #use .f02 {
        font-size: 28px;
    }

}

@media (max-width: 768px) {
    #point{
        padding: 50px 0;
    }
    .point-list .sp-show{
        display: block;
    }
    .point-list .txt{
     font-size: 5vw;
     color: #0063a5;
     font-weight: bold;
     padding: 0 0 0 10px;
     margin-bottom: 20px;
    }
    .point-list .txt span{
        font-size: 0.9em;
        transform: rotate(-5deg);
        display: block;
        margin-bottom: 15px;
      }
	#use img{
    max-width: 90%;
	}
	#use .f01{
		width: 90%;
	}
	.bnr img{
		width: 100%;
	}
	.about {
		width: 95%;
		margin-left: auto;
		background-color: #2871b7;
        background-size: cover;
		padding:20px 50px;
		border-radius:30px 0 0 30px;
	}
	.about h2 {
		color: #fff;
		font-size: 7vw;
	}
	.about .title-description {
		color: #fff;
		font-size: 5vw;
	}
	.about .txt-description {
		color: #2871b7;
		font-size: 18px;
		border-radius:20px;
		font-weight: bold;
		background-color: #fff;
		padding:20px;
	  }
      .about .txt-description p{
        margin-bottom: 1rem;
      } 
	.point-list div {
		
		background: #fff;
		padding:30px;
	  }
	.point-list p.main-img{
        padding:0;
	  }
	  .use-list {
		margin-top: 100px;
		width: 90%;
		margin:50px auto;
	  }
	  #use .f02{
		text-align: left;
		font-size: 24px;
	  }
	  footer{
		margin-top:0;
	  }
}

@media (max-width: 450px) {
	.about {
		padding:10px 30px 30px;
        margin-bottom: 30px;
    }
	.about .txt-description{
		font-size: 16px;
	}
	#point {
		background-image: url(../img/bg01.png);
		padding:30px 0;
		margin-top:30px;
	}
	#use {
		padding:30px 0 0;
	  }
	#use .f01{
		text-align: left;
		margin:0 auto;
	}
    #copyright{
        font-size: 10px;
    }
}