@charset "utf-8";
/*------------------------  policy  ------------------------*/


/*-----  title  -----*/
#policy .title_content { padding: 0 5%; }
#policy .title_content .title_block { display: flex; justify-content: center; align-items: center; flex-direction: column; width: 100%; height: 150px; font-weight: 700; line-height: 1.3; text-align: center; z-index: 101; }
#policy .title_content .title { font-size: 32px; }


@media screen and (max-width: 840px) {

 #policy .title_content {}
 #policy .title_content .title_block { height: 84px; }
 #policy .title_content .title { font-size: 24px; }

}



/*----- policy -----*/
#policy .policy_content { padding: 50px 5% 50px; border-top: 1px solid #e6e6e6; }

#policy .tabs { display: flex; justify-content: center; flex-wrap: wrap; }
#policy .tabs .tab_item { flex-basis: calc(100% / 2); cursor: pointer; }
#policy .tabs .tab_item:hover { opacity: .7; }
#policy .tabs .tab_item .tab_box { display: flex; justify-content: center; align-items: center; margin: 0 8px; height: 54px; background: #fff; border: 1px solid #ddd; font-weight: 700; font-size: 15px; line-height: 1.3; color: #999; border-radius: 3px; }
#policy .tabs input[name="location_tab"] { display: none; }
#policy .tabs .tab_content { display: none; padding: 50px 0 0; width: 100%; }
#tab01:checked ~ #content01,
#tab02:checked ~ #content02 { display: block; }
#policy .tabs input:checked + .tab_item .tab_box { border: 1px solid #a00e14; color: #a00e14; }

#policy .policy_ttl { margin: 0 0 35px; padding: 0 0 16px; border-bottom: 1px solid #e6e6e6; font-weight: 700; font-size: 24px; line-height: 1.3; }
#policy .txt_block { padding: 0 0 30px; font-size: 15px; line-height: 1.8; }
#policy .txt_block a { color: #a00e14; text-decoration: underline; }
#policy .txt_block .ttl { margin: 0 0 10px; font-weight: 700; font-size: 20px; }
#policy .txt_block .ttl .num { padding: 0 6px 0 0; font-family: 'Roboto', sans-serif; font-weight: 500; font-size: 22px; }
#policy .txt_block .txt { flex: 1; margin: 0 0 10px; }
#policy .txt_block .txt2 { display: flex; margin: 20px 0 3px; }
#policy .txt_block .txt2 .num { margin-right: 6px; }
#policy .txt_block .txt3 { margin: 0 0 10px; padding: 0 0 0 15px; }
#policy .txt_block .list { display: flex; }
#policy .txt_block .list .num { margin-right: 6px; }
#policy .txt_block .doc_list { padding: 0 0 0 15px; }
#policy .txt_block .doc_list .txt { margin: 0; }
#policy .txt_block .column { display: flex; padding: 0 0 0 15px; }
#policy .txt_block .column .txt { flex-basis: calc(100% / 2); }
#policy .txt_block .box { margin: 20px 0 0; padding: 40px 0 10px; border-top: 1px solid #e6e6e6; }

#policy .txt_block .txt_r { margin: 10px 0; text-align: right; }
#policy .txt_block .txt_s { font-size: 14px; }

#policy .txt_block .site_ul_b { margin: 15px 0 15px; font-weight: 700; }
#policy .txt_block .site_ul_b .site_list { margin-left: 1.2em; list-style: disc; }
#policy .txt_block .site_ul {}
#policy .txt_block .site_ul .site_list { margin-left: 1.2em; list-style: decimal; }


@media screen and (max-width: 840px) {

 #policy .policy_content { padding: 30px 5% 20px; }

 #policy .tabs .tab_item:hover { opacity: 1; }
 #policy .tabs .tab_item .tab_box { margin: 0 3px; height: 44px; font-size: 14px; }
 #policy .tabs .tab_content { padding: 30px 0 0; }

 #policy .policy_ttl { margin: 0 0 25px; padding: 0 0 10px; font-size: 18px; }
 #policy .txt_block { padding: 0 0 20px; font-size: 14px; line-height: 1.6; }
 #policy .txt_block .ttl { margin: 0 0 10px; font-size: 16px; }
 #policy .txt_block .ttl .num { font-size: 18px; }
 #policy .txt_block .column { display: block; }
 #policy .txt_block .column .txt:not(:last-of-type) { margin: 0; }
 #policy .txt_block .box { padding: 20px 0 10px; }
 #policy .txt_block .txt_s { font-size: 13px; }

}


