@charset "utf-8";

/* ##################################### common.css ##################################### */
#wrapper:after,
#content:after,
header:after,
#primary section:after,
footer .author:after,
footer #footer-upper:after,
footer .title-address:after,
.phList:after,
.pagenation:after,
.bottom-banner:after {
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}


/* ============= font-awesome ============= */
.bread_crumb li:after,
.arrow01:before,
section .headline-sub h2:before,
.time:before,
.staff-Picks:before {
	font-family: 'FontAwesome';
	display: inline-block;
	width: 1em;
    text-align: center;
    vertical-align: middle;
}




/* ==========================  ========================== */
html{
	height: 100%;
	/*font-size:62.5%;
	-webkit-text-size-adjust:100%;*/
}
body{
	word-break: break-all;
	/*overflow-y: scroll;*/
	overflow-x: hidden;
  	height: 100%;
  	background-color: #fff;
  	color: #333;
  	font-size:14px;
  	font-family: Meiryo, Verdana, "Hiragino Kaku Gothic ProN", sans-serif;
	/*font-family:'メイリオ', 'Meiryo','ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Osaka', 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';*/
	/*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
  	line-height:1.4em;
  	-webkit-text-size-adjust: none;
}
img {
	clear:both;
	 float:none;
     max-width: 100%;
     height: auto;
	 margin:0 auto;
	 text-align:center;
	 vertical-align : middle;
}



.ph { }

.phL,
.phR,
.phC {
	float:none;
	margin:0 auto 15px auto;
	text-align:center;
}
.m_center { text-align:center; }

@media print, screen and (min-width:768px) {
.phL,
.figL {
	float:left;
	margin:0 15px 10px 0;
}
.phR,
.figR,
.phR {
	float:right;
	margin:0 0 10px 15px;
}
.phL p,
.phR p { margin:3px 0 0 0; text-align:center; }
.m_center { text-align:left; }
}


.uc { padding:100px 0 150px 0; text-align:center; }


.pc_only { display:none; }
.m_only { display:block; }
@media print, screen and (min-width: 768px) {
.pc_only { display:block; }
.m_only { display:none; }
}

/*@media print, screen and (min-width: 993px) {
.mt_only { display:none; }
}*/


#wrapper,
#base-container,
#base { position: relative; }




/* ========================== rss feed ========================== */
.hatena-bookmark-button,
.wsbl_yahoo,
.wsbl_yahoo_users,
.wsbl_buzzurl,
.wsbl_buzzurl_users {
	display:none;
}

.socialItems {
	float:right;
	padding:0;
}

@media only screen and (min-width: 768px) {
.hatena-bookmark-button,
.wsbl_yahoo,
.wsbl_yahoo_users,
.wsbl_buzzurl
/*#main-container*/{
	display:block;
}


.socialItems {
	padding:5px 0 0 0;
}
}

.rssfeed {
	float:right;
	margin:0 10px 0 0;
}

/* ++++++ socialBookmarkUpper ++++++ */
.socialBookmarkUpper {
	float:right;
	/*margin:0 0 10px 0;*/
}

.socialBookmarkUpper .wp_social_bookmarking_light,
.socialBookmarkUpper .btn {
	/*float:left;*/
	display:inline-block;
	/*margin:0 15px 0 10px;*/
	margin:0 0 0 10px;
}

.socialBookmarkUpper .g-plusone,
.socialBookmarkUpper .hatena-bookmark-button,
.socialBookmarkUpper .twitter-share-button,
.socialBookmarkUpper .fb-like
 {
	/*float:left;*/
	display:inline-block;
	margin:0 5px;
}

.socialButton {
	float:right;
	/*margin:0 0 10px 0;*/
}

.socialButton div {
	float:right;
	margin:0 5px 0 0;
}


/* ========================== header ========================== */
#header-container {
	border-top:3px solid #6a2c07;
	background:#f2eee6;
}

#header-container header {
	margin:0 auto 10px auto;
	padding:25px 8px 15px 8px;
	text-align:center;
}

header h1{ margin:0 auto; }

@media print, screen and (min-width:650px) {
header { text-align:left; }
header h1{ float:left; }
}


/* ========================== main-visual ========================== */
.main-visual {
	/*height:300px;*/
	box-shadow: 0 5px 3px -3px rgba(0,0,0,0.3);
  	-webkit-box-shadow: 0 5px 3px -3px rgba(0,0,0,0.3);
  	-moz-box-shadow: 0 5px 3px -3px rgba(0,0,0,0.3);
}

.main-visual { margin-bottom:10px; }



/* ++++++ bred crumb ++++++ */

.bread_crumb { display:none; }

