@media screen and (min-width:1185px) {
/* ここにPC向けのCSS指定 */
  #ham-menu {
	display: none;
 }
 
  body {
      font-size: 17px;
  }
  
  #notpc {
   display: none;
  }
}

@media screen and (max-width: 1675px) {
  .site-branding {
    top: 35vw;
  }
}

@media screen and (max-width: 1385px) {
  .site-branding {
    top: 32vw;
  }
}

@media screen and (max-width: 1302px) {
  #site-header-container {
   width: 99%;
  }
	
  #site-header-logo {
    	font-size: 2.0rem;
	}

  .topcontentsback_con {
    	background-size: 40%;
	}
	
   .heading06 {
    	font-size: 27px;
	}
	
	#topimg2 img {
		max-height: 1250px;
		overflow: hidden;
		position: absolute;
		width: 100%;
		bottom: 0;
		left: 0;
		right: 0;
		top: 0;
		margin-top: -55px;
	}

}

@media screen and (max-width: 1280px) {
	
	.site-title2 {
		color: #E83836;
		font-size: 2.0rem;
		line-height: 3rem;
		position: relative;
		background-image: url("img/conten_mi01.png");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right;
		z-index: 2;
	}
	
	.site-title3 {
		color: #E83836;
		font-size: 2.0rem;
		line-height: 3rem;
		position: relative;
		background-image: url("img/cons_mi02.png");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right;
		z-index: 2;
	}

	.site-title4 {
		color: #E83836;
		font-size: 2.0rem;
		line-height: 3rem;
		position: relative;
		background-image: url("img/progress_mi01.png");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right;
		z-index: 2;
	}
	
	.site-title5 {
		color: #E83836;
		font-size: 2.0rem;
		line-height: 3rem;
		position: relative;
		background-image: url("img/notice_mi01.png");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right;
		z-index: 2;
	}
	
	.site-title6 {
	  	color: #E83836;
	  	font-size: 2.0rem;
	  	line-height: 3rem;
	  	position: relative;
		background-image: url("img/contact_mi01.png");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right;
		z-index: 2;
	}

	.site-title7 {
	  	color: #E83836;
	  	font-size: 2.0rem;
	  	line-height: 3rem;
	  	position: relative;
		background-image: url("img/privacy_mi01.png");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right;
		z-index: 2;
	}
	
	.site-title8 {
	 	 color: #E83836;
	 	 font-size: 2.0rem;
	  	line-height: 3rem;
	  	position: relative;
		background-image: url("img/around_mi01.png");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right;
		z-index: 2;
	}

	.site-title9 {
	  	color: #E83836;
	  	font-size: 2.0rem;
	  	line-height: 3rem;
	  	position: relative;
		background-image: url("img/diary_mi01.png");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: right;
		z-index: 2;
	}
	
	#topcontents {
	width: 100%;
	background-color: #ffffff;
	padding-top: 9vw;
	margin-top: 5vw;
}

	#topimg-sub {
    /* height: 100vh; */
    max-height: 100%;
    padding-bottom: 30%;
    overflow: hidden;
    position: relative;
    width: 100%;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    margin-top: -65px;
    /* background: #00719352; */
    background-image: url(topback_sub.jpg);
    background-repeat: no-repeat;
    background-size: cover;
	}
}


