@charset "utf-8";
/* ------------------------------------------------------------------------ */
/*                                  common  */
/* ------------------------------------------------------------------------ */
body {
  width:100%;
  height:100%;
  background-position:left top;
  font-size:16px;
  background-image: url(../images/bg/bg_texture.png);
  font-family: "YuGothic","游ゴシック体","Yu Gothic","游ゴシック","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","Meiryo","メイリオ","ＭＳ Ｐゴシック",sans-serif;
  color: #222;
  background:#fff;
}
sup {font-size: 12px;}
img {
  max-width: 100%;
  height: auto;
}
p{color: #222;}
.dis_pc{display:block;}
.dis_tb_pc{display:block;}
.dis_except_mini_sp{display:block;}
.dis_tb_sp{display:none;}
.dis_sp{display:none;}
.dis_mini_sp{display:none;}

/*「TM」の小文字*/
.tm_small{font-size:9px;}

/*kv、header*/
#header_paper{
  width:100%;
  height:auto;
  min-height:600px;
  display:block;
  height:auto;
  position:relative;
  background-image: url(../images/kv/kv_papercraft_end_of_post_pc.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position:top center;
}
#header_paper .inner a.header_logo{
  display:block;
  position:absolute;
  top:10px;
  left:10px;
  transition:0.3s;
}
#header_paper .inner a.header_logo:hover{opacity:0.6;}
#header_paper .inner a.header_logo img{max-height:30px;}
@media only screen and (max-width:768px){
  #header_paper{
    background-image:none;
    min-height:auto;
  }
}

/*追従ボタン*/
@media only screen and (min-width:468px){
.btn_follow_bar,
.btn_follow_bar a{
  display:none;
}
}
@media only screen and (max-width:468px){
  .btn_follow_bar{
    display:flex;
    justify-content: center;
    align-items: center;
    position:fixed;
    width:100%;
    height:75px;
    background: #e6766a;
    left:0;
    bottom:0;
    z-index:2;
  }
  .btn_follow_bar div{width:100%;}
  .btn_follow_bar div .btn_follow{
    width:calc(100% - 40px);
    height:45px;
    margin:0 auto;
    position:relative;
    color:#e6766a;
    background-color:#fff;
    border-radius:7px;
    box-shadow: 0px 5px 0px 0px #d9aead;
    display:flex;
    justify-content: center;
    align-items: center;
    text-decoration: none;
  }
  .btn_follow_bar div .btn_follow:after{
    position:absolute;
    content:'';
    background-image: url(../images/icon/icon_btn_arrow_b_circle_e6766a.svg);
    display:inline-block;
    width:20px;
    height:20px;
    background-repeat: no-repeat;
    background-size: contain;
    right:20px;
    top:0;
    bottom:0;
    margin:auto;
  }
}


.inner{
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}
/*---------コンテンツ共通------------*/
.section_wrapper{
  width:100%;
  padding:70px 0;
  margin:0 auto;
}
p.content_txt{
  font-weight:500;
  font-size:18px;
  line-height:3em;
  text-align:center;
}
p.content_txt_24{font-size:24px;}
p.content_txt_20{font-size:20px;}
p.content_txt_16{font-size:16px;}

p.content_txt .txt_marker{
  background-color:#f5ce3e;
  margin:0 5px;
  padding:0.25em 0.5em;
  box-sizing: border-box;
}

.notes_fz14 li{
  font-size:14px;
  color:#808080;
  text-align:center;
  line-height:1.8em;
  text-indent:calc(-1em - 10px);
  margin-left:calc(1em + 10px);
}
.notes_fz14 li .mark{
  margin-right:10px;
}
@media only screen and (min-width:1790px){
  #header_paper{
    min-height:700px;
  }
}
@media only screen and (max-width:768px){
  p.content_txt{text-align:left;}
  .notes_fz14 li{
    text-align:left;
  }
  .notes_fz14 li .mark{
    margin-right:10px;
  }
}
@media only screen and (max-width:468px){
  .section_wrapper{
    padding:45px 0;
  }
  p.content_txt{
    font-size:16px;
    line-height:2em;
  }
  p.content_txt .txt_marker{
    padding:0.15em 0.4em;
  }
}
/*---------コンテンツ共通------------*/
/*グリッドあり*/
.content_box{
  display:block;
  width:100%;
  margin:30px auto;
  background:#fff;
  padding:70px;
  box-sizing: border-box;
  border-radius:15px;
  position:relative;
}
.content_box_grid{
  background:url(../images/bg/pattern_grid_fafafa.png);
  background-repeat:repeat;
  background-position:0 -10px;
}
@media only screen and (max-width:1024px){
  .content_box{
    padding:70px 45px;
  }
}


/*グリッドなし*/

/*タイトル*/
h2.content_title{
  color:#12284c;
  text-align:center;
  font-size:46px;
  position:relative;
  padding-bottom:35px;
  margin-bottom:50px;
}
h2.content_title img{
  margin:0 auto;
}
h2.content_title::after{
  content:'';
  background-image: url(../images/image/title_sub_pc.png);
  background-repeat: no-repeat; 
  width:72px;
  height:12px;
  display:inline-block;
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
}
@media only screen and (max-width:768px){
  h2.content_title{
    width:80%;
    margin:0 auto 50px;
    padding-bottom:28px;
  }
  h2.content_title::after{
    content:'';
    background-image: url(../images/image/title_sub_sp.png);
    height:12px;
    background-size: contain;
  }
}
@media only screen and (max-width:768px){
  h2.content_title{
    width:90%;
  }
}



/*SNSブロックへのアンカー部分*/
.anchor_to_sns{
  background-image: url(../images/bg/pattern_paper_fff8df.png);
	background-position: 0 0;
	background-repeat: repeat;
  padding-top: 60px;
  padding-bottom: 55px;
}
.anchor_to_sns .content_txt{
  color: #12284c;
  font-size: 24px;
  font-weight: 600;
  line-height: 1;
}
.btn_anchor_to_sns{
  background: #e5766a;
  box-shadow: 0px 6px 0px 0px #ab504f;
  display:flex;
  justify-content: center;
  align-items:center;
  color:#fff;
  text-align:center;
  width:600px;
  height:85px;
  margin:20px auto;
  border-radius:8px;
  transition:0.2s;
  font-size:21px;
  text-decoration: none;
  cursor:default;
  padding:0 15px;
  box-sizing: border-box;
  position:relative;
}
.btn_anchor_to_sns:hover{
  margin:26px auto 14px;
  box-shadow: 0px 0px 0px 0px #ab504f;
  cursor:pointer;
  color:#fff;
}
.btn_anchor_to_sns:after{
  position:absolute;
  content:"";
  background-image: url(../images/icon/icon_btn_arrow_b_circle__white_e6766a.svg);
  background-color: #fff;
  width:30px;
  height:30px;
  border-radius:50%;
  right:20px;
  top:0;
  bottom:0;
  margin:auto;
}

@media only screen and (max-width: 768px){
  .anchor_to_sns{
    padding-top: 40px;
    padding-bottom: 35px;
  }

  .anchor_to_sns .content_txt{
    font-size: 18px;
    line-height: 1.5em;
    text-align: center;
  }

  .btn_anchor_to_sns{
    width:100%;
    font-size: 18px;
    padding:0 40px;
  }
  .btn_anchor_to_sns:after{
    width:24px;
    height:24px;
    right:12px;
  }
}

@media only screen and (max-width: 468px){
  .btn_anchor_to_sns{
    font-size:1em;
  }
}



/*どういうキャンぺーンなの？*/
.about_cp{
  background-image: url(../images/bg/pattern_paper_f5f5f5.png);
  background-position: 0 0;
  background-repeat: repeat;
  position:relative;
  overflow-x:hidden;
  overflow-y:auto;
}