@media print, screen and (min-width: 768px) {
.bread_crumb {display:block; }

.bread_crumb li {
	display:inline;
	line-height:1em;
}
.bread_crumb li:after {
	margin-left:3px;
	content:"\f054";
	/*color:#003d80;*/
	font-size:12px;
}
.bread_crumb li:last-child:after {
	margin-left:0;
	content:none;
}
.bread_crumb a {
	color: #6a2c07;
	text-decoration:none;
}
}



/* ========================== content ========================== */
/* ++++++ content ++++++ */
#base {
	margin:0 auto;
	background:#fff;	
}

#content {
	clear:both;
	margin:20px 0 0 0;
}
@media print, screen and (min-width: 768px) {
#content { margin:40px 0 0 0; }
}

/* ++++++ primary ++++++ */


/* ========================== page-title ========================== */
main .page-title {
	margin-bottom:50px;
	border-top:3px solid #6a2c07;
}
main .page-title h1 {
	display: inline-block;
	margin-bottom:25px;
	padding:3px 20px;
	background:#6a2c07;
	color:#fff;
	font-size:18px;
	font-weight:bold;
}


/* ++++++ headline ++++++ */
section .headline {
	margin-bottom:15px;
	border-bottom:1px solid #d3c1ad;
}

section .headline h1 {
	display:inline-block;
	margin-bottom:0;
	/*padding:0 0 18px 0;*/
	padding:0 0 10px 0;
	color:#6a2c07;
	font-size:20px;
	font-weight:bold;
	border-bottom:4px solid #6a2c07;
	line-height:1.4em;
}
section h2.mgb0 { margin-bottom:0 !important; }
section h2.mgb5 { margin-bottom:5px !important; }
section h2.mgb10 { margin-bottom:10px !important; }


/* ++++++ headline-sub ++++++ */

section .headline-sub { margin-bottom:40px; }
section .headline-sub.mgb20 { margin-bottom:20px; }
section .headline-sub.mgb0 { margin-bottom:0; }

section .headline-sub h2 {
	margin-bottom:15px;
	padding:15px 10px 10px 10px;
	border-radius: 10px 10px 0 0;
	-webkit-border-radius:10px 10px 0 0;
    -moz-border-radius:10px 10px 0 0;
	font-size:18px;
	font-weight:bold;
	line-height: 1.2em;
}
section .headline-sub h2:before {
	margin-right:5px;
	content:"\f0f5";
	font-weight: normal;
}

section .headline-sub h2 span {
	font-size:14px;
	/*font-weight:normal;*/
}

section .headline-sub p { margin-bottom:10px; }
section .headline-sub p:last-child { margin-bottom:0; }
section .headline-sub .sub-title { font-size:16px; }

section .headline-sub.col-brown h2 {
	background:#f4eee8;
	border-bottom:1px solid #d3c1ad;
	color:#6a2c07;
}

section .headline-sub.col-orange h2 {
	background:#faefe4;
	border-bottom:1px solid #f8b97a;
	color:#ee7800;
}

section .headline-sub.col-red h2 {
	background:#f8dbdd;
	border-bottom:1px solid #fa7680;
	color:#e60012;
}



#primary h4 { margin-bottom:15px; }

#primary .j16,
#primary .j16bold,
#primary .j18,
#primary .j18bold,
#primary .j120,
#primary .j120bold {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}



main {}

/* ========================== section ========================== */
section { margin-bottom:30px; }
@media only screen and (min-width: 768px) {
section { margin-bottom:80px; }
section.top { margin-bottom:40px; }
section.nogap,
section.no-margin { margin-bottom:0; }
}


/* ========================== 幅制限の要素 ========================== */

@media only screen and (min-width: 768px) {
.content50,
.content60,
.content70 { margin:0 auto;}
.content50 { width:50%; }
.content60 { width:60%; }
.content70 { width:70%; }
}



/* ========================== 見出し（リボン） ========================== */
h2.ribbon {
	position: relative;
	margin-bottom:20px;
	padding:10px 15px;
	/*background-color: #f0f0f0;*/
	font-size:20px;
	font-weight:bold;
	line-height:1.2em;
}
h2.ribbon span {
	font-size:14px;
	font-weight:normal;
}

h2.ribbon::before,
h2.ribbon::after {
	content: '';
	position: absolute;
	top: 100%;
	border-style: solid;
	border-color: transparent;
}
h2.ribbon::before {
	left: 0;
	border-width: 0 15px 15px 0;


	/*border-right-color: #ccc;*/
}


h2.ribbon::after {
	right: 0;
	border-style: solid;
	border-width: 15px 15px 0 0;
	/*border-top-color: #ccc;*/
}


