@charset "utf-8";  
/*------------------------------------------------------------ 
	デフォルトスタイル	全ページ共通css
------------------------------------------------------------*/  

/**** フォントサイズ　*************

基本を12pxに、サイズは％指定。

====偶数====　　　====奇数====
■10px = 84%      ■11px = 92%
■12px = 100%     ■13px = 109%
■14px = 117%     ■15px = 125%
■16px = 134%     ■17px = 142%
■18px = 150%     ■19px = 159%
■20px = 167%     ■21px = 175%
■22px = 184%     ■23px = 192%
■24px = 200%     ■25px = 209%
■26px = 217%     ■27px = 226%

**********************************/

html,
body { margin: 0; padding: 0;}
body {
	font-size: 76%;
	background: #fff;
	padding-top:15px;
	-webkit-text-size-adjust: 100%;
}

html { font-size: 100%;}

div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-family: Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic",sans-serif;
	font-size: 100%;
	line-height: 1.2;
	font-weight: normal;
	vertical-align: baseline;
	background: transparent;
}  

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
    display: block;
}

blockquote,
q { quotes: none;}

a {
	text-decoration: none;
	outline: none;
}

ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

mark {
	background-color: #ff9;
	color: #000;
	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;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

input,
select,
textarea {
	vertical-align: middle;
	font-size:100%;
	font-family: Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

input[type=text],
input[type=tel],
input[type=password],
textarea{ -webkit-appearance:none;}


ul { list-style-type: none;}
img { vertical-align: middle;}

.opacity { display: inline-block;}
.opacity:hover {
	opacity: .7;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity: .7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: .7;
}

.clear { clear: both;}
.clearfix { width: 100%;}
.clearfix:after {
	content: " ";
	display: block;
	clear: both;
	visibility:hidden;
	height:0.1px;
	font-size:0.1em;
	lin-height:0;
}

.fl { float: left;}
.fr { float: right;}

.txtl { text-align: left;}
.txtr { text-align: right;}
.txtc { text-align: center;}

strong,
strong *,
.fwb { font-weight: bold;}

.clrr { color: #FF0000;}
.clrb { color: #333;}
.clrw { color: #fff;}

.il { display: inline;}
.bl { display: block;}
.no { display: none;}

.li2 { line-height: 2;}

/* margin */
.mT10 { margin-top: 10px;}
.mT20 { margin-top: 20px;}
.mT30 { margin-top: 30px;}
.mT40 { margin-top: 40px;}
.mT50 { margin-top: 50px;}

.mR10 { margin-right: 10px;}
.mR20 { margin-right: 20px;}
.mR30 { margin-right: 30px;}

.mB10 { margin-bottom: 10px;}
.mB20 { margin-bottom: 20px;}
.mB30 { margin-bottom: 30px;}

.mL10 { margin-left: 10px;}
.mL20 { margin-left: 20px;}
.mL30 { margin-left: 30px;}

/* padding */
.pT10 { padding-top: 10px;}
.pT20 { padding-top: 20px;}
.pT30 { padding-top: 30px;}
.pT35 { padding-top: 35px;}

.pR10 { padding-right: 10px;}
.pR20 { padding-right: 20px;}
.pR30 { padding-right: 30px;}

.pB10 { padding-bottom: 10px;}
.pB20 { padding-bottom: 20px;}
.pB30 { padding-bottom: 30px;}

.pL10 { padding-left: 10px;}
.pL20 { padding-left: 20px;}
.pL30 { padding-left: 30px;}

/* font-size */
.font10 { font-size: 84%;}
.font11 { font-size: 92%;}
.font12 { font-size: 100%;}
.font13 { font-size: 109%;}
.font14 { font-size: 117%;}
.font15 { font-size: 125%;}
.font16 { font-size: 134%;}
.font17 { font-size: 142%;}
.font18 { font-size: 150%;}
.font19 { font-size: 159%;}
.font20 { font-size: 167%;}
.font21 { font-size: 175%;}
.font22 { font-size: 184%;}
.font23 { font-size: 192%;}
.font24 { font-size: 200%;}
.font25 { font-size: 209%;}
.font26 { font-size: 217%;}
.font27 { font-size: 226%;}

/* editor */

#editor table,
#editor caption,
#editor tbody,
#editor tfoot,
#editor thead,
#editor tr,
#editor th,
#editor td {
	border: 1px solid gray;
    border-spacing: 2px;
	border-collapse: separate;
}

#editor strong * { font-weight: bold;}
#editor a:hover { text-decoration: underline;}


/*------------------------------------------------------------ 
    スタイル 
------------------------------------------------------------*/

.inner {
	width:auto;
	max-width: 1024px;
	margin: 0 auto;
	padding:0 10px;
	overflow: hidden;
}

/*------------------------------------------------------------ 
    ヘッダー 
------------------------------------------------------------*/
/*
h1{
	width:574px;
	height:71px;
	float:left;
 	margin:15px 20px;
}

#userMenu{
	float:right;
	margin:15px 0;
	position:relative;
}

#userMenu > a{
	padding-right:25px;
	color:#333;
	font-size:134%;
	overflow:hidden;
}

#userMenu > a:hover{ color:#009966;}

.userImg{
	width:60px;
	height:60px;
	float:left;
	border:5px solid #EBEFF0;
	border-radius:50%;
}

.userImg img{
	width:60px;
	height:60px;
	border-radius:50%;
}


.userTxt{
	float:left;
	margin-left:15px;
	padding-right:25px;
	line-height:70px;
	background:url(../img/icon-arrow.png) no-repeat right 50%;
}

#subMenu{
	display:none;
	width:160px;
	height:140px;
	padding:20px 10px 0;
	background:url(../img/bg-usermenu.png) no-repeat;
	position:absolute;
	right:10px;
	top:50px;
	z-index:1000;
}

#subMenu li{
	width:100%;
	height:40px;
	padding:1px;
	border-bottom:1px solid #ccc;
}

#subMenu a{
	display:block;
	width:auto;
	height:40px;
	padding-left:10px;
	line-height:40px;
	color:#666;
	font-size:117%;
}

#subMenu .mypage{
	padding-left:36px;
	background:url(../img/icon-mypage.png) no-repeat 7px 50%;
}

#subMenu .profile{
	padding-left:36px;
	background:url(../img/icon-profile.png) no-repeat 7px 50%;
}

#subMenu a:hover{ background-color:#E5F5EF;}

#mypageNavi{
	clear:both;
	width:100%;
	height:16px;
	padding:17px 0;
	background:#009966;
}

#mypageNavi li{
	float:left;
	height:16px;
	margin-right:18px;
	padding-right:18px;
	border-right:1px solid #fff;
}

#subMenu li:last-child,
#mypageNavi li:last-child{
	border:none;
	padding:0;
	margin:0;
}

#mypageNavi a{
	color:#fff;
	font-size:117%;
	font-weight:bold;
}
*/
/* headline */

.mypageHd{
	width:auto;
	margin-bottom:35px;
	color:#333;
	font-size:175%;
	padding:15px 30px;
	font-weight:bold;
	border:1px solid #ECF0F1;
	background:#F3F7F7;
	position:relative;
	overflow:hidden;
}

.mypageHd:before{
	display:block;
	content:"";
	width:10px;
	height:100%;
	background:#009966;
	position:absolute;
	left:0;
	top:0;
}

/* detail用　*/
.mypageHd h1{
	float:left;
	font-weight:bold;
}

.mypageHd p{
	float:right;
	height:26px;
	padding:0 25px;
	margin:12px 0;
	text-indent:0;
	border-left:1px solid #ccc;
	font-size:76%;
}

.mypageHd a{
	font-size:76%;
	color:#333;
	font-weight:bold;
}

.mypageHd a:hover{ color:#058F61;}



/*------------------------------------------------------------ 
    pankuzu
------------------------------------------------------------*/  
#pankuzu{
	width:100%;
	border-bottom:1px solid #ccc;
	margin-bottom:50px;
	background:#fff;
}

#pankuzu li{
	float:left;
	height:40px;
	line-height:40px;
	margin-right:15px;
	color:#333;
}

#pankuzu a{
	display:block;
	line-height:40px;
	padding-right:25px;
	color:#0F7866;
	background:url(../img/icon-arrow04.png) no-repeat right 50%;
}

#pankuzu img{ vertical-align:baseline;}


.error{ margin-top:8px;}

.error span{
	display:inline-block;
	padding:5px;
	font-weight:bold;
	font-size:12px;
	color:#fff;
	background:#F26964;
	border-radius:4px;
}


/*------------------------------------------------------------ 
    news
------------------------------------------------------------*/  

#newsList{
	width:984px;
	padding:25px 19px;
	background:#FFF5E0;
	border:1px solid #FFCC66;
}

#newsList li{
	width:100%;
	overflow:hidden;
	padding:10px 0;
}

