@charset "UTF-8";

/*
Theme Name: apteq_original
Theme URI: http://underscores.me/
Author: apteq.co.jp
Author URI: http://apteq.co.jp
Description: apteq original theme
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: apteq_original
Tags:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

apteq_original is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body {
	margin: 0;
}

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

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}
.red{color: #ff000;}
small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

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

td,
th {
	padding: 0;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color: #454545;/*#202020;*//*#404040;*/
	font-family: sans-serif;
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 0.9375rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: #fff; /* Fallback for when there is no custom background color defined. */
}

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

blockquote,
q {
	quotes: "" "";
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	/* margin: 0 0 1.5em 3em; */
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

figure {
	margin: 1em 0; /* Extra wide images within figure tags don't overflow the content area. */
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, .8);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 1;
	padding: .6em 1em .4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus,
button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

select {
	border: 1px solid #ccc;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: #454545;/*royalblue;*/
	text-decoration: none;
}

a:visited {
	/*color: purple;*/
	/*color: #fff353;*/
}

a:hover,
a:focus,
a:active {
	color: midnightblue;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/*--------------------------------------------------------------
## Navi
--------------------------------------------------------------*/
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
	overflow: hidden;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	text-align: right;
	width: 50%;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after {
	content: "";
	display: table;
	table-layout: fixed;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 1.5em;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
.sticky {
	display: block;
}

.hentry {
	margin: 0 0 1.5em;
}

.byline,
.updated:not(.published) {
	display: none;
}

.single .byline,
.group-blog .byline {
	display: inline;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/*--------------------------------------------------------------
# Infinite scroll
--------------------------------------------------------------*/
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

/***********************追加********************/
/* fonts */
html {
	font-size: 14px;
}
body {
  /*font-family: "Lucida Grande", "Lucida Sans Unicode", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Helvetica, Arial, Verdana, sans-serif;*/
  font-family: "Mplus 1p"/*, "Sawarabi Mincho", "UD Shin Go Conde90 L", "Jun 201",Ryumin Regular KL*/, sans-serif;
  /*font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, sans-serif;*/
  font-weight: normal;
  font-size: 14px;
}

h1, h2 {
  font-weight: normal;
}

p, .big, table {
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo,  sans-serif;
}
.big {
	font-size: 125%;
}

html,
body {
  width: 100%;
  height: 100%;
}

body {
  letter-spacing: 0.8px;
  font-size: 16px;
  line-height: 1.778;
  color: #222;
  margin: 0;
  /*word-wrap: break-word;*/
}
a:hover, a:focus, a:active {
    color: inherit;
}
table {
	width: 90%;
	margin: 0 auto;
}
caption {
	font-size: 1.2em;
	font-weight: 600;
}
td {
    padding: 0.5em;
	border-color: #b5e568;
	width: 50%;
}

#main {
	overflow: hidden;
	width: 100%;
	background-color: #ffffff;
	z-index: 1;
	position: relative;
}
.wrap {
	width: 96%;
	max-width: 960px;
	margin: 0 auto;
}
.t-alignleft {
	text-align: left;
}
.t-alignright {
	text-align: right;
}
.t-aligncenter {
	text-align: center;
}
.flexbox {
	display: flex;
}
/* text color */
.t-orange {
	color: #d16b16/*#d78114*/;
}
.t-blue {
	color: #65ace4/*#7fc2ef*/;
}
.t-green {
	color: #56a764/*#65ace4/*#7fc2ef*/;
}
.t-pink {
	color: #cc528b;
}
.s-yellow {
	text-shadow: 2px 2px 2px #f9e697, 2px -2px 2px #f9e697,-2px 2px 2px #f9e697,-2px -2px 2px #f9e697;
}
.s-pink {
	text-shadow: 2px 2px 2px #d685b0, 2px -2px 2px #d685b0,-2px 2px 2px #d685b0,-2px -2px 2px #d685b0;
}
.s-white {
	text-shadow: 2px 2px 2px #ffffff, 2px -2px 2px #ffffff,-2px 2px 2px #ffffff,-2px -2px 2px #ffffff;
}
/* text size */
.lead {
	font-size: 2em;
	line-height: 1.4em;
}

/* header */
header#header {
	height: 55px;
	/*background-color: #ffffff;*/
	z-index: 2;
}
.home header {
	top: calc(75vw - 1em);
}
#header {
	box-shadow: 0 3px 3px rgba(0,0,0,.2);
	position: relative;
	z-index: 1;
	/*background: linear-gradient(to top, rgba(226, 178, 192, 1*//*0.5*//*), #ffffff);*/
	background: linear-gradient(to top, rgba(222, 150, 16, 1), #ffffff);
}
.logo{
	position: absolute;
	top: 5px;
	left: 10px;
	background-size: contain;
}
.logo img {
	width: auto;
	height: 60px;
	border: #ffffff solid 1px;
}
.logo a {
	color: #d16b16/*#cc528b/*#fff353*/;
	font-size: 180%;
	display: block;
	text-shadow: 1px 1px 1px #f9e697, 1px -1px 1px #f9e697,-1px 1px 1px #f9e697,-1px -1px 1px #f9e697,1px 1px 5px #fff64d, 1px -1px 5px #fff64d,-1px 1px 5px #fff64d,-1px -1px 5px #fff64d;
}
.sticky .logo {
  height: 60px;
}
/* navi */
.main-nav {
	float: right;
	position: relative;
	z-index: 10;
	margin: 0;
	padding: 1em;
	/*width: 70px;*/
	font-size: 88%;
}
.main-nav ul {
	margin-left: 0;
}

.main-nav li {
	display: inline-block;
	margin: 1.5em 0;
}
.main-nav a {
	text-decoration: none;
	color: #d16b16/*#cc528b/*#fff353*/;
	font-size: 110%;
	letter-spacing: -1px;
	display: block;
	text-shadow: 1px 1px 1px #f9e697, 1px -1px 1px #f9e697,-1px 1px 1px #f9e697,-1px -1px 1px #f9e697;
}
.nav-container.sticky {
	-webkit-transform: translate3d(0,195px,0);
    transform: translate3d(0,195px,0);
}
.inner-nav {
    width: 100%;
    height: 55px;
    position: fixed;
    top: -196px;
    left: 0;
    background-color: #de9610/*#fdcd4e/*#fff001/*#f9e697/*#fff353*/;
    box-shadow: 0 3px 3px rgba(253,205,78,0.6)/*(0,0,0,.2)*/;
    transition: -webkit-transform .4s ease-in-out;
    transition: transform .4s ease-in-out;
	z-index: 10;
}
.inner-nav {
	opacity: 1;
}

.inner-nav a {
	color: #FFFFFF;
	/*text-shadow: 1px 1px 2px #f1a5a5;*/
	text-shadow: 1px 1px 1px #f2cf01, 1px -1px 1px #f2cf01,-1px 1px 1px #f2cf01,-1px -1px 1px #f2cf01;
}
#right-menu, #right-menu2 {
    font-weight: 500;
}
#primary-menu, #primary-menu2 {
	margin: 0 0 0 3em;
}
#primary-menu li ul, #primary-menu2 li ul {
	display: none;
