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

* {
    box-sizing: border-box;
}

*:before,*:after {
    box-sizing: inherit;
}

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    font-weight: 400;
}

body {
    line-height: 1;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
    display: block;
}

ul,ol {
    list-style: none;
}

blockquote,q {
    quotes: none;
}

i {
    font-style: normal;
}

blockquote:before,blockquote:after,q:before,q:after {
    content: "";
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid rgba(0, 0, 0, 0.15);
    margin: 1em 0;
    padding: 0;
}

input,select {
    vertical-align: middle;
}

button {
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
}

img,svg {
    vertical-align: bottom;
	width: 100%;
	object-fit: cover;
}

a {
    color: inherit;
}

html,body {
    width: 100%;
    background-color: #fff;
}

canvas {
    -webkit-user-select: none;
    user-select: none;
}

button {
    color: inherit;
}

body.-mouse button:hover {
    cursor: pointer;
}

main {
    width: 100%;
}

.l-w100 {
    width: 100%;
}

.l-full {
    width: 100%;
    height: 100%;
}

.l-hover-s {
    transition: opacity .25s;
}

.l-hover-s:hover {
    cursor: pointer;
    opacity: .5;
}

:root {
    --scrollbar: 0px;
    --breakpoint: 950;
    --100vw: calc(100vw - var(--scrollbar));
    --1vw: calc((100vw - var(--scrollbar)) / 100);
    --color-white: #fff;
    --color-black: #000;
    --font-bold: bold
}


/************************************************
 * Common
 */
html {
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    box-sizing: border-box;
}
body {
    position: relative;
    width: 100%;
    height: auto;
    overflow-x: hidden;
    color: #000;
	font-size: 16px;
    font-weight: 500;
    font-family: 'Noto Sans JP',YakuHanJPs,游ゴシック体,YuGothic,游ゴシック Medium,Yu Gothic Medium,游ゴシック,Yu Gothic,ヒラギノ角ゴ Pro W3,Hiragino Kaku Gothic ProN,Hiragino Kaku Gothic Pro,sans-serif;
    letter-spacing: .02em;
    background-color: #fff;
    text-rendering: optimizelegibility;
    -webkit-font-smoothing: antialiased;
    font-feature-settings: "palt";
	line-height: 1.6;
}
.parallax {
    position: relative;
    height: 100vh;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.pagenav {
    text-align: center;
    font-family: 'Lato', sans-serif;
    font-size: 1.5rem;
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
}
.pagenav > * {
	padding: 0 10px;
}
.pagenav .page-numbers.current {
    background: #000;
    color: #fff;
    border-radius: 100px;
    width: 28px;
    height: 28px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: 600;
}
.lato {
	font-family: 'Lato', sans-serif;
}
.f-90 {
	font-size: 90%;
}
.text-center {
	text-align: center;
}
.text-left {
	text-align: left;
}
.text-right {
	text-align: right;
}
.pc { display: block; }
.sp { display: none; }

@media screen and (min-width: 1367px) {
	body .container_w {
		width: 1116px;
		margin: 0 auto;
	}
}

@media screen and (min-width: 951px) and (max-width: 1366px) {
	body .container_w {
		width: 81.69839vw;
		margin: 0 auto;
	}
}

@media screen and (max-width: 950px) {
	body .container_w {
		width: 89.33333vw;
		margin: 0 auto;
	}
    
    .pc { display: block; }
    .sp { display: none; }

}




/************************************************
 * Header
 */
header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 10000;
    padding: 3.4rem 2.35rem 0;
}
/*
header .l-navi-wrapper {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
*/
/*
header .l-navi {
	display: flex;
	justify-content: space-between;
	align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 80px calc(24px * 1 * 1);
}
*/
/*
header .l-navi .l-navi-area .l-logo img {
	width: 240px;
}
*/





/************************************************
 * ハンバーハーメニュー
 */
#logoat {
  margin-right: 1rem;
  transition: transform var(--duration) var(--easing);
}
#logoat img {
	width: 40px;
}
.site-header {
  z-index: 100;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 3rem;
}
.site-header a.logo {
	display: flex;
	align-items: center;
}
.site-title {
  transition: all var(--duration) var(--easing);
  transition-property: transform, opacity;
  margin: 0;
  margin-right: auto;
	line-height: 0;
}
.site-title img {
    width: 200px;
}

@media screen and (min-width: 951px) {
	header.fixed {
		position: fixed;
		background: rgba(255,255,255,.6);
		padding: 1.5rem 2.35rem;
		transition: all .5s cubic-bezier(.77,0,.175,1);
	}
	header.fixed + .l-navi .l-navi-menu {
		position: fixed;
		padding: 1.5rem;
		transition: .6s;
	}
	header.fixed + .l-navi .l-navi-menu ul.items li a {
		font-size: 1.3rem;
	}
	.l-navi-menu ul.items {
		display: flex;
		justify-content: flex-end;
		align-items: center;
		flex-direction: row;
		flex-wrap: wrap;
		gap: 80px calc(24px * 1 * 1);
	}
	.l-navi-menu ul.items li a {
		font-family: 'Lato', sans-serif;
		font-size: 1.5rem;
		font-weight: 600;
	}
	.l-navi .l-navi-menu {
		position: absolute;
		top: 0;
		right: 0;
		z-index: 1000;
		padding: 3rem;
	}
	.menu-title {
		display: none;
	}
}

@media screen and (min-width: 951px) and (max-width: 1000px) {
	.l-navi-menu ul.items {
		gap: 80px calc(18px* 1* 1);
	}
}

@media screen and (max-width: 950px) {
	:root {
	  --easing: cubic-bezier(.5, 0, .5, 1);
	  --duration: .8s;
	  --item-duration: .4s;
	  --hover-duration: .3s;
	}
	body:has(#site[data-menu]) {
		overflow-y: hidden;
	}
	.menu-button {
		position: relative;
	  appearance: none;
	  color: #000;
	  background: transparent;
	  border: none;
	  font-size: 8vmin;
	  opacity: 0.7;
	  padding: 0;
	  line-height: .6;
	  transition: opacity var(--duration) linear;
	  cursor: pointer;
	}
	.menu-button::before {
		content: '≡';
		display: inline-block;
		top: -.1em;
	}
	.menu-button:hover {
		opacity: 1;
	}
	.menu-button::after {
		content: '';
		display: block;
		width: 5rem;
		height: 5rem;
		border-radius: 50%;
		position: absolute;
		top: 50%;
		left: 50%;
		background: #000;
		opacity: 0.5;
		animation: pulse 4s linear infinite;
		outline: none;
		pointer-events: none;
	}
	@keyframes pulse {
	  0%, 51%, 100% {
		opacity: 0;
		transform: translate(-50%,-50%) scale(0);
	  }
	  25% {
		opacity: 0.5;
	  }
	  50% {
		opacity: 0;
		transform: translate(-50%,-50%) scale(1);
	  }
	}

	.site-content {
	  display: grid;
	  grid-template-rows: 50% 50%;
	}
	.site-content > h1 {
		grid-row: 1 / 2;
		align-self: end;
		font-size: 5.5vw;
		transition: all var(--duration) var(--easing);
		transition-property: transform, opacity;
	}
	#site {
	  height: 100%;
	  width: 100%;
	  display: grid;
	  grid-template-rows: auto 1fr;
		position: relative;
	}

	/* ---------------------------------- */
	.site-menu {
	  position: absolute;
	  display: grid;
	  grid-template-columns: 10% 1fr 10% 1fr;
	  grid-template-rows: 1;
	  top: 0; right: 0; bottom: 0; left: 0;
	  margin: auto;
	  z-index: 99;
	  outline: 1px solid purple;
	  overflow: hidden;
	}
	.site-menu > ul,
	.site-menu > ul li { 
		margin: 0;
		padding: 0;
		list-style-type: none;
	}
	.site-menu > ul {
		padding-top: 10vh;
		height: 100%;
		grid-column: 2;
		grid-row: 1;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: flex-start;
	}
	.site-menu:before,
	.site-menu:after {
		content: '';
		position: absolute;
		height: 100%;
		width: 50%;
		left: 0;
		z-index: -1;
		background: #191D24;
		transition: transform var(--duration) var(--easing);
	  }
	.site-menu:after {
		left: 50%;
	}
	.menu-title {
	  grid-column: 4;
	  grid-row: 1;
	  justify-self: end;
	  align-self: end;
	  font-size: 12vw;
	  color: black;
	}
	.menu-title span {
		display: block;
		line-height: .7;
		font-family: Raleway, sans-serif;
		font-weight: 800;
	}
	.site-menu .item {
	  font-size: 6.8vmin;
	  flex-grow: 1;
	  align-items: center;
	  display: inline-flex;
	  cursor: pointer;
	  font-weight: bold;
	  -webkit-text-fill-color: transparent;
	  -webkit-text-stroke: 2px white;
	}
	.site-menu .item[data-active] {
		-webkit-text-fill-color: white;
	}
	.site-menu .item[data-active]::before {
		display: none;
	}
	.site-menu .item::before {
		content: '';
		position: absolute;
		width: 100%;
		height: 1vmin;
		background: currentColor;
		transform: scaleX(0);
		transform-origin: left center;
		transition: transform var(--hover-duration) var(--easing);
		transition-property: transform, transform-origin;
	}
	.site-menu .item:hover::before {
		transform: none;
		transform-origin: right center;
	}

	/* ---------------------------------- */

	.site-menu {
	  transition: visibility 0s linear var(--duration);
	}
	.site-menu .item {
	  transition: transform var(--item-duration) ease, opacity var(--item-duration) linear;
	}
	.menu-title span {
	  transition: transform var(--duration) var(--easing), opacity var(--duration) linear;
	}

	#site:not([data-menu]) .site-menu {
		visibility: hidden;
	}
	#site:not([data-menu]) .site-menu::before {
		transform: translateY(-100%);
	}
	#site:not([data-menu]) .site-menu::after {
		transform: translateY(100%);
	}
	#site:not([data-menu]) .site-menu .item { 
		opacity: 0; 
		transform: translateX(-100%);
		transition-timing-function: cubic-bezier(.8,0,.7,1);
		transition-delay: calc( 100ms * (var(--total) - var(--i)) );
	} 
	#site:not([data-menu]) .menu-title span {
		transform: translateX(-50%);
		opacity: 0;
	}
	#site:not([data-menu]) .menu-title span:nth-child(even) {
		transform: translateX(50%); 
	}
	#site:not([data-menu]) .site-content h1, .site-title {
		transform: none;
		opacity: 1;
	}

	#site[data-menu] .site-menu {
		visibility: visible;
		transition-delay: 0s;
	}
	#site[data-menu] .site-menu::before,
	#site[data-menu] .site-menu::after {
		transform: none;
	}
	#site[data-menu] .site-menu .item { 
		transform: none;
		transition-timing-function: cubic-bezier(.2,0,.2,1);
		transition-delay: calc( (var(--duration)/2) + (100ms * var(--i)));
	}
	#site[data-menu] .site-menu .item a {
		color: #fff;
	}
	#site[data-menu] .site-content h1 {
		transform: translateY(-100%);
		opacity: 0;
	}
	#site[data-menu] .site-title {
		transform: translateY(-100%);
		opacity: 0;
	}
	#site[data-menu] #logoat {
		transform: scale(1.5);
	}
	body:not(.home) #site[data-menu] .l-navi {
		height: 100vh;
	}
}



/************************************************
 * Footer
 */
.l-footer .inner {
    padding: 8.85vw 10vw 1vw;
}

