@charset "UTF-8";

.home #contents > .inner {/* トップページ幅 100% */
	width:100%;
	max-width:100%;
}
.topinner {/* コンテンツは1000pxに */
	width:1000px;
	margin:0 auto;
	max-width:96%;
}
@media ( min-width : 768px ) {
  a[href^="tel:"] {
      pointer-events: none;
      text-decoration:none;
  }
}
/* tinyMCE用に見出しをリセット */
.toppage h3,
.toppage h4,
.toppage h5 {
	background:none;
	border:none;
	color:inherit;
	font-size:inherit;
	line-height:inherit;
	margin:0;
	padding:0;
}
.toppage h3::before,
.toppage h3::after ,
.toppage h4::before,
.toppage h4::after,
.toppage h5::before,
.toppage h5::after {
	display:none;
}
/*==========================
flex設定
==========================*/
@media screen and (min-width: 768px) {
  .columns, .flex-aic {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
  }

  .flex-aic {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .col_wrap {
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    /*IE10*/
    -webkit-flex-wrap: wrap;
    /* Safari6.1以降 */
  }

  .columns.reverse {
    -webkit-box-direction: reverse;
    -moz-box-direction: reverse;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }

  .columns .col2 {
    max-width: 49%;
    -webkit-box-flex-basis: 49%;
    -webkit-flex-basis: 49%;
    flex-basis: 49%;
  }

  .columns .col3 {
    max-width: 30%;
    -webkit-box-flex-basis: 30%;
    -webkit-flex-basis: 30%;
    flex-basis: 30%!important;
  }

  .columns .col4 {
    max-width: 24%;
    -webkit-box-flex-basis: 24%;
    -webkit-flex-basis: 24%;
    flex-basis: 24%;
  }

  .columns .col5 {
    max-width: 20%;
    -webkit-box-flex-basis: 20%;
    -webkit-flex-basis: 20%;
    flex-basis: 20%;
  }

  .columns .col6 {
    max-width: 16.6666%;
    -webkit-box-flex-basis: 16.6666%;
    -webkit-flex-basis: 16.6666%;
    flex-basis: 16.6666%;
  }
}
@media ( max-width : 767px ) {
.sp_columns {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
}

.sp_columns .col2,
.sp_columns .col3,
.sp_columns .col4,
.sp_columns .col5 {
	max-width: 49%;
	-webkit-box-flex-basis: 49%;
	-webkit-flex-basis: 49%;
	flex-basis: 49%;
}
}
/*==========================
	　mainimage
==========================*/

/*-- スライダーの時 ------------*/

.slider { }
.slick-slide img { margin:0 auto;}

button.slick-arrow {/* 矢印ボタン */
	background:none;
	border:none;
	position:absolute;
	top:50%;
	margin-top:-20px;
	height:40px;
	width:16px;
	text-indent:-9px;
	z-index:1;
}
button.slick-arrow:hover {
 	cursor:pointer;
	opacity:0.7;
}
button.slick-prev {/* 矢印（前へ）ボタン */
	background:url(img/btn_prev.png) no-repeat;
	left:18%;
	margin-left:-16px;
}
button.slick-next {/* 矢印（次へ）ボタン */
	background:url(img/btn_next.png) no-repeat;
	right:18%;
	margin-right:-16px;
}
@media screen and (max-width: 1650px) {
button.slick-prev {	left:13.7%;}
button.slick-next {	right:13.7%;}
}
@media screen and (max-width: 1400px) {
button.slick-prev {	left:8%;}
button.slick-next {	right:8%;}
}
@media screen and (min-width: 1200px) {
.slick-track {}
.slick-slide:not(.slick-center) {/* 前と次の画像を半透明に */
	opacity: 0.4;
	-moz-opacity: 0.4;
	filter: alpha(opacity=40);
}
}

/*==========================
	新着情報
==========================*/
.topnews .news {
	margin-bottom:0;
	position:relative;
}

/* 新着情報見出し */

.topnews h3 {
	color: #333;
  font-weight: 700;
  font-size: 24px;
  padding-bottom: 10px;
  vertical-align: bottom;
  border-bottom: 1px solid #264d96;
}
/* 一覧へボタン */

.topnews .btn {
	position:absolute;
	top:10px;
	right:20px;
}
.topnews .news .btn a {
	display:inline-block;
	line-height:1.2;
	padding:0.25em 0.5em 0.15em;
	text-decoration:none;
	color:#fff;
	background: #264d96;
	font-size:16px;
	letter-spacing:0.08em;
}
.topnews .news .btn a:hover {
  opacity: 0.7;
  -moz-opacity: 0.7;
  -webkit-opacity: 0.7;
}
/* -------------------------------追加 */
.topnews .news .btn a::after {
  content: '';
  position: absolute;
  top: 40%;
  right: 5%;
  width: 5px;
  height: 5px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.sec_news .news dl {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
}
.sec_news .news dt {
  color: #ec6700;
  padding: 10px 10px 10px 0;
  width: 100px;
  display: inline-block;
  box-sizing: border-box;
  border-bottom: 1px solid #cecece;
  margin-top: 20px;
}

.sec_news .news dd {
  display: inline-block;
  width: calc(100% - 100px);
  padding: 10px 10px 10px 0px;
  border-bottom: 1px solid #cecece;
  box-sizing: border-box;
}
/* -------------------------------ここまで */
/* 新着情報 */
.topnews .news dl {
	line-height:1.3;
	margin:1.2em 0;
}
.topnews .news dt {
	 font-weight:nomal;
	 color:#264d96;
	padding:0 20px 7px;
}
.topnews .news dd {
	margin-bottom:18px;
	padding:0 20px 15px;
	border-bottom:1px solid #cecece;
}
.topnews .news dd a {
	 text-decoration:none;
	 color:#333;
}
.topnews .news dd a:hover {
	color:#264d96;
}


/*==========================
	汎用に使えるボタン
==========================*/
.btn-style { text-align:center; }
.btn-style a {
	background: #333;
	border: 1px solid #333;
	width:280px;
	max-width:100%;
	padding: 0.8em 5px;
	text-align:center;
	color:#fff;
	display:inline-block;
	text-decoration:none;
	line-height:1.2;
	box-sizing:border-box;
	font-size:16px;
	position:relative;
}
.btn-style a::after {
  content: '';
  position: absolute;
  top: 45%;
  right: 17px;
  width: 4px;
  height: 4px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.btn-style a:hover {
	opacity: 0.7;
	-moz-opacity: 0.7;
	filter: alpha(opacity=70);
 	cursor:pointer;
}
.under .btn-style a {
	width:auto;
	min-width:280px;
}

/*==========================
	loopSlider　無限ループスライダー
==========================*/
.loopSliderWrap {
    top: 0;
    left: 0;
    height: 200px;
    overflow: hidden;
    position: absolute;
}

.loopSlider {
    margin: 0 auto;
    width: 100%;
    height: 200px;
    text-align: left;
    position: relative;
    overflow: hidden;
}

.loopSlider ul {
    height: 200px;
    float: left;
    overflow: hidden;
}

.loopSlider ul li {
    width: 300px;
    height: 200px;
    float: left;
    display: inline;
    overflow: hidden;
}

/*==========================
	　TOP コンテンツ
==========================*/

.top .mainblock a {
	text-decoration:none;
}
.top .mainblock a:hover {
}

/*-- 余白・背景 --------------*/
.sec01 {
  padding: 70px 0;
  background: url(img/sec01_bg01.jpg)no-repeat right 25% center / cover;
}
.sec02 {
  padding: 70px 0;
  background:url(img/sec02_bg.jpg)no-repeat center / cover;
  color:#fff;
}
.sec03 {
  padding: 70px 0;
}
.sec04 .title_box{
	padding:40px 0;
	background:url(img/sec04_title_bg.jpg)no-repeat center / cover;
}
.sec04 .topinner{
	padding:70px 0;
}
.sec04 .bg{
	padding: inherit;
	background:url(img/sec04_bg02.jpg)no-repeat center / cover;
	padding-top: 40px;
}

.sec05 {
  padding: 70px 0;
  background: url(img/sec05_bg.jpg)no-repeat center / cover;
}

.sec06 {
  padding: 70px 0;
  background:url(img/sec06_bg.jpg)no-repeat center / cover;
}


.sec07 {
  padding: 70px 0;
}


/*-- 見出し --------------*/
body.home #main h2{
  position: relative;
  font-size: 32px;
  color: #333;
  letter-spacing:2px;
  line-height:1.4em;
  margin-bottom: 1.5em;
  text-align: center;
}
body.home #main .subtext{
	display: inline-block;
	position:relative;
	font-size:18px;
	width:400px;
	max-width: 90%;
	margin:auto;
	letter-spacing:0;
}
body.home #main .subtext:before,
body.home #main .subtext:after{
	    content: "";
    display: block;
    position: absolute;
top:50%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
    margin:0 auto;
    width:60px;
    height:1px;
    border-top:1px solid #333;
}
body.home #main .subtext:before{
	left:0;
}
body.home #main .subtext:after{
	right:0;
}

