@charset "UTF-8";
/*--------------------------------------
　MV
---------------------------------------*/
.top .mv {
  width: 100%;
	position: relative;
}
.top .mv_inner {
  width: 100%;
}
.top .mv .mv_txt {
  position: absolute;
  color: #fff;
  bottom: 70px;
  left: 70px;
}
.top .mv .mv_txt h2 {
	font-size: 46px;
  line-height: 1.3em;
  margin: 0 0 50px;
}
.top .mv .mv_txt p {
	font-size: 18px;
}

@media screen and (max-width: 768px) {
.top .mv .mv_txt {
  bottom: 40px;
  left: 30px;
}
.top .mv .mv_txt h2 {
	font-size: 7.8vw;
  line-height: 1.3em;
  margin: 0 0 30px;
}
.top .mv .mv_txt p {
	font-size: 12px;
}
}


/*--------------------------------------
　ttl_box
---------------------------------------*/

/*----- ttl_box01 -----*/
.top .ttl_box01 {
  display: flex;
  align-items: flex-end;
}
.top .ttl_box01.blue h3 {
  color: #545F79;
}
.top .ttl_box01.white h3,
.top .ttl_box01.white p {
  color: #fff;
}
.top .ttl_box01 h3 {
	font-size: 38px;
  font-family: "Open Sans", sans-serif;
	margin: 0 25px 0 0;
}
.top .ttl_box01 p {
	font-size: 16px;
  margin: 0 0 3px;
}

/*----- ttl_box02 -----*/
.top .ttl_box02 p {
	font-size: 16px;
	margin: 0 0 20px;
}
.top .ttl_box02 h3 {
	color: #545F79;
	font-size: 32px;
	font-family: "Shippori Mincho", serif;
	line-height: 1.5em;
}

@media screen and (max-width: 768px) {
	
/*----- ttl_box01 -----*/
.top .ttl_box01 {
  display: flex;
  align-items: flex-end;
}
.top .ttl_box01 h3 {
	font-size: 32px;
	margin: 0 15px 0 0;
}
.top .ttl_box01 p {
	font-size: 14px;
  margin: 0 0 3px;
}

/*----- ttl_box02 -----*/
.top .ttl_box02 p {
	font-size: 14px;
	margin: 0 0 15px;
}
.top .ttl_box02 h3 {
	font-size: 24px;
	line-height: 1.5em;
}
}


/*--------------------------------------
　btn
---------------------------------------*/

/*----- btn01 -----*/
/*.top .btn01.m_auto a {
	margin: auto;
}*/

.top .btn01.b_right {
  text-align: right;
}
.top .btn01 a {
	width: 240px;
	font-size: 16px;
  text-align: left;
	padding: 0 0 15px;
	box-sizing: border-box;
	position: relative;
	display: inline-block;
}
.top .btn01.blue a {
  color: #545F79;
}
.top .btn01.white a {
  color: #fff;
}
.top .btn01 a::before,
.top .btn01 a::after {
  content: "";
	display: block;
	position: absolute;
}
.top .btn01 a::before {
	width: 100%;
	height: 1px;
	bottom: 0;
	right: 0;
}
.top .btn01.blue a::before {
  background: #545F79;
}
.top .btn01.white a::before {
  background: #fff;
}
.top .btn01 a::after {
	width: 20px;
	height: 20px;
	top: 0;
	right: 0;
}
.top .btn01.blue a::after {
	background: url("../images/arrow_01.png") center center no-repeat;
  background-size: 100% auto;
}
.top .btn01.white a::after {
	background: url("../images/arrow_02.png") center center no-repeat;
  background-size: 100% auto;
}

@media screen and (max-width: 768px) {
	
/*----- btn01 -----*/
.top .btn01.m_auto {
  text-align: center;
}  
.top .btn01.b_right {
  text-align: center;
}  
.top .btn01 a {
	width: 70%;
	font-size: 14px;
	padding: 0 0 10px;
}
.top .sec05 .left .btn01 a {
	width: 150px;
}  
.top .btn01 a::after {
	width: 16px;
	height: 16px;
}
}


/*--------------------------------------
　btn_box01
---------------------------------------*/
.top .btn_box01 {
  display: flex;
  justify-content: flex-end;
}
.top .btn_box01 .btn01 {
  margin: 0 0 0 60px;
}

