@charset "UTF-8";
/* CSS Document */
html, body, 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,figure,nav,footer,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-weight: normal;
	line-height: 1.8;
font-family: -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, sans-serif;
 text-align: justify;
  text-justify: inter-ideograph;
  color: #333;
}
ol,ul,li,dl,dt,dd{
list-style: none;
  margin: 0;
  padding: 0;
}
a {
text-decoration: underline;
}

a:hover{
  color: #004498;
}

a:visited {
  color: #004498;
}

img {
vertical-align: bottom;
border: none;
 margin: 0px auto;
 text-align: center;
width: 100%;
}
input, button, textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 120%;
}
.inner {
	overflow: hidden;
width: calc( 100% ) ;
    padding: 10px 0px;
    margin: 0px auto;
}
a:hover img {
filter:alpha(opacity=70);
opacity:0.7;
}
body{
    background: none;
}
h3{
margin-bottom: 20px;
	padding:5px 8px 5px 20px;
	border-left:4px solid #346DF1;
	font-size:110%;
	background:#EEE;
}
p.form_txt{
    font-size: 90%;
    margin: 0px auto;
    margin-bottom: 20px;
    padding-left:10px ;
}
p.form_txt.err{
margin-top: 20px;
font-size: 90%;
width: calc(95% - 20px);
padding: 10px;
border: 2px solid #D5121F;
color: #D5121F;
background: #fcffdc;
}
p.red{
	color: rgb(245, 0, 0);
}
/*table-------------------------------------------------------------*/
table.data,table.data.form{
width: 100%;
margin: 0px;
margin-bottom: 30px;
padding:0px;
border-collapse: collapse;
 border: 1px solid #C1C1C1;
}

table.data th,table.data td{
width: calc(100%  - 10px);
margin: 0px;
padding:20px 5px;
vertical-align: middle;
border: 1px solid #C1C1C1;
text-align:left;
font-size:90%;
line-height: 140%;
}
table.data th{
width: 210px;
text-align: left;
background: #EFEFEF;
font-weight: normal;
font-size:100%;
line-height: 100%;
color: #111;
}
table.data th span.Required,table.data td span.Required{
	margin-left: 10px;
	padding: 2px 10px;
	line-height: 100%;
	border-radius: 4px;
	background:  #E22B29;
	font-size: 75%;
    color: #FFF;
}

table.data td{
background: #FFF;
padding:20px 15px;
}
table.data td p{
margin-bottom: 5px;
}
table.data td.nyuko_day p:first-child{
	margin-top: 0px;
}
table.data td.nyuko_day p{
	margin-top: 20px;
margin-bottom: 5px;
}

/*form------------------------------------------------------------*/

.upload{
margin-bottom: 30px;
text-align:center;
}
.upload p{
text-align:center;
}
.upload .formError{
text-align:center;
}
input.btn[type="submit"] {
 border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
width: 50%;
text-align: center;
margin-bottom: 10px;
padding: 15px 2%;
background: #2A4CC2;
border: 1px solid #FFF;
border-radius: 0.3em;
color:#FFF;
font-size:130%;
}
input.btn[type="submit"]:hover {
    background: #182c75;
}