body.home #main .sec02 h2{
	color:#fff;
}
body.home #main .sec02 .subtext:before,
body.home #main .sec02 .subtext:after{
	border-color:#fff;
}
body.home #main .sec03 h2{
	padding-bottom:0.8em;
}
body.home #main .sec03 h2:after{
	    content: "";
    display: block;
    position: absolute;
    bottom:0;
    left:0;
    right:0;
    margin:0 auto;
    width:200px;
    height:1px;
border-top:1px solid #333;
}

body.home #main .sec04 h2{
color:#fff;
margin-bottom:0;
}
body.home #main .sec04 .subtext:before,
body.home #main .sec04 .subtext:after{
	border-color:#fff;
}
.sec04 .con01 h3,
.sec04 .con02 h3,
.sec04 .con03 h3,
.sec04 .con04 h3{
	color:#fff;
	font-size:26px;
	border-bottom:1px solid #fff;
	padding-bottom:0.6em;
	margin-bottom:1em;
	line-height:1.6em;
}
.sec04 .con05 h3,
.sec04 .con06 h3,
.sec04 .con07 h3{
	font-size: 24px;
	border-bottom:1px solid #333;
	padding-bottom: 0.3em;
	margin-bottom: 0.6em;
	line-height:1.6em;
	text-align: center;
}
.sec04 .con07 h3{
	letter-spacing:-3px;
}

