/*!
Theme Name: uresalo
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: uresalo
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

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.

uresalo is based on Underscores https://underscores.me/, (C) 2012-2017 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 https://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
--------------------------------------------------------------*/
/* normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

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

body {
	margin: 0;
    word-break: break-all;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
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;
}

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,
optgroup,
textarea {
	color: #404040;
	font-family: sans-serif;
	font-size: 20px;
    line-height: 1.75;
}

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 https://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. */
}

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

ul, ol {
	margin: 0;
	padding: 0;
}

ul {
	list-style: none;
}

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, 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:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	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;
}

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;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: royalblue;
}

a:visited {
	color: purple;
}

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

a:focus {
	outline: thin dotted;
}

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

/*--------------------------------------------------------------
## Menus
--------------------------------------------------------------*/
.main-navigation {
	clear: both;
	display: block;
	float: left;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	float: left;
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {
	.menu-toggle {
		display: none;
	}
	.main-navigation ul {
		display: block;
	}
}

.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 {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	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;
	clip-path: none;
	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;
}

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

.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,
.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%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/*--------------------------------------------------------------
## 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;
}


/*--------------------------------------------------------------
# ここからオリジナル追加
--------------------------------------------------------------*/
/*--------------------------------------------------------------
## スマホヘッダー
--------------------------------------------------------------*/
.clerfix {
    clear: both;
}
.headmenu01 {
width: 80px;
    float: left;
    background: #fff;
    height: 80px;
    text-align: center;
}
.headmenu01 img {
    max-height: 76px;
}

.headmenu02 {
    width: 25%;
    float: left;

}
.inner {
  width: 980px;
  margin: 0 auto;
  position: relative;
}

.inner:after {
  content:"";
  clear: both;
  display: block;
}

/*--------header-----------*/

#top-head {
  top: -100px;
  position: absolute;
  width: 100%;
  margin: 100px auto 0;
  padding: 30px 0 0;
  line-height: 1;
  z-index: 999;
}

#top-head a,
#top-head {
    color: #fff;
    text-decoration: none;
}

#top-head .inner {
    position: relative;
}
#top-head .logo {
    float: left;
    position: relative;
    font-size: 36px;
    height: 50px;
}

#top-head .logo a {
  position: absolute;
  width: 100%;
  height: 50px;
}

#global-nav ul {
    list-style: none;
    position: absolute;
    top: 20px;
    right: 0;
    font-size: 14px;
}
#global-nav ul li {
    float: left;
    padding:0 30px;
    border-left: 1px solid #000;
}
#global-nav ul li a {
    padding: 5px 5px;
    position: relative;
    display: inline-block;
}

#global-nav ul li a:hover {
 opacity: 0.8;
}

nav span{
    background:#666;
    height:2px;
    display:block;
    position:relative;
    width:50px;
    left:0;
}


/*--------固定化されたときのCSS-----------*/

#top-head.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    padding-top: 10px;
    background: #fff;
    background: rgba(255,255,255,.7);
    transition: top 0.65s ease-in;
    -webkit-transition: top 0.65s ease-in;
    -moz-transition: top 0.65s ease-in;
}

#top-head.fixed .logo {
  position: relative;
    font-size: 24px;
    color: #333;
}

#top-head.fixed .logo a {
  position: absolute;
  width: 100%;
  height: 30px;

}
#top-head.fixed #global-nav ul li a {
    color: #333;
    padding: 0 20px;
    padding-bottom: 10px;
}




#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}
#nav-toggle {
    display: block;
    position: absolute;
    right: 16px;
    top: 15px;
    width: 50px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}






/*------------タブレット用------------------*/

@media screen and (max-width: 768px) {
  .head-inner {
    display: none;
  }
.topinner {
    margin-right: 3% !important;
    margin-left: 3% !important;
}
.breadcrumbs {
    margin-right: 3% !important;
    margin-left: 3% !important;
}
.page-content, .entry-content, .entry-summary {
    margin: 1.5em 7% 0 7%;
}
  .slick-next {
    right: 0;
  }

  #top-head,
  .inner {
      width: 100%;
      padding: 0;
  }
  #top-head {
      height: 65px;
      top: 0;
      position: fixed;
      margin-top: 0;
  }
  /* Fixed reset */
  #top-head.fixed {
      padding-top: 0;
      background: #fff;
      height: 65px;
  }
  #mobile-head {
background: #92BFD4;
    width: 100%;
    height: 72px;
    z-index: 999;
    position: relative;
  }
  #top-head.fixed .logo,
  #top-head .logo {
      position: absolute;
      left: 13px;
      height: 50px;
      top: 15px;
      color: #333;
      font-size: 26px;
  }
  #global-nav {
      position: absolute;
      /* 開いてないときは画面外に配置 */
      top: -491px;
      background: #92BFD4;
      width: 100%;
      text-align: center;
      padding: 0;
      -webkit-transition: .5s ease-in-out;
      -moz-transition: .5s ease-in-out;
      transition: .5s ease-in-out;
  }
  #global-nav ul {
      list-style: none;
      position: static;
      right: 0;
      bottom: 0;
      font-size: 12px;
      margin: 0px;
    padding: 0 0 50px 0;
  }
  #global-nav ul li {
      width: 50%;
      float: left;
      position: static;
      padding: 4px 0px 4px 10px;
      text-align: left;
      color: #fff;
      border-bottom: 1px dotted #fff;
      height: 60px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
      align-items: center; /* 縦方向中央揃え */
      -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
      justify-content: center; /* 横方向中央揃え */
      font-size: 15px;
  }
  #top-head #global-nav ul li a,
  #top-head.fixed #global-nav ul li a {
      width: 100%;
      display: block;
      color: #fff;
      padding: 8px 0;
  }

  /* #nav-toggle 切り替えアニメーション */
  .open #nav-toggle span:nth-child(1) {
      top: 11px;
      -webkit-transform: rotate(315deg);
      -moz-transform: rotate(315deg);
      transform: rotate(315deg);
  }
  .open #nav-toggle span:nth-child(2) {
      width: 0;
      left: 50%;
  }
  .open #nav-toggle span:nth-child(3) {
      top: 11px;
      -webkit-transform: rotate(-315deg);
      -moz-transform: rotate(-315deg);
      transform: rotate(-315deg);
  }
  /* #global-nav スライドアニメーション */
  .open #global-nav {
      /* #global-nav top + #mobile-head height */
      -moz-transform: translateY(556px);
      -webkit-transform: translateY(556px);
      transform: translateY(556px);
    z-index: 99;
    height: 100%;
    width: 100%;
    position: fixed;
    overflow-y: scroll;
    padding-bottom: 100px;
  }
#nav-toggle {
    display: block;
    position: absolute;
    right: 34px;
    top: 15px;
    width: 50px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
.tgtxt {
    text-align: center;
    top: 33px;
}
  .inner h1 {
    border-top: 1px solid #fff;
    margin: 0;
    padding: 0;
}
.adress {
    font-size: 13px;
}
.voicetext1 {
    position: absolute;
    color: #000;
    top: 22%;
    left: 29%;
    font-size: 16px;
    width: 45%;
    text-align: left;
}
.voicetext2 {
position: absolute;
    color: #000;
    top: 53%;
    left: 30%;
    font-size: 16px;
    width: 45%;
    text-align: left;
}
.menu-btn {
    position: fixed;
    top: 32px;
    right: 39px;
    line-height: 50px;
    font-size: 12px;
    text-align: center;
    cursor: pointer;
    z-index: 1;
}
}




/*--------------------------------------------------------------
## スマホフッダー
--------------------------------------------------------------*/
#foot-menu {
  width: 100%;
  background-color: #92BFD4;
}
#foot-menu .inner ul {
  width: 50%;
    float: left;
    overflow: hidden;
    border-right: none;
    margin: 0px;
    padding: 5% 0px;
    list-style: none;
}
#foot-menu .inner ul li.list1, #foot-menu .inner ul li.list2 {
  border-top: none;
}
#foot-menu .inner ul li {
}
#foot-menu .inner ul li.list2 a, #foot-menu .inner ul li.list2 span {
  border-right: 1px solid #454545;
}
#foot-menu .inner ul li a {
  text-align: center;
    line-height: 1.75;
    padding: 0;
    font-size: 14px;
    color: #fff;
    text-decoration: none;
}
.site-info {
    text-align: center;
    padding: 10px 0;
    background-color: #d6c3a0;
    color: #fff;
    border-top: 1px solid #fff;
    padding-bottom: 40px;
}
#nav-toggle img {
    max-height: 65px;
}
/*--------------------------------------------------------------
## トップページ
--------------------------------------------------------------*/
.voiceph {
    width: 50%;
    float: left;
    margin-right: 3%;
}
.voiceph img {
    width: 100%;
    height: 150px;
    object-fit: cover;
    float: left;
    margin-right: 2%;
}
.voicebox {
	clear: both;
	margin: 3%;
}
.staffblogbox {
    clear: both;
}
.staffblogimg {
width: 30%;
    float: left;
    margin-right: 2%;
}
.staffblogimg img {
    width: 100%;
    height: 170px;
    object-fit: cover;
    float: left;
    margin-right: 2%;
}
span.blogdate {
    color: #fff;
    background-color: #92bfd4;
    padding: 2px 5px;
}
.tblotitle {
    margin: 2% 0;
    overflow: hidden;
    height: 26px;
}
.insidebox {
	margin: 0;
}

