@charset "utf-8";
/*------------------------------------------------------------------

	PC
	
-----------------------------------------------------------------*/


/* module
-------------------------------------------------------*/
.sp {
display: none;
}
.in {
width:1000px;
max-width:1000px;
margin:0 auto;
}
.area {
padding: 70px 0;
}
.f-box {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: space-between;
}
.f-box.rev {
flex-flow: row-reverse nowrap;
}
img {
width: 100%;
}
#wrapper {
overflow: hidden;
}
h3 {
text-align: center;
font-size: 200%;
line-height: 1.2;
font-weight: bold;
}
h3::after {
content:"";
display: block;
background:url(../img/common/ttl_bar.png)no-repeat center center/100px 5px;
width: 100px;
height: 5px;
margin:20px auto 30px;
}


/* header
-------------------------------------------------------*/
#header {
margin-bottom:20px;
}
#header .box {
display: flex;
flex-flow: row-reverse nowrap;
align-items: flex-end;
justify-content: flex-start;
}
#header .logo img {
max-width: 200px;
position: relative;
left: -10px;
}
#header .tel img {
max-width:222px;
}
#header .contact img {
max-width:236px;
}
#header .in {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content:space-between;
}
#header h1 {
font-size: 85%;
line-height: 1.2;
margin-bottom:10px;
font-weight: bold;
}
#header ul {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content:flex-end;
}
#header ul li {
padding-left:15px;
}


/* nav
-------------------------------------------------------*/
#nav {
margin-bottom:10px;
}
#nav ul {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: space-between;
}
#nav ul li {
padding:0 30px;
height: 50px;
display: flex;
align-items: center;
}
#nav ul li:not(:last-child) {
border-right: 1px solid #d2d2d2;
}


/* visual
-------------------------------------------------------*/
#index #visual {
background:url(../img/index/visual_bg.png)no-repeat center center/cover;
position:relative;
padding:60px 0;
}
#index #visual h2 {
position: relative;
z-index: 2;
}
#index #visual h2 img {
max-width: 594px;
}
#index #visual .img {
position: absolute;
right: 150px;
bottom: 0;
}
#index #visual .img .mainv {
width:80%;
}
#other #visual {
height: 300px;
display: flex;
align-items: center;
}
#other #visual h2 {
display: flex;
flex-flow: column nowrap;
align-items: flex-start;
justify-content: center;
padding-left:50px;
box-sizing: border-box;
}
#other #visual h2 b {
display: block;
text-align: center;
line-height: 1.4;
}
#other #visual h2 .big {
font-size:200%;
}


/* banner
-------------------------------------------------------*/
.banner {
background:#F6ECE5;
box-shadow: 0 10px 10px -8px rgba(0,0,0,0.2) inset;
}
.banner .in {
padding: 5px 0;
position: relative;
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: center;
}
.banner .txt-box {
width:603px;
}
.banner .txt-box .txt img {
max-width:603px;
}
.banner .txt-box .ttl img {
max-width:525px;
margin:10px 0;
}
.banner .txt-box ul {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content:space-between; 
}
.banner .txt-box ul li:first-child img {
max-width:295px;
}
.banner .txt-box ul li:last-child img {
max-width:290px;
}
.banner .img {
max-width: 265px;
position: relative;
bottom: -5px;
}


/* footer
-------------------------------------------------------*/
#footer {
text-align: center;
color:#fff;
}
#footer .footer-nav {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: space-between;
font-weight: bold;
font-size: 90%;
padding:15px 0;
}

#footer .footer-nav a {
	color: #605249;
}