input.back[type="submit"]{
background:#AAA;
width: 20%;
padding: 6px 2%;
}
input.back[type="submit"]:hover {
    background:#575757;
}
input[type="text"],input[type="tel"],input[type="email"],input[type="number"],input[type="date"] {
border: 1px solid #CCC;
width: calc(100% - 20px);
	padding: 0px 10px;
	margin: 0px auto;
	height: 40px;
	font-size:110%;
}
input.w20[type="text"],input.w20[type="tel"],input.w20[type="email"],input.w20[type="number"]{
width: calc(20%);
}
input.w30[type="text"],input.w30[type="tel"],input.w30[type="email"],input.w30[type="number"]{
width: calc(30%);
}
input.w50[type="text"],input.w50[type="tel"],input.w50[type="email"],input.w50[type="number"]{
width: calc(50%);
}
select {
width: calc(50% - 20px);
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    text-indent: 1em;
    background:#FFF url(../images/arw_select_down.png) no-repeat;
    background-size:12px 12px;
    background-position: right 5px center;
    height: 50px;
    line-height: 40px;
    font-size: 110%;
    vertical-align: middle;
border: 1px solid #CCC;
    margin-bottom:5px;
}
.form-btn{
width: 90%;
	margin: 0px auto;
	text-align: center;
}
.form-btn p{
        margin: 0px auto;
        text-align: center;
}
.btn img{
	width:50%;
}
textarea.memo{
width: calc(100% - 10px);
border: 1px solid #CCC;
}
/*radio01 css*/
label{
cursor: pointer;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


input.post {
width:180px; margin:0 10px 10px 0;
}

.btnGray {
width:210px;
    margin:0 0px 10px 0;
    padding: 10px;
    cursor: pointer;
	background: #EEE;
    font-size: 100%;
}


.formError{
display:block;
color: #F00;
}
/*-----------------------------------------------------------------------*/
ul.radio_list01{
width: 100% ;
display:flex;/*横並び*/
}
ul.radio_list01 li{
	margin-right: 20px;
}



.m_radio {
    font-size: 110%;
    position: relative;
    margin-bottom: 45px;
	width: 120px;
}

.m_radio input[type=radio] {
    display: none;
}
.m_radio input[type=radio] + label {
    padding-left: 22px;
    cursor: pointer;
    display: inline-block;
}
.m_radio input[type=radio] + label:before {
    content: '';
    width: 18px;
    height: 18px;
    background: #fff;
    border: 1px solid #a0a0a0;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    left: 0;
	top: 0px;
    margin: auto;
}

.m_radio input[type=radio]:checked + label:after {
    opacity: 1;
}
.m_radio input[type=radio] + label:after {
    content: '';
    width: 10px;
    height: 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: 4px;
    left: 4px;
    background: #3D69B1;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    opacity: 0;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.m_radio.err input[type=radio] + label:before {
    background: #FFDFE0;
}
.m_radio.err input[type=radio] + label {
    color: #DE2524;
}
.m_radio.err input[type=radio] + label:after {
    background: #DE2524;
}
/*----------------------------------------------------------------------------------*/
.m_checkBox.dib{
    margin-bottom: 5px;
    display: inline-block;
}
.m_checkBox {
    font-size: 110%;
    position: relative;
    margin-bottom: 45px;
}
.m_checkBox input[type=checkbox], .m_checkBox input[type=radio]{
    display: none;
}
input[type="checkbox" i] {
    background-color: initial;
    cursor: default;
    margin: 3px 0.5ex;
    padding: initial;
    border: initial;
}
.m_checkBox input[type=checkbox] + label{
    cursor: pointer;
}
.m_checkBox input[type=checkbox] + label, .m_checkBox input[type=radio] + label{
    padding-left: 22px;
    cursor: pointer;
    display: inline-block;
}
.m_checkBox input[type=checkbox] + label:before{
    content: '';
    width: 18px;
    height: 18px;
    background: #fff;
    border: 1px solid #a0a0a0;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: 5px;
    left: 0;
    margin: auto;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -ms-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}
.m_checkBox input[type=checkbox]:checked + label:after{
    opacity: 1;
}
.m_checkBox input[type=checkbox] + label:after{
    content: '';
    width: 11px;
    height: 6px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: 9px;
    left: 3px;
    transform: rotate(-44deg);
    transform-origin: center;
    opacity: 0;
}
.m_checkBox input[type=checkbox]:checked + label:before{
    background: #3D69B1;
    border-color: #3D69B1;
}
.m_checkBox.err input[type=checkbox] + label:before{
    background: #C80019;
    border-color: #C80019;
}
.m_checkBox.err input[type=checkbox] + label{
    color: #C80019;
}

/*--err--------------------------------------------------------------------------*/
input.err {
border: 1px solid #C80019;
background: rgb(255, 227, 228);
}
select.err {
    border: 1px solid #C80019;
    background: rgb(255, 227, 228);
    }
 
table.data td p.err{
color:  #C80019;
font-size: 120%;
}
table.data td p.err_txt{
color:  #C80019;
margin-bottom: 0px;
}
/*----------------------------------------------------------------------------*/
button.m_btn{
margin: 0px auto;
cursor: pointer;
text-align: center;
}
button.m_btn .txt {
margin: 0px auto;
font-size: 100%;
text-align: center;

}
button.m_btn .txt {
margin: 0px auto;
    background: #ef9024;
    color: #fff;
    text-decoration: none;
    text-align: center;
    padding: 10px 30px;
    border-radius: 3px;

}
/*PRIVACY------------------------------------------------------------*/
#contact_privacy{
width:100%;
overflow: auto;
margin:0px 0px 30px 0px;
}
#contact_privacy .title{
padding:6px;
border:1px solid #666666;
background: #666666;
color:#FFFFFF;
font-size: 14px;
}
#contact_privacy_area{
padding:5px 5px 5px 5px;
height:80px;
overflow: auto;
border:1px solid #AAAAAA;
background:#FFFFFF;
color: #333333;
font-size:12px;
line-height:16px;
}
.contact_privacy_btn{
	padding:5px;
	background:#FFFF99;
	margin:0px 0px 10px 0px;
}

.contact_privacy_btn p{
font-size:12px;
line-height:16px;
}
/*-POLICY-------------------------------------------------------------------------*/
.policy{
	overflow: hidden;
	margin-bottom: 10px;
}

.policy p{
	width: 90%;
	margin: 0px auto;
	font-size: 85%;
	line-height: 120%;
}
.policy a{
	color: #0015ED;
}
div.more{
	width:90%;
	margin: 0px auto;
	margin-bottom: 20px;
text-align: center;
}
div.close{
text-align: right;
}
div.more a{
	color: #0045FF;
	font-size: 90%;
}
p.policy-txt{
	width: 90%;
	margin: 10px auto;
	margin-bottom: 15px;
	font-size: 80%;
	line-height: 160%;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"
}
p.policy-comment{
	width: 90%;
	margin: 0px auto;
	font-size: 85%;
	line-height: 120%;
}
h3.policy-txt{
	width: 96%;
	margin: 0px auto;
	margin-bottom: 5px;
	padding: 2%;
	background: #E8E8E8;
	font-size: 90%;
	line-height: 130%;
		font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif"
}
/*20191118--------------------------------------------*/
#title {
    margin: 0px 0px 10px 0px;
    padding: 15px 10px 15px 10px;
    border-bottom: 3px solid #FC0;
    font-size: 20px;
    font-weight: bold;
    color: #FFF;
}
/*タイトルの色分けクラス名*/
#title.red{
    background: #E22B29;
}
#title.blue{
    background: #039;
}
#title.green{
    background: #360;
}
#title.black{
    background: #333;
}