@charset "utf-8";
/* CSS Document */

/*sidebar*/
.sidebar .box01 {background: url(img/side/box01_bg.jpg)top center repeat; box-sizing: border-box; border: 3px solid #304fc7; padding: 10px 0;}
.sidebar .box02 {background: url(img/side/box02_bg.jpg)bottom center no-repeat; padding: 10px 0;}
.sidebar .box03 {background-color: #fff; box-sizing: border-box; border: 3px solid #e5e5e5; border-top: none; padding: 10px 0;}
.sidebar .box04 {background: url(img/side/box04_bg.jpg)top center repeat; padding: 10px 0;}


/*contactbnr*/
.contact_banner {box-sizing: border-box; border: 5px solid #304fc7; margin-top: 20px; line-height: 1; background: url(img/contactbnr/bg.jpg)top center repeat; position: relative;}
.contact_banner .big {font-size: 25px; line-height: 1; margin-top: 20px; display: inline-block;}
.contact_banner .con_title {background-color: #304fc7; font-size: 50px; line-height: 1; padding: 10px 0;}
.contact_banner .con_inner {display: flex; justify-content: space-between; align-items: flex-end; padding: 20px;}
.contact_banner .icon01,.contact_banner .icon02 {position: absolute; top: 20px; left: 40px;}
.contact_banner .icon02 {left: inherit; right: 40px;}
.contact_banner .mail {box-sizing: border-box; border-left: 2px solid #304fc7; padding-left: 23px;}
.contact_banner02 {margin-bottom: 40px;}
.contact_banner02 .con_inner {width: 950px; margin: auto;}
.contact_banner02 .icon01, .contact_banner02 .icon02 {top: 140px; left: 20px;}
.contact_banner02 .icon02 {left: inherit; right: 20px;}


/*company*/
#company .table01 {box-sizing: border-box; border: 1px solid #304fc7; width: 100%;}
#company .table01 th,#company .table01 td {font-weight: bold; padding: 10px 20px; box-sizing: border-box; border-bottom: 1px solid #304fc7; vertical-align: middle;}
#company .table01 th {color: #fff; background-color: #304fc7; text-align: center; border-bottom: 1px solid #fff;}
#company .table01 .last {border-bottom: none;}
#company .table02 th {width: 200px;}
#company iframe {width: 100%; height: 400px;}
#company .con {box-sizing: border-box; border: 3px solid #304fc7; padding: 20px; padding-bottom: 0;}
#company .con p {margin-bottom: 20px;}
#company .table03 {width: 100%;}
#company .table03 th,#company .table03 td {font-weight: bold; padding-bottom: 20px; font-size: 20px;}
#company .table03 span {border-left: 5px solid #304fc7; padding-left: 20px;}


#company .youtube_movie{
	position:relative;
	width:100%;
	padding-top:56.25%;
		}

/*contact*/
#contact .bg {background: url(img/contact/bg.jpg)top center repeat; box-sizing: border-box; border: 3px solid #304fc7;}
#contact .big {font-size: 20px; line-height: 1; margin-top: 20px; margin-bottom: 5px;}
#contact ul {line-height: 2;}
#contact table {width: 100%; box-sizing: border-box; border: 2px solid #000000; margin-top: 20px; margin-bottom: 20px;}
#contact table th,#contact table td {padding: 10px; box-sizing: border-box; border-bottom: 2px solid #000000; background-color: #fff;}
#contact table th{font-weight: bold; background-color: #eeeeee; vertical-align: middle; width: 190px;}
#contact table input,#contact table textarea {width: 100%; box-sizing: border-box; padding: 3px;}
.mwform-radio-field input {width: auto!important; padding: inherit!important;}
.mwform-radio-field-text {font-weight: bold;}
#contact table .tel_area {width: auto;}
/*確認画面へ進むボタン用*/
.mw_wp_form_input .btn input:hover,
.mw_wp_form_confirm .btn input:hover { opacity: 0.7; }
.mw_wp_form_input .btn input{
background: url(img/contact/btn_bg.png)right center no-repeat; background-position-x: 95%;
    font-size: 20px!important;
    width: 400px!important;
    padding: 20px 0!important;
    line-height: 1;
	color: #000;
	background-color: #fff;
	font-weight: bold;
	box-shadow: 5px 5px #b5b5b5;
	border: 1px solid #000000;
}
/*送信ボタン用*/
.mw_wp_form_confirm .btn input{
background: url(img/contact/btn_bg.png)right center no-repeat; background-position-x: 95%;
    font-size: 20px!important;
    width: 400px!important;
    padding: 20px 0!important;
    line-height: 1;
	color: #000;
	border: 1px solid #000000;
}

/*blog*/
#blog .con {padding-bottom: 15px; box-sizing: border-box; border-bottom: 1px solid #ccc; margin-bottom: 15px;}
#blog .con:nth-last-child(1) {margin-bottom: 0; padding-bottom: 0; border-bottom: none;}
#blog_single .box01,#blog .box01 {box-sizing: border-box; border: 3px solid #ccc; padding: 20px; background: url(img/contact/bg.jpg)top center repeat; margin-bottom: 20px;}
#blog_single .box01 .inner {margin-bottom: 10px;}
#blog_single .tag,#blog .tag {background-color: #eb6b06; color: #fff; padding: 2px 0; margin-left: 10px; text-align: center; width: 80px;}
#blog_single .tag02,#blog .tag02 {background-color: #522f0e; color: #fff; padding: 2px 0; margin-left: 10px; text-align: center; width: 80px;}
#blog .txt {margin-top: 5px}
#blog a,#case_single a {display: inline;}

/*voice*/
#case_single .img {box-sizing: border-box; border: 2px solid #ccc; padding: 20px;}
#case_single .img img {width: 100%; height: 388px; object-fit: cover;}
#case_single .gallery_area {box-sizing: border-box; padding: 20px; border: 2px solid #ccc; border-top: none;}
#case_single .gallery_box {display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap;}
#case_single .gallery_box a {margin-right: 20px; margin-top: 20px; width: 210px; display: block;}
#case_single .gallery_box a img {height: 155px; width: 100%;}
#case_single .gallery_box a:nth-child(3n) {margin-right: 0;}
#case_single .case_txt_box {box-sizing: border-box; padding: 20px; border: 2px solid #ccc; border-top: none;}
#case_single .page_title {font-size: 21px;}
.voice_single .page_title {font-size: 19px!important;}

/*一覧ページ*/
#case .item {position: relative; margin-right: 20px; width: 327px; padding: 10px; box-sizing: border-box; background-color: #f5f5f5;}
#case .item:nth-child(2n) {margin-right: 0;}
#case .item:nth-child(3),#case .item:nth-child(4) {margin-top: 20px;}
#case_arcive_list {padding: 20px; padding-top: 0;}
#case .item img {width: 100%; height: 200px; object-fit: cover;}
#case .txt_area {padding: 10px 10px 0;}
#case .btn {background-color: #EF7800; color: #fff; line-height: 1; font-size: 16px; padding: 7px 0; width: 60%; margin: 8px auto 0;}

/*recommended_all_list*/
#recommended_all_list ul a {width: 225px; height: 54px; font-size: 25px; line-height: 1; background: url(img/recommended/bnr_bg.jpg)top left repeat; position: relative;}
#recommended_all_list ul a:nth-child(n + 4) {margin-top: 20px;}
#recommended_all_list ul a:nth-child(2) {background: url(img/recommended/bnr_bg02.jpg)top left repeat;}
#recommended_all_list ul a:nth-child(3) {background: url(img/recommended/bnr_bg03.jpg)top left repeat;}
#recommended_all_list ul a:nth-child(4) {background: url(img/recommended/bnr_bg04.jpg)top left repeat;}
#recommended_all_list ul a:nth-child(5) {background: url(img/recommended/bnr_bg05.jpg)top left repeat;}
#recommended_all_list ul a:nth-child(6) {background: url(img/recommended/bnr_bg06.jpg)top left repeat;}
#recommended_all_list ul a:nth-child(7) {background: url(img/recommended/bnr_bg07.jpg)top left repeat;}
#recommended_all_list ul a .icon {position: absolute; right: 2px; bottom: 2px;} 


/*recommended*/
#recommended_single .bg {background: url(img/recommended/bg.jpg)top center repeat; border: 3px solid #000; font-size: 16px; margin-top: 16px;}
#recommended_single .img {box-sizing: border-box; border: 2px solid #ccc; padding: 20px;}
#recommended_single .img img {width: 100%; height: auto; object-fit: cover;}
#recommended_single .gallery_area {box-sizing: border-box; padding: 20px; border: 2px solid #ccc; border-top: none;}
#recommended_single .gallery_box {display: flex; justify-content: flex-start; align-items: flex-start; flex-wrap: wrap;}
#recommended_single .gallery_box a {margin-right: 20px; margin-top: 20px; width: 210px; box-sizing: border-box; border: 2px solid #304fc7;}
#recommended_single .gallery_box a img {height: 155px; width: 100%;}
#recommended_single .gallery_box a:nth-child(3n) {margin-right: 0;}
#recommended_single .page_title {font-size: 21px;}
#recommended_single .text_area {display: flex; justify-content: flex-start; box-sizing: border-box; border: 2px solid #000000; background-color: #fff; margin-bottom: 15px;}
#recommended_single .text_area p {padding: 10px;}
#recommended_single .text_area .pd {padding: 10px 35px;}
#recommended_single .tiny{font-size: 12px;}
#recommended_single .title {background: url(img/recommended/title_bg.jpg)top left repeat; width: 125px; box-sizing: border-box; border-right: 2px solid #000; display: flex; justify-content: center; align-items: center;}
#recommended_single .title0101 {width: 90px;}
#recommended_single .title02 {border-left: 2px solid #000;}
#recommended_single .inner {width: 50%; box-sizing: border-box; display: flex; justify-content: flex-start;}
#recommended_single .text_area:nth-last-child(1) {margin-bottom: 0;}


#recommended .item {width: 225px; margin-right: 20px; margin-top: 20px;}
#recommended .item:nth-child(1),#recommended .item:nth-child(2),#recommended .item:nth-child(3) {margin-top: 0;}  
#recommended .item:nth-child(3n) {margin-right: 0;}
#recommended .img {width: 225px;}
#recommended .item .inner {display: flex; justify-content: flex-start; align-items: center; margin-top: 10px; line-height: 1;}
#recommended .img img {object-fit: cover; height: 168px; width: 100%;}
#recommended .item .c_text {margin: 7px 0;}
#recommended .item .btn {box-sizing: border-box; border: 2px solid #000000; line-height: 1; padding: 6px 0; background: url(img/recommended/btn_bg02.png)center right 10px no-repeat; margin-top: 10px;}
#recommended .item .icon_area {margin-bottom: 10px; display: flex; align-items: center; justify-content: flex-start;}
#recommended .item .icon_area .type_icon01 {margin-right: 10px; color: #fff; padding: 5px 10px; background-color: #4e454a;}
#recommended .item .icon_area .type_icon02 {background-color: #EF7800;}
#recommended .item .icon_area .type_icon03 {background-color: #2d58ff;}
#recommended .item .icon_area .type_icon04 {background-color: #1a3499;}
#recommended .item .icon_area .type_icon05 {background-color: #304EC6;}
#recommended .navigation h2 {display: none;}


/*question*/
#question .bg {background: url(img/question/bg.jpg)top right repeat;}
#question .box01 {box-sizing: border-box; border: 7px solid #b2b2b2; background-color: #dde4ed; padding: 3px;}
#question .box01 .title_area {display: flex; align-items: center; justify-content: flex-start; font-size: 32px; background-color: #304fc7;}
#question .box01 .title_area img {margin-right: 20px; padding: 10px;}
#question .box01 .inner {display: flex; justify-content: space-between; align-items: center; background: url(img/question/box01_inner.jpg)top center repeat; padding: 10px; text-align: justify; padding-right: 20px; position: relative;}
#question .icon {position: absolute; top: 10px; right: 20px;}
#question h3 {font-size: 35px; margin-bottom: 20px;}
#question .box01 .inner img {margin-right: 20px;}
#question .box05 .icon {top: -10px;}

/*reason*/
#reason .bg {background: url(img/question/bg.jpg)top left repeat; padding: 20px;}
#reason .box01 {box-sizing: border-box; border: 5px solid #0a0204; background-color: #fff;}
#reason .box01 h2 {font-size: 38px; line-height: 1.2;}
#reason .box01 h3 {position: relative;}
#reason .box01 .inner {display: flex; justify-content: space-between; align-items: flex-start; margin-top: 20px;}
#reason .icon01 {margin-left: auto;}
#reason .box01 .inner img {margin-left: 20px;}
#reason .box01 .con {background: url(img/reason/box01_con_bg.jpg)top left repeat; padding: 60px 20px 20px; margin-top: 50px; position: relative;}
#reason .box01 .con .inner {align-items: center;}
#reason .box01 .con .inner img {margin-left: 0; margin-right: 20px;}
#reason .box01 .con .icon {position: absolute; top: -50px; left: -20px;}
#reason .box01 .text {font-size: 24px; background-color: #f7f900; padding: 20px 0; line-height: 1; margin: 20px 0;}
#reason .box01 .inner02 {display: flex; justify-content: space-between; align-items: center;}
#reason .box02 .con {padding-bottom: 0;}
#reason .box03 .text {line-height: 1.5; padding: 15px 0;}

/*flow*/
#flow .box01 ul {display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap;}
#flow .box01 li {background: url(img/flow/box01_li_bg.jpg)top center repeat; width: 211px; height: 97px; display: flex; align-items: center; justify-content: center; position: relative; font-size: 25px; line-height: 1.1; margin-top: 50px;}
.flow02 .box01 li {width: 150px!important; height: 98px!important; font-size: 18px!important;}
#flow .box01 li .icon {position: absolute; top: -35px; left: 0;}
#flow .box01 .title {background-color: #304fc7; font-size: 25px; line-height: 1; padding: 5px 0;}
#flow .box01 .icon02 {position: absolute; left: 0; right: 0; margin: auto; bottom: 7px;}
#flow .bg {background: url(img/flow/bg.jpg)top center repeat; padding: 10px;}
#flow .box02 {box-sizing: border-box; border: 5px solid #304fc7; background: url(img/flow/box02_bg.jpg)top left repeat;}
#flow .box02 .title_area {display: flex; justify-content: flex-start; align-items: center; font-size: 35px; line-height: 1; background: url(img/flow/box02_title_bg.jpg)top left repeat; padding: 10px 0;}
#flow .box02 h2 {font-size: 40px;}
#flow .box02 h3 {font-size: 35px; line-height: 1.2; margin-bottom: 20px;}
#flow .box02 .title_area p {margin-left: 30px;}
#flow .box02 .inner {display: flex; justify-content: space-between; align-items: center;}
#flow .box02 .inner img {margin-right: 20px;}
#flow .box02 .area {display: flex; justify-content: flex-end; align-items: center; margin: 10px auto 0; width: 560px; margin-left: 15px;}
#flow .box02 .tel,#flow .box02 .mail {box-sizing: border-box; width: 500px; height: 60px; display: flex; justify-content: center; align-items: center; color: #fff; background-color: #304fc7; font-size: 45px; margin-left: 20px;}
#flow .box02 .mail {background-color: #ee7800; font-size: 25px;}
#flow .box04 .con {box-sizing: border-box; border: 3px solid #d6d6d6; background-color: #fff; padding: 10px; margin-top: 40px;}
#flow .box04 .con h3 {font-size: 32px; margin: 20px auto;}
#flow .box04 .title {background-color: #3956c8; width: 530px; display: flex; justify-content: center; align-items: center; padding: 5px 0; line-height: 1; font-size: 32px; margin: -33px auto 0;}
#flow .box04 .con .inner {margin-top: 20px;}
#flow .box05 .con {background-color: #ee7800; padding: 20px; font-size: 20px; margin-top: 50px;}
#flow .box05 .title {font-size: 30px; background-color: #304fc7; line-height: 1; padding: 5px 0; width: 490px; margin: -40px auto 0;}
#flow .box05 table {margin-top: 20px;}
#flow .box06 .con {background-color: #ee7800; padding: 20px; color: #fff; margin-top: 40px;}
#flow .box06 .con .icon,#flow .box07 .icon {display: flex; align-items: center; justify-content: center; width: 115px; height: 38px; background-color: #304fc7; font-size: 32px; margin: -40px auto 0;}
#flow .box06 .con .big {font-size: 32px; line-height: 1.2; margin: 20px auto;}
#flow .box06 .con .inner {margin-bottom: 20px;}
#flow .box07 .icon {margin-top: 20px; width: 260px; height: 47px;}
#flow .box07 .big {font-size: 40px; line-height: 1; margin: 20px auto 30px;}
#flow .box07 ul {display: flex; justify-content: space-between; align-items: center;}
#flow .title02 {margin-top: 20px;}

/*expert*/
#expert .bg {background: url(img/expert/bg.jpg)top left repeat;}
#expert .title_area {display: flex; justify-content: space-between; align-items: center; box-sizing: border-box; border: 5px solid #0a0204; background-color: #fff; padding: 10px 30px 10px 120px; position: relative;}
#expert h2 {font-size: 22px; line-height: 1.3; font-weight: bold;}
#expert .box_icon01 {position: absolute; left: 10px; top: -10px; bottom: 0; margin: auto;}
#expert .title_area .icon {position: absolute; top: -30px; right: -20px;}
#expert .con {box-sizing: border-box; border: 5px solid #d2d2d2; padding: 20px; background-color: #fff; margin-top: 20px; position: relative;}
#expert .box01 .inner {display: flex; justify-content: space-between; align-items: center; text-align: justify; margin-top: 20px;}
#expert .box01 .inner img {margin-right: 20px;}
#expert h3 {font-size: 40px; font-weight: bold; text-align: center;}
#expert .box_icon02,#expert .box_icon03 {position: absolute; top: -18px; left: -30px;}
#expert .box_icon02 {top: -50px; right: 10px; left: inherit;}
#expert .con02_title {margin-top: 50px;}
#expert .box04 {box-sizing: border-box; border: 5px solid #000; background-color: #fff; text-align: justify;}
#expert .box04 .inner {display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;}
#expert .box04 .inner img {margin-right: 20px;}
.mask_area {display: flex; align-items: center; justify-content: center; min-height: 300px; margin-bottom: 20px;}
