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

/*-----------------------------------------------
#E86480
-----------------------------------------------*/


/*-----------------------------------------------
  text
-----------------------------------------------*/

a       { color:#E86480; text-decoration:none; }
a:hover { color:#E86480; text-decoration:none; }


body {
font-size:16px;
line-height:1.4;
font-family: 'Noto Sans JP', sans-serif;
color:#111;
}


/*-----------------------------------------------
  form
-----------------------------------------------*/

select {
padding:0.5em;
font-size:16px;
border:1px solid #CCC;
border-radius:2px;
box-sizing:border-box;
-webkit-appearance:none;
}
input[type=text], textarea {
padding:0.5em;
font-size:16px;
background:#FFF;
border-radius:2px;
border:1px solid #CCC;
box-sizing:border-box;
-webkit-appearance:none;
}
input[type=submit] {
color:#FFF;
background:#E86480;
border:none;
border-radius:2px;
-webkit-appearance:none;
}
input[type=submit].modify {
background:#999;
}
input[type=submit]:hover {
opacity:0.8;
}


/*-----------------------------------------------
  header
-----------------------------------------------*/

header {
display:flex;
flex-flow:row wrap;
justify-content:space-between;
align-items:center;
width:92%;
max-width:1000px;
margin:0 auto;
padding:1em 0;
}
header .siteName {
width:75%;
max-width:400px;
}
header .tel span {
padding-left:1.2em;
font-size:1.8em;
background:url(../img/ico_tel.png) left center no-repeat;
background-size:1em;
}
header .hour {
font-size:0.75em;
}

header .menuBtn {
display:none;
position:relative;
width:35px;
height:35px;
}
header .menuBtn:before,
header .menuBtn:after,
header .menuBtn span{
display:block;
width:80%;
position:absolute;
left:0;
right:0;
margin:auto;
transition:.35s ease-in-out;
}
header .menuBtn span{
height:2px;
background:#E86480;
top:calc(50% - 1.5px);
}
header .menuBtn:before{
content:"";
top:calc(25% - 3px);
border-top:2px solid #E86480;
}
header .menuBtn:after{
content:"";
bottom:calc(25% - 3px);
border-bottom:2px solid #E86480;
}
header .menuBtn.on span{
display:none;
}
header .menuBtn.on:before{
top:calc(50% - 1.5px);
-webkit-transform:rotate(315deg);
-moz-transform:rotate(315deg);
transform:rotate(315deg);
}
header .menuBtn.on:after{
bottom:calc(50% - 1.5px);
-webkit-transform:rotate(-315deg);
-moz-transform:rotate(-315deg);
transform:rotate(-315deg);
}

@media screen and (max-width:750px) {
header .data {
display:none;
}
header .menuBtn {
display:block;
}
}


/*-----------------------------------------------
  nav
-----------------------------------------------*/

nav {
background:#E86480;
}
nav ul {
display:flex;
flex-flow:row nowrap;
justify-content:center;
align-items:center;
width:100%;
max-width:1000px;
margin:0 auto;
background:#E86480;
}
nav li {
width:18%;
margin: 4px 0;
text-align:center;
border-left:1px dotted #FFF;
box-sizing: border-box;
}
nav li:last-child {
border-right:1px dotted #FFF;
}
nav li.home {
width:10%;
}
nav li.home img {
width:1.5em;
margin:0 auto;
}
nav a {
display:block;
padding:0.75em 0;
color:#FFF;
background:#E86480;
transition:all 0.3s ease;
}
nav a:hover {
text-decoration: none;
color:#FFF;
background:rgba(0,0,0,0.1);
}
nav a.active {
background:rgba(0,0,0,0.1);
}

@media screen and (max-width:750px) {
nav {
display:none;
padding:0;
}
nav ul {
flex-direction:column;
padding:0;
}
nav li {
width:100%;
max-width:100%;
margin: 0;
border: 0;
border-bottom:1px dotted #FFF;
}
nav li:first-child {
border-left:0;
}
nav li.home {
width:100%;
max-width:100%;
}
}


/*-----------------------------------------------
  main
-----------------------------------------------*/

main {
min-height:400px;
margin:0 auto;
}

/* h1 */
main h1 {
width: 92%;
max-width: 1000px;
margin: 2.5em auto 0 auto;
padding: 0.5em 0.75em;
font-size: 1.5em;
line-height: 1.2;
letter-spacing: 0.2em;
color: #E86480;
background: #FFC;
border-top:1px solid #E86480;
border-bottom:1px solid #E86480;
box-sizing: border-box;
}

@media screen and (max-width:640px) {
	main h1 {
	margin-top: 4%;
	font-size: 1.25em;
	}
}

/* h2 */
main h2 {
padding: 0.5em 1em;
font-size: 1.2em;
line-height: 1.2;
letter-spacing: 0.2em;
color: #E86480;
background: #F1F1F1;
border-radius: 0.2em;
}
@media screen and (max-width:640px) {
	main h2 {
	font-size: 1.1em;
	}
}

main section {
width: 92%;
max-width: 1000px;
margin:4em auto;
padding: 0 4%;
}
@media screen and (max-width:640px) {
	main section {
	margin: 8% auto;
	}
}

/* btn_more */
main .btn_more {
width:100%;
max-width:16em;
margin:1em auto 0 auto;
text-align:center;
}
main .btn_more a {
display:block;
padding:1.25em;
color:#FFF;
background:#666;
background:-moz-linear-gradient(top, #777 0%, #777 49%, #666 50%, #777 100%);
background:-webkit-linear-gradient(top, #777 0%, #777 49%, #666 50%, #777 100%);
background:linear-gradient(to bottom, #777 0%, #777 49%, #666 50%, #777 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#777', endColorstr='#666',GradientType=0 );
}
main .btn_more a:hover {
text-decoration:none;
opacity:0.8;
}
main .btn_more span {
padding-left:1.2em;
background:url(../img/arw_left02.png) left center no-repeat;
background-size:0.8em;
}


/*-----------------------------------------------
  footer
-----------------------------------------------*/

footer {
margin-top:4em;
background:#F5F5F5;
}
footer .bnr {
display: flex;
flex-flow: row nowrap;
justify-content: space-between;
align-items: center;
width: 92%;
max-width: 800px;
margin:0 auto;
}
footer .company {
display:flex;
flex-flow:row nowrap;
justify-content:center;
align-items:center;
width: 92%;
max-width: 800px;
margin:0 auto;
padding: 2em 0;
}
footer .company .photo {
width:48%;
}
footer .company dl {
width:48%;
margin-left:1.5em;
}
footer .company dt {
font-size:1.4em;
font-weight:bold;
}
footer .company .post {
margin-top:1em;
}
footer .company .tel a {
padding-left:1.2em;
font-size:1.8em;
color: #111;
background:url(../img/ico_tel.png) left center no-repeat;
background-size:1em;
}
footer .company .tel a:hover {
text-decoration: none;
}
footer .company .contact {
margin-top:1em;
}
footer .company .contact a {
display:block;
padding:1em;
color:#FFF;
background-color: #E86480;
border-radius:0.2em;
transition:all 0.3s ease;
}
footer .company .contact a:hover {
text-decoration: none;
opacity:0.8;
}
footer .company .contact span {
padding-left:1.5em;
background:url(../img/arw_left_white.png) left center no-repeat;
background-size:1em;
}
footer .bnr {
padding-top: 2em;
margin-bottom: 2em;
border-top: 1px dotted #999;
}
footer .bnr li {
width:80%;
max-width: 200px;
margin: 0 auto;
border: 1px solid #CCC;
}
footer .navi {
display:flex;
flex-flew:row wrap;
justify-content:center;
}
footer .navi li {
padding:0 1.5em;
border-left:1px solid #FFF;
}
footer .navi li:first-child {
border-left:0;
}
footer .navi a {
color:#FFF;
}
footer .navi a:hover {
text-decoration:underline;
}
footer .copyright {
padding: 1.5em 0;
font-size:0.85em;
text-align:center;
color:#FFF;
background:#E86480;
}

@media screen and (max-width:640px) {
footer .company {
flex-direction:column;
}
footer .company .photo {
width: 100%;
}
footer .company dl {
width: 100%;
margin:1em 0 0 0;
text-align:center;
}
footer .navi {
flex-direction:column;
background:#FFF;
}
footer .navi li {
padding:0;
border-top:1px solid #CCC;
border-left:0;
}
footer .navi a {
display:block;
padding:1em 0;
color:#333;
}
footer .navi a:hover {
text-decoration:none;
}
footer .copyright {
margin-top:2em;
}
}

/*-----------------------------------------------
  page Top
-----------------------------------------------*/

#pagetop {
position:fixed;
bottom:0;
right:0;
}
#pagetop a {
display:block;
padding:20px;
background:#E86480;
transition:all 0.3s ease;
opacity:0.9;
}
#pagetop img {
width:20px;
}
#pagetop a:hover {
text-decoration:none;
opacity:0.5;
}


/*-----------------------------------------------
  error404
-----------------------------------------------*/


#error404 {
width:90%;
max-width:1000px;
margin:6em auto 0 auto;
}
#error404 p {
line-height:1.8;
text-align:center;
}

