/*
Theme Name: Twenty Twenty child
Template: twentytwenty
*/

@charset "utf-8";


/*------ カスタマイズ用CSS （触らない） ------*/

body,input,textarea,button,.button,.faux-button,.wp-block-button__link,.wp-block-file__button,.has-drop-cap:not(:focus)::first-letter,.has-drop-cap:not(:focus)::first-letter,.entry-content .wp-block-archives,.entry-content .wp-block-categories,.entry-content .wp-block-cover-image,.entry-content .wp-block-latest-comments,.entry-content .wp-block-latest-posts,.entry-content .wp-block-pullquote,.entry-content .wp-block-quote.is-large,.entry-content .wp-block-quote.is-style-large,.entry-content .wp-block-archives *,.entry-content .wp-block-categories *,.entry-content .wp-block-latest-posts *,.entry-content .wp-block-latest-comments *,.entry-content p,.entry-content ol,.entry-content ul,.entry-content dl,.entry-content dt,.entry-content cite,.entry-content figcaption,.entry-content .wp-caption-text,.comment-content p,.comment-content ol,.comment-content ul,.comment-content dl,.comment-content dt,.comment-content cite,.comment-content figcaption,.comment-content .wp-caption-text,.widget_text p,.widget_text ol,.widget_text ul,.widget_text dl,.widget_text dt,.widget-content .rssSummary,.widget-content cite,.widget-content figcaption,.widget-content .wp-caption-text,th,td {
	font-size:medium;
}
:not(.alignwide):not(.alignfull).wp-block-archives, :not(.alignwide):not(.alignfull).wp-block-categories, .wp-block-code, :not(.alignwide):not(.alignfull).wp-block-columns, :not(.alignwide):not(.aligncenter):not(.alignright):not(.alignleft):not(.alignfull).wp-block-cover, :not(.alignwide):not(.aligncenter):not(.alignright):not(.alignleft):not(.alignfull).wp-block-embed, :not(.alignwide):not(.aligncenter):not(.alignright):not(.alignleft):not(.alignfull).wp-block-gallery, :not(.has-background):not(.alignfull):not(.alignwide).wp-block-group, :not(.alignwide):not(.aligncenter):not(.alignright):not(.alignleft):not(.alignfull).wp-block-image, :not(.aligncenter):not(.alignright):not(.alignleft).wp-block-latest-comments, :not(.aligncenter):not(.alignright):not(.alignleft).wp-block-latest-posts, :not(.alignwide):not(.alignfull).wp-block-media-text, .wp-block-preformatted, :not(.alignwide):not(.alignright):not(.alignleft):not(.alignfull).wp-block-pullquote, .wp-block-quote, .wp-block-quote.is-large, .wp-block-quote.is-style-large, .wp-block-verse, :not(.alignwide):not(.alignfull).wp-block-video{
	margin-top:0;
}

h4, .heading-size-4, h5, .heading-size-5, h6, .heading-size-6 {
 margin:2rem auto 2.5rem	
}

ul,ol,li {
	list-style:none;
	margin:0;
	padding:0;
}
a {
	transition: all 0.3s;
}
html {
   -webkit-text-size-adjust: 100%; /* iOS Safari の自動拡大を防ぐ */
}
section {
	padding:8rem 0 6rem 0;
}
section > .inner,
#top_main .inner {
	width:calc(100% - 60px);
	max-width:1000px;
	margin-left:auto;
	margin-right:auto;
}

.m0 {	margin:0;}
.mt5 {	margin-top:5px;}
.mt10 {	margin-top:10px;}
.mt20 {	margin-top:20px;}
.mt30 {	margin-top:30px;}
.mr5 {	margin-right:5px;}
.mr10 {	margin-right:10px;}
.mr20 {	margin-right:20px;}
.mr30 {	margin-right:30px;}
.mb5 {	margin-bottom:5px;}
.mb10 {	margin-bottom:10px;}
.mb20 {	margin-bottom:20px;}
.mb30 {	margin-bottom:30px;}
.ml5 {	margin-left:5px;}
.ml10 {	margin-left:10px;}
.ml20 {	margin-left:20px;}
.ml30 {	margin-left:30px;}

.font-gray {
	color:#D4D4D8;
}
.font-darkgray {
	color:#A1A1AA
}


/* ボタン・ナビ */
#contact_btn,
#menu_btn {
	margin-bottom:0 !important;
}
#contact_btn a {
  height: 56px;
	position:fixed;
	top:30px;
	right:100px;
	z-index:10001;
	cursor:pointer;
	color:white;
	line-height:56px;
	border:1px solid white;
	border-radius:28px 28px 28px 28px;
	padding:0 15px;
	display:flex;
	align-items:center;
	justify-content:space-between;
	transition:all 0.3s;

}
#contact_btn a i.pc {
	display:inline-block;
	background:#DC2626;
	padding:10px 12px;
	border-radius:50%;
	margin-left:10px;
}
#contact_btn a svg .st0{
	fill:#FFFFFF;
}
#contact_btn a svg.pc {
	display:inline-block;
	padding:5px;
	border-radius:50%;
	margin-left:10px;
	height:70%;
	background:#DC2626;
	transition:all 0.3s;
}
_:lang(x)+_:-webkit-full-screen-document, #contact_btn a svg.pc {
	padding:0 !important;
}
#contact_btn a:hover {
	text-decoration:none;
	background:#DC2626;
}
#contact_btn a:hover svg.pc {
	background:white;

}
#contact_btn a:hover svg .st0{
	fill:#DC2626;
}


#contact_btn a i.sp {
	display:none;
}
@media screen and (max-width:999px) {
#contact_btn a svg.pc,
#contact_btn a i.pc{
	display:none;
}
}
@media screen and (max-width:599px) {
#contact_btn a i.sp {
	display:inline-block;
}
}

