/* Your custom styles */
/*ベース*/
@import url('https://fonts.googleapis.com/css?family=M+PLUS+Rounded+1c');

html {
  overflow-x: hidden;
  overflow-y: scroll; -webkit-overflow-scrolling: touch
}
body {
    font-family: 'Noto Sans JP', sans-serif;
}
body p {
	font-size: 18px !important;
  color:#3d3d3d;
}
#warp {overflow:hidden;}
.center {text-align: center;}
.container-fluid {padding: 0;}
.container {
    width: 100%;
    max-width: 900px;
    padding-right: 20px !important;
    padding-left: 20px !important;
    margin-right: auto;
    margin-left: auto;
}
.bg_white .container {
  padding-top: 120px;
}
.bg_black .container {
  background: #000;
  padding-top: 120px;
}
.bg_cross .container {
  padding-top: 120px;
}
.bg_black .container p {
  color: #fff;
}
.grey-text {color: #717171!important;}
.marker {
	font-weight: bold;
	background: linear-gradient(transparent 60%, #fbff00 60%);
}
.border_bt {
  border-bottom: solid 1px #3d3d3d !important;
}
.bold {
    font-weight: 700!important;
    line-height: 1.5em;
}
.center_block {
	margin: 0 auto 45px;
	display: block;
}
.txt_red {
	font-weight:bold !important;
	color:#fe0000 !important;
}
.txt_blue {
  font-weight:bold !important;
  color:#00b9f5 !important;
}
.txt_black {
	font-weight:bold !important;
	color:#5e4e0b !important;
}
.txt_green {
	font-weight:bold !important;
	color:#0bff33 !important;
}
.txt_yellow {
	font-weight:bold !important;
	color:#fff200 !important;
}
.bg_white {
  background: #fff;
}
.bg_yellow {
  background: #fffff4;
}
.bg_pink {
  background: #f6ecec;
}
.bg_pink .container {
  background: none;
  padding-top: 0;
}
.bg_cross {
  background: url(../img/bg_cross.png);
  background-repeat: repeat;
}
.bg_cross .container {
  background: none;
}
.bg_black_box {
  background:#00a279;
  padding:4px 6px 2px;
  margin: 0 10px;
  color:#fff;
}
.torikeshi {
  text-decoration: line-through;
}
.f22 {font-size: 22px !important;}
.f26 {font-size: 26px !important;}
.f30 {font-size: 30px !important;}
.f35 {font-size: 35px !important;}
.f40 {font-size: 40px !important;}
.f76 {font-size: 76px !important;}
.mt0 {margin-top:0 !important;}
.mt75 {margin-top:75px !important;}
.mt90 {margin-top:90px !important;}
.mt120 {margin-top:120px !important;}
.mb60 {margin-bottom: 60px !important;}
.mb90 {margin-bottom: 90px !important;}
.mb120 {margin-bottom: 120px !important;}
.pt90 {padding-top:90px !important;}
.left {
	float: left;
}
.right {
	float: right;
}
.hidden {
	overflow: hidden;
}
.center {
  text-align: center;
}
.line_height {
  line-height: 2em !important;
}

p {
	font-size: 16px !important;
	font-weight: normal !important;
	margin-bottom: 75px;
	color:#5e4e0b;
}
header {
	margin: 0 auto;
	text-align: center;
  background: #fff;
}
header img {
	border: 0;
  max-width: 900px;
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
header.pc {
	width: 100%;
    margin: 0 auto;
    background: url(/img/bg.png);
    background-repeat: no-repeat;
    background-position: top;
    height: 790px !important;
}
header img.pc {
	width: 100%;
	max-width: 900px;
	margin:0 auto;
}

main img {
    border: 0;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
    margin: 0 auto;
    display: block;
}

.txt img {
  margin: 0 auto;
  display: block;
}
.bg_grey {
  background:#dbdbdb;
}

.bg_black {
	background:#000 !important;
	padding: 0px;
}
.area_cv {
  padding: 45px 60px 10px;
  width: 100%;
  max-width: 900px;
  padding-right: 20px !important;
  padding-left: 20px !important;
  margin-right: auto;
  margin-left: auto;
}
.area_cv .mes {
  text-align: center;
}
.area_cv .mes p {
  margin-bottom: 0;
}
.area_cv p.price {
  margin-bottom: 45px;
}
.container {
  width: 100%;
  max-width: 800px;
  background: #fff;
  padding-top: 5%;
  padding-bottom: 7%;
  padding-right: 4% !important;
  padding-left: 4% !important;
  margin-right: auto;
  margin-left: auto;
}
.container .row {
	margin: 0 auto;
  display: block;
}
div.ttl {
  font-size: 30px;
  text-align: center;
  font-weight: bold;
  margin-top: 120px;
  margin-bottom: 60px;
}
div.ttl.mt30 {
  margin-top: 30px;
}
div.ttl span.marker {
  background: linear-gradient(transparent 60%, #e3db4d 60%);
}



/*MV*/

header {height: auto !important;}

/*head*/
.head {
	background:#000;
	position: relative;
}
.head_red {
	background:#FFFF00;
	background-repeat: repeat-x;
}
.head_red div {
	max-width:925px;
	margin: 0 auto
}
.head div {
	max-width:1140px;
	margin: 0 auto;
}
.results+.ttl-wrap, .register-box+.ttl-wrap {
    margin-top: -30px;
}
.top-register-box {
    background: url(../images/bg-form.png);
    /* padding: 0; */
    /* padding-bottom: 80px; */
    /* position: relative; */
}
.register-box {padding-top: 0 !important;}
.register-box h2 img {
    width: 565px;
    /*margin-top: -135px;*/
}
.register-box {
    padding: 0px 0;
    background: url(../images/bg-form.png);
}
.top-register-box .set-width {
    margin: 0px auto 0;
    position: relative;
}
.register-box .set-width {
    max-width: 780px;
}
.set-width {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
select, button, input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    /* border-radius: 10px; */
    background:none;
    box-shadow: none;
    display: inline-block;
    font-size: 16px;
    padding: 3px;
    width: 100%;
}
/*まずはお決まりのボックスサイズ算出を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算出をしやすくするために*/
}
.keiken_box {
  background: #b31100;
  margin-bottom: 90px;
  padding:30px 20px 10px;
}
.keiken_box p {
  margin-bottom: 20px;
}
.ttl01 {
  margin-bottom: 60px;
}
.ttl02 {
  margin-bottom: 60px;
}
img.ttl03 {
  margin-bottom: 75px;
}
img.ttl04 {
  margin-bottom: 75px;
}
img.ttl05 {
  margin-bottom: 75px;
}
.dvd {margin-bottom: 60px !important;}
.price_waku {
  border:solid 3px #fff143;
  text-align: center;
  padding: 10px;
}
p.price_waku {
  color: #fff143 !important;
  font-size: 28px !important;
  font-weight: bold !important;
  background: #f00;
}
#caution_area .txt.center {
  margin-bottom: 75px;
}
#caution_area p {
  margin-bottom: 30px;
}
.pat {
  margin-bottom: 15px !important;
}
table{
  border-collapse: collapse;
  width: 100%;
  font-size: 15px;
}
table.jisseki {
    border-collapse: collapse;
    margin: 0 auto 60px;
    border: solid 3px #29211f;
    width: 90%;
    /* white-space: nowrap; */
}
table.jisseki tr td {
  font-size: 14px;
}
table.jisseki tr.top th {
    background: #29211f;
    font-size: 20px !important;
    color: #fff50a;
    font-weight: bold;
    text-align: center;
    border-right: solid 1px #a7a19f;
}
table.jisseki td:nth-of-type(1) {
    width: 30%;
}
table.jisseki td {
    border: solid 1px #29211f;
    padding: 5px 10px;
    background: #FFF;
    color: #000;
    line-height: 2;
    text-align: center;
}
table.jisseki tr.date td {
    background: #fff50a;
    border: none;
    border-top: 5px solid #28211f;
    font-weight: bold;
    text-align: right;
    font-size: 16px !important;
    line-height: 1.4;
}
table.jisseki tr.date td:last-child {
    color: #f0000c;
    font-size: 48px !important;
    text-shadow: 1px 0 1px rgb(41,33,31,1), 0 1px 1px rgb(41,33,31,1), -1px 0 1px rgb(41,33,31,1), 0 -1px 1px rgb(41,33,31,1), 1px 0 1px rgb(41,33,31,1), 0 1px 1px rgb(41,33,31,1), -1px 0 1px rgb(41,33,31,1), 0 -1px 1px rgb(41,33,31,1);
}
table.jisseki tr.date td {
    background: #fff50a;
    border: none;
    border-top: 5px solid #28211f;
    font-weight: bold;
    text-align: right;
    font-size: 22px !important;
    line-height: 1.5em;
}

.tb01 th,
.tb01 td{
  padding: 10px;
  border: solid 1px #ccc;
  text-align:center;
  box-sizing:border-box;
  font-size: 15px;
}
.tb01 th {
  font-size: 15px;
  background: #126a13;
  color: #fff;
  
}
p.jisseki_month {
  font-size: 20px !important;
  font-weight: bold !important;
  margin-bottom: 0;
  margin-top: 30px;
}

.tokuten_box {
  border: solid 5px #8c8154;
  background: linear-gradient(180deg, rgb(69, 81, 21), rgb(43, 1, 3));
  padding: 3%;
  color:#fff;
  font-size: 15px;
  margin-bottom: 20px;
}
.tokuten_box img {margin-right: 15px;}
.tokuten_box dl dt {
  font-size: 18px;
  margin-bottom: 15px;
}
.bnr {
  padding-top: 40px;
  margin-bottom: 60px;
}
img.img_non {
  margin-top: 90px;
  margin-bottom: 75px;
}
img.img_nise_hon {
  margin-bottom: 60px;
}
img.img_hope {
  margin-bottom: 75px;
}
img.img_voice {
  margin-bottom: 60px;
}
img.img_9500 {
  margin-top:45px;
  margin-bottom: 120px;
}
img.img_suc {
  margin-bottom: 75px;
}
img.img_30 {
  margin-top: 75px;
}
img.img_now {
  margin-bottom: 60px;
}
.entry_contents {
  font-size: 18px;
}
.entry_contents dt {
  background: #dfdfdf;
  padding: 1% 2%;
  margin-bottom: 10px;
}
.entry_contents dd {
  margin-bottom: 30px;
}
.entry_contents dd p {
  margin-bottom: 0;
}
.caution_txt {
  background: #fbb1b1;
  padding: 2% 3%;
}
.caution_txt p {
  margin-bottom: 0;
  font-size: 14px !important;
}
.caution_txt p.txt_red {
  margin-bottom: 15px !important;
}
#gaiyou_area {
  padding-top: 60px;
  padding-bottom: 60px;
}
.img_check_list {
  margin-bottom: 90px !important;
}
.ps {
  background:#ccc;
  padding: 60px 45px 0px;
  background: #690000;
}