.l-footer-item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
	margin-bottom: 80px;
}
.l-footer .l-footer-head .l-logo img {
	width: 260px;
	margin-top: 5px;
}
.l-footer-head .text {
	font-size: 1.3rem;
	margin-top: 10px;
}
.l-footer-main {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}
.l-footer-sub .list {
	font-family: 'Lato', sans-serif;
	text-align: center;
	font-size: 1.0rem;
	color: #5B5B5B;
}
.l-footer .l-navi-menu {
	text-align: right;
}
.l-footer .l-navi-menu > .item ul.menu {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0 calc(18px * 1 * 1);
}
.l-footer .l-navi-menu > .item ul.menu li a {
    font-family: 'Lato', sans-serif;
    font-size: 1.3rem;
    font-weight: 600;
}
.l-footer-main .item {
	margin-bottom: 26px;
}
.l-footer-main .bnr img {
	width: 110px;
}
.l-footer-main .bnr i {
	background: #000;
    color: #fff;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    padding: 10px;
    margin-left: 10px;
}



/************************************************
 * TOPページ
 */
.p-top-fv {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    height: 100svh;
    overflow: hidden;
    margin-bottom: 0;
    background-color: #000;
}
.p-top-fv-item {
    background-image: url('https://adopura.com/new2024/wp-content/themes/adopura/assets/img/top_slider-01.jpg');
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
}
.p-top-fv-item > .ttl {
    position: relative;
    top: 0;
    left: 0;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
	z-index: 30;
	text-align: center;
    padding-top: 2em;
}
.p-top-fv-item > .ttl h1.main {
	font-family: fertigo-script, sans-serif;
    font-style: normal;
    font-weight: 500;
    font-size: 6.4rem!important;
    letter-spacing: 2.6px;
    border-right: 0.05em solid;
    overflow: hidden;
    white-space: nowrap;
    animation: typing 4s steps(11, end), caret .5s step-end infinite;
    margin: 0 auto 0.2em;
	padding-bottom: 0.1em;
}
@keyframes typing {
  from { width: 0 }
  to { width: 100% }
}
@keyframes caret { 50% { border-color: transparent; } }

.p-top-fv-item > .ttl h4.sub {
	font-family: 'Noto Serif JP', serif;
    font-size: 2.0rem;
	font-weight: 600;
    letter-spacing: 3px;
}
.p-top-fv-item > .ttl h4.sub span {
    font-family: 'Noto Sans JP', sans-serif;
	font-weight: 800;
}


.p-top-block {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    margin-bottom: 0;
    background-color: var(--color-white);
    padding-top: 120px;
}

.p-top-works {
	max-width: calc(90vw + (2.1vw * 2));
    margin: 0 auto;
    padding: 0 2.1vw;
    width: 100%;
}

.p-top-works > .head,
.p-top-news > .head,
.p-top-recruit .head {
    font-family: 'Lato', sans-serif;
    position: relative;
    top: 0;
    left: 0;
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 3.6rem;
    font-weight: 800;
    color: var(--color-black);
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 24px calc(24px * 1 * 1) 0;
    margin-bottom: 60px;
    text-align: center;
}
.p-top-works > .head h3,
.p-top-news > .head h3,
.p-top-recruit .head h3 {
	font-weight: 600;
	line-height: 1.0;
}
.p-top-works > .head span.sub,
.p-top-news > .head span.sub,
.p-top-recruit .head span.sub {
	font-size: 1.3rem;
}

.p-top-works-list {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 calc(24px * 1 * 1);
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    gap: 80px calc(24px * 1 * 1);
    margin-bottom: 50px;
}
.p-top-works-list a {
    width: 31.35%;
}
.l-worksthumb {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    color: var(--color-black);
    overflow: hidden;
}
.l-worksthumb img {
    aspect-ratio: 3 / 2;
}
.l-worksthumb .info {
    margin-bottom: 10px;
    margin-top: 12px;
}
.l-worksthumb .info .cate {
	font-family: 'Lato', sans-serif;
	font-size: 1.0rem;
    font-style: italic;
}
.l-worksthumb .ttl {
	font-size: 1.6rem;
	font-weight: 600;
}
.btn-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    top: 0;
    left: 0;
    flex-direction: row;
    border-bottom: 1px solid rgba(0,0,0,.2);
    padding: 26px 8px;
}
.btn a {
	margin-right: 10px;
    font-family: 'Lato', sans-serif;
    font-size: 1.55rem;
    font-weight: 800;
    padding-bottom: 1px;
}
.btn:hover a,
.btn:hover i {
	color: #fff;
	transition: .65s;
}

.p-top-kamiina {
	max-width: calc(90vw + (2.1vw * 2));
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding: 140px calc(54px * 1 * 1) 40px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
	justify-content: center;
    align-items: flex-end;
    gap: 80px calc(24px * 1 * 1);
    margin: 0 auto 60px;
}

.p-top-news {
    max-width: calc(90vw + (2.1vw * 2));
    margin: 0 auto;
    padding: 4em 2.1vw 4.2em;
    width: 100%;
    background: #f9f9f9;
}
.p-top-news-list {
/*
    position: relative;
    top: 0;
    left: 0;
*/
    width: 100%;
    padding: 0 calc(24px * 1 * 1);
/*
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: center;
    gap: 80px calc(2% * 1 * 1);
*/
    margin-bottom: 30px;
}
.l-newsthumb {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    color: var(--color-black);
    overflow: hidden;
}
.l-newsthumb .info .spec span {
    font-family: 'Lato', sans-serif;
    font-size: 1.0rem;
    font-style: italic;
}
.l-newsthumb .info {
    margin-bottom: 10px;
    margin-top: 12px;
	padding: 10px;
}
.l-newsthumb .ttl {
	font-size: 1.6rem;
	font-weight: 600;
}


.p-top-bnr-list {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 calc(24px * 1 * 1);
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 80px calc(80px * 1 * 1);
    margin-bottom: 60px;
}
.p-top-bnr-list .bnr img {
	width: 140px;
    max-height: 64px;
    object-fit: contain;
}


.p-top-recruit {
    background-image: url('https://adopura.com/new2024/wp-content/themes/adopura/assets/img/top_recruit-bg.jpg');
    height: 100%;
}
.p-top-recruit .inner {
	padding: 8.85vw 10vw;
}
.p-top-recruit-item {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    flex-wrap: wrap;
}
.p-top-recruit .head {
    text-align: left;
    width: auto;
	display: block;
	margin-bottom: 0;
}
.p-top-recruit .head p {
	font-family: 'Noto Sans JP',sans-serif;
    font-size: 1.5rem;
    margin: 30px auto;
    line-height: 1.6;
}
.p-top-recruit .people img {
	width: 420px;
}

.p-top-recruit .link .btn {
    border-bottom: none;
    padding: 0;
    margin-bottom: 8px;
}
.p-top-recruit .link .btn a {
    border: 2px solid;
    padding: 14px 20px;
    border-radius: 100px;
    font-size: 1.85rem;
    margin-right: auto;
    width: 270px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.p-top-recruit .link .btn:nth-child(1) a i {
    margin-left: 10px;
    font-size: 2.45rem;
    margin-top: 7px;
}
.p-top-recruit .link .btn:nth-child(2) a i {
    background: #000;
    color: #fff;
    border-radius: 50%;
    width: 26px;
    height: 26px;
    margin-right: 5px;
    padding: 6px;
    font-size: 80%;
}
.p-top-recruit .link .btn span.tel {
	font-size: 2.345rem;
	font-weight: 600;
}
.p-top-recruit .link .btn span.memo {
    display: block;
    font-size: 1.2rem;
    font-weight: 600;
    width: 100%;
    letter-spacing: 0.5px;
}
.p-top-recruit .link .btn span.sub {
	font-size: 1.2rem;
	font-weight: 600;
}
.p-top-recruit .link .btn span.text {
    font-weight: 600;
    text-align: left;
    padding-bottom: 2px;
}


/************************************************
 * 固定ページ
 */
.p-page-fv img {
	max-height: 520px;
}
.p-page-con {
    margin-top: 80px;
    width: 100%;
}
.p-page-main > .head {
    font-family: 'Lato', sans-serif;
    position: relative;
    top: 0;
    left: 0;
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 3.6rem;
    font-weight: 800;
    color: var(--color-black);
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 24px calc(24px* 1* 1) 60px;
    text-align: center;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
    max-width: 1116px;
    margin: 0 auto 80px;
}
.p-page-main > .head h1 {
    font-weight: 600;
    line-height: 1.0;
}

.p-about-main {
    width: calc(24px * 17 * 1 + var(--redGrid) * 18 * 1);
}

.p-about-mes {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 0px calc(28px* 1);
    margin-bottom: 40px;
}

.p-about-mes h2 {
    font-size: 2.4rem;
    font-weight: 600;
    text-align: left;
    margin-bottom: 60px;
    letter-spacing: 4px;
}
.p-about-mes h2 span {
	font-family: 'Lato', sans-serif;
	font-size: 1.3rem;
	text-align: center;
	letter-spacing: 1px;
	color: rgba(138,138,138,1);
}
.p-about-mes .text {
	width: 55%;
}
.p-about-mes p {
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 1.4rem;
    letter-spacing: .05em;
    line-height: 1.8;
	text-align: justify;
}

.p-about-box {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding: 140px 0 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    gap: 80px calc(24px* 1* 1);
}
.p-about-box .p-about-box-item {
    width: 31.35%;
    position: relative;
}
.p-about-box .p-about-box-item a {
	width: 100%;
    text-align: center;
    padding: 60px 0;
    display: block;
    z-index: 100;
	position: relative;
    background: #f6f6f6;
}
.p-about-box .p-about-box-item:last-child {
    margin-right: 0;
}
.p-about-box .p-about-box-item h3 {
	font-family: 'Lato', sans-serif;
	font-weight: 600;
}
.p-about-box .chara {
    position: absolute;
    left: 0;
    right: 0;
    top: -80px;
	margin: 0 auto;
	text-align: center;
}
.p-about-box .chara img  {
	transition: opacity .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
	width: 80px;
}
.p-about-box a.item1:not(:hover) + .chara1 img,
.p-about-box a.item2:not(:hover) + .chara2 img,
.p-about-box a.item3:not(:hover) + .chara3 img {
	opacity: 0;
	transform: translateY(100%);
}

.p-about-sign {
	margin: 1.02445vw auto 0
}
.p-about-sign h3 {
    font-family: 'Lato', sans-serif;
    font-size: 13.2rem;
    font-weight: 900;
    line-height: 1.2;
    color: #f6f6f6;
}

.p-service-cont {
    padding: 60px 0 0;
}
.p-service-cont-list {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 calc(24px * 1 * 1);
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 80px calc(80px * 1 * 1);
    margin-bottom: 60px;
}
.p-service-cont-list .bnr img {
    width: 140px;
    max-height: 64px;
    object-fit: contain;
}


.p-service-box {
	padding-top: 20px;
}
.p-service-box-item {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 80px calc(68px * 1 * 1);
    margin-bottom: 120px;
}
.p-service-box-item:first-child > div,
.p-service-box-item:nth-child(2) > div {
	width: 45.9425%;
}
.border_top {
    padding: 90px 0 0;
    border-top: 1px solid rgba(0, 0, 0, 0.15);
}
.p-service-division h4 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #bbb;
}

.p-service-division p {
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 1.4rem;
    letter-spacing: .05em;
    line-height: 1.8;
	text-align: justify;
	margin-top: 32px;
}



