@charset "UTF-8";


.utop_section {
	margin-bottom: 30px;
}
.utop_section .cwrap{
	height: 100%;
}
.utop_section .container{
	display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
.utop_section{
	color: #fff;
	height: 350px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.utop_section h1,
.utop_section p{
font-size: 50px;
	font-family: "Zen Maru Gothic", sans-serif;
	font-weight: 700;
	text-shadow: 0 0 5px rgba(0,0,0,0.75);
}
#about .utop_section{
	background-image: url('/images/utop_about.jpg');
}
#souzoku .utop_section{
	background-image: url('/images/utop_souzoku.jpg');
}
#jiko .utop_section{
	background-image: url('/images/utop_jiko.jpg');
}
#other .utop_section{
	background-image: url('/images/utop_other.jpg');
}
#faq .utop_section{
	background-image: url('/images/utop_faq.jpg');
}
#fees .utop_section{
	background-image: url('/images/utop_fees.jpg');
}
#lawyer .utop_section{
	background-image: url('/images/utop_lawyer.jpg');
}
#information .utop_section{
	background-image: url('/images/utop_information.jpg');
}
#contact .utop_section{
	background-image: url('/images/utop_contact.jpg');
}
#news .utop_section{
	background-image: url('/images/utop_news.jpg');
}
#column .utop_section{
	background-image: url('/images/utop_column.jpg');
}
#policy .utop_section{
	background-image: url('/images/utop_policy.jpg');
}



@media only screen and (max-width: 1024px) {
	.utop_section{
		height: 300px;
	}
	.utop_section h1, .utop_section p{
		font-size: 40px;
	}
}
@media only screen and (max-width: 768px) {
	.utop_section{
		height: 250px;
	}
	.utop_section h1, .utop_section p{
		font-size: 35px;
	}
}
@media only screen and (max-width: 479px) {
	.utop_section{
		height: 180px;
		margin-bottom: 20px;
	}
	.utop_section h1, .utop_section p{
		font-size: 25px;
	}
}

/* -----------------------------------------------
	 breadcrumb
----------------------------------------------- */
.pankuzu{
	margin-bottom: 150px;
}
.breadcrumb {
	gap: 3px;
	display: flex;
	flex-wrap: wrap;
	list-style: none;
}

.breadcrumb li{
	position: relative;
	line-height: 1.3;
	text-indent: 0;
	padding: 0;
	font-size: 18px;
}
.breadcrumb li:not(:last-child){
	margin-right: 30px;
}
.breadcrumb li:not(:last-child)::after{
	content: "";
	display: inline-block;
	width: 1px;
	height: calc(100% - 10px);
	background: #333;
	position: absolute;
	top: 50%;
	left: calc(100% + 15px);
	-webkit-transform : translateY(-50%);
    transform : translateY(-50%);
}
.breadcrumb li.current{
	color: #005bab;
	font-weight: 700;
}


  @media only screen and (max-width: 1024px) {
  }
  @media only screen and (max-width: 768px) {
	.pankuzu {
		margin-bottom: 120px;
	}
	.breadcrumb li{
		font-size: 16px;
	}
  }
  @media only screen and (max-width: 479px) {
	.pankuzu{
		margin-bottom: 90px;
	}
	.breadcrumb li{
		font-size: 15px;
	}
	.breadcrumb li:not(:last-child) {
		margin-right: 20px;
	}
	.breadcrumb li:not(:last-child)::after {
		height: calc(100% - 5px);
		left: calc(100% + 10px);
	}
  }


/* -----------------------------------------------
	 under_head
----------------------------------------------- */
#under_head .lead span{
	color: #f77823;
}
#under_head .inner{
	gap: 60px;
}
#under_head .inner .img{
	max-width: 400px;
}
#under_head .inner .txts{
	width: calc(100% - 460px);
}
#under_head .inner .txts p:first-child{
	margin-bottom: 30px;
}
#under_head .inner .txts p span{
	color: #f77823;
}

  @media only screen and (max-width: 1024px) {
  }
  @media only screen and (max-width: 768px) {
	#under_head .inner{
		flex-direction: column;
	}
	#under_head .inner .txts{
		width: 100%;
	}
  }
  @media only screen and (max-width: 479px) {
	#under_head .inner {
		gap: 30px;
	}
  }


/* -----------------------------------------------
	 about
----------------------------------------------- */
#about .usec_point .lead{
	margin-bottom: 60px;
}

#about .usec_point .pointwrap{
	max-width: 700px;
	margin: 0 auto 60px;
}
#about .usec_point .pointwrap li{
	font-size: 30px;
	text-indent: 0;
	padding: 10px 20px;
	font-weight: 700;
	border-bottom: solid 2px #333;
}
#about .usec_point .pointwrap li:not(:last-child){
	margin-bottom: 10px;
}
#about .usec_point .pointwrap li img{
	max-width: 30px;
	margin-right: 15px;
}

