@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: 6.8rem 0 7.9rem;
	}

	.inner02,
	.inner {
	    padding: 0 3.6rem;
	}
}
/* !header
---------------------------------------------------------- */
@media screen and (max-width: 750px) {
	#header {
	    padding: 0 3.5rem 0 1.1rem;
	}

	.home #header{
	  background: #2B2B2B;
	  position: fixed;
	  transition: background .5s;
	}

	.home #header.is_fixed{
	    background: #2B2B2B;
	    position: fixed;
	}

	.header-inner {
	    height: 6.8rem;
	}

	.header-logo {
	    width: 20.5rem;
	    position: relative;
	    z-index: 999;
	    background: #2B2B2B;
	}

	.btn-menu {
		display: block;
		position: fixed;
		right: 0;
		top: 0;
		z-index: 999;
		width: 7.5rem;
		height: 6.8rem;

		background: url(../img/common/btn_menu.svg)no-repeat center center #2B2B2B;
		background-size: 4.3rem auto;
	}
		
	.btn-menu.is-active{
		background: url(../img/common/btn_menu_close.svg)no-repeat center center #2B2B2B;
		background-size: 4.15rem auto;
	}

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

	    background: #2B2B2B;
	}
	#g-navi.is-active{
	    opacity: 1;
	    pointer-events: auto;
	}	
	.nav_link a{
		font-size: 1.6rem;
		font-weight: bold;
		letter-spacing: 0.08em;
		display: flex;
		align-items: center;
		height: 7.6rem;
		color: #fff;
		border-bottom: 1px solid #fff;
	}

	.fixed_btn {
		z-index: 88;
		position: fixed;
	    right: 0;
	    left: 0;
	    top: auto;
	    bottom: 0;
	    background: #fff;
	    display: grid;
	    grid-template-columns: repeat(2,1fr);
	    grid-gap: 1px;
	}

	.single-recruit .fixed_btn,
	#recruit .fixed_btn{
	    grid-template-columns: repeat(1,1fr);
	}

	.fixed_btn.is_footer{
	    opacity: 1;
	    pointer-events: auto!important;
	}

	.fixed_btn a{
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    color: #fff;
	    height: 7.8rem;
	    background: url(../img/common/icon_tel_fixed.svg)no-repeat left 1.7rem center #2B2B2B;
	    background-size: 2.23rem auto;
	    padding-left: 2.6rem;
	    font-size: 2rem;
	}

	.fixed_btn a+a{
		font-size: 1.4rem;
		font-weight: bold;
	    background: url(../img/common/icon_contact_fixed.svg)no-repeat left 1rem center #2B2B2B;
	    background-size: 2.23rem auto;
	}

	.fixed_btn a.fixed_recruit{
	    background: url(../img/common/icon_recruit_fixed.svg)no-repeat left calc(50% + 6.2rem) center #2B2B2B;
	    background-size: 1rem auto;
	    padding: 0 1.7rem 0 0;
	    font-size: 1.6rem;
	    font-weight: bold;
	}

	.fixed_btn a.fixed_detail{
	    background: url(../img/common/icon_detail_fixed.svg)no-repeat left calc(50% + 8rem) center #2B2B2B;
	    background-size: 1rem auto;
	    padding: 0 1.7rem 0 0;
	    font-size: 1.6rem;
	    font-weight: bold;
	}
}

/* !teaser
---------------------------------------------------------- */
@media only screen and (max-width : 750px){
	#breadcrumb ul{
		display: block;
		font-size: 1.2rem;
	}
	
	#breadcrumb ul li{
		display: inline;
	}

	.bg_teaser{
	    padding-top: 16.6rem;
    	clip-path: ellipse(70% 100% at 50% 0%);
	}

	.teaser_hd{
	    position: absolute;
	    right: 50%;
	    transform: translateX(50%);
	    bottom: auto;
	    top: -4.3rem;
	    display: flex;
	    justify-content: center;
	    align-items: flex-end;
	}
	.teaser_hd .jap{
	    grid-gap: 1.4rem;
	    padding-right: 0;
	}
	.teaser_hd .jap span{
	    font-size: 2.5rem;
	    letter-spacing: .35em;
	    padding: 1.4rem .75rem 1rem;
	}
	.teaser_hd .eng{
	    font-size: 2rem;
	    right: -.7rem;
	}
}

/* !loading
---------------------------------------------------------- */
@media only screen and (max-width : 750px){
	.loading_logo img{
	    width: 11rem;
	}
	.loading_txt{
	    font-size: 2rem;
	    margin: 1.4rem 0 1.7rem;
	}
	.loading_progressbar{
	    width: 25.2rem;
	    height: 2px;
	}
}
/* !main Visual
---------------------------------------------------------- */
@media only screen and (max-width : 750px){
	#main-visual {
	    height: calc(100vh - 1.8rem);
	    background: url(../img/top/bg_mv_sp.png)no-repeat bottom center;
	    background-size: cover;
	}
	
	.mvSlider .img_box {
	    padding-top: 0;
	    min-height: 41.7rem;
	    max-height: 71.9rem;
	    height: 50vh;
	    /* clip-path: ellipse(110% 100% at 50% 0%); */
	}
	
	.mvSlider{
		top: 6.8rem;
	}
	.mvSlider .img_box{
	    padding-top: 56.8rem;
	    padding-top: 50rem;
	}
}
/* !footer
---------------------------------------------------------- */
@media only screen and (max-width : 750px){
	.footer_contact{
	    background: #FFD64A;
	    border-radius: 2rem 2rem 0 0;
	    padding: 4rem 0 6.3rem;
	}

	.footer_contact_box{
	    display: block;
	}

	.footer_contact_item01{
	    padding-top: 0;
	    text-align: center;
	}

	.footer_contact_item01 .hd{
	    font-size: 5rem;
	    line-height: 1.4;
	}

	.footer_contact_item01 .txt{
	    font-size: 2rem;
	    line-height: 2.25;
	    font-weight: bold;
	}

	.footer_contact_item02{
		padding: 4.5rem 0;
		margin-bottom: 4.5rem;
		background-image: linear-gradient(to right, #2B2B2B 0%, #2B2B2B 50%, transparent 50%);
		background-size: 8px 1px;
		background-position: bottom center;
		background-repeat: repeat-x;
	}

	.footer_contact_box .icon img{
	    width: 5.9rem;
	    margin-bottom: 1.2rem;
	}

	.footer_contact_box .ttl{
	    font-size: 2.5rem;
	    font-weight: 900;
	}

	.footer_contact_box .tel{
	    font-size: 5rem;
	    line-height: 1.5;
	}

	.footer_contact_box .time{
	    font-size: 1.4rem;
	    font-weight: bold;
	}

	.footer_contact_box .btn_link01{
	    width: 32rem;
	    margin-top: 1.8rem;
	}

	.footer_box{
	    padding: 5.2rem 0 3rem;
	    display: block;
	    text-align: center;
	}

	.footer_logo {
	    width: 27.37rem;
	    margin: 0 auto;
	}

	.header-logo img,
	.footer_logo img{
		width: 100%;
	}

	.footer_addr{
	    font-size: 1.6rem;
	    font-weight: bold;
	    margin: 2rem 0 1.5rem;
	}

	.footer_tel{
	    line-height: 1.875;
	    font-size: 1.6rem;
	    font-weight: bold;
	}

	.footer_box_right{
		margin-top: 2.5rem;
	    display: block;
	    align-items: flex-end;
	    justify-content: flex-end;
	    flex-direction: column;
	}

	.footer_link02{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 1.5rem;
	}

	.footer_link02 a{
	    font-size: 1.4rem;
	    color: #B4B4B4;
	    letter-spacing: 0.08em;
	}

	#copyright {
	    display: flex;
	    align-items: center;
	    justify-content: center;
	    height: 4.5rem;
	    background: #2B2B2B;
	    color: #fff;
	    font-size: 1.4rem;
	    letter-spacing: 0.08em;
	}
}


