@charset "utf-8";


/*------------------------------------------------------------
  書式設定
------------------------------------------------------------*/
/* テキストの位置 */
.taLeft {
  text-align: left !important;
}


.taCenter {
  text-align: center !important;
}


.taRight {
  text-align: right !important;
}


/* フォントの大きさ（プラス） */
.fsP1 {
  font-size: 1.08em !important;
}


.fsP2 {
  font-size: 1.16em !important;
}


.fsP3 {
  font-size: 1.24em !important;
}


.fsP4 {
  font-size: 1.32em !important;
}


.fsP5 {
  font-size: 1.4em !important;
}


/* フォントの大きさ（マイナス） */
.fsM1 {
  font-size: 0.92em !important;
}


.fsM2 {
  font-size: 0.84em !important;
}


.fsM3 {
  font-size: 0.76em !important;
}


.fsM4 {
  font-size: 0.68em !important;
}


.fsM5 {
  font-size: 0.6em !important;
}


/* フォントの太さ */
.fwNormal {
  font-weight: normal !important;
}


.fwBold {
  font-weight: bold !important;
}


/*------------------------------------------------------------
  微調整用クラス（※多用しないこと）
------------------------------------------------------------*/
.mt0 {
  margin-top: 0 !important;
}


.mb0 {
  margin-bottom: 0 !important;
}


/*------------------------------------------------------------
  汎用スタイル
------------------------------------------------------------*/
* html .clearfix {
  zoom: 1;
}


*+html .clearfix {
  zoom: 1;
}


.clearfix:after {
  height: 0;
  visibility: hidden;
  content: ".";
  display: block;
  clear: both;
}


/*------------------------------------------------------------
  pageTitle
------------------------------------------------------------*/
.pageTitle {
  margin-bottom: 63px;
  width: 100%;
  height: 250px;
  display: table;
  background: url(../../img/common/page_title_bg.jpg) no-repeat center center;
  background-size: cover;
}


.pageTitle .comBox {
  padding-bottom: 4px;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}


.pageTitle h1 {
  color: #fff;
  font-size: 3em;
  font-weight: 500;
  text-align: center;
  text-shadow: 0 0 18px #08345a, 0 0 18px #08345a, 0 0 30px #08345a;
}


@media screen and (max-width: 767px) {
  .pageTitle {
    height: 130px;
  }


  .pageTitle h1 {
    font-size: 2.5em;
  }
}


/*------------------------------------------------------------
  comBox
------------------------------------------------------------*/
.comBox {
  margin: 0 auto;
  max-width: 1000px;
}


@media screen and (max-width: 767px) {
  .comBox {
    padding: 0 15px;
  }
}


/*------------------------------------------------------------
  headLine01
-----------------------------------------------------------*/
.headLine01 {
  margin-bottom: 66px;
  padding: 0 20px 7px;
  color: #006896;
  font-size: 3.5em;
  font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
  letter-spacing: -3px;
  text-align: center;
  border-bottom: 1px solid #006896;
}


/*------------------------------------------------------------
  headLine02
-----------------------------------------------------------*/
.headLine02 {
  font-size: 3em;
  font-family: "游明朝", "YuMincho", "Hiragino Mincho Pro", "MS PMincho", "ＭＳ Ｐ明朝", "ヒラギノ明朝 Pro W6", serif;
  text-align: center;
  letter-spacing: -3px;
}


.headLine02 span {
  color: #91004f;
}


/*------------------------------------------------------------
  headLine03
-----------------------------------------------------------*/
.headLine03 {
  margin-bottom: 36px;
  padding: 7px 20px 8px;
  font-size: 3em;
  text-align: center;
  color: #FFF;
  background-color: #006896;
}


@media all and (-ms-high-contrast:none) {
  .headLine03 {
    padding: 9px 20px 6px;
  }
}


@media screen and (max-width: 767px) {
  .headLine03 {
    font-size: 2em;
  }
}


/*------------------------------------------------------------
  headLine04
-----------------------------------------------------------*/
.headLine04 {
  margin-bottom: 4px;
  padding-left: 22px;
  color: #333333;
  font-size: 2em;
  font-weight: 500;
  background: url(../../img/common/icon02.gif) no-repeat left 8px;
}


