
/**************************************************************************************/
/**************************************************************************************/
/* PC Site*/
/**************************************************************************************/
/**************************************************************************************/


/** privacy ==================================================== **/

.privacy_title01{
	font-size: 24px ;
	font-weight: 700 ;
	padding-bottom : 32px ;
	border-bottom : 1px solid #B2B2B2 ;
	margin-top : 78px ;
	left : 20px ;
}


.privacy_story{
	font-size : 14px ;
	line-height: 32px ;
	margin-top : 42px ;
	margin-bottom : 50px ;
	left : 20px ;
}

.pricvacy_right p,
.privacy_story p{
	margin-bottom : 32px ;
}

.privacy_hr{
	border-bottom : 1px dashed #B2B2B2 ;
	margin-top : 20px ;
	left : 20px ;
}


.pricvacy_left{
	float : left ;
	width : 220px ;
	font-size : 14px ;
	line-height: 32px ;
	margin-top : 50px ;
	left : 20px ;
}

.pricvacy_right{
	float : right ;
	width : calc( 100% - 220px ) ;
	font-size : 14px ;
	line-height: 32px ;
	margin-top : 50px ;
	left : 20px ;
}


/** company ==================================================== **/

.ul_headerbox{
	width : 100% ;
	height : 400px ;
}

.ul_header_image{
	width : 100% ;
	height : 100% ;
	object-fit: cover ;
	z-index: 4;
}

.ul_header_ol{
	position: absolute ;
	top : 0% ;
	left : 0% ;
	width: 100% ;
	height : 100% ;
	background-color: rgba(0,0,0,0.5);
	z-index: 6;
}


.ul_header_titlebox{
	position: absolute ;
	top : 50% ;
	left : 50% ;
	transform: translate(-50%, -50%);
	width : 100% ;
	max-width: 650px ;
	border-top : 1px solid #FFFFFF ;
	border-bottom : 1px solid #FFFFFF ;
	padding : 32px 0px;
	z-index: 8 ;
}

.ul_header_title_jp{
	font-size: 40px ;
	font-weight: 700 ;
	line-height: 40px ;
	text-align: center ;
	color :#FFFFFF ;
}
.ul_header_title_jp_sub{
	font-size: 34px ;
	font-weight: 700 ;
	line-height: 40px ;
	text-align: center ;
	color :#FFFFFF ;
	margin-bottom : 24px ;
}
.ul_header_title_jp_cap{
	position: absolute ;
	bottom : -72px ;
	left : 0% ;
	width : 100% ;
	height : 72px ;
	line-height : 72px ;
	text-align: center ;
	font-size: 17px ;
	color : #FFFFFF ;
	font-weight: 700 ;
}

.ul_header_title_en{
	font-size: 12px ;
	color :#FFFFFF ;
	line-height: 12px ;
	text-align: center ;
	margin-top : 20px;
}



.company_officelist{
	width : 100% ;
	max-width: 1000px ;
	padding : 24px ;
	justify-content: center  ;
	background-color: #333333 ;
	margin : 100px auto 0px ;
}

.company_officelist_col{
	width : 220px ;
}
.company_officelist_col.small{
	width : 160px ;
}

.company_officelist_item{
	color : #FFFFFF ;
	height : 30px ;
	line-height : 30px ;
}




.office_section{
	width : 100% ;
	padding : 90px 40px ;
	background-color: #DDDBDB;
	margin-top : 120px ;
}

.office_inner{
	width : 100% ;
	max-width: 1000px;
	margin : 0px auto ;
}



.office_item{
	width : 330px ;
	margin-bottom : 64px ;
	left : 20px ;
}
.office_item.large{
	width : 660px ;
}
.office_item_dummy{
	width : 330px ;
	height : 1px ;
}

.office_item_name{
	font-size: 20px ;
}
.office_item_add{
	font-size: 14px ;
	margin-top : 10px ;
}


.office_item_link{
	width : 110px ;
	height : 20px ;
	text-align: center ;
	margin-top : 10px ;
	overflow: hidden ;
	border : 1px solid #34B8BF ;
	background-color: #34B8BF ;
}