#under_worry .worryimg{
	margin: auto;
	max-width: 250px;
}
#under_worry .worryhead{
	padding: 25px 0;
	background: #333;
	width:100vw;
	margin-right:calc(((100vw - 100%) / 2) * -1);
	margin-left:calc(((100vw - 100%) / 2) * -1);
	margin-bottom: 90px;
}
#under_worry .worryhead_field{
	background: #005bab;
}
#under_worry .worryhead h2{
	margin: 0;
	color: #fff;
}
#under_worry .worrywrap{
	gap: 40px;
	margin-bottom: 60px;
}
#under_worry .worrywrap .worry{
	text-align: center;
    font-size: 30px;
    line-height: 1.8;
    padding: 50px 20px;
	width: calc(100% / 2 - 20px);
	border-radius: 20px;
	box-shadow: 0 0 10px rgba(0,0,0,0.5);
}
#under_worry .worrywrap .worry span{
	color: #f77823;
}
#under_worry .cta_tel_max{
	margin-top: 90px;
}
#under_merit{
	position: relative;
	padding: 120px 0;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
#under_merit::before{
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	background-image: linear-gradient(90deg, #e3f6ff, #bce7f7 30%, #aedbf3 65%, #5ecaef);
	opacity: 0.85;
}
#under_merit .cwrap{
	position: relative;
}
#under_merit .container{
	max-width: 850px;
}
#under_merit h2 {
	margin-bottom: 90px;
}
#under_merit h2.merithead{
	margin-bottom: 120px;
}
#under_merit h2 span{
	color: #f77823;
}
#under_merit .txts {
	margin-bottom: 90px;
}
#under_merit .txts p{
	margin-bottom: 45px;
}
#under_merit .merit:not(:last-child){
	margin-bottom: 90px;
}
#under_merit .merit h3{
	color: #005bab;
	font-size: 40px;
	text-align: center;
	margin-bottom: 20px;
}
#under_merit .cta_tel_yoyaku{
	margin: auto;
}

#about #under_merit{
	background-image: url('/images/bg_about.jpg');
}
#souzoku #under_merit{
	background-image: url('/images/bg_souzoku.jpg');
}
#jiko #under_merit{
	background-image: url('/images/bg_jiko.jpg');
}


  	@media only screen and (max-width: 1024px) {
		#under_worry .worrywrap .worry{
			font-size: 26px;
			padding: 40px 20px;
		}
		#under_merit .merit h3{
			font-size: 30px;
		}
	}
	@media only screen and (max-width: 768px) {
		#about .usec_point .pointwrap {
			max-width: 600px;
		}
		#about .usec_point .pointwrap li{
			font-size: 25px;
		}
		#about .usec_point .pointwrap li img {
			max-width: 25px;
		}
		#under_worry .worryimg{
			max-width: 200px;
		}
		#under_worry .worrywrap .worry{
			font-size: 22px;
			padding: 30px 10px;
		}
		#under_merit {
			padding: 90px 0;
		}
		#under_merit h2 {
			margin-bottom: 60px;
		}
		#under_worry .cta_tel_max {
			margin-top: 60px;
		}
		#under_merit h2.merithead {
			margin-bottom: 60px;
		}
	}

	@media only screen and (max-width: 479px) {
		#about .usec_point .pointwrap li{
			font-size: 20px;
			padding: 10px;
			line-height: 1.3;
			align-items: flex-start;
		}
		#about .usec_point .pointwrap li img {
			max-width: 20px;
			margin-right: 10px;
			top: 3px;
			position: relative;
		}
		#under_worry .worryimg{
			max-width: 150px;
		}
		#under_worry .worryhead{
			padding: 15px 0;
			margin-bottom: 60px;
		}
		#under_worry .worrywrap {
			gap: 20px;
			margin-bottom: 45px;
		}
		#under_worry .worrywrap .worry{
			font-size: 16px;
			width: calc(100% / 2 - 10px);
			letter-spacing: -0.025rem;
			display: flex;
			align-items: center;
			justify-content: center;
			flex-direction: column;
		}
		#under_worry .worrywrap .worry br{
			display: none;
		}
		#under_merit {
			padding: 60px 0;
		}
		#under_merit h2 {
        	margin-bottom: 45px;
		}
		#under_merit .txts p {
			margin-bottom: 30px;
		}
		#under_merit .txts{
			margin-bottom: 45px;
		}
		#under_merit .txts .but br{
			display: none;
		}
		#under_worry .cta_tel_max {
			margin-top: 45px;
		}
		#under_merit h2.merithead {
			margin-bottom: 60px;
		}
		#under_merit .merit h3{
			font-size: 20px;
			margin-bottom: 10px;
		}
		#under_merit .merit:not(:last-child) {
			margin-bottom: 60px;
		}
	}



/* -----------------------------------------------
	 field (対応分野）
----------------------------------------------- */
.field .usec_message h2{
	margin-bottom: 90px;
}
.field .usec_message .inner{
	gap: 80px;
	margin-bottom: 60px;
}
.field .usec_message .img{
	max-width: 250px;
}
.field .usec_message .txts{
	width: calc(100% - 330px);
}
.field .usec_message .txts .name{
	position: relative;
	margin-top: 60px;
	display: flex;
	align-items: center;
}
.field .usec_message .txts .name::before{
	content: "";
	display: inline-block;
	width: 60px;
	height: 1px;
	background: #333;
	margin-right: 20px;
}
.field .usec_message .btn{
	display: block;
	margin: auto;
}
.field .bggrad{
	padding-top: 120px;
}
.field .feebox{
	background: #fff;
	padding: 60px 100px;
	border-radius: 30px;
	box-shadow: 0 0 10px rgba(0,0,0,0.5);
}
.field .feebox p{
	margin-bottom: 60px;
}
.field .feebox ul.txt{
	max-width: 550px;
	color: #005bab;
	margin: auto;
}
.field .feebox ul.txt li{
	text-indent: unset;
	padding: unset;
}

