@charset "UTF-8";
/* CSS Document */
/*--------------------
01.top
02.company
03.qa
04.hajimete
04-0.hajimete_under_page#others 04-1.aboutus
05.office_under_page
06.houjin
07.column
07-1.column_detail
08.recruit
09.contact
09-01.contact_hojin(contact_under_page)
10.privacypolicy
11.error404
--------------------*/

/*----------
01.top
----------*/
#top .sub_block .sub_box ul li + li::before,
.error404 .sub_block .sub_box ul li + li::before{
background-color: #000;
}

#top .sub_block .sub_box ul li a,
#top .sub_block .sub_box ul li button{
color: #000;
}
.error404 .sub_block .sub_box ul li a,
.error404 .sub_block .sub_box ul li button{
color: #000;
}

.header_top .sub_block .sub_box ul li a:hover,
.header_top .sub_block .sub_box ul li button:hover {
background-color: rgba(255,255,255,.5);
}

#top .mv_area .mv_block {
position: relative;
padding-bottom: 588px;
background: url(/contents/images/mv_img01-v2.jpg) no-repeat center/cover;
}

#top .mv_area .mv_block .contents_in {
position: relative;
}

#top .mv_area .mv_block .txt_box {
position: absolute;
top: calc(145px + 13.8%);
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
max-width: 980px;
width: 96%;
padding-left: 26px;
}

#top .mv_area .mv_block .txt_box .txt {
display: block;
position: relative;
z-index: 1;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
padding: 17px 36px 17px 24px;
}

#top .mv_area .mv_block .txt_box .txt + .txt {
margin-top: 10px;
}

#top .mv_area .mv_block .txt_box .txt::before {
content: "";
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 0;
height: 100%;
background-color: #fff;
opacity: .5;
transition: .6s ease-in-out .2s;
}
#top .mv_area .mv_block .txt_box .txt.t02:before {
transition-delay: .4s;
}
#top .mv_area .mv_block .txt_box .txt.t03:before {
transition-delay: .6s;
}

#top .mv_area .mv_block .txt_box.load .txt::before {
width: 100%;
}

#top .mv_area .mv_block .txt_box .txt span {
display: inline-block;
/* opacity: 0;
transition: .5s ease-in-out 1.4s; */
}

#top .mv_area .mv_block .txt_box.load .txt span {
/* opacity: 1; */
}

#top .mv_area .mv_block .txt_box .txt.t01 span {
width: 389px;
}

#top .mv_area .mv_block .txt_box .txt.t02 span {
width: 461px;
}

#top .mv_area .mv_block .txt_box .txt.t03 span {
width: 299px;
}

#top .mv_area .mv_block .txt_box .txt span img {
opacity: 0;
-moz-transition: -moz-transform 0.5s linear 1s;
-webkit-transition: -webkit-transform 0.5s linear 1s;
-o-transition: -o-transform 0.5s linear 1s;
-ms-transition: -ms-transform 0.5s linear 1s;
transition: transform 0.5s linear 1s;
-webkit-animation-duration: 1.2s;
animation-duration: 1.2s;
-webkit-animation-fill-mode: both;
animation-fill-mode: both;
animation-delay: 1.4s;
}

@-webkit-keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }

  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
@keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    -ms-filter: blur(15px);
    -o-filter: blur(15px);
    filter: blur(15px);
  }

  to {
      opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}

#top .mv_area .mv_block .txt_box.load .txt span img {
-webkit-animation-name: imageBlur;
animation-name: imageBlur;
opacity: 1;
transition: .8s;
}

#top .news_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
/* height: 83px; */
height: auto;
min-height: 83px;
}

#top .news_block .st {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
width: 132px;
/* height: 100%; */
border-radius: 0 100px 100px 0;
background-color: #0D56A5;
color: #fff;
font-size: calc(26rem / 16);
font-weight: 500;
font-family: "Barlow Condensed", sans-serif;
}

#top .news_block .news_wp {
display: flex;
align-items: center;
height: 100%;
min-height: 6em;
}
#top .news_block .news_box {
/*width: calc(100% - 132px);*/
}
#top .news_block .pageListItemList{
	margin: 0 !important;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-around;
	flex-wrap: nowrap;
	align-items: center;
}
#top .news_block .pageListItemBlock-type01{
	margin: 0 !important;
	font-weight: 500;
}
#top .news_block .pageListTitle{
	margin: 0 !important;
	width: 15%;
    text-align: center;
}
#top .news_block .pageListText{
	margin: 0 !important;
	width: 80%;
	padding-right: 70px;
}
#top .news_block .news_box .news_list {
height: 100%;
}

#top .news_block .news_box .news_list li {
height: 100%;
}

#top .news_block .news_box .news_list li a {
display: inline-flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
height: 100%;
padding-left: 40px;
font-weight: 500;
transition: .3s;
}

#top .news_block .news_box .news_list li a[href]:hover {
opacity: .7;
}

#top .news_block .news_box .news_list li a .date {
width: 142px;
}

#top .news_block .news_box .news_list li a .ttl {
position: relative;
max-width: calc(100% - 142px);
padding-right: 70px;
/* overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
max-height: 1.4em; */
line-height: 1.4;
}

#top .news_block .news_box .news_list li a[href] .ttl::before {
content: "";
position: absolute;
top: 50%;
right: 30px;
width: 10px;
height: 10px;
border-top: 2px solid #213679;
border-right: 2px solid #213679;
-webkit-transform: translateY(-50%) rotate(45deg);
transform: translateY(-50%) rotate(45deg);
transition: .3s;
}

#top .news_block .news_box .news_list li a[href]:hover .ttl::before {
right: 25px;
}

#top .news_block .news_box .news_list .slick-list,
#top .news_block .news_box .news_list .slick-track {
height: 100%;
}

#top .cnt_area01 .bnr_box {
width: 50%;
height: 160px;
}

#top .cnt_area01 .bnr_box a {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
position: relative;
z-index: 1;
width: 100%;
height: 100%;
color: #fff;
font-size: calc(32rem / 16);
font-family: "shingopro";
font-weight: 700;
overflow: hidden;
}

#top .cnt_area01 .bnr_box a::before {
content: "";
position: absolute;
z-index: -1;
top: 50%;
left: 50%;
-webkit-transform: translate(-25%, -50%);
transform: translate(-25%, -50%);
width: 100%;
height: 100%;
opacity: 0;
}

#top .cnt_area01 .bnr_box.is_on a::before {
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
opacity: 1;
-webkit-transition: .6s;
transition: .6s;
}

#top .cnt_area01 .bnr_box a:hover::before {
-webkit-transform: translate(-50%, -50%) scale(1.05);
transform: translate(-50%, -50%) scale(1.05);
-webkit-transition: .3s;
transition: .3s;
}

#top .cnt_area01 .bnr_box a::after {
content: "";
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: .6;
}

#top .cnt_area01 .bnr_box.job a::before {
background: url(/contents/images/bnr_img01.jpg) no-repeat 40% center/cover;
}

#top .cnt_area01 .bnr_box.job a::after {
background-color: #0D56A5;
}

#top .cnt_area01 .bnr_box.houjin a::before {
background: url(/contents/images/bnr_img02.jpg) no-repeat center 20%/cover;
}

#top .cnt_area01 .bnr_box.houjin a::after {
background-color: #2E8DC5;
}

#top .cnt_area02 {
padding: 50px 0;
}

#top .cnt_area02 .contents_in {
max-width: 1080px;
}

#top .cnt_area02 .ttl_ptn01 {
margin-bottom: 30px;
}

#top .cnt_area02 .office_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

#top .cnt_area02 .office_block .ofc_box {
width: 24.1%;
opacity: 0;
transform: translateX(30px);
transition: .4s;
}

#top .cnt_area02 .office_block .ofc_box:nth-child(2) {
transition-delay: .1s;
}
#top .cnt_area02 .office_block .ofc_box:nth-child(3) {
transition-delay: .2s;
}
#top .cnt_area02 .office_block .ofc_box:nth-child(4) {
transition-delay: .3s;
}

#top .cnt_area02 .office_block.is_on .ofc_box {
opacity: 1;
transform: translateX(0);
}

#top .cnt_area02 .office_block .ofc_box a {
display: block;
position: relative;
z-index: 1;
padding: 50px 0 40px;
border-radius: 10px;
color: #fff;
text-align: center;
overflow: hidden;
}

#top .cnt_area02 .office_block .ofc_box a::before {
content: "";
position: absolute;
z-index: -1;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width: 100%;
height: 100%;
background-repeat: no-repeat;
background-position: center;
background-size: cover;
background-color: rgb(45,107,175);
background: linear-gradient(180deg, rgba(45,107,175,1) 0%, rgba(33,54,121,1) 100%);
transition: .5s;
}

/* 個別写真背景
#top .cnt_area02 .office_block .ofc_box.osaka a::before {
 background-image: url(/contents/images/office_img01.jpg);
}
#top .cnt_area02 .office_block .ofc_box.sanda a::before {
background-image: url(/contents/images/office_img02.jpg);
}
#top .cnt_area02 .office_block .ofc_box.tanba a::before {
background-image: url(/contents/images/office_img03.jpg);
}
#top .cnt_area02 .office_block .ofc_box.ono a::before {
background-image: url(/contents/images/office_img04.jpg);
}
 */

#top .cnt_area02 .office_block .ofc_box a:hover::before {
-webkit-transform: translate(-50%, -50%) scale(1.1);
transform: translate(-50%, -50%) scale(1.1);
opacity: .7;
}

#top .cnt_area02 .office_block .ofc_box a::after {
content: "";
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #0D56A5;
opacity: .7;
}

#top .cnt_area02 .office_block .ofc_box a .en {
font-size: calc(40rem / 16);
font-family: "dinpro";
font-weight: 700;
}

#top .cnt_area02 .office_block .ofc_box a .ja {
margin-top: 6px;
font-size: calc(24rem / 16);
font-weight: 700;
}

#top .cnt_area03 {
position: relative;
z-index: 1;
padding: 58px 0 91px;
color: #fff;
}

#top .cnt_area03::before {
content: "";
position: absolute;
z-index: -1;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width: 100%;
height: 100%;
background: url(/contents/images/lnk_bg01.jpg) no-repeat center/cover;
opacity: 0;
transition: .8s;
}

#top .cnt_area03.is_on::before {
opacity: 1;
}

#top .cnt_area03::after {
content: "";
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #0D56A5;
opacity: 0;
transform: translateX(-100%);
transition: 1s;
}

#top .cnt_area03.is_on::after {
opacity: .9;
transform: translateX(0);
}

#top .cnt_area03 .img_txt_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
opacity: 0;
transform: translateX(100px);
transition: .4s;
}