@media all and (-ms-high-contrast:none) {
  .headLine04 {
    background-position: left 5px;
  }
}


@media screen and (max-width: 767px) {
  .headLine04 {
    font-size: 1.5em;
    background-position: left 5px;
    background-size: 12px auto;
  }
}


/*------------------------------------------------------------
  comTextUl
-----------------------------------------------------------*/
.comTextUl {
  margin: 0 0 29px 15px;
}


.comTextUl li {
  padding-left: 16px;
  font-size: 1.6em;
  line-height: 1.75;
  background: url(../../img/common/icon03.png) no-repeat left 7px;
}


@media all and (-ms-high-contrast:none) {
  .comTextUl li {
    padding-left: 18px;
    background-position: left 5px;
  }
}


/*------------------------------------------------------------
  comLink
-----------------------------------------------------------*/
.comLink {
  width: 300px;
}


.comLink a {
  padding: 7px 20px;
  display: block;
  font-size: 20px;
  color: #006896;
  text-align: center;
  border: 3px solid #006896;
}


.comLink a:hover {
  opacity: 0.7;
}


@media all and (-ms-high-contrast:none) {
  .comLink a {
    padding: 9px 20px 5px;
  }
}


/*------------------------------------------------------------
  comLink01
-----------------------------------------------------------*/
.comlink01 {
  width: 300px;
}


.comlink01 a {
  padding: 13px 43px 15px 10px;
  color: #646464;
  display: block;
  font-size: 23px;
  text-align: center;
  border: 1px solid #CFD0D1;
  background: url(../../img/common/com_link_bg01.jpg) repeat-x left top;
  border-radius: 10px;
  background-size: auto 100%;
}


.comlink01 a span {
  padding-left: 50px;
  display: inline-block;
  background: url(../../img/common/icon04.png) no-repeat left 2px top 6px;
}


.comlink01 a:hover {
  opacity: 0.7;
}


@media screen and (max-width: 767px) {
  .comlink01 {
    max-width: 260px;
    width: auto;
  }


  .comlink01 a {
    padding: 9px 43px 9px 10px !important;
    font-size: 1.8em;
  }


  .comlink01 a span {
    background-size: 18px auto;
  }
}


/*------------------------------------------------------------
  comBtn
-----------------------------------------------------------*/
.comBtn {
  width: 302px;
}


.comBtn a,
.comBtn span {
  padding: 13px 10px 20px;
  color: #fff;
  font-size: 23px;
  font-weight: 500;
  display: block;
  text-align: center;
  letter-spacing: 0.7px;
  text-shadow: 0 6px 8px rgba(0, 0, 0, 0.7);
  background: url(../../img/common/com_btn_bg.jpg) no-repeat left top;
  background-size: 100% 100%;
}


.comBtn a:hover {
  opacity: 0.7;
}


@media all and (-ms-high-contrast:none) {


  .comBtn a,
  .comBtn span {
    padding: 15px 10px 17px;
  }
}




/*------------------------------------------------------------
  comTxtUl
-----------------------------------------------------------*/
.comTxtUl {
  margin-bottom: 175px;
}


.comTxtUl li {
  margin-right: 49px;
  float: left;

  width: 300px;
}


.comTxtUl li:last-child {
  margin-right: 0;
}


.comTxtUl li .comBtn {
  margin: 0 -1px 19px -1px;
}


.comTxtUl li .comBtn a {
  padding: 21px 10px 27px;
}


.comTxtUl li .textBox {
  padding: 20px 25px 67px;
  background: #DFF2F9 url(../../img/common/list_bg01.jpg) no-repeat left bottom;
  border-radius: 10px;
  box-sizing: border-box;
}


.comTxtUl li .textBox .ttl {
  margin-bottom: 17px;
  width: 100%;
  color: #91004f;
  font-size: 1.8em;
  font-weight: bold;
  text-align: center;
  display: table;
  box-sizing: border-box;
}


.comTxtUl li .textBox .ttl span {
  line-height: 1.75;
  display: table-cell;
  vertical-align: middle;
  letter-spacing: -1.5px;
}


.comTxtUl li .textBox p {
  font-size: 1.6em;
  line-height: 1.75;
  letter-spacing: 0.5px;
}