.faqbox{
	background: #fff;
	padding: 80px 100px;
	border-radius: 30px;
	box-shadow: 0 0 10px rgba(0,0,0,0.5);
}
.faqbox h2{
	margin-bottom: 90px;
}
.faqbox .faqset:not(:last-child){
	margin-bottom: 60px;
}
.field .faqbox .btn{
	margin: 60px auto 0;
	display: block;
}
.faqbox .que{
    color: #005bab;
    font-weight: 700;
    padding-bottom: 10px;
    margin-bottom: 5px;
    border-bottom: solid 2px #005bab;
    line-height: 1.5;
}
.lasttxt{
	font-family: ta-oonishi, sans-serif;
	font-weight: 300;
    font-style: normal;
    font-size: 40px;
    line-height: 2.5;
    margin-bottom: 120px;
	letter-spacing: -0.1rem;
}
.lasttxt span{
	font-weight: normal;
	color: #f77823;
}

  @media only screen and (max-width: 1024px) {
	.field .feebox{
		padding: 60px 80px;
	}
	.lasttxt{
		font-size: 35px;
	}
  }
  @media only screen and (max-width: 768px) {
	.field .bggrad {
		padding-top: 90px;
	}
	.field .usec_message .inner{
		align-items: flex-start;
		gap: 30px;
	}
	.field .usec_message .img {
		max-width: 150px;
	}
	.field .usec_message .txts {
		width: calc(100% - 180px);
	}
	.field .feebox{
		padding: 50px 60px;
	}
	.lasttxt{
		margin-bottom: 90px;
	}
	.lasttxt p{
		font-size: 28px;
	}
}
@media only screen and (max-width: 479px) {
	.field .bggrad {
		padding-top: 60px;
	}
	.field .usec_message .inner{
		flex-direction: column;
	}
	.field .usec_message h2 {
		margin-bottom: 60px;
	}
	.field .usec_message .txts {
		width: 100%;
	}
	.field .usec_message .img {
		margin: auto;
	}
	.field .usec_message .txts .name {
		margin-top: 30px;
	}
	.field .usec_message .txts .name::before {
		width: 40px;
		margin-right: 10px;
	}
	.field .feebox{
		padding: 45px 25px;
	}
	.field .feebox p {
		margin-bottom: 30px;
	}
	.lasttxt{
		margin-bottom: 60px;
	}
	.lasttxt p{
		font-size: 7vw;
		padding: 0 20px;
		letter-spacing: -0.25rem;
		line-height: 2;
	}
}



/* -----------------------------------------------
	 souzoku,jiko
----------------------------------------------- */
@media only screen and (max-width: 479px) {
	#souzoku .usec_fees,
	#jiko .usec_fees{
		margin-bottom: 60px;
	}
}


/* -----------------------------------------------
	 other
----------------------------------------------- */
#other .usec_can .headtxt{
	margin-bottom: 120px;
}
#other .usec_can .headtxt a{
	color: #005bab;
	text-decoration: underline;
}
#other .usec_can .can{
	margin-bottom: 90px;
}
#other .usec_can .txt:not(:last-child){
	margin-bottom: 30px;
}
.focus-area {
	text-align: center;
	margin-top: 30px;
    padding: 30px;
    line-height: 1.5;
}
.focus-area a{
	color: #005bab;
	font-weight: 700;
}
.focus-area a span{
	text-decoration: underline;
}
#other .usec_otherfield {
	margin-bottom: 250px;
}
#other .usec_otherfield .lead{
	margin-bottom: 60px;
}
#other .usec_otherfield .linkbox{
	width: 100%;
	gap: 40px;
}
#other .usec_otherfield .link{
	font-size: 40px;
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: #fff;
	width: 50%;
	height: 180px;
	padding: 20px;
	z-index: 1;
}
#other .usec_otherfield .link_souzoku{
	background-image: url('/images/other_souzoku.jpg');
}
#other .usec_otherfield .link_jiko{
	background-image: url('/images/other_jiko.jpg');
}
#other .usec_otherfield .link::after{
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.5);
	z-index: -1;
}


  @media only screen and (max-width: 1024px) {
	  #other .usec_otherfield {
		  margin-bottom: 180px;
		}
		#other .usec_otherfield .link {
			font-size: 30px;
			height: 150px;
		}
	}
	@media only screen and (max-width: 768px) {
		#other .usec_can .headtxt {
			margin-bottom: 90px;
		}
		#other .usec_otherfield{
			margin-bottom: 150px;
		}
		#other .usec_otherfield .lead {
			margin-bottom: 30px;
		}
		#other .usec_otherfield .link {
			font-size: 25px;
			height: 130px;
		}
	}
  @media only screen and (max-width: 479px) {
	  #other .usec_can .headtxt {
		  margin-bottom: 60px;
			}
		#other .usec_can .can {
			margin-bottom: 60px;
		}
		#other .usec_can .txt:not(:last-child) {
			margin-bottom: 20px;
		}
		#other .usec_otherfield{
			margin-bottom: 90px;
		}
		#other .usec_otherfield .linkbox{
			flex-direction: column;
			gap: 20px;
		}
		#other .usec_otherfield .link {
			width: 100%;
			font-size: 20px;
			height: 120px;
			padding: 10px;
		}
  	}