@media screen and (max-width: 768px) {
.top .btn_box01 {
  display: block;
}
.top .btn_box01 .btn01 {
  text-align: center;
  margin: 0 auto 30px;
}  
}


/*--------------------------------------
　map
---------------------------------------*/
/*.contents_top .map {
	width: 100%;
}
.contents_top .map .map_block {
	position: relative;
	width: 100%;
	height: 0;
	margin: auto;
	padding-top: 35%;
}
.contents_top .map iframe {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 768px) {
  .contents_top .map .map_block {
    padding-top: 50%;
  }
}*/


/*--------------------------------------
　sns_box
---------------------------------------*/
.top .sns_box ul {
  display: flex;
}
.top .sns_box li a {
  width: 50px;
  margin: 0 10px 0 0;
}
.top .sns_box li img {
  border-radius: 5px;
}

@media screen and (max-width: 768px) {
.top .sns_box li a {
  width: 45px;
  margin: 0 10px 0 0;
}
.top .sns_box li img {
  border-radius: 5px;
}  
}


/*--------------------------------------
　top_news
---------------------------------------*/
.top .top_news {
  padding: 70px 0;
  box-sizing: border-box;
}
.top .top_news .main_area {
  display: flex;
  margin: 0 0 45px;
}
.top .top_news .ttl_area {
	width: 30%;
}
.top .top_news .news_area {
	width: 70%;
}