/*products*/
@media only screen and (max-width : 750px){
	.products_wrap{
	    padding: 17.4rem 0 4.5rem;
	}

	.products_list{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 3.8rem;
	}

	.products_list a{
	    display: block;
	    box-shadow: 0 .3rem .6rem rgba(0,0,0,.16);
	    padding: 2rem 1.9rem;
	    background: #fff;
	    transition: box-shadow .5s;
	}

	.products_list .img_box{
	    border: 1px solid #EDEDED;
	    padding-top: 100%;
	}

	.products_list .ttl{
	    font-size: 2rem;
	    font-weight: bold;
	    margin: .5rem 0;
	}

	.products_list .txt{
	    font-size: 1.4rem;
	    color: #B4B4B4;
	    font-weight: bold;
	}

	.products_list .txt p+p{
	    margin-top: .5rem;
	}

	.products_bottom{
	    margin-top: 4rem;
	    font-size: 1.6rem;
	    line-height: 1.875;
	    padding: 1.5rem;
	}
}

/*news*/
@media only screen and (max-width : 750px){
	.news_wrap{
	    padding: 14.7rem 0 5.5rem;
	}

	.news_wrap .inner{
	    padding: 0 3.6rem;
	}

	.news_list a{
	    display: block;
	    align-items: center;
	    height: auto;
	    padding: 1.6rem 0;
	    border-bottom: 1px solid #B7B7B7;
	}

	.news_list .date{
	    font-size: 1.6rem;
	    letter-spacing: .1em;
	    width: auto;
	}

	.news_list .txt{
	    width: auto;
	    font-size: 1.6rem;
	    font-weight: bold;

	    -webkit-line-clamp: 2;
	}
	/* !wp-pagenavi
	---------------------------------------------------------- */
	.wp-pagenavi {
	    grid-gap: 2.7rem;
	    margin: 5rem auto 0;
	}
}


/*column*/
@media only screen and (max-width : 750px){
	.column_wrap,
	.faq_wrap{
	    padding: 16rem 0 5rem;
	}

	.column_categ{
	    margin-bottom: 5rem;
	}

	.column_categ_hd{
	    font-size: 3rem;
	    padding-bottom: 1rem;
	    border-bottom: 0 solid #2B2B2B;
	    margin-bottom: 0;
	}

	.column_categ_select{
		width: 100%;
		background: url(../img/common/select.svg)no-repeat right 1rem center #fff;
		background-size: 1.3rem auto;
		border: 1px solid #707070;
		height: 5.6rem;
		padding: 0 3rem 0 1.8rem;
	}

	.column_count{
	    margin-bottom: 3rem;
	}

	.column_list{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 3rem;
	}

	.column_list a{
	    padding: 1.6rem;
	}

	.column_list .img_box{
	    margin-bottom: 1.5rem;
	}

	.column_date{
	    font-size: 1.3rem;
	}

	.categ_span {
	    grid-gap: 1.2rem;
	}
}


/*column_detail*/
@media only screen and (max-width : 750px){
	.column_detail_wrap{
	    padding: 2.2rem 0 5rem;
	}

	.column_detail_wrap .inner02{
	    display: block;
	    justify-content: space-between;
	    align-items: flex-start;
	}

	.detail_main{
	    width: auto;
	    margin: 0 -1.9rem;
	    padding: 2.2rem 1.9rem 4.7rem;
	}

	.detail_recommend{
	    width: auto;
	    margin-top: 5rem;
	}

	.detail_recommend_hd{
	    margin-bottom: 2.2rem;
	}

	.detail_recommend .column_list{
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 3rem;
	}

	.detail_main .categ_span span{
	    font-size: 1.4rem;
	}

	.detail_hd{
	    margin: .6rem 0 1rem;
	}

	.detail_btn{
	    margin-top: 3.7rem;
	}

	.detail_btn .btn_link01{
		width: 100%;
	}

	div#toc_container,
	.detail_cont .anchors {
	  padding: 1.8rem 2rem;
	  margin: 2.2rem 0 3rem;
	}

	div#toc_container .toc_title,
	.detail_cont .anchors .toc_title {
	  margin-bottom: 1.5rem;
	}

	.detail_cont .anchors li+li,
	#toc_container.no_bullets li+li{
	    margin-top: 1.5rem;
	}
}

