@charset "UTF-8";
.no-webp .pagetitleBox {
  background: url("../images/contact/pagetitle_bg_sp.jpg") no-repeat center center;
  background-size: cover; }
.webp .pagetitleBox {
  background: url("../images/contact/pagetitle_bg_sp.webp") no-repeat center center;
  background-size: cover; }
@media (min-width: 669px) {
  .no-webp .pagetitleBox {
    background: url("../images/contact/pagetitle_bg.jpg") no-repeat center center;
    background-size: cover; }
  .webp .pagetitleBox {
    background: url("../images/contact/pagetitle_bg.webp") no-repeat center center;
    background-size: cover; } }

.common__contact {
  display: none; }

.topicPath {
  border-bottom: 1px solid #b2b2b2; }

.contact__telBox {
  padding: 20px;
  margin: 30px 0;
  background-color: #e5e5e5; }
  .contact__telBox-header {
    text-align: center;
    border-bottom: 1px solid #999;
    margin: 0 0 10px;
    font-weight: 500;
    font-size: 116%;
    padding-bottom: 10px; }
    @media (min-width: 669px) {
      .contact__telBox-header {
        margin-bottom: 0;
        padding: 20px 0;
        border-bottom: 0;
        border-right: 1px solid #999;
        width: 24.545454%; } }
  .contact__telBox p {
    margin: 0;
    text-align: center; }
    @media (min-width: 669px) {
      .contact__telBox p {
        width: calc(100% - 24.545454%);
        padding: 20px 30px; }
        .contact__telBox p a {
          margin-right: 30px; }
          .contact__telBox p a:hover {
            cursor: default;
            text-decoration: none; } }
  @media (min-width: 669px) {
    .contact__telBox {
      margin: 50px 0;
      padding: 12px 0; } }
.contact__about {
  border: 1px solid #999;
  padding: 20px;
  margin: 30px 0; }
  .contact__about-header {
    margin: 0 0 10px;
    font-weight: 500;
    font-size: 116%; }
  .contact__about ul {
    margin-top: 0;
    margin-bottom: 0; }
  @media (min-width: 669px) {
    .contact__about {
      margin: 50px 0;
      padding: 30px; } }
.contact__caution p {
  margin: 0 0 5px; }
  .contact__caution p:last-child {
    margin-bottom: 0; }
.contact__privacy h2 {
  font-weight: 500;
  font-size: 108%;
  margin: 0 0 10px; }
.contact__privacy p {
  margin: 0 0 1em; }
  .contact__privacy p:last-child {
    margin-bottom: 0; }
.contact__btns {
  margin-top: 40px;
  text-align: center; }
  .contact__btns input {
    font-family: YakuHanJP, "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Helvetica", "Arial", "Verdana", sans-serif;
    text-align: center;
    border: 0;
    width: 100%;
    color: #fff;
    height: 70px;
    font-size: 116%;
    margin-bottom: 10px;
    border-radius: 100px; }
    .contact__btns input:last-child {
      margin-bottom: 0; }
    .contact__btns input.check, .contact__btns input.send {
      background-color: #055482; }
    .contact__btns input.back {
      background-color: #555; }
    @media (min-width: 669px) {
      .contact__btns input {
        font-size: 108%;
        margin: 0 7px;
        width: 290px; }
        .contact__btns input:hover {
          cursor: pointer; } }
  @media (min-width: 669px) {
    .contact__btns {
      margin-top: 70px; } }
.contact__form {
  margin: 30px 0; }
  .contact__form > dt {
    text-align: center;
    background-color: #e6eef2;
    padding: 10px;
    margin-bottom: 15px; }
    .contact__form > dt .hissu {
      margin-left: 10px; }
    @media (min-width: 669px) {
      .contact__form > dt {
        width: 19.5%;
        box-sizing: border-box;
        text-align: left;
        border-bottom: 1px solid #999;
        margin-bottom: 0;
        position: relative;
        padding: 15px; }
        .contact__form > dt .hissu {
          margin-left: 0; } }
  .contact__form > dd {
    margin: 0;
    margin-bottom: 30px; }
    .contact__form > dd:last-child {
      margin-bottom: 0; }
    .contact__form > dd p {
      margin: 0 0 10px; }
      .contact__form > dd p:last-child {
        margin-bottom: 0; }
    .contact__form > dd dl {
      margin: 0; }
      .contact__form > dd dl dt {
        font-weight: 500;
        margin-bottom: 7px;
        font-size: 108%; }
      .contact__form > dd dl dd {
        margin: 0 0 15px; }
        .contact__form > dd dl dd:last-child {
          margin-bottom: 0; }
    .contact__form > dd div {
      margin-bottom: 15px; }
      .contact__form > dd div:last-child {
        margin-bottom: 0; }
      .contact__form > dd div p {
        margin: 0 0 5px; }
    .contact__form > dd div.flex-box {
      margin-bottom: -15px; }
      .contact__form > dd div.flex-box div {
        margin-right: 10px; }
        .contact__form > dd div.flex-box div:last-child {
          margin-bottom: 15px; }
    @media (min-width: 669px) {
      .contact__form > dd {
        width: calc(100% - 19.5%);
        box-sizing: border-box;
        border-bottom: 1px solid #999;
        margin-bottom: 0;
        padding: 15px; } }
  .contact__form_example {
    display: block;
    margin-top: 5px; }
  .contact__form ul {
    list-style-type: none;
    margin: 0;
    padding: 0; }
    .contact__form ul li {
      margin-bottom: 7px; }
      .contact__form ul li:last-child {
        margin-bottom: 0; }
  @media (min-width: 669px) {
    .contact__form {
      border-top: 1px solid #999;
      margin: 50px 0; } }
.contact input[type="text"], .contact input[type="tel"], .contact input[type="email"], .contact textarea, .contact select {
  width: 100%;
  border: 1px solid #808080;
  box-sizing: border-box;
  padding: 5px;
  font-family: YakuHanJP, "Noto Sans JP", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "Helvetica", "Arial", "Verdana", sans-serif;
  font-size: 108%;
  -webkit-appearance: none; }
  @media (min-width: 669px) {
    .contact input[type="text"], .contact input[type="tel"], .contact input[type="email"], .contact textarea, .contact select {
      font-size: 100%; } }
.contact input[type="text"]#age, .contact input[type="tel"]#age, .contact input[type="email"]#age {
  width: 68px; }
.contact input[type="text"]#graduateYear, .contact input[type="tel"]#graduateYear, .contact input[type="email"]#graduateYear {
  width: 105px; }
@media (min-width: 669px) {
  .contact input[type="text"], .contact input[type="tel"], .contact input[type="email"] {
    width: 480px;
    height: 45px; }
    .contact input[type="text"]#zipcode, .contact input[type="tel"]#zipcode, .contact input[type="email"]#zipcode {
      width: 169px; }
    .contact input[type="text"]#tel, .contact input[type="tel"]#tel, .contact input[type="email"]#tel {
      width: 224px; }
    .contact input[type="text"]#address1, .contact input[type="text"]#address2, .contact input[type="text"]#academichistory, .contact input[type="text"]#gakubu, .contact input[type="text"]#gakka, .contact input[type="tel"]#address1, .contact input[type="tel"]#address2, .contact input[type="tel"]#academichistory, .contact input[type="tel"]#gakubu, .contact input[type="tel"]#gakka, .contact input[type="email"]#address1, .contact input[type="email"]#address2, .contact input[type="email"]#academichistory, .contact input[type="email"]#gakubu, .contact input[type="email"]#gakka {
      width: 100%; } }
