/* Responsive CSS - Only used classes from HTML */

@media only screen and (max-width: 768px) {
body {
    font-size: 16px;
    line-height: 1.5;
    letter-spacing: 0;
}

.tmp_wrap{
    overflow: hidden;
}

.pc{
    display: none!important;
    visibility: hidden;
}

.sp{
    display: block!important;
    visibility: visible;
}

.txt {
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0;
  margin-bottom: 30px!important;
}

/* Main container */
.container {
    width: 100%;
    margin: 0 auto;
}

/* FV Copy */
.fv-copy{
    font-size: 18px;
    margin: 0 30px 35px;
    padding: 40px 0;
}

/* Block 1 Top */
#tmp_index_bl1_top {
    margin-top: -60px;
}

#tmp_index_bl1_top .wrap_block {
    padding-bottom: 0;
    background: none;
    background-attachment: inherit;
    margin-top: -58px;
    position: relative;
    z-index: 1;
}

/* Block 1 */
#tmp_index_bl1 {
    background: linear-gradient(90deg, #040b21, #0c1d38,#040b21);
}

#tmp_index_bl1 .bl1_a {
    padding: 0;
    background: url("https://s3.ap-northeast-1.amazonaws.com/ks-strategy.com/lp/2022/open/images/bl1_bg_sp.png")no-repeat center/cover;
}

/* Block 1c */
#tmp_index_bl1 .bl1_c .ttl_box.out {
    margin: 0 auto;
}

#tmp_index_bl1 .bl1_c .ttl_box h2 {
    max-width: none;
    width: 100%;
    margin: 0px auto 10px;
}

#tmp_index_bl1 .cnt_box .box_a{
    padding: 30px 15px;
}

#tmp_index_bl1 .cnt_box .box_a {
    border: none;
    max-width: calc(100% - 30px);
    margin: 0 auto;
    border-radius: 0;
    padding: 18px 20px;
}

#tmp_index_bl1 .bl1_c .cnt_box .box_a {
    background: #fff;
    z-index: 3;
    position: relative;
    border: none;
    border-radius: 0;
}

#tmp_index_bl1 .bl1_c .cnt_box .box_a .txt_box {
    padding: 20px 0 0;
}

#tmp_index_bl1 .bl1_c .cnt_box .box_a .img_box {
    margin-bottom: 0;
}

.bl1_c {
    padding-bottom: 10px;
}

/* Block 1d */
#tmp_index_bl1 .bl1_d .ttl_box.out {
    margin: 0;
    width: 100%;
}

#tmp_index_bl1 .bl1_d .ttl_box h2 {
    width: 100%;
    margin: 0 auto 5px;
}

#tmp_index_bl1 .bl1_d .cnt_box .box_a {
    background: #fff;
    z-index: 2;
    position: relative;
    border: none;
    border-radius: 0;
    padding: 0
}

#tmp_index_bl1 .bl1_d .cnt_box .box_a .txt_box {
    background: #fff;
    padding: 30px 20px 10px;
}

.bl1_d {
    padding-bottom: 10px;
}

/* Block 2 */
#tmp_index_bl2_banner .container {
	margin-top: 30px;
}

/* Block 3 */
#tmp_index_bl3 .txt_box {
    padding: 30px 20px 10px;
    background: #fff;
    width: calc(100% - 30px);
    margin: 0 auto;
}

#tmp_index_bl3 {
    background: none;
    background-attachment: inherit;
    background-color: #051436;
}

#tmp_index_bl3 .wrap_block {
    max-width: none;
    margin: 0 auto;
    padding: 0 0 20px;
}

/* Content Block 3 */
#content_block3 .block_img_a {
    max-width: none;
    width: 100%;
    margin: 0 auto;
}

#content_block3 .block_img_b{
    max-width: none;
    width: 100%;
    margin: 0 auto;
}

#content_block3 .block3_d {
	padding-bottom: 25px;
}

/* Content Block 5 */
#content_block5 .block_cnt .container {
    max-width: none;
    background-color: #C11A03;
    margin: -65px auto 0;
    padding: 30px 20px 20px;
    text-align: center;
}

#content_block5 .block_cnt h3 {
    max-width: none;
    margin: 20px auto 0;
}

/* Form styles */
.s1-box {
    margin-top: 0;
}

.s1-box.form {
    padding: 10px 20px 20px;
}

.tokuten-head{
    margin: 50px 0 20px;
}

.s1-box dl{
    padding: 0px 5px 7px;
}

/* Footer */
#tmp_footer a,
#tmp_footer{
	font-size: 15px;
	padding: 30px 0;
}
#tmp_footer a{
	padding-top: 10px;
}
#tmp_footer{
	padding-bottom: 5px;
}
.footer_menu {
    margin-bottom: 10px;
}

/* Special responsive utility */
.sp-mb30 {
    margin-bottom: 30px;
    content: "";
    display: block;
}

.set2 {
    margin-bottom: 50px;
}
}