.date{
	width:124px;
	color:#354A5F;
	float:left;
}

.ttl{
	width:860px;
	float:right;
	font-size:117%;
}

.ttl a,
.video-ttl a{
	color:#006666;
}

.ttl a:hover,
.video-ttl a:hover,
.bbs-ttl a:hover{ color:#333;}

.more{
	margin-top:20px;
	text-align:right;
}

.more a{
	line-height:17px;
	display:inline-block;
	padding-right:30px;
	color:#333;
	font-size:117%;
	background:url(../img/icon-more.png) no-repeat right 50%;
}

.more a:hover{ color:#009966;}


/*------------------------------------------------------------ 
    video
------------------------------------------------------------*/  

#videoList{
	width:1048px;
	overflow:hidden;
	letter-spacing: -.40em;
}

#videoList li{
	width:238px;
	display:inline-block;
/*	height:260px;
	float:left;
*/
	letter-spacing: normal;
	vertical-align:top;
	margin:0 24px 24px 0;
}

.video-img{
	width:238px;
	height:160px;
	margin-bottom:10px;
}

.video-img a{
	display:block;
	width:100%;
	height:100%;
	position:relative;
}

.video-img a:before{
	display:none;
	content:"";
	width:100%;
	height:100%;
	background:url(../img/bg-videoImg.png) no-repeat;
	position:absolute;
	top:0;
	left:0;
	z-index:10;
}