/*ボタン*/
.button {
    width: 100%;
    max-width: 550px;
    position: relative;
    font-weight: bold;
    text-align: center;
    padding: 2% 4%;
    border-radius: 30px;/*角の丸み*/
    font-size: 24px;/*文字サイズ*/
    background: #10b810;/*背景色*/
    color: #fff;/*文字色*/
    display: block;
    margin: 0 auto;
    text-shadow: 1px 1px 0px rgb(0, 0, 0, 0.3);
    box-shadow: 0 3px 0 rgb(25, 138, 25, 0.9);
}
a:hover .button {
    background-color: #cc0000;/*触れたときの背景色*/
    color: #fff;/*触れたときの文字色*/
    box-shadow: 0 0px 0 rgb(0, 0, 0, 0.3);
    animation-play-state: paused;
    top: 3px;
}
.bururi {
    animation: bururi 1s infinite;
}
.pekopeko {
    animation: pekopeko 2s infinite;
    box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
}
@keyframes pekopeko {
    0% {
        box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
        top: 0px;
    }
    10% {
        box-shadow: 0 0 0 rgb(0, 0, 0, 0.3);
        top: 3px;
    }
    20% {
        box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
        top: 0px;
    }
    30% {
        box-shadow: 0 0 0 rgb(0, 0, 0, 0.3);
        top: 3px;
    }
    40% {
        box-shadow: 0 3px 0 rgb(0, 0, 0, 0.3);
        top: 0px;
    }
}

