@charset "utf-8";


/* common
-------------------------------------------------------*/
#wrapper {
overflow: hidden;
}
.sp {
display: none;
}
.area {
padding: 60px 20px;
box-sizing: border-box;
}
.inner {
width: 100%;
max-width: 1000px;
margin: 0 auto;
box-sizing: border-box;
}
.ttl01 {
text-align: center;
margin: 0 0 30px;
line-height: 1.2;
color: #005bb6;
font-size: 240%;
font-weight: 900;
padding: 75px 0 0;
background: url(../img/ttl_item01@2x.png)no-repeat center top/79px 53px;
}
.logo img {
max-width: 246px;
}
#footer .logo img {
max-width: 246px;
}
.contact {
display: flex;
flex-flow: row nowrap;
align-items: center;
}
@media screen and (max-width:768px) {
.pc {
display: none;
}
.sp {
display: block;
}
.area {
padding: 30px 20px;
}
.inner {
max-width: 100%;
}
.ttl01 {
font-size: 5vw;
padding: 37px 0 0;
background: url(../img/ttl_item01@2x.png)no-repeat center top/40px 27px;
}
.logo img {
max-width: 200px!important;
}
.contact {
flex-flow: column;
}
.contact li {
width: 100%;
height: 100%;
}
}


/* header
-------------------------------------------------------*/
#header {
padding: 10px 20px 20px;
box-sizing: border-box;
}
#header .wrap {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: space-between;
}
#header .txt {
max-width: 1000px;
font-size: 75%;
line-height: 1.3;
margin: 0 0 10px;
}
#header .contact {
flex-flow: row nowrap;
justify-content: flex-end;
}
#header .contact li {
padding-left: 10px;
}
#header .contact img {
max-width: 220px;
}
#header .contact .uni img {
max-width: 78px;
}
#header .contact .columns {
	display: flex;
	align-items: center;
	justify-content: center;
}
#header .contact svg {
	vertical-align: top;
	fill: #fff;
}
#header .contact a.pc_link {
	display: block;
	padding: 8px;
	font-size: 24px;
	text-decoration: none;
	line-height: 1;
	color: #fff;
	background: #00b7ee;
	border-radius: 4px;
}
#header .contact a .icon {
	margin-right: .1em;
}
#header .contact a .label {
	font-family: 'Oswald', sans-serif;
	transform: translateY(-0.05em);
	letter-spacing: .05em;
}
#header .contact a .note {
	font-size: 8px;
	margin-top: 4px;
}
#header .contact li.sp_header_cv{
	display: none;
}

@media screen and (max-width:768px) {
#header {
text-align: center;
padding: 10px;
}
#header .wrap {
width: 100%;
justify-content: center;
}
#header .contact {
justify-content: center;
position: fixed;
left: 0;
bottom: 0;
z-index: 9;
background:#ffee3f;
padding: 10px 5px 5px;
width: 100%;
box-sizing: border-box;
border-top: 1px solid #ffee3f;
}

#header .contact li.pc_header_cv{
	display: none;
}
#header .contact li.sp_header_cv{
	display: block;
}
#header .contact img {
max-width: 500px;
}
#header .contact li{
	padding-left: 0;
}
}

/* mv
-------------------------------------------------------*/
.mv h2.text-blue {
	width: 100%;;
	padding: 1px 0;
	text-align: center;
	font-size: 14px !important;
	line-height: 2;
	font-weight: 500;
	color: #fff;
	background-color: #3980F2;
	/* margin-bottom: 10px; */
  }
  @media only screen and (max-width:768px) {
	.mv {
		margin-bottom: 10px;
		margin-top: 10px;
	}
	.mv h2.text-blue {
	  font-size: 13px !important;
	  line-height: 1.3;
	  padding: 3px 0;
	  margin-bottom: 5px;
	}
  }

  .mv h1.text-black {
	width: 100%;
	max-width: 1000px;
	margin: auto;
	padding: 10px 20px 5px 20px;
	text-align: left;
	font-size: 75%;
	line-height: 1.3;
	font-weight: 400;
	color: #333;
	font-weight: 400;
	background-color: #FFF;
  }
  @media only screen and (max-width:768px) {
	.mv h1.text-black {
	  padding: 2px 0;
	  text-align: center;
	  font-weight: 400;
	  margin-bottom: -10px;
	}
  }



