textarea {
    font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Noto Sans Japanese", "游ゴシック体", "Yu Gothic Medium", YuGothic, sans-serif;
}

/* MaxWidthContent */
.MaxWidthContent{ max-width: 990px; }

/* Application */
.Application{ width: auto; height: auto; margin: 145px 0 50px 0;line-height: 2em;}
.ApplicationBox{ width: auto; margin: auto; padding: 30px 0px; }
.ApplicationBox h1{ font-weight: 700; font-size: 24px; }
.Application a{ color: #D2232A;}

/* breadcrumb navigation bar */
.NavigationTab{ margin: 15px 0 20px 0; }
.NavigationTab .breadcrumb { display:flex; flex-wrap: wrap; justify-content: center; overflow: hidden; border-radius: 0px; width: 100%; }
.NavigationTab .breadcrumb a { cursor:default; text-decoration: none; outline: none; display: block; text-align: center; width: 20%; float: left; font-size: 16px;  line-height: 36px; /*color: white;*/ padding: 0 10px 0 30px; background: #DCDCDC; position: relative; }
.NavigationTab .breadcrumb.long a { width: calc(100% / 3);  }
.NavigationTab .breadcrumb a:first-child { padding-left: 26px; border-radius: 0px; }
.NavigationTab .breadcrumb a:first-child:before { left: 14px; }
.NavigationTab .breadcrumb a:last-child { border-radius: 0px; padding-right: 20px; }
/*.NavigationTab .breadcrumb a.active, .NavigationTab .breadcrumb a:hover{ background: #333; background: linear-gradient(#333, #000); }*/
/*.NavigationTab .breadcrumb a.active:after, .NavigationTab .breadcrumb a:hover:after { background: #333; background: linear-gradient(135deg, #333, #000); }*/
.NavigationTab .breadcrumb a.active:after{ background: #333; background: linear-gradient(135deg, #333, #000); }
.NavigationTab .breadcrumb a:after { content: ''; position: absolute; top: 0; right: -18px; width: 38px; height: 38px; transform: scale(0.707) rotate(45deg); z-index: 1; /*background: #000;*/ box-shadow: 2px -2px 0 2px rgba(255, 255, 255, 1),  3px -3px 0 2px rgba(255, 255, 255, 1); border-radius: 0 0px 0 50px; }
.NavigationTab .breadcrumb a:last-child:after { content: none; }
.NavigationTab .breadcrumb a:before { border-radius: 100%; width: 20px; height: 20px; line-height: 20px; margin: 8px 0; position: absolute; top: 0; left: 30px; background: #fff; background: linear-gradient(#444, #222); font-weight: 600; }
.flat a, .flat a:after { background: #DCDCDC; color: black;}
.flat a:before { background: white; box-shadow: 0 0 0 1px #fff;}
.flat a.active, .flat a.active:after{ background: #000; color: #fff; }
/*.flat a:hover, .flat a.active, .flat a:hover:after, .flat a.active:after{ background: #000; color: #fff; }*/

.sp-form-container{ overflow: auto;}

/* ApplicationForm */
.ApplicationForm{ margin-bottom: 40px;}
.ApplicationForm h2{ font-size: 20px;  font-weight: 600; background: #DCDCDC; padding: 5px 15px; overflow: auto;}
.ApplicationForm .sp-form-html{ text-align: left;  margin: 0; font-size: 24px; font-weight: 600; background: #DCDCDC; padding: 5px 15px; display: block; height: auto; overflow: auto; }
.ApplicationForm .sp-form-html p{ margin: 0;}
.ApplicationForm .LastChild{ border-bottom: 0px solid #DCDCDC!important; }
.ApplicationForm .Privacy{margin: 0px auto; text-align: center; padding: 20px;}
.ApplicationForm .Note{margin: 25px auto 0; text-align:left; padding: 20px; max-width: 680px; background: #f8f8f8; font-weight: bold; border: 1px solid #eee;}
.ApplicationForm .Note .Caution{color: #D2232A;}
.ApplicationForm .sp-form-field{ display: flex; flex-wrap: wrap; justify-content: center; padding: 15px 0; border-bottom: 1px solid #DCDCDC; }
.ApplicationForm .sp-form-field .sp-form-label{ flex-basis: 30%;  padding:0 40px 0 10px;  font-weight: 600; }
.ApplicationForm .sp-form-field .sp-form-label .sp-form-required{ color: #D2232A;}
.ApplicationForm .sp-form-field .sp-form-data{ flex-basis: 70%;}
.ApplicationForm .sp-form-field .sp-form-data input[type=text]{ background-color: #fff; border: 1px solid #DCDCDC; width: 100%; display: block; padding: 14px; font-size: 16px; outline: none;}
.ApplicationForm .sp-form-field .sp-form-data input[type=email]{ background-color: #fff; border: 1px solid #DCDCDC; width: 100%; display: block; padding: 14px; font-size: 16px; outline: none;}
.ApplicationForm .sp-form-field .sp-form-data input[type=password]{ background-color: #fff; border: 1px solid #DCDCDC; width: 100%; display: block; padding: 14px; font-size: 16px; outline: none;}
.ApplicationForm .sp-form-field .sp-form-data input[type=tel]{ background-color: #fff; border: 1px solid #DCDCDC; width: 100%; display: block; padding: 14px; font-size: 16px; outline: none;}
.ApplicationForm .sp-form-field .sp-form-data input[type=number]{ background-color: #fff; border: 1px solid #DCDCDC; width: 100%; display: block; padding: 14px; font-size: 16px; outline: none;}
.ApplicationForm .sp-form-field .sp-form-data input[type=url]{ background-color: #fff; border: 1px solid #DCDCDC; width: 100%; display: block; padding: 14px; font-size: 16px; outline: none;}
.ApplicationForm .sp-form-field .sp-form-data input[type=checkbox]{ transform: scale(1.3); margin-right: 3px; }
.ApplicationForm .sp-form-field .sp-form-data input[type=radio]{ transform: scale(1.3); margin-right: 3px; }
.ApplicationForm .sp-form-field .sp-form-data textarea{ background-color: #fff; border: 1px solid #DCDCDC; width: 100%; display: block; padding: 14px; font-size: 16px; outline: none;}
.ApplicationForm .sp-form-field .sp-form-data select { position: relative; font-size: 16px; display: block; width: 100%; padding: 14px 14px; -webkit-appearance: none; -moz-appearance: none; appearance: none; box-sizing: border-box; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; border:1px solid #DCDCDC; z-index: 1; }
.ApplicationForm .sp-form-field .sp-form-data .sp-form-dropdown{ width: 100%; position: relative;}
.ApplicationForm .sp-form-field .sp-form-data .sp-form-dropdown .sp-form-dropdown-icon{ position: absolute; width: 12px; height: 12px; top: 18px; right: 15px; z-index: 2; background-image: url('../images/icon/icon-chevron-down-solid.svg'); background-repeat: no-repeat; background-size: contain;}
.sp-form-selection{ margin-right: 15px;}
.sp-form-noted{ font-size: 14px; margin-top: 5px; color: #444; display: block;}
.sp-form-error{ font-size: 14px; margin-top: 5px; color: #D2232A; font-weight: 600; display: block;}
.sp-form-message{ margin: 10px 0;}
.AllError{ font-size: 18px;  font-weight: 500; color: #D2232A; text-align: center; padding: 20px; border: 1px solid #F70606; margin-bottom: 20px; display: block; }
.sp-form-interaction{ text-align: center; display: block; padding: 40px 0; overflow: auto; }
.sp-form-interaction input[type=submit]{ background-color: #000; color: #fff; width: 100%; display: inline-block; max-width: 180px; cursor: pointer; letter-spacing: 2px; font-weight: 600; padding: 10px; border: 0; outline: none;}
.sp-form-interaction input[type=submit]:hover{ background-color: #D2232A;}
.sp-form-interaction button, .sp-form-interaction a.link{ background-color: #000; color: #fff; width: 100%; display: inline-block; max-width: 180px; cursor: pointer; font-size: 16px; letter-spacing: 2px; padding: 10px; font-weight: 600; border: 0; outline: none;}
.sp-form-interaction button:hover{ background-color: #D2232A;}
.sp-form-interaction .sp-form-prev-button, .sp-form-interaction a.link{ background-color: #DCDCDC; color: #000; margin-right: 10px;}
.sp-form-interaction .sp-form-prev-button:hover, .sp-form-interaction a.link:hover{ color: #fff;}
.SPform{ display: flex; justify-content: space-between;}
.SPform input[type=text]{ width: 70%!important; margin-right: 10px;}
.SPform .sp-form-dropdown{ width: 30%!important; position: relative;}
.SPform .sp-form-dropdown .sp-form-dropdown-icon{ position: absolute; width: 12px; height: 12px; top: 18px; right: 15px; z-index: 2; background-image: url('../images/icon/icon-chevron-down-solid.svg'); background-repeat: no-repeat; background-size: contain;}
.ApplicationForm .sp-form-data .g-recaptcha{margin: 30px auto 0; display: block; max-width: 304px;}

.LoginForm{ overflow: auto; font-weight: 600; margin: 0 auto; max-width: 680px}
.LoginForm .sp-form-field{ display: block; padding: 15px 0 0 0; }
.LoginForm input[type=text]{ background-color: #DCDCDC; border: 1px solid #DCDCDC; width: 100%; margin-top: 2px; display: block; padding: 10px; font-size: 16px; outline: none;}
.LoginForm input[type=password]{ background-color: #DCDCDC; border: 1px solid #DCDCDC; width: 100%; margin-top: 2px; display: block; padding: 10px; font-size: 16px; outline: none;}
.LoginForm .sp-form-interaction{ padding: 20px 0;}
.LoginForm .sp-form-login-button{ background-color: #DCDCDC; color: #000; margin-right: 10px;}
.LoginForm .sp-form-login-button:hover{ color: #fff;}
.LoginForm a{ color: #000;}
.LoginForm a:hover{ color: #D2232A;}
.LoginInfos{ max-width: 100%; margin: 50px auto; font-size: 18px; line-height: 1.56em; padding: 0;}
.LoginInfos h2{ text-align: center; font-size: 26px; font-weight: 600; margin-bottom: 40px;}
.LoginInfos .member-button{ display: block; padding: 5px 20px; background-color: #000; color: #fff; margin-right: 10px;color: #fff; max-width: 180px; margin: 20px auto; text-align: center;}
.LoginInfos .member-button:hover{ color: #000;background-color: #DCDCDC;}

.LoginInfos .Infos{}
.LoginInfos .Infos ul{display: block;list-style: circle inside;}
.LoginInfos .Infos ul li{ margin-bottom: 10px;list-style: decimal;}
.LoginInfos .SmallFont{ font-size: 13px; font-weight: 600; line-height: 1.5em;}
.LineHR{ display: block; height: 1px; border: 0; border-top: 1px solid #DCDCDC; margin: 40px 0; padding: 0;}

.sp-form-password-reenter{ display: block; padding-top: 15px;}

.InquiryLink{ text-align: right; display: block; margin: 10px 0; clear: both; overflow: auto;}
.InquiryLink.bottom{ text-align: center; display: block; margin: 30px 0 10px; clear: both; overflow: auto; }
.InquiryLink a{ display: inline-block; padding: 8px 10px; width: 300px; font-weight: 600; text-align: center; color: #fff; background-color: #000;}
.InquiryLink a:hover{ background-color: #D2232A;}

.Bold{ font-weight: 600; display: block; text-align: right;}

.MarginTopSection{ margin-top: 40px!important;}

.ThanksPage .sp-form-html{ background: #fff; }
.ThanksPage .sp-form-html p{ font-size: 16px; }
.ThanksPage .sp-form-html .Thanks{ padding: 40px 0; font-size: 18px; text-align: center!important;; font-weight: 600;}


/* -------------------------------------  1259px  ------------------------------------- */
@media(max-width:1259px)
{
    /* MaxWidthContent */
    .MaxWidthContent{ max-width: 990px; }
}


/* -------------------------------------  1023px  ------------------------------------- */
@media(max-width:1023px)
{
	.Application{ margin: 50px 0 50px 0;}
    /* MaxWidthContent */
    .MaxWidthContent{ max-width: 90%; }

    /* breadcrumb navigation bar */
    .NavigationTab .breadcrumb a { font-size: 14px; }

    /* ApplicationForm */
    .SPform input[type=text]{ width: 60%!important;}
    .SPform .sp-form-dropdown{ width: 40%!important;}

}


/* -------------------------------------  767px  ------------------------------------- */
@media(max-width:767px)
{
    /* breadcrumb navigation bar */
    .NavigationTab .breadcrumb { display: none; }

    /* ApplicationForm */
    .ApplicationForm .sp-form-field{ display: block; }
    .ApplicationForm .sp-form-field .sp-form-label{ width: 100%; font-size: 15px; padding-right: 0px; margin-bottom: 5px; }
    .ApplicationForm .sp-form-field .sp-form-data{ width: 100%; }

    .ApplicationForm .sp-form-field .sp-form-data input[type=text]{ padding: 10px; font-size: 16px; }
    .ApplicationForm .sp-form-field .sp-form-data input[type=email]{ padding: 10px; font-size: 16px; }
    .ApplicationForm .sp-form-field .sp-form-data input[type=tel]{ padding: 10px; font-size: 16px; }
    .ApplicationForm .sp-form-field .sp-form-data input[type=number]{ padding: 10px; font-size: 16px; }
    .ApplicationForm .sp-form-field .sp-form-data input[type=url]{ padding: 10px; font-size: 16px; }
    .ApplicationForm .sp-form-field .sp-form-data select{ padding: 10px; font-size: 16px; }
    .ApplicationForm .sp-form-field .sp-form-data .sp-form-dropdown .sp-form-dropdown-icon{ top: 14px;}
    .ApplicationForm .sp-form-field .sp-form-data input[type=checkbox]{ margin-left: 2px; }
    .ApplicationForm .sp-form-field .sp-form-data input[type=radio]{ margin-left: 2px; }
    .SPform .sp-form-dropdown .sp-form-dropdown-icon{ top: 14px;} 

    .LoginForm input[type=text]{ padding: 10px;}
    .LoginForm input[type=password]{ padding: 10px; }
    .LoginInfos{ font-size: 15px;}
    .LoginInfos h2{ font-size: 24px; }

}


/* -------------------------------------  506px  ------------------------------------- */
@media(max-width:506px)
{
    /* ApplicationForm */
    .ApplicationForm .sp-form-interaction button{ max-width: 160px; }
    .ApplicationForm .sp-form-field .sp-form-data .sp-form-dropdown .sp-form-dropdown-icon{ right: 10px;}
    .SPform input[type=text]{ width: 60%!important;}
    .SPform .sp-form-dropdown{ width: 40%;}
    .SPform .sp-form-dropdown .sp-form-dropdown-icon{ right: 10px;} 

    .InquiryLink{ text-align: center;}
}