@charset "UTF-8";

/*------------------------------------------------
　　　　お問い合わせ
------------------------------------------------*/
.contact__lead{
    line-height: 1.6;
    padding-bottom: 3em;
    text-align: center;
    font-weight: bold;
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.contact__intro{
    display: flex;
    justify-content: center;
}
.contact__intro > *{ flex-shrink: 1;}
.contact__intro__list{
    font-weight: bold;
    margin-bottom: 3.6em;
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.contact__intro__list li{
    line-height: 1.6;
    font-weight: bold;
    padding-left: 1.4em;
    position: relative;
    margin-bottom: 0.4em;
    font-feature-settings: "palt";
}
.contact__intro__list li::before{
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    background: url("../img/list_asset1.svg") no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 0.35em;
    left: 0;
}
.contact__form{
    padding: 2em 3em;
    background: rgb(221,225,243);
    background: -moz-linear-gradient(top,  rgba(221,225,243,1) 0%, rgba(243,241,248,1) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(221,225,243,1)), color-stop(100%,rgba(243,241,248,1)));
    background: -webkit-linear-gradient(top,  rgba(221,225,243,1) 0%,rgba(243,241,248,1) 100%);
    background: -o-linear-gradient(top,  rgba(221,225,243,1) 0%,rgba(243,241,248,1) 100%);
    background: -ms-linear-gradient(top,  rgba(221,225,243,1) 0%,rgba(243,241,248,1) 100%);
    background: linear-gradient(to bottom,  rgba(221,225,243,1) 0%,rgba(243,241,248,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dde1f3', endColorstr='#f3f1f8',GradientType=0 );
    box-sizing: border-box;
    border-radius: 0.5em;
}
.contact__form__lead{ margin-bottom: 1em;}
form .contact__form__item{
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 1em 0;
    /* border-bottom: solid 0.1em #ccc; */
}
/* form dl:nth-of-type(1){ border-top: solid 0.1em #ccc;} */
form .contact__form__item__name{
    font-weight: bold;
    width: 14em;
    line-height: 1.6;
    /* display: flex;
    align-items: center; */
}
form .contact__form__item__name p{
    display: flex;
    align-items: center;
}
form dd.contact__form__inputbox{ width: calc( 100% - 11em);}
@media screen and (max-width: 740px) {
    .contact__form{ padding: 2em 1.6em;}
    form dt,form dd.contact__form__inputbox{ width: 100%;}
    form dt{ padding-bottom: 0.2em;}
    form .contact__form__item__name{ margin-bottom: 0.2em;}
}
.required{
    font-size: 80%;
    color: #fff;
    display: inline-block;
    background-color: #fe7301;
    padding: 0 0.4em;
    margin-left: 0.3em;
    border-radius: 0.2em;
}
.sub{
    font-size: 80%;
}
.sub2{
    display: inline-block;
    font-size: 80%;
    line-height: 1.4;
}
input,textarea,select{ font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;}
form input[type="text"], form textarea {
    border: none;
    border-radius: 0.4em;
    padding: 0.3em 0.5em;
    box-sizing: border-box;
}
form textarea { width: 100%;}
input:focus, select:focus, textarea:focus {
    outline: 2px #fe8901 solid;
}
.select {
  display: inline-block;
  position: relative;
  vertical-align: middle;
}
 
select {
  appearance: none;
  width: auto;
  padding: 0.5em 0.8em;
  padding-right: 3em;
  border: none;
  outline: 0;
  background: #fff;
  background-image: none;
  box-shadow: none;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  cursor: pointer;
  border-radius: 0.4em;
  color: #000;
}
 
.select::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0.5em;
  width: 0;
  height: 0;
  border-width: 0.7em 0.45em 0 0.45em;
  margin-top: -0.3em;
  border-style: solid;
  border-color: #999 transparent transparent transparent;
  pointer-events: none;
}

.btn_list{
    display: flex;
    flex-wrap: wrap;
    margin: 2em 0 0;
    justify-content: space-around;
}
.btn_list li{
    flex-shrink: 0;
    width: 45%;
}
form input[type="submit"], form input[type="reset"], input[type="button"] {
    display: block;
    width: 100%;
    height: 3em;
    border-radius: 5em;
    border: none;
    color: #fff;
    font-weight: bold;
    font-size: 110%;
    cursor: pointer;
}
form input[type="submit"]{
    background-color: #4636bd;
}
form input[type="reset"],
input[type="button"]{
    background-color: #aaa;
}
@media screen and (max-width: 580px) {
    .btn_list li{
        width: 100%;
        margin-bottom: 0.5em;
    }
    form input[type="submit"], form input[type="reset"], input[type="button"] { height: 3.6em;}
}
@media screen and (min-width: 740px) {
    form input[type="submit"]:hover{ background-color: #5944fa;}
    form input[type="reset"]:hover,
    input[type="button"]:hover{ background-color: #b9b9b9;}
}

/*------------------------------------------------
　　　　確認・エラー
------------------------------------------------*/
.confirm{ text-align: center;}
.error__lead,
.confirm__lead{
    line-height: 1.4;
    padding-bottom: 2em;
    font-weight: bold;
}
.error__lead::after,
.confirm__lead::after{
    content: "";
    display: block;
    width: 100%;
    height: 0.2em;
    background: url("../img/h3_line.svg") repeat-x 0 0;
    background-size: cover;
    margin-top: 1.4em;
}
.error__messe-list{
    padding: 1em 0;
}
.error__messe-list li{
    line-height: 1.4;
    padding-bottom: 0.4em;
    font-weight: bold;
}
.confirm dl{
    text-align: left;
    display: flex;
    flex-wrap: wrap;
    font-weight: bold;
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    line-height: 1.4;
    margin-bottom: 0.8em;
}
.confirm dl dt{
    display: inline-block;
    width: 9em;
    position: relative;
    padding-left: 1.4em;
    padding-bottom: 0.2em;
}
.confirm dt::before{
    content: "";
    display: block;
    width: 1em;
    height: 1em;
    background: url("../img/list_asset1.svg") no-repeat center center;
    background-size: contain;
    position: absolute;
    top: 0.35em;
    left: 0;
}
.confirm dl dt::after{ content: "：";}
@media screen and (max-width: 7400px) {
    .confirm dl dt{ width: auto;}
}

/*------------------------------------------------
　　　　サンクス
------------------------------------------------*/
.thanks__lead{
    text-align: center;
    font-size: 130%;
    font-weight: bold;
    margin-bottom: 1.0em;
    color: rgba(133,0,128,1);
    background: rgb(255,138,0);
    background: -moz-linear-gradient(-45deg,  rgba(255,138,0,1) 0%, rgba(133,0,128,1) 50%, rgba(46,0,163,1) 100%);
    background: -webkit-gradient(linear, left top, right bottom, color-stop(0%,rgba(255,138,0,1)), color-stop(50%,rgba(133,0,128,1)), color-stop(100%,rgba(46,0,163,1)));
    background: -webkit-linear-gradient(-45deg,  rgba(255,138,0,1) 0%,rgba(133,0,128,1) 50%,rgba(46,0,163,1) 100%);
    background: -o-linear-gradient(-45deg,  rgba(255,138,0,1) 0%,rgba(133,0,128,1) 50%,rgba(46,0,163,1) 100%);
    background: -ms-linear-gradient(-45deg,  rgba(255,138,0,1) 0%,rgba(133,0,128,1) 50%,rgba(46,0,163,1) 100%);
    background: linear-gradient(135deg,  rgba(255,138,0,1) 0%,rgba(133,0,128,1) 50%,rgba(46,0,163,1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff8a00', endColorstr='#2e00a3',GradientType=1 );
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
}
.thanks__message{
    line-height: 2;
    padding-bottom: 1.4em;
    font-weight: bold;
    text-align: center;
}
.thanks__message::after{
    content: "";
    display: block;
    width: 100%;
    height: 0.2em;
    background: url("../img/h3_line.svg") repeat-x 0 0;
    background-size: cover;
    margin-top: 1.4em;
}
.thanks__message--attention{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}
.thanks__message--attention__txt{
    font-size: 88%;
    line-height: 2;
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight: bold;
}
.thanks__link{
    margin-top: 2em;
    padding-top: 2em;
    font-family: "YakuHanJP", 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}