@charset "UTF-8";

html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code, del, dfn, em, img, 
ins, kbd, q, samp, small, strong, sub, sup, var,b, i, dl, dt, dd, ol, ul, li,fieldset, form, label, legend, table, caption, 
tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, 
section, summary,time, mark, audio, video , button, input, select {
  font-family: Meiryo, 'メイリオ', sans-serif;
  background: transparent;
  border: 0;
  font-size: 1em;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}
main {
  display: block;
}
body {
  font-size: 1em;
  line-height: 1.5;
  color: #333333;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}
select, input {
  vertical-align: baseline;
  text-align: left;
  margin: 0 1em;
  border-radius: 0.5em;
  border: 1px solid #333333;
  padding: 0 1em;
  background-color: white;
}
select:disabled {
  cursor: default;
  color: silver;
}
select, input[type="radio"], input[type="checkbox"], label {
  cursor: pointer;
}
select {
  -webkit-appearance: none;
  appearance: none;
  padding: 0 2em 0 1em;
  margin: 0;
  height: 3em;
}
select::-ms-expand {
  display: none;
}
input {
  font-size: 1em;
  line-height: 1.3;
  padding: 0.5em 1.2em;
  width: 9em;
}
input[type="radio"], input[type="checkbox"] {
  width: auto;
  height: 1em;
}
input[type="number"] {
  text-align: right;
}
input:disabled {
  border: none;
  background-color: #f6f6f6;
  color: #cccccc;
}
textarea {
  width: 100%;
  height: 10em;
  resize: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
a {
  color: #1170cf;
  text-decoration:none;
}
img{
  max-width:100%;
}

h1 {
  font-size: 3em;
  font-weight: bold;
  color: #f0850f;
  word-break: break-all;
}
h2 {
  font-size: 1.75em;
  font-weight: bold;
  word-break: break-all;
  margin:20px 0;
}
h2::before {
  content: "";
  display: inline;
  border: 5px solid #8acb3d;
  border-radius: 5px;
  margin-right: 1em;
  word-break: break-all;
}
h2.bottomSpace {
  margin-bottom: 1.5em;
}
h3 {
  font-size: 1.5em;
  font-weight: bold;
  padding: 1em 0;
  word-break: break-all;
}
h4 {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.5;
  word-break: break-all;
}
section {
  width: 100%;
  padding: 1em 0;
}
p {
  padding: 2em 0.5em;
  line-height: 1.5;
}
tr {
  border-bottom: 1px solid #AAAAAA;
}
.noBottomLine {
  border-bottom: none;
}
th {
  font-weight: bold;
  padding: 1em;
  vertical-align: middle;
  text-align: left;
  word-wrap : break-word;
  overflow-wrap : break-word;
}
td {
  padding: 1em;
  vertical-align: middle;
  text-align: left;
  word-wrap : break-word;
  overflow-wrap : break-word;
}
ul {
  display:block;
  margin:30px 0;
  width:100%;
  overflow:hidden;
}

li {
  display:block;
  overflow:hidden;
  width:100%;
  padding:5px 0;
}
ul.dot{
  list-style-position: inside;
  list-style-type: disc;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  table-layout: fixed;
}
.clear {
  clear: both;
}
button{
  color: white;
  background-color: #ff2352;
  margin: 20px;
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
  padding: 20px 60px;
  border-radius: 30px;
}

button:hover{
  cursor: pointer;
}
button:disabled {
  border: none;
  background-color: #f6f6f6;
  color: #cccccc;
}
.buttonWrapper{
  display:block;
  width:100%;
  text-align:center;
}
.contentsArea {
  position: relative;
  width: 1110px;
  padding: 0 1em;
  margin: auto;
  overflow:hidden;
}
main .contentsArea {
  padding: 3em 1em;
}
i {
  display: inline-block;
  width: 1em;
  height: 1em;
}
a i {
  width: 1em;
  height: 1em;
  margin-left: 0.2em;
}
button i, .button_to input[type="submit"] i {
  width: 1em;
  height: 1em;
  margin-left: 0.2em;
}

/*
 footer
*/
footer{
  padding-top:30px;
  background: #f3f3f3;
  font-size:14px;
}
.footerMenu li{
  display:block;
  position:relative;
  width:25%;
  float:left;
  text-align:center;
  border-left: 1px solid #c1c2c4;
  box-sizing:border-box;
}
.footerMenu li:last-child{
  border-right: 1px solid #c1c2c4;
}

.footerLogo .logo{
  text-align:center;
}

.copyright {
  width: 100%;
  text-align: center;
  font-size: 0.8em;
}
.pontaCopyright {
  width: 100%;
  text-align: right;
  font-size: 0.8em;
  padding-bottom: 3em;
  font-weight: bold;
}



/*
 pc
*/
@media screen and (min-width:680px) {
  .spOnly {
    display: none;
  }
}

/*
 sp
*/
@media screen and (max-width:679px) {
  .pcOnly {
    display: none;
  }
  body {
    font-size: 4.5vw;
    width: 100%;
  }
  h1 {
    font-size: 7vw;
  }
  h2 {
    font-size: 5.5vw;
    padding: 0.5em 0;
  }
  h2::before {
    margin-right: 0.5em;
  }
  h2.bottomSpace {
    font-size: 4.5vw;
  }
  h3 {
    font-size: 5vw;
  }
  h4 {
    font-size: 4.5vw;
  }
  p {
    padding: 1em 0.5em;
  }
  a {
    font-size: 4.5vw;
  }
  tr {
    display: -webkit-flex;
    display: flex;
  }
  button{
    font-size: 3.5vw;
    font-weight: bold;
  }
  input {
    font-size: 4.5vw;
    width: 10em;
    margin: 0;
    padding: 0.5em;
  }
  select {
    width: 100%;
  }
  textarea {
    width: 90%;
    border: 1px solid #949494;
  }
  .contentsArea {
    width: 100%;
    padding: 0 1em;
    box-sizing: border-box;
  }
  main .contentsArea{
    padding: 0 1em;
  }


  footer{
    padding-top:0;
  }
  footer a{
    font-size: 3vw;
  }
  .footerMenu li{
    width:100%;
    text-align:center;
    border: none; 
    border-bottom: 1px solid #c1c2c4;
    box-sizing:border-box;
  }
  .footerMenu li:last-child{
    border-right: none;
  }
  .footerMenu li a{
    font-weight: bold;
  }



  .footerLogo .logo{
    width: 50%;
    margin:20px auto 20px auto;
  }

  .copyright {
    font-size: 2vw;
  }
  .pontaCopyright {
    text-align: center;
    font-size: 2vw;
  }
}