.arrow-button::after{
    /* 擬似要素で矢印アイコンをつくる */
    content: '';
    border: 0;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    display: inline-block;
    width: 10px;
    height: 10px;
    /* 矢印アイコンの位置を設定 */
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(45deg); /* rotate(45deg)で矢印を回転（向きを変更）させる */
}

.arrow-button:active{
    /* ボタンをクリックしたときに沈むように見える動き */
    box-shadow: 0 0 0 #C62828;
}
.form {
    padding: 0px 0% 0px;
}
form {
    margin: 0 auto 60px;
    border: none;
    max-width: 800px;
    width: 100%;
    background: none;
    padding: 40px 45px 45px;
    background: #ffe4e6;
}
form p {
    margin-bottom: 20px;
    color: #000;
}
form p.kessai {
  margin-bottom: 0px;
}
.form form p ~ p {
    margin-top: 20px;
}
button, input {
    overflow: visible;
}
label {
    display: inline-block;
    margin-bottom: 0.5rem;
}
label {
    position: relative;
    cursor: pointer;
    padding-left: 5px;
}
input[type=checkbox], input[type=radio] {
    box-sizing: border-box;
    padding: 0;
}
input {
  background: #fff;
}

button, input, optgroup, select, textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}
.button {
    width: 100%;
    max-width: 550px;
    position: relative;
    font-weight: bold;
    text-align: center;
    padding: 2% 4%;
    border-radius: 30px;
    font-size: 24px;
    background: #10b810;
    color: #fff;
    display: block;
    margin: 0 auto;
    text-shadow: 1px 1px 0px rgb(0, 0, 0, 0.3);
    box-shadow: 0 3px 0 rgb(25, 138, 25, 0.9);
}
form .name {
    max-width: 500px;
    width: 100%;
    text-align: center;
}
.radio-001 {
    display: flex;
    flex-wrap: wrap;
    gap: .3em 2em;
    border: none;
}