/* -----------------------------------------------
	 faq
----------------------------------------------- */
#faq .usec_head .headtxt {
	margin-bottom: 60px;
}
#faq .usec_head .headtxt span{
	color: #f77823;
}
#faq .usec_head .btnwrap{
	gap: 30px;
}
#faq .usec_head .btn{
	max-width: 100%;
	min-width: auto;
	width: calc(100% / 3 - 20px);
}
#faq .usec_head .btn a{
	background: #f77823;
}
#faq .faqbox:not(:last-child){
	margin-bottom: 120px;
}


  @media only screen and (max-width: 1024px) {
	.faqbox {
		padding: 60px 80px;
	}
  }
  @media only screen and (max-width: 768px) {
	.faqbox {
        padding: 50px 60px;
    }
	.faqbox h2 {
		margin-bottom: 60px;
	}
	#faq .faqbox:not(:last-child){
		margin-bottom: 90px;
	}
	#faq .usec_head{
		margin-bottom: 90px;
	}
	#faq .usec_head .btnwrap {
		gap: 15px;
	}
	#faq .usec_head .btn {
		width: calc(100% / 3 - 10px);
	}
	#faq .usec_head .btn a{
		padding: 15px;
	}
}
@media only screen and (max-width: 650px) {
	.faqbox {
		padding: 45px 25px;
    }
	.faqbox h2 {
		margin-bottom: 30px;
	}
	#faq .faqbox:not(:last-child){
		margin-bottom: 60px;
	}
	#faq .lasttxt p br{
		display: none;
	}
	#faq .usec_head {
        margin-bottom: 60px;
    }
	#faq .usec_head .btnwrap {
        gap: 10px;
	}
	#faq .usec_head .btn {
		width: calc(100% / 2 - 5px);
    }
	#faq .usec_head .btn a{
		font-size: 15px;
		padding: 10px 0;
		letter-spacing: -0.1rem;
	}
  }

/* -----------------------------------------------
	 information
----------------------------------------------- */
#information .accesswrap{
	gap: 80px 60px;
}
#information .access{
	width: calc(100% / 2 - 30px);
}
#information .access h3{
	padding-bottom: 10px;
	margin-bottom: 30px;
}
#information .access .img{
	margin-bottom: 20px;
}
#information .access_jr p{
	line-height: 1.8;
}
#information .access_jr p:not(:last-child){
	margin-bottom: 30px;
}



	@media only screen and (max-width: 1024px) {
		#information .usec_office .mapwrap iframe{
			height: 400px;
		}
	}
	@media only screen and (max-width: 768px) {
		#information .usec_office .mapwrap iframe{
			height: 350px;
		}
		#information .accesswrap {
			gap: 40px;
		}
		#information .access {
			width: calc(100% / 2 - 20px);
		}
		#information .access h3{
			margin-bottom: 20px;
		}
	}
	@media only screen and (max-width: 479px) {
		#information .usec_office .mapwrap iframe{
			height: 250px;
		}
		#information .accesswrap {
			gap: 60px;
		}
		#information .access {
			width: 100%;
		}
	}


/* -----------------------------------------------
	 fees
----------------------------------------------- */
#fees .usec_fees .headtxt{
	margin-bottom: 90px;
}
#fees .usec_fees .fees{
	margin-bottom: 90px;
}
#fees .usec_promise{
	margin-bottom: 210px;
}

#fees table {
	width: 100%;
	margin: 30px 0 10px;
}
#fees table th{
	text-align: center;
	background: #eff7fe;
}
#fees table th,
#fees table td{
	border: solid 2px #cdcdcd;
}
#fees .table-2col th {
	width: calc(100% / 3);
}
#fees .table-2col td {
	padding-left: 40px !important;
	width: calc(100% / 3 * 2);
}
#fees .table-3col th{
	width: calc(100% / 3);
}
#fees .table-3col td{
	text-align: center;
	width: calc(100% / 3);
}

  @media only screen and (max-width: 1024px) {
	#fees .usec_promise {
        margin-bottom: 180px;
	}
}
@media only screen and (max-width: 768px) {
	#fees h2{
		margin-bottom: 45px;
	}
	#fees table th,
	#fees table td{
		font-size: 16px;
		padding: 15px 5px;
	}
	.focus-area {
		font-size: 18px;
	}
	#fees .usec_promise {
		margin-bottom: 150px;
	}
}
	@media only screen and (max-width: 650px) {
		#fees h2{
		margin-bottom: 30px;
	}
	#fees .usec_fees .headtxt {
		margin-bottom: 60px;
	}
	#fees .usec_fees .fees {
		margin-bottom: 60px;
	}
	#fees table {
		border-collapse: collapse;
		width: 100%;
		white-space: nowrap;
		text-align: center;
		min-width: 350px;
		margin: 10px 0;
	}
	#fees table tr{
		display: table-row !important;
	}
	#fees table th, #fees table td {
		padding: 10px;
	}
	#fees .table-2col td{
		padding: 10px !important;
	}
	.focus-area {
		font-size: 16px;
		padding: 20px;
	  }
	#fees .usec_promise {
		margin-bottom: 120px;
	}
  }