/* Measures */
.pad60 {
	padding-top: 60px;
	padding-bottom: 60px;
  }
  @media only screen and (max-width: 750px) {
	.pad60 {
	  padding-top: 30px;
	  padding-bottom: 40px;
	}
  }

  #measures {
	background-color: #98E3FF;
	margin-top: -40px;
	margin-bottom: -100px;
  }
  #measures .measures {
	width: 90%;
	max-width: 960px;
	margin: 0 auto;
  }
  #measures .measures h2 {
	display: table;
	margin: 0 auto 20px auto;
	padding-bottom: 10px;
	font-size: 33px;
	line-height: 43px;
	color: #007098;
	font-weight: 900;
	text-align: center;
	position: relative;
  }
  @media only screen and (max-width: 834px) {
	#measures .measures h2 {
	  font-size: 26px;
	  line-height: 36px;
	  margin-bottom: 10px;
	}
  }
  @media only screen and (max-width: 750px) {
	#measures {
		margin-top: -30px;
		margin-bottom: -70px;
	}
	#measures .measures h2 {
	  font-size: 22px;
	  line-height: 32px;
	}
  }
  @media only screen and (max-width: 360px) {
	#measures .measures h2 {
	  font-size: 20px;
	  line-height: 30px;
	  margin-bottom: 5px;
	}
  }
  #measures .measures h2::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 9;
	width: 100%;
	height: 4px;
	background-color: #E2FF00;
  }
  #measures .measures p {
	font-weight: 500;
	color: #434343;
	text-align: center;
	margin-bottom: 30px;
  }
  @media only screen and (max-width: 750px) {
	#measures .measures p {
	  margin-bottom: 15px;
	}
  }
  @media only screen and (max-width: 360px) {
	#measures .measures p {
	  margin-bottom: 8px;
	}
  }
  #measures .measures .measures-list {
	/* width: 100%; */
	max-width: 745px;
	margin: 0 auto;
	padding: 40px 20px;
	background-color: #fff;
  }
  @media only screen and (max-width: 834px) {
	#measures .measures .measures-list {
	  padding: 30px 15px;
	}
  }
  @media only screen and (max-width: 750px) {
	#measures .measures .measures-list {
	  padding: 20px 15px;
	}
  }
  @media only screen and (max-width: 360px) {
	#measures .measures .measures-list {
	  padding: 10px 5px;
	}
  }
  #measures .measures .measures-list ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
  }
  #measures .measures .measures-list ul li {
	width: 25%;
	text-align: center;
  }
  @media only screen and (max-width: 750px) {
	#measures .measures .measures-list ul li {
	  padding: 0 5px;
	}
  }
  #measures .measures .measures-list ul li img {
	margin: 0 auto;
	max-width: 128px;
  }
  #measures .measures .measures-list ul li h3 {
	font-size: 20px;
	line-height: 30px;
	font-weight: 500;
	color: #005bb6;
	text-align: center;
	margin-top: 15px;
  }
  @media only screen and (max-width: 834px) {
	#measures .measures .measures-list ul li h3 {
	  font-size: 16px;
	  line-height: 22px;
	}
  }
  @media only screen and (max-width: 750px) {
	#measures .measures .measures-list ul li h3 {
	  font-size: 12px;
	  line-height: 18px;
	  margin-top: 5px;
	}
  }
  @media only screen and (max-width: 360px) {
	#measures .measures .measures-list ul li h3 {
	  line-height: 16px;
	}
  }



/* Area 
=========================================== */
#area .ttl01 {
	background: url(../img/ttl_item09.svg)no-repeat center top/79px 65px !important;
}
@media only screen and (max-width: 750px) {
	#area .ttl01 { 
		background: url(../img/ttl_item09.svg)no-repeat center top/40px 33px !important;
	}
}

#area .area {
	padding-top: 0 !important;
}
.content-960 {
	width: 90%;
	max-width: 960px;
	margin: 0 auto;
  }
  @media only screen and (max-width: 750px) {
	.content-960 {
	  width: 95%;
	}
  }
@media only screen and (max-width: 750px) {
	#area .area {
	  padding-bottom: 30px;
	  padding-left: 0;
	  padding-right: 0;
	}
  }

  #area .area .area-intro p {
	text-align: center;
	/* font-weight: bold; */
	line-height: 24px !important;
  }
  @media only screen and (max-width: 750px) {
	#area .area .area-intro p {
	  font-size: 14px !important;
	  line-height: 1.3 !important;
	  text-align: left;
	}
  }
  #area .area .area-map {
	margin-top: 25px;
	position: relative;
	padding-bottom: 50%;
	height: 0;
	overflow: hidden;
  }
  @media only screen and (max-width: 750px) {
	#area .area .area-map {
	  margin-top: 20px;
	  padding-bottom: 75%;
	}
  }
  #area .area .area-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
  }
  #area .area .area-content {
	margin-top: 20px;
  }
  /* @media only screen and (max-width: 750px) {
	#area .area .area-content {
	  padding: 0 4%;
	}
  } */
  #area .area .area-content .box + .box {
	margin-top: 15px;
  }
  @media only screen and (max-width: 360px) {
	#area .area .area-content .box + .box {
	  margin-top: 10px;
	}
  }
  #area .area .area-content .box h3 {
	font-size: 18px;
	line-height: 28px;
	font-weight: 500;
	color: #fff;
	background-color: #51BBFF;
	padding: 10px 20px;
  }
  @media only screen and (max-width: 750px) {
	#area .area .area-content .box h3 {
	  font-size: 16px;
	  line-height: 26px;
	  padding: 5px 15px;
	}
  }
  @media only screen and (max-width: 360px) {
	#area .area .area-content .box h3 {
	  font-size: 14px;
	  line-height: 24px;
	}
  }
  #area .area .area-content .box p {
	margin-top: 10px;
	padding: 0 20px;
	line-height: initial;
  }
  @media only screen and (max-width: 360px) {
	#area .area .area-content .box p {
	  margin-top: 5px;
	  padding: 0 15px;
	}
  }

