@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/
/**********************************************
          common
**********************************************/
.en {
	font-family: "Outfit", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}
#header,#footer,#fix_header {
	letter-spacing: 0;
}
.l-mainContent__inner>.post_content {
	padding:0;
}
#content.l-container {
	margin-bottom:1em;
}
main.l-article {
	width: 100%;
}
.post_content > * {
	width:1200px;
	max-width:100%;
	margin-left:auto;
	margin-right:auto;
}
@media (min-width: 600px) {
    .l-content {
        padding-top: 2em;
    }
}
.p-blogParts.post_content > * {
	width:auto;
}
.post_content img {
	border-radius: 10px;
}
.sec_wide {
	width: calc(100vw - var(--swl-scrollbar_width, 0px));
}
.sec_bg_paint .box_white,.sec_wide .box_white {
	border-radius: 20px;
}
.sec_wide .wp-block-columns {
	padding-top:0;
}
.w_880 {
	width:880px;
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: #ecf5f8;
}
.is-style-stripes tbody tr:nth-child(2n) {
	background-color: #fff;
}
@media (max-width: 880px) {
	.w_880 {
		width: auto!important;
		margin-left: var(--swl-pad_container, 0) !important;
        margin-right: var(--swl-pad_container, 0) !important;
	}
}
@media (max-width: 781px) {
	.sec_bg_paint {
		margin-top:6em;
	}
	.post_content .sec_bg_paint {
		margin-left:0!important;
		margin-right:0!important;
		padding-left: var(--swl-pad_container, 0) !important;
        padding-right: var(--swl-pad_container, 0) !important;
	}
}
.l-topTitleArea__body {
	width: auto;
    text-align: center;
	color: #111;
}
.c-pageTitle {
    text-shadow: none;
	font-size:2rem;
}
.c-pageTitle span {
	display: block;
	font-size:1.2rem;
}
.c-pageTitle__subTitle {
	display: block;
    margin: 0;
    font-style: normal;
    opacity: 1;
}
.post_content h2 {
	position: relative;
	text-align: center;
    padding: 30px;
    display: inline-block;
	width:auto;
	color:#164d7a;
	margin: 2em 0;
	min-width: 300px;
}
.post_content h2::before,
.post_content h2::after {
    position: absolute;
    width: 30px;
    height: 20px;
    content: '';
}

.post_content h2::before {
    border-left: solid 3px #164d7a;
    border-top: solid 3px #164d7a;
    border-radius: 5px 0 0 0;
    top: 0;
    left: 0;
}

.post_content h2::after {
    border-right: solid 3px #164d7a;
    border-bottom: solid 3px #164d7a;
    border-radius: 0 0 5px 0;
    bottom: 0;
    right: 0;
}
.c-secTitle {
	display: flex;
  justify-content: center;
  align-items: center;
  color: #333;
}
.c-secTitle::before, .c-secTitle::after {
  content: '';
  width: 30px;
  height: 1px;
  background-color: #7a9aa2;
	position: static;
}
.c-secTitle::before {
  margin-right: 30px;
}
.c-secTitle::after {
  margin-left: 30px;
}


.txt_kome  {
	font-size: 14px;
    text-indent: -3em;
    display: block;
    margin-left: 3em;
}
.g_blue {
	color:#4285f4;
}
.g_red {
	color:#ea4335;
}
.g_yellow {
	color:#fbbc05;
}
.g_green {
	color:#34a853;
}
@media not all and (min-width: 1310px) {
	.l-content {
		padding-left: 24px;
        padding-right: 24px;
	}
	main#main_content.l-article{
		max-width:unset;
		/*width:auto;*/
		margin-left: 0px!important;
    	margin-right: 0px!important;
	}
}
@media not all and (min-width: 1200px) {
	.l-content {
		padding-left: var(--swl-pad_container, 0)!important;
		padding-right: var(--swl-pad_container, 0)!important;
	}
	/*.post_content > .is-style-dent_box {
		width: auto;
		margin-left: var(--swl-pad_container, 0)!important;
		margin-right: var(--swl-pad_container, 0)!important;
	}
	.is-style-balloon_box2 {
		margin-left: var(--swl-pad_container, 0) !important;
        margin-right: var(--swl-pad_container, 0) !important;
		width: auto;
	}
	main.l-article{
		margin-left: var(--swl-pad_container, 0)!important;
		margin-right: var(--swl-pad_container, 0)!important;
	}*/
	
}
/* タブレットだけの時 */
@media (max-width: 768px) {
	.sp_left {
		text-align: left!important;
	}
}
/* スマホだけの時 */
.sp_sp_only {
	display: none;
}
@media (max-width: 640px) {
	.sp_sp_only {
		display: block;
	}
	.pc_tab_only {
		display: none;
	} 
	.sp_sp_left {
		text-align: left!important;
	}
	.post_content h2 {
		display: block;
		padding:20px;
	}
}

/**********************************************
          header
**********************************************/
#header {
	background: none;
	box-shadow:none;
}
.-series .l-header__logo {
	width: 230px;
	height: 105px;
	max-width: 22%;
	background: #fff;
	margin: 0;
	border-radius: 0 0 20px;
	-webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
.-series .l-header__logo a,.l-fixHeader__logo a {
	-webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.-series .l-header__logo a:hover,.l-fixHeader__logo a:hover {
	transform: scale(1.05, 1.05) ;
	opacity: 0.7;
}
.l-header__logo {
	margin-left:10px;
	max-width:24%;
}
.l-fixHeader__logo {
	margin: 0 20px;
}
.l-fixHeader__gnav.c-gnavWrap {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: calc(100% - 280px);
	min-height: 54px;
    margin-right: 20px;
    min-width: 72%;
	margin-top: 10px;
}
@media not all and (min-width: 1490px) {
	.l-header__logo {
		padding: 0!important;
		height: 68px;
		margin-top: 8px;
	}	
}
@media not all and (min-width: 960px) {
	.-series .l-header__logo {
		background: rgb(255 255 255 / 96%);
		box-shadow: 0 1px 4px rgba(0, 0, 0, .12);
        border-radius: 0 0 16px;
        position: absolute;
        max-width: unset;
        width: 172px;
        height: 67px;
        top: 0;
        left: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
			-ms-flex-pack: center;
				justify-content: center;
		-webkit-box-align: center;
			-ms-flex-align: center;
				align-items: center;
	}
	.-series .l-header__logo h1 {
		height: 100% !important;
        width: 100%;
        margin: 0 auto;
	}
	.-series .l-header__logo h1 a {
		display: block;
		align-content: center;
		text-align: center;
	}
	.-series .l-header__logo h1 img {
		width:140px;
	}
	.l-header__menuBtn {
		width: 56px;
		height: 40px;
		border: solid 2px #FF662A;
		border-radius: 40px;
		margin: 19px 24px 0 0;
		background: #fff;
		color:#FF662A;
	}
}
#header .l-container,.l-fixHeader__inner {
	max-width: 100%;
    padding: 0;
	-webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
	-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	
}
#header #gnav {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack: end;
    -ms-flex-pack: end;
        justify-content: flex-end;
	-webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	width: calc(100% - 22%);
    margin-right: 50px;
	min-width: 72%;
	margin-top:46px;
}
.c-gnav>.menu-item>a {
	padding: 0px 10px 10px;
}
.c-gnav>.menu-item.menu-item-has-children>a span:after {
	color: inherit;
    content: "";
    display: inline-block;
    width: 6px;
	height: 6px;
	border: 1px solid;
	border-color:  transparent transparent #565656 #565656;
	transform: rotate(-45deg);
	margin-left: 8px;
    position: relative;
    bottom: 4px;
}
.c-gnav>.menu-item.menu-item-has-children.is-hover>a span:after {
	border-color: #565656 #565656 transparent transparent;
	bottom: 0px;
}
.c-gnav {
	height: 54px;
}
.c-gnav a::after {
	background: #ff6531;
    height: 6px;
}
.h_contact {
	margin-left: 5px;
}
.h_contact ul {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	gap:10px;
}
.h_contact ul li {
	width:172px;
}
.h_contact ul li a {
	display: block;
	background: #ff662a;
	color:#fff;
	border:solid 2px #fff;
	text-align: center;
    border-radius: 50em;
    line-height: 40px;
	font-size:14px;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0);
  	-webkit-transition: all 0.3s ease 0s;
	-o-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
	
}
.h_contact ul li a:hover {
	transform: translateY(-5px) scale(1.02);
  	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
	letter-spacing: 0.1em;
}
.h_contact ul li.h_pdf a {
	background: #fff;
	color:#ff662a;
	border:solid 2px #ff662a;
}
.c-gnav>.menu-item.menu-item-675.is-hover >a:after {
	background: #fff!important;
	height: 100%!important;
	border-radius: 10px 10px 0 0!important;
}
.c-gnav>.menu-item.menu-item-675.-current >a:after {
	bottom: 0;
    content: "";
    display: block;
    left: 0;
    position: absolute;
    background: #ff6531;
    height: 6px;
    border-radius: 0;
	transition: unset;
}
.c-gnav>.menu-item>.sub-menu {
	width: 600px;
	border-radius:0 0 20px 20px;
	overflow: hidden;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
	box-shadow:none;
}
.c-gnav .sub-menu .sub-menu {
	position: relative;
    left: 0;
    z-index: 10;
	box-shadow:none;
	margin-left: 1em;
}
.c-gnav li:hover .sub-menu {
	opacity: 1;
	visibility: visible;
}


@media not all and (min-width: 1250px) {
	.l-fixHeader__logo {
		padding: 7px 0px 9px;
	}
	.l-fixHeader__inner .c-gnav {
		padding-bottom: 7px;
	}
}
@media not all and (min-width: 1140px) {
	#header #gnav {
		min-width: 71%;
	}
}
@media not all and (min-width: 960px) {
	#header {
		background: none;
		box-shadow: none;
	}
	#header #gnav {
		display: none;
	}
}