/*contact*/
@media only screen and (max-width : 750px){
	.contact_wrap{
	    padding: 17rem 0 7rem;
	}
	.contact_wrap .inner{
	    padding: 0 3.6rem;
	}
	.contact_top{
	    text-align: left;
	    font-size: 1.6rem;
	    line-height: 1.875;
	    font-weight: bold;
	    letter-spacing: .08em;
	    margin-bottom: 4.6rem;
	}
	.contactTable{
	    width: 100%;
	}
	.contactTable th,
	.contactTable td{
	    display: block;
	    font-size: 1.6rem;
	    padding-bottom: 3.5rem;
	}
	.contactTable th{
	    font-weight: bold;
	    text-align: left;
	    letter-spacing: 0.08em;
	    display: flex;
	    align-items: center;
	    grid-gap: 1.2rem;
	    padding-bottom: 1rem;
	}
	.contactTable th span{
	    display: inline-flex;
	    justify-content: center;
	    align-items: center;
	    width: 4.7rem;
	    height: 2.4rem;
	    border-radius: 2rem;
	    letter-spacing: 0;
	    color: #fff;
	    background: #F8A830;
	    font-size: 1.4rem;
	    font-weight: bold;
	}
	.contactTable th span.required{
	    background: #DB0000;
	}
	.contactTable th font{
	}

	.file_box,
	.contactTable input[type=text],
	.contactTable input[type=tel],
	.contactTable input[type=email],
	.contactTable select,
	.contactTable textarea{
	    width: 100%;
	    height: 5rem;
	    border-radius: 0;
	    border: 0;
	    background: #fff !important;
	    color: #333;
	    padding: 0 1.5rem;
	    font-size: 1.6rem;
	    letter-spacing: 0.08em;
	    font-weight: 500;
	    box-sizing: border-box;
	}
	
	.contact_form {overflow: hidden;}
	
	.file_box{
	    padding-left: 16rem;
	    position: relative;
	    display: flex;
	    align-items: center;
	}
	
	/*
	.contactTable input[type=file]{
	    position: absolute;
	    left: 0;
	    opacity: 0;
	}
	.file_label{
	    cursor: pointer;
	    position: absolute;
	    left: 1.1rem;
	    top: 50%;
	    z-index: 9;
	    transform: translateY(-50%);
	    width: 13.6rem;
	    height: 3.1rem;
	    border-radius: .5rem;
	    background: #A8A8A8;
	    color: #fff;
	    font-size: 1.4rem;
	    font-weight: bold;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	}
	*/
	.file_txt{
		letter-spacing: 0;
	}
	.file_note{
	    font-size: 1.4rem;
	    line-height: 2;
	    font-weight: 500;
	    margin-top: 1.1rem;
	}
	.contactTable select {
	    background: url(../img/common/select.svg) no-repeat right 1rem center #fff;
	    background-size: 1rem auto;
	    padding: 0 3rem 0 1.8rem;
	}
	.contactTable textarea{
	    resize: none;
	    min-height: 17rem;
	    letter-spacing: 0;
	    padding: 1rem 1.5rem;
	}

	.formRadio .wpcf7-radio,
	.formRadio,
	.formCheckbox .wpcf7-checkbox{
	    display: flex;
	    flex-wrap: wrap;
	    align-items: center;
	    grid-gap: 1.5rem;
	}
	.formRadio .wpcf7-radio,
	.formRadio{
		justify-content: space-between;
	}
	.formRadio label span{
		padding: 1.5rem;
	}

	.formButton{
		margin-top: 5rem;
	}
	.formButton .btn_link01{
	    width: 42rem;
	    height: 6.4rem;
	    border-radius: 4rem;
	}
	.formButton .btn_link01:after {
	    background: url(../img/common/btn_link01_white.svg) no-repeat right 1.6rem center;
	    background-size: 2rem auto;
	}


	.birth_box{
	    display: flex;
	    align-items: center;
	    grid-gap: 0;
	}
	.birth_box select{
	    width: 6.5rem;
	    background: url(../img/common/select.svg) no-repeat right center #fff;
	    background-size: .8rem auto;
	    padding: 0 2.8rem 0 1.1rem;
	}
	.birth_box select.birth_year{
	    width: 10.7rem;
	}
	
	.birth_box #year {
	    width: 8.5rem;
	}
	
	
	#year.select,
	#month.select,
	#day.select {
		background: url(../img/common/select.svg) no-repeat right .2em center #fff !important;
	}

	.birth_line{
	    width: 4.6rem;
	    height: 1px;
	    background: #707070;
	    transform: rotate(-63deg);
	}
	
}


/*confirm*/
@media only screen and (max-width : 750px){
	.confirm_wrap{
	    padding: 6rem 0 5.5rem;
	}
	.confirm_wrap .inner{
		padding: 0 1.7rem;
	}
	.confirm_hd{
	    display: flex;
	    justify-content: center;
	    margin-bottom: 1.5rem;
	}
	.confirm_hd span{
	    width: 21.8rem;
	    height: 5.4rem;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    font-size: 2rem;
	    font-weight: bold;
	    letter-spacing: .08em;
	    background: #2B2B2B;
	    color: #fff;
	}
	.confirm_top{
	    text-align: center;
	    font-size: 1.6rem;
	    line-height: 1.875;
	    font-weight: 500;
	    letter-spacing: .12em;
	    margin-bottom: 2rem;
	}
	.confirm_box{
	    background: #fff;
	    padding: 3.2rem 1.9rem 5.6rem;
	}
	.confirm_table{
	    width: 100%;
	}
	.confirm_table th,
	.confirm_table td{
	    display: block;
	    font-size: 1.6rem;
	    line-height: 1.875;
	    letter-spacing: .12em;
	    text-align: left;
	}
	.confirm_table th{
	    font-weight: bold;
	    border-bottom: 1px solid #707070;
	    margin-bottom: .6rem;
	    padding-bottom: .3rem;
	}
	.confirm_table tr+tr{
	    display: block;
	    margin-top: 3.5rem;
	}
	.btn_back a{
	    font-size: 1.6rem;
	    font-weight: 500;
	    color: #747474;
	}
}


/*thanks*/
@media only screen and (max-width : 750px){
	.thanks_wrap{
	    padding: 4rem 0 22.3rem;
	}
	.thanks_wrap .inner{
	    padding: 0 3.6rem;
	}
	.thanks_hd{
	    font-size: 5rem;
	    line-height: 1.3;
	    text-align: center;
	}
	.thanks_ttl{
	    text-align: center;
	    font-size: 2rem;
	    font-weight: bold;
	    letter-spacing: .12em;
	    margin-bottom: 2rem;
	}
	.thanks_txt{
	    text-align: center;
	    font-size: 1.6rem;
	    font-weight: bold;
	    line-height: 1.875;
	}
	.thanks_btn{
	    text-align: center;
	    margin-top: 2.7rem;
	}
	.thanks_btn .btn_link01{
		width: 32rem;
	}

	.animation_tire{
	    position: absolute;
	    top: auto;
	    bottom: -16rem;
	    z-index: 1;
	    width: 11.8rem;
	    height: 11.8rem;
	    background: url(../img/common/logo_loading.svg)no-repeat;
	    background-size: 100% auto;
	    animation: circle 10s infinite linear;
	}
	
	.animation_error{
	    position: absolute;
	    top: auto;
	    bottom: -16rem;
	    z-index: 1;
	    width: 11.8rem;
	    height: 11.8rem;
	    background: url(../img/common/error_loading.svg)no-repeat;
	    background-size: 100% auto;
	    animation: circle 10s infinite linear;
	}
	
	.thanks_tire01{
	    left: -6.6rem;
	}
	.thanks_tire02{
	    left: 6.9rem;
	}
	.thanks_tire03{
	    left: 20.3rem;
	}
	.thanks_tire04{
	    left: 33.8rem;
	}
}