#content {
    padding-top: 100px;
    max-width: 1000px;
    margin: 0 auto;
}
.footspace {
    background-color: #fcf8f1;
    padding: 40px 10px;
}
.topinner {
    max-width: 1000px;
    padding: 0px;
    margin-right: auto;
    margin-left: auto;
}
.ninkititle {
    margin-bottom: 20px;
}
.clearfix:after {
    content:" ";
    display:block;
    clear:both;
}
.voicekobatsu {
width: 46%;
    float: left;
    margin: 0 2%;
}
ul.qalist {
    list-style: none;
    padding: 0;
    margin: 0;
}
ul.qalist li {
    background: url(images/q.jpg) no-repeat;
    line-height: 2;
    padding: 20px 0;
    margin-right: 2%;
    border-top: 1px dotted #000;
}
ul.qalist a {
    font-size: 20px;
}
ul.qalist li p {
    margin: 0;
}
.sblogk {
width: 100%;
    clear: both;
    margin-bottom: 2%;
}
.sblogk p {
    font-size: 19px;
}
#content h1.entry-title {
font-weight: bold;
    font-size: 30px;
    color: #000;
    border-bottom: 1px solid;
}
.site-maininside h2 {
background: #790029;
position: relative;
    border: none;
    font-size: 23px;
    padding: 1em 1.1em;
    margin-top: 2.1em;
    margin-bottom: 1em;
    border-radius: 3px;
    color: #fff;
    box-shadow: 0 0 45px rgba(0, 0, 0, 0.25) inset;
    line-height: 1.4em;
    font-weight: bold;
	}
.site-maininside h2:before, .site-maininside h2:after {
    content: '';
    display: block;
    width: 100%;
    position: absolute;
    border-top: 1px dashed;
}
.site-maininside h2:after {
    bottom: 3px;
    left: 0;
}
.site-maininside h2:before {
    top: 3px;
    left: 0;
}
h3 {
}
.site-maininside h4 {
	border-bottom: 1px dotted #92BFD4;
	color: #92BFD4;
	font-size: 20px;
	line-height: 30px;
    padding: 10px 0;
	margin-top: 30px;
	margin-bottom: 20px;
	font-weight: bold;
	}
.site-maininside h5 {
	border-left: 10px solid #92BFD4;
	color: #000;
	font-size: 18px;
	line-height: 27px;
	padding: 10px 20px;
	margin-top: 30px;
	margin-bottom: 20px;
	font-weight: bold;
	}
.site-maininside h6 {
	border-bottom: 1px dotted #333333;
	color: #333333;
	font-size: 16px;
	line-height: 26px;
	padding: 10px 0px;
	margin-top: 30px;
	margin-bottom: 20px;
	font-weight: bold;
	}
.site-maininside {
    margin: 0;
}

.fl_ri {
float: right;
}
h2.entry-title {
padding: 2% 0;
    font-size: 30px;
    color: #5799BD;
    background: url(images/titleback.jpg) repeat-x;
    text-align: center;
}
ul.qalistpage {
    list-style: none;
    padding:0;
    margin: 0;
}
.qainside {
    padding: 20px 0;
    margin-top: -90px;
    padding-top: 90px;
}
#qa {
    margin: 0 2%;
}
.moreqa {
padding: 0 0 40px 0;
float: right;
}
.stvoiceiimg img {
    width: 25%;
    height: 150px;
    object-fit: cover;
    float: left;
    margin-right: 2%;
    margin-bottom: 5%;
}
.staff_l {
    width: 50%;
    margin-right: 5%;
    float: left;
    text-align: center;
}
.VideoWrapper {
    margin-top: 10%;
}
.VideoWrapper {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    padding-top: 25px;
    height: 0;
}
 
.VideoWrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
p.subcaption {
    text-align: left;
    font-size: 15px;
}
.subimg {
    margin: 10% 0;
}
.subimg img {
    float: left;
    width: 50%;
    height: 180px;
    margin-right: 2%;
    object-fit: cover;
}
.staff_r {
    width: 45%;
    float: left;
}
#staff h3 {
font-size: 20px;
    font-weight: normal;
    margin: 30px 0 10px 0;
    border-bottom: 1px dotted #333;
    font-family: 'Quicksand', sans-serif;
}
.staff_r p {
    margin: 0;
    line-height: 1.5;
}
.staff_r h4 {
    margin: 10px 0 0 0;
    line-height: 2;
}
.stname {
font-size: 30px;
}
footer#colophon {
    padding-top: 80px;
}
div#staff {
    margin: 0 2%;
}
.reservation_btn {
    margin: 10px 0;
}
.social_btn img {
    max-width: 23%;
}
.reservation_btn img {
    max-width: 48%;
}
.staffichiran {
    width: 29%;
    margin: 10px 2%;
    float: left;
    min-height: 550px;
}
.stiimg img {
    width: 100%;
    height: 400px;
    object-fit: cover;
}
.stnameb {
    font-size: 20px;
}
.stnameb a {
    text-decoration: none;
    color: #404040;
}
.stnameb a:hover {
    text-decoration: underline;
}
.insidetext h2 {
    position: absolute;
    color: #cd0102;
    top: 32%;
    left: 2%;
    font-size: 30px;
}
.insidetext {
    position: relative;
}
.insidetext img {
    width: 100%;
}
.wp-pagenavi {
    text-align: center;
    padding-top: 5%;
}
#topcontent h2 {
    text-align: center;
    margin-top: 50px;
}
ul.topmenu {
    list-style: none;
    margin: 0 0 5% 0;
    padding: 0;
}
ul.topmenu li {
    width: 49%;
    float: left;
    margin-right: 1%;
    margin-bottom: 6%;
}
.menutitle {
color: #5B001E;
font-weight: bold;
text-align: center;
}
.topmenu p {
    margin: 0;
    height: 40px;
}
.topvoice {
position: relative;
text-align: center;    
}
.top_bot {
    width: 46%;
    float: left;
    margin: 3% 2%;
}
.top_botb {
    width: 46%;
    float: left;
    margin: 3% 2%;
}
.pageup {
    background: url(images/pageup_back.jpg) repeat-x;
    margin: 0;
    padding: 0;
    height: 98px;
    text-align: center;
}
.title img {
    height: auto;
    max-width: 100%;
    max-height: 76px;
}
.topimg {
    text-align: center;
    padding-top: 0;
        line-height: 0;
}
.topimg img {
    width: 100%;
}

.taxonomies-news-category p a {
    color: #fff;
    text-decoration: none;
}
#taxonomies {
    margin-bottom: 5%;
}
.taxonomies-news-category p {
    border-radius: 10px;
    background-color: #92bfd4;
    width: 31%;
    color: #fff;
    padding: 1.5%;
    margin-right: 2%;
    margin-left: 0;
    float: left;
    margin-bottom: 1%;
    margin-top: 1%;
}
.footmap {
	text-align: center;
	margin: 5% 0 10% 0;
}
.footlogo {
	text-align: center;
}
.footlogo img {
    margin-bottom: 2%;
}
li.prev {
    float: right;
    list-style: none;
    width: 47%;
    text-align: right;
    font-size: 14px;
        background-color: #CCC;
    padding: 10px;
    line-height: 20px;
}
li.next {
    float: left;
    list-style: none;
    width: 47%;
    font-size: 14px;
        background-color: #CCC;
    padding: 10px;
    line-height: 20px;
}
ul#pagination {
    padding: 0;
    margin: 0;
}
.blogcpbn {
    border-top: 1px dotted #CCC;
    padding-top: 20px;
}
.messe_photo {
    float: left;
    margin-right: 2%;
}
.messe_sign {
    float: right;
    margin-top: 2%;
}
.ow_title {
font-size: 30px;
margin: 2% 0;
}
.ow_photo {
    float: left;
    margin-right: 2%;
}
.ow_text {
}
.me_text {
font-size: 20px;
text-align: center;
}
.yo_bn img {
  width: 100%;
  }