/* news_list */
.top .top_news .news_block .news_list li {
	width: 100%;
	padding: 20px 0;
	box-sizing: border-box;
}
.top .top_news .news_block .news_list li:first-child {
  padding: 0 0 20px 0;
}
.top .top_news .news_block .news_list li .txt_area {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.top .top_news .news_block .news_list .deta_box {
  width: 28%;
	display: flex;
	align-items: center;
}
.top .top_news .news_block .news_list .deta_box .day {
  width: 50%;
  color: #B3B3B3;
  font-size: 16px;
	font-family: "Open Sans", sans-serif;
}
.top .top_news .news_block .news_list .cate {
  width: 50%;
}
.top .top_news .news_block .news_list .cate span {
  width: 100%;
	color: #545F79;
	font-size: 16px;
  border-left: 1px solid #D6D6D6;
  border-right: 1px solid #D6D6D6;
	text-align: center;
  box-sizing: border-box;
  display: inline-block;
}
.top .top_news .news_block .news_list .news_ttl {
  width: 72%;
  font-size: 16px;
	text-align: justify;
	line-height: 1.5em;
  padding: 0 0 0 30px;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
.top .top_news {
  padding: 60px 0;
}
.top .top_news .main_area {
  display: block;
  margin: 0 0 40px;
}
.top .top_news .ttl_area {
	width: 100%;
  margin: 0 0 35px;
}
.top .top_news .news_area {
	width: 100%;
}

/* news_list */
.top .top_news .news_block .news_list li {
  border-bottom: 1px solid #D6D6D6;
	padding: 20px 0;
}
.top .top_news .news_block .news_list li:first-child {
  padding: 0 0 20px 0;
}
.top .top_news .news_block .news_list li .txt_area {
	display: block;
}
.top .top_news .news_block .news_list .deta_box {
  width: 100%;
  margin: 0 0 10px;
}
.top .top_news .news_block .news_list .deta_box .day {
  width: 90px;
  font-size: 14px;
}
.top .top_news .news_block .news_list .cate {
  width: 100px;
}
.top .top_news .news_block .news_list .cate span {
  width: 100%;
	font-size: 14px;
  border-right: none;
  text-align: left;
  padding: 0 0 0 20px;
  box-sizing: border-box;
}
.top .top_news .news_block .news_list .news_ttl {
  width: 100%;
  font-size: 15px;
	line-height: 1.5em;
  padding: 0 0 0 0;
}  
}


/*--------------------------------------
　sec01
---------------------------------------*/
.top .sec01 .block_area_bg {
	width: 100%;
	background: #E9E5E2;
}
.top .sec01 .block_area .block {
	width: 33.333%;
  padding: 60px 0;
  box-sizing: border-box;
}
.top .sec01 .block_area .block:nth-child(2) {
  border-left: 1px solid #F5F5F5;
  border-right: 1px solid #F5F5F5;
  box-sizing: border-box;
}
.top .sec01 .block_area .block h3 {
  font-size: 22px;
  font-family: "Shippori Mincho", serif;
  text-align: center;
  margin: 0 0 30px;
}
.top .sec01 .sec01_img {
  width: 100%;
  height: 430px;
  background: url("../images/sec01_01.jpg") center center no-repeat;
  background-size: cover;
}
.top .sec01 .sec01_txt {
  width: 100%;
  padding: 0 20px;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
.top .sec01 .block_area .block {
	width: 100%;
  padding: 40px 0 0;
}
.top .sec01 .block_area .block:nth-child(2) {
  border-left: none;
  border-right: none;
}
.top .sec01 .block_area .block h3 {
  font-size: 20px;
  margin: 0 0 30px;
}
.top .sec01 .block_img {
  width: calc(100% + 40px);
  margin: 40px 20px 0 -20px;
}
.top .sec01 .sec01_txt {
  width: 70%;
  padding: 0 0;
}
}


/*--------------------------------------
　sec02
---------------------------------------*/
.top .sec02 {
	padding: 180px 0 180px;
	box-sizing: border-box;
  overflow: hidden;
}
.top .sec02 .left {
	width: 35%;
}
.top .sec02 .left .ttl_box02 {
	margin: 0 0 30px;
}
.top .sec02 .left .txt_box p {
  margin: 0 0 40px;
}

/*----- top_medical_slider -----*/
.top .sec02 .right {
	width: 65%;
  padding: 0 0 0 10%;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
.top .sec02 {
	padding: 60px 0 60px;
}
.top .sec02 .left {
	width: 100%;
}
.top .sec02 .left .ttl_box02 {
	margin: 0 0 20px;
}
.top .sec02 .left .txt_box p {
  margin: 0 0 40px;
}
  
/*----- top_medical_slider -----*/
.top .sec02 .right {
	width: 100%;
  margin: 0 0 50px;
  padding: 0 0 0 0;
}
}


/*--------------------------------------
　top_medical_slider
---------------------------------------*/
button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.top_medical_slider .slick-slide {
  padding: 0 20px 0 20px; /* カード間の余白 */
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
.top_medical_slider {
  padding: 0 0 20px;
}  
.top_medical_slider .slick-slide {
  padding: 0 10px 0 10px; /* カード間の余白 */
}
}


/*--------------------------------------
　sec03
---------------------------------------*/
.top .sec03 {
  border-top: 1px solid #D6D6D6;
	padding: 100px 0 80px;
	box-sizing: border-box;
}
.top .sec03 .ttl_area {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin: 0 0 50px;
}
.top .sec03 h3 {
  font-size: 28px;
  font-family: "Shippori Mincho", serif;
  line-height: 1.5em;
}

/*----- block -----*/
.top .sec03 .block {
  width: calc(50% - 20px);
  margin: 0 0 40px;
}
.top .sec03 .block a {
	border-radius: 5px;
	background: #F5F5F5;
  border: 1px solid #D6D6D6;
	padding: 20px 20px;
	box-sizing: border-box;
	position: relative;
	display: block;
}
.top .sec03 .block a::before {
  content: "";
	display: block;
	position: absolute;
	width: 20px;
	height: 20px;
	background: url("../images/arrow_01.png") center center no-repeat;
  background-size: 100% auto;
	bottom: 10px;
	right: 10px;
}
.top .sec03 .block a {
	display: flex;
} 
.top .sec03 .block .img_box {
	width: 130px;
  margin: 0 20px 0 0;
}
.top .sec03 .block .img_box img {
	border-radius: 5px;
}
.top .sec03 .block .txt_box {
	display: table;
}
.top .sec03 .block .txt_box_inner {
	display: table-cell;
	vertical-align: middle;
}
.top .sec03 .block .txt_box h4 {
	font-size: 22px;
  font-family: "Shippori Mincho", serif;
  margin: 0 0 15px;
}
.top .sec03 .block .txt_box ul li {
  color: #545F79;
	font-size: 15px;
  text-align: justify;
  line-height: 1.3em;
  margin: 0 0 8px;
  padding: 0 0 0 13px;
  box-sizing: border-box;
  position: relative;
}
.top .sec03 .block .txt_box ul li:last-child {
  margin: 0 0 0;
}
.top .sec03 .block .txt_box ul li::before {
  content: "";
  display: block;
  position: absolute;
  width: 4px;
  height: 4px;
  background: #545F79;
  border-radius: 100px;
  top: 8px;
  left: 0;
}

@media screen and (max-width: 768px) {
.top .sec03 {
	padding: 60px 0 60px;
}
.top .sec03 .ttl_area {
  display: block;
  margin: 0 0 40px;
}
.top .sec03 h3 {
  font-size: 20px;
  text-align: center;
  line-height: 1.5em;
}

/*----- block -----*/
.top .sec03 .block {
  width: 100%;
  margin: 0 0 20px;
}
.top .sec03 .block:last-child {
  margin: 0 0 50px;
}  
.top .sec03 .block a {
	padding: 20px 20px;
}
.top .sec03 .block a::before {
	display: none;
}
.top .sec03 .block a {
	display: block;
} 
.top .sec03 .block .img_box {
	width: 100%;
  margin: 0 0 15px 0;
  display: flex;
  align-items: center;
}
.top .sec03 .block .img_box img {
  width: 28%;
	border-radius: 5px;
}
.top .sec03 .block .img_box h4 {
	font-size: 18px;
  font-family: "Shippori Mincho", serif;
  line-height: 1.3em;
  margin: 0 0 0 15px;
  padding: 0 15px 0 0;
  box-sizing: border-box;
  position: relative;
}  
.top .sec03 .block .img_box h4::before {
  content: "";
	display: block;
	position: absolute;
	width: 16px;
	height: 16px;
	background: url("../images/arrow_01.png") center center no-repeat;
  background-size: 100% auto;
	top: 50%;
	left: 100%;
  transform: translate(0,-40%);
}
.top .sec03 .block .txt_box ul li {
	font-size: 14px;
  line-height: 1.3em;
  margin: 0 0 8px;
  padding: 0 0 0 10px;
}
.top .sec03 .block .txt_box ul li::before {
  width: 3px;
  height: 3px;
  top: 8px;
  left: 0;
}  
}


/*--------------------------------------
　sec04
---------------------------------------*/
.top .sec04 {
  background: #545F79;
	padding: 100px 0 100px;
	box-sizing: border-box;
}
.top .sec04 .ttl_box01 {
  margin: 0 0 40px;
}

/* news_list */
.top .sec04 .case_area {
  margin: 0 0 90px;
}
.top .sec04 .news_block .news_list {
	display: flex;
}
.top .sec04 .news_block .news_list li {
	width: 22.5%;
  margin: 0 3.333% 0 0;
}
.top .sec04 .news_block .news_list li:last-child {
  margin: 0 0 0 0;
}
.top .sec04 .news_block .news_list .img_box {
  margin: 0 0 20px;
}
.top .sec04 .news_block .news_list .img_box img {
  height: 150px;
  border-radius: 5px;
  box-shadow: 0 0 10px rgba(0,0,0,0.10);
  object-fit: cover;
}
.top .sec04 .news_block .news_list .news_ttl {
  color: #fff;
  font-size: 17px;
  border-bottom: 1px solid #878FA1;
	text-align: justify;
	line-height: 1.5em;
  margin: 0 0 15px;
  padding: 0 0 10px;
  box-sizing: border-box;
}
.top .sec04 .news_block .news_list .cate_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}
.top .sec04 .news_block .news_list .cate span {
	color: #fff;
	font-size: 13px;
}
.top .sec04 .news_block .news_list .tag {
  display: flex;
}
.top .sec04 .news_block .news_list .tag span {
	color: #fff;
	font-size: 13px;
  margin: 0 0 0 15px;
}