@media screen and (max-width: 1184px) {
/* ここにpad向けのcss */
  body {
      font-size: 17px;
  }
  
  #global-nav {
   display: none;
  }
  
  #notsp {
   display: none;
  }
  
  #ham-menu h3 {
   font-size: 1.9rem;
  }
  
  #ham-menu li {
   font-size: 1.5rem;
  }
  
  .site-branding {
   top: 24vw;
  }
    
  .site-title {
   font-size: 2.0rem;
   width: 90%;
   margin-left: auto;
   margin-right: auto;
  }
  
  .site-title #site-title-en {
   font-size: 1.8rem;
  }
  
  #logo {
   width: 40%;
  }
  
  #topimg-sub {
   padding-bottom: 40.2%;

  }
  
  p#kjinfo {
      width: 94%;
      margin-left: 3%;
      margin-right: 3%;
      font-size: 20px;
      text-align: center;
  }
  
   #contentsimg #w50 {
    width: 99%;
    margin-left: 0.5%;
    margin-right: 0.5%;
    float: none;
    clear: both;
    margin-bottom: 20px;
   }
   
   #contentsimg #w50right {
    width: 99%;
    margin-left: 0.5%;
    margin-right: 0.5%;
    float: none;
    clear: both;
    margin-bottom: 20px;
   }
	
   #contentsimg #w40 {
    width: 99%;
    margin-left: 0.5%;
    margin-right: 0.5%;
    float: none;
    clear: both;
    margin-bottom: 20px;
   }
  
	
  #kjinfoimg {
      width: 99%;
      margin-left: 3%;
      margin-right: 3%;
      text-align: center;
	  margin-top: 10%;
  }

  .button14 a {
   padding: 1em 2em;
   width: 250px;
   font-size: 20px;
  }

  .news dl dd {
   width: 90%;
  }
  
  #topcontents-sub {
   margin-top: -1vw;
  }
  
  #page-top{
      width: 7%;
  }
  
  .heading06 {
      font-size: 24px;
  }
	
  #topcontents {
    width: 100%;
    background-color: #ffffff;
    margin-top: 22vw;
	}
	
   .heading06_pick {
		top: 95px;
	}
	
	.heading06_new {
		position: relative;
		padding-top: 50px;
		padding-bottom: 0;
		font-size: 32px;
		margin-left: auto;
		margin-right: auto;
		text-align: center;
		background-image: url("img/news_mi01.png");
		background-repeat: no-repeat;
		background-position: center;
		background-size: 22%;
		z-index: 3;
	}
	
	
	.site-title2 {
        position: relative;
        background-image: url("img/conten_mi01.png");
        background-size: 50%;
        background-repeat: no-repeat;
        background-position: right;
        margin-top: 13vw;
        z-index: 2;
    }
	
	 .site-title3 {
        position: relative;
        background-image: url(img/cons_mi02.png);
        background-size: 56%;
        background-repeat: no-repeat;
        background-position: right;
        margin-top: 13vw;
        z-index: 2;
    }
	
	.site-title4 {
        position: relative;
        background-image: url("img/progress_mi01.png");
        background-size: 50%;
        background-repeat: no-repeat;
        background-position: right;
        margin-top: 13vw;
        z-index: 2;
    }
	
	.site-title5 {
        position: relative;
        background-image: url("img/notice_mi01.png");
        background-size: 50%;
        background-repeat: no-repeat;
        background-position: right;
        margin-top: 13vw;
        z-index: 2;
    }
	
	.site-title6 {
        position: relative;
        background-image: url("img/contact_mi01.png");
        background-size: 50%;
        background-repeat: no-repeat;
        background-position: right;
        margin-top: 13vw;
        z-index: 2;
    }
	
} 