.video-img a:hover:before{ display:block;}

.video-date{
	text-align:right;
	line-height:40px;
	color:#354A5F;
}

.video-ttl{
	margin-top:8px;
	font-size:117%;
	line-height:1.5;
}


/*------------------------------------------------------------ 
    questionnaire
------------------------------------------------------------*/  

.questionnaire{
	padding:0 22px;
}

.questionnaire dt{
	padding-left:20px;
	color:#333;
	font-size:134%;
	background:url(./img/icon-circle.png) no-repeat left 50%;
}

.questionnaire .required{
	color:#F00;
	padding-left:5px;
}

.questionnaire dd{
	border-top:1px solid #ECF0F1;
	margin-top:20px;
	padding:20px 0 60px;
	font-size:117%;
}

.questionnaire table{
	width:100%;
	color:#333;
	border-bottom:1px solid #ECF0F1;
}

.questionnaire th{
	width:260px;
	padding:23px 0 23px 20px;
	line-height:24px;
	vertical-align:top;
	text-align:left;
	font-size:134%;
	border-top:1px solid #ECF0F1;
	background:url(./img/icon-circle.png) no-repeat left 29px;
}

.questionnaire td{
	border-top:1px solid #ECF0F1;
	vertical-align:middle;
	padding:15px 0;
	font-size:117%;
}

.input,
.questionnaire select{
	width:100%;
	max-width:600px;
	height:40px;
	padding:0 5px;
	border:1px solid #ccc;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}

.textarea{
	width:100%;
	max-width:600px;
	height:140px;
	padding:5px;
	border:1px solid #ccc;
	resize:none;
	overflow:auto;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}

.questionnaire label{
	display:inline-block;
	margin:0 30px 10px 0;
}

.questionnaire label input{
	position:relative;
	top:-1px;
}

.submit{
	width:195px;
	height:52px;
	margin:35px auto 0;
}

.submit a{
	display:block;
	width:100%;
	height:100%;
	text-align:center;
	line-height:52px;
	color:#fff;
	font-size:150%;
	font-weight:bold;
	background:#24864D;
	border-radius:5px;
}


/*------------------------------------------------------------ 
    bbs
------------------------------------------------------------*/  

#flagList{
	width:100%;
	text-align:right;
	margin-bottom:15px;
}