/*about*/
@media only screen and (max-width : 750px){
	.about_wrap{
	    padding: 20rem 0 7rem;
	}
	.about_sec01{
	    padding-bottom: 10.6rem;
	}
	.about_sec01_box{
	    border-radius: 2rem;
	    padding: 2rem 1.8rem 35rem;
	}
	.hd_medium{
	    text-align: center;
	    margin-bottom: 3rem;
	}
	.hd_medium .eng{
	    font-size: 4rem; 
	    line-height: 1.33;
	}
	.hd_medium .jap{
	    font-size: 2rem;
	}
	.about_sec01 .hd_medium{
		margin-bottom: 1.3rem;
	}
	.about_sec01_ttl{
	    font-size: 2.5rem;
	    font-weight: 900;
	    margin: 1.3rem 0 2rem;
	}
	.about_sec01_txt{
	    line-height: 2.1875;
	    font-weight: bold;
	}
	.about_sec01_txt p+p{
	    margin-top: 3.5rem;
	}

	.about_sec01_img01{
	    position: static;
	    left: -6.4rem;
	    top: -10rem;
	    z-index: 1;
	    width: 100%;
	}
	.about_sec01_img02{
	    position: absolute;
	    right: 16.7rem;
	    bottom: -2.6rem;
	    z-index: 2;
	    width: 18.8rem;
	}
	.about_sec01_img02:before{
	    content: '';
	    position: absolute;
	    z-index: -1;
	    left: auto;
	    right: -.7rem;
	    top: -.7rem;
	    width: 15.9rem;
	    height: 14.9rem;
	    background: #FFD64A;
	}
	.about_sec01_img03{
	    position: absolute;
	    right: -3.6rem;
	    bottom: 0;
	    z-index: 1;
	    width: 28rem;
	}

	.about_sec02{
	    padding:6rem 0 8rem;
	    background: #F7F7F7;
	    clip-path: ellipse(140% 100% at 50% 100%);
	}
	.about_slick{
	    display: block;
	    padding-bottom: 4.7rem;
	}
	.about_slick .icon {
	    text-align: center;
	}
	.about_slick .icon img{
	    width: 16.6rem;
	    border-radius: 50%;
	    box-shadow: 0 .3rem .6rem rgba(0,0,0,.16);
	}
	.about_slick .ttl{
	    font-size: 2rem;
	    font-weight: bold;
	    margin: 1.8rem 0 .6rem;
	    text-align: center;
	}
	.about_slick .txt{
	    line-height: 1.56;
	    letter-spacing: 0.04em;
	}

	.about_sec03{
	    position: relative;
	    z-index: 2;
	    background: #fff;
	    clip-path: ellipse(200% 100% at 50% 100%);
	    padding: 10.4rem 0;
	    margin-top: -10.4rem;
	}
	.about_sec03_dl{
	    display: block;
	    justify-content: space-between;
	}
	.about_sec03_dl dt{
	    width: auto;
	}
	.about_sec03_dl dd{
	    width: auto;
	}
	.about_sec03_dl .hd_medium{
	    text-align: center;
	    margin-bottom: 3.3rem;
	}
	.about_sec03_dl .txt{
	    line-height: 1.875;
	    letter-spacing: 0.08em;
	    margin-top: 3rem;
	}
	.about_sec03_dl .name{
	    font-size: 1.4rem;
	    font-weight: bold;
	    margin-top: 4rem;
	    margin-bottom: 2rem;
	    text-align: left;
	}
	.about_sec03_dl .name span{
	    display: block;
	    margin-top: .5rem;
	    font-size: 2rem;
	}

	.about_gray .inner{
		padding: 0;
	}
	.about_gray_box{
	    background: #F7F7F7;
	    border-radius: 2rem;
	}
	.about_sec04{
	    padding: 13.4rem 3.6rem 0;
	    margin-top: -10.4rem;
	}
	.about_sec04 .hd_medium{
	    margin-bottom: 1.1rem;
	    text-align: left;
	}
	.about_table{
	    width: 100%;
	}
	.about_table th,
	.about_table td{
		display: block;
	    font-size: 1.6rem;
	    line-height: 1.5;
	    font-weight: 500;
	    padding: 0 0 2rem;
	    border-bottom: 1px solid #C9C9C9; 
	}
	.about_table th{
	    width: auto;
	    vertical-align: top;
	    font-weight: bold;
	    text-align: left;
	    padding: 2rem 0 1rem;
	    border-bottom: 0 solid #C9C9C9; 
	}

	.about_sec05{
	    padding: 7rem 4.3rem;
	}
	.about_history{
	    position: relative;
	}
	.about_history:before{
	    content: '';
	    position: absolute;
	    left: 0%;
	    top: 2.25rem;
	    z-index: 1;
	    width: 1px;
	    height: calc(100% - 2rem);
	    background: #C9C9C9;
	}
	.about_history li{
	    position: relative;
	    padding-left: 2.3rem;
	    margin-left: 0;
	}
	.about_history li:before{
	    content: '';
	    position: absolute;
	    left: 0;
	    top: 2.25rem;
	    z-index: 1;
	    transform: translate(-50%,-50%);
	    width: 1.5rem;
	    height: 1.5rem;
	    background: url(../img/about/icon_dot.svg)no-repeat;
	    background-size: 100% auto;
	}

	.about_history li+li{
	    margin-top: 5.8rem;
	}
	.about_history .date{
	    font-size: 3rem;
	    font-weight: bold;
	    color: #FFD64A;
	}
	.about_history .ttl{
	    font-size: 1.8rem;
	    font-weight: bold;
	}
	.about_history .txt{
	    margin-top: 1.4rem;
	}
	.about_history .txt p+p{
	    margin-top: 2.4rem;
	}
}


