@charset "utf-8";
/*
 * smp.css
 *
 *  version --- 1.0
 *  updated --- 2024/10/24
 */


@media (max-width: 959px) and (min-width: 751px) {
    
}


/*** 非スマホ 751px ~ ***/
@media screen and (min-width: 751px) {
    .is-sp {
        display: none!important;
    }
}

@media only screen and (max-width : 750px){
	.is-pc {
		display: none!important;
	}
}

/* !wrapper
---------------------------------------------------------- */
@media screen and (max-width: 750px) {
	#wrapper {
	    padding: 5rem 0 0;
	}

	.inner02,
	.inner {
	    padding: 0 2rem;
	}
}

/* !header
---------------------------------------------------------- */
@media screen and (max-width: 750px) {
	#header {
	}

	.header-inner {
	    height: 5rem;
	    padding: 0 2rem;
	}

	.header-logo {
	    width: 17.5rem;
	    position: relative;
	    z-index: 999;
	}

	.btn-menu{
	    position: fixed;/*ボタン内側の基点となるためrelativeを指定*/
	    right: 0;
	    top: 0;
	    z-index: 9999;
	    cursor: pointer;
		width: 5rem;
		height: 5rem;
		background: #E60013;
	}

		/*ボタン内側*/
	.btn-menu span{
	  display: inline-block;
	  transition: all .5s;/*アニメーションの設定*/
	  position: absolute;
	  left: 1.5rem;
	  height: .2rem;
	  width: 2rem;
	  border-radius: .4rem;
	  background: #fff;
	}
	.btn-menu span:nth-of-type(1) {
	    top: 1.8rem; 
	}
	.btn-menu span:nth-of-type(2) {
	    top: 50%;
	    transform: translateY(-50%);
	}
	.btn-menu span:nth-of-type(3) {
	    bottom: 1.8rem;
	}
	.is-active.btn-menu span:nth-of-type(1) {
	  transform: translateY(.7rem) rotate(45deg);
	}
	.is-active.btn-menu span:nth-of-type(2) {
	  opacity: 0;
	}
	.is-active.btn-menu span:nth-of-type(3) {
	  transform: translateY(-.6rem) rotate(-45deg);
	}


	/* !g-navi
	---------------------------------------------------------- */
			
	#g-navi {
		position: fixed;
		top: 0;
		right: 0;
		width: 100%;
		height: 100vh;
		z-index: 110;
		box-sizing: border-box;
		padding: 7.6rem 2rem 8rem;
		overflow-x: hidden;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		opacity: 0;
		pointer-events: none;
		transition: opacity .3s,right .3s;

	    background: #fff;
	}
	#g-navi.is-active{
	    opacity: 1;
	    pointer-events: auto;
	}	
	.nav_list{
		flex-direction: column;
		grid-gap: 0;
		border-top: 1px solid #DBDBDB;
	}
	.nav_list li{
		border-bottom: 1px solid #DBDBDB;
	}
	.nav_list a{
		font-size: 1.4rem;
		line-height: 1.5;
		font-weight: bold;
		letter-spacing: 0.08em;
		display: flex;
		align-items: center;
		justify-content: flex-start;
		height: 4.8rem;
		border-bottom: 0;
	}
	.nav_list a.parentA{
		background: none;
		padding: 0;
	}

	.subBox{
	    opacity: 1;
	    pointer-events: auto;
	    transition: opacity .5s;
	    display: none;

	    position: static;
	    left: 50%;
	    top: 100%;
	    z-index: 1;
	    transform: translateX(0%);
	    white-space: nowrap;
	    padding: 0 0 3rem;
	}
	.subBox:before{
		content: none;
	}

	.subBtn{
		position: absolute;
		right: 0px;
		top: 0;
		z-index: 2;
		width: 4.7rem;
		height: 4.7rem;
		background: url(../img/common/sub_close_sp.svg)no-repeat right center;
		background-size: 1.7rem auto;
		cursor: pointer;
	}
	.subBtn.open{
		background: url(../img/common/sub_close_sp.svg)no-repeat right center;
		background-size: 1.7rem auto;
	}
	.subLi{
		background: none;
		border: 0!important;
	}
	.subLi+.subLi{
		margin-top: 1.2rem;
	}
	.nav_list .subBox a{
		font-size: 1.2rem;
		font-weight: 500;
		height: auto;
	    background: none;
	    padding-left: 0;
	}

	.nav_copy{
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		height: 6.3rem;
		font-size: 1.1rem;
		letter-spacing: .1em;
		background: #EFEFEF;
	}

	.btn_fixed {
		z-index: 88;
		position: fixed;
	    right: 0;
	    left: 0;
	    top: auto;
	    bottom: 0;
	    background: #fff;
	    transform: none;
	    display: grid;
	    grid-template-columns: repeat(3,1fr);
	    width: auto;
	    border-radius: 0;

	    display: none;
	}
	.btn_fixed a{
    	writing-mode: horizontal-tb;
		font-size: 1.4rem;
		line-height: 1.33;
		padding: 1rem 1rem;
		height: 5.8rem;
		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.btn_fixed a+a{
		border: 0;
		border-left: 1px solid #D8D8D8;
	}
}

/* !teaser
---------------------------------------------------------- */
@media only screen and (max-width : 750px){
	.teaser_hd{
	    padding: 4.6rem 0 2rem;
	}
	.teaser_hd .eng{
	    font-size: 3rem;
	    line-height: 1.2;
	    letter-spacing: .05em;
	    margin-right: -1rem;
	}
	.teaser_hd .jap{
	    font-size: 1.7rem;
	}

	.teaser_img .img_box{
	    padding-top: 18.4rem;
	}
}