@media screen and (max-width: 768px) {
.top .sec04 {
	padding: 60px 0 60px;
}
.top .sec04 .ttl_box01 {
  margin: 0 0 30px;
}

/* news_list */ 
.top .sec04 .case_area {
  margin: 0 0 50px;
}
.top .sec04 .news_block .news_list {
	display: block;
}
.top .sec04 .news_block .news_list li {
	width: inherit;
  margin: 0 0 0 0;
}  
.top .sec04 .news_block .news_list .img_box {
  margin: 0 0 20px;
}
.top .sec04 .news_block .news_list .img_box img {
  height: 200px;
}
.top .sec04 .news_block .news_list .news_ttl {
  font-size: 15px;
	line-height: 1.5em;
  margin: 0 0 15px;
  padding: 0 0 8px;
}
.top .sec04 .news_block .news_list .cate span {
	font-size: 11px;
}
.top .sec04 .news_block .news_list .tag span {
	font-size: 11px;
  margin: 0 0 0 10px;
}
}


/*--------------------------------------
　case_slider
---------------------------------------*/
@media screen and (max-width: 768px) {
.case_slider .slick-slide {
  /*margin-right: 10px;*/
  padding: 0 20px 0 10px; /* カード間の余白 */
}
.case_slider .slick-list {
  width: calc(100% + 30px);
  margin: 0 20px 0 -10px;
  padding: 0 20% 0 0!important;
}
.case_slider .slick-list img {
  width: 100%;
}  
}