/*recruit*/
@media screen and (max-width: 750px) {
	.recruit_wrap{
	    padding: 15rem 0 6.2rem;
	}
	.recruit_dl{
	    display: block;
	    justify-content: space-between;
	    margin-bottom: 3.3rem;
	    text-align: center;
	}
	.recruit_dl dt{
	    width: auto;
	    padding-top: 0;
	}
	.recruit_dl dd{
	    width: auto;
	}
	.recruit_dl .ttl{
	    font-size: 2.5rem;
	    font-weight: 900;
	    margin-bottom: 2.5rem;
	}
	.recruit_dl .txt{
	    line-height: 1.875;
	    font-weight: bold;
	}
	.recruit_dl .txt p+p{
	    margin-top: 3rem;
	}
	.bg_span{
	    margin: 1.5rem 0;
	    display: flex;
	    align-items: center;
	    flex-direction: column;
	    grid-gap: .8rem 0;
	}
	.bg_span span{
	    font-size: 1.8rem;
	    line-height: 1.83;
	    padding: 0 1.3rem;
	}

	.recruit_sec01_img02{
	    margin-top: 5rem;
	    text-align: right;
	}
	.recruit_sec01_img02 img{
	    width: 22.2rem;
	}
	.recruit_sec01_img03{
	    margin-top: -7.5rem;
	}
	.recruit_sec01_img03 img{
	    width: 26.9rem;
	}

	.recruit_box{
	    background: #FFD64A;
	    border-radius: 2rem;
	    padding: 2.9rem 1.7rem 3.3rem;
	    display: block;
	    justify-content: space-between;
	    align-items: center;
	}
	.recruit_box .animation_circle{
		margin: 0 auto 1.5rem;
	    width: 11rem;
	    height: 11rem;
	    background: url(../img/common/logo_loading.svg)no-repeat;
	    background-size: 100% auto;
	    animation: circle 10s infinite linear;
	}
	.recruit_box dd{
	    width: auto;
	    display: block;
	    justify-content: space-between;
	    align-items: center;
	    text-align: center;
	}
	.recruit_box .cont{
	    width: auto;
	}
	.recruit_box .btn{
		margin-top: 2rem;
	    width: auto;
	}
	.recruit_box .btn li+li{
	    margin-top: 1.8rem;
	}
	.recruit_box .btn_link01{
	    width: 100%;
	}
	.recruit_box .ttl{
	    font-size: 2rem;
	    line-height: 1.5;
	    font-weight: bold;
	    margin-bottom: .5rem;
	}
	.recruit_box .txt{
		line-height: 1.75;
	}

	.recruit_slick{
		margin-top: 5.3rem;
	}
	.recruit_slick_item .img_box{
		padding-top: 87%;
		width: 29.3rem;
	}

	.recruit_sec02{
	    padding: 3rem 0 7rem;
	}
	.recruit_sec02 .hd_medium{
	    margin-bottom: 3.6rem;
	}
	.recruit_sec02_list{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 5rem;
	}
	.recruit_sec02_list .img_box{
	    padding-top: 85.5%;
	}
	.recruit_sec02_list .ttl{
	    font-size: 2rem;
	    font-weight: bold;
	    margin: 2.4rem 0 1.2rem;
	}
	.recruit_sec02_list .txt{
	    line-height: 2.1875;
	}

	.recruit_sec03{
	    padding: 10rem 0 11.3rem;
	    background: #F7F7F7;
	    clip-path: ellipse(250% 100% at 50% 100%);
	}
	.recruit_dl03{
	    display: block;
	    justify-content: space-between;
	}
	.recruit_dl03 dt{
	    width: auto;
	    margin-bottom: 2.4rem;
	    text-align: center;
	}
	.recruit_dl03 dd{
	    width: auto;
	}
	.recruit_dl03 ul{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 5rem;
	}
	.recruit_dl03 .ttl{
	    display: block;
	    align-items: center;
	    grid-gap: 1.4rem;
	    border-bottom: 1px solid #2B2B2B;
	    padding-bottom: 2rem;
	    margin-bottom: 2rem;
	}
	.recruit_dl03 .ttl span{
		display: block;
	    font-size: 5rem;
	    color: #FFD64A;
	}
	.recruit_dl03 .ttl p{
	    font-size: 2rem;
	    line-height: 1.75;
	    font-weight: bold;
	}
	.recruit_dl03 .txt{
	    line-height: 1.875;
	}

	.recruit_sec04{
	    padding: 4.8rem 0 0 0;
	    margin-top: -4.8rem;
	    background: #fff;
	    clip-path: ellipse(230% 100% at 50% 100%);
	}
	.recruit_dl04{
	    display: block;
	    justify-content: space-between;
	}
	.recruit_dl04 dt{
	    width: auto;
	}
	.recruit_dl04 dd{
	    width: auto;
	}
	.recruit_dl04 .hd_medium{
	    text-align: center;
	}
	.recruit_dl04 .txt{
		margin-top: 3rem;
	    line-height: 2.1875;
	    letter-spacing: 0.04em;
	}
	.recruit_dl04 .bg_span{
	    align-items: flex-start;
	    grid-gap: .8rem 0;
	}
	.recruit_dl04 .bg_span span{
	    font-size: 2rem;
	    line-height: 2.7;
	    padding: 0 1rem;
	}
	.recruit_sec04_flow_hd{
	    margin: 3.4rem 0;
	    padding-bottom: 1.4rem;
	    border-bottom: 1px solid #707070;
	    font-size: 2rem;
	    font-weight: bold;
	}
	.recruit_sec04_flow_list{
		margin-right: -3.6rem;
		padding-right: 3.6rem;
	    overflow-x: scroll;
	    -webkit-overflow-scrolling: touch;
	}
	.recruit_sec04_flow_list ul{
	    display: flex;
	    justify-content: space-between;
	    grid-gap: 6.2rem;
	}
	.recruit_sec04_flow_list li{
	    position: relative;
	}
	.recruit_sec04_flow_list li:last-child {padding-right: 10rem;}
	
	.recruit_sec04_flow_list li+li:before{
	    content: '';
	    position: absolute;
	    right: 100%;
	    top: 0;
	    width: 6.2rem;
	    height: 16.8rem;
	    background: url(../img/recruit/arrow_sec04.svg)no-repeat center center;
	    background-size: auto 4rem;
	}
	.recruit_sec04_flow_list .img_box{
	    border-radius: 50%;
	    width: 16.8rem;
	    padding-top: 16.8rem;
	    margin: 0 auto;
	}
	.recruit_sec04_flow_list .ttl{
	    font-size: 2rem;
	    font-weight: bold;
	    margin: 2.5rem 0 1.5rem;
	    text-align: center;
	}
	.recruit_sec04_flow_list .txt{
	    font-size: 1.2rem;
	    line-height: 2;
	}

	.recruit_sec05{
	    padding-top: 5.6rem;
	}
	.recruit_sec05 .hd_medium{
	    margin-bottom: 3.3rem;
	}
	.recruit_dl06{
	    display: block;
	    justify-content: space-between;
	    background: #FFD64A;
	    border-radius: 2rem;
	    padding: 3rem 2.2rem 0;
	    position: relative;
	}
	.recruit_dl06+.recruit_dl06{
	    margin-top: 4.4rem;
	}
	.recruit_dl06 dt{
	    width: auto;
	}
	.recruit_dl06 dd{
	    padding: 6.3rem 2.2rem 9.3rem;
	    width: auto;
	    text-align: right;
	}
	.recruit_dl06 .ttl{
	    font-size: 2rem;
	    line-height: 1.75;
	    font-weight: bold;
	    margin-bottom: 1rem;
	}
	.recruit_dl06 .txt{
	    line-height: 2.1875;
	}
	.recruit_dl06 .img{
	    position: absolute;
	    bottom: 0;
	    right: 0;
	    width: 100%;
	    height: 22.1rem;
	    overflow: hidden;
	    border-radius: 2rem;
	    padding: 0 1rem;
	    pointer-events: none;
	    text-align: left;
	}
	.recruit_dl06 .img img{
	    width: 20rem;
	}
	.recruit_dl06 .name{
	    font-size: 1.6rem;
	}
	.recruit_dl06 .name span{
	    font-weight: bold;
	    display: block;
	}
	.recruit_dl06 .name font{
	    font-weight: bold;
	    font-size: 2rem;
	    display: block;
	}

	.recruit_sec06{
	    padding: 0rem 0 14rem;
	}
	.recruit_sec06_list{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	}
	.recruit_sec06_list li+li{
	    margin-left: 0;
	    margin-top: -1px;
	}
	.recruit_sec06_list li{
	    padding: 1rem 0 3rem;
	    border: 1px solid #2B2B2B;
	    text-align: center;
	}
	.recruit_sec06_list .icon{
	    height: 12.6rem;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	}
	.recruit_sec06_list .icon img{
	    max-width: 8.3rem;
	}
	.recruit_sec06_list .ttl{
	    font-size: 2rem;
	    font-weight: bold;
	    margin-bottom: 1.5rem;
	}
	.recruit_sec06_list .txt{
	    font-size: 1.4rem;
	}


	/*.recruit_sec07 .inner {padding: 0 5.6rem;}*/
	
	
	.recruit_sec07 .inner {
		padding: 0;
	}
	.recruit_sec07{
	    padding: 6rem 0 13.5rem;
	    margin-top: -6rem;
	    background: #F7F7F7;
	    clip-path: ellipse(150% 100% at 50% 100%);
	}
	.recruit_flow_list_sp {
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}
	
	.recruit_flow_list{
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}
	
	.sp_flow {
		width: 1200px;
		padding: 0 8rem;
	}

	
	/*
	.recruit_flow_list{
		padding: 0 1.6rem;
		margin-right: -3.6rem;
		margin-right: 1rem;
	    overflow-x: scroll;
	    -webkit-overflow-scrolling: touch;
	}
	*/
	.recruit_flow_list ul{
	    display: flex;
	    grid-gap: 3rem;
	    padding: 0 1rem 0 7rem;
	}
	.recruit_flow_list li{
	    min-width: 25rem;
	    height: 25rem;
	    text-align: center;
	    border-radius: 50%;
	    border: .3rem solid #2B2B2B;
	    position: relative;
	    padding-top: 4.2rem;
	}
		
	
	.recruit_flow_list li:last-child {}
	
	.recruit_flow_list li+li:before{
	    content: '';
	    position: absolute;
	    right: calc(100% - .7rem);
	    top: 50%;
	    transform: translateY(-50%);
	    width: 5rem;
	    height: 3.7rem;
	    background: url(../img/recruit/arrow_flow.svg)no-repeat center center #F7F7F7;
	    background-size: auto 2.5rem;
	}
	.recruit_flow_list .ttl{
	    font-size: 2rem;
	    font-weight: bold;
	}
	.recruit_flow_list .icon{
	    height: 8rem;
	    display: flex;
	    justify-content: center;
	    align-items: center;
	}
	.recruit_flow_list .icon img{
	    max-width: 8.6rem;
	    max-height: 6.3rem;
	}
	.recruit_flow_list .txt{
	    font-size: 1.4rem;
	}

	.recruit_sec08{
	    padding: 7.5rem 0 0;
	    margin-top: -7.5rem;
	    background: #fff;
	    clip-path: ellipse(300% 100% at 50% 100%);
	}
	.recruit_list{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 2.7rem;
	    margin-bottom: 5rem;
	}
	.recruit_list li{
	    background: #fff;
	    box-shadow: 0 .3rem .6rem rgba(0,0,0,.16);
	    padding: 2.1rem 2rem 2.4rem;
	}
	.recruit_list .img_box{
	    padding-top: 62.3%;
	}
	.recruit_list .ttl{
	    font-size: 2rem;
	    line-height: 1.75;
	    font-weight: bold;
	    margin: 1.2rem 0 0;
	}
	.recruit_list table{
	    width: 100%;
	}
	.recruit_list th,
	.recruit_list td{
	    font-size: 1.6rem;
	    font-weight: 500;
	    border-bottom: 1px solid #707070;
	    padding: 1.9rem 0 1.1rem;
	}
	.recruit_list th{
	    font-weight: bold;
	    width: 7rem;
	}
	.recruit_list_btn{
	    margin-top: 3rem;
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 2.5rem;
	}
	.recruit_list_btn .btn_link01{
	    width: 100%;
	}
}