/* visual
-------------------------------------------------------*/
#visual {
padding: 0 20px;
box-sizing: border-box;
background: url(../img/visual_bg.jpg)no-repeat center/cover;
}
@media screen and (max-width:768px) {
#visual {
background: none;
padding: 0;
}
}

#visual .inner {
	max-width: 1400px;
}

#visual .inner .visual-bg {
	position: relative;
}
#visual .inner .visual-txt {
	position: absolute;
	bottom: 6.3%;
	left: 43.5%;
	font-size: 1.3vw;
	line-height: 1.3;
}
#visual .inner .visual-txt span {
	color: #005bb6;
}
#visual .inner .visual-txt em {
	font-size: 1.7vw;
}
@media screen and (min-width:1500px) {
	#visual .inner .visual-txt {
		bottom: 6.9%;
		font-size: 1.2vw;
		line-height: 1.3;
	}
	#visual .inner .visual-txt em {
		font-size: 1.2vw;
	}
}
@media screen and (max-width:768px) {
	#visual .inner .visual-txt {
		position: absolute;
		bottom: 12.6%;
		left: 49.5%;
		font-size: 2.8vw;
		line-height: 1.3;
	}
	#visual .inner .visual-txt-b {
		position: absolute;
		bottom: 4.6%;
		left: 41.5%;
		font-size: 2.8vw;
		line-height: 1.2;
		text-align: center;
	}
	#visual .inner .visual-txt-b em {
		font-size: 3.4vw;
	}
}



/* banner
-------------------------------------------------------*/
.banner {
background: url(../img/banner_bg.jpg)no-repeat center/cover;
padding: 40px 20px;
}
.banner .inner {
position: relative;
}
.banner .inner > * {
position: relative;
z-index: 1;
}
.banner .ttl img {
max-width: 643px;
}
.banner .txt {
max-width: 643px;
background: #005bb6;
border-radius: 50px;
padding: 7px 10px 9px;
margin: 20px 0 25px;
box-sizing: border-box;
color: #fff;
font-weight: 500;
font-size: 135%;
line-height: 1.3;
text-align: center;
}
.banner .contact li{
padding: 0;
}
.banner .contact li:not(:last-child) {
padding: 0 10px 0 0;
}
.banner .contact img {
max-width: 265px;
}
.banner .contact .tel img {
max-width: 450px;
}
.banner .img {
position: absolute;
right: 0;
bottom: -40px;
z-index: 0;
}
@media screen and (max-width:768px) {
.banner {
padding: 30px 20px;
text-align: center;
}
.banner .ttl img {
max-width: 322px;
}
.banner .txt {
max-width: 322px;
font-size: 100%;
margin: 20px auto 25px;
}
.banner .contact {
flex-flow: column;
align-content: center;
}
.banner .contact li:not(:last-child) {
padding: 0 0 20px;
}
.banner .img {
display: none
}
}


/* footer
-------------------------------------------------------*/
#footer {
text-align: center;
background: #005BB6;
color: #fff;
}
#footer .wrap {
display: inline-flex;
justify-content: center;
margin: 50px 0 120px;
}
#footer dl {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: flex-start;
font-weight: 300;
}
#footer dl:not(:last-child) {
margin: 0 0 20px;
}
#footer dl dt {
width: 100px;
text-align: right;
padding: 0 20px 0 0;
}
#footer .copy {
font-size: 75%;
}
#footer a {
    color: #fff;
    text-decoration: underline;
}
@media screen and (max-width:768px) {
#footer .wrap {
display: inline-flex;
justify-content: center;
margin: 30px 0 10px;
}
#footer dl {
flex-flow: column;
border-bottom: 1px solid #fff;
padding: 0 0 20px;
margin: 0 0 20px;
}
#footer dl dt {
width: 100%;
padding: 0;
text-align: left;
font-weight: 500;
margin: 0 0 10px;
}
#footer {
padding-bottom:180px;
}
}

.corona{
	border: #FF0004 2px solid;
	background: #FAEAEA;
	padding: 30px;
	max-width: 930px;
	width: 90%;
	margin: 20px auto;
}
.corona h3{
	color: #FF0004;
    padding: 10px;
    display: inline-block;
    border-bottom: 1px solid #333;
    margin: 0 0 15px;
	font-size: 1.3em;
}
.corona p{
	line-height: 1.5;
}

/* area01
-------------------------------------------------------*/
#area01 {
padding: 0 0 70px;
}
#area01 .inner {
padding: 0 20px;
max-width: 1040px;
}
#area01 .ttl {
background: url(../img/bg_top.png)no-repeat center/contain #E6B324;
height: 160px;
position: relative;
text-align: center;
margin: 0 0 40px;
}
#area01 .ttl2 {
	background: #005bb6;
	height: auto;
	padding: 60px 0px 70px;
	font-size: 3rem;
	color: white;
	margin: 0 0 40px;
	font-weight: bold;
	}
#area01 .ttl img {
max-width: 1000px;
}
#area01 .ttl::after {
content: "";
position: absolute;
width: 0;
height: 0;
border: 20px solid transparent;
border-top: 20px solid #B28A1B;
left: 0;
right: 0;
bottom: -40px;
margin: auto;
}
#area01 .ttl2 br{
	display: none;

	}