/*	padding: 0;
	margin: 0;*/
}
.main-nav .sub-title, .inner-nav .sub-title {
	display: none;
}
.sidr {
    font-family: "Mplus 1p", sans-serif;
    background: #de9610/*#e2b2c0*/;
   /* box-shadow: none; */
}
.sidr ul li a, .sidr ul li span {
	color: #ffffff;
	text-shadow: none;
}

#sidr-left2.sidr.left {
	    height: 100vh;
}
.sidr-left2-open #left-menu2 {
	margin-left: 210px;
}
#sidr-right2.sidr.right {
	    height: 100vh;
}
.sidr-right2-open .inner-nav .logo {
	display: none;
}
.sidr-right2-open .main-nav {
	margin-right: 240px/*210px*/;
}
.sidr-right2-open .main-nav a {
	/*text-shadow: none;*/
}
.sidr-right2-open #right-menu2 {
	/*margin-right: 210px;*/
}
/* menu */
#primary-menu, #primary-menu2 {
	margin: 0;
}
#primary-menu li ul, #primary-menu2 li ul {
    display: block;
	position: relative;
	z-index: 0;
	top: 0;
	padding-left: 10px;
	margin: 0;
	perspective: inherit; 
	visibility: visible;
}
#primary-menu li ul li, #primary-menu2 li ul li {
	transform: none;
}
#primary-menu li ul li a, #primary-menu2 li ul li a {
    padding: 0 0 0 2em;
    background: none;
    text-align: left;
}

/* menu dots */
.sidr ul li, #primary-menu li, #primary-menu2 li {
	position: relative;
}
.sidr ul li a, #primary-menu li a, #primary-menu2 li a {
	padding-left: 2em;
}
.sidr ul li a, #primary-menu li a, #primary-menu2 li a {
	display: none;
	opacity: 0;
}
.sidr-open .sidr ul li a, .sidr-open #primary-menu li a, .sidr-open #primary-menu2 li a {
	display: block;
	opacity: 1;
}
.sidr ul li a::before, #primary-menu li a::before, #primary-menu2 li a::before {
    content: "";
    position: absolute;
    width: 1em;
    height: 1em;
    border-radius: 50%;
    top: 48%;
    /*border: dashed 1px white;*/
    left: 0.8em;
    -moz-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: -1;	
}
.dot_pink a::before {
	background: #f1a5a5;
}
.dot_yellow a::before {
	background: #fff64d;
}
.dot_blue a::before {
	background: #95e0f5;
}
.dot_purple a::before {
	background: #f0d0f8;
}
.dot_green a::before {
	background: #b5e568;
}
/* loader */
#loader-background{
  display:none;
  position:fixed;
  z-index: 5;
  width:100%;
  height:100%;
  background-color: #de9610/*#e2b2c0*/;
  /*background: -webkit-radial-gradient(center, ellipse cover, #fff353 1%,#ffffff 100%);
  background: -moz-radial-gradient(center, ellipse cover, #fff353 1%,#ffffff 100%);
  background: -ie-radial-gradient(center, ellipse cover, #fff353 1%,#ffffff 100%);*/
}

