@charset "utf-8";

/* ---------------------------------------------
　layout modules
------------------------------------------------ */

/* base modules
------------------------------------------------ */
.content p,
.content ul,
.content dl,
.content ol,
.content table,
.content blockquote{
	margin: 20px 0 0;
	line-height:1.8em;
}

.content ul p, .content ul dl, .content ul ol, 
.content dl p, .content dl ul, .content dl ol, 
.content ol p, .content ol ul, .content ol dl, 
.content table p, .content table ul, .content table dl, .content table ol{
	margin: 0;
}

.content p img, .content dl img, .content ul img {
	vertical-align: middle;
}

.column-image-left,.column-image-center,.column-image-right { margin-top:20px !important; }

/* common modules
------------------------------------------------ */

em        { color:#FD6408;  }

.small    { font-size:87%;  }
.x-small  { font-size:78%;  }

.large    { font-size:107%; }
.x-large  { font-size:120%; }

.attention{ color: #FF3366;   }
.bold     { font-weight:bold; }

.center{ text-align: center; }
.right { text-align:right;   }
.left  { text-align:left;    }
.middle{ vertical-align: middle;}

.float-l{ float: left;  }
.float-r{ float: right; }
.clear  { clear: both;  }

.img-l{ float:left;  margin:0 25px 10px 0; }
.img-r{ float:right; margin:0 0 10px 25px; }

.inline-block {display: inline-block;}

.imgborder{
	border-radius:15px;
}

.nowrap         { white-space:nowrap; }
.nomargintop    { margin-top: 0 !important; }
.content .nocss { maring:0; padding:0; border:none; background:none; }

.spview{ display:none; }

/* --- anchor --- */

a.anchor,
a.anchor2{
	background:url(../images/icon_arrow03.png) no-repeat 0 0.3em;
	padding-left:11px;
	color:#333;
	text-decoration:none;
}
a.anchor2{ background:url(../images/icon_arrow04.png) no-repeat 0 0.25em; }

.anchor:hover,
.anchor2:hover{ opacity:0.5; }

a.anchor-ex,
a.anchor-ex2{
	background:url(../images/icon_new_window01.png) no-repeat right top 0.35em;
	padding-right:18px;
	color:#f58543;
}
a.anchor-ex2{
	background:url(../images/icon_new_window02.png) no-repeat right top 0.35em;
	color:#e05b7d;
}

.anchor-ex:hover,
.anchor-ex2:hover{ text-decoration:none; }

/* --- ext icon --- */

a[href$='.xls'], a[href$='.xlsx']{
	background: url(../images/fileicon/xls.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='.doc'], a[href$='.docx']{
	background: url(../images/fileicon/doc.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='pdf']{
	background: url(../images/fileicon/pdf.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='ppt']{
	background: url(../images/fileicon/ppt.png) no-repeat 100% 50%;
	padding-right: 25px;
}


/* --- openwin --- */

.openwin{ 
	padding-right: 15px;
}

/* ---　pagetop-in　 --- */

.pagetop-in {
	text-align:right;
}

.pagetop-in a {	
	background:url(../images/icon_arrow_pagetop.png) no-repeat 0 0.4em;
	padding-left: 15px;
	font-size: 92%;
}

/* --- blockquote --- */

blockquote, 
.acms-entry blockquote{
	background:#f8f5df;
	border:0;
	border-radius:15px;
	margin-top:40px;
	padding:10px 15px;
	font-size:11px;
	font-style:italic;
}

/* --- btn --- */
.btn a,
.btn2 a{
	background-image:url(../images/icon_arrow_btn.png);
	background-color:#ea6083;
	background-position:right 13px center;
	background-repeat:no-repeat;
	border: 1px solid rgba(0,0,0,0);
	color:#fff;
	padding:13px 0;
	font-size:18px;
	text-align:center;
	width:330px;
	display:block;
	text-decoration:none;
	border-radius:10px;
	box-sizing: border-box;
	transition: 0.3s;
}
.btn a:hover{
	background-image:url(../images/icon_arrow_btn2.png);
	color: #ea6083;
	background-color: rgba(0,0,0,0);
	border: 1px solid #ea6083;
}
.btn2 a{ background-color:#62a8e4; }
.btn2 a:hover{
	background-image:url(../images/icon_arrow_btn3.png);
	color: #62a8e4;
	background-color: rgba(0,0,0,0);
	border: 1px solid #62a8e4;
}


/* ------ title -------------------------------- */

.content h2, 
.content .wysiwyg h1{
	background:url(../images/bg_title_h2.png) center bottom no-repeat;
	clear:both;
	margin:30px 0 0;
	padding:0 0 20px;
	font-family:"ぼくたちのゴシック";
	font-size:26px;
	font-weight:bold;
	text-align:center;
}
.content h2 a:link          { text-decoration:underline; }
.content h2 a:visited       { text-decoration:underline; }
.content h2 a:hover,a:active{ text-decoration:none; }


.content h3, 
.content .wysiwyg h2{
	clear:both;
	margin:30px 0 0;
	font-size:22px;
	font-weight:bold;
	background:url(../images/bg_title_h3.png) bottom left repeat-x;
	padding:0 0 5px;
}

.content h4, 
.content .wysiwyg h3{
	clear:both;
	font-size:18px;
	font-weight:bold;
	margin:30px 0 0;
}

.content h5, 
.content .wysiwyg h4{
	clear:both;
	font-size:14px;
	font-weight:bold;
	margin:30px 0 0;
}


/* ------ ul ----------------------------------- */


/* --- normal list --- */

.list li{
	background:url(../images/icon_list01.png) no-repeat 0 0.45em;
	padding-left:15px;
	margin-bottom:5px;
	text-align: left;
}

.list li li {
	background:url(../images/icon_list02.png) no-repeat 0 0.6em;
	text-align: left;
}

.list2 li{
	background:url(../images/icon_list03.png) no-repeat 0 0.45em;
	padding-left:15px;
	margin-bottom:5px;
	text-align: left;
}

.list2 li li {
	background:url(../images/icon_list04.png) no-repeat 0 0.6em;
	text-align: left;
}

.list3 li{
	font-size:16px;
	padding-left:22px;
	margin-bottom:5px;
	background-position:0 0.1em;
	background-repeat:no-repeat;
	text-align: left;
}
.list3 li.color1 { background-image:url(../images/icon_list05.png); }
.list3 li.color2 { background-image:url(../images/icon_list06.png); }
.list3 li.color3 { background-image:url(../images/icon_list07.png); }
.list3 li.color4 { background-image:url(../images/icon_list08.png); }

/* --- link list --- */

.link li,
.link2 li{ margin-bottom:5px; }

.link li a,
.link2 li a{
	background:url(../images/icon_arrow01.png) no-repeat 0 0.1em;
	padding-left:22px;
	color:#333;
	text-decoration:none;
}
.link2 li a{ background:url(../images/icon_arrow02.png) no-repeat 0 0.1em; }

.link li a:hover,
.link2 li a:hover{ opacity:0.5; }

/* --- number list --- */

ol li {
	list-style-type:decimal;
	margin-left:25px;
	margin-bottom:5px;
}

ol ul li{
	list-style-type:none;
	margin-left:10px;
}

ol.olist,
ol.olist2{
	counter-reset:number;
	list-style:none;
	margin-left:0;
	padding:0;
}
ol.olist li,
ol.olist2 li{
	list-style-type:none;
	margin:0 0 5px;
}
ol.olist li:before,
ol.olist2 li:before{
	counter-increment: number;
	content: counter(number);
	background:url(../images/icon_olist01.png) 0 0 no-repeat;
	color:#fff;
	width:22px;
	text-align:center;
	font-size:13px;
	display:inline-block;
	margin-right:5px;
}
ol.olist2 li:before{
	background:url(../images/icon_olist02.png) 0 0 no-repeat;
	width:18px;
	line-height:20px;
	margin-right:9px;
}

/* --- attention list --- */

.rice li{
	margin:0 0 5px 1em;
	text-indent:-1em;
}

/* --- compact list --- */

.compact li{
	display:inline;
	margin-right:10px;
}

/* --- within compact list --- */

.within {
	background:#f8f4de;
	padding:15px 5px;
	border-radius:15px;
	margin:30px 0 0;
}

.within li{
	background:url(../images/icon_arrow_within.png) no-repeat 0 0.45em;
	padding-left:24px;
	margin:0 15px;
	font-weight:bold;
	display:inline-block;
}

.within li a{
	color:#333;
	text-decoration:none;
}


.content ul ul, .content dl dl, .content ol ol {
	margin-top: 5px;
}

/* ------ dl ----------------------------------- */

/* --- normal list --- */

.list dt{
	background:url(../images/icon_list01.png) no-repeat 0 0.5em;
	padding-left:13px;
	font-weight:bold;
}

.list dd{
	padding-left:13px;
}

/* --- link list --- */

.link dt{
	background:url(../images/icon_arrow01.png) no-repeat 0 0.4em;
	padding-left:15px;
	font-weight:bold;
}

.link dd{
	padding-left:15px;
}

/* --- horizonal --- */

.horizonal dt {
  clear: left;
  float: left;
  width: 10em;
  padding:8px 8px 8px 0;
}

.horizonal dd {
  padding:8px 15px 8px 11em;
  border-bottom:1px solid #ddd;
}



/* ------ layout frame ------------------------- */

.content .layout-frame {
	clear: both;
	margin-left: -20px;
}

.content .layout-4col {
	margin-left: -20px;
}

.content .layout-3col {
	margin-left: -20px;
}

.content .layout-unit {
	float: left;
	display: inline;
	margin-left: 20px;
}

.content .layout-3col .layout-unit {
	margin-left: 20px;
}

/* 1100px */
.grid-1 { width:90px; }
.grid-2 { width:180px; }
.grid-3 { width:270px; }
.grid-4 { width:360px; }
.grid-5 { width:450px; }
.grid-6 { width:540px; }
.grid-7 { width:630px; }
.grid-8 { width:720px; }
.grid-9 { width:810px; }
.grid-10{ width:900px; }
.grid-11{ width:990px; }



/* ------ social media ------------------------- */

.social{
	margin-top:20px;
}

.social ul li{
	float:left;
	margin-right:10px;
	vertical-align:top;
	width:80px;
	display:inline-table;
}

/*
.social ul li.twitter, 
.social ul li.google{
	padding-top:5px;
}
	*/

.social ul li *{
	margin:0;
	padding:0;
}

.social ul:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .social ul             { zoom:1; } /* IE6 */
*:first-child+html .social ul { zoom:1; } /* IE7 */



/* ------ table -------------------------------- */

table{
	border-collapse:collapse;
	border:1px solid #f9f8f3;
	width:100%;
	-webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;

}

table th,
table td{
	padding:10px 15px;
	vertical-align:top;
	border:1px solid #dfddd4;
	font-size:14px;
}

table.middle th,
table.middle td{
	vertical-align:middle;
}

table th{
	background:rgba(242,238,202,0.3);
}

table thead th,
th.head {
	background:rgba(198,191,131,0.2);
	text-align:left;
}

table thead th.table-title{
	background:#f1ecca;
	font-size:16px;
	font-weight:bold;
	border:1px solid #fff;
	border-radius:15px 15px 0 0 ;
}

/* --- noborder --- */

table.noborder,
table.noborder td,
table.noborder th{
	border:0;
	background: none;
}

/* index
------------------------------------------------ */

.index {
	clear: both;
	margin: 0 0 0 -20px;
}

.index dl {
	position: relative;
	float: left;
	display: inline;
	margin-left: 20px;
	width: 350px;
	background: #eee;
}

.index dt {
	padding: 7px;
	background:#ddd;
}

.index dt a {
	text-decoration:none;
}

.index dd {
	padding: 7px;
}


/* cms
------------------------------------------------ */

/* --- entry-date --- */

.entry-date {
	text-align: right;
	font-size: 87%;
}

/* --- entry-navigation / pager-navigation --- */

.entry-navigation, 
.pager-navigation{
	font-size:87%;
	margin:50px 0 0;
}

.entry-navigation a:link, .entry-navigation a:visited, .entry-navigation a:hover, .entry-navigation a:active, 
.pager-navigation a:link, .pager-navigation a:visited, .pager-navigation a:hover, .pager-navigation a:active{
	text-decoration:none;
}

.entry-navigation ul, 
.pager-navigation ul{
	margin:0;
}

/* entry-navigation */

.entry-navigation{
	background:#eee;
	padding:10px;
}

.entry-navigation li{
	width:33%;
}


.entry-navigation .entry-new{
	float:left;
}

.entry-navigation .entry-list{
	float:left;
	text-align:center;
}

.entry-navigation .entry-old{
	float:right;
	text-align:right;
}

.entry-navigation .home{
	text-align:center;
	margin-top:-20px;
}

.entry-navigation ul:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .entry-navigation ul             { zoom:1; } /* IE6 */
*:first-child+html .entry-navigation ul { zoom:1; } /* IE7 */

/* pager-navigation */

.pager-navigation ul li{
	font-family:"ぼくたちのゴシック";
	font-size:18px;
	float:left;
	text-align:center;
	margin-right:10px;
	line-height:1;
}

.pager-navigation ul li span.cur{
	background:#fff;
	border:1px solid #aea98a;
	color:#aea98a;
	display:block;
	line-height:1;
	padding:0.5em 0.7em;
	position:relative;
	border-radius:5px;
}

.pager-navigation ul li a:link, 
.pager-navigation ul li a:visited{
	background:#aea98a;
	color:#fff;
	display:block;
	line-height:1;
	padding:0.5em 0.7em;
	position:relative;
	border-radius:5px;
}

.pager-navigation ul li a:hover, 
.pager-navigation ul li a:active{
	background:#d0ccb3;
}

.pager-navigation li.pager-back a:link,
.pager-navigation li.pager-back a:visited{
	background:url(../images/icon_arrow_back.png) left center no-repeat !important;
	padding:0 5px 0 13px;
	font-size:13px;
	line-height:35px;
	color:#333 !important;
}

.pager-navigation li.pager-next a:link,
.pager-navigation li.pager-next a:visited{
	background:url(../images/icon_arrow_next.png) right center no-repeat !important;
	padding:0 13px 0 5px;
	font-size:13px;
	line-height:35px;
	color:#333 !important;
}

.pager-navigation li.pager-back a:hover,
.pager-navigation li.pager-next a:hover{
	opacity:0.5;
}

/* 続きを読むリンク */
.search.entry p.continue {
	margin: 0;
	padding: 0;
}

.search.entry p.continue a {
	display: block;
	margin: 0;
	padding: 10px 0;
	border-top: 1px solid #E8E8E8;
}

.search.entry p.continue a:hover {
	background-color: #F0F0F0;
}



/* --- faq --- */
.faq{
	background:#fff;
	padding:10px 0 0;
	margin:30px 0 0;
}

.faq p{ margin:0; }

.qu{
	background:url(../images/bg_q.png) 15px 4px no-repeat, url(../images/bg_faq.png) bottom center repeat-x;
	padding:0 10px 10px 50px;
}

.an{
	background:url(../images/bg_a.png) 15px 14px no-repeat;
	padding:10px 10px 10px 50px;
}



/* --- decoration-box --- */
.decoration-box.deco01{
	background:url(../images/bg_boxshadow01.png) left -20px bottom no-repeat, url(../images/bg_boxshadow02.png) right -20px bottom no-repeat;
	padding-bottom:30px;
	margin:30px 0 0;
}

.decoration-box.deco01 .deco01-inner{
	background:#acacac;
	color:#fff;
	border-radius:10px;
	padding:15px;
}

.decoration-box.deco02{
	background:#fff;
	border:6px solid #f9f6e3;
	padding:15px;
	border-radius:10px;
}

.decoration-box.deco03{
	background:url(../images/bg_deco03.png) center no-repeat;
	color:#fff;
	width:180px;
	height:180px;
	padding:70px;
	margin:30px 0 0;
}

.decoration-box.deco01 .deco01-inner p:first-child,
.decoration-box.deco02 p:first-child,
.decoration-box.deco03 p:first-child{ margin:0; }

.no-br br {
	display: none;
}

.sphone-num {
	pointer-events: none;
	color: #333 !important;
	text-decoration: none !important;
}