@charset "UTF-8";
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 100;
  src: local("Noto Sans CJK JP Thin"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Thin.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Thin.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Thin.otf) format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 300;
  src: local("Noto Sans CJK JP Light"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Light.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Light.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Light.otf) format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  src: local("Noto Sans CJK JP Regular"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 500;
  src: local("Noto Sans CJK JP Medium"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Medium.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Medium.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Medium.otf) format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 600;
  src: local("Noto Sans CJK JP Bold"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Bold.otf) format("opentype");
  font-display: swap;
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 900;
  src: local("Noto Sans CJK JP Black"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Black.woff2) format("woff2"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Black.woff) format("woff"), url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Black.otf) format("opentype");
  font-display: swap;
}
/*                reset
======================================================= */
body, h1, h2, h3, h4, h5, table, th, td, ul, li, ol, dl, dt, dd, form, p, table, th, td {
  margin: 0px;
  padding: 0px;
  font-weight: normal;
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  list-style-type: none;
  font-size: 100%;
}

body {
  color: #101010;
  background-color: #ffffff;
  font-family: "Noto Sans Japanese", sans-serif;
  line-height: 1.5;
  font-size: 14px;
  -webkit-text-size-adjust: none;
}
@media only screen and (max-width: 1200px) {
  body {
    font-size: 1.33vw;
  }
}
@media only screen and (max-width: 768px) {
  body {
    font-size: 3.73vw;
  }
}

dt, dd, li, th, td, p {
  line-height: 1.57;
}

/* for IE6 */
* html body {
  font-size: 100%;
}

a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
}
a img {
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  transition: 0.5s;
}

img {
  display: block;
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

input, textArea, select, button {
  background: none;
  margin: 0px;
  outline: none;
  padding: 0px;
  font-weight: normal;
  border-top-style: none;
  border-right-style: none;
  border-bottom-style: none;
  border-left-style: none;
  list-style-type: none;
  font-size: 14px;
}

button {
  cursor: pointer;
}

* {
  box-sizing: border-box;
  -webkit-overflow-scrolling: touch;
}

*:focus {
  outline: none;
}

input[type=text],
input[type=password],
textarea,
select {
  outline: none;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0px 0px 0px #ffffff;
  /* カラーは調整して下さい */
}

a, a:focus {
  outline: none;
}

button, input, input:focus {
  outline: none;
}

input::-moz-focus-inner,
button::-moz-focus-inner {
  border: none;
}

@font-face {
  font-family: "FontAwesome";
  src: url("../fonts/fontawesome-webfont.eot?v=4.6.3");
  src: url("../fonts/fontawesome-webfont.eot?#iefix&v=4.6.3") format("embedded-opentype"), url("../fonts/fontawesome-webfont.woff2?v=4.6.3") format("woff2"), url("../fonts/fontawesome-webfont.woff?v=4.6.3") format("woff"), url("../fonts/fontawesome-webfont.ttf?v=4.6.3") format("truetype"), url("../fonts/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal;
}
/*                link
======================================================= */
a {
  color: #101010;
  transition: 0.3s;
}

a:hover {
  color: #c30000;
}

a:link {
  color: #101010;
  text-decoration: none;
}

a:visited {
  color: #333333;
}

@media only screen and (min-width: 1025px) {
  a:hover {
    transition: 0.5s;
  }
  a:hover img {
    transition: 0.5s;
    opacity: 0.8;
  }
}
/*                common
======================================================= */
.clear:after {
  content: "";
  display: block;
  clear: both;
}

.clear_both {
  clear: both;
}

.hidden {
  overflow: hidden;
}

/*                leyout
======================================================= */
.pc {
  display: block;
}
@media only screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}
@media only screen and (max-width: 768px) {
  .sp {
    display: block;
  }
}

.clearfix {
  display: block;
}
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}
.clearfix::before {
  content: "";
  display: block;
  clear: both;
}

.scroll_anime {
  position: relative;
  top: 50px;
  opacity: 0;
}

.page_width {
  width: 100%;
  max-width: 1200px;
  padding: 0 20px;
  margin: 0 auto;
}
#wrapper {
  overflow: hidden;
  position: relative;
  width: 100%;
}
img {
  width: 100%;
}