#menu_btn a {
  width: 56px;
  height: 56px;
	position:fixed;
	top:30px;
	right:30px;
	z-index:10001;
	cursor:pointer;
	border-radius:28px;
	background:white;
}
#menu_btn a span{
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 20px;
  height: 3px;
  margin: -2px 0 0 -10px;
  transition: .2s;
	background-color:#111827;
}
#menu_btn a span:before,
#menu_btn a span:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 20px;
  height: 3px;
  transition: .3s;
	background-color:#111827;
}
#menu_btn a span:before{
  margin-top: -10px;
}
#menu_btn a span:after{
  margin-top: 7px;
}
#menu_btn a.close span {
  background: transparent;
}
#menu_btn a.close span:before,
#menu_btn a.close span:after{
  margin-top: 0;
}
#menu_btn a.close span:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#menu_btn a.close span:after{
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}
@media screen and (max-width:999px) {
#contact_btn a {
  height: 50px;
	top:15px;
	right:77px;
	line-height:50px;
	padding:0 20px;
}
#menu_btn a {
  width: 50px;
  height: 50px;
	top:15px;
	right:15px;
}
}
@media screen and (max-width:599px) {
#contact_btn a {
	width:44px;
  height: 44px;
	padding:0;
	font-size:160%;
	display:flex;
	align-items:center;
	justify-content:center;
	right:70px;
}
#menu_btn a {
  width: 44px;
  height: 44px;
	top:15px;
	right:15px;
}
#contact_btn a i {
	display:inherit;
}
#contact_btn a span {
	display:none;
}
}

#menu_modal {
	background:rgba(0,0,0,0.45);
	backdrop-filter: blur(12px);
	width:100%;
	position:fixed;
	top:0;
	right:0;
	z-index:10000;
	overflow-y:auto;
	display:none;
	height:100vh;
	padding:55px 10px 20px 20px;
}
#menu_modal > div {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	max-width:1280px;
	background:#18181B;
	display:flex;
	padding:80px;
	width:75%;
}
#menu_modal > div img {
	width:356px;
	max-width:356px;
}
#menu_modal ul {
	margin-left:100px;
	width:100% !important;
}
#menu_modal ul li{
	border-bottom:1px solid #333333;
	white-space:nowrap;
}
#menu_modal ul li a {
	display:block;
	color:white;
	text-decoration:none;
	padding:15px 0 10px 0;
}
#menu_modal ul li a h2 {
	margin:0 0 15px 0;
	font-size:200%;
}
#menu_modal ul li a span {
	color:#DC2626;
}
@media screen and (max-width:1280px) {
#menu_modal > div {
	padding:70px;
	width:calc(100% - 100px);
}
#menu_modal ul {
	margin-left:50px;
}
}
@media screen and (max-width:999px) {
#menu_modal > div {
	padding:50px;
	width:calc(100% - 80px);
}
}
@media screen and (max-width:900px) {
#menu_modal > div img {
	width:100%;
}
}
@media screen and (max-width:599px) {
#menu_modal > div {
	padding:30px;
	flex-wrap:wrap;
	width:calc(100% - 60px);
}
#menu_modal > div > div {
		width:100%;
	}
#menu_modal ul {
	margin-top:15px;
	margin-left:0;
}
#menu_modal ul li a h2 {
	margin:0 0 5px 0;
	font-size:150%;
}
#menu_modal ul li a span {
	font-size:90%;
	display:inline;
	word-break:break-all;
}
}
.label-above .nf-field-element,
.label-below .nf-field-element {
	text-align:center;
}


#page-top {
	position: fixed;
	bottom: 3px;
	right: 31px;
	display: block;
	z-index: 100;
}
#page-top a {
display: inline-block;
padding: 0 0 0 16px;
color: #000;
vertical-align: middle;
text-decoration: none;
}

#page-top a:before,
#page-top a:after {
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
content: "";
vertical-align: middle;
}

#page-top a:before{
width: 38px;
height: 38px;
}

#page-top a:after{
left: 9px;
top:-12px;
box-sizing: border-box;
width: 10px;
height: 15px;
border: 10px solid transparent;
border-bottom: 8px solid #fff;
}



/* メニューモーダル */
html,
body {
	height:100vh !important;
}
.menu-modal.active {
	left:auto;
	width:80%;
	max-width:400px;
}
.menu-modal{
	background:none;
	transition:opacity 0 ease-out;
}
.modal-menu{
	width:100%;
	left:0;
}
.menu-modal ul{
	width:100%;
}
.menu-modal-inner{
	background:rgba(255,255,255,0.8)
}

/* フェード */
.fadein {
    opacity : 0;
    transform : translate(0, 30px);
    transition : all 500ms;
}
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}

@media screen and (max-width:599px) {
.fadein {
    transform : translate(0, 20px);
}	
}

