﻿@charset "UTF-8";
/* -----------------------------------------------
 *  	     some system base style setting
 * ----------------------------------------------- */

/* =========== font =========== */

/* =========== base =========== */
html {
  margin: 0;
  padding: 0;
  font-size: 62.5%;
}

body {
  position: relative;
  margin:0;
  padding:0;
  color: #2d2a25;
  word-wrap: break-word;
  font-size: 14px;
  font-size: 1.4rem;
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
 /*font-family:"Sawarabi Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;*/
  line-height: 1.6;
  background-color: #ebebeb;
  overflow-wrap: break-word;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
}
@media only screen and (max-width: 48em) {
  body {
    font-size: 12px;
    font-size: 1.2rem;
  }
}

article,
aside,
figure,
figcaption,
details,
footer,
header,
hgroup,
nav,
section,
summary,
div,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
dl,
dt,
dd {
  margin: 0;
}

ul,
input {
  padding: 0;
}

article,
aside,
figure,
figcaption,
details,
footer,
header,
hgroup,
nav,
section,
summary,
div,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
li,
dl,
dt,
dd,
th,
td,
input {
  box-sizing: border-box;
}

article,
aside,
figure,
figcaption,
details,
footer,
header,
hgroup,
nav,
section,
summary {
  display: block;
}

img {
  width: 100%;
  width: 100%\9;
  border: none;
  vertical-align: middle;
}
a{ text-decoration:none;}
/* =========== //base//end =========== */


/* =========== youtube setting =========== */
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.19%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}


/* =========== header_area =========== */
header.header_area{
	padding:0;
	background-color: #FFF;
	border-bottom: solid 1px #000;
	}
header.header_area:after {
  display: block;
  visibility: hidden; 
  clear: both;
  height: 0;
  content: "";
}
div.header_area_inner{
	margin:0;
	padding:0;
	height:50px;
	border-bottom:solid 1px #2d2a25;
}
div.header_area_inner:after {
  display: block;
  visibility: hidden; 
  clear: both;
  height: 0;
  content: "";
}
/* site title */
header.header_area h1.header_h1{
	display:block;
	float:left;
	width:110px;
	padding:10px 0 0 20px;
	font-size:24px;
	font-size:2.4rem;
	font-weight:normal;
	letter-spacing:1px;
	line-height:1;
	}
/* logout */
header.header_area div.header_logout{
	float:right;
	padding:0 20px;
	height:100%;
	border-left: solid 1px #2d2a25;
	cursor:pointer;
	transition:all 0.3s;
	}
header.header_area div.header_logout span{
	display:block;
	margin:0 -2px 0 0;/*右の空き解消*/
	height:100%;
	font-size:12px;
	font-size:1.2rem;
	letter-spacing:1px;
	line-height:4;
	}

/*hover*/
header.header_area div.header_logout:hover{
	background-color:#2d2a25;
	}
header.header_area div.header_logout:hover span{
	color:#FFF;
	}
/* ログインページでは消す*/
body#loginPage header.header_area div.header_logout{ display:none;}


/* グロナビスタイル */
nav.g_nav{
	position: static;
	}
nav.g_nav.if_scroll{
	position: fixed;
	z-index:1000;
	top:0;
	left:0;
	width:100%;
	background-color:#FFF;
	}
/* if_scroll スクロールした場合 */
nav.g_nav > ul{
	list-style:none;
	}
nav.g_nav > ul > li{
	float:left;
	width:25%;
	margin:0;
	padding:0;
	}
nav.g_nav > ul > li a{
	display:block;
	width:100%;
	height:100%;
	margin:0;
	padding:5px 0;
	text-decoration:none;
	font-size:12px;
	color:#000;
	text-align:center;
	transition:all 0.3s;
	}
nav.g_nav.if_scroll > ul > li a{
	padding:15px 0;
	}
nav.g_nav > ul > li a:hover{
	background-color:#ece9d9;
	}
/* 768px */
@media only screen and (max-width: 48em) {
nav.g_nav > ul > li{
	float:left;
	width:50%;
	margin:0;
	padding:0;
	}
nav.g_nav > ul > li a{
	font-size:10px;
	}
nav.g_nav.if_scroll > ul > li a{
	padding:5px 0;
	}
}





/* =========== content_area =========== */

/* 上下余白あり */
div.content_area{
	padding:0 0 20px 0;
	background-color: #fff;
	}
/* 1200px */
@media only screen and (max-width: 75em) {
div.content_area{
	width:100%;
	margin:0 auto;
	padding:0 0 50px 0;
	}
}


/* content_typeA */
.content_typeA{
	margin:0 auto;
	padding:30px 15px;
	width:96%;
	max-width:1200px;
	border: solid 1px #c4ba9f;
	}
/* 480px */
@media only screen and (max-width: 30em) {
.content_typeA{
	width:100%;
	}
}


/* footer */
footer.footer_area{
	padding:20px 0;
	border-top:solid 2px #e6e6e6;
	background-color:#ffffff;
	text-align:center;
	}

footer.footer_area p{	
	}
footer.footer_area p img{
	width:110px;	
	}
	
footer.footer_area small{
	font-size:11px;
	font-size:1.1rem
	}

/* BackToTop */
div#backToTop{
	position:fixed;
	right:10px;
	bottom:10px;
	width:50px;
	height:50px;
	background-color:#e2dfcf;
	cursor:pointer;
	}