.black {
      color: #fff;
      background: #000;
}
.required {
    color: #f00;
}  
/* --- お問い合わせフォームのカスタマイズ --- */
/* 入力部分 */
.wpcf7 select, input[type="email"], input[type="text"], textarea {
width: 96%; /* 最大の幅 */
font-size: 100%; /* フォントの大きさ */
padding: 0.5em; /* 文字と入力枠の間の余白（0.5文字を指定）*/
border: 1px solid #ccc; /* 枠の指定 */
border-radius: 4px; /* コーナーを微妙に丸く */
}
/* 送信ボタン */
input[type="submit"] {
width: 270px; /* ボタンの幅 */
font-size: 18px; /* フォントの大きさ */
font-weight: bold; /* 太文字 */
text-align: center; /* 位置を中央に */
text-decoration:none; /* 文字の下線は消す */
color: #ffffff; /* 文字色 */
background: #49a9d4; /* ボタンの背景色 */
padding: 10px 40px; /* ボタンの余白 */
border-radius: 5px; /* ボタンの角を丸く */
border: 0; /* ボタンの枠線を消す */
border-bottom : 1px solid #757575 ; /* 下部にだけ1pxの線を引く */
}
.wpcf7 input[type="submit"]:hover {
opacity: 0.5; /* マウスオンで半透明にする */
}
.form_inq {
padding: 2% 0 2% 4%;
background-color: #f1f4f9;
border-radius: 1%;
margin-top: 5%;
border: 1px solid #ccc;
}
blockquote {
    position: relative;
    font-size: 19px;
    padding: 35px 15px 10px 15px;
    box-sizing: border-box;
    font-style: italic;
    background: #fee2f0;
    color: #777777;
    font-weight: bold;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);
}

blockquote:before{
    display: inline-block;
    position: absolute;
    top: 10px;
    left: 15px;
    vertical-align: middle;
    content: "\f10d";
    font-family: FontAwesome;
    color: #777777;
    font-size: 28px;
    line-height: 1;
}

blockquote p {
    padding: 0;
    margin: 7px 0;
    line-height: 1.7;
}

blockquote cite {
    display: block;
    text-align: right;
    color: #888888;
    font-size: 0.9em;
}

  
/*--------------------------------------------------------------
## PCヘッダー
--------------------------------------------------------------*/
@media screen and (min-width:768px) {
// 通常のデスクトップに適用したいスタイル //
  .head-inner {
    display: none;
  }

  .slick-next {
    right: 0;
  }

  #top-head,
  .inner {
      width: 100%;
      padding: 0;
  }
  #top-head {
      top: 0;
      position: fixed;
      margin-top: 0;
      height: 80px;
  }
  /* Fixed reset */
  #top-head.fixed {
      padding-top: 0;
      background: #fff;
  }

  #mobile-head {
    float: right;
    background: #92BFD4;
    width: 240px;
    height: auto;
    z-index: 999;
    position: relative;
}
  #top-head.fixed .logo,
  #top-head .logo {
      position: absolute;
      left: 13px;
      height: 50px;
      top: 15px;
      color: #333;
      font-size: 26px;
  }
  #global-nav {
      position: absolute;
      /* 開いてないときは画面外に配置 */
      top: -548px;
      background: #92BFD4;
      width: 100%;
      text-align: center;
      padding: 0;
      -webkit-transition: .5s ease-in-out;
      -moz-transition: .5s ease-in-out;
      transition: .5s ease-in-out;
  }
  #global-nav ul {
      list-style: none;
      position: static;
      right: 0;
      bottom: 0;
      font-size: 12px;
      margin: 0px;
    padding: 0 0 50px 0;
  }
  #global-nav ul li {
width: 50%;
      float: left;
      position: static;
      padding: 4px 0px 4px 10px;
      text-align: left;
      color: #fff;
      border-bottom: 1px dotted #fff;
      height: 60px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
      align-items: center; /* 縦方向中央揃え */
      -webkit-justify-content: center; /* 横方向中央揃え（Safari用） */
      justify-content: center; /* 横方向中央揃え */
      font-size: 15px;
  }
  #top-head #global-nav ul li a,
  #top-head.fixed #global-nav ul li a {
      width: 100%;
      display: block;
      color: #fff;
      padding: 10px 0;
  }

  /* #nav-toggle 切り替えアニメーション */
  .open #nav-toggle span:nth-child(1) {
      top: 11px;
      -webkit-transform: rotate(315deg);
      -moz-transform: rotate(315deg);
      transform: rotate(315deg);
  }
  .open #nav-toggle span:nth-child(2) {
      width: 0;
      left: 50%;
  }
  .open #nav-toggle span:nth-child(3) {
      top: 11px;
      -webkit-transform: rotate(-315deg);
      -moz-transform: rotate(-315deg);
      transform: rotate(-315deg);
  }
  /* #global-nav スライドアニメーション */
  .open #global-nav {
      /* #global-nav top + #mobile-head height */
      -moz-transform: translateY(628px);
      -webkit-transform: translateY(628px);
      transform: translateY(628px);
    z-index: 99;
    height: 100%;
    width: 100%;
    position: fixed;
    overflow-y: scroll;
    padding-bottom: 100px;
  }
  #top-head .title {
   float: left;
    margin: 0;
    padding: 0;
    width: 500px;
    clear: none;
    height: 80px;
    text-align: center;
}
  #top-head title img {
    max-height: 76px;
}
.title p {
    margin: 0;
    color: #000;
    font-size: 15px;
    line-height: 1;
}
#nav-toggle img {
    max-height: 76px;
}
#foot-menu .inner ul li {
    border-left: none;
}
.foottext p {
    font-size: 25px;
        margin: 0;
}
.footinfo {
text-align: center;
}
.inquiry {
    width: 500px;
}
.foottext {

}
.adress {
    font-size: 20px;
}
ul.topmenu li {
    width: 48%;
    float: left;
    margin-right: 2%;
    margin-bottom: 3%;
}
.voicetext1 {
position: absolute;
    color: #000;
    top: 26%;
    left: 29%;
    font-size: 14px;
    width: 46%;
    text-align: left;
}
.voicetext2 {
position: absolute;
    color: #000;
    top: 53%;
    left: 30%;
    font-size: 14px;
    width: 46%;
    text-align: left;
}
.footbtn {
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20px;
    margin-top: 20px;
    text-align: center;
}
.menu-btn {
position: fixed;
    top: 32px;
    right: 24px;
    line-height: 50px;
    font-size: 12px;
    text-align: center;
    cursor: pointer;
    z-index: 1;
}
ul.gallerylist img {
    width: 18%;
    margin: 1%;
    float: left;
    height: 250px;
    object-fit: cover;
}
#foot-menu .inner {
  padding: 0 14% 0 14%;
    margin: 0;
    opacity: 1;
}
}


/*------------スマホ用------------------*/
@media screen and (max-width: 480px) {
  .topimg {
    padding-top: 0px;
        line-height: 0;
}
.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 3% 0 3%;
}
.entry-content-a {
	margin: 1.5em 0 0 0;
}
.headmenu01 img {
    height: 55px;
    width: 55px;
}
.headmenu01 {
padding-top: 4px;
    width: 60px;
    float: left;
    background: #fff;
    height: 65px;
    text-align: center;
}