.office_item_link_wrap{
	width : 100% ;
	height : 18px ;
	line-height: 18px ;
	font-size: 12px ;
	
	color : #FFFFFF ;
	z-index: 6 ;
}

.office_item_link_arrow{
	position: absolute ;
	top : 50% ;
	right : 6px ;
	width : 6px ;
	height : 6px ;
	border-bottom : 1px solid #FFFFFF ;
	border-right : 1px solid #FFFFFF ;
	transform: translate(0%,-50%) rotate(-45deg);
}

.office_item_link_back{
	position: absolute ;
	top : 100% ;
	left : 0% ;
	width : 100% ;
	height : 100% ;
	background-color: #FFFFFF ;
	z-index: 4;
}

.company_about_l{
	float : left ;
	width : 280px ;
	left : 20px ;
	margin-bottom : 40px ;
	font-size: 14px ;
}
.company_about_r{
	float : left ;
	width : calc( 100% - 280px );
	left : 20px ;
	margin-bottom : 40px ;
	font-size: 14px ;
}

.company_about_l.first,
.company_about_r.first{
	margin-top : 100px ;
}



/** flow ==================================================== **/



.flow_itembox{
	float : right ;
	width : calc( 100% - 240px ) ;
	margin-bottom : 56px ;
	border-left : 2px dotted #000000 ;
	padding-left : 32px ;
	left : 20px ;
}

.flow_item_image{
	position: absolute ;
	top : 50% ;
	left : -230px ;
	width : 220px ;
	transform: translate(0%,-50%);
}

.flow_item_title{
	font-size: 30px ;
	font-weight: 700 ;
}

.flow_item_story{
	font-size: 14px ;
	margin-top: 20px ;
}


.flow_qbox{
	width : 100% ;
	padding : 12px 72px ;
	font-size: 14px ;
	border-bottom : 2px solid #808080 ;
	cursor: pointer;
	margin : 48px auto 18px ;
}

.flow_qnum{
	position: absolute ;
	top : 50% ;
	left : 0% ;
	transform: translate(0%,-50%);
	width : 72px ;
	height : 30px ;
	line-height: 30px ;
	font-size: 28px ;
	font-weight: 700 ;
	color : #34B8BF ;
}

.flow_q_arrow{
	position: absolute ;
	top : 50% ;
	right : 10px ;
	width : 12px ;
	height : 12px ;
	border-top : 2px solid #808080 ;
	border-right : 2px solid #808080 ;
	transform : translate(0%,-50%) rotate(-45deg) ;
}

.flow_abox{
	width : 100% ;
	background-color: #E5E5E5 ;
	font-size: 14px ;
	padding : 18px 36px ;
	display: none ;
}
.flow_abox img{
	width : auto ;
	max-width : 100% ;
	margin : 20px auto ;
}




/** tsd ==================================================== **/




.tsd_catch{
	width : 100% ;
	max-width : 1080px ;
	padding : 0px 40px ;
	margin : 100px auto 0px ;
	font-size: 16px ;
	font-weight: 700 ;
	color : #606060 ;
	text-align: center;
}


.tsd_reason_title{
	width : 320px ;
	margin : 100px auto 0px ;
	font-size: 30px ;
	font-weight: 700 ;
	text-align: center ;
	border-bottom: 2px dotted #333333;
}

.tsd_reason_title01{
	width : 600px ;
	font-size : 60px ;
	font-weight: 700 ;
	padding-left : 200px ;
	margin : 160px auto 0px ;
}
.tsd_reason_title02{
	width : 720px ;
	font-size : 60px ;
	font-weight: 700 ;
	padding-left : 200px ;
	margin : 160px auto 0px ;
}
.tsd_reason_title03{
	width : 640px ;
	font-size : 60px ;
	font-weight: 700 ;
	padding-left : 200px ;
	margin : 160px auto 0px ;
}

.tsd_reason_title_icon{
	position: absolute ;
	top : 50% ;
	left : 0px ;
	width : 160px ;
	transform: translate(0%,-50%);
}




.tsd_reason_item_superbox{
	width : 100% ;
	margin : 140px auto 0px ;
	padding-bottom : 0px ;
}

