@charset "utf-8";

/*---------- common ----------*/
body {
background: #fff;
font-family: Meiryo, メイリオ, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Lucida Grande", sans-serif;
font-size: 16px;
color: #333333;
line-height: 1.6em;
}
a {
color: #074BB4;
text-decoration: underline;
outline: none;
}
a:hover {
color: #074BB4;
text-decoration: none;
outline: none;
}
p {
margin-bottom: 1em;
line-height: 1.8em;
}
img {
max-width: 100%; height: auto;
vertical-align:bottom;
}
/*---------- 文字装飾 ----------*/
.small {
font-size: 11px;
}
.large {
font-size: 20px;
}
.blk,
.blk:hover {
color: #111111;
}
.normal {
font-weight: normal;
}
.text_red {
color: #dc143c;
font-weight: bold;
}
.text_blue {
color: #000080;
font-weight: bold;
}
.text_bold {
font-weight: bold;
text-decoration:underline;
}
.marker_yel {
background: -moz-linear-gradient(transparent 30%, #fff996 0%, #fff996 70%, #ffffff 70%);      /* Firefox用 */
background: -webkit-linear-gradient(transparent 30%, #fff9960 0%, #fff996 70%, #ffffff 70%);   /* Safari用 */
background: -ms-linear-gradient(transparent 30%, #fff996 0%, #fff996 70%, #ffffff 70%);       /* IE用 */
background: -o-linear-gradient(transparent 30%, #fff996 0%, #fff996 70%, #ffffff 70%);        /* Opera用 */
background: linear-gradient(transparent 30%, #fff996 0%, #fff996 70%, #ffffff 70%);           /* Default */
}
.line_yel {
background:#ffffcc;
}

#offer {
    background:#d6dce5;
    margin: 0 auto;
    padding: 0 30px 10px;
    font-size: 16px;
    line-height: 1.5em;
    color: #333;
    width: 590px;
}

@media screen and (max-width: 720px) {
#offer {
width: auto;
}
}

#offer p {
    margin:20px 0;
}

.centerblock {
    text-align: center;
    
}

#offer p.stxt {
    margin:20px 0 30px;
    font-size: 12px;
}

#offer p span.btxt {
    display: block;
    margin:10px 0 0;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}

/*---------- header ----------*/
#header {
display: block;
text-align: center;
background: #fff;
margin: 0 auto;
width: 640px;
}
#header h1 {
}
@media screen and (max-width: 720px) {
#header {
width: auto;
}
}

/*---------- オトクなお知らせ ----------*/
#info {
display: block;
width: 600px;
margin: 0 auto;
padding: 20px;
font-size: 20px;
font-weight: bold;
line-height: 1.4em;
color: #fff;
background: #233961;
text-align: center;
}
@media screen and (max-width: 720px) {
#info {
width: auto;
padding: 15px;
font-size: 18px;
}
}

/*---------- contents ----------*/
#contents {
margin: 0 auto;
padding: 15px 30px;
width: 640px;
background: #ffffff;
}
@media screen and (max-width: 720px) {
#contents {
width: auto;
padding: 15px;
}
}

/*---------- enq ----------*/
.enqbox {
display: block;
margin: 30px 0;
}
.enqbox dt {
margin: 20px 0;
font-size: 18px;
font-weight: bold;
line-height: 1.5em;
color: #333;
background: #fff;
overflow: hidden;
}
.enqbox dt span{
padding: 5px 10px;
margin-right: 10px;
color: #fff;
background: #233961;
float: left;
}

.enqbox dt span.text_red{
padding: 0;
margin-right: 0;
color: #dc143c;
font-weight: bold;
background: none;
float: none;
}

.enqbox dd {
display: block;
padding: 10px 0;
font-size: 16px;
line-height: 1.5em;
color: #333;
}

/*---------- チェックボックス ----------*/
input[type=checkbox] {
  display: none;
}
.check_css {
  -webkit-transition: background-color 0.2s linear;
  transition: background-color 0.2s linear;
  position: relative;
  display: inline-block;
  padding: 0 0 0 42px;
  vertical-align: middle;
  cursor: pointer;
}
.check_css:hover:after {
  border-color: #df0212;
}
.check_css:after {
  -webkit-transition: border-color 0.2s linear;
  transition: border-color 0.2s linear;
  position: absolute;
  top: 50%;
  left: 15px;
  display: block;
  margin-top: -10px;
  width: 16px;
  height: 16px;
  border: 2px solid #ccc;
  border-radius: 6px;
  content: '';
}
.check_css:before {
  -webkit-transition: opacity 0.2s linear;
  transition: opacity 0.2s linear;
  position: absolute;
  top: 50%;
  left: 21px;
  display: block;
  margin-top: -7px;
  width: 5px;
  height: 9px;
  border-right: 3px solid #df0212;
  border-bottom: 3px solid #df0212;
  content: '';
  opacity: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
input[type=checkbox]:checked + .check_css:before {
  opacity: 1;
}

div#error {
    text-align: center;
    font-family: Meiryo, メイリオ, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Lucida Grande", sans-serif;
    font-size: 16px;
    font-weight: bold;
    color: red;
}

/*---------- ボタン ----------*/
.cv_btn #js-answer_submit {
display: block;
color: #ffffff;
background: -moz-linear-gradient(top, #334876 0%, #334876 49%, #253863 50%, #253863);
background: -webkit-linear-gradient(top, #334876 0%, #334876 49%, #253863 50%, #253863);
background: -ms-linear-gradient(top, #334876 0%, #334876 49%, #253863 50%, #253863);
background: -o-linear-gradient(top, #334876 0%, #334876 49%, #253863 50%, #253863);
background: linear-gradient(top, #334876 0%, #334876 49%, #253863 50%, #253863);
text-align: center;
font-size: 18px;
font-weight: bold;
padding: 15px 2px;
border-radius: 8px;
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
text-decoration: none;
width: 100%;
}
/*---------- 注釈 ----------*/
.notes{
font-size: 10px;
text-align: right;
}
.noteslink{
text-align: right;
}
.noteslink a{
font-size: 10px;
text-decoration:none;
color:#CDCDCD;
}
/*---------- フィード風 ----------*/
#contents h5 {
padding: 3px 0 10px;
font-size: 18px;
font-weight: bold;
}
.feedbox{
margin: 0 0 20px;
padding: 3px 0;
border-top: 1px dashed #cdd1d5;
overflow: hidden;
}
.feedbox li a:hover{
background: #ffe4db;
display:block;
}
.feedbox dl{
font-size: 14px;
display:block;
padding: 10px 0;
border-bottom: 1px dashed #cdd1d5;
overflow: hidden;
}
.feedbox dt{
display:block;
}
.feedbox dd{
width: 90px;
float: left;
margin: 0 10px;
display:block;
border: 1px solid #cdcdcd;
}
/*---------- footer ----------*/
#footer {
font-weight: normal;
text-align: center;
background: #252833;
margin: 0 auto;
padding: 5px;
color: #bfbfbf;
width: 640px;
}
#footer a{
color:#bfbfbf;
text-decoration:none;
}

@media screen and (max-width: 720px) {
#footer {
width: auto;
padding: 10px;
}
}

/*---------- admin ----------*/
.admin{
width: 100%;
border-collapse: collapse;
}
.admin th{
width: 25%;
padding: 6px;
text-align: left;
vertical-align: top;
color: #333;
background-color: #f5f5f5;
border: 1px solid #cdcdcd;
}
.admin td{
padding: 6px;
background-color: #fff;
border: 1px solid #cdcdcd;
}
