@charset "UTF-8";

/* ==========================================================================
   reset
   ========================================================================== */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}body{line-height:1;}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}ol,ul{list-style:none;}blockquote,q{quotes:none;}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}ins{background-color:#ff9;color:#333;text-decoration:none;}mark{background-color:#ff9;color:#333;font-style:italic;font-weight:bold;}del{text-decoration:line-through;}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help;}table{border-collapse:collapse;border-spacing:0;}address{font-style:normal;}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0;}input,select{vertical-align:middle;}

/* ========ALLPAGR CUSTOMIZE========= */
body{
font-family: 'Arial',YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,'ＭＳ ゴシック',sans-serif;
line-height: 1.5em;
/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#fcfbf2+0,f7f3de+100 */
background: #fcfbf2; /* Old browsers */
background: -moz-linear-gradient(top, #fcfbf2 0%, #f7f3de 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, #fcfbf2 0%,#f7f3de 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, #fcfbf2 0%,#f7f3de 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fcfbf2', endColorstr='#f7f3de',GradientType=0 ); /* IE6-9 */
}

img, object, embed, video {
    max-width: 100%;
}
/* IE 6 では最大幅がサポートされていないため、デフォルトで幅 100% に設定される */
.ie6 img {
    width:100%;
}
/* = Selected Text
----------------------------------------------- */
::selection {
    background:#C1E5DA; /* Safari */
}
::-moz-selection {
    background:#C1E5DA; /* Firefox */
}
a:hover img {
opacity: .5;
-webkit-opacity: .5;
-moz-opacity: .5;
filter: alpha(opacity=50);  /* IE lt 8 */
-ms-filter: "alpha(opacity=50)"; /* IE 8 */
}
a img {
-webkit-transition: opacity 0.3s ease-out;
-moz-transition: opacity 0.3s ease-out;
-ms-transition: opacity 0.3s ease-out;
transition: opacity 0.3s ease-out;
}
.none {
    display: none;
}
.clear {
    clear: both;
}
.highLighting {
	color: #00A0E8;
	font-weight: bolder;
}
.bold {
  font-weight: bold;
}
#pageTop {
    position:fixed;
    right:80px;
    bottom:20px;
    margin: 0 0 119px 0;
}
#pageTop a {
    width: 60px;
    height: 38px;
    background: #EEE;
    border: 1px solid #DDD;
    border-radius: 70px;
    -moz-border-radius: 70px;
    -webkit-border-radius: 70px;
    color: #111;
    padding: 10px 14px;
    text-decoration: none;
    
}
/* デフォルト：980px以上用（PC用）の記述 */
h2 {
	font-size: 150%;
	margin: 20px 0 0 0;
  padding: 0;
  position: relative;
  color: white;
  background: #95c76c;
  line-height: 1.5;
  padding: 0.5em 0.5em 0.5em 2em;
  list-style-type: none!important;
  font-weight: bold; /*好みで太字に*/
}

h3{
	font-size: 110%;
	margin: 20px 0 5px 0;
	position: relative;
	display: inline-block;
	padding: 0 35px;
}

h3:before, h3:after{
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: 30px;
	height: 1px;
	background-color: black;
}

h3:before {left:0;}
h3:after {right: 0;}

.gridContainer {
	width: 800px;
    margin-left: auto;
    margin-right: auto;
}

#hLogo {
	float: left;
}
#hLogo img {
	width: 80%;
}
#headerR {
	float: right;
	margin: 18px 0 0 0;
}

#headerR p span {
	font-size: 100%;
}

nav{
	height: 300px;
}

nav ul li {
    float: left;
}

section article {
	clear: both;
}
section table.price {
	font-size: 120%;
	width: 80%;
	margin: 20px 0 20px 20px;
	clear: both;
}

section .price th, section .price td {
	padding: 10px;
	border: 1px solid #ddd;
}
section .price th {
	background: #f4f4f4;
	width: 45%;
	text-align: center;
}
section .price td {
	width: 60%;
	background: #ffffff;
	text-align: center;
}

.articleL {
	float: left;
	width: 60%;
	margin: 0 0 0 30px;
}
.articleL p {
	margin: 10px 0 10px 0;
}

.articleR {
	float: right;
	width: 25%;
	padding: 20px 20px 20px 0;
}

/* footer */