.tsd_reason_item_inner{
	width : 100% ;
	max-width : 1920px ;
	margin : 0px auto ;
	z-index: 14 ;
}

.tsd_reason_item_back{
	width : 100% ;
	height : 204px ;
	background-color:#34B8BF ;
	z-index: 11 ;
	margin: 52px auto 0px ;
}

.tsd_reason_item_image01{
	width : 100% ;
	left : 20px ;
}
.tsd_reason_item_image02{
	float : left ;
	width : calc( 50% - 20px ) ;
	left : 20px ;
}


.tsd_reason_item_left{
	width: calc( 50% - 20px ) ;
}
.tsd_reason_item_right{
	width: calc( 50% - 20px ) ;
}
.tsd_reason_item_superbox.wd_odd .tsd_reason_item_left{
	order : 2 ;
}
.tsd_reason_item_superbox.wd_odd .tsd_reason_item_right{
	order : 1 ;
}


.tsd_reason_item_storybox{
	float : right ;
	width : 100% ;
	max-width: 510px ;
	padding-right : 40px ;
	font-size: 14px ;
	line-height: 32px ;
	left : 20px ;
}

.tsd_reason_item_superbox.wd_odd .tsd_reason_item_storybox{
	float : left ;
}
.tsd_reason_item_superbox.wd_odd .tsd_reason_item_images_superbox{
	float : right ;
}


.tsd_reason_item_images_superbox{
	width : 100% ;
	max-width: 510px ;
}


.tsd_reason_item_storybox02{
	float : left ;
	width : 100% ;
	max-width: 510px ;
	padding-left : 80px ;
	font-size: 14px ;
	line-height: 32px ;
	left : 20px ;

}



.tsd_reason_item_subimages{
	position: relative ;
	width: 100% ;
	max-width : 400px ;
	height : 250px ;
	margin-top : 20px ;
}
.tsd_reason_item_subimages02{
	position: relative ;
	justify-content: right ;
	width : calc( 50% - 20px ) ;
	height : 250px ;
	margin-top : 46px ;
	gap: 20px ;
}

.tsd_reason_item_imagesub{
	width : 190px ;
	height : 250px ;
	top : -20px ;
}
.tsd_reason_item_imagesub img{
	width : 100% ;
	height : 100% ;
	object-fit: cover ;
}

.tsd_reason_item_superbox.wd_odd .tsd_reason_item_subimages{
	float : right ;
}






.tsd_reason_item_image04{
	width: 100% ;
	max-width: 412px ;
	margin-top : 20px ;
}
.tsd_reason_itemtitle_enbox{
	width: 100% ;
	margin: 20px auto 0px ;
	height: 20px ;
}
.tsd_reason_itemtitle_en_back{
	position: absolute;
	top : 50% ;
	left: 0% ;
	width: 100% ;
	height: 1px ;
	background-color: #808080 ;
}
.tsd_reason_itemtitle_en_title{
	position: absolute;
	top : 0% ;
	right: 0% ;
	width: fit-content ;
	height: 20px ;
	line-height: 20px ;
	padding-left: 10px ;
	background-color: #FFFFFF ;
	color: #808080 ;
	font-size: 10px ;
	font-weight: 700 ;
}

.tsd_reason_item_story_title01{
	font-size: 18px ;
	font-weight: 900 ;
	color: #808080 ;
	margin-top : 24px ;
	/** padding-right: 60px ; **/
}
.tsd_reason_item_story_title02{
	font-size: 16px ;
	color: #333333 ;
	font-weight: 700 ;
	margin-top : 24px ;
	padding-right: 60px ;
}

.tsd_reason_item_story_p{
	font-size: 14px ;
	color: #333333 ;
	margin-top : 20px ;
	line-height: 2 ;
	padding-right: 30px ;
}

.tsd_reason_item_story_p span{
	font-weight: 700 ;
	color: #0D2544 ;
}








.tsd_extra_title{
	font-size: 24px ;
	font-weight: 700 ;
	margin-top : 36px ;
	text-align: center ;
	left : 20px ;
}

