/* -------------------------------- 

Primary style

-------------------------------- */
*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

*::after, *::before {
}

@import url(https://fonts.googleapis.com/css?family=Lato:400,700);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);

body {
  font-size: 100%;
  font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #000000;
  background-color: #fcfae9;
}

a {
  color: #000;
  text-decoration: none;
}


img{
  max-width: 100%;
  height: auto;
  width /***/: auto;　
}


/* -------------------------------- 

margin / padding

-------------------------------- */
.mt5{margin-top: 5px !important}
.mt10{margin-top: 10px !important}
.mt15{margin-top: 15px !important}
.mt20{margin-top: 20px !important}
.mt30{margin-top: 30px !important}
.mt40{margin-top: 40px !important}
.mt50{margin-top: 50px !important}
.mt60{margin-top: 60px !important}
.mt70{margin-top: 70px !important}
.mt80{margin-top: 80px !important}
.mt90{margin-top: 90px !important}
.mt100{margin-top: 100px !important}

.mb5{margin-bottom: 5px !important}
.mb10{margin-bottom: 10px !important}
.mb15{margin-bottom: 15px !important}
.mb20{margin-bottom: 20px !important}
.mb30{margin-bottom: 30px !important}
.mb40{margin-bottom: 40px !important}
.mb50{margin-bottom: 50px !important}
.mb60{margin-bottom: 60px !important}
.mb70{margin-bottom: 70px !important}
.mb80{margin-bottom: 80px !important}
.mb90{margin-bottom: 90px !important}
.mb100{margin-bottom: 100px !important}

.ml5{margin-left: 5px !important}
.ml10{margin-left: 10px !important}
.ml15{margin-left: 15px !important}
.ml20{margin-left: 20px !important}
.ml30{margin-left: 30px !important}
.ml40{margin-left: 40px !important}
.ml50{margin-left: 50px !important}
.ml60{margin-left: 60px !important}
.ml70{margin-left: 70px !important}
.ml80{margin-left: 80px !important}
.ml90{margin-left: 90px !important}
.ml100{margin-left: 100px !important}

.mr5{margin-right: 5px !important}
.mr10{margin-right: 10px !important}
.mr15{margin-right: 15px !important}
.mr20{margin-right: 20px !important}
.mr30{margin-right: 30px !important}
.mr40{margin-right: 40px !important}
.mr50{margin-right: 50px !important}
.mr60{margin-right: 60px !important}
.mr70{margin-right: 70px !important}
.mr80{margin-right: 80px !important}
.mr90{margin-right: 90px !important}
.mr100{margin-right: 100px !important}

.pt5{padding-top: 5px !important}
.pt10{padding-top: 10px !important}
.pt15{padding-top: 15px !important}
.pt20{padding-top: 20px !important}
.pt30{padding-top: 30px !important}
.pt40{padding-top: 40px !important}
.pt50{padding-top: 50px !important}
.pt60{padding-top: 60px !important}
.pt70{padding-top: 70px !important}
.pt80{padding-top: 80px !important}
.pt90{padding-top: 90px !important}
.pt100{padding-top: 100px !important}

.pb5{padding-bottom: 5px !important}
.pb10{padding-bottom: 10px !important}
.pb15{padding-bottom: 15px !important}
.pb20{padding-bottom: 20px !important}
.pb30{padding-bottom: 30px !important}
.pb40{padding-bottom: 40px !important}
.pb50{padding-bottom: 50px !important}
.pb60{padding-bottom: 60px !important}
.pb70{padding-bottom: 70px !important}
.pb80{padding-bottom: 80px !important}
.pb90{padding-bottom: 90px !important}
.pb100{padding-bottom: 100px !important}

.pl5{padding-left: 5px !important}
.pl10{padding-left: 10px !important}
.pl15{padding-left: 15px !important}
.pl20{padding-left: 20px !important}
.pl30{padding-left: 30px !important}
.pl40{padding-left: 40px !important}
.pl50{padding-left: 50px !important}
.pl60{padding-left: 60px !important}
.pl70{padding-left: 70px !important}
.pl80{padding-left: 80px !important}
.pl90{padding-left: 90px !important}
.pl100{padding-left: 100px !important}

.pr5{padding-right: 5px !important}
.pr10{padding-right: 10px !important}
.pr15{padding-right: 15px !important}
.pr20{padding-right: 20px !important}
.pr30{padding-right: 30px !important}
.pr40{padding-right: 40px !important}
.pr50{padding-right: 50px !important}
.pr60{padding-right: 60px !important}
.pr70{padding-right: 70px !important}
.pr80{padding-right: 80px !important}
.pr90{padding-right: 90px !important}
.pr100{padding-right: 100px !important}

.txt12{font-size: 12px; color: #333333;}
.txt-right{text-align: right;}

/* -------------------------------- 

PC CSS

-------------------------------- */

@media only screen and (min-width: 769px) {

/* -------------------------------- 

head CSS

-------------------------------- */

#head{
  width: 100%;
  background-color: #04a86e;
  color: #FFFFFF;
}

#head .contents{
  width: 960px;
  margin:0 auto 0;
  position: relative;
  display: table;
}

#head .logo-area{
  float: left;
  margin-right:20px; 
}