#top .cnt_area03 .img_txt_block:nth-child(1) {
transition-delay: .8s;
}

#top .cnt_area03 .img_txt_block:nth-child(2) {
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
-webkit-flex-direction: row-reverse;
-ms-flex-direction: row-reverse;
flex-direction: row-reverse;
transform: translateX(-100px);
}

#top .cnt_area03.is_on .img_txt_block:nth-child(1) {
opacity: 1;
transform: translateX(0);
}

#top .cnt_area03 .img_txt_block.is_on:nth-child(2) {
opacity: 1;
transform: translateX(0);
}

#top .cnt_area03 .img_txt_block + .img_txt_block {
margin-top: 40px;
}

#top .cnt_area03 .img_txt_block .img_box {
width: 40.8%;
}

#top .cnt_area03 .img_txt_block .img_box a {
display: block;
transition: .3s;
}

#top .cnt_area03 .img_txt_block .img_box a:hover {
opacity: .7;
}

#top .cnt_area03 .img_txt_block .img_box img {
border-radius: 10px;
}

#top .cnt_area03 .img_txt_block .txt_box {
width: 52.7%;
margin-top: 65px;
}

#top .cnt_area03 .img_txt_block .txt_box h2 {
margin-bottom: 15px;
font-size: calc(45rem / 16);
font-family: "shingopro";
font-weight: 700;
}

#top .cnt_area03 .img_txt_block .txt_box p {
/* font-size: calc(14rem / 16); */
font-weight: 500;
/* line-height: 1.7; */
line-height: 2;
}

#top .cnt_area03 .img_txt_block .txt_box .more_link {
margin-top: 30px;
text-align: right;
}

#top .cnt_area03 .img_txt_block .txt_box .more_link a {
position: relative;
padding: 5px 35px 5px 5px;
color: #fff;
/* font-size: calc(14rem / 16); */
}

#top .cnt_area03 .img_txt_block .txt_box .more_link a::after {
content: "";
position: absolute;
top: 50%;
right: 0;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
width: 22px;
height: 22px;
background: url(/contents/images/arrow_right01.png) no-repeat center/contain;
pointer-events: none;
-webkit-transition: .3s;
transition: .3s;
}

#top .cnt_area03 .img_txt_block .txt_box .more_link a:hover::after {
right: -4px;
}

#top .cnt_area04 {
padding: 85px 0 64px;
}

#top .cnt_area04 .ttl_ptn01 {
margin-bottom: 34px;
}

#top .cnt_area04 .ttl_ptn01 h2 {
font-size: calc(60rem / 16);
font-family: "dinpro";
line-height: 1.2;
}

#top .cnt_area04 .cmn_clm_block .pageListItemBlock {
opacity: 0;
transform: translateY(50px);
transition: .3s;
	display: flex;
	flex-wrap: wrap;
	gap: 2%;
}
#top .cnt_area04 .cmn_clm_block .pageListItemBlock .pageListItemBlock-type03{
	float: inherit !important;
	margin: 0 !important;
	width: 32%;
}
#top .cnt_area04 .cmn_clm_block .pageListItemBlock:nth-child(2) {
transition-delay: .1s;
}
#top .cnt_area04 .cmn_clm_block .pageListItemBlock:nth-child(3) {
transition-delay: .2s;
}

#top .cnt_area04 .cmn_clm_block.is_on .pageListItemBlock {
opacity: 1;
transform: translateY(0);
}
.pageListItemBlock-type03 div.pageListThumbNail img{
	border-radius: 10px;
}



/*----------
02.company
----------*/
.company .cmn_links_block {
margin-top: 80px;
}

.company .bg_blue {
background-color: #ECF1F7;
}

.company .cnt_area01 {
padding: 80px 0 140px;
}

.company .cnt_area01 .ttl_ptn01 {
margin-bottom: 40px;
}

.company .cnt_area01 .first_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.company .cnt_area01 .first_block .img_box {
width: 35.7%;
}

.company .cnt_area01 .first_block .txt_box {
width: 61.4%;
font-size: calc(18rem / 16);
line-height: 2;
}

.company .cnt_area01 .ove_block {
margin-top: 90px;
}

.company .cnt_area01 .ove_block + .ove_block {
margin-top: 120px;
}

.company .cnt_area01 .ove_block h3 {
margin-bottom: 45px;
}

.company .cnt_area01 .ove_block .ove_box + .ove_box {
margin-top: 80px;
}

.company .cnt_area01 .ove_block .ove_box h4 {
margin-bottom: 25px;
color: #0D56A5;
font-size: calc(24rem / 16);
font-family: "shingopro";
font-weight: 500;
line-height: 1.4;
}

.company .cnt_area01 .ove_block .ove_box dl,
.company .cnt_area01 .ove_block .ove_box .box_2cols_dl {
line-height: 1.75;
}