/**********************************************
          footer
**********************************************/
#footer {
}
.l-footer__foot, .l-footer__widgetArea {
	padding:40px 0;
}
.l-footer__foot .l-container {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.f_info {
	display: block;
	-webkit-order: -1;
    order: -1;
}
.f_info p {
	font-size:17px;
	margin-bottom: 5px;
}
.f_info .f_logo {
	margin-bottom:30px;
}
.f_info .f_logo a {
	display: block;
	-webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.f_info .f_logo a:hover {
	transform: scale(1.05, 1.05) ;
	opacity: 0.7;
}
.f_info .info_name {
	font-weight: bold;
}
.box_footer_menu {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	gap: 60px;
}
#footer .l-container .box_footer_menu,#footer .l-container .box_footer_menu .l-footer__right {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	gap: 60px;
}
#footer .l-container .box_footer_menu .l-footer__nav {
	display: block;
	padding: 0;
}
#footer .l-container .box_footer_menu .l-footer__nav .menu-item-has-children,
#menu-item-1179{
	margin-bottom:2em;
}
.l-footer__nav li a {
	border:none!important;
	font-size:14px;
	padding: 2px 0;
}
.l-footer__nav li.menu-item-has-children a {
	font-weight: bold;
}
.l-footer__nav li .sub-menu {
	margin-left:0.5em;
}
.l-footer__nav li .sub-menu li a{
	font-size:14px;
	font-weight: normal;
	display: inline-block;
}
.l-footer__nav li .sub-menu li:before {
	content:"-";
	display: inline-block;
	margin-right:6px;
}
.l-footer__nav li.menu-item-736,.l-footer__nav li.menu-item-739 {
	margin-bottom:0.5em;
}
.l-footer .copyright {
    width: 100%;
    color: #94A3B8;
    margin-top: 20px;
	text-align: right;
}
/* リンクなし */
#menu-item-740 > a {
	pointer-events: none;
}
@media not all and (min-width: 1080px) {
	.l-footer__foot .l-container {
		-webkit-flex-direction: column;
    	flex-direction: column;
	}
	#footer .l-container .box_footer_menu {
		-webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
		-webkit-flex-wrap: wrap;
    	flex-wrap: wrap;
		gap: 30px;
	}
	#footer .f_info {
		text-align: center;
		margin-bottom: 50px;
	}
	.l-footer .copyright {
		text-align: center;
		margin-top:50px;
	}
}
@media not all and (min-width: 640px) {
	#footer .l-container .box_footer_menu .l-footer__right {
		display: block;
	}
	footer .l-container .box_footer_menu .l-footer__nav .menu-item-has-children, #menu-item-1179 {
		margin-bottom: 0;
	}
}


/**********************************************
         CTA
**********************************************/
.box_cta_contact {
	background: #0c80a5 url("images/common/bg-contact.webp") no-repeat center bottom;
	color: #fff;
	padding:74px 0;
}
.page-id-10 .box_cta_contact,.recruit-template-default .box_cta_contact {
	background-color:#d088bd;
}
.box_cta_contact .p-blogParts {
	width: 1200px;
    max-width: 100%;
    margin: 0 auto;
}
.box_cta_contact p {
}
.box_cta_contact .tit {
	font-weight:bold;
	line-height: 1.3;
}
.box_cta_contact .service_cta_f_tit p span {
	font-size: 40px;
    font-weight: bold;
	line-height: 1.3;
}
.btn_cta_contact a {
	padding: 32px 32px 32px 50px;
    border: solid 2px #fff;
	background:  #ff662a;
	color:#fff;
	font-weight: bold;
	padding-right: 75px;
	/*-webkit-box-pack: justify!important;
      -ms-flex-pack: justify!important;
          justify-content: space-between!important;*/
	-webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn_cta_contact a svg {
	position: absolute;
    right: 40px;
}
.btn_cta_contact a:hover {
	transform: translateY(-5px) scale(1.02);
  	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
	letter-spacing: 0.1em;
}
.btn_cta_pdf a {
	padding: 32px 32px 32px 50px;
    border: solid 2px #ff662a;
	background: #fff;
	color:#ff662a;
	font-weight: bold;
	padding-right: 75px;
	/*-webkit-box-pack: justify!important;
      -ms-flex-pack: justify!important;
          justify-content: space-between!important;*/
	-webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn_cta_pdf a svg {
	position: absolute;
    right: 40px;
}
.btn_cta_pdf a:hover {
	transform: translateY(-5px) scale(1.02);
	background: #fff;
	color:#ff662a!important;
  	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
	letter-spacing: 0.1em;
}
.btn_cta_tel a {
	padding: 23px 32px 23px 50px;
    border: solid 2px #007fa3;
	background: #fff;
	color:#007fa3;
	line-height: 1;
	font-weight: bold;
	-webkit-box-pack: justify!important;
      -ms-flex-pack: justify!important;
          justify-content: space-between!important;
	-webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn_cta_tel a strong {
	font-family: "Outfit", sans-serif;
	font-size:1.7em;
}
.btn_cta_tel a:hover {
	transform: translateY(-5px) scale(1.02);
	background: #fff;
	color:#007fa3!important;
  	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
	letter-spacing: 0.1em;
}
.btn_cta_recruit a {
	padding: 23px 32px 23px 50px;
    border: solid 2px #007fa3;
	background: #fff;
	color:#007fa3;
	line-height: 1;
	font-weight: bold;
	-webkit-box-pack: justify!important;
      -ms-flex-pack: justify!important;
          justify-content: space-between!important;
	-webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.btn_cta_recruit a .swl-fz {
	display: block;
	margin-bottom: 10px;
}
.btn_cta_recruit a:hover {
	transform: translateY(-5px) scale(1.02);
	background: #fff;
	color:#007fa3!important;
  	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
	letter-spacing: 0.1em;
}
@media not all and (min-width: 1250px) {
	.box_cta_contact .p-blogParts {
		width:auto;
		margin-left:20px;
		margin-right:20px;
	}
	.box_cta_contact .p-blogParts.post_content > * {
		margin-left:0!important;
		margin-right:0!important;
		padding-left:0!important;
		padding-right:0!important;
	}
}
@media not all and (min-width: 1200px) {
	.box_cta_contact {
		text-align: center;
		padding: 50px 0;
		background-size: 110% auto;
	}
	.post_content .box_cta_contact .p-blogParts {
		margin-left:0;
		margin-right:0;
	}
	.box_cta_contact .wp-block-columns {
		display: block;
	}
	.box_cta_contact .box_cta_btn {
		margin-top: 50px!important;
	}
}
@media not all and (min-width: 980px) {
	.box_cta_contact p span {
		font-size:1rem!important;
	}
	.box_cta_contact .tit span,.box_cta_contact .service_cta_f_tit p span {
		font-size:1.6rem!important;
	}
	.box_cta_contact .box_cta_btn {
        margin-top: 30px;
    }
	.btn_cta_contact a,.btn_cta_pdf a {
		width: 100% !important;
		max-width: 440px;
		font-size: 1.4rem;
		padding: 20px 75px 20px 20px;
	}
	.btn_cta_recruit a {
		width: 100% !important;
		max-width: 440px;
		font-size: 1.4rem;
		padding: 20px;
	}
}

/**********************************************
          ぱんくず
**********************************************/
.p-breadcrumb__item:last-child span {
    opacity: 1;
}
.p-breadcrumb__list {
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}
.p-breadcrumb__text {
	white-space: unset;
}
.single .p-breadcrumb__item:last-child>span.p-breadcrumb__text {
    display: block;
}
.single #breadcrumb {
	margin: 30px 0 5px;
	padding: 8px 0;
}
@media not all and (min-width: 1310px) {
	.p-breadcrumb__list {
		width: 1200px;
		max-width:100%;
		padding-left: 0;
    	padding-right: 0;
		margin-left: auto;
    	margin-right: auto;
	}
}
@media not all and (min-width: 1274px) {
	.p-breadcrumb {
		margin-left:24px;
		margin-right:24px;
		padding:0;
	}
	.single #breadcrumb {
		margin-left:24px;
		margin-right:24px;
	}
}
@media not all and (min-width: 1200px) {
	.p-breadcrumb,.single #breadcrumb {
		margin-left: var(--swl-pad_container, 0);
        margin-right: var(--swl-pad_container, 0);
	}
}
@media not all and (min-width: 960px) {
	.single #breadcrumb {
		margin-top:5px;
		margin-bottom:5px;
		}
}
@media not all and (min-width:768px) {
	.single #breadcrumb {
		margin-top: 5px;
		margin-bottom:5px;
	}
}


/**********************************************
          カスタム投稿
**********************************************/
/** single **/
#body_wrap.single{
	background: url(images/common/bg-main.webp) no-repeat center top;
}
.single .post_content > * {
	width:auto;
}
.single #content.l-container  {
	background: rgb(255 255 255 / 80%);
    border-radius: 20px;
    padding: 50px;
	width: 1200px;
}
.single #main_content .p-toc {
	display: none;
}
.single-column #recent-posts-2,.single-column #categories-2,.single-column #archives-2 {
	display: none;
}
.l-articleBottom__section {
	margin-top: 4em;
}
.p-articleMetas__termList {
	width:100%;
}
.l-articleBottom__section.-author {
	background: #f3f3f3;
    padding: 25px 0 10px;
    border-radius: 10px;
}
.l-articleBottom__section.-author .p-authorBox {
	border: none;
}
.single .p-articleFoot {
	display: none;
}
.c-shareBtns {
	margin: 5em 0 2em;
}
.p-relatedPosts {
	gap: 15px 1%;
}
.p-relatedPosts .p-postList__item {
	margin-bottom:0;
}
@media not all and (min-width: 1274px) {
	.single #content.l-container {
		margin-left:24px;
		margin-right:24px;
		width:auto;
	}
	.h_contact ul li {
		width: 140px;
	}
}
@media not all and (min-width: 1200px) {
	.single #content.l-container {
		margin-left: var(--swl-pad_container, 0) !important;
        margin-right: var(--swl-pad_container, 0) !important;
		padding-bottom:var(--swl-pad_container, 0) !important;
	}
	.single main.l-article .l-mainContent__inner {
		padding:0!important;
	}
}
@media not all and (min-width: 960px) {
	.single #content.l-container {
		padding-top: 20px!important;
		overflow: hidden;
	}
	.p-articleFoot {
		margin-left:15px;
		margin-right:15px;
	}
	.l-articleBottom {
		margin-left:0px;
		margin-right:0px;
	}
	.l-sidebar {
		background: #f1f3f3;
		padding:30px 15px;
		border-radius: 10px;
	}
	.single #main_content .p-toc {
		display: block;
	}
	.p-toc__childList {
		display: none;
	}
	.single-column #sidebar {
		display: none;
	}
}
/** アーカイブ調整用 **/
.archive .p-postList__excerpt {
	display: none;
}
.category .p-postList__excerpt {
	display: block;
}
#top_title_area {
	position:relative;
	top: -85px;
	margin-bottom: -85px;
	padding: 75px 0 1em;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
	margin-left: 24px;
    margin-right: 24px;
	width:auto;
    height: 260px;
    border-radius: 20px;
    overflow: hidden;
	background: #cdeaff;
}