#footer .footer-nav.in {
max-width: 1040px;
width: 1040px;
}
#footer .footer-nav li {
padding: 0 20px;
display: flex;
align-items: center;}
#footer .footer-nav li:not(:last-child) {
border-right: 1px solid #a0a0a0;
}
#footer .box {
padding:30px 0 50px;
background:#ee605e;
}
#footer .box .in {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content:space-between;
}
#footer .box .box-in {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: flex-start;
text-align: left;
}
#footer .box .logo img {
max-width:174px;
margin-right: 40px;
}
#footer .box .ttl {
line-height: 1.2;
margin-bottom:10px;
}
#footer .box dl {
display: table;
width: 100%;
font-size: 70%;
line-height: 1.8;
}
#footer .box dl > * {
display: table-cell;
vertical-align: middle;
}
#footer .box dl dt {
width: 55px;
}
#footer .box ul li:first-child {
margin-bottom:10px;
}
#footer .box ul li img {
max-width:284px;
}
#footer .copy {
font-size: 75%;
background:#f29392;
padding:20px;
box-sizing: border-box;
color:#fff;
}
#footer .footer-btn {
/*display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: center;*/
	display: block;
}
#footer .footer-btn > * {
margin:0 5px;
}
#footer .box ul li:first-child {
margin:0;
}


/* other
-------------------------------------------------------*/
#other {

}


/* index
-------------------------------------------------------*/
#index #area01 .ttl {
width: 305px;
margin:0 auto;
color:#fff;
font-size: 150%;
background:#ee605e;
font-weight: bold;
padding:3px;
box-sizing: border-box;
border-radius: 50px;
text-align: center;
margin-bottom:20px;
}
#index #area01 ul {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: center;
margin-bottom:30px;
}
#index #area01 ul li {
padding:0 20px;
box-sizing: border-box;
}
#index #area01 ul li img {
max-width: 150px;
}
#index #area01 .txt {
text-align: center;
}
#index #area02 {
background:url(../img/index/bg01.png);
}
#index #area02 ul li {
background: #fff;
border-radius: 5px;
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: flex-start;
padding:30px;
box-sizing: border-box;
box-shadow: 3px 3px 5px rgba(49,48,48,0.1);
}
#index #area02 ul li img {
width:350px;
}
#index #area02 ul li .txt-box {
margin-left:30px;
}
#index #area02 ul li .ttl {
font-size: 150%;
line-height: 1.2;
display: table;
width: 100%;
margin-bottom:15px;
}
#index #area02 ul li .ttl::before {
content:"";
display: table-cell;
background:url(../img/index/feature1.png)no-repeat left center/55px 50px;
width: 55px;
height: 50px;
padding-right: 5px;
}
#index #area02 ul li:nth-child(2) .ttl::before {
background:url(../img/index/feature2.png)no-repeat left center/55px 50px;
}
#index #area02 ul li:last-child .ttl::before {
background:url(../img/index/feature3.png)no-repeat left center/55px 50px;
}
#index #area02 ul li .ttl b {
display: table-cell;
vertical-align: middle;
}
#index #area02 ul li:not(:last-child) {
margin-bottom:30px;
}
#index #area02 ul li:last-child {
margin-bottom:40px;
}
#index #area02 .box {
background:#fff;
border:3px solid #ee605e;
border-radius: 10px;
padding:40px 30px;
box-sizing: border-box;
position: relative;
}
#index #area02 .box .item {
max-width: 170px;
position: absolute;
top: -15px;
left: -20px;
}
#index #area02 .box .ttl {
font-size: 180%;
font-weight: bold;
line-height: 1.2;
margin-bottom:10px;
}
#index #area02 .box .img {
max-width: 304px;
position: absolute;
top:-30px;
right:0;
}
#index #area03 .img {
text-align: center;
}
#index #area03 .img img {
max-width: 810px;
}
#index #area03 p.buttom {
	width:250px;
	margin:0 auto;
}
#index #area03 p.buttom a{
	background:#F66;
	padding:10px;
	border-radius:5px;
	color:#FFF;
	font-weight:bold;
	font-size:150%;
}