.company .cnt_area01 .ove_block .ove_box dl .wrap,
.company .cnt_area01 .ove_block .ove_box .box_2cols_dl .wrap {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.company .cnt_area01 .ove_block .ove_box dl dt,
.company .cnt_area01 .ove_block .ove_box .box_2cols_dl .cell_dt {
width: 156px;
padding: 19px 20px;
border-bottom: 1px solid #707070;
}

.company .cnt_area01 .ove_block .ove_box dl .wrap:first-child dt,
.company .cnt_area01 .ove_block .ove_box .box_2cols_dl .wrap:first-child .cell_dt {
border-top: 1px solid #707070;
}

.company .cnt_area01 .ove_block .ove_box dl dd,
.company .cnt_area01 .ove_block .ove_box .box_2cols_dl .cell_dd {
width: calc(100% - 156px - 3%);
padding: 19px 20px;
border-bottom: 1px solid #707070;
}

.company .cnt_area01 .ove_block .ove_box dl .wrap:first-child dd,
.company .cnt_area01 .ove_block .ove_box .box_2cols_dl .wrap:first-child .cell_dd {
border-top: 1px solid #707070;
}



.company .cnt_area01 .ove_block .ove_box .txt_link {
color: #0E498F;
}

.company .cnt_area01 .ove_block .ove_box .txt_link:hover {
text-decoration: underline;
}

.company .cnt_area01 .ove_block .ove_box .address {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.company .cnt_area01 .ove_block .ove_box .address .add {
width: calc(100% - 100px - 20px);
line-height: 1.5;
}

.company .cnt_area01 .ove_block .ove_box .address .map {
width: 100px;
height: 40px;
}

.company .cnt_area01 .ove_block .ove_box .address .map a {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
position: relative;
width: 100%;
height: 100%;
border-radius: 100px;
background-color: #0E498F;
color: #fff;
font-size: calc(14rem / 16);
font-weight: 700;
}

.company .cnt_area01 .ove_block .ove_box .address .map a::before {
content: "";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: calc(100% - 2px);
height: calc(100% - 2px);
border-radius: 100px;
border: 1px solid #0D56A5;
transition: 0s;
}

.company .cnt_area01 .ove_block .ove_box .address .map a:hover::before {
width: calc(100% + 15px);
height: calc(100% + 15px);
opacity: 0;
transition: .5s;
}

.company .cnt_area02 {
padding: 95px 0 80px;
}

.company .cnt_area02 .ttl_ptn01 {
margin-bottom: 45px;
}

.company .cnt_area02 .mes_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
-webkit-flex-direction: row-reverse;
-ms-flex-direction: row-reverse;
flex-direction: row-reverse;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.company .cnt_area02 .mes_block .img_box {
width: 29.2%;
}

.company .cnt_area02 .mes_block .img_box img {
border-radius: 10px;
}

.company .cnt_area02 .mes_block .txt_box {
width: 66.3%;
}

.company .cnt_area02 .mes_block .txt_box .em_text {
width: 100%;
max-width: 522px;
margin-bottom: 38px;
}

.company .cnt_area02 .mes_block .txt_box p {
line-height: 2;
}

.company .cnt_area02 .mes_block .txt_box .right {
margin-top: 40px;
line-height: 1.5;
text-align: right;
}

.company .cnt_area02 .mes_block .txt_box .name {
width: 100%;
max-width: 250px;
margin: 13px 0 0 auto;
}

.company .cnt_area03 {
padding: 110px 0;
}

.company .cnt_area03 .ttl_ptn01 {
margin-bottom: 40px;
}

.company .cnt_area03 .philosophy_text {
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
margin: 0 auto;
font-size: calc(36rem / 16);
line-height: 1.66;
}

.company .cnt_area04 {
padding: 95px 0 118px;
}

.company .cnt_area04 .ttl_ptn01 {
margin-bottom: 68px;
}

.company .cnt_area04 dl,
.company .cnt_area04 .box_2cols_dl {
max-width: 832px;
margin: 0 auto;
font-size: calc(14rem / 16);
line-height: 3;
}

.company .cnt_area04 dl .wrap,
.company .cnt_area04 .box_2cols_dl .wrap {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.company .cnt_area04 dl dt,
.company .cnt_area04 .box_2cols_dl .cell_dt {
width: 130px;
padding: 0 15px;
border-bottom: 1px solid #E0E0E0;
}

.company .cnt_area04 dl .wrap:first-child dt,
.company .cnt_area04 .box_2cols_dl .wrap:first-child .cell_dt  {
border-top: 1px solid #707070;
}

.company .cnt_area04 dl dd,
.company .cnt_area04 .box_2cols_dl .cell_dd {
width: calc(100% - 130px - 3.8%);
padding: 0 30px;
border-bottom: 1px solid #E0E0E0;
}

.company .cnt_area04 dl .wrap:first-child dd,
.company .cnt_area04 .box_2cols_dl .wrap:first-child .cell_dd {
border-top: 1px solid #707070;
}




/*----------
03.qa
----------*/
.qa .cnt_area01 {
padding: 70px 0 140px;
}

.qa .cnt_area01 .cmn_first_text {
margin-bottom: 75px;
}

.qa .cnt_area01 .qa_arae .tab_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
padding: 0 20px;
border-bottom: 1px solid #707070;
}

.qa .cnt_area01 .qa_arae .tab_block .tab {
width: 47.8%;
margin-bottom: -1px;
padding: 17px 0;
border-radius: 10px 10px 0 0;
border: 1px solid #707070;
background-color: #0D56A5;
color: #fff;
font-size: calc(32rem / 16);
font-weight: 700;
font-family: "shingopro";
line-height: 1.4;
text-align: center;
}

.qa .cnt_area01 .qa_arae .tab_block .tab.active {
position: relative;
background-color: #fff;
color: #0D56A5;
}

.qa .cnt_area01 .qa_arae .tab_block .tab.active::before {
content: "";
position: absolute;
bottom: -1.5px;
left: 0;
width: 100%;
height: 2px;
background-color: #fff;
}

.qa .cnt_area01 .qa_arae .tab_block .tab:not(.active) {
cursor: pointer;
}

.qa .cnt_area01 .qa_arae .qa_block {
padding-top: 60px;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box {
display: none;
padding: 0 20px;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box.active {
display: block;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp + .qa_wrp {
margin-top: 60px;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp h3 {
margin-bottom: 40px;
color: #0D56A5;
font-size: calc(24rem / 16);
font-weight: 500;
font-family: "shingopro";
line-height: 1.4;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li {
padding: 0 20px;
border-bottom: 1px solid #D3D3D3;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li:first-child {
border-top: 1px solid #D3D3D3;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li .q {
position: relative;
padding: 18px 45px 18px 0;
line-height: 1.5;
cursor: pointer;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li .q::before, .qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li .q::after {
content: "";
position: absolute;
top: 50%;
right: 20px;
-webkit-transform: translate(50%, -50%);
transform: translate(50%, -50%);
width: 18px;
height: 2px;
background-color: #000;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li .q::after {
-webkit-transform: translate(50%, -50%) rotate(-90deg);
transform: translate(50%, -50%) rotate(-90deg);
transition: .3s;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li .q.open::after {
-webkit-transform: translate(50%, -50%);
transform: translate(50%, -50%);
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li .a {
display: none;
padding: 20px 0;
border-top: 1px solid #eee;
line-height: 1.8;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li .a a {
color: #0D56A5;
}

.qa .cnt_area01 .qa_arae .qa_block .qa_box .qa_wrp .qa_list li .a a:hover {
text-decoration: underline;
}




/*----------
04.hajimete
----------*/
.hajimete .cnt_area01 {
padding: 70px 0 140px;
}

.hajimete .cnt_area01 .cmn_first_text {
margin-bottom: 90px;
}

.hajimete .cnt_area01 .about_block .ttl_ptn02 {
margin-bottom: 70px;
}

.hajimete .cnt_area01 .about_block .flex_box {
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.hajimete .cnt_area01 .about_block .img_box {
width: 30%;
padding-top: 10px;
}

.hajimete .cnt_area01 .about_block .img_box img {
border-radius: 10px;
}

.hajimete .cnt_area01 .about_block .txt_box {
width: 65.2%;
}

.hajimete .cnt_area01 .about_block .txt_box p {
font-size: calc(18rem / 16);
line-height: 2;
}

.hajimete .cnt_area01 .about_block .txt_box .btn_ptn01 {
margin-top: 25px;
margin-left: auto;
}

.hajimete .cnt_area01 .oth_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin-top: 76px;
}

.hajimete .cnt_area01 .oth_block .oth_box {
width: 30.6%;
margin-left: 4.1%;
}

.hajimete .cnt_area01 .oth_block .oth_box:nth-child(3n+1) {
margin-left: 0;
}

.hajimete .cnt_area01 .oth_block .oth_box:nth-child(n+4) {
margin-top: 76px;
}

.hajimete .cnt_area01 .oth_block .oth_box .img_wrp {
position: relative;
padding-bottom: 75%;
border-radius: 10px;
overflow: hidden;
}

.hajimete .cnt_area01 .oth_block .oth_box .img_wrp img {
position: absolute;
height: 100%;
-o-object-fit: cover;
object-fit: cover;
}

.hajimete .cnt_area01 .oth_block .oth_box .txt_wrp {
margin-top: 15px;
}

.hajimete .cnt_area01 .oth_block .oth_box .txt_wrp h3 {
margin-bottom: 14px;
font-size: calc(18rem / 16);
line-height: 1.4;
}

.hajimete .cnt_area01 .oth_block .oth_box .txt_wrp p {
font-size: calc(14rem / 16);
line-height: 1.7;
}

.hajimete .cnt_area01 .oth_block .oth_box .txt_wrp .btn_ptn01 {
margin: 40px auto 0;
}




/*----------
04-1.aboutus
----------*/
.aboutus .cnt_area01 {
padding: 70px 0 74px;
}

.aboutus .cnt_area01 .cmn_first_text {
margin-bottom: 55px;
}

.aboutus .cnt_area01 .first_img {
margin-bottom: 63px;
}

.aboutus .cnt_area01 .feature_block .ttl_ptn02 {
margin-bottom: 80px;
}

.aboutus .cnt_area01 .feature_block .fea_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}

.aboutus .cnt_area01 .feature_block .fea_box + .fea_box {
margin-top: 80px;
}
.aboutus .cnt_area01 .feature_block .fea_box + .fea_box.mt-0 {
margin-top: 0px !important;
}

.aboutus .cnt_area01 .feature_block .fea_box .num {
position: relative;
width: 9%;
color: #0D56A5;
font-size: calc(32rem / 16);
font-family: "bookman";
}

.aboutus .cnt_area01 .feature_block .fea_box .num::before {
content: "";
position: absolute;
bottom: -14px;
left: 0;
width: 20px;
height: 3px;
background-color: #0D56A5;
}

.aboutus .cnt_area01 .feature_block .fea_box .img_wrp {
width: 20.4%;
}

.aboutus .cnt_area01 .feature_block .fea_box .txt_wrp {
position: relative;
width: 66%;
margin-left: auto;
}

.aboutus .cnt_area01 .feature_block .fea_box .txt_wrp h3 {
margin-bottom: 8px;
color: #0D56A5;
font-size: calc(24rem / 16);
font-family: "shingopro";
font-weight: 500;
line-height: 1.4;
}

.aboutus .cnt_area01 .feature_block .fea_box .txt_wrp p {
line-height: 2;
}

.aboutus .cnt_area01 .feature_block .fea_box .txt_wrp .btn_ptn01 {
position: absolute;
right: 0;
bottom: -15px;
-webkit-transform: translateY(100%);
transform: translateY(100%);
}

.aboutus .cnt_area01 .feature_block .fea_box .btn_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: end;
-webkit-justify-content: flex-end;
-ms-flex-pack: end;
justify-content: flex-end;
width: 100%;
margin-top: 35px;
}

.aboutus .cnt_area01 .feature_block .fea_box .btn_box .btn_ptn01 + .btn_ptn01 {
margin-left: 12px;
}

.aboutus .cnt_area01 .last_text {
margin-top: 100px;
font-size: calc(18rem / 16);
line-height: 2;
}




/*----------
04-0.hajimete_under_page#others ----------*/
.hajimete_under_page#others .cnt_area01 {
padding-top: 80px;
}

.hajimete_under_page#others .cnt_area01 h2 {
margin-bottom: 45px;
color: #0D56A5;
font-size: calc(32rem / 16);
font-family: "shingopro";
font-weight: 700;
line-height: 1.4;
text-align: center;
}

.hajimete_under_page#others .cnt_area01 .main_img {
max-width: 614px;
margin: 0 auto;
}

.hajimete_under_page#others .cnt_area01 p {
margin-top: 35px;
line-height: 2;
}

.hajimete_under_page#others h3 {
margin-bottom: 40px;
color: #0D56A5;
font-size: calc(24rem / 16);
font-family: "shingopro";
font-weight: 500;
line-height: 1.4;
text-align: center;
}

.hajimete_under_page#others .cnt_area02 {
margin-top: 95px;
}

.hajimete_under_page#others .cnt_area02 .bg_block {
padding: 30px 6.2%;
background-color: #ECF1F7;
}

.hajimete_under_page#others .cnt_area02 .bg_block ul li {
padding-left: 1em;
line-height: 2;
text-indent: -1em;
}

.hajimete_under_page#others .cnt_area02 .bg_block ul li::before {
content: "・";
}

.hajimete_under_page#others .cnt_area03 {
margin-top: 95px;
padding-bottom: 80px;
}

.hajimete_under_page#others .cnt_area03 .voice_block .voi_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: stretch;
-webkit-align-items: stretch;
-ms-flex-align: stretch;
align-items: stretch;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.hajimete_under_page#others .cnt_area03 .voice_block .voi_box + .voi_box {
margin-top: 38px;
}

.hajimete_under_page#others .cnt_area03 .voice_block .voi_box .img_wrp {
width: 169px;
}

.hajimete_under_page#others .cnt_area03 .voice_block .voi_box .img_wrp img {
border-radius: 50%;
}

.hajimete_under_page#others .cnt_area03 .voice_block .voi_box .txt_wrp {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
position: relative;
width: calc(92.2% - 169px);
padding: 20px 4.6%;
border-radius: 10px;
background-color: #ECF1F7;
}

.hajimete_under_page#others .cnt_area03 .voice_block .voi_box .txt_wrp::before {
content: "";
position: absolute;
top: calc(169px / 2);
right: 100%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
border: 11px solid rgba(0, 0, 0, 0);
border-right: 30px solid #ECF1F7;
border-left: 0;
}

.hajimete_under_page#others .cnt_area03 .voice_block .voi_box .txt_wrp p {
line-height: 2;
}

.hajimete_under_page#others .cmn_btn_area .btn_box .text .em {
margin: 10px 0;
}

.hajimete_under_page#others .cmn_btn_area .btn_box .text .sub {
line-height: 1.4;
}

.hajimete_under_page#others .cmn_btn_area .btn_box .text .sub .dib {
display: inline-block;
}




/*----------
05.office_under_page
----------*/
/*
.office_under_page .under_ttl_area {
background-image: url(/contents/images/under_ttl_bg01.jpg);
}
*/

.office_under_page .cnt_area01 {
padding: 70px 0 100px;
}

.office_under_page .cnt_area01 .ttl_ptn02 {
margin-bottom: 40px;
}

.office_under_page .cnt_area01 .cmn_first_text {
padding: 0 100px;
}

.office_under_page .cnt_area01 .slide_box {
position: relative;
margin-top: 35px;
padding: 0 100px;
}

.office_under_page .cnt_area01 .slide_box .slick-list {
border-radius: 10px;
overflow: hidden;
}

.office_under_page .cnt_area01 .slide_box .img span {
display: block;
position: relative;
padding-bottom: 75%;
overflow: hidden;
}

.office_under_page .cnt_area01 .slide_box .img span img {
position: absolute;
height: 100%;
-o-object-fit: cover;

object-fit: cover;
}

.office_under_page .cnt_area01 .slide_box .slick-arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 40px;
height: 40px;
border-radius: 50%;
border: 2px solid #0D56A5;
-webkit-transition: .3s;
transition: .3s;
cursor: pointer;
}

.office_under_page .cnt_area01 .slide_box .slick-arrow::before {
content: "";
position: absolute;
top: 50%;
right: 50%;
width: 9px;
height: 9px;
border-top: 2px solid #0D56A5;
border-right: 2px solid #0D56A5;
-webkit-transform: translate(35%, -50%) rotate(45deg);
transform: translate(35%, -50%) rotate(45deg);
-webkit-transition: .3s;
transition: .3s;
}