/* ------------- 紫 ------------- */
h2.ribbon.purple {
	background-color: #a40c5e;
	color:#fff;
}
h2.ribbon.purple::before { border-right-color: #770442 }
h2.ribbon.purple::after { border-top-color: #770442; }



/* ========================== 段落 ========================== */

section { font-size:14px; }
section a { text-decoration: underline; }

section p {
	margin:0 0 20px 0;
	line-height:1.6em;
}

@media print, screen and (min-width: 768px) {
section { font-size:13px; }
}



/* ========================== アイテムリスト ========================== */
ul.item-list .ph { text-align:center; }
ul.item-list li { margin-bottom:10px; }

@media print, screen and (min-width:600px) {
ul.item-list {
	margin-bottom:10px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items:flex-start;
    align-items:flex-start;
}

ul.item-list.space-around {
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-align-items:center;
    align-items:center;
}

ul.item-list.space-between {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items:center;
    align-items:center;
}

ul.item-list.space-evenly {
    -webkit-justify-content: space-evenly;
    justify-content: space-evenly;
    -webkit-align-items:center;
    align-items:center;
}
    
ul.item-list li { margin-bottom:0; }
	
ul.item-list.two li {
	width:48%;
	margin-right:2%;
}

ul.item-list.three li {
	width:32%;
	margin-right:2%;
}

ul.item-list.four li {
	width:23%;
	margin-right:2%;
}
ul.item-list.five li {
	width:18%;
	margin-right:2%;
}
ul.item-list.six li {
	width:15%;
	margin-right:2%;
}
ul.item-list li:last-child { margin-right:0; }

ul.item-list li.l3 { width:3%; }
ul.item-list li.l5 { width:5%; }
ul.item-list li.l10 { width:10%; }
ul.item-list li.l15 { width:15%; }
ul.item-list li.l20 { width:20%; }
ul.item-list li.l25 { width:25%; }
ul.item-list li.l30 { width:30%; }
ul.item-list li.l35 { width:35%; }
ul.item-list li.l40 { width:40%; }
ul.item-list li.l45 { width:45%; }
ul.item-list li.l50 { width:50%; }
ul.item-list li.l55 { width:55%; }
ul.item-list li.l60 { width:60%; }
}





/* ==============　補足・強調 ============== */
.addition01,
.addition02 {
	margin-bottom: 0;
	padding:5px 7px 3px 7px;
	border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius:6px;
	font-weight: bold;
}
.addition01.in-block,
.addition02.in-block { display: inline-block; }

.addition01.col-brown {
	background: #956134;
	color: #fff;
}
.addition01.col-red {
	background: #cb3328;
	color: #fff;
}
.addition01.col-orange {
	background: #f4600f;
	color: #fff;
}
.addition01.col-green {
	background: #22ac38;
	color: #fff;
}
.addition01.col-yellow {
	background: #fefa8f;
	/*color:#cb3328;*/
}
.addition01.col-black {
	background: #333;
	color: #fff;
}
.addition01.col-blue {
	background: #00a0e9;
	color: #fff;
}

.addition02.col-red {
	border: 1px solid #f59f99;
	background: #fcf4f3;
	color:#cb3328;	
}


/* ============== 時間アイコン ============== */
.time:before {
	margin-right:4px;
	content:"\f017";
}

/* ============== スタッフお勧めアイコン ============== */
.staff-Picks:before {
	margin-right:4px;
	content:"\f164";
	font-weight: normal;
}


/* ========================== pagenation ========================== */
.pagenation {}

.pagenation .prev a,
.pagenation .next a {
	display:block;
	text-align:center;
	text-decoration: none;
}
.pagenation .prev a { margin-bottom:10px; }

@media print, screen and (min-width: 600px) {
.pagenation .prev a { float:left; }
.pagenation .next a { float:right; }
}





section .lead {
	margin-bottom:30px;
	font-size:14px;
}
/*section .lead span { font-size:12px; }*/
section .lead.short { margin-bottom:0; }


section .top-lead {
	margin-bottom:30px;
	padding: 15px 5px;
	border-top: 5px solid #ede7dc;
	border-bottom: 5px solid #ede7dc;
}
section .top-lead p:last-child { margin-bottom:0; }

@media print, screen and (min-width:600px) {
section .top-lead {
	width: 90%;
	margin: 0 auto 50px auto;
}
}



/* ---- 他サイト banner ---- */
.bottom-banner { text-align:center; }
.bottom-banner ul {
	display:block;
	margin:0;
}
.bottom-banner ul li {
	margin-bottom:30px;
	list-style:none;	
}



@media print, screen and (min-width:992px) {
.bottom-banner ul {	
	display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items:flex-start;
    align-items:flex-start;
}	
.bottom-banner.w300 li { margin-right: 50px; }
.bottom-banner.w300 li:nth-child(3n) { margin-right:0; }
}

.bottom-banner ul.center li {
	margin-right:0;
	text-align: center;
}


/* ページトップ自動発生 */
#page-top {
	float:right;
    position: fixed;
	z-index:1000;
    bottom: 0;
    right: 20px;
    /*font-size: 14px;*/
}
#page-top a {
    text-decoration: none;
    /*color: #fff;*/
    width:auto;
    display: block;
}
#page-top a:hover {
	filter:alpha(opacity=70);
	opacity:0.7;
	-moz-opacity:0.7;
}