.radio-001 label {
    display: flex;
    align-items: center;
    gap: 0 .5em;
    font-size: 18px;
    position: relative;
    cursor: pointer;
}

.radio-001 label::before,
.radio-001 label:has(:checked)::after {
    border-radius: 50%;
    content: '';
}

.radio-001 label::before {
    width: 18px;
    height: 18px;
    background-color: #fff;
}

.radio-001 label:has(:checked)::after {
    position: absolute;
    top: 50%;
    left: 14px;
    transform: translate(-50%, -50%);
    width: 10px;
    height: 10px;
    background-color: #2589d0;
    animation: anim-radio-001 .3s linear;
}

@keyframes anim-radio-001 {
    0% {
        box-shadow: 0 0 0 1px transparent;
    }
    50% {
        box-shadow: 0 0 0 10px #2589d033;
    }
    100% {
        box-shadow: 0 0 0 10px transparent;
    }
}

.radio-001 input {
    display: none;
}

/*MV*/
.head_line {
	margin: 0 auto;
}
.software-lp .navbar:not(.top-nav-collapse) {
	background: #282828;
}
.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;
}
.bg_footer {
	background: url(../img/bg_footer.png);
}

/*footer*/
footer .container {
	padding: 0;
}
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*/
footer.page-footer .footer-copyright {
	background: #444 !important;
}
footer .ft_link {
	background:#242323;
}

@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){
	.navbar-nav {
		flex-direction: inherit;
	}
	.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%;
	}
}

@media screen and (max-width: 966px) {
  
}
@media screen and (max-width: 960px) {
  .Qa-Box {
    width: 95%;
  }
}
@media (min-width: 912px){
	.mv_pc {
    width: 100%;
	}
	.sp911 {
		display: none;
	}
}
@media (max-width: 911px){
	.mv_pc {
		display: none;
	}
	.sp911 {
		display: inline-block;
	}
}
@media (max-width: 812px){
  .ttl {
    width: 80%;
  }
}

@media (min-width: 769px){
	.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;
	}
	.tab {display: none;}
}