.office_under_page .cnt_area01 .slide_box .slick-arrow:hover {
background-color: #0D56A5;
}

.office_under_page .cnt_area01 .slide_box .slick-arrow:hover::before {
border-color: #fff;
}

.office_under_page .cnt_area01 .slide_box .prev_arrow {
left: 0;
transform: scale(-1, 1) translateY(-50%);
}

.office_under_page .cnt_area01 .slide_box .next_arrow {
right: 0;
}

.office_under_page .cnt_area01 .slide_box .slick-dots {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
position: absolute;
bottom: -35px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
}

.office_under_page .cnt_area01 .slide_box .slick-dots li {
width: 8px;
height: 8px;
}

.office_under_page .cnt_area01 .slide_box .slick-dots li + li {
margin-left: 20px;
}

.office_under_page .cnt_area01 .slide_box .slick-dots li button {
display: block;
width: 100%;
height: 100%;
padding: 0;
border: 0;
border-radius: 50%;
background-color: #aaa;
text-indent: -10000px;
overflow: hidden;
}

.office_under_page .cnt_area01 .slide_box .slick-dots li.slick-active button {
background-color: #0D56A5;
}

.office_under_page .cnt_area01 .btn_ptn01 {
margin-top: 80px;
}

/* .office_under_page .cnt_area01 .btn_ptn01 {
max-width: none;
width: fit-content;
margin: 80px auto 0;
}

.office_under_page .cnt_area01 .btn_ptn01 a {
padding: 18px 53px 18px 37px;
font-size: calc(16rem / 16);
letter-spacing: .03em;
}

.office_under_page .cnt_area01 .btn_ptn01 a::after {
right: 15px;
border-width: 5.5px;
border-left-width: 9px;
} */

.office_under_page .cnt_area03 {
padding-bottom: 70px;
}

.office_under_page .cnt_area03 .ttl_ptn02 {
margin-bottom: 35px;
}

.office_under_page .cnt_area03 .img_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: stretch;
-webkit-align-items: stretch;
-ms-flex-align: stretch;
align-items: stretch;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.office_under_page .cnt_area03 .img_box .img {
/* width: 30.6%; */
display: none;
}

.office_under_page .cnt_area03 .img_box .img img {
border-radius: 10px;
}

.office_under_page .cnt_area03 .img_box .map {
position: relative;
/* width: 66.4%; */
width: 100%;
height: 360px;
border-radius: 10px;
overflow: hidden;
}

.office_under_page .cnt_area03 .img_box .map iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.office_under_page .cnt_area03 .txt_box {
margin-top: 35px;
}

.office_under_page .cnt_area03 .txt_box p {
font-size: calc(18rem / 16);
line-height: 1.7;
}

.office_under_page .cnt_area03 .txt_box p .em {
font-size: 1.7em;
font-weight: 700;
}

.office_under_page .cnt_area03 .txt_box p .blue {
color: #0D56A5;
}

.office_under_page .cmn_news_area .news_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
/* height: 83px; */
height: auto;
min-height: 83px;
background-color: #ECF1F7;
margin-bottom: 100px;
}

.office_under_page .cmn_news_area .news_block .st {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
width: 162px;
/* height: 100%; */
border-radius: 0 100px 100px 0;
background-color: #0D56A5;
color: #fff;
font-size: calc(26rem / 16);
font-weight: 500;
font-family: "Barlow Condensed", sans-serif;
}

.office_under_page .cmn_news_area .news_block .news_box {
width: calc(100% - 162px);
}

.office_under_page .cmn_news_area .news_block .news_box .news_list {
height: 100%;
}

.office_under_page .cmn_news_area .news_block .news_box .news_list li {
height: 100%;
}

.office_under_page .cmn_news_area .news_block .news_box .news_list li a {
display: inline-flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
height: 100%;
padding-left: 40px;
font-weight: 500;
transition: .3s;
width: 100%;
}

.office_under_page .cmn_news_area .news_block .news_box .news_list li a[href]:hover {
opacity: .7;
}

.office_under_page .cmn_news_area .news_block .news_box .news_list li a .date {
width: 142px;
}

.office_under_page .cmn_news_area .news_block .news_box .news_list li a .ttl {
position: relative;
max-width: calc(100% - 142px);
padding-right: 70px;
/* overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
max-height: 1.4em; */
line-height: 1.4;
}

.office_under_page .cmn_news_area .news_block .news_box .news_list li a[href] .ttl::before {
content: "";
position: absolute;
top: 50%;
right: 30px;
width: 10px;
height: 10px;
border-top: 2px solid #213679;
border-right: 2px solid #213679;
-webkit-transform: translateY(-50%) rotate(45deg);
transform: translateY(-50%) rotate(45deg);
transition: .3s;
}

.office_under_page .cmn_news_area .news_block .news_box .news_list li a[href]:hover .ttl::before {
right: 25px;
}

.office_under_page .cmn_news_area .news_block .news_box .news_list .slick-list,
.office_under_page .cmn_news_area .news_block .news_box .news_list .slick-track {
height: 100%;
}

/*
#office_sanda .under_ttl_area {
background-image: url(/contents/images/under_ttl_bg01.jpg);
}
#office_ono .under_ttl_area {
background-image: url(/contents/images/under_ttl_bg01.jpg);
}
#office_tanba .under_ttl_area {
background-image: url(/contents/images/under_ttl_bg01.jpg);
}
*/




/*----------
06.houjin
----------*/
.houjin .under_ttl_area .ttl_box h1 {
padding: 17.5px 0;
font-size: calc(30rem / 16);
}

.houjin .cnt_area01 {
padding: 80px 0 100px;
}

.houjin .cnt_area01 p {
margin-top: 20px;
line-height: 2;
text-align: center;
}

.houjin .cnt_area01 .img {
margin-top: 60px;
}

.houjin .cnt_area02 {
padding: 50px 0;
background-color: #ECF1F7;
}

.houjin .cnt_area02 .em_text {
font-size: calc(25rem / 16);
line-height: 1.7;
text-align: center;
}

.houjin .cnt_area02 .em_text .strong {
color: #0D56A5;
font-weight: 700;
}

.houjin .cnt_area02 .btn_ptn01 {
margin-top: 40px;
}

.houjin .cnt_area03 {
padding: 80px 0 110px;
}

.houjin .cnt_area03 .ttl_ptn02 {
margin-bottom: 50px;
}

.houjin .cnt_area03 .cnt_block {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.houjin .cnt_area03 .cnt_block .cnt_box {
width: 23%;
max-width: 213px;
}

.houjin .cnt_area03 .cnt_block .cnt_box .img {
overflow: hidden;
}

.houjin .cnt_area03 .cnt_block .cnt_box .img img {
-webkit-transition: .3s;
transition: .3s;
}

.houjin .cnt_area03 .cnt_block .cnt_box .txt {
position: relative;
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
margin: 15px auto 0;
font-size: calc(20rem / 16);
font-weight: 500;
line-height: 1.4;
}

/* .houjin .cnt_area03 .cnt_block .cnt_box .txt::after {
content: "";
position: absolute;
top: 50%;
right: -14px;
-webkit-transform: translate(100%, -50%);
transform: translate(100%, -50%);
border: 6px solid rgba(0, 0, 0, 0);
border-right: 0;
border-left: 10px solid #0D56A5;
-webkit-transition: .3s;
transition: .3s;
} */

.houjin .cnt_area03 .cnt_block .cnt_box a:hover .img img {
-webkit-transform: scale(1.1);
transform: scale(1.1);
}

.houjin .cnt_area03 .cnt_block .cnt_box a:hover .txt::after {
right: -20px;
}

.houjin .cnt_area04 {
padding: 80px 0 140px;
background-color: #ECF1F7;
}

.houjin .cnt_area04 .ttl_ptn02 {
margin-bottom: 80px;
}

.houjin .cnt_area04 .cnt_block .cnt_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-webkit-justify-content: space-between;
-ms-flex-pack: justify;
justify-content: space-between;
}

.houjin .cnt_area04 .cnt_block .cnt_box + .cnt_box {
margin-top: 80px;
}

.houjin .cnt_area04 .cnt_block .cnt_box .img_wrp {
width: 21.8%;
}

.houjin .cnt_area04 .cnt_block .cnt_box .txt_wrp {
width: 72.9%;
}

.houjin .cnt_area04 .cnt_block .cnt_box .txt_wrp h3 {
margin-bottom: 10px;
color: #0D56A5;
font-size: calc(24rem / 16);
font-family: "shingopro";
font-weight: 500;
line-height: 1.4;
}

.houjin .cnt_area04 .cnt_block .cnt_box .txt_wrp p {
line-height: 2;
}

.houjin .cnt_area05 {
padding: 80px 0 140px;
}

.houjin .cnt_area05 .title_g {
margin-bottom: 80px;
}

.houjin .cnt_area05 .first_text {
margin-top: 20px;
font-size: calc(18rem / 16);
line-height: 2;
text-align: center;
}

.houjin .cnt_area05 .table_box table {
width: 100%;
}

.houjin .cnt_area05 .table_box th,
.houjin .cnt_area05 .table_box td {
border: 5px solid #0D56A5;
vertical-align: middle;
}

.houjin .cnt_area05 .table_box th {
padding: 10px 0;
background-color: #0D56A5;
color: #fff;
font-size: calc(20rem / 16);
font-weight: 700;
}

.houjin .cnt_area05 .table_box td {
height: 82px;
}

.houjin .cnt_area05 .table_box .td01 {
width: 200px;
color: #0D56A5;
font-size: calc(22rem / 16);
font-weight: 500;
line-height: 1.3;
text-align: center;
}

.houjin .cnt_area05 .table_box .td01 .small {
display: block;
margin-top: 10px;
font-size: calc(18rem / 16);
}

.houjin .cnt_area05 .table_box .td02 {
width: 130px;
color: #0D56A5;
font-size: calc(18rem / 16);
line-height: 1.2;
text-align: center;
}

.houjin .cnt_area05 .table_box .td03 {
width: 90px;
}

.houjin .cnt_area05 .table_box .td03 span {
display: block;
position: relative;
width: 100%;
height: 100%;
overflow: hidden;
text-indent: -1000px;
}

.houjin .cnt_area05 .table_box .td03 .level1::before,
.houjin .cnt_area05 .table_box .td03 .level1::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width: 32px;
height: 32px;
border-radius: 50%;
border: 3px solid #FFC716;
}

.houjin .cnt_area05 .table_box .td03 .level1::after {
width: 20px;
height: 20px;
}

.houjin .cnt_area05 .table_box .td03 .level2::before {
content: "";
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width: 28px;
height: 28px;
border-radius: 50%;
border: 1px solid #000;
}

