@charset "utf-8";

html {
 -webkit-text-size-adjust: 100%;
}

body{ margin:0; padding:0;font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serifline-height: 1.6em; background-color:#efefef; font-size:1em; color:#333333;}
img{max-width: 100%;}

* { -webkit-appearance: none;}
@media screen and (max-width:480px){
body{font-size:1.4em; line-height:1.8em;}
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
    color: #755;
    font-size:20px;
}
::-moz-placeholder { /* Firefox 19+ */
    color: #755;
    font-size:20px;    
}
:-ms-input-placeholder { /* IE 10+ */
    color: #755;
    font-size:20px;    
}
:-moz-placeholder { /* Firefox 18- */
    color: #755;
    font-size:20px;    
}

/*レイアウト*/
#layout{margin: 0 auto; overflow: hidden;position: relative;}
#header{width:100%;background-color: #1b4f03;  border-bottom: rgba(0,0,0,0.30) solid 5px; }
#header .inner{width:1000px;margin:0 auto; padding:30px 0;background-image: url(images/your_logo.png); background-size:auto 52px; background-position:left; background-repeat: no-repeat;height:52px; text-align: right; position: relative;}
#telno{font-size:2.2em; font-weight:600;padding-left:1.8em; background-image: url(img/freedial.gif); background-position: left; background-repeat: no-repeat; background-size: auto 68%; height:2.4em;}
#telno *{color:#333333; text-decoration: none;}
#hour{display: block; font-size: 1.3em;}
@media screen and (max-width:770px){
#header .inner{width:100%; height:auto; padding:90px 0 15px; background-position:center 10px; background-size:auto 70%; text-align: center; }
#telno{font-size: 3em; padding-top:0.5em; padding-bottom: 0.8em;background-size: auto 36%; background-position: left 40%;}
#hour{font-size: 1.2em; margin-top: 0.5em;}
}
#mainimage{width:100%; text-align: center; background-image: url(img/bg_main.gif); background-repeat: repeat-x; margin-bottom: -7px;}
@media screen and (max-width:770px){
#mainimage{background-image: url(img/top.png); background-repeat: no-repeat;height:auto;min-height:495px; background-position:50% top; background-size: 142% auto;;}
#mainimage img {display:none}
}
#contents{width:900px; padding:30px 50px; margin:0 auto; background-color: #ffffff;position: relative;}
@media screen and (max-width:770px){
#contents{width:700px; padding:35px;}
}
#footer{background-color:#24323b; padding: 30px; text-align: center;color:#ffffff; -webkit-appearance: none;}
#footer a{color:#ffffff; text-decoration: none; display: inline-block; min-width:200px; text-align: center; border-right:#ffffff solid 1px;white-space: nowrap; padding: 0 0.5em; -webkit-appearance: none;}
#footer a:first-child{border-left:#ffffff solid 1px; -webkit-appearance: none;}
/*ホーム「へ戻るボタン*/
#homebutton{position:absolute; left:0 top:0; display: block; height:60px; width:400px; cursor: pointer; z-index: 100;}
@media screen and (max-width:770px){
#homebutton{width:100%; top:0px; left:0; right:0;}
}
/*トップへ戻るボタン*/
#pagetopbutton{position:fixed; right:200px; bottom:200px; cursor:pointer;display: block; width:63px;height:63px;z-index:100;}
#pagetopbutton img{	max-width:100%;}
@media screen and (max-width:770px){
#pagetopbutton{right:0px; bottom:50px;}
}


/*フォーム*/
.formdl{display: table-row; position: relative; width:100%}
.formdl dt, .formdl dd{display:table-cell; vertical-align: top; border-bottom:#333333 dotted 1px; padding:1em 0.5em; margin: 0;}
.formdl dt{white-space: nowrap; width:20%}
.formdl dd{position: relative;width:80%} 
.nes{display: inline-block; font-size: 80%; color:#ffffff; background-color:#dc0000; padding:0 0.5em; margin: 0 0.5em}
.formdl dd input,.formdl dd textarea{line-height: 2em; width:100%; box-sizing:border-box}
input.button{border-radius:0.5em; background-color:#dc0000; color:#ffffff; text-align: center; padding:0.7em 2em;border:none; cursor: pointer;font-size: 1.4em;}
input.s_button{border-radius:0.5em; background-color:#4dd0e1; color:#ffffff; text-align: center; padding:0.7em 2em;border:none; cursor: pointer;font-size: 1.4em;}

@media screen and (max-width:770px){
.formdl dd input,.formdl dd textarea,.formdl dd select{font-size: 1.6em;}
}
@media screen and (max-width:480px){
.formdl{display:block;}
.formdl dt, .formdl dd{display:block;width:100%; border-bottom: none; padding:0.2em 0}
.formdl dt{background-color:#efefef; text-align: center; }
.formdl dd input,.formdl dd textarea,.formdl dd select{font-size: 1.8em;}
}


/* css checkbox01 START ##################################################   */
.checkbox01-input{
  display: none;
}
.checkbox01-parts{
  padding-left: 20px;
  position:relative;
  margin-right: 20px;
}
.checkbox01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  border: 1px solid #999;
  border-radius: 4px;
}
.checkbox01-input:checked + .checkbox01-parts{
  color: #009a9a;
}
.checkbox01-input:checked + .checkbox01-parts::after{
  content: "";
  display: block;
  position: absolute;
  top: -5px;
  left: 5px;
  width: 7px;
  height: 14px;
  transform: rotate(40deg);
  border-bottom: 3px solid #009a9a;
  border-right: 3px solid #009a9a;
}
/* css checkbox01 END ##################################################   */

/* css radio START   ##################################################   */
/* The container */
.container {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 16px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
@media screen and (max-width:770px){
.container {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 25px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
}

/* Hide the browser's default radio button */
.container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

/* Create a custom radio button */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 25px;
  width: 25px;
  background-color: #eee;
  border-radius: 50%;
}

/* On mouse-over, add a grey background color */
.container:hover input ~ .checkmark {
  background-color: #ccc;
}

/* When the radio button is checked, add a blue background */
.container input:checked ~ .checkmark {
  background-color: #2196F3;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}

/* Show the indicator (dot/circle) when checked */
.container input:checked ~ .checkmark:after {
  display: block;
}

/* Style the indicator (dot/circle) */
.container .checkmark:after {
 	top: 9px;
	left: 9px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: white;
}
/* css radio END   ##################################################   */


/*TABLE*/
.table01 {
    width: 100%;
    font-size: 16px;
    border: 1px solid #ddd;    
    border-collapse: collapse;
    margin-bottom: 2em;    
}
.table01 tr {

}
.table01 th {
    background: #eee;
    text-align: left;
    color: #555;
    border: 1px solid #ddd;
    padding:10px;


}
.table01 td {
    background: #ffffff;
    margin-bottom: 30px;
    border: 1px solid #ddd;
    padding:10px;    
}

@media screen and (max-width:770px){
.table01 th {
	width: 30%;
 
}
}

/*基本的なもの*/
p,li{margin: 0; padding: 0;}
ul{padding-left: 20px;}
h2,h3{font-family:-apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Segoe UI', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', sans-serif;font-weight: bold; font-size:1em; margin:1em 0; padding: 0;}
h2.gray_bg{padding:0.2em 0; background-color:#24323b; color:#ffffff;font-size: 200%; text-align: center; -webkit-appearance: none;}
.tac{text-align: center; border-bottom: solid 0px; }
.font75{font-size:75%; line-height: 100%}
.font120{font-size:120%; line-height: 100%}
.font150{font-size:150%; line-height: 115%}
.font200{font-size:200%; line-height:130%}
.bold{font-weight: bold}
.border_red{text-decoration:underline wavy;line-height:1.8em;color:#ff0000; }
.black{color:#333333;}
.red{color:#dc0000;}
.blue{color:#0a4bb4;}
.mbL{margin-bottom:80px;}
.mbM{margin-bottom:50px;}
.mbS{margin-bottom:10px;}
.mbNO{margin-bottom:0;}
.border_btm{border-bottom:#888888 solid 1px; padding-bottom: 0.5em;}
.mincho{font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}

BR.sp_br{display:none;}
@media screen and (max-width:770px){
BR.sp_br{display:block;}
.mbL{margin-bottom:40px;}
.mbM{margin-bottom:20px;}
}
