﻿@charset "utf-8";
/* Reset */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,big,cite,code,del,dfn,img,ins,kbd,q,samp,small,sub,sup,tt,var,center,dl,dt,dd,ol,ul,li,b,i,s,strike,address,form,label{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;min-height:0;max-height:999999px;}
strong,em,u{margin:0;padding:0;border:0;font-size:100%;vertical-align:baseline;}
body{background:#ffffff;font-size:16px;font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;line-height:2;-webkit-text-size-adjust:100%;}
h1,h2,h3,h4,h5,h6,ul,ol,li,dl,dt,dd,p{padding:0;margin:0;font-weight:normal;font-size:1em;}
ul{list-style-type:none;}
p{padding-bottom:1.2em;}
table,caption,tbody,tfoot,thead,tr,th,td{font-size:100%;font:inherit;}
table,caption,tbody,tfoot,thead{vertical-align:top;}
textarea,table{font-size:1.0em;}
img,a{border:0;outline:none;}
address{font-style:normal;display:inline;}

.mbc{color:#ed817c;}
a{color:#3fa9f5;}
#service h4::before,
.mbg{background-color:#ed817c;}
.mbl{border-color:#ed817c;}
.sbc{color:#a0d7ff;}
.sbg{background-color:#d9efff;}
.sbc2{color:#e6e6e6;}
.sbg2{background-color:#fafafa;}
.sbg3{background-color:#e6e6e6;}
#service h4::after,
.ebg{background:-moz-linear-gradient(left,#ff919e, #a0e3ff);background:-webkit-linear-gradient(left,#ff919e, #a0e3ff);background:linear-gradient(to right,#ff919e, #a0e3ff);}
.rbg{background:-moz-linear-gradient(left,#d9f4ff, #f8cdcb);background:-webkit-linear-gradient(left,#d9f4ff, #f8cdcb);background:linear-gradient(to right,#d9f4ff, #f8cdcb);}
.wbc{color:#fff;}
.wbg{background-color:#fff;}
.wbl{border-color:#fff;}
.jp{font-family:'Noto Sans JP', sans-serif;}
.en{font-family:'Open Sans', sans-serif;}
.tac{text-align:center;}

/* Base */
element or parent element{width:100%;height:auto;min-height:1px;max-height:999999px;}
@media all and (min-width:600px){a[href^="tel:"]{pointer-events:none;color:inherit;}}
@meida all and (min-width:1000px){a{opacity:1;transition:0.3s ease-in-out;}}
.clear{clear:both;}
.clearfix:after,.clf:after{content:"";clear:both;display:block;}

body{position:relative;background-attachment: fixed;background-image:url(../img/bg.jpg);background-size:cover;}
.inner{max-width:1440px;margin:0 auto;box-sizing:border-box;}
.inner2{max-width:1000px;margin:0 auto;box-sizing:border-box;}

/* HEADER */
header{position:fixed;width:100%;z-index:10;background:linear-gradient(rgba(255,255,255,1),rgba(255,255,255,0))}
header .inner{padding-bottom:20px;background-image:linear-gradient(rgba(255,255,255,1),transparent 100%);}
header h1{padding-top:55px;width:210px;}
header h1 img{display:block;width:100%;height:auto;}
header nav{position:absolute;top:0;width:100%;}
header nav ul{display:flex;width:100%;border-radius:0 0 10px 10px;}
header nav li{position:relative;width:20%;}
header nav li:not(:first-child)::before{content:"";display:block;position:absolute;top:50%;left:0;transform:translate(0,-50%);width:1px;height:20px;background:#fff;}
header nav li a{position:relative;display:block;height:20px;padding:15px 5px;text-align:center;font-size:0.75em;line-height:20px;transition: all 0.5s ease-out;overflow:hidden;}
header nav li a:hover{background:rgba(255,255,255,0.2);}
header nav li a span{position:absolute;left:50%;display:block;width:100%;transition: all 0.5s ease-out;transform:translate(-50%,-50%);}
header nav li a .jp,
header nav li a:hover .en{top:50%;opacity:1;}
header nav li a:hover .jp,
header nav li a .en{top:75%;opacity:0;}

@media all and (min-width:600px){
header h1{padding-top:5px;}
header nav{width:calc(100% - 220px);width:-webkit-calc(100% - 220px);max-width:720px;right:10px;}
header nav li a{padding:20px 10px;font-size:0.875em;}
}

@media all and (min-width:1000px){
header .inner{padding-bottom:50px;}
header h1{padding-top:10px;width:280px;}
header nav{width:calc(100% - 300px);width:-webkit-calc(100% - 300px);right:20px;}
header nav li a{padding:30px 10px;font-size:1.0em;}
}

@media all and (min-width:1460px){
header nav{left:50%;}
}


/* MAIN */
main{position:relative;width:100%;}
main::before{content:"";display:block;position:relative;width:100%;height:120px;}

@media all and (min-width:600px) and (max-width:999px){
main::before{height:90px;}
}

/* MAIN IMAGE */
#mainImage{position:relative;width:100%;height:calc(100vh - 170px);max-height:876px;overflow:hidden;}
#mainImage .img{position:absolute;top:0;right:0;width:100%;max-width:1440px;height:100%;background-size:cover;background-position:center;}
#mainImage h2{position:absolute;bottom:10%;left:20px;font-size:20px;line-height:50px;letter-spacing:0.1em;}
#mainImage h2 span{padding:5px 15px;}
@media all and (min-width:400px){#mainImage h2{font-size:25px;line-height:58px;}}
@media all and (min-width:600px){#mainImage h2{bottom:15%;font-size:30px;line-height:66px;}}
@media all and (min-width:800px){#mainImage h2{font-size:35px;line-height:74px;}}
@media all and (min-width:1000px){#mainImage h2{bottom:20%;font-size:40px;line-height:82px;}}

@media all and (min-width:600px){
#mainImage{height:calc(100vh - 190px);}
}

@media all and (min-width:1000px){
#mainImage{height:calc(100vh - 220px);}
}

@media all and (max-width:1469px){section .inner{margin:0 15px;}}
@media all and (max-width:1029px){section .inner2{margin:0 15px;}}

@media all and (min-width:1500px){
#mainImage h2{left:40px;font-size:45px;line-height:90px;}
}

@media all and (min-width:1680px){
#mainImage h2{left:calc(100% - 1640px);}
}


/* CONTENTS */
article{margin-top:50px;}
article section{padding:100px 0;}
article h2{text-align:center;margin-bottom:30px;line-height:30px;}
article h2 .jp{font-size:1.0em;}
article h2 .en{font-size:2em;}

@media all and (min-width:600px){
article{margin-top:100px;}
}

@media all and (min-width:1000px){
article section{padding:200px 0;}
article section h2{margin-bottom:40px;line-height:40px;}
article section h2 .jp{font-size:1.25em;}
article section h2 .en{font-size:2.5em;}
}


/* NEWS */
#news{max-width:1000px;margin:0 auto;}

#news dl{padding:30px 0;border-bottom:solid 1px #ccc;}
#news dt,
#news dd h3{font-size:18px;}
#news dd a{color:inherit;}
#news dd p{padding:0;}

@media all and (min-width:1000px){
#news dl{display:flex;}
#news dt{width:15%;}
#news dd{width:85%;}
}


/* COMPANY */
#company table{width:100%;margin:0 auto;border-top:solid 1px #fff;font-size:0.75em;}
#company th{width:25%;border-right:solid 1px #fff;}
#company th,
#company td{padding:10px 5px;border-bottom:solid 1px #fff;}

@media all and (min-width:600px){
#company table{font-size:1em;}
#company th,
#company td{padding:15px;}
}
@media all and (min-width:1000px){
#company table{font-size:1.25em;}
#company th,
#company td{padding:20px 5%;}
}


/* SERVICE */
#service h3{padding:10px 20px;margin-bottom:40px;font-size:22px;line-height:25px;border-radius:0 10px 0 0;}
#service h4{position:relative;padding:10px 0 15px 20px;margin-bottom:20px;font-size:20px;line-height:20px;}
#service h4::before{content:"";position:absolute;top:15px;left:0;display:block;width:10px;height:10px;}
#service h4::after{content:"";position:absolute;bottom:0;left:0;right:0;display:block;width:100%;height:1px;}
#service h5{padding:8px 20px;margin-bottom:20px;font-size:18px;line-height:20px;}
#service h5 a{color:inherit;}
#service ul{display:flex;margin-bottom:30px;}
#service .menu{justify-content:space-between;}
#service .menu li{width:8%;border-radius:10px;border:solid 1px #ed817c;transition:0.3s ease-in-out;}
#service .menu a{display:block;text-decoration:none;text-align:center;border-radius:10px;border:solid 1px #fff;font-size:0.875em;transition:0.3s ease-in-out;}
#service .menu li:hover{border-color:#3fa9f5;}
#service .menu a:hover{background-color:#3fa9f5;}
#service .list{flex-wrap:wrap;}
#service .list li{width:100%;line-height:2.0em;}
#service .list li::before{content:"・";dipslay:inline;font-weight:bold;}

@media all and (min-width:600px){
#service ul{margin-bottom:50px;}
#service .menu a{font-size:0.9375em;}
#service .list li{width:50%;}
}

@media all and (min-width:1000px){
#service .menu a{font-size:1.0em;}
#service .listli{width:calc(100% / 3);width:-webkit-calc(100% / 3);line-height:2.5em;}
}



/* ACCESS */
.nearest{font-size:18px;line-height:40px;}
.nearest::before{content:"";display:inline-block;width:40px;height:40px;padding-right:10px;background:url(../img/icon.svg) no-repeat left top;background-size:40px 40px;vertical-align:bottom;}

@media all and (min-width:600px){
.nearest{font-size:25px;line-height:60px;}
.nearest::before{width:60px;height:60px;background-size:60px 60px;}
}


/* CONTACT */
#contact .inner{padding:50px 15px;}
#contact form{max-width:1000px;margin:0 auto;}

@media all and (min-width:1000px){
#contact .inner{padding:100px 50px;}
}

footer .inner{padding:50px 0;}
footer .info span{display:inline-block;padding-right:1em;}
#copy .inner{padding:15px;}