#head .com-area{
  float: left;
  padding-top: 15px;
}

#head .tel-area{
  float: right;
  padding-top: 10px;
}

#head .tel-area a{
  color: #FFFFFF;
  font-size: 32px;
  font-weight: bold;
}

#head .btn{
  font-size: 16px;
  background-color: #ff9900;
  padding: 10px 20px 10px 20px;
  display: block;
  text-align: center;
  color: #FFFFFF;
  border-radius: 6px;        /* CSS3草案 */  
  -webkit-border-radius: 6px;    /* Safari,Google Chrome用 */  
  -moz-border-radius: 6px;   /* Firefox用 */  
}

#head .btn:hover{
  background-color: #ffb400;
}

/* -------------------------------- 

image CSS

-------------------------------- */
#main-image{
  width: 100%;
  z-index: 999999;
}

#main-image img{
  width: 100%;
  height: auto;
}

/* -------------------------------- 

cmn CSS

-------------------------------- */

#main-contents{
  width: 960px;
  margin: -2px auto 0;
  background-color: #FFFFFF;
  box-shadow:0px 0px 6px 3px #e6e6e6;
  -moz-box-shadow:0px 0px 6px 3px #e6e6e6;
  -webkit-box-shadow:0px 0px 6px 3px #e6e6e6;
  text-align: center;
  padding-bottom: 10px;
}

#main-contents h1{
  font-size: 36px;
  font-weight: bold;
  color: #04a86e;
  padding-top: 30px;
  padding-bottom: 20px;
}

#main-contents h2{
  font-size: 20px;
  font-weight: bold;
  background-color: #04a86e;
  color: #FFFFFF;
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-top: 30px;
}

#main-contents h3{
  font-size: 20px;
  font-weight: bold;
  border-bottom:1px solid #04a86e;
  color: #04a86e;
  padding-bottom: 15px;
  margin-top: 20px;
  margin-bottom: 20px;
}

#main-contents .section-area{
  width: 773px;
  margin: 0 auto 40px;
  text-align: left;
}

#main-contents .section-area .img-area{
  width: 100%;
  text-align: center;
}

#main-contents .section-area p{
  font-size: 18px;
  line-height: 30px;
  margin-bottom: 30px;
}

#main-contents .section-area .alert{
  width: 100%;
  text-align: right;
  font-size: 12px;
}

#main-contents .movie-area{
  width: 100%;
  display: table;
}

#main-contents .movie-area .box-left{
  width: 370px;
  float: left;
}

#main-contents .movie-area .box-right{
  width: 370px;
  float: right;
}

#main-contents .photo-area{
  width: 100%;
  margin-top: 10px;
}

