@charset "UTF-8";
article.cont section{
    width: 90%;
    max-width: 1078px;
    margin: 0 auto;
    text-align: center;
}
p.title{
    font-size: 30px;

}
.mt_110 {
	margin-top: 110px;
}
.mt_40 {
	margin-top: 40px;
}
._heading{
    width: 100%;
    max-width: 1078px;
    text-align: center;
    background-color: #F7F7F7;
    font-size: 2.3rem;
    letter-spacing: 2.3px;
    padding: 7px 0;
}
.wrap button{
    width: 100%;
    height: 38px;
    background-color: #fff;
    border: 1px solid #BFBFBF;
    text-align: center;
    padding: 10px 0;
    margin: 20px 0;
    letter-spacing: 3.6px;
    font-weight: 600;
}
@media (min-width:1024px){
    .wrap button{
        width: 354px;
        margin: 20px 15px;
    }
}
@media (max-width: 756px) {
	h2.title_large>span:last-child {
		bottom: -20px;
		text-align: left;
	}
	.mt_110 {
		margin-top: 50px;
	}
	._heading{
		font-size: 1.7rem;
		padding: 15.5px;
		line-height: 1.7;
		box-sizing: border-box;
	}

}
.content.flex_box {
    flex-wrap: wrap;
}
.content.flex_box button{
    margin-left: auto;
}
.btn_right {
    width: 100%;
    text-align: right;
}
._bold{
    font-weight: 600;
}
.flex-box p{
    margin: 60px 0;
	font-size: 1.8rem;
	line-height: 2;
}
.wrap{
    width: 90%;
    text-align: left;
    margin: 60px auto 0;
    box-sizing: border-box;
}

.wrap.flex_box{
    flex-wrap: wrap;
}
.wrap p{
    margin: 10px 0;
    font-size: 1.4rem;
    margin: 17px 0;
	letter-spacing: 0.28px;
}
._title{
    line-height: 1.5;
    white-space: pre-line;
    font-size: 18px;
	letter-spacing: 1.8px;
}
.content{
    width: calc(100% - 56px);
    padding-left: 10%;
    box-sizing: border-box;
}
.content ul{
    margin: 10px 0;
    padding: 0;
	width: 100%;
}
.content li{
    white-space: pre-line;
    font-size: 14px;
    width: 100%;
    margin-top: 8px;
    line-height: 2.0;
    letter-spacing: 0.28px;
    position: relative;
}
.content li::before{
    content: "・";
    position: absolute;
    left: -1em;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}
.address{
    border: 1px solid #B4B4B4;
    box-sizing: border-box;
    align-items: center;
    max-width: 587px;
    font-size: 1.4rem;
    margin-top: 20px;
}
.address .title{
    width: 40%;
    text-align: center;
}
.address .address_info p{
    margin: 0.8em 0;
}
@media (max-width: 756px) {
	.wrap {
    width: 100%;
	}
	.flex-box p {
		margin: 34px 0;
		font-size: 1.5rem;
	}
	.fnt_sp_12 {
		font-size: 1.2rem !important;
		text-align: left;
	}

	.wrap {
		margin: 30px auto 0;
	}
	._title {
		font-size: 1.5rem;
		letter-spacing: 0;
		margin: -30px 0 30px 60px;
		display:block;
		word-break: break-all;
	}
    ._title.lh4{
        line-height: 4;
    }
	.wrap button,.content button {
		width: 280px;
		height: 43px;
	}
	.content.flex_box button {
		margin: 0 auto;
	}
	.btn_right {
		text-align: center;
	}
	.content {
		padding-left: 0;
		width: 100%;
	}
	.content li {
		font-size: 1.2rem;
		letter-spacing: 0.24px;
		padding-left: 15px;
		box-sizing: border-box;
		text-align: justify;
	}
	.content li::before {
		left:0;
	}
	.address {
		flex-direction: column;
	}
	.address .title {
		font-size: 1.3rem;
		letter-spacing: 1.3px;
		width: 100%;
		padding:15px 0;
	}
	.address .address_info p {
		font-size: 1.3rem;
		margin: 0.2em 0;
	}
	._heading span.small {
		font-size: 1.4rem;
		display: block;
	}
	.sp_block {
		display: block
	}
	.sp_txt_center {
		text-align: center;
	}
}
/*サービスセンター*/
.call_wrap{
    width: 90%;
    max-width: 800px;
    margin: 0 auto;
}
.call_wrap p{
    margin: 19px 0;
    font-size: 1.4rem;
    width: 100%;
}
.call_info{
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 50px 0 30px;
}
.call_info div{
    margin: 0 30px;
    box-sizing: border-box;
    position: relative;
}
.call_info div:first-of-type{
    display: inline-flex;
    align-items: center;
    text-align: left;
}
.call_info div:first-of-type::before{
    content: "フリーダイヤル";
    display: block;
    position: absolute;
    top: 0;
    left: -10px;
    font-size: 1.1rem;
    letter-spacing: 0;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}
.call_info div:last-of-type::before{
    content: "携帯電話・一部のIP電話からは";
    display: block;
    position: absolute;
    top: 0;
    font-size: 1.1rem;
    letter-spacing: 0;
	font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}