.p-service-box-item .text h3 {
    font-family: 'Lato', sans-serif;
    font-size: 5.8rem;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: 2px;
}
.p-service-box-item .text h6 {
	font-family: 'Lato', sans-serif;
    font-size: 1.0rem;
    position: absolute;
    top: 6px;
    color: rgba(138,138,138);
}
.p-service-box-item .text button {
    border-bottom: none;
    padding: 0;
    margin: 30px 0 0;
}
.p-service-box-item .text button.btn a {
    font-size: 1.3rem;
    border-bottom: none;
    padding: 0;
}
.p-service-box-item .item {
	width: 47.025%;
}
.p-service-box-item .product {
	margin: 20px auto;
}
.p-service-box-item.graphic .product ul {
	width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 0 calc(18px* 1* 1);
}
.p-service-box-item .product ul li {
    font-size: 1.3rem;
    border-bottom: 0.5px solid #ccc;
    padding: 12px 0;
}
.p-service-box-item.graphic .product ul li {
	width: 48%;
}
.p-service-box-item .product ul li .brand {
	margin-left: 10px;
}
.p-service-box-item .product ul li .brand img {
    height: 16px;
    width: auto;
    padding: 0 7px;
}


.section__bg {
  transition: 1s;
}

.section__bg.section01 {
  color: #111;
  background-color: #eee;
}
.section__bg.section01.is-active {
  color: #ddd;
  background-color: #111;
}
.section__bg .p-service-box-item {
	padding: 120px 0;
}
.attention {
    color: #D40000;
}


/************************************************
 * COMPANY
 */
.p-company-box-item {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 80px calc(68px* 1* 1);
    margin-bottom: 120px;
}
.p-company-box-item:first-child > div,
.p-company-box-item:nth-child(2) > div {
    width: 45.9425%;
}
.p-company-box-item .text h3 {
    font-family: 'Lato', sans-serif;
    font-size: 5.8rem;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: 2px;
}
.p-company-division h4 {
    font-size: 1.3rem;
    font-weight: 600;
    color: #bbb;
}
.p-company-division p {
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 1.4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: justify;
    margin-top: 32px;
}
.p-company-box-item .text .name {
	margin-top: 30px;
}
.p-company-box-item .text .name h5 span {
	font-size: 1.3rem;
}
.section__bg .p-company-box-item {
    padding: 120px 0;
	margin-bottom: 0;
}

.p-company-box-item .text .list {
	margin-top: 32px;
}

.p-company-over > div:first-child,
.p-company-over > div:nth-child(2) {
    width: 47.959%;
}
.p-company-over-title {
	position: relative;
    border-top: 1px solid rgba(0,0,0,0.15);
    padding-top: 38px;
    margin: 38px calc(42px * 1 * 1);
}
.p-company-over-title h3 {
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: 0;
    margin-bottom: 20px;
}
.p-company-over-title h6 {
    font-family: 'Lato', sans-serif;
    font-size: 1.0rem;
    position: absolute;
    top: 6px;
    color: rgba(138,138,138);
}
.p-company-over p {
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 1.4rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: justify;
}
.p-company-over-item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    margin-bottom: 10px;
    border-bottom: 1px solid #333;
    padding-bottom: 10px;
}
.p-company-over .text {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.p-company-over-item .ttl {
    font-size: 1.4rem;
    transform: translateY(2px);
    width: 24%;
    margin-right: 6%;
    line-height: 1.3;
	font-weight: 600;
}
.p-company-over-item:last-child .ttl {
	font-size: 1.3rem;
}
.p-company-over-item .text {
	font-family: 'Lato', sans-serif;
    font-size: 1.4rem;
    line-height: 1.5;
    width: 72%;
}

/************************************************
 * RECRUIT
 */
.p-recruit {
    background-image: url(https://adopura.com/new2024/wp-content/themes/adopura/assets/img/bg_recruit.jpg);
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}
.p-recruit-main .p-top-fv {
	background: none;
}
.p-recruit-main .p-top-fv-item {
	background: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #000;
}
/*スクロールダウン全体の場所*/
.scrolldown2{
	position:absolute;
	bottom:10px;
	left:50%;
}

/*Scrollテキストの描写*/
.scrolldown2 span{
	position: absolute;
	left:10px;
	bottom:10px;
	color: #000;
	font-size: 1.0rem;
	letter-spacing: 0.05em;
	-ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

/* 丸の描写 */
.scrolldown2:before {
    content: "";
    position: absolute;
    bottom:0;
    left:-4px;
	width:10px;
	height:10px;
	border-radius: 50%;
	background:#000;
	animation:
		circlemove 1.6s ease-in-out infinite,
		cirlemovehide 1.6s ease-out infinite;
}

/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
      0%{bottom:45px;}
     100%{bottom:-5px;}
 }

/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
      0%{opacity:0}
     50%{opacity:1;}
    80%{opacity:0.9;}
	100%{opacity:0;}
 }

/* 線の描写 */
.scrolldown2:after{
	content:"";
	position: absolute;
	bottom:0;
	left:0;
	width:2px;
	height: 50px;
	background:#000;
}

.p-recruit-main-block > .tab {
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
}
.p-recruit-main-block > .tab > label {
    flex: 1 1;
    order: -1;
    min-width: 70px;
    padding: 1.2em 1em 1em;
    background-color: #f2f2f2;
    color: #999;
    font-weight: 600;
    font-size: 1.8rem;
    text-align: center;
    cursor: pointer;
    line-height: 1.2;
}
.p-recruit-main-block > .tab > label span {
    font-family: 'Lato', sans-serif;
    font-size: 1.3rem;
}
.p-recruit-main-block > .tab > label:hover {
    opacity: .8;
}
.p-recruit-main-block > .tab > label > input {
    display: none;
}
.p-recruit-main-block > .tab > div {
    display: none;
    width: 100%;
    padding: 1.5em 1em 4em;
    background-color: rgba(255,255,255,.25);
    border: 1px solid;
}
.p-recruit-main-block > .tab label:has(:checked) {
	color: #fff;
    background: #000;
}
.p-recruit-main-block > .tab label:has(:checked) + div {
    display: block;
}

.p-recruit-main-block {
    padding-top: 80px;
}
.p-recruit-main-block {
	padding-bottom: 80px;
}
.p-recruit-index .box {
    padding: 30px;
}
.p-recruit-index .p-recruit-index-common .box {
	padding-bottom: 0;
}
.p-recruit-index-item {
	display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    color: #000;
    width: 100%;
    border-bottom: 1px solid #333;
    padding-bottom: 6px;
}
.p-recruit-index-item .ttl {
    font-size: 1.4rem;
    transform: translateY(2px);
    width: 6%;
    margin-right: 2%;
    line-height: 1.3;
    font-weight: 600;
}
.p-recruit-index-item .text {
    font-family: 'Lato', sans-serif;
    font-size: 1.4rem;
    line-height: 1.5;
    width: 92%;
}
.p-recruit-index .top {
    position: relative;
    padding-top: 12px;
    margin: 38px calc(42px * 1 * 1);
}
.p-recruit-index .top h3 {
    font-family: 'Lato', sans-serif;
    font-size: 5.8rem;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: 2px;
}
.p-recruit-index .top h4 {
	font-size: 1.3rem;
    font-weight: 600;
	margin-bottom: 30px;
}
.p-recruit-index .top h6 {
    font-family: 'Lato', sans-serif;
    font-size: 1.0rem;
    color: rgba(138,138,138);
	margin-bottom: 20px;
}
.p-recruit-index .top p {
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 1.5rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: justify;
}
.p-recruit-index .bottom {
    margin: 38px calc(42px * 1 * 1);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.p-company-greet-item {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 calc(42px * 1 * 1);
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 80px calc(42px * 1 * 1);
    margin-bottom: 90px;
}
.p-recruit-index-job .list {
	position: relative;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 20px calc(18px * 1 * 1);
    margin: 38px calc(42px * 1 * 1) 0;
	align-items: stretch;
}
.p-recruit-index-job .list .card {
    width: 48.395%;
    background: #fff;
    padding: 30px;
    border-top: 14px solid;
	border-radius: 3px;
}
.p-recruit-index-job .list .card .top {
	margin: 0 auto 24px;
}
.p-recruit-index-job .list .card .top h4 {
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: 0;
    margin-bottom: 10px;
}
.p-recruit-index-job .list .card .bottom {
    margin: 0 auto 12px;
    gap: 10px;
}
.p-recruit-index-job .list .card .bottom .p-recruit-index-item {
    border-bottom: 1px solid #ddd;
}
.p-recruit-index-job .list .card .ttl {
    width: 28%;
    max-width: 80px;
    min-width: 60px;
    margin-right: 2%;
}
.p-recruit-index-job .list .card .text {
/*	width: 72%;*/
}
.p-recruit-index-entry .box {
    padding: 0 30px;
}
.p-recruit-index-entry .box .link {
	margin: 10px calc(42px * 1) 60px;
}
.p-recruit-index-entry .box .link a {
    width: 100%;
    padding: 30px;
    display: block;
    text-align: center;
    background: #000;
    color: #fff;
	font-size: 2.2rem;
}
.p-recruit-index-entry .box .link a span {
    font-family: 'Lato', sans-serif;
	font-weight: 800;
	margin-right: 10px;
}
.p-recruit-reason .box {
    padding: 30px;
}
.p-recruit-reason .box > .top {
    position: relative;
    margin: 38px calc(42px * 1 * 1) 70px;
	padding-top: 12px;
}
.p-recruit-reason .box > .top h3 {
	font-family: 'Lato', sans-serif;
    font-size: 5.8rem;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: 1px;
}
.p-recruit-reason .box > .top h4 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 30px;
}

.p-recruit-reason .list {
    margin: 38px calc(42px * 1 * 1);
}
.p-recruit-reason .list .card {
    padding: 50px 0;
	border-top: 1px solid rgba(0, 0, 0, 0.15);
}

.p-recruit-reason .list .card:nth-child(2n) .item .illust {
	order: 2;
}
.p-recruit-reason .list .card:nth-child(2n) .item .top {
	order: 1;
}
.p-recruit-reason .list .card:last-of-type {
	padding-bottom: 0;
}

.p-recruit-reason .card .top {
	border-top: none;
}
.p-recruit-reason .card .top h4 {
    font-size: 2.4rem;
    font-weight: 600;
    letter-spacing: 0;
    padding-top: 10px;
    margin-bottom: 10px;
}
.p-recruit-reason .card .bottom {
	margin-top: 20px;
}
.p-recruit-reason .card .bottom h6 {
    font-family: 'Lato', sans-serif;
    font-size: 1.3rem;
    font-weight: 700;
    color: #000;
    margin-bottom: 8px;
    border-bottom: 1px solid #000;
}

.p-recruit-reason .card .cont p {
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 1.5rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: justify;
    margin: 30px auto 10px;
}

.p-recruit-reason-item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    color: #000;
    width: 100%;
    margin-top: 2px;
}
.p-recruit-reason-item .ttl {
	font-family: 'Lato', sans-serif;
    font-size: 1.5rem;
    transform: translateY(2px);
    width: 30%;
    margin-right: 2%;
    line-height: 1.3;
    font-weight: 600;
}
.p-recruit-reason-item .text {
    font-family: 'Lato', sans-serif;
    font-size: 1.5rem;
    line-height: 1.5;
    width: auto;
}

.p-recruit-reason .list .card .item {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px calc(34px * 1);
	align-items: center;
}