/*recruit_detail*/
@media screen and (max-width: 750px) {
	.recruit_detail_wrap{
	    padding: 5rem 0 4.4rem;
	}
	.recruit_detail_dl01{
	    display: block;
	    justify-content: space-between;
	}
	.recruit_detail_dl01 dt{
	    width: auto;
	    margin-bottom: 2.4rem;
	}
	.recruit_detail_dl01 dd{
	    width: auto;
	}
	.recruit_detail_hd{
	    font-size: 2rem;
	    font-weight: bold;
	    margin-bottom: 2rem;
	    letter-spacing: .12em;
	}
	.recruit_detail_dl01 .recruit_detail_hd{
	    letter-spacing: .08em;
	}
	.recruit_detail_dl01 .txt{
	    padding-top: 2rem;
	    border-top: 1px solid #2B2B2B;
	    line-height: 1.875;
	}

	.recruit_detail_sec02{
	    padding-top: 5.4rem;
	}
	.recruit_detail_table{
	    width: 100%;
	    border-top: 1px solid #D1D1D1;
	}
	.recruit_detail_table th,
	.recruit_detail_table td{
		display: block;
	    font-size: 1.6rem;
	    line-height: 1.875;
	    font-weight: 500;
	    padding: 0 0 3rem;
	    border-bottom: 1px solid #D1D1D1;
	}
	.recruit_detail_table th{
	    border-bottom: 0 solid #D1D1D1;
	    padding: 3rem 0 .5rem;
	    font-weight: bold;
	    width: auto;
	    text-align: left;
	    vertical-align: top;
	}
	.recruit_detail_table p+p{
	    margin-top: 3rem;
	}

	.recruit_detail_sec03{
	    padding-top: 7rem;
	}
	.recruit_detail_list03{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 3rem;
	}
	.recruit_detail_list03 li{
	    padding: 2rem 1.8rem;
	    box-shadow: 0 .3rem .6rem rgba(0,0,0,.16);
	}
	.recruit_detail_list03 .ttl{
	    font-size: 1.8rem;
	    font-weight: bold;
	    letter-spacing: .12em;
	    margin-bottom: 1rem;
	}
	.recruit_detail_list03 .txt{
	    font-size: 1.4rem;
	    letter-spacing: .12em;
	    line-height: 1.785;
	}


	.recruit_detail_sec04{
	    padding-top: 7rem;
	}
	.recruit_detail_list04{
	    display: grid;
	    grid-template-columns: repeat(1,1fr);
	    grid-gap: 6rem;
	}
	.recruit_detail_list04 .img_box{
	    padding-top: 85.5%;
	}
	.recruit_detail_list04 .ttl{
	    font-size: 2rem;
	    font-weight: bold;
	    margin: 2.4rem 0 1.2rem;
	}
	.recruit_detail_list04 .txt{
	    line-height: 2.1875;
	}
	.recruit_detail_sec04 .formButton .btn_link01{
		font-size: 2rem;
	}
}