.tsd_extra_story{
	width: 100% ;
	padding : 20px ;
	background-color: #EFEFEF ;
	font-size: 14px ;
	margin-top : 10px ;
	left : 20px ;
}

.tsd_extra_title_check{
	display: inline-block;
	width : 36px ;
	vertical-align: -6px ;
}








/** partner ==================================================== **/



.partner_flex{
	width : 100% ;
	max-width: 1000px ;
	margin : 60px auto ;
}

.partner_itembox{
	width : 48% ;
	max-width: 480px ;
	margin-bottom: 40px ;
	border : 1px solid #989898 ;
	background-color: rgba( 255,255,255,0.9) ;
	padding : 60px 32px 160px ;
	left : 20px ;
}

.partner_item_logo{
	width : 100% ;
	max-width: 320px ;
	margin : 0px auto ;
}

.partner_item_name{
	font-size: 20px ;
	color : #000000 ;
	margin-top : 50px ;
}

.partner_item_story{
	font-size: 14px ;
	margin-top : 12px ;
	color: #000000 ;
}

.partner_item_extra{
	position: absolute ;
	bottom : 30px ;
	left : 0px ;
	padding : 0px 32px ;
	font-size: 14px ;
	color : #666666 ;
}



.partner_item_extra p{
	margin-top : 6px ;
}
.partner_item_extra p a,
.partner_item_extra p a:link,
.partner_item_extra p a:visited{
	color : #0068B6 ;
}





.tds_reason_item_titlere{
	padding-left: 160px ;
	text-align: left ;
	font-size: 60px ;
	line-height: 90px;
	color: #808080 ;
	font-weight: 700 ;
}

.tds_reason_item_titlere_num{
	position: absolute;
	top : -26px ;
	left: 0px ;
	width: 140px ;
}

.tds_reason_item_titlere span{
	padding: 0px 30px ;
}










































@media screen and (max-width: 1200px) {



}


