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

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

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

section
{
    min-height: inherit;
}

section .inner
{
    padding: 2px 140px;
}

section.sec_1
{
padding: 20px 0;
    margin: 0;

    background: #fff7e5 url(../img/bg_1.png) repeat-x center 365px;
}

section.sec_1 .inner .box_1 figure
{
    margin-bottom: 30px;
    padding: 0;

    text-align: center;
}
section.sec_1 .inner .box_1 figure.item_2,ection.sec_1 .inner .box_1 figure.item_3,ection.sec_1 .inner .box_1 figure.item_4,ection.sec_1 .inner .box_1 figure.item_5{
max-width: 80%;
}
section.sec_1 .inner .box_1 .item_1 figure,
section.sec_1 .inner .box_1 .item_2 figure,
section.sec_1 .inner .box_1 .item_3 figure
{
    margin-bottom: 15px;
}

section.sec_1 .inner .box_1 .item_4 a.btn
{
    font-size: 25px;
    font-size: 2.5rem;
    font-weight: bold;

    display: block;

    width: 100%;
    max-width: 480px;
    margin: 0 auto;
    padding: 1.2em;

    text-align: center;

    color: #fff;
    border-radius: 10px;
    background: #32b16c;
}
section.sec_1 .inner .box_1 .item_4 a.btn span
{
color:#fff100;
border:none;
}

section.sec_2
{
    background: #f0faff;
}

section.sec_2 .s_box,
section.sec_2 .h_box
{
    position: relative;

    width: 65%;
    margin: 0 auto 60px;
    padding: 1em 1.5em;

    border-radius: 10px;
    background: #fff;
}

section.sec_2 .s_box p,
section.sec_2 .h_box p
{
    font-size: 19px;
    font-size: 1.9rem;
    line-height: 1.5em;
}

section.sec_2 .s_box figure,
section.sec_2 .h_box figure
{
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;

    width: 135px;
    height: 180px;

    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
}

section.sec_2 .s_box figure figcaption,
section.sec_2 .h_box figure figcaption
{
    font-size: 18px;
    font-size: 1.8rem;

    padding-top: .5em;

    text-align: center;
}

section.sec_2 .s_box::after,
section.sec_2 .h_box::after
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: block;

    width: 24px;
    height: 26px;
    margin: auto;

    content: '';

    background: url(../img/arw_2.png) no-repeat center top;
    background-size: 100% auto;
}

section.sec_2 .s_box figure
{
    left: -160px;

    margin: 0 auto auto 0;
}

section.sec_2 .s_box:after
{
    left: -24px;

    margin-left: 0;
}

section.sec_2 .h_box figure
{
    right: -160px;

    margin: 0 0 auto auto;
}

section.sec_2 .h_box:after
{
    right: -24px;

    margin-right: 0;

    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
}

section.sec_cta
{
    background: #fff7e4;
}
section.sec_cta .inner
{
    overflow: visible;
}
section.sec_cta a
{
    font-size: 25px;
    font-size: 2.5rem;
    font-weight: bold;

    display: block;

    width: 100%;
    max-width: 520px;
    margin: 0 auto;
    padding: 1.2em;

    text-align: center;

    color: #fff;
    border-radius: 10px;
    background: #32b16c;
}

section.sec_3
{
    background: #fff;
}

section.sec_3 .box_a,
section.sec_3 .box_b,
section.sec_3 .box_c
{
    position: relative;

    width: 100%;
    margin: 80px auto 100px;
    padding: 110px 50px 50px;

    border-radius: 10px;
    background: #f1f1f1;
}

section.sec_3 .box_a figure,
section.sec_3 .box_b figure,
section.sec_3 .box_c figure
{
    margin-bottom: 40px;
}

section.sec_3 .box_a figure.ttl,
section.sec_3 .box_b figure.ttl,
section.sec_3 .box_c figure.ttl
{
    position: absolute;
    top: -45px;
    right: 0;
    bottom: 0;
    left: 0;

    width: auto;
    height: auto;
    margin: 0 auto auto;

    text-align: center;
}