#logocontainer{
  display:none;
  position:fixed;
  z-index: 5;
  top: 50%;
  left:50%;
  width:300px;
  height:100px;
  margin-left:-150px;
  margin-top:-50px;

  overflow:hidden;
  transition:background-color 500ms;
  /*cursor:pointer;*/
}

#loaderlogo {
  display: none;
  /*position: absolute;
  left: 2vh;
  top: 2vh;*/
  width: auto/*30vh*/;
  height: 100px/*30vh*/;
  /*background: #34324b;
  background: -moz-linear-gradient(-45deg, #34324b 0%, #161222 100%);
  background: -webkit-linear-gradient(-45deg, #34324b 0%,#161222 100%);
  background: linear-gradient(135deg, #34324b 0%,#161222 100%);*/
  background-size: contain;
  font-size: 1.4em/*2em*//*20vh*/;
  font-weight: 400/*bold*/;
  color: #ffffff/*#3ebffa*/;
  text-align: center;
  margin-top: 10px;
  font-family: "Mplus 1p"; 
}

.loader{
  display:block;
  position:absolute;
  background-color: #de9610/*#e2b2c0*/;
}

/*Pretty complex animation, so each side needs its own @keyframes.*/

@keyframes slide1{
  50%{width:320px; margin-left:0;}
  100%{margin-left:320px;}
}

@keyframes slide2{
  50%{height:100px; margin-top:0;}
  100%{margin-top:100px;}
}

@keyframes slide3{
  50%{width:320px; margin-right:0;}
  100%{margin-right:320px;}
}

@keyframes slide4{
  50%{height:100px; margin-bottom:0}
  100%{margin-bottom:100px;}
}

/*** loader ***/
#loader{
	/*border: solid;  /*to test position*/
  display: none;
  width: 170px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -10px -85px;
  z-index: 5;
}

#loader div{
  height: 20px;
  width: 20px;
  background: white;
  border-radius: 50%;
  position: absolute;
  -webkit-animation: animate 1.4s ease infinite;
}


#loader div:nth-child(2) {
  transform: translateX(30px);
  -webkit-transform: translateX(30px);
  -webkit-animation-delay: .08s;
}

#loader div:nth-child(3) {
  transform: translateX(60px);
  -webkit-transform: translateX(60px);
  -webkit-animation-delay: .16s;
}

#loader div:nth-child(4) {
  transform:translateX(90px);
  -webkit-transform: translateX(90px);
  -webkit-animation-delay: .24s;
}

#loader div:nth-child(5) {
  transform: translateX(120px);
  -webkit-transform: translateX(120px);
  -webkit-animation-delay: .32s;
}

#loader div:nth-child(6) {
  transform: translateX(150px);
  -webkit-transform: translateX(150px);
  -webkit-animation-delay: .40s;
}

#loaderlogo {
	margin: 40px -40px 0;
}

@-webkit-keyframes animate {
  0%{left: 0px; top: 0px;}
  5%{left: -2px; top: 4px; width: 24px; height: 16px; -webkit-filter: blur(0.1px);}
  10%{left: -1px; top: 4px; width: 22px; height: 18px; -webkit-filter: blur(0.1px);} 
  /*halfway up*/
  15%{left: 1px; top: -17px; width: 18px; height: 22px; -webkit-filter: blur(0.3px);} 
  /*top*/
  22%{left: 0px; top: -34px; width: 20px; height: 20px; -webkit-filter: blur(0.2px);} 
  /*halfway down*/
  29%{left: 1px; top: -17px; width: 18px; height: 22px; -webkit-filter: blur(0.3px);} 
  /*bottom*/
  34%{left: 1px; top: 0px;  width: 18px; height: 22px; -webkit-filter: blur(0.2px);}
  /*elastic bottom*/
  40%{left: -1px; top: 4px; width: 22px; height: 18px; -webkit-filter: blur(0.1px);} 
  /*end*/
  43%{left: 0px; top: 0px; width: 20px; height: 20px;-webkit-filter: blur(0px)} 
  100%{left: 0px; top: 0px;}
}