/**************************************************************************************/
/**************************************************************************************/
/* TB Site*/
/**************************************************************************************/
/**************************************************************************************/
@media screen and (max-width: 1100px) {




/** privacy ==================================================== **/

.privacy_title01{
	font-size: 30px ;
	border-bottom : 2px solid #B2B2B2 ;
}


.privacy_story{
	font-size : 20px ;
	line-height: 40px ;
}

.pricvacy_right p,
.privacy_story p{
}

.privacy_hr{
	border-bottom : 2px dashed #B2B2B2 ;
}


.pricvacy_left{
	float : none ;
	width : 100% ;
	font-size : 24px ;
	line-height: 40px ;
}

.pricvacy_right{
	float : none ;
	width : 100% ;
	font-size : 20px ;
	line-height: 40px ;
}









/** company ==================================================== **/

.ul_headerbox{
}

.ul_header_image{
}

.ul_header_ol{
}


.ul_header_titlebox{
}

.ul_header_title_jp{
}

.ul_header_title_en{
	font-size: 16px ;
	line-height: 16px ;
}



.company_officelist{
	padding : 40px ;
}

.company_officelist_col{
	width : 100% ;
}
.company_officelist_col.small{
	width : 100% ;
}

.company_officelist_item{
	float : left ;
	width : 50% ;
	height : 60px ;
	line-height : 60px ;
	text-align: center ;
}




.office_section{
	margin-top : 0px ;
}

.office_inner{
	max-width: 480px ;
}



.office_item{
	width : 100% ;
}
.office_item.large{
	width : 100% ;
}
.office_item_dummy{
	width : 100% ;
}

.office_item_name{
	font-size: 30px ;
}
.office_item_add{
	font-size: 20px ;
	margin-top : 20px ;
}


.office_item_link{
	width : 200px ;
	height : 40px ;
	border : 2px solid #34B8BF ;
}

.office_item_link_wrap{
	height : 36px ;
	line-height: 36px ;
	font-size: 16px ;
}

.office_item_link_arrow{
	right : 12px ;
	border-bottom : 2px solid #FFFFFF ;
	border-right : 2px solid #FFFFFF ;
}

.office_item_link_back{
}

.company_about_l{
	float : none;
	width : 100% ;
	margin-bottom : 40px ;
	font-size: 24px ;
}
.company_about_r{
	float : none ;
	width : 100% ;
	font-size: 24px ;
	margin-bottom : 100px ;
}


.company_about_l.first,
.company_about_r.first{
	margin-top : 100px ;
}






/** flow ==================================================== **/



.flow_itembox{
	float : none ;
	width : 100% ;
	border-left : none ;
	border-top : 4px dotted #000000 ;
	padding-left : 0px ;
	padding-top : 64px ;
}

.flow_item_image{
	position: relative ;
	top : auto ;
	left : auto ;
	width : 220px ;
	transform: translate(0%,0%);
	margin : 0px auto 32px ;
}

.flow_item_title{
	font-size: 30px ;
	text-align: center ;
}

.flow_item_story{
	font-size: 20px ;
	margin-top: 20px ;
}


.flow_qbox{
	padding : 42px 72px 12px 0px  ;
	font-size: 24px ;
	border-bottom : 4px solid #808080 ;
	margin : 48px auto 18px ;
}

.flow_qnum{
	position: absolute ;
	top : 0% ;
	left : 0% ;
	transform: translate(0%,0%);
	width : 72px ;
	height : 30px ;
	line-height: 30px ;
	font-size: 30px ;
}

.flow_q_arrow{
	right : 20px ;
	width : 24px ;
	height : 24px ;
	border-top : 4px solid #808080 ;
	border-right : 4px solid #808080 ;
}

.flow_abox{
	font-size: 20px ;
}












/** tsd ==================================================== **/




.tsd_catch{
	font-size: 24px ;
}


.tsd_reason_title{
	width : 440px ;
	font-size: 40px ;
	border-bottom: 4px dotted #333333;
}

.tsd_reason_title01{
	width : 100% ;
	padding-left : 0px ;
	margin : 160px auto 0px ;
	text-align: center ;
}
.tsd_reason_title02{
	width : 100% ;
	padding-left : 0px ;
	margin : 160px auto 0px ;
	text-align: center ;
}
.tsd_reason_title03{
	width : 100% ;
	padding-left : 0px ;
	margin : 160px auto 0px ;
	text-align: center ;
}

.tsd_reason_title_icon{
	position: relative ;
	top : auto ;
	left : auto ;
	width : 160px ;
	transform: translate(0%,0%);
	margin : 0px auto ;
}



/**
.tsd_reason_item_superbox{
}

.tsd_reason_item_inner{
}

.tsd_reason_item_back{
}

.tsd_reason_item_image01{
	float : none ;
	width : 100% ;
	max-width: 640px ;
	margin : 0px auto ;
	left : 20px ;
}
.tsd_reason_item_image02{
	float : none ;
	width : 100% ;
	max-width: 640px ;
	margin : 0px auto ;
	left : 20px ;
}

.tsd_reason_item_storybox{
	float : none ;
	width : 100% ;
	max-width: 640px ;
	padding-right : 40px ;
	padding-left : 40px ;
	font-size: 20px ;
	line-height: 40px ;
	margin : 80px auto ;
	left : 20px ;
}
.tsd_reason_item_storybox02{
	float : none ;
	width : 100% ;
	max-width: 640px ;
	padding-right : 40px ;
	padding-left : 40px ;
	font-size: 20px ;
	line-height: 40px ;
	margin : 80px auto ;
	left : 20px ;
}



.tsd_reason_item_subimages{
	position: relative ;
	left : auto  ;
	width : calc( 100% - 80px );
	max-width: 640px ;
	height : 360px ;
	margin : 46px auto 0px;
	justify-content: space-between;
}
.tsd_reason_item_subimages02{
	position: relative ;
	left : auto  ;
	width : calc( 100% - 80px );
	max-width: 640px ;
	height : 360px ;
	margin : 46px auto 0px;
	justify-content: space-between;
}



.tsd_reason_item_imagesub{
	width : 48% ;
	max-width: 300px ;
	height : 360px ;
}
.tsd_reason_item_imagesub img{
	width : 100% ;
	height : 100% ;
	object-fit: cover ;
}



.tsd_extra_title{
	font-size: 24px ;
}

.tsd_extra_story{
	padding : 40px ;
	font-size: 20px ;
}

.tsd_extra_title_check{
	display: inline-block;
	width : 36px ;
	vertical-align: -6px ;
}
**/




.tsd_reason_item_superbox{
}

.tsd_reason_item_inner{
}

.tsd_reason_item_back{
}

.tsd_reason_item_image01{
	margin : 0px auto ;
}
.tsd_reason_item_image02{
	float : none ;
	width: 100% ;
	max-width: 640px ;
	margin : 0px auto ;
	padding: 0px 40px ;
}


.tsd_reason_item_left{
	width: 100%  ;
	padding: 0px 0px ;
}
.tsd_reason_item_right{
	width: 100%  ;
	padding: 0px 40px ;
	margin-top : 40px ;
}
.tsd_reason_item_superbox.wd_odd .tsd_reason_item_left{
	order : 1 ;
}
.tsd_reason_item_superbox.wd_odd .tsd_reason_item_right{
	order : 2 ;
}


.tsd_reason_item_storybox{
	float : none ;
	max-width: 640px ;
	padding-right : 0px ;
	font-size: 20px ;
	line-height: 40px ;
}

.tsd_reason_item_superbox.wd_odd .tsd_reason_item_storybox{
	float : none ;
}
.tsd_reason_item_superbox.wd_odd .tsd_reason_item_images_superbox{
	float : none ;
}


.tsd_reason_item_images_superbox{
	width : 100% ;
	max-width: 640px ;
	margin : 0px auto ;
}


.tsd_reason_item_storybox02{
}



.tsd_reason_item_subimages{
	max-width : 640px ;
	height : 360px ;
	margin : 40px auto 0px ;
	padding: 0px 0px ;
}
.tsd_reason_item_subimages02{
}

.tsd_reason_item_imagesub{
	width : 48% ;
	max-width: 300px ;
	height : 360px ;
	top : -20px ;
}
.tsd_reason_item_imagesub img{
}

.tsd_reason_item_superbox.wd_odd .tsd_reason_item_subimages{
	float : none ;
}






.tsd_reason_item_image04{
	margin : 40px auto 0px ;
}
.tsd_reason_itemtitle_enbox{
	width: calc( 100% - 80px );
	margin : 0px auto 64px ;
	padding: 0px 0px ;
}
.tsd_reason_itemtitle_en_back{
}
.tsd_reason_itemtitle_en_title{
	font-size: 14px ;
}

.tsd_reason_item_story_title01{
	font-size: 30px ;
	margin-top : 40px ;
	padding: 0px 40px ;
}
.tsd_reason_item_story_title02{
	font-size: 24px ;
	padding-right: 0px ;
	margin-top : 40px ;
	padding: 0px 40px ;
}

.tsd_reason_item_story_p{
	font-size: 20px ;
	padding: 0px 40px ;
	margin-top : 40px ;
}

.tsd_reason_item_story_p span{
}













/** partner ==================================================== **/



.partner_flex{
	width : 100% ;
	max-width: 480px ;
	margin : 60px auto ;
}

.partner_itembox{
	width : 100% ;
	padding : 60px 32px 60px ;
}

.partner_item_logo{
}

.partner_item_name{
	font-size: 24px ;
}

.partner_item_story{
	margin-top : 20px ;
	font-size: 20px ;
}

.partner_item_extra{
	position: relative ;
	bottom : auto ;
	left : auto ;
	padding : 0px 0px ;
	font-size: 20px ;
	margin-top : 40px 
}



.partner_item_extra p{
	margin-top : 12px ;
}
.partner_item_extra p a,
.partner_item_extra p a:link,
.partner_item_extra p a:visited{
}













.tds_reason_item_titlere{
	padding-left: 0px ;
	text-align: center ;
	margin-bottom : 20px ;
}

.tds_reason_item_titlere_num{
	position: relative;
	top : auto ;
	left: auto ;
	width: 140px ;
	margin : 0px auto ;
}

.tds_reason_item_titlere span{
	padding: 0px 0px ;
}



















}