@charset "utf-8";

/* 全体 */

html{
	margin:0 auto;
	padding:0;
}

body{
	margin:0 auto;
	padding:0;
font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	max-width: 1040px;
	width: 100%;
	font-size: 16px;
}

a {
	color: #000;
    text-decoration: none;
   cursor: pointer;
   outline: none;
   -webkit-transition: all .3s ease-in-out;
   transition: all .3s ease-in-out;
}

img{
	display: block;
	margin: 0 auto; 
}

hr {
    width: 50%;
}


/* header */

#header {
        margin: 0 auto;
    padding: 0;
	width: 100%;
}

h1 {
	    margin: 0 auto;
    padding: 0;
    width: 100%;
    text-align: center;
}

h1.logo img {
   max-width: 200px;
    width: 100%;
    margin: 10% auto;
}
/* main */

#main {
	    width: 100%;
	    padding-bottom: 30%;
	text-align: center;
    margin: 0 auto;
}

img.main_img{
    width: 100%;
    max-width: 1000px;
        margin: 0% auto;
    margin-bottom: 10%;
}


/* contents */

.contents_box {
    width: 70%;
        max-width: 1000px;
    margin: 10% auto;
}

.contents_box h2 {
    font-weight: bold;
    font-size: 2.5em;
    letter-spacing: 5px;
    line-height: 2em;
    padding: 0;
    margin: 5% 0;
    text-align: left;
}

.contents_box p{
    font-size: 1.8em;
    line-height: 2.5em;
letter-spacing:2px;
        font-weight: bold;
}

#box1.contents_box p{
        letter-spacing: 31px;
    font-weight: bold;
    margin: 10px 0;
    text-align: left;
    -moz-text-align-last: justify;
     text-align-last: justify;
     text-justify:inter-ideograph;
}

#box1 .box_img {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

.box1_p {
    margin: 5% auto;
        margin-top: 20%;
}

#box2 {
    width: 40%;
}

#box2.contents_box p{
    text-align: left;
}

#box3 table {
    padding: 0;
    width: 90%;
    margin: 0 auto;
}

#box3 table th {
    padding: 2%;
    font-size: 1.5em;
    font-weight: bold;
    text-align: left;
    width: 45%;
    letter-spacing: 5px;
}

#box3 table td {
    padding: 2%;
    font-size: 1.5em;
    font-weight: bold;
    text-align: left;
    letter-spacing: 5px;
}

div#box4 p {
         text-align: left;
    font-size: 1.5em;
    line-height: 1em;
    margin: 8px 0;
}

.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
    margin-bottom: 5%;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

.line img {
    width: 100%;
    max-width: 50px;
	    margin: 0;
}

.fadeInUp {
  transition: 1.5s;
	    display: grid;
}

.fadeInUp2 {
  transition: 1.5s;
	    display: grid;
}

.fadeInUp3 {
  transition: 1.5s;
	    display: grid;
}