/* main画像 */
#main-img {
  overflow: hidden;
  text-align: center;
  height: 75vw;
  position: relative;
}
#bg-hack {
  z-index: 0;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.main-bg {
	height: 100vh;
	width: auto;
	max-width: none;
	background-image: url('img/mainbg.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.scrolldown {
	width: 40px;
	height: 40px;
	background-size: contain;
	background-image: url('img/down.png');
	position: absolute;
	bottom: 10vh;
	left: calc(50% - 32px);
	z-index: 1;	
}
/* message */
#message {
	padding: 2em 1em 2em;
	background: url('img/dots.png') repeat;
	text-align: left;
}
#message .innerbox {
	background-color: rgba(255,255,255,0.7);
	padding-top: 2em;
}
#message .big {
	font-family: "Mplus 1p";
	font-size: 105%;
}

/* topcontent */
#topcontent {
	background-color: #ffffff;
	text-align: center;
	padding: 3em 2em 0;
}
#topcontent h2 {
	margin: 0.2em;
}
.line {
	margin: 0 5vw 1em;
}
#topcontent h3 {
	font-size: 120%;
	font-weight: bold;
}

/*************/
#topcontent {
	height: auto;
	overflow: hidden; 
}
.topbox {
	/* width: 30vw; */
	float: left;
	overflow: hidden;
	/* margin: 1%; */
	position: relative;
	text-align: center;
}
.topbox_inner {
	position: relative;
	max-width: 426px; /* 暫定？ */
	margin: 0 auto;
}
.topbox_title {
    width: 100%;
	margin-top: 42%;
	position: absolute;
	background-color: rgba(255,255,255,0.8);
}
.topbox img {
    border-radius: 50%;
    border: 6px solid #f2cf01/*#e2b2c0/*#de9610/*#fff353*/;
	width: 100%;
}
.topbox_content {
    text-align: center;
    width: 100%;
    /* padding: 0 20%; */
}
.topbox_content p {
    font-family: "Mplus 1p";
    margin-top: 0;
}


/* calender news */
#news .widget-title {
	font-size: 2em;
}
#calender {
	background: url('img/dots.png') repeat;
}
.calender_inner, .news_inner {
	max-width: 1030px;
	margin: 0 auto;
	padding: 5em 2em;	
}
.calender_inner {
	background-color: rgba(255, 255, 255, 0.7);
}
.fc-view-container {
    pointer-events: none;
}
#news {
	background-color: #fffde8;
}
 #news .widget-title {
	text-shadow: 2px 2px 2px #f9e697, 2px -2px 2px #f9e697,-2px 2px 2px #f9e697,-2px -2px 2px #f9e697;
	color: #56a764/*#65ace4*/;
	margin: 0 auto;
}
#news ul {
  background: #ffffff/*#fffde8*/;
  box-shadow: 0px 0px 0px 10px #ffffff/*#fffde8*/;/*線の外側*/
  border: dashed 2px #ffb03f;/*破線*/
  border-radius: 9px;
  margin-left: 5px;/*はみ出ないように調整*/
  margin-right: 5px;/*はみ出ないように調整*/
  padding: 1em 0.5em 0.5em 1em;
}
#news ul li {
  line-height: 1.5;
  /*padding: 0.5em 0;*/
  list-style: none;
  text-align: left;
}

.hospital-info {
	background-image: url('img/dots.png');
	position: relative;
}
.home .hospital-info .innerbox-bg {
	background-color: #ffffff;
}
.innerbox-bg {
	background-color: rgba(255,255,255,0.7);
}
.innerbox {
	padding: 2em 1em;
	display: inline-block;
	width: 100%;
	max-width: 1080px;
}
.hospital-info h2 {
    margin-bottom: 0.2em;
}
.line {
	/*width: 60%;*/
	height: 2px;
	background-color: #fdcd4e/*#de9610/*#eac7cd*/;
	margin: 0 20vw 1em;
	position: relative;
	/*left: -80vw;*/
	-ms-transition: all 1s;
	-webkit-transition: all 1s;
	transition: all 1s;
 	/*-webkit-transform: translate(0, 0);*/
 	/*opacity: 0;*/
	-ms-transform:translateX(-80vw);
	-webkit-transform:translateX(-80vw);
	transform:translateX(-80vw);
}
.lineIn {
  	/*opacity: 1;*/
	-ms-transform:translateX(0);
	-webkit-transform:translateX(0);
	transform:translateX(0);
}

/* footer menu */
#footermenu {
	background-color: #fdcd4e/*#de9610/*#e2b2c0*/;
	text-align: left;
	padding: 2em;
	font-size: 80%;
	font-weight: 400;
}
#footermenu ul {
	margin-bottom: 0;
	list-style: none;
}
#footermenu a {
	text-decoration: none;
}
#footermenu .sub-title {
	display: none;
}
/* footer */
footer {
	background-color: #de9610/*#fdcd4e/*#fff001/*#f9e697/*#fff353*/;
	text-align: center;
	position: relative;
}
.site-info {
	font-size: 80%;
}

