@charset "utf-8";
 html,body{
height: 100%;
}
html{
font-size: 62.5%;
overflow-y: scroll;
}
*, *::before, *::after{
box-sizing: border-box;
font-family: "游明朝", YuMincho, "source-han-serif-japanese", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
}
body, h1, h2, h3, h4, h5, h6, p, address, time,
ul, ol, li, dl, dt, dd,
table, th, td, img, form{
color: #000;
margin: 0;
padding: 0;
border: none;
line-height: 100%;
list-style-type: none;
font-style: normal;
font-weight: normal;
word-wrap : break-word;
overflow-wrap : break-word;
}
input, button, textarea  {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none;
border-radius: 0;
resize: none;
outline: none;
background: none;
}
a{
color: #172145;
text-decoration:none;
}
img{
vertical-align: bottom;
max-width: 100%;
height: auto;
}
.ten-min, .ttl-tate {
font-family: "ten-mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", serif;
} body{
min-width: 1100px;
font-size: 1.0rem;
text-align: left;
}
section {
position: relative;
}
main section {
background: #fff;
}
p,table,dl,ul,ol {
font-size: 1.4rem;
line-height: 1.6;
}
.txt{
font-size: 1.4rem;
line-height: 2;
text-align: left;
}
.fade,
.blackfade{
transition: opacity 0.3s ease;
transform: translateZ(0)rotate(0.0001deg);
-webkit-backface-visibility: hidden;
backface-visibility:hidden;
outline: 1px solid transparent;
}
.fade *{
outline: 1px solid transparent;
}
.fade:hover{
opacity: .6;
cursor: pointer;
}
.blackfade{
background: #000;
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
opacity: 0;
z-index: 10;
}
.blackfade:hover{
opacity: .4;
cursor: pointer;
}
.full-img {
width: 100%;
max-width: 100%;
overflow: hidden;
position: relative;
}
.full-img img {
display: block;
position: relative;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 100%;
min-width: 1400px;
max-width: inherit;
}
.h-center{
position: absolute;
left: 50%;
transform: translateX(-50%)translateZ(0);
}
.v-center{
position: absolute;
top: 50%;
transform: translateY(-50%)translateZ(0);
}
.hv-center{
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%)translateZ(0);
}
.flex {
display: flex;
justify-content: space-between;
}
.left{
float: left;
}
.right{
float: right;
}
.center{
display: block;
text-align: center;
margin-left: auto;
margin-right: auto;
}
.wrap{
width: calc(960px + 60px);
padding: 0 30px;
margin: 0 auto;
position: relative;
}
#overlay {
display: block;
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.8);
opacity: 0;
pointer-events: none;
transition: opacity 0.3s ease;
z-index: 998;
}
#overlay.active {
opacity: 1;
pointer-events: auto;
}
.bg-grey {
background: #f6f6f6;
}
.main-img {
background-repeat: no-repeat;
background-position: center;
background-size: cover;
height: 40vw;
overflow: hidden;
position: relative;
}
.main-img iframe {
width: 100vw;
height: 56vw;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%,-50%);
}
#loading {
background-repeat: no-repeat;
background-position: center center;
background-size: cover;
position: fixed;
width: 100%;
height: calc(40vw + 70px);
top: 0;
left: 0;
}
.ttl-tate {
-webkit-writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
writing-mode: vertical-rl;
position: absolute;
left: 30px;
top: 60px;
float: none;
font-size: 3.6rem;
line-height: 1;
white-space: nowrap;
}
.ttl-tate.right {
left: auto;
right: 30px;
}
.ttl-tate span {
font-size: 1.2rem;
text-transform: uppercase;
}
.gecko .ttl-tate span {
display: inline-block;
margin-right: 10px;
}
.main-wrap {
padding: 200px 160px;
position: relative;
}
.main-wrap.left {
float: none;
padding-left: 0;
padding-right: 150px;
}
.main-wrap.right {
float: none;
padding-right: 0;
padding-left: 150px;
} header{
position: fixed;
width: 100%;
top: 0;
left: 0;
z-index: 1000;
background: #f0f0f0;
}
header.fixed{
position: fixed;
top: 0;
}
header .wrap{
display: flex;
justify-content: space-between;
}
header .menu_wrap{
height: 70px;
}
header .logo{
position: relative;
margin-right: 40px;
}
header .nav_wrap{
flex-grow: 1;
}
header nav{
display: flex;
justify-content: flex-end;
align-items: center;
}
header nav .gnavi{
display: flex;
justify-content: flex-start;
flex-grow: 1;
}
header nav .gnavi > li{
height: 70px;
line-height: 70px;
}
.ie header nav .gnavi > li{
padding-top: .2em;
margin-bottom: -.2em;
}
header nav .gnavi > li+li{
margin-left: 10px;
}
header nav .gnavi > li > a{
display: block;
color: #172145;
font-size: 1.2rem;
padding: 0 .5em;
text-transform: uppercase;
font-style: italic;
position: relative;
}
header nav .gnavi > li > a::before{
content: '';
position: absolute;
left: .5em;
top: calc( 50% + 1em );
height: 1px;
width:  0;
background: #172145;
transition: width .3s ease;
}
header nav .gnavi > li > a:hover::before{
width:  calc( 100% - 1em );
}
header nav .sns li+li{
margin-left: 10px;
}
header nav .sns,
header nav .mail{
margin-left: 30px;
justify-self: flex-end;
}
header nav .mail{
font-size: 0;
line-height: 0;
}
main {
padding-top: 70px;
}
footer{
width: 100%;
background: #fff;
}
footer .contact{
background: #f0f0f0;
padding: 100px 0;
}
footer .contact h3{
color: #172145;
font-size: 2.4rem;
line-height: 1.2;
text-transform: lowercase;
}
footer .contact .txt{
color: #172145;
font-size: 1.2rem;
margin-bottom: 30px;
}
footer .contact .mail{
width: 480px;
}
footer .contact .mail dl{
flex-wrap: wrap;
border-bottom: 1px solid #d5d5d5;
}
footer .contact .mail dl dt,
footer .contact .mail dl dd{
border-top: 1px solid #d5d5d5;
padding: 5px 0;
}
footer .contact .mail dl dt{
width: 30%;
line-height: 2;
}
footer .contact .mail dl dt.required::after{
content: '＊';
margin-left: .2em;
}
footer .contact .mail dl dd{
width: 70%;
}
footer .contact .mail dl dd input, footer .contact .mail dl dd textarea{
width: 100%;
background: #fff;
padding: .5em .8em;
font-family: sans-serif;
font-size: 1.4rem;
}
footer .contact .mail input[type=submit]{
display: block;
width: 100%;
background: #8a8a8a;
color: #fff;
padding: 1em 0;
font-size: 1.6rem;
margin-top: 30px;
}
.ie footer .contact .mail input[type=submit]{
padding-top: calc( 1em + .2em );
padding-bottom: calc( 1em - .2em );
}
footer .contact .facebook{
width: 430px;
}
footer .link{
padding: 100px 0;
background: #fff;
}
footer .link ul{
flex-wrap: wrap;
}
footer .link ul li{
width: calc( 100% / 3 );
display: flex;
justify-content: center;
align-items: center;
}
footer .link ul li:nth-child(n+4){
margin-top: 60px;
}
footer .footer{
background: #8a8a8a;
padding: 20px 0;
}
footer .footer .wrap{
padding-right: 15px;
width: 100%;
align-items: center;
}
footer .footer .info{
flex-grow: 1;
justify-content: flex-start;
align-items: center;
}
footer .footer .txt{
font-size: 1.2rem;
line-height: 1.3;
font-style: italic;
margin-left: 1em;
}
.ie footer .footer .txt{
padding-top: .2em;
}
footer .footer .privacy {
font-size: 1.2rem;
margin-right: 30px;
}
footer .footer .copy{
font-size: 1.2rem;
margin-right: 30px;
}
.ie footer .footer .copy{
padding-top: .2em;
}
@media screen and (min-width : 768px){
.sp{
display:none!important;
}
.col2{width:50%;float:left;
margin-bottom:40px;}
.col2 p{margin:10px 30px 60px!important;}
}
@media screen and (max-width : 767px){
.col2{width:100%;}
#service .content p.catch{margin-left:10px!important;
margin-right:10px!important;
margin-bottom:12%!important;}
.pc{
display:none!important;
}
body{
min-width:inherit;
}
.wrap{
width: 100%;
padding: 0 3%;
}
p{
font-size: 1.3rem;
}
.txt {
font-size: 1.3rem;
line-height: 1.8;
}
.fixed {
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.full-img img {
display: block;
position: static;
transform: translateX(0);
width: 100%;
min-width: inherit;
}
.main-img {
height: 50vw;
margin-bottom: 15%;
}
.ttl-tate {
-webkit-writing-mode: inherit;
-ms-writing-mode: inherit;
writing-mode: inherit;
position: static;
font-size: 2.8rem;
line-height: 1;
margin: 12% 0;
white-space: normal;
}
.ttl-tate span {
font-size: 1.2rem;
margin-left: .5em;
text-transform: uppercase;
}
.main-wrap {
padding: 0 0 15%;
}
.main-wrap.left {
padding-right: 0;
}
.main-wrap.right {
padding-left: 0;
}
header,header.fixed,
header .wrap,
header .menu_wrap{
width: 100%;
height: 60px;
}
header,header.fixed{
background-color: transparent;
position: fixed;
top: 0;
left: 0;
padding: 0;
margin: 0;
z-index: 999;
}
header .wrap{
padding: 0;
display: block;
position: relative;
min-width: inherit;
}
header .menu_wrap{
position: relative;
background: rgba(255,255,255,.8);
z-index: 999;
padding: 0;
}
header.navOpen .menu_wrap{
background: #fff;
}
header .logo{
position: absolute;
left: 3%;
height: 40%;
}
header .logo img{
width: auto;
height: 100%;
}
header .menu-trigger{
display: block;
position: fixed;
top: 15px;
right: 3%;
width: 30px;
height: 30px;
z-index: 999;
}
header .menu-trigger span {
display: inline-block;
transition: all .4s;
position: absolute;
left: 0;
width: 100%;
height: 2px;
background-color: #172145;
}
header .menu-trigger span:nth-of-type(1) {
top: 15%;
}
header .menu-trigger span:nth-of-type(2) {
top: 50%;
transform: translateY(-50%);
}
header .menu-trigger span:nth-of-type(3) {
bottom: 15%;
}
header.navOpen .menu-trigger span:nth-of-type(1) {
top: 50%;
transform: translateY(-50%)rotate(-45deg);
}
header.navOpen .menu-trigger span:nth-of-type(2) {
opacity: 0;
}
header.navOpen .menu-trigger span:nth-of-type(3) {
bottom: 50%;
transform: translateY(50%)rotate(45deg);
}
header .nav_wrap{
opacity: 0;
width: 100%;
padding: 0;
position: static;
overflow-y: auto;
max-height: calc(90vh - 60px);
transform: translateY(-100%);
transition: transform .3s, opacity 1s;
}
header.navOpen .nav_wrap{
opacity: 1;
transform: translateY(0);
transition: transform .3s, opacity 0s;
}
header nav{
background: #eee;
top: 0;
left: 0;
width: 100%;
height: auto;
position: relative;
padding: 5% 0 8%;
margin: 0;
display: block;
}
header nav .gnavi{
margin: 0;
display: block;
}
header nav .gnavi > li{
display: block;
height: auto;
position: relative;
}
header nav .gnavi > li+li{
margin: 0;
}
header nav .gnavi > li > a,
header nav .gnavi > li > p{
background: transparent;
display: block;
color: #000;
font-size: 4vw;
line-height: 1;
padding: 4% 5%;
position: relative;
text-align: center;
}
header nav .gnavi > li > a::before{
display: none;
}
header nav .sns li+li{
margin-left: 10px;
}
header nav .sns,
header nav .mail{
margin: 5% 0 0;
justify-content: center;
text-align: center;
}
main{
padding-top: 60px;
}
footer{
padding: 0;
}
footer .contact{
padding: 10% 0;
}
footer .contact .wrap{
display: block;
}
footer .contact .mail{
width: 100%;
}
footer .contact .mail dl{
display: block;
}
footer .contact .mail dl dt,
footer .contact .mail dl dd{
padding: 5px 0;
width: 100%;
}
footer .contact .mail dl dt{
padding-bottom: 0;
}
footer .contact .mail dl dd{
border-top: 0;
padding-top: 0;
}
footer .contact .mail input[type=submit]{
margin-top: 5%;
padding: .8em 0;
}
footer .contact .facebook{
width: 100%;
margin-top: 10%;
}
footer .contact .facebook .iframe{
text-align: center;
}
footer .link{
padding: 10% 0;
}
footer .link ul li{
width: 46%;
}
footer .link ul li:nth-child(n+3){
margin-top: 5%;
}
footer .footer{
padding: 8% 0;
}
footer .footer .wrap{
padding-right: 15px;
display: block;
text-align: center;
}
footer .footer .info{
display: block;
}
footer .footer .txt{
line-height: 1.6;
margin-left: 0;
text-align: center;
margin-top: 3%;
}
footer .footer .txt a{
color: #000;
}
footer .footer .privacy{
margin: 5% 0 5%;
}
footer .footer .copy{
margin: 5% 0 5%;
}
} .cf{
zoom:1;
}
.cf::after{
content: " ";
display: block;
height: 0;
clear: both;
visibility: hidden;
overflow: hidden; font-size: 0.1em; line-height: 0; } .scroll-show,.scroll-show-delay * {
transition: opacity .6s, transform .6s!important;
opacity: 0!important;
transform: translateY(30px)!important;
}
.scroll-show.active,.scroll-show-delay .active {
opacity: 1!important;
transform: translateY(0)!important;
}
.scroll-show-delay:nth-of-type(2) {
transition-delay: .2s;
}
.scroll-show-delay:nth-of-type(3) {
transition-delay: .4s;
}
.scroll-show-delay:nth-of-type(4) {
transition-delay: .6s;
}
.scroll-show-delay:nth-of-type(5) {
transition-delay: .8s;
}
.scroll-show-delay:nth-of-type(6) {
transition-delay: 1s;
}
.ttnone{text-transform:none!important;}