@charset 'utf-8';
/* CSS Document */
img
{
display: block;

max-width: 100%;
height: auto;
}
/*================*/
*
{
font-family: 'ÃƒÂ¦Ã‚Â¸Ã‚Â¸ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â´ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â·ÃƒÂ£Ã†â€™Ã†â€™ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¯ Medium',YuGothic,YuGothicM,'Hiragino Kaku Gothic ProN','Hiragino Kaku Gothic Pro',ÃƒÂ£Ã†â€™Ã‚Â¡ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â¤ÃƒÂ£Ã†â€™Ã‚ÂªÃƒÂ£Ã¢â‚¬Å¡Ã‚Âª,Meiryo,sans-serif;

margin: 0;
padding: 0;

list-style: none;
}
*::after,
*
{
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
        box-sizing: border-box;
}
a
{
transition: .2s;
}
a:hover
{
opacity: .8;
}
h2
{
font-size: 46px;
font-weight: normal;

margin-top: -80px;
padding-top: 100px;
padding-bottom: .3em;

text-align: center;
letter-spacing: 1px;
}
a
{
text-decoration: none;
}

.recruit-button {
    display: inline-block;
    padding: 15px 30px;
    background-color: #fff;
    color: #4bb0e4!important;
    border-radius: 8px;
    font-size: 26px;
    text-align: center;
    transition: all 0.3s ease;
    margin: 20px 0;
}