/* company
-------------------------------------------------------*/
#other.company #visual {
background:url(../img/company/visual_bg.png)no-repeat center center/cover;
}
#other.company #area01 {
padding-bottom:0;
}
#other.company #area01 .dl-box {
width: 800px;
margin:0 auto;
}
#other.company #area01 dl {
display: table;
width: 100%;
}
#other.company #area01 dl:not(:last-child) {
border-bottom:1px solid #fff;
}
#other.company #area01 dl > * {
display: table-cell;
vertical-align: middle;
padding:15px 20px;
box-sizing: border-box;
}
#other.company #area01 dl dt {
width: 200px;
text-align: center;
color:#fff;
background: #ee6161;
font-weight: bold;
}
#other.company #area01 dl dd {
background: #fce3e3;
}
#other.company #area02 {
padding-bottom:0;
}
#other.company #area02 .ttl {
color:#ee605e;
font-size: 120%;
text-align: center;
margin-bottom:10px;
}
#other.company #area02 .txt {
text-align: center;
margin-bottom:20px;
}
#other.company #area02 .map {
width: 100%;
line-height: 0;
}
#other.company #area02 .map iframe {
width: 100%;
height: 300px;
}


/* flow
-------------------------------------------------------*/
#other.flow #visual {
background:url(../img/flow/visual_bg.png)no-repeat center center/cover;
}
#other.flow #area01 {
padding-bottom:90px;
}
#other.flow #area01 ul {
display: flex;
flex-flow: row nowrap;
align-items: stretch;
justify-content: space-between;
}
#other.flow #area01 ul li {
background:#fff8f8;
border:1px dashed #ee605e;
padding:25px 15px 30px;
box-sizing: border-box;
width: 230px;
}
#other.flow #area01 ul li .img {
display: flex;
flex-flow: row nowrap;
align-items: flex-end;
justify-content: center;
height: 65px;
}
#other.flow #area01 ul li img {
max-width:88px;
}
#other.flow #area01 ul li .txt > * {
display: block;
}
#other.flow #area01 ul li .txt b {
line-height: 1.2;
font-size: 110%;
text-align: center;
margin:10px 0;
}
#other.flow #area01 ul li .txt span {
line-height: 1.4;
font-size: 90%;
	text-align: center;
}
#other.flow #area02 dl {
margin-bottom:40px;
}
#other.flow #area02 dl > * {
display: table;
width: 100%;
}
#other.flow #area02 dl dt {
border-bottom:1px solid #61534a;
font-size: 120%;
padding-bottom:15px;
margin-bottom:15px;
line-height: 1.2;
}
#other.flow #area02 dl dt b,
#other.flow #area02 dl dd span{
display: table-cell;
vertical-align: middle;
width: 100%;
}
#other.flow #area02 dl dt::before {
content: "";
display: inline-block;
vertical-align: middle;
background: url(../img/flow/q.png)no-repeat left center/46px 46px;
width:46px;
height: 46px;
padding-right: 15px;
}
#other.flow #area02 dl dd::before {
content: "";
display: inline-block;
vertical-align: middle;
background: url(../img/flow/a.png)no-repeat left center/46px 46px;
width:46px;
height: 46px;
padding-right: 15px;
}


/* voice
-------------------------------------------------------*/
#other.voice #visual {
background:url(../img/voice/visual_bg.png)no-repeat center center/cover;
}
#other.voice #area01 {
padding-bottom:0;
}
#other.voice #area01 .txt {
font-size: 130%;
text-align: center;
}
#other.voice #area02 .img {
text-align: center;
}
#other.voice #area02 .img img {
max-width:810px;
}
	