#main-contents .photo-area img{
  width: 100%;
  height: auto;
}

#main-contents .photo-area .box{
  width: 200px;
  padding:2px; 
  margin-bottom: 10px;
  display: table-cell;
}


#main-contents .photo-area .box-left{
  width: 180px;
  float: left;
  margin-bottom: 10px;
}

#main-contents .photo-area .box-right{
  width: 180px;
  float: right;
  margin-bottom: 10px;
}

#main-contents .news ul{
  margin-top: 30px;
}

#main-contents .news ul li{
  border-bottom: 1px dotted #999999;
  padding-bottom: 15px;
  font-size: 14px;
  line-height: 24px;
  margin-bottom: 20px;
}

#main-contents .news ul li a:hover{
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}

#main-contents .section-area .c-copy01{
  width: 100%;
  text-align: center;
  color: #f06d95;
  font-size: 24px;
  line-height: 40px;
  margin-top: 30px;
  margin-bottom:30px;
}

#main-contents .section-area .c-copy02{
  width: 100%;
  text-align: center;
  color: #4f4f4f;
  font-size: 20px;
  line-height: 36px;
  margin-top: 30px;
  margin-bottom:10px;
}

#main-contents .section-area .c-copy03{
  width: 100%;
  border: 1px solid #04a86e;
  padding: 20px;
  font-size: 18px;
}

/* -------------------------------- 

submenu CSS

-------------------------------- */
#submenu{
  width: 100%;
  margin:20px auto 30px;
}

#submenu ul li{
  display: inline-block;
  font-size: 12px;
}

#submenu ul li a{
  background-color: #04a86e;
  padding: 10px;
  color: #FFFFFF;
  border-radius: 6px;        /* CSS3草案 */  
  -webkit-border-radius: 6px;    /* Safari,Google Chrome用 */  
  -moz-border-radius: 6px;   /* Firefox用 */  
}

#submenu ul li a:hover{
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}

/* -------------------------------- 

banner CSS

-------------------------------- */

#banner-area {
  width: 960px;
  margin:40px auto 20px;
  position: relative;
  display: table;
  background-color: #04a86e;
}

#banner-area .box{
  float: left;
}

#banner-area .box a:hover{
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}

/* -------------------------------- 

foot CSS

-------------------------------- */

#foot{
  width: 100%;
  background-color: #04a86e;
  color: #FFFFFF;
  margin-top: 40px;
}

#foot .contents{
  width: 960px;
  margin:0 auto 0;
  position: relative;
  display: table;
}

#foot .logo-area{
  float: left;
  margin-right:20px; 
}

#foot .com-area{
  float: left;
  padding-top: 20px;
}

#foot .tel-area{
  float: right;
  padding-top: 15px;
}

#foot .tel-area a{
  color: #FFFFFF;
  font-size: 32px;
  font-weight: bold;
}

#foot .btn{
  font-size: 16px;
  background-color: #ff9900;
  padding: 10px 20px 10px 20px;
  display: block;
  text-align: center;
  color: #FFFFFF;
  border-radius: 6px;        /* CSS3草案 */  
  -webkit-border-radius: 6px;    /* Safari,Google Chrome用 */  
  -moz-border-radius: 6px;   /* Firefox用 */  
}

#foot .btn:hover{
  background-color: #ffb400;
}

#foot .under-area{
  width: 960px;
  margin:0 auto 0;
  position: relative;
  display: table;
  font-size: 12px;
  padding-top: 5px;
  padding-bottom: 20px;
}

#foot .under-area a{
  color: #FFFFFF;
}

#foot .under-area a:hover{
  text-decoration: underline;
}

#foot .under-area .copy{
  float: right;
}

.pagetop {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 9999;
}

.pagetop a {
    display: block;
    background-color: #ff9900;
    //border: 2px solid #ff9900;
    text-align: center;
    color: #fff;
    font-size: 10px;
    text-decoration: none;
    padding: 14px 15px 14px 15px;
    -webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    -o-transition: all .5s ease-out;
    transition: all .5s ease-out;
}