#area01 .ttl2::after {
	border-top: 20px solid #005bb6;
	}
#area01 .img01 {
margin: 0 0 40px;
}
@media screen and (max-width:768px) {
#area01 {
padding: 0 0 30px;
}
#area01 .inner {
padding: 0 20px;
}
#area01 .ttl {
height: auto;
margin: 0 0 30px;
}
#area01 .ttl::after {
border: 15px solid transparent;
border-top: 15px solid #B28A1B;
bottom: -30px;
}
.corona{
	width: auto;
	margin: 0 10px;
	padding: 15px;
}
#area01 .ttl2 {
	line-height: 1.5;
	font-size: 1.5rem;
	padding: 10px 0px 15px;
	}
	#area01 .ttl2 br{
		display: block;

		}
#area01 .ttl2::after {
	border-top: 20px solid #005bb6;
	}
#area01 .img01 {
margin: 0 0 30px;
}
}


/* area02
-------------------------------------------------------*/
#area02 ul {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: space-between;
}
#area02 ul li {
max-width: 172px;
width: 100%;
padding: 0 19px;
}
#area02 ul li:first-child {
padding-left: 0;
}
#area02 ul li:last-child {
padding-right: 0;
}
#area02 ul li .img01 {
max-width: 170px;
height: 170px;
text-align: center;
margin: 0 auto 20px;
background: #EBF8FE;
display: flex;
flex-flow: column;
align-items: center;
justify-content: center;
}
#area02 ul li .img01 img {
max-width: 79px;
max-height: 73px;
margin: 0 0 15px;
}
#area02 ul li .img01 b {
display: block;
font-size: 110%;
font-weight: bold;
color: #005bb6;
line-height: 1.3;
}
#area02 ul li .txt {
line-height: 1.3;
margin: 0 0 10px;
}
#area02 ul li .img02 img {
max-width: 172px;
}

#area02 ul li .txt span {
	display: block;
	font-size: 70%;
	margin-top: 7px;
}

@media screen and (max-width:768px) {
#area02 ul {
flex-flow: column;
align-items: center;
}
#area02 ul li {
max-width: 100%;
padding: 0;
}
#area02 ul li:not(:last-child) {
margin: 0 0 30px;
}
#area02 ul li .img01 {
max-width: 100%;
height: auto;
padding: 20px;
}
#area02 ul li .img01 b {
font-size: 100%;
}
#area02 .img02 {
text-align: center;
}
}


/* area03
-------------------------------------------------------*/
#area03 {
background: #EBF8FE;
}
#area03 .ttl01 {
background: none;
padding: 0;
margin: 0 0 10px;
}
#area03 .ttl01 b {
background: url(../img/ttl_item02.png)no-repeat left top/62px 59px;
padding: 0 0 0 72px;
min-height: 75px;
display: inline-flex;
align-items: center;
}
#area03 .txt {
font-size: 110%;
line-height: 1.3;
margin: 0 0 30px;
text-align: center;
}
#area03 .box {
border: 5px solid #357BC0;
padding: 30px 35px 35px;
box-sizing: border-box;
background: #fff;
text-align: center;
}
#area03 .box .ttl img {
max-width: 736px;
/* margin: 0 0 20px; */
}
#area03 .box .img {
background: #357bc0;
padding: 29px;
box-sizing: border-box;
}
@media screen and (max-width:768px) {
#area03 .ttl01 {
margin: 0 0 30px;
}
#area03 .ttl01 b {
background: url(../img/ttl_item02.png)no-repeat left top/31px 30px;
padding: 0 0 0 41px;
min-height: 30px;
}
#area03 .txt {
font-size: 100%;
line-height: 1.3;
}
#area03 .box {
border: 2px solid #357BC0;
padding: 15px 20px 20px;
}
#area03 .box .ttl img {
max-width: 611px;
}
#area03 .box .img {
padding: 10px;
}
#area03 .box .img img {
max-width: 638px;
}
}


/* area04
-------------------------------------------------------*/
#area04 {
padding-bottom: 30px;
}
#area04 .ttl01 {
background: url(../img/ttl_item03@2x.png)no-repeat center top/79px 65px;
}
#area04 .txt_head {
text-align: center;
margin: 0 0 30px;
font-size: 120%;
line-height: 1.3;
}
#area04 .txt_head b {
color: #e60012;
display: inline-block;
}
#area04 ul {
display: flex;
flex-flow: row wrap;
align-items: stretch;
justify-content: flex-start;
}
#area04 ul li {
background: #ebf8fe;
padding: 20px;
box-sizing: border-box;
margin: 0 2% 30px 0;
width: 100%;
max-width: 32%;
text-align: center;
}
#area04 ul li:nth-child(3) {
margin: 0 0 30px;
}
#area04 ul li .img img {
max-width: 280px;
}
#area04 ul li .ttl {
font-size: 200%;
color: #005bb6;
font-weight: bold;
margin: 20px 0 15px;
}
#area04 ul li .txt > * {
display: block;
}
#area04 ul li .txt > span {
font-size: 110%;
line-height: 1.6;
}
#area04 ul li .txt > span span {
position: relative;
display: inline-block;
}
#area04 ul li .txt > span span::after {
content: "";
position: absolute;
background: #e60012;
width: 100%;
height: 2px;
top: 0;
left: 0;
bottom: 0;
margin: auto;
}
#area04 ul li .txt>b {
color: #ff647e;
font-size: 200%;
font-weight: bold;
}
#area04 ul li .txt>b b {
font-size: 70%;
}
#area04 ul li .txt>b span{
	display: block;
	font-size: 1rem;
	font-weight: normal;
}
#area04 ul li .txt>b:first-of-type {
border-bottom: 1px solid #00b7ee;
padding: 0 0 30px;
margin: 0 0 20px;
}
@media screen and (max-width:768px) {
#area04 {
padding-bottom: 0;
}
#area04 .ttl01 {
background: url(../img/ttl_item03@2x.png)no-repeat center top/40px 33px;
}
#area04 ul {
flex-flow: column;
align-items: center;
}
#area04 ul li {
margin: 0 0 20px;
max-width: 100%;
}
#area04 ul li:nth-child(3) {
margin: 0 0 20px;
}
#area04 ul li .ttl {
font-size: 120%;
margin: 15px 0 10px;
}
#area04 ul li .txt > span {
font-size: 100%;
line-height: 1.3;
}
#area04 ul li .txt>b {
font-size: 140%;
}
#area04 ul li .txt>b:first-of-type {
padding: 0 0 10px;
margin: 0 0 10px;
}
}


