@charset "UTF-8";
/* Font
============================================================================================================ */

@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;500;600;700;900&display=swap');
body {
	font-family: 'M PLUS Rounded 1c', 'Hiragino Kaku Gothic Pro', 'ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro W3', 'ãƒ¡ã‚¤ãƒªã‚ª', Meiryo, 'ï¼­ï¼³ ï¼°ã‚´ã‚·ãƒƒã‚¯', sans-serif;
	color: #282828;
}
/* ãƒ˜ãƒ«ãƒ‘ãƒ¼
============================================================================================================ */

/*margin*/

.mb0 {
	margin-bottom: 0 !important;
}
.mb0_5r {
	margin-bottom: 0.5rem !important;
}
.mb1r {
	margin-bottom: 1rem !important;
}
.mb2r {
	margin-bottom: 2rem !important;
}
.mb3r {
	margin-bottom: 3rem !important;
}
.mb4r {
	margin-bottom: 4rem !important;
}
.mb5r {
	margin-bottom: 5rem !important;
}
.mb6r {
	margin-bottom: 6rem !important;
}
.mb7r {
	margin-bottom: 7rem !important;
}
.mb8r {
	margin-bottom: 8rem !important;
}
.mb9r {
	margin-bottom: 9rem !important;
}
.mb10r {
	margin-bottom: 10rem !important;
}
.mt_2r {
	margin-top: -2rem !important;
}
.mt_1r {
	margin-top: -1rem !important;
}
.mt0 {
	margin-top: 0 !important;
}
.mt1r {
	margin-top: 1rem !important;
}
.mt2r {
	margin-top: 2rem !important;
}
.mt3r {
	margin-top: 3rem !important;
}
.mt4r {
	margin-top: 4rem !important;
}
.mt5r {
	margin-top: 5rem !important;
}
.mt6r {
	margin-top: 6rem !important;
}
/*padding*/

.pd1r {
	padding: 1rem !important;
}
.pd2r {
	padding: 2rem !important;
}
.pd3r {
	padding: 3rem !important;
}
.pt0 {
	padding-top: 0 !important;
}
.pt1r {
	padding-top: 1rem !important;
}
.pt2r {
	padding-top: 2rem !important;
}
.pt3r {
	padding-top: 3rem !important;
}
.pb0 {
	padding-bottom: 0 !important;
}
.pb1r {
	padding-bottom: 1rem !important;
}
.pb2r {
	padding-bottom: 2rem !important;
}
/*display*/

.db {
	display: block !important;
}
.di {
	display: inline !important;
}
/*text*/

.tac {
	text-align: center !important;
}
.tar {
	text-align: right !important;
}
.tal {
	text-align: left !important;
}
/*color*/

.clrRed {
	color: #cb3f3f !important;
}
.clrGreen {
	color: #2bdadc !important;
}
.clrBlue {
	color: #91e2ee !important;
}
.clrOrange {
	color: #ea6854 !important;
}
.clrYellow {
	color: #f7ec41 !important;
}
.clrPink {
	color: #f6add4 !important;
}
.clrWhite {
	color: #fff !important;
}
/*font-weight*/

.fwNorm {
	font-weight: 400 !important;
}
.fwMed {
	font-weight: 500 !important;
}
.fwBold {
	font-weight: 600 !important;
}
/*font-size*/

.fs80 {
	font-size: 80% !important;
}
.fs90 {
	font-size: 90% !important;
}
.fs100 {
	font-size: 100% !important;
}
.fs105 {
	font-size: 105% !important;
}
.fs110 {
	font-size: 110% !important;
}
.fs120 {
	font-size: 120% !important;
}
.fs130 {
	font-size: 130% !important;
}
.fs140 {
	font-size: 140% !important;
}
.fs150 {
	font-size: 150% !important;
}
.fs160 {
	font-size: 160% !important;
}
.fs170 {
	font-size: 170% !important;
}
.fs180 {
	font-size: 180% !important;
}
.fs190 {
	font-size: 190% !important;
}
.fs200 {
	font-size: 200% !important;
}
/*text-decoration*/

.txtdecoU {
	border-bottom: solid 3px #d6e24a;
}
.txtdecoN {
	text-decoration: none !important;
}
/*clear*/