@media not all and (min-width: 1264px) {
	.sec_wide {
		padding-left: 24px!important;
    	padding-right: 24px!important;
	}
}
@media not all and (min-width: 1200px) {
	.category #content.l-container {
		width:auto;
		padding-left: 15px!important;
    	padding-right: 15px!important;
	}
	#top_title_area {
		margin-left: 15px!important;
    	margin-right: 15px!important;
	}
	.sec_wide {
		padding-left: 15px!important;
    	padding-right: 15px!important;
	}
}
@media not all and (min-width: 960px) {
	#top_title_area {
		top: -46px;
		padding: 55px 0 1em;
		height: 180px;
		margin-bottom: -50px;
	}
}

/******* コラム ******/
/** 注目記事 **/
.box_featured .p-postList {
	position: relative;
    padding-left: 50%;
    display: block;
}
.box_featured .p-postList li {
	width:50%!important;
}
.box_featured .p-postList li:nth-child(n+2) {
	width: 100% !important;
    margin-left: 20px;
	margin-bottom: 15px;
}
.box_featured .p-postList li:nth-child(n+2) a {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	gap: 20px;
    -webkit-box-align: start;
    -ms-flex-align:start;
    align-items: start;
}
.box_featured .p-postList li:nth-child(n+2) a .p-postList__thumb {
	width:47%;
}
.box_featured .p-postList li:nth-child(n+2) a .p-postList__body {
	padding-top: 0;
	width:47%;
}
.box_featured .p-postList li:first-child {
	position: absolute;
    left: 0;
}
@media not all and (min-width: 769px) {
	.box_featured .p-postList {
		padding-left:0;
	}
	.box_featured .p-postList li {
		width:100%;
		position: static !important;
        margin: 0 0 20px !important;
	}
	.box_featured .p-postList li:first-child {
		width:100%!important;
	}
}
/* 検索 */
.box_search {
	margin: 5em 0 3em;
    background: #007fa3;
    color: #fff;
    padding: 20px;
    border-radius: 10px;
    text-align: center;
}
.box_search .search_tit {
	cursor: pointer;
}
.box_search .search_tit.is-open {
	margin-bottom:10px;
}
.box_search .search_tit p {
	display: inline-block;
	font-weight: bold;
	font-size: 1.2rem;
}
.box_search .search_tit p:after {
	content:"▼";
	display: inline-block;
	margin-left: 1em;
    font-size: 0.8rem;
    position: relative;
    bottom: 2px;
}
.box_search .search_tit.is-open p:after {
	content:"▲";
}
.box_search .search_wrap {
	padding:10px 10px;
	display: none;
}
.wp-block-search__inside-wrapper {
	width: calc(100% - 10em);
}
.search_wrap .search_txt form {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.search_wrap .search_txt form label {
	width:10em;
	color: #00556b;
}
.search_wrap .search_txt form imput {
	border-radius: 5px;
}
.search_wrap .search_txt form .wp-block-search__input {
	width: calc(100% - 120px);
    height: 100%;
    padding-top: calc(0.667em + 2px);
    padding-right: calc(1.333em + 2px);
    padding-bottom: calc(0.667em + 2px);
    padding-left: calc(1.333em + 2px);
	border-radius: 5px;
}
.search_wrap .search_txt form button {
	border-radius: 5px;
    background-color: #04556c;
	width: 100px;
	margin: 0;
}
.search_wrap .search_cat {
	margin-top:10px;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.search_wrap .search_cat > p {
	width:10em;
}
.search_wrap .search_cat ul {
	width: calc(100% - 10em);
	margin-top:10px;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	gap: 10px;
}
.search_wrap .search_cat ul li a {
	border: solid 1px #fff;
    padding: 2px 15px;
    border-radius: 50em;
    display: inline-block;
    color: #fff;
}
@media not all and (min-width: 640px) {
	.box_search {
		padding: 10px
	}
	.search_wrap .search_txt form,.search_wrap .search_cat {
		display: block;
		text-align: left;
	}
	.search_wrap .search_txt form label {
		margin-bottom: 5px;
    	display: block;
	}
	.wp-block-search__inside-wrapper {
		width:100%;
	}
	.search_wrap .search_txt form .wp-block-search__input {
		width: calc(100% - 70px);
	}
	.search_wrap .search_txt form button {
		width: 66px;
		padding-right: 0;
		padding-left: 0;
	}
}

/***** 実績 ******/
.archive .box_anc {
	margin-bottom: 30px;
    padding: 15px;
	border: solid 1px #b4d2db;
    border-radius: 10px;
	 display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
	gap:20px;
}
.archive .box_anc .tit {
    font-weight: bold;
}
.archive .works_cat_list {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	gap:10px;
	font-size: 0.8rem;
}
.archive .works_cat_list li a {
	display: inline-block;
    padding: 2px 15px;
    border-radius: 50em;
	background: #fff;
	border: solid 1px #b4d2db;
}
.case_top {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.case_top .case_info {
	width:50%;
	padding-right:15px;
}
.case_top .case_info h1 {
	margin-bottom:0.5em;
}
.client_name {
	font-size:1.2rem;
	font-weight: bold;
	margin-bottom:0.5em;
}
.case_cat span {
	display: block;
}
.case_cat a {
	border: solid 1px #0C80A5;
    padding: 0 1em;
    border-radius: 50em;
    font-size: 1.1rem;
	margin-right: 0.5em;
}
.case_data {
	background: #f1f3f3;
    display: inline-block;
    padding: 0 1em;
    margin-top: 1em;
    border-radius: 5px;
}
.case_img {
	width:50%;
}
.client_info {
	padding: 30px 15px 0 0;
}
.client_info table {
    border-collapse: unset!important;
    border-spacing: 5px;
	margin: -5px;
	font-size: 0.9rem;
}
.client_info table th {
	background: #007fa3;
    color: #fff;
    text-align: center;
    border: none;
	border-radius: 8px 0 0 8px;
	width: 8em;
}
.client_info table td {
	border-radius: 0 8px 8px 0;
}
.case_attempt h2:before,.case_attempt h2:after,.case_attempt_point h2:before,.case_attempt_point h2:after {
	display: none;
}
.case_attempt h2,.case_attempt_point h2 {
	padding:0 0 1em;
	margin-bottom:1.5em;
	text-align: left;
}
.case_attempt h2:after,.case_attempt_point h2:after {
	content:"";
	width:50px;
	height:5px;
	display: block;
	background: #164d7a;
	border-radius: 50em;
	position:absolute;
	left:0;
	bottom:0;
}
.box_attempt_wrap {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.box_attempt {
	width:47%;
	background: #fff;
    border-radius: 10px;
    box-shadow: 0 0px 4px rgb(204 204 204 / 20%);
	position:relative;
}
.box_attempt .tit {
	background: #0C80A5;
    color: #fff;
    font-size: 1rem;
    font-weight: bold;
    border-radius: 10px 0 10px 0;
    display: inline-block;
    padding: 5px;
    width: 200px;
    text-align: center;
}
.box_attempt.attempt_01 .tit {
	background: #a9acad;
}
.box_attempt > div {
	padding: 15px 20px;
}
.attempt_01:after,.attempt_02:after {
	content:"";
	width:33px;
	height:46px;
	background: url(images/common/arrow-01.png) no-repeat center;
	display: block;
	position: absolute;
    right: -50px;
    top: 40%;
}
.box_case_content {
	margin: 50px -50px;
    padding: 50px;
    max-width: calc(100% + 100px);
    background: #f3f3ef;
}
.box_manager {
	position:relative;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
	gap:30px;
	border: solid 1px #0C80A5;
    padding: 30px 30px 15px;
    border-radius: 10px;
}
.box_manager .tit {
	background: #0C80A5;
    color: #fff;
    display: inline-block;
    padding: 0px 1em 3px;
    border-radius: 5px;
    position: absolute;
    top: -15px;
}
.manager_name {
	font-size:1.1rem;
	font-weight: bold;
	color:#0C80A5;
}
.box_manager .manager_img {
	width:160px;
}
.case_content .-author {
	display: none;
}
.case_attempt_point > div {
	padding: 15px 20px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 0px 4px rgb(204 204 204 / 20%);
    position: relative;
}
.case-template-default .wp-block-media-text__content {
	padding-top:0!important;
}
@media not all and (min-width: 1278px) {
	.single-case #content.l-container {
		padding-left: 0px !important;
        padding-right: 0px !important;
	}
	.box_case_content {
		margin: 50px -25px;
	}
}
@media not all and (min-width: 1273px) {
	.single-case .post_content > * {
		margin-left: 0!important;
        margin-right: 0!important;
		padding-left: var(--swl-pad_container, 0) !important;
        padding-right: var(--swl-pad_container, 0) !important;
	}
	.single-case .l-articleBottom {
		padding-left: var(--swl-pad_container, 0) !important;
        padding-right: var(--swl-pad_container, 0) !important;
	}
}
@media not all and (min-width: 1200px) {
	.single-case .post_content .box_cta_contact {
		padding-left: var(--swl-pad_container, 0) !important;
        padding-right: var(--swl-pad_container, 0) !important;
	}
	.case_top,.box_attempt_wrap {
		display: block;
	}
	.case_top >*,.case_top .case_info {
		width:100%;
		padding: 0;
	}
	.case_top .case_info .case_img.sp_only {
		display: block!important;
		width: 100%;
	}
	.case_top .case_img.pc_only {
		display: none!important;
	}
	.client_info {
		padding: 20px 0;
	}
	.box_attempt {
		width:100%;
		margin-bottom:47px;
	}
	.attempt_01:after, .attempt_02:after {
		right: auto;
		left: 45%;
		top: 100%;
		transform: rotate(90deg);
	}
	.single-case .wp-block-columns {
		display: block;
	}
	.single-case .wp-block-columns .wp-block-column {
		margin-bottom:3em!important;
	}
	.single-case .l-articleBottom {
		margin-left:0!important;
		margin-right:0!important;
	}
}
@media not all and (min-width: 769px) {
	.archive .box_anc {
		display: block;
	}
	.archive .works_cat_list {
		margin-top:10px;
	}
	.case-template-default .wp-block-media-text {
		display: block;
	}
	.case-template-default .wp-block-media-text .wp-block-media-text__media {
		margin-bottom:10px;
	}
	.case-template-default .wp-block-media-text .wp-block-media-text__content {
		padding:0!important;
		text-align: justify;
	}
	
}
@media not all and (min-width: 640px) {
	.single-case .post_content h1 {
		font-size: 1.3em;
		line-height: 1.4;
	}
}

/** 実績一覧 **/
.case_list_wrap {
	width:700px;
	max-width:100%;
}
.p-postList.-type-big_works {
	/*display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	gap:10px;*/
}
.p-postList.-type-big_works > li {
	width: 100%;
	background: #fff;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .1), 0 4px 4px -4px rgba(0, 0, 0, .1);
	overflow: hidden;
}
/*
.p-postList.-type-big_works > li .p-postList__thumb {
	border-radius: 0;
	box-shadow:none;
}
.p-postList.-type-big_works > li .p-postList__body {
	padding: 10px 20px 20px;
}
.p-postList.-type-big_works .post-terms {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	gap:10px;
	font-size:13px;
}
.p-postList.-type-big_works .post-terms li {
	background: #eaeaea;
    padding: 0 1em;
	border-radius: 5px;
}
.p-postList.-type-big_works .c-postTitle__ttl {
	font-size:1rem;
}
.p-postList.-type-big_works .p-postList__body >* {
	margin-top:10px;
}
.p-postList.-type-big_works .sub_txt {
	font-size:0.8rem;
}
*/
.p-postList.-type-big_works > li h2 {
	padding:15px;
	font-size: 18px;
	background: #fff;
	margin-bottom:0;
	text-align: left;
	width:100%;
	min-height:100px;
	align-content: center;
}
.p-postList.-type-big_works > li h2:before,.p-postList.-type-big_works > li h2:after {
	display: none;
}
.p-postList.-type-big_works > li .box_info {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
	gap: 15px;
	background: #fff;
}
.p-postList.-type-big_works > li .box_info .box_img,
.p-postList.-type-big_works > li .box_info .box_txt{
	width:47%;
}
.p-postList.-type-big_works > li .box_info .box_img {
	overflow: hidden;
	aspect-ratio: 165 / 120;
	border-radius: 0 10px 10px 0;
}
.p-postList.-type-big_works > li .box_info .box_img img {
	display: block;
	border-radius:0;
}
.p-postList.-type-big_works > li .box_info .box_txt {
	font-size: 0.8rem;
}
.p-postList.-type-big_works > li .box_info .box_txt dl {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	gap: 8px;
}
.p-postList.-type-big_works > li .box_info .box_txt dl dt {
	background: #333;
    color: #fff;
    border-radius: 5px;
    font-size: 0.7rem;
    padding: 4px 5px;
    line-height: 1;
}
.p-postList.-type-big_works > li .box_info .box_txt dd span {
	display: inline-block;
    border: solid 1px #ccc;
    border-radius: 50em;
    padding: 0 10px;
	margin-right:7px;
}
.p-postList.-type-big_works > li .box_info .box_txt dd strong {
	font-size: 16px;
	line-height: 1;
}
.p-postList.-type-big_works > li .box_info .box_txt p {
	margin: 5px 0 10px;
	line-height: 1.2;
}
.p-postList.-type-big_works > li .box_beforearter {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 0.8rem;
	gap: 10px;
    padding: 10px;
}
.p-postList.-type-big_works > li .box_beforearter > div {
	padding:10px;
	border-radius:10px;
}
.p-postList.-type-big_works > li .box_beforearter .box_before {
	background:#e8e8e8;
}
.p-postList.-type-big_works > li .box_beforearter .box_after {
	background:#e7f4f8;
}
.p-postList.-type-big_works > li .box_beforearter > div .tit {
	display: inline-block;
	background: #007fa3;
    color: #fff;
    border-radius: 5px;
    font-size: 0.7rem;
    padding: 4px 5px;
	margin-bottom: 5px;
    line-height: 1;
}
.p-postList.-type-big_works > li .box_beforearter .box_before .tit  {
	background: #333;
}

@media not all and (min-width: 780px) {
	.p-postList.-type-big_works > li {
		width: calc((100% - 10px) / 2);
	}
}
@media not all and (min-width: 640px) {
	.p-postList.-type-big_works > li {
		width: 100%;
	}
}

/*** 採用インタビュー ***/
/* single */
.single-recruit #content.l-container {
	margin-top:30px;
	padding-bottom:0;
}
.case_info {
	min-height:490px;
}
.case_info figure {
	width: 70%;
    position: absolute;
    right: 0;
    top: -24px;
}
.case_info h1 {
	position:relative;
	/*width: 41%;*/
	line-height: 1.4;
}
.tit_sub {
	color: #ff662a;
}
.top_interview_name {
	margin-top: 10%;
    font-size: 1.8rem;
    font-weight: bold;
    letter-spacing: 0.1em;
}
.top_interview_name .en {
	display: block;
	font-size: 1rem;
    line-height: 1;
	letter-spacing: 0em;
}
.case_info .interview_name {
	position:absolute;
	left:10px;
	top:0;
    display: block;
	color: #ff662a;
    font-size: 40px;
	letter-spacing: 0em;
	line-height: 1;
	transform: rotate(90deg);
}
.box_interview_content .p-toc {
	display: block!important;
}
.box_interview_content {
	padding-bottom: 3em;
}
.box_interview_profile {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
	background: #e5eff3;
	border-radius:10px;
}
.box_interview_profile .interview_img {
	width: 300px;
    margin-left: -10px;
}
.box_interview_profile .interview_img {
	display: block;
	border-radius:10px 0 0 10px;
}
.box_interview_profile .interview_txt {
	width: calc(100% - 300px);
	padding:20px;
}
.box_interview_profile .interview_txt .interview_name {
	line-height: 1.2;
    font-size: 1rem;
    margin-bottom: 10px;
	color: #134c78;
}
.box_interview_profile .interview_txt .interview_name span {
	display: block;
    font-size: 1.8rem;
}
.recruit_oneday {
	margin:50px -50px;
	padding-top:50px!important;
}
.recruit_oneday figure {
	position: relative;
}
.recruit_oneday figure:before {
	content:"とある一日のスケジュール";
	font-size: 1.1rem;
	background: #ff6531;
	color:#fff;
	display: inline-block;
	padding:15px 20px;
	border-radius:0 20px 20px 0;
	position:absolute;
	left:0;
	top:50px;	
}
.recruit_oneday .swell-block-step {
	width:800px;
	margin:0 auto;
}
.recruit_oneday .is-style-small .swell-block-step__number:after {
	font-size: 16px;
    opacity: 1;
    color: #ff6531;
	font-weight: bold;
}
.recruit_oneday .is-style-small .swell-block-step__title {
	margin-top: 15px;
    margin-left: 1em;
}
.box_interview_bottom {
	position:relative;
}
.box_interview_bottom h2 {
	margin: 0 0 20px -50px!important;
    background: #134c78!important;
    color: #fff!important;
    padding: 10px!important;
    text-align: center!important;
    border-radius: 0 0 20px!important;
}
.box_interview_bottom figure {
	position:absolute;
	right:50px;
	top:-10px;
}
.box_interview_bottom .box_meeting_txt {
	width: calc(100% - 350px);
}
.box_interview_bottom .is-style-onborder_ttl>.cap_box_content,.box_interview_bottom .is-style-onborder_ttl>.cap_box_ttl {
	background-color: #fefefe!important;
}
@media not all and (min-width: 1274px) {
	.case_info {
		/*aspect-ratio: 1100 / 494;*/
		height:auto;
	}
}
@media not all and (min-width: 960px) {
	.single-recruit #content.l-container {
		margin-top:0;
	}
	.case_info {
		padding-top:0;
	}
	.case_info figure {
		position: relative;
		width: calc(100% + 8vw );
		margin: -4vw;
		top: -8vw;
	}
	.case_info h1 {
		width:100%;
	}
	.box_interview_bottom figure {
		width: 200px;
    	right: 0;
	}
	.top_interview_name {
		margin-top: 20px;
	}
	.box_interview_bottom .box_meeting_txt {
		width:100%;
	}
	.box_interview_bottom .box_meeting_txt p:first-child {
		width: calc(100% - 200px);
	}
	.recruit_oneday .swell-block-step {
		width:auto;
	}
	.recruit_oneday .is-style-small .swell-block-step__number:after {
		text-align: left;
		font-size: 13px;
	}
	.recruit_oneday .is-style-small .swell-block-step__title {
		font-size: 1.1rem !important;
	}
}
@media not all and (min-width: 640px) {
	.box_interview_profile {
		display: block;
	}
	.box_interview_profile .interview_img {
		position: relative;
    	top: -15px;
		margin-bottom:-15px;
	}
	.box_interview_profile .interview_txt {
		width:100%;
	}
	.single-recruit .box_interview_content h2 {
		font-size: 1.2rem!important;
	}
	.single-recruit .box_interview_content h3 {
		font-size: 1.8rem!important;
    	margin-bottom: 1em;
	}
	.recruit_oneday figure:before {
		font-size: 0.8rem;
		padding: 10px 20px;
		top: -15px;
	}
	.recruit_oneday {
		margin: 50px -4vw;
	}
	.box_interview_bottom h2 {
		width: 15em;
    	min-width: unset;
	}
	.box_interview_bottom figure {
		width: 150px;
        right: -20px;
	}
	.box_interview_bottom .box_meeting_txt p:first-child {
		width: calc(100% - 140px);
        line-height: 1.4;
        font-size: 1.2rem !important;
        margin-bottom: 1.5em;
	}
}

/**********************************************
          投稿
**********************************************/
/** アーカイブ **/

@media not all and (min-width: 960px) {
	#sidebar {
        margin-bottom: 4em;
    }
}
@media not all and (min-width: 640px) {
	#sidebar {
        margin-bottom: var(--swl-pad_container, 0);
    }
}
.-type-list .p-postList__thumb, .-type-list2 .p-postList__thumb {
    width: 27%;
}
.-type-list .p-postList__body, .-type-list2 .p-postList__body {
    width: 70%;
}
/** single **/
.l-mainContent__inner>.post_content {
	margin: 2em 0;
}
.single-post .l-articleBottom__section.-author {
	display: none;
}
.author_name {
	font-weight: bold;
}
.p-authorBox__description {
	font-size:0.9rem;
	text-align: left;
}
@media not all and (min-width: 960px) {
	.single-post #sidebar {
        margin-bottom: 0;
		display: none;
    }
	.single-post #content.l-container {
		margin-bottom: var(--swl-pad_container, 0);
	}
}