/* Flex */
ul.flex2,
ul.flex3,
ul.flex3-2,
ul.flex4,
.cat_blog_flex,
.under_flex{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.under_flex{ 
	margin-bottom:30px;
	}
ul.flex2 img,
ul.flex3 img,
ul.flex3-2 img,
ul.flex4 img{
	height:auto;
}
ul.flex2 li {
	width:calc(50% - 10px);
	margin-bottom:30px;
}
ul.flex2::after{
	content:"";
	display: block;
	width:calc(50% - 10px);
}
ul.flex3 li,
ul.flex3-2 li{
	width:calc(33% - 20px);
	margin-bottom:30px;
}
ul.flex3::after,
ul.flex3-2::after{
	content:"";
	display: block;
	width:calc(33% - 20px);
}

ul.flex4 li {
	width:calc(25% - 15px);
	margin-bottom:30px;
}
ul.flex4::before{
	content:"";
	display: block;
	width:calc(25% - 15px);
	order:1;
}
ul.flex4::after{
	display: block;
	width:calc(25% - 15px);
}

.under_flex > div:first-child {
	width:calc(45% - 40px);
}
.under_flex > div:last-child {
	width:55%;
}

.pc {    display: inherit;}
.tab {    display: none;}
.sp{    display: none;}

@media screen and (min-width:999px) {

}	
	
@media screen and (max-width:999px) {
ul.flex4 li {
	width:calc(33% - 10px);
	margin-bottom:25px;
}
ul.flex4::before{
	width:calc(33% - 10px);
}
ul.flex4::after{
	width:calc(33% - 10px);
}
ul.flex3-2 li {
	width:calc(50% - 10px);
	margin-bottom:25px;
}
ul.flex3-2::after{
	width:calc(50% - 10px);
}
ul.single {
	width:100%;	
}
.pc {    display: none;}
.tab {    display: inherit;}
.sp{    display: none;}
}

@media screen and (max-width:599px) {
ul.flex3 li {
	width:calc(50% - 10px);
	margin-bottom:25px;
}
ul.flex3::after{
	width:calc(50% - 10px);
}
ul.flex4 li {
	width:calc(50% - 10px);
	margin-bottom:25px;
}
ul.flex2::after,
ul.flex3::after,
ul.flex3-2::after,
ul.flex4::after{
	content:none;
}
ul.flex2.single li,
ul.flex3.single li,
ul.flex3-2.single li,
ul.flex4.single li {
	width:100%;
	margin-bottom:25px;
}
}

/* ----------------------------------------------------------------------
 共通 横並び構成
---------------------------------------------------------------------- */
.flex_50_50,
.flex_60_40,
.flex_40_60,
.flex_70_30,
.flex_30_70{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	flex-wrap:wrap;
}
.flex_50_50 > div {
	width:calc(50% - 20px);
}
.flex_60_40 > div:first-child {
	width:calc(60% - 40px);
}
.flex_60_40 > div:nth-child(2) {
	width:40%;
}
.flex_40_60 > div:first-child {
	width:40%;
}
.flex_40_60 > div:nth-child(2) {
	width:calc(60% - 40px);
}
.flex_70_30 > div:first-child {
	width:calc(70% - 40px);
}
.flex_70_30 > div:nth-child(2) {
	width:30%;
}
.flex_30_70 > div:first-child {
	width:30%;
}
.flex_30_70 > div:nth-child(2)  {
	width:calc(70% - 40px);
}
.aliencenter {
	align-items:center;
}

@media screen and (max-width: 599px) {
.flex_50_50 > div,
.flex_40_60 > div:first-child,
.flex_40_60 > div:nth-child(2),
.flex_60_40 > div:first-child,
.flex_60_40 > div:nth-child(2),
.flex_30_70 > div:first-child,
.flex_30_70 > div:nth-child(2),
.flex_70_30 > div:first-child,
.flex_70_30 > div:nth-child(2) {
	width:100%;
	margin-bottom:30px;
}
.pc { display: none;}
.tab { display: none;}
.sp{ display: inherit;}
}
	
/* 画像拡大 */
.imgWrap {
	overflow: hidden;	/*拡大時にはみ出た部分を隠す*/
	width:auto;
	height:auto;
	display:flex;
	justify-content:center;
	align-items:center;
}
a .imgWrap img {
	display: block;
	transform: scale(1);	/*画像の拡大率*/
	transition-duration: 0.3s;	/*変化に掛かる時間*/
	height:auto;
	max-height:100%;
	width:100%;
}
ul a .imgWrap img {
	object-fit: contain;
}
a:hover .imgWrap img {
	transform: scale(1.15);	/*画像の拡大率*/
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}

/* header */
header {
	position:fixed;
	width:100%;
	z-index:9999;
	top:0;
}
header > div {
	padding:0 30px ;
	height:120px;
	display:flex;
	align-items:center;
}
header h1 {
	margin:0;
	color:white;
	font-size:100%;
	font-weight:normal;
	display:flex;
	align-items:center;
}
header h1 a:hover {
	opacity:0.8;
}
header h1 img{
	width:190px;
}

@media screen and (max-width:999px) {
header > div {
	padding:0 30px ;
	height:80px;
}
}
@media screen and (max-width:800px) {
	header h1 span{
		display:none;
	}
}
@media screen and (max-width:599px) {
header h1 img {
	width:130px;
	padding-right:0;
}
header > div {
	padding:0 20px ;
	height:80px;
}
}

/* footer */

.footer-top-visible .footer-nav-widgets-wrapper,
.footer-top-hidden #site-footer {
	margin-top:0;

}
footer {
	background:#8c54ff;
	color:white;
}
footer .inner {
	width:calc(100% - 160px);
	max-width:1680px;
	margin-top:0;
	margin-left:auto;
	margin-right:auto;
}
footer .inner  ul {
	display:flex;
	justify-content:flex-end;
}
footer .inner  ul li a {
	display:inline-block;
	margin-left:30px;
	color:white;
}
footer .inner h1 {
	margin:0 0 50px 0;
}
footer .inner p {
	line-height:2;
}

footer h1 img{
	width:280px;
	margin:0 0 20px 0;
}
footer #footer_image {
	max-width:1400px;
	margin-left:auto;
	margin-right:auto;	
	text-align:center;
	position:relative;
}
footer #footer_image img:last-child{
	margin:30px auto 0 auto;
}
footer #footer_image .left_img{
	position:absolute;
	top:30%;
	left:0;
	max-width:334px;
	display:block;
}
footer #footer_image .right_img{
	position:absolute;
	top:0;
	right:0;
	max-width:294px;
	display:block;
}
footer .copyright {
	text-align:center;
	font-size:90%;
	background:#27272A;
	padding:15px 0;
}
@media screen and (max-width:1400px) {
footer #footer_image img:last-child{
	width:85vw;
}
footer #footer_image .left_img,
footer #footer_image .right_img{
	width:25vw;
}
footer #footer_image .right_img{
	position:absolute;
	top:30%;
	}
}
@media screen and (max-width:1280px) {
footer .inner {
	padding-top:30px;
}
footer .inner h1 {
	margin:0;
}
footer .inner > div:first-child {
	display:flex;
}
footer .inner {
	justify-content:center;
	align-items:center;
}
footer .flex_30_70 > div:first-child,
footer .flex_30_70 > div:nth-child(2){
	width:auto;
}
footer .flex_30_70 > div:first-child h1{
	margin-right:50px;
}
footer .flex_30_70 > div:first-child{
	margin-bottom:30px;
}
footer .flex_30_70 > div:first-child,
footer .inner  ul {
	justify-content:center;
}
footer .inner p {
	line-height:1.8;
	font-size:100%;
}
}
@media screen and (max-width:999px) {
footer .inner {
	width:calc(100% - 80px);
}
footer .inner  ul {
	justify-content:space-between;
	flex-wrap:wrap;
}
footer .inner  ul li a {
	margin-left:0;
}
}
@media screen and (max-width:599px) {
footer .inner {
	width:calc(100% - 60px);
}
footer h1 img{
	width:60%;
	min-width:200px;
}
	footer .flex_30_70 > div:first-child {
		display:block;
	}
	footer .flex_30_70 > div:first-child > * {
		width:100%;
	}	
footer .flex_30_70 > div:first-child h1{
	margin-right:0;
}
footer .inner h1  a img{
	margin:0 auto;
	display:block;
}
footer .flex_30_70 > div:first-child p {
		text-align:center;
	font-size:80%;
	margin-top:20px;
}
	footer .flex_30_70 > div:nth-child(2) li {
		width:calc(50% - 15px);
		margin-bottom:15px;
		font-size:90%;
	}

footer #footer_image img:last-child{
	width:100%;
	padding-top:30vw;
	z-index:2
}
footer #footer_image .left_img,
footer #footer_image .right_img{
	width:50vw;
	top:0;
	z-index:1;
}
}