@media (max-width: 768px){
	.pc {display: none !important;}
	.tab {display: inline-block;}
	.h1, h1, .font-weight-bold {
	    font-size: 1.5rem;
	}
  .f40 {font-size: 35px !important;}
  .f35 {font-size: 30px !important;}
  .f30 {font-size: 25px !important;}
	.software-lp .form_ttl {
	    background-image: none !important;
	    background-repeat: repeat-x;
	}
  .bg_black p:last-child {
    margin-bottom: 0;
  }
	.mdb-lightbox figure {
	    max-width: 150px;
	    width: 20%;
	}
	main .carousel.pointer-event {
	    margin: 40px 30px 90px;
	}
	.mdb-lightbox [class*=col-] {
	    padding: 0.01rem;
	}
	.set-width {width:100%;}
	.bg_black {
      padding: 0px 0 0px;
  }
	.bg_blank .container {
	    padding: 20px;
	}
	body main.bg_yellow div.area_cv .ttl {
      margin-top: 10px;
      font-size: 30px;
  }
  .chapters {
    margin: 30px 0px 60px;
    padding: 30px 20px 30px 20px;
  }
  .prof-img img {
      padding-top: 140px;
  }
}
@media (max-width: 650px){
  .clear {clear:both;}
  div.ttl {font-size: 24px;}
  .prof-box {
    display: block;
    margin-bottom: 30px;
  }
  .prof-img {width: 100%;}
  .prof-img img {padding-top: 0 !important;}
  .prof_txt {width:100%;}
  #prof_area.container {
    padding-left: 0% !important;
    padding-right: 0% !important;
  }
}
@media (min-width: 541px){
	.pc {display: block !important;}
	.tab {display: none !important;}
	.sp {display: none !important;}
}
@media (max-width: 540px){
	.pc {display: none !important;}
	.tab {display: none !important;}
	.sp {display: inline-block !important;}
	.sp911 {display: none !important;}
  .f22 {font-size: 16px !important;}
  .f26 {font-size: 20px !important;}
  .f30 {font-size: 22px !important;}
  .f35 {font-size: 26px !important;}
  .f40 {font-size: 28px !important;}
  .f76 {font-size: 50px !important;}
  .mt0 {margin-top:0 !important;}
  .mt75 {margin-top:30px !important;}
  .mt90 {margin-top:45px !important;}
  .mt120 {margin-top:60px !important;}
  .mb60 {margin-bottom: 30px !important;}
  .mb90 {margin-bottom: 45px !important;}
  .mb120 {margin-bottom: 60px !important;}
  .pt90 {padding-top:45px !important;}
	body p {
	    font-size: 14px !important;
	    margin-bottom: 35px;
	}
  .entry_contents {
      font-size: 14px;
  }
	.ps {
      background: #ccc;
      padding: 30px;
      background: #690000;
  }
  .img_check_list {
      margin-bottom: 60px !important;
  }
  .keiken_box {
      background: #b31100;
      margin-bottom: 90px;
      padding: 20px 20px 20px;
  }
  .container {width: 100%;}
  .ttl {
      width: 89%;
  }
  .area_tokuten .container {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
	.bg_white {
	    background: #fff;
	}
	.bg_blank {
		padding-top: 5px;
		padding-bottom: 1px;
	}
  .bg_black .container .ttl {
      font-size: 22px !important;
  }
  .bg_white .container {
      padding-top: 45px;
  }
  .bg_black .container {
      background: #000;
      padding-top: 75px;
      padding-bottom: 75px;
  }
  .bg_cross .container {
      padding-top: 60px;
  }
  div.ttl {
      font-size: 20px;
      margin-top: 90px;
      margin-bottom: 30px;
  }
  .box p {margin-bottom: 50px;}
  .img02 {
    margin-top: 45px;
  }
  img.ttl04 {
      margin-bottom: 45px;
  }
  img.img_9500 {
      margin-top: 30px;
      margin-bottom: 65px;
  }
  img.img_30 {
      margin-top: 40px;
  }
  img.img_now {
      margin-bottom: 30px;
  }
  .area_cv {
      padding: 30px 60px 1px;
      width: 100%;
  }
  .area_cv.ft {
      padding: 30px 60px 15px;
  }
  .area_cv .caution_txt {
      margin: 20px auto 30px;
  }
	.button {font-size: 20px;}
  .area_cv p.price {
      margin-bottom: 20px;
  }
  .tb01 {
    width: 100%;
  }
  table.tb01 th,
  table.tb01 td {
    display: block;
    font-size: 15px;
    width: 100%;
    border-bottom:none;
  }
  .tb01 tr:last-child{
    border-bottom: solid 1px #ccc;
  }
  .jisseki_box ul li {
      list-style-type: none;
      font-size: 15px;
  }
  p.jisseki_month {
    text-align: center;
    margin-bottom: 10px;
    background: #e9e9e9;
  }
  .jisseki_box li.day {
    font-size: 18px;
    font-weight: bold;
  }
  p.jisseki_month {
      font-size: 18px !important;
      font-weight: bold !important;
      margin-bottom: 0;
      margin-top: 30px;
  }
  table.jisseki {width: 100%;}
  table.jisseki tr.date td:last-child {
      font-size: 35px !important;
  }
  table.jisseki tr.date td {font-size: 16px !important;}
  table.jisseki td {padding: 3px 3px;}
  form {
      padding: 30px 20px 40px;
      margin: 0 auto 20px;
  }
  .caution_txt {
      padding: 6% 6%;
  }
  .caution_txt p {font-size: 13px !important;}
}

@media (max-width: 414px){
	main img {
	    margin: 0 auto;
	    display: block;
	}
	body p {
	    font-size: 13px !important;
	}
	.h1, h1, .font-weight-bold {
	    font-size: 1.3rem;
	}
	h2 {
		font-size: 1rem;
		line-height: 1.3em;
	}
  .f40 {font-size: 20px !important;}
  .f35 {font-size: 18px !important;}
  .f30 {font-size: 16px !important;}
  .f22 {font-size: 14px !important;}
	header .flex-center {
	    height: 70% !important;
	}
  .area_cv {
      padding: 25px 60px 1px;
  }
  .bg_white .container {
      padding-top: 30px;
  }
  .bg_black .container {
      padding-top: 60px;
      padding-bottom: 40px;
  }
  #caution_area .txt.center {
      margin-bottom: 60px;
  }
  .entry_contents {
    font-size: 13px;
  }
  .caution_txt {
    font-size: 13px;
  }
  .ttl {
      width: 89%;
  }
  .ttl02 {
      margin-bottom: 20px;
  }
  .img02 {
      margin-top: 60px;
  }
  img.img_9500 {
      margin-top: 10px;
      margin-bottom: 40px;
  }
  img.img_suc {
      margin-bottom: 45px;
  }
  .box {
    margin-bottom: 0px;
    padding: 1%;
  }
	.box p {
	    margin-bottom: 35px;
	}
  .box p span {
      padding-top: 5px;
  }
	.box p:last-child {
		margin-bottom: 0;
	}
  .bg_cross .wrap .box p {
    padding-top: 20px;
    margin-bottom: 30px;
  }
  div.ttl {
      margin-top: 30px;
      margin-bottom: 20px;
  }
  .chapters {
      margin: 30px 0px 45px;
      padding: 30px 10px 0px 15px;
  }
  .chapters h3 > span {
      font-size: 18px;
  }
  .chapters h4 {
      font-size: 16px;
      margin-bottom: 15px;
  }
  .chapters ul li {
      font-size: 13px !important;
      line-height: 1.4em !important;
  }
  .bg_cross .wrap .box p {
      font-size: 13px !important;
  }
	.price {
      margin-top: 20px;
      font-size: 20px !important;
  }
	.bg_black .container .ttl {
      font-size: 20px !important;
      padding: 5px 10px 7px 10px;
  }
	.bg_black .container .ttl_voice {
	    font-size: 23px !important;
	    padding: 11px 10px 7px 10px;
	}
  .bg_black .container .ttl {
      font-size: 18px !important;
      padding: 5px 10px 4px 10px;
  }
  .keiken_box p {
      margin-bottom: 10px;
  }
  .area_cv .ttl {
      font-size: 22px !important;
  }
  .price {
      margin-top: 20px;
      font-size: 17px !important;
  }
  .utikeshi {
      text-decoration: line-through;
      font-size: 16px;
  }
  .bg_black_box {
      margin: 0 4px;
  }
  .ps p {
    margin-bottom: 20px;
  }
  .area_cv .caution_txt p {
      font-size: 12px !important;
  }
  .button {
      font-size: 17px;
      line-height: 1.3em;
      padding: 2% 4% 1% !important;
  }
  .area_cv .caution_txt {
    padding: 10px;
    margin: 20px auto 20px;
  }
  table.jisseki {
      margin: 0 auto 30px;
  }
  table.jisseki td:nth-of-type(1) {
      width: 30%;
      line-height: 1.5em;
      font-size: 13px;
  }
  table.jisseki tr.date td:last-child {
      font-size: 30px !important;
  }
  table.jisseki tr td {
      font-size: 14px;
      line-height: 1.5em;
  }
  table.jisseki tr.top th {font-size: 17px !important;}
  .tb01 th, .tb01 td {
      padding: 5px;
  }
  .radio-001 label {font-size: 14px;}
}