/* -----------------------------------------------
	 lawyer
----------------------------------------------- */
#lawyer .lawyerhead{
	margin-bottom: 60px;
}
#lawyer .lawyerhead .inner {
	gap: 60px;
}
#lawyer .lawyerhead .inner .img{
	max-width: 280px;
} 
#lawyer .lawyerhead .inner .txts{
	width: calc(100% - 340px);
}
#lawyer .lawyerhead .inner .txts .affiliation{
	font-size: 20px;
}
#lawyer .lawyerhead .inner .txts h2{
	text-align: left;
	font-size: 30px;
	padding-bottom: 15px;
	margin-bottom: 20px;
	border-bottom: solid 2px #333;
}
#lawyer .lawyerhead .inner .txts .message{
	font-size: 50px;
	color: #005bab;
	font-weight: 700;
	line-height: 1.8;
}
#lawyer .headtxt{
	margin-bottom: 120px;
}
#lawyer .introset {
	margin-bottom: 90px;
}
#lawyer .introset ul{
	margin-bottom: 30px;
}
#lawyer .gosoudan .inner{
	gap: 80px;
}
#lawyer .gosoudan .img{
	max-width: 350px;
}


  @media only screen and (max-width: 1024px) {
	#lawyer .lawyerhead .inner {
		gap: 50px;
	}
	#lawyer .lawyerhead .inner .img {
		max-width: 250px;
	}
	#lawyer .lawyerhead .inner .txts .message {
		font-size: 40px;
	}
	#lawyer .lawyerhead .inner .txts {
		width: calc(100% - 300px);
	}
  }
  @media only screen and (max-width: 768px) {
	#lawyer .lawyerhead{
		margin-bottom: 45px;
	}
	#lawyer .lawyerhead .inner {
		gap: 30px;
	}
	#lawyer .lawyerhead .inner .img {
		max-width: 180px;
	}
	#lawyer .lawyerhead .inner .txts .message {
		font-size: 30px;
	}
	#lawyer .lawyerhead .inner .txts {
		width: calc(100% - 210px);
	}
	#lawyer .lawyerhead .inner .txts .affiliation {
		font-size: 16px;
	}
	#lawyer .lawyerhead .inner .txts h2 {
		font-size: 25px;
		padding-bottom: 10px;
		margin-bottom: 10px;
	}
	#lawyer .headtxt {
		margin-bottom: 90px;
	}
	#lawyer .gosoudan{
		padding: 45px 0;
	}
  }
  @media only screen and (max-width: 650px) {
	#lawyer .lawyerhead{
        margin-bottom: 30px;
    }
	#lawyer .headtxt {
		margin-bottom: 60px;
	}
	#lawyer .lawyerhead .inner{
		flex-direction: column;
	}
	#lawyer .lawyerhead .inner .txts {
		width: 100%;
	}
	#lawyer .lawyerhead .inner .txts .affiliation {
		font-size: 14px;
	}
	#lawyer .lawyerhead .inner .txts h2 {
		font-size: 20px;
		border-bottom: solid 1px #333;
	}
	#lawyer .lawyerhead .inner .txts .message {
		font-size: 6vw;
    }
	#lawyer .lawyerhead .inner .txts .message br{
		display: none;
	}
	#lawyer .introset {
		margin-bottom: 60px;
	}
	#lawyer .gosoudan .inner{
		gap: 20px;
		flex-direction: column-reverse;
	}
	#lawyer .gosoudan .head{
		font-size: 9vw;
	}
	#lawyer .gosoudan .txts{
		text-align: center;
	}
	#lawyer .gosoudan .txts .cta_tel_yoyaku{
		margin: auto;
	}
  }

