@charset "utf-8";

element.style {
    
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td
    {
    margin: 0;
    padding: 0;
}

div {
    display: block;
}

body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo,
        Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
/*  font-size: 13px; */
/*  font-size: 14px; */
    font-size: 4.5vw;
    letter-spacing: 0px;
    line-height: 1.5;
    color:#333333;
    -webkit-text-size-adjust: 100%; //for iPhone Safari
}

#main_column.colnum1 {
    margin: 0px;
/*  width: 720px; */
    width: 100%;
    padding: 0px;
}


/* 
---------------------------------------
contact
---------------------------------------
*/
.contact .bg_area {
    margin: 0;
/*  padding: 20px; */
/*  padding: 4vw; */
    padding: 0;
/*  background:
        url('../img/background/bg.gif')
        repeat left top; */
    border-radius: 7px;
    -moz-border-radius: 7px;
    -webkit-border-radius: 7px;
/*  font-size: 17.5px; //sphone only */
}

.contact h2 {
    margin: 0 0 25px;
}

.contact h3 {
    overflow: hidden;
/*  height: 42px; */
/*  height: 49px; */
    height: 9.8vw;
/*  padding: 10px 10px 0px 25px; */
/*  padding: 10px 10px 0px 15px; */
    padding: 2vw 2vw 0 3vw;
    color: #fff;
/*  background: url('../img/background/store_bg_green.png') no-repeat left top; */
    background-color: #0F337F;
    font-weight: bold;
/*  font-size: 18px; */
    box-sizing: border-box;
    border-radius: 6px 6px 0 0 / 6px 6px 0 0;
    -webkit-border-radius: 6px 6px 0 0 / 6px 6px 0 0;
    -moz-border-radius: 6px 6px 0 0 / 6px 6px 0 0;
}

.contact .inner {
/*  padding: 20px 20px 60px; */
/*  padding: 10px 10px 60px; */
    padding: 2vw 2vw 12vw;
    background: #fff;
/*  border: solid 1px #ccc; */
/*  border-top: none; */
}

.contact .text {
    margin: 0 0 8px;
}
.contact .textemp {
    margin: 0 0 8px;
/*  font-size: 18px; */
}
.contact .textemp15 {
/*  font-size: 15px; */
/*  font-size: 4.8vw;*/
    font-weight: bold;
    margin: 20px 0;
}
.contact .textemp17 {
/*  font-size: 17px; */
    font-size: 5.5vw;
    font-weight: bold;
    margin: 20px 0;
}

.contact .top_hissu {
    color: #f00;
}

.contact table .hissu {
/*  color: #fcff00; */
    padding: 0 5px;
    margin-left: 10px;
    border-radius: 4px;
    background-color: #ff425b;
    color: #FFFFFF;
}

.contact table,
.contact table tbody,
.contact table thead,
.contact table tr,
.contact table tr th,
.contact table tr td
{
    display:block;
}

.contact table {
    width: 100%;
    margin: 5px 0 40px;
    border-top: solid 1px #ccc;
    border-left: solid 1px #ccc;
}

.contact table th {
/*  width: 230px; */
/*  padding: 0 0 0 15px; */
/*  padding: 5px 10px; */
    width: auto;
    padding: 1vw 2vw;
    color: #fff;
    background: #0F337F;
    border-right: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    font-weight: bold;
}

.contact table td {
/*  padding: 10px 20px; */
/*  padding: 10px 10px; */
    padding: 2vw 2vw;
    border-right: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
}

.contact table td input {
/*  background: #f3f8ea; */
}

.contact table td div.box {
    overflow: hidden;
}

.contact table td ul.check_left {
    float: left;
    margin-right: 15px;
}

.contact table td ul.check_right {
    float: left;
    margin-right: 15px;
}

.contact table td li {
    margin: 0 0 10px;
}

.contact .sub_btn {
    margin: 0 0 10px;
    text-align: center;
}

.contact .attention-box {
/*  font-size:13px; */
    border: 2px solid #0F337F;
    border-radius: 4px;
    margin: 40px 0 0;
    padding: 20px;
    position: relative;
}
.contact .attention-box::before {
/*  font-size:16px; */
    font-size: 5.5vw;
    background-color: #fff;
    color: #0F337F;
    content: "必ずご確認ください！";
    font-weight: bold;
    left: 1em;
    padding: 0 .5em;
    position: absolute;
    top: -1em;
}

div.wpcf7-validation-errors {
    margin: 5px 0 20px;
    padding: 20px 0;
    /* width: 100%; */
    width: auto;
    color: #FF0000;
    background: #FFFFFF;
    border: #FF0000 solid 1px;
    text-align: center;
    font-size: 100%;
    line-height: 150%;
}

div.wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
}

div.wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
}

.wpcf7-display-none {
    display: none;
}

.wpcf7c-conf {
    border: 0px solid #ccc !important;
    background-color: rgb(250, 255, 189) !important;
    font-weight: bold;
}