div#backToTop::after{
	display:block;
	content:"";
	position:absolute;
	top:20px;
	left:0;
	right:0;
	margin:auto;
	width:20px;
	height:20px;
	border-top:solid #000 1px;
	border-left:solid #000 1px;
	transform:rotate(45deg);
	}



/* ============================■■共通CLASS■■============================ */
/* =========== clearfix =========== */
.clearfix:after {
  display: block;
  visibility: hidden; 
  clear: both;
  height: 0;
  content: "";
}

/* =========== flexSetting =========== */
/*flex-direction*/
.row-reverse{flex-direction: row-reverse !important;}
.column{flex-direction: column !important;}
.column-reverse{flex-direction: column-reverse !important;}

/* =========== fullwidth_type =========== */
/* 背景白_上下ボーダー */
.fullwidth_typeA{
	width:100%;
	background-color:#faf8f3 ;
	border-top:#d8d6d5 1px solid;
	border-bottom:#d8d6d5 1px solid;
	}
/* 背景ベージュ_上下ボーダー */
.fullwidth_typeB{
	width:100%;
	background-color:#faf8f3;
	border-top:#d8d6d5 1px solid;
	border-bottom:#d8d6d5 1px solid;
	}
/* 背景ベージュ_ボーダー無し */
.fullwidth_typeC{
	width:100%;
	background-color:#faf8f3;
	}

/* =========== inner_type =========== */
.inner_typeA{
	position:relative;
	margin:0 auto;
	padding:20px 0;	
	}
/* 960px */
@media only screen and (max-width: 60em) {
.inner_typeA{ width:98%;}
}

/* typeB backWhite */
.inner_typeB{
	position:relative;
	margin:0 auto;
	padding:20px 0;
	background-color:#FFF;	
	}
/* 960px */
@media only screen and (max-width: 60em) {
.inner_typeB{ width:98%;}
}


/* =========== br =========== */
br.appear768, br.appear480{
    display: none;
}
/* 768px */
@media only screen and (max-width: 48em) {
br.erase768{
	display:none;
	}
br.appear768{
	display:block !important;
	}
}
/* 480px */
@media only screen and (max-width: 30em) {
br.erase480{
	display:none;
	}
br.appear480{
	display:block !important;
	}
}

/* =========== txt_color =========== */
.txt_white{ color:white !important;}

/* =========== txt_weight =========== */
.txt_nomal{ font-weight: normal !important;}
.txt_bold{ font-weight: bold !important;}

/* =========== bg_color =========== */
.bg_white{ background-color:white !important;}
.bg_black{ background-color:black !important;}

/* =========== limit =========== */
.limited{width:94% !important;}

.limit{max-width:1050px; margin: 0 auto;}/*可変width 基本的にこれを使う*/

.limit1600{max-width:1600px !important;}
.limit1400{max-width:1400px !important;}
.limit1200{max-width:1200px !important;}
.limit1050{max-width:1050px !important;}
.limit1024{max-width:1024px !important;}
.limit960{max-width:960px !important;}
.limit768{max-width:768px !important;}
.limit480{max-width:480px !important;}

/* ========== marginBottom ========== */
.mb0{ margin-bottom:0 !important; }
.mb05{ 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; }

/* ========== marginBottomParcent ========== */
.mb0p{ margin-bottom:0 !important; }
.mb01p{ margin-bottom:1% !important; }
.mb02p{ margin-bottom:2% !important; }
.mb03p{ margin-bottom:3% !important; }
.mb05p{ margin-bottom:5% !important; }
.mb10p{ margin-bottom:10% !important; }
.mb15p{ margin-bottom:15% !important; }
.mb20p{ margin-bottom:20% !important; }
.mb30p{ margin-bottom:30% !important; }
.mb40p{ margin-bottom:40% !important; }
.mb50p{ margin-bottom:50% !important; }
.mb60p{ margin-bottom:60% !important; }
.mb70p{ margin-bottom:70% !important; }
.mb80p{ margin-bottom:80% !important; }
.mb90p{ margin-bottom:90% !important; }
.mb100p{ margin-bottom:100% !important; }

/* ========== padding ========== */
.pd0{ padding:0 !important; }
.pd05{ padding:5px !important; }
.pd10{ padding:10px !important; }
.pd15{ padding:15px !important; }
.pd20{ padding:20px !important; }
.pd30{ padding:30px !important; }
.pd40{ padding:40px !important; }
.pd50{ padding:50px !important; }
.pd60{ padding:60px !important; }
.pd70{ padding:70px !important; }
.pd80{ padding:80px !important; }
.pd90{ padding:90px !important; }
.pd100{ padding:100px !important; }


/* ========== marginBottomTypeSetting ========== */
.mb_typeA{ margin-bottom:10% !important; }
@media only screen and (max-width: 48em) {
.mb_typeA{ margin-bottom:10% !important; }
}
@media only screen and (max-width: 30em) {
.mb_typeA{ margin-bottom:5% !important; }
}

/* ========== txt-align ========== */
.txt_left{text-align:left !important;}
.txt_center{text-align:center !important;}
.txt_right{text-align:right !important;}
.txt_just{text-align:justify !important;}


/* ========== overflow ========== */
.hidden{overflow: hidden !important;}

/* ========== position ========== */
.relative{position: relative !important;}

/* =====================underLine===================== */
.underline_01{ border-bottom:solid 1px #d8d6d5;}