/*                main_area
======================================================= */
@media only screen and (max-width: 768px) {
  #main_area {
    padding-bottom: 10.67vw;
  }
}
#main_area a {
  /*
  		&.internal{
  			background: url(/media/images/common/icon_arrow.png);
  			background-repeat:no-repeat;
  			background-position:right top 1px;
  			background-size:12px 16px;
  			padding-right: 16px;
  			@include media1000 {
  				background-position:right top 0.1vw;
  				background-size:1vw 1.32vw;
  				padding-right: 1.32vw;
  			}
  			@include media768 {
  				background-position:right top 0.7vw;
  				background-size:3vw 4vw;
  				padding-right: 4vw;
  			}
  		}
  */
  /*
  		&.xls {
  			background: url(/media/images/common/icon_xls.png);
  			background-repeat:no-repeat;
  			background-position:right top 1px;
  			background-size:12px 16px;
  			padding-right: 16px;
  			@include media1000 {
  				background-position:right top 0.1vw;
  				background-size:1vw 1.32vw;
  				padding-right: 1.32vw;
  			}
  			@include media768 {
  				background-position:right top 0.7vw;
  				background-size:3vw 4vw;
  				padding-right: 4vw;
  			}
  		}
  		&.xlsx {
  			background: url(/media/images/common/icon_xls.png);
  			background-repeat:no-repeat;
  			background-position:right top 1px;
  			background-size:12px 16px;
  			padding-right: 16px;
  			@include media1000 {
  				background-position:right top 0.1vw;
  				background-size:1vw 1.32vw;
  				padding-right: 1.32vw;
  			}
  			@include media768 {
  				background-position:right top 0.7vw;
  				background-size:3vw 4vw;
  				padding-right: 4vw;
  			}
  		}
  		&.doc {
  			background: url(/media/images/common/icon_doc.png);
  			background-repeat:no-repeat;
  			background-position:right top 1px;
  			background-size:12px 16px;
  			padding-right: 16px;
  			@include media1000 {
  				background-position:right top 0.1vw;
  				background-size:1vw 1.32vw;
  				padding-right: 1.32vw;
  			}
  			@include media768 {
  				background-position:right top 0.7vw;
  				background-size:3vw 4vw;
  				padding-right: 4vw;
  			}
  		}
  		&.docx {
  			background: url(/media/images/common/icon_doc.png);
  			background-repeat:no-repeat;
  			background-position:right top 1px;
  			background-size:12px 16px;
  			padding-right: 16px;
  			@include media1000 {
  				background-position:right top 0.1vw;
  				background-size:1vw 1.32vw;
  				padding-right: 1.32vw;
  			}
  			@include media768 {
  				background-position:right top 0.7vw;
  				background-size:3vw 4vw;
  				padding-right: 4vw;
  			}
  		}
  		&.ppt {
  			background: url(/media/images/common/icon_ppt.png);
  			background-repeat:no-repeat;
  			background-position:right top 1px;
  			background-size:12px 16px;
  			padding-right: 16px;
  			@include media1000 {
  				background-position:right top 0.1vw;
  				background-size:1vw 1.32vw;
  				padding-right: 1.32vw;
  			}
  			@include media768 {
  				background-position:right top 0.7vw;
  				background-size:3vw 4vw;
  				padding-right: 4vw;
  			}
  		}
  		&.pptx {
  			background: url(/media/images/common/icon_ppt.png);
  			background-repeat:no-repeat;
  			background-position:right top 1px;
  			background-size:12px 16px;
  			padding-right: 16px;
  			@include media1000 {
  				background-position:right top 0.1vw;
  				background-size:1vw 1.32vw;
  				padding-right: 1.32vw;
  			}
  			@include media768 {
  				background-position:right top 0.7vw;
  				background-size:3vw 4vw;
  				padding-right: 4vw;
  			}
  		}
  		&.html {
  			background: url(/media/images/common/icon_htm.png);
  			background-repeat:no-repeat;
  			background-position:right top 1px;
  			background-size:12px 16px;
  			padding-right: 16px;
  			@include media1000 {
  				background-position:right top 0.1vw;
  				background-size:1vw 1.32vw;
  				padding-right: 1.32vw;
  			}
  			@include media768 {
  				background-position:right top 0.7vw;
  				background-size:3vw 4vw;
  				padding-right: 4vw;
  			}
  		}
  */
}
#main_area a.external {
  background: url(/common/img/icon-window.svg);
  background-repeat: no-repeat;
  background-position: right top 1px;
  background-size: 12px 16px;
  padding-right: 16px;
}
@media only screen and (max-width: 1000px) {
  #main_area a.external {
    background-position: right top 0.1vw;
    background-size: 1vw 1.32vw;
    padding-right: 1.32vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area a.external {
    background-position: right top 0.7vw;
    background-size: 3vw 4vw;
    padding-right: 4vw;
  }
}
#main_area a.pdf {
  background: url(/common/img/icon-pdf.svg);
  background-repeat: no-repeat;
  background-position: right top 1px;
  background-size: 12px 16px;
  padding-right: 16px;
}
@media only screen and (max-width: 1000px) {
  #main_area a.pdf {
    background-position: right top 0.1vw;
    background-size: 1vw 1.32vw;
    padding-right: 1.32vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area a.pdf {
    background-position: right top 0.7vw;
    background-size: 3vw 4vw;
    padding-right: 4vw;
  }
}
#main_area a.rss {
  background: url(/common/img/icon-rss.svg);
  background-repeat: no-repeat;
  background-position: right top 1px;
  background-size: 12px 16px;
  padding-right: 16px;
}
@media only screen and (max-width: 1000px) {
  #main_area a.rss {
    background-position: right top 0.1vw;
    background-size: 1vw 1.32vw;
    padding-right: 1.32vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area a.rss {
    background-position: right top 0.7vw;
    background-size: 3vw 4vw;
    padding-right: 4vw;
  }
}
#main_area a.icon_none {
  background: none;
  padding-right: 0;
}
#main_area a:hover {
  opacity: 0.7;
}
@media only screen and (max-width: 768px) {
  #main_area a:hover {
    opacity: 1;
  }
}