#btn_policy {
	position:fixed;
	right:20px;
	bottom:20px;
	background:#3F3F46;
	padding:15px;
	display:flex;
	align-items:stretch;
	font-size:80%;
	max-width:600px;
	z-index:1000;
}
#btn_policy > p {
	margin-bottom:0;
}
#btn_policy > a {
	background:#DC2626;
	color:white;
	padding:0 20px;
	white-space:nowrap;
	margin:0 0 0 10px;
	display:flex;
	align-items:center;
}
@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
#btn_policy {
	right:10px;
	bottom:10px;
	padding:10px;
	font-size:70%;
	width:calc(100vw - 20px);
}
#btn_policy > a {
	padding:0 10px;
}
}

/* background */

/*
body.page-template,
body.archive,
body.single{
	background-image:url("/wp-content/themes/twentytwenty-child/images/under_back.jpg");
	background-size:cover;
	background-attachment:fixed;
	background-position:center center;
}
body.home {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top_back.jpg");
	background-size:cover;
	background-attachment:fixed;
	background-position:center center;
}
*/


body.page-template:before,
body.archive:before,
body.single:before{
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100vh;
    background: url("/wp-content/themes/twentytwenty-child/images/under_back.jpg") center no-repeat;
    background-size: cover;
}
body.home:before{
    content: "";
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100vh;
    background: url("/wp-content/themes/twentytwenty-child/images/top/top_back.jpg") center no-repeat;
    background-size: cover;
}
@media screen and (max-width:599px) {
body.page-template:before,
body.archive:before,
body.single:before{
    background: url("/wp-content/themes/twentytwenty-child/images/under_back_sp.jpg") center center no-repeat;
    background-size: cover;
}
body.home:before{
    background: url("/wp-content/themes/twentytwenty-child/images/top/top_back_sp.jpg") center center no-repeat;
    background-size: cover;
}	
}



/* button */

.btn_sword a{
    background-size: cover;
    transition: background-color 0.3s ease;
    position: relative; /* 子要素の配置に必要 */
	color:white !important;
	padding:30px 0;
	display:inline-block;

}
.btn_sword a:hover {
	text-decoration:none !important;	
}
.btn_sword a::before {
    content: '';
    position: absolute;
	width:100%;
	height:100%;
	top:0;
	left:0;
	background: url("/wp-content/themes/twentytwenty-child/images/sword.svg") center center no-repeat;	
	background-size: auto 100%;
    background-position: center;
    transition: transform 0.5s ease; /* スムーズな回転 */
    z-index: -1; /* テキストの背面に配置 */
}
.btn_sword a:hover::before {
    transform: rotate(90deg); /* 360度回転 */

}

.btn_linkgray a {
	width:100%;
	text-align:center;
	background:#27272A;
	padding:20px 0;
	display:block;
	color:white !important;
}
.btn_arrow a{
	color:white;
	display:inline-block;
	padding:20px;
	min-width:400px;
	border:1px solid white;
	text-align:center;
}


/* 矢印ボタン */
.st1{
	fill:#fff;
}
#btn_arrow,
#btn_arrow_b{
	width: 600px; 
	max-width:100%;
	height:100px; 
	display: flex; 
	align-items: center; 
	justify-content: center; 
	border:2px solid white;  
	transform: scale(0.6); 
	position:relative;
}
#btn_arrow_b {
	transform: scale(0.7); 	
}
#btn_arrow01,
#btn_arrow01_b{
	margin-left: 30px; 
	margin-right: 20px; 
	font-size:180%; 
	color:white;
}
#btn_arrow01_b{
	font-size:150%; 
}
#contact_link a,
#footer_contact_link a{
	text-decoration:none !important;
}


@media screen and (max-width:999px) {
#btn_arrow,
#btn_arrow_b{
	margin-left:auto;
	margin-right:auto;
}
.btn_arrow {
	width:100%;
}
.btn_arrow a {
	min-width:100%;
	display:block;
}	
}
@media screen and (max-width:599px) {
#btn_arrow,
#btn_arrow_b{
	transform: scale(0.9); 
	width: 100%;
	height:18vw;
	margin-top:40px;
	border:1.2px solid white;  
}
#btn_arrow01,
#btn_arrow01_b{
	font-size:4vw;
	margin-left: 20px; 
	margin-right: 10px; 
}
}



/* under */
#under_main {
	height:100vh;
    display: flex;
    flex-direction: column; /* 縦方向に配置 */
    justify-content: center; /* 垂直方向に中央寄せ */
}
#under_main h1 {
	font-size:400%;
	margin:0;
}
#under_post #under_title {
	min-height:20em;
    display: flex;
    flex-direction: column; /* 縦方向に配置 */
    justify-content: center; /* 垂直方向に中央寄せ */
	height:300px;
}
#under_post #under_title h1 {
	font-size:350%;
	margin:0;
	font-weight:500;
}
#under_post .flex_menu{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	padding-bottom:5em;
}
#under_post .flex_menu > div:first-child {
	width:272px;
	margin-right:2em;
}
#under_post .flex_menu > div:first-child ul {
	background:#18181B;
	padding:1em;
}
#under_post .flex_menu > div:first-child ul li {
	margin-bottom:1em;
}
#under_post .flex_menu > div:first-child ul li:last-child {
	margin-bottom:0;
}
#under_post .flex_menu > div:first-child ul li a {
	display:block;
	background:#27272A;
	padding:1em;
	color:white;
}
#under_post .flex_menu > div:first-child ul li a:hover {
	text-decoration:none;
}
#under_post .flex_menu > div:nth-child(2){
	width:100%;
	max-width:964px;
}
#under_post .flex_menu > div:nth-child(2) ul li{
	background:#18181B;
	padding:2em;
	width:100%;
	margin-bottom:2em;
}
body.post-type-archive-case #under_post .flex_menu > div:nth-child(2) ul li {
	background:#18181B;
	padding:2em;
	width:calc(50% - 1.5em);
	margin-bottom:3em;
}
#under_post .flex_menu > div:nth-child(2) ul li h2 {
	font-size:150%;
	font-weight:normal;
	margin:10px 0;
}
#under_post .flex_menu > div:nth-child(2) ul li h3 {
	color:#DC2626;
	margin:10px 0;
}
#under_post .flex_menu > div:nth-child(2) ul li a.link{
	display:inline-block;
	margin-top:10px;
	background:#DC2626;
	color:white;
	padding:5px 10px;
}