/****************************************
           contact
****************************************/
.box_form {
	padding-bottom:4em;
}
form {
	background: rgb(255 255 255 / 80%);
    border-radius: 20px;
    padding: 20px;
}
form > p {
	text-align: center;
}
.box_contact {
	width:80%!important;
	margin:1em auto 30px;
}
.box_contact p,.contact-confirm .box_contact p {
	margin: 5px 0;
}
.box_contact,.contact-confirm .box_contact {
	border:none;
}
.box_contact,.contact .box_contact td,.contact-confirm .box_contact,.contact-confirm .box_contact td {
	border:solid 2px #fff;
}
.box_contact:after {
	display: none;
}
.box_contact tr,.contact-confirm .box_contact tr {
	padding: 1em;
    border-bottom: dashed 1px #dbdada;
}
.box_contact th,.contact-confirm .box_contact th {
	border:none;
	background: none;
    font-weight: bold;
    padding: 5px 30px 5px 0;
    width:250px;
	vertical-align: top;
}
.box_contact th p,.contact-confirm .box_contact th p {
	font-weight: bold;
	text-align: right;
}
.box_contact td,.contact-confirm .box_contact td {
	border:none;
	text-align: left;
	padding:5px;
	padding-right: 100px;
}
.red {
	color:#D90003;
}
.form_pb {
	text-align: center;
}
.form_pb a {
	text-decoration: underline;
}
input[type="checkbox"], input[type="radio"]  {
	margin-bottom: 3px;
}
.form_buton {
	margin-top:30px;
	text-align: center;
}
.form_buton p {
	text-align: center;
	margin-top:50px;
	display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
form input[type="submit"], form input[type="button"],form button {
	background: #cbcbcb;
    color: #fff;
    border-radius: 50em;
    font-weight: bold;
    padding: 10px 40px;
	margin:0 20px;
	border: none;
	width: 270px;
	display: block;
}
form input[type="submit"] {
	background: #1a6d89;
}
form input[type="text"],form textarea {
	width:100%;
	border-radius: 5px;
	margin:0;
}
form input.zip {
	width:10em;
	margin:0 5px 10px;
}
form input[type="number"],form input[type="email"], form input[type="url"], form input[type="tel"] {
	border-radius: 5px;
	margin:0;
}
form input[type="number"] {
	width:60px;
}
form input[name="add-city"],form input[name="add-ban"] {
	width:180px;
	margin-left: 5px;
}
.copies input[type="text"] {
	width:200px;
}
.wpcf7-turnstile{
	text-align: center
}
.page-id-48 .box_cta_contact,.page-id-687 .box_cta_contact,.page-id-691 .box_cta_contact {
	display: none;
}
@media not all and (min-width: 960px) {
	.box_form p {
		text-align: left;
	}
	.box_contact {
    	width: 100% !important
	}
	.box_contact td, .contact-confirm .box_contact td,.box_contact th, .contact-confirm .box_contact th  {
		display: block;
		width:100%;
		-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	}
	.page-id-1137 .box_contact td {
		border-bottom:solid 1px #ccc;
		margin-bottom:15px;
	}
	.box_contact th p, .contact-confirm .box_contact th p {
		text-align: left;
	}
	form input[type="submit"], form input[type="button"], form button,.wpcf7-list-item{
		display: block;
		margin-bottom:10px;
	}
	.form_buton p {
		display: inline-block;
		margin-bottom: 0;
	}
	form input[type="number"],form input[type="email"], form input[type="url"], form input[type="tel"] {
		width:100%;
	}
	.box_contact td,.contact-confirm .box_contact td {
		 padding: 10px 0;
	}
	form input[type="text"], form textarea {
		margin-left:0;
	}
	form input[type="number"] {
	width:60px;
	}
	.copies input[type="text"] {
		width:50%;
	}
	form input[name="add-city"] {
		margin-left:10px;
		margin-bottom:10px;
	}
	.box_contact th p br,.contact-confirm .box_contact th p br {
		display: none;
	}
}

/**********************************************
         固定ページ
**********************************************/
/*** 会社概要 ***/
.company_tit {
	text-align: center;
	line-height: 1.2;
}
.company_tit h2 {
	display: block;
}
.company_message {
	padding:2em 0;
}
.company_message .wp-block-column {
	border-radius:10px;
}
@media not all and (min-width: 640px) {
	.t_profile th {
		max-width: 100% !important;
        border-bottom: none;
	}
}

/*** 採用情報 ***/
.sec_job {
	padding:3em 0;
}
.box_environment .wp-block-column {
	border-radius:10px;
	padding-top:150px;
	background-repeat: no-repeat;
	background-position: center top;
	background-size:auto 150px;
}
.box_environment .wp-block-column:first-child {
	background-image:url(images/recruit/ico-recruit-01.webp);
}
.box_environment .wp-block-column:nth-child(2) {
	background-image:url(images/recruit/ico-recruit-02.webp);
}
.box_environment .wp-block-column:nth-child(3) {
	background-image:url(images/recruit/ico-recruit-03.webp);
}
.box_recruit_step {
	border-radius:20px;
}
.box_recruit_step .swell-block-step {
	width:900px;
	max-width:100%;
	margin:50px auto;
}
.box_data h3 {
	color: #ff6531!important;
}
.box_data figure {
	margin: 0 auto;
}
.sec_data {
	padding:3em 0;
}
.page-id-10 .l-content {
	margin-bottom:0!important;
}
.box_interview_list .tit {
	font-size:1.2rem;
	font-weight: bold;
}
.box_interview_list .tit br {
	display: none;
}
.box_interview_list .name {
	font-weight: bold;
}
.box_interview_list p span {
	display: inline-block;
	margin-right:0.5em;
	font-size: 0.8rem;
}
.box_interview_list p span:after {
	content:"/";
	display: inline-block;
	margin-left:0.5em;
}
.box_interview_list p span:last-child:after {
	display: none;
}
.post_content .box_interview_list .more {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
	-webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
	gap: 10px;
	margin-top: 10px !important;
    border: solid 1px #0c80a5;
    color: #0c80a5;
    padding: 10px;
    width: 130px;
    border-radius: 50em;
}
@media not all and (min-width: 960px) {
	.sec_job th {
		width: 100% !important;
        max-width: 100% !important;
	}
	
}
/*スライド */
/*.page-id-10 #top_title_area {
	height: 400px;
	padding: 0;
}
.page-id-10 .l-topTitleArea__body {
	position: absolute;
    width: 100%;
	max-width: 100%;
	height: 100%;
    top: 0;
}
.my-title-slider__title {
	position: absolute;
    width: 100%;
	z-index: 1;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.my-title-slider {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 400px;
	overflow: hidden;
	left:0;
}
.my-title-slider .swiper-slide {
	height: 400px !important;
	width: auto !important;
}
.my-title-slider .swiper-slide img {
  height: 100%;
  width: auto;
}
.swiper-wrapper {
  transition-timing-function: linear;
}
*/

/**********************************************
         サービス
**********************************************/
.parent-pageid-449 .l-content {
	margin-bottom:0;
}
.parent-pageid-449 #top_title_area {
	height: 470px;
}
.parent-pageid-449 #top_title_area .u-obf-cover {
	width: auto !important;
    max-width: unset;
	left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body {
	width:100%;
	height: 410px;
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_img {
	width: 1200px;
    height: 470px;
    position: absolute;
    right: var(--swl-pad_container, 0);
    top: -60px;
    align-content: center;
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_img .mv_960 {
	display: none;
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt {
	width: 630px;
	max-width: 62%;
    height: 100%;
    text-align: left;
	padding-top: 55px;
	position: relative;
}
.parent-pageid-449.page-id-442 #top_title_area .l-topTitleArea__body .mv_txt,
.parent-pageid-449.page-id-745 #top_title_area .l-topTitleArea__body .mv_txt{
	width: 600px;
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt .mv_copy {
	font-size:1.2rem;
	line-height: 1em;
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt h1 {
	font-size: 3rem;
	margin-bottom: 20px;
	margin-top:10px;
}
.parent-pageid-449.page-id-442 #top_title_area .l-topTitleArea__body .mv_txt h1 {
	font-size: 2.5rem;
	line-height: 1.2;
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt .btn {
	width:400px;
	margin-top:30px;
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt a {
	display: block;
    background: #ff662a;
    color: #fff;
    border: solid 2px #fff;
    text-align: center;
    border-radius: 50em;
    font-size: 1.4rem;
    font-weight: bold;
	padding:10px 20px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0);
    -webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt a span {
	display: block;
	font-size:14px;
	font-weight: normal;
}
.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt a:hover {
	transform: translateY(-5px) scale(1.02);
  	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
	letter-spacing: 0.1em;
}
.sec_service_bottom {
	padding:3em 0;
}
.sec_service_bottom .swell-block-box-menu__text {
	line-height:1.4;
}
.sec_service_bottom .swell-block-box-menu {
	border-radius: 15px;
    overflow: hidden;
}
@media not all and (min-width: 1400px) {
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_img {
		right: auto;
    	left: auto;
	}
}
@media not all and (min-width: 1300px) {
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_img {
		right: 0;
		width:90%;
	}
}
@media not all and (min-width: 960px) {
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt {
		width:100%;
		max-width:100%;
	}
	.parent-pageid-449.page-id-442 #top_title_area .l-topTitleArea__body .mv_txt, .parent-pageid-449.page-id-745 #top_title_area .l-topTitleArea__body .mv_txt {
		width: auto;
	}
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_img {
		width:100%;
		height:calc(100% + 75px);
	}
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_img img {
		display: none;
	}
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_img .mv_960 {
		display: block;
		width: auto;
		max-width: unset;
        height: 100%;
		top:0;
		left: 50%;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
		position:absolute;
	}
	.parent-pageid-449 #top_title_area {
		height: 590px!important;
	}
	.parent-pageid-449 #top_title_area .l-topTitleArea__body  {
		height: 510px;
	}
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt .mv_copy {
		font-size: 1rem;
		line-height: 1em;
	}
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt h1 {
		font-size: 1.8rem!important;
	}
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt {
		width: auto;
		padding-top: 0px;
		height: 510px;
	}
	.parent-pageid-449 #top_title_area .l-topTitleArea__body .mv_txt .btn {
		width: 100%;
		max-width:600px;
		position: absolute;
		bottom: 0;
		left: 50%;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}
}


/*** SEO（ベース） ***/
.sec_bg_green {
	padding:3em 0;
}
.sec_challenges .swell-block-columns__inner {
	-webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
.sec_challenges .cap_box_content {
	background: #fff;
    color: #333;
	font-weight: bold;
    border-radius: 10px!important;
    text-align: center;
}
.sec_challenges .cap_box_ttl {
	background: #ff6531;
    font-size: 1.2rem;
    border-radius: 5px !important;
    font-family: "Outfit", sans-serif;
}
.sec_features {
	padding:3em 0;
}
.box_features_wrap {
	background: rgb(255 255 255 / 70%);
	border-radius:16px;
	box-shadow: 0px 0px 10px #B5C6E252;
	position:relative;
}
.box_features_wrap:before {
	font-size: 12rem;
    position: absolute;
    left: 2%;
    bottom: 0;
    opacity: 0.2;
    font-family: "Outfit", sans-serif;
    color: #b3d1d9;
    line-height: 1;
}
.page-id-445 .box_features_wrap:before {
	bottom: auto;
	top:0;
}
.box_features_wrap:nth-child(even):before {
	left: auto;
	right:2%;
}
.box_features {
	position:relative;
}
#features_01 .box_features,
#features_03 .box_features,
#features_05 .box_features{
	-webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
#features_01:before {
	content:"01";
}
#features_02:before {
	content:"02";
}
#features_03:before {
	content:"03";
}
#features_04:before {
	content:"04";
}
#features_05:before {
	content:"05";
}
#features_01 figure,#features_03 figure,#features_04 figure {
	width:830px;
	margin:0 auto 1em;
	max-width:100%;
}
.box_features img {
	border-radius:0!important;
}
.post_content h3.tit_line {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

.post_content h3.tit_line:before,
.post_content h3.tit_line:after {
    content: "";
    height: 1px;
    background-color: #333;
	width:50px;
	position: static;
}

.post_content h3.tit_line:before {
    margin-right: 1rem;
}

.post_content h3.tit_line:after {
    margin-left: 1rem;
}
.box_scope_wrap {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
	-webkit-flex-wrap: wrap;
    flex-wrap: wrap;
	gap:20px;
}
.box_scope_wrap .box_scope {
    width: calc((100% - 40px) / 3);
	background-color: #fff;
    box-shadow: var(--swl-box_shadow);
    color: #333;
	border-radius:16px;
	padding: 30px;
    text-align: center;
	cursor: pointer;
	-webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.page-id-747 .box_scope_wrap .box_scope {
	width: calc((100% - 60px) / 4);
	min-width: 260px;
}
.box_scope_wrap .box_scope:hover {
	transform: translateY(-5px) scale(1.02);
  	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
	letter-spacing: 0.1em;
}
.box_scope_wrap .box_scope img {
	width:180px;
	height:auto;
}
.box_scope_wrap .box_scope .tit {
	font-size:1.1rem;
	font-weight: bold;
	margin: 10px;
}
.box_scope_wrap .box_scope .btn {
	width:160px;
	border-radius:50em;
	border: solid 1px #ff6531;
    color: #ff6531;
	align-items: center;
    display: inline-flex;
    gap: .5em;
    justify-content: center;
	padding:5px;
}
.sec_service {
	padding:3em 0;
}
.box_service_white {
	background: rgb(255 255 255 / 60%) !important;
    border-radius: 16px;
}
.sec_service h3.service_tit {
	padding-left: 140px;
}
.sec_service h3.service_tit .en {
	background: #007fa3;
    color: #fff;
    padding: 25px 40px;
    border-radius: 20px 0 20px 0;
    display: block;
    position: absolute;
    top: -30px;
    left: -30px;
}
.box_service_white .wp-block-column {
	border-radius: 16px;
	height:100%;
}
.tit_arrow {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.tit_arrow:before {
	content:"";
	width:48px;
	height:48px;
	background: url(images/common/ico-arrow.webp) no-repeat center;
	border:solid 1px #0C80A5;
	border-radius:50em;
	display: block;
	margin-right: 10px;
}
.sec_price {
	padding:3em 0;
}
.sec_price table {
	border:none!important;
}
.sec_price table th{
	min-width:200px!important;
}
.sec_price table td strong {
	font-family: "Outfit", sans-serif;
	font-size:1.2rem;
	margin-right: 4px;
	display: inline-block;
    width: 5em;
    text-align: right;
    margin-left: 20%;
}
.page-id-745 .sec_price table td strong {
	 margin-left: 0;
}
.sec_column {
	padding:3em 0;
}
@media not all and (min-width: 960px) {
	.page-id-747 .box_scope_wrap .box_scope {
		width: 100%;
	}
	.box_features {
		flex-wrap: wrap !important;
	}
	.box_features .wp-block-column {
        flex-basis: 100% !important;
    }
	.box_features_wrap:before {
		top:-10px;
		bottom:auto;
		left: auto!important;
    	right: 2%!important;
	}
}
@media not all and (min-width: 769px) {
	.parent-pageid-449 h2.is-style-section_ttl {
		font-size:1.8rem!important;
	}
	.box_step_sns .swell-block-columns__inner {
		-webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
	}
	.parent-pageid-449 .swell-block-step__item .swell-block-step__title {
		font-size: 1.2rem !important;
	}
}
@media not all and (min-width: 640px) {
	.box_step_sns .swell-block-columns__inner {
		gap: 10px 0;
	}
	.box_step_sns .swell-block-columns__inner .swell-block-column {
		width:100%;
	}
	.sec_service_bottom .swell-block-box-menu__inner .swell-block-box-menu__item:last-child {
		width:100%;
	}
}

/*** 広告運用 ***/
.parent-pageid-449.page-id-447 #top_title_area .l-topTitleArea__body .mv_txt h1 {
	font-size: 2.5rem;
    line-height: 1.2;
    margin-top: -10px;
}
.parent-pageid-449.page-id-447 #top_title_area .l-topTitleArea__body .mv_txt h1 span {
	display: block;
    font-size: 1.4rem;
    margin-top: 3px;
}
.box_works .swell-block-column {
	padding:0 0 1rem;
	overflow: hidden;
}
.box_works .swell-block-column h3 {
	margin: 1.5rem 1rem;
}
.box_works .swell-block-column h3 span {
	display: inline-block;
	font-size:1rem;
}
.box_works .swell-block-column p {
	padding:0 1rem;
}
.box_works .swell-block-column img {
	border-radius: 0;
}
.box_graph {
	gap: 0 !important;
	border-radius: 16px;
    overflow: hidden;
    text-align: center;
}
.box_graph > div {
	padding:10px 5px!important;
}
.box_listing_plan {
	display: inline-block;
    padding: 15px 20px;
    text-align: center;
}
.listing_price_01 {
	width:90%;
	border-radius: 15px;
	border-top:none;
	margin-left:auto;
	margin-right:auto;
}
.listing_price_01 .cap_box_ttl {
	border-radius: 5px!important;
    padding: 5px 15px;
	font-weight: bold;
}
.listing_price_01 .cap_box_content .is-row {
	gap: 2em;
	-webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
	-webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.listing_price_02 {
	width:80%;
}
.box_agency {
	-webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 10px;
}
.box_agency img {
	width:auto;
	height:150px;
}
.parent-pageid-449.page-id-447 .box_data {
	line-height: 1;
}
@media not all and (min-width: 769px) {
	.listing_price_01 {
		width:100%;
	}
}
@media not all and (min-width: 640px) {
	.parent-pageid-449.page-id-447 #top_title_area .l-topTitleArea__body .mv_txt h1 {
		margin-top:0;
	}
	.parent-pageid-449.page-id-447 #top_title_area .l-topTitleArea__body .mv_txt h1 span {
		font-size: 1rem;
	}
	.box_agency img {
		height:120px;
	}
	.box_graph p {
		font-size:0.9rem;
	}
	.listing_price_01 .cap_box_content .is-row,
	.listing_price_02 .cap_box_content .is-row,
	.introduction_txt.is-row{
		display: block;
	}
}
/*** SNS運用 ***/
.box_sns_pain figure {
	width:150px;
	height:auto;
	margin: 0 auto 15px;
}
.box_step_sns .swell-block-columns__inner {
	gap: 10px;
    margin: 0;
}
.box_step_sns .swell-block-columns__inner .swell-block-column {
	margin:0!important;
	position:relative;
	padding-top:3.5em;
	font-size:14px;
}
.box_step_sns .swell-block-columns__inner .swell-block-column .step_tit {
	background: #007fa3;
    color: #fff;
    display: inline-block;
    padding: 10px 15px;
    border-radius: 15px 0 15px 0;
    position: absolute;
    left: 0;
    top: 0;
	font-size: 13px;
}
.box_step_sns .swell-block-columns__inner .swell-block-column .tit {
	font-size:1rem;
}
.box_w_maru .swell-block-column,.box_w_maru .wp-block-column,.box_w_maru .swell-block-box-menu__link {
	border-radius:15px;
}
.post_content .box_sns_works figure {
	margin: -1.5em -1.5em 1em !important;
}
.box_sns_works figure img {
	border-radius:15px 15px 0 0;
}
.box_writing_service_step01 .swell-block-column {
	border-width: 2px !important;
	border-color:#0c80a5!important;
	padding: 10px !important;
    text-align: center;
}
/*** LP制作 ***/
.box_assignment .wp-block-column {
	overflow: hidden;
    padding: 15px 0 0;
}
.box_assignment .wp-block-column .box_problem {
	padding-top:0;
	min-height: 220px;
}
.box_assignment .wp-block-column .box_problem .txt_tit {
	background: #eae8e8;
    display: inline-block;
    padding: 0 5px;
    width: 100px;
    text-align: center;
    border-radius: 5px;
}
.box_assignment .wp-block-column .box_solution {
	position:relative;
}
.box_assignment .wp-block-column .box_solution .txt_tit {
	background: #007fa3;
    color: #fff;
    display: inline-block;
    padding: 0 15px;
    text-align: center;
    border-radius: 5px;
}
.box_assignment .wp-block-column .box_solution:before {
    content: "";
    border-style: solid;
    border-right: 16px solid transparent;
    border-left: 16px solid transparent;
    border-top: 12px solid #ffffff;
    border-bottom: 0;
    position: absolute;
    top: 5px;
    left: calc(50% - 16px);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 1;
}
.page-id-745 .box_assignment .wp-block-column {
	padding-top:0;
}
.page-id-745 .box_assignment .wp-block-column .box_solution:before {
	border-top: 12px solid #007fa3;
}
.page-id-745 .box_assignment .wp-block-column > div {
	padding:15px;
}
.box_lp_case .wp-block-paragraph {
	margin-bottom:10px;
}
.box_lp_case .wp-block-paragraph > strong {
	background: #007fa3;
    color: #fff;
    padding: 0 10px 2px;
    border-radius: 5px;
    font-size: 0.9rem;
    margin-right: 9px;
}