#mobile-head {
float: right;
    background: #92BFD4;
    width: 180px;
    height: 60px;
    z-index: 999;
    position: relative;
}
.title p {
    margin: 0;
    color: #000;
    font-size: 11px;
    line-height: 1;
}
/* トップページ設定 */
.voicebox {
    clear: both;
    margin: 5%;
}
.voicekobatsu {
    width: 100%;
    float: none;
    clear: both;
    margin-bottom: 10%;
}
ul.qalist li {
    background: url(images/q.jpg) no-repeat;
    line-height: 2;
    margin-bottom: 20px;
    margin-right: 0;
    width: 100%;
    float: none;
}
.sblogk {
    width: 100%;
    float: none;
    margin-right: 0;
        clear: both;
    margin-bottom: 5%;
}
#content {
    padding-top: 100px;
}
.foottext {
    text-align: center;
}
.adress {
    font-size: 15px;
}
.inquiry {
    width: 300px;
}
.voicekobatsu p {
    margin: 0;
}
.stvoiceiimg img {
    width: 40%;
    height: 150px;
    object-fit: cover;
    float: left;
    margin-right: 2%;
    margin-bottom: 5%;
}
.stvoice p {
    font-size: 10px;
}
.staff_l {
    width: 100%;
    margin-right: 0;
    float: none;
    padding-top: 0;
    text-align: center;
}
.staff_r {
    width: 100%;
    float: none;
}
.staffichiran {
    width: 46%;
    margin: 10px 2%;
    float: left;
}
.stiimg img {
    width: 100%;
    height: 190px;
    object-fit: cover;
}
.insidetext h2 {
    position: absolute;
    color: #cd0102;
    top: 20%;
    left: 2%;
    font-size: 18px;
    text-shadow: 0px 2px 2px #fff;
}
.staffblogimg {
    width: 35%;
    float: left;
    margin-right: 2%;
}
.staffblogimg img {
    width: 100%;
    height: 120px;
    object-fit: cover;
    float: left;
    margin-right: 2%;
}
.sblogk p {
    font-size: 10px;
    margin-top: 0px;
}
.voicetext1 {
    position: absolute;
    color: #000;
    top: 23%;
    line-height: 1.2;
    left: 27%;
    font-size: 8px;
    width: 51%;
    text-align: left;
}
.voicetext2 {
    position: absolute;
    color: #000;
    top: 52%;
    line-height: 1.2;
    left: 28%;
    font-size: 8px;
    width: 51%;
    text-align: left;
}
.footbtn {
    width: auto;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20px;
    margin-top: 20px;
    text-align: center;
}
.taxonomies-news-category p {
    border-radius: 10px;
    background-color: #92bfd4;
    width: 48%;
    color: #fff;
    padding: 1.5%;
    margin-right: 2%;
    margin-left: 0;
    float: left;
    margin-bottom: 1%;
    margin-top: 1%;
}
.fea_box p {
    font-size: 22px;
    font-weight: bold;
    margin: 0;
}

.messe_sign {
    float: none;
    text-align: center;
}
.yo_bn img {
    width: 220px;
}
.ow_photo {
    float: none;
    text-align: center;
    margin: 0;
}
.messe_photo {
    float: none;
    margin: 0;
    text-align: center;
}
.messe_sign img {
    width: 70%;
}
#nav-toggle {
    display: block;
    position: absolute;
    right: 11px;
    top: 12px;
    width: 40px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}
.tgtxt {
    top: 30px;
    text-align: center;
    font-size: 15px;
}
.menu-btn {
    position: fixed;
    top: 23px;
    right: 15px;
    line-height: 50px;
    font-size: 12px;
    text-align: center;
    cursor: pointer;
    z-index: 1;
}
ul.gallerylist img {
    width: 48%;
    margin: 1%;
    float: left;
    height: 215px;
    object-fit: cover;
}
#foot-menu .inner {
  padding: 0 3% 0 3%;
    margin: 0;
    opacity: 1;
}
}

/*-----------トグルボタンのCSS-------------*/
 

#nav-toggle div {
    position: relative;
}
#nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #fff;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
.menu-btn span:after {
    content: attr(data-txt-menu);
}

/* 開閉用ボタンがクリックされた時のスタイル */
.open .menu-btn span:after {
    content: attr(data-txt-close);
}


/*-----------スマホフッター固定のCSS-------------*/
.footerFloatingMenu {
    display: block;
    width: 100%;
    position: fixed;
    left: 0px;
    bottom: 0px;
    z-index: 9999;
    text-align: center;
    padding: 0;
    margin: 0;
}
.footerFloatingMenu ul {
    list-style: none;
}
.footerFloatingMenu li {
    display: inline-block;
    vertical-align: top;
    width: 50%;
    margin-bottom: 0;
    float: left;
}
.footerFloatingMenu li a {
    display: block;
    min-width: inherit;
    padding: 10px 5px 5px;
}
.footerFloatingMenu .item1 a {
    color: #fff;
    background: #fff;
    border: 1px solid #fff;
    height: 45px;
    padding-top: 6px;
}
.footerFloatingMenu .item2 a {
    color: #fff;
    background: #3f2322;
    border: 1px solid #3f2322;
    height: 45px;
    text-decoration: none;
}

/*------------ブログページレイアウト変更------------------*/
@media screen and (min-width:768px) {
.newsallimg {
    position: relative;
    height: 200px;
    overflow: hidden;
    width: 30%;
    display: inline-block;
}
.toukonews {
width: 65%;
    float: right;
    margin: 0 20px 0 0;
}
.newsall {
    width: 100%;
    clear: both;
    padding: 5% 0;
    overflow: hidden;
    border-bottom: 1px solid #eee;
}
}
@media screen and (max-width: 480px) {
.newsallimg img {
    width: 100%;
    height: 100px;
    object-fit: cover;
}
.newsallimg {
    float: left;
    width: 40%;
}
.toukonews {
    width: 56%;
    float: left;
    margin-left: 4%;
}
.newsall {
    width: 100%;
    clear: both;
    padding: 5% 0;
    overflow: hidden;
    border-bottom: 1px solid #eee;
}
}
.toukoutitleb {
    font-size: 21px;
    font-style: normal;
    font-weight: normal;
    letter-spacing: -.003em;
    line-height: 1.58;
    margin-top: 10px;
}
.toukoutitleb a {
	text-decoration: none;
	color: #92bfd4;
}
.clearwppn {
    clear: both;
    padding: 5% 0;
}
.voicetext {
	text-align: left;
    font-size: 21px;
    font-style: normal;
    font-weight: normal;
    letter-spacing: -.003em;
    line-height: 1.8;
    margin-bottom: 1.5em;
    margin-top: 1.5em;
    font-family: Hiragino Mincho ProN !important;
}
.red {
    color: #cc0001;
}
a img {
outline:none;
}
a{
	outline: none;
}
a:focus{
	outline: none;
}


/*-----------サイト独自のCSS-------------*/
.backblue {
background: #f7fbfc;
    padding: 5% 0;
}
.topcen {
 text-align: center;
}
.featuretitle {
    color: #579BBD;
    font-size: 155%;
}
.toppagemenu {
margin: 5% 0;
}
.foottext p {
    font-size: 25px;
    margin-bottom: 2%;
}
.stvoice {
    border-bottom: 1px dotted #000;
}
/*-----------PCのみ改行→<br class="pc">・<br class="sp">スマホのみ改行→-------------*/
@media screen and (min-width: 680px){   
  .pc { display:block; }
  .sp { display:none; }
}
@media screen and (max-width: 680px){   
  .pc { display:none; }
  .sp { display:block; }
}
/*-----------枠線消し-------------*/
a img {
outline:none;
}
a{
	outline: none;
}
a:focus{
	outline: none;
}
/*-----------フッターline/telボタン-------------*/
.l_fixed {
    position: fixed;
    z-index: 70;
}
.b_fixed {
    position: fixed;
    z-index: 70;
}
@media screen and (max-width: 480px) {
.l_fixed {
right: 10px;
    bottom: 111px;
    width: 90px;
    height: 90px;
}
.b_fixed {
right: 10px;
    bottom: 10px;
    width: 90px;
    height: 90px;
}
}
@media screen and (min-width:768px) {
.l_fixed {
right: 10px;
    top: 90px;
    width: 90px;
    height: 90px;
}
.b_fixed {
right: 10px;
    top: 190px;
    width: 90px;
    height: 90px;
}
}
@media screen and (max-width: 320px) {
  body {
    font-size: 0.8rem;
  }
}
#wrapper {
  padding-bottom: 0;
}

/* ==========================================================
!SPPC共通パーツ
========================================================== */
body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴシック", "YuGothic", "游ゴシック体", "Yu Gothic", "游ゴシック", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Arial, Helvetica, Verdana, sans-serif;
}

.cmn-ff-go {
  font-family: "Noto Sans JP", sans-serif;
}

.cmn-ff-min {
  font-family: "Noto Serif JP", serif;
  text-align: center;
}

.cmn-ff-he {
  font-family: "Helvetica Neue";
}
.text-pink {
  color: #e98d92;
}
.text-pink2 {
  color: #9e8464;
}
.text.fw-light {
  font-weight: 300;
}
.text.fw-reg {
  font-weight: 400;
}
.text.fw-semib {
  font-weight: 500;
}