/*                タイトル装飾
======================================================= */
/*                table
======================================================= */
table {
  width: 100%;
  border-collapse: separate;
  border-collapse: collapse;
  border-spacing: 0;
}

table tr td,
table tr th {
  text-align: left;
  padding: 0px;
}

/*                pageTop
======================================================= */
.page_top {
  position: fixed;
  right: 40px;
  bottom: 40px;
  z-index: 1000;
  display: none;
}
.page_top a {
  display: block;
}
@media only screen and (max-width: 640px) {
  .page_top {
    bottom: 0px;
    right: 0;
  }
  .page_top img {
    width: 36px;
    height: 36px;
  }
}

/*                カラム
======================================================= */
.row {
  margin-left: -14px;
  margin-right: -14px;
  overflow: hidden;
  margin-bottom: -14px;
}
@media only screen and (max-width: 1024px) {
  .row {
    margin-left: -8px;
    margin-right: -8px;
  }
}
@media only screen and (max-width: 768px) {
  .row {
    margin-left: -5px;
    margin-right: -5px;
  }
}
.row img {
  width: 100%;
}
.row .col1, .row .col2, .row .col3, .row .col4, .row .col5, .row .col6, .row .col7, .row .col8, .row .col9, .row .col10, .row .col11, .row .col12 {
  float: left;
  min-height: 1px;
  padding-left: 14px;
  padding-right: 14px;
  margin-bottom: 14px;
}
@media only screen and (max-width: 1024px) {
  .row .col1, .row .col2, .row .col3, .row .col4, .row .col5, .row .col6, .row .col7, .row .col8, .row .col9, .row .col10, .row .col11, .row .col12 {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media only screen and (max-width: 768px) {
  .row .col1, .row .col2, .row .col3, .row .col4, .row .col5, .row .col6, .row .col7, .row .col8, .row .col9, .row .col10, .row .col11, .row .col12 {
    padding-left: 5px;
    padding-right: 5px;
  }
}
.row .tab1, .row .tab2, .row .tab6 {
  float: left;
  min-height: 1px;
  padding-left: 14px;
  padding-right: 14px;
}
@media only screen and (max-width: 1024px) {
  .row .tab1, .row .tab2, .row .tab6 {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media only screen and (max-width: 768px) {
  .row .tab1, .row .tab2, .row .tab6 {
    padding-left: 5px;
    padding-right: 5px;
  }
}

.square {
  overflow: hidden;
}
.square .col1, .square .col2, .square .col3, .square .col4, .square .col5, .square .col6, .square .col7, .square .col8, .square .col9, .square .col10, .square .col11, .square .col12 {
  float: left;
  min-height: 1px;
  padding: 0;
  margin-bottom: 0;
}

.col12 {
  width: 100%;
}

.col11 {
  width: 91.66666667%;
}

.col10 {
  width: 83.33333333%;
}

.col9 {
  width: 75%;
}

.col8 {
  width: 66.66666667%;
}

.col7 {
  width: 58.33333333%;
}

.col6 {
  width: 50%;
}

.col5 {
  width: 41.66666667%;
}

.col4 {
  width: 33.33333333%;
}

.col3 {
  width: 25%;
}

.col2 {
  width: 16.66666667%;
}

.col1 {
  width: 8.33333333%;
}

@media only screen and (max-width: 1024px) {
  .pc1024Col12 {
    width: 100%;
  }

  .pc1024Col6 {
    width: 50%;
  }

  .pc1024Col3 {
    width: 25%;
  }

  .pc1024Col2 {
    width: 16.66666667%;
  }
}
@media only screen and (max-width: 768px) {
  .tab12 {
    width: 100%;
  }

  .tab6 {
    width: 50%;
  }

  .tab4 {
    width: 33.33333333%;
  }
}
@media only screen and (max-width: 767px) {
  .sp12 {
    width: 100%;
  }

  .sp6 {
    width: 50%;
  }
}
@media only screen and (max-width: 480px) {
  .sps12 {
    width: 100%;
  }

  .sps6 {
    width: 50%;
  }
}
/*                iframeのレスポン化
======================================================= */
.frame_respon .fb_iframe_widget,
.frame_respon .fb_iframe_widget span,
.frame_respon .fb_iframe_widget iframe[style] {
  width: 100% important;
}

.gmap {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}
.gmap iframe,
.gmap object,
.gmap embed {
  border: none !important;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*                ヘッダー・サイド・フッター
======================================================= */
/*                main_area
======================================================= */
#main_area {
  padding-bottom: 140px;
  background: url(../img/repeat_pc.gif) repeat center top;
}
@media only screen and (max-width: 1000px) {
  #main_area {
    padding-bottom: 14vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area {
    padding-bottom: 14.67vw;
    background: url(../img/repeat_sp.gif) repeat center top;
    background-size: 100% auto;
  }
}
#main_area .catch {
  background: url(../img/catch_bg_pc.png) no-repeat center top;
  height: 850px;
  position: relative;
}
@media only screen and (max-width: 1000px) {
  #main_area .catch {
    height: 85vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .catch {
    height: 130.6vw;
    background: url(../img/catch_bg_sp.png) no-repeat center top;
    background-size: 100% auto;
  }
}
#main_area .catch .text01 {
  width: 373px;
  opacity: 0;
  position: absolute;
  left: 50%;
  top: 122px;
  margin-left: -186px;
}
@media only screen and (max-width: 1000px) {
  #main_area .catch .text01 {
    width: 37.3vw;
    top: 12.2vw;
    margin-left: -18.6vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .catch .text01 {
    width: 56.53vw;
    top: 27.33vw;
    margin-left: -28.27vw;
  }
}
#main_area .catch h1 {
  width: 566px;
  opacity: 0;
  position: absolute;
  left: 50%;
  top: 122px;
  margin-left: -283px;
}
@media only screen and (max-width: 1000px) {
  #main_area .catch h1 {
    width: 56.6vw;
    top: 12.2vw;
    margin-left: -28.3vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .catch h1 {
    width: 78.27vw;
    top: 37.33vw;
    margin-left: -39.13vw;
  }
}
#main_area .catch .text02 {
  font-size: 30px;
  text-align: center;
  line-height: 1;
  font-weight: bold;
  opacity: 0;
  position: absolute;
  left: 0;
  top: 375px;
  width: 100%;
}
@media only screen and (max-width: 1000px) {
  #main_area .catch .text02 {
    font-size: 3vw;
    top: 37.5vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .catch .text02 {
    font-size: 4.27vw;
    top: 74.53vw;
  }
}
#main_area .catch .img {
  width: 401px;
  margin: 0px auto 0;
  opacity: 0;
  position: absolute;
  left: 50%;
  top: 466px;
  margin-left: -200px;
}
@media only screen and (max-width: 1000px) {
  #main_area .catch .img {
    width: 40.1vw;
    top: 46.6vw;
    margin-left: -20vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .catch .img {
    width: 43.6vw;
    top: 88.39svw;
    margin-left: -21.8vw;
  }
}
#main_area .point_wrap {
  background: url(../img/point_wrap_pc.png) repeat center top;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap {
    background: url(../img/point_wrap_tb.png) repeat center top;
    background-size: 100% auto;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap {
    background: url(../img/point_wrap_sp.png) repeat center top;
    background-size: 100% auto;
  }
}
#main_area .point_wrap .text_area {
  width: 420px;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap .text_area {
    width: 42vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .text_area {
    width: 100%;
  }
}
#main_area .point_wrap .text_area .num {
  font-family: "Oswald", sans-serif;
  font-size: 90px;
  font-weight: 500;
  line-height: 1;
  color: #ffffff;
  margin-bottom: 12px;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap .text_area .num {
    font-size: 9vw;
    margin-bottom: 1.2vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .text_area .num {
    font-size: 10.67vw;
    margin-bottom: 2.13vw;
    text-align: center;
  }
}
#main_area .point_wrap .text_area .num span {
  color: #eaff02;
  font-size: 14px;
  display: block;
  letter-spacing: 0.12em;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap .text_area .num span {
    font-size: 1.4vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .text_area .num span {
    font-size: 2.4vw;
  }
}
#main_area .point_wrap .text_area h2 {
  font-size: 36px;
  font-weight: bold;
  line-height: 2;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap .text_area h2 {
    font-size: 3.6vw;
    margin-bottom: 2vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .text_area h2 {
    font-size: 5.6vw;
    margin-bottom: 5.33vw;
    line-height: 2.1;
    text-align: center;
  }
}
#main_area .point_wrap .text_area h2 span {
  display: inline-block;
  padding: 0 20px;
  background: #ffffff;
  line-height: 1.8;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap .text_area h2 span {
    padding: 0 2vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .text_area h2 span {
    padding: 0 3.07vw;
    line-height: 1.9;
  }
}
#main_area .point_wrap .text_area .text {
  font-size: 14px;
  color: #ffffff;
  line-height: 1.71;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap .text_area .text {
    font-size: 1.4vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .text_area .text {
    font-size: 3.73vw;
    width: 89.33vw;
    margin: 0 auto;
  }
}
#main_area .point_wrap .point01 {
  padding-top: 310px;
  height: 736px;
  width: 1000px;
  margin: 0 auto;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap .point01 {
    padding-top: 31vw;
    height: 73.6vw;
    width: 100%;
    padding-left: 10px;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .point01 {
    padding-top: 11.2vw;
    height: 160vw;
    width: 100%;
  }
}
#main_area .point_wrap .point01 .text_area {
  margin: 0 auto 0 0;
}
#main_area .point_wrap .point02 {
  padding-top: 88px;
  height: 560px;
  width: 1000px;
  margin: 0 auto;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap .point02 {
    padding-top: 8.8vw;
    height: 56vw;
    width: 100%;
    padding-right: 10px;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .point02 {
    padding-top: 11.47vw;
    height: 176.8vw;
    width: 100%;
  }
}
#main_area .point_wrap .point02 .text_area {
  margin: 0 0 0 auto;
}
#main_area .point_wrap .point02 .text_area .num {
  text-align: right;
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .point02 .text_area .num {
    text-align: center;
  }
}
#main_area .point_wrap .point02 .text_area h2 {
  text-align: right;
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .point02 .text_area h2 {
    text-align: center;
  }
}
#main_area .point_wrap .point03 {
  padding-top: 208px;
  height: 804px;
  width: 1000px;
  margin: 0 auto;
}
@media only screen and (max-width: 1000px) {
  #main_area .point_wrap .point03 {
    height: 80.4vw;
    padding-top: 20.8vw;
    width: 100%;
    padding-left: 10px;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .point_wrap .point03 {
    padding-top: 11.47vw;
    height: 176.8vw;
    width: 100%;
  }
}
#main_area .point_wrap .point03 .text_area {
  margin: 0 auto 0 0;
}
#main_area .conversion_button {
  width: 560px;
  margin: 0 auto 78px;
  padding-top: 164px;
  position: relative;
}
@media only screen and (max-width: 1000px) {
  #main_area .conversion_button {
    width: 56vw;
    margin: 0 auto 7.8vw;
    padding-top: 16.4vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .conversion_button {
    width: 73.33vw;
    margin: 0 auto 10.93vw;
    padding-top: 42.67vw;
  }
}
#main_area .conversion_button:before {
  position: absolute;
  top: -30px;
  content: "";
  left: 50%;
  width: 2px;
  background: #272727;
  height: 120px;
}
@media only screen and (max-width: 1000px) {
  #main_area .conversion_button:before {
    top: -3vw;
    height: 12vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .conversion_button:before {
    top: 12.67vw;
    height: 21.33vw;
  }
}
#main_area .conversion_button a {
  display: block;
  border-radius: 55px;
  background: #c01920;
  color: #ffffff;
  text-align: center;
  line-height: 110px;
  font-size: 24px;
  font-weight: bold;
}
@media only screen and (max-width: 1000px) {
  #main_area .conversion_button a {
    border-radius: 5.5vw;
    line-height: 11vw;
    font-size: 2.4vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .conversion_button a {
    border-radius: 8vw;
    line-height: 16vw;
    font-size: 4vw;
  }
}
#main_area .fix_conversion_button {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.8);
  padding: 30px 0;
}
@media only screen and (max-width: 1000px) {
  #main_area .fix_conversion_button {
    padding: 3vw 0;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .fix_conversion_button {
    padding: 2.13vw 0;
  }
}
#main_area .fix_conversion_button a {
  width: 560px;
  display: block;
  border-radius: 55px;
  background: #c01920;
  color: #ffffff;
  text-align: center;
  line-height: 110px;
  font-size: 24px;
  font-weight: bold;
  margin: 0 auto;
}
@media only screen and (max-width: 1000px) {
  #main_area .fix_conversion_button a {
    width: 56vw;
    border-radius: 5.5vw;
    line-height: 11vw;
    font-size: 2.4vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .fix_conversion_button a {
    width: 73.33vw;
    border-radius: 8vw;
    line-height: 16vw;
    font-size: 4vw;
  }
}
#main_area .profile {
  width: 1000px;
  border-radius: 32px;
  background: #ffffff;
  border: 8px solid #e7e7e7;
  padding: 32px;
  margin: 0 auto;
  overflow: hidden;
}
@media only screen and (max-width: 1000px) {
  #main_area .profile {
    width: 98%;
    border-radius: 3.2vw;
    padding: 3.2vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .profile {
    width: 89.33vw;
    border-radius: 4.27vw;
    border: 4px solid #e7e7e7;
    padding: 8vw;
  }
}
#main_area .profile .text_area {
  width: 672px;
  float: right;
  padding-top: 26px;
}
@media only screen and (max-width: 1000px) {
  #main_area .profile .text_area {
    width: 67.2vw;
    padding-top: 2.6vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .profile .text_area {
    width: 100%;
    padding-top: 0;
  }
}
#main_area .profile .text_area h2 {
  font-size: 22px;
  font-weight: bold;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1000px) {
  #main_area .profile .text_area h2 {
    font-size: 2.2vw;
    margin-bottom: 2vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .profile .text_area h2 {
    font-size: 4.27vw;
    margin-bottom: 2vw;
  }
}
#main_area .profile .text_area p {
  font-size: 14px;
  line-height: 1.71;
}
@media only screen and (max-width: 1000px) {
  #main_area .profile .text_area p {
    font-size: 1.4vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .profile .text_area p {
    font-size: 3.73vw;
  }
}
#main_area .profile .img_area {
  width: 194px;
  float: left;
}
@media only screen and (max-width: 1000px) {
  #main_area .profile .img_area {
    width: 19.4vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .profile .img_area {
    width: 40.53vw;
    float: none;
    margin: 0 auto 3.47vw;
  }
}
#main_area .profile .img_area .img {
  text-align: center;
  font-size: 14px;
  font-weight: bold;
}
@media only screen and (max-width: 1000px) {
  #main_area .profile .img_area .img {
    font-size: 1.4vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .profile .img_area .img {
    font-size: 3.73vw;
  }
}
#main_area .profile .img_area .img img {
  margin-bottom: 8px;
}
@media only screen and (max-width: 1000px) {
  #main_area .profile .img_area .img img {
    margin-bottom: 0.8vw;
  }
}
@media only screen and (max-width: 768px) {
  #main_area .profile .img_area .img img {
    margin-bottom: 3.2vw;
  }
}