/* pages */
#content {
	margin-top: -55px;
}
.pages {
	margin-bottom: 1.5em;
}
.pages ul {
	font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo,  sans-serif;
}
.topimg {
    height: 100px;
	background: url('img/dots.png') repeat;
	background-size: cover;
	background-attachment: scroll;
}
.pages .entry-header {
	height: auto;
}
.pages .pagetitle {
	font-size: 150%;
	padding: 20px 1em;
	position: absolute;
	top: 0;
	background-color: rgba(255,255,255, 0.7)/*rgba( 204,219,245 , 0.6 )*/;
	color: #ffffff;
	text-shadow: 1px 1px 2px #000000;
}
	
.description {
	width: 90%;
	margin: 1em 5%;
}
.sec {
	margin-bottom: 3em;
}
.sec p {
	margin: 0 1.5em 1em;
}
.pages .sub-title {
    color: #c4c4c4;
    font-size: 60%;
    line-height: 1em;
    font-weight: 200;
}
.pages h3, #secondary .widget-title {
	padding-left: 40px;
	font-size: 1.5em;
	font-weight: normal;
	position: relative;
}
.pages h3::before, .pages h3::after, #secondary .widget-title::before, #secondary .widget-title::after {
	content: "";
	position: absolute;
	border-radius: 50%;
	line-height: 0;	
	display: block;	
	overflow: hidden;
}
.pages h3::before, #secondary .widget-title::before {
	top: .4em;
	left: .1em;
	z-index: 2;
	width: 25px;
	height: 25px;
	background: #fdcd4e;
}
.pages h3::after, #secondary .widget-title::after {
	top: .8em;
	left: .4em;
	width: 20px;	
	height: 20px;	
	background: #fff64d;	
	bottom: -1px;
}
.pages h4 {
	margin: 2em auto 0;
}
#secondary span.post-date, .archivelist span.post-date, #news span.post-date {
    margin-left: 1em;
    font-size: 80%;
}
#secondary span.post-date:before, .archivelist span.post-date:before {
    content: '(';
}
#secondary span.post-date:after, .archivelist span.post-date:after {
    content: ')';
}
#secondary li a, .archivelist li a {
    font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo,  sans-serif;
}

.pages #contactus {
	display: block;
}

.dottedline {
    border-top: dotted 1px #c0c0c0;
    padding-top: 1em;
}
.price h3 {
	margin-bottom: 0.5em;
}
.staff img {
	max-width: 360px;
	width: 80%;
	margin-bottom: 1em;
}

#hospital .under_dots {
	overflow: hidden;
}
#hospital img {
	border-radius: 5%;
	border: 6px solid #f2cf01;
}



/* blog */
#reply-title, .widget-title {
    font-size: 1.3em;
    margin-bottom: 0;
	paddng-left: 30px;
}
#reply-title::before, #secondary .widget-title::before {
	background-color: #b5e568;
	width: 20px;
	height: 20px;
}
#reply-title::after, #secondary .widget-title::after {
	width: 15px;
	height: 15px;
}
#commentform {
	width: 80%;
	margin: 0 auto;
}
#author, #email {
	max-width: 250px;
}
.archivetitle, .archivepage article, .p_n_links, .under_dots {
	border-bottom: 6px dotted #fff64d;
}
.archivetitle {
	font-size: 1.5em;
} 
.p_n_links {
	height: auto;
	overflow: hidden;
}
.under_dots {
	margin-bottom: 2em;
}
/* widget */
.search-form {
	width: 80%;
	margin-left: 3em;
}
.search-field {
	width: 100%;
}

.wpcf7-form-control-wrap.your-name input,
.wpcf7-form-control-wrap.your-email input,
.wpcf7-form-control-wrap.your-subject input {
	width: 100%;
}
/* slide */
.slide-text {
	font-size: 12px;
}
.slide-100vh {
	height: 100vh!important;
}

/*イベント紹介*/
table#event-info{ width: 100%; height: auto; line-height: 1em; border-collapse: collapse; border: 1px;text-align: center;margin-top:30px; }
table#event-info th{height: 4em; font-weight: bold; font-size: 1.1em; background-color: #ffcc00;line-height:1em;border: 1px #FFFFFF solid;}
table#event-info td{height: 4em; font-weight: 300; font-size: 1em; background-color: #FFFF99;padding: 2%;width: 15%;border: 1px #FFFFFF solid;}
table#event-info .event_2week td{background-color: #FFFCE2;}
/* chrome safari opera */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
table#event-info{ width: 100%; height: auto; line-height: 1em; border-collapse: collapse; border: 1px;text-align: center;margin-top:30px; }
table#event-info th{height: 4em; font-weight: bold; font-size: 1.1em; background-color: #ffcc00;line-height:1em;border: 1px #FFFFFF solid;}
table#event-info td{height: 4em; font-weight: 300; font-size: 1em; background-color: #FFFF99;padding: 2%;width: 15%;border: 1px #FFFFFF solid;}
table#event-info .event_2week td{background-color: #FFFCE2;}
}