/*** 一覧 ***/
.box_service_menu .swell-block-box-menu__item {
	border-radius: 16px;
}
.box_service_menu .swell-block-box-menu__item .swell-block-box-menu__link {
	border-radius: 16px;
	padding: 20px;
}
.box_service_menu .swell-block-box-menu__item .swell-block-box-menu__link:after {
	content:"詳しく見る";
	font-size:14px;
	border:solid 1px #0c80a5;
	color:#0c80a5;
	border-radius:50em;
	display: inline-block;
	padding: 5px;
    margin-top: 15px;
	transition: all .25s;
}
.box_service_menu .swell-block-box-menu__item:hover .swell-block-box-menu__link:after {
	background: #0c80a5;
	color:#fff;
}
.box_service_menu .swell-block-box-menu__item .swell-block-box-menu__text {
	line-height:1.6;
	text-align: left;
	margin-bottom: 0.5em;
}
.box_service_menu .swell-block-box-menu__item .swell-block-box-menu__text strong {
	display: block;
	font-size:18px;
	text-align: center;
	margin-bottom: 0.5em;
}
@media not all and (min-width: 960px) {
	.box_service_menu_02 .is-stacked-on-mobile.wp-block-media-text {
        --swl-mediatext--gap: 0;
        --swl-mediatext--offsetX: 0;
    }
	.box_service_menu_02 .wp-block-media-text.is-stacked-on-mobile {
        grid-template-columns: 100% !important;
    }
	.box_service_menu_02 .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__media {
        grid-column: 1;
        grid-row: 1;
    }
	.box_service_menu_02 .wp-block-media-text.is-stacked-on-mobile>.wp-block-media-text__content {
        grid-column: 1;
        grid-row: 2;
    }
	.box_scope_wrap {
		display: block;
	}
	.box_scope_wrap .box_scope {
		width:100%;
		margin-bottom:15px;
	}
	.box_service_white p {
		padding-left:0!important;
	}
	.box_service_menu_02 .wp-block-media-text__media {
		width:auto;
		height:100px;
	}
	.box_service_menu_02 .wp-block-media-text__media img {
		width:auto;
		height:100px;
		margin: 0 auto;
	}
	.box_service_menu_02 .is-style-section_ttl {
		text-align: center!important;
	}
}