/* area05
-------------------------------------------------------*/
#area05 {
text-align: center;
}
#area05 .ttl01 {
background: url(../img/ttl_item04@2x.png)no-repeat center top/79px 64px;
}
#area05 .txt {
line-height: 1.6;
}
#area05 .img img {
max-width: 749px;
margin: 20px 0;
}
@media screen and (max-width:768px) {
#area05 .ttl01 {
background: url(../img/ttl_item04@2x.png)no-repeat center top/40px 32px;
}
}


/* area06
-------------------------------------------------------*/
#area06 {
background: url(../img/bg_slash.jpg);

}
#area06 .ttl01 {
background: url(../img/ttl_item05@2x.png)no-repeat center top/79px 56px;
}
.voice{
	background:#FFFFFF;
	padding:20px;
	margin-bottom:20px;
}
.voice img.voice_kao{
	width:15%;
	float:left;
	margin-right:5%;
}

.voice p{
	width:45%;
	float:left;
	line-height:1.8em;
	font-size:110%;
	margin-right:5%;
}
.voice p span{
	font-size:140%;
	color:#51BBFF;
	font-weight:bold;
}
.voice img.voice_sheet{
	width:25%;
	border:#D4D4D4 1px solid;
}

.voice ul{
	 overflow: hidden;
}
.voice ul li{
	float:left;
	width:20%;
	margin-right:3%;
}
@media screen and (max-width:768px) {
#area06 .ttl01 {
background: url(../img/ttl_item05@2x.png)no-repeat center top/40px 28px;
}
.voice img.voice_kao{
	width:30%;
}
.voice p{
	width:100%;
	float:none;
	line-height:1.5em;
	font-size:100%;
	margin-right:0;
	margin-bottom:10px;
}
.voice p span{
	font-size:110%;
	color:#51BBFF;
	font-weight:bold;
}
.voice img.voice_sheet{
	width:100%;
}
.voice ul li{
	float:left;
	width:30%;
	margin-right:3%;
}

}



/* area07
-------------------------------------------------------*/
#area07 .inner {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: center;
}
#area07 .img {
max-width: 400px;
}
#area07 .wrap {
max-width: 460px;
border-top: 2px solid #005bb6;
border-bottom: 2px solid #005bb6;
padding: 40px 0;
box-sizing: border-box;
margin: 0 50px 0 0;
}
#area07 .ttl{
	text-align: center;
}
#area07 .ttl b {
display: block;
font-size: 240%;
color: #005bb6;
}
#area07 .ttl b img {
max-width: 411px;
margin: 15px 0 20px;
}
#area07 .txt {
max-width: 414px;
padding: 10px;
border-radius: 50px;
background: #005bb6;
text-align: center;
}
#area07 .txt img {
max-width: 291px;
}
@media screen and (max-width:768px) {
#area07 .inner {
flex-flow: column;
align-items: center;
}
#area07 .img {
margin: 20px auto 20px;
width: 80%;
}
#area07 .wrap {
border-top: 1px solid #005bb6;
border-bottom: 1px solid #005bb6;
padding: 20px 0;
margin: 0 auto;
text-align: center;
}
#area07 .ttl b {
font-size: 140%;
}
#area07 .ttl b img {
max-width: 411px;
margin: 15px 0;
}
}