/*top*/
@media screen and (max-width: 750px) {
	#main-visual .inner02{
	    height: 100%;
	}
	.mv_hd{
	    position: absolute;
	    right: 50%;
	    transform: translateX(50%);
	    bottom: 3.26rem;
	    display: flex;
	    align-items: flex-end;
	}
	.mv_hd .jap{
	    flex-direction: row-reverse;
	    display: flex;
	    align-items: flex-end;
	    grid-gap: 1.1rem;
	}
	.mv_hd .jap span{
	    font-size: 3rem;
	    letter-spacing: .4em;
	    font-weight: bold;
	    color: #fff;
	    background: #2B2B2B;
	    padding: 1.5rem 1rem .5rem;
	    writing-mode: vertical-rl;
	    writing-mode: tb-rl;
	    display: flex;
	}
	.mv_hd .jap span:nth-of-type(1){
	    margin-bottom: 20rem;
	}
	.mv_hd .eng{
	    font-size: 1.4rem;
	    transform: rotate(90deg);
	    transform-origin: right bottom;
	    position: absolute;
	    bottom: 0;
	    right: 5rem;
	    white-space: nowrap;
	}

	.top_wrap{
	    background: #fff;
	    margin: -1px 0;
	    padding: 1rem 0 0;
	}

	.top_about{
	    background: #FFD64A;
	    border-radius: 2rem 2rem 0 0;
	    overflow: hidden;
	    padding: 3.7rem 0 7rem;
	}
	.top_about .inner{
	    padding: 0 3rem;
	}

	.top_about_dl{
	    display: block;
	    justify-content: space-between;
	    align-items: center;
	}
	.top_about_dl dt{
	    width: auto;
	    height: 100%;
	    margin: 0 -3.6rem;
	    display: flex;
	    overflow-x: hidden;
	}
	.top_about_dl dd{
	    width: auto;
	    margin-top: 2.5rem;
	    padding-right: 0;
	}

	.top_about_slick{
	    width: 50%;
	    height: 34.6rem;
	}

	.top_about_dl .ttl{
	    font-size: 2.5rem;
	    font-weight: 900;
	    margin-bottom: 2rem;
	    text-align: center;
	}
	.top_about_dl .ttl font{
	    font-size: 4rem;
	}
	.top_about_dl .txt{
	    line-height: 2.1875;
	    font-weight: bold;
	    text-align: center;
	}
	.top_about_dl .txt p+p{
	    margin-top: 3.5rem;
	}
	.top_about_dl .btn{
	    margin-top: 3.5rem;
	}
	.top_about_dl .btn_link01{
		width: 100%;
	}

	.top_products{
	    overflow: hidden;
	    position: relative;
	    background: url(../img/top/bg_ellipse_sp.png)no-repeat top 47rem center;
	    background-size: 186% auto;
	}
	.top_products .inner:before{
	    content: '';
	    position: absolute;
	    left: -20.2rem;
	    top: -10.6rem;
	    z-index: 1;
	    width: 50.4rem;
	    height: 50.4rem;
	    background: url(../img/top/bg_circle.png)no-repeat center center;
	    background-size: 100% 100%;
	    pointer-events: none;
	}
	.top_products .inner{
	    padding-top: 6.8rem;
	}
	.top_products .hd_medium{
	    text-align: center;
	    margin-bottom: 1rem;
	}
	.top_products .txt{
	    line-height: 2.1875;
	    font-weight: bold;
	    text-align: center;
	}
	.top_products .btn{
		position: relative;
		z-index: 10;
	    margin: 3rem 0 5.6rem;
	}
	.top_products .btn_link01{
		width: 100%;
	}
	.top_products_img{
		display: flex;
		justify-content: space-between;
		grid-gap: 1.6rem;
		margin: 5.6rem -3.6rem 4.5rem;
	}
	.top_products_img01{
	    position: static;
	    right: 49.7rem;
	    top: 16.5rem;
	    z-index: 2;
	    width: 18.7rem;
	}
	.top_products_img02{
	    position: static;
	    right: 13.9rem;
	    top: 29.3rem;
	    z-index: 9;
	    width: 18.7rem;
	    margin-top: 4.7rem;
	}
	.top_products_img03{
	    width: 35.4rem;
	    margin-left: -3.6rem;
	    margin-top: 0;
	}
	.top_products .animation_circle{
	    position: absolute;
	    left: -4.4rem;
	    bottom: 7.5rem;
	    z-index: 1;
	    width: 19.1rem;
	    height: 19.1rem;
	    background: url(../img/common/logo_loading.svg)no-repeat;
	    background-size: 100% auto;
	    animation: circle 10s infinite linear;
	    opacity: .07;
	}

	.top_faq{
	    padding: 5rem 0 16rem;
	    background: #F7F7F7;
	}
	.top_faq .inner{
	    padding: 0 3.6rem;
	}
	.top_faq .animation_circle{
	    display: none;
	}
	.faq_list dl{
	    position: relative;
	    z-index: 2;
	    background: #fff;
	    box-shadow: 0 .3rem .6rem rgba(0,0,0,.16);
	}
	.faq_list dl+dl{
	    margin-top: 1.9rem;
	}
	.faq_list dl dt{
	    display: flex;
	    align-items: center;
	    min-height: 7.2rem;
	    padding: .8rem 5.3rem .8rem 1.6rem;
	    background:url(../img/top/faq_open.svg)no-repeat right 1.8rem center;
	    background-size: 1.675rem auto;
	    position: relative;
	    z-index: 2;
	    cursor: pointer;
	    font-size: 1.6rem;
	    line-height: 1.75;
	    font-weight: bold;
	}
	.faq_list dl dt.is_active{
	    background:url(../img/top/faq_close.svg)no-repeat right 1.8rem center;
	    background-size: 1.675rem auto;
	}
	.faq_list dl dd{
	    display: none;
	    font-size: 1.4rem;
	    line-height: 1.785;
	    padding: 0 1.6rem 1rem;
	}
	.faq_list dl dd p+p{
	    margin-top: 1rem;
	}
	.top_faq_btn{
	    margin-top: 5rem;
	    text-align: center;
	}
	.top_faq_btn .btn_link01{
		width: 100%;
	}

	.top_news{
	    padding: 7rem 0 11.7rem;
	    margin-top: -7rem;
	    clip-path: ellipse(150% 100% at 50% 100%);
	    background: #fff;
	}
	.top_news .inner{
	    padding: 0 3.6rem;
	}
	.top_news .hd_medium{
	    margin-bottom: 1.3rem;
	    text-align: center;
	}
	.top_news .news_list a{
	    height: auto;
	}
	.top_news_btn{
	    text-align: center;
	    margin-top: 4rem;
	    padding-right: 4rem;
	}
	.top_wrap .btn_link01{
		width: 100%;
	}
	.top_news_btn .btn_link01{
	    height: auto;
	    width: 26rem;
	}


	.top_column{
	    padding: 7rem 0 8rem;
	    margin-top: -7rem;
	    clip-path: ellipse(250% 100% at 50% 100%);
	    background: #F7F7F7;
	}
	.top_column_btn{
	    text-align: center;
	    margin-top: 5rem;
	}

	.top_recruit_box{
	    margin-top: 5.6rem;
	    background-color: #FFD64A;
	    border-radius: 17.3rem;
	    padding: 5.6rem 3rem 22rem;
	    position: relative;
	    text-align: center;
	    overflow: hidden;
	}
	.top_recruit_box .hd_medium{
	    text-align: center;
	    margin-bottom: 1.5rem;
	}
	.top_recruit_box .ttl{
	    font-size: 2.5rem;
	    line-height: 1.6;
	    font-weight: 900;
	    margin-bottom: 1.5rem;
	}
	.top_recruit_box .txt{
	    font-size: 1.6rem;
	    font-weight: 900;
	    margin-bottom: 3.5rem;
	}
	.top_recruit_box dd{
	    position: absolute;
	    bottom: 0;
	    right: 0;
	    width: 100%;
	    height: 20.6rem;
	    overflow: hidden;
	    border-radius: 17.3rem;
	    padding: 0 2rem;
	    pointer-events: none;
	    text-align: center;
	}
	.top_recruit_box dd img{
	    width: 100%;
	}
	
	
	/*policy*/
	