@media screen and (max-width:999px) {
#under_post .flex_menu{
	flex-wrap:wrap;
}
#under_post .flex_menu > div:first-child {
	width:100%;
	margin-right:0;
	margin-bottom:20px;
}
#under_post .flex_menu > div:first-child ul {
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#under_post .flex_menu > div:first-child ul li:nth-child(3),
#under_post .flex_menu > div:first-child ul li:last-child {
	margin-bottom:0;
}
#under_post .flex_menu > div:first-child ul li {
	width:calc(50% - 7.5px);
}
#under_post .flex_menu > div:nth-child(2) ul li{
	padding:1.5em;
	margin-bottom:1.5em;
}
body.post-type-archive-case #under_post .flex_menu > div:nth-child(2) ul li {
	padding:1.5em;
	width:calc(50% - 0.75em);
	margin-bottom:1.5em;
}	
}
@media screen and (max-width:599px) {
body.post-type-archive-case #under_post .flex_menu > div:nth-child(2) ul li {
	width:100%;
}
#under_post #under_title {
	height:200px;
	min-height:auto;
}
#under_post #under_title h1 {
	font-size:300%;
}
#under_post .flex_menu > div:first-child ul {
	padding:1em;
}
#under_post .flex_menu > div:first-child ul li {
	margin-bottom:1em
	text-align:center;
}
#under_post .flex_menu > div:first-child ul li a {
	padding:1em 0;
	text-align:center;
}
#under_post .flex_menu > div:nth-child(2) ul li{
	padding:1em;
	margin-bottom:1em;
}
#under_post .flex_menu > div:nth-child(2) ul li h2 {
	font-size:125%;
}
body.post-type-archive-case #under_post .flex_menu > div:nth-child(2) ul li {
	padding:1em;
	width:100%;
	margin-bottom:1em;
}	
}


/* single*/

body.single #under_post .flex_menu,
#under_content{
	margin-top:7em;
}

body.single #under_post .flex_menu h2,
#under_content h2{
	font-size:250%;
	font-weight:500;
	margin:10px 0;
	line-height:1.6;
}
#under_content h2{
	font-size:400%;
}
body.single #under_post .flex_menu h3 {
	font-size:100%;
	font-weight:500;
	margin:10px 0;
	color:#DC2626;
}
body.single .single_box,
#under_content .box{
	margin-top:3em;
	background:#18181B;
	padding:3em;
}
body.single .single_box img {
	margin-bottom:20px;
}
body.single #single_sns{
	background:#27272A;
	padding:3em;
	margin-top:2em;
}
body.single #single_about h4 {
	font-size:100%;
	margin:30px 0 15px 0;
}
body.single #single_about p{
	font-size:80%;
	margin:0;
}
#single_sns{
	display:flex;
	justify-content:center;
	align-items:center;
}
#single_sns div{
	display:inline-block;
	color:white;
	cursor:pointer;
	margin-left:20px;
	font-size:250%;
}
#single_sns p {
	margin:0 30px 0 0;
}

/* service */

body#service #under_main h1 {
	font-size:350%;
	font-weight:500;
}

body#service #under_main p.read {
	max-width:700px;
	font-weight:normal;
	line-height:1.8;
	margin-top:60px;
}
body#service #under_main img {
	margin:100px 0 0 auto;
	display:block;
	max-width:600px;
	width;40%;
}
body#service #under_main .service_content {
	margin-top:50px;
}
body#service #under_main .service_content .flex_60_40 {
	align-items:flex-end;	
}
body#service #under_main .tag span {
	display:inline-block;
	background:#27272A;
	padding:0 7px;
	margin-right:7px;
	margin-bottom:7px;
}
body#service #under_main .service_content h2 {
	margin:20px 0;
}
body#service #under_main .service_content h3 {
	margin:20px 0;
}
body#service #under_main ul{
	margin-top:80px;
}
body#service #under_main ul h2{
	font-size:100%;
	color:#DC2626;
	margin:20px 0 0 0;	
}
body#service #under_main ul h3{
	margin:20px 0 10px 0;
	font-size:150%;
}

body#service #top_case ul li img {
	margin: 0;		
}
body#service #top_case ul li br {
	display:none;
}
body#service #top_case ul h2 {
	font-size:150%;
	margin:20px 0 0 0;		
}
body#service #top_case ul h3 {
	font-size:125%;
	color:#A1A1AA;
	margin:20px 0 15px 0;		
}


top_case"
@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
body#service #under_main img {
	margin:80px 0 0 0;
	width:100%;
}
}

/* contact */

#contact_content {
		margin-top:7em;
}
#contact_content h1 {
	font-size:250%;
	font-weight:500;
	margin:0 0 1em 0;
}
#contact_content > div > div:nth-child(1) ul li{
	margin-top:20px;
}
#contact_content > div > div:nth-child(2) {
	background:#18181B;
	padding:3em;
	text-align:left;
}
#contact_content > div > div:nth-child(2) input[type="text"],
#contact_content > div > div:nth-child(2) input[type="email"] {
	width:100%;
	color:black;
	font-size:125%;
	margin:10px 0 20px 0;
}
#contact_content > div > div:nth-child(2) input[type="submit"]{
	width:100%;
	background:#DC2626;
}
#contact_content .required{
	background:#DC2626;
	padding:0 10px;
}

@media screen and (max-width:999px) {
#contact_content > div > div:nth-child(2) {
	padding:1.5em;
}
#contact_content > div > div:nth-child(2) input[type="text"],
#contact_content > div > div:nth-child(2) input[type="email"] {
	font-size:110%;
	padding:12px;
}
}
@media screen and (max-width:599px) {
#contact_content > div > div:nth-child(2) {
	padding:1em;
}
#contact_content > div > div:nth-child(2) input[type="text"],
#contact_content > div > div:nth-child(2) input[type="email"] {
	padding:10px;
}
}














.shadow {
	 text-shadow: -1px -1px 2px rgba(0,0,0,0.6), 3px 3px 1px3px rgba(0,0,0,0.6)
}