.title {
  position: relative;
}
.title.has-acc {
  padding-top: 13.3vw;
  text-align: center;
  margin-bottom: 3%;
  font-size: 1.75rem;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 500;
}
@media only screen and (min-width: 750px), print {
  .title.has-acc {
    padding-top: 80px;
  }
}
@media only screen and (min-width: 750px), print {
  .title.has-acc {
    margin-bottom: 30px;
  }
}
.title.has-acc:before {
  position: absolute;
  top: 0;
  left: calc(50% - 10.6vw);
  content: "";
  width: 21.3vw;
  height: 8vw;
  display: inline-block;
  background: url(../uresalo_theme/images/acc-ttl.png) no-repeat center center;
  background-size: 100% auto;
}
@media only screen and (min-width: 750px), print {
  .title.has-acc:before {
    left: calc(50% - 80px);
  }
}
@media only screen and (min-width: 750px), print {
  .title.has-acc:before {
    width: 160px;
  }
}
@media only screen and (min-width: 750px), print {
  .title.has-acc:before {
    height: 60px;
  }
}
@media only screen and (min-width: 750px), print {
  .title.has-acc {
    font-size: 40px;
    letter-spacing: 0.1em;
    line-height: 1;
    font-weight: 500;
  }
}
.title.line-3 {
  line-height: 1.6;
}