.call_info .style_en{
    font-size: 4.1rem;
}
.call_info .small{
    font-size: 1.1rem;
    display: block;
}
/*四角のところ*/
._step-box{
    display: block;
    position: relative;
    width: 56px;
    height: 60px;
}
span.step{
    font-size: 14px;
    position: absolute;
}
span._num{
    font-size: 30px;
    position: absolute;
    top: 20px;
    left: 35px;
}
._step-box::after{
    content: "";
    position: absolute;
    width: 30px;
    left: 10px;
    top: 30px;
    display: block;
    border-top: 1px solid #BFBFBF;
    transform: skewY(-60deg);
}
.form_group_login{
    position: relative;
    display: inline-flex;
    width: 100%;
}
@media (max-width: 756px) {
	._step-box {
		width: 36px;
		height: 30px;
	}
	span.step {
		font-size: 1.1rem;
	}
	span._num {
		font-size: 2.3rem;
		top: 20px;
		left: 35px;
	}
	._step-box::after {
		width: 25px;
	}
	.call_wrap{
		width: 100%;
	}
	.call_info {
		flex-direction: column;
	}
	.call_info .style_en {
		font-size: 3.2rem;
	}
	.call_info img{
		width: 60px;
		height: 39px;
	}
}

/*modal*/
.modal{
    display: none;
    height: 100vh;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 300;
}
.modal_bg{
    background: rgba(0,0,0,0.5);
    height: 100vh;
    position: absolute;
    width: 100%;
}
.auth_modal_content{
    background: #fff;
    left: 50%;
    padding: 4% 0;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 90%;
    height: 90%;
    box-sizing: border-box;
    overflow-y: auto;
}
.auth_modal_content .title2{
    font-size: 1.7rem;
    font-weight: 600;
}
.auth_modal_content .help_text{
    font-size: 1.2rem;
    margin-top: 14px;
    margin-bottom: 22px;
}
.auth_modal_content .message{
    font-size: 1.4rem;
    letter-spacing: 0.28px;
    line-height: 1.5;
    margin: 1em 0;
}
.auth_modal_content .black_btn{
    font-size: 1.2rem;
}
.w200,.w290{
    width: 100%;
}
.text_right{
    text-align: right;
}
.auth_modal_content .pw_forget{
    font-size: 1.2rem;
}
.auth_modal_content .flex_box{
    flex-wrap: wrap;
}
.auth_modal_content .left_box,
.auth_modal_content .right_box{
    width: 100%;
    padding: 0 50px;
    box-sizing: border-box;
}
@media (max-width:1023px){
    .auth_modal_content{
        padding: 50px 0;
    }
    .auth_modal_content .left_box{
        margin-bottom: 100px;
    }
}
@media (min-width:1024px){
    .auth_modal_content .left_box,
    .auth_modal_content .right_box{
        width: 50%;
        padding: 0 5%;
    }
    .auth_modal_content .left_box::after{
        content: "";
        width: 1px;
        height: 100%;
        background: #A2A2A2;
        position: absolute;
        top: 0;
        right: 0;
    }
    .w200{
        width: 200px;
        margin-left: auto;
    }
    .w290{
        width: 290px;
        margin-left: auto;
    }
}

.auth_modal_content .left_box{
    position: relative;
}
.auth_modal_content .right_box > div:first-of-type{
    padding-bottom: 8%;
    margin-bottom: 8%;
    border-bottom: 1px solid #A2A2A2;
}
.auth_modal_content .right_box .conf_number{
    margin-top: 60px;
}
.auth_modal_content .form_group{
    margin: 12px 0;
}
/*閉じるボタン*/
.modal_close {
    display: block;
    width: 35px;
    height: 35px;
    position: absolute;
    top: 5%;
    right: 3%;
}
.modal_close_btn {
  display: inline-block;
  width: 33px;
  height: 33px;
  position: relative;
  cursor: pointer;
}
.modal_close_btn span::before,
.modal_close_btn span::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: #BFBFBF;
}
.modal_close_btn span::before {
  transform: rotate(-45deg);
}
.modal_close_btn span::after {
  transform: rotate(45deg);
}

@media (max-width:768px){

}
.flex-box .holiday_notice{
    width: 100%;
    max-width: 1261px;
    margin: 85px auto 0;
    padding: 1em;
    border: 1px solid #BFBFBF;
    box-sizing: border-box;
}
.holiday_notice .title{
    margin-bottom: 2em;
    text-align: center;
}
.holiday_notice .big{
    font-size: 2.0rem;
    letter-spacing: 2px;
    margin: 2em 0;
    text-align: center;
}
.holiday_notice p{
    word-break: break-all;
    white-space: pre-wrap;
    font-size: 1.3rem;
    line-height: 1.7;
}
.flex-box .holiday_notice .disflex{
    margin:auto;
    text-align: left;
}
@media (min-width: 756px) {
    .flex-box .holiday_notice{
        width: 90%;
        max-width: 1261px;
        padding: 34px 63px;
    }
    .holiday_notice .title{
        margin-bottom: 5em;
    }
}