.about_cp > .inner_1350,
.about_cp > .inner_1350 > .inner{
  position:relative;
}

.about_cp > .inner_1350 .about_cp_bt,
.about_cp > .inner_1350 .about_cp_bb{
  width:100%;
  position:absolute;
  left:0;
  right:0;
  margin:auto;
  padding: 0 15px;
  box-sizing: border-box;
  z-index: 1;
}
.about_cp > .inner_1350 .about_cp_bl,
.about_cp > .inner_1350 .about_cp_br{
  height:100%;
  overflow-y:hidden;
  position:absolute;
  top:0;
  bottom:0;
  margin:auto;
  padding: 0;
  box-sizing: border-box;
  z-index: 1;
}
.about_cp > .inner_1350 .about_cp_bt{
  top:0;
}
.about_cp > .inner_1350 .about_cp_bb{
  bottom:0;
}
/*IEだけに適用*/
@media all and (-ms-high-contrast:none){
  .about_cp > .inner_1350 .about_cp_bb{
    bottom:-100%;
  }
}
/*IEだけに適用*/
.about_cp > .inner_1350 .about_cp_bl{
  left:15px;
}
.about_cp > .inner_1350 .about_cp_br{
  right:15px;
}

/*背景装飾(PC限定)*/
.about_cp .image_illust{
  position:absolute;
  margin:0;
}
.about_cp .image_illust:nth-of-type(1){
  top:3%;
  left:-20px;
}
.about_cp .image_illust:nth-of-type(2){
  top:25%;
  right:-45px;
}
.about_cp .image_illust:nth-of-type(3){
  top:65%;
  left:-5px;
}
.about_cp .image_illust:nth-of-type(4){
  top:80%;
  right:0px;
}

.btn_about_cp{
  background: #6db17f;
  box-shadow: 0px 6px 0px 0px #5d966d;
  display:flex;
  justify-content: center;
  align-items:center;
  color:#fff;
  text-align:center;
  width:600px;
  height:85px;
  margin:20px auto;
  border-radius:8px;
  transition:0.2s;
  font-size:21px;
  text-decoration: none;
  cursor:default;
  padding:0 15px;
  box-sizing: border-box;
  position:relative;
}
.btn_about_cp:hover{
  margin:26px auto 14px;
  box-shadow: 0px 0px 0px 0px #5d966d;
  cursor:pointer;
  color:#fff;
}
.btn_about_cp:after{
  position:absolute;
  content:"";
  background-image: url(../images/icon/icon_btn_6db17f.svg);
  background-color: #fff;
  width:30px;
  height:30px;
  border-radius:50%;
  right:20px;
  top:0;
  bottom:0;
  margin:auto;
}

@media only screen and (max-width: 768px){
  .btn_about_cp{
    width:100%;
  }
  .btn_about_cp{
    font-size:18px;
    padding:0 40px;
  }
  .btn_about_cp:after{
    width:24px;
    height:24px;
    right:12px;
  }
}
@media only screen and (max-width: 468px){
  .about_cp > .inner_1350 .about_cp_bt,
  .about_cp > .inner_1350 .about_cp_bb{
    padding:0 10px;
    height:6px;
  }
  .about_cp > .inner_1350 .about_cp_bl,
  .about_cp > .inner_1350 .about_cp_br{
    width:6px;
  }
  .about_cp > .inner_1350 .about_cp_bl{
    left:10px;
  }
  .about_cp > .inner_1350 .about_cp_br{
    right:10px;
  }
  .btn_about_cp{
    height:auto;
    min-height:80px;
    font-size:1em;
    padding:10px 45px;
  }

}
/*波装飾*/
.about_cp:before{
  content:'';
  background-image: url(../images/image/image_wave_fff8df_b_pc.png);
  width:100%;
  height:13px;
  position:absolute;
  top:0;
  left:0;
  right:0;
  margin:auto;
}
@media only screen and (max-width:468px){
  .about_cp:before{
    content:'';
    background-image: url(../images/image/image_wave_fff8df_b_sp.png);
    background-size: contain;
    height:10px;
    top:-1px;
  }
}



/*トレンドマイクロの想い*/
.tm_thought{
  background-image: url(../images/bg/pattern_stationery.png);
  background-position:50px 65px;
  background-repeat: repeat;
  background-color: #fff;
  position:relative;
  animation: bgiLoop 8s linear infinite;
}
@keyframes bgiLoop {
  0% { background-position: 0px 0px;}
100% { background-position: -240px 237px;}
}
/*波装飾*/
.tm_thought:before{
  content:'';
  background-image: url(../images/image/image_wave_f5f5f5_b_pc.png);
  width:100%;
  height:13px;
  position:absolute;
  top:0;
  left:0;
  right:0;
  margin:auto;
}
.tm_thought:after{
  content:'';
  background-image: url(../images/image/image_wave_fff8df_t_pc.png);
  width:100%;
  height:13px;
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
}
@media only screen and (max-width:468px){
  .tm_thought:before{
    content:'';
    background-image: url(../images/image/image_wave_f5f5f5_b_sp.png);
    background-size: contain;
    height:10px;
    top:-1px;
  }
  .tm_thought:after{
    content:'';
    background-image: url(../images/image/image_wave_fff8df_t_sp.png);
    height:10px;
    background-size: contain;
    bottom:-1px;
  }
}


.tm_thought .content_box{
  border:5px solid #6db17f;
  padding:0;
}
.tm_thought .content_box .content_box_baloon{
  border-radius:10px 10px 0 0;
}
.tm_thought .content_box .content_box_baloon:after,
.tm_thought .content_box .content_box_baloon:before{
  border: solid transparent;
  content:'';
  height:0;
  width:0;
  pointer-events:none;
  position:absolute;
  top:100%;
  left:50%;
  z-index:1;
}
.tm_thought .content_box .content_box_baloon:after{
  border-color: rgba(255, 255, 255, 0);
  border-top-width: 22px;
  border-bottom-width: 22px;
  border-left-width: 16px;
  border-right-width: 16px;
  margin-left: -16px;
  border-top-color:#FFFFFF;
}
.tm_thought .content_box .content_box_baloon:before{
  border-color: rgba(109, 177, 127, 0);
  border-top-width:26px;
  border-bottom-width:26px;
  border-left-width:20px;
  border-right-width:20px;
  margin-left: -20px;
  margin-top: 4px;
}


