/* Your custom styles */
/*ベース*/
html {
  scroll-behavior: smooth;
  margin: 0;
  padding:0;
}
.page_privacy div {
	background:#fff;
}
.page_tokusyou div {
	background:#fff;
}
.center {text-align: center;}
.block {
	display: block;
	margin: 0 auto;
}
.left {float: left;}
.right {float: right;}
.container-fluid {padding: 0;}
.grey-text {color: #717171!important;}
.bold {
    font-weight: 800!important;
    line-height: 1.5em;
    font-size: 26px;
    color:#11236b;
}
.white_txt {
  color:#fff !important;
}
body {
  background: #fff;
  margin: 0;
  padding: 0;
}
body p {
	font-size: 20px !important;
	max-width: 690px;
	margin: 0 auto 45px;
	text-align: left;
	color:#000 !important;
}
img {
    border: 0;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

.parallax {
  background-image: url('../img/para01.jpg'); /* ←ここに画像のURL */
  min-height: 500px; /* 高さはお好みで */
  background-attachment: fixed; /*パララックスのポイント！*/
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover !important;
}
.parallax02 {
  background-image: url('../img/para02.jpg'); /* ←ここに画像のURL */
  min-height: 500px; /* 高さはお好みで */
  background-attachment: fixed; /*パララックスのポイント！*/
  background-position: center;
  background-repeat: no-repeat;
}

.content {
  background-color: #fff;
  padding: 20px;
  font-size: 20px;
}
.txt_red {font-weight:bold;color:#ff4d69 !important;}
.txt_white {font-weight:bold;color:#fff !important;}
.txt_black {font-weight:bold;color:#000;}
.txt_pink {font-weight:bold;color:#ff3185 !important;}
.txt_green {font-weight:bold;color:#0bff33;}
.txt_yellow {font-weight:bold;color:#fff200;}
.yellow_marker {background-color: #ffec00;}
.f22 {font-size: 22px !important;}
.f30 {font-size: 30px !important;}
.f40 {font-size: 40px !important;}
.pb60 {padding-bottom: 60px !important;}
.mb60 {margin-bottom: 60px;}
.pt60 {padding-top: 60px !important;}
.bg_black {
	background:#000;
	padding-top: 10px !important;
	padding-bottom: 30px !important;
}
.bg_blue {
	background:#b1fbff;
	padding: 60px 0 30px;
}
.bg_light_blue {
	background: #dbfdff;
	padding: 30px 0 30px;
}
.bg_green {
	background: #d7ffdf;
	padding: 90px 0 60px;
}
.bg_beige {
	background:#fffdf2;
	padding:20px 0;
}
.bg_pink {
	background:#ffeefb;
	padding: 60px 0 30px;
}
.bg_navy {
	background:#000a22;
	padding: 60px 0 20px;
}
.bg_tama {
	background: url(../img/tama.png);
	padding: 60px 30px;
}
.bg_white {
	background: #fff;
	padding:60px 0;
}
.bg_ttl10 {
	background: url(../img/bg_ttl10.png);
}
.bg_ttl11 {
	background: url(../img/bg_ttl11.png);
}
.bg_ttl13 {
  background:#e1ffe4;
}
.bg_ttl14 {
  background: #000;
  padding-top: 35px;
}
.bg_white p {color: #140701 !important;}
.bg_white p.txt_red {font-weight:bold;color:#ff4d69 !important;}
.bg_blue p {color:#000 !important;}
.bg_navy p {
    color:#fff !important;
}
.container .row {
	margin: 0 auto;
    display: block;
}
.marker {
    background:linear-gradient(transparent 60%, #f6c 60%);
}
.error {
	font-size: 15px;
	color:red;
}
p.nega {
	background:#626477;
	padding:2%;
	color:#fff !important;
	font-weight: bold;
	text-align: center;
	font-size: 28px !important;
}
p.posi {
	background:#d7c753;
	padding:2%;
	color:#fff !important;
	font-weight: bold;
	text-align: center;
	font-size: 28px !important;
}
.button-004 {
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 230px;
    width: 100%;
    margin: 0;
    padding: 0.5em 0em;
    border: none;
    border-bottom: solid 3px #0059a0;
    border-radius: 5px;
    background-color: #2589d0;
    color: #fff;
    font-weight: 600;
    font-size: 1em;
    transition: .5s ease;
}
.button-004:hover {
    transform: translateY(3px);
    border-bottom-width: 3px;
}
.tb_waku {
	margin-bottom: 90px;
}
.prof_box {
	border: 5px solid #145ab4;
    padding: 40px 50px 0px;
    max-width: 690px;
    background: #f4fdff;
    width: 100%;
    margin: 0 auto 90px;
}
.waku_important {
	border: solid 10px #afe9eb;
	background: #c5fffc;
	padding: 45px;
	max-width: 690px;
    margin: 0 auto 60px;
}
.waku_important p {
	margin:45px 0;
}
.img_oz {
  margin-bottom: 45px;
}
.img_chaku {
   margin-bottom: 45px;
}
table {
  border: 1px solid #ccc;
  border-collapse: collapse;
  margin: 0 0 30px 0;
  padding: 0;
  table-layout: fixed;
  width: 100%;
}
table tr {
  background: #f8f8f8;
  border: 1px solid #ddd;
  padding: .35em;
}
table th,
table td {
  padding: .625em;
  text-align: center;
  font-size: 15px;
}
table th {font-weight: bold; color:#fff;}
table tr.ttl {background: #126a13;}
table td.day {font-weight: bold;}

@media screen and (max-width: 600px) {
  table thead {
    display: none;
  }
  table tr {
    border-bottom: 3px solid #ddd;
    display: block;
  }
  table td {
    border-bottom: 1px solid #ddd;
    display: block;
    text-align: right;
  }
  table td:before {
    content: attr(aria-label);
    float: left;
  }
  table td.day {
  	background:#126a13;
  	color:#fff;
  }
}
.thanks_page .container {
    border: solid 3px #333;
    padding: 60px 0 0;
    margin: 30px auto;
    max-width: 600px;
    width: 100%;
}
.thanks_page .container .box04 {
    max-width: 530px;
    margin: 0 auto;
    padding: 0px 20px;
}
.list p {
	padding-left:1em;
	text-indent:-1em;
	font-size: 22px! important;
	margin-bottom: 5px;
}
.container {
	padding-bottom: 1px;
}
.img_ttl {
	margin-bottom: 60px;
	border: solid #9200ad 10px;
}
.waku {
	padding: 20px 20px 0px 30px;
    background: #ededed;
    max-width: 550px;
    margin: 0 auto 45px;
    border: #626478 solid 5px;
}
.waku li {
	font-size: 17px;
	color:#fff;
	text-align: left;
}
.ad {
	font-size: 17px;
	color: #fff;
	text-align: left;
	max-width: 600px;
    margin: 0 auto 45px;
    background:#0a535f;
    padding: 30px;
}
.ad p {
	margin-bottom: 0;
}
.form_wrap {
  border: solid 3px #5f679d;
  padding: 0px 20px 60px 20px;
  background: #ebfdff;
}
form p.text-center.txt_red {
	font-size: 24px !important;
	line-height: 1.5em;
}
form p.bold {
	font-size: 24px !important;
	line-height: 1.5em;
	margin-top: 20px;
}
form input::placeholder {
	font-size: 18px;
}
.form02 {
  margin-top: 60px;
  margin-bottom: 60px;
}
.btn--orange,
button.btn--orange {
  font-weight: bold;
  background-color: #ff0000;
  color: #fff;
  font-size: 20px;
  padding: 20px 45px;
}
.btn--orange:hover,
button.btn--orange:hover {
  color: #000;
  background: #b8ff45;
}

button.btn--radius {
   border-radius: 100vh;
}

#btn_animation .btn {
  display: block;
  position: relative;
  font-size: 24px;
  border-radius: 39px;
  text-decoration: none;
  background-color: #e733b8;
  text-align: center;
  transition: .2s;
  color: #fbfbfb;
}

#btn_animation .btn {
  position: relative;
  -webkit-animation: glow-reverse 2s ease-in-out infinite alternate;
          animation: glow-reverse 2s ease-in-out infinite alternate;
}

#btn_animation .btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 39px;
  z-index: -1;
  background: inherit;
  -webkit-box-shadow: 0 0 1.3em #364f6b, 0 0 0.5em rgba(255, 255, 255, 0.5) inset;
        box-shadow: 0 0 1.3em #364f6b, 0 0 0.5em rgba(255, 255, 255, 0.5) inset;
  -webkit-animation: glow 2s ease-in-out infinite alternate;
        animation: glow 2s ease-in-out infinite alternate;
}
 
@-webkit-keyframes glow {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes glow {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes glow-reverse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
  }
}
@keyframes glow-reverse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
  }
}

@media screen and (max-width: 640px) {
	#loader-bg {
		background: url(../img/bg_loader.png);
		height: 100vh;
		left: 0px;
		position: fixed;
		top: 0px;
		width: 100%;
		z-index: 100;
	}

	#loader-bg {
		left: 50%;
		position: fixed;
		top: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
		z-index: 100;
	}
		
	/*#loader img {
		width: 96vw;
	}*/
}
.law_page #footer {
  padding: 30px;
}
/*MV*/
.software-lp .rgba-gradient {
	background: url(../img/bg_mv02.jpg) !important;
	background-repeat: no-repeat;
	background-position: contain;
}
.mv {
	max-width: 900px;
	margin: 0 auto;
	width: 100%;
	display: block !important;
}
header {
	height: auto !important;
  background: url(../img/bg_mv.jpg) !important;
  background-repeat: repeat-x;
}
.scroll {
    opacity: 1;
    visibility: visible;
    transform: translateY(0px);
}

/*見出し*/
.h1, h1 {
    font-size: 2rem;
    line-height: 1.5em;
}

.container-fluid.bg_moon .streak {
	background: url(../img/bg_show_case01.jpg) !important;
	background-repeat: no-repeat;
}

.container-fluid.bg_moon .streak.streak-photo {
    background-attachment: fixed;
}
.container-fluid.bg_moon strong {
	color:#fff;
}
.waku01 {
  background: #fff;
  padding:60px;
  margin: 45px 0;
  border: solid 5px #4d5a7b;
}
.waku01 p {
  color:#0b1644 !important;
}

/*head*/
.head_grey {
	background:#f3f3f3;
	padding:60px 0 30px;
	position: relative;
}
.head_ttl_bl {
	background:#140701;
	background-repeat: repeat-x;
	position: relative;
}
.head_ttl_wh {
	background:#fff;
	background-repeat: repeat-x;
	position: relative;
}
.head_navy02 {
	background:#083c90;
}
.head_black {
	background:#140701;
	position: relative;
}
.head div {
	max-width:1140px;
	margin: 0 auto;
}
.head div.txt_area {
	max-width: 580px;
	margin: 45px auto 0;
	padding: 0 20px 60px;
}
.black_box {
	background:#000;
	padding: 5px 15px;
	color:#fff;
	margin: 5px;
}
.ttl01 {
	width:100%;
	max-width: 754px;
	margin-bottom: 40px;
}
.ttl02 {
	max-width: 754px;
	width:100%;
}
.ttl03 {
	max-width: 754px;
	width:100%;
	margin-top: 60px;
	margin-top: 30px;
    margin-bottom: 30px;
}
.ttl04 {
	max-width: 754px;
	width:100%;
	margin-top: 0px;
	margin-bottom: 45px;
}
.ttl05 {
	max-width: 754px;
	width:100%;
	margin-top: 20px;
	margin-bottom: 40px;
}
.ttl06 {
	max-width: 754px;
	padding-top: 30px;
	width:100%;
	margin-bottom: 20px;
}
.ttl07 {
	max-width: 754px;
	width:100%;
	padding-top: 30px;
	margin-bottom: 45px;
}
.ttl08 {
	max-width: 754px;
	width:100%;
	margin-bottom: 45px;
}
.ttl14 {
  max-width: 754px;
  width:100%;
  margin-bottom: 45px;
}
.bg_ttl09 {
	background: url(../img/bg_ttl09.png);
}
.bg_ttl12 {
	background: url(../img/bg_ttl12.png);
}
.bg_thanks {
  background: url(../img/bg_thanks.png);
}
.ana_waku {
	margin-top: 60px;
	margin-bottom: 60px;
}
.ana {
	margin-bottom: 30px;
}
.manzoku_img {
	margin-bottom: 60px;
}
.waku_logic {
	font-size: 20px;
	border: solid 4px #ffb9b9;
	padding:30px;
	margin-top: -30px;
	margin-bottom: 30px;
	background: #ff3185;
  color: #fff;
  font-weight: bold;
  text-align: left;
  width: 100%;
  max-width: 690px;
  margin: -30px auto 40px;
}
.waku_open {
  font-size: 20px;
  border: solid 4px #fff;
  padding:30px;
  margin:0 auto 30px;
  background: #000;
  color: #fff;
  font-weight: bold;
  text-align: left;
  width: 100%;
  max-width: 690px;
}
.waku_open p {
  margin-bottom: 60px;
}
.tb {
  margin-bottom: 60px;
}
.tb05 {
  margin-bottom: 45px;
}
.tb06 {
  margin-bottom: 45px;
}
#qa {
	background: #ddedf7;
}
.voice_box {
    background:#e7eeef;
    padding: 40px 40px 10px;
    margin-bottom: 45px;
    border: solid 2px #333;
}
.voice_box .v_ttl {
	font-size: 30px;
  color: #000;
  font-weight: 500;
  border-bottom: solid 2px #333;
  margin-bottom: 30px;
  line-height: 3em;
}

#ft_hd {
	padding-top: 60px;
}
form .f_ttl {
    font-weight: bold;
    font-size: 24px !important;
    background: #000000;
    color: #fff !important;
    margin-top: 60px;
    margin-bottom: 35px;
}

form p.sample_btn {
  display: inline-block;
  max-width: 310px;
  width:100%;
  text-align: center;
  text-decoration: none;
  font-size: 20px;
  font-weight: bold;
  line-height: 60px;
  color: #000 !important;
  border: solid 4px #000000;
  color: #ffffff !important;
  border-radius: 50px;
  background-color: #ff6c00;
  box-shadow: 0px 5px 0px #000000;
  transition: .3s;
}
.sample_btn:hover {
  background-position: right center;
  background-size: 200% auto;
  -webkit-animation: pulse 2s infinite;
  animation: ripple 1.5s infinite;
  color: red;
  box-shadow: unset;
  transform: translateY(4px);
}
@keyframes ripple {
  0% {box-shadow: 0 0 0 0 #00ff00;}
  70% {box-shadow: 0 0 0 10px rgb(27 133 251 / 0%);}
  100% {box-shadow: 0 0 0 0 rgb(27 133 251 / 0%);}
}
textarea::placeholder {
 font-size: 18px;
}
textarea {
    overflow: auto;
    resize: vertical;
    max-width: 72% !important;
    margin-bottom: 30px;
    font-size: 18px;
}

/* 以下はレイアウト調整用 */
body{
  vertical-align:middle; 
  text-align: center;
}
.ttl_form {
	margin-top: 45px;
	margin-bottom: 30px;
}
.form_area .box04 p {
 	text-align: center !important;
 }
#gaiyou {
	font-size: 20px;
	text-align: left;
}
#gaiyou dt {
    font-size: 18px;
    color: #000;
    font-weight: bold;
    background: #ebebeb;
    padding: 7px 0 5px 11px;
    margin-bottom: 10px;
}
#gaiyou dd {
    font-size: 18px;
    margin-bottom: 30px;
    color: #000;
}
.thank_ttl {
	padding-top:45px;
}
/*pat*/
.pat {
	margin-bottom: 30px;
	max-width: 690px;
    width: 100%;
}
.wrap p {
	font-size: 40px !important;
	font-weight: bold;
}
.form_area p {
	color:#000 !important;
}
.form_area p.detail {
	font-size: 13px !important;
	line-height: 1.4em;
}
form {
	max-width: 700px;
    padding: 0px;
    margin: 0px auto 0;
    color: #000;
    display: block;
    margin-top: 0em;
    unicode-bidi: isolate;
}
form .course-options label {
    font-size: 20px;
    font-weight: bold;
    text-align: left;
    display: block;
    max-width: 450px;
    margin: 0 auto 15px;
    background: #d1d1d1;
    padding: 10px;
}

.bg_white form p.text-center.txt_red.blinking {
	color:#ff0000 !important;
}
table.gaiyou {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    margin-top: 30px;
    font-size: 18px !important;
    margin-bottom: 20px;
}
table.gaiyou td {
    background: #ffffff;
    font-size: 18px !important;
    color: #0f2b70 !important;
    border: 1px solid #ccc;
    box-sizing: border-box;
    padding: 15px;
    vertical-align: top;
    text-align: left;
}
table.gaiyou th {
    width: 22%;
    font-size: 18px !important;
    display: block;
    width: 100%;
    color: #0f2b70;
    box-sizing: border-box;
    padding: 15px;
    vertical-align: middle;
    font-weight: bold;
    text-align: center;
}
.form02 {
    margin-top: 10px;
    margin-bottom: 60px;
}

.course-options {
    gap: 10px;
    font-size: 16px;
    margin-bottom: 45px;
}
.course-options input[type="radio"] {
    margin-right: 10px;
    transform: scale(1.2); /* ちょっと大きめに */
}
.l-row .col2 {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.l-row .col2 > li {
    width: calc(100% / 2 - (var(--margin-col) / 2));
    margin-right: var(--margin-col);
    margin-bottom: var(--margin-col);
    max-width: 300px !important;
    width: 100% !important;
    display: block !important;
    margin-right: 20px;
}
input[type=checkbox], input[type=radio] {
    box-sizing: border-box;
    padding: 0;
}
*, *:before, *:after {
    -webkit-box-sizing: inherit;
    box-sizing: inherit;
}
.c-btn_pay01 {
    display: none;
}
.c-btn_pay01 + label {
    display: block;
    background: url(../img/ico_radio01.png) center left 1em / 1em auto no-repeat #FFF;
    padding: 1em 1em 1em 2.5em;
    color: var(--color-blk1);
    border-radius: 10px;
    transition: all .3s;
}
.c-btn_pay01 + label {
    display: block;
    background: url(../img/ico_radio01.png) center left 1em / 1em auto no-repeat #FFF;
    padding: 1em 1em 1em 2.5em;
    color: var(--color-blk1);
    font-size: 18px;
    border-radius: 10px;
    transition: all .3s;
    margin-bottom: 15px;
}
.c-btn01 {
    display: flex;
    width: 100%;
    font-weight: 700;
    font-size: 2em;
    padding: 1.5em 1em;
    background-color: #ff0785;
    box-shadow: 0 5px 0 #792605;
    border-radius: 60px;
    color: #fff;
    cursor: pointer;
    text-decoration: none;
    justify-content: center;
}
.col2 li label:hover {cursor:pointer;}
.c-btn_pay01 + label {
    display: block;
    background: url(../img/ico_radio01.png) center left 1em / 1em auto no-repeat #e3e3e3;
    padding: 1em 1em 1em 1em;
    color: var(--color-blk1);
    border-radius: 10px;
    transition: all .3s;
}
.c-btn_pay01:checked + label {
    background: url(../img/ico_radio02.png) center left 1em / 1em auto no-repeat var(--color-main1);
    font-weight: 700;
    background: #0f2b70 !important;
    color: #fff;
}
.posi_waku {
    border: solid #cdcdcd 3px;
    padding: 45px 40px;
    max-width: 480px;
    margin: 0 auto 60px;
    font-weight: bold;
    background: #f3f3f3;
    text-align: left;
}
.fix01 {
  background: url(../img/fix01.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed; /* ← これが背景固定のキモ！ */
}
.white_box {
    background: #fff;
    opacity: 90%;
}

.white_box p {
  color:#000 !important;
}
.white_box p.bold {
    font-weight: 800 !important;
    line-height: 1.5em;
    font-size: 26px !important;
    color: #11236b !important;
}
.bg_navy.fix01 .box04 {
  padding: 40px 50px;
}
.bg_white.content {
  padding:0;
}

/*画像*/
.sc {
	margin-top: 15px;
	margin-bottom: 60px;
}
.sc_box {
	background: #f9f9f9;
	padding:60px 45px 30px;
	margin-bottom: 60px;
}
.img01 {
	max-width: 743px;
	width: 100%;
	margin-bottom: 70px;
    margin-top: 30px;
}
.img02 {
	max-width: 754px;
    width: 100%;
    margin: 0 auto;
    display: block;
}
.img03 {
	max-width: 340px;
	padding-bottom: 75px;
	width: 100%;
	display: block;
	margin: 0 auto;
}
.img04 {
	max-width: 757px;
	margin: 0 auto 60px;
	width: 100%;
}
.img05 {
	max-width: 718px;
	width: 100%;
	margin-top: 0px;
	margin-bottom: 90px;
}
.img06 {
	max-width: 734px;
	width: 100%;
	margin-top: 30px;
	margin-bottom: 60px;
}
.img07 {
	max-width: 1000px;
	width: 100%;
	margin-bottom: -30px;
}

.img08 {
	max-width: 1000px;
	width: 100%;
	margin-bottom: 45px;
}
.img09 {
	max-width: 1000px;
	width: 100%;
	margin-top: 20px;
  margin-bottom: 20px;
}
.img10 {
	max-width: 1000px;
	width: 100%;
	margin-top: 10px;
	margin-bottom: 60px;
}
.img11 {
	max-width: 1000px;
	width: 100%;
}
.img12 {
	max-width: 1000px;
	width: 100%;
	margin-bottom: 45px;
}
.img13 {
  max-width: 700px;
  width: 100%;
  margin-bottom: 60px;
}
.img14 {
  max-width: 700px;
  width: 100%;
  margin-bottom: 60px;

  max-width: 1000px;
  width: 100%;
  margin-bottom: 60px;
}
.img17 {
  max-width: 800px;
  width: 100%;
  margin-bottom: 60px;
}
.img18_02 {
  max-width: 800px;
  width: 100%;
  margin-bottom: 60px;
}
.img22 {
  max-width: 754px;
  width: 100%;
  margin-bottom: 110px;
}
.img23 {
  max-width: 754px;
  width: 100%;
  padding-top: 0px;
  margin-bottom: 75px;
}
.img24 {
  max-width: 754px;
  width: 100%;
  padding-top: 0px;
  margin-bottom: 75px;
}
.img25 {
  max-width: 754px;
  width: 100%;
  padding-top: 0px;
  margin-bottom: 60px;
}
.img26 {
  max-width: 754px;
  width: 100%;
  padding-top: 0px;
  margin-bottom: 60px;
}
.jisseki table td.hit {
    background: #ff6f6f !important;
    font-weight: bold;
}
.logo_pc {
	max-width: 680px;
	width:100%;
	margin-bottom: 60px
}
.float_box {
	max-width: 1000px;
	width:100%;
	display: block;
	overflow: hidden;
}
.float_box div {
	max-width: 980px;
    width: 100%;
    margin: 0 auto 60px;
    display: block;
    overflow: hidden;
}
.txt_img {
	font-weight: bold;
	padding-bottom: 90px;
	text-align: center;
}
.bg_thanks {margin-bottom: 70px;}
.thanks_page main {
  margin: 0 20px;
}
.thanks_page .waku_credit {
    margin-bottom: 50px;
}
.thanks_page .waku_bank {
    background: #e3e3e3;
    margin-bottom: 50px;
    border-radius: 30px;
    padding: 40px 40px 1px 40px;
}
.thanks_page .waku_credit p {
  color: #000 !important;
}
.thanks_page .waku_credit form p.get_btn {
    display: inline-block;
    max-width: 400px;
    width: 100%;
    text-align: center;
    text-decoration: none;
    font-size: 18px !important;
    font-weight: bold;
    color: red !important;
    border-radius: 40px;
    padding: 15px 20px 15px;
    line-height: 1.3em;
    background-color: #00ff00;
    box-shadow: 0px 5px 0px #16890e;
    transition: .3s;
    color:red !important;
  }
  p.get_btn:hover {
  background-position: right center;
  background-size: 200% auto;
  -webkit-animation: pulse 2s infinite;
  animation: ripple 1.5s infinite;
  color: #000;
  box-shadow: unset;
  transform: translateY(4px);
}
.thanks_page .waku_credit form button {
    border: none;
    background: none;
    margin-bottom: 10px;
    max-width: 780px;
    width: 100%;
    padding: 30px 20px 20px;
}
[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {
    cursor: pointer;
}
.line {
	margin-bottom: 30px;
	max-width: 500px;
	width:100%;
	border: solid 10px #2f2f2f;
}
.jisseki01 {
	margin-bottom: 45px;
}
.jisseki02 {
	margin-bottom: 45px;
}
/*Form*/
form p {
	margin-bottom: 10px;
	text-align: center;
}
.top-register-box .set-width {
    margin: 0px auto 0;
    position: relative;
}
.register-box .set-width {
    max-width: 680px;
}
.set-width {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 10px;
    padding-right: 10px;
}
.register-box form {
    width: 95%;
    margin: 25px auto 0;
    margin-bottom: 20px;
    max-width: 600px;
}
.register-box form .input-holder {
	margin-bottom: 30px;
}
.form.streak {
    position: relative;
    display: block;
    padding: 30px 0px 30px;
    overflow: hidden;
    background:#00572f;
}
.register-box {
    background: #fff;
}
.bg-form {
	margin-bottom: 20px;
    background: #fff;
    padding: 6px;
    border:solid 10px #eaeaea;
}
.register-box h2 img {
    width: 565px;
    margin-top: -190px;
}
.register-box form {
    width: 85%;
    margin: 20px auto 0;
    margin-bottom: 20px;
    max-width: 600px;
}
.register-box form div {
	margin: 0 auto;
	max-width: 522px;
}
.register-box form div.sns_area {
	text-align: center;
}
.register-box form div.sns_area p {
	font-weight: bold;
	text-align: center;
}
.register-box form ul {
	overflow: hidden;
	padding-left: 0;
}
.register-box form ul li {
	list-style-type: none;
	display: inline-block;
    margin-bottom: 10px;
    margin-left: 10px;
}
.register-box form ul li img {
	max-width: 160px;
	height: auto;
}
.register-box .hush {
    margin-bottom: 15px;
}
.register-box input {
    padding: 15px;
    font-size: 18px;
    border-radius: 5px;
    background: #ebebe6;
}
main.bg_check .container {
	background: #fff;
}

/*まずはお決まりのボックスサイズ算出をborer-boxに */
*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 62.5%;/*rem算出をしやすくするために*/
}

.terms_txt {
	color: #000 !important;
	font-size: 13px !important;
	margin-top: 30px;
	text-align: center;
	line-height: 1.4 !important;
}
.jisseki_box {
	margin-bottom: 30px;
}
.jisseki_box p {
	margin-bottom: 10px;
	font-size: 30px;
	font-weight: bold;
	text-align: center !important;
}
/*MV*/
.head_line {
	margin: 0 auto;
}
.software-lp .navbar:not(.top-nav-collapse) {
	background: #000;
}
.txt-flow {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    white-space: nowrap;
    font-weight: 600;
    color: rgba(0,0,0,.8);
    text-shadow: 0px 0px 2px rgb(156 233 242), 0px 0px 2px rgb(156 233 242), 0px 0px 2px rgb(156 233 242), 0px 0px 2px rgb(156 233 242), 0px 0px 2px rgb(156 233 242), 0px 0px 2px rgb(156 233 242), 0px 0px 2px rgb(156 233 242);
    background: #fff;
}
.form_ttl {
  color:#fff;
  font-weight: bold;
  text-align: center;
  font-size: 40px !important;
  margin-bottom: 20px;
}
.form_ttl .bg_yellow {
  color:#000;
  background: linear-gradient(to right, #21ff00 0%, #ffff00 100%);
  font-weight: bold;
  font-size: 35px !important;
  padding: 5px 10px;
}
.form-control {
    max-width: 500px;
    width: 100% !important;
    margin: 0 auto;
    background: #fff !important;
    height: 50px;
    font-size: 24px;
}
/*footer*/
footer .ft_link ul {
	padding-left: 0;
	margin-bottom: 0;
}
footer .ft_link ul li {
	list-style-type: none;
	display: inline-block;
	margin-right: 25px;
	font-size: 0.9rem;
}
footer.page-footer .footer-copyright {
	background:#000;
}

/*その他*/
.tokuten .text-left {
	max-width: 360px;
	margin: 0 auto;
}
.icon-area .circle-icon {
	padding-bottom: 0 !important;
}

section.ex {
	padding: 0 2%;
}

.box04 {
	max-width: 900px;
    margin: 0 auto;
    padding: 0px 20px;
}
.box04 .col-lg-4 {
	margin-bottom: 30px;
	background:#fff;
	opacity: 0.8;
	max-width: 860px;
	-ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    float: left;
}

.box04 .col-lg-4.voice01 {
	padding: 10px;
}
.box04 .col-lg-4.voice02 {
	padding:30px;
}
.box04 .col-lg-4 .icon-area .circle-icon {
	float: left;
}
.box04 .col-lg-4 .icon-area p {color:#fff;}
.box04 .col-lg-4 .icon-area .mt-1 div {
	float: right;
	width: 74%;
}

.box04 .col-lg-4.voice01 .text-center span {
	background:#000;
	color: #fff;
	padding: 5px 8px;
    margin-left: 10px;
}
.box04 .col-lg-4.voice02 .text-center span {
	background:#000;
	color: #fff;
	padding: 5px 8px;
    margin-left: 10px;
}

.box04 .col-lg-4 .circle-icon {
	margin-bottom: 20px;
}
.box04 .col-lg-4 .circle-icon .icon {
	max-width: 180px;
}
.icon-area .circle-icon.center {
	margin: 0 auto;
	display: block;
}
.bg_jisseki {
	background: url(../img/bg_jisseki.jpg);
    background-size: cover;
}
.bg_jisseki .container {
	padding: 60px;
	overflow: hidden;
}
.bg_jisseki .container .txt div {
	max-width: 860px;
    padding: 60px;
	margin: 0 auto;
	display: block;
}
.bg_jisseki .container .txt div img {
	margin-bottom: 60px;
}
.bg_check .container {padding: 60px;}
.bg_check .container img {margin:30px auto 75px;}
.bg_voice p {
	margin-bottom: 5px;
}
.sub-box {
    padding: 50px 0;
    background: url(../img/bg_mv_01.jpg);
    background-size: cover;
}
.bg_black p {
	color: #fff;
}
.bg_black .container {
	padding:0px 0px 30px 0;
}
.bg_black .container.form_area {
	padding:0px 0px 0px 0;
}
.bg_blank {
	padding-top: 60px;
    padding-bottom: 20px;
}
.obi {
	width:100%;
    margin: 0 auto;
    display: block;
}
.video_area {
	margin-bottom: 60px;
    margin-top: 60px;
}
video {
  max-width: 674px;
  width: 100%;
}

@media (max-width: 1021px){
	.h1, h1, .font-weight-bold {font-size: 1.8rem;}
}

@media (min-width: 992px){
	section .box04 .col-lg-4 {
	    -ms-flex: 0 0 48% !important;
	    flex: 0 0 48% !important;
	    max-width: 48% !important;
	}
}
@media (max-width: 991px){
	.carousel-multi-item .carousel-indicators {
	    margin-bottom: -1.5em;
	}
	main .carousel.pointer-event {
	    margin: 65px 60px 90px;
	}
	.carousel-item .view .intro-2 {
	    height: 780px;
	}
	header .carousel-item img {
		max-width: 100% !important;
	}
	.box04 .col-lg-4 .icon-area .mt-1 div {
	    width: 67%;
	}
	.bg_jisseki .container {
		max-width: 940px;
		padding: 40px;
	}
  .l-row .col2 {
    padding-left: 0;
  }
  .l-row .col2 > li {
    max-width: none !important;
    margin-right: 0;
  }
}
@media screen and (max-width: 960px) {
  .Qa-Box {
    width: 95%;
  }
}
@media (max-width: 898px){
	.jisseki_area ul li.left {
		float: none;
		margin: 0 auto;
	    display: block;
	    max-width: 399px;
	}
	.jisseki_area ul li.right {
		float: none;
		margin: 0 auto;
	 　display: block;
	 　max-width: 399px;
	}
}
@media (min-width: 769px){
	.mv.sp {display: none !important;}
	.sp {display: none !important;}
	.mdb-lightbox [class*=col-] {
	    padding: 0.05rem;
	}
	.carousel-multi-item .col-md-4 {
	    float: left;
	    width: 20%;
	    max-width: 100%;
	}

	footer .col-md-7 {
		flex: 0 0 100%;
	    max-width: 100%;
	    text-align: center;
	}
}

@media (max-width: 768px){
  .parallax {
    background-attachment: scroll !important;
  }
  .parallax02 {
    background-attachment: scroll !important;
  }
	.pc {display: none !important;}
	.mv.sp {display: inline-block;}
	.sp {display: inline-block !important;}
	p {font-size: 17px !important;}
	.h1, h1, .font-weight-bold {
	    font-size: 1.5rem;
	}
	.f40 {font-size: 36px !important;}
	.f30 {font-size: 26px !important;}
	.mdb-lightbox figure {
	    max-width: 150px;
	    width: 20%;
	}
	.form_ttl .bg_yellow {font-size: 30px !important;}
	.form_area .box04 p.cau {font-size: 15px !important;}
	header {margin-bottom: 0;}
	main .carousel.pointer-event {
	    margin: 40px 30px 90px;
	}
	.mdb-lightbox [class*=col-] {
	    padding: 0.01rem;
	}
	.set-width {width:90%;}
	.bg_money .container div {
	    background: #000;
	    padding: 45px 30px 5px 30px;
	}
	.box04 {
	    max-width: 900px;
	    margin: 0 auto;
	    padding: 0;
	}
	.box04 .col-lg-4.voice01 {
	    margin-right: 0px;
	}
	.bg_blank .container {
	    padding: 20px;
	}
	.box04 .col-lg-4 .icon-area .circle-icon {
	    float: none;
	}
	.box04 .col-lg-4 .icon-area .mt-1 div {
	    width: 98%;
	}
	.v_box p.ttl {font-size: 24px !important;}
	.ttl01 {width: 90%;margin-bottom: 30px;}
	.ttl02 {width: 90%;margin-bottom: 30px;}
	.ttl03 {width: 90%;margin-bottom: 30px;}
	.ttl04 {width: 90%;margin-bottom: 30px;}
	.ttl05 {width: 90%;margin-bottom: 30px;}
	.ttl06 {width: 90%;margin-bottom: 30px;}
	.ttl07 {width: 90%;margin-bottom: 30px;}
	.ttl08 {width: 90%;margin-bottom: 30px;}
	.ttl_form {
	    margin-top: 10px;
	    margin-bottom: 30px;
	}
	.tb_waku {
	    margin-bottom: 0px;
	}
	.v_box .name {font-size: 16px !important;}
	.v_box p.star {font-size: 14px !important;}
	body .v_box_waku .v_box .result p {font-size: 17px !important;}
	body .v_box_waku .v_box .comment p {font-size: 17px !important;}
	.Qa-Box .Qa dt::before {
		margin-right:0;
		width: 1.7em;
    	height: 1.7em;
	}
	.Qa-Box .Qa dd::before {
		width: 1.7em;
    	height: 1.7em;
	}
	.Qa-Box .Qa dt p {
		line-height: 1.4em;
		font-size: 17px !important;
	}
	.Qa-Box .Qa dd p {
		padding-left: 0;
		line-height: 1.4em;
		font-size: 17px !important;
	}
	.head_ttl {height: auto;}
	.button-004 {max-width: 220px;}
	.form_ttl .bg_yellow {font-size: 30px;}
}
@media (max-width: 640px){
	.button-004 {
	    max-width: 460px;
	}
}

@media (max-width: 599px){
	.form_ttl {
		line-height: 1.3em !important;
	}
	form {
	    padding: 30px 20px;
	}
}
@media (min-width: 541px){
	.pc {display: inline-block;}
	.sp {display: none;}
}
@media (max-width: 540px){
	.pc {display: none;}
	.sp {
		display: inline-block;
	}
	.f30 {font-size: 22px !important;}
	.f40 {font-size: 25px !important;}
	body p {
	    font-size: 15px !important;
	    margin-bottom: 50px;
	}
  .parallax, .parallax02 {
    background-attachment: fixed;
    min-height: 500px;
  }
	.bg_green {
	    padding: 0px 0 0px;
	}
  .bg_green .container {
    padding-top: 45px;
  }
	.bg_beige {
	    padding: 0px 0;
	}
	.bg_blue {
	    background: #b1fbff;
	    padding: 30px 0 0px;
	}
	.bg_black .container {
	    padding: 20px 20px 60px 20px;
	}
	.bg_black .container.form_area {
		padding-bottom: 35px;
		padding-top: 20px;
	}
	.container {
    	padding-top: 0px;
  }
  textarea {
	    max-width: 100% !important;
	    margin-bottom: 20px;
	    font-size: 18px;
	}
  .waku p {
  	margin-bottom: 20px;
  }
  .ttl01 {width: 100%;margin-bottom: 30px;}
  .ttl02 {width: 100%;margin-bottom: 30px;}
  .ttl03 {width: 80%;margin-bottom: 30px;}
  .ttl04 {width: 100%;margin-bottom: 30px;}
  .ttl05 {width: 100%;margin-bottom: 30px;}
  .ttl06 {width: 100%;margin-bottom: 0px; padding-top:0;}
  .ttl07 {width: 100%;margin-bottom: 30px;}
  .ttl08 {width: 90%;margin-bottom: 30px;}
	.waku01 {
    background: #fff;
    padding: 10px 20px;
  }
  .bg_navy.fix01 .box04 {
    padding: 30px 20px;
  }
  form p.sample_btn {font-size: 20px !important;}
  form p.text-center.txt_red {
    margin-bottom: 10px;
  }
  form p {font-size: 15px !important;}
	.mv.pc {display: none !important;}
	.wrap p {font-size: 30px !important;}
	.streak {height: 200px;}
	.bg_black {
	    background: #020a16;
	    padding-bottom: 0px !important;
	}
	body form p {
		margin-bottom: 0;
	}
	form {
	    max-width: 490px;
	    padding: 0px 20px 20px 20px;
	}
	.thanks_page .waku_credit form button {
      padding: 0px;
      margin-bottom: 45px;
  }
	.bg_black .container {
	    padding: 30px auto 30px;
	}
	.register-box form {
		margin-bottom: 0;
		width: 100%;
	}
	.register-box form p {margin-bottom: 30px;}
	.bg-form {
		padding: 0 20px 10px;
	  max-width: 450px;
	  margin: 0 auto;
	}
	.box04 {
	    padding: 0 0px;
	}
	.box04.pt60 {
		padding-top: 0 !important;
	}
	.box04 .col-lg-4 {
	    margin-bottom: 30px;
	    max-width: 860px;
	    -ms-flex: 0 0 50%;
	    flex: 0 0 100%;
	    max-width: 100%;
	}
	.ttl {
	    margin-top: 40px;
	    margin-bottom: 60px;
	}
	.head div.txt_area {
	    max-width: 580px;
	    margin: 45px auto 0;
	    padding: 0 30px 20px;
	}
	.bg_blank .container {
	    padding: 0 15px;
	}
	button {font-size: 20px;}
	.form.streak {
	    padding: 20px 0px 30px;
	}
	.register-box input {
	    padding: 10px;
	    font-size: 15px;
	}
	.bg-form {
	    border: solid 6px #eaeaea;
	}
	.register-box form .input-holder {
	    margin-bottom: 15px;
	}
	.register-box form {
	    margin: 20px auto 0;
	}
	.register-box form p {
	    margin-bottom: 10px;
	}
	.img01 {
	    margin-bottom: 45px;
	}
	.img04 {
		margin-top: 10px;
	    margin-bottom: 40px;
	}
	.img05 {
      margin: 0px 0 55px;
  }
	.img06 {
      margin: 0px 0 40px;
  }
	.voice_box .v_ttl {
	    font-size: 20px;
	}
	.voice_box img.vo01 {
	    max-width: 501px;
	    width: 40%;
	}
	.voice_box .name {
	    color: #fff !important;
	    padding: 10px 10px 7px;
	    font-size: 18px !important;
	    margin-bottom: 20px;
	    text-align: center;
	}
	.voice_box {
	    padding: 30px 20px 30px;
	    margin-bottom: 45px;
	}
	.ttl01 {
	    width: 100%;
	    margin-bottom: 0px;
	    padding-bottom: 20px;
	}
	.ttl02 {
	    width: 100%;
	    margin-bottom: 20px;
	    padding-top: 45px;
	}
	.ttl03 {
	    margin-top: 0px;
	    margin-bottom: 30px;
	    padding-bottom: 0 !important;
	}
	.ttl04 {
	    margin-top: 10px;
	    margin-bottom: 30px;
	}
	.ttl06 {
	    margin-bottom: 0px;
	}
	.ttl07 {
		padding-top: 40px;
	    margin-bottom: 30px;
	}
	.list {margin: 40px auto;}
	.list p {font-size: 22px ! important;}
	.prof_box {
	    padding: 40px 40px 0px;
	    margin: 0 auto 0px;
	}
	.v_box .v01 {
	    float: right;
	    width: 30%;
	}
	.v_box p.ttl {
    font-size: 21px !important;
    line-height: 1.4em;
    margin-bottom: 10px;
  }
  .v_box p.star {
	   margin-bottom: 20px;
	}
	body .v_box_waku .v_box .result p {
    font-size: 15px !important;
  }
	body .v_box_waku .v_box .comment p {
    font-size: 15px !important;
  }
	.thanks_page body p {
    font-size: 15px !important;
    margin-bottom: 30px;
  }
  .thanks_page .waku_credit {
    margin-bottom: 0px;
  }
	.thanks_page .center {
      padding: 0px 40px 1px 40px;
      margin-bottom: 20px;
  }
  .thanks_page .center form button {
      padding: 0px;
  }
  .thanks_page .bg_thanks {
    margin-bottom: 40px;
  }
	ul.heart_waku {
    	padding: 20px 15px 0px 15px;
	}
	.Qa-Box {margin: 0 auto 40px;}
	ul.schedule_list li {
		font-size: 15px;
		padding: 6px 5px 5px 5px;
	}
	ul.schedule_list {
	    padding: 20px 20px 10px 20px;
	}
	.merit_waku {font-size: 16px;}
	form p.text-center.txt_red {
	    font-size: 20px !important;
	}
	#gaiyou dd {
	    font-size: 18px;
	    margin-bottom: 20px;
	}
	#btn_area {border: 8px #e1e1e1 solid;}
	.img02.block {display: none;}
	#ft_hd {padding-top: 20px;}
  .l-row .col2 {
    padding-left: 0;
  }
  .l-row .col2 > li {
    margin-right: 0;
    max-width: none !important;
  }
  .l-row .col2 {
    display: flow-root !important;
  }
}

@media (max-width: 414px){
	body p {font-size: 14.5px !important;}
	.h1, h1, .font-weight-bold {
	    font-size: 1.3rem;
	}
	h2 {
		font-size: 1rem;
		line-height: 1.3em;
	}
  .bold {font-size: 21px;}
  .white_box p.bold {font-size: 21px !important;}
	.f22 {
	    font-size: 19px !important;
	}
	.f40 {
      font-size: 20px !important;
  }
  .f30 {
      font-size: 17px !important;
  }
	.pt-5, .py-5 {
    	padding-top: 1rem!important;
	}
	.mb-4, .my-4 {
		  margin-top:0 !important;
	    margin-bottom: 0.4rem!important;
	}
  .bg_white {
    padding: 30px 0;
  }
  .bg_pink {
    background: #ffeefb;
    padding: 20px 0 0px;
  }
	.bg_black {
		padding-top: 0px !important;
	}
	.form_area .box04 p {
	    margin-bottom: 0px;
	}
  .c-btn_pay01 + label {
    padding: 0.5em;
  }
	form label {
	   margin-top: 20px;
	}
	form p.bold {
	   margin-top: 0px;
	}
	form p.sample_btn {
    font-size: 18px !important;
  }
	.form_ttl .bg_yellow {
    font-size: 25px !important;
    line-height: 1.2em;
  }
  .form_ttl .bg_yellow {font-size: 22px !important;}
	.wrap p {
      font-size: 20px !important;
      margin-bottom: 25px;
      margin-top: 10px;
  }
  .posi_waku {margin: 0 auto 30px;}
	.waku_important {padding: 20px;}
	.waku_important p {
	    margin: 30px 0;
	}
	.img01 {margin-top: 0px;}
  .streak {
    height: 150px;
  }
  .voice_box .v_ttl {
    font-size: 18px;
  }
  form .f_ttl {
    font-weight: bold;
    font-size: 17px !important;
    background: #000000;
    color: #fff !important;
    margin-top: 20px;
    margin-bottom: 0px;
  }
  .btn--orange, button.btn--orange {
    padding: 15px 20px;
  }
  .waku_open p {
    margin-bottom: 40px;
  }
	.ttl {
	   margin-top: 40px;
	   margin-bottom: 40px;
	}
	.ttl01 {
		padding-top: 10px;
		padding-bottom: 30px;
    margin-bottom: 0px;
  }
	header {
		margin-bottom: 0;
	}
	.bg_blank {padding-bottom: 0;}
	.head_grey {padding: 45px 0 10px;}
	header .flex-center {
	    height: 70% !important;
	}
	.jisseki_area .jisseki_box p {
	    background: #413d3d;
	    padding: 5px 5px 5px 10px;
	}
	#defaultContactFormEmail {margin-bottom: 20px !important;}
	form.p-5 {padding:2rem 1rem !important;}
	.register-box form .input-holder {
	    margin-bottom: 15px;
	}
	.list {
        padding: 0;
        margin: 20px auto;
  }
	.list p {
        font-size: 18px ! important;
  }
  .posi_waku {
    padding: 30px 20px;
    font-size: 17px;
  }
	.waku_important:first-child {
		margin-top: 10px;
	}
  .v_box_waku {
	  margin-bottom: 60px;
	}
  .waku.thanks li {
    font-size: 14px !important;
  }
  .bg_navy {
    padding: 30px 0 20px;
  }
  .bg_navy.fix01 .box04 {
    padding: 40px 20px;
  }
	.img02 {
	    max-width: 497px;
	    width: 100%;
	    margin-bottom: 30px;
	}
	.img03 {
	    width: 100%;
	    margin-bottom: 30px;
	    padding-bottom: 0;
	}
	.img04 {
	    margin-bottom: 60px;
	}
	.img06 {
	    margin-top: 30px;
	    margin-bottom: 30px;
	}
	.img07 {
		margin-top:0;
		margin-bottom: -30px;
	}
	.ttl02 {
	    margin-bottom: 0px;
	}
	.ttl03 {
	    margin-top: 0px;
	    margin-bottom: 20px;
	}
	.ttl04 {
	    margin-top: 0px;
	    margin-bottom: 30px;
	}
	.ttl05 {
	    margin-top: 0px;
	    margin-bottom: 20px;
	}
	.ttl06 {
	    margin-top: 0px;
	    padding-top: 30px;
	    margin-bottom: 20px;
	}
	.ttl07 {
	    margin-bottom: 20px;
	    padding-top:0px !important;
	}
	.jisseki {
       margin-bottom: 0px !important;
    }
    .txt_img {
	    padding-bottom: 30px;
	    text-align: center;
	    font-size: 20px !important;
	}
	.bg-form {padding: 0 20px 0px;}
	.bg_black .container {
	    padding: 20px 20px 45px 20px;
	}
	.bg_blank .container {
	    padding: 30px 15px 0px 15px;
	}
	.register-box input {
		font-size: 14px;
		padding: 10px;
	}
	.register-box form ul li img {
	    max-width: 120px;
	    height: auto;
	}
	.input-holder {margin-bottom: 10px;}
	.bottun-holder {margin-bottom: 0;}
	.register-box form p {
	    margin-bottom: 15px;
	}
	.head_red {
	    height: 100px;
	}
	.bg_blank {
	    padding-top: 0px !important;
	    margin-bottom: 0;
	}
	.merit_waku {
	    font-size: 16px;
	    padding: 30px 20px 0;
	}
  .thanks_page .center {
    padding: 0px 20px 1px 20px;
  }
  .thanks_page .center form button {
    padding-top: 15px;
  }
	footer .ft_link ul li {
	    margin-right: 6px;
	    font-size: 0.7rem;
	}
	.ttl_form {
	    margin-top: 10px;
	    margin-bottom: 20px;
	}
	form {
    max-width: 490px;
    padding: 15px 0 0 0;
  }
	.form.streak {
	    padding: 10px 0px 20px;
	}
	.form.streak p:last-child {
		margin-bottom: 20px;
		text-align: center;
	}
	.thanks_page .bg_tama .container {
	    padding: 25px 20px;
	}
  .thanks_page .waku_credit {
    padding: 20px 10px 1px 10px;
  }
  .thanks_page form {
    max-width: 490px;
    padding: 5px 0 0 0;
  }
	#gaiyou dt {font-size: 16px;}
	#gaiyou dd {
	    font-size: 14px;
	    margin-bottom: 20px;
	}
	#gaiyou dd .txt_red {
	    font-size: 20px;
	}
	#btn_area p {
	    font-size: 16px !important;
	}
	form p.bold {
	    font-size: 17px !important;
	    margin-bottom: 10px;
	}
	textarea {
	    overflow: auto;
	    resize: vertical;
	    max-width: 100% !important;
	}
	.container.form_area {
		padding-bottom: 30px;
	}
	button {
        font-size: 15px;
        margin-bottom: 25px;
    }
	.caution {
	    font-size: 11px !important;
	}
	.sample_btn {line-height: 40px;}
}


@media (max-width: 375px){
	body p {
    font-size: 14px !important;
    margin-bottom: 30px;
  }
	.bg_black .container {
    padding: 15px 15px 30px 15px;
  }
	.h1, h1, .font-weight-bold {
	   font-size: 1.2rem;
	}
	.ml-3, .mx-3 {
		margin-left:0 !important;
		margin-right:0 !important;
	}
	.f22 {
    font-size: 17px !important;
  }
  .ttl14 {
    margin-bottom: 20px;
  }
  .bg_navy {
    padding: 50px 0 20px;
  }
	.waku {
    padding: 20px 10px 15px 10px;
  }
	.register-box h2 img {
	   width: 565px;
	   margin-top: -150px;
	}
	.register-box {
	   padding: 150px 0 10px;
	}
	.register-box form ul li img {
	   max-width: 160px;
	   height: auto;
	}
	.list {
    padding: 25px 15px 20px 10px;
    margin: 30px auto;
  }
	.register-box {
	   padding: 20px 0 50px;
	}
	.txt_img {
    padding-bottom: 30px;
    text-align: center;
    font-size: 17px !important;
  }
  .form_wrap {
    border: solid 3px #5f679d;
    padding: 0px 10px 10px 10px;
  }

	.box04 .col-lg-4 .circle-icon .icon {
	    max-width: 140px;
	}
	.register-box form p.f30 {font-size: 20px !important;}
	.register-box form {
	    margin: 20px auto 0;
	}
	input {
	    background: #dddddd !important;
	    height: 50px !important;
	    font-size: 15px !important;
	}
	table th, table td {
	    font-size: 13px;
	}
	.jisseki_box {
	    border: solid 4px #333;
	    padding: 0 10px 30px;
	    background: #f5f5f5;
	}
	.ttl03 {
      margin-top: 0px;
  }
	.img03 {
    margin-top: 0px;
    padding-bottom: 20px;
  }
	.img05 {
    margin: 0px 0 50px;
  }
  .img06 {
    margin-top: 0;
    margin-bottom: 30px;
  }
  .img07 {
    margin-bottom: -20px;
  }
  .img10 {
    margin: 30px 0;
  }
	.bg_blank .container {
	    padding: 20px 10px 0px 10px;
	}
	.set-width {
	    padding-left: 0px;
	    padding-right: 0px;
	}
	.ad {
	    padding: 20px;
	}
  .v_box .v01 {
      float: none;
      width: 50%;
  }
  .posi_waku {
    padding: 20px 10px;
    font-size: 15px;
  }
  .tb_waku {
	 margin-bottom: 30px;
	}
	.bg-form {
	   border: solid 8px #eaeaea;
	}
  .form_area .box04 p.sample_btn {
    margin-bottom: 0px;
  }
  .btn--orange, button.btn--orange {
    font-size: 17px;
  }
  .btn--orange, button.btn--orange {
    padding: 15px 20px;
  }
	footer {font-size: 0.7em;}
	footer .py-4 {
		padding-top: 0.7rem!important;
		padding-bottom: 0.7rem!important;
	}
	footer .py-3 {
		padding-top: 0.5rem!important;
		padding-bottom: 0.5rem!important;
	}
	button {
		margin-bottom: 20px;
	}
	.btn a button {
    font-size: 15px !important;
  }
  .form_ttl {
    line-height: 1em !important;
  }
  form {
    max-width: 490px;
    padding: 20px 10px 20px 10px;
  }
  table.gaiyou td {font-size: 14px !important;}
  .thanks_page .center form button {
    padding-top: 25px;
  }
  .thanks_page form {
    max-width: 490px;
    padding: 0px;
  }
  .thanks_page .center {
    padding: 0px 7px 1px 7px;
  }
  .thanks_page .center form p.get_btn {
    font-size: 15px !important;
  }
  .thanks_page .container {padding: 40px 0 0;}
}

@media (max-width: 320px){
	body p {
    font-size: 12.5px !important;
    margin-bottom: 25px;
  }
  .f22 {
    font-size: 14px !important;
  }
	.f40 {
    font-size: 17px !important;
  }
  .f30 {
    font-size: 15px !important;
  }
	.container {padding: 0 4%;}
	.container p:last-child {
		margin-bottom: 0 !important;
	}
	section.mb-5 {margin-bottom: 15px !important;}
	ul.schedule_list {
    padding: 10px 10px 1px 10px;
  }
  .tb_waku {
    margin-bottom: 30px;
    margin-top: 30px;
  }
  .ttl01 {margin-bottom: 0px;}
  .ttl02 {
    margin-bottom: 10px;
    margin-top: 40px;
  }
  .ttl04 {
    margin-top: 40px;
    margin-bottom: 30px;
  }
	.ttl05 {margin-top: 50px;}
	.ttl07 {
    margin-bottom: 20px;
    padding-top: 20px !important;
    padding-top: 0px;
  }
	.v_box p.ttl {font-size: 16px !important;}
	.v_box .name {font-size: 13px !important;}
	p.jisseki_ttl {font-size: 19px !important;}
	.v_box .comment p {margin-bottom: 10px;}
	.voice_box {padding: 20px 15px 30px;}
	.voice_box .name {
    padding: 7px 10px 4px;
    font-size: 13px !important;
  }
  .voice_box {
    margin-bottom: 20px;
  }
  .voice_box .v_ttl {
    font-size: 16px;
  }
	body .v_box_waku .v_box .result p {
    font-size: 13px !important;
  }
	body .v_box_waku .v_box .comment p {
    font-size: 13px !important;
  }
	.container.form_area {
		padding-bottom: 20px;
	}
  .btn--orange, button.btn--orange {
    padding: 15px 20px;
    font-size: 14px;
  }
	form p.sample_btn {
    font-size: 16px !important;
  }
  form p.sample_btn {line-height: 50px;}
	.register-box form p.f30 {
	    font-size: 17px !important;
	}
	.register-box h2 img {
	    width: 565px;
	    margin-top: -130px;
	}
	.register-box {
	    padding: 130px 0 0px;
	}
	.register-box {
	    padding: 0px 0 0px;
	}
	button {
	    font-size: 16px;
	}
	.bg-form {
	    padding: 0 10px;
	    max-width: 410px;
	    margin: 0 auto;
	    border: solid 5px #d8d8d8;
	}
	.register-box form {
	    margin: 15px auto 0;
	}
	.form.streak {
        padding: 12px 0px 30px !important;
    }
	.bg_blank .container {
	    padding: 30px 10px;
	}
  form p.text-center.txt_red {
    font-size: 16px !important;
  }
  form p.bold {
    font-size: 15px !important;
  }
  .thanks_page .center {
    padding: 0px 7px 10px 7px;
  }
  .thanks_page .waku_credit form p.get_btn {
    font-size: 15px !important;
  }
  .thanks_page .waku_credit form p.get_btn {
    padding: 15px 25px 10px;
  }
  .thanks_page .waku_credit {
    padding: 20px 10px 6px 10px;
  }
  .thanks_page .container .box04 {
    padding: 0px 15px;
  }
}

/*デバイスごとの改行*/
@media screen and (min-width: 541px) {
	br.in_540 {display: none !important;}
}
@media screen and (max-width: 540px) {
	br.none_540 {display: none !important;}
	br.in_540 {display: inline-block !important;}
}
@media screen and (min-width: 415px) {
	br.in_414 {display: none !important;}
}
@media screen and (max-width: 414px) {
	br.none_414 {display: none !important;}
	br.in_414 {display: inline-block !important;}
}
@media screen and (max-width: 375px){
	br.none_375 {display: none !important;}
}
@media screen and (min-width: 321px){
	br.none_320 {display: inline-block;}
}
@media screen and (max-width: 320px){
	br.none_320 {display: none !important;}
}