.houjin .cnt_area05 .table_box .td03 .level3::before {
content: "";
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
width: 31px;
height: 31px;
background: url(/contents/images/houjin_ico_level3.png) no-repeat center / contain;
}

/* .houjin .cnt_area05 .table_box .td03 .level3::before,
.houjin .cnt_area05 .table_box .td03 .level3::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
border: 17px solid rgba(0, 0, 0, 0);
border-top: 0;
border-bottom: 30px solid #000;
}

.houjin .cnt_area05 .table_box .td03 .level3::after {
top: calc(50% + 1px);
border-width: 14px;
border-bottom: 25px solid #fff;
} */

.houjin .cnt_area05 .table_box .td04 {
width: calc(100% - 200px - 130px - 90px);
padding: 14px 20px;
}

.houjin .cnt_area05 .table_box .td04 ul li {
padding-left: 1em;
font-size: calc(14rem / 16);
line-height: 1.6;
text-indent: -1em;
}

.houjin .cnt_area05 .table_box .td04 ul li::before {
content: "・";
}

.houjin .cnt_area06 {
padding: 80px 0 100px;
background-color: #ECF1F7;
}

.houjin .cnt_area06 .ttl_ptn02 {
margin-bottom: 80px;
}

.houjin .cnt_area06 .cnt_block .cnt_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: stretch;
-webkit-align-items: stretch;
-ms-flex-align: stretch;
align-items: stretch;
min-height: 145px;
border-radius: 10px;
border: 5px solid #0D56A5;
background-color: #fff;

}

.houjin .cnt_area06 .cnt_block .cnt_box + .cnt_box {
position: relative;
margin-top: 68px;
}

.houjin .cnt_area06 .cnt_block .cnt_box + .cnt_box::before {
content: "";
position: absolute;
top: -50px;
left: 50%;
transform: translateX(-50%);
border: 14px solid rgba(0,0,0,0);
border-top: 24px solid #0D56A5;
border-bottom: 0;
}

.houjin .cnt_area06 .cnt_block .cnt_box .head {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
position: relative;
width: 30%;
background-color: #0D56A5;
color: #fff;
}

.houjin .cnt_area06 .cnt_block .cnt_box .head .step {
position: absolute;
top: 8px;
left: 10px;
font-size: calc(20rem / 16);
font-weight: 700;
}

.houjin .cnt_area06 .cnt_block .cnt_box .head .st {
font-size: calc(28rem / 16);
font-weight: 700;
}

.houjin .cnt_area06 .cnt_block .cnt_box .cnt_wrp {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
width: 70%;
padding: 0 5.1%;
}

.houjin .cnt_area06 .cnt_block .cnt_box .cnt_wrp p {
font-size: calc(22rem / 16);
line-height: 1.5;
}

.houjin .cnt_area06 .cnt_block .cnt_box .cnt_wrp p .strong {
color: #0D56A5;
font-weight: 700;
text-decoration: underline;
}

.houjin .cnt_area07 {
padding: 80px 0;
}

.houjin .cnt_area07 p {
margin-bottom: 60px;
line-height: 2;
text-align: center;
}

.houjin .cnt_area07 .panel {
max-width: 756px;
margin: 30px auto 0;
padding: 20px 0;
border-radius: 10px;
border: 5px solid #0D56A5;
text-align: center;
}

.houjin .cnt_area07 .panel .em {
color: #0D56A5;
font-size: calc(28rem / 16);
font-weight: 700;
}

.houjin .cnt_area07 .panel .tel_g {
margin-top: 20px;
font-size: calc(32rem / 16);
}

.houjin .cnt_area07 .panel .tel_g .tel {
margin: 0 5px;
color: #0D56A5;
font-size: calc(48rem / 16);
font-weight: 700;
}




/*----------
07.column
----------*/
.column .cnt_area01 {
padding: 70px 0 140px;
}
.pageListItemBlock{
    display: flex;
    justify-content: flex-start;
    gap: 3%;
    flex-wrap: wrap;
}
.pageListItemBlock-type03{
    width: 31%;
    margin: 0 0 40px !important;
}
.pageListItemBlock-type03 div.pageListTextBlock p.pageListTitle {
margin-bottom: 11px;
font-size: calc(18rem / 16);
font-weight: 700;
line-height: 1.4;
}

.pageListItemBlock-type03 div.pageListTextBlock p.pageListText {
font-size: calc(14rem / 16);
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4;
max-height: 6.8em;
line-height: 1.7;
}

/*----------
07-1.column_detail
----------*/
#column_detail .article_area {
padding: 100px 0;
}

#column_detail .article_area .title_block {
margin-bottom: 40px;
padding-bottom: 15px;
border-bottom: 1px solid #D3D3D3;
}

#column_detail .article_area .title_block .title {
margin-bottom: 15px;
color: #0D56A5;
font-size: calc(32rem / 16);
font-family: 'shingopro';
font-weight: 700;
line-height: 1.4;
text-align: center;
}

#column_detail .article_area .title_block .date {
/* color: #0D56A5; */
font-weight: 500;
text-align: right;
}

#column_detail .article_area .content_block h2 {
margin: 80px 0 20px;
padding-left: 14px;
border-left: 6px solid #0D56A5;
color: #0D56A5;
font-size: calc(28rem / 16);
font-weight: 700;
line-height: 1.6;
}

#column_detail .article_area .content_block h3 {
margin: 60px 0 20px;
color: #0D56A5;
font-size: calc(24rem / 16);
font-weight: 700;
line-height: 1.7;
}

#column_detail .article_area .content_block h4 {
margin: 40px 0 20px;
color: #0D56A5;
font-size: calc(18rem / 16);
font-weight: 700;
line-height: 1.7;
}

#column_detail .article_area .content_block p {
margin: 20px 0;
line-height: 1.8;
}

#column_detail .article_area .content_block p img {
width: auto;
}

#column_detail .article_area .content_block p img.aligncenter {
margin: 0 auto;
}

#column_detail .article_area .content_block p img.alignright {
margin-left: auto;
}

#column_detail .article_area .content_block p a > img {
transition: .3s;
}

#column_detail .article_area .content_block p a:hover > img {
opacity: .7;
}

#column_detail .article_area .content_block strong {
font-weight: 700;
}

#column_detail .article_area .content_block mark {
background: -webkit-gradient(linear, left top, left bottom, color-stop(72%, transparent), color-stop(72%, #DCE8F7));
background: -webkit-linear-gradient(transparent 72%, #DCE8F7 72%);
background: linear-gradient(transparent 72%, #DCE8F7 72%);
color: #0D56A5;
font-size: calc(18rem / 16);
font-weight: 700;
}

#column_detail .article_area .content_block em {
font-style: italic;
}

#column_detail .article_area .content_block *:not(.btn_ptn01):not(.clm_link) a {
color: #0D56A5;
text-decoration: underline;
}

#column_detail .article_area .content_block *:not(.btn_ptn01):not(.clm_link) a:hover {
text-decoration: none;
}

#column_detail .article_area .content_block ul {
margin: 20px 0;
}

#column_detail .article_area .content_block ul li {
padding-left: 1em;
line-height: 1.8;
text-indent: -1em;
}

#column_detail .article_area .content_block ul li::before {
content: "・";
}

#column_detail .article_area .content_block .btn_ptn01 {
margin: 40px 0;
}

#column_detail .article_area .content_block table {
width: 100%;
margin: 20px 0;
}

#column_detail .article_area .content_block table th {
padding: 20px;
background-color: #0D56A5;
color: #fff;
font-weight: 500;
line-height: 1.5;
vertical-align: middle;
}

#column_detail .article_area .content_block table th + th {
border-left: 1px solid #fff;
}

#column_detail .article_area .content_block table td {
padding: 20px;
line-height: 1.5;
}

#column_detail .article_area .content_block table td + td {
border-left: 1px solid #999;
}

#column_detail .article_area .content_block table tr:first-child th {
border-top: 1px solid #0D56A5;
}
#column_detail .article_area .content_block table tr:first-child td {
border-top: 1px solid #999;
}

#column_detail .article_area .content_block table tr:last-child th {
border-bottom: 1px solid #0D56A5;
}
#column_detail .article_area .content_block table tr:last-child td {
border-bottom: 1px solid #999;
}

#column_detail .article_area .content_block table tr:not(:first-child) th {
border-top: 1px solid #fff;
}
#column_detail .article_area .content_block table tr:not(:first-child) td {
border-top: 1px solid #999;
}

#column_detail .article_area .content_block table th:first-child {
border-left: 1px solid #0D56A5;
}
#column_detail .article_area .content_block table td:first-child {
border-left: 1px solid #999;
}

#column_detail .article_area .content_block table th:last-child {
border-right: 1px solid #0D56A5;
}
#column_detail .article_area .content_block table td:last-child {
border-right: 1px solid #999;
}

#column_detail .article_area .content_block table th > *:first-child,
#column_detail .article_area .content_block table td > *:first-child {
margin-top: 0;
}

#column_detail .article_area .content_block table th > *:last-child,
#column_detail .article_area .content_block table td > *:last-child {
margin-bottom: 0;
}

#column_detail .article_area .content_block .clm_link {
margin: 40px 0;
}

#column_detail .article_area .content_block .clm_link a {
display: flex;
align-items: center;
justify-content: space-between;
padding: 20px;
border: 1px solid #ddd;
transition: .3s;
}

#column_detail .article_area .content_block .clm_link a:hover {
box-shadow: 0 0 10px rgba(0,0,0,.08);
}

#column_detail .article_area .content_block .clm_link a .img_wrp {
position: relative;
width: 22%;
padding-bottom: calc(80% * .22);
background-color: #eee;
}

#column_detail .article_area .content_block .clm_link a .img_wrp img {
position: absolute;
height: 100%;
object-fit: cover;
}

#column_detail .article_area .content_block .clm_link a .txt_wrp {
width: calc(100% - 22% - 20px);
}

#column_detail .article_area .content_block .clm_link a .txt_wrp .st {
margin-bottom: 10px;
font-size: calc(18rem / 16);
font-weight: 500;
line-height: 1.6;
}

#column_detail .article_area .content_block .clm_link a .txt_wrp p {
margin: 0;
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
max-height: 3.6em;
line-height: 1.8;
}

#column_detail .article_area .content_block > *:first-child {
margin-top: 0;
}

#column_detail .article_area .content_block > *:last-child {
margin-bottom: 0;
}




/*----------
08.recruit
----------*/
.recruit .bg_blue {
background-color: #ecf1f7;
}

.recruit .cnt_area01 {
position: relative;
margin-bottom: 100px;
}

.recruit .cnt_area01 .ttl_label {
position: absolute;
bottom: 0;
left: 0;
-webkit-transform: translateY(50%);
transform: translateY(50%);
width: 100%;
}