.clear {
	clear: both !important;
}
/*radius*/

.radius, .radius img {
	border-radius: 0.75rem !important;
}
.view-sp {
	display: none;
}
.listD {
	list-style-type: disc;
	list-style-position: inside;
}
@media print, screen and (max-width: 48.000em) {
	.view-pc, .view-sp {
		display: none;
	}
}
/* table
============================================================================================================ */

.table {
	border-collapse: collapse;
	width: 100%;
	margin-bottom: 1.5rem;
}
.table th, .table td {
	vertical-align: top;
	padding: 0 0.65rem 1rem 0.65rem;
	font-size: 0.875rem;
}
.table th {
	text-align: left;
}
.table_noline, .table_noline th, .table_noline td {
	border: none;
	padding: 0.5rem 0;
	text-align: left;
	vertical-align: top;
}
/* header
============================================================================================================ */

#header {
	position: sticky;
	top: 0;
}
#header.fixed {
	background: rgba(255, 255, 255, .75);
}
.header_wrap {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
.header_logo {
	margin-right: auto;
	margin-left: 1rem;
	margin-top: 0.5rem;
	line-height: 1em;
}
.header_logo h1 {
	font-size: 1em;
}
.header_logo h1 span {
	font-weight: 400;
	font-size: 0.75rem;
	margin: 0 0 0.25rem;
	display: block;
}
.header_logo h1 a {}
.header_contact {
	padding: 0.65rem;
	text-align: center;
}
.header_contact .button {
	max-width: 200px;
	padding: 0.65rem 1.5rem;
	font-size: 0.875rem;
	white-space:nowrap;
}.header_contact .button:after {
	content:none;
}
@media print, screen and (max-width: 64.000em) {
	.header_logo img {
		width: 240px;
		height: auto;
	}
}
@media print, screen and (max-width: 48.000em) {
	#header {
		position: relative;
		top: 0;
		height: 64px;
	}
	.header_logo {
		padding: 0.2rem 0;
		margin-left: 0.65rem;
	}
	#header.fixed {
		background: none;
	}
	.header_navigation {
		max-width: initial;
	}
	.header_contact {
		display: none;
	}
}
@media print, screen and (max-width: 40em) {
	#header {
		position: relative;
		height: auto;
	}
	.header_navigation {
		/*max-width: 200px;*/
	}
}
.footer {
	background-image: url(../img/bg_footer.jpg);
	background-position: center bottom;
	background-size: cover;
	background-repeat: repeat;
	position: relative;
	border-top: solid 1px #ffeaed;
}
.footer_facility {
}
.footer_facility>div {
	flex-basis: 50%;
	background-image: url(../img/footer_pic01.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
	padding: 5rem;
}
.footer_facility .naruto {
	background-image: url(../img/footer_pic02.png);
}
.footer_facility>div .inner {
	background: rgba(255, 255, 255, 0.85);
	padding: 2.5rem;
	height: 100%;
}
.footer_facility .name, .footer_facility .tel {
	font-size: 1.5rem;
	text-align: center;
	font-weight: 600;
	letter-spacing: 0.1rem;
	margin: 0;
}
.footer_facility dl {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.footer_facility dl dt {
	width: 6em;
	text-align: center;
	font-weight: 400;
}
.footer_facility dl dt span {
	border: solid 1px #f17d8c;
	width: 100%;
	display: inline-block;
	margin-top: 0.5rem;
}
.footer_facility dl dd {
	width: calc(100% - 7em);
	margin-top: 0.5rem;
}
.footer_facility .button {
	background: #f17d8c;
	color: #fff;
	margin: 0 auto;
	display: block;
}
.footer .logo {
	display:flex; justify-content:center;
	margin:4rem 0 0.5rem;
}
.footer .logo a{
	padding:0 1rem 1rem;display:block;
}
.footer_links {
	display: flex;
	margin: 3rem auto 0;
	justify-content: center;
}
.footer_links li {
	font-size: 0.875rem;
	font-weight: 600;
	cursor: default;
	padding: 0 2.5rem;
	text-align: center;
}
.footer_links li:not(:last-child) {
	border-right: solid 1px #222;
}
.copyright {
	font-size: 0.75rem;
	margin: 3rem 0 0;
	padding: 1.5rem;
	background: #fce1c3;
	color: #f17d8c;
}
@media screen and (max-width: 64em) {
	.footer_facility>div {
		padding: 3rem;
	}
	.footer_facility>div .inner {
		padding: 1.5rem;
	}
	.footer_facility .name, .footer_facility .tel {
		font-size: 1.25rem;
		letter-spacing: normal;
	}
}
@media screen and (max-width: 48em) {
	.footer_facility>div {
		padding: 2rem;
	}
	.footer_facility .name, .footer_facility .tel {
		font-size: 1.125rem;
		letter-spacing: normal;
	}
	.footer_facility dl dt, .footer_facility dl dd {
		font-size: 0.8125rem;
	}
	.footer_links li {
		padding: 0 1rem;
	}
}
@media screen and (max-width: 40em) {
	.footer_facility {
		display: block;
	}
	.footer .logo {
	display:block;text-align:center;
}

	.footer_links {
		display: none;
	}
	.footer_facility dl dt, .footer_facility dl dd {
		font-size: 0.75rem;
	}
	.copyright {
		font-size: 0.75rem;
		padding: 1rem 0 1rem;
	}
}
@media screen and (max-width: 30em) {
	.footer_facility>div {
		padding: 1.5rem;
	}
	.footer_facility .name, .footer_facility .tel {
		font-size: 1rem;
	}
}
.mobile_contact {
	display: flex;
	justify-content: flex-end;
	width: 100%;
	height: auto;
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	padding: 0.65rem;
}
.mobile_contact .tel {
	width: 42%;
	display: none;
}
.mobile_contact .mail {
	width: 42%;
	display: none;
}
.mobile_contact .pagetop {
	width: 16%;
	max-width: 60px;
}
.mobile_contact .mail {
	width: 40%;
}
.mobile_contact .button {
	display: block;
	padding: 1rem 0;
	border: solid 1px #f17d8c;
}
.mobile_contact .button::after {
	content: none;
}
@media print, screen and (max-width: 40.000em) {
	/*.mobile_contact {
		justify-content: space-between;
		background-color: rgba(255, 255, 255, 0.75);
	}
	.mobile_contact .tel, .mobile_contact .mail {
		display: block;
	}*/
	.mobile_contact .pagetop {
		border: none;
	}
}
@media print, screen and (max-width: 30.000em) {
	.mobile_contact .button {
		padding: 0.8125rem 0;
	}
}
.section_heading {
	display: block;
	font-weight: 600;
	color: #333;
	margin-bottom: 1.25rem;
	font-size: 1.85rem;
	letter-spacing: 1px;
	line-height: 1.6em;
}
.section_heading2 {
	font-size: 1.35rem;
	position: relative;
	font-weight: 500;
	padding: 0.5rem 1.5rem;
	margin: 2rem 0 1.5rem;
	/*background-size: auto auto;
background: repeating-linear-gradient( 40deg, #fff, #fff 4px, #d9ecf9 4px, #d9ecf9 6px);
border-radius: 3rem;*/
}
.section_heading2::before {
	content: "";
	position: absolute;
	display: block;
	width: 4px;
	height: 100%;
	left: 0;
	top: 0;
	background: #f17d8c;
	border-radius: 0.25rem;
}
.lead {
	font-size: 115%;
	line-height: 1.6;
	font-weight: 500;
}
@media print, screen and (max-width: 48.000em) {
	.section_heading {
		font-size: 2rem;
	}
	.section_heading2 {
		font-size: 1.75rem;
	}
	.lead {
		font-size: 100%;
	}
}
@media print, screen and (max-width: 40.000em) {
	.section_heading {
		font-size: 1.85rem;
	}
	.section_heading2 {
		font-size: 1.5rem;
	}
}
/* toppage
============================================================================================================ */

.aos-wrap {
	overflow-x: hidden;
}
.top_mimg {
	background-image: url(../img/top_mimg_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	height: 580px;
	background-position: center bottom;
	position: relative;
}
.top_mimg_en {
	position: absolute;
	top: 20%;
	left: 10%;
	transform: translateX(-10%) translateY(-20%);
	-webkit-transform: translateX(-10%) translateY(-20%);
	-ms-transform: translateX(-10%) translateY(-20%);
}
.top_mimg_text {
	position: absolute;
	top: 50%;
	left: 20%;
	transform: translateX(-20%) translateY(-50%);
	-webkit-transform: translateX(-20%) translateY(-50%);
	-ms-transform: translateX(-20%) translateY(-50%);
}
.top_mimg_pic {
	position: absolute;
	height: 104%;
	right: 5%;
	top: -2%;
}
.top_mimg_pic img {
	height: 100%;
	width: auto;
}
.top_lead {
	font-size: 1.5rem;
	font-weight: 500;
	letter-spacing: 2px;
	margin: 3rem 0;
}
.top_service {
	background-color: #ffeaed;
	padding: 6rem 0;
}
.top_service_section {
	display: flex;
	justify-content: space-between;
}
.top_service_section.reverse {
	flex-direction: row-reverse;
	margin-bottom: 6rem;
}
.top_service_section .image {
	flex-basis: 47%;
}
.top_service_section .text {
	position: relative;
	flex-basis: 47%;
	margin-top: -0.25rem;
}
.top_news {
	display: flex;
	justify-content: center;
}
.top_news>div {
	flex-basis: 47%;
	padding: 0 1.5%;
	text-align: center;
}
.top_news_list {
	margin: 0 auto;
	max-width: 60rem;
	width: 100%;
	overflow-y: scroll;
	max-height: 350px;
	padding-right: 2rem;
}
.top_news_list li {
	align-items: center;
	display: flex;
	justify-content: space-between;
	text-align: left;
	margin-bottom: 1.5rem;
}
.top_news_list .image {
	flex-basis: 30%;
}
.top_news_list .image img {
	width: 100%;
	height: 100px;
	object-fit: cover;
}
.top_news_list .date {
	font-weight: 600;
	margin-bottom: 0.5rem;
	display: block;
	line-height: 1;
}
.top_news_list .ttl {
	font-size: 0.9375rem;
	font-weight: 400;
}
.top_news_list .text {
	flex-basis: 65%;
}
.top_online {
	background-image: url(../img/top_online_bg.png);
	padding: 8rem 0;
	background-position: center center;
	background-size: cover;
	position: relative;
	background-repeat: no-repeat;
}
.top_online .grid-container {
	max-width: 80rem;
}
.top_online_inner {
	display: flex;
	align-items: center;
}
.top_online_inner .text {
	flex-basis: 50%;
	order: 2;
}
.top_online_inner .image {
	flex-basis: 25%;
	order: 1;
	text-align: center;
}
.top_online_inner .image2 {
	flex-basis: 25%;
	order: 3;
	text-align: center;
}
@media print, screen and (max-width: 64.000em) {
	.top_mimg {
		height: 480px;
	}
	.top_mimg_en {
		width: 30%;
	}
	.top_mimg_text {
		width: 30%;
	}
	.top_mimg_pic {
		width: 45%;
		height: auto;
		top: 50%;
		transform: translateY(-50%);
	}
	.top_mimg_pic img {
		height: auto;
		width: 100%;
	}
}
@media print, screen and (max-width: 48.000em) {
	.top_mimg {
		height: 350px;
	}
	.top_mimg_en {
		width: 30%;
	}
	.top_mimg_text {
		width: 33%;
		left: 15%;
	}
	.top_mimg_pic {
		width: 48%;
		right: 5%;
	}
	.top_lead {
		font-size: 1.25rem;
	}
	.top_online {
		padding: 3.5rem 0;
	}
	.top_online_inner .text {
		flex-basis: 60%;
	}
	.top_online_inner .image {
		flex-basis: 20%;
	}
	.top_online_inner .image2 {
		flex-basis: 20%;
	}
}
@media print, screen and (max-width: 40.000em) {
	.top_mimg {
		height: calc(100vh - 134px);
	}
	.top_mimg_en {
		width: 60%;
		top: 8%;
	}
	.top_mimg_text {
		width: 75%;
		left: 20%;
		top: 20%;
		transform: translateX(-20%) translateY(-20%);
		-webkit-transform: translateX(-20%) translateY(-20%);
		-ms-transform: translateX(-20%) translateY(-20%);
	}
	.top_mimg_pic {
		width: 90%;
		right: 2%;
		top: 45%;
		transform: none;
	}
	.top_lead {
		font-size: 1.25rem;
	}
	.top_lead {
		font-size: 1rem;
		text-align: left;
		padding: 0 1rem;
	}
	.top_service_section, .top_news {
		display: block;
	}
	.top_service {
		padding: 3rem 0.65rem;
	}
	.top_service_section .image {
		margin-bottom: 1.5rem;
	}
	.top_service_section.reverse {
		margin-bottom: 3rem;
	}
	.top_news>div:first-child {
		margin-bottom: 3rem;
	}
	.top_news_list {
		max-height: 280px;
	}
	.top_news_list .image img {
		height: 80px;
	}
	.top_news_list .ttl {
		font-size: 0.875rem;
	}
	.top_news_btns a {
		padding: 1rem 0;
		font-size: 0.75rem;
	}
	.top_online_inner {
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.top_online_inner .text {
		order: 3;
		flex-basis: 100%;
		margin-top: 2rem;
	}
	.top_online_inner .image {
		flex-basis: 45%;
		order: 1;
		text-align: center;
	}
	.top_online_inner .image2 {
		flex-basis: 45%;
		order: 2;
		transform: scale(-1, 1);
	}
}
/*ãƒšãƒ¼ã‚¸ã‚¿ã‚¤ãƒˆãƒ«*/

.page_teazer {
	height: 480px;
	position: relative;
	background-repeat: no-repeat;
	z-index: -1;
	background-image: url(../img/teazer_base.jpg);
	background-size: cover;
	background-position: center center;
}
.page_teazer .text {
	position: absolute;
	z-index: 100;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.page_teazer h1 {
	font-size: 3rem;
	line-height: 1em;
	margin: 0;
	padding: 0.5rem 1rem;
	color: #fff;
	background: #1b9aeb;
	display: inline-block;
}
/*.page_teazer::after {
	content: '';
	width: 100%; 
	height: 100%;
	position: absolute;
	opacity: 0.25;
	background-image: linear-gradient(-45deg, #0d2252 25%, transparent 25%, transparent 50%, #0d2252 50%, #0d2252 75%, transparent 75%, transparent 100%), linear-gradient(45deg, #0d2252 25%, transparent 25%, transparent 50%, #0d2252 50%, #0d2252 75%, transparent 75%, transparent 100%);
	background-size: 4px 4px;
}*/

.page_teazer.company {
	/*background-image: url(../img/teazer_base.jpg);*/
	background-size: cover;
	background-position: center bottom;
}
.page_teazer.contact {
	/*background-image: url(../img/teazer_base.jpg);
	background-size: cover;
	background-color:#fff;
	background-position: center bottom;*/
}
.page_teazer.works {
	/*background-image: url(../img/teazer_base.jpg);
	background-position: center center;
	background-size: cover;*/
}
.page_teazer.service {
	/*background-image: url(../img/teazer_base.jpg);
	background-size: cover;
	background-position: left center;*/
}
.page_teazer.recruit {
	/*background-image: url(../img/teazer_base.jpg);
	background-size: cover;
	background-position: center center;*/
}
@media screen and (max-width: 48em) {
	.page_teazer {
		height: 300px;
	}
	.page_teazer h1 {
		font-size: 2.5rem;
	}
}
@media screen and (max-width: 40em) {
	.page_teazer .text {
		left: 50%;
		width: 90%;
		-webkit-transform: translateX(-50%) translateY(-50%);
		transform: translateX(-50%) translateY(-50%);
	}
	.page_teazer h1 {
		font-size: 2rem;
		padding: 0.65rem;
	}
}
/*äº‹æ¥­å†…å®¹*/
.service_anchor {
	z-index:100;
	position:relative;
	display:flex;
	flex-wrap:wrap;
}
.service_anchor li{
	margin:1rem 1rem 1.5rem 0;
}
.service_anchor a{
	background-color: #f17d8c;
color: #fff;padding: 0.65rem 1rem;
font-size: 0.875rem;
}


.service_sectionWrap {
	padding-top:12rem;
	margin-top:-4rem;
	
}
#service01 {
	position:relative;
	z-index:-1;
	margin-top:0;
	padding-top:80px;
	
}
.service_section {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}
.service_section .image {
	flex-basis: 47.5%;
}
.service_section .text {
	flex-basis: 47.5%;
	margin-top: -0.5rem;
}
@media screen and (max-width: 48em) {

}
@media screen and (max-width: 40em) {
	.service_section {
	display: block;
}
.service_section .image {
	margin-bottom: 2rem;
}
}
/*ä¼šç¤¾æ¦‚è¦*/

.company_tablewrap {
	background: #fff;
	padding: 4rem;
	border: solid 1px #eee;
}
.company_table th, .company_table td {
	border-bottom: solid 1px #ccc;
	padding: 1.25rem;
}
.company_table th {
	width: 20%;
	text-align: left;
	font-size: 0.9375rem;
}
.company_table p:last-child {
	margin-bottom: 0;
}
@media screen and (max-width: 40em) {
	.company_tablewrap {
		padding: 2rem;
	}
	.company_table th, .company_table td {
		padding: 0.65rem 1rem;
		font-size: 0.875rem;
		display: block;
		width: 100%;
		border: none;
	}
	.company_table th {
		background: #f5f5f5;
	}
}
/*ãŠå•ã„åˆã‚ã›*/

.contact_tel {
	background: #fff5f6;
	padding: 3rem 1rem;
	text-align: center;
	font-weight: 500;
	font-size: 1.5rem;
	border-radius: 0.65rem;
	margin-bottom: 4rem;
}
.contact_tel a {
	display: block;
	margin-top: 1rem;
	font-size: 2rem;
	color: #f17d8c;
}
.contact_form th, .contact_form td {
	width: 100%;
	display: block;
	padding: 0;
	border: none;
}
.contact_form th {
	font-size: 1rem;
	padding: 0.75rem 0 0.75rem;
}
.contact_form td {
	padding-bottom: 1.5rem;
}
.contact_form th small {
	display: inline-block;
	background: #4f9ee8;
	color: #fff;
	border-radius: 0.25rem;
	margin-left: 1rem;
	padding: 0.15rem 1rem;
}
.contact_btns .button {
	display: inline-block;
}
.privacy {
	background: #fff5f6;
	padding: 3rem 4rem;
	margin-bottom: 5rem;
	border-radius: 0.65rem;
}
.privacy .inner {
	height: 400px;
	overflow-y: scroll;
}
.privacy .inner dl dd {
	margin-bottom: 2rem;
	font-size: 0.875rem;
}
@media screen and (max-width: 48em) {
	.contact_tel {
		padding: 2rem 1rem;
	}
	.contact_tel a {
		font-size: 9vw;
	}
}
@media screen and (max-width: 40em) {
	.contact_form th, .contact_form td {
		width: 100%;
		display: block;
	}
	.privacy {
		padding: 1.5rem 2rem;
		margin-bottom: 3rem;
	}
}
/*ãƒ–ãƒ­ã‚°*/

.blog_post {
	overflow: hidden;
	padding-bottom: 3.5rem;
	margin-bottom: 3.5rem;
	border-bottom: solid 1px #fbe6ef;
}
.blog_thumb {
	width: 35%;
	margin: 0 5% 1rem 0;
	float: left;
}
.blog_post h2 {
	font-size: 1.25rem;
	margin-top: 0.5rem;
}
.blog_post .category {
	background: #ef9aa4;
	color: #fff;
	border-radius: 0.25rem;
	display: inline-block;
	font-size: 0.875rem;
	padding: 0.15rem 1rem;
}
.blog_post .date {
	float: right;
	color: #62a5ea;
}
.blog_post .button {
	float: right;
}
.blog_sidebar section {
	margin-bottom: 3.5rem;
}
.blog_post_title {
	font-weight: 600;
	font-size: 2rem;
	margin-bottom: 1.5rem;
}
.blog_sidebar .widget-title {
	font-size: 1.125rem;
	font-family: Comfortaa, Century Gothic, "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
	padding: 1em;
	margin-bottom: 0.65rem;
	background: #fbe6ef;
	color: #ef9aa4;
	border-radius: 0.25rem;
}
.blog_sidebar ul li {
	list-style-type: disc;
	list-style-position: inside;
	font-size: 0.875rem;
}
.blog_sidebar .wp-calendar-table th, .blog_sidebar .wp-calendar-table td {
	padding: 0.15rem 0.25rem;
	font-size: 0.875rem;
	text-align: center;
}
.blog_sidebar .wp-calendar-table th {
	background: #f8faec;
}
@media screen and (max-width: 40em) {
	.blog_thumb {
		width: 30%;
		margin: 0 3% 1rem 0;
	}
	.blog_post h2 {
		font-size: 1rem;
	}
	.blog_post p {
		font-size: 0.75rem;
		margin-bottom: 1rem;
		overflow: auto;
	}
}
.shop_btns {
	display: flex;
	justify-content: flex-end;
	margin-bottom: 3rem;
}
.shop_btns .button {
	margin-left: 1.5rem;
}
.shop_list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.shop_list::after {
display: block;
content:"";
width: 31%;
}
.shop_item {
	flex-basis: 31%;
	margin-bottom:1.5rem;
}
.shop_item .thumb img {
	object-fit: cover;
	width: 100%;
	height: 220px;
}
.shop_item .thumb {
	margin-bottom: 1rem;
}
.shop_item .price {
	text-align: right;
	font-size: 1rem;
}
.shop_item .button {
	max-width: 100%;
}
.shop_detail {
	overflow: hidden;
	clear: both;
}
.shop_detail #itempage .itemimg {
	float: left;
	width: 47%;
}
.shop_detail #itempage .exp, .shop_detail #itempage .skuform {
	float: right;
	width: 47%;
}
.shop_detail #itempage .skuform{
	clear: inline-end;
}
.shop_detail #itempage h3 {
	display: none !important;
}
.shop_detail #itempage .field_name {
	font-size: 1.25rem;
}
.shop_detail #itempage .field {
	padding: 0.5rem 0;
	margin: 0 0 1.25rem;
}
.shop_detail #itempage .skuform .skuquantity {
	padding: 0.5rem 0;
	border-radius: 0;
	width: 3em;
	text-align: center;
	display: inline;
}
.shop_detail #itempage .skuform .skubutton {
	display: block;
	position: relative;
	padding: 0.65rem 1rem;
	background-color: #f17d8c;
	color: #fff;
	width: 100%;
	max-width: 300px;
	border: 1px solid #f17d8c;
	font-size: 15px;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
	transition: 0.5s;
	font-weight: 600;
	margin-top: 1.5rem;
}
.shop_detail #itempage .skuform .skubutton ::after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 1em;
	width: 16px;
	background-image: url(../img/icon_arrow.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
	height: 16px;
	content: "";
}
.shop_detail #itempage .field .field_price {
  color: #f17d8c;
}
#cart input.quantity {
	width: 40px;
	text-align: center;
	font-size: 13px;
	padding: 0.5rem;
	border-radius: 0;
}
#inside-cart input[type="submit"], #inside-cart input[type="button"], #inside-cart input[type="text"], #inside-cart input[type="number"], #inside-cart input[type="email"], #inside-cart input[type="tel"] {
	padding: 6px 10px;
	font-size: 14px;
}
@media screen and (max-width: 48em) {
	.shop_item .thumb img {
		height: 180px;
	}
}
@media screen and (max-width: 40em) {
	.shop_btns {
		display: block;
	}
	.shop_btns .button {
		margin: 1rem auto;
		display: block;
	}
	.shop_list {
		display: block;
	}
	.shop_item .thumb img {
		height: 220px;
	}
	.shop_item {
		margin: 0rem 0.5rem 2.5rem;
	}
	.shop_detail #itempage .itemimg, .shop_detail #itempage .exp, .shop_detail #itempage .skuform {
		float: none;
		width: 100%;
	}
}