@charset "utf-8";
/*------------メインスライド----------------*/
.main_slider {}
.main_slider {
  position: relative; /* ← swiper.cssに含まれています */
}
.main_slider:before {
  content: "";
  display: block;
  padding-top: calc(754/1920*100%); /* 縦/横*100の値を書く */
}
@media screen and (max-width: 767px) {
.main_slider:before {
  padding-top: calc(755/1080*100%); /* 縦/横*100の値を書く */
}
}
.main_slider .swiper-wrapper {
  position: absolute; /* ← swiper.cssと優先順位が干渉するときは工夫してください */
  top: 0;
  left: 0;
}
.main_slider .swiper-wrapper img {
  width: 100%;
  height: auto;
}
/*-----------------------------------*/

.bg_news{
	background: #F0EAD6;
}
@media screen and (max-width: 767px) {
	
}
.news_box > .left_area{
	float: left;
	width: 20%;
	text-align: center;
}
@media screen and (max-width : 760px) {
.news_box > .left_area{
	float: none;
	width: 100%;
	text-align: center;
}
	.news_box > .left_area .f_36{
		font-size: 2.4rem !important;
	}
	.news_box > .left_area figure{
		width: 60px;
		margin: 0 auto;
	}
}
.news_box > .right_area{
	float: right;
	width: 80%;
}
@media screen and (max-width : 760px) {
	.news_box > .right_area{
	float: none;
	width: 100%;
}
}

.scrollBox01 {
  overflow: auto;
}
@media screen and (max-width: 767px) {
  .scrollBox01 {
    overflow: auto;
  }
}
.blog_area_top_01 {
  background-color: #fff;
  border: 1px solid #bbbbbb;
  padding: 15px;
  max-height: 240px;
  margin-bottom: 0px;
}
@media screen and (max-width: 767px) {
  .blog_area_top_01 {
    max-height: 200px;
    margin-bottom: 20px;
    padding: 15px;
  }
}
.blog_area_top_02 {
  background: #fff;
  padding: 40px;
  max-height: 250px;
	border-radius: 20px;
}
@media screen and (max-width: 767px) {
  .blog_area_top_02 {
    max-height: 200px;
    padding: 15px;
  }
}
.bg_top01 {
	position: relative;
}
.bg_top01::before{
	content: "";
	background: url("../img/top/img_05.jpg") left top no-repeat;
	width: 50%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
}


@media screen and (max-width: 767px) {
	.bg_top01::before{
	content: none;
}

}
.bg_top_white {
  background: rgba(255, 255, 255, 0.8);
  padding: 30px;
}

@media screen and (max-width: 767px) {
  .bg_top_white {
    padding: 15px;
  }
}
/*slider css　トップスライダー
-------------------------------------*/
.wideslider_outer {
  position: relative;
  min-height: 370px;
}
.wideslider {
  width: 100%;
  text-align: left;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width : 767px) {
  .wideslider_outer {
    position: relative;
    min-height: auto;
  }
  .wideslider_outer .slide_txt {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    padding: 20px;
    margin: 0;
  }
}
.wideslider ul, .wideslider ul li {
  float: left;
  display: inline;
  overflow: hidden;
}
.wideslider ul li img {
  width: 100%;
  display: none;
}
.wideslider_base {
  top: 0;
  position: absolute;
}
.wideslider_wrap {
  top: 0;
  position: absolute;
  overflow: hidden;
}
.slider_prev, .slider_next {
  top: 0;
  overflow: hidden;
  position: absolute;
  z-index: 100;
  cursor: pointer;
}
.slider_prev {
  background: #fff url(../img/top/arrow_l.png) no-repeat 95% center;
}
.slider_next {
  background: #fff url(../img/top/arrow_r.png) no-repeat 5% center;
}
/* =======================================
    ClearFixElements
======================================= */
.wideslider ul:after {
  content: ".";
  height: 0;
  clear: both;
  display: block;
  visibility: hidden;
}
.wideslider ul {
  display: inline-block;
  overflow: hidden;
}
.topslider_outer {
  position: relative;
}
/*bxslider css
-------------------------------------*/
/*bxslider css
-------------------------------------*/
.topslider_outer {
  position: relative;
}
.slide figure img {
  border: 1px solid #000;
  overflow: hidden;
  padding: 5px;
  background-color: #fff;
  margin-bottom: 15px;
}
/**/
.fb_iframe_widget, .fb_iframe_widget span, .fb_iframe_widget iframe[style] {
  width: 100% !important;
}