/* モーダル */
.js-modal {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, .6);
	align-items: center;
	justify-content: center;
	width:100vw;
	height: 100%;
}

.js-modal.is-active {
	display: flex;
}

.js-modal__inner {
	position: relative;
	width: min(90%, 800px);
	max-height: 90vh;
	overflow-y: auto;
	background: #fff;
	padding: 40px;
	border-radius: 10px;
}

.js-modal__close {
	position: absolute;
	top: 10px;
	right: 15px;
	border: 0;
	background: none;
	font-size: 30px;
	cursor: pointer;
}
.js-modal__inner_box {
	text-align: center;
}
.js-modal__inner_box img {
	width:180px;
	height:auto;
}
.js-modal__inner_box p {
	/*text-align: left;*/
	margin-bottom:1em;
}
.js-modal__inner_box p.tit {
	text-align: center;
	font-size:1.1rem;
	font-weight: bold;
	margin:10px;
}
.js-modal__inner_box ul {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 0em 3em;
    margin-bottom: 1em;
    background: #eff7fa;
    border-radius: 10px;
    padding: 10px 10px 10px 2em;
}
/**** よくある質問　******/
.swell-block-faq__item {
	border: solid 1px #ccc;
    border-radius: 2em;
    padding: 0 10px;
	background: #fff;
}
.swell-block-faq__item .faq_q {
	font-size: 1rem;
}
.swell-block-faq .faq_q:before {
	font-size: 1.2rem;
    font-family: "Outfit", sans-serif;
	top: 0.5em;
}
.swell-block-faq .faq_a:before {
	top: 1em;
	font-family: "Outfit", sans-serif;
	left: 1.5em;
	font-size: 1.2rem;
}
/* 回答は初期状態で閉じる */
.swell-block-faq__item .faq_a {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease, opacity 0.3s ease,padding 0.3s ease;
	opacity: 0;
	padding: 0 1em;
	border-top: 1px dashed var(--color_border);
}