#other.voice #area03 .table {
}
#other.voice #area03 .table tr {
border-bottom:1px solid #fff;
}
#other.voice #area03 .table tr > * {
padding:10px 15px;
box-sizing: border-box;
}
#other.voice #area03 .table tr th {
background:#61534A;
color:#fff;
vertical-align: middle;
}
#other.voice #area03 .table tr th:first-child {
width: 200px;
border-right: 1px solid #fff;
}
#other.voice #area03 .table tr th:not(:first-child) {
width: 400px;
}
#other.voice #area03 .table tr th.a_ttl {
background: #EE6161;
font-size: 160%;
border-right: 1px solid #fff;
}
#other.voice #area03 .table tr th.b_ttl {
background: #3C8CB6;
font-size: 160%;
}
#other.voice #area03 .table tr td {
background:#EEEEEE;
}
#other.voice #area03 .table tr td.a_txt {
background: #FCE3E3;
border-right: 1px solid #fff;
}
#other.voice #area03 .table tr td.b_txt {
background: #E2E8EB;
}
#other.voice #area03 .table tr td.center {
text-align: center;
}
#other.voice #area03 .table tr td.a_txt ul {
font-size: 110%;
line-height: 1.4;
}
#other.voice #area03 .table tr td ul {
margin-bottom:10px;
}
#other.voice #area03 .table tr td ul li {
padding-left:1em;
text-indent: -1em;
}
#other.voice #area03 .table tr td .txt {
font-size: 90%;
line-height: 1.3;
}
#other.voice #area03 .table tr td .big {
font-size:200%;
}
#other.voice #area03 .table tr:last-child td .big {
text-align: center;
display: block;
}
#other.voice #area03 .table tr .gray .txt {
margin-bottom:10px;
}
/*#other.voice #area02 {
background:url(../img/voice/bg01.png);
}*/
#other.voice #area02 ul li {
display: flex;
flex-flow: row nowrap;
align-items: flex-start;
justify-content: flex-start;
margin-bottom:30px;
background:#fff;
padding:30px;
box-sizing: border-box;
box-shadow: 3px 3px 5px rgba(0,0,0,0.1);
}
#other.voice #area02 ul li img {
width:350px;
max-width: 350px;
margin-right: 30px;
}
#other.voice #area02 ul li .txt > * {
display: block;
}
#other.voice #area02 ul li .txt>b {
font-size: 120%;
line-height: 1.2;
margin-bottom:20px;
}

.ul01 {
	position: relative;
	padding-left: 75px;
}

.ul01:before {
	position: absolute;
	content:"";
	background:url(../img/voice/txt_item.png) no-repeat;
	background-size: 62px;
	width: 62px;
	height: 62px;
	left: 0px;
	top: 50%;
	margin-top: -31px;
 }


/* contact
-------------------------------------------------------*/
#other.contact-page #visual {
background:url(../img/contact/visual_bg.png)no-repeat center center/cover;
}
#other.contact-page #area01 {
padding-bottom:0;
}
#other.contact-page #area01 .img {
text-align: center;
}
#other.contact-page #area01 .img img {
max-width:730px;
}
#other.contact-page #area01 .in,
#contact .in {
max-width: 730px;
width: 730px;
}
#contact #form {
width:100%;
}
#contact .text {
margin:0;
padding:3px;
height:40px;
box-sizing: border-box;
width:100%;
}
#contact textarea {
height: 100px!important;
}
#contact label {
display: inline-block;
}
#contact .ttl-txt {
color:#f68d8d;
font-size: 130%;
text-align: center;
line-height: 1.3;
font-weight: bold;
margin-bottom:20px;
}
#contact tr {
display: table;
width:100%;
}
#contact tr > * {
padding:10px 20px;
box-sizing: border-box;
display: table-cell;
vertical-align: middle;
line-height: 1;
}
#contact tr th {
font-weight: bold;
text-align: left;
width:230px;
background:url(../img/contact/hissu.png)no-repeat right 20px center/34px 18px;
}
#contact tr:last-child th {
background:url(../img/contact/nini.png)no-repeat right 20px center/34px 18px;
}
#contact .radio-area {
padding-bottom:10px;
}
#contact .radio-btn {
margin-bottom:10px;
margin: 5px 0;
}
#contact .contact-btn {
border:none;
border-radius: 5px;
color:#fff;
font-weight: bold;
font-size: 150%;
box-sizing: border-box;
padding:20px;
width: 65%;
max-width:300px;
margin:50px 10px 0;
background:#F7760D;
line-height: 1;
}
#contact .back-btn {
border:none;
border-radius: 5px;
color:#fff;
font-weight: bold;
font-size: 150%;
box-sizing: border-box;
padding:20px;
width: 65%;
max-width:300px;
margin:50px 10px 0;
background:#333;
line-height: 1;
}
#contact.conf .f_box {
display: flex;
flex-flow: row nowrap;
align-items: center;
justify-content: center;
}
#contact .error_messe {
color:red;
padding:0 20px;
}