/* -----------------------------------------------
	 contact
----------------------------------------------- */
#contact .formwrap{
	max-width: 1000px;
	margin: auto;
}
#contact .formwrap .lead span{
	color: #f77823;
}
#contact .head{
	text-align: center;
	margin-bottom: 90px;
}
#contact .head .lead{
	margin-bottom: 60px;
}
#contact input,
#contact textarea{
    width: 100%;
    border: solid 1px #AAABAC;
    border-radius: 5px;
    padding: 10px;
    font-size: 20px;
}
#contact label{
    display: flex;
    align-items: center;
}
#contact label input[type="radio"]{
    width: 20px;
    margin-right: 5px;
}
#contact .wpcf7-list-item:first-child{
    margin: 0;
}
#contact dl{
	padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: solid 2px #cdcdcd;
}
#contact dl.dl_last{
	border-bottom: none;
	margin-bottom: 45px;
}
#contact dt{
    min-width: 300px;
}
#contact dt span{
    padding: 5px 15px;
    color: #fff;
    border-radius: 5px;
    margin-right: 20px;
}
#contact dt span.required{
    background: #005bab;
}
#contact dt span.any{
    background: #AAABAC;
}
#contact dd{
    width: calc(100% - 300px);
}
#contact .submit-btn{
    color: #fff;
    background:#000;
    border-radius: 50vh;
    display: inline-block;
    padding: 15px;
    max-width: 300px;
    font-size: 20px;
    transition: 0.5s;
}
#contact .submit-btn:hover{
    cursor: pointer;
    background: var(--main-color1);
    transition: 0.5s;
}
#contact form .cta_tel a{
	background: #f77823;
}
#contact form .mw-wp-form__buttons{
	gap: 30px;
	display: flex;
	justify-content: center;
}
#contact form .mw-wp-form__buttons button[name="submitBack"]{
	background: #AAABAC !important;
}
#contact form button{
	display: inline-block;
    color: #fff;
    background-color: #005bab;
    border-radius: 50vh;
    width: 100%;
    font-weight: 600;
    padding: 20px;
    line-height: 1.8;
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 500;
	max-width: 320px;
    min-width: 320px;
	margin: auto;
	font-size: 22px;
}
#contact form .thanks_txt{
	text-align: center;
}

@media only screen and (max-width: 1024px) {
  }
  @media only screen and (max-width: 768px) {
	#contact form button{
		font-size: 20px;
	}
  }
  @media only screen and (max-width: 650px) {
	#contact .head {
		margin-bottom: 60px;
	}
	#contact dl{
		flex-direction: column;
	}
	#contact dt {
		margin-bottom: 10px;
    }
	#contact dt span{
		margin-right: 10px;
		padding: 3px 10px;
		font-weight: normal;
	}
	#contact dd {
		width: 100%;
	}
	#contact dl.dl_last {
		margin-bottom: 20px;
	}
	#contact form button{
		font-size: 18px;
	}
  }

/* -----------------------------------------------
	 news
----------------------------------------------- */
#news.archive .kijiset .ttl{
	font-size: 30px;
	margin: unset;
	text-align: left;
}
#news.archive .articlewrap,
#column.archive .articlewrap{
	margin-bottom: 90px;
}
#news.archive .pagination,
#column.archive .pagination{
	gap: 20px;
}
#news.archive .pagination .page-numbers,
#column.archive .pagination .page-numbers{
	display: flex;
    align-items: center;
    justify-content: center;
	font-weight: normal;
	width: 60px;
    height: 60px;
	border: solid 2px #cdcdcd;
}
#news.archive .pagination .page-numbers:hover,
#column.archive .pagination .page-numbers:hover{
	background: #005bab;
	color: #fff;
	opacity: 1;
}
#news.archive .pagination .page-numbers.prev,
#column.archive .pagination .page-numbers.prev,
#news.archive .pagination .page-numbers.next,
#column.archive .pagination .page-numbers.next{
	width: 80px;
}
#news.archive .pagination .page-numbers.current,
#column.archive .pagination .page-numbers.current{
	background: #005bab;
	border: solid 2px #005bab;
	color: #fff;
	font-weight: 500;
}


#news.single article,
#column.single article{
	padding: 80px 60px 100px;
    background: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    border-radius: 30px;
}
#news.single article .inner,
#column.single article .inner{
	max-width: 900px;
	margin: auto;
}
#news.single article .head,
#column.single article .head{
	margin-bottom: 90px;
}
#news.single article .head h1,
#column.single article .head h1{
	margin-bottom: 30px;
	font-size: 35px;
    letter-spacing: 0;
}
#news.single article .head .cate ,
#column.single article .head .cate {
	font-size: 16px;
	background: #005bab;
	color: #fff;
	padding: 8px 15px;
	border-radius: 10px;
	margin-right: 15px;
	line-height: 1;
	text-align: center;
}
#column.single article .head .cate a{
	color: #fff;
}
#news.single article .head .date ,
#column.single article .head .date {
	margin-right: 20px;
	font-size: 16px;
}
#news.single article .content,
#column.single article .content{
	margin-bottom: 90px;
}