.recruit .cnt_area01 .ttl_label::before {
content: "";
position: absolute;
z-index: -1;
top: 0;
left: 0;
width: 50%;
height: 100%;
background-color: #2D6BAF;
}

.recruit .cnt_area01 .ttl_label .ttl_wrp {
padding: 25px 0;
border-radius: 0 100px 100px 0;
background-color: #2D6BAF;
}

.recruit .cnt_area01 .ttl_label .ttl_wrp h2 {
color: #fff;
font-size: calc(32rem / 16);
font-family: "shingopro";
font-weight: 700;
}

.recruit .cnt_area02 {
padding: 120px 0;
}

.recruit .cnt_area02 .about_block .contents_in {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
width: 100%;
}

.recruit .cnt_area02 .about_block .img_box {
width: 52%;
}

.recruit .cnt_area02 .about_block .txt_box {
width: 56.2%;
margin-top: -5%;
margin-left: -8.2%;
padding: 60px 0;
background-color: #0D56A5;
color: #fff;
}

.recruit .cnt_area02 .about_block .txt_box .wrap {
width: -webkit-fit-content;
width: -moz-fit-content;
width: fit-content;
margin: 0 auto;
padding-right: 5%;
}

.recruit .cnt_area02 .about_block .txt_box h2 {
margin-bottom: 20px;
font-size: calc(24rem / 16);
font-family: "shingopro";
font-weight: 500;
line-height: 1.4;
}

.recruit .cnt_area02 .about_block .txt_box p {
font-size: calc(18rem / 16);
line-height: 2.2;
}

.recruit .cnt_area02_cnt_block {
margin-bottom: 120px;
}

.recruit .cnt_area02_cnt_block .cnt_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
}

.recruit .cnt_area02_cnt_block .cnt_box + .cnt_box {
margin-top: 80px;
}

.recruit .cnt_area02_cnt_block .cnt_box .num {
position: relative;
width: 9%;
color: #0D56A5;
font-size: calc(32rem / 16);
font-family: "bookman";
}

.recruit .cnt_area02_cnt_block .cnt_box .num::before {
content: "";
position: absolute;
bottom: -14px;
left: 0;
width: 20px;
height: 3px;
background-color: #0D56A5;
}

.recruit .cnt_area02_cnt_block .cnt_box .img_wrp {
width: 20.4%;
}

.recruit .cnt_area02_cnt_block .cnt_box .txt_wrp {
position: relative;
width: 66%;
margin-left: auto;
}

.recruit .cnt_area02_cnt_block .cnt_box .txt_wrp h3 {
margin-bottom: 8px;
color: #0D56A5;
font-size: calc(24rem / 16);
font-family: "shingopro";
font-weight: 500;
line-height: 1.4;
}

.recruit .cnt_area02_cnt_block .cnt_box .txt_wrp p {
line-height: 2;
}

.recruit .cnt_area02_cnt_block .cnt_box .txt_wrp .btn_ptn01 {
position: absolute;
right: 0;
bottom: -15px;
-webkit-transform: translateY(100%);
transform: translateY(100%);
}

.recruit .cnt_area02_cnt_block .cnt_box .btn_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: end;
-webkit-justify-content: flex-end;
-ms-flex-pack: end;
justify-content: flex-end;
width: 100%;
margin-top: 35px;
}

.recruit .cnt_area02_cnt_block .cnt_box .btn_box .btn_ptn01 + .btn_ptn01 {
margin-left: 12px;
}

.recruit .cnt_area03 {
padding: 80px 0;
}

.recruit .cnt_area03 .ttl_ptn02 {
margin-bottom: 60px;
}

.recruit .cnt_area03 .cnt_box + .cnt_box {
margin-top: 80px;
}

.recruit .cnt_area03 .cnt_box h3 {
margin-bottom: 25px;
padding-left: 15px;
border-left: 6px solid #0D56A5;
color: #0D56A5;
font-size: calc(24rem / 16);
font-family: "shingopro";
font-weight: 500;
line-height: 1.4;
}

.recruit .cnt_area03 .cnt_box .txt_wrp {
margin-top: 15px;
}

.recruit .cnt_area03 .cnt_box .txt_wrp p {
font-size: calc(18rem / 16);
line-height: 2;
}

.recruit .cnt_area04 {
padding: 120px 0;
}

.recruit .cnt_area04 .ttl_ptn02 {
margin-bottom: 40px;
}

.recruit .cnt_area04 .no_entry {
font-size: calc(24rem / 16);
line-height: 1.8;
text-align: center;
}

.recruit .cnt_area05 {
padding: 100px 0;
}

.recruit .cnt_area05 .ttl_ptn02 {
margin-bottom: 60px;
}

.recruit .cnt_area05 .cnt_box {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: stretch;
-webkit-align-items: stretch;
-ms-flex-align: stretch;
align-items: stretch;
min-height: 145px;
border-radius: 10px;
border: 5px solid #0D56A5;
background-color: #fff;
}

.recruit .cnt_area05 .cnt_box + .cnt_box {
position: relative;
margin-top: 68px;
}

.recruit .cnt_area05 .cnt_box + .cnt_box::before {
content: "";
position: absolute;
top: -50px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
border: 14px solid rgba(0, 0, 0, 0);
border-top: 24px solid #0D56A5;
border-bottom: 0;
}

.recruit .cnt_area05 .cnt_box .head {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
position: relative;
width: 30%;
background-color: #0D56A5;
color: #fff;
}

.recruit .cnt_area05 .cnt_box .head .step {
position: absolute;
top: 8px;
left: 10px;
font-size: calc(20rem / 16);
font-weight: 700;
}

.recruit .cnt_area05 .cnt_box .head .st {
font-size: calc(28rem / 16);
font-weight: 700;
}

.recruit .cnt_area05 .cnt_box .cnt_wrp {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
align-items: center;
width: 70%;
padding: 0 5.1%;
}

.recruit .cnt_area05 .cnt_box .cnt_wrp p {
font-size: calc(22rem / 16);
line-height: 1.5;
}

.recruit .cnt_area05 .cnt_box .cnt_wrp p .strong {
color: #0D56A5;
font-weight: 700;
text-decoration: underline;
}




/*----------
09.contact
----------*/
.contact .first_text {
padding: 50px 0;
line-height: 1.8;
}

.contact .cmn_tel_area {
padding: 60px 0;
}

.contact .cmn_tel_area + .cmn_tel_area {
margin-top: 50px;
}

.contact .cmn_tel_area .cnt_block .cnt_box {
padding: 30px 50px;
}

.contact .cmn_tel_area .cnt_block .cnt_box p {
text-align: center;
}

.contact .cmn_tel_area .cnt_block .cnt_box .tel_g {
margin: 20px 0;
}

.contact .cmn_tel_area .btn_ptn01 {
margin-top: 36px;
}




/*----------
09-01.contact_hojin(contact_under_page)
----------*/
.contact_under_page .ttl_ptn02{
margin-bottom: 40px;
}

.contact_under_page #cnt_area01{
padding: 60px 0 120px;
}

.contact_under_page #cnt_area01 .cmn_first_text{
text-align: center;
margin-bottom: 80px;
}

.contact_under_page #cnt_area01 .text01{
line-height: 1.8;
}

.contact_under_page #cnt_area01 .text01 a{
text-decoration: underline;
color: #0D56A5;
}

.contact_under_page #cnt_area01 .text01 a:hover{
text-decoration: none;
}

.contact_under_page #cnt_area01 .text01 .tel_number{
font-size: 2em;
font-weight: 700;
color: #0D56A5;
vertical-align: sub;
}

.contact_under_page #cnt_area02{
background-color: #ECF1F7;
padding: 80px 0 120px;
}

.contact_under_page #cnt_area02 .required{
color: #D52222;
font-weight: 500;
}

.contact_under_page #cnt_area02 .cmn_first_text{
margin-bottom: 15px;
}

.contact_under_page #cnt_area02 .mailForm{
background-color: #fff;
/* max-width: 720px;
width: 100%;
margin: 0 auto; */
border-radius: 10px;
padding: 40px 40px;
margin: 0 auto 36px;
}



.contact_under_page #cnt_area02 .mailForm input[type="text"],.contact_under_page #cnt_area02 .mailForm input[type="tel"],.contact_under_page #cnt_area02 .mailForm input[type="email"],.contact_under_page #cnt_area02 .mailForm textarea{
width: 48%;
height: 32px;
border: 1px solid #aaa;
background: #fff;
border-radius: 5px;
padding: 3px 5px;
overflow: hidden;
font-family: 'Noto Sans JP', sans-serif;
font-size: 1em;
}
.contact_under_page #cnt_area02 .mailForm textarea{
width: 100%;
height: 160px;
}

.contact_under_page #cnt_area02 .mailForm input[type="radio"] {
display: none;
}

.contact_under_page #cnt_area02 .mailForm label{
display: block;
line-height: 1;
}

.contact_under_page #cnt_area02 .mailForm .mwform-radio-field {
margin: 0;
}

.contact_under_page #cnt_area02 .mailForm .mwform-radio-field + .mwform-radio-field {
margin-top: 15px;
}

.contact_under_page #cnt_area02 .mailForm label span {
position: relative;
display: inline-block;
padding: 0 0 0 30px;
cursor: pointer;
line-height: 1.4;
}

.contact_under_page #cnt_area02 .mailForm label span::before {
position: absolute;
content: '';
top: 2px;
left: 0;
width: 20px;
height: 20px;
box-sizing: border-box;
border: 1px solid #aaa;
border-radius: 50%;
background: #fff;
}
.contact_under_page #cnt_area02 .mailForm input[type="radio"]:checked + span::after {
position: absolute;
content: '';
top: 6px;
left: 4px;
width: 12px;
height: 12px;
background-color: #0D56A5;
border-radius: 50%;
}

.contact_under_page #cnt_area02 .mailForm .tel_box input{
width: 25%;
}

.contact_under_page #cnt_area02 .mailForm .contact_in_box{
align-items: start;
}

.contact_under_page #cnt_area02 .text01{
line-height: 1.8;
margin-bottom: 30px;
	font-weight: normal;
	text-align: left;
}

.contact_under_page #cnt_area02 .privacypolicy_box{
background-color: #fff;
box-shadow: 0 0 10px rgba(0,0,0,.08);
width: 100%;
margin: 0 auto 50px;
overflow-y: scroll;
height: 320px;
border-radius: 10px;
padding: 40px;
}

.contact_under_page #cnt_area02 .privacypolicy_title{
font-weight: 700;
color: #0D56A5;
font-size: calc(20rem/16);
margin-bottom: 40px;
}

.contact_under_page #cnt_area02 .privacy_text{
	text-align: left;
	font-weight: normal;
}