@media screen and (max-width: 912px) {
/* ここにipad Air等向けのcss */
 
  
  .site-title {
	font-size: 2.1rem;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	color: #ffffff;
	text-shadow: 1px 1px 3px #000,1px 1px 3px #000,1px 1px 3px #000,1px 1px 3px #000,1px 1px 3px #000;
	line-height: 3rem;
  }
  
  .site-title #site-title-en {
   font-size: 1.5rem;
  }
  
  p#kjinfo {
      width: 94%;
      margin-left: 3%;
      margin-right: 3%;
      font-size: 17px;
      text-align: left;
  }
  

  #topcontents-sub {
   margin-top: 8vw;
  }
  
  #page-top{
      width: 7%;
  }
  
  .heading06 {
      font-size: 20px;
  }
	
  #topcontents {
    width: 100%;
    background-color: #ffffff;
    padding-top: 12vw;
	}
	
   .heading06_pick {
		top: 70px;
	}
	#pickupback #w65 {
    padding-top: 12vw;
	}
	
	 .topcontentsback_con {
        background-size: 50%;
    }
	
	.heading06_new {
		font-size: 24px;
		background-size: 24%;

	}
	
	.toppickup_con {
		background-size: 30%;
	}
	
	.heading06_pick {
		font-size: 24px;
	}
	
	.w45 p {
		bottom: 5vw;
		font-size: 22px;
	}
		
	#topimg-sub {
		max-height: 100%;
		padding-bottom: 35%;
		overflow: hidden;
		position: relative;
		width: 100%;
		bottom: 0;
		left: 0;
		right: 0;
		top: 2vw;
		margin-top: -65px;
		background-image: url(topback_sub.jpg);
		background-repeat: no-repeat;
		background-size: cover;
	}
	
	.site-title2 {
		color: #E83836;
		font-size: 2.0rem;
		line-height: 3rem;
		position: relative;
		background-image: url(img/conten_mi01.png);
		background-size: 50%;
		background-repeat: no-repeat;
		background-position: right;
		margin-top: 10vw;
		z-index: 2;
	}
	
	.site-title3 {
		color: #E83836;
		font-size: 2.0rem;
		line-height: 3rem;
		position: relative;
		background-image: url("img/cons_mi02.png");
		background-size: 60%;
		background-repeat: no-repeat;
		background-position: right;
		margin-top: 10vw;
		z-index: 2;
	}
	
	.site-title4 {
		color: #E83836;
		font-size: 2.0rem;
		line-height: 3rem;
		position: relative;
		background-image: url("img/progress_mi01.png");
		background-size: 50%;
		background-repeat: no-repeat;
		background-position: right;
		margin-top: 10vw;
		z-index: 2;
	}
	
	.site-title5 {
		color: #E83836;
		font-size: 2.0rem;
		line-height: 3rem;
		position: relative;
		background-image: url("img/notice_mi01.png");
		background-size: 50%;
		background-repeat: no-repeat;
		background-position: right;
		margin-top: 10vw;
		z-index: 2;
	}

	.site-title6 {
	  color: #E83836;
	  font-size: 2.0rem;
	  line-height: 3rem;
	  position: relative;
		background-image: url("img/contact_mi01.png");
		background-size: 50%;
		background-repeat: no-repeat;
		background-position: right;
		margin-top: 10vw;
		z-index: 2;
	}

	.site-title7 {
	  color: #E83836;
	  font-size: 2.0rem;
	  line-height: 3rem;
	  position: relative;
		background-image: url("img/privacy_mi01.png");
		background-size: 50%;
		background-repeat: no-repeat;
		background-position: right;
		margin-top: 10vw;
		z-index: 2;
	}
	.site-title8 {
	  color: #E83836;
	  font-size: 2.0rem;
	  line-height: 3rem;
	  position: relative;
		background-image: url("img/around_mi01.png");
		background-size: 50%;
		background-repeat: no-repeat;
		background-position: right;
		margin-top: 10vw;
		z-index: 2;
	}
	
	.site-title9 {
	  color: #E83836;
	  font-size: 2.0rem;
	  line-height: 3rem;
	  position: relative;
		background-image: url("img/diary_mi01.png");
		background-size: 50%;
		background-repeat: no-repeat;
		background-position: right;
		margin-top: 10vw;
		z-index: 2;
	}
	
} 
@media screen and (max-width: 670px){
	
	 #site-header-logo {
	  font-size: 1.8rem;
	 }

	 .site-branding-sub {
	  top: 11vw;
	 }
	
	  #topcontents {
		 margin-top: 18vw;
		 width: 100%;
		 padding-top: 0;
		 background-color: #ffffff;
	  }
	
	
	.heading06_new {
		font-size: 15px;

	}
		
	.heading06_pick {
		font-size: 15px;
	}
	
	.w45 p {
		bottom: 3vw;
		left: 5vw;
		font-size: 15px;
	}
	
	#pickupback {
		background-image: url(pickup.png);
		background-position: center top;
		background-repeat: no-repeat;
		background-size: cover;
		text-align: center;
		height: 275px;
	}
	
	h3.midashi {
		font-size: 14px;
	}
	
	.pposition {
		font-size: 14px;
	}
	
	.topcontentsback_con {
        background-size: 75%;
    }
}