/* naturalbirth */
img.round {
	border-radius: 50%;
	padding: 1rem;
}
/* care */
.care_mokuji {
	padding-bottom: 1.5em;
}
.care_mokuji a {
	margin-top: 1em;
}
.care_mokuji .big {
	font-size: 120%;
}
#itaku, #jihi {
    margin-top: -55px;
    padding-top: 55px;
}
h2.care_title {
    margin: 4rem auto 0.5rem;
    position: relative;
    font-size: 2em;
    text-shadow: 1px 1px 5px pink,-1px -1px 5px pink,1px -1px 5px pink, -1px 1px 5px pink;
}
h2.care_title:before {
    width: 80px;
    height: 80px;
    content: '';
    display: block;
    position: absolute;
    background-color: pink;
    border-radius: 50%;
    z-index: -1;
    top: -1.5rem;
    left: -3rem;
}
.itaku_price {
	line-height: 2;
	margin: 0 auto 3rem;
}
.itaku_price_title {
    cursor: pointer;
    background: lemonchiffon;
    border: 3px solid steelblue;
    border-radius: 1rem;
    text-align: center;
    color: steelblue;
    font-size: 1.5rem;
   /* font-weight: bold;*/
    max-width: 600px;
    margin: auto;
	padding-top: 5px;
	position: relative;
}
.itaku_price_title::before {
  display: block;
  content: "";
  box-sizing: border-box;
  position: absolute;
  top: calc(50% - 6px);
  right: 16px;
  width: 6px;
  height: 6px;
  border: 6px solid transparent;
  border-left: 6px solid steelblue;
  transition: all 0.4s ease-out;
  transform-origin: 3px 6px;
  transform: rotate(90deg);
}
.itaku_price_title.active::before {
  transform: rotate(-90deg);
}
.itaku_price_title:hover {
	opacity: 0.8;
}
.itaku_price_title:first-child {
	margin-top: 0;
}
.itaku_price_content {
	display: none;
	/*border: 1px solid #F9B2ED;*/
	margin: 1rem 0 0;
	padding: 16px;
}
.itaku_price_content td, .itaku_price_content th {
	border: solid 1px #F9B2ED;
	text-align: left;
	padding: 0.5rem;
	font-weight: normal;
	line-height: 1.5;
}
.itaku_table1, .itaku_table2 {
	width: 100%;
	max-width: 830px;
}
.itaku_price_content .itaku_table1 td, .itaku_price_content .itaku_table2 td {
	display: block;
	width: 100%;
}
.itaku_price_content .itaku_table1 tr:first-of-type {
	display: none;
}
.itaku_price_content caption {
	text-align: left;
	font-weight: normal;
}
.itaku_price_content .itaku_table2 th {
	width: 30%;
	min-width: 120px;
}
.care_itaku  > .flexbox, .care_schedule > .flexbox {
    flex-direction: column;
}
.care_itaku  > .flexbox p:first-child, .care_schedule > .flexbox p:first-child {
    margin: 1em 1em 0;
}
.care_itaku  > .flexbox p:first-child, .care_schedule > .flexbox p:first-child {
    margin: 1em 1em 0;
}
.borderbox {
    border: 3px solid steelblue;
    padding: 1rem;
    border-radius: 1rem;
}
.care_price img {
    float: right;
}
.care_riyou > div {
	position: relative;
}
.care_riyou > div:before {
	content: '';
	display: block;
    position: absolute;
    z-index: -1;
    left: 10%;
	top: 0;
    background-color: lavender;
    width: 80%;
    height: 100%;
    border-radius: 50%;
}
.care_prepare ul {
	margin: 0 0 0.5em 1em
}
.borderbox h4 {
	margin-top: 0;
}
.care_prepare .borderbox {
    padding: 1rem 1.2rem;
    margin-bottom: 1rem;
    background-color: lemonchiffon;
    border-color: orange;
    border-width: 5px;
}
/* staff */
.staff .big {
	font-size: 1.1em;
}


@media all and (orientation: portrait) {
	
}
@media all and (orientation: landscape) {

}


@media all and (min-width: 768px) {
ul,
ol {
	margin: 0 0 1.5em 3em;
}
.lead {
    font-size: 2.5em;
}
header#header, .inner-nav, .main-nav {
    height: 70px;
}
.home header {
	top: 75vw;
}
.logo{
	position: absolute;
	top: 0.8em;
	left: 0.8em;
}
.main-nav {
    padding: 1.5em;
}
#sidr-right .sidr ul li a, #sidr-right #primary-menu li a, #sidr-right #primary-menu2 li a,
#sidr-right2 #primary-menu li a, #sidr-right2 #primary-menu2 li a {
	display: block;
	opacity: 1;
}