.contact_under_page #cnt_area02 .privacy_text dt{
border-bottom: 2px solid #0D56A5;
font-weight: 500;
font-size: calc(18rem/16);
padding: 0 0 10px 10px;
margin-bottom: 18px;
	text-align: left;
	font-weight: normal;
}

.contact_under_page #cnt_area02 .privacy_text dd{
line-height: 1.6;
margin-bottom: 50px;
padding: 0 10px;
	text-align: left;
	font-weight: normal;
}

.contact_under_page #cnt_area02 .privacy_text dd .bold{
font-weight: 700;
}

.contact_under_page #cnt_area02 .submit_g{
align-items: center;
justify-content: center;
flex-direction: row-reverse;
}

.contact_under_page #cnt_area02 .submit_btn,.contact_under_page #cnt_area02 .return_btn{
max-width: 300px;
width: 100%;
margin: 0 20px;
position: relative;
}

.contact_under_page #cnt_area02 .submit_btn::before,.contact_under_page #cnt_area02 .submit_btn::after,.contact_under_page #cnt_area02 .return_btn::before,.contact_under_page #cnt_area02 .return_btn::after{
content: "";
position: absolute;
top: 50%;
}

.contact_under_page #cnt_area02 .submit_btn::before,.contact_under_page #cnt_area02 .return_btn::before{
left: 50%;
transform: translate(-50%, -50%);
width: calc(100% - 2px);
height: calc(100% - 2px);
border-radius: 10px;
border: 1px solid #0D56A5;
transition: 0s;
}

.contact_under_page #cnt_area02 .submit_btn:hover::before,.contact_under_page #cnt_area02 .return_btn:hover::before {
width: calc(100% + 15px);
height: calc(100% + 15px);
opacity: 0;
transition: .7s;
}

.contact_under_page #cnt_area02 .submit_btn::after,.contact_under_page #cnt_area02 .return_btn::after{
right: 15px;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
border: 5.5px solid rgba(0, 0, 0, 0);
border-left: 9px solid #fff;
border-right: 0;
z-index: 1;
}


.contact_under_page #cnt_area02 .return_btn::before{
border-color: #aaa;
}

.contact_under_page #cnt_area02 .return_btn::after{
right: auto;
left: 15px;
border-right: 9px solid #fff;
border-left: 0;
}

.contact_under_page #cnt_area02 .return_btn .return{
background-color: #aaa;
padding: 18px 37px 18px 51px;
}

.contact_under_page:not(.confirm_page) #cnt_area02 .return_btn {
display: none;
}

.formCheckBlock, .formThanksBlock{
padding: 15em 0 5em !important;
}


/*----------
10.privacypolicy
----------*/
.privacypolicy .under_ttl_area .ttl_box {
padding: 16px 0;
}

.privacypolicy .under_ttl_area .ttl_box h1 {
font-size: calc(32rem / 16);
}

.privacypolicy .cnt_area01 {
padding: 80px 0 100px;
}

.privacypolicy .cnt_area01 h2 {
margin: 100px 0 20px;
padding-left: 14px;
border-left: 6px solid #0D56A5;
color: #0D56A5;
font-size: calc(28rem / 16);
font-weight: 700;
line-height: 1.6;
}

.privacypolicy .cnt_area01 h3 {
margin: 60px 0 20px;
color: #0D56A5;
font-size: calc(20rem / 16);
font-weight: 700;
line-height: 1.6;
}

.privacypolicy .cnt_area01 p {
line-height: 1.8;
}

.privacypolicy .cnt_area01 strong {
font-weight: 700;
}

.privacypolicy .cnt_area01 .small {
font-size: .875em;
}

.privacypolicy .cnt_area01 .text_link {
color: #0D56A5;
text-decoration: underline;
}

.privacypolicy .cnt_area01 .text_link:hover {
text-decoration: none;
}

.privacypolicy .cnt_area01 li {
line-height: 1.8;
}

.privacypolicy .cnt_area01 li + li {
margin-top: 5px;
}

.privacypolicy .cnt_area01 ol li * {
text-indent: 0;
}

.privacypolicy .cnt_area01 .kakko_list {
counter-reset: kakko;
}

.privacypolicy .cnt_area01 .kakko_list li {
text-indent: -1.5em;
padding-left: 1.5em;
}

.privacypolicy .cnt_area01 .kakko_list li::before {
counter-increment: kakko;
content: "(" counter(kakko) ")";
padding-right: .3em;
}

.privacypolicy .cnt_area01 .plane_list {
counter-reset: plane;
}

.privacypolicy .cnt_area01 .plane_list li {
text-indent: -1.1em;
padding-left: 1.1em;
}

.privacypolicy .cnt_area01 .plane_list li::before {
counter-increment: plane;
content: counter(plane) ".";
padding-right: .3em;
}

.privacypolicy .cnt_area01 dl {
display: flex;
flex-wrap: wrap;
line-height: 1.8;
}

.privacypolicy .cnt_area01 dl dt {
font-weight: 700;
}

.privacypolicy .cnt_area01 dl[data-em="6"] dt {
width: 6em;
}

.privacypolicy .cnt_area01 dl[data-em="6"] dd {
width: calc(100% - 6em);
}

.privacypolicy .cnt_area01 .indent_box {
margin-top: 20px;
padding-left: 20px;
}

.privacypolicy .cnt_area01 .border_box {
margin: 20px 0;
padding: 15px;
border: 1px solid #ccc;
}

.privacypolicy .cnt_area01 .border_box .text_wrp {
margin-top: 20px;
padding-left: 20px;
}

.privacypolicy .cnt_area01 .logo_box {
display: flex;
margin: 30px 0;
}

.privacypolicy .cnt_area01 .logo_box .logo_g {
display: flex;
}

.privacypolicy .cnt_area01 .logo_box .logo_g .ico_privacy {
width: 93px;
}

.privacypolicy .cnt_area01 .logo_box .logo_g .ico_privacy a {
display: block;
transition: .3s;
}

.privacypolicy .cnt_area01 .logo_box .logo_g .ico_privacy a:hover {
opacity: .7;
}

.privacypolicy .cnt_area01 .logo_box .logo_g .ico_privacy.nishi {
width: 104px;
}

.privacypolicy .cnt_area01 .logo_box .logo_g .ico_privacy + .ico_privacy {
margin-left: 20px;
}

.privacypolicy .cnt_area01 .logo_box .txt_g {
margin-left: 30px;
}

.privacypolicy .cnt_area01 .logo_box .txt_g p {
font-size: calc(14rem / 16);
line-height: 1.5;
}

.privacypolicy .cnt_area01 .pp_download_adobe {
max-width: 460px;
margin: 10px 0 15px;
}

.privacypolicy .cnt_area01 .pp_download_adobe a {
display: flex;
align-items: center;
color: #0D56A5;
text-decoration: underline;
}

.privacypolicy .cnt_area01 .pp_download_adobe a:hover {
text-decoration: none;
}

.privacypolicy .cnt_area01 .pp_download_adobe .ico {
width: 160px;
}

.privacypolicy .cnt_area01 .pp_download_adobe .txt {
width: calc(100% - 160px);
padding-left: 10px;
font-size: calc(14rem / 16);
line-height: 1.4;
}

.privacypolicy .cnt_area01 p{
	margin-bottom: 1em;
}


/*----------
11.error404
----------*/
.error404 main {
padding: 270px 0 180px;
	width: 900px;
	margin: 0 auto;
	text-align: center;
	font-size: 40px;
}