.comTxtUl li:nth-child(2) .textBox {
  background: #DFF2F9 url(../../img/common/list_bg02.jpg) no-repeat left bottom;
}




.comTxtUl li:last-child .textBox {
  background: #DFF2F9 url(../../img/common/list_bg03.jpg) no-repeat left bottom;
}


@media all and (-ms-high-contrast:none) {
  .comTxtUl li .comBtn a {
    padding: 23px 10px 25px;
  }
}


/*------------------------------------------------------------
  comLinkUl
-----------------------------------------------------------*/
.comLinkUl {
  text-align: center;
}


.comLinkUl li {
  margin: 0 24px;
  display: inline-block;
  width: 302px;
  vertical-align: top;
}


.comLinkUl .comBtn a {
  padding: 12px 10px 19px;
}



/*------------------------------------------------------------
  comBgBox
------------------------------------------------------------*/
.comBgBox {
  padding: 45px 0;
  background: url(../../img/common/com_bg.jpg) no-repeat center center;
  background-size: cover;
}


.comBgBox .whiteBox {
  background: rgba(255, 255, 255, 0.75);
}


/*------------------------------------------------------------
  comTable
------------------------------------------------------------*/
.comTable {
  margin-bottom: 80px;
  width: 100%;
  color: #333;
  font-size: 1.8em;
  border-collapse: collapse;
  border-top: 1px solid #666;
}


.comTable th,
.comTable td {
  padding: 11px 5px 12px;
  text-align: left;
  vertical-align: middle;
  border-bottom: 1px solid #666;
}


.comTable th {
  width: 18%;
  color: #fff;
  font-weight: normal;
  text-align: center;
  background-color: #5EA2BF;
}


.comTable td {
  padding: 9px 10px 10px 28px;
}


@media screen and (max-width: 767px) {
  .comTable {
    margin-bottom: 30px;
    font-size: 1.4em;
  }




  .comTable th,
  .comTable td {
    padding: 11px 15px 12px;
    display: block;
    text-align: left;
  }


  .comTable th {
    width: 100%;
    box-sizing: border-box;
  }
}


/*------------------------------------------------------------
  comPhotoLink
------------------------------------------------------------*/
.comPhotoLink {
  margin-top: -40px;
  text-align: center;
}


.comPhotoLink li {
  margin: 40px 16px 0 17px;

  width: 310px;
  display: inline-block;
}


.comPhotoLink li a {
  display: block;
}


.comPhotoLink li a:hover {
  opacity: 0.7;
}


.comPhotoLink li span {
  padding: 7px 25px 8px;
  display: block;
  color: #fff;
  font-size: 2em;
  background: #006896 url(../../img/common/icon05.png) no-repeat right 14px center;
}


.comPhotoLink li img {
  max-width: 100%;
  width: 100%;
}


@media all and (-ms-high-contrast:none) {
  .comPhotoLink li span {
    padding: 9px 25px 6px;
  }
}


@media screen and (max-width: 767px) {
  .comPhotoLink li {
    margin: 0 0 15px;
    width: auto;
    display: block;
  }


  .comPhotoLink li span {
    padding: 8px 15px 10px;
    font-size: 1.4em;
  }
}


/*------------------------------------------------------------
  comText
-----------------------------------------------------------*/
.comText {
  margin-bottom: 55px;
  font-size: 1.6em;
  line-height: 1.75;
}


@media screen and (max-width: 767px) {
  .comText {
    font-size: 1.4em;
  }
}


/*------------------------------------------------------------
  comTextBox
-----------------------------------------------------------*/
.comTextBox {
  padding: 30px 41px 27px;
  border-radius: 10px;
  background: #dff2fa url(../../img/common/com_bg01.png) no-repeat right center;
  background-size: auto 100%;
}


.comTextBox .loadText {
  margin-bottom: 4px;
  font-size: 2.3em;
}


.comTextBox ul {
  margin-bottom: 43px;
}


.comTextBox li {
  margin-bottom: 8px;
  padding-left: 1em;
  font-size: 3em;
  font-weight: bold;
  color: #91004f;
  text-indent: -1em;
}


.comTextBox li:last-child {
  margin-bottom: 0;
}


