@charset "utf-8";

--OSCSS-mainColor: #EE4136;

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, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
img{
  width: 100%;
  height: auto;
  object-fit: cover;
}
h1{
  display: none;
}
h2{
  text-align: left;
  margin:10px auto;
}
hr{
  width: 100%;
}


@media screen and (min-width: 480px) {
  .sp-only {
    display: none;
  }
}
@media screen and (max-width: 480px) {
  .pc-only {
    display: none;
  }
}

body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, メイリオ, "MS P Gothic", "ＭＳ Ｐゴシック", arial, helvetica, sans-serif;
  background-color: white;
}
body,
#wrapper {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
a {
  text-decoration: none;
}
ul {
  list-style: none;
}

.section-title{
  color:#EE4136;
  font-size: 3em;
  font-family:'CenturyGothic';
}

.btn-light{
  border: 1px solid #000;
}
main{
  margin-top: 60px;
}
.OSCSS-content-box{
  display: relative;
  margin-top: 20px;
  margin-bottom: 20px;
  border:1px solid #bfbfbf;
  border-radius: 10px;
  border-collapse: separate;
  width: 100%;
}
.OSCSS-content-box-inner{
  padding: 40px;
  min-height: 500px;
}
.OSCSS-double-btn{
  display: flex;
  flex-wrap: wrap;
}
.OSCSS-double-btn form{
  width: 49.5%;
  margin: 0 auto;
}
.OSCSS-btn50{
  width: 50%!important;
  margin: 2px auto;
}
@media screen and (max-width: 480px) {
  .OSCSS-btn50{
    width: 100%!important;
  }
  .OSCSS-double-btn form{
    width: 100%;
    margin-bottom: 2px;
  }
}

/* 必須マークを表示 */
label.required {
  display: block;
}
label.required:after {
  margin-left: 1.0em;
  padding: 0px 6px 0px 6px;
  border-radius: 4px;
  font-size: 0.6em;
  color: white;
  background-color: #C44;
  content: "必須";
}

.spinner-box{
  text-align: center;
  color: gray;
}

.img_128 {
  width: 128px;
  height: 128px;
  object-fit: cover;
  border-radius: 10px;
}




/*フッター*/
footer {
  width: 100%;
  height: auto;
  background-color: #2e4876;
  color: #ffffff;
  margin-top: auto;
  font-weight: bold;
}
footer .pc-only{
  margin: 10px 0;

}
footer .pc-only ul{
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  list-style: none;
  margin: 0;
}
footer .pc-only ul li {
  float: left;
  font-size: 14px;
}
footer .pc-only ul li:nth-child(n + 2) {
  border-left:solid 2px white;
}


/* スクリーンが460px以下のCSSを適用 */
@media screen and (max-width: 480px) {
  footer .sp-only{
    display: flex;
    flex-wrap: wrap;
    margin: 10px 0;
    width: 100%;
    text-align: center;
  }
  footer .sp-only div{
    width: 15%;
  }
  footer .sp-only ul{
    width: 35%;
    height: fit-content;
    display: flex;
    flex-wrap: wrap;
    text-align: left;
    list-style: none;
    padding: 0;
    margin: 0;
  }
  footer .sp-only ul li {
    width: 100%;
  }
}

.OSCSS-footer-item{
  margin: 20px;
  color: #ffffff;
}

.OSCSS-footer-item:link,
.OSCSS-footer-item:visited,
.OSCSS-footer-item:hover,
.OSCSS-footer-item:active {
  color: white;
  text-decoration: none;
}
.OSCSS-footer-rights{
  text-align: center;
  margin-bottom: 10px;

}
.OSCSS-footer-rights a{
  color: #ffffff;
}
@media screen and (max-width: 480px) {
  .OSCSS-footer-item{
    margin: 8px;
    font-size:10px;
  }
  .OSCSS-footer-rights{
    width: 100%;
    font-size: 0.65rem;
  }
}


/* switchArea */
.switchArea {
  line-height: 25px;
  letter-spacing: 0;
  text-align: center;
  font-size: 10px;
  position: relative;
  width: 70px;
  background: #fff;
}
.switchArea input[type="checkbox"] {
  display: none;
}
.switchArea label {
  display: block;
  box-sizing: border-box;
  height: 30px;
  border: 2px solid #999999;
  border-radius: 15px;
}
.switchArea input[type="checkbox"]:checked +label {
  border-color: #0d6efd;
}
.switchArea label span:after{
  content: "非表示";
  padding: 0 0 0 28px;
  color: #999999;
}
.switchArea  input[type="checkbox"]:checked + label span:after{
  content: "表示";
  padding: 0 30px 0 0;
  color: #0d6efd;
}
.switchArea #swImg {
  position: absolute;
  width: 24px;
  height: 24px;
  background: #999999;
  top: 3px;
  left: 3px;
  border-radius: 15px;
  transition: 0.2s;
}

.switchArea input[type="checkbox"]:checked ~ #swImg {
  transform: translateX(40px);
  background: #0d6efd;
}
.animate-box-up{
  opacity: 0;
}

.domain-desc{
  margin-top: 50px;
  text-align: center;
}


@media screen and (max-width: 480px) {
  .form-check-input{
    margin-top: 6px;
  }
  .form-check-label{
    font-size: 10px;
  }
}

.form-sublinks{
  color: grey;
  font-size: 12px;
  padding:0;
}
.form-sublinks:hover{
  color: #4e4e4e;
}