/* Form Fieldset【変更注意】フォームスタイル
----------------------------------------------- */
form.mailForm {
  margin: 0 0 30px;
  padding: 10px 10px 20px;
}
fieldset.formBlock {
  margin: 0;
  padding: 10px 5px 5px;
  line-height: 1.3em;
  font-size: 0.875em;
}
fieldset legend.title {
  display: block;
  float: left;
  width: 30%;
  padding: 6px 0;
}
fieldset.titleDisplayNone legend.title {
  display: none;
}
fieldset.titleDisplayNone .content {
  width: 100%;
}
fieldset.titleDisplayNone .goodsOrderSelectBox li label .goodsTitle {
  width: 550px;
}
fieldset.titleDisplayNone .shoppingOrdererInformationBox .shoppingOrdererInformationBoxTitle {
  width: 200px;
}
fieldset.titleDisplayNone .shoppingOrdererInformationBox .shoppingOrdererInformationBoxInnerInputGroup {
  margin-left: 210px;
}
fieldset.titleDisplayNone .shoppingDeliverySelectBox .shoppingDeliveryBoxTitle {
  width: 200px;
}
fieldset.titleDisplayNone .shoppingDeliveryTimeSelectBox .shoppingDeliveryTimeSelectBoxTitle {
  width: 200px;
}
fieldset.titleDisplayNone .shoppingDeliveryBox .shoppingDeliveryBoxTitle {
  width: 200px;
}
fieldset.titleDisplayNone .shoppingDeliveryBox .shoppingDeliveryBoxInnerInputGroup {
  margin-left: 210px;
}
fieldset.titleDisplayNone .shoppingOrdererInformationBoxInner:first-child {
  border-top: none;
  padding-top: 0;
}
fieldset.titleDisplayNone .shoppingOrdererInformationBoxInner {
  padding-top: 5px;
}
form.check fieldset div.content{
  display: inline-block;
  width: 70%;
  padding: 10px 0;
}
form.check fieldset .content span {
  display: inline-block;
}
form.check fieldset .content .contentTitle {
  width: 130px;
}
form.check .comment {
  display: none;
}
form.check .formMarkColor {
  display: none;
}
form.check .orderNumber {
  padding: 3px 5px;
  background: #CCCCCC;
}
form.check .contentInner {
  overflow: hidden;
}
form.check .orderProcuctsList {
  margin-left: 0;
  list-style: none;
}
form.check .orderProcuctsList li {
  border-left: 5px solid #cccccc;
  padding-left: 5px;
}
form.check .orderProcuctsList li ul {
  overflow: hidden;
  margin: 0;
}
form.check .orderProcuctsList li ul li {
  border-left: none;
  padding-left: 0;
}
form.check .orderProcuctsList .goodsOptionTitle {
  display: none;
}
form.check .orderProcuctsList .orderProcuctsListBox {
  overflow: hidden;
}
form.check .orderProcuctsList .orderProcuctsListBox .goodsName {
  font-weight: bold;
}
form.check fieldset .content span {
  float: left;
}
form.check .feeDetailsBox {
  line-height: 1.5em;
}
form.check .feeDetailsBox .feeDetailsBoxInner .feeDetailsName {
  width: 200px;
  border-bottom: 1px solid #cccccc;
  margin-right: 0;
}
form.check .feeDetailsBox .feeDetailsBoxInner .feeDetailsPrice {
  width: 200px;
  border-bottom: 1px solid #cccccc;
  margin-right: 0;
  text-align: right;
}
form.check .feeDetailsBox .feeDetailsBoxInnerSumTotal span {
  width: 200px;
  margin-right: 0;
  border-top: 1px solid #cccccc;
  font-weight: bold;
}
form.check .feeDetailsBox .feeDetailsBoxInnerSumTotal .feeDetailsPrice {
  text-align: right;
}
fieldset.titleDisplayNone .shoppingDeliveryBoxInner:first-child {
  border-top: none;
  padding-top: 0;
}
fieldset.titleDisplayNone .shoppingDeliveryBoxInner:last-child {
  border-bottom: 1px dotted #CCCCCC;
  margin-bottom: 5px;
}
fieldset.titleDisplayNone .shoppingDeliveryBoxInner {
  border-top: 1px dotted #CCCCCC;
  padding-top: 5px;
}
fieldset.titleDisplayNone .shoppingDeliverySelectBox {
  border-bottom: 1px dotted #CCCCCC;
  margin-bottom: 5px;
}
fieldset div.content {
  display: inline-block;
  width: 70%;
  padding: 4px 0;
}
fieldset div.content select {
  margin: 6px 0;
}
fieldset div.check .content {
  padding: 10px 0;
}
fieldset div.content span {
  display: inline-block;
  margin: 0 5px 0 0;
  color: #514f4e333;
}
fieldset div.content input[type=text], fieldset div.content textarea, fieldset div.content select {
  position: relative;
  margin: 0 0 5px;
  padding: 3px;
  border: 1px solid #aaaaaa;
  color: #514f4e333;
  font-size: 0.9375em;
  border-radius: 4px;
  -moz-border-radius:4px;
  -webkit-border-radius: 4px;
}
fieldset input[type=text].formCaution, fieldset textarea.formCaution, fieldset select.formCaution {
  border: 1px solid #cc0000 !important;
  background: #ffd4d4 !important;
}
fieldset div.content input[type=radio], fieldset div.content input[type=checkbox] {
  margin-right: 5px;
}
fieldset div.content input[type=text] {
  width: 150px;
}
fieldset div.content input[type=text].textareaShort {
  width: 250px;
}
fieldset div.content input[type=text].tel01, fieldset div.content input[type=text].tel02, fieldset div.content input[type=text].tel03 {
  width: 4.5em;
}
fieldset div.content input[type=text].zipecode01 {
  width: 3.5em;
}
fieldset div.content input[type=text].zipecode02 {
  width: 4.5em;
}
fieldset div.content select.selectAddress {
  width: auto;
}
fieldset div.content input[type=text].address01, fieldset div.content input[type=text].address02 {
  width: 80%;
}
fieldset div.content select.selectMonth, fieldset div.content select.selectDay {
  width: 4.5em;
}
fieldset .formMarkColor {
  color: #cc0000;
}
fieldset .radio {
    margin: 4px;
}
fieldset .checkbox {
    margin: 4px;
}
fieldset.comment {
  /*background: #eeeeee;*/
  line-height: 1.3em;
  text-align: center;
  padding: 10px 0 5px;
  font-weight: bold;
}
fieldset.comment legend {
  display: block;
  width: 100%;
    padding: 15px 0 0;
  /*background: #eeeeee;*/
}
fieldset.comment .content {
  display: none;
}
fieldset .comment span {
  display: block;
  font-size: 90%;
  font-weight: normal;
}
fieldset .shoppingOrdererInformationBox .shoppingOrdererInformationBoxTitle {
  width: 120px;
}
fieldset .shoppingOrdererInformationBox .shoppingOrdererInformationBoxInnerInputGroup {
  margin-left: 130px;
    margin-top: -18px;
}
fieldset .shoppingDeliverySelectBox .shoppingDeliveryBoxTitle {
  width: 120px;
}
fieldset .shoppingDeliveryBox .shoppingDeliveryBoxTitle {
  width: 120px;
}
fieldset .shoppingDeliveryTimeSelectBox .shoppingDeliveryTimeSelectBoxTitle {
  width: 120px;
}
fieldset .shoppingDeliveryBox .shoppingDeliveryBoxInnerInputGroup {
  margin-left: 130px;
    margin-top: -18px;
}
fieldset .shoppingPaymentMethodCreditBox .shoppingPaymentMethodCreditBoxTitle {
  width: 120px;
}
fieldset .shoppingPaymentMethodCreditBox .shoppingPaymentMethodCreditBoxInner .cardNumber {
  width: 50%;
}
fieldset .textarea {
  width: 80%;
  height: 200px;
  padding: 2px;
  border: 1px solid #aaaaaa;
}
fieldset.formBlock .goodsOrderSelectBox {
  margin-left: 0;
}
fieldset.formBlock .goodsOrderSelectBox li:first-child {
  border-top: none;
  padding-top: 0;
}
fieldset.formBlock .goodsOrderSelectBox li {
  overflow: hidden;
  padding-top: 15px;
  border-top: 1px dotted #cccccc;
  list-style: none;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsItem {
  float: left;
  width: 49%;
}
fieldset.formBlock .goodsOrderSelectBox li div label {
  overflow: hidden;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsOptionName {
  display: block;
    margin-bottom: 5px;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsOptionItem {
  float: right;
    width: 49%;
  margin: 0;
}
fieldset.formBlock .goodsOrderSelectBox li div .goodsOrderSelectBoxOptionList {
  margin-left: 0;
}
fieldset.formBlock .goodsOrderSelectBox li div .goodsOrderSelectBoxOptionList li select {
  width: 97%;
}
fieldset.formBlock .goodsOrderSelectBox li li {
  list-style: none;
  border-top: none;
  padding-top: 0;
}
fieldset.formBlock .goodsOrderSelectBox li label input.checkbox {
  float: left;
  margin: 70px 0 0 0;
}
fieldset.formBlock .goodsOrderSelectBox li label .goodsThumbnail {
  display: block;
  float: left;
  height: 155px;
}
fieldset.formBlock .goodsOrderSelectBox li label .goodsThumbnail img {
  width: auto;
  height: 100%;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsName {
  cursor: pointer;
  margin-bottom: 10px;
}
fieldset.formBlock .goodsOrderSelectBox li label .goodsPrice {
  font-size: 110%;
    font-weight: bold;
    margin-bottom: 10px;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsOptionTitle {
  display: block;
  margin-bottom: 5px;
  padding: 5px;
  background-color: #b6d9f2;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsGiftItem {
  clear: both;
  overflow: hidden;
  margin-top: 15px;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsGiftItem .goodsGiftTitle {
  display: block;
  margin-bottom: 5px;
  padding: 5px;
  background-color: #b6d9f2;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsGiftItem .goodsGiftItemList {
  float: left;
  width: 33%;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsGiftItem .goodsGiftItemList .goodsGiftThumbnail img {
  width: 100%;
  height: auto;
}
fieldset.formBlock .goodsOrderSelectBox li label .goodsTitle {
  float: left;
}
fieldset.formBlock .goodsOrderSelectBox li .goodsText {
}
fieldset.formBlock .goodsOrderSelectBox li .goodsText input[type="text"] {
  width: 2.5em;
}
.button {
  margin: 20px 0 0 0;
  text-align: center;
}
.btnSend {
  position: relative;
  border: 1px solid #de8405;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
}
span.btnSend {
  display: inline-block;
}
.btnSend input {
  position: relative;
    display: block;
  width: 150px;
    border: none;
  background: #FFAB09;
    color: #ffffff !important;
  padding: 5px;
  line-height: 1em;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
  font-size: 0.8125em;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  background: linear-gradient(#fbb450, #f89406);
    background-image: -moz-linear-gradient(center top , #fbb450, #f89406);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#fbb450), to(#f89406));
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}
.btnSend input:hover {
  background: #f89406;
  text-decoration: none;
  color: #ffffff !important;
}
.btnBack {
  position: relative;
  border: 1px solid #777777;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
}
span.btnBack {
  display: inline-block;
}
.btnBack input {
  position: relative;
    display: block;
  width: 100px;
    border: none;
    color: #ffffff !important;
  padding: 5px;
  line-height: 1em;
  text-decoration: none;
  text-align: center;
  font-weight: bold;
  font-size: 0.8125em;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  background-color: #bbbbbb;
  background: linear-gradient(#cccccc, #999999);
    background-image: -moz-linear-gradient(center top , #cccccc, #999999);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#cccccc), to(#999999));
  border-radius: 3px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
}
.btnBack input:hover {
  background: #999999;
  text-decoration: none;
}
/* Button【変更注意】ボタンスタイル
----------------------------------------------- */
.fileDownload {
  display: inline-block;
  border: 1px solid #7CA800;
  margin: 20px 0;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  background:linear-gradient(#ffffff, #AFC900);
  background-image: -moz-linear-gradient(top , #ffffff, #AFC900);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#AFC900));
  background: -ms-linear-gradient(top, #ffffff, #AFC900);
}
.fileDownload:hover {
  background:linear-gradient(#619212, #375E13);
  background-image: -moz-linear-gradient(top , #619212, #375E13);
  background-image: -webkit-gradient(linear, left top, left bottom, from(#619212), to(#375E13));
  background: -ms-linear-gradient(top, #619212, #375E13);
}
.fileDownload a {
  display: block;
  padding: 5px 1em;
  text-align: center;
  color: #385F13;
  text-decoration: none;
  border: 1px solid #ffffff;
  font-size: 13px;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
}

.fileDownload a:hover {
  color: #ffffff;
}

.submitBtn {
	display: block;
	cursor: pointer;
	position: relative;
	z-index: 1;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 18px 53px 18px 37px !important;
	border-radius: 10px !important;
	background-color: #0D56A5 !important;
	color: #fff !important;
	border: none !important;
	font-weight: 700 !important;
	font-size: calc(16rem / 16) !important;
	line-height: 1.4 !important;
	text-align: center !important;
	letter-spacing: .03em !important;
	margin: 0 auto;
}
.formCheckBlock,.formThanksBlock{
    max-width: 800px;
	width: 90%;
	margin: 0 auto;
	padding: 4em 0;
}
@media screen and (max-width: 480px) {
	fieldset legend.title {
		display: block;
		padding: 10px 0;
		color: #514f4e;
		float: inherit;
		width: 100%;
	}
	fieldset.titleDisplayNone .content {
		width: 100%;
	}
	fieldset div.content {
    width: 100%;
		box-sizing: border-box;
	}
	fieldset div.content input[type=text] {
    width: 42%;
	}
	fieldset .textarea {
		width: 100%;
		height: 200px;
		padding: 2px;
		border: 1px solid #aaaaaa;
		box-sizing: border-box;
	}
}
.field-box label{
	display: block;
	margin-bottom: 0.5em;
}