@media screen and (max-width: 550px){
	p {
		font-size: 15px;
	}
	    #topcontents {
        margin-top: 18vw;
        width: 100%;
        padding-top: 13vw;
        background-color: #ffffff;
    }
	
	th {
		width: 20%;
		padding-left: 4%;
		padding-right: 5%;
		border-bottom: 1px solid #8f8f8f;
		background-color: rgba(204, 204, 204, 0.53);
		font-size: 16px;
		font-weight: bold;
		margin: 0;
		line-height: 40px;
	}
	
	td {
		width: 75%;
		padding-left: 4%;
		border-bottom: 1px solid #8f8f8f;
		font-size: 15px;
		margin: 0;
		padding-top: 1%;
		padding-bottom: 1%;
	}

}

@media screen and (max-width: 500px){
/* ここにスマホ向けのcss */
  body {
      font-size: 14px;
  }

  #global-nav {
   display: none;
  }

  #notsp {
   display: none;
  }
	
 .site-title {
   font-size: 1.2rem;
   line-height: 1.4rem;
  }
  
  .site-title #site-title-en {
   font-size: 1rem;
  }
	
	#topcontents {
		 margin-top: 25vw;
		 width: 100%;
		 padding-top: 7%;
		 background-color: #ffffff;
	  }
 
  #ham-menu h3 {
   font-size: 1rem;
  }
  
  #ham-menu li {
   font-size: 1rem;
  }
  
  #topcontents h2 {
   margin-top: 10px;
	  font-size: 1.2rem;
  }
  
  #backblue {
   margin-top: 50px;
  }
  
  #topback02 dl {
   margin-top: -2vw;
  }

  #topback01 {
   background-size: 90%;
  }
  
  #topback03 {
   background-size: 90%;
   margin-top: 80px;
  }
  
  #contentspageback01 {
   background-size: 90%;
  }
  
  #progresspageback01 {
   background-size: 90%;
  }
  
  #progresspageback02 {
   background-size: 90%;
  }
  
  #trafficpageback01 {
   background-size: 90%;
  }
	
  #zumenback {
   background-size: 90%;
  }
  
  #kouteiback {
   background-size: 90%;
  }
  
  #mailback {
   background-size: 90%;
  }
  
  #topcontents-sub h2 {
   font-size: 1.2rem;
   margin-top: 10px;
  }
	
  .heading06_con2 {
        position: relative;
        padding-top: 7vw;
        padding-bottom: 10px;
        text-align: center;
    }

  .heading06_con2::before {
		content: attr(data-en);
		position: absolute;
		top: 18px;
		left: 50%;
		transform: translateX(-50%);
		color: rgba(239,62,65,0.39);
		font-size: 40px;
		width: 100%;
	}
	
	.heading06_pro2::before {
		content: attr(data-en);
		display: block;
		color: #E95259;
		font-size: 35px;
	}

	.heading06_pro1::before {
		content: attr(data-en);
		display: block;
		color: #ffffff;
		font-size: 35px;
	}

  p#kjinfo{
  font-size: 16px;
  }
  
  #site-header-logo {
   font-size: 1.3rem;
  }
  
  #backblue {
   padding-top: 10px;
   padding-bottom: 10px;
   background-position: center top;
  }
  
  #banner30 {
   width: 80%;
   margin-left: auto;
   margin-right: auto;
   float: none;
   clear: both;
   margin-top: 10px;
   margin-bottom: 10px;
  }
  
  #topback02 .news dt {
   font-size: 15px;
  }
  
  #topback02 .news dd {
   padding-left: 5px;
   padding-right: 5px;
   font-size: 14px;
   line-height: 20px;
   margin-left: 15px;
   margin-bottom: 20px;
  }
  
  #w50 {
   width: 99%;
   margin-left: 0.5%;
   margin-right: 0.5%;
   margin-top: 15px;
   margin-bottom: 2px;
   float: none;
   clear: both;
  }
  
  #pickup h3 {
   font-size: 1.3rem;
  }
  
  .btn, a.btn, button.btn {
   font-size: 14px;
  }
  
  #topcontents-sub {
   padding-bottom: 20px;
   padding-top: 50px;
  }
  
  #ft #banner30 h3 {
   font-size: 15px;
   line-height: 20px;
   margin-top: 0px;
   margin-bottom: 10px;
   padding-top: 30px;
  }
	
  #topimg-sub {
   float: none;
   width: 100%;
   height: auto;
  }
  
  .site-branding-sub {
   padding-top: 20px;
   height: auto;
  }
  
  
  th {
   font-size: 15px;
   width: 50%;
   line-height: 23px;
   display: block;
   padding-left: 5px;
   margin-top: 5px;
   margin-bottom: 5px;
  }
  
  td {
   font-size: 14px;
   width: 92%;
   line-height: 23px;
   display: block;
   padding-left: 5px;
   margin-top: 5px;
   margin-bottom: 15px;
   margin-left: 5%;
  }
  
  #photo30 {
   width: 99%;
   margin-left: 0.5%;
   margin-right: 0.5%;
   margin-top: 15px;
   margin-bottom: 2px;
   float: none;
   clear: both;
  }
  
  h3 {
   font-size: 16px;
  }
  
  #page-top{
      width: 10%;
  }
	
	 #ft #banner30 h3 {
        font-size: 15px;
        line-height: 20px;
        margin-top: 0px;
        margin-bottom: 10px;
        padding-top: 30px;
        padding-bottom: 5vw;
    }
	
	#ft {
		background-color: #ffffff;
		text-align: center;
		background-position: top center;
		background-attachment: fixed;
		margin-top: -5vw;
		/*padding-top: 150%;*/
	}
	
	/* h2見出し */
	.h2midashi {
	  border-bottom: solid 3px #f8ced2;
	  position: relative;
	  margin-bottom: 5vw;
	}

	.h2midashi:after {
	  position: absolute;
	  content: " ";
	  display: block;
	  border-bottom: solid 3px #E95259;
	  bottom: -3px;
	  width: 5%;
	}

	.h2midashi span {
	  font-size: 1.2rem;
	  position: absolute;
	  top: 0;
	  right: 0;
	  display: block;
	  padding-top: 40px;
	  padding-left: 16px;
	  color: #F8CED2;
	}

	/* h2見出し背景有時 */
	.h2midashi2 {
	  border-bottom: solid 3px #ffffff;
	  position: relative;
	  margin-bottom: 5vw;
	}

	.h2midashi2:after {
	  position: absolute;
	  content: " ";
	  display: block;
	  border-bottom: solid 3px #E95259;
	  bottom: -3px;
	  width: 5%;
	}

	.h2midashi2 span {
	  font-size: 1.2rem;
	  position: absolute;
	  top: 0;
	  right: 0;
	  display: block;
	  padding-top: 40px;
	  padding-left: 16px;
	  color: #ffffff;
	}
	
	.kjkisei {
		padding-top: 20px;
	}

  
  
}