.pagetop a:hover {
  background-color: #ffb400;
}


}
/* -------------------------------- 

SP CSS

-------------------------------- */
@media only screen and (max-width: 768px) {

/* -------------------------------- 

head CSS

-------------------------------- */

#head{
  width: 100%;
  background-color: #04a86e;
  color: #FFFFFF;
}

#head .contents{
  width: 80%;
  margin:0 auto 0;
  position: relative;
  display: table;
}

#head .logo-area{
  text-align: center;
}

#head .logo-area img{
  width: 90%;
  height: auto;
}

#head .com-area{
  padding-top: 15px;
  text-align: center;
  font-size: 12px;
}

#head .tel-area{
  text-align: center;
  padding-top: 20px;
  padding-bottom: 20px;
  font-size: 12px;
}

#head .tel-area a{
  color: #FFFFFF;
  font-size: 24px;
  font-weight: bold;
}

#head .btn{
  font-size: 12px;
  background-color: #ff9900;
  padding: 10px 20px 10px 20px;
  display: block;
  text-align: center;
  color: #FFFFFF;
  border-radius: 6px;        /* CSS3草案 */  
  -webkit-border-radius: 6px;    /* Safari,Google Chrome用 */  
  -moz-border-radius: 6px;   /* Firefox用 */  
}

#head .btn:hover{
  background-color: #ffb400;
}

/* -------------------------------- 

image CSS

-------------------------------- */
#main-image{
  width: 100%;
  z-index: 999999;
}

#main-image img{
  width: 100%;
  height: auto;
}

/* -------------------------------- 

cmn CSS

-------------------------------- */

#main-contents{
  width: 96%;
  margin: -2px auto 0;
  background-color: #FFFFFF;
  box-shadow:0px 0px 6px 3px #e6e6e6;
  -moz-box-shadow:0px 0px 6px 3px #e6e6e6;
  -webkit-box-shadow:0px 0px 6px 3px #e6e6e6;
  text-align: center;
  padding-bottom: 10px;
}

#main-contents h1{
  font-size: 24px;
  font-weight: bold;
  color: #04a86e;
  padding-top: 30px;
  padding-bottom: 20px;
}

#main-contents h2{
  font-size: 16px;
  font-weight: bold;
  background-color: #04a86e;
  color: #FFFFFF;
  text-align: center;
  padding-top: 10px;
  padding-bottom: 10px;
  margin-top: 30px;
}

#main-contents h3{
  font-size: 16px;
  border-bottom:1px solid #04a86e;
  color: #04a86e;
  padding-bottom: 10px;
  margin-top: 20px;
  margin-bottom: 20px;
}

#main-contents .section-area{
  width: 90%;
  margin: 0 auto 20px;
  text-align: left;
}

#main-contents .section-area .img-area{
  width: 100%;
  text-align: center;
}

#main-contents .section-area p{
  font-size: 12px;
  line-height: 20px;
  margin-bottom: 15px;
}

#main-contents .section-area .alert{
  width: 100%;
  text-align: right;
  font-size: 10px;
}


#main-contents .movie-area{
  width: 100%;
  display: table;
}

#main-contents .movie-area .box-left{
  width: 100%;
  //float: left;
  margin-bottom: 10px;
}

#main-contents .movie-area .box-right{
  width: 100%;
  //float: right;
  margin-bottom: 10px;
}

#main-contents .photo-area{
  width: 100%;
  display: table;
  //margin-top: 10px;
}


#main-contents .photo-area img{
  width: 100%;
  height: auto;
}

#main-contents .photo-area .box{
  width: 100%;
  margin-bottom: 10px;
}


#main-contents .photo-area .box-left{
  width: 100%;
  //float: left;
  margin-bottom: 10px;
}