.wpcf7-text {
    padding: 3px 5px;
}

.wpcf7c-elm-step2 {
}

.confirm {
/*  font-size: 120%; */
    font-weight: bold;
    padding: 10px;
    border: 1px solid #999;
    background: #0F337F;
    text-align: center;
/*  color: #FCED1C;*/
    color: #FFFFFF;
}

.contact-select {
/*  background: #f3f8ea; */
}

option {
  color: #333;
}

.button {
    display: inline-block;
/*  width: 400px; */
    width: 95%;
/*  height: 60px; */
    height: 12vw;
    text-align: center;
    font-weight: bold;
/*  font-size: 22px; */
    font-size: 5.5vw;
    letter-spacing: 3px;
    text-shadow: 1px 1px 2px #666666;
    border: 1px solid gray;
    background-image: -webkit-linear-gradient(top, #ff0000, #ff0000);
    background-image: linear-gradient(to bottom, #ff0000, #ff0000);
    border-radius: 5px;
    color: #fff;
/*  line-height: 60px; */
    line-height: 12vw;
}
.button:hover {
    background-image: -webkit-linear-gradient(top, #1ab0ec, #1a92c2);
    background-image: linear-gradient(to bottom, #1ab0ec, #1a92c2);
    cursor: pointer;
}
.button:disabled {
    background-image: -webkit-linear-gradient(top, #ccc, #ccc);
    background-image: linear-gradient(to bottom, #ccc, #ccc);
    cursor: default;
}

.backbutton {
  display: inline-block;
  width: 24vw;
  height: 6vw;
  text-align: center;
  letter-spacing: 3px;
  text-shadow: 1px 1px 2px #666666;
  border: 1px solid gray;
  background-image: -webkit-linear-gradient(top, #999999, #999999);
  background-image: linear-gradient(to bottom, #999999, #999999);
  border-radius: 5px;
  color: #fff;
  line-height: 6vw;
}
.backbutton:hover {
  background-image: -webkit-linear-gradient(top, #cccccc, #999999);
  background-image: linear-gradient(to bottom, #cccccc, #999999);
}

.wpcf7-textarea{
/*  background: #f3f8ea; */
}

.box60 {
/*  width: 60px; */
    width: 18vw;
}
.box70 {
    width: 21vw;
}
.box100 {
/*  width: 100px; */
    width: 30vw;
}
.box145 {
/*  width: 100px; */
/*  width: 35vw; */
    width: 43%;
}
.box160 {
/*  width: 160px; */
    width: 48vw;
}
.box200 {
    width: 60vw;
}
.box300 {
/*  width: 300px; */
    width: 90%;
}
.box320 {
/*  width: 220px; */
/*  width: 77vw; */
    width: 90%;
}
.box400 {
/*  width: 400px; */
    width: 90%;
}
.area320 {
/*  width: 220px; */
/*  height: 120px; */
/*  width: 77vw; */
    width: 90%;
    height: 42vw;
}

div.pc {
    display: none;
}
div.tb {
    display: none;
}
div.sp {
    display: block;
}
div.pctb {
    display: none;
}
div.tbsp {
    display: block;
}

/* ---------- オプションボタン ---------- */
.optionbutton {
    float: left;
/*  margin: 0 0 3px 10px; */
    margin: 0 0 0.75vw 2.5vw;
}
.optionbutton input[type=radio]{
    display: none;
}
.optionbutton label{
    display: inline-block;
    position: relative;
    cursor: pointer;
/*  padding-left: 20px; */
/*  padding-top: 2px; */
    padding-left: 5vw;
    padding-top: 0.5vw;
    border-radius: 2px;
    color: #3e4956;
}
.optionbutton label:before{
    position: absolute;
    content: "";
    top: 50%;
/*  left: -8px; */
/*  width: 16px; */
/*  height: 16px; */
/*  margin-top: -8px; */
    left: -2vw;
    width: 4vw;
    height: 4vw;
    margin-top: -2vw;
    background: #dddddd;
    border-radius: 50%;
}
.optionbutton input[type="radio"]:checked + label:after{
    position: absolute;
    content: "";
    top: 50%;
/*  left: -4px; */
/*  width: 8px; */
/*  height: 8px; */
/*  margin-top: -4px; */
    left: -1vw;
    width: 2vw;
    height: 2vw;
    margin-top: -1vw;
    border-radius: 50%;
    background: #0F337F;
}

/* ---------- チェックボックス ---------- */
input[type=checkbox] {
    display: none;
}
.checkboxlabel {
    position: relative;
    line-height:2.6;
/*  padding: 0 20px 0 27px; */
    padding: 0 5vw 0 6.75vw;
}
.checkboxlabel:hover:after {
    border-color: #0F337F;
}
.checkboxlabel:after, .checkboxlabel:before{
    position: absolute;
    content: ""; 
    display: block;
    top: 50%;
}
.checkboxlabel:after {
    left: 0;
/*  margin-top: -9px; */
/*  width: 14px; */
/*  height: 14px;*/
    margin-top: -2.5vw;
    width: 3.5vw;
    height: 3.5vw;
    border: 2px solid #d1d1d1;
}
.checkboxlabel:before {
/*  left: 5px; */
/*  margin-top: -8px; */
/*  width: 6px; */
/*  height: 10px; */
    left: 1.25vw;
    margin-top: -2vw;
    width: 1.5vw;
    height: 2.5vw;
    border-right: 3px solid #0F337F;
    border-bottom: 3px solid #0F337F;
    transform: rotate(45deg);
    opacity: 0;
}
input[type=checkbox]:checked + .checkboxlabel:before {
    opacity: 1;
}

img#trial_faq{
    width: 41.4vw;
}

.subbutton{
    display: inline-block;
/*  padding: 5px 40px; */
    padding: 1vw 8vw;
    text-decoration: none;
    color: #ffffff;
    border: solid 1px #0F337F;
    border-radius: 3px;
    transition: .4s;
}
.subbutton:hover{
/*  background: #0F337F; */
/*  color: white; */
}
a:link.subbutton,
a:visited.subbutton{
    color: #333333;
    text-decoration: none;
}
a:hover.subbutton{
/*  color: #ffffff; */
    text-decoration: none;
}

.boxContainer{
    margin: auto;
/*  padding: 10px 0 0 0; */
    padding: 2vw 0 0 0;
    overflow: hidden;
    width: 95%;
}

#cboxContent{
/*  margin-top: 32px; */
    margin-top: 6.4vw;
    overflow: visible;
    background-color: transparent;
}
#cboxLoadedContent{
    background-color: transparent;
    padding: 0px;
    border: 1px solid #ccc;
/*  box-shadow: 105px 105px 110px #FFFFFF; */
/*  -webkit-box-shadow: 105px 105px 110px #FFFFFF; */
/*  -moz-box-shadow: 105px 105px 110px #FFFFFF; */
/*  border-radius: 15px; */
    box-shadow: 21vw 21vw 22vw #FFFFFF;
    -webkit-box-shadow: 21vw 21vw 22vw #FFFFFF;
    -moz-box-shadow: 21vw 21vw 22vw #FFFFFF;
    border-radius: 3vw;
}

#cboxLoadingOverlay{
    background-color: transparent;
}

.modal-contact-basic {
    margin: auto;
/*  width: 500px; */
    width: 95vw;
    text-align: center;
    background-color: #fff;
    overflow: hidden;
    -webkit-text-size-adjust: 100%;
}
.modal-contact-calendar {
    margin: auto;
/*  width: 500px; */
    width: 95vw;
    text-align: center;
    background-color: #fff;
    overflow: hidden;
    font-size: 3.5vw;
    -webkit-text-size-adjust: 100%;
}

.tbl {
    width: 100%;
    margin: 0;
    border-top: solid 1px #ccc;
    border-left: solid 1px #ccc;
    table-layout: fixed;
}
.tbl th{
    padding: 0;
/*    width: 12.5%;*/
    color: #fff;
    background: #0F337F;
    border-right: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    text-align: center;
}

.tbl td{
    padding: 0;
/*  width: 12.5%; */
    line-height: 250%;
    border-right: solid 1px #ccc;
    border-bottom: solid 1px #ccc;
    text-align: center;
    font-size: 4.5vw;
}

.holiday{
    background: #FADCE9;
}
.sunday{
    background: #FADCE9;
}
.saturday{
    background: #D3EDFB;
}

.calendar-link{
    cursor: pointer;
    display: block;
    width: 100%;
    height: 100%;
}
.calendar-link:hover{
    background: #FFFFAB;
    color: #0000ff;
}
a:link.calendar-link,
a:visited.calendar-link,
a:hover.calendar-link{
    color: #0000ff;
    text-decoration: none;
}

div.otherheader{
/*  margin:10px 0 20px; */
    margin:10px 0;
    text-align:center;
}
table.other {
    width: 100%;
    height: 100%;
    margin: 0;
    box-sizing: border-box;
}
table.other tr th{
    text-align: center;
}
table.other tr td{
/*  line-height: 200%; */
    line-height: 170%;
}

.chkboxlist {
    margin: 0 0 3px 0;
    float: left;
}

/* ---------- ページ送り(未使用) ---------- */
.maru_half{
/*  border-radius: 50%; */
    font-size: 14px;
    line-height: 0.5em;
    padding-top: 0.1em;
    padding-left: 0.5em;
    padding-right: 0.5em;
}

.maru_select{
    color: #fff;
    border: 1px solid #0F337F;
    background: #0F337F;
}
.maru_notselect{
    color: #0F337F;
    border: 1px solid #0F337F;
}

/* ---------- disabledオブジェクトの表示制御 ---------- */
input[type="text"][disabled],
select:disabled{
    background: #eeeeee;
}