section.sec_3 .box_a p,
section.sec_3 .box_b p,
section.sec_3 .box_c p
{
    font-size: 19px;
    font-size: 1.9rem;
}

section.sec_3 .box_a
{
    border: #3a900d solid 2px;
}

section.sec_3 .box_b
{
    border: #1f9fd9 solid 2px;
}

section.sec_3 .box_c
{
    margin-bottom: 50px;

    border: #c99826 solid 2px;
}

section.sec_3 p
{
font-size: 19px;
    font-size: 1.9rem;
}

section.sec_4
{
    background: #ebfff4;
}

section.sec_4 .box_d
{
    margin-bottom: 45px;
    padding: 35px 30px;

    border-radius: 10px;
    background: #fff;
}

section.sec_4 .box_d h2
{
    font-size: 30px;
    font-size: 3rem;

    margin-bottom: 1em;
    padding: .5em;

    text-align: center;
    letter-spacing: -1px;

    color: #fff;
    background: #3a900d;
}

section.sec_4 .box_d p
{
font-size: 19px;
    font-size: 1.9rem;
}

section.sec_idc
{
    position: fixed;
    z-index: 100;
    bottom: 0;
    width: 100%;
    max-height: 120px;
    padding: 15px;
    background: #99dfff;
display:none;
}

section.sec_idc p
{
    font-size: 26px;
    font-size: 2.6rem;
    font-weight: bold;
    text-align: center;
margin-bottom: 10px;
}
section.sec_idc p a{
background: #32b16c;
    color: #fff;
    padding: 2px 19px;
    border-radius: 15px;
    }
section.sec_idc p span
{
    font-size: 42px;
    font-size: 4.2rem;

    color: #32b16c;
}

section.sec_idc p a
{
 /*   color: #fff;*/
}

section.sec_idc .inner
{
    position: relative;

    overflow: visible;
}

section.sec_idc .inner::after
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0px;
    left: 15%;

    display: block;

    width: 84px;
    height: 126px;
    margin: auto auto 0 0;

    content: '';

    background: url(../img/img_018.png) no-repeat center top;
    background-size: 100% auto;
}
.max_num , .crt_num{ vertical-align: bottom; }
section .t_1_b
{
    padding: .1em;

    color: #000;
    background-color: #ff0;
}

section .t_2_b
{
    font-weight: bold;

    padding: .1em;

    color: #000;
    background-color: #ff0;
}

section .txt_l
{
font-size: 120% !important;
    font-weight: bold;
    line-height: 150%;
}

section .txt_s
{
    font-size: 80% !important;
    line-height: 1.3em !important;
}

footer
{
    padding-bottom: 140px;
}

footer.thx
{
    padding-bottom: 10px;
}