/* area08
-------------------------------------------------------*/
#area08 .ttl01 {
background: url(../img/ttl_item06@2x.png)no-repeat center top/79px 61px;
}
#area08 ol {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: space-between;
}
#area08 ol li {
max-width: 170px;
width: 100%;
padding: 0 19px;
}
#area08 ol li:first-child {
padding-left: 0;
}
#area08 ol li:last-child {
padding-right: 0;
}
#area08 ol li .img {
text-align: center;
width: 100%;
max-width: 170px;
margin: 0 auto 15px;
height: 170px;
display: flex;
flex-flow: column;
align-items: center;
justify-content: center;
position: relative;
background: #EBF8FE;
border-radius: 10px;
padding: 10px;
box-sizing: border-box;
}
#area08 ol li:not(:last-child) .img::after {
content: "";
position: absolute;
top: 0;
bottom: 0;
right: -42px;
margin: auto;
border: 15px solid transparent;
border-left: 15px solid #00B7EE;
width: 0;
height: 0;
}
#area08 ol li .img > * {
display: block;
}
#area08 ol li .img b {
margin: 20px 0 0;
font-size: 120%;
line-height: 1.3;
color: #005bb6;
}
#area08 ol li .img img {
max-width: 130px;
}
#area08 ol li:nth-child(2) .img img {
max-width: 71px;
}
#area08 ol li:nth-child(3) .img img {
max-width: 51px;
}
#area08 ol li:nth-child(4) .img img {
max-width: 77px;
}
#area08 ol li:nth-child(5) .img img {
max-width: 65px;
}
#area08 ol li .txt {
line-height: 1.3;
}
@media screen and (max-width:768px) {
#area08 .ttl01 {
background: url(../img/ttl_item06@2x.png)no-repeat center top/40px 30px;
}
#area08 ol {
flex-flow: column;
align-items: center;
padding: 0;
}
#area08 ol li {
max-width: 100%;
position: relative;
padding: 0;
}
#area08 ol li:not(:last-child) {
margin: 0 0 50px;
}
#area08 ol li .img {
width: 100%;
max-width: 100%;
height: auto;
padding: 20px;
box-sizing: border-box;
}
#area08 ol li:not(:last-child) .img::after {
display: none;
}
#area08 ol li:not(:last-child)::after {
content: "";
position: absolute;
left: 0;
right: 0;
bottom: -50px;
margin: auto;
border: 15px solid transparent;
border-top: 15px solid #00B7EE;
width: 0;
height: 0;
}
#area08 ol li .img b {
font-size: 100%;
}
}


/* area09
-------------------------------------------------------*/
#area09 {
background: #EBF8FE;
}
#area09 .ttl01 {
background: url(../img/ttl_item07@2x.png)no-repeat center top/79px 63px;
}
#area09 dl {
border-bottom: 1px solid #005bb6;
padding: 20px 0;
}
#area09 dl:first-of-type {
border-top: 1px solid #005bb6;
}
#area09 dl > * {
background: url(../img/qa01.png)no-repeat left top/40px;
padding: 0 0 0 70px;
min-height: 40px;
display: flex;
align-items: center;
}
#area09 dl dt {
font-size: 110%;
line-height: 1.3;
color: #005bb6;
margin: 0 0 15px;
}
#area09 dl dd {
background: url(../img/qa02.png)no-repeat left top/40px;
line-height: 1.6;
}
@media screen and (max-width:768px) {
#area09 .ttl01 {
background: url(../img/ttl_item07@2x.png)no-repeat center top/40px 31px;
}
#area09 dl > * {
background: url(../img/qa01.png)no-repeat left top/20px;
padding: 0 0 0 30px;
min-height: 20px;
}
#area09 dl dt {
font-size: 100%;
margin: 0 0 10px;
}
#area09 dl dd {
background: url(../img/qa02.png)no-repeat left top/20px;
line-height: 1.3;
}
}

/* area10
-------------------------------------------------------*/
#area10 {
}
#area10 img{
	width:70%;
    margin: 0 auto;
    display: block;
}

/* area10
-------------------------------------------------------*/
#area11 {
background: #f9fcfe;
}
#area11 .ttl01 {
background: url(../img/ttl_item10.svg)no-repeat center top/79px 63px;
}
@media screen and (max-width:768px) {
#area11 .ttl01 {
background: url(../img/ttl_item10.svg)no-repeat center top/40px 31px;
}	
}
#area11 img{
	width:70%;
    margin: 0 auto;
    display: block;
}
#area11 .news-list li {
	line-height: normal !important;
	padding: 20px 0;
	border-bottom: 1px solid #00b7ee;
	font-size: 16px;
}
#area11 .news-list li h4 {
	font-weight: bold;
	/* margin-top: 10px; */
	margin-bottom: 12px;
	color: #005bb6;
	font-size: 20px;
}
#area11 .news-list li .deta {
	font-size: 12px;
	margin-right: 10px;
	color: #777;
}
#area11 .news-list li em {
	font-size: 11px;
	padding: 1px 10px;
	background-color: #ff647e;
	color: #FFF;
}
@media screen and (max-width:768px) {
	#area11 .news-list {
		margin-top: -20px;
	}
	#area11 .news-list li p {
		font-size: 14px;
		line-height: 1.3;
	}
	#area11 .news-list li h4 {
		/* margin-top: 10px; */
		margin-bottom: 7px;
		font-size: 16px;
	}
}