/*---------------------------------*/
.bg_01{
	background: url("../img/top/bg_nami_01.jpg") center top no-repeat, url("../img/top/bg_nami_02.jpg") center bottom no-repeat, url("../img/top/bg_01.jpg") center top repeat;
}
@media screen and (max-width: 767px) {
.bg_01{
	background-size: contain;
}
}
.bg_01_01{
	background: url("../img/top/bg_img01.png") top right no-repeat,url("../img/top/bg_img06.png") bottom left no-repeat;
}
@media screen and (max-width: 767px) {
.bg_01_01{
	background: url("../img/top/bg_img01.png") top right no-repeat,url("../img/top/bg_img06.png") bottom left no-repeat;
	background-size: 100px,100px;
}
	
}
.col_25 > li{
	float: left;
	width: 25%;
	box-sizing: border-box;
}
@media screen and (max-width: 767px) {
.col_25 > li{
	width: 50%;
	padding: 8px;
	box-sizing: border-box;
}
	
}
.col_25 > li:nth-child(2n){
	margin-top: 100px;
}
@media screen and (max-width: 767px) {
.col_25 > li:nth-child(2n){
	margin-top: 0;
}	
}
.point img{
	position: absolute;
	bottom: -15px;
	left:0;
	right: 0;
	margin: 0 auto;
}
.lh_1_2{
	line-height: 1.2;
}
.works_box{
	 display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	 flex-wrap: wrap; 
	justify-content: center;  
}

.works_box > li{
	margin:10px;
}
@media screen and (max-width: 767px) {
.works_box > li{
	margin:2px;
}
}
.works_box > li a{
	display: block;
	text-align: center;
	border-radius: 50%;
		width: 304px;
height: 304px;
	box-sizing: border-box;
	padding:60px 30px;
	color: #fff;
}


@media screen and (max-width: 767px) {
	.works_box > li a{
	border-radius:10px;
		width: 100%;
height: auto;
	padding:10px;
}
}
.works_box > li:nth-child(1) a{
	background: #000066;
}
.works_box > li:nth-child(2) a{
	background: #00528B;
}
.works_box > li:nth-child(3) a{
	background: #B8BD38;
}
.works_box > li:nth-child(4) a{
	background: #FF8E48;
}
.works_box > li:nth-child(5) a{
	background: #EF8A8E;
}
@media screen and (max-width: 767px) {
		.works_box > li a img{
			height: 50px;
	}
		.works_box > li a p{
			font-size: 1.2rem;
	}
	.works_box > li a .f_24{
			font-size: 1.8rem !important;
	}
}


.bg_02{
	position: relative;
	padding: 0 0 100px;
}
@media screen and (max-width : 767px) {
.bg_02{
	padding: 40px 15px 35px;
}
}
.bg_02::before{
	content: "";
	background: url("../img/top/bg_nami04.png") center top no-repeat;
	width: 100%;
	height: 150px;
	position: absolute;
	top: -150px;
	left: 0;
	right: 0;
	z-index: 1;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
.bg_02::before{
	background-size: contain;
	height: 50px;
	top: -28px;
}
	
}
.bg_03{
	background: url("../img/top/bg_nami_03.jpg") center bottom no-repeat,url("../img/top/bg_01.jpg") center top repeat;
	position: relative;
}
@media screen and (max-width : 767px) {
.bg_03{
	background-size: contain;
	}
}

.posi_01{
	position: absolute;
	top: 20px;
	left: 100px;
}
@media screen and (max-width : 760px) {
.posi_01{
	width: 50px;
	top: -20px;
	left:10px;
}
	
}
.posi_02{
	position: absolute;
	top: -40px;
	right: 50px;
}
@media screen and (max-width : 760px) {
.posi_02{
	width: 110px;
	top: -20px;
	right: 5px;
}
}
.posi_03{
	position: absolute;
	top: -40px;
	left: 0px;
}
@media screen and (max-width: 767px) {
.posi_03{
	width: 60px;
	top: -10px;
	left: 10px;
}
}
.list_service{
	 display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
	 flex-wrap: nowrap; 
	justify-content: space-around;  

}
@media screen and (max-width : 760px) {
	.list_service{
	 flex-wrap: wrap; 
	justify-content: center;  

}
}
.list_service > li{
	border: #000066 2px solid;
	border-radius: 50px;
	padding: 10px 30px;
	box-sizing: border-box;
	font-size: 1.6rem;
	font-weight: bold;
	display: block;
}
@media screen and (max-width : 760px) {
	.list_service > li{
	border: #000066 1px solid;
	padding: 5px;
	font-size: 1.2rem;
		margin:5px 2px;
}
}
