#toppage_head{
width: 95%;
max-width: 1280px;
margin: auto;
position: relative;
margin-top: 15px;
}
#top_mainpic{
width: 100%;
position: relative;
}
#toppage_logo{
width: 34%;
position: absolute;
right: 15px;
top: 6px;
z-index: 10;
}
#top_mainpic img {
  mask-image: url("../img/top/top_mask.svg");
  mask-repeat: no-repeat;
  mask-position: 0 0;
  mask-size: 100%;
  /* Chrome, Safari用 */
  -webkit-mask-image: url("../img/top/top_mask.svg");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: 0 0;
  -webkit-mask-size: 100%;
}
#toppage_menu{
position: absolute;
width: 100%;
max-width: 1100px;
left: 0;
right: 0;
bottom: 10px;
margin: auto;
z-index: 11;
}
#toppage_menu ul{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
#toppage_menu ul li{
width: 18%;
overflow: hidden;
position: relative;
}
#toppage_menu a{
}
#toppage_menu a:hover{
opacity: 0.8;
}

#toppage_contents{
width: 95%;
max-width: 1280px;
margin: auto;
position: relative;
}
#toppage_contents h2{
font-size: 240%;
text-align: center;
padding: 1em 0;
position: relative;
z-index: 4;
}
#toppage_contents h3{
font-size: 150%;
letter-spacing: -0.02em;
line-height: 1.5;
padding: 0 0 0.5em 0;
}
#block1{
width: 100%;
position: relative;
padding-left: 15%;
padding-bottom: 2em;
}
#block2{
width: 100%;
position: relative;
padding-left: 24%;
padding-bottom: 2em;
margin-top: 1em;
}
#block3{
width: 100%;
position: relative;
padding-left: 15%;
padding-bottom: 2em;
margin-top: 1em;
margin-bottom: 3em;
}
.toppage_txt{
display: inline-block;
vertical-align: top;
width: 40%;
text-align: left;
font-weight: 600;
font-size: 95%;
line-height: 1.6;
position: relative;
}
#block2 .toppage_txt{
width: 50%;
}
.toppage_pic{
display: inline-block;
vertical-align: top;
width: 28%;
padding-right: 15px;
}
.linkbtn{
width:200px;
position: absolute;
right: 0;
}
.linkbtn a{
transition: all 0.3s;
}
.linkbtn a:hover{
opacity: 0.7;
}


.kame1 {
position: absolute;
width: 200px;
right: -80px;
top: 0;
}
.sakana1 {
position: absolute;
width: 120px;
left: -50px;
top: 30px;
}
.sakana2 {
position: absolute;
width: 160px;
right: 0;
bottom: 0;
}
.owl1 {
position: absolute;
width: 140px;
left: 50px;
top: 50%;
}

@media screen and (max-width:1460px){
.kame1 {
width: 180px;
right:-2%;
}
.sakana1 {
width: 100px;
left: -2%;
}
}

#toppage_news_wrap{
width: 100%;
margin: auto;
position: relative;
}
#toppage_news_wrap_top svg{
vertical-align: bottom;
}
#toppage_news_wrap_btm svg{
vertical-align: top;
}
#toppage_news_wrap_contents{
background: #a00002;
}
#top_news_wrap{
width: 95%;
max-width: 1280px;
margin: auto;
position: relative;
}
#top_news_wrap h3{
color: #fff;
text-align: center;
font-size: 200%;
padding-bottom: 0.5em;
}
#top_news_wrap .linkbtn {
width: 200px;
position: absolute;
right: 0;
top: 10px;
}
.kame2 {
position: absolute;
width: 220px;
left: 40px;
top: -100px;
z-index: 10;
}
.news_wrap{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
max-width: 800px;
margin: auto;
color: #fff;
}
.news_wrap a{
color: #fff;
}
.news_wrap h5{
font-size: 120%;
}
.news_box{
width: 48%;
margin-bottom: 2%;
}
.news_box a{
transition: all 0.3s;
}
.news_box a:hover{
opacity: 0.7;
}
.news_thumb{
width: 35%;
display: inline-block;
vertical-align: middle;
margin-right: 10px;
position: relative;
width: 100px;
height: 100px;
border-radius: 100%;
overflow: hidden;
z-index: 0;
}
.news_title{
width: 60%;
display: inline-block;
vertical-align: middle;
}

#toppage_map{
width: 95%;
max-width: 1000px;
margin: 40px auto;
position: relative;
border-radius: 10%;
overflow: hidden;
}

@media screen and (max-width:1000px){

#block1{
padding-left: 10%;
}
#block2{
padding-left: 17%;
margin-top: 2em;
}
#block3{
padding-left: 10%;
margin-top: 2em;
}
#block2 .toppage_txt{
width: 60%;
}
.toppage_txt{
width: 60%;
}
.kame1 {
display: none;
}
.sakana1 {
display: none;
}
.sakana2 {
display: none;
}
.owl1 {
display: none;
}
}

@media screen and (max-width:800px){

#toppage_contents h2{
font-size: 200%;
text-align: left;
}
#block1{
padding-left: 0;
padding-bottom: 1em;
}
#block2{
padding-left: 0;
padding-bottom: 1em;
}
#block3{
padding-left: 0;
}
#block2 .toppage_txt{
width: 58%;
}
.toppage_txt{
width: 58%;
}
.toppage_pic{
width: 40%;
padding-right: 10px;
}
.kame2 {
position: absolute;
width: 160px;
left: 20px;
top: -100px;
z-index: 10;
}
#top_news_wrap {
    padding-bottom: 50px;
}
#top_news_wrap .linkbtn {
width: 200px;
position: absolute;
right: 0;
left: 0;
top: auto;
bottom: 0;
margin: auto;
padding-bottom: 10px;
}
}

@media screen and (max-width:640px){
#toppage_logo{
width: 60%;
right: 0;
top: 0;
}
#top_mainpic{
padding-top: 50px;
}
#toppage_menu{
bottom: -20vw;
}
#toppage_menu ul{
justify-content: center;
}
#toppage_menu ul li{
width: 30%;
}
#toppage_contents {
padding-top: 17vw;
}
#toppage_contents h2{
font-size: 180%;
}

.toppage_txt{
display: block;
width: 90%;
margin: auto;
}
#block2 .toppage_txt {
display: block;
width: 90%;
margin: auto;
}
.toppage_pic{
display: block;
width: 80%;
margin: 0 auto 2em;
padding-right: 0;
}
.toppage_pic img{
width: 100%;
}
.linkbtn{
position: relative;
right: auto;
margin: auto;
margin-top: 1em;
}
.news_box{
width: 90%;
margin: auto;
margin-bottom: 2%;
}
.news_thumb {
display: inline-block;
vertical-align: middle;
margin-right: 10px;
position: relative;
border-radius: 100%;
overflow: hidden;
z-index: 0;
width: 35%;
height: auto;
}
.kame1 {
display: none;
}
.sakana1 {
display: block;
width: 100px;
left: 2%;
top: 220px;
}
.sakana2 {
display: block;
position: absolute;
width: 120px;
right: 0;
bottom: 400px;
}
.owl1 {
display: block;
position: absolute;
width: 140px;
left: 50px;
top: 50%;
}
}