/* btn */
.btn01 {
	text-align:center;
	margin-top:2em;
	position:relative;
	z-index:999;
	width:100%;
}
.btn01 a {
	background: linear-gradient(0deg, #5944ec, #09bafe);
	display:inline-block;
	color:white;
	border-radius:100px 100px 100px 100px;
	padding:13px 20px;
	min-width:50%;
	font-size:180%;
	line-height:1;
	box-shadow:3px 3px 8px rgba(0,0,0,0.6);
	align-items:center;
	justify-content:center;
}
.btn01 a span {
	display:block;
	font-size:60%;
	margin-bottom:5px;
}
.btn01 a strong {
	color:#ffff00;
	font-weight:700;
	font-feature-settings: "palt";
}
.btn01 a:hover {
	text-decoration:none;
	opacity:0.9;
}

@media screen and (max-width:999px) {
.btn01 a {
	min-width:70%;
}
}
@media screen and (max-width:599px) {
.btn01 a {
	min-width:80%;
}
}



/* home(TOP) */

#top_main  {
	padding:0;
}
#top_main .outer {
	min-height:100vh;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:auto 100%;
	position:relative;
	display:flex;
	align-items:center;
}
#top_main .inner {
	display:flex;
	flex-direction: column;		
}

#top_main h2 {
	margin:15px 0 30px 0;
	z-index:11;
}
#top_main h2 > div {
	width:100%;
	text-align:center;
}
#top_main h2 img {
	max-width:60%;
	display:block;
	margin-left:auto;
	margin-right:auto;
}
#top_main h3{
	font-weight:normal;
	text-shadow: -1px -1px 2px rgba(0,0,0,0.4), 3px 3px 3px rgba(0,0,0,0.4);
	margin:50px 0 0 0;
	font-size:100%;
	text-align:center;
	color:white;
}
#top_main h3 img {
	max-width:60%;
	display:block;
	margin-left:auto;
	margin-right:auto;
}
#top_main h4 {
	margin:0 0 30px -30px;
}
#top_main h4 img {
	max-width:60%;
}
img.main_catch03 {
	max-width:60%;
}

@media screen and (max-width:999px) {
#top_main h2 img {
	max-width:80%;
}
#top_main h3 img {
	max-width:80%;
}
#top_main h4 img {
	max-width:80%;
}
}
@media screen and (max-width:599px) {
#top_main h2 {
	margin:15px 0 15px 0;
}
#top_main h4 {
	margin:0 0 30px 0;
}
#top_main h2 img,
#top_main h3 img,
#top_main h4 img,
img.main_catch03 {
	max-width:100%;
}
}

#top_main .main_catch03 {
	position:relative;
	z-index:11;
	display:block;
	width:100%;
	margin-top:-20px;
	right:-1.5vw;
}

#top_main .main_model{
	position:absolute;
	right:50%;
	transform: translateX(120%);
	bottom:0;
	max-height:80%;
	z-index:10;
}
@media screen and (max-width:999px) {
#top_main .main_catch03 {
	margin-top:-4vw;
	right:-1.5vw;
}
#top_main .main_model{
	transform: translateX(100%);
}
}
@media screen and (max-width:599px) {
	#top_main .inner  {
		width:100%;
	}
#top_main .main_model{
	right:-30%;
	transform: translateX(0);
	max-height:73%;
}
}


#top_content01,
#top_content02,
#top_content03{
	min-height:100vh;
}

#top_content01 {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top01_back_pc.jpg");
	background-repeat:no-repeat;
	background-size:cover;
}
#top_content02 {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top02_back_pc.jpg");
	background-repeat:no-repeat;
	background-size:cover;
}
#top_content03 {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top03_back_pc.jpg");
	background-repeat:no-repeat;
	background-size:cover;
}
#top_content05 {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top_image07.png");
	background-repeat:no-repeat;
	background-size:auto calc(30% + 15vw);
	background-position:right -10% bottom -10%;
}

@media screen and (max-width:599px) {
#top_content01 {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top01_back.jpg");
}
#top_content02 {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top02_back.jpg");
}
#top_content03 {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top03_back.jpg");
}
#top_content05 {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top_image07.png");
}
}

#top_content01,
#top_content02,
#top_content03,
#top_content04,
#top_content05{
	display:flex;
	align-items:center;
}
#top_content01 .inner,
#top_content02 .inner, 
#top_content03 .inner,
#top_content04 .inner,
#top_content05 .inner{
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
}

#top_content01 h2 {
	color:white;
	font-size:225%;
	text-align:center;
	font-feature-settings: "palt";
	line-height:1.6;
	margin:0 0 40px 0;
	text-shadow: -1px -1px 2px rgba(0,0,0,0.4), 3px 3px 3px rgba(0,0,0,0.4);
}
#top_content01 h3 {
	color:#ffff00;
	font-size:225%;
}
#top_content01 img {
	max-width:600px;
}
#top_content01 .btn01{
	width:100%;
}
#top_content01 .btn01 a {
	font-size:160%;
	font-feature-settings: "palt";
}
#top_content01 .btn01 a span {
	font-size:80%;
}

@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
#top_content01 h2 {
	font-size:6vw;
	text-align:right;
	margin:0 0 20px auto;
}
#top_content01 h3 {
	font-size:6.3vw;
}
#top_content01 img {
	max-width:100%;
}
}


#top_content02 .inner {
	max-width:700px;
}
#top_content02 h3 {
	color:white;
	font-size:150%;
	background: linear-gradient(to right, #8c54ff, #5de0e6);
	padding:10px 15px;
}
#top_content02 h2 {
	color:white;
	font-size:250%;
	font-feature-settings: "palt";
	line-height:1.6;
	margin:0;
	text-shadow: -1px -1px 2px rgba(0,0,0,0.4), 3px 3px 3px rgba(0,0,0,0.4);
}
#top_content02 > .inner > p {
	margin-top:10vw;
	color:white;
	font-weight:500;
	line-height:1.8;
	font-size:115%;
	text-shadow: -1px -1px 2px rgba(0,0,0,0.4), 3px 3px 3px rgba(0,0,0,0.4);
}
@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
#top_content02 h3 {
	font-size:3.6vw;
}
#top_content02 h2 {
	font-size:6vw;
	margin:0 0 0 auto;
}
}



#top_content03  {
	color:white;
}
#top_content03 h3 {
	font-size:160%;
	font-weight:bold;
	margin:0;
}
#top_content03 li {
	margin-bottom:30px;
}
#top_content03 li > p {
	margin-top:10px;
	padding:15px;
}

#top_content03 li:nth-child(1) > p{
	background:rgba(51,102,255,0.8);
}
#top_content03 li:nth-child(2) > p{
	background:rgba(102,102,255,0.8);
}
#top_content03 li:nth-child(3) > p{
	background:rgba(255,102,204,0.8);
}
@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
#top_content03 h3 {
	font-size:120%;
}
}