footer {
	background-image: url("../img/f_bg.png");
	background-repeat: repeat-x;
	height: 130px;
	color: #ffffff;
}
#footerContainer {
	width: 800px;
	margin: 0 auto;
}
#footerL {
	float: left;
    margin: 30px 0 0 0;
}
#footerR {
	float: right;
	margin: 30px 0 0 0;
	font-size: 120%;
}

/* デフォルト：980px以上用（PC用）の記述ここまで*/

@media screen and (max-width: 799px) {
/* 799px以下用（タブレット用）の記述 */
.gridContainer {
	width: 100%;
}

nav {
	height: 100%;
	display: inline-flex;
}
nav ul {
	height: 100%;
    display: inline-flex;
}
nav ul li {
	width: 20%;
}
#footerContainer {
	width: 100%;
}
#footerR {
	font-size: 110%;
}
}

@media screen and (max-width: 563px) {
/* 563px以下用（タブレット／スマートフォン用）の記述 */
#hLogo {
	text-align: center;
	float: none;
	margin: 0 auto;
	width: 60%;
}

#headerR {
	float: none;
	margin: 0 auto;
	text-align: center;
}
}
@media screen and (max-width: 559px) {
/* 559px以下用（タブレット／スマートフォン用）の記述 */

.articleR img{
	display: none;
}
.articleL {
    float: none;
    width: 88%;
    margin: 0 auto;
}
section table.price {
	width: 100%;
	margin: 0;
}
section .price th,section .price td{
	width: 50%;
	margin: 0 auto;
}

#footerL {
	text-align: center;
	float: none;
	margin: 0 auto;
	padding: 5% 0 0 0;
}
#footerR {
	text-align: center;
	float: none;
	margin: 0 auto;
}
}

@media screen and (max-width: 480px) {
/* 479px以下用（スマートフォン用）の記述 */
h2 {
  font-size: 140%;
  text-align: center;
  padding: 0.5em;
}
#menu {
	display: none;
}
.none {
	display: block;
}
.price {
	margin: 0 -10px;
}
.price th,
.price td{
	width: 100%;
    display: block;
    border-top: none;
}
.price tr:first-child th {
	border-top: 1px solid #ddd;
}

section .price th,section .price td{
	width: 88%;
}
#footerContainer {
	height: 130%;
}
.contact-box {
    width: 100%;
    height: auto;
    position: fixed;
    top: auto;
    bottom: 0;
    z-index: 3000;
    right: auto;
}
.contact-box li.first-child a, .contact-box li.first-child a:hover {
    background: #E19F9C 15% -10px;
    background-size: 18px !important;
    background-position: 12% 50% !important;
}
.contact-box a {
    display: block;
    text-decoration: none;
    color: #000;
    font-weight: bold;
    line-height: 1;
    padding: 15px 0;
    text-align: center;
    transition: none;
    width: 50%;
    font-size: 120%;
    float: left;
}
.contact-box li.last-child a, .contact-box li.last-child a:hover {
    background: #61BCA1 20% -10px no-repeat;
    background-size: 24px !important;
    background-position: 8% 50% !important;
}
.contact-box a {
    color: #FFF;
}

#pageTop {
    position: fixed;
    right: 0px;
    bottom: 0px;
    margin: 0 0 155px 0;
}
#pageTop a {
    background: #EEE;
    border: 1px solid #DDD;
    border-radius: 60px;
    -moz-border-radius: 60px;
    -webkit-border-radius: 60px;
    color: #111;
    font-size: 100%;
    padding: 6px 6px;
    text-decoration: none;
}

.sp_menu{
  list-style: none;
  width: 100%;
  padding: 0;
  margin: 10px auto -10px;
}
.sp_menu li{
  list-style: none;
  width: 100%;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #fff;
}
.sp_menu li:last-child{
  border-bottom: 0px;
}
.sp_menu li a{
  position: relative;
  display: block;
  margin: 0;
  font-size: 120%;
  padding: 10px 10%;
  background: #f5b0ac;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
}
.sp_menu li a:before{
  display: block;
  content: "";
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 35px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background: #fff;
}
.sp_menu li a:after{
  display: block;
  content: "";
  position: absolute;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 50%;
  right: 40px;
  width: 10px;
  height: 10px;
  margin-top: -5px;
  background: #f5b0ac;
}
}