.sec05 h3{
	font-size:26px;
	margin-bottom:1em;
}
.sec05 h3 .step{
	background:#333;
	color:#fff;
	padding:0 0.4em;
	margin-right:1em;
}
body.home #main .sec06 h2{
	color:#fff;
}
body.home #main .sec06 .subtext:before,
body.home #main .sec06 .subtext:after{
	border-color:#fff;
}
body.home #main .sec07 h2:after{
	    content: "";
    display: block;
    position: absolute;
    bottom:0;
    left:0;
    right:0;
    margin:0 auto;
    width:200px;
    height:1px;
border-top:1px solid #333;
}
body.home #main .sec07 h2{
	padding-bottom:0.8em;
}
.sec07 h3{
	font-size:36px;
	line-height:1.2em;
	margin-bottom:1em;
}
.sec07 h3 .text-small{
	font-size:26px;
}
.sec07 h4{
	font-size:22px;
	border-bottom:1px solid #333;
	padding-bottom:0.5em;
	margin-bottom:1em;
}
/*-- ボックスその他 --------------*/

.sec01 .text_box{
	padding: 60px 4%;
	box-sizing: border-box;
	background:rgba(28,28,28,.1);
	width: 900px;
	max-width: 100%;
	margin: 0 auto 30px;
}
.sec01 .ul_check{
	width:380px;
	max-width:100%;
	margin:auto;
	font-weight:700;
}
.sec01 .black_box{
	background:#333;
	color:#fff;
	font-size:24px;
	text-align:center;
	display:table;
	margin:40px auto 0;
	padding:0.8em 2em;
	box-sizing:border-box;
}
.sec01 .text_box + p{
 font-size:22px;
 text-align:center;
 line-height:1.8em;
}