#main-contents .photo-area .box-right{
  width: 100%;
  //float: right;
  margin-bottom: 10px;
}

#main-contents .news ul{
  margin-top: 30px;
}

#main-contents .news ul li{
  border-bottom: 1px dotted #999999;
  padding-bottom: 15px;
  font-size: 12px;
  margin-bottom: 20px;
  line-height: 20px;
}

#main-contents .news ul li a:hover{
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}

#main-contents .section-area .c-copy01{
  width: 100%;
  text-align: center;
  color: #f06d95;
  font-size: 16px;
  line-height: 24px;
  margin-top: 20px;
  margin-bottom:20px;
}

#main-contents .section-area .c-copy02{
  width: 100%;
  text-align: center;
  color: #4f4f4f;
  font-size: 12px;
  line-height: 20px;
  margin-top: 20px;
  margin-bottom:20px;
}

#main-contents .section-area .c-copy03{
  width: 100%;
  border: 1px solid #04a86e;
  padding: 5px;
  font-size: 10px;
}

/* -------------------------------- 

submenu CSS

-------------------------------- */
#submenu{
  width: 90%;
  margin:10px auto 30px;
}

#submenu ul li{
  display: block;
  font-size: 12px;
  margin-bottom: 15px;
}

#submenu ul li a{
  display: block;
  background-color: #04a86e;
  padding: 15px;
  color: #FFFFFF;
}

#submenu ul li a:hover{
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}


/* -------------------------------- 

banner CSS

-------------------------------- */

#banner-area {
  width: 100%;
  margin:40px auto 20px;
  position: relative;
  //display: table;
  background-color: #04a86e;
}

#banner-area img{
  width: 100%;
  height: auto;
}

#banner-area .box{
  //float: left;
}



#banner-area .box a:hover{
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}

/* -------------------------------- 

foot CSS

-------------------------------- */

#foot{
  width: 100%;
  background-color: #04a86e;
  color: #FFFFFF;
  margin-top: 40px;
  font-size: 12px;
}

#foot img{
  width: 70%;
  height: auto;
}

#foot .contents{
  width: 80%;
  margin:0 auto 0;
  position: relative;
  display: table;
  text-align: center;
}

#foot .logo-area{
}

#foot .com-area{
}

#foot .tel-area{
  padding-top: 15px;
  padding-bottom: 15px;
}

#foot .tel-area a{
  color: #FFFFFF;
  font-size: 24px;
  font-weight: bold;
}

#foot .btn{
  font-size: 12px;
  background-color: #ff9900;
  padding: 10px 20px 10px 20px;
  display: block;
  text-align: center;
  color: #FFFFFF;
  border-radius: 6px;        /* CSS3草案 */  
  -webkit-border-radius: 6px;    /* Safari,Google Chrome用 */  
  -moz-border-radius: 6px;   /* Firefox用 */  
}

#foot .btn:hover{
  background-color: #ffb400;
}

#foot .under-area{
  width: 98%;
  margin:0 auto 0;
  position: relative;
  display: table;
  font-size: 10px;
  padding-top: 5px;
  padding-bottom: 20px;
  line-height: 18px;
}

#foot .under-area a{
  color: #FFFFFF;
}

#foot .under-area a:hover{
  text-decoration: underline;
}

#foot .under-area .copy{
  margin-left: 20px;
}

.pagetop {
    display: none;
    position: fixed;
    bottom: 50px;
    right: 10px;
    z-index: 9999;
}

.pagetop a {
    display: block;
    background-color: #ff9900;
    //border: 2px solid #ff9900;
    text-align: center;
    color: #fff;
    font-size: 10px;
    text-decoration: none;
    padding: 14px 15px 14px 15px;
    -webkit-transition: all .5s ease-out;
    -moz-transition: all .5s ease-out;
    -ms-transition: all .5s ease-out;
    -o-transition: all .5s ease-out;
    transition: all .5s ease-out;
}

.pagetop a:hover {
  background-color: #ffb400;
}

}