/* top */
#message {
	padding: 5em 2em 3em;
	text-align: center;
}
#message .big {
	font-size: 130%;
}
.box1, .box3, .box5, .box2, .box4, .box6 {
	/*height: auto;*/
}
.box2 {
	margin-top: 150px;
}
.box4, .box6 {
	margin-top: 50px;
}
.box3, .box5, .box7 {
	margin-top: -100px;
}
.topbox_title {
    font-size: 120%;
}
.topbox_content p {
    font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo,  sans-serif;
}
#news .widget-title {
	font-size: 2.5em;
}
#news ul {
  margin-left: 10px;/*はみ出ないように調整*/
  margin-right: 10px;/*はみ出ないように調整*/
  padding: 1em 0.5em 0.5em 2em;
}
#news li a {
    font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo,  sans-serif;
}
/* pages */
.topimg {
	height: 150px;
	background-size: auto;
}
.pages .pagetitle {
	font-size: 200%;
	padding: 30px 1em;
}
.archivetitle {
	font-size: 2em;
}
.hbox:nth-child(even) {
	margin-top: 8em;
}

table#event-info td{min-height: 4em; height:auto;}

.itaku_price_title {
    font-size: 1.8rem;
}
.itaku_price_content .itaku_table1 tr:first-of-type {
	display: table-row;
}
.itaku_price_content .itaku_table1 th, .itaku_price_content .itaku_table1 td {
	width: 25%;
	display: table-cell;
}
.itaku_price_content .itaku_table2 td {
	display: table-cell;
}
.itaku_price_content .itaku_table2 td:first-of-type {
	width: 20%;
}
.care_itaku > .flexbox, .care_schedule > .flexbox {
    flex-direction: row;
}
.care_itaku > .flexbox p:first-child {
    width: 150px;
	flex-shrink: 0;
	margin: 0 0 1em 1em;
}
.care_schedule > .flexbox p:first-child {
    width: 100px;
	flex-shrink: 0;
	margin: 0 0 1em 1em;
}
.care_itaku > .flexbox p:last-child, .care_schedule > .flexbox p:last-child {
    flex-shrink: 1;
}
.care_riyou > div:before {
	top: -5%;
    left: 25%;
    width: 50%;
	height: 110%;
}
}


@media all and (min-width: 768px and max-width: 1029px) { /* tablet まで */

}

@media all and (min-width: 1030px) { /* small desktop～ */
body {
	font-weight: 400;
	font-size: 16px;
}
#content {
	margin-top: 0;
}
header {
	height: 70px;
}
.lead, #news .widget-title {
	font-size: 3em;
}
.main-nav {
	font-size: 100%;
}
.main-nav, .inner-nav {
	width: auto;
	padding: 0;
}
.main-nav a {
	font-size: 1.25vw;
}
.inner-nav {
	width: 100%;
}
#primary-menu, #primary-menu2 {
	margin: 0 0.5em 0 0;
}
#primary-menu li ul, #primary-menu2 li ul {
	display: block;
	width: 100%;
	position: fixed;
	top: 0;
	right: 0;
    transition: -webkit-transform .8s ease-in-out;
    transition: transform .8s ease-in-out;
    transform: translateY(70px);
}
#primary-menu li:hover ul, #primary-menu2 li:hover ul {
	/*display: block;*/
	/*transform: translateY(70px);*/
}
#primary-menu li a, #primary-menu2 li a {
    padding-left: 1em;
}
#primary-menu li a::before, #primary-menu2 li a::before {
    left: 0em;
}
#primary-menu li, #primary-menu2 li {
    margin: 0.5em 0;
    padding: 1em 0;
    transition: all 0.5s ease-in-out;
}
#primary-menu li:hover, #primary-menu2 li:hover {
    background: rgba(255,255,255,0.3);
    border-radius: 50px;
}

.innerbox {
	padding: 2em 4em;
}


/* top */
.box1 {
	margin-top: 0px;
	margin-left: 33%;
}
.box2 {
	margin-top: 150px;
	margin-left: -66%;
}
.box3 {
	margin-top: 150px;
}
.box4, .box6 {
	margin-top: 0px;
}
.box5 {
	margin-top: -100px;
}
.box7 {
	margin-top: -80px;
	margin-left: 33%;
}

/* pages */
.topimg {
	height: 200px;
}
.pages .pagetitle {
	font-size: 300%;
	/*padding: 80px 1em 50px;*/
}

}

@media all and (min-width: 1080px) { /* スライドサイズを超えた場合 */
.home header {
	top: calc(100vh - 70px);
}
.home #main-img {
    height: 100vh;
	margin-top: -70px;
}
}

@media  all and (min-width: 1240px) { /* large desktop～ */
div#n2-ss-3 .n2-ss-section-outer {
    height: 100vh!important;
}