.p-recruit-reason .list .card .item .illust {
	width: 32.0%;
}
.p-recruit-reason .list .card .item .top {
	width: 61.5%;
}
.p-recruit-reason .list .card .item .top .bottom {
	border-top: 0.5px solid;
	margin-top: 30px;
	padding-top: 16px;
}
.p-recruit-entry .box > .top {
    position: relative;
    margin: 38px calc(42px* 1* 1);
    padding-top: 12px;
}
.p-recruit-entry .box {
    width: 100%;
    padding: 1.5em 1em 4em;
    background-color: rgba(255, 255, 255, .25);
    border: 1px solid;
    margin-top: 2em;
}
.p-recruit-entry .box > .top h3 {
    font-family: 'Lato', sans-serif;
    font-size: 5.8rem;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: 1px;
}
.p-recruit-entry .box > .top h4 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 30px;
}
.p-recruit-entry .list {
    margin: 38px calc(42px * 1 * 1);
}
.p-recruit-entry .list .card {
    background: #fff;
    padding: 30px;
	margin-bottom: 20px;
	border-radius: 3px;
}
.p-recruit-entry .list .card h4 {
	font-size: 2.0rem;
    font-weight: 600;
    letter-spacing: 0;
    padding: 10px 0 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.p-recruit-entry .list .card .top {
    position: relative;
    margin: 10px calc(42px * 1 * 1) 20px;
}
.p-recruit-entry .list .card .bottom {
    position: relative;
    margin: 20px calc(42px * 1 * 1);
}
.p-recruit-entry .list .card .bottom .p-recruit-entry-tel {
    font-family: 'Lato', sans-serif;
    font-size: 2.225rem;
    margin-right: auto;
    width: auto;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.p-recruit-entry .list .card .bottom .p-recruit-entry-tel i {
	background: #000;
    color: #fff;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    margin-right: 12px;
    padding: 14px 17px;
    font-size: 100%;
}
.p-recruit-entry .list .card .bottom .p-recruit-entry-tel a {
	line-height: 1.35;
}
.p-recruit-entry .list .card .bottom .p-recruit-entry-tel span.tel {
	font-size: 3.065rem;
	font-weight: 600;
}
.p-recruit-entry .list .card .bottom .p-recruit-entry-tel span.memo {
    display: block;
    font-size: 1.5rem;
    font-weight: 600;
    width: 100%;
    letter-spacing: 0.5px;
}
.p-recruit-entry .list .card .bottom .p-recruit-entry-tel span.memo span {
	font-family: 'Noto Sans JP',sans-serif;
	font-size: 1.3rem;
	font-weight: 500;
}
.p-recruit-entry-form {
	padding-top: 10px;
}

.p-recruit-entry-form .item {
	margin-bottom: 20px;
}
.p-recruit-entry-form .item span {
	font-size: 80%;
}
.p-recruit-entry-form .item label {
	font-size: 1.5rem;
	font-weight: 500;
	margin-bottom: 5px;
}
.p-recruit-entry-form .item label sup {
    --tw-text-opacity: 1;
    color: rgb(255 0 0 / var(--tw-text-opacity));
}
.p-recruit-entry-form .item .field {
	padding-top: 5px;
}
.p-recruit-entry-form .item .field input,
.p-recruit-entry-form .item .field select,
.p-recruit-entry-form .item .field textarea {
    width: 100%;
    padding: 10px;
    background: #f6f6f6;
    border: none;
}
.p-recruit-entry-form .item .field .mwform-tel-field > input,
.p-recruit-entry-form .item .field > select,
.p-recruit-entry-form .item .field > input#age {
	width: auto;
}
.form-confirm input {
    background: #000;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 600;
    padding: 20px;
    width: 100%;
    margin: 30px auto;
    border: none;
}
.p-recruit-entry-form .item.existent-other {
	display: none;
}



/************************************************
 * CONTACT
 */
.p-contact-form .form .item {
	margin-bottom: 30px;
}
.p-contact-form .form .item > label {
	font-size: 1.6rem;
	font-weight: 600;
}
.p-contact-form .form .item .field label {
	font-size: 1.5rem;
	font-weight: 500;
	margin-bottom: 5px;
}
.p-contact-form .form .item label sup {
    --tw-text-opacity: 1;
    color: rgb(255 0 0 / var(--tw-text-opacity));
}
.p-contact-form .form .item .field {
	padding-top: 6px;
}
.p-contact-form .form .item .field input,
.p-contact-form .form .item .field select,
.p-contact-form .form .item .field textarea {
    width: 100%;
    padding: 10px;
    background: #f6f6f6;
    border: none;
}
.p-contact-form .form .item .field .mwform-tel-field > input,
.p-contact-form .form .item .field > select,
.p-contact-form .form .item .field > input#age,
.p-contact-form .form .item .field > .mwform-checkbox-field input {
	width: auto;
}

.p-contact-main-block p {
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 1.5rem;
    letter-spacing: .05em;
    text-align: justify;
}
.p-contact-main-block .card {
    background: #fff;
    padding: 30px;
    margin-bottom: 20px;
    border-radius: 2px;
}

.p-contact-main-block .card h4 {
    font-size: 2.0rem;
    font-weight: 600;
    letter-spacing: 0;
    padding-top: 10px;
    margin-bottom: 6px;
}
.p-contact-main-block .card > .top {
    position: relative;
    margin: 10px calc(42px * 1 * 1) 20px;
}
.p-contact-main-block .card > .bottom {
    position: relative;
    margin: 20px calc(42px * 1 * 1);
}
.p-contact-tel .card .bottom .p-recruit-entry-tel {
    font-family: 'Lato', sans-serif;
    font-size: 2.225rem;
    margin-right: auto;
    width: auto;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.p-contact-tel .card .bottom .p-recruit-entry-tel i {
	background: #000;
    color: #fff;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    margin-right: 12px;
    padding: 14px 17px;
    font-size: 100%;
}
.p-contact-tel .bottom .p-recruit-entry-tel a {
	line-height: 1.35;
}
.p-contact-tel .bottom .p-recruit-entry-tel span.tel {
	font-size: 3.065rem;
	font-weight: 600;
}
.p-contact-tel .bottom .p-recruit-entry-tel span.memo {
    display: block;
    font-size: 1.5rem;
    font-weight: 600;
    width: 100%;
    letter-spacing: 0.5px;
}
.p-contact-tel .bottom .p-recruit-entry-tel span.memo span {
	font-family: 'Noto Sans JP',sans-serif;
	font-size: 1.3rem;
	font-weight: 500;
}
.p-contact-form .bottom .form {
	margin-top: 80px;
}

.p-contact-form .item .ttl {
	padding: 10px 14px;
    background: #f6f6f6;
    border: none;
    width: 100%;
    display: block;
    font-size: 1.6rem;
    font-weight: 600;
	margin-top: 20px;
}
.p-contact-form .mw_wp_form_input .open-area,
.p-contact-form .mw_wp_form_input .open-child1,
.p-contact-form .mw_wp_form_input .open-child2,
.p-contact-form .mw_wp_form_input .open-child3,
.p-contact-form .open-area .item .open-addr,
.p-contact-form .open-area .item .togo {
    display: none;
    opacity: 0;
    transition: opacity 0.5s ease;
}
.p-contact-form .mw_wp_form_input .open-area.show,
.p-contact-form .mw_wp_form_input .open-child1.show,
.p-contact-form .mw_wp_form_input .open-child2.show,
.p-contact-form .mw_wp_form_input .open-child3.show,
.p-contact-form .open-area .item .open-addr.show,
.p-contact-form .open-area .item .togo.show {
	display: block;
    opacity: 1;
}
.p-contact-form .item.radio-auto .field input {
	width: auto;
}
.p-contact-form .open-area {
	padding: 20px 0 30px;
}
.p-contact-form .open-area .item {
	margin-bottom: 36px;
}
.p-contact-form .open-area.show .item.parent {
	margin-bottom: 20px;
}

.p-contact-form .item .ttl .num {
    background: #000;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 800;
    padding: 4px 8px;
    border-radius: 3px;
    margin-right: 10px;
    font-family: 'Lato', sans-serif;
}

.p-contact-form .item .attention-box {
	padding: 20px;
    background: #f6f6f6;
    width: 100%;
    margin-top: 20px;
}
.p-contact-form .item .attention-box p .b {
	font-weight: 600;
}
.p-contact-form .item .attention {
	margin-top: 20px;
}
.p-contact-form .open-area .open-child2 .attention .num {
	background: #000;
    color: #fff;
    font-weight: 800;
    padding: 2px 6px;
    border-radius: 3px;
    margin-right: 2px;
    font-family: 'Lato', sans-serif;
}
.p-contact-form .open-area .mw_wp_form .error {
	margin-top: 10px;
    font-weight: 600;
}
.p-contact-main-block .card .bottom .bnr {
    display: flex;
    align-items: center;
    gap: 0 20px;
}
.p-contact-main-block .card .bottom .bnr .item {
	width: 50%;
}
.p-contact-main-block .card .bottom .bnr img {
    border: 1px solid;
    margin-top: 30px;
}
.p-contact-form .bottom .form .form-back,
.p-contact-form .bottom .form .form-confirm {
	display: inline-block;
	margin-top: 30px;
}
.p-contact-form .bottom .form .form-back input,
.p-contact-form .bottom .form .form-confirm input {
    background: #000;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 600;
    padding: 14px 34px;
    width: auto;
    margin: 0 auto;
    border: none;
    border-radius: 5px;
	cursor: pointer;
}
.p-contact-form .bottom .form .form-back input:hover ,
.p-contact-form .bottom .form .form-confirm input:hover {
	cursor: pointer;
	opacity: .8;
	transition: .6s;
}
.p-contact-form .bottom .form .mw_wp_form_complete .btn-complete {
	background: #000;
    padding: 10px 40px;
    display: inline-block;
    margin-top: 20px;
    color: #fff;
    border-radius: 5px;
    font-weight: 600;
}


.p-contact-main-block .form > .tab {
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
}
.p-contact-main-block .form > .tab > label,
.p-contact-main-block .form > .tab > a.link {
    flex: 1 1;
    order: -1;
    min-width: 70px;
    padding: 1.2em 1em 1em;
    background-color: #f2f2f2;
    color: #999;
    font-weight: 600;
    font-size: 1.6rem;
    text-align: center;
    cursor: pointer;
    line-height: 1.3;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	position: relative;
	border-right: 1px solid #ddd;
}
.p-contact-main-block .form > .tab > a.link.recruit {
	border-right: none;
}
.p-contact-main-block .form > .tab > label span,
.p-contact-main-block .form > .tab > a.link span {
    font-size: 1.3rem;
    width: 100%;
}
.p-contact-main-block .form > .tab > label:hover,
.p-contact-main-block .form > .tab > a.link:hover {
    opacity: .8;
}
.p-contact-main-block .form > .tab > label > input,
.p-contact-main-block .form > .tab > a.link > input {
    display: none;
}
.p-contact-main-block .form > .tab > div {
    display: none;
    width: 100%;
    padding: 5em 0 4em;
}
.p-contact-main-block .form > .tab > label:has(:checked) {
	color: #fff;
    background: #000;
}
.p-contact-main-block .form > .tab > label:has(:checked):before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -10px;
  border: 10px solid transparent;
  border-top: 14px solid #000;
	z-index: 10;
}

.p-contact-main-block .form > .tab > label:has(:checked) + div {
    display: block;
}
.p-contact-form .panel .top h3 {
    font-family: 'Lato', sans-serif;
    font-size: 5.8rem;
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: 2px;
}
.p-contact-form .panel .top h4 {
	font-size: 1.3rem;
    font-weight: 600;
	margin-bottom: 30px;
}
.p-contact-form .panel .top h6 {
    font-family: 'Lato', sans-serif;
    font-size: 1.0rem;
    color: rgba(138,138,138);
	margin-bottom: 20px;
}
.p-contact-form .panel .top p {
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 1.5rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: justify;
}
.p-contact-form .panel .top .attention {
	background: #f5f5f5;
	padding: 1em 2em;
	margin-top: 1em;
	margin-bottom: 3em;
}
.p-contact-form .panel .top .attention span.period {
    padding-left: 1em;
}
.p-contact-form .panel .top .attention span {
	font-weight: 600;
}
.p-contact-form .panel .bottom {
    margin: 38px auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.p-contact-form .panel .top .tag {
	margin-top: 1em;
}
.p-contact-form .panel .top .tag .item {
	display: inline-block;
	font-size: 1.3rem;
	background: #f5f5f5;
	padding: 0.25em 1em;
	border-radius: 200px;
	margin-right: 0.25em;
	margin-bottom: 0.5em;
}
.p-contact-form .panel form hr {
	margin: 2em auto;
}


/************************************************
 * SURVEY
 */
.p-survey .p-page-main .head {
	margin-bottom: 10px;
}
.p-survey .p-contact-survey-form .ttl {
    padding: 10px 14px;
    background: #f6f6f6;
    border: none;
    width: 100%;
    display: block;
    font-size: 1.6rem;
    font-weight: 600;
    margin-bottom: 20px;
	margin-top: 40px;
}
.p-survey .p-contact-survey-form .ttl .num {
    background: #000;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 800;
    padding: 4px 8px;
    border-radius: 3px;
    margin-right: 10px;
    font-family: 'Lato', sans-serif;
}
.p-survey .p-contact-survey-form .item .field #follower,
.p-survey .p-contact-survey-form .item .field #partake {
	width: auto;
}
.p-survey .p-contact-survey-form .item {
    width: 96%;
    margin: 0 auto 10px;
}
.p-survey .p-contact-survey-form .item .block {
	margin-bottom: 10px;
}
.p-survey .p-contact-survey-form .item label {
	font-weight: 600;
}
.text-center {
	text-align: center!important;
}
.p-survey .p-contact-survey-form .item .attention {
	font-size: 1.1rem;
	margin-top: 5px;
	color: #333;
}
.p-survey .p-contact-survey-form .item.follower .block {
    display: flex;
    align-items: center;
    gap: 0 10px;
}
.p-survey .p-contact-survey-form .item .unit {
	font-size: 86%;
}
.p-survey .p-contact-survey-form .item.follower .block label {
	width: 90px;
}
.p-survey .p-contact-survey-form .item.follower .block label .s {
    font-size: 1.3rem;
    font-weight: 600;
}
.p-survey .p-contact-survey-form .item .block.other {
	padding-top: 10px;
}
.p-survey .p-contact-survey-form .item .block.other label {
	font-size: 1.4rem;
}
.p-survey .p-contact-survey-form .completed_block .txt {
	text-align: center!important;
}
.p-survey .p-contact-survey-form .completed_block .btn {
	font-family: 'Lato', sans-serif;
    background: #333;
    color: #fff;
    font-weight: 600;
    font-size: 2.0rem;
    margin-top: 30px;
    border-radius: 5px;
}



/************************************************
 * WORKS
 */

.l-category {
	margin-bottom: 60px;
}
.l-category ul {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px;
}
.l-category ul li {
	font-family: 'Lato', sans-serif;
	font-weight: 600;
}
.l-category ul li a {
    padding: 10px 24px;
    border: 2px solid #000000;
    border-radius: 25px;
}
.l-category ul li a.current {
	background: #000;
	color: #fff;
}
.p-works-detail {
	padding: 160px 0 100px;
}
.p-works-detail .bottom {
	margin-top: 80px;
	padding-bottom: 20px;
}
.p-works-detail .bottom h1 {
	font-size: 3.6rem;
    font-weight: 800;
}
.p-works-detail .bottom .category {
    font-family: 'Lato', sans-serif;
    font-size: 1.3rem;
    font-style: italic;
    display: inline-block;
    margin-right: 10px;
}
.p-works-detail .bottom .p-works-detail-info {
	position: relative;
	display: flex;
	justify-content: space-between;
	flex-direction: row;
	align-items: flex-start;
	gap: 20px;
	margin-top: 80px;
}
.p-works-detail .bottom .spec {
	max-width: 78%;
}
.p-works-detail .bottom .spec > .item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 4px;
	margin-bottom: 2px;
}
.p-works-detail .bottom .spec .item.url span {
	font-family: 'Lato', sans-serif;
	color: #bbb;
}
.p-works-detail .bottom .spec .item span {
    font-size: 1.3rem;
    font-weight: 600;
}
.p-works-detail .bottom .spec .item span:first-child {
	font-family: 'Lato', sans-serif;
	font-weight: 600;
	width: 60px;
	color: rgba(138,138,138,1);
}
.p-works-detail .bottom .spec .item:nth-child(2) span:last-child {
	font-family: 'Lato', sans-serif;
}
.p-works-detail .bottom .spec .txt {
	margin-top: 40px;
}
.p-works-detail .bottom .spec .txt p {
    font-style: normal;
    font-feature-settings: "palt";
    font-smoothing: antialiased;
    -webkit-font-smoothing: antialiased;
    font-size: 1.3rem;
    letter-spacing: .05em;
    line-height: 1.8;
    text-align: justify;
}
.p-works-detail .bottom .product {
	margin-top: 10px;
}
.p-works-detail .bottom .product ul li {
    background: #eee;
    font-size: 1.0rem;
    font-weight: 500;
    padding: 2px 13px;
    border-radius: 100px;
    display: inline-block;
}
.p-works-detail .bottom .creative {
    border-left: 1px solid #ddd;
    padding-left: 60px;
    position: sticky;
    top: 10vh;
    height: 100vh;
}
.p-works-detail .bottom .creative .ttl {
	font-family: 'Lato', sans-serif;
	font-size: 1.3rem;
	font-weight: 600;
	color: rgba(138,138,138,1);
	margin-bottom: 10px;
	display: block;
}
.p-works-detail .bottom .creative ul li {
    font-size: 1.3rem;
    margin-bottom: 4px;
}
.p-works-detail-gallery {
	margin-top: 90px;
	padding-bottom: 40px;
}
.p-works-detail-gallery .item img {
    margin-bottom: 20px;
}
.p-works-detail-gallery .item.webtop img {
	border: 1px solid;
}
.p-works-related {
	background: #000;
	color: #fff;
	padding: 80px 0;
}
.p-works-related .head h3 {
	font-family: 'Lato', sans-serif;
    font-size: 2.4rem;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0;
    margin-bottom: 6px;
	color: #fff;
}
.p-works-related .head h6 {
	font-size: 1.0rem;
}