#flagList li{
	display:inline-block;
	height:21px;
	line-height:21px;
	padding-right:30px;
}
 

#bbsList{
	width:100%;
	border-top:1px solid #ECF0F1;
}

#bbsList li{
	width:100%;
	overflow:hidden;
	padding:18px 0;
	border-bottom:1px solid #ECF0F1;
}

.flag{
	width:50px;
	line-height:20px;
	float:left;
}

.bbs-ttl{
	width:770px;
	line-height:20px;
	float:left;
}

.bbs-ttl a{
	font-size:117%;
	color:#24864D;
	font-weight:bold;
}

.bbs-date{
	width:200px;
	line-height:20px;
	float:right;
	text-align:right;
	color:#354A5F;
}

/* thread */

#threadHd{
	color:#333;
	line-height:30px;
	font-size:175%;
	font-weight:bold;
	padding-left:45px;
	margin-bottom:15px;
	background:url(../img/icon-thread.png) no-repeat left 50%;	

}

.threadMenu{
	width:100%;
	height:40px;
	overflow:hidden;
	border-top:1px solid #ECF0F1;
	border-bottom:1px solid #ECF0F1;
}

.kanri{
	float:left;
	line-height:40px;
	font-size:117%;
}

.kanri span{
	font-size:109%;
	line-height:40px;
	vertical-align:middle;
}

.thread-date{
	float:right;
	line-height:40px;
    color:#354A5F;
	padding-right:30px;
}

#threadArea{
	width:980px;
	padding:50px 22px 0;
}

.inputArea{
	width:auto;
	padding:20px;
	background:#F7F9F9;
	border-radius:15px;
}

.userName{
	font-size:117%;
	margin-bottom:20px;
}

.userName strong{
	font-size:117%;
	padding-right:10px;
}

.write{
	width:120px;
	height:44px;
	margin-top:20px;
}

.write a{
	display:block;
	width:100%;
	height:100%;
	text-align:center;
	line-height:44px;
	color:#fff;
	font-size:134%;
	font-weight:bold;
	background:#24864D;
	border-radius:10px;
}

#threadList li{
	width:100%;
	overflow:hidden;
	margin-top:50px;
}

#threadList .delete{
	hieght:44px;
	line-height:44px;
	color:#fff;
	text-indent:1em;
	font-size:117%;
	background:#97A5A6;
	margin-top:30px;
}


.commentImg{
	width:60px;
	height:60px;
	float:right;
	margin-top:25px;
	border:5px solid #EBEFF0;
	border-radius:50%;
}

.commentImg img{
	width:60px;
	height:60px;
	border-radius:50%;
}


.commentInfo{
	max-width:773px;
	float:right;
	margin:0 5px 0 0;
}

.user{
	float:left;
	color:#24864D;
}


.comment-date{
	color:#354A5F;
	float:right;
	margin-right:27px;
}

.comment{
	min-width:200px;
	min-height:30px;
	padding:30px 35px;
	margin:15px 27px 0 0px;
	color:#333;
	line-height:1.6;
	font-size:117%;
	background:#F8E188;
	border-radius:10px;
	position:relative;
}

.comment:before{
	display:block;
	content:"";
	width:27px;
	height:22px;
	background:url(../img/icon-fukidashi.png) no-repeat;
	position:absolute;
	right:-27px;
	top:40px;
}

/* 他人の投稿[other] */
.other .commentImg{
	float:left;
}

.other .commentInfo{
	float:left;
	margin:0 0 0 5px;
}

.other .user{ margin-left:27px;}

.other .comment-date{ margin:0;}

.other .comment{
	margin:15px 0 0 27px;
	background:#EBEFF0;
}

.other .comment:before{
	background-image:url(../img/icon-fukidashi2.png);
	left:-27px;
}

/* 画像投稿 */