.table01 {
	background:#fffaf6;
	padding:20px 20px 20px 10px;	
	margin-top:20px;
	margin-bottom:50px;
	box-shadow: 5px 5px 5px rgba(0,0,0,0.2)
}
.table01 table,
.table01 table th,
.table01 table td {
	border:0;
	margin:0;
}
.table01 table th {
	white-space:nowrap;
	vertical-align:top;
}
.table01 table td {
	font-size:80%;
}
.table01 table td ul {
	border-top:1px dotted gray;
	padding-bottom:10px;	
}
.table01 table td ul li {
	border-bottom:1px dotted gray;
	padding:5px;	
}




#top_content04 h2,
#top_content05 h2{
	color:white;
	font-weight:700;
	font-size:240%;
	font-feature-settings: "palt";
	text-align:center;
	margin:0;
}
#top_content04 h3,
#top_content05 h3{
	color:#ffff00;
	font-size:160%;
	font-weight:500;
	font-feature-settings: "palt";
	text-align:center;
	margin:0;
}

#top_content04 ul,
#top_content05 ul {
	max-width:700px;
	margin:50px auto 70px auto;
}
#top_content04 li {
	display:flex;
	align-items:center;
	margin-bottom:-20px;
}
#top_content04 li:nth-child(even){
	flex-direction:row-reverse;
}
#top_content04 li div  {
	background:white;
	border-radius:20px;
	box-shadow: 3px 3px 5px rgba(0,0,0,0.2);
	width:90%;
	padding:20px;
}
#top_content04 li div span {
	display:block;
	font-size:100%;
}
#top_content04 li img {
	max-height:140px;
}
@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
#top_content04 li div span {
	font-size:80%;
}
}

#top_content05 li {
  display: flex;
  align-items: center;
  margin-bottom: -10px;
  font-family: sans-serif;
	color:white;
}
#top_content05 li span {
	font-size:120%;
}
#top_content05 li:nth-child(even) {
  margin-bottom: 10px;	
}
#top_content05 li p {
  width: 60px;
  height: 60px;
  margin: 0 12px 0 0;
  font-weight: bold;
  font-size: 160%;
  color: white;
  text-align: center;
  display: flex;
  align-items: center;     /* 縦中央 */
  justify-content: center; /* 横中央 */
  border: 3px solid white;
  box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  flex-shrink: 0;
}
#top_content05 li:nth-child(even) {
	padding-left:20px;
}
#top_content05 li:nth-child(even) p {
  width: 50px;
  height: 50px;
  margin: 0 12px 0 0;
  font-weight: bold;
  font-size: 160%;
  color: white;
  text-align: center;
  display: flex;
  align-items: center;     /* 縦中央 */
  justify-content: center; /* 横中央 */
  border: 3px solid white;
  box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  flex-shrink: 0;
}
#top_content05 li:nth-child(odd) p {
  background: linear-gradient(to bottom, #2a2aa0, #4c4cc8);
}
#top_content05 li:nth-child(even) p {
  background: linear-gradient(to bottom, #f18a00, #fba500);
}
#top_content05 li:nth-child(even) span {
  color: #ffff00;
}
@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
#top_content05 li span {
	font-size:100%;
}
}



#top_cta {
	background-image:url("/wp-content/themes/twentytwenty-child/images/cta_back.jpg");
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
	display:flex;
	align-items:center;
	margin-bottom:0;
}
#top_cta h2{
	font-weight:700;
	color:white;
	font-feature-settings: "palt";
	font-size:250%;
	text-align:center;	
	margin:0 0 20px 0;
}
#top_cta h3{
	color:yellow;
	font-size:200%;
	font-weight:500;
	font-feature-settings: "palt";
	text-align:center;
	margin:0;
	margin-top:30px;
}
#top_cta p {
	color:white;
	text-align:center;
	font-size:110%;
}

@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
#top_cta h2{
	font-size:8vw;
}
#top_cta h3{
	font-size:6vw;
}
#top_cta p {
	font-size:100%;
}
}





h2.title {
	font-size:250%;
	line-height:1.8;
	margin:1.5em 0 15px 0;
	font-weight:600;
}
h3.title  {
	font-size:100%;
	color:#D4D4D8;
	font-weight:normal;
}
h4.title  {
	font-size:125%;
	color:#D4D4D8;
	font-weight:normal;
}
@media screen and (max-width:999px) {
h2.title {
	font-size:200%;
	line-height:1.6;
}
h3.title  {
	font-size:100%;
}
h4.title  {
	font-size:120%;
}
}
@media screen and (max-width:599px) {
h2.title {
	font-size:200%;
	line-height:1.6;
}
h3.title  {
	font-size:100%;
}
h4.title  {
	font-size:120%;
}
}


#measures ul{
	margin-top:60px;
}
#measures ul li{
	text-align:center;
	font-size:100%;
}
#measures ul li div {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/back_pink.png");
	background-repeat:no-repeat;
    background-size:auto 120%;
    background-position: center;
    padding: 30px; 
}
#measures ul li img {
	width:80%;
    max-width: 100%; 
    height: auto; 
	margin-left:auto;
	margin-right:auto;
	display:block;
}
#measures ul li:nth-child(even) div {
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/back_orange.png");	
}

@media screen and (max-width:999px) {
#measures ul li {
	text-align:center;
	padding:15px 10px;
	font-size:90%;
}
#measures ul li div {
    padding: 25px; 
}
}
@media screen and (max-width:599px) {
#measures ul li {
	text-align:left;
	padding:15px 0;
}
#measures ul li div {
    padding: 20px; 
}
}

#strengths h3{
	font-size:150%;
	color:#71717A;
	margin:0 0 30px 0;
}
#strengths > .flex_60_40 > div:nth-child(2){
	margin:0 0 0 auto;
}

#strengths p.btn_sword {
	margin:50px 0 0 0;
	text-align:right;
}
#strengths p.btn_sword a {
	display:inline-block;
	margin: 0 0 0 auto;
}


@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
#strengths h3{
	font-size:125%;
}
}