@media screen and (max-width: 767px)
{
    section .inner
    {
        padding: 0 10px;
    }

    section.sec_1
    {
        background: #fff7e5 url(../img/bg_1.png) no-repeat center 155px;
        background-size: 150% auto;
    }

    section.sec_1 .inner .box_1 figure
    {
        margin-bottom: 20px;
    }

    section.sec_1 .inner .box_1 .item_4 a.btn
    {
        font-size: 18px;
        font-size: 1.8rem;
    }

    section.sec_2 .s_box,
    section.sec_2 .h_box
    {
        width: 80%;
        margin: 0 auto 30px;

        border-radius: 5px;
    }

    section.sec_2 .s_box p,
    section.sec_2 .h_box p
    {
        font-size: 14px;
        font-size: 1.4rem;
    }

    section.sec_2 .s_box figure,
    section.sec_2 .h_box figure
    {
        width: 18%;
        height: 115px;
    }

    section.sec_2 .s_box figure figcaption,
    section.sec_2 .h_box figure figcaption
    {
        font-size: 12px;
        font-size: 1.2rem;
    }

    section.sec_2 .s_box::after,
    section.sec_2 .h_box::after
    {
        width: 14px;
        height: 15px;
    }

    section.sec_2 .s_box
    {
        margin-right: 0;
    }

    section.sec_2 .s_box figure
    {
        left: -70px;
    }

    section.sec_2 .s_box:after
    {
        left: -14px;
    }

    section.sec_2 .h_box
    {
        margin-left: 0;
    }

    section.sec_2 .h_box figure
    {
        right: -70px;

        height: 105px;
    }

    section.sec_2 .h_box:after
    {
        right: -14px;
    }

    section.sec_3 .box_a,
    section.sec_3 .box_b,
    section.sec_3 .box_c
    {
        margin: 40px auto 50px;
        padding: 60px 1em 30px;

        border-radius: 5px;
    }

    section.sec_3 .box_a figure,
    section.sec_3 .box_b figure,
    section.sec_3 .box_c figure
    {
        margin-bottom: 20px;
    }

    section.sec_3 .box_a figure.ttl,
    section.sec_3 .box_b figure.ttl,
    section.sec_3 .box_c figure.ttl
    {
        top: -35px;
    }

    section.sec_3 .box_a figure.ttl img,
    section.sec_3 .box_b figure.ttl img,
    section.sec_3 .box_c figure.ttl img
    {
        width: 50%;
    }

    section.sec_3 .box_a p,
    section.sec_3 .box_b p,
    section.sec_3 .box_c p
    {
        font-size: 16px;
        font-size: 1.6rem;
    }

    section.sec_3 p
    {
        font-size: 16px;
        font-size: 1.6rem;
    }

    section.sec_3 figure.t_l
    {
        margin-bottom: .5em;
    }

    section.sec_3 figure.t_l img
    {
        height: 40px;
    }

    section.sec_4 .box_d
    {
        margin-bottom: 45px;
        padding: 15px 10px;

        border-radius: 5px;
    }

    section.sec_4 .box_d h2
    {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.65em;

        padding: .5em 1em;

        letter-spacing: 0;

        background: #3a900d;
    }

    section.sec_4 .box_d p
    {
        font-size: 16px;
        font-size: 1.6rem;
    }

    section.sec_idc
    {
        max-height: 120px;
        padding: 0;
    }

    section.sec_idc p
    {
        font-size: 16px;
        font-size: 1.6rem;

        text-align: center;
    }

    section.sec_idc p span
    {
        font-size: 28px;
        font-size: 2.8rem;
    }

    section.sec_idc p a
    {
        font-size: 20px;
        font-size: 2rem;

        display: block;

        margin-bottom: .5em;
    }

    section.sec_idc .inner
    {
        padding: 1em 1em 1em 6em;
    }

    section.sec_idc .inner::after
    {
        bottom: 0;
        left: 10px;

        width: 60px;
        height: 90px;
    }
}

/* 追加20200227 */

section .bounce::after
{
  top: 20%;
  right: 5%;

  width: 89px;
  height: 82px;
  margin: 0 0 auto auto;

  background: url(../img/icon_hand.png) no-repeat center top;
  background-size: cover;
}
@media screen and (max-width: 767px)
{
  section .bounce::after
  {
      top: 70%;
      right: 2%;

      width: 44px;
      height: 41px;
      margin: 0 0 auto auto;
  }
}

section.sec_1 .inner .box_1 .form_wrapper a.btn_next
{
    max-width: 520px;
}
section.sec_1 .inner .box_1.thx .item_4
{
    height: inherit;

    opacity: 1;
}

section.sec_1 .inner .box_1.thx .item_4 p span
{
    line-height: 1.8em;

    padding: .2em;

    background: #ff0;
}

section.sec_1 .inner .box_1.thx .item_4 p a.btn span{
  background: none;
}

section.sec_4 .box_d p span
{
    background: #ff0;
    padding: .2em;
    font-weight: bold;
}

section.sec_5
{
    background: #fff;
}

section.sec_5 .inner
{
    overflow: visible;
}

section.sec_5 .inner:first-child
{
    margin-bottom: 50px;
}

section.sec_5 a
{
    font-size: 25px;
    font-size: 2.5rem;
    font-weight: bold;

    display: block;

    width: 100%;
    max-width: 520px;
    margin: 0 auto;
    padding: 1.2em;

    text-align: center;

    color: #fff;
    border-radius: 10px;
    background: #32b16c;
}