/* contact
-------------------------------------------------------*/
#contact .ttl01 {
background: url(../img/ttl_item08@2x.png)no-repeat center top/79px 47px;
}
#contact .txt_head {
text-align: center;
margin: 0 0 30px;
line-height: 1.3;
}
#contact .table_temp {
width: 100%;
}
#contact.contact_after .inner {
padding: 0;
}
#contact .address p {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: flex-start;
}
#contact .radio_area label:first-child {
width: 80px;
}
#contact .radio_area label:nth-child(2) {
width: 80px;
}
#contact .address p span {
padding: 0 10px 0 0;
}
#contact .address p:first-child {
margin: 0 0 20px;
}
#contact .address p:first-child input {
max-width: 173px;
}
#contact .trouble01 input[type="text"] {
max-width: 150px;
margin: 0 0 0 15px;
}
#contact .trouble02 input[type="text"] {
max-width: 217px;
margin: 0 0 0 15px;
}
#contact .data select {
width: 60px;
}
#contact .data div {
display: flex;
flex-flow: row wrap;
align-items: center;
justify-content: flex-start;
}
#contact .data div:first-of-type {
margin: 0 0 20px;
}
#contact .data div>span:first-child {
width: 109px;
}
#contact .data div p {
margin: 0 0 0 10px;
}
#contact .data div p span {
margin: 0 0 0 5px;
}
#contact .data .time p:first-of-type {
margin: 0 0 0 5px;
}
/* table */
#contact tr {
display: table;
width: 100%;
table-layout: fixed;
}
#contact tr > * {
display: table-cell;
vertical-align: middle;
padding: 10px;
box-sizing: border-box;
line-height: 1;
font-size: 110%;
}
#contact tr th {
width: 350px;
position: relative;
text-align: left;
}
#contact tr:last-child th {
vertical-align: top;
}
#contact tr.hissu th::after,
#contact tr.nini th::after {
color: #fff;
font-weight: 500;
font-size: 80%;
width: 45px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
position: absolute;
top: 0;
right: 10px;
bottom: 0;
margin: auto;
border-radius: 50px;
}
#contact tr.hissu th::after {
content: "必須";
background: #e7131f;
}
#contact tr.nini th::after {
content: "任意";
background: #959595;
}
#contact.contact_after tr {
border-bottom:1px solid #ccc;
}
#contact.contact_after tr:first-child {
border-top:1px solid #ccc;
margin: 30px 0 0;
}
#contact.contact_after tr th {
color: #aaa;
}
#contact.contact_after tr td {
font-weight: 500;
}
.txt_form .red,
.error_messe b {
color: #f00;
font-weight: normal;
}
.error_messe {
margin: 20px 0 0;
text-align: center;
}
.error_messe > * {
display: inline-block;
}
/* table end */
/* form_parts */
#contact input[type="text"],
#contact select,
#contact textarea {
width: 100%;
background: #eeeeee;
padding: 5px 15px;
}
#contact input[type="text"],
#contact select {
height: 45px;
}
#contact select {
padding: 5px;
}
#contact textarea {
min-height: 215px;
resize: vertical;
padding: 15px;
}
#contact .radio_area {
display: flex;
flex-flow: row wrap;
align-items: center;
justify-content: flex-start;
}
#contact .radio_area label,
#contact .check_area label {
margin: 5px 29px 5px 0;
display: flex;
align-items: center;
line-height: 1.3;
}
#contact .radio_area label:last-child {
margin: 0;
}
#contact tr.nini:last-child th::after {
bottom: auto;
top: 10px;
}
#contact .txt_form {
text-align: center;
line-height: 1.3;
}
#contact .txt_form span {
display: block;
}
::placeholder {
color: #8b8a8a;
font-size: 120%;
}
/* form_parts end */
/* button */
#contact .btn {
display: flex;
flex-flow: row-reverse nowrap;
align-items: center;
justify-content: space-evenly;
}
#contact .form_btn01,
#contact .form_btn02 {
display: flex;
align-items: center;
justify-content: center;
width: 80%;
max-width:290px;
height: 58px;
border: none;
border-radius: 10px;
padding: 10px;
margin: 30px 0 0;
box-sizing: border-box;
font-size: 120%;
color: #fff;
font-weight: 500;
}
#contact .form_btn01 {
background: #005bb6;
}
#contact .form_btn02 {
background: #333;
}
/* button end */
@media screen and (max-width:768px) {
#contact .ttl01 {
background: url(../img/ttl_item08@2x.png)no-repeat center top/40px 24px;
}
#contact .txt_head {
font-size: 100%;
}
#contact.contact_after tr:first-child {
margin: 20px 0 0;
}
/* table */
#contact tr {
border-bottom: 1px solid #ccc;
}
#contact tr > * {
display: block;
padding: 15px 0;
}
#contact tr th {
width: 100%;
font-size: 100%;
}
#contact tr td {
padding-top: 0;
}
#contact tr.hissu th::after,
#contact tr.nini th::after {
top: 0!important;
right: 0!important;
bottom: 0!important;
}
/* table end */
/* button */
#contact .btn {
flex-flow: column;
}
#contact .form_btn01,
#contact .form_btn02 {
margin: 20px 0 0;
font-size: 100%;
}
/* button end */
#contact input[type="text"], #contact select {
height: 40px;
}
#contact .radio_area label:first-child {
width: auto;
}
#contact .radio_area label, #contact .check_area label {
margin: 5px 5px 5px 0;
}
#contact .radio_area label:nth-child(2) {
width: auto;
}
#contact .trouble02 input[type="text"] {
max-width: 175px;
}
#contact .data div>span:first-child {
width: 100%;
display: block;
margin: 0 0 10px;
}
#contact .data select {
width: 35px;
}
#contact textarea {
min-height: 150px;
}
}