.p-works-related .list {
    margin-top: 60px;
}
.p-works-related .list .item {
	padding: 0 5px;
}
.p-works-related .list .item .top img {
    height: auto;
    aspect-ratio: 3 / 2;
}
.p-works-related .list .item .bottom {
	margin-top: 20px;
}
.p-works-related .list .item .bottom .category {
	font-size: 1.0rem;
	color: #ddd;
    font-family: 'Lato', sans-serif;
    font-style: italic;
    display: inline-block;
    margin-right: 6px;
}
.p-works-related .list .item .bottom .ttl {
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 1.5;
    display: block;
    margin-bottom: 8px;
}

.p-page-main .p-top-works-list {
	margin-bottom: 280px;
}
.view-more-button {
	position: absolute;
    bottom: -120px;
    font-family: 'Lato', sans-serif;
    font-size: 3.45rem;
    font-weight: 800;
    left: 0;
    right: 0;
    cursor: pointer;
    color: #ddd;
}
.view-more-button i {
	margin-left: 10px;
}




/************************************************
 * Form single
 */
.templete-form {
	background: #fff;
}
.templete-form * {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.templete-form .eyecacth {
	margin-top: 4em;
}
.templete-form .eyecacth img {
	width: 100%;
	height: auto;
	object-fit: cover;
}
.templete-form .content {
	padding: 4em 0;
}
.templete-form .block {
	background: rgba(247,243,242,1);
	padding: 5em;
	border-radius: 14px;
	margin-bottom: 2em;
}
.templete-form .block .appear {
	max-width: 768px;
	margin: 0 auto;
}
.templete-form .block .appear.text {
    margin-top: 40px;
    border-top: 1px solid;
    padding-top: 30px;
}
.templete-form .block .appear.text p {
	font-weight: 500;
	text-align: left;
}
.templete-form .block .appear .head {
    margin: 0 auto 0.85em!important;
    text-align: left;
    font-size: 18px;
    font-weight: 600;
    border-bottom: 1px solid;
    padding-bottom: 0.5em;
}
.templete-form .content .index {
	text-align: center;
}
.templete-form .content .index .logo {
    max-width: 140px;
	width: auto;
    margin-right: 1em;
    padding-bottom: 0.4em;
	object-fit: contain;
}
.templete-form .content .index .subheading {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.templete-form .content .index .subheading .txt {
    font-size: 16px!important;
    font-weight: 500;
}

.templete-form .content .index .title {
    font-weight: 600;
    font-size: 36px;
    line-height: 1.4;
    margin: 0.05em auto 0.25em;
}
.templete-form .content .index .lead {
    font-weight: 500;
    background: #e60012;
    color: #fff;
    display: inline-block;
    padding: 2px 26px;
    border-radius: 3px;
    margin-top: 5px;
    box-sizing: border-box;
}
.templete-form .content .index .closing {
    font-size: 26px;
    font-weight: 600;
    margin-top: 0.5em;
}
.templete-form .content .index .exp {
	font-weight: 500;
	letter-spacing: 0.5px;
}
.templete-form .content .index .red {
	color: #e60012;
}
.templete-form .content .index .en {
	font-family: 'Lato', sans-serif;
	font-weight: 600;
}
.templete-form .content .attention p {
	font-size: 15px;
    font-weight: 500;
    font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Hiragino Sans",sans-serif;
}
.templete-form .content .short_form table {
	width: 100%;
    box-sizing: border-box;
    padding-top: 1em;
	table-layout: fixed;
}
.templete-form .content .short_form table th,
.templete-form .content .short_form table td {
	font-size: 16px;
	border: none;
    padding: 10px 0;
}
.templete-form .content .short_form table th {
	text-align: left;
	font-weight: 600;
    line-height: 1.5;
	width: 30%;
	vertical-align: middle;
}
.templete-form .content .short_form table th .s {
	font-size: 13px;
}
.templete-form .content .short_form table input,
.templete-form .content .short_form table textarea,
.templete-form .content .short_form table select {
	font-size: 16px;
	padding: 8px;
	border: none;
	width: 100%;
    box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	color: #000;
	border-radius: 2px;
	background: #fff;
}
.templete-form .content .short_form table .no-width td input,
.templete-form .content .short_form table .no-width td select {
	width: auto;
	max-width: 100%;
}
::placeholder {
	opacity: 0.5;
	font-weight: 500;
}
.templete-form .content .form .head .attention,
.templete-form .content .short_form .attention {
	color: #e60012;
	font-size: 13px;
	font-weight: 600;
}
.templete-form .content .short_form .form-confirm input,
.templete-form .content .short_form .form-back input {
    padding: 14px 60px;
    width: auto;
    font-size: 16px;
    font-weight: 500;
    border: none;
    background: #e60012;
    color: #fff;
    border-radius: 30px;
    font-family: inherit;
	cursor: pointer;
}
.templete-form .content .short_form .form-back input.back {
	background: #f56c6c;
}
.templete-form .content .pc {
	display: block;
}
.templete-form .content .sp {
	display: none;
}
.templete-form .content .form-btn {
	display: flex;
    justify-content: center;
	align-items: center;
    margin-top: 1em;
}
.templete-form .content .form-btn .form-confirm,
.templete-form .content .form-btn .form-back {
    width: auto;
    padding: 5px;
    margin: 0;
    display: block;
     font-style: normal; 
}

.templete-form .content .thanks h3 {
	font-weight: 600;
}
.templete-form .content .thanks p {
	font-size: 16px;
    margin: 1em auto 0;
    font-weight: 500;
    font-family: "Noto Sans JP","Hiragino Kaku Gothic ProN","Hiragino Sans",sans-serif;
}
.templete-form .content .thanks img.chara {
    width: 400px;
    height: auto;
}



@media screen and (max-width: 960px){
	.templete-form .content .index .title {
		font-size: 30px;
	}
	.templete-form .content .index .lead {
		font-size: 16px;
	}
	.templete-form .content .index .closing {
		font-size: 22px;
	}
	.templete-form .content .index .exp {
		font-size: 16px!important;
	}
	.templete-form .content .short_form table th {
		width: 30%;
	}
	.templete-form .content .short_form table td {
		width: 70%;
	}
}
@media screen and (max-width: 767px){
	.templete-form .content .short_form table th,
	.templete-form .content .short_form table td {
		width: 100%;
		display: block;
	}
	.templete-form .content .short_form table th {
		padding-bottom: 0;
	}
}
@media screen and (max-width: 520px){
	.templete-form .content .pc {
		display: none;
	}
	.templete-form .content .sp {
		display: block;
	}
	.templete-form .content {
		padding: 1em 0;
	}
	.templete-form .block {
		padding: 3em 2em;
	}
	.templete-form .content .index .logo {
		max-width: 100px;
	}
	.templete-form .content .index .title {
		font-size: 25px;
		line-height: 1.4;
		margin: 0.25em auto;
	}
	.templete-form .content .index .lead {
		padding: 8px 16px;
		line-height: 1.4;
	    width: 100%;
		font-weight: 600;
	}
	.templete-form .content .index .closing {
		font-size: 18px;
	}
	.templete-form .content .index .exp {
		line-height: 1.4;
		margin-top: 0.4em;
		font-weight: 600;
		font-size: 14px!important;
	}
	.templete-form .content .attention p {
		font-size: 14px;
	}
	.templete-form .content .short_form table {
		padding-top: 0;
	}
	.templete-form .content .short_form table th,
	.templete-form .content .short_form table td {
		padding-top: 8px;
	}
	.templete-form .form-back {
		margin: 0 auto;
		width: auto;
	}
	.templete-form .content .short_form .form-confirm input, .templete-form .content .short_form .form-back input {
	    padding: 14px 50px;
	}
	.templete-form .content .thanks p {
		font-size: 15px;
	}
	.templete-form .content .thanks img.chara {
		width: 95%;
	}

}


/************************************************
 * NEWS
 */
.p-news-list {
    max-width: calc(90vw + (2.1vw * 2));
    margin: 0 auto;
    padding: 0 2.1vw;
    width: 100%;
}
.p-news-list-cont {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 calc(24px * 1 * 1);
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    gap: 80px calc(24px * 1 * 1);
    margin-bottom: 280px;
}
.p-news-list-cont a {
    width: 31.35%;
}
.l-newsthumb {
    position: relative;
    top: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    color: var(--color-black);
    overflow: hidden;
}
.l-newsthumb img {
    aspect-ratio: 3 / 2;
}
body:not(.home) .l-newsthumb .info {
	padding: 0;
}
body:not(.home) .l-newsthumb .ttl {
    font-size: 1.65rem;
    font-weight: 600;
    padding-top: 5px;
}
body:not(.home) .p-news-list .info .date {
    font-family: 'Lato', sans-serif;
    font-size: 1.0rem;
    font-style: italic;
}
.p-news-list .info .category {
    background: #eee;
    font-size: 1.0rem;
    font-weight: 500;
    padding: 2px 13px;
    border-radius: 100px;
    display: inline-block;
	margin-left: 5px;
}

.p-news-detail {
	padding: 160px 0 140px;
}
.p-news-detail .bottom {
	margin-top: 80px;
	padding-bottom: 20px;
}
.p-news-detail .bottom h1 {
	font-size: 3.6rem;
    font-weight: 800;
	margin-top: 8px;
}
.p-news-detail .bottom .category {
	font-family: 'Lato', sans-serif;
	font-size: 1.5rem;
}
.p-news-detail .bottom .p-news-detail-cont {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-direction: row;
    align-items: flex-start;
    gap: 20px;
    margin-top: 80px;
}
.p-news-detail .bottom .txt {
    width: 100%;
    max-width: 78%;
}
.p-news-detail .bottom .txt p a {
    text-decoration: underline;
    color: #009b6b;
}
.p-news-detail .bottom .txt .feature_box {
	position: relative;
	background: #f9f9f9;
	padding: 30px 40px;
	border-radius: 5px;
	width: 100%;
	margin-bottom: 60px;
}
.p-news-detail .bottom .txt .feature_box .chara {
    position: absolute;
    top: -32px;
    right: 40px;
    width: 44px;
}
.p-news-detail .bottom .txt .feature_box .title {
    font-weight: 600;
    margin-bottom: 15px;
    border-bottom: 1px solid #ddd;
    padding-bottom: 10px;
}
.p-news-detail .bottom .txt .feature_box ul li {
	font-size: 1.3rem;
    font-weight: 500;
    margin-bottom: 5px;
    list-style: inside;
}
.p-news-detail .bottom .txt .feature_box ul li:last-child {
    margin-bottom: 0;
}
.p-news-detail .bottom .txt h2.wp-block-heading {
	font-size: 2.2rem;
    font-weight: 600;
    margin-bottom: 20px;
	padding-left: 10px;
}
.p-news-detail .bottom .txt h6.wp-block-heading {
    font-family: 'Lato', sans-serif;
    font-size: 1.3rem;
    color: #999;
    padding-top: 50px;
	padding-bottom: 2px;
    border-top: 1px solid #ddd;
    margin-top: 80px;
}
.p-news-detail .bottom .txt .wp-block-buttons {
	margin-bottom: 20px;
}
.p-news-detail .bottom .txt .feature_box + h6.wp-block-heading {
	padding-top: 0;
	border-top: none;
}
.p-news-detail .bottom .txt h6::before {
	content: "-";
	padding-right: 5px;
}
.p-news-detail .bottom .txt .btn-wrapper {
	margin-top: 60px;
}
.p-news-detail .bottom .sidebar {
    border-left: 1px solid #ddd;
    padding-left: 60px;
    position: sticky;
    top: 10vh;
    height: 100vh;
}
.p-news-detail .bottom .date {
	font-family: 'Lato', sans-serif;
	font-size: 1.3rem;
}
.p-news-detail .bottom .category {
    background: #eee;
    font-size: 1.0rem;
    font-weight: 500;
    padding: 2px 13px;
    border-radius: 100px;
    display: inline-block;
	margin-left: 5px;
}
.p-news-detail-cont .txt p {
    font-size: 1.5rem;
    margin-bottom: 30px;
    line-height: 1.8;
    letter-spacing: .05em;
}
.p-news-detail-cont .txt figure {
	margin-bottom: 30px;
}
.p-news-detail-cont .txt p strong {
	font-weight: 600;
}
.p-news-detail-cont .txt p a {
	font-weight: 600;
	color: #999;
}
.p-news-detail-cont .txt strong {
	font-weight: 600;
}

.p-news-detail-cont .txt .book {
    position: relative;
    margin: 180px auto 0;
    margin-bottom: 50px;
    padding: 50px 455px 50px 78px;
    border-radius: 0 30px 0 30px;
    background-color: #f5f5f5;
}
.p-news-detail-cont .txt .book .info .vol {
	font-family: 'Lato', sans-serif;
	font-size: 1.3rem;
}
.p-news-detail-cont .txt .book .info .title {
    font-size: 2.6rem;
    font-weight: 800;
    border-bottom: 1px solid #ddd;
    padding-bottom: 6px;
    margin-bottom: 10px;
}
.p-news-detail-cont .txt .book .info .number {
	font-family: 'Lato', sans-serif;
	font-size: 1.5rem;
}
.p-news-detail-cont .txt .book .info .number span {
	font-size: 1.3rem;
}
.p-news-detail-cont .txt .book .info .issue {
    background: #000;
    color: #fff;
    padding: 3px 16px;
    margin-top: 30px;
    border-radius: 4px;
}
.p-news-detail-cont .txt .book .info .issue p {
	font-size: 1.6rem;
	font-weight: 600;
	margin: 0 auto;
}
.p-news-detail-cont .txt .book .info .issue p span {
	font-family: 'Lato', sans-serif;
	font-weight: 600;
	margin-left: 5px;
}
.p-news-detail-cont .txt .book .thumb {
    position: absolute;
    bottom: 10px;
    right: 72px;
}
.p-news-detail-cont .txt .book .thumb .df-popup-thumb {
    width: 240px;
}
.p-news-detail-cont .txt .book .thumb .df-popup-thumb .df-book-cover {
    box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.01); 
}
.p-news-detail-cont .txt .book .thumb .df-popup-thumb .df-book-wrapper {
    box-shadow: 2px 0px 10px rgba(0, 0, 0, 0.01);
}

.l_sidebar .wp-block-heading {
	font-size: 1.6rem;
	font-weight: 600;
	margin-top: 20px;
	margin-bottom: 6px;
}
.l_sidebar .wp-block-group li {
    font-size: 1.3rem;
    line-height: 1.3;
    margin-bottom: 10px;
}
.l_sidebar .wp-block-search__label {
	display: none;
}
.l_sidebar .wp-block-search__inside-wrapper input {
    border: none;
    background: #eee;
    font-size: 1.3rem;
}
.l_sidebar .wp-block-search__button {
    word-break: auto-phrase;
    font-size: 1.1rem;
    font-weight: 600;
    background: #000;
    color: #fff;
    padding: 0 6px;
    border-radius: 2px;
    margin-left: 6px;
}
.l_sidebar .wp-block-archives-list li,
.l_sidebar .wp-block-categories-list li {
	font-family: 'Lato', sans-serif;
}
.l_sidebar .wp-block-categories-list {
	margin-top: 30px;
}
.l_sidebar .wp-block-categories-list li {
    display: inline-block;
}
.l_sidebar .wp-block-categories-list li a {
    background: #eee;
    font-size: 1.3rem;
    font-weight: 500;
    padding: 4px 13px;
    border-radius: 100px;
    display: block;
    margin-bottom: 6px;
}
.l_sidebar .wp-block-group .wp-block-archives select {
    border: none;
    background: #eee;
    font-size: 1.3rem;
    width: 100%;
    padding: 10px;
}



/************************************************
 * BACK NUMBER
 */
.p-top-works#backnumber .p-top-works-list {
	justify-content: flex-start;
}
.p-top-works#backnumber .l-worksthumb img {
    aspect-ratio: inherit;
}
.p-top-works#backnumber .thumb .df-popup-thumb {
	width: auto;
}
.p-top-works#backnumber .txt .cate {
    font-family: 'Lato', sans-serif;
    font-size: 1.0rem;
    font-style: italic;
}
.p-top-works#backnumber .txt .info .vol {
    font-family: 'Lato', sans-serif;
    font-size: 1.3rem;
}
.p-top-works#backnumber .txt .info .ttl {
    font-size: 2.2rem;
    font-weight: 800;
    border-bottom: 1px solid #ddd;
    padding-bottom: 6px;
    margin-bottom: 10px;
}
.p-top-works#backnumber .txt .info .number {
    font-family: 'Lato', sans-serif;
    font-size: 1.5rem;
}
.p-top-works#backnumber .txt .info .number span {
    font-size: 1.3rem;
}