#top_features li {
	position:relative;
	width:calc(100% / 3 - 40px);
	padding:15px;
}
#top_features li > span {
	color:#DC2626;
	font-size:400%;
	font-weight:bold;
	position:absolute;
	top:-20px;
	left:-20px;
	writing-mode: vertical-rl; /* 縦書きのモードを指定 */
	letter-spacing:5px;
	line-height:1;
}
#top_features h3 {
	font-size:200%;
	line-height:1.6;
	font-weight:normal;
	margin:20px 0 20px 0;
}
#top_features li p {
	 color:#D4D4D8;
}
@media screen and (max-width:999px) {
#top_features li > span {
	font-size:5vw;
}
#top_features h3 {
	font-size:150%;
	margin:10px 0 10px 0;
}
#top_features li p {
	font-size:90%;
}
}
@media screen and (max-width:599px) {
#top_features li {
	position:relative;
	width:100%;
}
#top_features li > span {
	font-size:12vw;
	top:-15px;
	left:-15px;
}
}

#top_vijon > div {
	margin-top:50px;
}
#top_vijon > div > h2,
#top_vijon > div > h3,
#top_vijon > div > h4 {
	text-align:center;
	line-height:1.6;
}
#top_vijon .btn_sword {
	margin-top:30px;
}
#top_vijon .btn_sword a {
	display:inline-block;
}
#top_vijon ul h2 {
	font-size:200%;
	line-height:1.6;
	margin:30px 0 20px;
	font-weight:normal;
}
@media screen and (max-width:999px) {
#top_vijon ul h2 {
	font-size:150%;
}
}
@media screen and (max-width:599px) {
}

#company > div.flex_30_70 > div:nth-child(2) {
	width:calc(70% - 60px);
	margin:0 0 0 auto;
}
#company img.label {
	max-width:100px;
	margin:0 0 0 auto;
}

#company h2 {
	margin-top:0px;
}
#company table {
	border:none;
	border-top:1px solid #333333;
	width:100%;
}
#company table th,
#company table td {
	border:none;
	border-bottom:1px solid #333333;
	padding:20px 0;
}
#company table tr {
	border-bottom:1px solid #333333;
}
#company table th {
	width:160px;
}
#company table td {
	width:calc(100% - 160px);
}
#top_news p.date {
	color:#D4D4D8;
	margin:10px 0 0 0;
}
#top_news h2 {
	font-size:115%;
	font-weight:normal;
	line-height:1.8;
	margin:10px 0 0 0;
}
@media screen and (max-width:999px) {
#company table th {
	width:auto;
	padding-right:30px;
}
}
@media screen and (max-width:599px) {
#company > div.flex_30_70 > div:nth-child(2) {
	width:100%;
}	
#company img.label {
	margin:-100px 0 -50px auto;
}
	
#company table {
	margin-top:30px;
}
#company table th ,
#company table td {
	padding:13px 0;
	font-size:90%;
}
#company table th {
	padding-right:30px;
	white-space:nowrap;
}
#top_news li {
		margin-bottom:30px;
}
}

/* contact_link */
#contact_link,
#footer_contact_link{
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top_image11.jpg");
	background-size:cover;
	background-position:center center;	
	min-height:50vh;
    display: flex;
    flex-direction: column; /* 縦方向に配置 */
    justify-content: center; /* 垂直方向に中央寄せ */
}
#contact_link {
	margin-top:30px;
	font-size:115%;
	max-width:100%;
}
#footer_contact_link a {
	margin-top:30px;
	max-width:100%;
}
#contact_link{
	background-image:url("/wp-content/themes/twentytwenty-child/images/top/top_image11.jpg");
}
#footer_contact_link{
	background-image:url("/wp-content/themes/twentytwenty-child/images/footer_contact_back.jpg");
	background-size:cover;
}
#contact_link h2 {
	font-size:300%;
	max-width:60%;
	line-height:1.6;
}
#footer_contact_link > div > div {
	text-align:center;
	margin-right:0;
	margin-left:auto;
	width:40%;
	display:block;
}
@media screen and (max-width:999px) {
#contact_link h2 {
	max-width:70%;
}
#contact_link h2,
#footer_contact_link h2 {
	font-size:3.5vw;
}
#footer_contact_link{
	background-image:url("/wp-content/themes/twentytwenty-child/images/footer_contact_back_tab_sp.jpg");
	background-position:left center;
}
#footer_contact_link > div > div {
	margin-right:auto;
	margin-left:auto;
	width:50%;
}
}
@media screen and (max-width:599px) {
#contact_link h2 {
	max-width:100%;
}
#contact_link h2,
#footer_contact_link h2 {
	font-size:5vw;
}
#contact_link > div > p {
	max-width:70%;		
	}
#contact_link{
	background-position:right 45% center;
}
#footer_contact_link > div > div {
	width:100%;
}
}


#next_prev {
	margin-top:30px;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#next_prev li {
	margin-bottom:10px;
}
#next_prev li:last-child {
	display:block;
	margin-left:auto;
	margin-right:0;
}
#next_prev li {
	font-size:86%;
}
#next_prev li a {
	text-decoration:none;
}
#next_prev li a:hover {
	text-decoration:underline;
}
@media screen and (max-width:999px) {
}
@media screen and (max-width:599px) {
}


.fancybox-bg {
    background-color: rgba(0, 0, 0, 1);
    opacity: 0.5 !important;
}


/* 企業ロゴスクロール */
.marquee-right {
	overflow: hidden;
}
.marquee-right ul {
	animation: marquee-right 20s linear infinite;
	display: flex;
	margin: 0;
	padding: 0;
	width: max-content;
}
.marquee-right ul li {
	list-style: none;
	padding: 0 5px;
	width: calc(100vw / 6 - 10px);
}
.marquee-right img {
	display: block;
	width: 100%;
}
@keyframes marquee-right {
	from {
		transform: translateX(0%);
	}
	to {
		transform: translateX(-50%);
	}
}

@media screen and (max-width:999px) {
.marquee-right ul li {
	width: calc(100vw / 5 - 10px);
}
}
@media screen and (max-width:599px) {
.marquee-right ul li {
	width: calc(100vw / 3 - 10px);
}
}



/* 横スクロール */
.Container {
      position: relative;
      width: 100%;
      overflow: hidden;
    }
.Container ul {
      display: flex;
      width: fit-content;
      transition: transform 0.3s ease;
      transform: translateX(0);
    }
.Container ul li {
      flex-shrink: 0;
      width: 100%;
      margin-right: 10px;
    }
.Arrow {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 30px;
      height: 30px;
      background-color: rgba(0, 0, 0, 0.3);
      color: #fff;
      font-size: 20px;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
    }
.Arrow.left {
      left: 0;
    }
.Arrow.right {
      right: 0;
    }
.Hide {
      display: none;
    }

