@charset "UTF-8";

.policy{ max-width: 1000px; margin: 95px auto 250px;}
.policy .policy_intro{ margin-bottom: 40px;}
.policy .policy_intro .policy_title{ display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; border-bottom: 2px solid #fff; padding-bottom: 5px; margin-bottom: 20px; box-sizing: border-box;}
.policy .policy_intro .policy_title h1{ font-size: 3.6em; line-height: 1.7; font-weight: 700;}
.policy .policy_intro .policy_title span{ font-size: 1.5em; line-height: 1.8; font-weight: 700;}
.policy .policy_intro > p{ font-size: 1.5em; line-height: 1.8; font-weight: 700;}
.policy .policy_intro > p span{ display: block; color: #888; font-size: 0.9em;}
.policy .policy_text{}
.policy .policy_text .policy_text_box{ margin-bottom: 40px;}
.policy .policy_text .policy_text_box h2{ font-size: 2.3em; line-height: 1.8; font-weight: 700; margin-bottom: 15px;}
.policy .policy_text .policy_text_box h2 span{ background: linear-gradient(transparent 55%, #bad8f2 50%); display: inline; padding: 0 2px 8px;}
.policy .policy_text .policy_text_box > div{ font-size: 1.5em; line-height: 1.8; font-weight: 700; margin-bottom: 10px;}
.policy .policy_text .policy_text_box:nth-child(1) > div{ text-indent: -1em; padding-left: 1em;}
.policy .policy_text .policy_text_box > div span{}
.policy .policy_text .policy_text_box > div ul li{ text-indent: -1.5em; padding-left: 1.5em;}
.policy .policy_text .policy_text_box .contact_box{ padding: 25px 35px; box-sizing: border-box; border-radius: 10px; border: 2px solid var(--base_navy); margin-top: 20px; display: flex; justify-content: flex-start; align-items: center;}
.policy .policy_text .policy_text_box .contact_box dl{ display: flex; justify-content: flex-start; align-items: center;}
.policy .policy_text .policy_text_box .contact_box dl dt{ font-size: 1.5em; font-weight: 700; margin-right: 30px;}
.policy .policy_text .policy_text_box .contact_box dl dd{ margin-right: 30px;}
.policy .policy_text .policy_text_box .contact_box > a{ font-size: 1.2; display: inline-block; color: #fff; padding: 15px 25px; box-sizing: border-box; background-color: var(--main_blue); text-decoration: none; border-radius: 50vh;}

@media screen and (max-width:999px){
.policy{ margin: 95px auto 220px;}
.policy .policy_intro .policy_title h1{ font-size: 3.2em;}
.policy .policy_intro .policy_title span{ font-size: 1.4em;}
.policy .policy_intro > p{ font-size: 1.4em;}
.policy .policy_text .policy_text_box h2{ font-size: 2.1em;}
.policy .policy_text .policy_text_box > div{ font-size: 1.4em;}
}

@media screen and (min-width:768px){
.policy .policy_text .policy_text_box .contact_box > a{ transition: .2s;}
.policy .policy_text .policy_text_box .contact_box > a:hover{ opacity: 0.6;}
}

@media screen and (max-width:767px){
	#wrap.contents #page_title{ margin: 0 auto 25px!important;}
.policy{ margin: 80px auto 190px;}
.policy .policy_intro{ margin-bottom: 25px;}
.policy .policy_intro .policy_title{ margin-bottom: 15px; display: block;}
.policy .policy_intro .policy_title h1{ font-size: 2.4em;}
.policy .policy_intro .policy_title span{ display: block; width: 100%; text-align: right; font-size: 1.3em; margin-top: 10px;}
.policy .policy_intro > p{ font-size: 1.3em;}
.policy .policy_text .policy_text_box{ width: 100%; margin-bottom: 20px;}
.policy .policy_text .policy_text_box h2{ font-size: 1.9em; margin-bottom: 16px;}
.policy .policy_text .policy_text_box > div{ font-size: 1.3em; margin-bottom: 15px;}
.policy .policy_text .policy_text_box .contact_box{ padding: 15px 20px; border-radius: 5px; margin-top: 10px; display: block; text-align: center;}
.policy .policy_text .policy_text_box .contact_box dl{ display: block; margin-bottom: 10px;}
.policy .policy_text .policy_text_box .contact_box dl dt{ margin-right: 0;}
.policy .policy_text .policy_text_box .contact_box dl dd{ margin-right: 0;}
.policy .policy_text .policy_text_box .contact_box > a{ padding: 10px 20px;}
}