/************************************************
 * PASS
 */
.p-pass_page {
	padding: 160px 0 100px;
	background: #eee;
}
.p-pass_page .container_w {
	position: relative;
}
.p-pass_page .shiro1 {
    width: 36px;
    position: absolute;
	top: -6px;
    left: 0;
}
.p-pass_page .pass_form {
	padding-left: 60px;
}
.p-pass_page .post_password {
    margin-top: 14px;
}
.p-pass_page .post_password input.pass_field {
    padding: 8px;
    font-size: 16px;
}
.p-pass_page .post_password input.pass_btn {
    padding: 7px 18px;
    font-size: 15px;
    background: #333;
    color: #fff;
    font-weight: 600;
    border-radius: 2px;
    border: none;
}



@media screen and (min-width: 951px) and (max-width: 1366px) {
	/************************************************
	 * TOPページ
	 */
	.p-top-bnr-list {
		gap: 80px calc(50px* 1* 1);
	}
	/************************************************
	 * 固定ページ
	 */
	.p-page-main > .head {
		width: 81.69839vw;
	}
	/************************************************
	 * SINGLE NEWS
	 */
	.p-news-detail-cont .txt .book .thumb .df-popup-thumb {
    	width: 200px;
	}
	.p-news-detail-cont .txt .book {
		margin: 100px auto 0;
		padding: 50px 300px 50px 48px;
	}
	.p-news-detail-cont .txt .book .thumb {
		right: 32px;
	}
	.p-news-detail-cont .txt .book .info .title {
		font-size: 2.2rem;
	}
	.p-news-detail-cont .txt .book .info .issue p {
		font-size: 1.5rem;
	}
}
@media screen and (max-width: 1024px){
	/************************************************
	 * SERVICE
	 */
	.p-service-box-item {
		gap: 80px calc(46px* 1* 1);
	}
	.p-service-box-item .text h3 {
		font-size: 4.8rem;
	}
	/************************************************
	 * COMPANY
	 */
	.p-company-box-item {
		gap: 80px calc(46px* 1* 1);
	}
	.p-company-box-item .text h3 {
		font-size: 4.8rem;
	}
	.p-company-over-item .ttl {
		width: 26%;
	}
}
@media screen and (max-width: 950px){
	/************************************************
	 * HEADER
	 */
	header .l-navi .l-navi-menu > .item ul.menu li a {
		font-size: 1.3rem;
	}
	/************************************************
	 * TOPページ
	 */
	.parallax {
		background-size: cover;
		background-attachment: scroll;
	}
	.p-top-fv-item > .ttl h1.main {
		font-size: 6.0rem!important;
		line-height: 1.3;
		padding-bottom: 0;
	}
	.p-top-block {
		padding-top: 90px;
	}
	.p-top-works > .head,
	.p-top-news > .head {
		margin-bottom: 50px;
	}
	.p-top-works-list {
		gap: 60px calc(24px* 1* 1);
	}
	.p-top-works-list a {
		width: 48%;
	}
	.p-top-kamiina {
		padding: 110px calc(54px* 1* 1) 20px;
		margin: 0 auto 50px;
	}
	.p-top-news {
		padding: 3.4em 2.1vw 4em;
	}
	.p-top-news-list {
		margin-bottom: 10px;
	}
	.p-top-bnr-list {
		gap: 30px calc(40px* 1* 1);
	}
	.p-top-bnr-list .bnr img {
		width: 120px;
		max-height: 56px;
	}
	.p-top-recruit .inner {
		padding: 8.85vw 6vw;
	}
	.p-top-recruit .link .btn {
		margin-bottom: 12px;
	}
	.p-top-recruit .link .btn a {
		width: auto;
		font-size: 2.025rem;
		padding: 16px 40px;
	}
	.p-top-recruit .link .btn span.tel {
		font-size: 2.65rem;
	}
	.p-top-recruit .link .btn:nth-child(1) a i {
		margin-left: 12px;
		font-size: 2.845rem;
		margin-top: 10px;
	}
	.p-top-recruit .link .btn:nth-child(2) a i {
		width: 30px;
		height: 30px;
		margin-right: 6px;
		padding: 7px;
		font-size: 82%;
	}
	.p-top-recruit .link .btn span.text {
		line-height: 1.3;
		padding-bottom: 3px;
	}
	.p-top-recruit .link .btn span.memo {
		font-size: 1.35rem;
		line-height: 1.0;
		padding-top: 5px;
	    padding-bottom: 2px;
	}
	.p-top-recruit .people img {
		width: 340px;
	}
	/************************************************
	 * FOOTER
	 */
	.l-footer .inner {
		padding: 8.85vw 8vw 1vw;
	}
	/************************************************
	 * 固定ページ
	 */
	.p-page-main > .head {
		width: 89.33333vw;
	}
	/************************************************
	 * ABOUT
	 */
	.p-about-sign h3 {
		font-size: 8.2rem;
	}
	.p-about-box {
		gap: 80px calc(14px* 1* 1);
	}
	.p-about-box .p-about-box-item {
		width: 31.95%;
	}
	/************************************************
	 * SERVICE
	 */
	.p-service-cont-list {
		gap: 30px calc(40px* 1* 1);
	}
	.p-service-cont-list .bnr img {
		width: 120px;
		max-height: 56px;
	}
	/************************************************
	 * CONTACT
	 */
	.p-contact-main-block .card {
		padding: 30px 0;
	}
	.p-contact-main-block .card > .top {
		margin: 10px auto 20px;
	}
	.p-contact-main-block .card > .bottom {
		margin: 20px auto;
	}
	/************************************************
	 * WORKS SINGLE
	 */
	.p-works-detail .bottom .creative {
		padding-left: 40px;
	}
	/************************************************
	 * RECRUIT
	 */
	.p-recruit-index .top h3,
	.p-recruit-reason .box > .top h3,
	.p-recruit-entry .box > .top h3 {
		font-size: 4.6rem;
	}
	.p-recruit-reason .card .top h4 {
		font-size: 2.2rem;
	}
	.p-recruit-index-job .list .card {
		width: 100%;
	}
	.p-recruit-index .box {
		padding: 0 0 10px;
	}
	.p-recruit-index .p-recruit-index-common .box {
		padding-bottom: 10px;
	}
	.p-recruit-index .top,
	.p-recruit-index .bottom,
	.p-recruit-index-job .list,
	.p-recruit-reason .box > .top,
	.p-recruit-reason .list,
	.p-recruit-entry .box > .top,
	.p-recruit-entry .list {
		margin: 30px calc(42px* 1* 1);
	}
	.p-recruit-index-entry .box .link {
		margin: 0 calc(42px* 1* 1) 30px;
	}
	.p-recruit-index .top h4 {
		margin-bottom: 20px;
	}
	.p-recruit-index-item .ttl {
		width: 10%;
	}
	.p-recruit-reason .box {
		padding: 0 0 10px;
	}
	.p-recruit-reason .list .card {
		padding: 50px 0;
	}
	/************************************************
	 * SINGLE NEWS
	 */
	.p-news-detail-cont .txt .book .thumb .df-popup-thumb {
    	width: 200px;
	}
	.p-news-detail-cont .txt .book {
		margin: 100px auto 0;
		padding: 50px 260px 50px 36px;
	}
	.p-news-detail-cont .txt .book .thumb {
		right: 16px;
	}
	.p-news-detail-cont .txt .book .info .title {
		font-size: 2.2rem;
	}
	.p-news-detail-cont .txt .book .info .issue p {
		font-size: 1.5rem;
	}
	.p-news-detail .bottom .sidebar {
		padding-left: 30px;
	    max-width: 170px;
	}
}
@media screen and (max-width: 768px){
	/************************************************
	 * HEADER
	 */
	#logoat img {
		width: 32px;
	}
	.site-title img {
		width: 160px;
	}
	/************************************************
	 * TOPページ
	 */
	.p-top-fv-item > .ttl h1.main {
		font-size: 3.2rem!important;
		line-height: 1.2;
	}
	.p-top-fv-item > .ttl h4.sub {
		font-size: 1.6rem;
	}
	.p-top-works > .head h3,
	.p-top-news > .head h3,
	.p-top-recruit .head h3 {
		font-size: 3.0rem;
	}
	.p-top-works > .head span.sub,
	.p-top-news > .head span.sub,
	.p-top-recruit .head span.sub {
		font-size: 1.1rem;
	}
	.p-top-works-list {
		gap: 40px calc(14px* 1* 1);
		padding: 0 calc(0px * 1 * 1);
		margin-bottom: 40px;
	}
	.p-top-works-list a {
		width: 47.4%;
	}
	.l-worksthumb .ttl {
		font-size: 1.5rem;
	}
	.btn {
		padding: 20px 8px;
	}
	.btn a {
		font-size: 1.5rem;
	}
	.p-top-kamiina {
		padding: 70px calc(0px* 1* 1) 0px;
		margin: 0 auto 40px;
		gap: 80px calc(6px* 1* 1);
	}
	.p-top-news {
		padding: 2.4em 2.1vw 3em;
	}
	.l-newsthumb .ttl,
	body:not(.home) .l-newsthumb .ttl {
		font-size: 1.6rem;
	}

	/************************************************
	 * FOOTER
	 */
	.l-footer .inner {
		padding: 16.85vw 8vw 1vw;
	}
	.l-footer-main {
		order: 1;
	}
	.l-footer-head {
		order: 2;
		margin-top: 30px;
	}
	.l-footer-item {
		flex-wrap: wrap;
	}
	.l-footer .l-footer-head .l-logo img {
		width: 200px;
	}
	.l-footer-main .bnr img {
		width: 90px;
	}
	.l-footer-main .bnr i {
		width: 30px;
		height: 30px;
		margin-left: 4px;
	    padding: 7px;
	}
	
	/************************************************
	 * ABOUT
	 */
	.p-page-con {
		margin-top: 50px;
	}
	.p-page-main > .head {
	    font-size: 3.4rem;
		padding: 24px calc(24px* 1* 1) 40px;
	}
	.p-about-sign h3 {
		font-size: 6.8rem;
	}
	.p-about-box {
		padding: 100px 0 0;
		gap: 80px calc(10px* 1* 1);
	}
	.p-about-box .p-about-box-item {
		width: 31.25%;
	}
	.p-about-box .p-about-box-item a {
		padding: 50px 0;
	}
	.p-about-mes h2 {
		font-size: 2.2rem;
	}
	.p-about-mes .text {
		width: 100%;
	}
	/************************************************
	 * SERVICE
	 */
	.border_top {
		padding: 80px 0 0;
	}
	.p-service-box-item:first-child > div,
	.p-service-box-item:nth-child(2) > div {
		width: 100%;
	}
	.p-service-box-item {
		gap: 90px calc(90px* 1* 1);
		margin-bottom: 90px;
	}
	.p-service-box-item.graphic,
	.p-service-box-item.web {
		gap: 50px calc(90px* 1* 1);
	}
	.section__bg .p-service-box-item {
		padding: 90px 0;
	}
	.p-service-box-item .text h3 {
		font-size: 3.8rem;
	}
	/************************************************
	 * COMPANY
	 */
	.p-company-box-item:first-child > div,
	.p-company-box-item:nth-child(2) > div {
		width: 100%;
	}
	.p-company-box-item {
		gap: 50px calc(90px* 1* 1);
		margin-bottom: 80px;
	}
	.p-company-box-item.massage .photo {
		width: 66%;
	    box-shadow: 100px 30px 0 #eee;
	}
	.section__bg .p-company-box-item {
		padding: 80px 0;
	}
	.p-company-over-item .ttl {
		width: 16%;
	}
	.p-company-box-item .text h3 {
		font-size: 3.8rem;
	}
	/************************************************
	 * WORKS ARCHIVE
	 */
	.l-category ul {
		gap: 6px;
	}
	.l-category ul li {
		font-size: 1.5rem;
	}
	.l-category ul li a {
        padding: 4px 18px;
        display: block;
        margin-bottom: 2px;
	}
	.p-page-main .p-top-works-list {
		margin-bottom: 160px;
	}
	.view-more-button {
		bottom: -80px;
		font-size: 2.95rem;
	}
	.p-top-works#backnumber .txt .info .ttl {
		font-size: 1.8rem;
	}
	
	/************************************************
	 * WORKS SINGLE
	 */
	.p-works-detail .bottom .creative {
		padding-left: 30px;
	}
	.p-works-detail-gallery {
		margin-top: 60px;
	    padding-bottom: 20px;
	}
	.p-works-detail {
		padding: 160px 0 50px;
	}
	.p-works-detail .bottom h1 {
		font-size: 2.8rem;
	}
	/************************************************
	 * WORKS SINGLE
	 */
	.p-news-list-cont {
		gap: 40px calc(14px* 1* 1);
		padding: 0 calc(0px* 1* 1);
		margin-bottom: 160px;
	}
	.p-news-list-cont a {
		width: 47.4%;
	}
	/************************************************
	 * RECRUIT
	 */
	.p-recruit-main-block > .tab > label {
		font-size: 1.6rem;
	}
	.p-recruit-index .top, .p-recruit-index .bottom,
	.p-recruit-index-job .list,
	.p-recruit-reason .box > .top,
	.p-recruit-reason .list,
	.p-recruit-entry .box > .top,
	.p-recruit-entry .list {
		margin: 28px calc(10px* 1* 1);
	}
	.p-recruit-index-entry .box .link {
		margin: 0 calc(20px* 1* 1) 20px;
	}
	.p-recruit-index .top h3,
	.p-recruit-reason .box > .top h3,
	.p-recruit-entry .box > .top h3 {
		font-size: 3.4rem;
		letter-spacing: 1px;
	}
	.p-recruit-reason .list .card .item .illust,
	.p-recruit-reason .list .card .item .top {
		width: 100%;
	}
	.p-recruit-reason .list .card .item .illust {
	    display: flex;
		gap: 20px;
		align-items: center;
		order: 2;
	}
	.p-recruit-reason .list .card .item .top {
		order: 1;
	}
	.p-recruit-reason .list .card:nth-child(2n) .item .illust img {
		order: 2;
	}
	.p-recruit-reason .list .card:nth-child(2n) .item .illust .bottom {
		order: 1;
	}
	.p-recruit-reason .card .bottom {
		width: 100%;
	}
	.p-recruit-reason .list .card .item .illust img {
		width: 45%;
	}
	.p-recruit-reason .card .cont p {
	    margin: 20px auto 10px;
	}
	.p-recruit-reason .card .bottom h6 {
		margin-bottom: 12px;
		padding-bottom: 10px;
	}
	.p-recruit-entry .list .card .top,
	.p-recruit-entry .list .card .bottom {
		margin: 10px calc(10px* 1* 1) 14px;
	}
	/************************************************
	 * SINGLE NEWS
	 */
	.p-news-detail .bottom h1 {
		font-size: 2.8rem;
		margin-top: 14px;
	}
	.p-news-detail .bottom .txt h2.wp-block-heading {
		font-size: 2.0rem;
	}
	.p-news-detail .bottom .txt h6.wp-block-heading {
		font-size: 1.2rem;
		margin-top: 60px;
	}
	.wp-block-buttons>.wp-block-button.has-custom-font-size .wp-block-button__link {
		font-size: 1.6rem;
	}
	.p-news-detail-cont .txt .book {
		margin: 100px auto 0;
		padding: 40px 36px 40px 36px;
	}
	.p-news-detail-cont .txt .book .thumb {
		position: inherit;
	}
	.p-news-detail-cont .txt .book .thumb .df-popup-thumb {
		margin: 30px 15px 0!important;
	}
	.p-news-detail-cont .txt .book .thumb .df-popup-thumb {
		width: auto;
	}
	.p-news-detail-cont .txt .book .info .issue {
		display: inline-block;
	}
	/************************************************
	 * CONTACT
	 */
	.p-contact-main-block .card .bottom .bnr {
		flex-wrap: wrap;
	}
	.p-contact-main-block .card .bottom .bnr .item {
		width: 100%;
	}
	.p-contact-form .panel .top h3 {
        font-size: 3.4rem;
        letter-spacing: 1px;
    }
	.p-contact-main-block .form > .tab > label,
	.p-contact-main-block .form > .tab > a.link {
		font-size: 1.5rem;
		min-width: auto;
		flex: inherit;
		width: 33.3333333%;
	}
	.p-contact-main-block .form > .tab > a.link.business,
	.p-contact-main-block .form > .tab > a.link.magazine,
	.p-contact-main-block .form > .tab > label.business,
	.p-contact-main-block .form > .tab > label.magazine {
		width: 50%;
		border-bottom: 1px solid #ddd;
	}
	.p-contact-main-block .form > .tab > a.link.magazine {
		border-right: none;
	}
}