@media screen and (max-width: 750px) {
  .text-indent-sp-l {
    margin-left: -0.2em !important;
  }
}
.cmn-btn01 {
  margin-left: auto;
  margin-right: auto;
  max-width: 92vw;
}
@media only screen and (min-width: 750px), print {
  .cmn-btn01 {
    max-width: 890px;
  }
}
.cmn-btn01 .btn {
  background: #cd7379;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 16vw;
  border-radius: 4px;
  box-shadow: 0 5px 8px 5px rgba(0, 0, 0, 0.1);
  color: #fff;
  position: relative;
  transition: all 0.4s ease;
  text-decoration: none;
}
@media only screen and (min-width: 750px), print {
  .cmn-btn01 .btn {
    height: 100px;
  }
}
.cmn-btn01 .btn:hover {
  text-decoration: none;
  opacity: 0.6;
}
.cmn-btn01 .btn:after {
  content: "";
  position: absolute;
  right: 6.6vw;
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 0 9px 12px;
  border-color: transparent transparent transparent #ffffff;
  position: absolute;
}
.cmn-btn01 .btn .text {
  font-size: 1.7rem;
  letter-spacing: 0.05em;
  line-height: 1.4;
  font-weight: 600;
}
@media only screen and (min-width: 750px), print {
  .cmn-btn01 .btn .text {
    font-size: 34px;
    letter-spacing: 0.1em;
    line-height: 1.4;
    font-weight: 600;
  }
}
/* ==================================
wb
================================== */
.wb {
  margin-left: auto;
  margin-right: auto;
  max-width: 100vw;
  background: url(../uresalo_theme/images/cv-bg.png) no-repeat center top;
  background-size: 100% auto;
  text-align: center;
}
@media only screen and (min-width: 750px), print {
  .wb {
    max-width: 750px;
  }
}
.wb-inner {
  padding-top: 3.7vw;
}
@media only screen and (min-width: 750px), print {
  .wb-inner {
    padding-top: 28px;
  }
}
.wbsalon-btns {
  display: flex;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  margin-top: 3.3vw;
}
@media only screen and (min-width: 750px), print {
  .wbsalon-btns {
    margin-top: 25px;
  }
}
.wb-inner-text01 {
  margin-left: 0.6vw;
  margin-right: 0.6vw;
}
@media only screen and (min-width: 750px), print {
  .wb-inner-text01 {
    margin-left: auto;
    margin-right: auto;
  }
}
.wb-inner-text02 {
  text-align: left;
  margin-left: 5.3vw;
  margin-right: 5.3vw;
  margin-bottom: 2.6vw;
}
@media only screen and (min-width: 750px), print {
  .wb-inner-text02 {
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (min-width: 750px), print {
  .wb-inner-text02 {
    margin-bottom: 20px;
  }
}
.wb-inner-text02 a {
  color: #9e8464;
}
.wbsalon-btn {
  width: 48%;
    margin: 1%;
}
.wbsalon-btn .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 16vw;
  transition: all 0.4s ease;
  background: linear-gradient(358deg, #cbb286 0%, #d7c4a2 50%, #e4d7c1 100%);
    border-radius: 10px;
  text-decoration: none;
}
@media only screen and (min-width: 750px), print {
  .wbsalon-btn .btn {
    height: 120px;
  }
}
.wbsalon-btn .btn .text {
  color: #fff;
  font-size: 1.7rem;
  letter-spacing: 0em;
  line-height: 1;
  font-weight: 600;
}
@media only screen and (min-width: 750px), print {
  .wbsalon-btn .btn .text {
    font-size: 34px;
    letter-spacing: 0em;
    line-height: 1;
    font-weight: 600;
  }
}
@media all and (-ms-high-contrast: none) {
  .wbsalon-btn .btn .text {
    position: relative;
    top: 2px;
  }
}


/* ==================================
!special
================================== */
.special {
  margin-top: 16vw;
}
.special_ttl {
  background: url(../uresalo_theme/images/midback.jpg) no-repeat center top;
  background-size: auto 100%;
  height: 56vw;
  padding: 1px 0;
  margin-bottom: 0;
}
@media only screen and (min-width: 750px), print {
  .special_ttl {
    height: 420px;
  }
}
.special_ttl .special-inner img {
  margin-top: 16vw;
  margin-right: 0;
  margin-left: 49.3vw;
  max-width: 50%;
  height: auto;
}
.special-inner_text {
  padding-top: 6.6vw;
  font-size: 1.4rem;
  letter-spacing: -0.02em;
  line-height: 2;
  font-weight: 400;
  letter-spacing: -0.08em;
  text-align: center;
}
@media only screen and (min-width: 750px), print {
  .special-inner_text {
    padding-top: 50px;
  }
}
@media only screen and (min-width: 750px), print {
  .special-inner_text {
    font-size: 28px;
    letter-spacing: -0.04em;
    line-height: 2;
    font-weight: 400;
  }
}
.special-shaving {
  padding-top: 12vw;
}
@media only screen and (min-width: 750px), print {
  .special-shaving {
    padding-top: 0px;
  }
}
.special-shaving-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: inherit;
}
@media only screen and (min-width: 750px), print {
  .special-shaving-inner {
    max-width: 750px;
  }
}
.shavinbox {
  margin-bottom: 10%;
}
@media only screen and (min-width: 750px), print {
  .shavinbox {
    margin: 0 2% 3% 2%;
    text-align: center;
    width: 46%;
    float: left;
  }
}
.special-shaving-inner_text {
  font-size: 18px;
    text-align: left;
    letter-spacing: 0em;
    line-height: 2;
    font-weight: 400;
    margin-bottom: 4vw;
    margin-left: 6vw;
    margin-right: 6vw;
}
@media only screen and (min-width: 750px), print {
  .special-shaving-inner_text {
    font-size: 25px;
    text-align: left;
    letter-spacing: 0em;
    line-height: 2;
    font-weight: 400;
  }
}
@media only screen and (min-width: 750px), print {
  .special-shaving-inner_text {
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 750px), print {
  .special-shaving-inner_text {
    margin-left: 60px;
  }
}
@media only screen and (min-width: 750px), print {
  .special-shaving-inner_text {
    margin-right: 60px;
  }
}
.special-skin {
  padding-top: 8vw;
}
@media only screen and (min-width: 750px), print {
  .special-skin {
    padding-top: 0px;
  }
}
.special-skin-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: inherit;
}
@media only screen and (min-width: 750px), print {
  .special-skin-inner {
    max-width: 750px;
  }
}
.special-skin-inner_img {
  background: url(../uresalo_theme/images/cenback.jpg) no-repeat left bottom;
  background-size: 100% auto;
  height: 108vw;
  padding: 1px 0;
}
@media only screen and (min-width: 750px), print {
  .special-skin-inner_img {
    height: 810px;
  }
}
.special-skin-inner_img img {
  margin-left: auto;
  margin-right: auto;
  max-width: 47.3vw;
  margin-top: 37.3vw;
  margin-left: 8vw;
}
@media only screen and (min-width: 750px), print {
  .special-skin-inner_img img {
    max-width: inherit;
  }
}
.pointbox {
  background: #fff;
  box-shadow: 0 0 5px 0 rgb(0 0 0 / 50%);
  margin-left: auto;
  margin-right: auto;
  max-width: 85.3vw;
  position: relative;
  top: -9.4vw;
  margin-bottom: 6.6vw;
  padding-top: 8vw;
  padding-bottom: 8vw;
}
@media only screen and (min-width: 750px), print {
  .pointbox {
    max-width: 630px;
  }
}
@media only screen and (min-width: 750px), print {
  .pointbox {
    padding-top: 60px;
  }
}
.special-skin-inner-item {
  margin-left: 8vw;
  margin-right: 8vw;
}
@media only screen and (min-width: 750px), print {
  .special-skin-inner-item {
    margin-left: 60px;
  }
}
@media only screen and (min-width: 750px), print {
  .special-skin-inner-item {
    margin-right: 60px;
  }
}
.special-skin-inner-item:nth-child(n+2) {
  margin-top: 8vw;
}
@media only screen and (min-width: 750px), print {
  .special-skin-inner-item:nth-child(n+2) {
    margin-top: 60px;
  }
}
.pointboxttl {
  font-size: 20px;
  letter-spacing: 0em;
  line-height: 1;
  font-weight: 500;
  color: #9e8464;
  margin-top: 0;
  margin-bottom: 0;
  background: linear-gradient(transparent 60%, #f9f1e7 60%);
}
@media only screen and (min-width: 750px), print {
  .pointboxttl {
    font-size: 34px;
    letter-spacing: 0em;
    line-height: 1;
    font-weight: 500;
  }
}
.pointboxtext {
  font-size: 17px;
    letter-spacing: 0em;
    line-height: 1.7;
    font-weight: 300;
    margin: 1% 0;
}
@media only screen and (min-width: 750px), print {
  .pointboxtext {
    font-size: 28px;
    letter-spacing: 0em;
    line-height: 1.7;
    font-weight: 300;
    margin: 1% 0;
  }
}

/* ==================================
!flow
================================== */
.flow {
  margin-bottom: 16vw;
  overflow: hidden;
}
@media only screen and (min-width: 750px), print {
  .flow {
    margin-bottom: 120px;
  }
}
.flow-inner {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
  max-width: 100vw;
}
@media only screen and (min-width: 750px), print {
  .flow-inner {
    max-width: 710px;
  }
}
.flow-inner_title {
  margin-bottom: 5.3vw;
  margin-top: 10.6vw;
}
@media only screen and (min-width: 750px), print {
  .flow-inner_title {
    margin-bottom: 40px;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner_title {
    margin-top: 0px;
  }
}
@media screen and (max-width: 320px) {
  .flow-inner_title .text {
    font-size: 1.8rem;
  }
}
.flow-inner-list {
  margin-left: auto;
  margin-right: auto;
  max-width: 100vw;
  background: #fcf8f1;
  padding-left: 0;
  padding-bottom: 4vw;
  margin-left: 2.6vw;
  margin-right: 2.6vw;
}
@media only screen and (min-width: 750px), print {
  .flow-inner-list {
    max-width: 710px;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner-list {
    padding-bottom: 30px;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner-list {
    margin-left: auto;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner-list {
    margin-right: auto;
  }
}
.flow-inner-item_title {
  margin-bottom: 4.6vw;
  position: relative;
}
@media only screen and (min-width: 750px), print {
  .flow-inner-item_title {
    margin-bottom: 35px;
  }
}
.flow-inner-item_title.has-acc:after {
  content: "";
  display: inline-block;
  position: absolute;
  right: -3.4vw;
  top: -2vw;
  z-index: 10;
  background: url(../uresalo_theme/images/flow-ttl04-add.png) no-repeat center center;
  background-size: 100% auto;
  width: 38.9vw;
  height: 28.5vw;
}
@media only screen and (min-width: 750px), print {
  .flow-inner-item_title.has-acc:after {
    width: 292px;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner-item_title.has-acc:after {
    height: 214px;
  }
}
.flow-inner-item_text {
  font-size: 1.4rem;
  letter-spacing: 0.005em;
  line-height: 1.5;
  font-weight: 200;
  margin-bottom: 4vw;
}
@media only screen and (min-width: 750px), print {
  .flow-inner-item_text {
    font-size: 28px;
    letter-spacing: 0.01em;
    line-height: 1.5;
    font-weight: 200;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner-item_text {
    margin-bottom: 30px;
  }
}
.flow-inner-item_img {
  margin-bottom: 8vw;
  margin-left: 10vw;
    margin-right: 10vw;
}
@media only screen and (min-width: 750px), print {
  .flow-inner-item_img {
    margin-bottom: 60px;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner-item_img {
    margin-left: auto;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner-item_img {
    margin-right: auto;
  }
}
.flow-inner_note {
  margin-bottom: 4vw;
  display: block;
  text-align: left;
  margin-left: 2.6vw;
  margin-right: 2.6vw;
}
@media only screen and (min-width: 750px), print {
  .flow-inner_note {
    margin-bottom: 30px;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner_note {
    margin-left: auto;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner_note {
    margin-right: auto;
  }
}
.flow-inner_img {
  margin-left: 2.6vw;
  margin-right: 2.6vw;
}
@media only screen and (min-width: 750px), print {
  .flow-inner_img {
    margin-left: auto;
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner_img {
    margin-right: auto;
  }
}

/* ==================================
!voice
================================== */
.voice {
  margin-bottom: 20vw;
  padding-top: 12vw;
}
@media only screen and (min-width: 750px), print {
  .voice {
    margin-bottom: 150px;
  }
}
.voice-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 100vw;
}
@media only screen and (min-width: 750px), print {
  .voice-inner {
    max-width: 690px;
  }
}
.vckobetu {
  padding-left: 0;
}
.vcitem {
  text-align: center;
  position: relative;
  padding-bottom: 10vw;
  margin-left: 4%;
  margin-right: 4%;
}
@media only screen and (min-width: 750px), print {
  .vcitem {
    padding-bottom: 70px;
  }
}
.vcitem:nth-child(n+2) {
  margin-top: 6.6vw;
}
@media only screen and (min-width: 750px), print {
  .vcitem:nth-child(n+2) {
    margin-top: 50px;
  }
}

@media only screen and (min-width: 750px), print {
  .vcitem {
    margin-left: auto;
    margin-right: auto;
  }
}
.vcitem_img {
  margin-bottom: 5%;
}
@media only screen and (min-width: 750px), print {
  .vcitem_img {
    margin-bottom: 15px;
  }
}
.vcitem_text {
  font-size: 16px;
  letter-spacing: 0.005em;
  line-height: 1.7;
  font-weight: 200;
  text-align: left;
}
@media only screen and (min-width: 750px), print {
  .vcitem_text {
    font-size: 20px;
    letter-spacing: 0.01em;
    line-height: 1.7;
    font-weight: 200;
  }
}
@media only screen and (min-width: 750px), print {
  .vcitem_text {
    margin-left: 30px;
  }
}
@media only screen and (min-width: 750px), print {
  .vcitem_text {
    margin-right: 30px;
  }
}
.vcitem_text .text-pink2 {
  font-weight: 500;
}
.vcitem_text .text-or {
  font-weight: 300;
}
.vcitem .icon {
  width: 26.6vw;
  height: 8vw;
  background: #d6c3a0;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  right: 0;
  bottom: 0;
  color: #fff;
  font-size: 20px;
  letter-spacing: 0.015em;
  line-height: 1.3;
  font-weight: 500;
  border-radius: 1000px;
  margin-left: auto;
  margin-right: 0;
}
@media only screen and (min-width: 750px), print {
  .vcitem .icon {
    width: 200px;
  }
}
@media only screen and (min-width: 750px), print {
  .vcitem .icon {
    height: 60px;
  }
}
@media only screen and (min-width: 750px), print {
  .vcitem .icon {
    font-size: 34px;
    letter-spacing: 0.03em;
    line-height: 1.3;
    font-weight: 500;
  }
}
.vcitem.icon-left {
  margin-left: 13.3vw;
  margin-right: 0;
}
.vcitem.icon-left .icon {
  left: -10vw;
  bottom: -4vw;
}
.vcitem.icon-right {
  margin-right: 13.3vw;
  margin-left: 0;
}
.vcitem.icon-right .icon {
  right: -10vw;
  bottom: -4vw;
}
.vcitem.blk .vcitem_text {
  margin: 0;
}
.vcitem.fb {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 0;
}
.vcitem.fb .vcitem_img {
  width: 42%;
  margin-bottom: 0;
}
.vcitem.fb .vcitem_text {
  width: 52%;
  margin-right: 0;
  text-align: justify;
  letter-spacing: -0.08em;
  margin-top: 0.6vw;
}
.voice-inner-note {
  margin-left: 4%;
  margin-right: 4%;
}
@media only screen and (min-width: 750px), print {
  .voice-inner-note {
    margin-left: auto;
    margin-right: auto;
  }
}

/* ==================================
!faq
================================== */
.faq-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 92vw;
}
@media only screen and (min-width: 750px), print {
  .faq-inner {
    max-width: 690px;
  }
}
.faq-inner_title {
  text-align: center;
  background: #e98d92;
  border-radius: 1000px;
  color: #fff;
  font-size: 2rem;
  letter-spacing: 0.025em;
  line-height: 1;
  font-weight: 400;
  height: 10vw;
  margin-bottom: 8.6vw;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 750px), print {
  .faq-inner_title {
    font-size: 40px;
    letter-spacing: 0.05em;
    line-height: 1;
    font-weight: 400;
  }
}
@media only screen and (min-width: 750px), print {
  .faq-inner_title {
    height: 75px;
  }
}
@media only screen and (min-width: 750px), print {
  .faq-inner_title {
    margin-bottom: 65px;
  }
}
.faq-list {
  padding-left: 0;
}
.faq-item {
  padding-bottom: 8vw;
}
@media only screen and (min-width: 750px), print {
  .faq-item {
    padding-bottom: 60px;
  }
}
.faq-item-num {
  display: block;
  text-align: center;
  font-size: 2.3rem;
  letter-spacing: 0em;
  line-height: 1;
  font-weight: 400;
  margin-bottom: 4.6vw;
  position: relative;
}
@media only screen and (min-width: 750px), print {
  .faq-item-num {
    font-size: 46px;
    letter-spacing: 0em;
    line-height: 1;
    font-weight: 400;
  }
}
@media only screen and (min-width: 750px), print {
  .faq-item-num {
    margin-bottom: 35px;
  }
}
.faq-item-num:after {
  height: 1px;
  background: #e98d92;
  width: 100%;
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
}
.faq-item-num .text {
  position: relative;
  z-index: 10;
  background: #fff;
  padding: 0 20px;
}
.faq-item-ttl {
  font-size: 1.7rem;
  letter-spacing: -0.05em;
  line-height: 1.5;
  font-weight: 500;
  margin-bottom: 3.3vw;
  display: block;
  text-align: center;
}
@media only screen and (min-width: 750px), print {
  .faq-item-ttl {
    font-size: 34px;
    letter-spacing: -0.1em;
    line-height: 1.5;
    font-weight: 500;
  }
}
@media only screen and (min-width: 750px), print {
  .faq-item-ttl {
    margin-bottom: 25px;
  }
}
.faq-item_text {
  font-size: 1.6rem;
  letter-spacing: 0.015em;
  line-height: 1.6;
  font-weight: 300;
  text-align: justify;
}
@media only screen and (min-width: 750px), print {
  .faq-item_text {
    font-size: 25px;
    letter-spacing: 0.03em;
    line-height: 1.6;
    font-weight: 300;
  }
}

/* 750px以上 */
@media only screen and (min-width: 750px), print {
  .sp-visible {
    display: none;
  }

  .pc-visible {
    display: inherit;
  }

  .sp-br-visible {
    display: none;
  }

  .pc-br-visible {
    display: inline;
  }

  #wrapper {
    padding-bottom: 0;
  }

  .cmn-btn01 .btn:after {
    content: "";
    position: absolute;
    right: 65px;
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 16.5px 0 16.5px 23px;
    border-color: transparent transparent transparent #ffffff;
    position: absolute;
  }
  .cmn-btn01 .btn:hover {
    text-decoration: none;
  }

  .title {
    position: relative;
    margin-top: 110px;
  }
  .title.has-acc {
    padding-top: 110px;
  }

  /* ==========================================================
  !mainimg
  ========================================================== */
  .fv {
    background: #f3eee0;
  }
  .fv-ttl {
    background: url(../uresalo_theme/images/fv-pc.png) no-repeat center top;
    background-size: 100% auto;
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
  }

  /* ==================================
  cv
  ================================== */
  .wb {
    margin-left: auto;
    margin-right: auto;
    max-width: 750px;
    text-align: center;
  }



  /* ==================================
  !voice
  ================================== */
}
@media only screen and (min-width: 750px) and (min-width: 750px), print {
  .wb {
    max-width: 750px;
  }
}
@media only screen and (min-width: 750px), print {
  .wb-inner {
    padding-top: 28px;
  }
}
@media only screen and (min-width: 750px) and (min-width: 750px), print {
  .wb-inner {
    padding-top: 28px;
  }
}
@media only screen and (min-width: 750px), print {
  .wbsalon-btns {
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
  }
}
@media only screen and (min-width: 750px), print {
  .wb-inner-text02 {
    text-align: left;
    margin-left: 20px;
    margin-right: 20px;
  }
  .wb-inner-text02 a:hover {
    text-decoration: none;
  }
}
@media only screen and (min-width: 750px), print {
  .wbsalon-btn .btn {
    transition: all 0.4s ease;
    background: linear-gradient(358deg, #cbb286 0%, #d7c4a2 50%, #e4d7c1 100%);
    position: relative;
    border-radius: 10px;
  }
  .wbsalon-btn .btn .text {
    position: relative;
    z-index: 10;
  }
  .wbsalon-btn .btn:after {
    content: "";
    width: 100%;
    height: 100%;
    position: relative;
    background-color: #cbb286;
    opacity: 0;
    transition: all 0.4s ease;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 10px
  }
  .wbsalon-btn .btn:hover:after {
    opacity: 1;
  }
}


@media only screen and (min-width: 750px), print {
  .contents {
    margin-top: 0px;
  }
}
@media only screen and (min-width: 750px), print {
  .float-btn-pagetop {
    right: 40px;
    bottom: 40px;
    width: 60px;
    height: 60px;
  }
  .float-btn-pagetop .btn {
    width: 60px;
    height: 60px;
  }
  .float-btn-pagetop .btn:after {
    width: 13px;
    height: 13px;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    display: block;
    transform: rotate(45deg);
    left: calc(50% - 7px);
    top: calc(50% - 5px);
  }
}
@media only screen and (min-width: 750px), print {
  .__scrolled .float-btn-pagetop {
    transform: translateY(0px);
  }
  .__scrolled.__scroll_cp .float-btn-pagetop {
    transform: translateY(0px);
  }
}
@media only screen and (min-width: 750px), print {
  .flow-inner-item_title.has-acc:after {
    right: -25px;
    top: -14px;
  }
}
@media only screen and (min-width: 750px), print {
  .special {
    margin-top: 120px;
  }
  .special_ttl .special-inner img {
    margin-top: 120px;
    margin-left: auto;
    margin-right: 0;
    max-width: 50%;
    height: auto;
    display: block;
  }
  .special-inner {
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
    min-height: inherit;
  }
  .special-skin-inner_img img {
    margin-top: 270px;
    margin-left: 60px;
  }
  .special-skin-inner_ttl.title {
    margin-bottom: 60px;
  }
  .pointbox {
    background: #fff;
    box-shadow: 0 0 5px 0 rgb(0 0 0 / 50%);
    margin-left: auto;
    margin-right: auto;
    max-width: 640px;
    position: relative;
    top: -70px;
    margin-bottom: 50px;
    padding-bottom: 50px;
  }
}
@media only screen and (min-width: 750px) and (min-width: 750px), print {
  .pointbox {
    max-width: 630px;
  }
}
@media only screen and (min-width: 750px), print {
  .pointboxttl {
    font-size: 1.7rem;
    letter-spacing: 0em;
    line-height: 1;
    font-weight: 500;
    color: #9e8464;
    margin-top: 0;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 750px) and (min-width: 750px), print {
  .pointboxttl {
    font-size: 30px;
    letter-spacing: 0em;
    line-height: 1;
    font-weight: 500;
    background: linear-gradient(transparent 60%, #f9f1e7 60%);
  }
}
@media only screen and (min-width: 750px), print {
  a.tel-disable {
    cursor: default;
  }
}
@media only screen and (min-width: 750px), print {
  .cmn-parts-modal.remodal {
    padding: 100px 20px 60px;
    border-radius: 6px;
    height: auto;
    max-width: 650px;
    max-height: 400px;
  }
  .cmn-parts-modal .remodal-close {
    width: 80px;
    height: 40px;
    border: 1px solid #333;
    background: #fff;
    color: #333;
    font-size: 16px;
    letter-spacing: 0em;
    line-height: 1;
    font-weight: 500;
    border-radius: 4px;
    right: 20px;
    left: auto;
    top: 20px;
    transition: all 0.4s ease;
  }
  .cmn-parts-modal .remodal-close:before {
    content: "";
  }
  .cmn-parts-modal .remodal-close:hover {
    border-color: #333;
    background: #333;
    color: #fff;
    cursor: pointer;
  }
  .cmn-parts-modalIn {
    height: auto;
  }
  .cmn-parts-modalIn .text-area {
    border-top: 2px solid #e98d92;
    border-bottom: 2px solid #e98d92;
    padding: 15px 0;
  }
  .cmn-parts-modalIn .sub-title {
    font-size: 12px;
  }
  .cmn-parts-modalIn .number {
    font-size: 46px;
    font-weight: bold;
    line-height: 1.2;
  }
  .cmn-parts-modalIn .comment {
    font-size: 14px;
  }
}
@media only screen and (min-width: 750px), print {
  .voice {
    padding-top: 0;
  }
  .vcitem {
    text-align: center;
    max-width: 670px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media only screen and (min-width: 750px) and (-ms-high-contrast: none), print and (-ms-high-contrast: none) {
  .vcitem_text .text-pink {
    font-weight: 500;
  }
}
@media only screen and (min-width: 750px), print {
  .vcitem_img.icon-left {
    margin-left: 40px;
  }
  .vcitem_img.icon-left .icon {
    left: -75px;
    bottom: -30px;
  }
  .vcitem_img.icon-right {
    margin-right: 40px;
  }
  .vcitem_img.icon-right .icon {
    right: -75px;
    bottom: -30px;
  }
}

ul.chuui {
    font-size: 16px;
    list-style: disc;
    text-align: left;
    padding: 0 0 0 32px;
}
/*=========
accordion
=========*/
.accordion_one {
    margin-bottom: 3%;
}
.accordion_area {}
.accordion_area .accordion_one .ac_header {
  background-color: #ffffff;
  border: 1px solid #ccc;
  padding: 0.5rem 3.5rem 0.5rem 1rem;
  position: relative;
  z-index: +1;
  cursor: pointer;
  transition: .2s;
}
.accordion_area .accordion_one .ac_header:not(.open):hover {
  background-color: #f1f8ff;
}
.accordion_area .accordion_one:nth-child(odd) .ac_header {
  background-color: #f5f5f5;
}
.accordion_area .accordion_one:nth-child(odd) .ac_header:not(.open):hover {
  background-color: #f1f8ff;
}
.accordion_area .accordion_one .ac_header .i_box {
  position: absolute;
  top: 50%;
  right: 2rem;
  width: 20px;
  height: 20px;
  margin-top: -10px;
}
.accordion_area .accordion_one .ac_header .i_box:before, .accordion_area .accordion_one .ac_header .i_box:after {
  position: absolute;
  content: "";
  margin: auto;
  box-sizing: border-box;
  vertical-align: middle;
}
.accordion_area .accordion_one .ac_header .i_box:before {
  border-top: 2px solid #014897;
  width: 20px;
  height: 0;
  top: 0;
  bottom: 0;
  right: 0;
}
.accordion_area .accordion_one .ac_header .i_box:after {
  border-left: 2px solid #014897;
  width: 0;
  height: 20px;
  top: 0;
  bottom: 0;
  right: 9px;
  transition: .3s;
}
.accordion_area .accordion_one .ac_header.open .i_box:after {
  height: 0;
}
.accordion_area .accordion_one .ac_inner {
text-align: left;
  display: none;
  padding: 0.5rem 1rem 2rem 1rem;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  box-sizing: border-box;
  background: #fff;
}
@media screen and (max-width: 680px){ 
.accordion_area {
    margin: 0 5%;
}
}

/*------------スマホ用------------------*/
@media screen and (max-width: 480px) {
.shavinbox {
    margin: 0 3% 10% 3%;
}
.flow-inner-item_text {
    font-size: 1.2rem;
    text-align: left;
    padding: 0 9px;
}
.faq-item_text {
    font-size: 20px;
}
.faq-item-ttl {
    text-align: left;
}
.cpttle {
    color: #333333;
    font-size: 19px;
    clear: both;
    font-weight: bold;
    line-height: 1.5;
    margin-bottom: 3%;
    text-align: left;
}
.price {
    font-size: 19px;
    text-align: left;
}
.bigred {
    font-size: 38px;
    color: #FF0000;
}
.special-inner {
    margin: 0px 3%;
}
}
/*------------PC用------------------*/
@media only screen and (min-width: 750px) {
.special-inner_textb {
  font-size: 28px !important;
  letter-spacing: -0.02em;
  line-height: 2;
  font-weight: 400;
  letter-spacing: -0.08em;
  text-align: center;
}
p.rouhu {
    font-size: 28px;
    letter-spacing: -0.04em;
    line-height: 2;
    font-family: "Noto Serif JP", serif;
    text-align: center;
    margin: 0;
}
.cpttle {
    color: #333333;
    font-size: 25px;
    clear: both;
    font-weight: bold;
    text-align: left;
    line-height: 2;
}
.price {
    font-size: 30px;
    text-align: left;
}
.bigred {
    font-size: 50px;
    color: #FF0000;
}
.cpleft {
    font-size: 20px;
}
}
/*------------共通------------------*/
.couponbox img {
    margin: 2% 0;
}
p.cpmnue {
text-align: left;
margin: 3% 0 0 0;
font-size: 16px;
}
.staffname {
    color: #e98d92;
}
.stfnmbig {
    font-weight: bold;
    font-size: 30px;
}
p.intro_text {
    font-weight: 300;
}
.brownbar {
background: linear-gradient(transparent 60%, #f9f1e7 60%);
}
.couponbox {
    border: 3px solid #cbb286;
    background-color: #fff;
    margin: 0 auto 5% auto;
    padding: 3%;
    text-align: center;
    max-width: 750px;
}
.couponboxb {
    border: 3px solid #d6c99d;
    background-color: #fcfbf8;
    margin: 0 auto 5% auto;
    padding: 3%;
    text-align: center;
    max-width: 750px;
}
.cpleft {
    text-align: left;
    font-size: 17px;
}
.couponboxttl {
    border: 3px solid #cbb286;
    margin: 3% auto 0 auto;
    padding: 1%;
    text-align: center;
    max-width: 750px;
    background-color: #cbb286;
    color: #fff;
    font-size: 20px;
}
.c_m_ko {
    margin-right: 5px;
    margin-bottom: 5px;
    padding: 1px 7px;
    color: #000;
    text-align: left;
    white-space: nowrap;
    background-color: #f6e8d8;
    font-size: 17px;
}
.subtitlea {
margin: 8% 0 0 0;
text-align: center;
  color: #7d6651;/*文字色*/
  padding: 0.5em 0;/*上下の余白*/
  border-top: solid 3px #7d6651;/*上線*/
  border-bottom: solid 3px #7d6651;/*下線*/
}
.centxt {
text-align: center;
margin: 6% 0;
}
.pointbox2 {
padding: 5% 5% 4% 5%;
    margin: 5% auto;
    max-width: 500px;
background: #fffcf8;
    box-shadow: 0 0 5px 0 rgb(0 0 0 / 50%);
}
ul.pointbox2 li {
    line-height: 1.25;
    margin-bottom: 3%;
    list-style: disc;
    margin-left: 6%;
    /* text-align: center; */
}
.pointboxttlb {
    font-size: 30px;
    letter-spacing: 0em;
    line-height: 1;
    font-weight: 500;
    color: #9e8464;
    margin-top: 0;
    margin-bottom: 0;
    background: linear-gradient(transparent 60%, #f9f1e7 60%);
}
.special-inner_textb {
  font-size: 1.4rem;
  letter-spacing: -0.02em;
  line-height: 2;
  font-weight: 400;
  letter-spacing: -0.08em;
  text-align: center;
}
p.shavinboxtxt {
    font-size: 15px;
    text-align: left;
    margin: 3% 0;
}
p.pointtxt {
    margin: 0;
    font-weight: bold;
    background: #faf1e4;
    box-shadow: 0px 0px 0px 5px #faf1e4;
    border: dashed 1px #9e8464;
    padding: 0.2em 0.5em;
    color: #9e8464;
}
p.pointtitl {
text-align: center;
    margin: 3%;
    color: #9e8464;
    font-weight: bold;
    font-family: "Noto Serif JP", serif;
    font-size: 23px;
}
.photokon {
    margin: 3% 0;
    text-align: center;
}