@charset "UTF-8";
hr {
margin: 0;
border: none;
border-top: 15px #c3c235 solid;
}

.container p{
font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif; 
font-size: 18px;
line-height: 1.5em;
}

.container{
width: 100%;
background-color: #ffffff;
}

.main {
max-width: 1024px;
margin: 0 auto;
}

.main img{
width: 100%;
}

.caption{
width: 100%;
padding: 30px 0px;
background-color: #c3c235;
}

.box2 img{
width:200px;
height:auto;
}

.box2 {
display: flex;
align-items: top;
margin-top: 30px;
margin-bottom: 30px;
align-items: flex-start;
}


.box2_text{
padding: 0px 10px;
}

.box2_text2{
text-align: right;
margin: 10px;
}

.main table {
margin: auto;
margin-top: 30px;
border-collapse: separate;
border-spacing: 10px 10px;
line-height: 1.5;
}

.main table td {
padding: 5px 5px;
vertical-align: middle;
border-bottom:3px dotted #ccc;
} 
    
.main table th{
vertical-align: middle;
background-color: #145d94;
padding: 15px 10px;
text-align: center;
color: #ffffff;
} 

.main table th p{
line-height: 1.2em;
}

.main2 {
position: relative;
max-width: 1024px;
margin: 0 auto;
}

.main2 img{
width: 100%;
}

.main2 p{
position: absolute;
width:55%;
top: 40px;
left: 50px;
margin: 0;
background-color: rgba( 255, 255, 255, 0.6);
font-size: 18px;
line-height: 1.5em;
padding:30px;
}

.infobox{
display: flex;
justify-content: center;
}

.info{
background-color: #ca4c91;
width: 220px;
margin: 30px;
padding: 20px;
text-align: center;
border-radius: 15px;  
    -webkit-border-radius: 15px; 
    -moz-border-radius: 15px;
}

.info a:link,a:visited,a:hover{
text-decoration: none;
}

.info img{
padding-left: 15px;
padding-top: 5px;
width: 57px;
float: left;
}

.ggmap {
position: relative;
padding-bottom: 60%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}


/* Media Queries(メディアクエリ)
--------------------------------------------------------- */

@media screen and (max-width: 768px){
hr {
border-top: 10px #c3c235 solid;
}
    
.container p{
font-size: 16px;
line-height: 1.2em;
}

.caption{
padding: 20px 0px;
}

.box2 img{
width:150px;
height:150px;
}
    
.main2 p{
width:75%;
top: 20px;
left: 20px;
padding:20px;
}

.info{
width: 220px;
margin: 15px;
padding: 15px;
}

.ggmap {
padding-bottom: 100%;
}
    
}

@media screen and (max-width: 480px){
hr {
border-top: 10px #c3c235 solid;
}    
    
.caption{
padding: 10px 0px;
}    
    
    
.box2 img{
width:120px;
height:120px;
}
.container p{
font-size: 12px;
line-height: 1.2em;
}
    
.main table {
margin-top: 20px;
border-collapse: separate;
border-spacing: 0px 5px;
line-height: 1.5;
}

.main2 p{
width:80%;
top: 10px;
left: 10px;
} 

.infobox{
display:block;
}
    
.info{
width: 70%;
margin: auto;
margin-top: 10px;
margin-bottom: 10px;
}

.info img{
padding-top: 0px;
}
    
}