.policy_wrap .inner {padding: 0 2rem;}
	.policy_wrap,
	.notation_wrap{
	    padding: 6rem 0 5.5rem;
	}
	.policy_wrap .inner{}
	
	h2.ttl_sub {
		font-size: 2rem;
	}	
	
	.policy_wrap_inner,
	.notation_wrap_inner {
		padding: 3rem 2rem;
	}
	
	.policy_wrap_inner p {
	    font-size: 1.6rem;
	}
		
	.policy_area h3 {
	    font-size: 1.7rem;
	}
		
	.notation_wrap_inner dl {
		display: flex;
		flex-wrap: wrap;
		padding-bottom: 25px;
		margin-bottom: 25px;
	}
	.notation_wrap_inner dl dt {
		font-size: 1.6rem;
		width: 100%;
		max-width: 100%;
	}
	.notation_wrap_inner dl dd {
		font-size: 1.6rem;
		width: 100%;
		max-width: 100%;
	}
	
	.sitemap_wrap_inner {
		padding: 4rem 7rem;
	}

	.sitema_nav {
		flex-wrap: wrap;
	}

	.sitema_nav ul {width: 100%;}
	/*.sitema_nav ul.main + ul.main {margin-top: 30px;}*/
	.sitema_nav ul.main {margin-bottom: 30px;}
	
	/*--news--*/
	.news_detail_wrap {
	    padding: 5rem 1rem;
	}

	.news_single_wrap {
	    padding: 3rem 3rem 5rem !important;
	}
	
	.news_single_wrap p {
		font-size: 1.4rem;
	}
	
	.news_single_wrap .btn {
		margin: 5rem auto 0;
	}
	.news_single_wrap .btn .btn_link01 {width: 100%;}
	/*--contact--*/
	.contact_img {margin: 5rem 0 3rem;}
	
		
	.fixed_btn_recruit {
		z-index: 88;
		position: fixed;
	    right: 0;
	    left: 0;
	    top: auto;
	    bottom: 0;
	    background: #000;
	    width: 100%;
	}
	.fixed_btn_recruit a{
	    display: flex;
	    justify-content: center;
	    align-items: center;
	    color: #fff;
	    height: 7.8rem;
	    font-size: 2rem;
	}
	
	#entry .fixed_btn,
	#entry02 .fixed_btn,
	#entry-confirm .fixed_btn,
	#contact .fixed_btn,
	#confirm .fixed_btn,
	.post-type-archive-recruit .fixed_btn {display: none;}
	
	
    #entry #wrapper,
    #entry02 #wrapper,
    #contact #wrapper,
    #confirm #wrapper,
    #entry-confirm #wrapper {
        padding: 6.8rem 0 0rem;
    }
    
    #entry .contactTable #select_menu,
    #entry02 .contactTable #select_menu {
	    background: url(../img/common/select.svg) no-repeat right 1em center #fff !important;
    }
    
    #contact .contactTable #your_type {
	    background: url(../img/common/select.svg) no-repeat right .2em center #fff !important;
    }
    
    
   .message_area {
		padding: 4rem 2rem 10rem;
		border-radius: 20px;
		margin: 8rem 0 10rem;
	}
	
	.message_area + .message_area {margin-top: 5rem;}
	
	.message_img {
		width: 100%;
		max-width: 15rem;
		margin-top: -10rem;
	}
	
	.message_area_name {align-items: end;}

	
	.message_info {padding-left: 2rem;}
	.message_info dl {
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 2rem;
	}
	.message_info dl dt {
		width: 100%;
		font-size: 2rem;
		padding-right: 0;
		order: 2;
	}
	
	.message_info dl dd span {
		font-size: 1.6rem;
		font-weight: 500;
		padding-left: 0;
	}
	
	.message_info dl dd {
		font-size: 1.6rem;
		font-weight: bold;
		border-left: none;
		padding-left: 0;
		order: 1;
	}
	
	.message_info h3.pc_ttl {display: none;}

	h3.sp_ttl {
		padding: 2rem 0;
		font-size: 1.6rem;
		line-height: 2;
		text-align: center;
		border-bottom: 1px solid #fff;
	}
	
	.message_faq dl {
		display: flex;
		align-items: center;
	}
	.message_faq dl dt {
		font-size: 3.5rem;
		font-weight: 500;
		color: #fff;
	}
	.message_faq dl dd {
		font-size: 1.6rem;
	}

	
	
	.open_btn {
		padding-top: 0;
		width: 10rem;
		margin: 0 auto;
	}
	
	.close_btn {
		padding-top: 0;
		width: 8rem;
		margin: 0 auto;
	}	
	
	
	.single-recruit .fixed_btn {display: none;}
	.single-recruit .recruit_fixed_btn {display: inherit !important;}
	.recruit_detail_dl01 dd img {
	    height: 205px;
	    object-fit: cover;
	}
	
	.mwform-file-delete {
	    padding-left: 0;
	}
	
	.mw_wp_form .error {
	    display: block !important;
	    font-size: 1rem !important;
	}
		
}



@media screen and (orientation: portrait) {
  /* 縦向きのiPadに適用するCSS */
	.column_list li img {
	    width: 100%;
	    height: 100%;
	    object-fit: cover;
	}
}