.sec03 .table_title{
	letter-spacing:2px;
	font-size:32px;
	line-height: 1.4em;
	text-align:center;
	display:table;
	margin: 1.5em auto;
	padding: 0.5em;
	border-top:1px solid #333;
	border-bottom:1px solid #333;
}
.sec03 .border-table th{
	width:37%;
}
.sec03 .border-table th:first-child{
	width:26%;
}
.sec03 .black_box{
	background:#333;
	color:#fff;
	font-size:30px;
	line-height:1.6em;
	text-align:center;
	margin:40px auto 0;
	padding:0.8em 2em;
	box-sizing:border-box;
}
  .sec04 .contents_box{
  	margin-top:60px;
  }
    .sec04 .columns .text_box {
  	position:relative;
  	color:#fff;
  }
   .sec04 .text_box:after{
    content: "";
    display: block;
    position: absolute;
    top:-43px;
    left:0;
    margin:0 auto;
    width:60px;
    height:45px;
    z-index:-2;
   }
      .sec04 .con01 .text_box:after{
    background:url(img/sec04_no01.png)no-repeat center / cover;
  }
     .sec04 .con02 .text_box:after{
    background:url(img/sec04_no02.png)no-repeat center / cover;
  }
     .sec04 .con03 .text_box:after{
    background:url(img/sec04_no03.png)no-repeat center / cover;
  }
     .sec04 .con04 .text_box:after{
    background:url(img/sec04_no04.png)no-repeat center / cover;
  }
   .sec04 .col3{
   	position:relative;
   }
    .sec04 .col3:after{
    content: "";
    display: block;
    position: absolute;
    top:-44px;
    left:10px;
    margin:0 auto;
    width:60px;
    height:45px;
   }
     .sec04 .con05.col3:after{
    background:url(img/sec04_no05.png)no-repeat center / cover;
  }
     .sec04 .con06.col3:after{
    background:url(img/sec04_no06.png)no-repeat center / cover;
  }
     .sec04 .con07.col3:after{
    background:url(img/sec04_no07.png)no-repeat center / cover;
  }
   .sec04 .line{
  	background:#fff;
  	padding:60px 30px;
  	box-sizing:border-box;
  	position:relative;
  }
  .sec04 .col3 .line:before,
  .sec04 .col3 .line:after{
    content: "";
    display: block;
    position: absolute;
    margin:0 auto;
    width:50px;
    height:50px;
  }
  .sec04 .col3 .line:before{
  	left:3%;
  	top:4%;
    background:url(img/sec04_bg03.png)no-repeat center / cover;
  }
    .sec04 .col3 .line:after{
    	right:3%;
    	bottom:4%;
    background:url(img/sec04_bg04.png)no-repeat center / cover;
  }
  .sec04 .text_box >*:last-child{
  	margin-bottom:0;
  }
.sec04 .col3 .btn-style a:after{
display:none;
}
  .sec04 .col3 .line >*:last-child{
  	margin-bottom:0;
  }
  .sec07 .font-large{
  	font-size:18px;
  	font-weight:700;
  	line-height:1.8em;
  }
  .sec07 .profile_box{
  	margin-top:40px;
width:500px;
max-width:100%;
  }
/********************************
	Responsive
*********************************/