/* !footer
---------------------------------------------------------- */
@media only screen and (max-width : 750px){
	.footer_contact{
	    background: url(../img/common/bg_contact_sp.jpg)no-repeat center center;
	    background-size: cover;
	    padding: 5rem 0 6.4rem;
	}
	.footer_contact_dl{
	    display: block;
	}
	.footer_contact_dl_txt{
	    font-size: 1rem;
	    font-weight: 500;
	    letter-spacing: .1em;
	    text-shadow: 0 0 3rem #000;
	}
	.footer_contact_dl dd{
		margin-top: 2.4rem;
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 1rem;
	}
	.footer_contact_dl .item{
	    border-radius: 1rem;
	    background: #fff;
	    padding: 2rem 5rem 2.5rem;
	    width: auto;
	}
	.footer_contact_dl .ttl{
	    font-size: 1.4rem;
	    padding-bottom: 1.4rem;
	    border-bottom: .2rem solid #C6C6C6;
	}
	.footer_contact_tel{
	    margin-top: 1.5rem;
	}
	.footer_contact_tel .tel_link{
	    padding-left: 5.1rem;
	    background: url(../img/common/tel.svg)no-repeat left center;
	    background-size: 3.4rem auto;
	    display: flex;
	    flex-direction: column;
	}
	.footer_contact_tel .number{
	    font-size: 2rem;
	    line-height: 1.1;
	    font-weight: bold;
	    letter-spacing: .04em;
	}
	.footer_contact_tel .time{
	    font-size: .7rem;
	    font-weight: 300;
	}

	.footer_contact_email{
	    margin-top: 1.7rem;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    grid-gap: 1.2rem;
	}
	.footer_contact_email_icon{
	    width: 3.4rem;
	}
	.footer_contact_email .btn_link01{
	    font-size: 1.1rem;
	    font-weight: bold;
	    height: 3.7rem;
	    white-space: nowrap;
	}

	#footer {
	    padding: 5rem 0 3.5rem;
	}
	.footer-inner {
	    display: block;
	}
	.footer_logo{
	    width: 26.5rem;
	    margin-bottom: 3rem;
	}
	.footer_addr{
	    display: block;
	}
	.footer_addr+.footer_addr{
	    margin-top: 1.4rem;
	}
	.footer_addr dt{
	    width: auto;
	    font-size: 1.5rem;
	    margin-bottom: .5rem;
	}
	.footer_addr dd{
	    font-size: 1.2rem;
	    line-height: 1.25;
	}

	.footer_list{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 1.6rem;
	    margin: 3rem 0 0;
	}
	.footer_list a{
	    font-size: 1.5rem;
	    font-weight: bold;
	    letter-spacing: .07em;
	}
	.footer_box{
	    display: flex;
	    justify-content: flex-end;
	    position: relative;
	    display: none;
	}
	.footer_box_img{
	    width: auto;
	}
	.footer_box_txt{
	    position: absolute;
	    right: 2rem;
	    bottom: 2rem;
	    font-size: 2.2rem;
	    line-height: 1.33;
	}
	.footer_box_txt font{
	    font-size: 3.2rem;
	}

	#copyright {
	    position: static;
	    transform: none;
	    font-size: .6rem;
	    text-align: left;
	    margin-top: 1.8rem;
	}
	.page-top {
	    right: 2rem;
	    top: auto;
	    bottom: 3.5rem;
	    width: 6.4rem;
	    z-index: 9;
	}
}


@media only screen and (max-width : 750px){
	/*common*/
	.btn_link01{
	    height: 4.7rem;
	    font-size: 1.4rem;
	    padding: 0 1.1rem 0 1.5rem;
	}
	.btn_link01_icon {
	    height: 2.5rem;
	    width: 2.5rem;
	    min-width: 2.5rem;
	    margin-left: 1.5rem;
	}

	.btn_link02{
	    width: 16.3rem;
	    height: 4rem;
	    background: url(../img/common/arrow_btn02.svg)no-repeat right 1.8rem center #3E3E3E;
	    background-size: 1.3rem auto;
	    font-size: 1.4rem;
	    padding-right: 2rem;
	}

	.hd_medium{
	    margin-bottom: 2.5rem;
	}
	.hd_medium .eng{
	    font-size: 5rem; 
	    line-height: 1.2;
	}
	.hd_medium .jap{
	    font-size: 1.4rem; 
	    line-height: 1.44;
	}
}

/*news*/
@media only screen and (max-width : 750px){
	.news_wrap{
	    padding: 5rem 0;
	}
	.categ_select{
		width: 10.7rem;
		height: 2.6rem;
	    padding: 0 2.6rem 0 1.3rem;
	    font-size: 1.4rem;
	    background: url(../img/common/select.svg) no-repeat right 1.3rem center #FFBEBE;
	    background-size: 1rem auto;
	    border: 0;
	    border-radius: 0;
	    margin-bottom: 1rem;
	}
	.news_categ{
	    display: grid;
	    grid-template-columns: repeat(3,1fr);
	    grid-gap: 1rem;
	    margin-bottom: 2.5rem;
	}
	.news_categ a{
	    height: 3rem;
	    font-size: 1.4rem;
	    letter-spacing: .02em;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    background: #fff;
	    border: 1px solid #E0E0E0;
	}
	.news_categ a.is_active{
	    pointer-events: none;
	    border-color: #FFBEBE;
	    background-color: #FFBEBE;
	}

	.news_list li{
	    border-bottom: 1px solid #D5D5D5;
	}
	.news_list a{
	    display: block;
	    align-items: flex-start;
	    padding: 2.5rem 0;
	    opacity: 1!important;
	    position: relative;
	    font-size: 1rem;
	}
	.news_list a:before{
		top: 2.2rem;
		transform: none;
		right: 0;
	    width: 2.1rem;
	    height: 2.1rem;
	    background: url(../img/common/arrow_news.svg)no-repeat;
	    background-size: 100% auto;
	    box-shadow: 0 .3rem .6rem rgba(0,0,0,.16);
	}
	.news_list .date{
	    font-size: 1rem;
	    letter-spacing: .07em;
	    margin-bottom: .5rem;
	    width: auto;
	    display: inline-block;
	}
	.categ_span{
	    display: flex;
	    grid-gap: 1rem;
	}
	.categ_span span{
	    font-size: .9rem;
	    font-weight: 500;
	    letter-spacing: .05em;
	    color: #E60013;
	    border: 1px solid #E60013;
	    padding: 0 .7rem;
	}
	.news_list .categ_span{
	    font-size: .9rem;
	    display: inline-flex;
	    width: auto;
	    min-width: auto;
	    padding: 0;
	    margin-left: 1rem;
	    margin-bottom: 1rem;
	}
	.news_list .cont{
	    width: auto;
	}
	.news_list .ttl{
	    font-size: 1.6rem;
	    line-height: 1.33;
	    font-weight: bold;
	    margin-bottom: 1rem;
	    display: block;
	    transition: color 0.5s;
	}
	.news_list .txt{
	    font-size: 1.4rem;
	    line-height: 1.5;

	    overflow: hidden;
	    text-overflow: ellipsis;
	    display: -webkit-box;
	    -webkit-line-clamp: 2;
	    -webkit-box-orient: vertical;
	}

	/* !wp-pagenavi
	---------------------------------------------------------- */
	.wp-pagenavi {
	    grid-gap: 1.2rem;
	    width: 100%;
	    margin: 3.5rem auto 0;
	}

	.wp-pagenavi a, 
	.wp-pagenavi .current {
	    width: 3.1rem;
	    height: 3.1rem;
	    font-size: 1.2rem;
	    line-height: 1.5;
	}

	.wp-pagenavi .previouspostslink,
	.wp-pagenavi .nextpostslink {
	    font-family: "Noto Sans JP",sans-serif;
	    font-style: normal;
	    font-size: 2rem;
	    line-height: 1;
	    width: auto;
	    color: #191919!important;
	    background: none!important;
	}
}