/*会社概要*/
.spTop30Btm60 { padding: 30px 0 60px 0; }
.subTitle01 {
	text-align: center;
	background-color: #fff;
	border: 2px solid #000;
	margin: 0 0 3em 0;
	position: relative;
	-webkit-filter:drop-shadow(4px 4px 0px #000);
}
.subTitle01 h3 {
	font-size: 35px;
	font-weight: bold;
	line-height: 1.4;
	margin: 0;
	padding: .6em 0;
}
.subTitle01:before, .subTitle01:after {
	width: 0;
	height: 0;
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
}
.subTitle01:before {
	border-top: 20px solid #000;
	border-bottom:  0px solid transparent;
	border-left: 16px solid transparent;
	border-right: 16px solid transparent;
	margin: 0 0 0 -16px;
	bottom: 0;
}
.subTitle01:after {
	border-top: 18px solid #fff;
	border-bottom: 0px solid transparent;
	border-left: 14px solid transparent;
	border-right: 14px solid transparent;
	margin: 0 0 0 -14px;
	bottom: 0;
}

@media all and (min-width: 641px) and (max-width: 767px) {
.subTitle01 {
	margin: 0 0 3em 0;
	}
.subTitle01 h3 {
	font-size: 28px;
	padding: .3em 1.5em;
	}
}

@media all and (max-width: 640px) {
.subTitle01 {
	margin: 0 0 1.8em 0;
	}
.subTitle01 h3 {
	font-size: 22px;
	padding: .5em;
	}
	.subTitle01:before {
		border-top: 16px solid #000;
		border-bottom:  0px solid transparent;
		border-left: 13px solid transparent;
		border-right: 13px solid transparent;
		margin: 0 0 0 -13px;
		bottom: 0;
	}
	.subTitle01:after {
		border-top: 14px solid #fff;
		border-bottom: 0px solid transparent;
		border-left: 11px solid transparent;
		border-right: 11px solid transparent;
		margin: 0 0 0 -11px;
		bottom: 0;
	}
}
/*--- table01 ----------------------------------------------------------------- */

.table01 {
	width: 100%;
	text-align: center;
	margin: 0 auto;
    line-height: 1.8;
}
.table01 th {
	width: 30%;
	padding: 0;
	vertical-align: middle;
	border-top: 2px solid #fff;
	background: #ececec;
    color:#000;
}
.table01 td {
	width: 70%;
	text-align: left;
	padding: 0;
	vertical-align: middle;
	border-top: 2px solid #fff;
	background: #e1f4fc;
}
.table01 th p ,
.table01 td p {
	font-weight: normal;
	padding: 1em;
}

@media all and (min-width: 701px) and (max-width: 960px) {
.table01 {
	width: 100%;
	text-align: left;
	}
}

@media screen and (max-width: 700px) {
.table01 {
	width: 100%;
	text-align: left;
	}
.table01 th {
	display: block;
	width: 100%;
	}
.table01 td {
	display: block;
	width: 100%;
	}
}
/*--- table02 ----------------------------------------------------------------- */
.table02 {
	width: 100%;
	text-align: left;
	margin: 0 auto;
	border: 1px solid #ccc;
    line-height: 1.8;
}
.table02 th {
	width: 30%;
	padding: 0;
	vertical-align: middle;
	border-top: 1px solid #ccc;
	background: #fff;
}
.table02 td {
	width: 70%;
	text-align: left;
	padding: 0;
	vertical-align: middle;
	border-top: 1px solid #ccc;
	background: #fff;
}
.table02 th p ,
.table02 td p {
	font-weight: normal;
	padding: .5em 1em;
}

@media all and (min-width: 701px) and (max-width: 960px) {
.table02 {
	width: 100%;
	text-align: left;
	}
}

@media screen and (max-width: 700px) {
.table02 {
	width: 100%;
	text-align: left;
	}
.table02 th {
	display: block;
	width: 100%;
	background: #f4f4f4;
	}
.table02 td {
	display: block;
	width: 100%;
	}
}
/*--- 個人情報 ----------------------------------------------------------------- */

.privacy {
	border: 1px solid #ddd;
	padding: 20px 20px 10px;
	box-sizing: border-box;
	height: 190px;
	overflow: auto;
	margin-top: 30px;
}
.privacy h4 {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	margin: 0 auto .5em auto;
}
.privacy p {
	font-size: 14px;
	margin: 0 0 .5em 0;
}
.privacy h5 {
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 16px;
	margin: 1em 0 .5em 0;
}
.privacy p.leftSp {
	margin: .5em 0 .5em 1em;
}
.btn{
	margin: 60px 0 0;
}
.btn input{
	border: 1px solid #aaa;
	padding: 0.75rem 1.5rem;
}
.btn input:hover{
	cursor: pointer;
}
@media screen and (max-width: 700px) {
	.btn{
		margin: 0;
	}
}
@media screen and (max-width: 767px) {
	.privacy {
		border: 1px solid #ddd;
		padding: 10px;
		box-sizing: border-box;
		height: 150px;
		overflow: auto;
		margin-top: 0;
	}
}