@media screen and (min-width: 768px) {/* タブレットまで */

/*==========================
	mainimage
==========================*/
/* ファーストビューで見切れないようにする */
/* .slick-slide {
	min-height:520px;
    height:calc(100vh - 100px);
}
.slick-slide img{
    max-width:none;
    max-height:none;
    width:auto;
    height:auto;
    overflow:hidden;
    position:absolute;
    top:50%;
    left:50%;
-webkit-transform: translateY(-50%) translateX(-50%);
transform: translateY(-50%) translateX(-50%);
} */
/*-- 一枚画像の時 ------------*/

/*==========================
	　TOP コンテンツ
==========================*/
.sec02 p{
	text-align:center;
}
.sec03 h2 + p{
	text-align:center;
}

.sec04 .contents_box{
	min-height:430px;
}
 .sec04 .columns .img_box {
    max-width: 46%;
    -webkit-box-flex-basis: 46%;
    -webkit-flex-basis: 46%;
    flex-basis: 46%;
  }
   .sec04 .columns .text_box {
    max-width: 50%;
    -webkit-box-flex-basis: 50%;
    -webkit-flex-basis: 50%;
    flex-basis: 50%;
    margin-top:70px;
    padding:40px 0;
    box-sizing:border-box;
  }
  .sec04 .text_box:before{
  	content: "";
  	display: block;
  	position: absolute;
  	top: 0;
  	left:-200px;
  	width: 1240px;
  	min-height: 349px;
  	height:100%;
  	background:url(img/sec04_bg01.jpg)no-repeat center / cover;
  	z-index:-1;
  }
  .sec04 .columns.reverse .text_box:before{
  	left:auto;
  	right:-200px;
  }
  .sec04 .col3, .sec04 .col3 .line, .sec04 .col3 .line h3 + p{
  	display: -webkit-box;
  	display: -ms-flexbox;
  	display: flex;
  	flex: 1 0 auto; /* fix IE11 */
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}
.sec04 .col3 .btn-style a{
	height:44px;
}
.sec04 .con07 .btn-style a{
	font-size:15px;
	letter-spacing:-2px;
}
 .sec05 .columns .img_box {
    max-width: 36%;
    -webkit-box-flex-basis: 36%;
    -webkit-flex-basis: 36%;
    flex-basis: 36%;
  }
   .sec05 .columns .text_box {
    max-width: 60%;
    -webkit-box-flex-basis: 60%;
    -webkit-flex-basis: 60%;
    flex-basis: 60%;
   }
    .sec07 .columns .img_box {
    max-width: 28%;
    -webkit-box-flex-basis: 28%;
    -webkit-flex-basis: 28%;
    flex-basis: 28%;
  }
   .sec07 .columns .text_box {
    max-width: 68%;
    -webkit-box-flex-basis: 68%;
    -webkit-flex-basis: 68%;
    flex-basis: 68%;
   }
}

@media screen and (min-width: 768px)  and (max-width: 1280px) {/* 程よいブラウザサイズでメインイメージを縮小 */
/* ファーストビューで見切れないようにする */
/* .slick-slide {
	background:#f4f2ef;
	height:70vh;
}
.slick-slide img{
	height:100%;
} */
}
@media screen and (min-width: 768px)  and (max-width: 1041px) {
	.sec03 .black_box{
		font-size:26px;
	}
	.sec04 .con01 h3, .sec04 .con02 h3, .sec04 .con03 h3, .sec04 .con04 h3{
		font-size:24px;
	}
	.sec04 .col3 h3{
		font-size:22px;
		line-height:1em;
		height:2em;
		display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;

	}
	.sec04 .col3 .btn-style a,
	.sec04 .con07 .btn-style a{
		height:60px;
	}
	.sec05 h3{
		font-size:22px;
	}
	    .sec07 .columns .img_box {
    max-width:38%;
    -webkit-box-flex-basis: 48%;
    -webkit-flex-basis: 48%;
    flex-basis:38%;
  }
   .sec07 .columns .text_box {
    max-width: 58%;
    -webkit-box-flex-basis: 68%;
    -webkit-flex-basis: 68%;
    flex-basis: 58%;
   }
	.sec07 h3{
		font-size:26px;
	}
		.sec07 h3 .text-small{
		font-size:22px;
	}
}

@media screen and (max-width: 1041px) {/*コンテンツが横幅いっぱいになったら*/
	/* -------------------------------追加 */
	.sec_news .news dt {
	width: 100%;
	border-bottom: none;
	padding: 10px 0;
}
.sec_news .news dd {
	width: 100%;
	display: block;
	padding: 0 0 10px;
}
/* -------------------------------ここまで */
}

@media screen and (max-width: 767px) {/* スマホ */

.topinner {
	width:420px;
	margin:0 auto;
	box-sizing:border-box;
}

/*==========================
	　mainimage
==========================*/
.mainimage,
.slider { margin-bottom: 1em;}

/*==========================
	新着情報
==========================*/
#main .news {
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    position: relative;
}
#main .news .btn {
   right: 5px;
	 top: 10px;
  }
#main .news .btn a {
	font-size:12px;
}

/*==========================
	電話ボタン
==========================*/
#main > .telbtn {
	margin-bottom:1.2em;
}
.telbtn {
	text-align:center;
	margin-bottom:1em;
}
.telbtn a {
	background:#264d96;
	text-align:center;
	width:280px;
	max-width:100%;
	color:#fff;
	display:inline-block;
	padding:10px 5px 10px;
	text-decoration:none;
	font-size:24px;
	box-sizing:border-box;
	letter-spacing:0.08em;
	border-radius:4px;
	line-height:1.2em;
}
.telbtn a .subtxt {
	font-size:14px;
	display:block;
	margin-bottom:1px;
}
.telbtn a:hover {
	opacity: 0.7;
	-moz-opacity: 0.7;
	filter: alpha(opacity=70);
}