/*--------------------------------------
　sec05
---------------------------------------*/
.top .sec05 {
  overflow: hidden;
}
.top .sec05 .left,
.top .sec05 .right {
  width: 50%;
  position: relative;
}
.top .sec05 .left::before,
.top .sec05 .right::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
}
.top .sec05 .left::before {
  background: #F5F5F5;
  top: 0;
  right: 100%;
}
.top .sec05 .right::before {
  background: #E9E5E2;
  top: 0;
  left: 100%;
}
.top .sec05 .left {
  background: #F5F5F5;
  padding: 80px 60px 80px 0;
  box-sizing: border-box;
}
.top .sec05 .right {
  background: #E9E5E2;
  padding: 80px 0 80px 60px;
  box-sizing: border-box;
}

/*----- left -----*/
.top .sec05 .left .ttl_box01 {
  margin: 0 0 70px;
}

/* schedule */
.top .sec05 .schedule table {
	width: 100%;
	margin: 0 0 30px;
	box-sizing: border-box;
}
.top .sec05 .schedule tr {
	width: 100%;
	box-sizing: border-box;
}
.top .sec05 .schedule thead th {
	width: 9.666%;
	font-size: 14px;
	text-align: center;
	padding: 0 0 15px;
	box-sizing: border-box;
}
.top .sec05 .schedule thead th:first-child {
	width: 22%;
}
.top .sec05 .schedule thead th:last-child {
	width: 20%;
}
.top .sec05 .schedule tbody tr {
	border-bottom: 1px solid #D1D1D1;
	box-sizing: border-box
}
.top .sec05 .schedule tbody tr:first-child {
	border-top: 1px solid #D1D1D1;
}
.top .sec05 .schedule tbody th {
	font-size: 14px;
	text-align: center;
}
.top .sec05 .schedule tbody td {
	color: #D6D6D6;
	font-size: 14px;
	text-align: center;
	padding: 18px 0;
	box-sizing: border-box
}
.top .sec05 .schedule tbody td:last-child {
  color: #2C2C2C;
}
.top .sec05 .schedule tbody tr:nth-child(2) td {
  color: #545F79;
}
.top .sec05 .schedule tbody tr:nth-child(2) td:last-child {
   color: #2C2C2C;
  line-height: 1.3em;
}
.top .sec05 .schedule tbody td img {
  width: 70%;
}
.top .sec05 .info {
  margin: 0 0 45px;
}
.top .sec05 .info p {
	color: #545F79;
  font-size: 12px;
}
.top .sec05 .btn_area {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

/*----- right -----*/
.top .sec05 .right .block {
  margin: 0 0 35px;
}
.top .sec05 .right .block:last-child {
  margin: 0 0 0;
}
.top .sec05 .right .block h4 {
  color: #545F79;
  font-size: 22px;
  font-family: "Shippori Mincho", serif;
  background: #F5F5F5;
  border-radius: 3px;
  margin: 0 0 20px;
  padding: 15px;
  box-sizing: border-box;
}
.top .sec05 .right .block:first-child p {
  margin: 0 0 10px;
}
.top .sec05 .right .block:last-child p {
  margin: 0 0 25px;
}
.top .sec05 .right .block p span {
  font-size: 12px;
}
.top .sec05 .right .block ul li {
  text-align: justify;
  line-height: 1.5em;
  margin: 0 0 8px;
  padding: 0 0 0 13px;
  box-sizing: border-box;
  position: relative;
}
.top .sec05 .right .block ul li:last-child {
  margin: 0 0 0;
}
.top .sec05 .right .block ul li::before {
  content: "";
  display: block;
  position: absolute;
  width: 4px;
  height: 4px;
  background: #2C2C2C;
  border-radius: 100px;
  top: 8px;
  left: 0;
}
.top .sec05 .right .tel_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.top .sec05 .right .tel_box .tel a {
  color: #545F79;
  font-size: 36px;
  font-family: "Open Sans", sans-serif;
}

@media screen and (max-width: 768px) {
.top .sec05 .left,
.top .sec05 .right {
  width: calc(100% + 40px);
  margin: 0 20px 0 -20px;
  position: inherit;
}
.top .sec05 .left::before,
.top .sec05 .right::before {
  content: "";
  display: none;
  position: inherit;
  width: inherit;
  height: inherit;
}
.top .sec05 .left::before {
  background: none;
  top: inherit;
  right: inherit;
}
.top .sec05 .right::before {
  background: none;
  top: inherit;
  left: inherit;
}
.top .sec05 .left {
  padding: 60px 20px 60px 20px;
}
.top .sec05 .right {
  padding: 60px 20px 60px 20px;
}

/*----- left -----*/
.top .sec05 .left .ttl_box01 {
  margin: 0 0 50px;
}

/* schedule */
.top .sec05 .schedule table {
	margin: 0 0 20px;
}
.top .sec05 .schedule thead th {
	width: 9%;
	font-size: 3vw;
	padding: 0 0 15px;
}
.top .sec05 .schedule thead th:first-child {
	width: 22%;
}
.top .sec05 .schedule thead th:last-child {
	width: 24%;
}
.top .sec05 .schedule tbody th {
	font-size: 3vw;
	text-align: left;
}
.top .sec05 .schedule tbody td {
	font-size: 3vw;
	text-align: center;
	padding: 15px 0;
}
.top .sec05 .schedule tbody td img {
  width: 50%;
}
.top .sec05 .info {
  margin: 0 0 35px;
}
.top .sec05 .info p {
  font-size: 10px;
}

/*----- right -----*/
.top .sec05 .right .block {
  margin: 0 0 40px;
}
.top .sec05 .right .block h4 {
  font-size: 18px;
  margin: 0 0 15px;
  padding: 13px;
}
.top .sec05 .right .block:first-child p {
  margin: 0 0 25px;
}
.top .sec05 .right .block:last-child p {
  margin: 0 0 25px;
}
.top .sec05 .right .block p span {
  font-size: 10px;
}
.top .sec05 .right .block ul li {
  margin: 0 0 7px;
  padding: 0 0 0 10px;
}
.top .sec05 .right .block ul li::before {
  width: 3px;
  height: 3px;
  top: 8px;
  left: 0;
}
.top .sec05 .right .tel_box {
  display: block;
  text-align: center;
}
.top .sec05 .right .tel_box .tel a {
  font-size: 32px;
  margin: 0 0 30px;
}
}


/*--------------------------------------
　sec06
---------------------------------------*/
.top .sec06 {
  padding: 120px 0 0;
	box-sizing: border-box;
}

/*----- block -----*/
.top .sec06 .contents01,
.top .sec06 .contents02 {
  position: relative;
}
.top .sec06 .contents .img_box {
  width: 60%;
  height: 550px;
}
.top .sec06 .contents01 .img_box {
  background: url("../images/sec06_01.jpg") center top no-repeat;
  background-size: cover;
  border-radius: 10px 0 0 10px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
}
.top .sec06 .contents02 .img_box {
  background: url("../images/sec06_02.jpg") center top no-repeat;
  background-size: cover;
  border-radius: 0 10px 10px 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}
.top .sec06 .contents01 .inner {
  position: relative;
}
.top .sec06 .contents01 .inner .img_txt {
  position: absolute;
  width: 70%;
  top: 0;
  left: 0;
  transform: translate(0,-50%);
}
.top .sec06 .contents01 {
  margin: 0 0 75px;
}
.top .sec06 .contents .txt_area {
  width: 61%;
  padding: 290px 0 0;
  z-index: 10;
  position: relative;
}
.top .sec06 .contents02 .txt_area {
  margin: 0 0 0 39%;
}
.top .sec06 .contents .txt_box {
  background: #fff;
}
.top .sec06 .contents01 .txt_box {
  border-radius: 0 10px 10px 0;
  padding: 40px 50px 40px 0;
  box-sizing: border-box;
}
.top .sec06 .contents02 .txt_box {
  border-radius: 10px 0 0 10px;
  padding: 40px 0 40px 50px;
  box-sizing: border-box;
}
.top .sec06 .contents .txt_box p {
  margin: 0 0 40px;
}

@media screen and (max-width: 768px) {
.top .sec06 {
  padding: 0 0 0;
}
.top .sec06 .img_txt {
  width: 80%;
  margin: 0 0 50px;
  padding: 0 0 0 20px;
  box-sizing: border-box;
}  

/*----- block -----*/
.top .sec06 .contents01,
.top .sec06 .contents02 {
  position: inherit;
}
.top .sec06 .contents .img_box {
  width: 100%;
  height: auto;
}
.top .sec06 .contents01 .img_box {
  background: none;
  background-size: cover;
  border-radius: 10px 0 0 10px;
  position: inherit;
  top: inherit;
  right: inherit;
  z-index: 0;
  width: calc(100% + 20px);
  margin: 20px -20px 30px 0;
}
.top .sec06 .contents02 .img_box {
  background: none;
  background-size: cover;
  border-radius: 0 10px 10px 0;
  position: inherit;
  top: inherit;
  left: inherit;
  z-index: 0;
  width: calc(100% + 20px);
  margin: 20px 0 30px -20px;
}
.top .sec06 .contents01 .img_box img{
  border-radius: 10px 0 0 10px;
}
.top .sec06 .contents02 .img_box img{
  border-radius: 0 10px 10px 0;
}
.top .sec06 .contents01 {
  margin: 0 0 90px;
}
.top .sec06 .contents .txt_area {
  width: 100%;
  padding: 0 0 0;
  z-index: 10;
  position: inherit;
}
.top .sec06 .contents02 .txt_area {
  margin: 0 0 0 0;
}
.top .sec06 .contents .txt_box {
  background: none;
}
.top .sec06 .contents01 .txt_box {
  border-radius: 0 0 0 0;
  padding: 0 0 0 0;
}
.top .sec06 .contents02 .txt_box {
  border-radius: 0 0 0 0;
  padding: 0 0 0 0;
}
.top .sec06 .contents .txt_box p {
  margin: 0 0 40px;
}  
}


/*--------------------------------------
　sec07
---------------------------------------*/
.top .sec07 {
  padding: 80px 0 550px;
	box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
.top .sec07 .ttl_box02 {
  margin: 0 0 30px;
}
.top .sec07 .txt_block {
  background: #E9E5E2;
  border-radius: 10px 0 0 10px;
  padding: 80px 0 100px 70px;
  box-sizing: border-box;
  position: relative;
}
.top .sec07 .txt_block::before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: #E9E5E2;
  top: 0;
  left: 100%;
}
.top .sec07 .inner .img_txt {
  position: absolute;
  width: 43%;
  top: 0;
  left: -100px;
  transform: translate(0,-50%);
  z-index: 10;
}
.top .sec07 .txt_box p {
  margin: 0 0 30px;
}
.top .sec07 .img_box {
  position: absolute;
  width: 60%;
  height: 550px;
  background: url("../images/sec07_01.jpg") center top no-repeat;
  background-size: cover;
  border-radius: 0 10px 10px 0;
  bottom: 100px;
  left: 0;
}

@media screen and (max-width: 768px) {
.top .sec07 {
  padding: 120px 0 80px;
  position: inherit;
}
.top .sec07 .ttl_box02 {
  margin: 0 0 30px;
}
.top .sec07 .txt_block {
  border-radius: 10px 0 0 10px;
  padding: 60px 0 120px 20px;
  z-index: -1;
}
.top .sec07 .inner .img_txt {
  width: 95%;
  top: 0;
  left: -20px;
  transform: translate(0,-50%);
  z-index: 10;
}
.top .sec07 .txt_box p {
  margin: 0 0 30px;
}
.top .sec07 .img_box {
  position: inherit;
  width: inherit;
  height: inherit;
  background: none;
  background-size: cover;
  border-radius: 0 10px 10px 0;
  bottom: inherit;
  left: inherit;
  margin: -60px 0 0;
  padding: 0 20px 0 0;
  box-sizing: border-box;
  z-index: 10;
}
.top .sec07 .img_box img {
  border-radius: 0 10px 10px 0;
}  
}