/* network
-------------------------------------------------------*/
#network #visual {
	background:url(../img/network/visual_bg.png)no-repeat center center/cover;
}
#network_area .ttl01 {
	background: #EE605E;
	color: #fff;
	font-size: 24px;
	line-height: 1.3;
	font-weight: bold;
	height: 50px;
	padding: 0 20px;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0 0 20px;
}
#network_area h5 a {
	display: block;
	color: #EE605E;
	border-bottom: 1px solid #61534a;
	font-size: 26px;
	font-weight: bold;
	padding: 50px 0 10px;
	margin: 0 0 20px;
	line-height: 1;
	pointer-events: none;
}
#network_area h6 {
	font-weight: bold;
	font-size: 20px;
	margin: 0 0 20px;
	line-height: 1.3;
}
#network_area .section .box {
	margin: 0 0 20px;
}
#network_area .section table {
	width: 100%;
	margin: 0 0 50px;
}
#network_area .section table tr:not(:last-child) {
	border-bottom: 1px solid #fff;
}
#network_area .section table tr > * {
	padding: 15px 20px;
	box-sizing: border-box;
	line-height: 1.3;
	word-break: break-all;
	vertical-align: middle;
}
#network_area .section table tr td {
	background: #FCE3E3;
}
#network_area .section table tr th {
	background: #61534A;
	color: #fff;
	width: 200px;
	min-width: 200px;
}
#network_area .wrap {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
	justify-content: flex-start;
	margin: 0 0 50px;
}
#network_area .wrap .txt {
	margin: 0 30px 0 0;
}
#network_area .wrap .txt .big {
	font-size: 20px;
	margin: 0 0 10px;
	line-height: 1.3;
}
#network_area .wrap .txt p:nth-child(2) {
	margin: 0 0 20px;
}
#network_area .txt_arealink {
	margin: 0 0 15px;
	line-height: 1.3;
}
#network_area .AreaLink {
	margin: 0 0 45px;
}
#network_area .AreaLink a {
	width: 85px;
	min-width: 85px;
	height: 25px;
	border-radius: 5px;
	color: #61534A;
	border: 1px solid #61534A;
	background: #F5E9E0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 5px 5px 0;
	box-sizing: border-box;
}
#network_area .AreaLink span a {
	border: none;
	background: none;
}
#network_area .img01 img,
#network_area .img03 img,
#network_area .img05 img {
	width: 300px;
}
#network_area .img04 img {
	width: 160px;
}
#network_area .img02 {
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-start;
	justify-content: flex-start;
}
#network_area .img02 img {
	max-width: 300px;
	width: auto;
}
#network_area .img02 img:last-child {
	margin: 0 0 0 10px;
}
@media screen and (max-width:768px) {
#network_area .ttl01 {
	font-size: 110%;
	height: 40px;
}
#network_area h5 a {
	font-size: 100%;
	padding: 30px 0 10px;
}
#network_area h6 {
	font-size: 100%;
}
#network_area .section table {
	margin: 0 0 30px;
}
#network_area .section table tr > * {
	padding: 15px;
}
#network_area .section table tr th {
	width: 100px;
	min-width: 100px;
	vertical-align: middle;
}
#network_area .wrap {
	flex-flow: column-reverse;
	margin: 0 0 30px;
}
#network_area .wrap .txt {
	margin: 20px 0 0;
	width: 100%;
}
#network_area .wrap .txt .big {
	font-size: 100%;
}
#network_area .AreaLink {
	margin: 0 0 30px;
}
#network_area .AreaLink a {
	width: 85px;
	min-width: 85px;
	height: 25px;
	border-radius: 5px;
	color: #61534A;
	border: 1px solid #61534A;
	background: #F5E9E0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin: 0 5px 5px 0;
	box-sizing: border-box;
}
#network_area .AreaLink span a {
	border: none;
	background: none;
}
#network_area .img01 img,
#network_area .img03 img,
#network_area .img05 img {
	width: 100%;
	max-width: 300px;
}
#network_area .img04 img {
	width: 100%;
	max-width: 160px;
}
#network_area .img02 {
	display: block;
	text-align: center;
}
#network_area .img02 img {
	max-width: 300px;
	width: 100%;
	margin: 0!important;
}
#network_area .img02 img:first-child {
	margin: 0 0 20px!important;
}
}