/* 質問をクリック可能に */
.swell-block-faq__item .faq_q {
	cursor: pointer;
	position: relative;
	padding-right: 2em;
	border-bottom:none;
}

/* ＋アイコン */
.swell-block-faq__item .faq_q::after {
  content: "＋";
  position: absolute;
  right: 15px;
  top: calc(50% - 1em);
}

/* open時 */
.swell-block-faq__item.is-open .faq_a {
max-height: 1000px; /* 十分大きい値 */
opacity: 1;
padding: 1.25em 1em 1.25em 6em;
	    min-height: 80px;
}

.swell-block-faq__item.is-open .faq_q::after {
  content: "−";
}


/**********************************************
         TOP
**********************************************/
@media (min-width: 600px) {
    .p-mainVisual.-margin-on {
        padding: 24px;
		background: #fff;
    }
}
#body_wrap.home:before {
	content:"";
	width:1775px;
	height:887px;
	background: url(images/top/logo-e.webp) no-repeat center;
	position:absolute;
	left: 0px;
    top: 0px;
	z-index: 2;
}
#body_wrap.home {
	background-image:url(images/top/bg-content-01.webp),url(images/top/bg-content-02.webp),url(images/top/bg-content-03.webp);
	background-repeat: no-repeat;
	background-position: top 900px right 0,top 2255px left 0,top 3820px left 0;
}
@media (min-width: 1400px) {
	#body_wrap.home {
		background-size:100%;
	}
}
.home .p-mainVisual__inner {
	border-radius: 16px;
	overflow: hidden;
	background: url(images/top/bg-top-mv.jpg) no-repeat center;
	background-size:cover;
}
.home .c-filterLayer__img {
	display: none;
}
.home .p-mainVisual__textLayer {
	justify-content: end;
	padding-bottom: 190px;
}
.home .p-mainVisual__slide {
	z-index: 2;
}
.home .p-mainVisual__slideTitle {
	font-size: 63px;
	font-weight: bold;
	text-align: left;
	margin-left: auto;
}
.home .p-mainVisual__slideText {
	font-size: 15px;
	font-weight: bold;
	text-align: right;
	margin-left: auto;
	letter-spacing: 0.1em;
}
.home .p-mainVisual__inner:before {
	content:"";
	width:797px;
	height:146px;
	background: url(images/top/mv-txt.webp) no-repeat center;
	position:absolute;
	left: -20px;
    bottom: -3px;
	z-index: 1;
}
.home .p-mainVisual__inner:after {
	content:"";
	width:965px;
	height:146px;
	background: url(images/top/mv-txt-02.webp) no-repeat center;
	position:absolute;
	left: 813px;
    bottom: -3px;
	z-index: 2;
}
.home .p-mainVisual__textLayer {
	z-index: 5;
}
.l-header .l-header__inner {
	color:inherit;
}
.l-header .c-gnav>li>a:after {
	background: #ff6531;
}
.top #content {
	position: relative;
	z-index: 10;
	margin-bottom: 4em;
}
.sec_top_logo {
	-webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    background-color: rgb(255 255 255 / 80%);
	padding:30px 0;
}
.sec_top_logo > div {
	max-width:100%!important;
}
.sec_top_logo .swiper-wrapper .swiper-slide {
	width:240px!important;
	height:120px;
	margin:0 5px;
}
.sec_top_01 {
	margin-top:110px;
	width:1080px;
}
.sec_top_01 .wp-block-column:last-child {
	padding-top:136px;
	line-height: 1.8;
}
.sec_top_02 {
	margin: 110px -30px 0;
    width: 1260px;
	max-width: none;
}
.box_top_strengths {
	gap: calc((100% - 1194px) / 2 )!important;
}
.box_top_strengths .top_strengths_02 {
	padding-top:80px;
}
.box_top_strengths .top_strengths_03 {
	padding-top:160px;
}
.box_top_strengths .is-style-small_ttl .cap_box_ttl {
	-webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    background-color: rgb(255 255 255 / 0%);
	border:none;
	border-radius:16px 16px 0 0;
	color:#FF662A;
	font-size:28px;
	font-family: "Outfit", sans-serif;
	width: 50px;
    line-height: 1;
    padding: 10px;
	box-shadow: 0px -3px 10px #B5C6E252;
}
.box_top_strengths .cap_box.is-style-small_ttl .cap_box_content {
	-webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
    background-color: rgb(255 255 255 / 10%);
	border:none;
	border-radius:0 16px 16px;
	padding: 14px;
	box-shadow: 0px 0px 10px #B5C6E252;
}
.box_top_strengths .cap_box.is-style-small_ttl .cap_box_content figure {
	width:370px;
	max-width:100%;
	height:260px;
	border-radius:10px;
	background-image: linear-gradient(145deg, #ffffff, #cdeaff);
	position: relative;
	margin-bottom: 0;
}
.box_top_strengths .cap_box.is-style-small_ttl .cap_box_content figure img {
	position:absolute;
    top: -77px;
    left: -23px;
    max-width: none;
}
.box_top_strengths .cap_box.is-style-small_ttl .cap_box_content .box_txt {
	padding:10px;
}
.box_top_strengths .cap_box.is-style-small_ttl .cap_box_content h3 {
	margin-top:0;
}
.home .sec_service .box_service_white{
	position:relative;
	font-weight: 600;
	box-shadow: 0px 0px 10px #B5C6E252;
	-webkit-backdrop-filter: blur(15px);
    backdrop-filter: blur(15px);
}
.home .sec_service .box_service_white > div {
	padding:50px 10px 10px;
}
.home .sec_service .box_service_white .box_txt {
	width:610px;
}
.home .sec_service .box_service_white .service_tit {
	background: #007fa3;
    color: #fff;
	font-size:24px;
    padding: 14px 39px;
    border-radius: 20px 0 20px 0;
    display: block;
	position: absolute;
    width: auto;
    top: 0;
	left:0;
	margin-bottom: 0;
}
.home .sec_service .box_service_white .service_tit{
	content:"";
}
.home .sec_service .box_service_white .box_service_list {
	gap: 30px;
    padding: 15px;
	border-bottom:solid 1px #ccc;
	margin-bottom: 0;
}
.home .sec_service .box_service_white .box_service_list .tit_arrow  {
	font-size: 19px;
    font-weight: bold;
	width: 230px;
    line-height: 1.2;
}
.home .sec_service .box_service_white .box_service_list p {
	width: calc(100% - 211px);
	line-height: 1.6;
}
.home .sec_service .box_service_white .box_service_list a {
	color:inherit;
	-webkit-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
}
.home .sec_service .box_service_white .box_service_list a:hover {
	color:#007fa3;
}
.home .sec_service .box_service_white .box_img {
	position: absolute;
    top: -35px;
    right: 30px;
}
.home .sec_works {
	padding:3em 0;
}
.home .sec_works .p-postList__item {
	margin-bottom:0;
}
.home .sec_works .p-postListWrap {
	margin-left: 50px;
    margin-right: 50px;
}
.home .sec_news {
	margin-left: 50px;
    margin-right: 50px;
}
.home .sec_news .swell-block-button {
	text-align: left;
}
.home .sec_news .p-postList__body {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	-webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
}
.home .sec_news .p-postList__body .p-postList__meta {
	font-size:20px;
	color:#1A7FC4;
	font-weight: 600;
	font-family: "Outfit", sans-serif;
	width: 120px;
	margin-bottom: 0;
}
.home .sec_news .p-postList__body .p-postList__meta :before {
	display: none;
}
.home .sec_news .p-postList__body .p-postList__title {
	font-size:18px;
	width: calc(100% - 120px);
}
.home .sec_column {
	margin-left: 50px;
    margin-right: 50px;
	padding-top: 0;
	width: auto;
}
.home .box_column_tit {
	-webkit-box-align: end;
    -ms-flex-align: end;
        align-items: flex-end;
	padding-bottom: 10px;
}
.home .box_column_tit .company_tit {
	margin-bottom: -15px !important;
}
.home .box_column_tit .swell-block-button {
	margin-left:auto;
}
.home .company_message {
	padding: 2em 0 4em;
}
.home .company_message:before {
	content:"";
	width:1400px;
	height:928px;
	display: block;
	background: url(images/top/bg-content-04.webp) no-repeat;
	position:absolute;
	top: -80px;
    left: -80px;
}
@media (min-width: 1400px) {
	.home .company_message:before {
		width:calc(100% + 115px);
		height:auto;
		aspect-ratio: 1400/928;
		background-size:100%;
		left: -115px;
	}
}
.home .company_message > div {
	position: relative;
}
.home .company_message .box_message {
	border-radius: 10px;
    padding: 0;
}
.home .company_message .box_message img {
	border-radius: 10px 0 0 10px;
}
.home .company_message .box_message .wp-block-column:last-child {
	padding:30px;
}
.box_bnr_recruit > div {
	max-width:94%!important;
}
.box_bnr_recruit .c-bannerLink__text {
	padding: 2em 6.5em;
}
.box_bnr_recruit .c-bannerLink__title {
	font-size: 140px;
    color: #0C80A5;
    font-family: "Outfit", sans-serif;
    font-weight: 500;	
}
.box_bnr_recruit .c-bannerLink__description {
	font-size: 20px;
    color: #111;
    line-height: 1.6;
}
.box_bnr_recruit .c-bannerLink__description strong {
	display: inline-block;
	margin-top:30px;
	background: #fff;
	border:solid 2px #0C80A5;
	color:#0C80A5;
	border-radius:50em;
	padding:5px 30px;
	font-size:1rem;
}
@media (max-width: 1260px) {
	.sec_top_02 {
		width: 100%;
        margin: 110px 0 0;
	}
	.box_top_strengths {
		-webkit-flex-wrap: wrap;
    	flex-wrap: wrap!important;
		gap:1%!important;
	}
	.box_top_strengths .wp-block-column {
		max-width:calc(98% / 3)!important;
	}
	.box_top_strengths .cap_box.is-style-small_ttl .cap_box_content figure img {
		
	}
	.home .sec_service .box_service_white .box_img {
		width: calc(100% - 690px);
	}
	.box_bnr_recruit .c-bannerLink__text {
		padding: 2em 13em 2em 6.5em;
	}
}
@media (max-width: 768px) {
	#body_wrap.home:before {
		width: 780px;
		height:auto;
		aspect-ratio: 1775 / 887;
		background-size: 125% auto;
        background-position: left bottom;
	}
	#body_wrap.home {
		background-image:url(images/top/bg-content-01_sp.webp),url(images/top/bg-content-02_sp.webp),url(images/top/bg-content-02_sp.webp),url(images/top/bg-content-01.webp),url(images/top/bg-content-02.webp),url(images/top/bg-content-03_sp.webp);
		background-repeat: no-repeat;
		background-position:top 674px right 0,top 1196px left 0px,top 2806px left 0,top 3980px left 0,top 5435px left 0,top 5951px left 0;
		background-size:100% auto, 100% auto, 100% auto, 180% auto, 160% auto, 100% auto, 100% auto;
	}
	.home .p-mainVisual__slideTitle {
		font-size:32px;
		margin-left: 0;
	}
	.home .p-mainVisual__slideText {
		font-size:13px;
		margin-left: 0;
		text-align: left;
	}
	.home .p-mainVisual__inner:before {
		height:60px;
		width:auto;
		aspect-ratio: 797 / 146;
		background-size:100%;
		left: 0px;
    	bottom: 5px;
	}
	.home .p-mainVisual__inner:after {
		height:60px;
		width:auto;
		aspect-ratio: 965 / 146;
		background-size:100%;
		left: 340px;
		bottom: 5px;
	}
	.home .p-mainVisual__textLayer {
		padding-bottom: 95px;
	}
	.top #content {
		padding-top: 1em;
	}
	.home .company_tit h2 {
		font-size:14px!important;
	}
	.home .company_tit p {
		font-size:40px!important;
	}
	.sec_top_01 {
		margin-top:50px;
	}
	.sec_top_01 .wp-block-column:last-child {
		padding-top: 0;
	}
	.home .sec_top_01 .company_tit h2 {
		font-size:30px!important;
	}
	.home .sec_top_01 .company_tit p {
		font-size:16px!important;
	}
	.home .sec_service {
		padding-bottom:1em;
	}
	.box_top_strengths {
		display: block;
	}
	.box_top_strengths .wp-block-column {
		width: 100%;
    	max-width: 100% !important;
		padding-top: 30px !important;
	}
	.box_top_strengths .cap_box.is-style-small_ttl .cap_box_content figure {
		margin:0 auto;
	}
	.home .sec_service .box_service_white {
		margin-bottom:25px!important;
	}
	.home .sec_service .box_service_white .box_txt {
		width:100%;
	}
	.home .sec_service .box_service_white .box_img {
		width:122px;
		top:10px;
		right: 10px;
	}
	.home .sec_service .box_service_white .service_tit {
		width: 100%;
		border-radius: 20px 20px 0 0;
	}
	.box_service_txt {
		padding-right: 110px;
	}
	.home .sec_news,.home .sec_column,.home .sec_works .p-postListWrap {
		margin-left:0!important;
		margin-right:0!important;
		width:auto!important;
	}
	.home .sec_news .wp-block-columns .wp-block-column:first-child {
		position: relative;
	}
	.home .sec_news .company_tit {
		margin-bottom:0!important;
	}
	.home .sec_news .wp-block-columns .wp-block-column:first-child .swell-block-button {
		position: absolute;
        right: 0;
		bottom: 0;
	}
	.home .box_column_tit {
		display: block;
		position:relative;
	}
	.home .box_column_tit .company_tit {
		margin-bottom: 0px !important;
	}
	.home .box_column_tit .swell-block-button {
		position:absolute;
		right:0;
		top:5em;
	}
	.home .company_message .box_message img {
		width:100%;
		height:auto;
		border-radius: 10px 10px 0 0px;
	}
	.box_bnr_recruit .c-bannerLink__title {
		font-size:56px;
	}
	.box_bnr_recruit .c-bannerLink__description {
		font-size:16px;
	}
	.box_bnr_recruit {
		padding: 0 !important;
	}
	.box_bnr_recruit .swell-block-bannerLink .c-bannerLink__figure {
		align-content: end;
    	background: #dde8f8;
	}
	.box_bnr_recruit .swell-block-bannerLink .c-bannerLink__img {
		width: 1070px !important;
		height: auto;
		max-width: none;
		position: relative;
		right: 46%;
	}
}
@media (max-width: 640px) {
	#body_wrap.home:before {
		background-image: url(images/top/logo-e_sp.webp);
        width: auto;
        height: 300px;
        aspect-ratio: 1775 / 887;
        background-size: auto 100%;
        background-position: left bottom;
    }
	.home .p-mainVisual__slideText {
		margin-top: 30px;
	}
	.home .p-mainVisual__textLayer {
		padding-bottom: 115px;
	}
	.sec_top_logo p {
		font-size: 1.2rem!important;
	}
	sec_top_logo .swiper-wrapper .swiper-slide {
		width: 100px !important;
		height: 50px;
		margin: 0 5px;
	}
	.sec_top_01 {
		padding-left:5px;
	}
	.box_top_strengths .cap_box.is-style-small_ttl .cap_box_content figure {
		height: 226px;
	}
	.box_top_strengths .cap_box.is-style-small_ttl .cap_box_content figure img {
		max-width: 96vw;
	}
	.home .sec_service .box_service_white .service_tit {
		font-size:18px;
	}
	.home .sec_service .box_service_white {
		padding: 10px;
	}
	.home .sec_service .box_service_white .box_img {
		top: 40px;
        right: -10px;
	}
	.home .sec_service .box_service_white .box_service_txt {
		font-size:13px;
		padding-right: 100px;
	}
	.home .sec_service .box_service_white .box_service_list {
		display: block;
        padding: 10px 0;
	}
	.home .sec_service .box_service_white .box_service_list .tit_arrow,
	.home .sec_service .box_service_white .box_service_list p {
		width:100%;
	}
	.home .sec_service .box_service_white .box_service_list .tit_arrow {
		font-size:17px;
	}
	.home .sec_service .box_service_white .box_service_list .tit_arrow br {
		display: none;
	}
	.home .sec_works .p-postList__item {
		margin-bottom:2em;
	}
	.home .sec_news .p-postList__body {
		display: block;
	}
	.home .sec_news .p-postList__body .p-postList__meta {
		font-size:18px;
		width:100%;
	}
	.home .sec_news .p-postList__body .p-postList__title {
		font-size:16px;
		width:100%;
	}
	.home .box_column_tit .swell-block-button {
		top: 3em;
	}
	.home .company_message .wp-block-column {
		font-size:13px;
	}
	.home .company_message .wp-block-column .en {
		font-size:32px!important;
	}
	.home .company_message .wp-block-column h3 {
		font-size:16px!important;
		margin-bottom:10px!important;
	}
	.home .company_message .box_message .wp-block-column:last-child {
		padding:0 1.5em 1.5em;
	}
	.home .company_message .box_message .wp-block-column:last-child .en {
		font-size:18px!important;
	}
	.home .company_message .box_message .wp-block-column:last-child h3 {
		font-size:22px!important;
	}
	.box_bnr_recruit .c-bannerLink__text {
		padding: 18px;
        display: block;
	}
	.box_bnr_recruit .c-bannerLink__description strong {
		position:absolute;
		bottom:20px;
		left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 200px;
	}
	.box_bnr_recruit > div .swell-block-bannerLink .c-bannerLink {
		height:457px;
	}
	.box_bnr_recruit .swell-block-bannerLink .c-bannerLink__figure {
		height:100%;
	}
	.box_bnr_recruit .swell-block-bannerLink .c-bannerLink__figure img {
		width: auto !important;
		height: 236px;
        right: 87%;
	}
}