.image .comment{ padding:10px;}


/* ファイル投稿 */


.file .comment a{
	display:block;
	padding-left:25px;
	line-height:15px;
	background:url(../img/icon-file.png) no-repeat left 50%;
}

.file .comment span{
	display:block;
	color:#666;
	padding-left:25px;
	margin-top:8px;
}

.delete-btn{
	width:84px;
	height:32px;
	float:right;
	margin:45px 0 0 10px;
}

.delete-btn a{
	display:block;
	width:100%;
	height:100%;
	text-align:center;
	line-height:32px;
	color:#fff;
	font-size:117%;
	background:#98A6A9;
	border-radius:16px;
}

.delete-btn a:hover{
	background:#EBEFF0;
	color:#333;
}




/*------------------------------------------------------------ 
    フッター 
------------------------------------------------------------*/  

#footer {
	width:auto;
	margin-top:60px;
	padding:30px 35px;
	background:#F4F6F9;
	text-align:center;
}

.ftInner{
	display:inline-block;
	text-align:left;
}

.sponsor{
	font-size:150%;
	color:#666;
	line-height:1.5;
	margin-bottom:10px;
}

.sponsor a{
	color:#009966;
	font-size:76%;
	padding-left:10px;
}

.sponsor a:hover{ color:#333;}

.ft-txt{
	color:#666;
	font-size:117%;
	line-height:1.5;
}



/* password */

#passArea + #wrap{
	-webkit-filter: blur(6px)!important;
	  filter: blur(6px)!important;
	max-height:100vh;
	overflow:hidden;
}

#passArea{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
  -webkit-box-align: center;
     -ms-flex-align: center;
        align-items: center;
	padding:10px;
	box-sizing:border-box;
	position:fixed;
	width:100%;
	height:100%;
	left:0;
	top:0;
	z-index:900;
}

#inputArea{
	width:100%;
	max-width:420px;
	padding:30px 15px;
	border:1px solid #DDDDDD;
	background:#fff;
    z-index: 1000;
	box-sizing:border-box;
	border-radius:5px;
}

.formHd{
	width:100%;
	text-align:center;
	color: #333;
    font-size: 134%;
    font-weight: bold;
	margin-bottom:25px;
}

.formInput{
	width:300px;
	margin:0 auto;
}

.formInput + .submit{ margin-top:25px;}


/*------------------------------------------------------------ 
    MediaQuery 
------------------------------------------------------------*/  


/* TABLET */
@media screen and (max-width: 788px){

.questionnaire{	padding:0 10px;}

.questionnaire th{
	width:240px;
	font-size:125%;
}

.mypageHd{
	font-size:150%;
	padding:12px 20px;
	margin-bottom:20px;
}

}


/* SP */
@media screen and (max-width: 560px){

.mypageHd{ font-size:134%;}

.questionnaire{	padding:0px;}

.questionnaire th{
	display:block;
	width:auto;
	line-height:20px;
	padding:15px 0 15px 20px;
	background-position:0 20px;
}

.questionnaire td{
	display:block;
	width:100%;
	border:none;
	padding:0 0 15px;
}

#footer{
	margin-top:40px;
	padding:20px;
}

.sponsor a{
	display:block;
	padding:0;
	margin-top:5px;
}

}



#overlay{
	display:none;
	width:100%;
	height:100%;
	background:rgba(255,255,255,.7);
	position:fixed;
	top:0;
	left:0;
	z-index:1000;
}

#loader{
	width:50%;
	height:50%;
	border: 6px solid rgba(100, 100, 100, 0.6);
	border-top: 6px solid transparent;
	border-radius:50%;
	height: 50px;
	width: 50px;
	-webkit-animation: fancybox-rotate .8s infinite linear;
	animation: fancybox-rotate .8s infinite linear;
	background: transparent;
	position: absolute;
	top: 45%;
	left: 50%;
	margin-top: -30px;
	margin-left: -30px;
	z-index: 99999;
}

@-webkit-keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@keyframes fancybox-rotate {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }


#topcontrol{
	opacity:0.7;
	transition:opacity 0.2s ease-out;
}