#news.single article .content h2,
#column.single article .content h2{
	background: #005bab;
	color: #fff;
	font-size: 30px;
	margin-bottom: 45px;
	text-align: left;
	margin-top: 90px;
    padding: 15px 20px;
}
#news.single article .content h3,
#column.single article .content h3{
	color: #005bab;
	font-size: 25px;
	padding-bottom: 5px;
	margin-top: 90px;
	margin-bottom: 15px;
	border-bottom: solid 2px #005bab;
}
#news.single article .content h4,
#column.single article .content h4{
	font-size: 20px;
	margin-bottom: 5px;
}
#news.single article .content p,
#column.single article .content p{
	font-size: 20px;
	margin-bottom: 45px;
	line-height: 1.8;
}
#news.single article .content p.table_head,
#column.single article .content p.table_head{
	margin-bottom: 10px;
}
#news.single article .content p.note,
#column.single article .content p.note{
	font-size: 85%;
    line-height: 1.3;
}
#news.single article .content .top_head,
#column.single article .content .top_head{
	margin-top: 0;
}
#news.single article .content ul,
#column.single article .content ul,
#news.single article .content ol,
#column.single article .content ol{
	margin: 45px 0;
}
#news.single article .content li,
#column.single article .content li{
	list-style: upper-alpha;
}
#news.single article .content ul li,
#column.single article .content ul li{
	list-style: disc;
}
#news.single article .content li,
#column.single article .content li{
    padding-left: 0px;
    text-indent: 0;
	margin-bottom: 10px;
    margin-left: 2rem;
    line-height: 1.5;
	font-size: 20px;
}
#news.single article .content table,
#column.single article .content table{
	margin-bottom: 45px;
}
#news.single article .content table th,
#column.single article .content table th{
	background: #eff7fe;
}
#news.single article .content table thead,
#column.single article .content table thead,
#news.single article .content table th,
#column.single article .content table th,
#news.single article .content table td,
#column.single article .content table td{
	border: solid 2px #cdcdcd;
}
#news.single article .content table th,
#column.single article .content table th,
#news.single article .content table td,
#column.single article .content table td{
	font-size: 18px;
}
#news.single article .content strong,
#column.single article .content strong{
	color: #f77823;
}
#news.single article .content .mtnone,
#column.single article .content .mtnone{
	margin-top: 0 !important;
}
#news.single article .content .mbnone,
#column.single article .content .mbnone{
	margin-bottom: 0 !important;
}
#news.single article .content hr,
#column.single article .content hr{
	margin-bottom: 45px;
}

@media only screen and (max-width: 1024px) {
  }
  @media only screen and (max-width: 768px) {
	#news.archive .kijiset .ttl, #column.archive .kijiset .ttl{
		font-size: 25px;
	}
	#news.archive .pagination .page-numbers,
	#column.archive .pagination .page-numbers {
		width: 50px;
		height: 50px;
	}
	#news.single article, #column.single article {
    	padding: 60px 45px 60px;
	}
	#news.single article .head h1, #column.single article .head h1 {
		font-size: 30px;
		margin-bottom: 20px;
	}
	#news.single article .content h2, #column.single article .content h2{
		font-size: 25px;
	}
	#news.single article .content h3, #column.single article .content h3{
		font-size: 24px;
	}
	#news.single article .content h4,
	#column.single article .content h4{
		font-size: 18px;
	}
	#news.single article .content p,
	#column.single article .content p,
	#news.single article .content table th,
	#column.single article .content table th,
	#news.single article .content table td,
	#column.single article .content table td,
	#news.single article .content li,
	#column.single article .content li{
		font-size: 18px;
	}
}
@media only screen and (max-width: 650px) {
	#news.archive .kijiset .ttl, #column.archive .kijiset .ttl{
		font-size: 18px;
        letter-spacing: -0.025rem;
	}
	#news.archive .pagination .page-numbers,
	#column.archive .pagination .page-numbers {
		width: 40px;
		height: 40px;
	}
	#news.archive .pagination, #column.archive .pagination {
		gap: 15px;
	}
	#news.single .cwrap , #column.single .cwrap {
		padding: 0 20px;
	}
	#news.single article .head, #column.single article .head {
    margin-bottom: 60px;
	}
	#news.single article, #column.single article {
		padding: 30px 25px;
	}
	#news.single article .head h1, #column.single article .head h1 {
		margin-bottom: 20px;
		font-size: 22px;
		letter-spacing: -0.1rem;
	}
	#news.single article .head .cate, #column.single article .head .cate{
		font-size: 14px;
		padding: 5px 10px;
		border-radius: 7px;
		margin-right: 10px;
	}
	#news.single article .head .date, #column.single article .head .date{
		font-size: 14px;
	}
	#news.single article .content, #column.single article .content {
		margin-bottom: 60px;
	}
	#news.single article .content h2, #column.single article .content h2 {
		font-size: 20px;
		padding: 10px;
		font-weight: 600;
		margin-bottom: 30px;
		letter-spacing: -0.025rem;
		margin-top: 60px;
	}
	#news.single article .content h3, #column.single article .content h3{
		font-size: 18px;
		letter-spacing: -0.025rem;
		margin-top: 60px;
	}
	#news.single article .content h4,
	#column.single article .content h4{
		font-size: 16px;
	}
	#news.single article .content p,
	#column.single article .content p{
		font-size: 16px;
		margin-bottom: 30px;
		line-height: 1.7;
	}
	#news.single article .content p.table_head, #column.single article .content p.table_head {
		margin-bottom: 0;
	}
	#news.single article .content table,
	#column.single article .content table {
		border-collapse: collapse;
		width: 100%;
		white-space: nowrap;
		text-align: center;
		min-width: 350px;
		margin: 10px 0 20px;
	}
	#news.single article .content table,
	#column.single article .content table{
		min-width: 500px;
	}
	#news.single article .content table tr,
	#column.single article .content table tr{
		display: table-row !important;
	}
	#news.single article .content table th,
	#column.single article .content table th,
	#news.single article .content table td,
	#column.single article .content table td{
		font-size: 16px;
		line-height: 1.5;
		white-space: normal;
		text-align: left;
	}
	#news.single article .content ul, #column.single article .content ul ,
	#news.single article .content ol, #column.single article .content ol {
		margin: 30px 0;
	}
	#news.single article .content li, #column.single article .content li{
		margin-left: 1.5rem;
		font-size: 16px;
	}
	#news.single article .content hr,
	#column.single article .content hr{
		margin-bottom: 30px;
	}
}