#page-top .fa-stack {
  position: relative;
  display: inline-block;
  width:2.5em;
  height:2.5em;
  line-height:2.5em;
  vertical-align: middle;
}
#page-top .fa-stack-1x,
#page-top .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
#page-top .fa-stack-1x {
  line-height: inherit;
  font-size:1.5em;
}
#page-top .fa-stack-2x {
	color:#6a2c07;
  font-size:2.5em;
}
#page-top .fa-inverse {
  color: #fff;
}

@media only screen and (min-width:768px) {
#page-top .fa-stack {
  width:3em;
  height:3em;
  line-height:3em;
}
#page-top .fa-stack-1x { font-size:2em; }
#page-top .fa-stack-2x { font-size:3em; }
}





/* ++++++ sub menu ++++++ */
.subMenu ul {
	width:auto;
	margin:0 auto 50px auto;
}
.box03 .subMenu ul { margin-left:0; }
.subMenu li {
	display:inline;
	margin:0 7px 0 0;
	padding:0 7px 0 12px;
	background:url(../img/common/arw01.gif) no-repeat 0 4px;
	border-right:1px solid #555;
}
.subMenu li.end,
.subMenu li:last-child {
	margin:0;
	border:none;
}
.subMenu li a:link,
.subMenu li a:visited { text-decoration:none; }
.subMenu ul li a:hover { text-decoration:underline; }


/* ++++++ arrow menu ++++++ */
.arrowMenu { clear:both; }
.arrowMenu ul { margin:0 auto 15px auto; }
.arrowMenu ul li {
	display:inline;
	margin-right:12px;
	padding-left:12px;
	background:url(../img/common/arw01.gif) no-repeat 0 2px;
	line-height:1.2em;
}
.arrowMenu ul li.end { margin-right:0; }

/* ************************************ common parts ************************************ */

@media print, screen and (min-width: 768px) {
.t-center {
	margin-bottom: 20px;
	text-align: center;
}
}

.note {
	margin-right:10px !important;
	text-align:right;
}



/* ========================== new-icon ========================== */
.new-icon,
h2 .new-icon,
.name .new-icon {
  display: inline-block;
  background: #df002c;
  padding:3px 5px 2px 5px;
  margin:0 7px 0 0;       /* 先行する文字列との間隔 */
  vertical-align: middle; /* 先行する文字列と上下中央揃え */
  font-size: 0.9em;
  font-weight: bold;
  color: #fff;
	line-height: 1em;
  border-radius: 3px;     /* アイコンの角を丸める */
	-webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}



/* =============== ポイントノート =============== */
.point-note {
	position: relative;
	margin:0 0 1.6em;
}
.point-note .inner {
	margin:0;
	padding:1em .5em 1em 1.5em;
	/*background:#fffbf4;*/
	border:solid 2px #6a2c07;
	background: #f4eee8;
	border-radius:0 7px 7px 7px;  
   	-webkit-border-radius:0 7px 7px 7px;
   	-moz-border-radius:0 7px 7px 7px;
	list-style-type:none;
}
.point-note ul li {
	position:relative;
	padding-left:25px;
}
.point-note ul li:before{
	left:-0.1em;
	position:absolute;
	font-family:FontAwesome;
	content:'\f0da';
	color:#cc026a;
}

.point-note h4 {
	display:inline-block;
	margin:0 !important;
	padding:10px 10px 5px 10px;
	background:#6a2c07;
	border-radius:7px 7px 0 0;
	border:0;
	color:white;
	font-size:20px;
    font-weight:normal;
    line-height:1.2em;
}

.point-note h4 i { margin-right: 5px; }
 
.point-note ul:last-child,
.point-note li:last-child,
.point-note p:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
}

.point-note a { text-decoration:none; }



/* ========================== image ========================== */
.mail { margin:0 3px; /*vertical-align:middle;*/ }