.recruit-button:hover {
    background-color: #fefefe;
    opacity: 1;


}
a:hover
{
text-decoration: underline;
}
#wrtapper
{
width: 96%;
margin: 0 auto;
}
.inner
{
width: 980px;
margin: 0 auto;
}
.inner:after
{
display: block;
clear: both;

content: '';
}
/* header */
#top-head
{
font-size: 18px;
line-height: 1;

position: absolute;
z-index: 999;
top: -90px;

width: 100%;
margin: 70px auto;
margin-bottom: 15px;
padding: 20px 0 10px 0;

background: rgba(248, 245, 242, .8);
}
#top-head a,
#top-head
{
text-decoration: none;

color: #362e2b;
}
#top-head .inner
{
position: relative;
}
#top-head .logo
{
float: left;
}
#top-head .logo a
{
display: block;
overflow: hidden;

width: 230px;
height: 55px;
padding-top: 5px;

text-indent: -9999px;

background: url(../img/header_logo.svg) no-repeat 0 50%;
background-size: contain;
}
#global-nav ul
{
font-size: 18px;

position: absolute;
right: 0;
bottom: 0;

list-style: none;
}
#global-nav ul li
{
position: relative;

float: left;
}
#global-nav ul li a
{
padding: 0 30px;
}
/* Btn Hover */
#global-nav ul li:after
{
position: absolute;
bottom: -20px;

display: block;

width: 100%;
height: 3px;

content: '';
-webkit-transition: all .3s ease;
   -moz-transition: all .3s ease;
        transition: all .3s ease;
}
/* Fixed */
#top-head.fixed
{
position: fixed;
top: 0;

height: 80px;
margin-top: 0;
padding-top: 10px;

-webkit-transition: top .65s ease-in;
   -moz-transition: top .65s ease-in;
        transition: top .65s ease-in;

background: #f8f5f2;
background: rgba(248, 245, 242, .7);
}
#top-head.fixed .logo
{
font-size: 24px;

color: #333;
}
#top-head.fixed #global-nav ul li a
{
padding: 0 20px;

color: #333;
}
/* Transition */
/*
#top-head,
#top-head .logo,
#global-nav ul li,
#global-nav ul li a {
	transition: all 0.3s ease;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
}
*/
/* Toggle Button */
#nav-toggle
{
position: absolute;
z-index: 101;
top: 14px;
right: 12px;

display: none;

width: 34px;
height: 36px;

cursor: pointer;
}
#nav-toggle div
{
position: relative;
}
#nav-toggle span
{
position: absolute;
left: 0;

display: block;

width: 100%;
height: 4px;

-webkit-transition: .35s ease-in-out;
   -moz-transition: .35s ease-in-out;
        transition: .35s ease-in-out;

background: #666;
}
#nav-toggle span:nth-child(1)
{
top: 0;
}
#nav-toggle span:nth-child(2)
{
top: 11px;
}
#nav-toggle span:nth-child(3)
{
top: 22px;
}
@media screen and (max-width: 980px)
{
article
{
padding: 0 30px;
}
.inner
{
width: 100%;
padding: 0 20px;
}
#global-nav ul li a
{
padding: 0 20px;
}
#top-head.fixed #global-nav ul li a
{
padding: 0 15px;
}
}
@media screen and (max-width: 640px)
{
#top-head,
.inner
{
width: 100%;
padding: 0;
}
#top-head
{
position: fixed;
top: 0;

margin-top: 0;
}
/* Fixed reset */
#top-head.fixed
{
padding-top: 0;

background: transparent;
}
#mobile-head
{
position: relative;
z-index: 999;

width: 100%;
height: 56px;

background: rgba(244, 239, 239, .85);
}
#top-head.fixed .logo,
#top-head .logo
{
font-size: 26px;

position: absolute;
top: 13px;
left: 13px;

width: 200px;

color: #333;
}
#top-head .logo a
{
width: 100%;
height: 40px;
}
#global-nav
{
position: absolute;
top: -500px;

width: 100%;
padding: 10px 0;

-webkit-transition: .5s ease-in-out;
   -moz-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
text-align: center;

background: rgba(0, 0, 0, .7);
}
#global-nav ul
{
font-size: 16px;

position: static;
right: 0;
bottom: 0;

list-style: none;
}
#global-nav ul li
{
position: static;

float: none;
}
#global-nav ul li:after
{
display: none;
}
#top-head #global-nav ul li a,
#top-head.fixed #global-nav ul li a
{
display: block;

width: 100%;
padding: 18px 0;

color: #fff;
}
#nav-toggle
{
display: block;
}
/* #nav-toggle ÃƒÂ¨Ã¢â‚¬ÂºÃ‚Â»ÃƒÂ¯Ã‚Â¿Ã‚Â½ÃƒÂ¯Ã‚Â½Ã…Â ÃƒÂ¨Ã‚Â­Ã¢â‚¬â€œÃƒÂ¯Ã‚Â½Ã‚Â¿ÃƒÂ§Ã‚Â¸Ã‚ÂºÃƒÂ¥Ã…â€™Ã‚Â»ÃƒÂ£Ã‚ÂÃ¢â‚¬Å¾ÃƒÂ§Ã‚Â¹Ã‚ÂÃƒÂ¤Ã‚Â¹Ã‚ÂÃƒÅ½Ã¢â‚¬Å“ÃƒÂ§Ã‚Â¹Ã‚ÂÃƒÂ¯Ã‚Â½Ã‚Â¼ÃƒÂ§Ã‚Â¹Ã‚Â§ÃƒÂ¯Ã‚Â½Ã‚Â·ÃƒÂ§Ã‚Â¹Ã‚ÂÃƒÂ¯Ã‚Â½Ã‚Â§ÃƒÂ§Ã‚Â¹Ã‚ÂÃƒÂ¯Ã‚Â½Ã‚Â³ */
.open #nav-toggle span:nth-child(1)
{
top: 11px;

-webkit-transform: rotate(315deg);
   -moz-transform: rotate(315deg);
        transform: rotate(315deg);
}
.open #nav-toggle span:nth-child(2)
{
left: 50%;

width: 0;
}
.open #nav-toggle span:nth-child(3)
{
top: 11px;

-webkit-transform: rotate(-315deg);
   -moz-transform: rotate(-315deg);
        transform: rotate(-315deg);
}
/* #global-nav */
.open #global-nav
{
-webkit-transform: translateY(556px);
/* #global-nav top + #mobile-head height */
   -moz-transform: translateY(556px);
        transform: translateY(556px);
}
}
/*main Contets*/
.hero_image
{
height: 80vh;
padding-top: 85px; position: relative;

background: url(../img/hero_image.jpg)50% 20% no-repeat;
}
.hero_image h2
{font-size: 7.5vmin;font-weight: normal;width: 80%;margin: 2em auto 0 auto;padding: .5em;text-align: center;letter-spacing: 2px;color: #fff;border: 1px solid #fff;background: rgba(0, 0, 0, .31);}
.hero_image p
{font-family: 'ÃƒÂ¯Ã‚Â¼Ã‚Â­ÃƒÂ¯Ã‚Â¼Ã‚Â³ ÃƒÂ¯Ã‚Â¼Ã‚Â°ÃƒÂ¦Ã‹Å“Ã…Â½ÃƒÂ¦Ã…â€œÃ‚Â', MS PMincho, 'ÃƒÂ£Ã†â€™Ã¢â‚¬â„¢ÃƒÂ£Ã†â€™Ã‚Â©ÃƒÂ£Ã¢â‚¬Å¡Ã‚Â®ÃƒÂ£Ã†â€™Ã…Â½ÃƒÂ¦Ã‹Å“Ã…Â½ÃƒÂ¦Ã…â€œÃ‚Â Pro W3', Hiragino Mincho Pro, serif;font-size: 9vmin;margin: 2em auto .5em auto;text-align: center;letter-spacing: 2px;color: #fff;}

.heero_text{
        width:100%;
     position: absolute;
      top: 50%;
      left: 50%;
      transform: translateY(-50%) translateX(-50%);
      -webkit- transform: translateY(-50%) translateX(-50%);
    }

/*desktop*/@media screen and (min-width: 769px)
{
.hero_image p
{
font-size: 50px;
}
.hero_image
{
height: 750px;
margin-top: -20px;

background-attachment: fixed;
background-size: cover;
}
.hero_image h2
{
font-size: 46px;

width: 800px;
margin-top: .5em;
}


}
.business_guide h2
{
font-size: 36px;
font-weight: normal;

text-align: center;
}
.business_guide div
{
width: 98%;
padding: 1em;
}
.business_guide div h3
{
font-size: 28px;
font-weight: normal;

margin-bottom: 15px;

text-align: center;
letter-spacing: 2px;
}
.business_guide div h3 img
{
display: block;

width: 60%;
margin: 1em auto;
}
.business_guide div p
{
line-height: 150%;

letter-spacing: 1px;
}
.button_detail
{
clear: both;

width: 100% !important;
margin: 2em auto;
}
.button_detail a
{
display: block;

width: 100%;
margin: 10px auto;
padding: 10px;

text-align: center;
text-decoration: none;
letter-spacing: 2px;

color: #fff;
border-radius: 5px;
background: #069;
}
/*desktop*/@media screen and (min-width: 769px)
{
.business_guide
{
width: 980px;
margin: 0 auto;
}
.business_guide div
{
float: left;

width: 33.3%;
padding: 2em;
}
.button_detail
{
font-size: 150%;

width: 460px;
margin: 0 auto;
padding: 2em;
}
.business_guide div h3 img
{
width: 150px;
height: auto;
}
}
.company_profile
{
clear: both;

padding-top: 15px;
padding-bottom: 2em;

background: url(../img/company_image.jpg)50% 20% no-repeat;
background-size: cover;
}
.company_profile h2
{
font-size: 36px;

text-align: center;

color: #fff;
border: none;
}
.company_profile table
{
line-height: 150%;

width: 95%;
margin: 0 auto 3em auto;

border-collapse: collapse;

color: #fff;
background: rgba(0, 0, 0, .3);
}
.company_profile th
{
font-weight: normal;

width: 30%;
padding: 10px;

vertical-align: middle;

color: #fff;
border: 1px solid #fff;
}
.company_profile td
{
padding: 10px;

color: #fff;
border: 1px solid #fff;
}
.company_profile td summary
{
        margin-top: 1em;
        margin-bottom: 1.5em;
      position: relative;cursor: pointer;
}
.company_profile td summary::before{content: "";}

.company_profile td details[open] summary::before {
        content: '\f102';
      }
      .company_profile td details summary::before {
        font-family: FontAwesome;
        content: '\f103';
        margin-right: 10px;
      }

      .company_profile td details[open] .details-content {
        animation: fadeIn 0.5s ease;
      }
      @keyframes fadeIn {
        0% {
          opacity: 0; /* é€æ˜Ž */
          transform: translateY(-10px); /* ä¸Šã‹ã‚‰è¡¨ç¤º */
        }
        100% {
          opacity: 1;
          transform: none;
        }
      }

.company_profile dt,
.company_profile dd
{
color: #fff;
}
.company_profile dd
{
margin-bottom: 1em;
padding-bottom: 1em;

border-bottom: 1px dotted #999;
}
.company_profile dd:last-child
{
border: none;
}
.company_profile dd a
{
color: #63ebeb;
}
.company_profile p a
{
font-size: 20px;

display: block;
clear: both;

width: 95%;
margin: 10px auto;
padding: 10px;

text-align: center;
text-decoration: none;
letter-spacing: 2px;

color: #fff;
background: #069;
}
.company_profile ul
{
width: 95%;
margin: 1em auto;

letter-spacing: 1px;
}
.company_profile ul li
{
width: 80%;
margin: 1em auto;
padding: 1em;
}
.company_profile ul li a
{
font-size: 26px;

display: block;

text-align: center;

color: #fff;
}
.company_profile ul li a img
{
display: block;

width: 80%;
margin: 1em auto;

border-radius: 100%;
}
.company_profile .button
{
display: block;

margin: 1em auto 0;
}
/*desktop*/@media screen and (min-width: 769px)
{
.company_profile table
{
width: 800px;
}
.company_profile p a
{
width: 800px;
}
.company_profile
{
background-attachment: fixed;
background-size: cover;
}
.company_profile ul
{
width: 800px;
}
.company_profile ul li
{
float: left;

width: 48%;
margin: 1em 2% 1em 0;
}
.company_profile ul li:last-child
{
margin-right: 0;
}
}
.recruit
{
clear: both;

padding: 1em;

color: #fff;
background: #4bb0e4;
}


.recruit ul li a
{
font-weight: bold;

position: relative;

display: block;

padding: .3em 1em;

text-decoration: none;color: #4bb0e4;
background: rgba(255, 255, 255, 1.00);
}
.recruit ul li a::after
{
position: absolute;
top: 50%;
right: 1em;

width: .5em;
height: .5em;

content: '';
transform: translateY(-50%) rotate(45deg);

border-top: 2px solid currentColor;
border-right: 2px solid currentColor;
}
.recruit h2
{
font-size: 36px;

margin-top: 0;

color: #fff;
}
.recruit a
{
text-decoration: underline;

color: rgba(241, 240, 194, 1.00);
}
.recruit table
{
line-height: 150%;

width: 95%;
margin: 0 auto 3em auto;

border-collapse: collapse;
}
.recruit th
{
font-weight: normal;

width: 26%;
padding: 10px;

vertical-align: middle;

color: #fff;
border: 1px solid #fff;
}
.recruit td
{
padding: 10px;

color: #fff;
border: 1px solid #fff;
}

.recruit td p
{
margin: 1.5em 0;
}
.recruit td p strong
{
font-size: 130%;
}
.recruit td p a
{
display: block; margin: .5em 0;text-align: center;
}
.recruit td p a img
{
display: block; margin: .5em auto;
}
.recruit p.recruit_button a
{
font-size: 150%;

display: block;

box-sizing: border-box;
width: 80%;
margin: 1.5em auto;
padding: .5em;

transform: rotate(-3deg);
text-align: center;
text-decoration: none;

color: #333;
border: 2px solid #fff;
border-radius: 10px;
background: #fff;
box-shadow: 4px 4px 0 rgba(0, 0, 0, .30);
}

.recruit h3
{
margin: 2.5em auto .5em auto;

text-align: center;
letter-spacing: 1.5px;color: #fff;
}
.recruit iframe
{
display: block;

width: 100%; height: 350px; margin: 1em auto;
}
.recruit__description
{
width: 90%; margin: 1.5em auto; color: #fff;;
}
.recruit__description h2
{
font-size: 7.5vmin;

margin: 1em 0; padding-top: 1em;  text-align: left;
}

.recruit .button_detail a
{
width: 70%;

text-decoration: none;

color: #069;
background: #fff;
}

/*desktop*/@media screen and (min-width: 769px)
{
.recruit table
{
width: 800px;
}
.recruit p.recruit_button a
{
font-size: 120%;

width: 50%;

transition: .2s;
}
.recruit td p a img
{
display: block; width: 250px;margin: .5em auto;
}
.recruit__description
{
width: 900px; margin: 0 auto;
}
.recruit__description h2
{
font-size: 18px;
}

.recruit .button_detail a
{
width: 640px;

background: #fff;
}
}


#topMove
{
display: none;
}
.accessmap iframe
{
display: block;

width: 90%;
margin: 1em auto;
padding: 10px;

border-radius: 5px;
background: #fff;
box-shadow: 0 3px 1px rgba(0, 0, 0, .3);
}
/*desktop*/@media screen and (min-width: 769px)
{
.accessmap iframe
{
display: block;

width: 980px;
}
}
.accessmap
{
padding: 1em 0;

background: #eee;
}
.access_detail
{
width: 85%;
margin: 0 auto;
}
/*desktop*/@media screen and (min-width: 769px)
{
.access_detail
{
width: 800px;
}
}
.access_detail h3:before
{
display: block;

width: 100px;
height: 100px;
margin: 1em auto;
padding: 20px;

content: url(../img/access_car.svg);

border-radius: 100%;
background: #fff;
box-shadow: 0 2px 1px rgba(0, 0, 0, .3);
}
.access_detail h3:first-child:before
{
content: url(../img/access_train.svg);
}
.access_detail h3
{
font-size: 28px;
font-weight: normal;

margin-top: 2em;

color: #333;
}
.access_parking
{
font-size: 20px;

margin: 1.5em 0;
padding: 1em;

border: 1px solid #333;
border-radius: 2px;
}
/*iOD RESET*/
input[type='submit'],
input[type='button']
{
-webkit-box-sizing: content-box;
        box-sizing: border-box;

cursor: pointer;

border: none;
border-radius: 0;

-webkit-appearance: button;
        appearance: button;
}
input[type='submit']::-webkit-search-decoration,
input[type='button']::-webkit-search-decoration
{
display: none;
}
input[type='submit']::focus,
input[type='button']::focus
{
outline-offset: -2px;
}
input,
button,
select,
textarea
{
-webkit-appearance: none;
}
.contact table
{
width: 90%;
margin: 1em auto;
}
.contact table th,
.contact table td
{
display: block;
}
.contact table th
{
font-size: 95%;
font-weight: normal;

margin-top: 1em;

text-align: left;
}
.contact textarea
{
display: block;

width: 100%;
min-height: 10em;
padding: 5px;
}
.contact input
{
display: block;

width: 100%;
padding: 5px;

border: 1px solid #666;
}
.contact input[type='submit']
{
font-size: 20px;

width: 85%;
margin: 2em auto 3em auto;
padding: .5em;

transition: .2s;
letter-spacing: 2px;

color: #fff;
border: none;
background: #069;

direction: block;
;
}
.contact input[type='submit']:hover
{
cursor: pointer;

background: #08b;
}
.contact p
{
font-size: 26px;

margin: 2em auto;

text-align: center;
}
.contact p a
{
font-size: 36px;

display: block;
}
.contact p a:before
{
display: inline-block;

width: 40px;
height: 40px;
margin-right: 10px;
padding: 5px;

content: url(../img/contact_phone.svg);
vertical-align: top;

border-radius: 7px;
background: #069;
}
/*desktop*/@media screen and (min-width: 769px)
{
.contact
{
width: 800px;
margin: 0 auto;
}
}
footer
{
position: relative;

padding: 1em 0 .5em 0;

text-align: center;

color: #fff;
background: #123;
}
footer address
{
font-style: normal;

position: relative;
z-index: 300;

margin-top: 15px;

color: #fff;
}
footer a
{
font-size: 10px;
transition:.2s;
position: absolute;
z-index: 100;
top: -20px;

overflow: hidden;

width: 50px;
height: 50px;
margin-left: -25px;
padding: .3em;

color: #fff;
border-radius: 100%;
background: #123;


}
footer a:hover
{
transform:scale(1.2);
text-decoration: none;

opacity: 1;
color: rgba(215, 243, 12, 1.00);
}
footer a span
{
font-size: 20px;
line-height: 1;

display: block;

margin: 0;

color: #fff;
}
.back_button
{
font-size: 20px;
font-weight: bold;

display: block;

width: 80%;
margin: 10px auto;
padding: 10px;

text-align: center;
text-decoration: none;
letter-spacing: 2px;

color: #fff;
border-radius: 5px;
background: #069;
}
/*desktop*/@media screen and (min-width: 769px)
{
.back_button
{
width: 400px;
margin: 2em auto;
}
}
.timetable{display: block; margin-bottom: .25em; font-weight: bold; margin-left: -.5em;}
.timetableWrapper p{padding-left: 1em;}