/* menu */
#primary-menu li a, #primary-menu2 li a {
    padding-left: 1.1em;
	font-size: 1.15rem;
}
#pritable#event-info{	
width: 100%; height: auto; line-height: 1em; border-collapse: collapse; border: 1px;
}
table#event-info tr{height: 1.2em; font-weight: bold; font-size: 1.1em; background-color: #ffcc00;}
mary-menu li a::before, #primary-menu2 li a::before {
    left: 0.1em;
}
	
#topcontent {
	max-width: 1080px;
	margin: 0 auto;
}
}

/* care */
.rsv_btn {
    text-align: center;
    margin: 1rem auto 2rem;
}
.rsv_btn a {
    border-radius: 20px;
    border: 3px solid #fdcd4e;
    padding: 1rem 2rem;
    color: #fff;
    background-color: #de9610/*#fdcd4e*/;
    font-weight: bold;
    font-size: 1.5rem;
}
.rsv_btn a:hover {
    opacity: 0.8;
}
.belongings h5 {
	margin: 1rem auto 0;
}
.belongings_outer > div {
	gap: 1rem;
	padding: 1rem;
	border-radius: 1rem;
	background-color: lavenderblush;
}
.belongings ul {
	margin: 0 0.5rem 0 0;
}
.rsv_btn {
	text-align: center;
	margin: 1rem auto 2rem;
	padding-top: 2rem;
}
a.seitai {
    background-color: #06c755;
    padding: 0.1rem 0.5rem;
    border-radius: 0.75rem;
    color: #fff;
}
a.thermie {
    background-color: royalblue;
    padding: 0.1rem 0.5rem;
    border-radius: 0.75rem;
    color: #fff;
}

/* booking */
#sln-salon {
    margin: 1rem auto;
    opacity: 1!important;
}
#sln-salon .sln-salon-title {
    padding-top: 60px;
}
#sln-salon h3 {
    padding-left: 1rem;
}
#sln-salon h3:before, #sln-salon h3:after {
    content: none;
}
.sln-topbar h6 {
    display: none;
}
.sln-list .sln-panel .sln-panel-content, #sln-salon .sln-list .sln-panel .sln-panel-content {
    background: #fff;
}
.field {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    padding: 0.25rem 1rem;
    border-bottom: dotted 1px #ccc;
}
.field:last-child {
    border-bottom: none;
}
.field > div:first-child {
    width: 220px; 
}
.field > div:last-child {
    color: #222;
    font-size: 110%;
    padding-left: 1rem;
}
#option_info {
    padding: 2rem 1rem 1rem;
    color: #222;
}
#option_info ul {
    padding-left: 1rem;
}
#option_info li span {
    font-weight: 600;
}
span.aks {
	display: inline-block;
}

/* booking 注意書き追加 */
#sln-salon .sln-input:has([required]).field-firstname label::after {
	content: "* 漢字とふりがなの両方をご記入ください";
	color: red;
	font-size: 1em;
}
#sln-salon .sln-input:has([required]).field-lastname label::after {
	content: "* 漢字とふりがなの両方をご記入ください";
	color: red;
	font-size: 1em;
}
#sln-salon .sln-input.field-_5 label::after {
	content: "漢字とふりがなの両方をご記入ください";
	color: red;
	font-size: 1em;
	margin-left: 0.5rem;
}

@media all and (max-width: 430px) {
    #sln-salon .sln-service-list.sln-list h2 {
        width: calc(100% - 2em);
    }
    #sln-salon .sln-salon-title {
	padding-top: 60px;
    }
    #sln-salon #sln-salon__content .sln-list .sln-panel .sln-panel-heading.collapsed .sln-btn::after,
    #sln-salon #sln-salon__content .sln-list .sln-panel .sln-panel-heading .sln-btn::after {
        width: 1em;
        padding-left: 2em;
    }
	.sln-list .sln-list__item .sln-list__item__action, #sln-salon .sln-list .sln-list__item .sln-list__item__action {
		padding-right: 1em;
	}
	#sln-salon .sln-panel .sln-checkbox input + label:hover:after {
		color: transparent;
	}
    .field {
        flex-direction: column;
    }
    .field > div:first-child {
        width: auto; 
    }
	input#sln_firstname::placeholder, input#sln_lastname::placeholder, input#sln__5::placeholder {
		font-size: 0.8em!important;
	}
}
@media only screen and (min-width: 768px) {
    #sln-salon-booking　.sln-box--fixed_height, #sln-salon-booking .sln-box--main.sln-box--fixed_height, #sln-salon 
 #sln-salon-booking .sln-box--fixed_height, #sln-salon #sln-salon-booking .sln-box--main.sln-box--fixed_height {
        max-height: 100vh;
    }
}
@media only screen and (min-width: 992px) {
	#option_info span.aks {
		margin-left: 1rem;
	}
}

/*IE10以降に適用されるCSSハック*/
@media all and (-ms-high-contrast: none) {
.pages .pagetitle {
	width: 300px;
}
}
@media all and (-ms-high-contrast: none) and (min-width: 768px) {
.pages .pagetitle {
	width: 600px;
}
}