@media screen and (max-width: 479px){
	/************************************************
	 * TOPページ
	 */
    .p-top-bnr-list {
        gap: 30px calc(20px* 1* 1);
    }
    .p-top-bnr-list .bnr img {
        width: 100px;
        max-height: 46px;
    }
	/************************************************
	 * 固定ページ
	 */
	.p-page-fv img {
		max-height: initial;
		min-height: 180px;
	}
	/************************************************
	 * WORKS SINGLE
	 */
	.p-works-detail .bottom .p-works-detail-info {
		margin-top: 70px;
	    gap: 15px;
	}
	.p-works-detail .bottom .spec {
		max-width: 72%;
	}
	.p-works-detail .bottom .creative {
		padding-left: 15px;
	    top: 4vh;
	}
	.p-works-detail .bottom .creative ul li {
		font-size: 1.0rem;
		margin-bottom: 6px;
		line-height: 1.3;
		letter-spacing: 0;
	}
	/************************************************
	 * SERVICE
	 */
	.p-service-box-item.graphic .product ul li {
		width: 100%;
	}
	/************************************************
	 * COMPANY
	 */
	.p-company-over-item .ttl {
		width: 32%;
	}
	/************************************************
	 * RECRUIT
	 */
	.p-recruit-index-item {
		display: block;
	}
	.p-recruit-main-block > .tab > label {
		font-size: 1.5rem;
	}
	.p-recruit-main-block > .tab > label span {
		font-size: 1.0rem;
	}
	.p-recruit-index .top, .p-recruit-index .bottom, .p-recruit-index-job .list, .p-recruit-reason .box > .top, .p-recruit-reason .list, .p-recruit-entry .box > .top,
	.p-recruit-entry .list {
		margin: 28px calc(2px* 1* 1);
	}
	.p-recruit-index-job .list .card .top h4 {
		font-size: 2.2rem;
	}
	.p-recruit-index-item .ttl,
	.p-recruit-index-job .list .card .ttl {
		width: 100%;
		margin-bottom: 6px;
	}
	.p-recruit-index-item .text {
		width: 100%;
	}
	.p-recruit-index-job .list {
		margin: 20px calc(2px* 1* 1) 0;
	}
	.p-recruit-index-job .list .card {
		padding: 24px 26px;
		border-top: 10px solid;
	}
	.p-recruit-index-item {
		padding-bottom: 10px;
	}
	.p-recruit-index-entry .box .link {
		margin: 10px calc(2px* 1) 60px;
	}
	.p-recruit-index-entry .box .link a {
		padding: 20px;
		font-size: 2.0rem;
	}
	.p-recruit-reason .list .card {
		padding: 30px 0;
	}
	.p-recruit-reason .card .top h4 {
		font-size: 1.8rem;
	}
	.p-recruit-reason-item .ttl,
	.p-recruit-reason-item .text {
		font-size: 1.3rem;
	}
	.p-recruit-reason-item .ttl {
		width: 34%;
	}
	.p-recruit-entry .list .card {
		padding: 16px;
	}
	.p-recruit-entry .list .card h4 {
		font-size: 1.8rem;
	}
	.p-recruit-entry .list .card .bottom .p-recruit-entry-tel i {
		width: 36px;
		height: 36px;
		margin-right: 6px;
		padding: 9px 12px;
		font-size: 84%;
	}
	.p-recruit-entry .list .card .bottom .p-recruit-entry-tel span.tel {
		font-size: 2.4rem;
	}
	.p-recruit-entry .list .card .bottom .p-recruit-entry-tel span.memo {
		font-size: 1.1rem;
	}
	/************************************************
	 * CONTACT
	 */
	.p-contact-main-block .card {
		padding: 0 0 30px;
	}
	.p-contact-tel .card .bottom .p-recruit-entry-tel i {
		width: 40px;
		height: 40px;
		margin-right: 8px;
		padding: 10px 13px;
		font-size: 90%;
	}
	.p-contact-tel .bottom .p-recruit-entry-tel span.memo {
		font-size: 1.3rem;
	}
	.p-contact-main-block .card .bottom .bnr .item {
		margin-top: 14px;
	}
	.p-contact-main-block .card .bottom .bnr img {
		margin-top: 0;
	}
	.p-contact-form .bottom .form {
		margin-top: 50px;
	}
	.p-contact-main-block .form > .tab > div {
		padding: 3em 0 1em;
	}
	.p-contact-main-block .form > .tab > label span,
	.p-contact-main-block .form > .tab > a.link span {
		font-size: 1.1rem;
	}
	.p-contact-main-block .form > .tab > label:has(:checked):before {
		margin-left: -8px;
		border: 8px solid transparent;
		border-top: 10px solid #000;
	}
	.p-contact-form .bottom .form .form-back,
	.p-contact-form .bottom .form .form-confirm {
		margin-top: 10px;
	}
	.p-contact-form .panel .top .attention {
		padding: 1.4em;
	}
	.p-contact-form .panel .top .attention p {
		text-align: left;
		line-height: 1.6;
	}
	.p-contact-form .panel .top .attention span.period {
		padding-left: 0;
		padding-top: 0.5em;
		display: block;
	}

	
	/************************************************
	 * SINGLE NEWS
	 */
	.p-news-detail .bottom .p-news-detail-cont {
		margin-top: 50px;
		gap: 15px;
		flex-wrap: wrap;
	}
	.p-news-detail .bottom .txt {
		max-width: 100%;
	}
	.p-news-detail .bottom .sidebar {
		padding-left: 0;
        max-width: 100%;
        position: relative;
        width: 100%;
		border-left: 0;
		height: auto;
	}
	.l_sidebar .wp-block-group li {
		font-size: 1.0rem;
		margin-bottom: 6px;
		line-height: 1.3;
		letter-spacing: 0;
	}
	.l_sidebar .wp-block-categories-list li a {
		font-size: 1.2rem;
	}
	.p-news-detail .bottom .txt .feature_box {
		padding: 30px;
	}
	.p-news-detail-cont .txt .book .info .issue {
		width: 100%;
		text-align: center;
	}
    .p-news-detail-cont .txt .book .thumb .df-popup-thumb {
        width: 100%;
    }
	.p-news-detail .bottom .p-news-detail-cont .l_sidebar .wp-block-group li {
		font-size: 1.3rem;
        margin-bottom: 6px;
        line-height: 1.6;
	}
}