/*                footer
======================================================= */
#footer {
  background: #000000;
}
#footer .copy {
  font-size: 12px;
  text-align: center;
  color: #777777;
  padding: 48px 0;
  line-height: 1;
}
@media only screen and (max-width: 1000px) {
  #footer .copy {
    padding: 4.8vw 0;
    font-size: 1.2vw;
  }
}
@media only screen and (max-width: 768px) {
  #footer .copy {
    padding: 8.27vw 0;
    font-size: 2.13vw;
  }
}

/*
attachment
--------------------------------------------------------------------
*/
.bb {
  border-bottom: 1px solid #aaa;
}

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

.underline {
  text-decoration: underline !important;
}

.textRed {
  color: #c30000 !important;
}

.imgBox {
  border: 1px solid #9a9a9a;
}

.right {
  float: right !important;
}

.left {
  float: left !important;
}

.center {
  margin: 0 auto !important;
}

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

.align_left {
  text-align: left !important;
}

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

.clear {
  clear: both;
}

.txind {
  margin-left: 1em !important;
  text-indent: -1em !important;
}

.note {
  font-size: 100% !important;
}
@media only screen and (max-width: 768px) {
  .note {
    font-size: 85.7% !important;
  }
}

/*                テキスト装飾
======================================================= */
.pt0 {
  padding-top: 0 !important;
}