/*==========================
	loop
==========================*/

.loopSlider {    height: 100px;}
.loopSlider ul {    height: 100px;}
.loopSlider ul li {
    width: 150px;
    height: 100px;
}

/*==========================
	　TOP コンテンツ
==========================*/

/*-- 余白・背景 --------------*/
.sec01{
	padding: 3em 0;
	background:none;
	}
.sec02{
	padding: 3em 0;
	}
.sec03{
	padding: 3em 0;
	}
.sec04 .title_box{
	padding: 1.5em 0;
	}
	.sec04 .topinner{
		padding: 0 0 3em;
	}
	.sec04 .bg{
		padding-top:1em;
	}
.sec05{
	padding: 3em 0 2em;
	}
	.sec06{
	padding: 3em 0;
	}
	.sec07{
	padding: 3em 0;
	}
/*-- 見出し --------------*/
body.home #main h2{
	font-size: 26px;
}
body.home #main .subtext:before, body.home #main .subtext:after{
	width:30px;
}
body.home #main .sec04 h2{
	font-size:20px;
}
body.home #main .sec04 .subtext{
	font-size:16px;
}
.sec04 .con01 h3, .sec04 .con02 h3, .sec04 .con03 h3, .sec04 .con04 h3{
	font-size:20px
}
.sec05 h3{
	font-size: 20px;
}
.sec07 h3{
	font-size:22px;
}
.sec07 h3{
	font-size:22px;
}
.sec07 h3 .text-small{
	font-size:18px;
}
/*-- ボックスその他 --------------*/
.sec01 figure{
margin-bottom:30px;
}
.sec01 .text_box{
	padding:2em 4%;
}
.sec01 .ul_check li{
	margin-bottom:10px;
}
.sec01 .black_box{
	padding:1em 0.5em;
	font-size:22px;
	margin-top: 1em;
}
.sec01 .text_box + p{
	font-size:18px;
}
.sec03 .table_title{
	font-size:24px;
}
.sec03 table{
	font-size:14px;
}
.sec03 table th,
.sec03 table td{
	padding:10px 5px;
	line-height:1.4em;
	vertical-align:middle;
}
.sec03 .black_box{
padding:1em 0.5em;
	font-size:20px;
}
.sec04 .contents_box{
	margin-top:3em;
}
.sec04 .columns .text_box{
	margin-top:60px;
	background:url(img/sec04_bg01.jpg)no-repeat center / cover;
	padding:2em 4%;
}

.sec04 .col3{
	margin-top:80px;
}
.sec05 .text_box{
	margin-top:2em;
}
.sec06 .qa-block h3{
	padding:1em 50px 1em 1em;
	display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.sec06 .qa-block::before, .qa-block::after{
	right:1em;
	top:3em;
}
.sec07 figure{
	margin-bottom:2em;
}
}

@media screen and (max-width: 480px) {/* スマホ480px */
}

@media screen and (max-width: 320px) {/* スマホ320px */
}

/* ---------------------------------------------追加 */
/*==========================
	リンクボックス
==========================*/
.link_box {
  position: relative;
  transition: .3s;
}

.link_box:hover {
  opacity: .7;
}

.link_box a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.link_box a span.link {
  display: none;
}
@media ( max-width : 767px ) {
	.link_btn a {
		margin: 0 auto 10px;
		font-size: 14px !important;
	}

	.link_btn.btns a {
		display: block;
		width: 100%;
		max-width: 400px;
		margin: 0 auto 10px;
	}
}
/*==========================
画像位置
==========================*/
.mainimage img,
figure img {
		vertical-align: middle;
}
/*==========================
	　ボタン
==========================*/
/* -------------------------------追加 */
@media screen and (min-width: 768px) {
  .btn-style.left {
    text-align: left;
  }

  .btn-style.right {
    text-align: right;
  }
}
/* -------------------------------ここまで */