/************************************************
 * アニメーション
 */
.bgextend{
	animation-name:bgextendAnimeBase;
	animation-duration:1s;
	animation-fill-mode:forwards;
	position: relative;
	overflow: hidden;/*　はみ出た色要素を隠す　*/
	opacity:0;
}
@keyframes bgextendAnimeBase{
  from {
    opacity:0;
  }
  to {
    opacity:1;  
	}
}

/*中の要素*/
.bgappear{
	animation-name:bgextendAnimeSecond;
	animation-duration:1s;
	animation-delay: 0.6s;
	animation-fill-mode:forwards;
	opacity: 0;
}

@keyframes bgextendAnimeSecond{
	0% {
	opacity: 0;
	}
	100% {
	opacity: 1;
	}
}

/*下から上*/
.bgDUextend::before{
	animation-name:bgDUextendAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #eee;/*伸びる背景色の設定*/
}
@keyframes bgDUextendAnime{
	0% {
		transform-origin:bottom;
		transform:scaleY(0);
	}
	50% {
		transform-origin:bottom;
		transform:scaleY(1);
	}
	50.001% {
		transform-origin:top;
	}
	100% {
		transform-origin:top;
		transform:scaleY(0);
	}
}

/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.bgappearTrigger,
.bgDUextendTrigger{
    opacity: 0;
}