.pt1m {
  padding-top: 1em !important;
}

.pt05 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pr0 {
  padding-right: 0 !important;
}

.pr05 {
  padding-right: 5px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pl0 {
  padding-left: 0 !important;
}

.pl05 {
  padding-left: 5px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pb0 {
  padding-bottom: 0px !important;
}

.pb05 {
  padding-bottom: 5px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pb1m {
  padding-bottom: 1em !important;
}

.pb2m {
  padding-bottom: 2em !important;
}

.pd10 {
  padding: 10px !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mt05 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mr0 {
  margin-right: 0 !important;
}

.mr05 {
  margin-right: 5px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.ml0 {
  margin-left: 0 !important;
}

.ml05 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.ml50 {
  margin-left: 50px !important;
}

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

.mb05 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb1m {
  margin-bottom: 1em !important;
}

.wauto {
  width: auto !important;
}

.w50 {
  width: 50px !important;
}

.w100 {
  width: 100px !important;
}

.w150 {
  width: 150px !important;
}

.w200 {
  width: 200px !important;
}

.w220 {
  width: 220px !important;
}

.w250 {
  width: 250px !important;
}

.w300 {
  width: 300px !important;
}

.w350 {
  width: 350px !important;
}

.w400 {
  width: 400px !important;
}

.w450 {
  width: 450px !important;
}

.w500 {
  width: 500px !important;
}

.w550 {
  width: 550px !important;
}

.w05p {
  width: 5% !important;
}

.w10p {
  width: 10% !important;
}

.w15p {
  width: 15% !important;
}

.w20p {
  width: 20% !important;
}

.w25p {
  width: 25% !important;
}

.w30p {
  width: 30% !important;
}

.w35p {
  width: 35% !important;
}

.w40p {
  width: 40% !important;
}

.w45p {
  width: 45% !important;
}

.w50p {
  width: 50% !important;
}

.w55p {
  width: 55% !important;
}

.w60p {
  width: 60% !important;
}

.w65p {
  width: 65% !important;
}

.w70p {
  width: 70% !important;
}

.w75p {
  width: 75% !important;
}

.w80p {
  width: 80% !important;
}

.w85p {
  width: 85% !important;
}

.w90p {
  width: 90% !important;
}

.w95p {
  width: 95% !important;
}

.w100p {
  width: 100% !important;
}