/*news_detail*/
@media only screen and (max-width : 750px){
	.news_detail_wrap{
	    padding-bottom: 7rem;
	}
	.detail_box{
		margin: 0 -2rem;
	    padding: 4.5rem 2rem 4rem;
	}
	.detail_top{
	    display: flex;
	    align-items: center;
	    grid-gap: 2rem;
	    font-size: 1.4rem;
	}
	.detail_top .date{
	    font-size: 1.4rem;
	}
	.detail_top .categ_span span{
	    font-size: 1.4rem;
	}
	.detail_ttl{
	    font-size: 1.9rem;
	    font-weight: bold;
	    margin: 1.3rem 0 2.6rem;
	}
	.detail_cont{
	    font-size: 1.4rem;
	    line-height: 2;
	}
	.detail_cont p+p{
	    padding-top: 1.5em;
	}
	.detail_btn{
	    margin-top: 4rem;
	    text-align: center;
	}
}

/*contact*/
@media only screen and (max-width : 750px){
	.contact_wrap{
		padding: 0;
	}
	.contact_box{
	    padding: 4.6rem 2rem 5rem;
	    margin: 0 -2rem;
	}
	.contact_note{
	    font-size: 1.4rem;
	    font-weight: 500;
	    text-align: center;
	    letter-spacing: .12em;
	    line-height: 1.6;
	    margin-bottom: 2.5rem;
	}
	.contactTable th{
		display: block;
		width: auto;
		padding: 0 0 1rem;
		font-size: 1.4rem;
		line-height: 1.33;
		grid-gap: 1rem;
	}
	.contactTable td{
		display: block;
		font-size: 1.4rem;
		padding: 0 0 2rem;
	}
	.contactTable input[type=text],
	.contactTable input[type=tel],
	.contactTable input[type=email],
	.contactTable select,
	.contactTable textarea{
	    width: 100%;
	    height: 4.8rem;
	    padding: 0 2rem;
	    font-size: 1.4rem;
	}
	.contactTable select {
	    background: url(../img/common/select.svg) no-repeat right 1rem center #fff;
	    background-size: auto .8rem;
	    padding: 0 2rem 0 1.5rem;
	}
	.contactTable textarea{
	    display: block;
	    resize: none;
	    min-height: 17rem;
	    padding: 1rem 1.5rem;
	}
	.contactTable td.half_td,
	.birth_box{
		grid-gap: 1rem;
	}

	.formRadio label, 
	.formCheckbox label{
		font-size: 1.5rem;
	}
	.formButton{
		margin-top: 3rem;
	}
	.contactTable th span{
		width: 3.5rem;
		height: 1.8rem;
		margin-left: 1rem;
	}

	.formCheckbox, 
	.formCheckbox .wpcf7-radio, 
	.formRadio .wpcf7-radio, 
	.formRadio, 
	.formCheckbox .wpcf7-checkbox{
		grid-gap: 1rem 2rem;
		padding: 0;
	}
	.formCheckbox label span {
	    padding-left: 2.2rem;
	}

	.formCheckbox label span:before {
	    top: .3rem;
	    width: 1.7rem;
	    height: 1.7rem;
	}

	.formCheckbox label span:after {
	    left: .3rem;
	    top: .6rem;
	    width: 1.1rem;
	    height: 1.1rem;
	}

	.formAgree{
		padding-top: 0;
	}
	.formAgree .formCheckbox label span {
	    font-size: 1.4rem;
	    line-height: 1.6;
	}
	.formAgree .formCheckbox label span:after{
		top: .9rem;
	}
	.formButton .btn_form {
	    width: 16.3rem;
	    max-width: 100%;
	    height: 3.9rem;
	    font-size: 1.4rem;
	    letter-spacing: 0.03em;
	}

	/*social*/
	.social_wrap{
	    padding: 4.5rem 0 5.5rem;
	}
	.social_box{
	    padding: 0;
	}
	.social_box_jap{
	    font-size: 2.5rem;
	    letter-spacing: .1em;
	}
	.social_box_eng{
	    font-size: 1rem;
	}
	.social_box_eng:after {
		content: '';
		display: block;
		background: #E60013;
        margin: 2rem 0 2.6rem;
        width: 3rem;
        height: .3rem;
    }
	.social_box_ttl{
	    font-size: 1.6rem;
	    line-height: 2.1875;
	    margin: 2rem 0;
	}
	.social_img{
		margin: 2rem 0;
	}
	.social_box_txt{
	    font-size: 1.4rem;
	    line-height: 2;
	}
	.social_box_txt p+p{
	    margin-top: 1.5em;
	}
	.social_box_link{
	    margin-top: 2.5rem;
	}
	.social_box_link img{
	    width: 33.5rem;
	    max-width: 100%;
	}

	/*strengths*/
	.strengths_wrap{
	    padding: 5rem 0;
	}
	.strengths_item+.strengths_item{
	    margin-top: 3.5rem;
	}
	.flex_box{
		position: relative;
	    display: block;
	    justify-content: space-between;
	}
	.flex_box_left{
	    width: auto;
	}
	.flex_box_right{
	    width: auto;
	}
	.strengths_img img{
		height: 20rem;
		object-fit: cover;
	}
	.strengths_point{
	    font-size: 8.6rem;
	    line-height: 1.33;
	    color: #EBEBEB;
	    text-align: center;
	    position: absolute;
	    left: .2em;
	    top: -1rem;
	    z-index: 11;
	}
	.strengths_cont:after{
	    width: 1.2rem;
	}
	.strengths_ttl{
		z-index: 10;
		position: absolute;
	    padding: .6rem 1.5rem .6rem 0;
	    font-size: 1.6rem;
	    font-weight: bold;
	    line-height: 1.31;
	    letter-spacing: 0.02em;
	}
	.red_font{
	    color: #E60013;
	}
	.strengths_ttl font{
	    font-size: 1.1rem;
	    font-weight: 500;
	}
	.strengths_txt{
	    margin-top: 1.5rem;
	    font-size: 1.4rem;
	    font-weight: 300;
	    line-height: 1.785;
	}
	.strengths_txt p+p{
	    margin-top: 2.5rem;
	}
	.strengths_txt b{
	    font-size: 1.6rem;
	    line-height: 1.5;
	    margin-bottom: 1rem;
	}

	/*company*/
	.company_wrap{
	    padding: 4.5rem 0;
	}
	.company_wrap .flex_box_left{
	    width: auto;
	}
	.company_wrap .flex_box_right{
	    width: auto;
	}
	.hd_small .jap{
	    font-size: 2.5rem;
    	margin-bottom: .2rem;
	}
	.hd_small .eng{
	    font-size: 1rem;
	}
	.hd_small:after{
	    margin: 2.5rem 0 3.5rem;
	    width: 3rem;
	    height: .3rem;
	}

	.company_table{
	}
	.company_table th,
	.company_table td{
	    font-size: 1.3rem;
	    line-height: 1.92;
	    border: 1px solid #C3C3C3;
	    padding: 1.3rem .75rem;
	}
	.company_table th{
	    font-size: 1.3rem;
	    line-height: 1.2;
	    padding: 1.7rem .75rem;
	    width: 10.8rem;
	    vertical-align: top;
	}
	.company_table td p+p{
	    margin-top: 2rem;
	}
	.company_table td b{
	    display: flex;
	    align-items: center;
	    font-weight: bold;
	}
	.company_table td b:before{
	    width: 1.2rem;
	    height: 1.2rem;
	    margin-right: .4rem;
	}
	.company_table dl{
	    display: flex;
	}
	.company_table dt{
	    width: 12.5rem;
	    min-width: 12.5rem;
	}
	.target_link{
	    padding-right: 2rem;
	    background: url(../img/common/target_link.svg)no-repeat right center;
	    background-size: auto 1.2rem;
	}

	.company_sec02{
	    padding-top: 5rem;
	}
	.company_list{
	    display: flex;
	    flex-wrap: wrap;
	    margin-top: -2.5rem;
	}
	.company_list li{
	    width: 100%;
	    border-bottom: 1px solid #C3C3C3;
	    padding: 2.5rem 0;
	}
	.company_list .ttl{	
	    display: flex;
	    align-items: center;
	    font-size: 1.7rem;
	    font-weight: bold;
	    color: #E60013;
	    margin-bottom: 2rem;
	}
	.company_list .ttl span{
	    width: 3rem;
	    font-size: 1.4rem;
	}
	.company_list .txt{
	    font-size: 1.4rem;
	    line-height: 2;
	}

	.company_sec03{
	    padding-top: 5rem;
	}
	.message_img{
		margin: 0 -2rem;
	}
	.message_name{
	    display: flex;
	    align-items: center;
	    justify-content: space-between;
	    flex-wrap: wrap;
	    margin: 2rem 0;
	    grid-gap: .5rem 1rem;
	}
	.message_name p{
	    font-size: 1.4rem;
	}
	.message_name span{
	    font-size: 2rem;
	    top: -.1em;
	}
	.message_name font{
	    font-size: .7rem;
	    letter-spacing: .2em;
	}
	.message_item+.message_item{
	    margin-top: 2.5rem;
	}
	.hd01{
	    font-size: 1.6rem;
	    grid-gap: 1.6rem;
	    border-left: .7rem solid #E60013;
	    padding: .7rem 1rem .7rem 1.2rem;
	    margin-bottom: 1.5rem;
	}
	.hd01 font{
	    font-size: 1.4rem;
	    font-weight: 400;
	    letter-spacing: .05em;
	}
	.common_txt{
	    font-size: 1.4rem;
	    line-height: 1.785;
	}
	.common_txt p+p{
	    margin-top: 1.5em;
	}

	/*compliance*/
	.company_table+.common_txt,
	.common_txt+.company_table,
	.common_txt+.number_list{
	    margin-top:1.5em;
	}
	.number_list li{
	    font-size: 1.4rem;
	    line-height: 1.785;
	    font-weight: 500;
	    padding-left: 4rem;
	    position: relative;
	}
	.number_list li+li{
		margin-top: 2.4rem;
	}
	.number_list span{
	    font-size: 1.3rem;
	    width: 2.2rem;
	    height: 2.2rem;
	    top: 1.1em;
	}
	.company_sec01 .company_table td,
	.company_sec01 .company_table th{
	    width: auto;
	    display: block;
	    border: 0;
	    border-bottom: 1px solid #D1D1D1;
	}
	.company_sec01 .company_table td{
		padding-top: 1.2rem;
	}
	.company_sec01 .company_table th{
		padding-bottom: 0;
		background: none;
	    border-bottom: 0 solid #D1D1D1;
	}

	.company_sec03 .company_table td{
		vertical-align: middle;
	}
	.company_sec03 .company_table th{
		width: 10rem;
	}

	.compliance_item+.compliance_item{
	    padding-top: 2rem;
	    margin-top: 2rem;
	    border-top: 1px solid #C3C3C3;
	}
	.compliance_item_hd{
	    font-size: 1.6rem;
	    margin-bottom: 1rem;
	}
	.compliance_list li{
	    padding-left: 2rem;
	}
	.compliance_list li:before{
	    width: .8rem;
	    height: .8rem;
	    top: 1em;
	}


	/*intermediaries*/
	.intermediaries_box {
	    padding: 4.5rem 2rem;
	}
	.hd_small.no_line{
	    margin-bottom: 4rem;
	}
	.intermediaries_txt{
	    font-size: 1.4rem;
	    line-height: 1.785;
	    text-align: left;
	}
	.intermediaries_btn{
	    margin-top: 2.5rem;
	}
	.intermediaries_btn li+li{
	    margin-top: 1.2rem;
	}
	.intermediaries_btn a{
	    height: 5.4rem;
	    font-size: 1.4rem;
	    padding-right: 0;
	}
	.intermediaries_btn a.btn_login{
	    background: url(../img/common/btn_login.svg)no-repeat right 1.3rem center #E60013;
	    background-size: 2rem auto;
	}
	.intermediaries_btn a.btn_download{
	    background: url(../img/common/btn_download.svg)no-repeat right 1.8rem center #3E3E3E;
	    background-size: 2rem auto;
	}

	/*residents*/
	.js-select{
		max-width: 20rem;
		position: relative;
	}
	.js-select-text{
		display: flex;
		align-items: center;
		height: 2.6rem;
	    padding: 0 1.3rem;
	    font-size: 1.4rem;
	    background: url(../img/common/select.svg) no-repeat right 1.3rem center #FFBEBE;
	    background-size: 1rem auto;
	    border: 0;
	    border-radius: 0;
	    margin-bottom: 3.3rem;
	}
	.js-select ul{
	  padding: 0;
	  margin: 0;
	  position: absolute;
	  left: 0;
	  top: 100%;
	  z-index: 1;
	  width: 100%;
	  display: none;
	}

	.anchor_wrap{
	    top: 0;
	    left: 0;
	    z-index: 11;
	    position: relative;
	}
	.anchor_list{
	    display: block;
	}
	.anchor_list li{
	    width: 100%;
	}
	.anchor_wrap a{
		display: flex;
		justify-content: flex-start;
		align-items: center;
		height: 2.6rem;
	    padding: 0 1.3rem;
	    font-size: 1.4rem;
	    background: #fff;
	    border: 0;
	    border-radius: 0;
	    border-top: 1px solid #DBDBDB;
	}

	.contact_fixed{
	    position: fixed;
	    bottom: 0;
	    left: 0;
	    right: 0;
	    z-index: 85;
	}
	.contact_fixed .inner{
		padding: 0;
	}
	.contact_fixed_box{
	    border-radius: 1rem 1rem 0 0;
	    background: #FCF2F2;
	    position: relative;
	    height: 16.4rem;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    flex-direction: column;
	    grid-gap: .8rem;
	    padding: 0 2rem;
	}
	.contact_fixed_img{
	    display: flex;
	    align-items: flex-end;
	    width: 30.7rem;
	    height: auto;
	}
	.contact_fixed_btn{
	    display: grid;
	    grid-template-columns: repeat(2,1fr);
	    grid-gap: .5rem;
	}
	.contact_fixed_btn a{
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    width: 16.5rem;
	    max-width: 100%;
	    height: 3.1rem;
	    font-size: 1.3rem;
	    font-weight: 500;
	    letter-spacing: .05em;
	    color: #fff;
	    border-radius: 3rem;
	    background: url(../img/common/tel_fixed.svg)no-repeat left 2.3rem center #3E3E3E;
	    background-size: 1.6rem auto;
	    padding-left: 1.6rem;
	}
	.contact_fixed_btn a.btn_chat{
	    background: url(../img/common/chat_fixed.svg)no-repeat left .6rem center #E60013;
	    background-size: auto 1.6rem;
	    font-size: 1.2rem;
	    font-weight: bold;
	}
	.contact_fixed_close{
	    position: absolute;
	    right: 1.8rem;
	    top: 1.8rem;
	    z-index: 1;
	    width: 4.2rem;
	    cursor: pointer;
	}

	.hd_dot{
	    font-size: 1.6rem;
	    line-height: 1.5;
	    grid-gap: 1rem;
	    margin-bottom: 1rem;
	}
	.hd_dot:before{
	    width: 1.2rem;
	    height: 1.2rem;
	}

	.residents_wrap{
	    padding: 0 0 5rem;
	}
	.residents_sec01{
	    padding-top: 0;
	}
	.residents_item+.residents_item{
	    margin-top: 3rem;
	}
	.residents_item .company_table{
	    margin: 2rem 0;
	}
	.residents_item .company_table th {
	    padding: 2.4rem 0;
	    font-weight: bold;
    	background: none;
    	font-size: 1.4rem;
	}
	.residents_item .company_table td{
	    padding: 0 0 2.4rem;
    	font-size: 1.4rem;
	}
	.residents_item .company_table .note{
	    font-size: 1.2rem;
	    line-height: 1.875;
	    margin-top: .5rem;
	}

	.faq_list dl{
		margin: 0 -2rem;
	}
	.faq_list dl+dl{
	    margin-top: 1.5rem;
	}
	.faq_list dl dt{
	    min-height: 9rem;
	    padding: 1rem 1rem 1rem 4.8rem;
	    background:url(../img/common/faq_open.svg)no-repeat left 1.5rem center;
	    background-size: 2rem auto;
	    font-size: 1.6rem;
	    line-height: 1.5;
	}
	.faq_list dl dt.is_active{
	    background:url(../img/common/faq_close.svg)no-repeat left 1.5rem center;
	    background-size: 2rem auto;
	}
	.faq_list dl dd{
	    padding: 0 1.5rem 1.5rem;
	}
	.faq_list .item{
	    background: #FFFFFF;
	    padding: 2.5rem 3rem;
	}
	.faq_list .item+.item{
	    margin-top: 1.5rem;
	}
	.faq_q{
	    padding-left: 3rem;
	    font-size: 1.4rem;
	    line-height: 2rem;
	    font-weight: 500;
	    margin-bottom: 1rem;
	}
	.faq_a{
	    padding-left: 3rem;
	    font-size: 1.4rem;
	    line-height: 2rem;
	    font-weight: 400;
	}
	.faq_a:before,
	.faq_q:before{
		top: 1rem;
	    font-size: 1.6rem;
	}
	.residents_btn{
	    grid-gap: 1.3rem;
	    margin-top: 2rem;
	}
	.residents_btn a{
		width: 20.6rem;
		height: 5.2rem;
	}
	.btn_pdf .btn_link01_icon font{
	    border-radius: 0;
	    background: url(../img/common/btn_pdf.svg)no-repeat center center;
	    background-size: auto 2.3rem;
	}


	/*properties*/
	.properties_wrap{
	    padding: 5rem 0;
	    background: #FAFAFA;
	}
	.properties_list{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 1.5rem;
	}
	.properties_list a{
	    padding: 2.3rem 2rem;
	}
	.properties_list .ttl{
	    font-size: 1.7rem;
	    letter-spacing: .05em;
	    margin: 1.2rem 0 0;
	}
	.intro_list dl{
	    display: flex;
	    font-size: 1.2rem;
	    margin-top: 1rem;
	}
	.intro_list dt{
	    width: 4em;
	}
	.intro_list dd{
	    width: calc(100% - 4em);
	    padding-left: 1em;
	}


	/*owners*/
	.owners_wrap{
	    padding: 0;
	}
	.owners_swiper{
	    margin-top: 3rem;
	}
	.owners_swiper .swiper-slide {
	    max-width: 33.5rem;
	    width: 33.5rem;
	    margin-right: 2.6rem;
	}

	.swiper-pagination {
	    position: absolute;
	    right: 0;
	    top: -6rem;
	    transition: .3s opacity;
	    transform: translate3d(0,0,0);
	    z-index: 10;
	    font-size: 1.4rem;
	    line-height: 2;
	    letter-spacing: 0;
	    font-weight: 500;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    padding: 0 1.5rem;
	    border: 1px solid #707070;
	    border-radius: 3rem;
	}

	.swiper-button-next,
	.swiper-button-prev {
	    width: 4rem;
	    height: 4rem;
	}

	.swiper-button-prev,
	.swiper-rtl .swiper-button-next {
	    bottom: -9.4rem;
	}
	.swiper-button-next,.swiper-rtl .swiper-button-prev {
	    left: 6rem;
	    bottom: -9.4rem;
	}

	.swiper-horizontal>.swiper-scrollbar, 
	.swiper-scrollbar.swiper-scrollbar-horizontal{
	    left: 0;
	    bottom: -3rem;
	    width: 100%;
	}


	.owners_sec01{
	    padding:  5rem 0;
	    margin-top: 0;
	    background: #FAFAFA;
	    overflow: hidden;
	}
	.owners_sec01_btn{
	    text-align: right;
	    margin-top: 5rem;
	}

	.owners_sec02_item{
	    margin-top: 2rem;
	    padding: 4rem 3rem;
	}
	.owners_sec02_item_point{
	    font-size: 1.2rem;
	    letter-spacing: .05em;
	    margin-bottom: 1.8rem;
	}
	.owners_sec02_item dl{
	    display: flex;
	    justify-content: space-between;
	    flex-direction: column-reverse;
	    grid-gap: 2rem;
	}
	.owners_sec02_item dt{
	    width: auto;
	    margin-bottom: 1rem;
	}
	.owners_sec02_item dd{
	    width: auto;
	}
	.owners_sec02_item .ttl{
	    font-size: 1.6rem;
	    font-weight: bold;
	    line-height: 1.52;
	    color: #E60013;
	    margin-bottom: 2.5rem;
	    margin-right: -1rem;
	}
	.owners_sec02_item .txt{
	    font-size: 1.4rem;
	    line-height: 1.875;
	}
	.owners_sec02_item ul{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 2rem;
	    margin-top: 2rem;
	}
	.owners_sec02_item li{
	    border: 1px solid #D3D3D3;
	    background: #fff;
	    padding: 2.5rem 2rem;
	}
	.owners_sec02_item .img{
	    margin-top: 1.5rem;
	}

	.owners_sec03_item{
	    padding: 4rem 1rem;
	}
	.owners_sec03_item+.owners_sec03_item{
	    margin-top: 2rem;
	}
	.owners_sec03_item_ttl{
	    font-size: 2.2rem;
	    font-weight: bold;
	    letter-spacing: .05em;
	    margin-bottom: 2.5rem;
	}
	.owners_sec03_item dl{
	    display: flex;
	    justify-content: space-between;
	    flex-direction: column-reverse;
	    grid-gap: 2rem;
	}
	.owners_sec03_item dt{
	    width: auto;
	    margin-bottom: 1.5rem;
	}
	.owners_sec03_item dd{
	    width: auto;
	}
	.owners_sec03_item li{
	    padding-left: 2rem;
	    font-size: 1.4rem;
	    line-height: 1.8;
	    position: relative;
	}
	.owners_sec03_item li:before{
	    content: '';
	    position: absolute;
	    top: .9em;
	    left: 0;
	    display: block;
	    width: 1rem;
	    height: 1px;
	    background: currentColor;
	}

	.owners_sec04{
	    padding: 5rem 0;
	}
	.owners_sec04_item{
	    display: block;
	    justify-content: space-between;
	    padding-left: 6rem;
	    position: relative;
	}
	.owners_sec04_item+.owners_sec04_item{
	    margin-top: 1.8rem;
	}
	.owners_sec04_step{
	    width: auto;
	    position: static;
	    display: flex;
	    justify-content: flex-start;
	    align-items: center;
	    flex-direction: row;
	    grid-gap: 2rem;
	    padding: 0 0 2rem;
	}
	.owners_sec04_step span{
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    width: 7.6rem;
	    height: 2.8rem;
	    border-radius: 2rem;
	    background: #E60013;
	    color: #fff;
	    font-size: 1.3rem;
	    letter-spacing: 0.05em;
	}
	.owners_sec04_step font{
	    font-size: 2rem;
	    font-weight: bold;
	    letter-spacing: 0.05em;
	    color: #191919;
	}
	.owners_sec04_step:before{
	    content: '';
	    position: absolute;
	    z-index: -1;
	    left: 0;
	    top: 0;
	    width: 2.7rem;
	    height: calc(100% + 1.8rem);
	    background: url(../img/owners/bg_step01_sp.png)no-repeat center center;
	    background-size: 100% 100%;
	}
	.owners_sec04_item:nth-of-type(2) .owners_sec04_step:before{
	    background: url(../img/owners/bg_step02_sp.png)no-repeat center center;
	    background-size: 100% 100%;
	}
	.owners_sec04_item:nth-of-type(3) .owners_sec04_step:before{
	    background: url(../img/owners/bg_step03_sp.png)no-repeat center center;
	    background-size: 100% 100%;
	}
	.owners_sec04_item:nth-of-type(4) .owners_sec04_step:before{
	    background: url(../img/owners/bg_step04_sp.png)no-repeat center center;
	    background-size: 100% 100%;
	}
	.owners_sec04_item:nth-of-type(5) .owners_sec04_step:before{
	    background: url(../img/owners/bg_step05_sp.png)no-repeat center center;
	    background-size: 100% 100%;
	}
	.owners_sec04_item:nth-of-type(6) .owners_sec04_step:before{
	    background: url(../img/owners/bg_step06_sp.png)no-repeat bottom center;
	    background-size: 100% 100%;
	    height: 100%;
	}
	.owners_sec04_dl{
	    width: auto;
	    background: none;
	    padding: 0;
	    display: flex;
	    justify-content: space-between;
	    align-items: center;
	    flex-direction: column-reverse;
	    grid-gap: 1.8rem;
	}
	.owners_sec04_item:nth-of-type(even) .owners_sec04_dl{
	    background: none;
	}

	.owners_sec04_dl dt{
	    width: auto;
	    text-align: center;
	    margin-bottom: 0;
	}
	.owners_sec04_dl dd{
	    width: auto;
	    font-size: 1.4rem;
	    line-height: 1.785;
	}
	.owners_sec04_dl dd font{
	    font-weight: 500;
	}

	/*report*/
	.report_wrap{
	    padding: 5rem 0;
	}
	.report_categ{
	    display: flex;
	    align-items: center;
	    grid-gap: 1.6rem;
	    margin-bottom: 4rem;
	}
	.report_categ span{
	    font-size: 1.4rem;
	    font-weight: 500;
	}
	.report_categ select{
	    width: 15.2rem;
	    height: 3.2rem;
	    border-radius: 0;
	    font-size: 1.2rem;
	    font-weight: 500;
	    border: 1px solid #707070;
	    background: url(../img/common/select_categ.svg) no-repeat right 1.5rem center;
	    background-size: auto 1.8rem;
	    padding: 0 5rem 0 1.4rem;
	}
	.report_list{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 3rem;
	}
	.report_list span{
	    font-size: 1.2rem;
	    padding: .2rem 1rem;
	    margin-right: 1rem;
	}
	.report_list .ttl{
	    font-size: 1.5rem;
	    margin: .6rem 0 2.4rem;
	}
	.report_list .frame01{
	    height: 24.1rem;
	}

	/*purchase*/
	.purchase_wrap{
	    padding: 0;
	}
	.purchase_sec01{
	    padding: 5rem 0 0;
	    background: #FAFAFA;
	}
	.purchase_sec02{
	    padding: 5rem 0 3rem;
	}
	.purchase_list{
	    margin-top: 2rem;
	    grid-template-columns: repeat(2,1fr);
	    grid-gap: 1.5rem;
	}
	.purchase_list li{
	    padding: .6rem .6rem 1.5rem;
	    border-radius: .5rem;
	}
	.purchase_sec03 .purchase_list li{
    	background: #FAFAFA;
	}
	.purchase_list .img_box{
	    border-radius: .5rem;
	    padding-top: 68.75%;
	    margin-bottom: 1rem;
	}
	.purchase_list .type{
		font-size: 1rem;
	}
	.purchase_list .type span{
	    display: inline-flex;
	    color: #fff;
	    background: #E60013;
	    font-size: 1rem;
	    letter-spacing: .07em;
	    padding: .1rem .5rem;
	}
	.purchase_list .ttl{
	    font-size: 1.2rem;
	    font-weight: bold;
	    line-height: 1.42;
	    margin-top: .5rem;
	}

	.purchase_sec03{
	    padding: 5rem 0;
	}
	.purchase_sec03_img01{
	    text-align: center;
	    margin-top: 1.7rem;
	}
	.purchase_dl{
	    display: flex;
	    justify-content: space-between;
	    flex-direction: column-reverse;
	    grid-gap: 1.5rem;
	}
	.purchase_dl dt{
	    width: auto;
	    margin-bottom: 0;
	}
	.purchase_dl dd{
	    width: auto;
	}
	.dot_list li{
	    font-size: 1.4rem;
	    line-height: 2.4;
	    padding-left: 1.8rem;
	    position: relative;
	}
	.dot_list li:before{
	    content: '';
	    position: absolute;
	    left: 0;
	    top: 1.2em;
	    transform: translateY(-50%);
	    width: 1.2rem;
	    height: 1.2rem;
	    background: #E60013;
	}

	/*top*/
	#main-visual .inner{
	    padding: 0 2rem;
	}
	.mv_copy{
		display: none;
	    width: 3rem;
	    font-size: 1.2rem;
	}

	.mv_slick_item .img_box{
	    padding-top: calc(100vh - 6.8rem - 5.8rem);
	}

	.mv_slick .slick-dots{
		display: none!important;
	    width: 2rem;
	    left: 1.5rem;
	    bottom: 3rem;
	}
	.mv_slick .slick-dots li{
	    width: 2rem;
	    height: 2rem;
	}
	.mv_slick .slick-dots li button{
	    width: .5rem;
	    height: .5rem;
	}
	.mv_slick .slick-dots li button:before{
	    width: 2rem;
	    height: 2rem;
	}

	.mv_cont{
	    position: absolute;
	    left: 0;
	    bottom: 0;
	    width: 100%;
	    z-index: 11;
	    background-image: linear-gradient(to bottom, transparent , rgba(0,0,0,.6));
	    padding-bottom: 3rem;
	}
	.mv_ttl{
	    font-size: 2.5rem;
	    line-height: 1.15;
	    text-shadow: 0 0 3rem #000;
	}
	.mv_ttl font{
	    font-size: 4.3rem;
	}
	.mv_txt{
	    font-size: 1.4rem;
	    line-height: 1.785;
	    text-shadow: 0 0 1.5rem #000;
	    margin: 1.2rem 0;
	}
	.slick_wrap .progresses {
	    width: calc(100% - 9vrem);
	}
	.mv_sns{
	    grid-gap: .5rem;
	}
	.mv_sns li{
	    width: 2.8rem;
	}

	.top_news{
	    padding: 3rem 0 4.5;
	    background: #FAFAFA;
	}
	.top_news .news_list li:last-of-type{
	    border-bottom: 1px solid #D5D5D5;
	}
	.top_news_btn{
		text-align: right;
		margin-top: 2.75rem;
	}

	.top_about{
	    padding-top: 4.2rem;
	}
	.top_about_dl{
	    display: block;
	    justify-content: space-between;
	    margin-right: 0;
	}
	.top_about_dl dt{
	    width: auto;
	    margin-bottom: 2rem;
	}
	.top_about_dl dd{
	    width: auto;
	}

	.top_about_dl .ttl{
	    font-size: 2.2rem;
	    line-height: 1.63;
	    font-weight: 900;
	    letter-spacing: 0.05em;
	    margin-bottom: 2rem;
	}
	.top_about_dl .ttl font{
	    color: #E60013;
	}

	.top_strengths{
	    padding: 5rem 0;
	}
	.top_strengths_btn{
	    position: static;
	    margin-top: 2.4rem;
	    text-align: right;
	    padding: 0 2rem;
	}
	.top_strengths_list{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    background: url(../img/top/bg_strengths_sp.jpg)no-repeat center center;
	    background-size: cover;
	    margin-top: 4rem;
	}
	.top_strengths_list li+li{
	    border-top: 1px solid rgba(255,255,255,.5);
	    border-left: 0;
	}
	.top_strengths_list a{
	    display: block;
	    opacity: 1;
	    padding: 1rem 2rem 5rem;
	    min-height: 21rem;
	    color: #fff;
	    text-align: center;
	}
	.top_strengths_list .point img{
	    height: 14.3rem;
	}
	.top_strengths_list .txt{
	    font-size: 1.5rem;
	    font-weight: 500;
	    line-height: 1.6;
	    margin-top: -5.6rem;
	    text-shadow: 0 0 2rem #000000;
	}

	.top_services{
	    padding: 4rem 0 6rem;
	    background: #F7F7F7;
	}
	.top_services_item{
	    margin-top: 3rem;
	}
	.top_services_item dl+dl{
	    margin-top: 5.3rem;
	}
	.top_services_item dl{
	    display: block;
	    justify-content: space-between;
	    align-items: center;
	}
	.top_services_item dt{
	    width: auto;
	    padding: 0 0 0 2.5rem;
	    position: relative;
	}
	.top_services_item dt:before{
	    left: 0;
	    bottom: -2rem;
	    z-index: -1;
	    width: 25.8rem;
	    height: 17.1rem;
	    background: #D6D6D6;
	}
	.top_services_item dd{
	    width:auto;
	    padding: 0;
	    margin-top: 3rem;
	}
	.top_services_item .img_box{
	    padding-top: 60%;
	}
	.top_services_item .img_box:before{
	    content: '';
	    position: absolute;
	    left: 0;
	    top: 0;
	    z-index: 11;
	    width: 5rem;
	    height: 5rem;
	    background: #E60013;
	}
	.transform_eng{
	    position: absolute;
	    left: 0;
	    top: -1.2em;
	    transform: rotate(90deg);
	    transform-origin: right bottom;
	    transform-origin: left bottom;
	    font-size: 1rem;
	    line-height: 1.2;
	    letter-spacing: .2em;
	    white-space: nowrap;
	    color: #919191;
	}

	.top_services_hd{
	    border-left: .5rem solid #D3D3D3;
	    padding-left: 1rem;
	    display: flex;
	    flex-direction: column;
	    margin-bottom: 2rem;
	}
	.top_services_hd .jap{
	    font-size: 2.5rem;
	    font-weight: bold;
	    color: #E60013;
	    letter-spacing: .05em;
	}
	.top_services_hd .eng{
	    font-size: 1rem;
	    line-height: 1.22;
	    letter-spacing: .07em;
	}
	.top_services_item .ttl{
	    font-size: 1.6rem;
	    font-weight: 900;
	    letter-spacing: .05em;
	    margin-bottom: 1.5rem;
	}
	.top_services_btn{
	    margin-top: 2rem;
	    max-width: 49.3rem;
	    display: flex;
	    flex-wrap: wrap;
	    grid-gap: 1.5rem 2.4rem;
	}
	.top_services_btn li{
	    width: calc(50% - 1.2rem);
	}
	.top_services_btn li.big_li{
	    width: 100%;
	}

	.btn_link03{
	    display: inline-flex;
	    align-items: center;
	    padding: 0 4.5rem 0 1.5rem;
	    width: 100%;
	    height: 3.7rem;
	    background: url(../img/top/arrow_btn03.svg)no-repeat right 1.5rem center #FFFFFF;
	    background-size: 1.2rem auto;
	    padding-right: 1rem;
	    color: #2B2B2B;
	    font-size: 1.4rem;
	    font-weight: bold;
	    letter-spacing: .05em;
	    box-shadow: 0 .5rem 1.5rem rgba(147,0,0,.2);
	}

	.top_social{
	    padding: 3rem 0;
	}
	.top_social .inner{
	    max-width: 145.7rem;
	}
	.top_social_box a{
	    display: block;
	    height: 18.6rem;
	    opacity: 1;
	    box-shadow: 0 2rem 4rem rgba(47,47,47,.16);
	    background: url(../img/top/bg_social_sp.png)no-repeat center center #F5F5F5;
	    background-size: cover;
	    color: #191919;
	    text-shadow: 0 0 2rem #fff;
	}
	.top_social_box .cont{
	    position: absolute;
	    width: 20rem;
	    right: 0;
	    top: 55%;
	    transform: translateY(-50%);
	    z-index: 9;
	    padding: 0 1rem;
	}
	.top_social_box .ttl{
	    font-size: 2rem;
	    font-weight: 500;
	    letter-spacing: .1em;
	}
	.top_social_box .ttl:after{
	    content: '';
	    display: block;
	    width: 3rem;
	    height: .2rem;
	    background: #E60013;
	    margin: 1rem 0;
	}
	.top_social_box .ttl span{
	    display: inline-flex;
	    position: relative;
	}
	.top_social_box .ttl span:after{
	    content: '';
	    position: absolute;
	    left: calc(100% + 1.7rem);
	    top: 50%;
	    z-index: 1;
	    transform: translateY(-50%);
	    width: 3.1rem;
	    height: 3.1rem;
	    background: url(../img/top/arrow_social.svg)no-repeat;
	    background-size: 100% auto;
	}
	.top_social_box .txt{
	    font-size: 1.2rem;
	    line-height: 2;
	    font-weight: 300;
	}


	.anchor_link{
	}
	.anchor_link span{
	    top: -5rem;
	}

	/*0624*/
	.purchase_sec01_ttl{
	    font-size: 1.8rem;
	    font-weight: 500;
	    margin-bottom: 1.4rem;
	}
	.purchase_sec01_btn{
	    margin-top: 2rem;
	}
	.purchase_sec01_list{
	    display: grid;
	    grid-template-columns: repeat(2,1fr);
	    grid-gap: 2rem;
	    margin-top: 2.5rem;
	}
	.purchase_sec01_list .icon{
		text-align: center;
	}
	.purchase_sec01_list .txt{
	    margin-top: 1.5rem;
	    font-size: 1.4rem;
	    line-height: 1.66;
	}

	/*application_form*/
	.application_form_wrap .flex_wrap label{
	    min-width: auto;
	}
	.location_wrap{
	    display: flex;
	    flex-direction: column;
	    grid-gap: 1rem;
	}
	.location_wrap select{
	    max-width: 15rem;
	    margin-bottom: 1rem;
	}
	.location_wrap input{
		max-width: 100%;
	}
	.contactTable .small_input{
	    max-width: 11rem;
	}
	.form_span{
	    font-size: 1.4rem;
	    font-weight: 400;
	    margin: 0 .7rem;    
	}
	.form_scale{
	    margin-top: 2rem;
	}

	/*report_detail*/
	.report_detail_wrap{
	    padding:0 0 7rem;
	}
	.report_detail_top{
	    grid-gap: 1rem;
	    margin-bottom: 1.5rem;
	}
	.report_detail_top .date {
        font-size: 1.2rem;
        padding: .2rem 1rem;
        margin-right: 1rem;
	}
	.report_detail_top .ttl {
	    font-size: 1.8rem;
	    line-height: 1.33;
	}
	.report_detail_btn{
	    margin-top: 2.5rem;
	}
}