@media (max-width: 375px){
	.h1, h1, .font-weight-bold {
	    font-size: 1.2rem;
	}
	.ml-3, .mx-3 {
		margin-left:0 !important;
		margin-right:0 !important;
	}
	.software-lp p, .icon-area p {
	    font-size: .8rem !important;
	}
	.bg_black .container .ttl {
	    margin-top: 0px;
	}
	.bg_black .container p:last-child {margin-bottom: 10px;}
	.bg_black .container .ttl_voice {
		margin-bottom: 90px;
	}
	.box .box-title {
		left:26px;
	}
	.register-box h2 img {
	    width: 565px;
	    margin-top: -150px;
	}
	.register-box {
	    padding: 150px 0 10px;
	}
	.register-box {
	    padding: 20px 0 50px;
	}
	.software-lp p, .icon-area p {
	    font-size: 1.3rem !important;
	}
  .bg_cross .wrap .box p {
      padding-top: 20px;
      margin-bottom: 15px;
  }
  .ps {padding: 30px 20px;}
  .keiken_box {margin-bottom: 40px;}
  .keiken_box {
      padding: 20px 20px 10px;
  }
	.bg_black .container .ttl {font-size: 19px !important;}
  .button {
      font-size: 15px;
      line-height: 1.3em;
      padding: 2% 4% 1% !important;
  }
  .caution_txt p {
    font-size: 12px !important;
  }
  table.jisseki tr.date td {
      font-size: 14px !important;
  }
  form .caution_txt p:last-child {
    margin-top: 15px;
  }
	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;
	}
}