.contact select#graduateMonth {
  width: 80px; }
@media (min-width: 669px) {
  .contact select {
    width: auto;
    height: 45px;
    -webkit-appearance: auto; } }
.contact textarea {
  height: 10em; }
  @media (min-width: 669px) {
    .contact textarea {
      height: 14em;
      vertical-align: top; } }
.contact__item {
  margin-top: 40px; }
@inclide {
  .contact__item {
    margin-top: 70px; } }
  .contact__item > ul {
    list-style-type: none;
    margin: 0 0 10px;
    padding-left: 0; }
    .contact__item > ul:last-child {
      margin-bottom: 0; }
    .contact__item > ul li {
      margin-bottom: 7px; }
      .contact__item > ul li:last-child {
        margin-bottom: 0; }

.hissu {
  font-weight: normal;
  color: #fff;
  background-color: #e84566;
  display: inline-block;
  padding: 5px 10px;
  line-height: 1;
  font-size: 10px; }

.stepBar {
  position: relative;
  list-style: none;
  margin: 30px 0;
  padding: 0;
  text-align: center;
  width: 100%;
  overflow: hidden; }
  .stepBar .step {
    font-weight: bold;
    position: relative;
    float: left;
    display: inline-block;
    line-height: 40px;
    padding: 0 10px 0 0px;
    background-color: #6998b4;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    white-space: nowrap;
    width: 43%;
    margin-bottom: 0 !important; }
    .stepBar .step:first-child {
      width: 24%;
      -moz-border-radius-topleft: 4px;
      -webkit-border-top-left-radius: 4px;
      border-top-left-radius: 4px;
      -moz-border-radius-bottomleft: 4px;
      -webkit-border-bottom-left-radius: 4px;
      border-bottom-left-radius: 4px; }
      .stepBar .step:first-child::before, .stepBar .step:first-child::after {
        content: none; }
      @media (min-width: 669px) {
        .stepBar .step:first-child {
          width: 319px !important;
          -moz-border-radius-topleft: 0;
          -webkit-border-top-left-radius: 0;
          border-top-left-radius: 0;
          -moz-border-radius-bottomleft: 0;
          -webkit-border-bottom-left-radius: 0;
          border-bottom-left-radius: 0; }
          .stepBar .step:first-child::after {
            content: ''; } }
      @media (min-width: 1199px) {
        .stepBar .step:first-child {
          width: 346px !important; } }
    .stepBar .step:last-child {
      width: 33%;
      -moz-border-radius-topright: 4px;
      -webkit-border-top-right-radius: 4px;
      border-top-right-radius: 4px;
      -moz-border-radius-bottomright: 4px;
      -webkit-border-bottom-right-radius: 4px;
      border-bottom-right-radius: 4px; }
      @media (min-width: 669px) {
        .stepBar .step:last-child {
          width: 336px !important;
          margin-right: 0;
          -moz-border-radius-topright: 0;
          -webkit-border-top-right-radius: 0;
          border-top-right-radius: 0;
          -moz-border-radius-bottomright: 0;
          -webkit-border-bottom-right-radius: 0;
          border-bottom-right-radius: 0; }
          .stepBar .step:last-child::after {
            display: none; } }
      @media (min-width: 1199px) {
        .stepBar .step:last-child {
          width: 361px !important; } }
    .stepBar .step::before, .stepBar .step::after {
      position: absolute;
      left: -5px;
      display: block;
      content: '';
      background-color: #6998b4;
      border-left: 2px solid #FFF;
      width: 10px;
      height: 20px; }
    .stepBar .step::after {
      top: 0;
      -moz-transform: skew(30deg);
      -ms-transform: skew(30deg);
      -webkit-transform: skew(30deg);
      transform: skew(30deg); }
      @media (min-width: 669px) {
        .stepBar .step::after {
          content: '';
          background-color: transparent;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 25px 0 25px 15px;
          border-color: transparent transparent transparent #6998b4;
          position: absolute;
          right: -15px;
          top: 0;
          left: auto;
          bottom: auto;
          -moz-transform: skew(0);
          -ms-transform: skew(0);
          -webkit-transform: skew(0);
          transform: skew(0); } }
    .stepBar .step::before {
      bottom: 0;
      -moz-transform: skew(-30deg);
      -ms-transform: skew(-30deg);
      -webkit-transform: skew(-30deg);
      transform: skew(-30deg); }
      @media (min-width: 669px) {
        .stepBar .step::before {
          display: none; } }
    .stepBar .step.current {
      background-color: #055482; }
      .stepBar .step.current::before, .stepBar .step.current::after {
        background-color: #055482; }
      @media (min-width: 669px) {
        .stepBar .step.current::before {
          content: '';
          background-color: transparent;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 25px 0 25px 15px;
          border-color: transparent transparent transparent #6998b4;
          position: absolute;
          right: -15px;
          top: 0;
          left: auto; } }
      @media (min-width: 669px) {
        .stepBar .step.current::after {
          border-color: transparent transparent transparent #055482;
          background-color: transparent; } }
    @media (min-width: 669px) {
      .stepBar .step {
        width: 319px !important;
        display: block;
        line-height: 50px;
        height: 50px;
        padding: 0;
        font-size: 116%;
        font-weight: normal;
        margin-right: 23px; } }
    @media (min-width: 1199px) {
      .stepBar .step {
        width: 346px !important; } }
  @media (min-width: 669px) {
    .stepBar {
      margin-left: auto;
      margin-right: auto;
      margin: 50px 0 40px; } }

label.radio {
  cursor: pointer;
  margin-right: 10px; }
  label.radio input {
    display: none; }
    label.radio input + span {
      padding-left: 25px;
      position: relative;
      margin-right: 20px; }
      label.radio input + span::before {
        content: "";
        display: block;
        position: absolute;
        top: 4px;
        left: 0;
        width: 16px;
        height: 16px;
        border: 1px solid #808080;
        border-radius: 50%; }
    label.radio input:checked + span::after {
      content: "";
      display: block;
      position: absolute;
      top: 8px;
      left: 4px;
      width: 10px;
      height: 10px;
      background: #1a1a1a;
      border-radius: 50%; }

label.checkbox {
  cursor: pointer;
  margin-right: 10px; }
  label.checkbox input {
    display: none; }
    label.checkbox input + span {
      padding-left: 25px;
      position: relative;
      margin-right: 20px; }
      label.checkbox input + span::before {
        content: "";
        display: block;
        position: absolute;
        top: 4px;
        left: 0;
        width: 15px;
        height: 15px;
        border: 1px solid #808080;
        background-color: #fff; }
    label.checkbox input:checked + span::after {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 5px;
      width: 6px;
      height: 14px;
      transform: rotate(40deg);
      border-bottom: 3px solid #1a1a1a;
      border-right: 3px solid #1a1a1a; }

.entry__form > dt p {
	margin: 0;
}

.w_100 {
	width: 100%;
}

/*確認画面と完了画面を非表示*/
.confirm_area,
.thanks_area {
	display: none;
}

/*デフォルトのサンクスメッセージを非表示*/
.wpcf7-response-output{
	display: none;
}

.zip_flex {
    display: flex;
    align-items: center;
}

.entry .zip_flex input[type=text] {
	width: 120px;
	max-width: 100%;
}

.zip_flex span:first-child input[type=text] {
	width: 100px;
}

.wpcf7-list-item:first-child {
	margin-left: 0;
}

span.newtab {
	vertical-align: middle;
    width: 12px;
	height: 12px;
    margin: 0 5px;
	display: inline-block;
	background: url("../images/contact/newwindow_icon.png") no-repeat center center / contain;
}