/* -----------------------------------------------
	 column
----------------------------------------------- */
#column.archive .articlewrap {
	gap: 40px;
}
#column.archive .articlewrap article.kijiset{
	width: calc(100% / 3 - 30px);
}
#column.archive .articlewrap article.kijiset .news{
	padding: 0 0 20px;
	border: none;
}
#column.archive .articlewrap article.kijiset .thumnail {
	margin-bottom: 15px;
}
#column.archive .articlewrap article.kijiset .thumnail img{
	height: 200px;
	object-fit: cover;
}
#column.archive .articlewrap article.kijiset .ttl{
	font-size: 20px;
	margin-bottom: 10px;
}
#column.archive .articlewrap article.kijiset .txt{
	font-size: 13px;
	line-height: 1.5;
}
#column.archive .tags, #column .post-tags *{
	font-size: 15px;
}
#column.archive .tags,
#column .post-tags .post-tags__list{
	gap: 5px 10px;
    line-height: 1.3;
}
#column.archive .tags{
	margin-bottom: 15px;
}
#column.archive .tags span{
	padding: 2px 7px;
	border: solid 1px #cdcdcd;
	border-radius: 50vh;
}
#column.archive .tags span,
#column .post-tags .post-tags__list .post-tags__item a{
	color: #005bab;
}
#column.single .pankuzu{
	margin-top: 30px;
	margin-bottom: 90px;
}
#column.single  article .head .meta{
	margin-bottom: 15px;
}
#column.single .thumnail{
	position: relative;
	top: -30px;
	box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
}
#column.single .thumnail img{
	height: 300px;
	object-fit: cover;
}

@media only screen and (max-width: 1024px) {
	#column.archive .articlewrap article.kijiset .thumnail img {
    height: 180px;
	}
  }
  @media only screen and (max-width: 768px) {
	  #column.archive .articlewrap article.kijiset {
		  width: calc(100% / 2 - 20px);
	  }
	#column.single .thumnail img{
		height: 200px;
	}
	#column.archive .articlewrap article.kijiset .ttl {
    	font-size: 18px;
	}
	#column.archive .tags, #column .post-tags *{
		font-size: 13px;
	}
  }
  @media only screen and (max-width: 479px) {
	  #column.archive .articlewrap article.kijiset .thumnail img {
		  height: 50vw;
    }
	#column.archive .articlewrap article.kijiset .ttl {
		font-size: 16px;
		margin-bottom: 5px;
	}
	#column.archive .articlewrap article.kijiset .txt{
		font-size: 11px;
	}
	#column.archive .articlewrap article.kijiset {
		width: 100%;
	}
	#column.single .pankuzu{
		margin-top: 20px;
		margin-bottom: 60px;
	}
	#column.single .thumnail {
		top: -30px;
	}
	#column.single .thumnail img{
		height: 30vw;
	}
	#column.archive .tags, #column .post-tags *{
		font-size: 12px;
	}
  }

/* -----------------------------------------------
	 policy
----------------------------------------------- */
#policy .subttl{
	text-align: left;
}
#policy .usec_policy .headtxt ,
#policy .usec_policy .policy{
	margin-bottom: 90px;
}
#policy .usec_policy .policy .contact_info{
	margin-top: 30px;
	line-height: 1.8;
}

@media only screen and (max-width: 1024px) {
  }
  @media only screen and (max-width: 768px) {
  }
  @media only screen and (max-width: 650px) {
	#policy .usec_policy .headtxt ,
	#policy .usec_policy .policy{
		margin-bottom: 60px;
	}
  }

/* -----------------------------------------------
	 under404
----------------------------------------------- */
.under404 .txts404 p{
	margin-bottom: 30px;
}
  @media only screen and (max-width: 1024px) {
  }
  @media only screen and (max-width: 768px) {
  }
  @media only screen and (max-width: 479px) {
  }



/* -----------------------------------------------
	 under
----------------------------------------------- */

.under h3.subttl,
.under .subttl{
	color: #005bab;
	font-size: 30px;
	border-bottom: solid 2px #005bab;
	padding-bottom: 10px;
	margin-bottom: 10px;
}
  @media only screen and (max-width: 1024px) {
  }
  @media only screen and (max-width: 768px) {
		.under h3.subttl,
		.under .subttl{
			font-size: 24px !important;
		}
	}
	@media only screen and (max-width: 479px) {
		.under h3.subttl ,
		.under .subttl {
			letter-spacing: 0 !important;
			font-size: 20px !important;
			padding-bottom: 5px !important;
		}
	}