@media screen and (max-width: 360px){
/* ここにスマホ向けのcss */
  body {
      font-size: smaller;
  }

  #global-nav {
   display: none;
  }

  #notsp {
   display: none;
  }

  
  .home .site-title {
     font-size: 1rem;
    line-height: 1.2rem;
    height: auto;
    padding-bottom: 10px;
    margin-bottom: 0;
  }
  
  .site-title #site-title-en {
   font-size: 0.86rem;
  }
  
  #ham-menu h3 {
   font-size: 1.0rem;
  }
  
  #ham-menu li {
   font-size: 1rem;
  }
  
  #topcontents h2 {
   margin-top: 10px;
   font-size: 1.2rem;
  }
  
  #backblue {
   margin-top: 50px;
  }
  
  #topback02 dl {
   margin-top: -2vw;
  }
  
  #topcontents {
   padding-bottom: 20px;
  }  

  #topback01 {
   background-size: 90%;
  }
  
  #topback03 {
   background-size: 90%;
   margin-top: 80px;
  }
  
  #contentspageback01 {
   background-size: 90%;
  }
  
  #progresspageback01 {
   background-size: 90%;
  }
  
  #progresspageback02 {
   background-size: 90%;
  }
  
  #trafficpageback01 {
   background-size: 90%;
  }
	
  #zumenback {
   background-size: 90%;
  }
  
  #kouteiback {
   background-size: 90%;
  }
  
  #mailback {
   background-size: 90%;
  }
  
  #topcontents-sub h2 {
   font-size: 1.2rem;
   margin-top: 10px;
  }
	

  p#kjinfo{
  font-size: 16px;
  }
  
  #site-header-logo {
   font-size: 1.0rem;
  }
  
  #backblue {
   padding-top: 10px;
   padding-bottom: 10px;
   background-position: center top;
  }
  
  #banner30 {
   width: 80%;
   margin-left: auto;
   margin-right: auto;
   float: none;
   clear: both;
   margin-top: 10px;
   margin-bottom: 10px;
  }
  
  #topback02 .news dt {
   font-size: 15px;
  }
  
  #topback02 .news dd {
   padding-left: 5px;
   padding-right: 5px;
   font-size: 14px;
   line-height: 20px;
   margin-left: 15px;
   margin-bottom: 20px;
  }
  
  #w50 {
   width: 99%;
   margin-left: 0.5%;
   margin-right: 0.5%;
   margin-top: 15px;
   margin-bottom: 2px;
   float: none;
   clear: both;
  }
  
  #pickup h3 {
   font-size: 1.3rem;
  }
  
  .btn, a.btn, button.btn {
   font-size: 14px;
  }
  
  #topcontents-sub {
   padding-bottom: 20px;
   padding-top: 50px;
  }
  
  #ft #banner30 h3 {
   font-size: 15px;
   line-height: 20px;
   margin-top: 0px;
   margin-bottom: 10px;
   padding-top: 30px;
  }
	
  #topimg-sub {
   float: none;
   width: 100%;
   height: auto;
  }
  
  .site-branding-sub {
   padding-top: 20px;
   height: auto;
  }
  
  
  th {
   font-size: 15px;
   width: 50%;
   line-height: 23px;
   display: block;
   padding-left: 5px;
   margin-top: 5px;
   margin-bottom: 5px;
  }
  
  td {
   font-size: 14px;
   width: 92%;
   line-height: 23px;
   display: block;
   padding-left: 5px;
   margin-top: 5px;
   margin-bottom: 15px;
   margin-left: 5%;
  }
  
  #photo30 {
   width: 99%;
   margin-left: 0.5%;
   margin-right: 0.5%;
   margin-top: 15px;
   margin-bottom: 2px;
   float: none;
   clear: both;
  }
  
  h3 {
   font-size: 16px;
  }
  
  #page-top{
      width: 10%;
  }
	
	.kjkisei {
		padding-top: 20px;
	}
	
}