.comTextBox .endText {
  font-size: 1.8em;
  line-height: 1.7;
}


/*------------------------------------------------------------
  comBtnList
-----------------------------------------------------------*/
.comBtnList {
  width: 653px;
  margin: -37px auto 0;
}


.comBtnList li {
  margin-top: 37px;
  float: left;
}


.comBtnList li:nth-child(2n) {
  float: right;
}


/*------------------------------------------------------------
  comTableBox
-----------------------------------------------------------*/


.comTableBox,
.comTableBox * {
  box-sizing: border-box;
}


.comTableBox input,
.comTableBox textarea,
.comTableBox button {
/*	appearance: none;*/
}


.comTableBox table {
  width: 100%;
  border-collapse: collapse;
}


.comTableBox table th {
  display: block;
  width: 100%;
  padding: 30px 0;
  font-size: 1.8em;
  text-align: left;
}


.comTableBox table th .must {
  display: inline-block;
  width: 50px;
  margin: -5px 20px 0 0;
  padding: 5px;
  color: #fff;
  font-size: 0.7em;
  line-height: 1;
  text-align: center;
  vertical-align: middle;
  border-radius: 2px;
  background-color: #e57373;
}


.comTableBox table td {
  display: block;
  width: 100%;
  padding-bottom: 30px;
  border-bottom: 1px solid #000;
}


.comTableBox .checkUl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: -15px;
}


.comTableBox .checkUl li {
  cursor: pointer;
  display: flex;
  align-items: center;
  width: 495px;
  margin-bottom: 10px;
  font-size: 1.5em;
  background-color: #dff2fa;
}


.comTableBox .checkUl li > input {
  font-size: 1em;
}


.comTableBox .checkUl li.gray {
  background-color: #f0eff0;
}


.comTableBox .checkUl li label {
  cursor: pointer;
  width: 100%;
  padding: 10px;
}


.comTableBox .checkUl input[type="radio"],
.comTableBox .checkUl input[type="checkbox"] {
  margin-left: 15px;
}


.comTableBox input[type="text"],
.comTableBox input[type="tel"],
.comTableBox input[type="email"],
.comTableBox textarea {
  width: 100%;
  padding: 10px;
  font-size: 1.5em;
  border: 1px solid #ccc;
  border-radius: 5px;
}


.comTableBox textarea {
  min-height: 150px;
}


.comTableBox .checkUl01 {
  margin-bottom: 30px;
}


.comTableBox .checkUl01 li {
  width: 100%;
}


.comTableBox .checkUl02 {
  margin-bottom: 0;
}


.comTableBox .checkUl02 li {
  width: 100%;
  padding: 10px 10px 10px 0;
  letter-spacing: -.5px;
}


.comTableBox .checkUl02 li input[type="text"] {
  height: 40px;
}


.submit {
  margin-top: 30px;
  text-align: center;
}


.submit li {
  margin: 0 25px;
  display: inline-block;
  position: relative;
}


.submit li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 40px;
  width: 25px;
  height: 25px;
  margin-top: -12.5px;
  background: url(../../img/common/icon04.png) no-repeat left center;
}


.submit button {
  cursor: pointer;
  width: 300px;
  height: 60px;
  padding: 0 50px 0 60px;
  color: #646464;
  font-size: 20px;
  border: 1px solid #cbcbcb;
  border-radius: 10px;
  background: linear-gradient(to bottom, #f8f9fa 0%, #e7e7e7 100%);
}


.submit button:hover {
  opacity: .7;
}


@media screen and (max-width: 767px) {
  .comTableBox table th {
    padding: 15px 0;
  }


  .comTableBox table td {
    width: 100%;
    padding-bottom: 15px;
  }


  .comTableBox .checkUl li {
    width: 100%;
  }


  .comTableBox .checkUl02 li {
    flex-wrap: wrap;
  }


  .comTableBox .checkUl02 li input[type="text"] {
    width: 100%;
    height: 40px;
    margin-left: 10px;
  }


  .comTableBox .checkUl02 li label {
    width: calc(100% - 32px);
  }


  .comTableBox .submit li {
    width: 100%;
    margin: 0;
  }


  .comTableBox button {
    width: 100%;
  }
}