section.sec_5 dl
{
    font-size: 22px;
    font-size: 2.2rem;

    margin-bottom: 30px;
    padding: 1em;

    border-radius: 8px;
    background: #fff8e6;
}

section.sec_5 dl dt,
section.sec_5 dl dd
{
    font-weight: bold;
    line-height: 1.5em;

    position: relative;

    padding: 1.5em .5em 1.5em 1.5em;
}

section.sec_5 dl dt::before,
section.sec_5 dl dd::before
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: block;

    width: 83px;
    height: 82px;
    margin: 0 auto auto 0;

    content: '';
}

section.sec_5 dl dt
{
    font-size: 27px;
    font-size: 2.7rem;

    margin-bottom: 1em;
    margin-left: 1.5em;
    padding-left: 2.5em;

    color: #1fb0f1;
    border-radius: 8px;
    background: #fff;
}

section.sec_5 dl dt::before
{
    left: -40px;

    background: url(../img/icon_q.png) no-repeat center top;
}

section.sec_5 dl dd
{
    padding-left: 5em;
}

section.sec_5 dl dd::before
{
    background: url(../img/icon_a.png) no-repeat center top;
}

section.sec_1 .inner .box_1.thx .item_4 p a.btn span.kakomi{

    padding: .1em;
    background: #ff0!important;
    color:#000;
}

@media screen and (max-width: 767px)
{
  section.sec_5 .inner:first-child
  {
      margin-bottom: 10px;
  }

  section.sec_5 dl
  {
      font-size: 20px;
      font-size: 2rem;

      padding: 1em 1em 1em .5em;
  }

  section.sec_5 dl dt,
  section.sec_5 dl dd
  {
      padding: .5em;
  }

  section.sec_5 dl dt:before,
  section.sec_5 dl dd:before
  {
      width: 41px;
      height: 41px;

      background-size: cover;
  }

  section.sec_5 dl dt
  {
      font-size: 22px;
      font-size: 2.2rem;

      margin-left: 1em;
      padding-left: 1.8em;
  }

  section.sec_5 dl dt::before
  {
      left: -20px;
  }

  section.sec_5 dl dd
  {
      padding-left: 3em;
  }

  section.sec_5 dl dd::before
  {
      left: 5px;
  }
}

.box_1.thx .bounce::after{
	top: 70%;
    right: -5%;
}
@media screen and (max-width: 767px)
{
	.box_1.thx .bounce::after{
		top: 70%;
    	right: -5%;
    }
}


/* 追加20200427 */
table.about_tb{
	margin:15px auto;
	font-size:110%;
	line-height:1.6;
}
table.about_tb th {
	text-align:left;
	padding:15px 20px;
	white-space: nowrap;
	vertical-align:top;
}
table.about_tb td {
	text-align:left;
	padding:15px 20px;
}

@media screen and (max-width: 540px) ,print{
	table.about_tb th { width:100%; display:block; padding:5px 10px; }
	table.about_tb td { width:100%; display:block; padding:0px 10px; padding-bottom:30px; }
}

/* 追加20200523 akino */
section.sec_6
{
    background: #fff;
}
section.sec_6 p
{
font-size: 12px;
    font-size: 1.3rem;
}
/* 追加20200619 hozumi */
table.about_tb2{
	margin:15px auto;
	font-size:110%;
	line-height:1.6;
	max-width: 560px;
	margin-bottom: 50px;
}
table.about_tb2 th {
	width:70%;
	text-align:left;
	padding:15px 0px;
	vertical-align:top;
	font-weight:normal;
}
table.about_tb2 th.name_tit {
	font-size:20px;
	padding-bottom:10px;
	border-bottom:3px solid #2283d8;
	font-weight:bold;
}
table.about_tb2 td {
	width:30%;
	text-align:center;
	padding:15px 0px;
	padding-left:10px;
	vertical-align:top;
}
table.about_tb2 td img { width:100%; height:auto; }

@media screen and (max-width: 540px) ,print{
	table.about_tb2 th { width:100%; display:block; padding:5px 10px; }
	table.about_tb2 td { width:100%; display:block; padding:0px 10px; padding-top:20px; }
	table.about_tb2 td img { width:50%; }
}