@charset "UTF-8";
/* CSS Document */


body {
      background: #fff;
		margin: 0;
		padding: 0;
   letter-spacing : 0.1em;
   line-height: 150%;
    }
p {
	font-family: "Noto Sans JP", serif; 
	font-weight: 100;
	font-size: 13px;
}
    #outer {
      width: 100%;
      min-width: 320px;
      max-width: 600px;
      background: #fff;
      position: relative;
    }
    #inner {
      padding: 0px;
    }
	.oowaku {
		  width: 75%;
		  background-color: #fff;
		  position: relative;
		padding-top:  1%;
	  }

.noto-sans-jp-<uniquifier> {
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
}


.merriweather-sans-<uniquifier> {
  font-family: "Merriweather Sans", serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

header {
   padding: 70px 17% 30px;
   position: relative;
   top: 0;
   width: 66%;
   display: flex;
   align-items: center;
   z-index: 999;
   font-size: 14px;
   font-weight: 600;
   letter-spacing : 0.2em;
  background-color: #fff;
}
.header.change-color {
  background-color: #fff;
  transition: 0.3s;
}
h1 {
   margin: 0; padding: 0;
   font-size: 20px;
}
h1 img {
   width: 170px;
}
a {	
   text-decoration: none;
   color: #000;
}
a:link {
	color: #000;
	text-decoration: none;
}
a:visited {
	text-decoration: none;
	color: #333;
}
a:hover {
	color: #354b9e;
}
a:active {
	text-decoration: none;
	color: #333;
}
nav {
   margin: 30px 0 0 auto;
}
ul {
   list-style: none;
   margin: 0;
   display: flex;
}
li {
   margin: 0 0 0 25px;
}
.sp-nav {
   display: none;
}

h2 {
	font-size:30px; 
	width:90%; 
	text-align:center; 
	margin:5% 5% 0% 5%; 
	line-height: 150%; 
	font-family: "Noto Sans JP", serif; 
	font-weight: normal;
}
h3 {
	font-size:20px; 
	width:90%; 
	text-align:center; 
	margin:7% 5% 0% 5%; 
	line-height: 150%; 
	font-family:'Lato', sans-serif;
	font-weight: 100;
	color: #ccc;
	letter-spacing: 0.05em;
}

.onlysp {
   display: none;
}
/*PCでは無効（改行しない）*/
.sma{
    display: none;
}

.topimgsize {
	width: 100%;
	margin: 5% 0% 0%;
}

.readmore {
  position: relative;
  margin: 5% auto 0;
  padding: 0 5% 5%;
}

.readmore label {
  position: absolute;
  display: table;
  left: 50%;
  bottom: 0;
  margin: 0 auto;
  width: 200px;
  padding: 10px 0px;
  text-align: center;
  border-radius: 0px;
  background-color: #fff;
  border: 1px solid #000;
  color: #000;
  transform: translateX(-50%);
  cursor: pointer;
  z-index: 1;
}

.readmore label::before{
  content: '続きを見る';
}

.readmore input[type="checkbox"]:checked ~ label::before {
  content: '元に戻す';
}

.readmore input[type="checkbox"]{
  display: none;
}

.readmore-content {
  position: relative;
  height: 110px;
  overflow: hidden;
}

.readmore input[type="checkbox"]:checked ~ .readmore-content {
  height: auto;
}

.question table {
	width: 90%;
	margin: 0% 5% 3% 5%;
	position: relative;
}
.question table th {
	width: 40%;
	padding: 3%;
	text-align: left;
	margin: 0;
	font-family: "Noto Sans JP", serif;
	border-bottom: 1px solid #ccc;
	font-weight: bold !important;
}
.question table td {
	width: 60%;
	padding: 3%;
	text-align: left;
	margin: 0;
	font-family: "Noto Sans JP", serif;
	border-bottom: 1px solid #ccc;
	font-weight: normal!important;
}
.question p {
	width: 80%;
	font-size: 14px;
	font-weight: 100;
	margin: 20px 10%;
	text-align: left;
}

.contactbutton {
	position: fixed;
	bottom: 20px;
	right: 20px;
	width: 80px;
	height: 80px;
	line-height: 150%;
	background-color: #000;
	font-size: 15px;
	color: #fff;
	padding: 2%;
	text-align: center;
	display: table-cell;
	border-radius: 50%;
	border: 1px dotted #fff;
	z-index: 900;
	text-decoration: none;
}
.contactbutton:hover{
	background: #386411;
}
.contactbutton img {
	width: 30%;
	margin-bottom: 5%;
}

.button{
  margin: 0 auto;
  width: 200px;
  padding: 10px 0px;
  text-align: center;
  border-radius: 0px;
  background-color: #fff;
  border: 1px solid #000;
  color: #000;
  margin-top: 5%;
	}

.other {
	width: 100%;
	position: relative;
	margin: 7% 0% 2%;
	padding: 0;
	display: inline-block;
}
.other ul {
	width: 100%;
    list-style: none;
    margin: 0;
	padding: 0;
	display: block;
}
.other ul li {
	width: 50%;
	float: left;
	margin: 0;
	display: block;
	text-align: center;
	padding: 0 0 0%;
}
.other ul li img {
	width: 100%;
	float: left;
	margin: 0 0%;
	display: block;
	text-align: center;
}
.other ul li h2 {
	width: 90%;
	float: left;
	font-size: 14px;
	font-weight: 600;
	margin: 20px 5% 0;
	text-align: center;
}
.other ul li h3 {
	float: left;
	font-size: 12px;
	font-weight: 300;
	margin: 0;
}
.other ul li p {
	float: left;
	width: 80%;
	font-size: 13px;
	font-weight: 100;
	margin: 20px 10% 0;
	text-align: left;
}

.setsubi {
	width: 100%;
	position: relative;
	margin: 5% 0% 0%;
	padding: 0;
	display: inline-block;
}
.setsubi ul {
	width: 100%;
    list-style: none;
    margin: 0;
	padding: 0;
	display: block;
}
.setsubi ul li {
	width: 20%;
	float: left;
	margin: 0;
	display: block;
	text-align: center;
	padding: 0 0 2%;
}
.setsubi ul li img {
	width: 96%;
	float: left;
	margin: 0 2%;
	display: block;
	text-align: center;
}
.setsubi ul li h2 {
	width: 90%;
	float: left;
	font-size: 14px;
	font-weight: 600;
	margin: 20px 5% 0;
	text-align: center;
}
.setsubi ul li h3 {
	float: left;
	font-size: 12px;
	font-weight: 300;
	margin: 0;
}
.setsubi ul li p {
	float: left;
	width: 100%;
	font-size: 12px;
	font-weight: 100;
	margin: 10px 0% 0;
	text-align: center;
}

.map {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    /* 16:9のアスペクト比 */
    height: 0;
}

.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.iframe-wrapper {
position:relative;
width:100%;
height:0;
padding-top:55%;
}
 
.iframe-wrapper iframe {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
}
	  
	  
@media only screen and (max-width:650px) { 


body {
      background: #fff;
		margin: 0;
		padding: 0;
   letter-spacing : 0.1em;
   line-height: 150%;
    }
p {
	font-family: "Noto Sans JP", serif;
	font-weight: 100;
	font-size: 13px;
	width: 90%;
	margin: 5% 5%;
	position: relative;
}
header {
   padding: 30px 5% 30px;
   position: relative;
   top: 0;
   width: 90%;
   display: flex;
   align-items: center;
   z-index: 999;
   font-size: 14px;
   font-weight: 600;
   letter-spacing : 0.2em;
  background-color: #fff;
}
.header.change-color {
  background-color: #fff;
  transition: 0.3s;
}
h1 {
   margin: 0; padding: 0;
   font-size: 20px;
}
h1 img {
   width: 120px;
}
	
h2 {font-size:20px; 
	width:90%; 
	text-align:center; 
	margin:8% 5% 0% 5%; 
	line-height: 150%; 
	font-family: "Noto Sans JP", serif;
	font-weight: normal;
}
	
.onlypc {
      display: none;
   }
.onlysp {
    display: inline-block;
}
	
	
/*PCでは無効（改行しない）*/
.sma{
    display: block;
}
	
.oowaku {
		width: 100%;
		margin: 0 0% 0 0%;
	}
.responsive-td {
        display: block !important;
        width:100% !important; 
        height:auto !important;
} 

.topimgsize {
	width: 100%;
	margin: 10% 0% 0%;
}
	
.readmore {
  position: relative;
  margin: 50px auto 0;
  padding: 0 5% 2%;
}

.readmore label {
  position: absolute;
  display: table;
  left: 50%;
  bottom: 0;
  margin: 0 auto;
  width: 200px;
  padding: 10px 0;
  text-align: center;
  border-radius: 0px;
  background-color: #fff;
  border: 1px solid #000;
  color: #000;
  transform: translateX(-50%);
  cursor: pointer;
  z-index: 1;
}

.readmore label::before{
  content: '続きを見る';
}

.readmore input[type="checkbox"]:checked ~ label::before {
  content: '元に戻す';
}

.readmore input[type="checkbox"]{
  display: none;
}

.readmore-content {
  position: relative;
  height: 155px;
  overflow: hidden;
}

.readmore input[type="checkbox"]:checked ~ .readmore-content {
  height: auto;
}
	
.question table {
	width: 90%;
	margin: 0% 5% 3% 5%;
	position: relative;
}
.question table th {
	width: 98%;
	padding: 5% 1% 2% 1%;
	text-align: left;
	display: block;
	margin: 0;
	font-family: "Noto Sans JP", serif;
	font-weight: bold !important;
	border-bottom: 0px;
}
.question table td {
	width: 98%;
	padding: 2% 1% 5% 1%;
	text-align: left;
	display: block;
	margin: 0;
	font-family: "Noto Sans JP", serif;
	font-weight: normal!important;
	border-bottom: 1px solid #ccc;
}
.question p {
	width: 96%;
	font-size: 14px;
	font-weight: 100;
	margin: 20px 2%;
	text-align: left;
}
	
.other {
	width: 94%;
	position: relative;
	margin: 5% 3% 0;
	padding: 0;
	display: inline-block;
}
.other ul {
	width: 100%;
    list-style: none;
    margin: 0;
	padding: 0;
	display: block;
}
.other ul li {
	width: 50%;
	float: left;
	margin: 0;
	display: block;
	text-align: center;
	padding: 1% 0;
}
.other ul li img {
	width: 96%;
	float: left;
	margin: 0 2%;
	display: block;
	text-align: center;
}
.other h2 {
	font-size: 14px;
	font-weight: 600;
	margin: 2% 0;
}
.other h3 {
	font-size: 12px;
	font-weight: 300;
	margin: 0;
}
.other p {
	width: 60%;
	font-size: 12px;
	font-weight: 100;
	margin: 20px 20%;
	text-align: left;
}
	
.setsubi {
	width: 94%;
	position: relative;
	margin: 5% 3% 0;
	padding: 0;
	display: inline-block;
}
.setsubi ul {
	width: 100%;
    list-style: none;
    margin: 0;
	padding: 0;
	display: block;
}
.setsubi ul li {
	width: 50%;
	float: left;
	margin: 0;
	display: block;
	text-align: center;
	padding: 1% 0;
}
.setsubi ul li img {
	width: 96%;
	float: left;
	margin: 0 2%;
	display: block;
	text-align: center;
}
.setsubi h2 {
	font-size: 14px;
	font-weight: 600;
	margin: 2% 0;
}
.setsubi h3 {
	font-size: 12px;
	font-weight: 300;
	margin: 0;
}
.setsubi p {
	width: 100%;
	font-size: 12px;
	font-weight: 100;
	margin: 10px 0% 0;
	text-align: center;
	color: #000;
}
	

.iframe-wrapper {
position:relative;
width:98%;
margin: 0 1%;
height:0;
padding-top:100%;
}
 
.iframe-wrapper iframe {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
}

}