div.pad,
img.pad { padding:10px; background:#fff; border:1px solid #d4d4d4; }
img.pad.thick { border:5px solid #eee; }
img.pdf { margin-left:3px; vertical-align:middle; }

img.radius {
	border-radius: 10px;  
    -webkit-border-radius: 10px; 
    -moz-border-radius: 10px;	
}

img.border { border:1px solid #ddd; }
.no-border { border:none; }

/* ========================== radius ========================== */

.radius.r10 {
	padding:10px 10px;
	border-radius: 10px;  
    -webkit-border-radius: 10px; 
    -moz-border-radius: 10px;	
}

.radius.white {
	border:1px solid #ccc;
	background:#fff;
}
.radius.white.dash { border:dashed 2px #ccc; }

.radius.gray {
	background:#f8f8f8;
	border:1px solid #e5e5e5;	
}

.radius.orange-border {
	background:#fdf8f1;
	border:1px solid #fdc9bd;
}

.radius.skin {
	background:#fdf8f1;
	border:1px solid #ccc;
}

.radius.green {
	background:#edf9ea;
	border:1px solid #bff8b4;
}

.radius.skyblue {
	background:#f2faff;
	border:1px solid #b1daf1;
}

.radius ul { margin:0 0 15px 15px; }
.radius ul li { list-style:disc; }

.radius ol { margin:0 0 15px 30px; }
.radius li { margin-bottom:15px; }
.radius ul:last-child,
.radius ol:last-child,
.radius li:last-child { margin-bottom:0 !important; }


.radius dl { margin-left:10px; }
@media print, screen and (min-width: 768px) {
.radius dl { margin-left:20px; }
.radius ul { margin:0 0 15px 20px; }
}

.radius ol.mgb0,
.radius ul.mgb0 { margin-bottom:0; }

.radius ul:last-child,
.radius oi:last-child,
.radius li:last-child,
.radius dl:last-child,
.radius dd:last-child,
.radius p:last-child { margin-bottom:0; }

@media print, screen and (max-width: 480px) {
.radius .fl-l { float:none; }
}


.radius.pdl100 ol,
.radius.pdl100 ul,
.radius.pdl170 ol,
.radius.pdl170 ul,
.radius.pdl200 ol,
.radius.pdl200 ul { padding-left:0; }

@media print, screen and (min-width: 768px) {
.radius.pdl100 ol,
.radius.pdl100 ul { padding-left:100px; }
.radius.pdl170 ol,
.radius.pdl170 ul { padding-left:170px; }
.radius.pdl200 ol,
.radius.pdl200 ul { padding-left:200px; }
}




/* ------------- square box ------------- */
.square01 { margin-bottom:30px; padding:10px; background:#eee; border-top:1px solid #bbb; border-bottom:1px solid #bbb; }
.square01 strong { color:#be0b0b; font-weight:normal; }
.square01 ul { margin:0; }
.square01 li { margin-bottom:15px; padding:0 0 0 22px; background: url(../img/arw05.gif) no-repeat 0 1px; }

.square01 p:last-child,
.square_aaa p:last-child,
.square_bbb p:last-child,
.square_pink p:last-child,
.square_purple p:last-child,
.square_kusa p:last-child,
.square01 li.end { margin:0; }

.square01.bold { font-weight:bold; }

.square_aaa { padding:7px 10px; background:#f2f2f2; border:1px solid #aaa; }
.square_bbb { padding:7px 10px; background:#f2f2f2; border:1px solid #bbb; }
.square_pink { padding:7px 10px; border:1px solid #FD8FAA; }
.square_purple { padding:7px 10px; background:#F3EEF7; border:1px solid #CDB5D7; }
.square_kusa { padding:7px 10px; background:#f4fee6; border:1px solid #ccc; }

.squarradius {
	border-radius: 8px;
	-webkit-border-radius: 8px;
    -moz-border-radius: 8px;
}



/* ========================== arrow ========================== */
p.arrow01 { margin-bottom:5px; }

.arrow01:before {
	content:"\f138";
	margin-right:3px;
}

.down01 { text-align:center; }


/* ========================== img ========================== */
.shadow {
	box-shadow: 0 5px 3px -3px rgba(0,0,0,0.3);
  	-webkit-box-shadow: 0 5px 3px -3px rgba(0,0,0,0.3);
  	-moz-box-shadow: 0 5px 3px -3px rgba(0,0,0,0.3);
}

.radius8 {
	border-radius: 8px;
	-webkit-border-radius: 8px;
    -moz-border-radius: 8px;
}

.radius10 {
	border-radius: 10px;
	-webkit-border-radius: 10px;
    -moz-border-radius: 10px;
}




/* ========================== List ========================== */
ul.disc { margin:0 0 20px 30px; }
ul.disc li {
    margin-bottom:8px;;
    list-style:disc;
}

ol.decimal { margin:0 0 20px 30px; }
ol.decimal li {
    margin-bottom:8px;;
    list-style:decimal;
}




/* ========================== phList ========================== */
.phList li {
	text-align:center;
	margin-bottom:15px;
}
.phList li img { border:1px solid #ddd; }

@media print, screen and (min-width: 768px) {
.phList ul {
	margin-bottom:20px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items:flex-start;
    align-items:flex-start;
}
.phList li { margin-bottom:0; }
.phList li:first-child { margin-right:15px; }
}


/* ========================== reset ========================== */
.partition { display:block; clear:both; font-size:1px; height:1px; line-height:1px; }


/* ========================== line, dot ========================== */
.line01, .line02, .dot01, .dot02 { display:block; clear:both; font-size:1px; height:1px; line-height:1px; }
.line01 { border-top:1px solid #aaa; }
.line02 { border-top:1px solid #bbb; }
.dot01 { border-top:1px dotted #aaa; }
.dot02 { border-top:1px dotted #bbb; }

/* ========================== table ========================== */

@media (max-width: 767px) {
table th,
table td,
table table th,
table table td,
table table.auto th,
table table.auto td {
	display:block;
	width:auto;
}
}


table.unbreakable th,
table.unbreakable td,
table.unbreakable table th,
table.unbreakable table td,
table.unbreakable table.auto th,
table.unbreakable table.auto td {
	display:table-cell;
}


/* table common */
table {
	width:100%;
	border-collapse: separate;
	border-spacing: 0;
	margin-bottom:15px;
	border-top:1px solid #ddd;
}
table.auto { width:auto; }
table table { margin-bottom:0; }
th, td {
	vertical-align:top;
	padding:15px 10px 12px 10px;
	border-bottom:1px solid #ddd;
	/*line-height:1.4em;*/
}
th {
	background:#f4f4f4;
	font-weight:bold;
	text-align:left;
}


@media print {
table.grayBG {
	width:100%;
	border-collapse: separate;
	border-spacing: 0;
	border-top:1px solid #ccc;
	border-left:1px solid #ccc;
}
table.grayBG th,
table.grayBG td {
	border-bottom:1px solid #ccc;
	border-right:1px solid #ccc;
}
table.grayBG td table th,
table.grayBG td table td {
	border:none;
}
table th,
table td,
table table th,
table table td,
table table.auto th,
table table.auto td { display: table-cell; }
}



/* tableの中のリスト */
table ul { margin:0 0 30px 25px; }

table ul li {
	margin-bottom:5px;
	list-style:disc;
}

table p:last-child,
table ol:last-child,
table ul:last-child,
table ol li:last-child,
table ul li:last-child { margin-bottom:0; }
table ul ul { margin:10px 0 0 20px; }


/* td padding */
table.tight th, table.tight td { padding:3px 5px 1px 5px; }
table.nest th, table.nest td { padding:5px 3px 2px 3px !important; }
table.normalSpace th, table.normalSpace td { padding:10px 10px 7px 10px; }
table.wideSpace th, table.wideSpace td { padding:15px 10px 12px 10px; }
table.narrowSpace th, table.narrowSpace td { padding:10px 5px 7px 5px; }
table.noPad td, table.wideSpace table.noPad td { padding:0; }

tr.top th, tr.top td, td.top { vertical-align:top !important; }
tr.middle th, tr.middle td, td.middle { vertical-align:middle !important; }
tr.bottom th, tr.bottom td, td.bottom { vertical-align:bottom !important; }
tr.left th, tr.left td, th.left, td.left { text-align:left; }
tr.center th, tr.center td, th.center, td.center ,
tr.left th.center, tr.left td.center { text-align:center; }
th.right, td.right { text-align:right; }

tr.bold th, tr.bold td, th.bold, td.bold { font-weight:bold; }


/* table color variation */
table.redBG { background:#a80d15; }
table.grayBG { background:#ddd; }
table.lightGoldBG { background:#cdc19f; }
table.transparent, table.transparent td { background:transparent; }

/* td color variation */
tr.gray th, tr.gray td, th.gray, td.gray, th.gray, td.gray { background:#f4f4f4; }
tr.skin th, tr.skin td, th.skin, td.skin, th.skin, td.skin { background:#F3EEDA; }
tr.yellow th, tr.yellow td, th.yellow, td.yellow, th.yellow, td.yellow { background:#F5FBB5; }
tr.gold th, tr.gold td, th.gold, td.gold, th.gold, td.gold { background:#ECE3CE; }
tr.kusa th, tr.kusa td, th.kusa, td.kusa, th.kusa, td.kusa { background:#f4fee6; }
tr.skyblue th, tr.skyblue td, th.skyblue, td.skyblue, th.skyblue, td.skyblue { background:#e5f3fb; }


/* td line, td dot */
tr.line th, tr.line td, th.line, td.line { border:none; border-bottom:1px solid #aaa; }
tr.lineTop th, tr.lineTop td, th.lineTop, td.lineTop { border:none; border-top:1px solid #aaa; border-bottom:1px solid #aaa; }
tr.dot th, tr.dot td, th.dot, td.dot { border:none; border-bottom:1px dotted #aaa; }
tr.dotTop th, tr.dotTop td, th.dotTop, td.dotTop { border:none; border-top:1px dotted #aaa; border-bottom:1px dotted #aaa; }


/* ========================== form ========================== */
@media only screen and (max-width: 767px) {
input {
	min-height:30px;
	margin-bottom:5px;
}
}
@media (max-width:991px) {
input[type=text],
input[type=url],
input[type=email],
textarea {
	font-size:120%;
	line-height:120%;
	vertical-align:middle;
}
}

input, textarea { font-size:12px; }
input { vertical-align:middle; }
td.inputGap input,
td.inputGap select,
td.inputGap textarea { margin-bottom:5px; }

td.inputList ul { margin:0 0 0 10px; }
td.inputList li {
	margin-bottom:15px;
	list-style:none;
}
td.inputList input { margin:0 5px; }


td ul { margin-left:20px; }
td ul:last-child,
td li:last-child { margin-bottom:0; }



/*width*/
.w50 { width:50%; }
.w70 { width:70%; }
.w90 { width:90%; }
.w97 { width:97%; }
.w100 { width:100%; }


/*form*/
input.w20px { width:20px; }
input.w30px { width:30px; }
input.w40px { width:40px; }
input.w50px { width:50px; }
input.w70px { width:70px; }
input.w100px { width:100px; }
input.w120px { width:120px; }
input.w150px { width:150px; }
input.w200px { width:200px; }
input.w250px { width:250px; }
input.w300px { width:250px; }
input.w350px { width:250px; }
input.w400px { width:250px; }

textarea.w100px { width:100px; }
textarea.w150px { width:150px; }
textarea.w200px { width:200px; }
textarea.w250px { width:250px; }
textarea.w300px { width:250px; }
textarea.w350px { width:250px; }
textarea.w400px { width:250px; }
textarea.w450px { width:250px; }
textarea.w500px { width:250px; }

@media only screen and (min-width:468px) {
input.w300px { width:300px; }
input.w350px { width:350px; }
input.w400px { width:400px; }

textarea.w300px { width:300px; }
textarea.w350px { width:350px; }
textarea.w400px { width:400px; }
textarea.w450px { width:450px; }
textarea.w500px { width:500px; }
}


.attention { color:#af0732; }
.attentionLarge { padding:10px 0; background:#FFFF00; color:#B63F4C; font-size:20px; font-weight:bold; text-align:center; }
form .example { color:#666; }
tr.noListStyle li { list-style:none; }


/* ========================== button ========================== */
@media only screen and (max-width: 767px) {
.btn.fl-r {
	float:none;
	margin-bottom:10px;
	text-align:center;
}
.btn.fl-r.mgr10 { margin-right:0; }
}

/* paragraph */
p.mgb50 ,ul.mgb50 ,ol.mgb50 ,dl.mgb50, table.mgb50, .reset.mgb50 { margin-bottom:50px !important; }
p.mgb40 ,ul.mgb40 ,ol.mgb40 ,dl.mgb40, table.mgb40, .reset.mgb40 { margin-bottom:40px !important; }
p.mgb30 ,ul.mgb30 ,ol.mgb30 ,dl.mgb30, table.mgb30, .reset.mgb30 { margin-bottom:30px !important; }
p.mgb25 ,ul.mgb25 ,ol.mgb25 ,dl.mgb25, table.mgb25, .reset.mgb25 { margin-bottom:25px !important; }
p.mgb20 ,ul.mgb20 ,ol.mgb20 ,dl.mgb20, table.mgb20, .reset.mgb20 { margin-bottom:20px !important; }
p.mgb15 ,ul.mgb15 ,ol.mgb15 ,dl.mgb15, table.mgb15, .reset.mgb15 { margin-bottom:15px !important; }
p.mgb10 ,ul.mgb10 ,ol.mgb10 ,dl.mgb10, table.mgb10, .reset.mgb10 { margin-bottom:10px !important; }
p.mgb5 ,ul.mgb5 ,ol.mgb5 ,dl.mgb5, table.mgb5, .reset.mgb5 { margin-bottom:5px !important; }
p.mgb3 ,ul.mgb3 ,ol.mgb3 ,dl.mgb3, table.mgb3, .reset.mgb3 { margin-bottom:3px !important; }
p.mgb0 ,ul.mgb0 ,ol.mgb0 ,dl.mgb0, table.mgb0, .reset.mgb0 { margin-bottom:0 !important; }
p.end { margin:0 0 50px 0; padding:0; }

.line_height16,
table.line_height16 th,
table.line_height16 td { line-height:1.6em !important; }

.line_height18,
table.line_height18 th,
table.line_height18 td { line-height:1.8em !important; }


/* fonts */
.j10, .j10bold { font-size:12px; }
.j12, .j12bold { font-size:12px; }
.j14, .j14bold { font-size:14px; }
.j16, .j16bold { font-size:16px; line-height:1.4em;  }
.j18, .j18bold { font-size:16px; line-height:1.4em; }
.j20, .j20bold { font-size:18px; line-height:1.4em; }
.j22, .j22bold { font-size:20px; line-height:1.4em; }
.j24, .j24bold { font-size:22px; line-height:1.4em; }
.j30, .j30bold { font-size:30px; line-height:1.4em; }
.j10bold, .j12bold, .j14bold, .j16bold, .j18bold, .j20bold, .j22bold, .j24bold,
.noColorBold, .greenBold, .redBold, .blueBold,.skyBold,
.j90bold ,.j110bold ,.j120bold { font-weight:bold; }

.j90, .j90bold { font-size:90%; }
.j110, .j110bold { font-size:100%; }
.j120, .j120bold { font-size:110%; }
.j140, .j120bold { font-size:120%; }

@media only screen and (min-width: 768px) {
.j10, .j10bold { font-size:10px; }
.j12, .j12bold { font-size:12px; }
.j14, .j14bold { font-size:14px; }
.j16, .j16bold { font-size:16px; line-height:1.4em; }
.j18, .j18bold { font-size:18px; line-height:1.4em; }
.j20, .j20bold { font-size:20px; line-height:1.4em; }
.j22, .j22bold { font-size:22px; line-height:1.4em; }
.j24, .j24bold { font-size:24px; line-height:1.4em; }
.j30, .j30bold { font-size:30px; line-height:1.4em; }
.j90, .j90bold { font-size:90%; }
.j110, .j110bold { font-size:110%; }
.j120, .j120bold { font-size:120%; }
.j140, .j120bold { font-size:140%; }
}

.underLine { text-decoration:underline; }

.noColor, .noColorBold { color:#333; }
.noColor a:link, .noColor a:visited, .noColorBold a:link, .noColorBold a:visited { color:#042783; text-decoration:underline; }

.brown,
.brownBold,
.brown a,
.brownBold a { color:#763c03; }

.lightbrown,
.lightbrownBold,
.lightbrown a,
.lightbrownBold a { color:#b28247; }

.red,
.redBold,
.red a,
.redBold a { color:#cb3328; }

.crimson,
.crimsonBold,
.crimson a,
.crimsonBold a { color:#ac0d4d; }

.orange,
.orangeBold,
.orange a,
.orangeBold a { color:#f4600f; }

.green,
.greenBold,
.green a,
.greenBold a { color:#159101; }

.blue,
.blueBold,
.blue a,
.blueBold a { color:#1a579b/*#003d80*/; }

.sky,
.skyBold,
.sky a,
.skyBold a { color:#009adc; }


/* ========================== 強調 ========================== */
.yb,
.emphasis { background:#FF0; }

.emphasis01 {
	font-size:24px;
	line-height:1.3em;
}
.emphasis01 br { display:none; }

@media only screen and (min-width: 768px) {
.emphasis01 { text-align:center; }
.emphasis01 br { display:block; }
}





/* ========================== footer ========================== */
footer,
footer #footer-upper,
footer #footer-lower { width:100%; }


footer #footer-upper {
	margin-bottom:10px;
	padding:20px 0 0 0;
	background:#6a2c07;
}
footer nav {
	margin:0 auto;
	padding:0 0.8rem;
	line-height:1.4em;	
}

footer #footer-lower { background:#fff; }

@media print, screen and (min-width: 992px) {
footer #footer-upper {	
	padding:30px 0;
	background:#6a2c07;
}
footer #footer-upper nav {
	margin:0 auto;
	padding:30px 0 0 0;
	line-height:1.4em;
}
footer #footer-lower .inner {
	margin:0 auto 30px auto;
	padding:30px 0 70px 0;
	line-height:1.4em;
}

}



/* ---- ロゴ、address ---- */
.title-address { text-align:center; }
.title-address ul {
	display:block;
	margin:0;
}
.title-address ul li {
	margin-bottom:20px;
	list-style:none;	
}

@media print, screen and (min-width:992px) {
.title-address { padding:0 10px; }

.title-address ul {
	 display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}
.title-address ul li p {
	margin-left:15px;
	text-align:left;
}
}


footer .copyright {
	clear:both;
	margin-bottom:50px;
	font-size:10px;
	text-align:center;	
}

@media print, screen and (min-width: 768px) {
footer .copyright {
	clear:both;
	margin-bottom:50px;
	font-size:12px;
	text-align:center;
}
}

/**/