.tm_thought .content_box .bg_e4eef0{border-radius:0 0 10px 10px;}
.tm_thought .content_box .content_box_baloon,
.tm_thought .content_box .bg_faf4e1,
.tm_thought .content_box .bg_e4eef0{
  padding:70px;
  position:relative;
  box-sizing: border-box;
}
.tm_thought .content_box .bg_e4eef0{padding-bottom:0;}
.tm_thought .content_box .bg_e4eef0 img{
  margin:60px auto 0;
}
.tm_thought .flex_box{align-items:center;}
.tm_thought .flex_box .col_in_2-7,
.tm_thought .flex_box .col_in_2-3{box-sizing: border-box;}
.tm_thought .content_txt_16{
  text-align: left;
  line-height:2.5em;
}
@media screen and (max-width : 1024px){
  .tm_thought .content_box .content_box_baloon,
  .tm_thought .content_box .bg_faf4e1,
  .tm_thought .content_box .bg_e4eef0{
    padding:70px 45px;
  }
}
@media screen and (max-width : 768px){
  .tm_thought .content_box .content_box_baloon,
  .tm_thought .content_box .bg_faf4e1{
    padding:50px 25px;
  }
  .tm_thought .content_box .bg_faf4e1 .col_in_2-3{
    text-align: center;
  }
  /*水色背景（bg_e4eef0）のコンテンツのみ、paddingの対象を変更しているため注意*/
  .tm_thought .content_box .bg_e4eef0{padding:50px 0 0 0;}
  .tm_thought .content_box .bg_e4eef0 .col_in_1{padding:0;}
  .tm_thought .content_box .bg_e4eef0 .col_in_1 .content_txt{padding:0 25px;}
  .tm_thought .content_box .bg_e4eef0 img{
    border-radius:0 0 12px 12px;
  }
  .tm_thought .content_txt_16{line-height:2em;}
}
@media screen and (max-width : 468px){
  .tm_thought .content_box .content_box_baloon,
  .tm_thought .content_box .bg_faf4e1{
    padding:50px 10px;
  }
  .tm_thought .content_box .bg_e4eef0{padding:30px 0 0 0;}
  .tm_thought .content_box .bg_e4eef0 .col_in_1 .content_txt{padding:0 10px;}

  .tm_thought .content_box .content_box_baloon:after{
    border-top-width: 17px;
    border-bottom-width: 17px;
    border-left-width: 13px;
    border-right-width: 13px;
    margin-left: -13px;
  }
  .tm_thought .content_box .content_box_baloon:before{
    border-top-width: 20px;
    border-bottom-width: 20px;
    border-left-width: 16px;
    border-right-width: 16px;
    margin-left: -16px;
    margin-top: 4px;
  }

  .tm_thought .content_box .content_box_baloon .flex_box .col_in_1{
    padding-left:0;
    padding-right:0;
  }
}



/*SNS部分*/
.sns_block{
  background-image: url(../images/bg/pattern_paper_fff8df.png);
  background-position: 0 0;
  background-repeat: repeat;
  position:relative;
}
/*波装飾*/
.sns_block:after{
  content:'';
  background-image: url(../images/image/image_wave_fcfcfc_t_pc.png);
  width:100%;
  height:13px;
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
}
@media only screen and (max-width:468px){
  .sns_block:after{
    content:'';
    background-image: url(../images/image/image_wave_fcfcfc_t_sp.png);
    height:10px;
    background-size: contain;
    bottom:-1px;
  }
}

.sns_block .content_box{
  padding:0 0 45px 0;
  margin-top: 60px;
  margin-bottom: 90px;
}

.sns_block .content_box_fb9f9f{
  border:5px solid #fb9f9f
}
.sns_block .content_box_73c3d5{
  border:5px solid #73c3d5;
}