@media (max-width: 320px){
	header {
	    margin-bottom: 0px;
	}
  body p {
      margin-bottom: 25px;
  }
	.bg_blank .container {
	    padding: 10px 20px 10px;
	}
	.register-box {
	    padding: 130px 0 0px;
	}
	.register-box {
	    padding: 20px 0 0px;
	}
	.software-lp p, .icon-area p {
	    font-size: 1.2rem !important;
	}
	.bg_black .container .ttl {
	    font-size: 17px !important;
	}
  div.ttl {
      font-size: 16px;
      margin-top: 0px;
      margin-bottom: 10px;
  }
	.box {
      padding: 2px;
  }
	.box .box-title {
	    left: 19px;
	    padding: 10px 15px 5px 15px;
	    height: 46px;
	    line-height: 30px;
	    font-size: 15px;
	}
  .keiken_box {
    margin-bottom: 30px;
    padding: 20px 15px 10px;
  }
  .bg_black_box {
      margin: 0 2px;
  }
  .bg_black_box.f22 {
      margin: 0 2px;
      font-size: 12px !important;
  }
  img.img_9500 {
      margin-bottom: 10px;
  }
  img.img_voice {
      margin-bottom: 30px;
  }
  table.jisseki tr.date td {
      font-size: 13px !important;
  }
  table.jisseki tr.date td:last-child {
      font-size: 26px !important;
  }
  table.jisseki td:nth-of-type(1) {font-size: 12px;}
  table.jisseki tr td {font-size: 12px;}
  .ps {padding: 20px;}
  .entry_contents dt {padding: 1% 2% 0%;}
  .bg_black .container {padding-top: 40px;}
  .chapters {margin: 0px 0px 30px;}
  .utikeshi {font-size: 14px;}
  .price .txt_red {font-size: 14px;}
  .jisseki_box {padding: 5px 5px 1px;}
  .jisseki_box_wrap {
      border: solid #f0f0f0 5px;
      padding: 5px 5px 5px;
      margin-bottom: 10px;
  }
	.area_cv {
      padding: 20px 0px 1px;
      width: 100%;
      padding-right: 10px !important;
      padding-left: 10px !important;
  }
  .area_cv .caution_txt p {
      font-size: 11px !important;
  }
	.bg_blank .container {
	    padding: 10px 20px 25px;
	}
  .area_cv .caution_txt {
      padding: 10px;
      margin: 15px auto 20px;
  }
}

/*デバイスごとの改行*/
@media screen and (min-width: 541px) {
	br.none_pc {display: none !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 (min-width: 376px){
	br.in_375 {display: none !important;}
}
@media screen and (max-width: 375px){
	br.none_375 {display: none !important;}
	br.in_375 {display: inline-block !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;}
}