.sns_block .flex_box{align-items:center;}
.sns_block .flex_box .col_in_2-7,
.sns_block .flex_box .col_in_2-3{box-sizing: border-box;}
.sns_block .content_txt{
  color: #12284c;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.5em;
  text-align: center;
}
.sns_block h2.content_title::after{
  content: none;
}
.sns_block .title_img{
  text-align: center;
  padding-top: 65px;
  padding-left: 80px;
  padding-right: 80px;
}
.sns_block .shared_images{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 30px 80px 0 80px;
  padding-bottom: 12px;
}
.sns_block .shared_images img{
  width: 32%;
}
.sns_block .shared_images img:nth-child(n + 4){
  margin-top: 15px;
}
.sns_btn_wrapper{
  padding-left: 80px;
  padding-right: 80px;
}
.btn_sns{
  display:flex;
  justify-content: center;
  align-items:center;
  color:#fff;
  text-align:center;
  width:600px;
  height:85px;
  margin:20px auto;
  border-radius:8px;
  transition:0.2s;
  font-size:21px;
  text-decoration: none;
  cursor:default;
  padding:0 15px;
  box-sizing: border-box;
  position:relative;
}
.btn_sns_fb9f9f{
  background: #fb9f9f;
  box-shadow: 0px 6px 0px 0px #f08888;
}
.btn_sns_73c3d5{
  background: #73c3d5;
  box-shadow: 0px 6px 0px 0px #4fadd9;
}
.btn_sns:hover{
  margin:26px auto 14px;
  box-shadow: 0px 0px 0px 0px #ab504f;
  cursor:pointer;
  color:#fff;
}
.btn_sns:after{
  position:absolute;
  content:"";
  background-color: #fff;
  width:30px;
  height:30px;
  border-radius:50%;
  right:20px;
  top:0;
  bottom:0;
  margin:auto;
}
.btn_sns_fb9f9f:after{
  background-image: url(../images/icon/icon_btn_fb9f9f.svg);
}
.btn_sns_73c3d5:after{
  background-image: url(../images/icon/icon_btn_73c3d5.svg);
}
@media screen and (max-width : 1024px){}
@media screen and (max-width : 768px){
  .sns_block .content_txt{
    font-size: 18px;
    text-align: center;
  }
  .sns_block .content_box{
    padding:0 0 35px 0;
    margin-top: 40px;
    margin-bottom: 40px;
  }
  .sns_block h2.content_title{
    width: initial;
    margin-bottom: 35px;
  }
  .btn_sns{
    width:100%;
    font-size:18px;
    padding:0 40px;
  }
  .btn_sns:after{
    width:24px;
    height:24px;
    right:12px;
  }
  .sns_block .title_img{
    text-align: center;
    padding-top: 30px;
  }
  .sns_block .title_img_insta{
    padding-right: 15px;
    padding-left: 9px;
  }
  .sns_block .title_img_twitter{
    padding-right: 9px;
    padding-left: 15px;
  }
  .sns_block .shared_images{
    margin: 20px 15px 0 15px;
    padding-bottom: 10px;
  }
  .sns_block .shared_images img{
    width: 49%;
  }
  .sns_block .shared_images img:nth-child(n + 3){
    margin-top: 12px;
  }
  .sns_btn_wrapper{
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media screen and (max-width : 468px){
  .sns_block h2.content_title{
    width: initial;
  }
  .btn_sns{
    font-size:1em;
  }
}



/*応募要項*/
.information{
  background-image: url(../images/bg/pattern_paper_fcfcfc.png);
  background-position: 0 0;
  background-repeat: repeat;
}
/*ぶら下がり*/
.information .text_indent ul li{
  margin-left:1em;
  text-indent:-1em;
}
.information .info_box{margin-bottom:40px;}
.information .info_box h3{
  font-size:20px;
  padding-left:12px;
  position:relative;
  margin-bottom:10px;
}
.information .info_box h3::before{
  content:'';
  display:block;
  background-color:#73c3d5;
  width:6px;
  height:25px;
  border-radius:3px;
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  margin: auto;
}
.information .info_box > .notes_fz14 li{text-align: left;}
.information .info_box ul > li,
.information .info_box ul > li > ul > li{
  font-size:16px;
  line-height:2em;
}
.information .info_box ul > li > ul > li > a{
  color:#599ead;
}
.information .info_box .notes_fz14 li{font-size:14px;}
.information .info_box .notes_fz14{margin-top:1em;}

@media only screen and (max-width: 768px){
  .information h2.content_title{
    width:35%;
  }
}
@media only screen and (max-width: 468px){
  .information .info_box h3{
    font-size:18px;
  }
  .information h2.content_title{
    width:50%;
  }
  .information .info_box h3::before{
    height:auto;
  }
}


/*応募規約*/
.rules_box{
  width:100%;
  height:300px;
  overflow-y: scroll;
  border-radius:8px;
  border:5px solid #73c3d5;
  padding:25px 30px;
  margin-bottom:30px;
  box-sizing: border-box;
  background: #fff;
}
.rules_box .rules_txt,
.rules_box div ul li,
.rules_box div ul li ul li{
  font-size:16px;
}
.rules_box > .rules_txt,
.rules_box > div{
  margin-bottom:30px;
}
.rules_box > div:last-of-type{
  margin-bottom:0px;
}
/*スクロールバーの横幅指定*/
.rules_box::-webkit-scrollbar {
  width: 15px;
  padding:3px;
}
/*スクロールバーの背景色・角丸指定*/
.rules_box::-webkit-scrollbar-track {
border-radius: 10px;
background: #f2f2f2;
}
/*スクロールバーの色・角丸指定*/
.rules_box::-webkit-scrollbar-thumb {
border-radius: 10px;
background:#73c3d5;
}
/*応募規約に同意*/
.check_agree_rule{
  width:100%;
  justify-content: center;
  display:flex;
  flex-wrap: wrap;
}
.check_agree_rule > div{width:100%;}
input[type=checkbox] {
  display: none;
}
/*任意の場所でflexを改行*/
.flex_spacer{width:100%;}
/*任意の場所でflexを改行*/
.btn_agree_rule{
  box-sizing: border-box;
    cursor: pointer;
    display: block;
    padding: 5px 20px;
    position: relative;
    width: auto;
}
.btn_agree_rule::before {
  background: #fff;
  border: 2px solid #e6766a;
  box-sizing: border-box;
  content: '';
  display: block;
  width: 30px;
  height: 30px;
  left: -15px;
  top: 0.6em;
  margin-top: -8px;
  position: absolute;
  border-radius:6px;
}
.btn_agree_rule::after {
  border-right: 4px solid #fff;
  border-bottom: 4px solid #fff;
  content: '';
  display: block;
  height: 16px;
  left: -5px;
  opacity: 0;
  position: absolute;
  top:2px;
  transform: rotate(45deg);
  width: 7px;
}
input[type=checkbox]:checked + .btn_agree_rule::before {
  background: #e6766a;
}
input[type=checkbox]:checked + .btn_agree_rule::after {
  opacity: 1;
}
.rules_box label{
  color:#12284c;
}
/*応募するボタン*/
.btn_entry{
  background: #9d9d9d;
  box-shadow: 0px 6px 0px 0px #636363;
  display:flex;
  justify-content: center;
  align-items:center;
  color:#fff;
  width:320px;
  height:72px;
  margin:20px auto;
  border-radius:8px;
  transition:0.2s;
  font-size:21px;
  text-decoration: none;
  cursor:default;
  position:relative;
  /*クリックしても無効*/
  pointer-events: none;
}
.btn_entry:after{
  position:absolute;
  content:"";
  background-image: url(../images/icon/icon_btn_e6766a.svg);
  background-color: #fff;
  width:30px;
  height:30px;
  border-radius:50%;
  right:20px;
  top:0;
  bottom:0;
  margin:auto;
  transition:0.2s;
  filter:grayscale(100%);
}

.btn_entry:hover{color:#fff;}
input[type=checkbox]:checked + .btn_agree_rule ~ div > .btn_entry{
  background: #e6766a;
  box-shadow: 0px 6px 0px 0px #ab504f;
  pointer-events: auto;
}
input[type=checkbox]:checked + .btn_agree_rule ~ div > .btn_entry:hover{
  margin-top:26px;
  margin-bottom:14px;
  box-shadow: 0px 0px 0px 0px #ab504f;
  cursor: pointer;
}
input[type=checkbox]:checked + .btn_agree_rule ~ div > .btn_entry::after{
  filter:grayscale(0%);
}
@media only screen and (max-width: 768px){
  .btn_entry:after{
    width:24px;
    height:24px;
    right:12px;
  }
}
@media only screen and (max-width: 468px){
  .rules_box {
    padding:20px 15px;
  }
  .btn_entry{
    width:calc(100% - 20px);
    height:65px;
  }
}





/*診断テスト内のbtn共通*/

/*「診断スタート」「次へ」ボタン*/


/*--------------------------------------------*/
.btn_flowchart_result,
.btn_flowchart_result_gray,
.btn_flowchart_result_gray_other{
  box-sizing:border-box;
  width:80%;
  height:70px;
  margin:0 auto;
  border-radius:35px;
}
.btn_flowchart_result a,
.btn_flowchart_result_gray a,
.btn_flowchart_result_gray_other a{
  font-weight:500;
  font-size:20px;
  display:block;
  text-align:center;
  text-decoration:none;
  height:70px;
  line-height:65px;
}
.btn_flowchart_result{
  background:#e20000;
  border:3px solid #e20000;
}
.btn_flowchart_result a{
  color:#fff;
}
.btn_flowchart_result:hover{
  background:#fff;
}
.btn_flowchart_result a:hover{
  color:#e20000;
}

.btn_flowchart_result_gray,
.btn_flowchart_result_gray_other{
  background:#fff;
  border:3px solid #666666;
}
.btn_flowchart_result_gray a,
.btn_flowchart_result_gray_other a{
  color:#666666;
}
.btn_flowchart_result_gray:hover,
.btn_flowchart_result_gray_other:hover{
  background:#666666;
}
.btn_flowchart_result_gray a:hover,
.btn_flowchart_result_gray_other a:hover{
  color:#fff;
}

.inner {
  width: 1028px;
  max-width: 100%;
  margin: 0 auto;
}
.inner_1350 {
  max-width: 1350px;
  height: auto;
  margin: 0 auto;
}
.inner_1160 {
  max-width: 1160px;
  height: auto;
  margin: 0 auto;
}
.inner_1100 {
  max-width: 1100px;
  height: auto;
  margin: 0 auto;
}
.inner_964 {
  width:964px;
  margin:0 auto;
}
.inner_980 {
  width:980px;
  margin:0 auto;
}
.inner_900 {
  width:900px;
  margin:0 auto;
}
.inner_850{
  width:850px;
  margin:0 auto;
}
.inner_premium {
  width:1280px;
  margin:0 auto;
}
.inner_color_fff {
  background:#fff;
  border-top:#ed3138 solid 5px;
  position:fixed;
  width:100%;
  top:0;
}
.inner_color_060608 {
  background:#060608;
  position:fixed;
  width:100%;
  padding: 15px 0;
  top:0;
}
.inner_cart {
  position:fixed;
  width:100%;
  bottom:0px;
}
.inner_color_ed3138 { background:#ed3138;}
.inner_color_a1181d { background:#a1181d;}
.inner_color_121212 { background:#333333;}
.inner_color_f8f8f8 { background:#f8f8f8;}

.inner_box_white {
  width: 100%;
  margin: 0 auto;
  padding: 50px 30px;
  background: #fff;
  color: #000;
}

.inner_box_white_radius {
  width: 100%;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  -o-border-radius: 10px;
  border-radius: 10px;
  padding-right: 4%;
  padding-left: 4%;
  background: #fff;
}

.inner_960 {
  width: 960px;
  margin: 0 auto;
}

.col_box_flex {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
/*---------------
  カラム
---------------*/
.col_box {
  max-width: 100%;
  position: relative;
}
.col_tit_box .col_tit {
  margin: 0;
  display: block;
  line-height: 1.2;
  text-align: center;
}

/*---------------
  2カラム-5:5
---------------*/
.col_box .col_in_2 {
  width:50%;
  margin: 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
}
.content_box .col_box .col_in_2 {
  width:30%;
  max-width:30%;
  margin:0 10px;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
}

.col_box .col_in_2:first-child{
  margin-left:0;
}
.col_box .col_in_2:last-child{
  margin-right:0;
}
/*---------------
  2カラム-4:6
---------------*/
.col_box .col_in_2_4 {
  width: 40%;
  margin: 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
}

.col_box .col_in_2_6 {
  width: 60%;
  margin: 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
}

/*---------------
  2カラム-3:7
---------------*/
.col_box .col_in_2_3 {
  width: 30%;
  margin: 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
}
.col_box .col_in_2_7 {
  width: 70%;
  margin: 0;
  padding: 0;
  display: inline-block;
  vertical-align: middle;
}

/*---------------
  カラム slider
---------------*/
.col_box_slider {
  width: 100%;
  position: relative;
}
.col_box_slider .col_in_slider_2 {
  width: 50%;
  margin: 0;
  padding-top: 50px;
  padding-right: 4%;
  padding-left: 4%;
  display: inline-block;
  vertical-align: middle;
  vertical-align: top;
}

/*---------------
  3カラム
---------------*/
.col_box .col_in_3 {
  width: 30%;
  margin-right: 5%;
  padding: 0;
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
}
.content_box .col_box .col_in_3 {
  width: 32%;
  margin-right: 2%;
  padding: 0;
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
}
.col_box .col_in_3:first-child{
  margin-left:0;
}
.col_box .col_in_3:last-child{
  margin-right:0;
}
.col_box .col_in_3 .col_in_tx {
  width: 100%;
  padding: 0;
  font-size: 14px;
}


.col_box p.col_tit {
  font-size: 1.4em;
  text-align: center;
  margin-bottom: 15px;
}

.col_box p.col_tit_1b3780 {
  color: #1b3780;
}

.col_box p {
  margin-bottom: 10px;
}

.tit_bd_kids {
  position: relative;
  text-align: left;
  margin-bottom: 20px;
  line-height: 1.3;
}
.tit_bd_kids:after {
  content: "";
  border-bottom: 5px solid #ff9036;
  position: absolute;
  top: 0;
  left: 0;
  bottom: -8px;
  margin:0 auto;
  width:45px;
}

/*---------------
  4カラム social
---------------*/
.content_box .col_box .col_in_4 {
  width:calc(25% - 10px);
  max-width: calc(25% - 10px);
  margin:0 5px;
  padding: 0;
  display: inline-block;
  text-align: center;
  vertical-align: top;
}

/*---------------
  flex_box
---------------*/
.flex_box{
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 0 1 auto;
  flex-wrap: wrap;
}
.flex_jc_start{justify-content:start;}
.flex_jc_center{justify-content:center;}
.flex_jc_end{justify-content:end;}

.flex_ai_center{align-items:center;}
.flex_justify-content_center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
/*---------------
  1カラム
---------------*/
.flex_box .col_in_1 {
  -ms-flex: 0 1 auto;
  width: 100%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
  box-sizing: border-box;
}

/*---------------
  2カラム-5:5
---------------*/
.flex_box .col_in_2 {
  -ms-flex: 0 1 auto;
  width: 50%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
  box-sizing: border-box;
}

/*---------------
  2カラム-4_5:5_5
---------------*/
.col_box .col_in_2_4_5 {
  -ms-flex: 0 1 auto;
  width: 45%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}

.col_box .col_in_2_5_5 {
  -ms-flex: 0 1 auto;
  width: 55%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}

/*---------------
  2カラム-4:6
---------------*/
.flex_box .col_in_2-4 {
  -ms-flex: 0 1 auto;
  width: 40%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}
.flex_box .col_in_2-6 {
  -ms-flex: 0 1 auto;
  width: 60%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}

/*---------------
  2カラム-3:7
---------------*/
.flex_box .col_in_2-3 {
  -ms-flex: 0 1 auto;
  width: 30%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}
.flex_box .col_in_2-7 {
  -ms-flex: 0 1 auto;
  width: 70%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}
.col_in_2-7 > h4 > span > sup{
  display:inline-block;
  margin-top:-5px;
}

/*---------------
  2カラム-2.5:7.5
---------------*/
.flex_box .col_in_2-2_5 {
  -ms-flex: 0 1 auto;
  width: 25%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}
.flex_box .col_in_2-7_5 {
  -ms-flex: 0 1 auto;
  width: 75%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}

/*---------------
  2カラム-2:8
---------------*/
.flex_box .col_in_2-2 {
  -ms-flex: 0 1 auto;
  width: 20%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}
.flex_box .col_in_2-8 {
  -ms-flex: 0 1 auto;
  width: 80%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}

/*---------------
  3カラム
---------------*/
.flex_box .col_in_3 {
  -ms-flex: 0 1 auto;
  width: 33.33%;
  margin: 0;
  padding: 0;
  padding-right: 10px;
  padding-left: 10px;
}

/*---------------
  2カラム-5:5
---------------*/
.flex_box .col_in_2_four_step {
  -ms-flex: 0 1 auto;
  width: 50%;
  margin: 0;
  padding: 0;
  margin-bottom: 20px;
  padding-right: 10px;
  padding-left: 10px;
}

.img_100 {
  width: 100%;
}
.img_90 {
  width: 90%;
}

/* percent */
.height_percent_100 {
  height: 100%
}

/*---------------モーダルウィンドウ---------------*/
.modal_wrapper{
  background:rgba(0,0,0,0.6);
  width:100%;
  height:100%;
  position:fixed;
  display:flex;
  justify-content:center;
  align-items:center;
  left:0;
  top:0;
  z-index:-1;
  transition:0.5s;
  opacity:0;
}
.modal_fadeIn{
  opacity:1;
  z-index:1;
}

.modal_box{
  width:680px;
  height:330px;
  background:#fff;
  box-sizing: border-box;
  border-radius:15px;
  position:relative;
  padding:45px;
  margin:auto;
}
.modal_box h3{
  color:#ed1c24;
  font-size:25px;
}
.modal_box .text{
  margin:15px auto 30px;
}
.modal_box .btn_fb{
  text-decoration: none;
  position:relative;
}
.modal_box .btn_fb img{
  position:absolute;
  top:-5px;
  left:0;
  right:0;
  margin:auto;
}

/*「いいね」ボタン*/
.btn_fb_default{
  transform:scale(1.0);
  opacity:1.0;
  transition:0.2s;
}
.btn_fb_pushed{
  transform:scale(0.8);
  transition:0.2s;
  animation-delay:0.1.2s;
}
/*「いいね」ボタンのアニメーション*/
@keyframes fb_default {
  0% {
    transform:scale(1);
    opacity:1.0;
  }
  100% {
    transform:scale(0.8);
    opacity:0;
  }
}
.default_disappear{
  animation-name: fb_default;
  animation-fill-mode: forwards;
  animation-duration: 0.2s;
  animation-iteration-count:1;
}

@keyframes fb_pushed {
  0% {
    transform:scale(0.8);
  }
  100% {
    transform:scale(1);
  }
}
.pushed{
  animation-name: fb_pushed;
  animation-fill-mode: forwards;
  animation-duration: 0.2s;
  animation-iteration-count:1;
}

.modal_box .btn_close{
  color:#fff;
  font-size:55px;
  width:55px;
  height:55px;
  position:absolute;
  display:flex;
  justify-content:center;
  align-items:center;
  top:-70px;
  right:0px;
  font-weight: normal;
}
.modal_box .btn_close:hover,
.modal_box .btn_fb:hover{cursor: pointer;}

@media only screen and (max-width: 768px){
  .modal_box{
    width:100%;
    height:330px;
  }
}
@media only screen and (max-width: 480px){
  .modal_box{
    height:320px;
    padding:30px 15px;
  }
  .modal_box h3{font-size:20px;}
  .modal_box .text{
    margin:15px auto 20px;
    font-size:16px;
  }
  .modal_box .btn_fb{
    margin:0 auto;
    width:110px;
    height:110px;
  }
  .modal_box .btn_fb img{
    width:100%;
    top:20px;
  }
}
/*---------------
  footer
---------------*/
footer {
  width: 100%;
  margin: 0;
  padding: 0;
  position:absolute;
}

footer .footer_in {
  max-width: 100%;
  margin: 0 auto;
  padding-top: 15px;
  padding-bottom: 10px;
}

footer .footer_in_copy {
  width: 100%;
}

footer .footer_in_copy small {
  display: block;
  font-size: 12px;
}

footer ul {
  margin: 0;
  padding: 0;
}

footer ul li {
  margin: 0;
  padding: 0 15px;
  display: inline-block;
  line-height: 1;
}

footer ul li a {
  font-size: 14px;
  text-decoration: none;
  color: #fff;
}

footer ul li a:hover {
  color: inherit;
  text-decoration: underline;
}

/*---------------
  .footer_fc_fff
---------------*/
footer.fc_fff ul li { border-right:#fff 1px solid;}
footer.fc_fff ul li:last-child { border-right:none;}

@media only screen and (max-width: 768px){
  /*---------------
    footer
  ---------------*/
  footer .footer_in { padding-top: 5px;}
  footer ul li {
    width: 100%;
    margin: 0;
    padding: 0;
  }

  footer ul li a {
    display: block;
    padding: 14px 15px;
    text-decoration: none;
  }

  footer ul li a:hover {
    color: inherit;
    text-decoration: underline;
  }

  footer ul li a:hover {
    color: inherit;
    text-decoration: underline;
  }

  /*---------------
    .footer_fc_fff
  ---------------*/
  footer.fc_fff ul li {
    border-right:none;
    border-bottom: 1px solid #96969e;
  }
}
/*---------------
  background
---------------*/
.bg_fff { background: #fff;}
.bg_000 { background: #000;}
.bg_faf4e1{background: #faf4e1;}
.bg_e4eef0{background: #e4eef0;}

/* color */
.fc_056374 { color: #056374 !important;}
.fc_e20000 { color: #e20000;}
.fc_fff,.fcWhite { color: #fff !important;}
.fc_000 { color: #000 !important;}
.fc_333 { color: #333 !important;}
.fc_4d4d4f{ color: #4d4d4f !important;}
.fc_2954b6{color: #2954b6 !important;}

.bg_4d4d4f {
  background: #4d4d4f;
}

.fc_fff, .fcWhite {
  color: #fff !important;
}
/*---------------
  margin
---------------*/
.m0 { margin: 0 !important;}
.m0_auto { margin: 0 auto !important;}
.m5 { margin:5px !important;}
.m10 { margin:10px !important;}
.m15 { margin:15px !important;}
.m20 { margin:20px !important;}
.m25 { margin:25px !important;}
.m30 { margin:30px !important;}
.m35 { margin:35px !important;}
.m40 { margin:40px !important;}

/* margin-top */
.mt-140 { margin-top:-140px !important;}
.mt0 { margin-top:0 !important;}
.mt1 { margin-top:1px !important;}
.mt2 { margin-top:2px !important;}
.mt3 { margin-top:3px !important;}
.mt4 { margin-top:4px !important;}
.mt5 { margin-top:5px !important;}
.mt6 { margin-top:6px !important;}
.mt7 { margin-top:7px !important;}
.mt8 { margin-top:8px !important;}
.mt9 { margin-top:9px !important;}
.mt10 { margin-top:10px !important;}
.mt15 { margin-top:15px !important;}
.mt16 { margin-top:16px !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;}
.mt55 { margin-top:55px !important;}
.mt60 { margin-top:60px !important;}
.mt65 { margin-top:65px !important;}
.mt70 { margin-top:70px !important;}
.mt75 { margin-top:75px !important;}
.mt80 { margin-top:80px !important;}
.mt85 { margin-top:85px !important;}
.mt90 { margin-top:90px !important;}
.mt95 { margin-top:95px !important;}
.mt100 { margin-top:100px !important;}
.mt105 { margin-top:105px !important;}
.mt110 { margin-top:110px !important;}
.mt115 { margin-top:115px !important;}
.mt120 { margin-top:120px !important;}
.mt125 { margin-top:125px !important;}
.mt130 { margin-top:130px !important;}
.mt135 { margin-top:135px !important;}
.mt140 { margin-top:140px !important;}
.mt145 { margin-top:145px !important;}
.mt150 { margin-top:150px !important;}

/* margin-right */
.mrauto { margin-right: auto !important;}
.mr0 { margin-right:0 !important;}
.mr1 { margin-right:1px !important;}
.mr2 { margin-right:2px !important;}
.mr3 { margin-right:3px !important;}
.mr4 { margin-right:4px !important;}
.mr5 { margin-right:5px !important;}
.mr6 { margin-right:6px !important;}
.mr7 { margin-right:7px !important;}
.mr8 { margin-right:8px !important;}
.mr9 { margin-right:9px !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;}
.mr55 { margin-right:55px !important;}
.mr60 { margin-right:60px !important;}
.mr65 { margin-right:65px !important;}
.mr70 { margin-right:70px !important;}
.mr75 { margin-right:75px !important;}
.mr80 { margin-right:80px !important;}
.mr85 { margin-right:85px !important;}
.mr90 { margin-right:90px !important;}
.mr95 { margin-right:95px !important;}
.mr100 { margin-right:100px !important;}
.mr105 { margin-right:105px !important;}
.mr110 { margin-right:110px !important;}
.mr115 { margin-right:115px !important;}
.mr120 { margin-right:120px !important;}
.mr125 { margin-right:125px !important;}
.mr130 { margin-right:130px !important;}
.mr135 { margin-right:135px !important;}
.mr140 { margin-right:140px !important;}
.mr145 { margin-right:145px !important;}
.mr150 { margin-right:150px !important;}

/* margin-bottom */
.mb0 { margin-bottom:0 !important;}
.mb1 { margin-bottom:1px !important;}
.mb2 { margin-bottom:2px !important;}
.mb3 { margin-bottom:3px !important;}
.mb4 { margin-bottom:4px !important;}
.mb5 { margin-bottom:5px !important;}
.mb6 { margin-bottom:6px !important;}
.mb7 { margin-bottom:7px !important;}
.mb8 { margin-bottom:8px !important;}
.mb9 { margin-bottom:9px !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;}
.mb55 { margin-bottom:55px !important;}
.mb60 { margin-bottom:60px !important;}
.mb65 { margin-bottom:65px !important;}
.mb70 { margin-bottom:70px !important;}
.mb75 { margin-bottom:75px !important;}
.mb80 { margin-bottom:80px !important;}
.mb85 { margin-bottom:85px !important;}
.mb90 { margin-bottom:90px !important;}
.mb95 { margin-bottom:95px !important;}
.mb100 { margin-bottom:100px !important;}
.mb105 { margin-bottom:105px !important;}
.mb110 { margin-bottom:110px !important;}
.mb115 { margin-bottom:115px !important;}
.mb120 { margin-bottom:120px !important;}
.mb125 { margin-bottom:125px !important;}
.mb130 { margin-bottom:130px !important;}
.mb135 { margin-bottom:135px !important;}
.mb140 { margin-bottom:140px !important;}
.mb145 { margin-bottom:145px !important;}
.mb150 { margin-bottom:150px !important;}

/* margin-left */
.mlauto { margin-left: auto !important;}
.ml0 { margin-left:0 !important;}
.ml1 { margin-left:1px !important;}
.ml2 { margin-left:2px !important;}
.ml3 { margin-left:3px !important;}
.ml4 { margin-left:4px !important;}
.ml5 { margin-left:5px !important;}
.ml6 { margin-left:6px !important;}
.ml7 { margin-left:7px !important;}
.ml8 { margin-left:8px !important;}
.ml9 { margin-left:9px !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;}
.ml55 { margin-left:55px !important;}
.ml60 { margin-left:60px !important;}
.ml65 { margin-left:65px !important;}
.ml70 { margin-left:70px !important;}
.ml75 { margin-left:75px !important;}
.ml80 { margin-left:80px !important;}
.ml85 { margin-left:85px !important;}
.ml90 { margin-left:90px !important;}
.ml95 { margin-left:95px !important;}
.ml100 { margin-left:100px !important;}
.ml105 { margin-left:105px !important;}
.ml110 { margin-left:110px !important;}
.ml115 { margin-left:115px !important;}
.ml120 { margin-left:120px !important;}
.ml125 { margin-left:125px !important;}
.ml130 { margin-left:130px !important;}
.ml135 { margin-left:135px !important;}
.ml140 { margin-left:140px !important;}
.ml145 { margin-left:145px !important;}
.ml150 { margin-left:150px !important;}

/*---------------
  padding
---------------*/
.p0 { padding:0 !important;}
.p5 { padding:5px !important;}
.p10 { padding:10px !important;}
.p15 { padding:15px !important;}
.p20 { padding:20px !important;}
.p25 { padding:25px !important;}
.p30 { padding:30px !important;}
.p35 { padding:35px !important;}
.p40 { padding:40px !important;}

/* padding-top */
.pt0 { padding-top:0 !important;}
.pt1 { padding-top:1px !important;}
.pt2 { padding-top:2px !important;}
.pt3 { padding-top:3px !important;}
.pt4 { padding-top:4px !important;}
.pt5 { padding-top:5px !important;}
.pt6 { padding-top:6px !important;}
.pt7 { padding-top:7px !important;}
.pt8 { padding-top:8px !important;}
.pt9 { padding-top:9px !important;}
.pt10 { padding-top:10px !important;}
.pt15 { padding-top:15px !important;}
.pt18 { padding-top:18px !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;}
.pt55 { padding-top:55px !important;}
.pt60 { padding-top:60px !important;}
.pt65 { padding-top:65px !important;}
.pt70 { padding-top:70px !important;}
.pt75 { padding-top:75px !important;}
.pt80 { padding-top:80px !important;}
.pt85 { padding-top:85px !important;}
.pt90 { padding-top:90px !important;}
.pt95 { padding-top:95px !important;}
.pt100 { padding-top:100px !important;}
.pt105 { padding-top:105px !important;}
.pt110 { padding-top:110px !important;}
.pt115 { padding-top:115px !important;}
.pt120 { padding-top:120px !important;}
.pt125 { padding-top:125px !important;}
.pt130 { padding-top:130px !important;}
.pt135 { padding-top:135px !important;}
.pt140 { padding-top:140px !important;}
.pt145 { padding-top:145px !important;}
.pt150 { padding-top:150px !important;}
.pt200 { padding-top:200px !important;}

/* padding-right */
.pr0 { padding-right:0 !important;}
.pr1 { padding-right:1px !important;}
.pr2 { padding-right:2px !important;}
.pr3 { padding-right:3px !important;}
.pr4 { padding-right:4px !important;}
.pr5 { padding-right:5px !important;}
.pr6 { padding-right:6px !important;}
.pr7 { padding-right:7px !important;}
.pr8 { padding-right:8px !important;}
.pr9 { padding-right:9px !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;}
.pr55 { padding-right:55px !important;}
.pr60 { padding-right:60px !important;}
.pr65 { padding-right:65px !important;}
.pr70 { padding-right:70px !important;}
.pr75 { padding-right:75px !important;}
.pr80 { padding-right:80px !important;}
.pr85 { padding-right:85px !important;}
.pr90 { padding-right:90px !important;}
.pr95 { padding-right:95px !important;}
.pr100 { padding-right:100px !important;}
.pr105 { padding-right:105px !important;}
.pr110 { padding-right:110px !important;}
.pr115 { padding-right:115px !important;}
.pr120 { padding-right:120px !important;}
.pr125 { padding-right:125px !important;}
.pr130 { padding-right:130px !important;}
.pr135 { padding-right:135px !important;}
.pr140 { padding-right:140px !important;}
.pr145 { padding-right:145px !important;}
.pr150 { padding-right:150px !important;}

/* padding-bottop */
.pb0 { padding-bottom:0 !important;}
.pb1 { padding-bottom:1px !important;}
.pb2 { padding-bottom:2px !important;}
.pb3 { padding-bottom:3px !important;}
.pb4 { padding-bottom:4px !important;}
.pb5 { padding-bottom:5px !important;}
.pb6 { padding-bottom:6px !important;}
.pb7 { padding-bottom:7px !important;}
.pb8 { padding-bottom:8px !important;}
.pb9 { padding-bottom:9px !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;}
.pb55 { padding-bottom:55px !important;}
.pb60 { padding-bottom:60px !important;}
.pb65 { padding-bottom:65px !important;}
.pb70 { padding-bottom:70px !important;}
.pb75 { padding-bottom:75px !important;}
.pb80 { padding-bottom:80px !important;}
.pb85 { padding-bottom:85px !important;}
.pb90 { padding-bottom:90px !important;}
.pb95 { padding-bottom:95px !important;}
.pb100 { padding-bottom:100px !important;}
.pb105 { padding-bottom:105px !important;}
.pb110 { padding-bottom:110px !important;}
.pb115 { padding-bottom:115px !important;}
.pb120 { padding-bottom:120px !important;}
.pb125 { padding-bottom:125px !important;}
.pb130 { padding-bottom:130px !important;}
.pb135 { padding-bottom:135px !important;}
.pb140 { padding-bottom:140px !important;}
.pb145 { padding-bottom:145px !important;}
.pb150 { padding-bottom:150px !important;}

/* padding-left */
.pl0 { padding-left:0 !important;}
.pl1 { padding-left:1px !important;}
.pl2 { padding-left:2px !important;}
.pl3 { padding-left:3px !important;}
.pl4 { padding-left:4px !important;}
.pl5 { padding-left:5px !important;}
.pl6 { padding-left:6px !important;}
.pl7 { padding-left:7px !important;}
.pl8 { padding-left:8px !important;}
.pl9 { padding-left:9px !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;}
.pl55 { padding-left:55px !important;}
.pl60 { padding-left:60px !important;}
.pl65 { padding-left:65px !important;}
.pl70 { padding-left:70px !important;}
.pl75 { padding-left:75px !important;}
.pl80 { padding-left:80px !important;}
.pl85 { padding-left:85px !important;}
.pl90 { padding-left:90px !important;}
.pl95 { padding-left:95px !important;}
.pl100 { padding-left:100px !important;}
.pl105 { padding-left:105px !important;}
.pl110 { padding-left:110px !important;}
.pl115 { padding-left:115px !important;}
.pl120 { padding-left:120px !important;}
.pl125 { padding-left:125px !important;}
.pl130 { padding-left:130px !important;}
.pl135 { padding-left:135px !important;}
.pl140 { padding-left:140px !important;}
.pl145 { padding-left:145px !important;}
.pl150 { padding-left:150px !important;}

/* font-size */
.fz10 { font-size: 10px !important;}
.fz11 { font-size: 11px !important;}
.fz12 { font-size: 12px !important;}
.fz13 { font-size: 13px !important;}
.fz14 { font-size: 14px !important;}
.fz15 { font-size: 15px !important;}
.fz16 { font-size: 16px !important;}
.fz18 { font-size: 18px !important;}
.fz20 { font-size: 20px !important;}
.fz21 { font-size: 21px !important;}
.fz22 { font-size: 22px !important;}
.fz24 { font-size: 24px !important;}
.fz26 { font-size: 26px !important;}
.fz28 { font-size: 28px !important;}
.fz30 { font-size: 30px !important;}
.fz32 { font-size: 32px !important;}
.fz34 { font-size: 34px !important;}
.fz36 { font-size: 36px !important;}
.fz38 { font-size: 38px !important;}
.fz40 { font-size: 40px !important;}
.fz50 { font-size: 50px !important;}
.fz60 { font-size: 60px !important;}
.fz70 { font-size: 70px !important;}
/* font-weight */
.fw_b { font-weight: bold !important;}
.fw_300 { font-weight: 300 !important;}
.fw_200 { font-weight: 200 !important;}

/*---------------
  text-align
---------------*/
.taC { text-align: center !important;}
.taL { text-align: left !important;}
.taR { text-align: right !important;}


/*---------------
改行br
-----------------*/
.br_pc{display: block;}
.br_sp{display: none;}
@media only screen and (max-width: 768px){
  .br_pc{display: none;}
  .br_sp{display: block;}
}

/*=========================================================
tablet　css
===========================================================*/
@media only screen and (max-width: 768px){
  .dis_pc{display:none;}
  .dis_tb_sp{display:block;}

  .inner .title_logo{
    width:60%;
  }
  .inner .title_sub_logo{
    width:50%;
    margin:20px auto;
  }
  .flex_box{display:block;}

/*---------------
  3カラム
---------------*/
.col_box .col_in_3 {
  width:70%;
  display:block;
  margin:10% auto;
  justify-content:center;
}
.content_box .col_box .col_in_3 {
  width: 32%;
  margin-right: 2%;
  display: inline-block;
  vertical-align: top;
}
.col_box .col_in_3:first-child{
margin-left:auto;
}
.col_box .col_in_3:last-child{
  margin-right:auto;
}
/*---------------
  2カラム-3:7
---------------*/
.col_box .col_in_2-3 {
  width: 100%;
  margin:0 auto 10%;
  display:inline-block;
}

.col_box .col_in_2-7 {
  width: 100%;
  margin: 0;
  padding: 0;
  display:inline-block;
}

}

/*=========================================================
sp　css
===========================================================*/
@media only screen and (max-width:480px){
.dis_sp{display:block;}
.dis_tb_pc{display:none;}

.inner .title_logo{
  width:70%;
  margin-bottom: 20px;
}
.inner .title_sub_logo{
  width:50%;
  margin:20px auto;
}

.content_box{
  width:100%;
  padding:50px 20px;
  }
/*content_wrapper*/
.inner{
  padding:0 10px;
}

/*---------------
  カラム
---------------*/
.col_box {
  width: 100%;
}
/*---------------
  2カラム-5:5
---------------*/
.col_box .col_in_2 {
  width:100%;
  margin:1.5% auto;
  vertical-align: middle;
}
.content_box .col_box .col_in_2 {
  width:100%;
  max-width:100%;
  margin:1.5% auto;
  vertical-align: middle;
}

/*---------------
  3カラム
---------------*/
.col_box .col_in_3 {
  width:100%;
  display:block;
  margin:1.5% auto;
  justify-content:center;
}

.content_box .col_box .col_in_3 {
  width: 100%;
  margin-right: 2%;
  padding: 0;
  display: inline-block;
  vertical-align: top;
  box-sizing: border-box;
}

/*---------------
  4カラム social
---------------*/
.content_box .col_box .col_in_4 {
  width:100%;
  max-width:100%;
  padding: 0;
  display: inline-block;
  text-align: center;
  vertical-align: top;
  margin:1.5% auto;
}

.lineup figure .lineup_flowchart_pkg{
  max-width:115px;
}

/*スタート画面*/
  .lineup_flowchart_selected{
    display:flex;
    align-items:center;
    justify-content:center;
    content:'';
    width:210px;
    height:210px;
    border-radius:50%;
    margin-left:0%;
  }
  .top_concept{
    font-size:17px;
    line-height:1.75em;
  }
  
.title_flowchart_lineup{
  padding:0 !important;
  margin-bottom:0px;
}
.title_flowchart_lineup:before,
.title_flowchart_lineup:after{
  content:'';
}
.title_flowchart_lineup:before{
  margin-right:1em;
}
.title_flowchart_lineup:after{
  margin-left:1em;
}

/*質問ページ*/
.btn_flowchart_select{
  width:auto;
  height:45px;
  border-radius:23px;
}
.btn_flowchart_select a{
  font-weight:500;
  font-size:18px;
  height:45px;
  line-height:40px;
}

.flow_q_text{
  font-size:17px;
  width:92%;
  margin:0 auto 1em;
  text-align: left;
}
#flow_attention_q,#flow_attention_a{
  width:68%;
  font-size:14px;
}


/*何問目かが分かるステップバー*/
.stepbar-row {
  padding:0;
  width: 100%;
  margin:0 auto;
  padding:0;
}
.stepbar {
  display: flex;
  position: relative;
  padding:0;
  margin:0 auto;
  justify-content:center;
}
.stepbar li {
  font-size: 18px;
  list-style: none;
  padding-left:32px;
  position: relative;
  max-width: 100px;
}
.stepbar li:after {
  content: "";
  height: 6px;
  left: 0px;
  position: absolute;
  top: 18px;
  width: 42px;
}
.stepbar li:first-child {
  padding-left: 0;
  width: 40px;
}
.stepbar li:first-child:after {
  display: none;
}
.stepbar li span {
  border-radius: 50%;
  display: inline-block;
  height: 40px;
  margin-bottom: 4px;
  line-height:40px;
  text-align: center;
  width: 40px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
}

.last_question:before{
  display:inline-block;
  left:0;
  content:'';
  width:2px;
  height:22px;
  margin-bottom:-10px;
  margin-right:6px;
  background:#e20000;
  border:1px solid #e20000;
  transform:rotate(-35deg);
}.last_question:after{
  display:inline-block;
  right:0;
  content:'';
  background:#e20000;
  width:2px;
  height:22px;
  margin-bottom:-10px;
  margin-left:1px;
  border:1px solid #e20000;
  transform:rotate(35deg);
}


/*診断結果*/
.btn_flowchart_result,
.btn_flowchart_result_gray{
  width:100%;
  height:45px;
  border-radius:23px;
}
.btn_flowchart_result a,
.btn_flowchart_result_gray a{
  font-size:18px;
  height:45px;
  line-height:42px;
}


/*font-size*/
.fz14_sp { font-size: 14px !important;}
.fz16_sp { font-size: 16px !important;}
.fz18_sp { font-size: 18px !important;}
.fz20_sp { font-size: 20px !important;}
.fz22_sp{font-size: 22px !important;}
.fz24_sp{font-size: 26px !important;}
.fz26_sp{font-size: 26px !important;}

/*margin*/
.mb0_sp{margin-bottom: 0px !important;}
.mb10_sp{margin-bottom: 10px !important;}
.mb15_sp{margin-bottom: 15px !important;}
.mb20_sp{margin-bottom: 20px !important;}
.mb30_sp{margin-bottom: 30px !important;}

/*padding*/
.pb20_sp { padding-bottom:20px !important;}

/*padding-top*/
.pt15_sp { padding-top:15px !important;}
.pt30_sp { padding-top:30px !important;}

/* EDITOR PROPERTIES - PLEASE DON'T DELETE THIS LINE TO AVOID DUPLICATE PROPERTIES */
}

/*211013 新規追加*/

.bottom_line_inner {
  background: #fff;
  padding-bottom: 30px;
  position:relative;
}

@media only screen and (max-width:480px){
  .bottom_line_inner {
    padding:0 10px;
    padding-bottom: 80px;
  }
}

/*211013 新規追加*/